基于FPGA的動態(tài)可重配置短波收發(fā)機設計與實現(xiàn)
出處:劉 彬,趙明生 發(fā)布于:2011-08-27 08:26:06
軟件無線電(softwareradio)在一個開放的公共硬件平臺上利用不同可編程的軟件方法實現(xiàn)所需要的無線
電系統(tǒng)。簡稱SWR。理想的軟件無線電應當是一種全部可軟件編程的無線電,并以無線電平臺具有的靈活性為特征。全部可編程包括可編程射頻(RF)波段、信道接入方式和信道調制。它具有靈活、開放和可擴展等優(yōu)點。其基本思想是以一個通用、標準、模塊化的硬件平臺為依托,通過軟件編程實現(xiàn)無線電的各種功能,從基于硬件、面向用途的電臺設計方法中解放出來。
FPGA具有性能好、靈活性高和可重復編程的特點,非常適合構建軟件無線電系統(tǒng)。在FPGA中構建軟件無線電系統(tǒng)的傳統(tǒng)方法是全局靜態(tài)重配置,即為系統(tǒng)的每一種工作模式生成一個全局的邏輯電路,實際應用時通過對FPGA的多次全局靜態(tài)重復編程分別實現(xiàn)各種工作模式。這種方法有幾個缺點:(1)重復編程需要較長的時間;(2)重復編程的控制不便,需要借助外部處理器的控制或者人為操作;(3)需要較多的額外存儲空間來存儲相應于各種工作模式的編程文件。
傳統(tǒng)的基于模塊化的動態(tài)可重配置系統(tǒng)只有1個動態(tài)模塊。在構建系統(tǒng)時,首先進行動態(tài)模塊和靜態(tài)模塊的劃分,將需要重配置的子模塊劃人動態(tài)模塊,其余子模塊劃入靜態(tài)模塊,重配置是對動態(tài)模塊進行的。這種動態(tài)可重配置系統(tǒng)的主要缺點是重配置的靈活性不夠,不能對各子模塊進行單獨地重配置。在動態(tài)模塊中的1個子模塊需要更新時,需要對整個動態(tài)模塊進行重配置。
MIL-STD-188-110B是針對長距離通信系統(tǒng)的音頻數(shù)據調制解調器的美國軍方短波通信系統(tǒng)標準。本文基于Xilinx FPGA芯片XC2VP30構建了動態(tài)可重配置軟件無線電系統(tǒng)平臺,并在該平臺上設計了動態(tài)可重配置MIL-STD-188-110B短波收發(fā)機系統(tǒng)。
1 動態(tài)部分重配置
1.1 動態(tài)部分重配置技術
使用動態(tài)部分重配置技術構建動態(tài)可重配置系統(tǒng)是近年來出現(xiàn)的一種新的方法,是當前FPGA的主要發(fā)展方向和研究熱點之一?;贔PGA的動態(tài)可重配置系統(tǒng),指的是支持不同工作模式的邏輯,是通過對具有專門緩存邏輯資源的FPGA.進行局部的芯片邏輯的重配置而快速實現(xiàn),而且在對局部的芯片邏輯進行重配置的同時,芯片的其他部分保持其實現(xiàn)功能不變且處于不問斷的運算狀態(tài)。動態(tài)可重配置系統(tǒng)具有配置速度快和可擴展性好等優(yōu)點。
目前,動態(tài)部分重配置技術主要有3種:基于模塊化的技術、基于差異的技術和基于比特流的技術。
基于模塊化的技術的基本思想是將系統(tǒng)劃分為不同的模塊,為每個模塊在FPGA芯片中分配好位置,將各個模塊單獨激活,然后組裝成系統(tǒng),生成初始全局比特流,同時待重配置的各版本動態(tài)模塊生成相應版本的部分重配置比特流。這種設計方法屬于比較高層的解決方案,非常適合能夠模塊化的系統(tǒng)。
基于差異的技術的基本思想是根據2個系統(tǒng)的差異生成部分重配置比特流。這種技術屬于較底層的解決方案,適合于對電路性能進行細致的調整和優(yōu)化,能對系統(tǒng)進行微調。
基于比特流技術的基本思想是分析配置文件,通過直接對比特流文件進行操作,生成不同的部分配置文件。這種技術能夠直接對比特流進行修改,使動態(tài)重配置比較靈活。
本文根據軟件無線電系統(tǒng)能夠模塊化的特點,使用基于模塊化的技術構建動態(tài)可重配置軟件無線電系統(tǒng)平臺。
1.2 Xilinx FPGA芯片對動態(tài)部分重配置技術的支持
Xilinx公司是主要的FPGA芯片生產廠商之一。其生產的FPGA芯片支持基于模塊化的動態(tài)部分重配置技術,并且為模塊之間的通信提供了二種總線宏。它允許信號穿過部分重配置模塊的邊界,保證穿過可重配置模塊邊界的布線資源是完全固定而且必須是靜態(tài)的。每次實現(xiàn)部分重配置時,總線宏用來確定模塊間的布線通道沒有改變,保證正確的連接。
Xilinx Virtex—lI系列以后的FPGA芯片提供了內部配置訪問端121 ICAP(Internal Configuration Access Portl)這使得FPGA中內嵌的處理器能夠直接在可編程邏輯器件內部對其配置數(shù)據進行操作。使用ICAP使得芯片上的靜態(tài)模塊可以控制該芯片上動態(tài)區(qū)域的邏輯重配置,但在重配置期間必須保證靜態(tài)模塊的完整性。這種方式擴展了動態(tài)部分重配置的概念,被稱為自重配置或者自重構。是動態(tài)部分重配置的一種特殊形式。為方便對ICAP的使用,Xilinx公司還提供了對ICAP封裝后的可直接掛在片上外設總線OPB(On—ChipPeripheral Bus)上的IP核——OPB—HWICAP。
1.3 在Xilinx FPGA芯片中構建基于模塊化的動態(tài)可重配置系統(tǒng)
在Xilinx FPGA芯片中構建基于模塊化的動態(tài)可重配置系統(tǒng)需遵循如下的流程:
(1)進行動態(tài)模塊和靜態(tài)模塊的劃分,將需要重配置的子模塊劃入動態(tài)模塊,其他子模塊為靜態(tài)模塊;
(2)對頂層邏輯、動態(tài)模塊和靜態(tài)模塊分別進行設計與綜合;
(3)編寫系統(tǒng)約束文件,其主要內容包括:為各I/O口指定管腳約束、為各模塊分配位置、指定待重配置的模塊為動態(tài)模塊、指定各總線宏和其他頂層邏輯的位置及指定時間約束等;
(4)對動態(tài)模塊和靜態(tài)模塊分別進行激活,即分別進行轉換、映射和布局布線等操作;
(5)將各模塊激活后的布線結果組裝起來,與頂層邏輯一同進行轉換、映射和布局布線,生成終的全局布線圖;
(6)由全局布線圖生成初始全局比特流,由各不同版本的動態(tài)模塊的布線圖生成部分重配置比特流。
2 動態(tài)可重配置MIL-STD-188-110B短波收發(fā)機
2.1 動態(tài)可重配置軟件無線電系統(tǒng)平臺
基于Xilinx FPGA芯片XC2VP30的動態(tài)可重配置軟件無線電系統(tǒng)平臺如圖1所示。該系統(tǒng)平臺將FPGA芯片分為3部分,即兩側的靜態(tài)模塊與中間的動態(tài)模塊。實際應用時,應將用戶邏輯系統(tǒng)劃分為多個子模塊,并依據各子模塊是否需要重配置,將其分別放置在FPGA芯片的靜態(tài)模塊和動態(tài)模塊中。靜態(tài)模塊與動態(tài)模塊之間的通信通過橫跨邊界的總線宏實現(xiàn)。
該系統(tǒng)平臺中的重配置控制系統(tǒng)以軟核處理器MicroBlaze為,片上外設總線OPB上連接了DDR SDRAM Controller、OPB_HWICAP和UART Controller 3個模塊。其中DDR SDRAM Controller為片外存儲器DDR SDRAM的控制IP核,用來控制存儲部分重配置比特流的DDR SDRAM;OPB_HWICAP用來控制內部配置訪問端口ICAP;UART Controller用來控制串口,通過串口可以和主機進行通信。
Xilinx提供的OPB_HWICAP核為對ICAP封裝后的可直接掛在OPB總線上的IP核,在該IP核的內部將OPB總線的接口邏輯與ICAP原語相連。由于ICAP位于FPGA芯片的右下角,因此在構建可重配置系統(tǒng)平臺時,需要對該IP核進行修改,即將ICAP原語從OPB_HWICAP核中分離出來,將修改過的OPB_HWICAP核放在位于FPGA左側的靜態(tài)模塊1中,將ICAP原語放在位于FPGA右側的靜態(tài)模塊2中,修改后的OPB_HWICAP核與ICAP原語的通信通過跨越動態(tài)模塊的總線宏實現(xiàn)。

