《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > TD-LTE系統(tǒng)中數(shù)據(jù)轉(zhuǎn)存技術(shù)的研究及實(shí)現(xiàn)
TD-LTE系統(tǒng)中數(shù)據(jù)轉(zhuǎn)存技術(shù)的研究及實(shí)現(xiàn)
來(lái)源:電子技術(shù)應(yīng)用2011年第7期
陳發(fā)堂,葉 劍
(重慶郵電大學(xué),重慶400065)
摘要: 基于對(duì)TD-LTE系統(tǒng)中數(shù)據(jù)存儲(chǔ)及傳輸技術(shù)的研究及分析,提出了一種下行鏈路處理的系統(tǒng)實(shí)現(xiàn)方案,并在Virtex-5系列FPGA芯片中完成DDR2 SDRAM控制器的設(shè)計(jì)及優(yōu)化。該技術(shù)方案應(yīng)用于TD-LTE無(wú)線綜合測(cè)試儀中,完成下行鏈路大容量高速數(shù)據(jù)的接收和發(fā)送,實(shí)現(xiàn)硬件資源共享,其處理速度和數(shù)據(jù)精度滿(mǎn)足TD-LTE測(cè)試要求。
關(guān)鍵詞: TD-LTE Virtex-5 DDR2SDRAM 資源共享
中圖分類(lèi)號(hào): TN492
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2011)07-0075-04
Research and implement of the data storage and transmission technology in TD-LTE system
Chen Fatang,Ye Jian
Chongqing University of Posts and Telecommunications , Chongqing 400065,China
Abstract: Based on the research and analysis of data storage and transmission technology in TD-LTE system, a realizing scheme of downlink link processing in system is proposed, with which complete the design and optimization of DDR2 SDRAM controller in the FPGA chip of series Virtex-5. The technical solutions used in TD-LTE wireless comprehensive tester, complete the reception and transmission of high-capacity and high-speed in downlink, meet the requirements of TD-LTE test in terms of hardware resources sharing, processing speed and data accuracy.
Key words : TD-LTE;Virtex-5;DDR2 SDRAM;resource sharing


    TD-LTE無(wú)線終端測(cè)試平臺(tái)以FPGA+DSP+ARM為核心,TD-LTE系統(tǒng)中下行基帶OFDM信號(hào)生成在FPGA中處理??紤]到FPGA要處理其他算法和邏輯控制,且內(nèi)部存儲(chǔ)器容量有限,所以大容量的基帶OFDM信號(hào)生成后,需要應(yīng)用DDR2 SDRAM存儲(chǔ),然后通過(guò)射頻發(fā)送。下行物理信道的一般處理流程如圖1所示[1]。
    圖1所示為下行物理信道的基帶信號(hào)生成一般流程:首先,將物理信道上傳輸?shù)拿恳粋€(gè)碼字中的編碼比特進(jìn)行加擾、調(diào)制、層映射、預(yù)編碼后生成復(fù)值調(diào)制符號(hào),其次將其映射到資源粒子上,最后在每一個(gè)天線端口上產(chǎn)生時(shí)域OFDM基帶信號(hào)。

    以前的文獻(xiàn)大多以研究DDR2 SDRAM內(nèi)部指令處理和對(duì)接口信號(hào)完整性及內(nèi)部結(jié)構(gòu)進(jìn)行分析為主,文獻(xiàn)[2]主要針對(duì)后期流水線視頻處理的DDR2 SDRAM控制器的設(shè)計(jì),而在TD-LTE系統(tǒng)中DDR2 SDRAM控制器設(shè)計(jì)及優(yōu)化的文獻(xiàn)資料較少。本文以TD-LTE無(wú)線綜合測(cè)試儀為平臺(tái),以研究DDR2 SDRAM 控制器的設(shè)計(jì)為基礎(chǔ),實(shí)現(xiàn)DDR2 SDRAM正確轉(zhuǎn)存大容量數(shù)據(jù),并驗(yàn)證調(diào)試及優(yōu)化。
