相加比较选择电路及使用该电路的维特比解码器的制作方法

文档序号:7519848阅读:307来源:国知局
专利名称:相加比较选择电路及使用该电路的维特比解码器的制作方法
技术领域
本发明涉及相加比较选择电路,特别是利用加法器与比较器同时并行处理来提升处理速度的相加比较选择电路,藉以提升使用该相加比较选择电路的维特比(Viterbi)解码器的处理速度。
背景技术
部分响应最大可能性(Partial Response Maximum Likelihood,以下简称PRML)系统可较可靠地从光盘/数字多用视盘(Compact Disk/Digital VrsatileDisk,CD/DVD)上读取(retrieve)8至14位调制(Eight-to-Fifteen Modulation,EFM)信号。而维特比解码器则经常被使用于该PRML系统,藉以实现最大可能性检测。
图1(A)显示一般的维特比解码器的方块图。如该图所示,维特比解码器一般包含一分支测量值(branch metric)产生单元11、一相加比较选择(Add-Compare-Select,以下简称ACS)单元12、以及一存活路径存储器(Survivorpath memory)及解码单元(decoding unit)13。分支测量值产生单元11根据编码数据计算出每个分支所对应的测量值(metric),并输出给ACS单元12。该分支测量值产生单元11的计算方法一般是求出编码数据与该分支的预估数据之间的距离,例如平均平方间距(Mean-Square-Distance)。而ACS单元12则根据各分支测量值以及各状态测量值(state metric)的相加结果中,选择出最小的相加结果作为存活的状态测量值,并输出比较值作为决定位,此决定位送至存活路径存储器13用于选择所对应的存活路径。存活存储器及解码单元13则利用一存活存储器记录各状态的结果,并利用一解码单元(例如一多数表决电路(majority vote circuit))来选择出一数据作为解码数据。
图1(B)显示图1(A)的ACS单元中的ACS处理器的结构图,其中SM0(k-1)与SM3(k-1)分别为状态S0与状态S3的状态测量值(state metric),而BM0,0(k-1)与BM3,0(k-1)分别为状态S0与状态S3至状态S0的分支测量值(Branchmetric)。该图假设该ACS处理器是用来选择状态0与状态3的一状态值作为存活状态值。如该图所示,一般的ACS单元中的ACS处理器包含两个加法器15、15’、一比较器(C)16、以及一选择器(S)17。该ACS处理器利用加法器15将SM0(k-1)与BM0,0(k-1)相加产生第一候选值,并利用加法器15’将SM3(k-1)与BM3,0(k-1)相加产生第二候选值。接着,该ACS处理器利用比较器16与选择器17比较第一候选值与第二候选值,并选择较小的候选值输出至状态缓存器(未图标),并将比较值作为决定位输出至存活存储器及解码单元13。
图2(A)显示四个状态的格子图(Trellis diagram)的例子、图2(B)显示对应图2(A)格子图的维特比解码器中的ACS单元的方块图。由于图2(A)为四个状态的格子图,所以如图2(B)所示,ACS单元12具有四个ACS处理器121~124、以及四个状态缓存器125~128。ACS单元12的ACS处理器121~124除了将所产生的测量值传回状态缓存器125~128外,还将输出决定位至存活存储器及解码单元13。ACS处理器121接收状态缓存器125与127的状态测量值,并与分支测量值相加后,选择较小的相加结果作为存活测量值,且回存至状态缓存器125,同时将比较值(1或0)作为决定位输出。ACS处理器122接收状态缓存器125与127的状态测量值,并与分支测量值相加后,选择较小的相加结果作为存活测量值,且回存至状态缓存器126,同时将比较值(1或0)作为决定位输出。ACS处理器123与124处理方法亦相同。
图3显示图2(B)中的ACS处理器的电路。如该图所示,ACS处理器121包含两个加法器1211、一比较器1212、以及一多路复用器1213。加法器1211用来将分支测量值与状态测量值相加,而比较器1212用来比较两加法器1211的输出值。多路复用器1213则根据比较器1212的比较结果,从两加法器1211的输出值中选择一输出值作为新的状态测量值。同时比较器1212的比较结果作为决定位输出。由该图1(B)与图3可以清楚了解到,该ACS处理器的执行顺序是加法(Add)->比较(Compare)->选择(Select)。由于比较单元必须在加法完成后才能处理,所以加法器与比较器无法并行处理。
其次,例如在解码EFM信号的应用上,由于EFM信号具有游程长度限制(Run length limited,以下简称RLL)的特性,亦即EFM信号的RLL特性中,定义最短的游程长度(run length)为3个最小记录单位。所以,在针对EFM信号解码时,根据EFM信号的游程长度限制可得到一个简化的格子图(trellisdiagram),如图4(A)所示。亦即,该格子图有6个状态,分别为状态S0(000)、状态S1(001)、状态S2(011)、状态S3(100)、状态S4(110)、以及状态S5(111)。由于最短的游程长度为3T,所以不会有(010)与(101)的状态产生。而且,状态S1(001)、状态S2(011)、状态S3(100)、以及状态S4(110)只有一个分支(branch)。图4(B)显示对应图1(A)格子图的分支值示意图。维特比解码器从格子图中产生所有可能的输入序列(input sequences),并选择最有可能的结果作为解碼结果。根据图4(A)的格子图,只有状态S0与状态S5是接收两个输入值,所以状态S0与状态S5需要判断与选择其中一个输入序列。
图5显示一般应用于图4(A)格子图的维特比解码器的部分结构图。如该图所示,该维特比解码器包含一ACS单元52、以及存活存储器及解码单元13。由于格子图已简化,所以ACS单元52仅包含两个ACS处理器521、522、两个加法器、以及6个缓存器525~530。ACS处理器521接收状态S0与状态S3的状态测量值,并与分支测量值相加,经由比较选择电路CS选择较小的相加结果回存至状态S0的缓存器525,同时将比较选择电路CS的比较值作为决定位输出至存活存储器及解码单元13的路径0的多路复用器。ACS处理器522接收状态S2与状态S5的状态测量值,并与分支测量值相加,经由比较选择电路CS选择较小的相加结果回存至状态S5的缓存器530,同时将比较选择电路CS的比较值作为决定位输出至存活存储器及解码单元13的路径5的多路复用器。由于格子图已简化,存活存储器及解码单元13只有在路径0与路径5配置多路复用器,其余的路径1~4只需将数据直接传至另一路径存储器即可。路径存储器的长度可根据不同的格子图来设计。存活存储器及解码单元13利用决定电路131,可为多数表决电路,从6个分支路径所输出的数据中,表决出多数的数据作为解码数据输出。
一般而言,现有技术的ACS单元为维特比解码器在处理速度上的瓶颈,且ACS单元的ACS处理器无法直接以管线型式(pipelining)或并行处理(parallel processing)的方式来提升处理速度。

