999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MATLAB中多EDA軟件實現數字系統設計

2010-05-15 00:29:52周永川
無線電通信技術 2010年3期
關鍵詞:環境模型系統

高 峰,周永川

(中國電子科技集團公司第五十四研究所,河北 石家莊 050081)

0 引言

在目前的大規模集成電路設計中,系統級設計和邏輯設計往往是分開進行的。系統設計人員使用諸如C/C++、Matlab、COSSAP、SPW等系統設計語言和軟件進行系統描述和算法仿真,并書寫系統設計書,然后移交給電路設計部門。電路設計人員,首先要花大量的時間理解系統設計書后,才能利用VHDL或者Verilog HDL硬件描述語言進行電路設計。根據有關統計從系統級設計到電路級設計所花費的時間一般是系統級設計所花時間的3倍左右。因此在系統級設計與電路級設計之間架設一座橋梁已經成為電路設計領域極為迫切的任務。對于片上系統設計而言,除了上述問題以外,還面對著如何處理嵌入式CPU或DSP與大規模邏輯電路的軟硬件協同設計問題。由于CPU或DSP多用C/C++或匯編語言來仿真和驗證,而邏輯電路則使用VHDL或者Verilog-HDL硬件描述語言進行仿真和驗證。因此,需要2種不同的仿真工具和仿真環境來支持設計工作。這2種不同的仿真和驗證環境,不僅增加了設計周期和設計成本,而且容易造成設計錯誤。

為了實現系統級與電路級設計的融合,同時解決硬軟件協同設計問題,最好的辦法是尋求一個既能兼容系統級設計和邏輯設計,又能兼容邏輯電路軟硬件仿真與驗證的綜合集成環境。基于MATLAB集成環境下的多EDA軟件聯合設計便可以很好地解決這個問題。

1 MATLAB環境下數字系統設計

1.1 設計工具

MATLAB結合第3方軟硬件產品組成了在不同領域內的完整解決方案,實現了從算法開發到實時仿真再到代碼生成與最終產品實現的完整過程。

主要的典型應用包括:

控制系統的應用與開發——快速控制原型與硬件在回路仿真的統一平臺dSPACE;

信號處理系統的設計與開發——全系統仿真與快速原型驗證,TI DSP、Lyrtech等信號處理產品軟硬件平臺;

通信系統設計與開發——結合RadioLab 3G和Candence等產品;

機電一體化設計與開發——全系統的聯合仿真,結合Easy 5、Adams等。

MATLAB開放的產品體系使MATLAB成為了諸多領域的開發首選軟件,并且,MATLAB還具有300余家第3方合作伙伴,分布在科學計算、機械動力、化工、計算機通訊、汽車、金融等領域。接口方式包括了聯合建模、數據共享、開發流程銜接等等。

1.2 設計流程

傳統的DSP系統開發人員在設計一個DSP系統時,一般先研究算法,再使用MATLAB或C語言驗證算法,最后由硬件工程師在FPGA或DSP上實現并驗證。在MATLAB集成環境下使用多EDA軟件的典型DSP系統設計流程如下:

①用數學語言描述算法;②設計環境中使用雙精度數實現算法;③將雙精度運算變為定點運算;④將設計轉換為有效的硬件描述語言實現。

設計人員先在MATLAB中對系統進行建模和算法驗證,經過仿真后便可以直接將系統映射為基于FPGA的底層硬件實現方案。可用Simulink提供的圖形化環境對系統進行建模,代碼轉換工具可自動生成FPGA綜合、仿真和實現工具所需的命令文件,因此用戶可以在圖形化環境中完成系統模型的硬件開發。

1.2.1 建模

Simulink、Stateflow和Simulink Blocksets提供了一個集成的交互圖形化動態建模環境。強大的仿真能力能夠對離散、連續、條件執行、事件驅動、多速率、混雜系統等進行分析。通過使用Simulink、Stateflow、DSP Blocksets,可以快速、準確地仿真系統中每一部分的行為,包括實時DSP算法,數字、模擬和混合信號處理硬件,控制邏輯,通信協議和同步循環,還可以考慮信道、聲學和其他物理效應。利用Simulink可視化的建模方式,可迅速地建立動態系統的框圖模型,Simulink的分級建模能力使得體積龐大,結構復雜的模型構建也簡便易行。

1.2.2 實時仿真[1,2]

為了完成仿真的實時性,要用到一個Simulink的配套工具 Real-Time Workshop(RTW),它和C或C++編譯器編譯,可將程序生成獨立于MATLAB環境的應用程序,運行到實時的工業過程中。Real-Time Windows Target使用一個很小的實時內核來保證它開發出來的應用程序可以實時運行。實時核心運行在Ring0級,使用內置PC時鐘作為它的時鐘來源,該內核在Windows獲取之前截取PC時鐘的中斷,程序無法調用Windows系統提供的函數。正因如此,在C語言S函數中不允許使用Win32 API。內核使用時鐘中斷觸發已編譯模型執行,并能唯實時應用程序最高的優先級。

