《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > TMS320C6416特點及其在3G基站中的應用
TMS320C6416特點及其在3G基站中的應用
陳王騫 曾興雯
摘要: TMS320C6416的硬件結構,介紹內嵌的兩個譯碼協(xié)處理器,給出了其在WCDMA基站上行鏈路中的一個硬件應用方案,。
Abstract:
Key words :

    摘  要: title="TMS320C6416">TMS320C6416的硬件結構,介紹內嵌的兩個譯碼協(xié)處理器,給出了其在WCDMA基站上行鏈路中的一個硬件應用方案。 

    關鍵詞: 數字信號處理器  3G基站  Vterbi譯碼協(xié)處理器  Turbo譯碼協(xié)處理器

 

    在第三代移動通信系統(tǒng)WCDMA和CDMA2000中,為了能提供大容量和高質量的語音、可變速率數據,、圖像等業(yè)務,無線空中接口的傳輸速率在室內環(huán)境最高要達到2Mbit/s,在室外移動環(huán)境最高要達到384kbit/s。因此需要無線基站提供強大的處理能力,。TI公司新推出的TMS320C6416是目前處理能力最強大的處理器(DSP),它的主頻高達600MHz,專門用于設計高性能的3G無線基站,。本文僅就TMS320C6416的硬件結構及其在3G基站上行鏈路基帶處理中的應用做一介紹。 

1 TMS320C6416硬件結構

    TMS320C6416的硬件結構如圖1所示,。內部包括一個DSP內核,、一級數據Cache 、一級程序Cache,、二級存儲器,、增強型DMA控制器 (EDMA)、Vterbi譯碼協(xié)處理器(VCP),、Turbo譯碼協(xié)處理器(TCP);對外接口包括兩個外部存儲器接口(EMIFA和EMIFB),、主機接口(HPI)、PCI接口,、UTOPIA接口,、多通道緩沖串口(McBSP)。 

 

 

    DSP內核采用超長指令字(VLIW)體系結構,有8個功能單元,、64個32bit通用寄存器,。 一個時鐘周期同時執(zhí)行8條指令,運算能力可達到4800MIPS(每秒百萬條指令),支持8/16/32/64bit的數據類型。兩個乘法累加單元一個時鐘周期可同時執(zhí)行4組16×16bit乘法或8組8×8bit乘法,每個功能單元在硬件上都增加了附加功能,增強了指令集的正交性,。除此之外還增加了一些指令用以削減代碼長度和增加寄存器的靈活性,。TMS320C6416以后版本的主頻可升級到1.1GHz。 

    為使數據能保持對超快速DSP內核的供給,TMS320C6416采用了兩級超高速緩存器,即16KByte的一級數據Cache,、16KByte的一級程序Cache和1024KByte的數據和程序統(tǒng)一內存,。為了達到更大的擴展,1024KByte內存中的256KByte存儲空間可設置用作二級Cache。 

    在內存和外設接口(EMIFA接口,、EMIFB接口,、HPI或PCI接口、McBSP串口,、UTOPIA接口等)之間所有的數據傳輸都由EDMA來處理,。TMS320C6416的EDMA共有64個通道,每個通道的優(yōu)先級都可編程設置,每個通道都對應一個專用同步觸發(fā)事件,使得EDMA可以被外設來的中斷、外部硬件中斷,、其它EDMA傳輸完成的中斷等事件觸發(fā),開始進行數據的搬移,。EDMA完成一個完整的數據搬移后,可從通道傳輸參數記錄指定的鏈接地址處重新加載該通道傳輸參數。EDMA傳輸完成后,EDMA控制器可以產生一個到DSP內核的中斷,也可以產生一個中斷觸發(fā)另一個EDMA通道開始傳輸,。 

    TMS320C6416的存儲器接口提供了到SDRAM,、SBSRAM、異步器件如SRAM/ROM等存儲器的無縫接口,也可連接到外部I/O器件。存儲器接口有EMIFA和EMIFB,其中EMIFA接口有64bit寬的數據總線,可連接64/32/16/8bit的器件;EMIFB接口有16bit寬的數據總線,可連接16/8bit的器件,。一般情況下,EMIFA接口連接外部存儲器(如SDRAM),EMIFB接口連接外部I/O器件(如FPGA),。 

    HPI是一個16/32bit寬的異步并行接口,外部主機通過它可直接訪問DSP的地址空間,也可向DSP加載程序。HPI接口支持16bit寬的數據總線和32bit寬的數據總線兩種模式,兩者均工作在異步從方式,。 

    在TMS320C6416中,增加了一個PCI接口,使得DSP很容易通過PCI接口無縫連接到一個具有PCI功能的外部主CPU上,。PCI接口符合PCI2.2規(guī)范;具有PCI 主/從功能;支持32bit寬的地址和數據復用總線;工作頻率最高為33MHz;外部主機可通過PCI接口訪問DSP內部所有地址空間,向DSP加載程序;DSP也可通過該接口訪問外部PCI存儲空間。PCI接口和HPI接口共用相同的管腳,因此實際設計時兩者只能選一個,。 

    在TMS320C6416中,還增加了一個UTOPIA 接口,它支持UTOPIA II規(guī)范,發(fā)送數據總線和接收數據總線均為8bit寬,工作頻率最高可達50MHz,。UTOPIA接口作為ATM控制器的從方,在ATM層器件和物理層器件之間提供了一個標準的硬件接口。由于TMS320C6416內部沒有專用的硬件模塊處理ATM適應層功能,因此ATM適應層功能應該由DSP軟件來實現,。 

    另外,TMS320C6416還有三個多通道緩沖串口(McBSP),工作頻率最高可達100MHz,。其中McBSP1串口和UTOPIA接口復用,McBSP2串口和PCI的EEPROM接口復用,使用時要注意。 

    由于TMS320C6416采用了新型芯片制造工藝,I/O電壓為3.3V,內核電壓僅為1.2V,。當時鐘頻率為600MHz時,DSP的最大功耗小于1.6W,。 