发明内容
有鉴于上述问题,本发明的目的是提出一种用于维特比解码器的相加比较选择电路及相应的维特比解码器,用于改变ACS处理器的处理次序,使该ACS处理器的加法单元与比较单元可直接并行处理,藉以提升维特比解码器的处理速度。
为达到上述目的,按照本发明的一个方面,提供了一种用于维特比解码器的相加比较选择电路,用来接收分支测量值并藉由比较、相加与选择单元产生状态测量值,并输出决定位,该相加比较选择电路包含复数个状态缓存器,用来存储复数个状态测量值;以及复数个相加比较选择处理器,接收所述分支测量值及存储在状态缓存器中的状态测量值,并根据不同的分支测量值与状态测量值的相加结果,产生新的状态测量值后存储至所述状态缓存器,同时输出决定位;所述相加比较选择处理器包含一第一加法器,接收所述缓存器中的第一状态测量值以及所述分支测量值,相加后产生一第一候选测量值;一第二加法器,接收所述缓存器中的第二状态测量值以及所述分支测量值,相加后产生一第二候选测量值;一比较器,比较所述缓存器中的第一状态测量值以及第二状态测量值,并输出一比较信号作为所述决定位;以及一第一多路复用器,根据所述比较信号选择所述第一候选测量值或所述第二候选测量值作为所述新的状态测量值。
按照本发明的另一个方面,提供了一种维特比解码器,该解码器包含分支测量值产生单元、相加比较选择单元、以及存活存储器及解码单元所构成,其中相加比较选择单元包含复数个状态缓存器,用来存储复数个状态测量值;以及复数个相加比较选择处理器,接收分支测量值与存储在状态缓存器的状态测量值,并根据不同的分支测量值与状态测量值的相加结果,产生新的状态测量值后存储至状态缓存器,并输出决定位,其中,该相加比较选择处理器包含一第一加法器,接收缓存器的第一状态测量值以及分支测量值,相加后产生一第一候选测量值;一第二加法器,接收缓存器的第二状态测量值以及分支测量值,相加后产生一第二候选测量值;一比较器,比较缓存器的第一状态测量值以及第二状态测量值,并输出一比较信号作为决定位;以及一多路复用器,根据比较信号选择第一候选测量值或第二候选测量值作为所述新的状态测量值。
上面所述的相加比较选择处理器还包含一第三加法器,接收缓存器的第一状态测量值以及分支测量值,相加后产生一第三候选测量值;一第四加法器,接收缓存器的第二状态测量值以及分支测量值,相加后产生一第四候选测量值;一第二多路复用器,根据比较器的比较信号选择第三候选测量值或第四候选测量值作为所述新的状态测量值。
由于相加比较选择处理器的加法器与比较器并行处理,所以可提升维特比解码器的处理速度。