1 系統(tǒng)框架
      在TD-LTE無(wú)線終端綜合測(cè)試儀的基帶板設(shè)計(jì)中,ARM支持的接口比較豐富,主要用于完成操作系統(tǒng)及協(xié)議、應(yīng)用等功能;DSP芯片實(shí)現(xiàn)配置功能,完成物理層流程及主要算法,充分發(fā)揮其尋址方式靈活、通信機(jī)制強(qiáng)大的優(yōu)點(diǎn);由FPGA芯片并行處理數(shù)據(jù)量大、重復(fù)性強(qiáng)、速度要求高的數(shù)字信號(hào)。TD-LTE物理層開(kāi)發(fā)平臺(tái)中FPGA應(yīng)用框架如圖2所示。

    根據(jù)系統(tǒng)結(jié)構(gòu)中的邏輯任務(wù)劃分,Turbo譯碼、同步控制、解預(yù)編碼、Viterbi譯碼、OFDM基帶信號(hào)生成和系統(tǒng)定時(shí)等算法都在FPGA中完成,內(nèi)部運(yùn)用高級(jí)高性能總線(AHB)實(shí)現(xiàn)各個(gè)模塊連接。本文主要研究網(wǎng)絡(luò)端下行發(fā)送鏈路中DDR2 SDRAM的應(yīng)用。首先,DSP發(fā)送資源映射后的數(shù)據(jù),經(jīng)過(guò)多通道緩沖串口(McBSP)發(fā)送給FPGA,在FPGA內(nèi)部,按照TMS320C6455芯片的McBSP協(xié)議,利用Verilog HDL語(yǔ)言模擬一個(gè)McBSP接口,完成數(shù)據(jù)接收;然后,調(diào)用IFFT模塊生成基帶信號(hào),DDR2控制器模塊控制基帶信號(hào)寫(xiě)入DDR2 SDRAM;最后,在控制讀出使能信號(hào)拉高后,從DDR2 SDRAM中控制讀出,傳送到RF控制模塊,數(shù)據(jù)經(jīng)過(guò)數(shù)/模轉(zhuǎn)換,從射頻發(fā)送出去,這樣就完成了下行OFDM基帶信號(hào)的發(fā)送流程。從射頻接收數(shù)據(jù),完成解基帶信號(hào)過(guò)程,數(shù)據(jù)接收過(guò)程與發(fā)送基帶信號(hào)類(lèi)似,只是數(shù)據(jù)傳輸方向相反。

 


2 DDR2 SDRAM控制器的設(shè)計(jì)
2.1 DDR2 SDRAM特性

    DDR2 SDRAM是JEDEC規(guī)范的一種新型高速率、大容量的雙速率同步隨機(jī)存儲(chǔ)器,在時(shí)鐘上升沿和下降沿,同時(shí)進(jìn)行數(shù)據(jù)的傳輸。DDR2 SDRAM 雖然具有高帶寬、低功耗和大容量特性,但對(duì)于控制器接口設(shè)計(jì)的時(shí)序和延遲提出了更高的要求,使接收端的時(shí)序調(diào)整和信號(hào)完整性分析更加困難。DDR2 SDRAM支持如下特性:
    (1)片內(nèi)匹配終結(jié)(On-Die-Termination)。采用ODT技術(shù)將許多外部的匹配電阻移到芯片內(nèi)部,不僅節(jié)省了大量的PCB板上面積,而且可以避免信號(hào)間的干擾。
    (2)突發(fā)長(zhǎng)度(BL)為4或8。突發(fā)長(zhǎng)度(BL)是指在同一行中相鄰的存儲(chǔ)單元(列)連續(xù)數(shù)據(jù)傳輸?shù)臄?shù)量。DDR2 SDRAM的讀/寫(xiě)訪問(wèn)是基于突發(fā)的,支持長(zhǎng)度為4和8的突發(fā)長(zhǎng)度。
    (3)列地址選通(CAS)時(shí)延。DDR2 SDRAM支持3、4、5的CAS時(shí)延(CL)。CL是讀指令和輸出數(shù)據(jù)的第一個(gè)輸出比特之間的時(shí)鐘延遲。
    (4)Bank管理。FPGA芯片內(nèi)部不同的Bank一般具有不同的電氣特性。良好的Bank管理有利于資源的有效利用。
