一種ARM+DSP協(xié)作架構(gòu)的FPGA驗(yàn)證實(shí)現(xiàn)
介紹了以ARM+DSP體系結(jié)構(gòu)為基礎(chǔ)的FPGA實(shí)現(xiàn)。在其上驗(yàn)證應(yīng)用算法,實(shí)現(xiàn)了由ARM負(fù)責(zé)對(duì)整個(gè)程序的控制,由DSP負(fù)責(zé)對(duì)整個(gè)程序的計(jì)算,最大程度地同時(shí)發(fā)揮了ARM和DSP的各自優(yōu)勢(shì)。
本文引用地址:http://m.butianyuan.cn/article/83026.htmARM通用CPU及其開發(fā)平臺(tái),是近年來較為流行的開發(fā)平臺(tái)之一,而由ARM+DSP的雙核體系結(jié)構(gòu),更有其獨(dú)特的功能特點(diǎn):由ARM完成整個(gè)體系的控制和流程操作,由DSP完成具體的算法和計(jì)算處理。這樣,不但可以充分地發(fā)揮ARM方便的控制優(yōu)勢(shì),同時(shí)又能最大限度地發(fā)揮DSP的計(jì)算功能。這在業(yè)界已逐漸成為一種趨勢(shì)。
本文的FPGA的Demo驗(yàn)證,是在基于一款DSP內(nèi)核處理器的研發(fā)基礎(chǔ)上,對(duì)其功能進(jìn)行驗(yàn)證的一個(gè)小目標(biāo)識(shí)別算法的實(shí)現(xiàn)??紤]到軟件環(huán)境仿真的速度以及仿真模型的局限性,用FPGA進(jìn)行硬件協(xié)同驗(yàn)證。這樣,既能夠保證仿真的真實(shí)性,又能夠快速發(fā)現(xiàn)實(shí)際問題,減少不必要的流片次數(shù),加快開發(fā)的進(jìn)程,這對(duì)于一個(gè)大規(guī)模的SoC設(shè)計(jì),已經(jīng)成為不可或缺的手段之一,而且對(duì)節(jié)約成本也有很大好處。
1 系統(tǒng)體系結(jié)構(gòu)
雙核系統(tǒng)的體系結(jié)構(gòu)如圖1所示。
1.1 內(nèi)嵌ARM內(nèi)核的EPXA1芯片及其特點(diǎn)
圖1中,包含ARM922T內(nèi)核的開發(fā)平臺(tái)選用的是Altera公司的excalibar系列,本驗(yàn)證實(shí)現(xiàn)選用的型號(hào)是EPXA1。EPXA1是一款帶有100萬門可重配置PLD的ARM Core+PLD體系結(jié)構(gòu),可以通過quartus II軟件工具來靈活配置ARM Core同外部的端口連接,最大時(shí)鐘頻率能夠達(dá)到200MHz。EPXA1的高度集成化,不僅大大加快了ARM與片內(nèi)各種資源的通訊速度,而且減小了硬件電路的復(fù)雜性、體積和功耗,真正實(shí)現(xiàn)了SOPC[1]。
1.2 FPGA硬件平臺(tái)及其特點(diǎn)
對(duì)于一個(gè)具體項(xiàng)目,F(xiàn)PGA芯片的選取要根據(jù)實(shí)際需求和特點(diǎn)來具體考慮。一般應(yīng)從邏輯資源需求、易擴(kuò)展能力、信號(hào)質(zhì)量以及成本等因素來考慮。如圖1所示,本次設(shè)計(jì)采用的兩片F(xiàn)PGA分別為Xilinx公司的FPGA X3S5000和X2V6000,其容量分別為500萬門和600萬門。選用這兩塊芯片正是基于邏輯資源需求的考慮。FPGA X2V6000面向高端應(yīng)用,存儲(chǔ)資源更多,功能更強(qiáng)大,適用于性能要求較高的DSP內(nèi)核,但其成本相對(duì)也較高;而FPGA X3S5000成本較低,適用于一般性能要求的模塊。兩片F(xiàn)PGA都具備三個(gè)擴(kuò)展槽,可做接口擴(kuò)展,同時(shí)也能作為調(diào)試測(cè)試點(diǎn)用。
1.3 雙核體系結(jié)構(gòu)設(shè)計(jì)特點(diǎn)
具體來講,整個(gè)體系結(jié)構(gòu)是指通過人為設(shè)計(jì)電路圖,外部選用不同的FPGA器件來下載生成特定功能的外部硬件電路,在電路圖上對(duì)應(yīng)相應(yīng)的端口標(biāo)號(hào);同時(shí),ARM Core可以通過quartus II工具方便地連接不同的端口標(biāo)號(hào),編譯運(yùn)行生成相應(yīng)的配置文件;ARM的啟動(dòng)代碼中用以上的的配置文件信息來配置PLD,從而實(shí)現(xiàn)ARM同外部硬件電路即兩片F(xiàn)PGA的連接[3]。FPGA X3S5000中下載固化AHBC硬件電路以及外部SRAM Memory,而FPGA X2V6000中下載固化DSP Core以及支持AMBA協(xié)議的Wrapper。
這種體系結(jié)構(gòu)能夠充分利用硬件資源,合理的版圖位置方便了ARM和DSP對(duì)外部SRAM的訪問,同時(shí)可快捷地實(shí)現(xiàn)ARM的控制功能,而且預(yù)留的擴(kuò)展槽能夠較為方便地進(jìn)行功能擴(kuò)展和調(diào)試。DSP Core的Wrapper能夠快速響應(yīng)ARM的控制請(qǐng)求,調(diào)動(dòng)DSP Core進(jìn)入不同的工作狀態(tài)。
2 系統(tǒng)工作流程及特點(diǎn)
系統(tǒng)工作流程圖如圖2所示,介紹如下。
評(píng)論