图1(A)显示一般维特比解码器的方块图。
图1(B)显示图1(A)的ACS单元中的ACS处理器的结构图。
图2(A)显示四个状态的格子图的例子。
图2(B)显示对应图2(A)格子图的维特比解码器中的ACS单元的方块图。
图3显示图2(B)中的ACS处理器的电路。
图4(A)显示根据EFM信号的游程长度限制所得到的简化的格子图。
图5显示一般应用于图4(A)格子图的维特比解码器的部分结构图。
图6显示运算顺序重新调整的ACS处理器的结构图。
图7显示本发明ACS处理器的电路,其中(A)为使用一个配置于多路复用器的后的加法器、(B)为使用两个配置于多路复用器的前的加法器。
图8显示本发明维特比解码器中ACS单元的方块图。
图9显示本发明维特比解码器中ACS单元另一实施例的方块图。
图10显示图9的PACS单元的电路。
图11显示本发明根据图4(A)的格子图所产生的ACS单元的数据流向图。
附图中的各个符号说明如下60、70、75 ACS处理器62、85、92 状态缓存器63、CS 比较选择单元 64、73、913加法器71、911、C 比较器 72、912 多路复用器80、90 ACS单元 81、91 PACSS 选择器
具体实施例方式
以下参考图式详细说明本发明维特比解码器。
首先,如图1(B)所示,现有技术的维特比解码器的ACS处理器的结构是先进行加法处理后,再利用比较选择单元选出其中一个数据并输出至缓存器,亦即运算顺序为相加->比较->选择。所以,该结构无法直接将相加器与比较器的动作并行处理。有鉴于此,本发明为了提升ACS处理器的处理速度,特别将ACS处理器的运算顺序重新调整。
图6显示运算顺序重新调整的ACS处理器的结构图。如该图所示,ACS处理器60将状态测量值(state metric)缓存器62、62的位置移至比较选择单元(CS)63之间,移动后的结果仍然维持与图1(B)电路相同的功能。所以,该ACS处理器60的动作是先比较选择缓存器62、62的值后,再进行加法处理,亦即运算顺序为比较->选择->相加,不同于现有技术的作法相加->比较->选择的运算顺序。
图7显示本发明ACS处理器的电路,其中(A)为使用一个配置于多路复用器的后的加法器、(B)为使用两个配置于多路复用器的前的加法器。如图7(A)所示,该ACS处理器的电路70先利用比较器71比较两个状态测量值a、b的大小并产生比较值,并利用多路复用器72根据该比较值选择较小的状态测量值作为存活状态测量值。状态测量值a、b分别存储在不同的状态缓存器。接着,利用加法器73将选择的存活状态测量值与分支测量值c相加后成为新的状态测量值,并回存至状态缓存器。另外,比较器71的比较值作为决定位输出。因此,该ACS处理器的电路70的输出值O为O=min(a、b)+c …(1)将式(1)的分支测量值c带入min函数内,则式(1)可转换成为式(2)O=min(a+c、b+c) …(2)图7(B)即根据式(2)所产生的ACS处理器的电路。如该图所示,由于该ACS处理器的电路75将加法器73移到多路复用器72的前,因此加法器73与比较器71可以并行处理。所以,根据该ACS处理器的电路75,其处理速度为(加法器的延迟时间+多路复用器的延迟时间),或(比较器的延迟时间+多路复用器的延迟时间),比现有技术的(加法器的延迟时间+比较器的延迟时间+多路复用器的延迟时间)的延迟时间要来的快。一般而言,加法器的延迟时间大约等于比较器的延迟时间,因此当状态测量值的位长度够大,以致可以忽略多路复用器的延迟时间时,本发明ACS处理器的电路75的处理速度约可提升一倍。
图8显示本发明维特比解码器中ACS单元的方块图。图8的维特比解码器以图2(A)的四个状态的格子图作为例子,所以ACS单元80具有4个并行处理的PACS(parallel add-compare-select)单元75、以及8个状态缓存器85,亦即相当于每个状态分支需要2个状态缓存器85与一PACS单元75。ACS单元80的每个PACS单元81所输出的状态测量值需输出到两个状态缓存器85。ACS单元80的PACS单元81的电路如图7(B)的ACS处理器的电路75所示,其加法器73与比较器71可以并行处理,并输出新的状态测量值回存至状态缓存器85,并输出决定位至存活存储器及解码单元。
图9显示本发明维特比解码器中ACS单元另一实施例的方块图。该实施例中,ACS单元90亦包含4个并行处理的PACS单元91、以及8个状态缓存器92。该ACS单元90与ACS单元80的不同点为PACS单元91输出两个状态测量值,分别输出至不同的状态缓存器92。图10显示图9的PACS单元的电路。如该图所示,该PACS单元91包含一比较器911、两个多路复用器912、以及四个加法器913,亦即该PACS单元91比PACS单元75多一个多路复用器912与两个加法器913。同时,该PACS单元91可接收两个分支测量值,即第一分支测量值与第二分支测量值,在使用上更有弹性。所以,该PACS单元91可直接输出两个状态测量值至不同的状态缓存器92。
图11显示根据图4(A)的格子图所产生的ACS单元的数据流向图,其中(A)为现有技术的ACS单元的数据流向图,而图(B)为本发明ACS单元的数据流向图。图11中粗线的部分为主要数据流向。由该图可清楚了解到,图11(A)中的现有技术的ACS单元,其数据流向在ACS处理器时必须先经过加法器、比较器后,才经由选择器输出数据。而图11(B)中的本发明ACS单元,其数据流向在ACS处理器时,经过加法器后即藉由选择器输出数据。在这个实施例中,本发明多了20%~30%的硬件成本,但可提升大约一倍的速度。因此,本发明ACS单元可有效缩短ACS处理器的数据处理时间,进而提升ACS单元的数据处理速度。
以上虽以实施例说明本发明,但并不因此限定本发明的范围,只要不脱离本发明的要旨,本领域技术人员可对其进行各种变形或变更。
权利要求
1.一种用于维特比解码器的相加比较选择电路,用来接收分支测量值并藉由比较、相加与选择单元产生状态测量值,并输出决定位,该相加比较选择电路包含复数个状态缓存器,用来存储复数个状态测量值;以及复数个相加比较选择处理器,接收所述分支测量值及存储在状态缓存器中的状态测量值,并根据不同的分支测量值与状态测量值的相加结果,产生新的状态测量值后存储至所述状态缓存器,同时输出决定位;所述相加比较选择处理器包含一第一加法器,接收所述缓存器中的第一状态测量值以及所述分支测量值,相加后产生一第一候选测量值;一第二加法器,接收所述缓存器中的第二状态测量值以及所述分支测量值,相加后产生一第二候选测量值;一比较器,比较所述缓存器中的第一状态测量值以及第二状态测量值,并输出一比较信号作为所述决定位;以及一第一多路复用器,根据所述比较信号选择所述第一候选测量值或所述第二候选测量值作为所述新的状态测量值。
2.如权利要求1所述的相加比较选择电路,其中所述第一多路复用器所输出的状态测量值存储于至少一个所述状态缓存器内。
3.如权利要求2所述的相加比较选择电路,其中所述第一多路复用器所输出的状态测量值同时存储于两个所述状态缓存器内。
4.如权利要求1所述的相加比较选择电路,其中所述相加比较选择处理器还包含一第三加法器,接收所述缓存器的第一状态测量值以及所述分支测量值,相加后产生一第三候选测量值;一第四加法器,接收所述缓存器的第二状态测量值以及所述分支测量值,相加后产生一第四候选测量值;一第二多路复用器,根据所述比较器的比较信号选择所述第三候选测量值或所述第四候选测量值作为所述新的状态测量值。
5.如权利要求4所述的相加比较选择电路,其中所述第一多路复用器所输出的状态测量值存储于一个所述状态缓存器内。
6.如权利要求5所述的相加比较选择电路,其中所述第二多路复用器所输出的状态测量值存储于另一个所述状态缓存器内。
7.如权利要求4所述的相加比较选择电路,其中所述相加比较选择处理器的加法器与比较器的动作同时进行。
8.一种维特比解码器,由分支测量值产生单元、相加比较选择单元、以及存活存储器及解码单元所构成,其特征为,所述相加比较选择单元包含复数个状态缓存器,用来存储复数个状态测量值;以及复数个相加比较选择处理器,接收所述分支测量值和存储在所述缓存器中的状态测量值,并根据不同的分支测量值与状态测量值的相加结果,产生新的状态测量值后存储至所述状态缓存器,同时输出决定位;所述相加比较选择处理器包含一第一加法器,接收所述缓存器中的第一状态测量值以及所述分支测量值,相加后产生一第一候选测量值;一第二加法器,接收所述缓存器中的第二状态测量值以及所述分支测量值,相加后产生一第二候选测量值;一比较器,比较所述缓存器中的第一状态测量值以及第二状态测量值,并输出一比较信号作为所述决定位;以及一第一多路复用器,根据所述比较信号选择所述第一候选测量值或所述第二候选测量值作为所述新的状态测量值。
9.如权利要求8所述的相加比较选择电路,其中所述第一多路复用器所输出的状态测量值存储于至少一个所述状态缓存器内。
10.如权利要求9所述的相加比较选择电路,其中所述第一多路复用器所输出的状态测量值同时存储于两个所述状态缓存器内。
11.如权利要求8所述的相加比较选择电路,其中所述相加比较选择处理器还包含一第三加法器,接收所述缓存器中的第一状态测量值以及所述分支测量值,相加后产生一第三候选测量值;一第四加法器,接收所述缓存器中的第二状态测量值以及所述分支测量值,相加后产生一第四候选测量值;一第二多路复用器,根据所述比较器的比较信号选择所述第三候选测量值或所述第四候选测量值作为所述新的状态测量值。
12.如权利要求11所述的相加比较选择电路,其中所述第一多路复用器所输出的状态测量值存储于一个所述状态缓存器内。
13.如权利要求12所述的相加比较选择电路,其中所述第二多路复用器所输出的状态测量值存储于另一个所述状态缓存器内。
14.如权利要求11所述的相加比较选择电路,其中所述相加比较选择处理器的加法器与比较器的动作同时进行。
全文摘要
一种相加比较选择电路及使用该电路的维特比解码器。该解码器包括分支测量值产生单元、相加比较选择单元、存活路径存储器及解码单元。相加比较选择单元包含复数个存储状态测量值的状态缓存器;复数个相加比较选择处理器,根据分支测量值与状态测量值的相加结果产生新的状态测量值,输出决定位。该相加比较选择处理器包含第一和第二加法器,分别接收缓存器的第一和第二状态测量值及分支测量值,相加后产生第一和第二候选测量值;比较器,比较第一和第二状态测量值,输出比较信号作为决定位;多路复用器,根据比较信号选择第一或第二候选测量值作为新的状态测量值。由于加法器与比较器并行处理,所以可提升维特比解码器的处理速度。
文档编号H03M13/00GK1484385SQ0214276
公开日2004年3月24日 申请日期2002年9月20日 优先权日2002年9月20日
发明者陈宏庆, 沈文仁 申请人:联发科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1