2.2 DDR2 SDRAM接口設(shè)計(jì)
    DDR2 SDRAM控制器結(jié)構(gòu)主要包括用戶(hù)接口、控制模塊、數(shù)據(jù)通道、時(shí)鐘/復(fù)位模塊及時(shí)延控制模塊,其結(jié)構(gòu)如圖3所示[3]。

    用戶(hù)接口模塊中,主要包括指令邏輯模塊、讀/寫(xiě)地址FIFO、讀/寫(xiě)數(shù)據(jù)FIFO等模塊[5]。其中,對(duì)DDR2 SDRAM讀/寫(xiě)操作的轉(zhuǎn)換由指令邏輯模塊完成。讀/寫(xiě)數(shù)據(jù)FIFO和讀/寫(xiě)地址FIFO用來(lái)完成數(shù)據(jù)的緩沖和同步。
    控制模塊產(chǎn)生DDR2 存儲(chǔ)接口和用戶(hù)接口所需的所有控制信號(hào),控制操作由DDR2 SDRAM的內(nèi)部控制信號(hào)完成??刂菩盘?hào)主要包括ddr2_ras_n行地址選擇[2]、ddr2_cas_n列地址選擇、ddr2_we_n寫(xiě)使能信號(hào)等指令。通過(guò)各種指令的組合完成相應(yīng)的指令,控制DDR2 SDRAM在各種狀態(tài)間跳轉(zhuǎn),完成相應(yīng)的讀/寫(xiě)操作和其他操作。
    數(shù)據(jù)通道模塊主要完成與用戶(hù)接口及DDR2 SDRAM之間的數(shù)據(jù)交互??刂颇K翻譯用戶(hù)指令,對(duì)存儲(chǔ)器觸發(fā)特定的指令。例如,當(dāng)app_af_cmd信號(hào)為000時(shí),翻譯為寫(xiě)指令,從用戶(hù)接口進(jìn)入的輸入數(shù)據(jù),通過(guò)寫(xiě)通道寫(xiě)入DDR2 SDRAM存儲(chǔ)器中。類(lèi)似地,當(dāng)app_af_cmd信號(hào)為001時(shí),翻譯為讀指令,DDR2 SDRAM存儲(chǔ)的數(shù)據(jù)依次通過(guò)讀通道、用戶(hù)接口的輸出數(shù)據(jù)端口讀出。
    時(shí)鐘/復(fù)位模塊輸入的系統(tǒng)時(shí)鐘是差分時(shí)鐘,差分時(shí)鐘通過(guò)一個(gè)單端輸出的緩存器,輸出的是相位相差90°的clk0和clk90,輸出的復(fù)位信號(hào)至少持續(xù)25個(gè)時(shí)鐘[4]。時(shí)延控制模塊的主要作用是減小溫度、電壓變化造成時(shí)鐘/復(fù)位信號(hào)不穩(wěn)定的影響。
