CN101527573B - 维特比解码器 - Google Patents

维特比解码器 Download PDF

Info

Publication number
CN101527573B
CN101527573B CN2009101377292A CN200910137729A CN101527573B CN 101527573 B CN101527573 B CN 101527573B CN 2009101377292 A CN2009101377292 A CN 2009101377292A CN 200910137729 A CN200910137729 A CN 200910137729A CN 101527573 B CN101527573 B CN 101527573B
Authority
CN
China
Prior art keywords
level
selected cell
value
buffer
unit
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.)
Active
Application number
CN2009101377292A
Other languages
English (en)
Other versions
CN101527573A (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.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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 Via Technologies Inc filed Critical Via Technologies Inc
Priority to CN2009101377292A priority Critical patent/CN101527573B/zh
Publication of CN101527573A publication Critical patent/CN101527573A/zh
Application granted granted Critical
Publication of CN101527573B publication Critical patent/CN101527573B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提出一种改良式的维特比解码器,路径权值存储器中储存了状态矩阵,包含多个阶段,每一阶段包含2n个状态元,每一状态元具有索引值及路径权值,且对应多个分支权值(Branch Metric)。回溯单元中包含第一到第n处理层级依序串接,用以找出该状态矩阵中每一阶段的最小路径权值及对应索引值,以建立存活路径。在每一处理层级中,有至少一个比较选择单元(Compare Selection Unit;CSU)各比较两个不同状态元的路径权值并输出较小者,并输出旗标以代表比较结果。而暂存器记录着每一比较选择单元所输出的旗标。该回溯单元可根据所有处理层级的暂存器配置推导出一阶段中路径权值最小的状态元的索引值。

Description

维特比解码器
技术领域
本发明是有关于无线通讯系统,尤其是有关于改良的维特比解码器。
背景技术
图1为一通讯系统的架构图。发射器110通过天线102发出消息,而接收器120通过天线104接收该消息。天线102和104之间的传输信道会使消息受到干扰。因此发射器110和接收器120之间必须采用一种错误控制编码技术。发射器110在发射消息前,会按照特定规则加上一些冗位(redundancy),以产生较高位率(bit rate)的编码数据。接收器120则利用这些冗位检验并确定原先传送的消息内容。错误控制编码的目的是在于减少信道噪声干扰的影响,大致上可分类成区块码(block code)以及回旋码(convolutional code)这两种类型。回旋码较常被应用在无线语音通讯系统中,因为语音通讯对数据重传率(retransmission rate)以及延迟(delay)的忍耐度较低。区块码则可用来传送通量(throughput)要求较高的应用,但是必须要容忍较大的延迟时间。
维特比(Viterbi)算法为检测最大可能(maximum-likelihood;ML)序列的一种向前错误修正(trellis)算法,并且是一种解回旋码的理想算法。由S.B.Wicker所写的“数字通讯与存储的错误控制系统(Error Control Systemfor Digital Communication and Storage,Pretice Hall,1995)”中有叙述到Viterbi解码器在移动通讯系统中的应用。
在图1中,接收器120中的射频模块122首先通过天线104接收射频信号并转为基频信号,而模拟数字转换器(ADC)124再将基频信号转为数字信号,供维特比解码器126进行解码步骤。
传统上维特比解码器126的硬件架构随着不同的应用领域而有各种不同的设计方式,因此详细的介绍不在此赘述。然而,随着硬件耗电与体积考虑的渐趋重要,电路的改良一向是有必要的。
发明内容
本发明提出一种改良式的维特比解码器。路径权值存储器中储存了状态矩阵,包含多个阶段,每一阶段包含2n个状态元,每一状态元具有索引值及路径权值,且对应多个分支权值(Branch Metric)。回溯单元中包含第一到第n处理层级依序串接,用以找出该状态矩阵中每一阶段的最小路径权值及对应索引值,以建立存活路径。
在每一处理层级中,有至少一个比较选择单元(Compare Selection Unit;CSU)各比较两个不同状态元的路径权值并输出较小者,并输出旗标以代表比较结果。而暂存器记录着每一比较选择单元所输出的旗标。该回溯单元可根据所有处理层级的暂存器配置推导出一阶段中路径权值最小的状态元的索引值。
在每一比较选择单元中,第一输入端以及第二输入端各接收不同状态元的路径权值。比较器比较来自该第一输入端和该第二输入端的路径权值,并输出旗标以记录该第一输入端以及该第二输入端中路径权值较小的一者。选择器可根据该旗标,选择性地将该第一输入端或该第二输入端所接收到的路径权值输出。
其中该旗标可以是一种布尔值,例如旗标值0代表该第一输入端,而旗标值1代表该第二输入端。
第一处理层级包含2n-1个比较选择单元,且该2n-1个比较选择单元的每一输入端依序各对应不同的索引值,其中n为自然数。该第一处理层级的2n-1个比较选择单元接收的2n个状态元以进行两两比对,筛选半数输出至下一处理层级。
而第二处理层级以后的每一处理层级的比较选择单元数量,是前一处理层级的比较选择单元数量的一半。最后一处理层级只有一个比较选择单元,输出的值即代表该状态矩阵的该阶段中的2n个状态元中具有最小路径权值的一者。
同样地,第一处理层级的暂存器包含2n-1个位,储存对应的2n-1个比较选择单元所输出的旗标。而第二处理层级以后的每一处理层级的暂存器的位数是前一处理层级的暂存器的位数的一半。最后一处理层级的暂存器包含一个位。而每一处理层级的每一比较选择单元,依序对应同一处理层级的暂存器的一位。
该回溯单元可根据每一处理层级及其后的所有暂存器,推知最小路径权值来自前一处理层级的第几个比较选择单元。例如,该回溯单元根据第二处理层级至最后处理层级的暂存器配置推知最小路径权值来自第一处理层级的特定比较选择单元。接着该回溯单元可根据第一处理层级的暂存器推知该最小路径权值是来自该特定比较选择单元的特定输入端。
该回溯单元根据下列公式判定索引值:
B0=Rn[0]
B1=Rn-1[B0]
B2=Rn-2[B0B1]
B3=Rn-3[B0B1B2]
Bn=R1[B0B1B2B3...Bn-1]
Imin=[B0B1B2B3...Bn]
其中R1到Rn为第一处理层级到第n处理层级的暂存器,B0到Bn为布尔值0或1,递次地由对应的暂存器Rn到R1中的特定地址中获取,而特定地址是表示为布尔值B0到Bn排列而成的二进制值;Imin代表具有最小路径权值的状态元所对应的索引值,表示为布尔值B0到Bn排列而成的二进制值。
附图说明
图1为一通讯系统的架构图;
图2为维特比解码器126的架构图;
图3为一状态矩阵的示意图;
图4为已知的回溯单元400的架构图;
图5为本发明实施例之一的回溯单元500;
图6为本发明实施例之一的回溯单元600;
图7为本发明实施例之一的比较选择单元700;以及
图8为推导索引值的示意图。
[主要元件标号说明]
110发射器    102天线
104天线      120接收器
122射频模块  124模拟数字转换器
126  维特比解码器        202  分支权值处理器
204  加法比较选择单元    206  路径权值存储器
208  回溯单元            400  回溯单元
410a~410c比较选择单元   412  比较器
414,416选择器           416  选择器
400,500,600回溯单元
510a~510f第一~第六处理层级
610a  第一处理层级       610b 第二处理层级
610c  第三处理层级       700  比较选择单元
710  选择器              720  比较器
具体实施方式
图2为图1中维特比解码器126的架构图。状态矩阵是一种机率的概念,用以计算特定状态元(State)在不同阶段之间改变状态的机率(分支权值)以及存在机率(路径权值)。在维特比解码器126中,分支权值处理器202接收ADC 124提供的数字数值#IN,藉以计算状态矩阵从一个阶段跳至下一个阶段的所有分支机率,又称为分支权值(Branch Metric)。分支权值处理器202的输出接着被送至加法比较选择(ACS)单元204,使加法比较选择单元204根据分支权值对状态矩阵中下一阶段的路径权值(Path Metric)进行更新。该维特比解码器126中的加法比较选择单元204可以是多数个平行运作,进行一种自然递归运算(Natural Recursion)以产生该状态矩阵,并将该状态矩阵储存在该路径权值存储器206中。由于状态矩阵是逐阶段更新,加法比较选择单元204必须大量地反复使用,因此路径权值存储器206的功能类似一种双缓冲器,供加法比较选择单元204递归存取。当加法比较选择单元204完成状态矩阵的更新运算之后,回溯单元208接着读取路径权值存储器206而进行存活路径运算以及最大相似度运算,以产生最接近原始发射信号的消息码#OUT。
该维特比解码器126中所进行的自然递归运算,可以是基于各种不同的算法,例如对数事后机率(Log-Maximum a Posteriori;Log-MAP)算法、最大对数事后机率(Max Log-MAP)算法或者强化最大对数事后机率(Enhanced MaxLog-MAP)算法。这些算法又统称为软进软出(Soft-in-Soft-out;SISO)解码算法。然而本发明的实施例亦适用于其它可能的维特比架构,不限定于此段所述的例子。
图3为一基数为四的状态矩阵(state metric)示意图。其中横轴t代表时间或阶段,而纵轴代表每一阶段所包含的多个状态元。以图3为例,该状态矩阵包含了多个阶段t1到tM的状态向量,每一状态向量包含了N个状态元S1到SN。以阶段tk-1的状态元S1为例,因为状态矩阵的基数为四(radix 4),该状态元S1跳到下一阶段的可能分支路径有四条。实际上在向前错误修正(trellis)结构中有明确定义每个阶段的每个状态元所对应的分支。在本例中,由状态元S1出发的四条分支各别指向下一阶段的状态元a,b,c和d(未图示),各具有不同的机率系数γ(S1,a)、γ(S1,b)、γ(S1,c)和γ(S1,d)。反过来说,每一现阶段的状态元可能来自前一阶段的某四个状态元。例如在阶段tk中的状态元S3,具有四条分支与前一阶段的状态元A、B、C、D(未图示)相连,各具有机率γ(A,S3)、γ(B,S3)、γ(C,S3)和γ(D,S3)。根据事后机率(MAP)算法,计算这些状态矩阵的过程统称为自然递归(Natural Recursion)运算,每一状态元的值可以是正向机率值或反向机率值。一般来说,这些机率值又称为权值(metric)。在所有的分支权值和路径权值都求出之后,整个状态矩阵即以这些权值的形式储存于图2所示的路径权值存储器206中,供后续的回溯单元208进行存活路径分析,以及最大相似度演算演算。
图4为一回溯单元400的实施例,其可对应至图2的回溯单元208。在进行存活路径分析时,需要寻找每一阶段的状态元中具有最小路径权值者。如图4所示,一阶段中有四个状态元,各具有路径权值P(S1)、P(S2)、P(S3)及P(S4),因此总共需要进行三次比较选择,才能找出最小路径权值。然而,该最小路径权值究竟属于哪一个状态元,则不得而知。因此传统的做法是为这些状态元建立索引值。在本例中该四个状态元的索引值依序表示为I(S1)、I(S2)、I(S3)及I(S4)。比较选择单元410a接收第一和第二状态元的索引值I(S1)和I(S2),以及路径权值P(S1)和(S2)。该比较选择单元410a中包含比较器412,比较该P(S1)和P(S2)以产生选择信号#S。该比较器412基本上可以是减法器,而选择信号#S可以是代表正负符号的布尔值。选择器414根据该选择信号#S从该P(S1)及P(S2)中选择较小的一者输出,表示为P(A)。同时,选择器416也根据该选择信号#S从索引值I(S1)和I(S2)中选择对应的值做为输出,表示为I(A)。同样的,比较选择单元410b对第三状态元和第四状态元进行相同处理,从P(S3)和P(S4)中选择其一输出为P(B),并同时从I(S3)和I(S4)中选择对应的一者输出为I(B)。该I(A)、I(B)、P(A)、P(B)接着在比较选择单元410c中进行相同的比较选择步骤,最后输出的结果P(C)即为四个状态元中的最小路径权值,而I(C)即为具有该最小路径权值的状态元的索引值。综上所述,该等比较选择单元410必须同时对索引值进行比较选择的步骤,才能在找到最小路径权值的时候,记录其所属的状态元是四者中的第几者。虽然本实施例仅以四个状态元为例,但是同样的架构可扩充应用至更多状态元,本发明不受此限。
图5为本发明另一实施例的回溯单元500。在本实施例中,不需要针对状态元的索引值进行比较与选择的运作,而是采用了暂存器来储存路径权值的比较选择结果,最后再用推算的方式找出索引值。在回溯单元500的实施例中,假设有一状态矩阵已经备妥,储存于图2的路径权值存储器206中。该状态矩阵中的每一阶段包含64个状态元。而该回溯单元500即是取代图2的回溯单元208,用来读取该路径权值存储器206并推算存活路径。
如图5所示,该回溯单元500中包含六个处理层级依序串接。将一状态矩阵的某一阶段的64个状态元输入至第一处理层级510a的输入端,最后可由第六处理层级510f输出该状态矩阵的该一阶段的最小路径权值及对应索引。每一处理层级中包含多个比较选择单元700(如图7所示),可对不同状态元的路径权值进行两两比较,找出较小者,并输出旗标以代表比较结果。举例来说,由于比较选择单元700包含两个输入端,而比较的运算实际上是减法。因此第一输入值与第二输入值相减所得数值的正负号,就可以当成一种旗标,用来表示两个输入值的大小关系。换句话说,通过旗标值可以获知该两个输入值在比较选择单元700实体脚位上的对应关系。也因此本实施例可以省略索引值的处理过程,直接以旗标来判断状态元的索引值。
64个状态元P0[0]到P0[63]输入第一处理层级510a之后,奇数状态元和相邻的偶数状态元进行比较,其路径权值较大者被筛除,而路径权值较小者被选择后输出,表示为P1[0]到P1[31]。故第一处理层级510a的输出值数量是输入值数量的一半。至于每一比较选择单元700产生的旗标,则以布尔数值的形式储存在一暂存器R1中。为了两两比较64个状态元,在第一处理层级510a中包含了32个比较选择单元700(未图标),共进行了32次比较选择运算,除了产生32个选择结果P1[0]到P1[31]之外,也产生了32个旗标f1[0]到f1[31],依序对应地存放在一长度为32位的R1中。
依此类推地,第一处理层级510a输出数量减半的32个路径权值P1[0]到P1[31]至第二处理层级510b,由第二处理层级510b中的16个比较选择单元700(未图标)进行两两比较,而产生16个比较选择结果,表示为P2[0]到P2[15]。同样的,该16个比较选择单元700亦产生了16个旗标,表示为f2[0]到f2[15],储存在长度为16位的暂存器R2中。
依此类推地,第三处理层级510c输出八个路径权值P3[0]到P3[7]至第四处理层级510d,并将八个旗标f3[0]到f3[7]储存至暂存器R3中。第四处理层级510d输出四个路径权值P4[0]到P4[3]至第五处理层级510e,并将四个旗标f4[0]到f4[3]储存至暂存器R4中。第五处理层级510e输出路径权值P5[0]到P5[1]至第六处理层级510f,并将旗标f5[0]到f5[1]储存至暂存器R5中。最后的第六处理层级510f输出单一的路径权值P6,即等于该等路径权值P0[0]到P0[63]之中的最小者。而旗标值f6是单一位,储存于暂存器R6中。
当所有暂存器R1到R6的值都齐备后,就可以开始逆推该路径权值P6所对应的索引值。详细实施例将于图8中说明。
图6为本发明另一实施例的回溯单元600。在此以每一阶段八个状态元为例。要从八个状态元中找出路径权值最小的一者,需要三个处理层级。在第一处理层级610a包含了四个比较选择单元700,对八个路径权值P0[0]到P0[7]进行两两比对,以输出四个选择比较结果,表示为P1[0]到P1[3]。其中P1[0]是P0[0]和P0[1]中较小的一者,P1[1]是P0[2]和P0[3]中较小的一者,以下类推。暂存器R1包含四个位,而第一处理层级610a中的四个比较选择单元700各输出一旗标,依序为f1[0]到f1[3],储存在暂存器R1中对应的位上,故暂存器R1中的四个布尔值依序可表示为R1[0]到R1[3]。
第一处理层级610a输出的四个路径权值P1[0]到P1[3],接着传送至第一处理层级610b中的两个比较选择单元700进行选择比较,以产生两个比较选择结果,P2[0]和P2[1]。同时两个对应的旗标f2[0]和f2[1]亦储存至暂存器R2中的对应位上,表示为R2[0]和R2[1]。最后一处理层级610c中只包含一比较选择单元700,接收该路径权值P2[0]和P2[1]进行比较后,输出单一位的比较选择结果P3。该比较选择结果P3即是八个路径权值P0[0]至P0[7]中最小值者。至于实际上是对应哪一状态元,需要由暂存器R1、R2和R3中的值来推导。详细推导过程将于图8中说明。
图5和图6的实施例虽然各说明了64状态元和8状态元的情况,但是可以推知本发明的处理层级可弹性延伸至n个以适用于2n个状态元(n为自然数)。至于索引值的推导原理也是相同,可随着n值而弹性适用。
图7为比较选择单元700的实施例。每一比较选择单元700包含两个输入端,各用以接收不同状态元的路径权值,例如Pn-1[i]和Pn-1[i+1]。比较选择单元700中包含比较器720,用以比较所输入的两个路径权值Pn-1[i]和Pn-1[i+1]。该比较器720执行的是减法运算,而输出的旗标fn[i]可以是一种正负号,藉此可以轻易判断较小值是来自哪一根输入端脚位。举例来说,该旗标可以是布尔值,旗标值0代表该第一输入端,而旗标值1代表该第二输入端。该比较选择单元700中的选择器710,则可根据该旗标,选择该两个路径权值Pn-1[i]或Pn-1[i+1]的其中之一,输出为Pn[i]。其中i的值是一索引变量。
图8为根据R1到Rn来推导索引值的过程。以图5的64状态元的选择比较结果为例,最后暂存器R6中储存的是一个单位元的布尔值。如粗线所示,暂存器R6的值是0,表示其最小路径权值来自P5[0]。为表示方便,在此暂指派一布尔变量B0,表示为:
B0=R6=0。
接着回推到第五处理层级510e。由于已知最小路径权值来自P5[0],所以读取暂存器地址R5[0],来进一步寻找上一层来源。在本实施例中,假设地址R5[0]中的值为1,代表该路径权值P5[0]的值来自第四处理层级的路径权值P4[01](为说明方便,在此[]中的值以二进制表示)。在此指派一布尔数变B1,表示为:
B1=R5[B0]=R5[0]=1。
接着回推到第四处理层级510d,由于已知最小路径权值来自P4[01],遂读取暂存器地址R4[01]中的布尔值,以进一步寻找上一层来源。在本例中,地址R4[01]中的值为1,故可推得路径权值的来源是第三处理层级的P3[011]。在此指派一布尔变量B2,表示为:
B2=R4[B0 B1]=R4[01]=1。
接着回推到第三处理层级510c,由于已知最小路径权值来自P3[011],遂读取暂存器地址R3[011]中的布尔值,以进一步寻找上一层来源。在本例中,地址R3[011]中的值为0,故可推得路径权值的上一层来源是P2[0110]。在此设定一布尔变量B3表示为:
B3=R3[B0 B1 B2]=R3[011]=0。
接着回推到第二处理层级510b,由于已知最小路径权值来自P2[0110],遂读取暂存器地址R2[0110]中的布尔值,以进一步寻找上一层来源。在本例中,地址R2[0110]中的值为1,故可推得上一层来源是P1[01101](十进制表示为P1[13])。在此指派一布尔变量B4,表示为:
B4=R2[B0B1B2B3]=R2[0110]=1。
接着回推到第一处理层级510a,由于已知最小路径权值来自P1[01101],遂读取暂存器地址R1[01101]中的布尔值,以进一步寻找原始来源。在本例中,R1[0发射器1101]中的值为0,故可推得上一层来源是P0[0发射器11010](十进制表示为P0[26])。在此使用一布尔变量B5,可表示为:
B5=R1[B0B1B2B3B4]=R1[01101]=0。
由上述逆推过程可以发现,最小路径权值的来源,可由最后一处理层级的暂存器值依次推得。而最后所有的布尔变量串起来得到的值,恰为64个状态元中最小路径权值者的索引值:
[B0B1B2B3B4B5]=[011010]=26
故本实施发现该回溯单元可根据下列公式判定索引值:
B0=Rn[0]
B1=Rn-1[B0]
B2=Rn-2[B0B1]
B3=Rn-3[B0B1B2]
Bn=R1[B0B1B2B3...Bn-1]
Imin=[B0B1B2B3...Bn]
其中R1到Rn为第一处理层级到第n处理层级的暂存器,B0到Bn为布尔值0或1,递次地由对应的暂存器Rn到R1中的特定地址中获取,而特定地址是表示为布尔值B0到Bn排列而成的二进制值;Imin代表具有最小路径权值的状态元所对应的索引值,表示为布尔值B0到Bn排列而成的二进制值。
上述实施例突显一个优点,就是在寻找最小路径权值的过程中,不需要重复为索引值进行比较选择的步骤。只需要利用路径权值的比较选择过程所留下的旗标,就能推得索引值。因此回溯单元208的硬件电路的实作可以更加缩减面积,节省成本。
当回溯单元208逐个找出每一阶段的最小状态元后,即可产生一条存活路径。根据这条存活路径,可进一步进行一对数相似率(LLR)运算,以输出真正解码的结果。本发明所述的状态矩阵运算结构不限定是一种四基底篱栅(radix-4 trellis)结构,也可以适用于二平方基底篱栅(radix-22 trellis)结构。

Claims (10)

1.一种维特比解码器,包含:
路径权值存储器,用以储存状态矩阵,该状态矩阵包含多个阶段,每一阶段包含2n个状态元,每一状态元具有索引值及路径权值,且对应多个分支权值;以及
回溯单元,包含第一到第n处理层级依序串接,用以找出该状态矩阵中每一阶段的最小路径权值及对应索引值,以建立存活路径,其中:
每一处理层级包含:
至少一个比较选择单元,各用以比较两个不同状态元的路径权值并输出较小者,并输出旗标以代表比较结果;以及
暂存器,储存每一比较选择单元所输出的旗标;其中该回溯单元根据所有处理层级的暂存器的配置推导出一阶段中路径权值最小的状态元的索引值。
2.根据权利要求1所述的维特比解码器,其中每一比较选择单元包含:
第一输入端以及第二输入端,各用以接收不同状态元的路径权值;
比较器,比较来自该第一输入端和该第二输入端的路径权值,并输出旗标以记录该第一输入端以及该第二输入端中路径权值较小的一者,其中该旗标为布尔值,旗标值0代表该第一输入端,而旗标值1代表该第二输入端;以及
选择器,用以根据该旗标,选择性地将该第一输入端或该第二输入端所接收到的路径权值输出。
3.根据权利要求2所述的维特比解码器,其中第一处理层级包含2n-1个比较选择单元,且该2n-1个比较选择单元的每一输入端依序各对应不同的索引值,该第一处理层级的2n-1个比较选择单元接收的2n个状态元以进行两两比对,筛选半数输出至下一处理层级,其中n为自然数。
4.根据权利要求3所述的维特比解码器,其中:
第二处理层级以后的每一处理层级的比较选择单元数量,是前一处理层级的比较选择单元数量的一半;以及
最后一处理层级包含一个比较选择单元,输出的值即代表该状态矩阵的该阶段中的2n个状态元中具有最小路径权值的一者。
5.根据权利要求3所述的维特比解码器,其中:
第一处理层级的暂存器包含2n-1个位,储存对应的2n-1个比较选择单元所输出的旗标;
第二处理层级以后的每一处理层级的暂存器的位数是前一处理层级的暂存器的位数的一半;以及
最后一处理层级的暂存器包含一个位。
6.根据权利要求5所述的维特比解码器,其中每一处理层级的每一比较选择单元,依序对应同一处理层级的暂存器的一位,其中该回溯单元根据每一处理层级及其后的所有暂存器,推知最小路径权值来自前一处理层级的第几个比较选择单元。
7.根据权利要求6所述的维特比解码器,其中:
该回溯单元根据第二处理层级至最后处理层级的暂存器的配置推知最小路径权值来自第一处理层级的特定比较选择单元;
该回溯单元根据第一处理层级的暂存器推知该最小路径权值是来自该特定比较选择单元的特定输入端;以及
该特定输入端对应的顺位即为索引值。
8.根据权利要求6所述的维特比解码器,其中该回溯单元根据下列公式判定索引值:
B0=Rn[0]
B1=Rn-1[B0]
B2=Rn-2[B0B1]
B3=Rn-3[B0B1B2]
Bn=R1[B0B1B2B3...Bn-1]
Imin=[B0B1B2B3...Bn]
其中R1到Rn为第一处理层级到第n处理层级的暂存器,B0到Bn为布尔值0或1,递次地由对应的暂存器Rn到R1中的特定地址中获取,而特定地址是表示为布尔值B0到Bn排列而成的二进制值;Imin代表具有最小路径权值的状态元所对应的索引值,表示为布尔值B0到Bn排列而成的二进制值。
9.根据权利要求1所述的维特比解码器,其中该回溯单元进一步根据该状态矩阵进行对数相似率运算;其中该状态矩阵运算结构为四基底篱栅结构或二平方基底篱栅结构。
10.根据权利要求1所述的维特比解码器,进一步包含多个加法比较选择单元平行运作,用以根据输入序列进行自然递归运算以产生该状态矩阵,并将该状态矩阵储存在该路径权值存储器中,其中该自然递归运算使用对数事后机率算法、最大对数事后机率算法或者强化最大对数事后机率算法其中之一。
CN2009101377292A 2009-04-29 2009-04-29 维特比解码器 Active CN101527573B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101377292A CN101527573B (zh) 2009-04-29 2009-04-29 维特比解码器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101377292A CN101527573B (zh) 2009-04-29 2009-04-29 维特比解码器

Publications (2)

Publication Number Publication Date
CN101527573A CN101527573A (zh) 2009-09-09
CN101527573B true CN101527573B (zh) 2012-01-11

Family

ID=41095296

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101377292A Active CN101527573B (zh) 2009-04-29 2009-04-29 维特比解码器

Country Status (1)

Country Link
CN (1) CN101527573B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1132013A (zh) * 1994-08-08 1996-09-25 Ntt移动通信网株式会社 用于差分相移键控波的线性预测差分检测方法
CN1264868A (zh) * 1999-01-21 2000-08-30 日本电气株式会社 纠错电路和方法
CN1484385A (zh) * 2002-09-20 2004-03-24 联发科技股份有限公司 相加比较选择电路及使用该电路的维特比解码器
CN1610266A (zh) * 2003-10-21 2005-04-27 三星电子株式会社 简化的信道译码设备及其信道译码方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1132013A (zh) * 1994-08-08 1996-09-25 Ntt移动通信网株式会社 用于差分相移键控波的线性预测差分检测方法
CN1264868A (zh) * 1999-01-21 2000-08-30 日本电气株式会社 纠错电路和方法
CN1484385A (zh) * 2002-09-20 2004-03-24 联发科技股份有限公司 相加比较选择电路及使用该电路的维特比解码器
CN1610266A (zh) * 2003-10-21 2005-04-27 三星电子株式会社 简化的信道译码设备及其信道译码方法

Also Published As

Publication number Publication date
CN101527573A (zh) 2009-09-09

Similar Documents

Publication Publication Date Title
CN100512075C (zh) 数字信号处理器以及使用它的设备和系统
EP0590597B1 (en) Arithmetic apparatus
KR101175826B1 (ko) 소프트웨어 정의 무선 시스템에서 비터비 복호 장치 및 방법
CN100517984C (zh) 用于移动通信系统的维特比/涡轮联合译码器
CN104079382A (zh) 一种基于概率计算的极化码译码器和极化码译码方法
US20070266303A1 (en) Viterbi decoding apparatus and techniques
CN1190902C (zh) 用于维特比译码器的相加比较选择单元
US20050157823A1 (en) Technique for improving viterbi decoder performance
WO2005011129A1 (ja) ビタビ復号器
US8301990B2 (en) Programmable compute unit with internal register and bit FIFO for executing Viterbi code
US20070205921A1 (en) Four-Symbol Parallel Viterbi Decoder
CN101145790B (zh) 译码器、相加-比较-选择单元和其方法
KR20030036845A (ko) 트렐리스에 기초한 채널 부호화를 위한 복호기
US20060115023A1 (en) Apparatus and method for decoding and trace back of convolution codes using the viterbi decoding algorithm
US8694878B2 (en) Processor instructions to accelerate Viterbi decoding
CN101527573B (zh) 维特比解码器
CN103986477A (zh) 矢量viterbi译码指令及viterbi译码装置
US7661059B2 (en) High performance turbo and Viterbi channel decoding in digital signal processors
US9294134B2 (en) Viterbi decoding device and method for decoding a signal produced by a convolutional encoder
JP2010206570A (ja) 復号装置、復号方法
CN116073952B (zh) 一种基于MaPU架构的快速并行卷积编译码方法、系统、设备及介质
TWI383596B (zh) 維特比解碼器
Chandel et al. Viterbi decoder plain sailing design for TCM decoders
Wang et al. Parallel list decoding of convolutional codes: algorithm and implementation
US8583998B2 (en) System and method for Viterbi decoding using application specific extensions

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