硬件加速器 - Nios II嵌入式軟處理器提升系統(tǒng)性能方式詳解

2012年10月17日 13:41 來(lái)源:電子發(fā)燒友網(wǎng) 作者:Triquinne 我要評(píng)論(0)

標(biāo)簽:嵌入式(1398)Altera(144)處理器(470)FPGA(2087)軟核(5)

  方式3:硬件加速器

  將C語(yǔ)言子程序轉(zhuǎn)換為硬件加速器,自動(dòng)加速軟件實(shí)現(xiàn),不用提高時(shí)鐘頻率和功耗便能夠提升性能。在Nios II 處理器中,使用Nios II C語(yǔ)言至硬件(C2H)加速編譯器,簡(jiǎn)單地“右鍵單擊加速”性能關(guān)鍵的功能,從而不用手動(dòng)生成Verilog或者VHDL加速器,節(jié)省了時(shí)間和投入(參見圖3)。

  硬件加速器是由Nios II C語(yǔ)言至硬件加速(C2H)編譯器自動(dòng)生成的邏輯模塊,也可以是手動(dòng)設(shè)計(jì)用于從系統(tǒng)處理器中卸載某些任務(wù)的邏輯模塊。很多數(shù)學(xué)運(yùn)算在硬件中實(shí)現(xiàn)時(shí),要比軟件實(shí)現(xiàn)更快,效率更高。SOPC Builder和AvalonTM交換架構(gòu)支持使用硬件加速器來(lái)提升Nios II處理器軟件的性能。與其他方法相比,硬件加速器能夠:使用主存儲(chǔ)器和其他系統(tǒng)資源,這些資源具有全流水線和存儲(chǔ)器延時(shí)匹配主機(jī)端口,支持非常高的存儲(chǔ)器帶寬;由CPU通過(guò)從機(jī)端口進(jìn)行控制;具有軟件打包器功能,由CPU進(jìn)行控制,在工具鏈中替代了最初的C代碼。

  圖3顯示了一個(gè)典型的硬件加速器,它含有兩個(gè)連接至Avalon交換架構(gòu)的的主機(jī)端口(讀和寫)。加速器使用直接存儲(chǔ)器訪問(wèn)(DMA)組件來(lái)執(zhí)行總線讀和寫操作,它提供控制端口以便處理器進(jìn)行控制。最后,在中心位置,加速器邏輯是計(jì)算指定算法的引擎。

圖3硬件加速實(shí)例  

圖3硬件加速實(shí)例

  如果您使用Nios II C2H編譯器,會(huì)自動(dòng)產(chǎn)生所有這些組件,并集成到您的系統(tǒng)中。

  硬件加速器為Altera FPGA增加了強(qiáng)大的功能,它作為復(fù)雜多周期協(xié)處理器來(lái)實(shí)現(xiàn),可以流水線訪問(wèn)系統(tǒng)中的所有存儲(chǔ)器和外設(shè)。它們可以使用FPGA資源(例如,片內(nèi)存儲(chǔ)器和硬核宏乘法器)來(lái)實(shí)現(xiàn)本地存儲(chǔ)器緩沖以及乘法累加(MAC)電路。它們能夠根據(jù)需要盡可能多的使用主機(jī)端口,啟動(dòng)讀寫操作,訪問(wèn)系統(tǒng)中的所有I/O引腳。很多Nios II開發(fā)人員發(fā)現(xiàn),硬件加速器是提升軟件代碼性能最好的方法,能夠充分發(fā)揮Altera® FPGA高性能體系結(jié)構(gòu)的優(yōu)勢(shì)。

  詳細(xì)了解【 Nios II C2H編譯器

  方式4:可配置高速緩沖和緊耦合存儲(chǔ)器

  調(diào)整處理器指令或者數(shù)據(jù)緩沖的大小,以滿足您應(yīng)用的性能要求。為了在Nios II 處理器中能夠快速訪問(wèn)經(jīng)常使用的例程,加入了4個(gè)緊耦合存儲(chǔ)器,避免了緩存丟失的代價(jià),實(shí)現(xiàn)了類似緩存的訪問(wèn)功能。

  閱讀【 Nios II 軟件開發(fā)人員手冊(cè)中的緩存和緊耦合存儲(chǔ)器部分  】

  下載【 使用 Nios II 緊耦合存儲(chǔ)器教程  】

上一頁(yè)1234下一頁(yè)

本文導(dǎo)航