在該平臺上構建動態(tài)可重配置系統(tǒng)之后.按照前述構建動態(tài)可重配置系統(tǒng)的流程生成初始全局比特流和各動態(tài)模塊的各版本的部分重配置比特流,并將部分重配置比特流存儲在DDR SDRAM中。首先運行初始全局比特流,然后系統(tǒng)等待主機自串口發(fā)送的重配置命令。系統(tǒng)接收到重配置命令并對其解析之后.根據需要從DDR SDRAM中選擇相應的部分重配置比特流送至ICAP,完成重配置以實現(xiàn)所需選擇的工作模式。
在該平臺上構建的動態(tài)可重配置系統(tǒng)擴展性好,如果需要支持一種新的工作模式,只需構建這種工作模式相應的動態(tài)模塊,并產生部分重配置比特流即可。系統(tǒng)重配置的控制方式也比較靈活,實際應用時可依需要對該平臺進行修改,使重配置的發(fā)生由開發(fā)板上的按鍵、開關或其他內部和外部中斷來控制。
此外,與全局比特流相比,部分重配置比特流較小,所需的存儲空間較少。同時由于配置時間與比特流大小成正比,部分重配置所需時間較少,配置速度較快。
2.2 MIL-STD-188-110B短波收發(fā)機
MIL-STD-188-110B短波收發(fā)機框圖如圖2所示。

