kaiyun官方注册
您所在的位置: 首页> 嵌入式技术> 设计应用> TMS320C6416特点及其在3G基站中的应用
TMS320C6416特点及其在3G基站中的应用
陈王骞 曾兴雯
摘要:TMS320C6416的硬件结构,介绍内嵌的两个译码协处理器,给出了其在WCDMA基站上行链路中的一个硬件应用方案。
Abstract:
Key words :

摘 要:title="TMS320C6416">TMS320C6416的硬件结构,介绍内嵌的两个译码协处理器,给出了其在WCDMA基站上行链路中的一个硬件应用方案。

关键词:数字信号处理器3G基站Vterbi译码协处理器 Turbo译码协处理器

在第三代移动通信系统WCDMA和CDMA2000中,为了能提供大容量和高质量的语音、可变速率数据、图像等业务,无线空中接口的传输速率在室内环境最高要达到2Mbit/s,在室外移动环境最高要达到384kbit/s。因此需要无线基站提供强大的处理能力。TI公司新推出的TMS320C6416是目前处理能力最强大的处理器(DSP),它的主频高达600MHz,专门用于设计高性能的3G无线基站。本文仅就TMS320C6416的硬件结构及其在3G基站上行链路基带处理中的应用做一介绍。

1 TMS320C6416硬件结构

TMS320C6416的硬件结构如图1所示。内部包括一个DSP内核、一级数据Cache 、一级程序Cache、二级存储器、增强型DMA控制器 (EDMA)、Vterbi译码协处理器(VCP)、Turbo译码协处理器(TCP);对外接口包括两个外部存储器接口(EMIFA和EMIFB)、主机接口(HPI)、PCI接口、UTOPIA接口、多通道缓冲串口(McBSP)。

DSP内核采用超长指令字(VLIW)体系结构,有8个功能单元、64个32bit通用寄存器。 一个时钟周期同时执行8条指令,运算能力可达到4800MIPS(每秒百万条指令),支持8/16/32/64bit的数据类型。两个乘法累加单元一个时钟周期可同时执行4组16×16bit乘法或8组8×8bit乘法,每个功能单元在硬件上都增加了附加功能,增强了指令集的正交性。除此之外还增加了一些指令用以削减代码长度和增加寄存器的灵活性。TMS320C6416以后版本的主频可升级到1.1GHz。

为使数据能保持对超快速DSP内核的供给,TMS320C6416采用了两级超高速缓存器,即16KByte的一级数据Cache、16KByte的一级程序Cache和1024KByte的数据和程序统一内存。为了达到更大的扩展,1024KByte内存中的256KByte存储空间可设置用作二级Cache。

在内存和外设接口(EMIFA接口、EMIFB接口、HPI或PCI接口、McBSP串口、UTOPIA接口等)之间所有的数据传输都由EDMA来处理。TMS320C6416的EDMA共有64个通道,每个通道的优先级都可编程设置,每个通道都对应一个专用同步触发事件,使得EDMA可以被外设来的中断、外部硬件中断、其它EDMA传输完成的中断等事件触发,开始进行数据的搬移。EDMA完成一个完整的数据搬移后,可从通道传输参数记录指定的链接地址处重新加载该通道传输参数。EDMA传输完成后,EDMA控制器可以产生一个到DSP内核的中断,也可以产生一个中断触发另一个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规范;具有PCI 主/从功能;支持32bit宽的地址和数据复用总线;工作频率最高为33MHz;外部主机可通过PCI接口访问DSP内部所有地址空间,向DSP加载程序;DSP也可通过该接口访问外部PCI存储空间。PCI接口和HPI接口共用相同的管脚,因此实际设计时两者只能选一个。

在TMS320C6416中,还增加了一个UTOPIA 接口,它支持UTOPIA II规范,发送数据总线和接收数据总线均为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译码协处理器VCP

在WCDMA系统中,语音和低速信令传输采用卷积码。卷积码译码方法有门限译码、硬判决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)、硬判决还是软判决、计算状态矩阵的初始条件、质量指示Yamamoto比特门限等。

VCP的内部结构如图2所示。其中EDMA接口包含译码器输入数据FIFO和输出数据FIFO;存储单元包含存储译码器内部状态矩阵和判决的回溯路径;运算单元根据输入分支度量进行加、比较、选择运算和回溯;VCPINT为VCP译码完成后到DSP 内核的中断;VCPXEVT触发EDMA通道29,搬移VCP的可编程配置参数或待译码数据的分支度量到VCP内部寄存器或内部输入FIF0;VCPREVT触发EDMA通道28,从VCP输出FIFO搬移译码结果到DSP内部或外部存储区。

