CN116192155A - 一种低时延、幸存路径长度自动调节的维特比译码电路 - Google Patents
一种低时延、幸存路径长度自动调节的维特比译码电路 Download PDFInfo
- Publication number
- CN116192155A CN116192155A CN202211618272.9A CN202211618272A CN116192155A CN 116192155 A CN116192155 A CN 116192155A CN 202211618272 A CN202211618272 A CN 202211618272A CN 116192155 A CN116192155 A CN 116192155A
- Authority
- CN
- China
- Prior art keywords
- circuit
- path
- soft bit
- decoding
- bit data
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Abstract
本发明公开一种低时延、幸存路径长度自动调节的维特比译码电路,属于数字通信领域,包括译码控制电路、插值电路、分支度量计算电路、加比选电路和幸存路径回溯电路。译码控制电路根据配置生成译码电路控制信息;插值电路对码率为2/3、3/4的软比特数据进行插值操作,使之恢复成1/2码率的软比特数据;分支度量计算电路在当前节点下计算软比特数据相对4种不同输出所对应的分支度量值;加比选电路进行路径度量的计算、比较与选择,选出幸存路径并将节点信息存入SRAM中;幸存路径回溯电路回溯幸存路径,译出码字。本发明能减小电路面积,低时延的流水线译码结构应对突发数据,提高译码速度与效率,幸存路径动态调节可以很好的应对包长不固定的译码场景。
Description
技术领域
本发明涉及数字通信技术领域,特别涉及一种低时延、幸存路径长度自动调节的维特比译码电路。
背景技术
在数字通信中,采用纠错码(即差错控制技术)是提高信号传输可靠性的有效手段,并发挥着越来越重要的作用。纠错码主要有分组码和卷积码两种。在码率和编码器复杂程度相同的情况下,卷积码的性能优于分组码。卷积码的译码方法主要有代数译码和概率译码。代数译码是基于码的代数结构;而概率译码不仅基于码的代数结构,还利用了信道的统计特性,能充分发挥卷积码的特点,使译码错误概率达到很小。卷积码译码器的设计是由高性能的复杂译码器开始的,对于概率译码最初的序列译码,随着译码约束长度的增加,其译码错误概率可达到非常小。维特比(Viterbi)译码算法是一种最佳的概率译码算法。
维特比(Viterbi)译码算法是1967年维特比(Viterbi)提出了一种卷积码的译码方法。维特比算法是基于码的网格图基础上的一种最大似然译码算法,即译码器所选择的输出总是能给出对数似然函数值为最大的码字。Omura证明维特比算法等价于求通过一个加权图的最短路径问题的动态规划解。在码的约束度较小时,Viterbi算法比序列译码算法效率更高、速度更快,译码器也较简单。因而从算法提出以来,无论在理论上还是在实践上都得到了极其迅速的发展,并广泛应用于各种数字传输系统,特别是卫星通信和移动通信等领域。
发明内容
本发明的目的在于提供一种低时延、幸存路径长度自动调节的维特比译码电路,以解决目前维特比译码电路高时延、高缓存、幸存路径固定的问题。
为解决上述技术问题,本发明提供了一种低时延、幸存路径长度自动调节的维特比译码电路,包括:
译码控制电路,根据配置生成译码电路控制信息;
插值电路,对码率为2/3、3/4的软比特数据进行插值操作,使之恢复成1/2码率的软比特数据;
分支度量计算电路,在当前节点下计算软比特数据相对4种不同输出所对应的分支度量值;
加比选电路,进行路径度量的计算、比较与选择,选出幸存路径并将64条路径的节点信息存入SRAM中;
幸存路径回溯电路,回溯幸存路径,译出码字。
在一种实施方式中,所述译码控制电路根据输入的编码包长信息和编码模式输出译码后的包长信息;根据编码模式以及编码包的结束信号动态调节幸存路径长度;根据编码包的结束信号以及译码电路的工作状态输出译码包的结束信号。
在一种实施方式中,所述幸存路径长度的范围为8-48。
在一种实施方式中,所述插值电路将插值后单通道软比特数据恢复成双通道数据。
在一种实施方式中,所述分支度量计算电路计算得到的当前节点4种可能的分支度量,其中硬比特“0”被量化成软比特“5’b 01111”,硬比特“1”被量化成软比特“5’b11111”,其补码为“5’b 10001”。
在一种实施方式中,所述加比选电路包括加功能、比功能和选功能;其中,
所述加功能为:根据当前节点所在的状态以及输入0和1选择对应的分支度量,并将选择的分支度量值累加到前一状态的路径度量值上,作为当前状态的路径度量值之一;
所述比功能为:当前状态根据输入会产生两个路径度量值,将该两个路径度量值进行比较,选择较小的路径度量值作为当前状态的唯一度量值,并将当前的比较结果作为路径的节点信息存入SRAM中;
所述选功能为:对当前节点下64个状态的路径度量值进行比较,选择出最小度量值,并记录最小度量值所在的状态Best State。
在一种实施方式中,所述幸存路径回溯电路选择最终节点的状态Best State作为回溯的起点,读取SRAM中的路径节点信息进行回溯,每一节点译出1bit的码字,回溯完成后,将译出的码字按照单字节的方式打包发出。
本发明提供的一种低时延、幸存路径长度自动调节的维特比译码电路,具有以下有益效果:
(1)低延时,流水线译码电路结构以及较短的幸存路径长度,使得译码器电路延时大大降低,较好的应对数据突发,有效提高译码速度与效率;
(2)低资源消耗,译码电路流水线的特性带来的实时性,使得待译码的软比特数据无需额外的缓存,较短的幸存路径长度也使得路径节点信息所消耗的缓存较少,可以很大程度上降低资源消耗,减小电路面积;
(3)幸存路径长度支持8-48之间动态调节,可以较好的解决相等数量的数据在不同编码形式下译出不同数量的数据以及包长变化导致包尾处数据块大小不固定等带来的问题。
附图说明
图1是本发明提供的一种低时延、幸存路径长度自动调节的维特比译码电路的总体架构示意图;
图2是卷积码编码电路的结构示意图;
图3是整个维特比译码电路数据通路的时序图;
图4是数据包的数据结构以及不同码率下的插值方式示意图;
图5是卷积编码器对应的状态转移图;
图6是加比选节点示意图。
具体实施方式
以下结合附图和具体实施例对本发明提出的一种低时延、幸存路径长度自动调节的维特比译码电路作进一步详细说明。根据下面说明,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
本发明提出一种低时延、幸存路径长度自动调节的维特比译码电路,其总体架构如图1所示,包括译码控制电路(CTRL)、插值电路(INST)、分支度量计算电路(BM)、加比选电路(ACS)和幸存路径回溯电路(TRB)。所述译码控制电路根据输入的编码包长信息(ENC_LEN)和编码模式(ENC_MODE)输出译码后的包长信息(DEC_LEN),根据ENC_MODE以及编码包的结束信号(ENC_END)动态调节幸存路径长度,幸存路径长度范围在8-48,根据编码包的结束信号以及译码电路的工作状态输出译码包的结束信号;所述插值电路对码率为2/3、3/4的软比特数据进行插值的操作,使之恢复成1/2码率的软比特数据,并将插值后单通道软比特数据恢复成双通道数据;所述分支度量计算电路计算当前节点下软比特数据(DAT_A、DAT_B)相对4种不同输出的欧几里得距离,当前节点4种可能的分支度量中,硬比特“0”被量化成软比特“5’b 01111”,硬比特“1”被量化成软比特“5’b 11111”,其补码为“5’b 10001”;所述加比选电路完成路径度量的计算、比较与选择,选出幸存路径并将64条路径的节点信息存入SRAM中;所述幸存路径回溯电路回溯幸存路径,译出码字。
如图2为卷积码编码电路,1bit输入,2bit输出,约束长度为7。编码器输出的2bit输出被量化成2个5bit的软比特数据,软比特数据的最高位为符号位,输出“0”量化成“5’b01111”,输出“1”量化成“5’b11111”,其补码为“5’b10001”。
如图3为整个维特比译码电路数据通路的时序图(1/2码率)。突发数据块包含64个5位软比特数据,经过插值电路、分支路径计算电路以及加比选电路的流水线结构以很低的延时完成幸存路径的选择,并记录64条路径的节点信息。由于维特比译码算法的特性,必须在完成幸存路径的选择并记录64条路径的节点信息之后才能进行回溯,幸存路径回溯电路因此无法加入流水线结构,但是较短的幸存路径也可以大大减少译码的延时。
图4为数据包的数据结构以及不同码率下的插值方式示意图,其中A0-A5、B0-B5分别为编码器的输出所量化的2个软比特数据。3/4和2/3码率的数据需要经过插值电路的插值,将数据恢复成1/2码率的数据,在对应位置插入“5’b00000”,插值方式如图4中(a)、(b)所示。图4中(d)为单个数据包的数据结构,数据包大小为1-1024个软比特数据,分成若干个突发数据块,每个数据块大小为64个软比特数据,包尾处的数据块大小为1-64个软比特数据。
所述分支度量计算电路完成节点的分支度量值计算。具体的,当前节点的软比特数据DAT_A、DAT_B在不知道节点所在的状态以及输入的情况下有4种不同的分支度量值,分别是BM_00、BM_01、BM_10、BM_11。BM_00表示数据B_A相对于“0_0”的欧几里得距离,BM_01表示数据B_A相对于“0_1”的欧几里得距离,BM_10表示数据B_A相对于“1_0”的欧几里得距离,BM_11表示数据B_A相对于“1_1”的欧几里得距离。以BM_11为例,BM_11的值等于B相对于“1”的距离加上A相对于“1”的距离,A/B分别相对于“0/1”的距离数据如表1所示。
表1A/B分别相对于“0/1”的距离数据
所述译码控制电路主要完成幸存路径长度的自动调节。不同码率下,一个64个软比特数据的数据块经插值恢复后的数据量是不同的,这也体现着幸存路径长度的不同。具体的,1/2码率下,经插值恢复后的数据大小仍然是64个软比特数据,译出32bits的码字;3/4码率下,经插值恢复后的数据大小是96个软比特数据,译出48bits的码字;2/3码率下经插值恢复后的数据大小是80个软比特数据(剩余4个未进行插值的软比特数据),译出40bits的码字。译出码字的比特数决定了幸存路径长度的大小。1/2码率下,幸存路径的长度为32;3/4码率下,幸存路径的长度为48;2/3码率下将有40和48两种不同的幸存路径长度,因为完成一个突发数据块的译码后仍有剩余数据,一个突发数据块在译出40bits码字后,将剩余4个未进行插值的软比特数据,两个数据块将叠加剩余8个软比特数据,将这8个软比特数据叠加到第三个数据块上,第三个数据块将有72个软比特数据,插值恢复后可译出48bits的码字,即幸存路径长度为48。当处于包尾的数据块大小不足64时,幸存路径的长度由ENC_EOF信号的脉冲来确定,幸存路径的长度为1-48,三种码率下均是同种处理方式。
所述加比选电路完成路径度量的累加、比较,根据路径度量值选择出幸存路径并将64条路径的节点信息存入SRAM中。图5为卷积编码器对应的状态转移图,根据输入“0/1”与当前状态确定下一状态以及输出,状态转移图中当前节点的两个状态只能转移到下一节点中的非括号中的状态,比如节点“S1(S33)”,状态S1和S33在下一节点均可以转移到S2和S3状态,不能转移到S34和S35状态。具体的,其中“加”主要体现在,根据当前节点所在的状态以及输入(0和1)选择对应的分支度量,并将选择的分支度量值累加到前一状态的路径度量值上,作为当前状态的路径度量值之一;“比”主要体现在,当前状态根据输入会产生两个路径度量值,将两个路径度量值进行比较,选择较小的路径度量值作为当前状态的唯一度量值,并将当前的比较结果作为路径的节点信息存入SRAM中;“选”主要体现在,对当前节点下64个状态的路径度量值进行比较,选择出最小度量值,并记录最小度量值所在的状态(BestState)。
如图6为加比选节点示意图,以幸存路径长度为48为例,由于卷积码的编码特性,分支度量值在加比选结束后(节点48),会继续向加比选电路中输入若干个零值,将译码器状态恢复,SRAM保存节点7->节点54的节点信息。关于Best State有以下两点需要说明,第一点,节点1处的64个状态的路径度量值均为零,BEST STATE(BS_START)为63(第64个状态);第二点,节点54处的BEST STATE(BS_END)在状态恢复后也是63。
所述幸存路径回溯电路,完成幸存路径的回溯,选择最终节点的Best State作为回溯的起点,读取SRAM中的路径节点信息进行回溯,回溯节点54->节点7,每一节点译出1bit的码字,回溯完成后,将译出的码字按照单字节的方式打包发出。
上述描述仅是对本发明较佳实施例的描述,并非对本发明范围的任何限定,本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。
Claims (7)
1.一种低时延、幸存路径长度自动调节的维特比译码电路,其特征在于,包括:
译码控制电路,根据配置生成译码电路控制信息;
插值电路,对码率为2/3、3/4的软比特数据进行插值操作,使之恢复成1/2码率的软比特数据;
分支度量计算电路,在当前节点下计算软比特数据相对4种不同输出所对应的分支度量值;
加比选电路,进行路径度量的计算、比较与选择,选出幸存路径并将64条路径的节点信息存入SRAM中;
幸存路径回溯电路,回溯幸存路径,译出码字。
2.如权利要求1所述的低时延、幸存路径长度自动调节的维特比译码电路,其特征在于,所述译码控制电路根据输入的编码包长信息和编码模式输出译码后的包长信息;根据编码模式以及编码包的结束信号动态调节幸存路径长度;根据编码包的结束信号以及译码电路的工作状态输出译码包的结束信号。
3.如权利要求2所述的低时延、幸存路径长度自动调节的维特比译码电路,其特征在于,所述幸存路径长度的范围为8-48。
4.如权利要求1所述的低时延、幸存路径长度自动调节的维特比译码电路,其特征在于,所述插值电路将插值后单通道软比特数据恢复成双通道数据。
5.如权利要求1所述的低时延、幸存路径长度自动调节的维特比译码电路,其特征在于,所述分支度量计算电路计算得到的当前节点4种可能的分支度量,其中硬比特“0”被量化成软比特“5’b01111”,硬比特“1”被量化成软比特“5’b11111”,其补码为“5’b10001”。
6.如权利要求1所述的低时延、幸存路径长度自动调节的维特比译码电路,其特征在于,所述加比选电路包括加功能、比功能和选功能;其中,
所述加功能为:根据当前节点所在的状态以及输入0和1选择对应的分支度量,并将选择的分支度量值累加到前一状态的路径度量值上,作为当前状态的路径度量值之一;
所述比功能为:当前状态根据输入会产生两个路径度量值,将该两个路径度量值进行比较,选择较小的路径度量值作为当前状态的唯一度量值,并将当前的比较结果作为路径的节点信息存入SRAM中;
所述选功能为:对当前节点下64个状态的路径度量值进行比较,选择出最小度量值,并记录最小度量值所在的状态BestState。
7.如权利要求1所述的低时延、幸存路径长度自动调节的维特比译码电路,其特征在于,所述幸存路径回溯电路选择最终节点的状态BestState作为回溯的起点,读取SRAM中的路径节点信息进行回溯,每一节点译出1bit的码字,回溯完成后,将译出的码字按照单字节的方式打包发出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211618272.9A CN116192155A (zh) | 2022-12-15 | 2022-12-15 | 一种低时延、幸存路径长度自动调节的维特比译码电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211618272.9A CN116192155A (zh) | 2022-12-15 | 2022-12-15 | 一种低时延、幸存路径长度自动调节的维特比译码电路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116192155A true CN116192155A (zh) | 2023-05-30 |
Family
ID=86443234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211618272.9A Pending CN116192155A (zh) | 2022-12-15 | 2022-12-15 | 一种低时延、幸存路径长度自动调节的维特比译码电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116192155A (zh) |
-
2022
- 2022-12-15 CN CN202211618272.9A patent/CN116192155A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9209837B1 (en) | Methods, algorithms, software, circuits, receivers and systems for decoding convolutional code | |
US6088404A (en) | Method and apparatus for decoding trellis code data | |
US8904266B2 (en) | Multi-standard viterbi processor | |
EP2339757B1 (en) | Power-reduced preliminary decoded bits in viterbi decoder | |
EP3996285A1 (en) | Parallel backtracking in viterbi decoder | |
KR100390416B1 (ko) | 터보 디코딩 방법 | |
US7793200B1 (en) | Method of and circuit for accessing a memory of a trellis decoder | |
KR101212856B1 (ko) | 통신 시스템에서 데이터를 복호하는 방법 및 장치 | |
US7035356B1 (en) | Efficient method for traceback decoding of trellis (Viterbi) codes | |
CN108471341B (zh) | 一种卷积编解码的方法 | |
CN116192155A (zh) | 一种低时延、幸存路径长度自动调节的维特比译码电路 | |
CN102291198B (zh) | 信道译码方法和装置 | |
US6134697A (en) | Traceback processor for use in a trellis-coded modulation decoder | |
JP3823731B2 (ja) | 誤り訂正復号器 | |
CN100505557C (zh) | 基于Viterbi译码的多路并行循环块回溯方法 | |
JP2010206570A (ja) | 復号装置、復号方法 | |
US20050138535A1 (en) | Method and system for branch metric calculation in a viterbi decoder | |
US6842490B1 (en) | Viterbi decoder with adaptive traceback | |
JP4295871B2 (ja) | 誤り訂正復号器 | |
JP5370487B2 (ja) | 復号方法および復号装置 | |
JPH05335973A (ja) | ビタビ復号器及び畳み込み符号の復号器 | |
Tadse et al. | A Low Power Asynchronous Viterbi Decoder | |
KR100333336B1 (ko) | 비터비 복호기의 역추적 방법 | |
KR100659777B1 (ko) | 시스톨릭 패스 메모리, 이를 이용한 비터비 디코더의 패스메모리 및 비터비 디코더 | |
KR20070098201A (ko) | 병렬 구조의 비터비 복호기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |