摘要:這種線性流水陣列結(jié)構(gòu)具有如下特點(diǎn):·接口簡(jiǎn)單。各處理單元(PU)之間采用統(tǒng)一的外部接口?!ひ子跀U(kuò)充和維護(hù)。各個(gè)PU的內(nèi)部結(jié)構(gòu)完全相同,而且外部接口統(tǒng)一,所以系統(tǒng)很容易根據(jù)需要進(jìn)行硬件的配置和擴(kuò)充。當(dāng)某個(gè)模塊出現(xiàn)故障時(shí),也易于更換。·處理模塊的規(guī)范結(jié)構(gòu)能夠支持多種處理模式,可以適應(yīng)不同的處理算法。每個(gè)PU的核心
這種線性流水陣列結(jié)構(gòu)具有如下特點(diǎn):
·接口簡(jiǎn)單。各處理單元(PU)之間采用統(tǒng)一的外部接口。
·易于擴(kuò)充和維護(hù)。各個(gè)PU的內(nèi)部結(jié)構(gòu)完全相同,而且外部接口統(tǒng)一,所以系統(tǒng)很容易根據(jù)需要進(jìn)行硬件的配置和擴(kuò)充。當(dāng)某個(gè)模塊出現(xiàn)故障時(shí),也易于更換。
·處理模塊的規(guī)范結(jié)構(gòu)能夠支持多種處理模式,可以適應(yīng)不同的處理算法。
每個(gè)PU的核心由DSP芯片和可重構(gòu)器件FPGA組成,另外還包括一些外圍的輔助電路,如存儲(chǔ)器、先進(jìn)先出(FIFO)器件及FLASH ROM等(圖2)??芍貥?gòu)器件電路與DSP處理器相連,利用DSP處理器強(qiáng)大的I/O功能實(shí)現(xiàn)單元電路內(nèi)部和各個(gè)單元之間的通信。從DSP的角度來看,可重構(gòu)器件FPGA相當(dāng)于它的宏功能協(xié)處理器(Co-processor)。
PU中的其他電路輔助核心電路進(jìn)行工作。DSP和FPGA各自帶有RAM,用于存放處理過程所需要的數(shù)據(jù)及中間結(jié)果。FLASH ROM中存儲(chǔ)了DSP的執(zhí)行程序和FPGA的配置數(shù)據(jù)。先進(jìn)先出(FIFO)器件則用于實(shí)現(xiàn)信號(hào)處理中常用到的一些操作,如延時(shí)線、順序存儲(chǔ)等。
PU單獨(dú)做成一塊PCB,各級(jí)PU之間通過插座與底板相連。底板的結(jié)構(gòu)很簡(jiǎn)單,主要由幾個(gè)串連的插座構(gòu)成,其作用是向各個(gè)PU提供通信通道和電源供應(yīng)。可以根據(jù)需要安排底板上插座的個(gè)數(shù),組成多級(jí)線性陣列結(jié)構(gòu)。這種模塊化設(shè)計(jì)的突出優(yōu)點(diǎn)在于,它使得對(duì)系統(tǒng)的功能擴(kuò)充和維護(hù)變得非常簡(jiǎn)單。需要時(shí),只要插上或更換PU電路板,就可以實(shí)現(xiàn)系統(tǒng)的擴(kuò)展和故障的排除。每一級(jí)PU中的DSP都有通信端口與前級(jí)和后級(jí)PU電路板相連,可以很方便地控制和協(xié)調(diào)它們之間的工作。
4 應(yīng)用實(shí)例
我們應(yīng)用上述線性流水陣列結(jié)構(gòu)實(shí)現(xiàn)了一個(gè)實(shí)時(shí)目標(biāo)檢測(cè)系統(tǒng),該系統(tǒng)的任務(wù)主要是接收攝像頭輸出的灰度圖象,經(jīng)預(yù)處理、編碼、直線擬合和目標(biāo)識(shí)別后,輸出結(jié)果到PC機(jī)顯示。在這個(gè)任務(wù)中,預(yù)處理模塊包括抽樣、卷積和編碼等步驟,屬于低層的處理,其運(yùn)算數(shù)據(jù)量大,但運(yùn)算結(jié)構(gòu)較規(guī)則,適于用FPGA進(jìn)行純硬件實(shí)現(xiàn);而直線擬合及目標(biāo)識(shí)別等高層圖象處理算法,所處理的數(shù)據(jù)量相對(duì)較少,但要用到多種數(shù)據(jù)結(jié)構(gòu),其控制也復(fù)雜得多,我們用DSP編程來實(shí)現(xiàn)。
重構(gòu)處理模塊采用的是Xilinx公司的XC5200系列FPGA芯片。這是一種基于SRAM的現(xiàn)場(chǎng)可編程門陣列。表1給出了XC5200 系列FPGA的一些參數(shù)。
表1 XC5200系列FPGA的一些參數(shù)
XC5200系列FPGA邏輯功能的實(shí)現(xiàn)由內(nèi)部規(guī)則排列的邏輯單元陣列(LCA)來完成,它是FPGA的主要部分。LCA的核心是可重構(gòu)邏輯塊(CLB),四周是一些輸入/輸出塊(IOB)。CLB和IOB之間通過片內(nèi)的布線資源相連接。LCA由配置代碼驅(qū)動(dòng),CLB和IOB的具體邏輯功能及它們的互聯(lián)關(guān)系由配置數(shù)據(jù)決定。整個(gè)FPGA模塊的設(shè)計(jì)實(shí)現(xiàn)在Xilinx公司的Foundation 2。1i開發(fā)平臺(tái)上完成。該系統(tǒng)支持設(shè)計(jì)輸入、邏輯仿真、設(shè)計(jì)實(shí)現(xiàn)(設(shè)計(jì)綜合)和時(shí)序仿真等系統(tǒng)開發(fā)全過程。
在選用DSP芯片時(shí),主要應(yīng)考慮性能能否滿足快速判讀算法的要求,具體說就是要求選擇那些指令周期短、數(shù)據(jù)吞吐率高、通信能力強(qiáng)、指令集功能完備的處理器,同時(shí)也要兼顧功耗和開發(fā)支持環(huán)境等因素。表2列出了一些常用微處理器的性能參數(shù)。
我們選擇的是應(yīng)用廣泛、性價(jià)比較高的TMS320C40芯片。它是美國(guó)TI公司推出的為滿足并行處理需求的32位浮點(diǎn)DSP。主要特性如下:
表2 常用微處理器對(duì)照表
·外部時(shí)鐘40MHz,內(nèi)部時(shí)鐘20MHz,所有指令均單周期完成,處理器內(nèi)部采用高度并行機(jī)制,可同時(shí)進(jìn)行多達(dá)11項(xiàng)各類操作。
·兩套相同的外部數(shù)據(jù)、地址總線,支持局部存儲(chǔ)器和全局共享存儲(chǔ)器。
·6個(gè)高速并行通信口,采用異步傳輸方式,最大速率可達(dá)20Mb/s。通過令牌傳遞可靈活實(shí)現(xiàn)數(shù)據(jù)雙向傳輸,這種結(jié)構(gòu)很適合C40之間的互連。
·6個(gè)DMA通道,每個(gè)通道的最大速率可達(dá)20Mb/s。DMA內(nèi)部總線與CPU的地址、數(shù)據(jù)、指令總線完全分開,避開了總線使用上的瓶頸。
從結(jié)構(gòu)和功能上看,C40很適合與可重構(gòu)器件互相配合起來構(gòu)成高速、高精度的實(shí)時(shí)信息處理系統(tǒng),并完全可以勝任圖像信息的實(shí)時(shí)處理任務(wù);此外,C40的開發(fā)系統(tǒng)也比較完備,支持C語言和匯編語言編程,能夠方便地進(jìn)行算法移植和軟/硬件的協(xié)同設(shè)計(jì)。
衡量系統(tǒng)的整體性能不僅要看所使用的器件和所能完成的功能,還要看器件之間采用怎樣的互連結(jié)構(gòu)。XC5200可以完成模塊級(jí)的任務(wù),起到DSP的協(xié)處理器的作用。它的可編程性使它既具有專用集成電路的速度,又具有很高的靈活性。C40內(nèi)部結(jié)構(gòu)的主要優(yōu)勢(shì)是:所有指令的執(zhí)行時(shí)間都是單周期,指令采用流水線,內(nèi)部的數(shù)據(jù)、地址、指令及DMA總線分開,有較多的寄存器。這些特征使它有較高的處理速度。FPGA具有硬件的高速性,而C40具有軟件的靈活性,從器件上考察,能夠滿足處理復(fù)雜算法的要求。同時(shí),C40的6個(gè)通信口和6個(gè)DMA通道使其能夠在不被中斷的情況下比較從容地應(yīng)付與外界大量的數(shù)據(jù)交換。
從PU內(nèi)部互連來看,C40使用了專用的通信口完成與FPGA的互連,能夠保證在任何情況下FPGA與C40的數(shù)據(jù)通道的暢通。另外,FPGA和C40各自都有輸入端口,使得系統(tǒng)的處理結(jié)構(gòu)多樣化。比如,FPGA可以作為處理流程中的一個(gè)模塊,獨(dú)立完成某項(xiàng)功能,也可以作為C40的協(xié)處理器,通過C40的調(diào)用來完成特定的子函數(shù)。底板將互連性延伸到PU之間,使得多個(gè)電路板能夠組成多處理機(jī)系統(tǒng)。前級(jí)的C40既可以與下一級(jí)的C40通信,也可以將數(shù)據(jù)發(fā)送到下一級(jí)的FPGA。
綜上所述,本文提出的基于DSP+FPGA的線性流水陣列結(jié)構(gòu),為設(shè)計(jì)中如何處理軟硬件的關(guān)系提供了一個(gè)較好的解決方案。同時(shí),該系統(tǒng)具有靈活的處理結(jié)構(gòu),對(duì)不同結(jié)構(gòu)的算法都有較強(qiáng)的適應(yīng)能力,尤其適合實(shí)時(shí)信號(hào)處理任務(wù)。
本文作者:曉嵐 趙佳明 盧煥
[1] [2]
通信工程師備考資料免費(fèi)領(lǐng)取
去領(lǐng)取
共收錄117.93萬道題
已有25.02萬小伙伴參與做題