DSP协同VCP进行译码处理的过程如下:

(1)DSP初始化输入缓冲区。DSP根据待译码数据预先计算其分支度量(分支度量的计算见参考文献[5]),并写入指定的缓冲区。

(2)DSP分配输出缓冲区,准备存储译码结果。

(3)准备VCP的寄存器配置参数。这些参数首先准备好放在DSP的内存或外存,当VCP启动时由EDMA写入VCP内部寄存器。

(4)设置EDMA参数。设置EDMA通道29参数,由VCPXEVT触发,搬移VCP配置参数到VCP内部寄存器,搬移待译码数据的分支度量到VCP内部输入FIFO;设置EDMA通道28参数,由VCPREVT触发,从VCP输出FIFO搬移VCP译码结果到DSP指定的输出缓冲区。

(5)使能EDMA。使能EDMA通道28和29,使其可以响应VCPXEVT和VCPREVT同步触发事件。

(6)启动VCP。DSP写“开始”命令到VCP内部的命令寄存器(VCPEXE),这会使VCP生成VCPXEVT事件,触发EDMA通道29,搬移配置参数和待译码数据的分支度量到VCP。

(7)处理VCP译码结果。VCP译码完成后会触发EDMA,由EMDA通道28搬移译码结果到DSP指定的输出缓冲区,还会产生到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译码协处理器TCP

在WCDMA、CDMA2000系统中,数据传输采用Turbo码。Turbo译码算法包括软输出Viterbi算法(SOVA)、最大后验概率算法(MAP)。TMS320C6416中的TCP中采用的是MAX*-LOG-MAP译码算法。

TCP执行的译码算法是一种迭代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系统而言,编码块长度小于等于5114,此时TCP完成整个译码过程。

待译码数据的系统信息位和校验位必须由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发出的同步事件TCPXEVT触发;译码结果由EDMA通道30从TCP内搬移到DSP指定的存储区,EDMA通道30由TCP发出的同步事件TCPREVT触发;TCP译码完成后也生成一个到DSP 内核的中断TCPINT。

DSP协同TCP进行译码处理的过程和VCP类似,具体过程如下:

(1)DSP初始化输入缓冲区。DSP对待译码数据进行8bit量化并写入指定缓冲区,Turbo码交织表也写入指定缓冲区。

(2)DSP分配输出缓冲区,准备存储译码结果。

(3)准备TCP的寄存器配置参数,TCP启动后由EDMA写入TCP内部寄存器。

(4)设置EDMA参数。设置EDMA通道30、31参数,由TCP的两个同步事件触发,控制EDMA向TCP输入数据和从TCP输出译码结果。

(5)使能EDMA。使能EDMA通道30和31,使其可以响应TCPXEVT和TCPREVT同步触发事件。

(6)启动TCP。DSP写“开始”命令到TCP内部命令寄存器,这会使TCP生成TCPXEVT事件,触发EDMA通道31,搬移待译码数据、交织表、寄存器配置参数到TCP。

(7)处理TCP译码结果。TCP译码完成后会触发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完成信令面协议的处理,同时控制整个单板。

DSP的16bit宽的 EMIFB异步接口连接到FPGA/ASIC,用来控制FPGA/ASIC并读取解调后的数据;DSP的HPI接口连接到外部主CPU,外部主CPU通过HPI加载DSP程序,配置DSP所处理的信道参数,向DSP下发信道的建立、删除等命令;DSP的64bit 宽的EMIFA接口连接到一个外部SDRAM,用来缓存处理过程中的中间数据;UTOPIA接口连接到接口电路,把FP帧转换成ATM信元进而送到RNC进行上层业务处理。

在WCDMA系统中,移动终端发出的信号通过空中接口到达无线基站。在基站中经过射频接收、中频处理、RAKE接收,然后进行信道解复用、解交织和Viterbi/Turbo译码处理。在没有采用TMS320C6416的系统中,两种译码可以由DSP软件来实现,但这会大大降低DSP处理其它业务的能力;译码也可以由外部FPGA/ASIC硬件实现,但这会增加单板器件的密度和功耗。TMS320C6416除了具有比一般DSP更强大的处理能力外,内部还集成了一个Viterbi译码协处理器和Turbo译码协处理器,提供的符号速率处理性能几乎是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网站原创,未经授权禁止转载。
Baidu
map