3 硬件實(shí)現(xiàn)及優(yōu)化
3.1 測(cè)試仿真
    首先,利用 CORE Generator生成設(shè)計(jì)需要的MIG核,選擇好芯片型號(hào),封裝和速度等級(jí)分別設(shè)定為ff136和-2,突發(fā)長(zhǎng)度為4。在MIG基本應(yīng)用的基礎(chǔ)上開(kāi)發(fā)頂層程序,根據(jù)TD-LTE無(wú)線綜合測(cè)試儀下行傳輸大容量基帶信號(hào)的設(shè)計(jì)要求,設(shè)計(jì)DDR2 SDRAM控制器。對(duì)DDR2 SDRAM數(shù)據(jù)寫(xiě)入仿真波形如圖4所示。
    圖4是在Modelsim SE 6.5中截取的數(shù)據(jù)寫(xiě)入的仿真圖,當(dāng)state處于0001狀態(tài),同時(shí)WRITE_EN拉高后,app_af_cmd信號(hào)為000,表明可以向DDR2 SDRAM中寫(xiě)入數(shù)據(jù),地址信號(hào)app_af_addr每次累加4,數(shù)據(jù)信號(hào)app_wdf_data交替發(fā)送測(cè)試數(shù)據(jù)0xedcb5432和0x1234abcd,數(shù)據(jù)通過(guò)FPGA和DDR2 SDRAM之間的雙向數(shù)據(jù)線ddr2_dq寫(xiě)入到DDR2 SDRAM中。

3.2 綜合實(shí)現(xiàn)
    在Modelsim SE 6.5中完成測(cè)試仿真,當(dāng)測(cè)試仿真準(zhǔn)確無(wú)誤后,完成綜合實(shí)現(xiàn),生成的比特文件下載到FPGA芯片中,進(jìn)行板級(jí)調(diào)試與驗(yàn)證。通過(guò)在線邏輯分析儀,觀測(cè)到的DDR2 SDRAM控制器讀/寫(xiě)時(shí)序如圖5、圖6所示。

    圖5是在Chipscope中截取的一段DDR2 SDRAM寫(xiě)操作的時(shí)序圖。在寫(xiě)使能信號(hào)觸發(fā)的條件下,app_wdf_wren信號(hào)拉高,同時(shí)app_af_cmd信號(hào)為000指示寫(xiě)操作,在app_af_wren的上升沿寫(xiě)入地址,由于BL=4,地址每次累加4,“X”和“O”豎線分別對(duì)應(yīng)的是第一、二個(gè)32 bit的數(shù)據(jù)(即4個(gè)16 bit數(shù)據(jù)),每個(gè)地址對(duì)應(yīng)4個(gè)16 bit數(shù)據(jù)。由于選用的DDR2 SDRAM 具有2GB的存儲(chǔ)空間,每一個(gè)TD-LTE下行幀的IFFT數(shù)據(jù)存儲(chǔ)完就發(fā)送一次,數(shù)據(jù)量小于2GB,不用考慮會(huì)溢出的情況。
    圖6是在Chipscope中截取的一段DDR2 SDRAM讀操作的時(shí)序圖。在讀使能信號(hào)觸發(fā)的條件下,app_af_wren信號(hào)拉高,同時(shí)app_af_cmd信號(hào)為001指示讀操作,每一個(gè)時(shí)鐘沿寫(xiě)入一個(gè)讀地址,每次地址累加4,在一段時(shí)延后,rd_data_valid信號(hào)拉高,指示有效數(shù)據(jù)輸出,rd_data_fifo_out輸出端口上依次輸出對(duì)應(yīng)地址的數(shù)據(jù)。“O”豎線處的數(shù)據(jù)對(duì)應(yīng)的就是“X”豎線處地址的第一個(gè)32 bit數(shù)據(jù),也就是圖5中寫(xiě)入的第一個(gè)數(shù)據(jù)。
