摘要:針對調製樣式在不同環境下的變化,採用了fpga部分動態可重構的新方法,通過對不同調製樣式訊號的解調模組的動態載入,來實現了不同環境下針對不同調製樣式的解調這種方式比傳統的設計方式具有更高的靈活性、可擴充套件性,並減低了成本和功耗該設計方案同時也介紹了fpga部分動態可重構的概念和特點,可以對其它通訊訊號處理系統設計提供一定的參考。
隨著現代通訊技術的迅速發展,訊號的調製方式向多樣化發展,解淵技術也隨之不斷向前發展。為了對高速大頻寬的訊號進行實時解調,現在很多的解調關鍵演算法都是在高速硬體上用可程式設計邏輯器件(fpga)實觀,利用fpga強大的資源和實時處理能力來快速的實現訊號的跟蹤、鎖定和解調但是,基於硬體的實現方案和基於軟體的方案相比,往往存在不能迅速適應調製樣式改變的問題。為了有效斛決這個問題,筆者通過基下fpga部分動態町重構技術,提出了相應的解決方案。
1 fpga部分動態可重構技術介紹
從九零年代以來,隨著fpga晶元技術的逐步成熟和發展,fpga在各個領域中的應用逐漸擴大,晶元內部的資源規模也成倍增加。但是,隨著fpga容量的擴大,fpga的設計和實現也漸漸出現了下面的瓶頸問題:
1)fpga晶元內部佈線隨著設計複雜度的增加,佈線的難度成平方增加,佈線的時間也成倍增加。
2)對於大容量的fpga,為了保證設計時約定的效能,為了滿足時序約束條件,最終實現版本的實際資源利用率反而下降。
3)大容量的fpga一旦設計完成後,對其進行部分模組的調整和優化經常需要很長時間。
在此上述這些原因的基礎上,fpga的重配置技術應需而生。fpga重配置技術分為完全重配置技術和部分動態可重構技術兩種。其中fpga完全重配置技術就是通過fpga外部的配置處理單元,通過對fpga配置管腳的程式設計,來實現整個fpga內容的切換,這種方式在目前已經得到了較為廣泛的應用。而fpga部分動態可重構技術是通過fpga內部或外部的配置處理單元,對fpga內部部分資源的時分復用,來實現fpga內部部分模組的切換。
對這兩種配置技術進行比較,可以看到fpga部分動態可重構技術的優勢在於以下這些方面:
1)提高了配置速度。完全重配置需要配置整個fpga的位元流檔案,而部分動態可重構技術只需要配置相應模組的邏輯內容,文什大小相差懸殊,在相同的配置時鐘頻率下,部分動態可重構技術的配置速度是完全配置的幾分之一或者幾十分之一。
2)省略了完全配置後的復位、下達引數的流程。完全重配置在配置完成後,整個fpga處於初始狀態,需要重新對介面進行初始化,並配置執行引數。而部分動態可重構技術不用進行全域性復位,下達引數也只需要針對重構的模組。
3)儲存了fpga執行的中間結果和資料。完全重配置很難儲存fpga執行的中間結果,如果外接ddr sdram等儲存單元,也會因為介面的重新復位而導致資料混亂,而部分動態可重構技術完全不用擔心這些問題。
部分動態可重構技術具有上述相對與完全重配置技術的優勢外,也和完全重配置技術一樣,具有低功耗和靈動性高的優點,並且具備遠端載入功能,可以通過有線網路或者無線網路來實現超距環境下的fpga功能變更。
部分動態可重構技術和完全重配置技術相比,對fpga設計人員的開發能力和規劃能力要求更高,下面通過對乙個簡單的數碼訊號解調系統,來給出部分動態可重構技術的實現途徑。
2 fpga部分動態可重構技術的硬體實現方案
fpga部分動態可重構的硬體實現如圖1所示,為了保證fpga配置的可靠性,本文採用了fpga外部單元控制配置流程的實現方式。乙個基本的實現結構除了被配置的fpga外,需要有配置控制模組、配置介面模組和配置儲存模組這3個部分。其巾配置控制模組一般由dsp、微控制器、arm處理器或者powerpc選擇,主要功能是從配置儲存模組或者外部介面中獲取配置位元流檔案,並在需要部分動態重構的時刻把配置位元流檔案傳送到配置介面模組。配置介面模組一般由fpga或者cpld實現,功能是接收配置控制模組傳輸的配置位元流,進行相應的時序轉換,產生滿足fpga配置時序的訊號,從而對fpga進行配置。配置儲存模組一般是flash或者sdram,可以長期或者臨時儲存多個配置位元流檔案。
在進行配置部分動態可重構位元流檔案時,因為該位元流檔案不像完整的配置位元流檔案一樣具有檔案頭,而是只有幀位址、配置資料及校驗和,當所有配置內容傳輸到fpga後,不會有done訊號拉高來表示配置結束。在這種情況下,必須監視傳輸來的配置資料,當出現部分重配置檔案的結束標誌desynch(0000000d)時,就可以判斷部分重構流程結束,可以執行新的重構模組。
3 基於fpga部分動態可重構的訊號解調系統開發流程
3.1 fpga模組劃分
在完成了支援fpga部分動態可重構的硬體實現後,下面開始規劃訊號解調系統的fpga設計架構。如圖3所示,訊號解調系統主要由通道化模組,可重構解調模組和數傳介面模組組成。
通道化模組主要是把ad資料進行通道化處理,進行濾波,下變頻、通道選擇和抽取。可重構解調模組是針對不同調製樣式的分別實現不同的解調模組,並根據實際需要進行部分重構。數傳介面模組是把解調的結果傳輸到fpga外,進行後續處理和在介面中顯示。
3.2 fpga模組的設計和實現
按照圖3所示的結構,按照下面步驟進行基於部分動態可重構技術的fpga程式設計:
1)把需要部分重構的fpga模組設計為乙個空盒,即只有輸入輸出管腳,沒有實際內容的空模組。在進行空模組的管腳規劃時要綜合考慮多種解調樣式下的介面相容性,保證乙個模組介面能涵蓋需要處理的所有樣式。
2)分別完成不需要部分重構的fpga予模組,並完成fpga頂層模組。
3)對fpga頂層模組進行綜合,產生頂層網表。
4)按照步驟1)中的模組定義格式完成針對不同調製模式的解淵模組,如qpsk_demod,fsk_demod等,並通過**驗證,然後逐模組分別綜合成單獨的模組網表檔案,儲存到不同的目錄中。
5)在planahead工具中匯入fpga頂層網表,注意在匯入選項中選擇支援部分重構。在planahead工具中把2個空的可重構解調模組設定為可重構分割槽(reconfigurablepartition),如圖4所示,並把步驟4)中綜合好的模組網表指定為可重構模組下的可選內容。
6)在planahead工具的device檢視中,對可重構模組劃分分割槽(pblock),目前分割槽只支援矩形,要求分割槽包含的資源數目略大於解淵模組所需資源的最大值,其中包括邏輯資源(查詢表和暫存器),乘法器(dsp48e)和ram資源。
7)根據對2個可重構解調模組的不同配置,產生多個配置檔案,配置檔案的乙個例子如表1所示,並逐一進行布局佈線,產生完整的配置位元流檔案和用於部分重構的位元流檔案。對於每一組配置檔案,會產生乙個包含靜態邏輯的完整配置位元流檔案,和2個用於部分重構的位元流檔案,分別對應2個不同的分割槽,配置載入時不能隨便互換。
8)對錶1中配置檔案進行設計規則檢查比較,保證各組配置檔案生成的完整配置的位元流檔案是一致的。
9)完成以上設計後,首先呼叫任意乙個完整配置檔案進行載入,保證fpga成功執行靜態邏輯,然後根據需要,選擇表1中的配置檔案表中的任何1組,進行部分動態載入。
4 應用結果
以上設計經過實際驗證,可以實現2路訊號在不同調製樣式的解調,當訊號樣式變化時,動態載入相應的解調模組,可以迅速完成功能切換,實現對應的解調功能。經過實際測試,部分動態可重構模組的載入速度存10 ms以內,極大的提高了原有系統的效能。
5 結論
目前國際上對fpga可重構技術的研究極為廣泛,本文介紹了一種基於xilinx fpga的部分動態可重構技術的訊號解調系統,可以把不同的解調模組定位到晶元內部同一邏輯資源部分,通過重構這些資源來實現不同樣式訊號的解調,同時保持其他部分電路功能正常執行,從而提高了系統的適應能力。
本系統可以存通訊系統中得到應用,對航天、電力等領域的類似系統也有參考價值,可以提高相應系統的靈活性和擴充套件性,減低系統功耗,縮短系統開發時間。
動態重構 01
總結 本文主要從應用到硬體平台上的對映以及系統執行時軟硬體任務的統一管理兩方面對動態重構系統進行描述。其中應用到硬體平台上的對映方面,對純硬體和包含軟硬體的應用的對映進行詳解。汲取 動態可重構技術的解釋 動態重構系統的解釋 目前動態重構系統面臨的問題 如何提高動態重構的速率 硬體 部分內容的擷取 動...
動態重構 02
總結 本文主要以fpga的可重構的動態特性為引子,提出了可以進行動態重構的電路。汲取 以硬體為基礎的動態重構技術。確實不是很懂 部分內容的擷取 fpga特有的新技術被創設出來,側重去重構多樣的實時電路。fpga可被自主修復,新增了適應性。依循可重構的根本機理,調配了動態路徑下的重構。借助於微處理,重...
動態重構 04
一種基於 dag 動態重構的認知網路服務遷移方法 總結 主要描述了通過對dag圖進行層次化來解決由於認知網路的特性所對qos帶來的問題。問題的歸結 認知網路節點頻繁配置 頻帶動態調整和節點隨機接入等特性所帶來的網路服務失效問題,這對網路服務調整後的 qos 產生了巨大的隱患。解決方案 首先,採用先遷...