<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 采用Nios定制指令的嵌入式系統優化設計

    時間:2024-08-08 07:29:23 理工畢業論文 我要投稿
    • 相關推薦

    采用Nios定制指令的嵌入式系統優化設計

    摘要:Altera公司的Nios軟核處理器以其低成本,設計靈活等特點,在嵌入式應用領域得到廣泛的應用。采用Nios處理器的定制指令,可以把用戶自定義的功能直接添加到Nios CPU的算術邏輯單元中,加快專項任務的執行,以達到優化目的。本文在闡述Nios定制指令設計的基礎上,給出相應的設計例子說明。

    引言

    Nios處理器是Altera公司推出的一個32/16位精簡指令信處理器軟核。在Altera公司推出的軟件SOPC中加載Nios核 和相應的外圍接口以及與定義相應的自定義指令,然后對設計進行綜合,下載到FPGA中就可以方便地一個具有特定功能的嵌入式處理器。這種設計思路增加了系統設計的靈活性,加快系統運行速度,縮短產品研發和上市時間。

    由硬件實現復雜的算法通常比軟件實現更高效。利用Altera的Niso嵌入式處理器的定制指令,可以把用戶自定義的功能直接添加到Niso CPU的算術邏輯單元(ALU)中(見圖1),來加快專項任務的執行,從而達到系統優化的目的。因此,設計者可以針對關鍵的內部循環和耗時算法,創建Nios嵌入式處理器的定制指令,把復雜的順序指令簡化為硬件實現的單指令,這樣就能夠大大提高系統性能。例如,Nios CPU執行浮點乘法運算要2800多個時鐘周期;而浮點乘法的定制指令采用了浮點單元(FPU),執行只需19個時鐘周期。

    1 定制指令

    定制指令為Nios處理器的算術邏輯單元增加了定制邏輯,設計者通過定制指令,用快速高效的定制邏輯塊替代復雜耗時的軟件程序。在一個CPU中,可以運行多達五個組合或時序定制模塊,還可以訪問Nios系統模塊外的存儲器和/或邏輯。定制邏輯模塊在兩個寄存器Ra和Rb內容的基礎上執行用戶定義的操作,結果存放在寄存器Ra中。這些定制邏輯模塊的功能只受限于器件內邏輯單元(LE)和設計得的想象力。

    定制硬件模塊能夠通過Nios嵌入式處理器指令集中的五個用戶定義操作碼來訪問。SOPC Builder在生成系統期間會為任何定制指令創建宏,通過這些自動產生的C和匯編語言宏就可以方便地訪問自定義指令操作碼。

    2 實現定制指令

    以Altera的Nios2.0版嵌入式處理器為例實現定制指令,同時點擊Custom Instructions標簽創建或編輯Nios CPU,如圖2。

    Custom Instruction標簽是系統設計都 連接定制邏輯和Nios CPU的ALU的界面。首先,選擇定制指令的操作碼,有USR0~USR4五個操作碼可供使用。然后,導入和掃描作為定制指令的HDL文件。Design Import Wizard掃描頂層模塊的端口,進行合適連接。Design Import Wizard可以接受以下類型的文件:VerilogHDL/VHDL/EDIF/VQM以接受以下類型的文件:Verilog HDL、VHDL、EDIF、VQM和Altera QuartusII原理圖。導入設計文件之后,分配定制指令所需的CPU時鐘周期數目和定制指令名。

    在系統生成期間,SOPC Builder工具用作ALU一部分的定制邏輯來創建Nios CPU,受所選的操作碼控制軟件開發包用定制指令名創建在C/C 和匯編語言中使用的軟件宏。這些在定制軟件開發包ince下。

    圖2 定制指令設計界面

    設計者通過創建的軟件宏訪問定制指令。在C/C 中,宏就像函數調用一樣使用。如果使用前綴端口,就要用前綴創建不同的宏。例如,為浮點單元(FPU)創建兩個C/C 宏。例如,為浮點單元(FPU)創建兩個C/C 宏是:

    result=nm_fpu(data,datb); //不使用前綴

    result=nm_fpu_pfx(prefix,data,data); //使用前綴

    在匯編語言中,宏調用USR操作碼,按標準匯指令一樣使用。如果使用前綴,那么在宏之前必須有一個PFX指令。有關用戶定義操作碼(USR0~USR4)的詳細資料可參Nios Software Development Reference Manual。

    3 MP3播放器的定制指令設計

    以MP3播放器設計為例,采用定制指令對設計進行優化。該設計通過增加兩條定制指令,就能使系統執行性能提高大約3倍。圖為該MP3系統設計框圖。

    (1)MP3解碼器

    在大多數MP3播放器中,處理器是用來管理函數和傳輸數據的。專用MP3解碼器ASIC可用于執行密集計算量的解碼和傳數據給音頻器件。本例中,Altera的Nios處理器用于完成處理控制信號,傳輸數據和進行MP3解碼。通常,MP3解碼器流程如下:

    ①通過IDE接口從CF(CompactFlash controler)中讀取MP3數據;

    ②將MP3數據存入SPAM中緩存;

    ③對MP3數據解碼;

    ④將MP3邊帶合成到脈沖編碼調制(PCM)數據;

    ⑤把PCM數據傳給脈寬調制器PWM。

    此外,播放器采用MPEG Audio Decoder(MAD)進行MP3解碼,是基于以下方面:

    ①100%定點(整數)計算;

    ②網上有可利用的源碼;

    ③在GNU Ceneral Public License(GPL)下發布。

    (2)定制指令

    我們知道在執行MP3解碼的過程中,大量時間花費在邊帶的合成上。因此,優化Altera MP3的重點就落在函數mad_synth_frame上。我們可通過使用定

    【采用Nios定制指令的嵌入式系統優化設計】相關文章:

    基于Nios軟核的嵌入式Internet系統設計03-20

    UML 在嵌入式系統設計中的應用03-18

    面向對象的嵌入式系統設計方法03-18

    嵌入式系統中的線性Flash文件系統設計03-21

    變風量空調系統的優化設計淺談03-19

    基于AVR的嵌入式在線監測系統的設計11-22

    嵌入式系統中的PS/2接口設計11-22

    基于PLD的嵌入式系統外存模塊設計03-18

    嵌入式MPEG—4解碼系統的設計與實現03-19

    主站蜘蛛池模板: 久久最新精品国产| 国产农村妇女毛片精品久久| 欧美韩国精品另类综合| 日本国产精品久久| 中文精品久久久久国产网址| 人妻少妇偷人精品无码| 久久露脸国产精品| 国产69精品久久久久9999| 久久精品国产亚洲av高清漫画| 欧美精品一区二区三区免费| 91av国产精品| 国产精品欧美亚洲韩国日本| 日韩精品无码久久久久久 | 一本久久精品一区二区| 国产精品色视频ⅹxxx| 国产福利微拍精品一区二区| 亚洲国产精品久久久天堂| 免费人欧美日韩在线精品| 国产精品无码一区二区在线观一| 国产精品一区在线播放| 国产精品免费高清在线观看 | 久久国产成人亚洲精品影院| 99久久伊人精品综合观看| 国产精品一二区| 国产精品一级香蕉一区| 国内精品伊人久久久久| 99久久精品日本一区二区免费| 日韩精品久久久久久久电影蜜臀| 中国精品18videosex性中国| 日韩亚洲精品福利 | 欧美午夜精品久久久久免费视| 人妻少妇精品无码专区动漫| 精品久久久无码中文字幕天天| 国产精品青青在线观看爽香蕉| 91精品国产自产在线老师啪| 91嫩草亚洲精品| 国产成人综合精品一区| 国产精品麻豆欧美日韩ww| 国产精品无码一区二区在线| 精品99久久aaa一级毛片| 欧美精品福利在线视频|