新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 3G信道解码芯片TV3G的设计

3G信道解码芯片TV3G的设计

作者:■ 上海贝尔阿尔卡特有限公司 仲智刚 冯根宝时间:2005-03-04来源:电子设计应用2004年第12期收藏

摘    要:是现代移动通信系统中的核心技术之一,本文根据3G标准之一的要求,开发了一种能够根据不同业务,提供包括以及无编码方式的多功能芯片TV3G,重点讨论了Turbo编/解码的原理和TV3G的总体构架,并给出了TV3G的接口定义。
关键词:

本文引用地址:http://www.eepw.com.cn/article/4531.htm

引言
3G业务的主要特点是要求支持高速多媒体信息的传输,这就对信道编码提出了更高的要求。方案中采用了对不同QoS要求的业务进行不同的信道编码策略。标准业务仅采用卷积编码,高质量业务在卷积编码的基础上增加RS编码或采用Turbo编码方法。相应地,需要采用不同的解码方法, 这对解码模块的设计提出了很高的要求,因此设计一种能够完全适应WCDMA系统的信道解码芯片,是具有很高应用价值的。基于此,本文设计了一种能够完全满足以上应用的信道解码芯片TV3G,其中,针对卷积编码采用方式,针对Turbo编码采用方式。
TV3G同时提供Viterbi解码、Turbo解码以及无编码方式的数据透明传输3种模式,其中Turbo解码是该芯片的难点。由于Viterbi解码已经较为成熟,本文主要针对Turbo编/解码算法进行讨论。Turbo码由于很好地应用了香农信道编码定理中的随机性编/解码条件而获得了接近香农理论极限的解码性能。它不仅在信噪比(SNR)较低的高噪声环境下性能优越,而且具有很强的抗衰减、抗干扰能力。

Turbo编码原理
Turbo码是一种系统码的形式,其输入信息序列在经过交织器送入RSC(递归系统卷积)编码器的同时送到编码器输出端。其中成员码采用RSC码的形式,可以保证成员码编码器在所有信噪比条件下都具有良好的性能。在Turbo码系统中,其编码器由两个或多个二元带反馈的RSC子编码器C1和C2经由交织器并行级联而成。输入编码器的信息序列为U=(u1,u2,...,un),它一方面直接输入到C1进行编码,生成系统序列Xs和校验序列X1P,另一方面, U经过交织后,输入C2进行编码,产生一个经过交织的系统序列Xis和另一个校验序列 X2P。
Turbo解码原理
Turbo码的编码部分由C1、C2两个子编码器组成,在相应的解码部分也应该有两个子解码器DEC1、DEC2.。假设编码序列Xs、X1P、X2P经过一个离散无记忆高斯信道,其接收序列为 Ys、Y1P、Y2P,如图1所示。
对于Turbo码这样的并行级联码,每个子解码器的作用不仅仅是解码判决,它还应该能够提供对每一位码元判决值的可靠性估计。或者说,子解码器要能够进行软输出。这种判决的可靠性估计,可以作为边信息(EI),提供给另一个子解码器,协助其解码。在具体实现中,可通过多级选代的方法来达到反馈效果。迭代解码是Turbo解码的一个显著特色。解码器由结构相同的模块串联而成,每一级模块由DEC1、DEC2.组成,分别用于对C1、C2的解码。每一级模块除了产生判决值,还输出判决的可靠性值,作为输入下一级解码模块的先验信息,协助下一级解码。由于边信息的作用,一定信噪比下的误比特率将随着循环次数的增加而下降。但同时外部信息与接收序列间的相关性也随着解码次数的增加而逐渐增大,外部信息所提供的纠错能力也随之减弱,在一定的循环次数之后,解码性能将不再提高。

TV3G芯片设计
TV3G共分为六个功能模块,分别是Turbo解码、Viterbi解码、无编码方式、交织器、前端处理以及后端处理模块。前端接口接收从片外送来的数据,并根据相应的接口规范进行地址解码。然后根据地址解码结果选择三种处理内核之一对数据进行处理。与此同时选择相应的后端接口,以便送出对应的数据。而后端接口主要完成解码内核中产生的解码后数据到接口上数据格式转换以及解码数据的输出工作。Turbo解码器完成Turbo解码,并采用Max-Log-MAP算法。Viterbi解码完成卷积码的解码,其并行度为8。交织器完成交织序列的生成工作。
在TV3G系统中,Turbo解码、Viterbi解码和无编码方式是并行互斥的,即同一时刻只可能有一种解码方式进行,其中交织器是与Turbo解码方式配套使用的。在系统一级,共有5个RAM,它们分别由前后接口模块进行管理,其中INPUT_RAM用来在Viterbi解码时存储待解码数据;X_RAM和Y_RAM是用来在Turbo解码时分别存放待解码数据的系统码和校验码部分,另外在无编码方式时,X_RAM用来存放待解码数据;INT_RAM主要是用来存放交织表,以供Turbo解码时使用,同时在Viterbi解码时用来进行回溯计算时使用;数据输出RAM存放解码后的数据,以供输出。经简化后,TV3G的总体结构如图2所示。
TV3G共有4种工作模式,分别为1/2卷积解码模式、1/3卷积解码模式、1/3 Turbo解码模式和无编码模式(相当于数据透明传输)。TV3G根据外部控制信号的状态来决定处于何种解码模式。考虑到外部系统使用的方便,定义解码系统的外部接口为总线接口。数据送入采用8位的数据总线(DB_IN),而地址总线(AB_IN)主要用于系统控制信息的传递。
下面举一个接收数据的实例(见图3)。图3是一个Turbo编码数据传入时序。每一个数据要传输的时候WE_IN必须有效,即低电平。这时端口输入AB_IN=‘111’,DB_IN=‘00000000’,表示待解码数据是1/3 Turbo编码类型;然后AB_IN=‘001’,同时DB_IN=‘05’,表示要求迭代次数为5,在此时钟周期,TV3G完成相应寄存器的初始化工作;随后AB_IN=‘101’,DB_IN=‘FF’,表示待解码的码长低8位为FF,可以看出码长高8位为0,因此,总的码长为FF(H)。最后AB_IN=‘110’,这时真正的待解码数据开始从DB_IN输入,如F8 04... 。然后TV3G根据输入的解码数据进行内部解码,最后通过decoder_result端口输出结果。
考虑到3G系统中解码后的数据要作CRC校验,而一般的CRC校验电路都要求串行输入数据,因此定义解码器送出的数据为串行接口(Decoder_result),并用一根专门的控制线(Decoder_ready)来指示数据开始送出。

结语
本文所讨论的TV3G芯片完全符合3GPP(Release 99)协议标准,输入6bit量化时,解码器吞吐能力达到5Mbps,目前已经完成FPGA的系统验证工作,相应的ASIC设计工作也即将完成。■

参考文献
1 3GPP RAN TS25.212 "Multiplexing and channel coding(FDD)"
2 Andrew J. Viterbi, An Intuitive Justification and a Simplified Implementation of the MAP Decoder for Convolutional Codes[J], IEEE Journal on Selected Areas in Communications, Vol. 16, N0. 2, February 1998.

作者简介
仲智刚:博士,研究方向为ASIC芯片设计,第三代移动通信原理以及宽带交换机等。冯根宝:上海贝尔阿尔卡特有限公司公共能力中心总监,教授级高工。



评论


相关推荐

技术专区

关闭