MIL-STD-188-110B支持不同比特率和不同交織長度的多種工作模式,本文構建的動態(tài)可重配置MIL-STD-188-110B收發(fā)機支持的比特率為150 b/s、300 b/s、600 b/s和1 200 b/s,支持的交織長度為0.6 s和4.8 s,共有8種組合工作模式。在不同的工作模式下,發(fā)射機中交織、格雷映射、符號生成、插入同步前導頭與訓練序列這4個子模塊的邏輯功能不同。與之相應,接收機中符號解析、格雷映射和解交織這3個子模塊在不同工作模式下具有不同的邏輯功能。
2.3 動態(tài)可重配置MIL-STD-188-110B短波收發(fā)機
在動態(tài)可重配置系統(tǒng)平臺上構建動態(tài)可重配置的MIL-STD-188-110B短波收發(fā)機,首先需要對系統(tǒng)進行動態(tài)模塊與靜態(tài)模塊的劃分。
發(fā)射機中交織、格雷映射、符號生成、插入同步前導頭與訓練序列這4個子模塊的邏輯功能在不同的工作模式下是不同的,各子模塊時鐘的頻率關系也有所不同。因此,在構建動態(tài)可重配置的發(fā)射機系統(tǒng)時,應將時鐘生成模塊及這4個子模塊劃為動態(tài)模塊,其余子模塊及重配置控制系統(tǒng)劃為靜態(tài)模塊。
同樣,在實現(xiàn)接收機時,將時鐘生成模塊及符號解析、格雷映射和解交織3個子模塊劃為動態(tài)模塊,接收機的其余子模塊及重配置控制系統(tǒng)劃為靜態(tài)模塊。
動態(tài)可重配置的MIL-STD-188-110B發(fā)射機和接收機系統(tǒng)框圖分別如圖3(a)和圖3(b)所示。

由其中一種工作模式生成初始全局比特流,所有8種工作模式的動態(tài)模塊均生成相應的部分重配置比特流并存儲于DDR SDRAM中。首先運行初始全局比特流,系統(tǒng)收到主機的重配置命令后,根據要求從DDR SDRAM中讀出所需版本的部分重配置比特流,并將其送至內部配置訪問端口ICAP,即可發(fā)生所需的動態(tài)部分重配置。
實驗表明,該收發(fā)機可通過動態(tài)部分重配置在各種工作模式間進行切換,且在各種工作模式下均能夠正常工作。發(fā)射機系統(tǒng)的一個部分重配置比特流的大小為269 KB,為全局比特流(1 415 KB)的19.0%,因而所需的用于存儲配置比特流的空間較小,配置速度相對較快,所需配置時間約為全局配置時間的19.0%。接收機系統(tǒng)的一個部分重配置比特流的大小為217 KB,為全局比特流的15.3%。
該收發(fā)機系統(tǒng)的擴展性好,對于MIL-STD-188-110B標準所支持的其他工作模式,只需構建其動態(tài)模塊,并生成相應的部分重配置比特流。系統(tǒng)的重配置還可依需要修改為由開關、按鍵或其他的中斷控制。
本文基于Xilinx FPGA芯片構建了多模塊動態(tài)可重配置系統(tǒng)平臺,并在該系統(tǒng)平臺上實現(xiàn)了一個多模塊自重配置發(fā)射機系統(tǒng)。該系統(tǒng)的各子模塊可以進行單獨重配置,能夠以較少數(shù)量的部分重配置比特流實現(xiàn)較多的組合工作模式。
版權與免責聲明
凡本網注明“出處:維庫電子市場網”的所有作品,版權均屬于維庫電子市場網,轉載請必須注明維庫電子市場網,http://m.58mhw.cn,違反者本網將追究相關法律責任。
本網轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品出處,并自負版權等法律責任。
如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯(lián)系,否則視為放棄相關權利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識介紹2025/8/29 16:58:56
- SQL核心知識點總結2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復控制的復合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎知識2025/6/18 16:30:52