2 Viterbi譯碼協(xié)處理器VCP

    在WCDMA系統(tǒng)中,語音和低速信令傳輸采用卷積碼。卷積碼譯碼方法有門限譯碼,、硬判決Viterbi譯碼和軟判決Viterbi譯碼,。TMS320C6416中的VCP可進行硬判決Viterbi譯碼或軟判決Viterbi譯碼。 

    VCP的輸入為DSP軟件根據待譯碼數據計算得到的分支度量,。若為硬判決,每個輸出符號用1bit表示;若為軟判決,每個輸出符號用16bit表示,VCP也計算Vterbi譯碼的質量指示Yamamoto 比特,。VCP的可編程參數包括:約束長度K(5、6,、7,、8,、9),、編碼速率r(1/2、1/3,、1/4),、編碼器生成多項式、編碼塊長度F,、是否使用滑窗及滑窗參數(可靠程度R,、收斂長度C)、硬判決還是軟判決,、計算狀態(tài)矩陣的初始條件,、質量指示Yamamoto比特門限等。 

    VCP的內部結構如圖2所示,。其中EDMA接口包含譯碼器輸入數據FIFO和輸出數據FIFO;存儲單元包含存儲譯碼器內部狀態(tài)矩陣和判決的回溯路徑;運算單元根據輸入分支度量進行加,、比較、選擇運算和回溯;VCPINT為VCP譯碼完成后到DSP 內核的中斷;VCPXEVT觸發(fā)EDMA通道29,搬移VCP的可編程配置參數或待譯碼數據的分支度量到VCP內部寄存器或內部輸入FIF0;VCPREVT觸發(fā)EDMA通道28,從VCP輸出FIFO搬移譯碼結果到DSP內部或外部存儲區(qū)。 

 

 

    DSP協(xié)同VCP進行譯碼處理的過程如下: 

    (1)DSP初始化輸入緩沖區(qū),。DSP根據待譯碼數據預先計算其分支度量(分支度量的計算見參考文獻[5]),并寫入指定的緩沖區(qū),。 

    (2)DSP分配輸出緩沖區(qū),準備存儲譯碼結果。 

    (3)準備VCP的寄存器配置參數,。這些參數首先準備好放在DSP的內存或外存,當VCP啟動時由EDMA寫入VCP內部寄存器,。 

    (4)設置EDMA參數。設置EDMA通道29參數,由VCPXEVT觸發(fā),搬移VCP配置參數到VCP內部寄存器,搬移待譯碼數據的分支度量到VCP內部輸入FIFO;設置EDMA通道28參數,由VCPREVT觸發(fā),從VCP輸出FIFO搬移VCP譯碼結果到DSP指定的輸出緩沖區(qū),。 

    (5)使能EDMA,。使能EDMA通道28和29,使其可以響應VCPXEVT和VCPREVT同步觸發(fā)事件。 

    (6)啟動VCP,。DSP寫“開始”命令到VCP內部的命令寄存器(VCPEXE),這會使VCP生成VCPXEVT事件,觸發(fā)EDMA通道29,搬移配置參數和待譯碼數據的分支度量到VCP,。 

    (7)處理VCP譯碼結果。VCP譯碼完成后會觸發(fā)EDMA,由EMDA通道28搬移譯碼結果到DSP指定的輸出緩沖區(qū),還會產生到DSP內核的中斷,。DSP應響應這個中斷,對譯碼結果進行處理,。 

    VCP的工作頻率為150MHz,最大可處理558路7.95K ARM語音信道。對于3G ARM 12.2K語音信道,約束長度為9,編碼速率為1/3,編碼數據塊長度為81,當信噪比SNR為1dB時譯碼結果的誤碼率BER為1.00E-02,當信噪比SNR為3.25dB時譯碼結果的誤碼率BER為1.00E-05,。 

3 Turbo譯碼協(xié)處理器TCP

    在WCDMA,、CDMA2000系統(tǒng)中,數據傳輸采用Turbo碼。Turbo譯碼算法包括軟輸出Viterbi算法(SOVA),、最大后驗概率算法(MAP),。TMS320C6416中的TCP中采用的是MAX*-LOG-MAP譯碼算法。 

    TCP執(zhí)行的譯碼算法是一種迭代MAP算法,原理框圖如圖3所示,。第一個MAP譯碼器接收信息比特R0和校驗比特R1,產生的軟輸出A1e進行交織作為對先驗概率的改進估計,輸入到第二個MAP譯碼器中,。第二個MAP譯碼器還同時輸入接收信息序列的交織序列/R0和校驗比特序列R2,譯碼產生的軟輸出A2e進行解交織并作為第一個MAP譯碼器的先驗概率,這樣反復進行,成為迭代譯碼。經過多次迭代后,對第二個MAP譯碼器的輸出結果A2進行解交織和硬判決,作為Turbo譯碼器的譯碼結果,。 

 

 

    TCP有兩種譯碼模式,當編碼塊長度小于等于5114時,TCP完成MAP算法和整個迭代過程,直接輸出譯碼硬判決結果;當編碼塊長度大于5114(僅對CDMA2000而言)時,TCP僅完成MAP算法,多次迭代,、交織、解交織和硬判決由DSP軟件來完成,。對WCDMA系統(tǒng)而言,編碼塊長度小于等于5114,此時TCP完成整個譯碼過程,。 

    待譯碼數據的系統(tǒng)信息位和校驗位必須由DSP進行8比特量化處理。8比特中第一位為符號位,接著四位是整數位,最后三位為小數位(具體計算見參考文獻[2]),。量化后才能輸入到TCP進行譯碼,。TCP譯碼后每個輸出符號用1bit表示。TCP的可編程配置參數包括:編碼速率r(1/3,、1/4),、編碼塊長度F、譯碼模式選擇,、最大迭代次數,、停止迭代的信噪比(SNR)門限等,。DSP輸入到TCP的數據還包括Turbo碼交織表。 

    TCP的結構框圖和VCP的結構框圖類似,如圖4所示,。輸入數據(待譯碼數據,、配置參數、交織表)都由EDMA通道31輸入到TCP內,EDMA通道31由TCP發(fā)出的同步事件TCPXEVT觸發(fā);譯碼結果由EDMA通道30從TCP內搬移到DSP指定的存儲區(qū),EDMA通道30由TCP發(fā)出的同步事件TCPREVT觸發(fā);TCP譯碼完成后也生成一個到DSP 內核的中斷TCPINT,。 

 

 

    DSP協(xié)同TCP進行譯碼處理的過程和VCP類似,具體過程如下: 

    (1)DSP初始化輸入緩沖區(qū),。DSP對待譯碼數據進行8bit量化并寫入指定緩沖區(qū),Turbo碼交織表也寫入指定緩沖區(qū)。 

    (2)DSP分配輸出緩沖區(qū),準備存儲譯碼結果,。 

    (3)準備TCP的寄存器配置參數,TCP啟動后由EDMA寫入TCP內部寄存器,。 

    (4)設置EDMA參數。設置EDMA通道30,、31參數,由TCP的兩個同步事件觸發(fā),控制EDMA向TCP輸入數據和從TCP輸出譯碼結果,。 

    (5)使能EDMA。使能EDMA通道30和31,使其可以響應TCPXEVT和TCPREVT同步觸發(fā)事件,。 

    (6)啟動TCP,。DSP寫“開始”命令到TCP內部命令寄存器,這會使TCP生成TCPXEVT事件,觸發(fā)EDMA通道31,搬移待譯碼數據、交織表,、寄存器配置參數到TCP,。 

    (7)處理TCP譯碼結果。TCP譯碼完成后會觸發(fā)EDMA通道30輸出譯碼結果,還會產生到DSP內核的中斷,。DSP響應這個中斷,對譯碼結果進行處理,。 

    TCP的工作頻率為300MHz,最大可處理29路384K數據信道;對編碼速率1/3、編碼塊長度為3840的數據幀進行6次迭代譯碼所需時間為0.3ms,。對于編碼速率1/3,、 編碼塊長度為1400的數據幀進行8次迭代譯碼,當信噪比SNR為0.8dB時譯碼結果的誤碼率BER為1.00E-04,當信噪比SNR為1.6dB時譯碼結果的誤碼率BER為5.00E-08。 

4 TMS320C6416在 WCDMA基站上行鏈路基帶處理中的應用

    TMS320C6416在WCDMA基站上行鏈路基帶處理中的應用方案如圖5所示,。在該方案中,經過射頻接收,、A/D變換、中頻處理后的數據送到FPGA/ASIC,FPGA/ASIC完成碼片速率級處理如RAKE接收等;然后送到DSP,DSP(TMS320C6416)主要進行符號速率級算法處理,如第二次解交織,、物理信道合并,、傳輸信道解復用、解速率匹配,、合并無線幀、第一次解交織,、Viterbi譯碼/Turbo譯碼,、去CRC校驗比特、FP幀組成等,。外部主CPU完成信令面協(xié)議的處理,同時控制整個單板,。 

 

 

    DSP的16bit寬的 EMIFB異步接口連接到FPGA/ASIC,用來控制FPGA/ASIC并讀取解調后的數據;DSP的HPI接口連接到外部主CPU,外部主CPU通過HPI加載DSP程序,配置DSP所處理的信道參數,向DSP下發(fā)信道的建立,、刪除等命令;DSP的64bit 寬的EMIFA接口連接到一個外部SDRAM,用來緩存處理過程中的中間數據;UTOPIA接口連接到接口電路,把FP幀轉換成ATM信元進而送到RNC進行上層業(yè)務處理。 

    在WCDMA系統(tǒng)中,移動終端發(fā)出的信號通過空中接口到達無線基站,。在基站中經過射頻接收,、中頻處理、RAKE接收,然后進行信道解復用,、解交織和Viterbi/Turbo譯碼處理,。在沒有采用TMS320C6416的系統(tǒng)中,兩種譯碼可以由DSP軟件來實現,但這會大大降低DSP處理其它業(yè)務的能力;譯碼也可以由外部FPGA/ASIC硬件實現,但這會增加單板器件的密度和功耗。TMS320C6416除了具有比一般DSP更強大的處理能力外,內部還集成了一個Viterbi譯碼協(xié)處理器和Turbo譯碼協(xié)處理器,提供的符號速率處理性能幾乎是TMS320C6203的十幾倍,因此TMS320C6416十分適合3G基站基帶符號速率級處理,。 

    TMS320C6203現已用在大多數無線設備制造商的3G基站設計中,。為了在低功耗和低成本下具有更大的通道密度,這些廠商需重新設計他們的設備。而TMS320C6416目標代碼與TMS320C6203兼容,軟件移植方便,再加上TMS320C6416具有的強大處理能力和低功耗特性,目前已有很多無線設備制造商打算在3G基站設計中采用TMS320C6416,。 

參考文獻

1 TMS320C6000 Peripherals Reference Guide.Texas Instruments Incorporated, 2001 

2 Using TMS320C6416 Coprocessors: Turbo Coprocessor.Texas Instruments Incorporated, 2001 

3 Using TMS320C6416 Coprocessors:Viterbi Coprocessor.Texas Instruments Incorporated, 2001 

4 Turbo Decoder Coprocessor User’s Guide.Texas Instruments Incorporated,2001  

5 Viterbi Decoder Coprocessor User’s Guide.Texas Instruments Incorporated, 2001 

6 Multiplexing and Channel Coding (FDD).3G TS 25 212 V3.10,, 3GPP, 1999

此內容為AET網站原創(chuàng),,未經授權禁止轉載,。