CN1163094C - 对数压扩编码的涡轮码译码器及其实现方法 - Google Patents

对数压扩编码的涡轮码译码器及其实现方法 Download PDF

Info

Publication number
CN1163094C
CN1163094C CNB021260494A CN02126049A CN1163094C CN 1163094 C CN1163094 C CN 1163094C CN B021260494 A CNB021260494 A CN B021260494A CN 02126049 A CN02126049 A CN 02126049A CN 1163094 C CN1163094 C CN 1163094C
Authority
CN
China
Prior art keywords
sequence
decoder
log
compressed
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB021260494A
Other languages
English (en)
Other versions
CN1392741A (zh
Inventor
凯 牛
牛凯
吴伟陵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CNB021260494A priority Critical patent/CN1163094C/zh
Publication of CN1392741A publication Critical patent/CN1392741A/zh
Application granted granted Critical
Publication of CN1163094C publication Critical patent/CN1163094C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种对数压扩编码的涡轮码译码器及其实现方法,该涡轮码译码器包括有:两个信道译码器、两个交织器、两个解交织器、解复用电路、判决器和三个存储器;其特征在于:还包括有:接收信号对数压缩编码电路单元fI和对数扩展编码电路单元fI -1,外信息对数压缩编码电路单元fE和对数扩展编码电路单元和fE -1;其中三个存储器分别用于在该涡轮码译码器处理序列信号过程中存储经过对数压缩编码电路单元fI的信号接收序列λC(k)、第一个译码器输出的顺序经过对数压缩编码电路单元fE和交织器后的外信息序列
Figure 02126049.4_AB_0
和第二个译码器输出的经过对数压缩编码电路单元fE的外信息序列
Figure 02126049.4_AB_0
。该译码器大大压缩了序列信号的存储量,使得译码器的硬件资源得到极大节省,同时保持了相同的译码性能。

Description

对数压扩编码的涡轮码译码器及其实现方法
所属领域
本发明涉及一种对数压扩编码的涡轮(Turbo)码译码器,以及该译码器的实现方法,属于信道编译码系统的技术领域。
背景技术
信道编译码技术在通信系统中有广泛的应用,例如在移动通信、卫星通信、星际通信以及磁盘、光盘存储数据检测等众多技术领域,信道编译码器都是最重要的部件之一。涡轮(Turbo)码是上个世纪90年代以来出现的一种具有超强纠错能力的信道编译码,自从涡轮(Turbo)码被提出以来,迅速得到广泛应用。当前在第三代移动通信的各种标准(例如W-CDMA(宽带码分多址,欧洲和日本使用的标准)、CDMA-2000(北美使用的标准)和TD-SCDMA(时分同步码分多址,中国使用的标准))中,对于高速数据业务的传输,均已采用Turbo码。另外,美国国家航空航天局已经将Turbo码作为今后航天飞机、宇宙飞船和空间站与地球接收站之间通信的标准信道编码技术。
传统的涡轮(Turbo)码译码器结构如图1所示。该译码器是由两个信道译码器1、2、两个交织器、两个解交织器和存储器、判决器等基本部件组成。传统的涡轮(Turbo)码译码器对于接收序列和外信息序列采用均匀量化,涡轮(Turbo)码译码器需要巨大的存储量,因此,其占用的硬件资源极其庞大。假设r(k)是量化接收序列,其中离散时间标记k=1,2,……; A = 4 E s N 0 为信道可靠性度量,其中Es编码表示符号能量,N0是单边功率谱密度。λU(k)表示均匀量化的接收序列,Ax(k)、Ay1(k)、Ay2(k)和Axp(k)分别表示解复用后得到的Turbo(涡轮)码的系统编码序列、第一路校验码序列、第二路校验码序列和经过交织排列的序列。 分别表示译码器1、2输出的外信息均匀量化序列;则传统译码器的译码过程主要包括以下步骤:
(1)接收序列r(k)与信道可靠性度量 A = 4 E s N 0 相乘,得到均匀量化的接收序列λU(k);
(2)对接收序列λU(k)进行串并变换解复用,得到三个并行的子序列Ax(k)、Ay1(k)和Ay2(k),其中Ax(k)、Ay1(k)和Ay2(k)分别表示Turbo(涡轮)码的系统编码序列、第一路校验编码序列和第二路校验码编码序列;
(3)将系统编码序列Ax(k)和第一路校验序列Ay1(k)送入译码器1,将系统编码序列经过交织后的序列Axp(k)和第二路校验序列Ay2(k)送入译码器2;
(4)译码器1得到系统编码序列Ax(k)、第一路校验序列Ay1(k)和译码器2送来的对外信息序列 经过解交织后的序列,开始进行信道译码处理;
(5)译码器1输出的似然比序列分别减去 和Ax(k)后,得到译码器1的均匀量化的外信息序列
(6)译码器2得到上述步骤(5)的外信息序列
Figure C0212604900085
交织后的系统编码序列Axp(k)和第二路校验码序列Ay2(k)后,开始进行信道译码处理;
(7)译码器2输出的似然比序列分别减去译码器1的外信息序列
Figure C0212604900086
和交织后的系统编码序列Axp(k)后,得到译码器2的均匀量化的外信息序列
Figure C0212604900087
经过解交织和存储后送入译码器1;
(8)顺序执行步骤(3)-(7)各一次,称为一次迭代;重复执行步骤(3)-(7),即经过多次迭代循环后译码停止;第一次迭代时的初始化条件是译码器1、2的外信息序列
Figure C0212604900089
均为0;
(9)译码停止后,译码器2输出的似然比序列送入解交织器,经过解交织处理后的序列再送入判决器,最终得到译码输出序列。
由于涡轮(Turbo)码译码器需要将接收序列完全存储后才能开始译码,并且两个译码器之间要对外信息进行的交织和解交织操作,也需要将外信息序列完全存储才能进行,因此传统的Turbo码译码器需要巨大的存储量。例如,设Turbo码数据帧长N=5000,编码速率R=1/3,对接收序列采用6比特量化,对外信息序列采用10比特量化,则译码器所需的存储量至少为3N×6+2N×10=1.9×105比特!如此巨大的存储量严重地限制了Turbo(涡轮)码译码器的推广应用,因此业内人士都在探求如何解决这个问题。
发明内容
本发明的目的是提供一种对数压扩编码的涡轮(Turbo)码译码器,该译码器在传统译码器的结构上添加了对数压缩和扩展的电路单元,从而可以减小存储量,降低硬件资源的消耗。
本发明的另一目的是提供一种对数压扩编码的涡轮(Turbo)码译码器的实现方法。
本发明的目的是这样实现的:一种对数压扩编码的涡轮码译码器,包括有:两个信道译码器、两个交织器、两个解交织器、解复用电路、判决器和三个存储器;其特征在于:
该涡轮码译码器还包括有:接收信号对数压缩编码电路单元fI和对数扩展编码电路单元fI -1,外信息对数压缩编码电路单元fE和对数扩展编码电路单元和fE -1
该涡轮译码器接收到量化数字信号序列r(k),先将其接入一个乘法器,与信道可靠性系数 A = 4 E s N 0 进行相乘处理,得到均匀量化的接收序列λU(k),然后送入对数压缩编码电路单元fI得到信号序列λC(k)后,再接至第一个存储器;该第一个存储器的输出经过对数扩展编码电路单元fI -1后,得到对数扩展后的信号序列λE(k),并将其接入解复用电路,得到三路并行的子序列信号Ax(k)、Ay1(k)和Ay2(k);该三路信号的流程分别为:其中Ay1(k)和Ax(k)二路序列信号送入第一个译码器,Ax(k)经过交织器后的序列信号Axp(k)和序列信号Ay2(k)送入第二个译码器;第二个译码器输入端的对数扩展的外信息序列 是经过下述电路得到的:第一个译码器输出的信号序列接入一个减法器,分别减去信号序列Ax(k)和
Figure C0212604900093
后,输出的均匀量化的外信息序列
Figure C0212604900094
被送入对数压缩电路单元fE,其输出的压缩序列
Figure C0212604900095
又接入交织器进行交织,然后送入第二个存储器;该第二个存储器中的输出再送入对数扩展电路单元fE -1后,得到外信息扩展序列
Figure C0212604900096
第一个译码器输入端的外信息扩展序列
Figure C0212604900097
是经过下述电路得到的:第二个译码器输出的信号序列接入一个减法器,分别减去外信息序列 和交织后的序列Axp(k)的信号后,输出的均匀量化外信息序列 被送入对数压缩电路单元fE后得到压缩序列 再经过第三个存储器送入解交织器,其输出送入对数扩展电路单元fE -1后,得到外信息扩展序列
Figure C0212604900103
第一个译码器和第二个译码器按照上述连接关系相互之间反馈传递外信息序列
Figure C0212604900104
Figure C0212604900105
经过多次传递后,第二个译码器的输出序列顺序接入解交织器和判决器,其输出即为所需的译码序列;其中信道可靠性系数计算公式中的Es编码表示符号能量,N0是单边功率谱密度。
所述的译码器中的对数压缩编码和扩展编码的电路单元应用的对数压扩函数是对数最大后验概率译码Log-Map计算方法,或是软输出维特比译码SOVA计算方法。
所述的对数压扩编码的涡轮(Turbo)码译码器是用现场可编程门阵列FPGA(Field Programmable Gate Array)集成电路芯片实现的,或是用专用集成电路ASIC(Application Specific Integrated Circuit)芯片制成。
所述的译码器应用于WCDMA、或CDMA2000、或TD-SCDMA系统,及卫星通信和宇航通信系统中。
本发明的另一目的是这样实现的:一种对数压扩编码的涡轮码译码器的实现方法,其特征在于:至少包括如下步骤:
(1)将量化接收序列r(k)与信道可靠性度量 A = 4 E s N 0 进行相乘处理,得到均匀量化的接收序列λU(k),其中量化接收序列中的k为离散时间标记,其取值为自然数,信道可靠性度量中Es编码表示符号能量,N0是单边功率谱密度;
(2)将λU(k)送入对数压缩电路单元fI进行对数压缩处理,得到均匀量化接收序列对数压缩后的序列λC(k),对数压缩电路单元所采用的对数压缩函数为fI;然后将压缩后的序列λC(k)写入存储器,以节省存储器的空间;
(3)从存储器中读出压缩后的序列λC(k),送入对数扩展电路单元fI -1进行对数扩展,得到对数扩展后的序列λE(k),对数扩展电路单元所采用的对数扩展函数是对数压缩的逆变换函数fI -1
(4)将对数扩展序列λE(k)进行串并变换解复用,得到三个并行的子序列Ax(k)、Ay1(k)和Ay2(k);该三个子序列Ax(k)、Ay1(k)和Ay2(k)分别表示涡轮Turbo码的系统编码序列、第一路校验编码序列和第二路校验码编码序列;
(5)分别将系统编码序列Ax(k)和第一路校验序列Ay1(k)送入第一个译码器,以及将系统编码序列经过交织后的序列Axp(k)和第二路校验序列Ay2(k)送入第二个译码器;
(6)第一个译码器在得到系统编码序列Ax(k)、第一路校验序列Ay1(k)和第二个译码器输出的经过对数压缩之后再扩展的外信息序列
Figure C0212604900111
后,开始进行信道译码处理;
(7)对第一个译码器输出的似然比序列分别进行减去第二译码器输出的经过对数压缩之后再扩展的外信息序列
Figure C0212604900112
和系统编码序列Ax(k)的处理后,得到第一个译码器的均匀量化的外信息序列
Figure C0212604900113
(8)将上述外信息序列
Figure C0212604900114
送入对数压缩电路单元fE进行对数压缩处理,得到压缩序列
Figure C0212604900115
对数压缩电路单元所采用的对数压缩函数为fE;再按交织方式写入存储器;
(9)从该存储器中读出压缩序列
Figure C0212604900116
再送入对数扩展电路单元fE -1进行对数扩展后,得到扩展序列 对数扩展电路单元所采用的对数扩展是对数压缩的逆变换函数fE -1;之后将扩展序列 作为外信息送入第二个译码器;
(10)第二个译码器得到对数扩展的外信息序列
Figure C0212604900119
交织后的系统编码序列Axp(k)和第二路校验码序列Ay2(k)后,开始进行译码处理;
(11)对第二个译码器输出的似然比序列分别进行减去第一个译码器的外信息序列的对数压缩之后再扩展的序列 和交织后的系统编码序列Axp(k)的处理后,得到第二个译码器的均匀量化外信息序列
(12)对第二个译码器输出的均匀量化外信息序列
Figure C02126049001112
进行对数压缩处理后,得到压缩序列
Figure C02126049001113
所采用的对数压缩函数为fE,再按解交织方式写入存储器;
(13)从该存储器中读出压缩序列 再经过对数扩展后,得到扩展序列 所采用的对数扩展是对数压缩函数的逆变换函数fE -1;之后将扩展序列 作为外信息送入第一个译码器;
(14)顺序执行上述步骤(6)-(13)各一次,称为一次迭代;重复执行上述步骤(6)-(13),即经过多次迭代后译码停止;第一次迭代时的初始化条件是第一个译码器和第二个译码器的外信息序列
Figure C0212604900121
Figure C0212604900122
均为0;
(15)将第二个译码器的输出似然比序列送入解交织器,再将经过解交织处理后的序列送入判决器,得到该译码器的输出序列。
所述的译码器操作步骤中经过多次循环迭代,才能得到译码结果;其中迭代循环的次数至少是1次,也可以是2次或2次以上的多次迭代;迭代次数取决于译码时延和硬件复杂度的不同要求。
所述的步骤(2)中对均匀量化的接收序列信号λU(k)进行对数压缩处理时,所采用的精确的压扩函数为gI
式中:均匀量化的接收序列λU(k)表示为(nI,pI),其中nI为数据的有效位宽,pI为数据的精度比特,则其所表示的数值范围为(-2nI-pI-1,2nI-pI-1-2-pI);通常接收序列的有效位宽nI的取值nI=5、6、7、8,精度比特pI的取值pI=2、3;压扩参数MI是由(nI,pI)决定的经验值。
在用硬件实现精确对数压扩函数gI时,采用分段折线的压扩函数fI近似逼近精确的对数压扩函数gI:即用分段近似函数fI逼近精确函数gI,用分段近似反函数fI -1逼近精确函数gI的反函数;且当均匀量化的接收序列λU(k)表示为(nI,pI)时,其中数据宽度nI和数据精度pI都可以取各种数值,以对应于不同的近似对数压缩函数fI和扩展函数fI -1
所述的步骤(8)和(12)中对外信息序列信号进行对数压缩处理时,所采用的精确的对数压扩函数为gE
式中:均匀量化的外信息序列 λ ~ U i ( k ) ( i = 1,2 ) 表示为(nE,pE),其中nE为数据的有效位宽,pE为数据的精度比特,则其所表示的数值范围为:(-2nE-pE-1,2nE-pE-1-2-pE);通常外信息序列的有效位宽nE的取值nE=7、8、9、10、11、12,精度比特pE的取值pE=2、3;压扩参数ME是由(nE,pE)决定的经验值。
在用硬件实现精确对数压扩函数gE时,采用分段折线的压扩函数fE近似逼近精确的对数压扩函数gE:即用分段近似函数fE逼近精确函数gE,用分段近似反函数fI -1逼近精确函数gE的反函数;且当均匀量化的外信息序列表示为(nE,pE)时,其中数据宽度nE和数据精度pE都可以取各种数值,以对应于不同的近似对数压缩函数fE和扩展函数fE -1
本发明所提出的对数压扩编码的涡轮(Turbo)码译码器,是在传统的涡轮(Turbo)码译码器电路结构中添加对数压缩电路单元和对数扩展电路单元,大大压缩了序列信号的存储量,使得译码器的硬件资源得到极大节省,同时保持了相同的译码性能。本发明同时提供了该涡轮(Turbo)码译码器的实现方法。从图5所示的无限精度(Infinite)、传统的均匀量化(Uniform)和对数压扩编码(Companding)三种方式的计算机仿真模拟曲线性能比较看出:无论是误码率(BER)还是误帧率(FER)特性,均匀量化和对数压扩编码的性能几乎一致;但是由于采用了对数压扩编码,本发明的译码器的存储量比传统的均匀量化译码器减少了γ=1-(4×5+2×6)/(4×6+2×10)=27.27%,即节省了约1/4-1/3的存储量。
附图说明
图1是传统的涡轮(Turbo)码译码器的结构示意图。
图2是本发明的对数压扩编码的涡轮(Turbo)码译码器的结构示意图。
图3是本发明的对数压扩编码的涡轮(Turbo)码译码器中对接收序列进行对数压缩和扩展的函数映射关系的一实施例示意图。
图4是本发明的对数压扩编码的涡轮(Turbo)码译码器中对外信息序列进行对数压缩和扩展的函数映射关系的一实施例示意图。
图5(A)、(B)分别是本发明对数压扩编码的涡轮(Turbo)码译码器在交织方式为随机交织条件下仿真实施得到的误码率(缩写为BER)曲线图和误帧率(缩写为FER)曲线图。(仿真条件为:接收序列采用6比特数据宽度、2比特数据精度,外信息序列采用10比特数据宽度、2比特数据精度,并且采用6次迭代,BPSK(二进制移相键控)调制方式,帧长为1000个符号)
具体实施方式
参见图2,本发明是一种对数压扩编码的涡轮(Turbo)码译码器,包括有:由两个信道译码器、两个交织器、两个解交织器、解复用电路、判决器和三个存储器组成的涡轮(Turbo)码译码器,该三个存储器分别用于在该译码器处理序列信号过程中存储均匀量化接收序列λU(k)、第一个译码器输出的经过交织后的均匀量化的外信息序列
Figure C0212604900141
和第二个译码器输出的均匀量化的外信息序列
Figure C0212604900142
其与传统译码器的区别之处在于:在所述的三个存储器的输入和输出端分别设置对输入和输出该对应存储器的序列信号进行对数压缩编码和对数扩展编码的电路单元fI和fI -1,以及fE和fE -1;其中对第一个译码器1输出的均匀量化的外信息序列
Figure C0212604900143
进行对数压缩编码的电路单元fE设置在其交织器的输入端,而对第二个译码器2输出的均匀量化的外信息序列
Figure C0212604900144
进行对数扩展编码的电路单元fE -1设置在与该存储器输出端相连接的解交织器的输出端;且所述的三个存储器分别用于在该译码器处理序列信号过程中存储经过对数压缩编码的接收序列λC(k)、第一个译码器输出的经过对数压缩编码和交织后的外信息序列
Figure C0212604900145
和第二个译码器输出的经过对数压缩编码的外信息序列
Figure C0212604900146
本发明对数压扩编码的涡轮(Turbo)码译码器中的对数压扩电路单元应用的对数压扩函数是Log-Map(对数最大后验概率译码)计算方法,或是SOVA(软输出维特比译码)计算方法。该译码器是用现场可编程门阵列FPGA(FieldProgrammable Gate Array)集成电路芯片实现的,或是用专用集成电路ASIC(Application Specific Integrated Circuit)芯片制成。该译码器应用于WCDMA、或CDMA2000、或TD-SCDMA系统,及卫星通信和宇航通信系统中。
本发明对数压扩编码的涡轮(Turbo)码译码器对均匀量化的接收序列信号λU(k)进行对数压缩处理时,所采用的精确的压扩函数为gI
Figure C0212604900151
式中:均匀量化的接收序列λU(k)表示为(nI,pI),其中nI为数据的有效位宽,pI为数据的精度比特,则其所表示的数值范围为(-2nI-pI-1,2nI-pI-1-2-pI);通常接收序列的有效位宽nI的取值nI=5、6、7、8,精度比特pI的取值pI=2、3;压扩参数MI是由(nI,pI)决定的经验值。其中数据宽度nI和数据精度pI都可以取各种数值,以对应于不同的对数压缩函数fI和扩展函数fI -1。在用硬件实现精确对数压扩函数gI时,采用分段折线的压扩函数fI近似逼近精确的对数压扩函数gI:即用分段近似函数fI逼近精确函数gI,用分段近似反函数fI -1逼近精确函数gI的反函数;且当均匀量化的接收序列λU(k)表示为(nI,pI)时,其中数据宽度nI和数据精度pI都可以取各种数值,以对应于不同的近似对数压缩函数fI和扩展函数fI -1
本发明对数压扩编码的涡轮(Turbo)码译码器对外信息序列信号进行对数压缩处理时,所采用的精确的对数压扩函数为gE
Figure C0212604900152
式中:均匀量化的外信息序列 λ ~ U i ( k ) ( i = 1,2 ) 表示为(nE,pE),其中nE为数据的有效位宽,pE为数据的精度比特,则其所表示的数值范围为:(-2nE-pE-1,2nE-pE-1-2-pE);通常外信息序列的有效位宽nE的取值nE=7、8、9、10、11、12,精度比特pE的取值pE=2、3;压扩参数ME是由(nE,pE)决定的经验值。在用硬件实现精确对数压扩函数gE时,采用分段折线的压扩函数fE近似逼近精确的对数压扩函数gE:即用分段近似函数fE逼近精确函数gE,用分段近似反函数fI -1逼近精确函数gE的反函数;且当均匀量化的外信息序列表示为(nE,pE)时,其中数据宽度nE和数据精度pE都可以取各种数值,以对应于不同的近似对数压缩函数fE和扩展函数fE -1
下面结合两个实施例分别说明本发明对数压扩编码的涡轮(Turbo)码译码器对接收序列和外序列采用的对数压缩和扩展的实现方法。
参见图3,本发明对数压扩编码的涡轮(Turbo)码译码器,对接收序列采用了对数压缩和扩展。这种对数压缩和扩展是这样实现的:设均匀量化的接收序列λU(k)表示为(nI,pI),式中nI为数据的有效位宽,pI为数据的精度比特,则其所表示的数值范围为(-2nI-pI-1,2nI-pI-1-2-pI)。例如(nI,pI)=(6,2),表示数据宽度为6比特,精度比特为2比特,因此它所表征的数值范围为(-8,7.75)。接收序列的对数压缩和扩展函数fI及fI -1是用分段折线近似的,下面以(nI,pI)=(6,2)为例说明压缩和扩展的实现过程至少包括如下步骤:
(1)如果4≤λU(k)<8,则对数压缩后得到的序列3/4≤λC(k)<1,而对于数据范围内的结果按照折线33进行线性映射;
(2)如果2≤λU(k)<4,则对数压缩后得到的序列1/2≤λC(k)<3/4,而对于数据范围内的结果按照折线32进行线性映射;
(3)如果1≤λU(k)<2,则对数压缩后得到的序列1/4≤λC(k)<1/2,而对于数据范围内的结果按照折线31进行线性映射;
(4)如果0≤λU(k)<1,则对数压缩后得到的序列0≤λC(k)<1/4,而对于数据范围内的结果按照折线30进行线性映射;
(5)如果λU(k)<0,则-λU(k)>0,即对均匀量化的数据取绝对值后再进行对数压缩;在得到压缩结果后,再在最高位添加极性比特。也就是说,-8≤λU(k)<-4对应的对数压缩范围为-1≤λC(k)<-3/4;-4≤λU(k)<-2对应的对数压缩范围为-3/4≤λC(k)<-1/2;-2≤λU(k)<-1对应的对数压缩范围为-1/2≤λC(k)<-1/4;-1≤λU(k)<0对应的对数压缩范围为-1/4≤λC(k)<0;
(6)如果3/4≤λC(k)<1,则对数扩展后得到的序列4≤λE(k)<8,而对于数据范围内的结果按照折线33进行线性逆映射;
(7)如果1/2≤λC(k)<3/4,则对数扩展后得到的序列2≤λE(k)<4,而对于数据范围内的结果按照折线32进行线性逆映射;
(8)如果1/4≤λC(k)<1/2,则对数扩展后得到的序列1≤λE(k)<2,而对于数据范围内的结果按照折线31进行线性逆映射;
(9)如果0≤λC(k)<1/4,则对数扩展后得到的序列0≤λE(k)<1,而对于数据范围内的结果按照折线30进行线性逆映射;
(10)如果λC(k)<0,则-λC(k)>0,即对对数压缩后的数据取绝对值后再进行对数扩展,在得到扩展结果后,再在最高位添加极性比特;也就是说,-8≤λC(k)<-4对应的对数扩展范围为-1≤λE(k)<-3/4;-4≤λC(k)<-2对应的对数扩展范围为-3/4≤λE(k)<-1/2;-2≤λC(k)<-1对应的对数扩展范围为-1/2≤λE(k)<-1/4;-1≤λC(k)<0对应的对数扩展范围为-1/4≤λE(k)<0。
参见图4,本发明的对数压扩编码的涡轮(Turbo)码译码器对外信息序列采用了对数压缩和扩展。这种对数压缩和扩展是这样实现的:设均匀量化的外信息序列 λ ~ U i ( k ) ( i = 1,2 ) 表示为(nE,pE),其中nE为数据的有效位宽,pE为数据的精度比特,则其所表示的数值范围为(-2nE-pE-1,2nE-pE-1-2-pE)。例如(nE,pE)=(10,2),表示数据宽度为10比特,精度比特为2比特,因此它所表征的数值范围为(-128,127.75)。接收序列的对数压缩和扩展函数fE及fE -1是用分段折线近似的,下面以(nE,pE)=(10,2)为例说明压缩和扩展过程至少包括如下步骤(i=1,2):
(1)如果 64 &le; &lambda; ~ U i ( k ) < 128 , 则对数压缩后得到的序列 7 / 8 &le; &lambda; ~ C i ( k ) < 1 , 而对于数据范围内的结果按照折线47进行线性映射;
(2)如果 32 &le; &lambda; ~ U i ( k ) < 64 , 则对数压缩后得到的序列 3 / 4 &le; &lambda; ~ C i ( k ) < 7 / 8 而对于数据范围内的结果按照折线46进行线性映射;
(3)如果 16 &le; &lambda; ~ U i ( k ) < 32 , 则对数压缩后得到的序列 5 / 8 &le; &lambda; ~ C i ( k ) < 3 / 4 , 而对于数据范围内的结果按照折线45进行线性映射;
(4)如果 8 &le; &lambda; ~ U i ( k ) < 16 , 则对数压缩后得到的序列 1 / 2 &le; &lambda; ~ C i ( k ) < 5 / 8 , 而对于数据范围内的结果按照折线44进行线性映射;
(5)如果 4 &le; &lambda; ~ U i ( k ) < 8 , 则对数压缩后得到的序列 3 / 8 &le; &lambda; ~ C i ( k ) < 1 / 2 , 而对于数据范围内的结果按照折线43进行线性映射;
(6)如果 2 &le; &lambda; ~ U i ( k ) < 4 , 则对数压缩后得到的序列 1 / 4 &le; &lambda; ~ C i ( k ) < 3 / 8 , 而对于数据范围内的结果按照折线42进行线性映射;
(7)如果 1 &le; &lambda; ~ U i ( k ) < 2 , 则对数压缩后得到的序列 1 / 8 &le; &lambda; ~ C i ( k ) < 1 / 4 , 而对于数据范围内的结果按照折线41进行线性映射;
(8)如果 0 &le; &lambda; ~ U i ( k ) < 1 , 则对数压缩后得到的序列 0 &le; &lambda; ~ C i ( k ) < 1 / 8 , 而对于数据范围内的结果按照折线40进行线性映射;
(9)如果 &lambda; ~ U i ( k ) < 0 , - &lambda; ~ U i ( k ) > 0 , 即对均匀量化的外信息数据取绝对值后再进行对数压缩,在得到压缩结果后,再在最高位添加极性比特;也就是说, - 128 &le; &lambda; ~ U i ( k ) < - 64 对应的对数压缩范围为 - 1 &le; &lambda; ~ C i ( k ) < - 7 / 8 ; - 64 &le; &lambda; ~ U i ( k ) < - 32 ; 对应的对数压缩范围为 - 7 / 8 &le; &lambda; ~ C i ( k ) < - 3 / 4 ; - 32 &le; &lambda; ~ U i ( k ) < - 16 对应的对数压缩范围为 - 3 / 4 &le; &lambda; ~ C i ( k ) < - 5 / 8 ; - 16 &le; &lambda; ~ U i ( k ) < - 8 对应的对数压缩范围为 - 5 / 8 &le; &lambda; ~ C i ( k ) < - 1 / 2 ; - 8 &le; &lambda; ~ U i ( k ) < - 4 对应的对数压缩范围为 - 1 / 2 &le; &lambda; ~ C i ( k ) < - 3 / 8 ; - 4 &le; &lambda; ~ U i ( k ) < - 2 对应的对数压缩范围为 - 3 / 8 &le; &lambda; ~ C i ( k ) < - 1 / 4 ; - 2 &le; &lambda; ~ U i ( k ) < - 1 对应的对数压缩范围为 - 1 / 4 &le; &lambda; ~ C i ( k ) < - 1 / 8 ; - 1 &le; &lambda; ~ U i ( k ) < 0 对应的对数压缩范围为 - 1 / 8 &le; &lambda; ~ C i ( k ) < 0 ;
(10)如果 7 / 8 &le; &lambda; ~ C i ( k ) < 1 , 则对数扩展后得到的序列 64 &le; &lambda; ~ E i ( k ) < 128 , 而对于数据范围内的结果按照折线47进行线性逆映射;
(11)如果 3 / 4 &le; &lambda; ~ C i ( k ) < 7 / 8 , 则对数扩展后得到的序列 32 &le; &lambda; ~ E i ( k ) < 64 , 而对于数据范围内的结果按照折线46进行线性逆映射;
(12)如果 5 / 8 &le; &lambda; ~ C i ( k ) < 3 / 4 , 则对数扩展后得到的序列 16 &le; &lambda; ~ E i ( k ) < 32 , 而对于数据范围内的结果按照折线45进行线性逆映射;
(13)如果 1 / 2 &le; &lambda; ~ C i ( k ) < 5 / 8 , 则对数扩展后得到的序列 8 &le; &lambda; ~ E i ( k ) < 16 , 而对于数据范围内的结果按照折线44进行线性逆映射;
(14)如果 3 / 8 &le; &lambda; ~ C i ( k ) < 1 / 2 , 则对数扩展后得到的序列 4 &le; &lambda; ~ E i ( k ) < 8 , 而对于数据范围内的结果按照折线43进行线性逆映射;
(15)如果 1 / 4 &le; &lambda; ~ C i ( k ) < 3 / 8 , 则对数扩展后得到的序列 2 &le; &lambda; ~ E i ( k ) < 4 , 而对于数据范围内的结果按照折线42进行线性逆映射;
(16)如果 1 / 8 &le; &lambda; ~ C i ( k ) < 1 / 4 , 则对数扩展后得到的序列 1 &le; &lambda; ~ E i ( k ) < 2 , 而对于数据范围内的结果按照折线41进行线性逆映射;
(17)如果 0 &le; &lambda; ~ C i ( k ) < 1 / 8 , 则对数扩展后得到的序列 0 &le; &lambda; ~ E i ( k ) < 1 , 而对于数据范围内的结果按照折线40进行线性逆映射;
(18)如果 &lambda; ~ C i ( k ) < 0 , - &lambda; ~ C i ( k ) < 0 , 即对数压缩的外信息数据取绝对值后再进行对数扩展,得到扩展结果后,再在最高位添加极性比特。也就是说, - 1 &le; &lambda; ~ C i ( k ) < - 7 / 8 对应的对数扩展范围为 - 128 &le; &lambda; ~ U i ( k ) < - 64 ; 7 / 8 &le; &lambda; ~ C i ( k ) < - 3 / 4 对应的对数扩展范围为 - 64 &le; &lambda; ~ U i ( k ) < - 32 ; - 3 / 4 &le; &lambda; ~ C i ( k ) < - 5 / 8 对应的对数扩展范围为 - 32 &le; &lambda; ~ U i ( k ) < - 16 ; - 5 / 8 &le; &lambda; ~ C i ( k ) < - 1 / 2 对应的对数扩展范围为 - 16 &le; &lambda; ~ U i ( k ) < - 8 ; - 1 / 2 &le; &lambda; ~ C i ( k ) < - 3 / 8 对应的对数扩展范围为 - 8 &le; &lambda; ~ U i ( k ) < - 4 ; - 3 / 8 &le; &lambda; ~ C i ( k ) < - 1 / 4 对应的对数扩展范围为 - 4 &le; &lambda; ~ U i ( k ) < - 2 ; - 1 / 4 &le; &lambda; ~ C i ( k ) < - 1 / 8 对应的对数扩展范围为 - 2 &le; &lambda; ~ U i ( k ) < - 1 ; - 1 / 8 &le; &lambda; ~ C i ( k ) < 0 对应的对数扩展范围为 - 1 &le; &lambda; ~ U i ( k ) < 0 .
对于本发明对数压扩编码的涡轮(Turbo)码译码器,发明人利用VirtexII系列的现场可编程门阵列FPGA(Field Programmable Gate Array)集成电路芯片来设计和实施之。其主要的设计参数如下:接收序列采用6比特量化,2比特数据精度,外信息采用10比特量化,2比特数据精度。使用Verilog语言描述对数压扩编码的涡轮(Turbo)码译码器结构,再使用Synplify软件进行综合,最后用Xilinx公司的ISE软件进行时序仿真、布线和芯片编程。上述研制实施的试验结果如图5所示,应该是较好地实现了发明目的。

Claims (10)

1、一种对数压扩编码的涡轮码译码器,包括有:两个信道译码器、两个交织器、两个解交织器、解复用电路、判决器和三个存储器;其特征在于:
该涡轮码译码器还包括有:接收信号对数压缩编码电路单元fI和对数扩展编码电路单元fI -1,外信息对数压缩编码电路单元fE和对数扩展编码电路单元fE -1
该涡轮译码器接收到量化数字信号序列r(k),先将其接入一个乘法器,与信道可靠性系数 A = 4 E s N 0 进行相乘处理,得到均匀量化的接收序列λU(k),然后送入对数压缩编码电路单元fI得到信号序列λC(k)后,再接至第一个存储器;该第一个存储器的输出经过对数扩展编码电路单元fI -1后,得到对数扩展后的信号序列λE(k),并将其接入解复用电路,得到三路并行的子序列信号Ax(k)、Ay1(k)和Ay2(k);该三路信号的流程分别为:其中Ay1(k)和Ax(k)二路序列信号送入第一个译码器,Ax(k)经过交织器后的序列信号Axp(k)和序列信号Ay2(k)送入第二个译码器;第二个译码器输入端的对数扩展的外信息序列
Figure C021260490002C2
是经过下述电路得到的:第一个译码器输出的信号序列接入一个减法器,分别减去信号序列Ax(k)和
Figure C021260490002C3
后,输出的均匀量化的外信息序列 被送入对数压缩编码电路单元fE,其输出的压缩序列
Figure C021260490002C5
又接入交织器进行交织,然后送入第二个存储器;该第二个存储器中的输出再送入对数扩展编码电路单元fE -1后,得到外信息扩展序列
Figure C021260490002C6
第一个译码器输入端的外信息扩展序列 是经过下述电路得到的:第二个译码器输出的信号序列接入一个减法器,分别减去外信息序列
Figure C021260490002C8
和交织后的序列Axp(k)的信号后,输出的均匀量化外信息序列
Figure C021260490002C9
被送入对数压缩编码电路单元fE后得到压缩序列 再经过第三个存储器送入解交织器,其输出送入对数扩展编码电路单元fE -1后,得到外信息扩展序列
Figure C021260490002C11
第一个译码器和第二个译码器按照上述连接关系相互之间反馈传递外信息序列
Figure C021260490002C12
Figure C021260490002C13
经过多次传递后,第二个译码器的输出序列顺序接入解交织器和判决器,其输出即为所需的译码序列;其中信道可靠性系数计算公式中的Es编码表示符号能量,N0是单边功率谱密度。
2、根据权利要求1所述的对数压扩编码的涡轮码译码器,其特征在于:所述的译码器中的对数压缩编码和扩展编码的电路单元应用的对数压扩函数是对数最大后验概率译码Log-Map计算方法,或是软输出维特比译码SOVA计算方法。
3、根据如权利要求1所述的对数压扩编码的涡轮码译码器,其特征在于:所述的对数压扩编码的涡轮Turbo码译码器是用现场可编程门阵列FPGA集成电路芯片实现的,或是用专用集成电路ASIC芯片制成。
4、根据权利要求1所述的对数压扩编码的涡轮码译码器,其特征在于:所述的译码器应用于WCDMA、或CDMA2000、或TD-SCDMA系统,及卫星通信和宇航通信系统中。
5、一种对数压扩编码的涡轮码译码器的实现方法,其特征在于:至少包括如下步骤:
(1)将量化接收序列r(k)与信道可靠性度量 A = 4 E s N 0 进行相乘处理,得到均匀量化的接收序列λU(k),其中量化接收序列中的k为离散时间标记,其取值为自然数,信道可靠性度量中Es编码表示符号能量,N0是单边功率谱密度;
(2)将λU(k)送入对数压缩电路单元fI进行对数压缩处理,得到均匀量化接收序列对数压缩后的序列λC(k),对数压缩电路单元所采用的对数压缩函数为fI;然后将压缩后的序列λC(k)写入存储器,以节省存储器的空间;
(3)从存储器中读出压缩后的序列λC(k),送入对数扩展电路单元fI -1进行对数扩展,得到对数扩展后的序列λE(k),对数扩展电路单元所采用的对数扩展函数是对数压缩的逆变换函数fI -1
(4)将对数扩展序列λE(k)进行串并变换解复用,得到三个并行的子序列Ax(k)、Ay1(k)和Ay2(k);该三个子序列Ax(k)、Ay1(k)和Ay2(k)分别表示涡轮Turbo码的系统编码序列、第一路校验编码序列和第二路校验码编码序列;
(5)分别将系统编码序列Ax(k)和第一路校验序列Ay1(k)送入第一个译码器,以及将系统编码序列经过交织后的序列Axp(k)和第二路校验序列Ay2(k)送入第二个译码器;
(6)第一个译码器在得到系统编码序列Ax(k)、第一路校验序列Ay1(k)和第二个译码器输出的经过对数压缩之后再扩展的外信息序列
Figure C021260490003C2
后,开始进行信道译码处理;
(7)对第一个译码器输出的似然比序列分别进行减去第二译码器输出的经过对数压缩之后再扩展的外信息序列
Figure C021260490004C1
和系统编码序列Ax(k)的处理后,得到第一个译码器的均匀量化的外信息序列
(8)将上述外信息序列 送入对数压缩电路单元fE进行对数压缩处理,得到压缩序列
Figure C021260490004C4
对数压缩电路单元所采用的对数压缩函数为fE;再按交织方式写入存储器;
(9)从该存储器中读出压缩序列
Figure C021260490004C5
再送入对数扩展电路单元fE -1进行对数扩展后,得到扩展序列
Figure C021260490004C6
对数扩展电路单元所采用的对数扩展是对数压缩的逆变换函数fE -1;之后将扩展序列 作为外信息送入第二个译码器;
(10)第二个译码器得到对数扩展的外信息序列 交织后的系统编码序列Axp(k)和第二路校验码序列Ay2(k)后,开始进行译码处理;
(11)对第二个译码器输出的似然比序列分别进行减去第一个译码器的外信息序列的对数压缩之后再扩展的序列 和交织后的系统编码序列Axp(k)的处理后,得到第二个译码器的均匀量化外信息序列
(12)对第二个译码器输出的均匀量化外信息序列 进行对数压缩处理后,得到压缩序列
Figure C021260490004C12
所采用的对数压缩函数为fE,再按解交织方式写入存储器;
(13)从该存储器中读出压缩序列 再经过对数扩展后,得到扩展序列
Figure C021260490004C14
所采用的对数扩展是对数压缩函数的逆变换函数fE -1;之后将扩展序列
Figure C021260490004C15
作为外信息送入第一个译码器;
(14)顺序执行上述步骤(6)-(13)各一次,称为一次迭代;重复执行上述步骤(6)-(13),即经过多次迭代后译码停止;第一次迭代时的初始化条件是第一个译码器和第二个译码器的外信息序列 均为0;
(15)将第二个译码器的输出似然比序列送入解交织器,再将经过解交织处理后的序列送入判决器,得到该译码器的输出序列。
6、根据权利要求5所述的对数压扩编码的涡轮码译码器的实现方法,其特征在于:所述的译码器操作步骤中经过多次循环迭代,才能得到译码结果;其中迭代循环的次数至少是1次,也可以是2次或2次以上的多次迭代;迭代次数取决于译码时延和硬件复杂度的不同要求。
7、根据权利要求5所述的对数压扩编码的涡轮码译码器的实现方法,其特征在于:所述的步骤(2)中对均匀量化的接收序列信号λU(k)进行对数压缩处理时,所采用的精确的压扩函数为gI
式中:均匀量化的接收序列λU(k)表示为(nI,pI),其中nI为数据的有效位宽,pI为数据的精度比特,则其所表示的数值范围为(-2nI-pI-1,2nI-pI-1-2-pI);通常接收序列的有效位宽nI的取值nI=5、6、7、8,精度比特pI的取值pI=2、3;压扩参数MI是由(nI,pI)决定的经验值。
8、根据权利要求7所述的对数压扩编码的涡轮码译码器的实现方法,其特征在于:在用硬件实现精确对数压扩函数gI时,采用分段折线的压扩函数fI近似逼近精确的对数压扩函数gI:即用分段近似函数fI逼近精确函数gI,用分段近似反函数fI -1逼近精确函数gI的反函数;且当均匀量化的接收序列λU(k)表示为(nI,pI)时,其中数据宽度nI和数据精度pI都可以取各种数值,以对应于不同的近似对数压缩函数fI和扩展函数fI -1
9、根据权利要求5所述的对数压扩编码的涡轮码译码器的实现方法,其特征在于:所述的步骤(8)和(12)中对外信息序列信号进行对数压缩处理时,所采用的精确的对数压扩函数为gE
Figure C021260490005C2
式中:均匀量化的外信息序列 &lambda; ~ U i ( k ) ( i = 1,2 ) 表示为(nE,pE),其中nE为数据的有效位宽,pE为数据的精度比特,则其所表示的数值范围为:(-2nE-pE-1,2nE-pE-1-2-pE);通常外信息序列的有效位宽nE的取值nE=7、8、9、10、11、12,精度比特pE的取值pE=2、3;压扩参数ME是由(nE,pE)决定的经验值。
10、根据权利要求9所述的对数压扩编码的涡轮码译码器的实现方法,其特征在于:在用硬件实现精确对数压扩函数gE时,采用分段折线的压扩函数fE近似逼近精确的对数压扩函数gE:即用分段近似函数fE逼近精确函数gE,用分段近似反函数fI -1逼近精确函数gE的反函数;且当均匀量化的外信息序列表示为(nE,pE)时,其中数据宽度nE和数据精度pE都可以取各种数值,以对应于不同的近似对数压缩函数fE和扩展函数fE -1
CNB021260494A 2002-08-12 2002-08-12 对数压扩编码的涡轮码译码器及其实现方法 Expired - Fee Related CN1163094C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB021260494A CN1163094C (zh) 2002-08-12 2002-08-12 对数压扩编码的涡轮码译码器及其实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB021260494A CN1163094C (zh) 2002-08-12 2002-08-12 对数压扩编码的涡轮码译码器及其实现方法

Publications (2)

Publication Number Publication Date
CN1392741A CN1392741A (zh) 2003-01-22
CN1163094C true CN1163094C (zh) 2004-08-18

Family

ID=4745725

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021260494A Expired - Fee Related CN1163094C (zh) 2002-08-12 2002-08-12 对数压扩编码的涡轮码译码器及其实现方法

Country Status (1)

Country Link
CN (1) CN1163094C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104218956B (zh) * 2013-06-05 2019-04-26 中兴通讯股份有限公司 一种无线接收设备的软比特译码方法及装置

Also Published As

Publication number Publication date
CN1392741A (zh) 2003-01-22

Similar Documents

Publication Publication Date Title
CN1178399C (zh) 高度并行最大后验概率(map)解码器
CN1111962C (zh) 并行链接卷积编码、译码方法及执行该方法的编码、译码器及系统
CN1898874A (zh) 具有子块处理和基于子块的停止标准的siso解码器
CN1357172A (zh) 利用线性同余序列的turbo码交织器
CN1366739A (zh) 被快速(Turbo)编码了的代码序列的译码方法及译码装置
CN1216418A (zh) 系统收缩卷积编码方法
CN100546207C (zh) 一种基于DVB-RCS标准的双二元Turbo码译码方法
CN1419747A (zh) 码分多址通信系统中的编码装置及其方法
CN114826284A (zh) 基于扩展Turbo码和连续相位调制的迭代译码方法
CN1140148C (zh) 在移动通信系统中执行特博解码的方法
CN1332906A (zh) 通信系统中用于迭代解码器的量化方法
CN1328384A (zh) Turbo译码器及其实现方法
CN1211931C (zh) 用于最大后验概率解码器的存储器体系结构
CN1349361A (zh) 特博码的解码方法
CN1157883C (zh) 实现并行滑动窗最大后验概率算法的高速Turbo码译码器
CN1163094C (zh) 对数压扩编码的涡轮码译码器及其实现方法
CN100350751C (zh) Turbo解码装置
CN108880748B (zh) 基于拉丁方阵的无速率Spinal码的编译码方法
CN1398047A (zh) 并行滑动窗涡轮码译码器及其实现方法
CN1148006C (zh) 一种特博码软输入软输出解码方法以及解码器
CN1738229A (zh) TD-SCDMA系统中的Woven卷积码纠错编、译码器
GB2346782A (en) Method of transmission with channel encoding with efficient and modular interleaving for turbo codes
CN1145266C (zh) 特博码解码方法及其解码器
CN1856939A (zh) 输入控制装置及输入控制方法
CN1558557A (zh) 基于和积算法的汉明码迭代译码方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee