TURBO编码方法及编码装置制造方法及图纸

技术编号:3421388 阅读:214 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了TURBO编码方法,其中,每个比特编码步骤包括:比特计数器依次输出的每个计数值维持三拍时钟周期;二路选择器选择比特计数器输出的计数值的第一拍作为读指令传送到交织地址存储器,选择比特计数器输出的第二拍第三拍作为读指令传送到RAM,并将交织地址存储器在第四拍输出的数据作为读指令传送到RAM;乒乓RAM在第五、六拍输出的数据由第一计算模块接收处理生成系统位和第一校验位、在第七拍输出的数据由第二计算模块接收处理生成第二校验位。本发明专利技术还提供了相应的编码器。使用本发明专利技术,可实现基于“流水”的编码方法,减小TURBO编码的每个输入比特的处理延时,从而减少整个TURBO编码延时。

【技术实现步骤摘要】

本专利技术涉及编码
,特别是指TURBO编码方法及编码装置
技术介绍
由于TURBO码具有较强的纠错性能,在具有代表性的3GPP的3个标准中的信道编码方案都使用了TURBO编码,用于高速度、高质量的通信业务。图1示出的下行编码处理的示意框图中,示出了TURBO编码的位置,TURBO编码器从前级处理模块(CRC添加模块)接收数据,并把编码后的结果输出给后级处理模块(速率匹配模块)。图2示出了TURBO编码的原理图。TC编码器主要包含4个部分TC控制模块、TC运算单元、TC交织器和RAM。TC交织器包含一个交织地址存储器存储器,存储有预先计算出来的交织地址,输入的码块数据按照交织地址依次读取RAM就可得到交织后的码块数据。RAM用于接收编码前的数据进行缓存。TC运算单元主要完成第一分量(或称第一校验位)和第二分量(或称第二校验位)的编码,内部采用2套3比特的移位寄存器组实现,具体可以参见图3的TURBO的编码器结构图中示出的TC运算单元。TC控制器是整个TC编码的控制电路,它完成整个编码过程的状态控制。图3示出了3GPP协议(3GPP TS25.212)定义的TURBO码的编码器结构图。为了描述方便,将生成系统位和第一分量编码的电路统称第一计算模块,将生成第二分量编码的电路统称第二计算模块。其中,编码器中各个移位寄存器(D)的初始值应全部为0。在码块的尾部,插入尾比特以清除编码器的状态,尾比特由寄存器中反馈得到(如图中虚线表示)。参照图2,和图4的编码流程图,一个TC编码过程包括以下步骤步骤401接收到编码器启动信号后,TC交织器开始交织地址的计算,交织地址完成后,通过一个完成标志通知TC控制模块。这个过程可以认为TC编码器处于初始状态(S0)。步骤402TC控制模块收到编码器启动信号后,开始接受前级下发的数据,并写入RAM中。步骤403RAM等待接收1个完整的码块,当RAM中存储了一个完整的码块数据后转入下一步。可以认为收到启动信号到接收到完整的码块过程为等待状态(S1)。步骤404开始进行一个码块的编码,包括系统位处理、第一分量编码、第二分量编码。在这个过程,对已经编码的比特数进行计数,当计数个数达到码块长度时,表示码块编码结束,进入下一步。这个过程可以认为是TC编码状态(S2)。步骤405一个码块编码处理完成后,对这个码块的尾比特结果输出。在这个过程,对输出的尾比特个数进行计数,当输出完特定数量个尾比特时,进入下一步。这个过程可以认为是尾比特输出状态(S3)。当尾比特输出完毕后,判断是否所有的码块都处理完毕(即判断是否已经处理了所配置的码块个数)。如果所有的码块处理完成,编码器回到空闲状态,编码过程完毕;如果还有没处理完的码块,回到步骤403进行下一个码块的接收和处理。下面对步骤404中的编码过程进行说明。参见图3示出的逻辑实现TURBO编码器结构图,TURBO编码处理时把1比特的输入数据转换成3比特的输出,其编码时序图参见图5所示,当RAM中存储有一个码块数据后,数据输出的流程包括以下步骤首先,从RAM中读取数据直接输出系统位;其次,从RAM中读取数据并进行第一分量编码输出第一校验位;最后,从交织器的交织地址存储器中查找交织地址,并用这个交织地址从RAM中读取数据,并对这个数据进行第二分量编码输出第二校验位。分析上面的TURBO编码处理过程,需要访问4次RAM,其中3次是读RAM,1次是读交织地址存储器。通常从RAM中读取数据需要3个时钟周期后结果才能输出,因此即使不考虑第一分量和第二分量的编码时间,如图5所示,1比特输入数据TURBO编码也需要4×3=12个时钟周期。TURBO编码过程要对一个码块之内的数据进行交织处理和TURBO编码,对于一个码块来说,包含有很多个比特,按照上述处理,在输入比特较多的情况下,一个码块编码的处理延时会非常大,不可避免的给整个下行处理或上行处理带来了较大的延时。较大的延时又进一步的影响到了基带处理的性能低下。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供了一种TURBO编码方法及编码装置,实现基于“流水”的编码方法,减小TURBO编码的每个输入比特的处理延时,从而减少整个TURBO编码延时。本专利技术提供了TURBO编码方法,每个码块的编码步骤包括码块内的每个比特的编码步骤、在码块内所有比特编码结束后的尾比特生成步骤;所述每个比特的编码步骤生成系统位、第一校验位和第二校验位;每个比特编码步骤包括第1拍,将当前比特在其所属码块中的位数作为访问交织地址存储器的地址读取交织地址存储器;第2拍和第3拍,分别将第1拍所述位数作为访问RAM的地址读取RAM;所述RAM存储有所述码块;第4拍,交织地址存储器完成对3拍前的读指令的响应,输出交织地址,并将该交织地址作为访问RAM的地址读取RAM;第5拍,RAM完成对3拍前的读指令的响应,输出数据; 第6拍,RAM完成对3拍前的读指令的响应,输出数据;并将第5拍RAM输出的数据作为系统位输出;第7拍,RAM完成对3拍前的读指令的响应,输出交织后的数据;并将第6拍RAM输出的数据进行第一分量编码生成第一校验位输出;第8拍,将第7拍RAM输出的数据进行第二分量编码生成第二校验位输出。可选的,进一步包括依次在每个比特编码起始3拍后启动下一比特的编码步骤。可选的,进一步包括编码过程收到暂停指令后,停止启动下一比特的编码,并完成当前处于编码过程中的比特的编码步骤。较佳的,所述RAM为乒乓RAM,要进行编码的不同码块以乒乓缓存机制缓存在乒乓RAM中。可选的,进一步包括RAM缓存的数据还有N个比特就满时,向前级模块发送暂停指令暂停前级模块的数据输出,并使前级收到指令后还可继续发送N个比特。其中,在码块内所有比特编码结束后的尾比特生成步骤包括启动尾比特生成的步骤,启动尾比特生成的步骤为记录所编码的比特的个数,当所述个数到达码块长度时,启动尾比特生成步骤。本专利技术还提供了一种TURBO编码装置,包括计算系统位及第一分量编码的第一计算模块、计算第二分量编码的第二计算模块,还包括比特计数器,用于记录当前编码的比特在其码块中的位数;交织地址存储器,存储有交织矩阵;RAM,用于缓存要编码的码块;比特计数器输出端连接到交织地址存储器读地址输入端,还连接到二路选择器的一输入端;交织地址存储器读数据输出端连接到所述二路选择器的另一输入端;所述二路选择器输出端连接至所述RAM读地址输入端;所述RAM读数据输出端分别连接至第一计算模块、第二计算模块的输入端; 在进行各个比特编码时,比特计数器输出的每个计数值维持三拍时钟周期;二路选择器选择比特计数器输出的每个位数的第一拍传送到交织地址存储器、第二拍第三拍传送到乒乓RAM,将交织地址存储器在第四拍输出的数据传送到乒乓RAM;乒乓RAM在第五、六拍输出的数据由第一计算模块接收处理生成系统位和第一校验位、在第七拍输出的数据由第二计算模块接收处理生成第二校验位。较佳的,所述RAM为乒乓RAM。可选的,所述乒乓RAM为8个比特位宽,640字节深度,依靠高位地址区分乒乓的RAM。其中,所述乒乓RAM还包括连接乒乓RAM的读、写控制电路;所述读控制电路包括二路选择器,两路输入端分别接外部写地址高10位信号、外部写地本文档来自技高网
...

【技术保护点】
一种TURBO编码方法,每个码块的编码步骤包括:码块内的每个比特的编码步骤、在码块内所有比特编码结束后的尾比特生成步骤;所述每个比特的编码步骤生成系统位、第一校验位和第二校验位;其特征在于,每个比特编码步骤包括:第1拍,将当前比特在 其所属码块中的位数作为访问交织地址存储器的地址读取交织地址存储器;第2拍和第3拍,分别将第1拍所述位数作为访问RAM的地址读取RAM;所述RAM存储有所述码块;第4拍,交织地址存储器完成对3拍前的读指令的响应,输出交织地址, 并将该交织地址作为访问RAM的地址读取RAM;第5拍,RAM完成对3拍前的读指令的响应,输出数据;第6拍,RAM完成对3拍前的读指令的响应,输出数据;并将第5拍RAM输出的数据作为系统位输出;第7拍,RAM完成对3拍 前的读指令的响应,输出交织后的数据;并将第6拍RAM输出的数据进行第一分量编码生成第一校验位输出;第8拍,将第7拍RAM输出的数据进行第二分量编码生成第二校验位输出。

【技术特征摘要】

【专利技术属性】
技术研发人员:张家佶
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1