電子發燒友網核心提示:Altera的嵌入式軟處理器系列使您能夠充分利用FPGA內在的并行優勢,實現高級系統性能。多個處理器可以同時執行代碼,而硬件加速器也能夠同時卸載大計算量算法。不需要重新設計電路板或者手動優化匯編程序,便能夠在產品生命周期的任何階段更新嵌入式系統的性能。
以下介紹更新系統性能的幾種方式:軟核處理器;定制指令;硬件加速器;可配置高速緩沖和緊耦合存儲器;多處理器系統;寬帶系統互聯。
方式1:軟核處理器
如果您使用Altera的Nios? II 處理器,可以從三種代碼兼容的軟核處理器中進行選擇(參見圖1):一種針對最佳系統性能進行了優化;一種針對最少邏輯占用進行了優化;還有一種是二者之間達到平衡。
采用乘法器、用戶設定的高速緩存、定制指令、硬件調試邏輯等特性來配置這些內核,能滿足用戶的特殊性能需求。
圖1. Nios II 處理器內核性能
詳細了解【 Nios II 系列處理器內核 】
詳細了解【??Nios II 系列處理器配置選項(PDF) 】
Altera嵌入式系列產品的其他軟核處理器包括:
MP32處理器:業界第一款100%兼容MIPS?的軟核處理器。
ARM? Cortex-M1處理器:三級32位ARM Cortex處理器。
Freescale V1 ColdFire處理器:具有全綜合內核以及長度可調RISC 16位、32位和48位指令。
Intel? Atom? E6x5C處理器:在多芯片封裝中組合了Intel Atom處理器E6xx系列以及Altera? FPGA。
方式2:定制指令
在Nios II 處理器指令集中加入定制指令來加速對時間要求較高的軟件算法。您可以在每一處理器內核中加入256條定制指令,從而減少了數值計算、位操作以及其他復雜處理算法所需的時鐘周期數(參見圖2)。
定制指令支持Nios II設計人員將部分軟件代碼在硬件功能中實現,從而提升了系統性能。但是,定制指令是在處理器邊界內實現的,擴展了CPU指令集以加速對時間要求較高的軟件。
利用Nios II處理器的可配置特性,設計人員能夠將定制邏輯直接集成到算術邏輯單元(ALU)中。通過定制指令,開發人員可以優化實際應用中的軟件內循環,這些應用包括數字信號處理(DSP)、數據包幀頭處理,以及計算量較大的應用,將復雜的運算序列縮減為在硬件中實現的一條指令。
使用定制指令,設計人員能夠優化系統性能,其實現方式是傳統商用處理器所不具備的。Altera的SOPC Builder提供圖形用戶界面,開發人員可以利用它很方便的導入自己的硬件設計文件,開發定制指令,自動集成到Nios II處理器中。
Nios II處理器定制指令提供:256條用戶定義的指令、固定和可變周期運算、用戶邏輯導入向導、C和匯編語言軟件宏。
圖 2. 定制指令邏輯
方式3:硬件加速器
將C語言子程序轉換為硬件加速器,自動加速軟件實現,不用提高時鐘頻率和功耗便能夠提升性能。在Nios II 處理器中,使用Nios II C語言至硬件(C2H)加速編譯器,簡單地“右鍵單擊加速”性能關鍵的功能,從而不用手動生成Verilog或者VHDL加速器,節省了時間和投入(參見圖3)。
硬件加速器是由Nios II C語言至硬件加速(C2H)編譯器自動生成的邏輯模塊,也可以是手動設計用于從系統處理器中卸載某些任務的邏輯模塊。很多數學運算在硬件中實現時,要比軟件實現更快,效率更高。SOPC Builder和AvalonTM交換架構支持使用硬件加速器來提升Nios II處理器軟件的性能。與其他方法相比,硬件加速器能夠:使用主存儲器和其他系統資源,這些資源具有全流水線和存儲器延時匹配主機端口,支持非常高的存儲器帶寬;由CPU通過從機端口進行控制;具有軟件打包器功能,由CPU進行控制,在工具鏈中替代了最初的C代碼。
圖3顯示了一個典型的硬件加速器,它含有兩個連接至Avalon交換架構的的主機端口(讀和寫)。加速器使用直接存儲器訪問(DMA)組件來執行總線讀和寫操作,它提供控制端口以便處理器進行控制。最后,在中心位置,加速器邏輯是計算指定算法的引擎。
圖3硬件加速實例
如果您使用Nios II C2H編譯器,會自動產生所有這些組件,并集成到您的系統中。
硬件加速器為Altera FPGA增加了強大的功能,它作為復雜多周期協處理器來實現,可以流水線訪問系統中的所有存儲器和外設。它們可以使用FPGA資源(例如,片內存儲器和硬核宏乘法器)來實現本地存儲器緩沖以及乘法累加(MAC)電路。它們能夠根據需要盡可能多的使用主機端口,啟動讀寫操作,訪問系統中的所有I/O引腳。很多Nios II開發人員發現,硬件加速器是提升軟件代碼性能最好的方法,能夠充分發揮Altera? FPGA高性能體系結構的優勢。
詳細了解【 Nios II C2H編譯器 】
方式4:可配置高速緩沖和緊耦合存儲器
調整處理器指令或者數據緩沖的大小,以滿足您應用的性能要求。為了在Nios II 處理器中能夠快速訪問經常使用的例程,加入了4個緊耦合存儲器,避免了緩存丟失的代價,實現了類似緩存的訪問功能。
閱讀【 Nios II 軟件開發人員手冊中的緩存和緊耦合存儲器部分? 】
方式5:多處理器系統
使用多處理器來調整系統性能,或者將軟件劃分成更簡單、更小的任務,更易于編寫、調試和維護。Nios II 嵌入式設計包(EDS)以及來自業界一流嵌入式軟件供應商的工具支持多處理器應用程序的開發和調試。Nios II 處理器結合Stratix? 系列FPGA等高密度器件和HardCopy? ASIC,是建立高性能多處理器系統的理想平臺(參見圖 4)。
圖4. 多處理器實例
了解【 怎樣使用Nios II 處理器來構建多處理器系統 】
方式6:寬帶系統互聯
在之后的Quartus? II 設計軟件的版本中可獲得Altera的Qsys 系統綜合工具,利用FPGA的內在并行能力,幫助您生成大吞吐量系統。系統互聯架構是全交換的,主機和從機之間的專用互聯支持多路同時操作,而沒有傳統總線體系結構的仲裁瓶頸。利用智能直接存儲器訪問(DMA)通道來減輕您的處理器負荷。
Quartus? II 設計軟件充分發揮了FPGA、CPLD和HardCopy?ASIC的效率和性能,提供多種設計特性,加速設計過程:設計輸入、腳本支持、漸進式編譯:初始設置、Qsys 系統集成工具、SOPC Builder、MegaWizard? 插件管理器、I/O引腳分配分析、Quartus II 集成綜合、Rapid Recompile、第三方設計輸入和綜合、基本編譯流程。
Quartus? II 設計軟件相關視頻地址:設計輸入和綜合
——電子發燒友網整理,轉載請注明出處?。?!
?
?
評論
查看更多