利用Simulink及其工具集運行仿真模型,調試控制參數。Simulink的示波器可以動畫和圖形顯示數據,能夠在仿真運算進行時監視仿真結果。

1.2.3 代碼生成

在MATLAB產品族中,自動化的代碼生成工具主要有Real-Time Workshop(RTW)和Stateflow Coder,這2種代碼生成工具可以直接將Simulink的模型框圖和Stateflow的狀態圖轉換成高效優化的程序代碼。利用RTW生成的代碼簡潔、可靠、易讀。目前RTW支持生成標準的C語言代碼,并且具備了生成其他語言代碼的能力。整個代碼的生成、編譯以及相應的目標下載過程都可以自動完成的,用戶需要做的僅僅使用鼠標點擊幾個按鈕即可。MathWorks公司針對不同的實時或非實時操作系統平臺,開發了相應的目標選項,配合不同的軟硬件系統,可以完成快速控制原型(Rapid Control Prototype)開發、硬件在回路的實時仿真(Hardware-in-Loop)、產品代碼生成等工作。另外,MATLAB開放性的可擴充體系允許用戶開發自定義的嵌入式系統目標,利用Real-Time Workshop Embedded Coder能夠直接將Simulink的模型轉變成效率優化的產品級代碼。代碼不僅可以是浮點的,還可以是定點的。

對于FPGA設計,Xilinx公司的System Generator和Altera公司的DSP Builder允許用戶建立位真實、周期精確的IP模型,將浮點模型調整為定點模型并在FPGA模塊上實現這些模型。然后,所得的HDL將直接進入后序的綜合流程。System Generator和DSP Builder軟件是由MathWorks分別與Xilinx公司和Altera公司合作開發而成,DSP設計人員可使用MATLAB和Simulink工具在FPGA內進行開發和仿真來完善DSP設計。該2種軟件為系統級DSP設計與FPGA硬件實現的融合起到了橋梁作用,而這一點對于高性能DSP系統的設計者來說,正是至關重要的。

另外,用戶可以使用FDATool或命令行函數調用的方式來設計濾波器,然后利用Filter Design HDL Coder來生成VHDL或Verilog代碼。Filter Design HDL Coder擴充了MATLAB的硬件實現能力。在Filter Design Toolbox中設計的定點濾波器利用FilterDesign HDL Coder可以生成有效的、可綜合和可移植的VHDL、Verilog代碼,這些代碼可以最終在ASIC和FPGA芯片上實現。利用Filter DesignHDL Coder同樣可以自動生成用于快速仿真、測試和驗證生成代碼的VHDL、Verilog、ModelSim測試基準程序。

Link for ModelSim可以和Xilinx System Generator或Altera DSP Builder協同工作。這意味著你可以使用Xilinx System Generator以及Altera DSP Builder來完成你的部分系統設計。因此你可以在一個完整的環境下進行 MATLAB、C/C++、Simulink blocks、自己設計的HDL實體、以及Xilinx System Generator所提供的模塊或Altera DSP Builder blocks所提供模塊的聯合仿真。Link for ModelSim是一個把MATLAB、Simulink和針對FPGA、ASIC的硬件設計流程無縫連結起來的聯合仿真的接口擴展模塊。它提供一個快速的雙向連接將MATLAB、Simulink和硬件描述語言仿真器Modelsim連接起來。使二者之間直接的聯合仿真成為可能,并且讓你更高效地在MATLAB/Simulink中驗證ModelSim中的寄存器傳輸級(RTL)模型。

2 設計實例

為了更加清楚地說明MATLAB環境下多EDA軟件聯合設計的優勢,下面結合工程實踐,介紹一個數字上變頻器(DUC)的FPGA開發實例。設計在Simulink環境下建模、仿真、代碼生成,自動調用System Generator軟件、ISE軟件,大大節省了開發時間[3]。

設計用System Generator實現DUC,DUC是調用Xilinx公司開發的IP Core。在Simulink環境下創建的模型如圖1所示。

圖1 DUC的Simulink模型框圖

信號源是由正弦波發生器提供一個低頻率的單頻信號,它是由MATLAB/Simulink本身提供的,不屬于Xilinx模塊。信號源之后使Gateway In模塊,它將浮點數轉換成指定寬度的定點數,因為FPGA里面不能直接實現浮點運算。中間是Xilinx的DUC IP Core,主要是完成數字上變頻的功能,也是進行代碼轉換的對象。Gateway Out模塊的作用剛好與Gateway In模塊的作用相反,是將定點數轉換成Simulink能識別的浮點數,以便將信號送往示波器上顯示。最后一級是信宿和示波器,主要是對上變頻后的信號進行時域波形顯示和頻譜分析。

