隨著數(shù)字技術(shù)的進步,高速、超大規(guī)模集成電路廣泛使用,3G移動終端基帶信號處理系統(tǒng)正朝著靈活、高度集成化、模塊化、通用化的方向發(fā)展。基帶信號處理器是數(shù)字技術(shù)與通信技術(shù)相結(jié)合的產(chǎn)物,它能靈活處理數(shù)字基帶信號,調(diào)制無線信號以便實現(xiàn)同通信網(wǎng)絡(luò)系統(tǒng)前端基站的無線通信。文章設(shè)計了一種基于先進微處理器(ARM)、數(shù)字信號處理(DSP)和現(xiàn)場可編程門陣列(FPGA)體系結(jié)構(gòu)的3G移動終端基帶信號處理器。這種體系結(jié)構(gòu)的優(yōu)點在于當提供更能滿足客戶需求的先進處理器時,整個系統(tǒng)容易集成,而且可以通過軟件方法方便地增加功能,而不必定制只讀存儲器(ROM)編碼的新芯片。同時系統(tǒng)使用軟件實現(xiàn)聯(lián)合檢測和信號解碼功能,通過軟件更新輕松實現(xiàn)對系統(tǒng)的任何升級,無需硬件修改。
1 設(shè)計思路
隨著實時數(shù)字信號處理技術(shù)的發(fā)展,ARM、DSP和FPGA體系結(jié)構(gòu)成為3G移動終端實現(xiàn)的主要方式。本文的設(shè)計通過ARM對目標及環(huán)境進行建模、運算,生成網(wǎng)絡(luò)協(xié)議仿真數(shù)據(jù)庫,應(yīng)用DSP進行數(shù)據(jù)調(diào)度、運算和處理,最后形成所需的調(diào)幅、調(diào)相、調(diào)頻等控制字,通過FPGA控制收發(fā)器芯片產(chǎn)生射頻模擬信號。利用數(shù)字芯片之間的通用性,ARM與DSP間的通信,不僅能實時處理接收和發(fā)送的數(shù)據(jù),還可以適應(yīng)不同移動網(wǎng)絡(luò)的具體要求,同時方便加載新的程序。FPGA數(shù)字頻率合成技術(shù)以其在頻率捷變速度、相位連續(xù)性、相對帶寬、高分辨率以及集成化等方面的優(yōu)異性能,為 3G移動終端射頻信號模擬的實現(xiàn)方式提供了選擇。
2 硬件實現(xiàn)
本系統(tǒng)主要部分是ARM主控模塊、DSP實時數(shù)據(jù)處理模塊和FPGA信號生成模塊。ARM主控模塊實現(xiàn)物理層與協(xié)議棧的通信,接收高層的指令,執(zhí)行相應(yīng)的任務(wù)。如協(xié)議棧需要在某些子幀中的某個或幾個上行時隙發(fā)送數(shù)據(jù)到核心網(wǎng),在某些子幀中的某個或幾個下行時隙接收核心網(wǎng)的數(shù)據(jù),這時把所有的指令和數(shù)據(jù)都存放在同步動態(tài)隨機存儲器(SDRAM)中,然后通知DSP去執(zhí)行。DSP實時數(shù)據(jù)處理模塊得到數(shù)據(jù)和命令后,首先處理發(fā)送數(shù)據(jù),對數(shù)據(jù)進行信道編碼調(diào)制、CRC附著、交織、擴頻調(diào)制等,然后處理接收數(shù)據(jù),如信道估計、去干擾、CRC校驗、信道解碼、解擴、唯特比解碼等。FPGA為信號生成模塊,管理26 M時鐘,進行分頻的任務(wù),控制模擬基帶(ABB)的自動發(fā)送功率控制(APC)、自動接收增益控制(AGC)、自動頻率控制(AFC)等,同時也實時控制射頻(RF)的工作。當DSP中的一些算法非常穩(wěn)定后,可以用FPGA來實現(xiàn)這些算法,減少DSP的處理負擔。其硬件電路如圖1所示。
2.1 接口
ARM與DSP的數(shù)據(jù)交換是通過雙口隨機存儲器(RAM)來實現(xiàn)的,即圖1中的SDRAM,起到上下行控制命令、參數(shù)和數(shù)據(jù)等緩存和交換的作用。這里收發(fā)雙口RAM數(shù)據(jù)線的位數(shù)大小為16 bit, SDRAM 存儲大小為128 M。硬件中斷信號線8(INT8)與硬件中斷信號線9(INT9)每5 ms相互產(chǎn)生一次,等于TD-SCDMA空口信號的子幀中斷,同時也可以作為ARM與DSP的控制命令、響應(yīng)來實現(xiàn)ARM與DSP之間的通信。
FPGA的主要的接口有data_out[15:0]接口,與數(shù)模轉(zhuǎn)換器(A/D)接口和與RF接口。
data_out[15:0]接口用來輸出FPGA運算的結(jié)果,與DSP的數(shù)據(jù)總線掛接在一起,在FPGA內(nèi)部設(shè)置一個三態(tài)門,開門信號就是 FPGA的片選信號CE。當CE不選通的時候,三態(tài)門輸出為高阻狀態(tài),不會影響DSP的數(shù)據(jù)總線。在每一個樣點間隔的時間內(nèi),F(xiàn)PGA運算出相關(guān)值的實部和虛部,將它們分別鎖存在4個16 bit的鎖存器中,并將與DSP相連的data_ready信號置高電平,表示數(shù)據(jù)已經(jīng)準備好。DSP檢測到data_ready為高后會進行讀操作,用地址總線的高幾位產(chǎn)生出片選信號將FPGA選通,通過地址總線的低兩位A0、A1來選擇4個鎖存器的其中一個,依次讀取實部和虛部兩個32位數(shù)的高16位和低16位。FPGA內(nèi)部會對DSP的讀操作計數(shù),確認數(shù)據(jù)分4次讀出后,則將data_ready置低,直到下一次運算完畢后再抬高。FPGA的頻率、相位和幅度控制字的設(shè)置和控制信號的產(chǎn)生由TMS320C5510完成,F(xiàn)PGA可以看作是異步存儲設(shè)備與TMS320C5510的外存儲器接口 (EMIF)相連,EMIF采用32 bit總線。
與數(shù)模轉(zhuǎn)換器(A/D)接口的A/D一端連接ABB,另一端連接FPGA,傳輸要發(fā)送的數(shù)據(jù)和移動網(wǎng)絡(luò)接收的數(shù)據(jù)。在與A/D的接口部分中,有 3個輸入端RIF、PS和CLK。RIF用來串行輸入A/D轉(zhuǎn)換來的樣點值;PS為幀同步信號,它在輸入到FPGA后用來驅(qū)動FPGA內(nèi)部的總體控制模塊;Clock為移位時鐘,它控制A/D與FPGA之間數(shù)據(jù)串行傳輸?shù)囊莆弧?/P>
與RF接口主要是用來控制發(fā)送和接收RF芯片工作。
2.2 主控模塊
主控模塊負責控制和協(xié)調(diào)各種工作,ARM采用TI公司生產(chǎn)的開放式多媒體應(yīng)用平臺(OMAP)微處理器,通過集成鎖相環(huán)倍頻系統(tǒng)主頻可以達到 66 MHz,最大外部存儲空間可達256 MB,片上資源豐富,外圍控制能力強性價比高。由它控制DSP模塊接收網(wǎng)絡(luò)發(fā)送的命令及參數(shù),實現(xiàn)無線自由的協(xié)議通信。
2.3 實時數(shù)據(jù)處理模塊
實時數(shù)據(jù)處理模塊[1]通過共享內(nèi)存與ARM實現(xiàn)發(fā)送的命令、傳輸參數(shù)和數(shù)據(jù),根據(jù)設(shè)定的移動終端工作狀態(tài),如Cell Search、隨機接入過程(RA)、專用控制信道(DCCH),及目標、環(huán)境的實時動態(tài)計算FPGA的控制字。同時也通過共享內(nèi)存上報從網(wǎng)絡(luò)接收的數(shù)據(jù)和信息傳輸給ARM;通過鎖存器向處理板提供控衰減控制信號實現(xiàn)睡眠,來達到省電。DSP采用TI公司C5000系列中的TMS320C5510,系統(tǒng)時鐘達600 MHz,數(shù)據(jù)處理速率可以達到4 800 MIPS。提供32/16 bit主機口,具有兩個獨立的外部存儲器接口,其中EMIF支持64 bit總線寬度。
2.4 FPGA模塊設(shè)計
本文的設(shè)計采用Stratix系列芯片,內(nèi)嵌多達10 Mbit的3種RAM塊:512 bit容量的小型RAM、4 KB容量的標準RAM、512 KB的大容量RAM。FPGA模塊具有True_LVDS電路,支持低電壓差分信號(LVDS)、低電壓正射極耦合邏輯(LVPECL)、準電流模式邏輯 (PCML)和超傳輸模式(HyperTranport)差分I/O電氣標準,且有高速通信接口。本設(shè)計提供了完整的時鐘管理方案,具有層次化的結(jié)構(gòu)和多達12個鎖相環(huán)(PLL)。Stratix系列使用的開發(fā)軟件是Altera公司提供的新一代開發(fā)軟件Quartus II。
該系列芯片的最大特色是內(nèi)嵌硬件乘法器和乘加結(jié)構(gòu)的可編程DSP模塊,適用于實現(xiàn)高速信號處理。這種DSP模塊是高性能的嵌入算術(shù)單元,它可以配置為硬件乘法器、加減法器、累加器和流水線寄存器。Stratix系列具有多達28個DSP模塊,可配置為224個嵌入乘法器,可以為大數(shù)據(jù)吞吐量的應(yīng)用提供靈活、高效和有價值的方案。這些DSP模塊可以實現(xiàn)多種典型的DSP功能,如有相關(guān)器、限沖擊響應(yīng)(FIR)濾波、快速傅立葉變換(FFT)功能和加密/解密功能等,其中相關(guān)器算法設(shè)計是各種其他算法實現(xiàn)的基礎(chǔ)和基本組成部分。
移動終端系統(tǒng)接收到的射頻信號經(jīng)過前端預處理后,送到A/D采樣,然后通過串行方式輸出樣點值到FPGA[2]。每個樣點值是用10 bit的二進制補碼表示的,需先通過一個串/并轉(zhuǎn)換器轉(zhuǎn)化為寬度為10 bit的并行信號。首先樣點值要進行的是希爾波特變換,希爾波特變換有多種實現(xiàn)方法,這里采用一個129階的濾波器來實現(xiàn),濾波器的抽頭系數(shù)由 MATLAB函數(shù)Remez產(chǎn)生,得到與其正交的另一路信號;然后以這兩路信號分別作為實部和虛部,與本地序列進行相關(guān)運算,將相關(guān)值的實部和虛部送給 DSP做后續(xù)處理。這樣,DSP才可以通過先對相關(guān)值求模,然后對模值出現(xiàn)的峰值的間隔、幅值和數(shù)目等信息進行判斷和進一步處理,來確定是否捕捉到信號。相關(guān)器算法FPGA設(shè)計的內(nèi)部結(jié)構(gòu)框圖如圖2所示。
2.5 PFGA與RF的接口、總線及時序控制設(shè)計
FPGA與RF的接口、總線及時序控制設(shè)計如圖3所示。
為了增加信道容量、改善帶寬效率,TD-SCDMA通過利用上行鏈路(反向鏈路)同步、軟件無線電和智能天線的技術(shù)將時分雙工(TDD)與 CDMA結(jié)合起來。TD-SCDMA要求手機的射頻部分具有快速的切換時間、高的動態(tài)范圍以及發(fā)送機和接收機部分的高線性度。MAX2410是一個完整正交發(fā)射器,它由一個正交調(diào)制器、可變增益IF和RF放大器組成。MAX2309是一種為基于CDMA的單頻單模蜂窩電話系統(tǒng)設(shè)計的IF接收機,其輸入頻率范圍經(jīng)過優(yōu)化達到70 MHz~300 MHz,在35 dBm增益下達-33 dBm,在-35 dBm增益下達+1.7 dBm。FPGA控制RF主要通過4個RF控制寄存器:A word寄存器、 B word寄存器、 C word寄存器和 D word寄存器。
3 軟件實現(xiàn)
移動終端軟件包括應(yīng)用層軟件、通信協(xié)議軟件和物理層軟件3部分。
應(yīng)用層軟件LAY 4-7:包含人機界面(MMI)和系統(tǒng)應(yīng)用層協(xié)議(S/W)部分,MMI為移動終端使用者接口,S/W類似移動終端的操作系統(tǒng)。
通信協(xié)議軟件LAY 2-3:該部分軟件較大,主要為通信協(xié)議,主要保證無線通信系統(tǒng)可以在各種狀況順暢互通。
物理層軟件LAY 1:負責協(xié)調(diào)DSP、其他硬件和軟件。物理層軟件的設(shè)計將能實現(xiàn)節(jié)能的特性、多資源、多時隙的處理、數(shù)據(jù)包和對其他網(wǎng)絡(luò)系統(tǒng)的監(jiān)測。在設(shè)計物理層軟件時的還要對相鄰小區(qū)的監(jiān)測,特別是當相鄰小區(qū)間彼此還沒有同步的時候。
移動終端軟件各個模塊主要實現(xiàn)與硬件的對應(yīng)關(guān)系如下:
應(yīng)用層軟件LAY 4-7和通信協(xié)議軟件LAY 2-3軟件的實現(xiàn)主要是在ARM中實現(xiàn),假如LAY 4-7需要一些特別高要求的應(yīng)用時,可以再增加相應(yīng)的硬件模塊,而不影響原有的架構(gòu),如增加高要求多媒體的處理和播放;物理層軟件LAY 1主要在DSP和FPGA中實現(xiàn)。
在軟件編程時ARM和DSP可以使用C語言來實現(xiàn),使用的調(diào)試工具為CCS軟件,當DSP中有一些算法非常成熟后,移動通信對這塊的實時性要求比較高時,應(yīng)該用匯編語言來實現(xiàn),在FPGA中可以用VHDL語言來實現(xiàn)。在編程是首先盡量定義好各個功能模塊的任務(wù),然后定義好各個功能模塊的接口參數(shù)等,在可以不用全局變量的時候盡量不用。
另一個主要挑戰(zhàn)是在TD-SCDMA終端里實現(xiàn)聯(lián)