新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA的可配置通信平臺設(shè)計(jì)

基于FPGA的可配置通信平臺設(shè)計(jì)

作者: 時間:2007-12-06 來源:網(wǎng)絡(luò) 收藏
【摘要】:本文設(shè)計(jì)了一種基于的、通用開發(fā)與測試平臺。針對不同信道編碼和調(diào)制方式的組合,通過采用實(shí)時軟硬件重構(gòu)技術(shù),該平臺可以在短期內(nèi)完成相應(yīng)系統(tǒng)的構(gòu)建、驗(yàn)證和配置。本文還結(jié)合設(shè)計(jì)實(shí)例說明了所構(gòu)建平臺的特點(diǎn)。
【關(guān)鍵詞】:,配置,重構(gòu),DSP,SOPC

1 引言

為了適應(yīng)應(yīng)用要求的多樣性, 需要一種可以實(shí)現(xiàn)快速設(shè)計(jì)、快速驗(yàn)證、快速移植的軟硬件驗(yàn)證與測試平臺。該平臺可以提供通信系統(tǒng)最基本的硬件架構(gòu)、軟件環(huán)境、靈活的接口以及系統(tǒng)的設(shè)計(jì)功能,方便用戶根據(jù)應(yīng)用要求在該平臺上設(shè)計(jì)和配置所需的通信系統(tǒng),并測試該系統(tǒng)的功能和性能,進(jìn)而直接在該平臺上實(shí)現(xiàn)設(shè)計(jì)到設(shè)備的轉(zhuǎn)化。

該平臺的實(shí)現(xiàn)有基于DSP和基于兩種解決方案 [1]?;贒SP的實(shí)現(xiàn)方式中,固定的數(shù)據(jù)總線寬度是當(dāng)前主流DSP處理器的一個瓶頸,且只適合于軟件可重構(gòu)設(shè)計(jì),此外還面臨并行性等問題。相反,基于FPGA的實(shí)現(xiàn)方式既可以解決并行性和順序性的矛盾,又具有大容量、高速度、高靈活性和軟硬件重構(gòu)的優(yōu)勢,故基于FPGA的解決方案更具實(shí)用性。

2

本開發(fā)平臺采用基于FPGA的解決方案,利用Matlab、Modlesim以及Altera公司的綜合/配置/下載專用軟件等相關(guān)工具,在PC環(huán)境下構(gòu)建出一個軟件開發(fā)平臺,用于算法驗(yàn)證和性能仿真;利用基于FPGA的硬件平臺――如Altera的DSP 開發(fā)板――來完成設(shè)計(jì)的下載、驗(yàn)證與測試;并通過定制的內(nèi)嵌軟核CPU實(shí)現(xiàn)對系統(tǒng)內(nèi)部各功能模塊和存儲器、I/O接口等資源模塊的配置和管理,從而達(dá)到按不同通信系統(tǒng)的要求和特點(diǎn)迅速完成設(shè)計(jì)、驗(yàn)證和移植的目的,此外,還能靈活的修改、升級甚至重新配置。

2.1平臺的構(gòu)建

設(shè)計(jì)涉及到具體的芯片信息,使得目前不同的FPGA芯片的設(shè)計(jì)流程有所不同,無法完全實(shí)現(xiàn)采用較為通用的軟件進(jìn)行前端設(shè)計(jì)(包括系統(tǒng)設(shè)計(jì)、算法開發(fā)、功能仿真和綜合實(shí)現(xiàn)),采用芯片支持的專用軟件進(jìn)行后端設(shè)計(jì)(包括時序仿真、布局布線和下載)。因此,采用Altera的FPGA后,平臺組成分為三部分:基于PC的設(shè)計(jì)和測試軟件部分,設(shè)計(jì)和測試的硬件開發(fā)板部分,觀測和其他輔助部分。

其中,基于PC的設(shè)計(jì)和測試軟件部分包括設(shè)計(jì)和測試的各種軟件,即:Matlab/Simulink、Modlesim、DspBuilder、SOPCBuilder、Quartus等;硬件開發(fā)板則可用Altera公司的NIOS、ARM、DSP各種開發(fā)系統(tǒng),也可以根據(jù)需要自主開發(fā)添加各種軟硬件應(yīng)用接口并對外圍器件進(jìn)行調(diào)配后的FPGA開發(fā)板;觀測和其他輔助部分包括平臺內(nèi)觀測的人機(jī)界面等軟硬件、平臺外觀測的示波器或邏輯分析儀以及噪聲發(fā)生器、信號發(fā)生器、接收機(jī)等。

2.2平臺的設(shè)計(jì)測試流程