3.3 設(shè)計(jì)優(yōu)化
    針對(duì)DDR2 SDRAM控制器驗(yàn)證調(diào)試時(shí)出現(xiàn)的異常/錯(cuò)誤現(xiàn)象進(jìn)行優(yōu)化和改進(jìn):
    (1)時(shí)鐘觸發(fā)不穩(wěn)定。TD-LTE系統(tǒng)設(shè)計(jì)中,內(nèi)部模塊較多,由DSP提供一個(gè)100 MHz時(shí)鐘作為多個(gè)模塊的時(shí)鐘,造成時(shí)鐘觸發(fā)不穩(wěn)定,影響數(shù)據(jù)采樣的穩(wěn)定。
    優(yōu)化方案:在時(shí)鐘觸發(fā)不穩(wěn)定的模塊前,增加一個(gè)數(shù)字時(shí)鐘管理模塊(DCM),達(dá)到穩(wěn)定時(shí)鐘、精確數(shù)據(jù)采樣的目的。
    (2)不同時(shí)鐘域之間數(shù)據(jù)傳輸。由于IFFT模塊也在FPGA中完成,而IFFT模塊的輸出時(shí)鐘和DDR2 SDRAM 控制器輸入時(shí)鐘頻率相位不同,造成數(shù)據(jù)采樣的錯(cuò)誤。
    優(yōu)化方案:在IFFT模塊和DDR2 SDRAM 控制器模塊之間增加一個(gè)異步FIFO模塊,這樣OFDM基帶信號(hào)就能正確寫(xiě)入到DDR2 SDRAM中。
    (3)抖動(dòng)現(xiàn)象。由于實(shí)際板子的影響,按下硬件信號(hào)復(fù)位時(shí),發(fā)生了明顯的抖動(dòng)現(xiàn)象。
    優(yōu)化方案:在代碼編寫(xiě)過(guò)程中,增加了去抖動(dòng)程序,使代碼更加優(yōu)化。例如高電平復(fù)位時(shí),將復(fù)位信號(hào)擴(kuò)展為10個(gè)全為1的比特(10’h3ff)進(jìn)行判斷。
4 性能分析與結(jié)論
    DDR2 SDRAM設(shè)計(jì)使用Xilinx公司的高性能軟件ISE10.1[6],選擇芯片為Xilinx公司Virtex-5系列的XC5SX95T(speed-2),DDR2 SDRAM的型號(hào)為MT47H128M16,2GB存儲(chǔ)空間。綜合實(shí)現(xiàn)時(shí),利用Synplify Pro 9.6.1進(jìn)行邏輯優(yōu)化后,運(yùn)行的最大時(shí)鐘頻率為281.021 MHz,按照本文的設(shè)計(jì)實(shí)現(xiàn)方法,資源占用量得到很大程度的減少,因而資源占用情況已比較合理,詳細(xì)資源利用情況如表1所示。

    從基帶板調(diào)試驗(yàn)證的結(jié)果看,大容量的OFDM基帶信號(hào)存儲(chǔ)到DDR2 SDRAM中,不僅節(jié)省了芯片內(nèi)部的RAM存儲(chǔ)空間,而且大大提高了數(shù)據(jù)處理速度和精度。讀/寫(xiě)操作的實(shí)現(xiàn)是由DDR2 SDRAM控制器內(nèi)部控制的,從寫(xiě)入數(shù)據(jù)和讀出數(shù)據(jù)的一致性看,DDR2 SDRAM控制器的設(shè)計(jì)滿(mǎn)足要求,為下一步數(shù)據(jù)的正確處理提供了可靠保證。該設(shè)計(jì)實(shí)例提供了仿真及實(shí)現(xiàn)具體流程,對(duì)于大容量高速高性能系統(tǒng)開(kāi)發(fā)具有良好的參考和應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] 3GPP TS 36.211 v9.0.0:Physical Channnels and Modulation(Release 9).2009(12).
[2] Wang Xuzhi,Ma Yanru.Design of DDR2 SDRAM Controller for Video Post Processing Pipeline[C].2009(12).
[3] Chen Shuangyan,Wang Donghui.An Innovative Design  of the DDR/DDR2 SDRAM Compatible Controller[C].2005(10).
[4] Xilinx Memory Interface Generator(MIG) User Guide[M].UG086(v2.1).2008(9).
[5] 須文波,胡丹.DDR2 SDRAM控制器的FPGA實(shí)現(xiàn)[J].江南大學(xué)學(xué)報(bào),2006(4).
[6] 胡彬.Xilinx ISE Design Suite 10.x FPGA開(kāi)發(fā)指南-邏輯設(shè)計(jì)篇[M].北京:人民郵電出版社,2008.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。