3 仿真驗證

運行Simulink進行仿真,可以看到輸出的波形及其頻譜圖,如圖2所示。圖2所示信號是將100kHz信號上變頻到10MHz的結果。

圖2 DUC變換后的頻譜圖

確認DUC在Simulink環境下的仿真結果正確后,就可以通過System Generator生成已創建模型的VHDL等項目文件。用ISE軟件打開生成的工程,分別執行翻譯后仿真、映射后仿真、布局布線后仿真,在Modelsim窗口中可以看到,3個進程仿真后的結果與期待響應是完全匹配的,即System Generator生成的VHDL代碼經過綜合、翻譯、映射和布局布線后得到的FPGA實現完全能實現Simulink模型的功能。確認布局布線沒有出現錯誤后,生成FPGA編程文件,下載到硬件電路后驗證,結果是正確的。

4 結束語

MATLAB是全球使用最廣泛的算法開發產品之一,它長期服務于自己的領域,與EDA和硬件實現相距甚遠。但隨著它的開發商MathWorks公司與第3方供應商攜手合作將MATLAB帶入FPGA和ASIC設計領域,這種狀況正在發生改變,MATLAB正邁向電子設計自動化的領域。

[1]邊新迎,劉亮,劉君.基于MATLAB環境的實時仿真研究[J].微計算機信息,2006(22):250-252.

[2]史維佳,何鵬舉,李杰.Matlab/RTW實時仿真與嵌入式系統開發[J].單片機與嵌入式系統應用,2009(10):42-44.

[3]陳春章,艾霞,王國雄.數字集成電路物理設計[M].北京:科學出版社,2008.

猜你喜歡
環境模型系統
一半模型
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
長期鍛煉創造體內抑癌環境
一種用于自主學習的虛擬仿真環境
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
孕期遠離容易致畸的環境
環境
主站蜘蛛池模板: 91国内在线视频| 亚洲av无码人妻| 久久婷婷六月| 精品欧美日韩国产日漫一区不卡| 999精品视频在线| a国产精品| 国产又粗又爽视频| 免费无码AV片在线观看国产| 手机精品福利在线观看| 亚洲性日韩精品一区二区| 综合久久五月天| 亚洲成综合人影院在院播放| 亚洲精品视频在线观看视频| m男亚洲一区中文字幕| 日韩成人在线视频| 日本欧美视频在线观看| 欧美在线综合视频| 福利片91| 中文字幕首页系列人妻| 欧美激情第一区| 免费国产一级 片内射老| 91麻豆国产视频| 天天色天天综合| 中文字幕久久精品波多野结| 全色黄大色大片免费久久老太| 日韩毛片免费观看| 黄网站欧美内射| 中文字幕66页| 在线观看91精品国产剧情免费| 亚洲欧洲AV一区二区三区| 中文字幕亚洲综久久2021| 国产一区三区二区中文在线| 无码区日韩专区免费系列| 在线一级毛片| 第一页亚洲| 久久黄色影院| 真人高潮娇喘嗯啊在线观看| 巨熟乳波霸若妻中文观看免费| 国产麻豆精品久久一二三| 青青草91视频| 欧美国产在线精品17p| 国产精品深爱在线| 亚洲无码免费黄色网址| 久久国产精品影院| 在线观看国产黄色| 亚洲va在线观看| 美美女高清毛片视频免费观看| 国产主播在线观看| 国产网站一区二区三区| 无码精品国产dvd在线观看9久| 午夜三级在线| 波多野结衣亚洲一区| 午夜a视频| 国产一在线观看| 国产伦片中文免费观看| 国产精品冒白浆免费视频| 天天综合网亚洲网站| 无码一区18禁| 老司国产精品视频91| 国产成人免费手机在线观看视频 | 欧美成人午夜在线全部免费| 青草精品视频| 操国产美女| 中文字幕亚洲综久久2021| 9999在线视频| 亚洲成a人片77777在线播放| 91丝袜在线观看| 丰满人妻中出白浆| 毛片在线看网站| 999精品视频在线| 91精品情国产情侣高潮对白蜜| 国产成人精品男人的天堂下载 | 毛片一区二区在线看| 免费激情网站| 91丨九色丨首页在线播放| a级毛片免费看| 欧美a级在线| 精品国产电影久久九九| 18禁影院亚洲专区| 国产成人综合网在线观看| 国产对白刺激真实精品91| 亚洲妓女综合网995久久|