平臺的設(shè)計(jì)測試流程實(shí)現(xiàn)框圖如下圖1所示:

圖1

平臺的設(shè)計(jì)流程側(cè)重于系統(tǒng)的算法驗(yàn)證和控制實(shí)現(xiàn),其中算法部分主要通過DSP Builder實(shí)現(xiàn),為圖中用實(shí)線連接部分;控制部分由Nios II IDE和SOPC Builder完成,為圖中短線連接部分。

平臺的測試流程主要結(jié)合開發(fā)板實(shí)現(xiàn)設(shè)計(jì)指標(biāo)的驗(yàn)證,為圖中點(diǎn)線連接部分,有外部觀測和內(nèi)部觀測兩種方法。其中,外部觀測通過外加示波器或邏輯分析儀完成;內(nèi)部觀測可以通過平臺的人機(jī)操作界面完成,也可以通過配套軟件來實(shí)現(xiàn),根據(jù)復(fù)雜度和測試內(nèi)容的不同分為自動流程和手動流程。

自動流程包括如下四個步驟[1]:(1)Matlab/Simulink/DspBuilder建模。(2)平臺仿真。(3)DspBuilder完成VHDL轉(zhuǎn)換、綜合、適配、下載。(4)嵌入式邏輯分析儀――SignalTap完成實(shí)時測試。手動流程包括如下七個步驟:(1)Matlab/Simulink/DspBuilder建模。(2)平臺仿真。(3)DspBuilder完成VHDL轉(zhuǎn)換、綜合、適配。(4)Modlesim對TestBench功能仿真。(5)Quartus II完成適配、時序仿真。(6)芯片引腳鎖定、配置下載、編程。(7)嵌入式邏輯分析儀――SignalTap完成實(shí)時測試。

3設(shè)計(jì)

在可重構(gòu)系統(tǒng)中,硬件的配置信息可以類似軟件程序一樣被動態(tài)調(diào)用或修改,進(jìn)而達(dá)到電路的實(shí)時重構(gòu),這樣既保留了硬件的快速性,又兼具軟件的靈活性。因此,實(shí)時電路重構(gòu)的實(shí)質(zhì)就是利用可編程器件能多次重復(fù)配置資源和功能的特性,既可以在運(yùn)行時根據(jù)需要動態(tài)改變系統(tǒng)的部分參數(shù)或部分電路結(jié)構(gòu),也可以通過重加載完成整個系統(tǒng)的軟硬件升級[2]。

整個系統(tǒng)的可配置內(nèi)容和實(shí)現(xiàn)流程[3]如圖2所示:

圖2

如上圖所示,平臺的可配置設(shè)計(jì)主要體現(xiàn)在四個方面:參數(shù)的可重加載;模塊的可重選擇;系統(tǒng)的可重下載;硬件的可重定制。

參數(shù)的可重加載是針對類型相同,參數(shù)不同的信號與系統(tǒng),其系統(tǒng)結(jié)構(gòu)基本不變,只是系統(tǒng)中模塊的參數(shù)可以重新進(jìn)行設(shè)置和調(diào)整。

模塊的可重選擇是對結(jié)構(gòu)相似,類型不同的信號,只對系統(tǒng)中相應(yīng)的部分進(jìn)行重新加載或重新組合。

系統(tǒng)的可重下載是指:如果目前加載的系統(tǒng)用前面兩種調(diào)整方式依然不能滿足要求時,則可以根據(jù)需要重新設(shè)計(jì)下載,或者在需要進(jìn)行系統(tǒng)升級時通過重新下載完成。

硬件的可重定制主要針對基于本平臺進(jìn)行嵌入式系統(tǒng)的開發(fā),這也是本方案與傳統(tǒng)方案的最大區(qū)別之處。它通過采用Altera公司的SOPC Builder解決方案來實(shí)現(xiàn)。即將處理器、存儲器、I/O口、總線等系統(tǒng)設(shè)計(jì)需要的功能模塊集成在一個FPGA芯片上,從而構(gòu)建出一個硬件可定制的片上系統(tǒng)。

4基于平臺的設(shè)計(jì)實(shí)例

下面我們結(jié)合簡單全數(shù)字通用接收機(jī)設(shè)計(jì)實(shí)例來說明該平臺可配置的特點(diǎn)和設(shè)計(jì)測試流程。

全數(shù)字通用接收機(jī)[4]的基本結(jié)構(gòu)為:解調(diào)+解碼+數(shù)據(jù)恢復(fù)+配置控制。其中輸入信號的格式可以是連續(xù)或離散方式、可以是固定或可變速率;解碼方式為RS或Turbo或Viterbi;解調(diào)方式是M-PSK系列或M-QAM系列。如下圖3所示:

圖3

系統(tǒng)配置舉例:實(shí)現(xiàn)連續(xù)模式下,數(shù)據(jù)速率1Mbit/s,DQPSK調(diào)制,RS編碼,2Mhz載波,8dB信噪比,1%頻偏,1%相偏,16倍采樣輸出信號的同步、解調(diào)和解碼。模塊的選擇和參數(shù)的配置方法流程如前,配置后的系統(tǒng)[5][6]如下圖4所示:

圖4

具體算法實(shí)現(xiàn):數(shù)據(jù)源采用連續(xù)或間斷的M序列模擬連續(xù)和突發(fā)信號,速率通過平臺時鐘控制;調(diào)制解調(diào)部分的數(shù)控振蕩器NCO、Fir濾波器和RS編解碼由IP core實(shí)現(xiàn);軟件仿真階段,頻偏相偏通過調(diào)制端NCO的頻率和相位控制字實(shí)現(xiàn),噪聲通過程序內(nèi)加實(shí)現(xiàn);硬件測試階段,頻差、相差、時鐘誤差、噪聲則在直接通過外接實(shí)際信號發(fā)生設(shè)備或噪聲源實(shí)現(xiàn)。

測試流程:仿真階段采用程序內(nèi)加噪聲模擬并通過程序自行實(shí)時比較的方法,下載后測試則采用外加噪聲源后通過實(shí)時回讀數(shù)據(jù)并自動比較的方法。其中回讀數(shù)據(jù)采用自動流程,其原理是通過將設(shè)置為測試點(diǎn)的數(shù)據(jù)實(shí)時存儲到一定容量的片內(nèi)RAM中,并利用下載線再讀回到軟件環(huán)境中進(jìn)行顯示、比較或存儲。

測試結(jié)果:圖5是在輸入信號的X、Y分路信號和合路后加噪前后的信號,圖6是收端恢復(fù)出X、Y路濾波前后的信號,圖7是收發(fā)兩端X、Y分路和合路后在硬件平臺上的回讀信號,其中第1、3、5行是輸入的X、Y和分路前的數(shù)據(jù),第2、4、6行是恢復(fù)后的X、Y和合路后的數(shù)據(jù),包含了硬件實(shí)際的延時。系統(tǒng)采用16倍采樣,圖5圖6觀測1024個采樣點(diǎn),圖7觀測1024個回讀采樣點(diǎn)。


圖5 圖6 圖7


5總結(jié)

本文采用實(shí)時軟硬件重構(gòu)技術(shù)設(shè)計(jì)了一種基于FPGA的、通用可配置的通信開發(fā)與測試平臺,其中,內(nèi)嵌軟核CPU協(xié)調(diào)各模塊的工作和提供用戶接口,F(xiàn)PGA完成DSP運(yùn)算等主要工作。并通過軟硬件的可配置能實(shí)現(xiàn)該平臺多用途和可升級的設(shè)計(jì)。

作為一種SOPC的解決方案,該平臺已經(jīng)完成了實(shí)際應(yīng)用開發(fā),并為各種通信系統(tǒng)從軟件仿真到硬件實(shí)現(xiàn)、從設(shè)計(jì)驗(yàn)證到設(shè)備測試提供了一種實(shí)用、快速而又具高性價比的實(shí)現(xiàn)方法。

參考文獻(xiàn)

[1] SOPC技術(shù)實(shí)用教程,潘松 黃繼業(yè) 曾毓,清華大學(xué)出版社,2005。

[2] 一種可重構(gòu)處理器的設(shè)計(jì),董培良 俞承芳,復(fù)旦學(xué)報(bào)(自然科學(xué)版),2004年2月第43 卷 第1期。

[3] 挑戰(zhàn)SOC―基于NIOS的SOPC設(shè)計(jì)與實(shí)踐,周博 邱衛(wèi)東 陳燕 周學(xué)功 方茁等,清華大學(xué)出版社,2004。

[4] Carrier frequency recovery in all-digital modems for burst-mode transmissions, Marco Luke, Ruggero Reggiannini, IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 43, NO. 2/3/4, 1995。

[5] 基于FPGA的QPSK解調(diào)器的設(shè)計(jì)與實(shí)現(xiàn),趙海潮 周榮花 沈業(yè)兵,微計(jì)算機(jī)信息,2004年第20卷第7期。

[6] Advanced Electronic Communications Systems Sixth Edition(Sixth Edition),Wayne Tomasi,Publishing House of Electronics Industry,2004。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