CN1208287A - 维特比译码器 - Google Patents
维特比译码器 Download PDFInfo
- Publication number
- CN1208287A CN1208287A CN98118015A CN98118015A CN1208287A CN 1208287 A CN1208287 A CN 1208287A CN 98118015 A CN98118015 A CN 98118015A CN 98118015 A CN98118015 A CN 98118015A CN 1208287 A CN1208287 A CN 1208287A
- Authority
- CN
- China
- Prior art keywords
- state
- memory
- acs
- smm
- status quantitavie
- 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.)
- Granted
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/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
- H03M13/6505—Memory efficient implementations
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3961—Arrangements of methods for branch or transition metric calculation
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4107—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing add, compare, select [ACS] operations
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
在为提高译码速度而使用多个加-比-选(ACS)部件的维特比译码器中,公开一种用于提供和存储状态量度的装置,该状态量度用于ACS操作。维特比译码器中的状态量度存储器使用双端口存储器,在单个存储器包括:一个存储簇,用于读和写由ACS部件产生的N个状态量度中的前一半状态量度;两个存储簇,用于每当输入一个码字时交替地读和写后一半的状态量度。因此,与传统装置相比,大大地减少了用于存储状态量度的存储容量。
Description
本发明涉及一种维特比译码器(Viterbi decoder),特别涉及一种装置的结构,在为提高译码速度而使用多个ACS(add-compare select,加-比-选)部件的维特比译码器中,该装置用于提供和存储在加-比-选(ACS)操作期间使用的状态量度(state metric)。
维特比译码器是一种通过使用最大似然法对用卷积码进行编码的码字进行译码的装置。维特比译码器将预定编码器的编码状态和接收码字的编码状态进行比较,选择最接近的编码路径,并对从所选路径传送的信息进行译码。
图1是传统维特比译码器的方框图。图1所示的维特比译码器包括:支路量度计算器10、ACS部件12、状态量度存储器14、路径存储器16、和路径追迹逻辑部件18。
当图1所示的装置收到接收码字时,支路量度计算器10计算接收码字和可从编码器输出的预定码字(图中未示出)的相似性(汉明距离),并输出支路量度BM。ACS部件12接收支路量度计算器10提供的支路量度BM和状态量度存储器14中存储的先前(旧)状态量度OSM作为输入,执行加-比操作以选择幸存路径,并计算幸存路径的当前(新)状态量度NSM,该幸存路径显示了与接收码字的编码序列最接近的编码序列。选择出的幸存路径被存储在路径存储器16中,计算出的当前状态量度NSM被存储在状态量度存储器14中。路径追迹逻辑部件18参照存储在路径存储器16中的幸存路径,并根据接收码字的编码路径输出译码数据。
在维特比译码中,把接收码字中的每一个单个码字可能存在的状态数N定义为2K-1,其中K定义为约束长度。图1中的ACS部件12计算幸存路径的状态量度,当它有状态数个,即N个时,图1所示的装置就保持最快的处理速度。其原因是,对于可与单个码字对应而存在的N个状态,N个ACS部件各自同时执行ACS操作。
因此,由译码速度看来,最好是对含有N个状态的码字使用N个ACS部件。可是,当状态数(N)变得较大时,制造一个具有如此大容量的ACS部件就变得很困难。于是,当状态数N变得较大时,就必须适当地选择ACS部件的数目。
因为在一般的码分多址(CDMA)系统中,使用约束长度K为9的卷积码,所以状态数就是2K-1(=256)。如果使用256个ACS部件实现一个维特比译码器,那么译码速度较快但需要较多的硬件。同时,当维特比译码器中使用单个ACS部件时,需要较少的硬件但译码速度较慢。
本申请人在1990年12月17日提交的、题目为“State metric storagedevice(状态量度存储装置)”的韩国专利申请No.90-20808中公开了一种使用单个ACS部件的维特比译码器。在使用单个ACS部件的情况下该装置可以执行状态量度的快速输入和输出处理,但它不能应用于使用多个ACS部件的情况。
同时,本申请人在1996年3月18日提交的、题目为“ACS device ofViterbi decoder(维特比译码器的ACS装置)”的韩国专利申请NO.96-7208中公开了一种使用多个ACS部件提高译码速度的技术。该装置使用4个ACS部件以便提高译码速度。然而,由于该装置中含有典型的状态量度存储器,即,由单个存储器装置组成的状态量度存储器,故状态量度的输入和输出速度稍微慢一些。
本申请人在1997年3月14日提交的、题目为“State metric storingmethod and apparatus for Viterbi decoder(维特比译码器的状态量度存储方法及装置)”的韩国专利申请No.97-8603中公开了一种解决上述问题的技术,专利填写日期为。该装置使用两个状态量度存储部件,即,由两个存储器装置组成的状态量度存储部件,因而有效地提供和存储用于加-比-选操作中的状态量度。然而,由于需要2N的存储容量,其中N是状态数,故当N变得较大时,状态量度存储部件的存储容量就变得较大,难以负担。
为解决上述问题,本发明的目的就是提供一种维特比译码器,它使用多个ACS部件以提高译码速度,并能用小容量提供和存储状态量度。
相应地,为实现上述目的,本发明提供了一种维特比译码器,包括:状态量度存储部分,该部分含有一个单个的存储簇(memory bank),用以读和写前一半的状态量度;以及两个存储簇,用以每当施加一个码字时交替地读和写后一半的状态量度,其中该状态量度存储部分由单个双端口存储器组成,它被所有的加-比选部件所使用。
这样,既然不使用存储前一半状态量度的存储器,那么与传统装置相比,用于存储状态量度的存储容量就大为减少。
通过参照附图对优选实施例进行详细描述,本发明的上述目的和优点将会变得更加明显,其中:
图1是一种传统维特比译码器的方框图;
图2是另一种传统维特比译码器的方框图;
图3A和3B是说明当约束长度为9时图1和图2所示装置操作的网格图;
图4用以说明图2中加比-选部分的操作;
图5是显示图2中加-比-选部分的详细方框图;
图6显示图2中加比-选部分的操作;
图7显示图2中状态量度存储部分的结构;
图8是本发明的维特比译码器的方框图;
图9是显示图8中状态量度存储部分的详细方框图。
下面将参照附图描述本发明的结构和效果。
示于图2中的、公开于韩国专利申请97-8603中的另一常规维特比译码器包括:支路量度计算器20、由4个ACS部件22a-22d组成的ACS部件22、含有两个存储器28a和28b的状态量度存储器28、路径存储器26、和路径追迹逻辑部件24。
ACS部件22包括4个ACS部件22a-22d。ACS部件22a-22d中的每一个都对N/4个状态执行ACS操作。因为当编码效率(code ratio)为1/3且约束长度为9时状态数为256,所以ACS部件22a-22d中的每一个执行64(=256/4)次ACS操作。就是说,ACS部件22在64个周期的每一个周期内都参照4个先前状态量度和8个支路量度计算4个当前状态量度。
图3A和3B是说明图1和图2所示装置操作的网格图。我们知道,在卷积码编码器的稳定状态中,每当输入一个信息元(information bit)时,可能被转移的状态的个数被限制为两个,且被转移到的状态是一定的。例如,就图1和2所示的装置说来,第0状态只可能被转移到第0状态或第128状态,第2状态只可能被转移到第1状态或第129状态。
在图3A和3B中所示的被虚线分开的每一列中,左边的数字表示先前状态,右边的数字表示当前状态。连接状态的实线表示先前状态与当前状态之间的支路量度。例如,连接先前第0状态与当前第0状态的实线表示运两个状态之间的支路量度。
在图3A的左上部分中,把先前第0状态的状态量度和先前第0状态与当前第0状态之间的支路量度相加,就可获得一个数值,把先前第1状态的状态量度和先前第1状态与当前第0状态之间的支路量度相加,又可获得一个数值,将两个数值比较,取其中较小的作为当前第0状态的状态量度。
同样,把先前第0状态的状态量度和先前第0状态与当前第128状态之间的支路量度相加,就可获得一个数值,把先前第1状态的状态量度和先前第1状态与当前第128状态之间的支路量度相加,又可获得一个数值,将两个数值比较,取其中较小的作为当前第128状态的状态量度。
如果输入一个单个码字,那么在64个周期中的第一个周期内,ACS部件22就参照先前第0至第3状态的状态量度和其8个支路量度计算当前第0、第128、第1和第129状态的状态量度。
ACS部件22a参照先前第0和第1状态的状态量度及其2个支路量度计算当前第0状态的状态量度。
ACS部件22b参照先前第0和第1状态的状态量度及其2个支路量度计算当前第128状态的状态量度。
ACS部件22c参照先前第2和第3状态的状态量度及其2个支路量度计算当前第1状态的状态量度。
ACS部件22d参照先前第2和第3状态的状态量度及其2个支路量度计算当前第129状态的状态量度。
然后,在第二个周期内,ACS部件22参照先前第4、第5、第6和第7状态的状态量度及其8个支路量度计算当前第2、第130、第3和第131状态的状态量度。
ACS部件22a参照先前第4和第5状态的状态量度及其2个支路量度计算当前第2状态的状态量度。
ACS部件22b参照先前第4和第5状态的状态量度及其2个支路量度计算当前第130状态的状态量度。
ACS部件22c参照先前第6和第7状态的状态量度及其2个支路量度计算当前第3状态的状态量度。
ACS部件22d参照先前第6和第7状态的状态量度及其2个支路量度计算当前第131状态的状态量度。
ACS部件22重复上述操作直至它参照先前第252、第253、第254和第255状态的状态量度及其8个支路量度计算出当前第126、第254、第127和第255状态的状态量度。
这样的操作可一般化地描述为,在每一个周期内,ACS部件22参照先前第2i、第(2i+1)、第2(i+1)和第{2(i+1)+1}状态的状态量度及其8个支路量度计算当前第i、第(N/2+i)、第(i+1)和第(N/2+i+1)状态的状态量度。
这里,BM0是从先前第2i状态到当前第i状态的支路量度。
BM1是从先前第2i状态到当前第(N/2+i)状态的支路量度。
BM2是从先前第(2i+1)状态到当前第i状态的支路量度。
BM3是从先前第(2i+1)状态到当前第(N/2+i)状态的支路量度。
BM4是从先前第2(i+1)状态到当前第(i+1)状态的支路量度。
BM5是从先前第2(i+1)状态到当前第(N/2+i+1)状态的支路量度。
BM6是从先前第{2(i+1)+1}状态到当前第(i+1)状态的支路量度。
BM7是从先前第{2(i+1)+1}状态到当前第(N/2+i+1)状态的支路量度。
图4是说明图2中加-比选部分操作的方案图。参照图4可以看出,如果输入一个单个码字,那么在64个周期中的每一个周期内,ACS部件22参照先前第2i、第(2i+1)、第2(i+1)和第{2(i+1)+1}状态的状态量度及其支路量度BM0-BM7计算当前第i、第(N/2+i)、第(i+1)和第(N/2+i+1)状态的状态量度。
ACS部件22a参照先前第2i和第(2i+1)状态的状态量度及其2个支路量度BM0和BM2计算当前第i状态的状态量度。
ACS部件22b参照先前第2i和第(2i+1)状态的状态量度及其2个支路量度BM1和BM3计算当前第(N/2+i)状态的状态量度。
ACS部件22c参照先前第2(i+1)和第{2(i+1)+1}状态的状态量度及其2个支路量度BM4和BM6计算当前第(i+1)状态的状态量度。
ACS部件22d参照先前第2(i+1)和第{2(i+1)+1}状态的状态量度及其2个支路量度BM5和BM7计算当前第(N/2+i+1)状态的状态量度。
图5是详细显示图2中加-比-选部分的方框图。图5所示的装置包括两个加法器50和52、比较器54及选择器56。
加法器50把施加到BMu端口的支路量度和施加到SMu端口的先前状态量度相加,并输出信号“A”。同时,加法器52把施加到BM1端口的支路量度和施加到SM1端口的先前状态量度相加,并输出信号“B”。比较器54将来自加法器50的信号“A”和来自加法器52的信号“B”进行比较,如果A≤B则输出低电平路径选择信号PS,如果A>B则输出高电平路径选择信号PS。
选择器56根据比较器54输出的路径选择信号PS,在来自加法器50的信号“A”和来自加法器52的信号“B”中选择其一,并输出当前状态量度NSM。
ACS部件22a-22d中的每一个部件对一个输入码字执行64次操作。第一个ACS部件22a和第二个ACS部件22b执行有关偶数当前状态量度的操作,第三个ACS部件22c和第四个ACS部件22d执行有关奇数当前状态量度的操作。
具体地说,第一个ACS部件22a计算偶数当前状态量度中最初第0、第2、第4、…、第124和第126状态的状态量度。第二个ACS部件22b计算偶数当前状态量度中最后第128、第130、第132、…、第252和第254状态的状态量度。第三个ACS部件22c计算奇数当前状态量度中最初第1、第3、第5、…、第125和第127状态的状态量度。第四个ACS部件22d计算奇数当前状态量度中最后第129、第131、第133、…、第253和第255状态的状态量度。
图6显示了输入到ACS部件22的输入先前状态量度OSM和支路量度BM与从ACS部件22输出的当前状态量度NSM之间的关系。输入到ACS部件22a-22d中每一个部件的先前状态量度和支路量度及从那里的输出如下。
从图6中可以看出,先前第0、第4、第8、…、第120、第124、第128、第132、第136、…、第248和第252状态的先前状态量度按操作周期的进行顺序被施加到ACS部件22a的SMu端口。先前第1、第5、第9、…、第121、第125、第129、第133、第137、…、第249和第253状态的先前状态量度被施加到ACS部件22a的SM1端口。并且,在第0、第4、第8、…、第248和第252状态被转移到第0、第2、第4、…、第124和第126状态时分别向BMu端口施加支路量度。在第1、第5、第9、…、第249和第253状态被转移到第0、第2、第4、…、第124和第126状态时分别向BM1端口施加支路量度。
先前第0、第4、第8、…、第120、第124、第128、第132、第136、…、第248和第252状态的先前状态量度按操作周期的进行顺序被施加到ACS部件22b的SMu端口。先前第1、第5、第9、…、第121、第125、第129、第133、第137、…、第249和第253状态的先前状态量度被施加到ACS部件22b的SM1端口。并且,在第0、第4、第8、…、第248和第252状态被转移到第128、第130、第132、…、第252和第254状态时分别向BMu端口施加支路量度。在第1、第5、第9、…、第249和第253状态被转移到第128、第130、第132、…、第252和第254状态时分别向BM1端口施加支路量度。
先前第2、第6、第10、…、第122、第126、第130、第134、第138、…、第250和第254状态的先前状态量度按操作周期的进行顺序被施加到ACS部件22c的SMu端口。先前第3、第7、第11、…、第251和第255状态的先前状态量度被施加到ACS部件22c的SM1端口。并且,在第2、第6、第10、…、第250和第254状态被转移到第1、第3、第5、…、第125和第127状态时分别向BMu端口施加支路量度。在第3、第7、第11、…、第251和第255状态被转移到第1、第3、第5、…、第125和第127状态时分别向BM1端口施加支路量度。
先前第2、第6、第10、…、第122、第126、第130、第134、第138、…、第250和第254状态的先前状态量度按操作周期的进行顺序被施加到ACS部件22d的SMu端口。先前第3、第7、第11、…、第123、第127、第131、第135、第139、…、第251和第255状态的先前状态量度被施加到ACS部件22d的SM1端口。并且,在第2、第6、第10、…、第250和第254状态被转移到第129、第131、第133、…、第253和第255状态时分别向BMu端口施加支路量度。在第3、第7、第11、…、第251和第255状态被转移到第129、第131、第133、…、第253和第255状态时分别向BM1端口施加支路量度。
ACS部件22a按操作周期的进行顺序分别输出第0、第2、第4、第6、…、第124和第126状态的当前状态量度。ACS部件22b分别输出第128、第130、第132、第134、…、第252和第254状态的当前状态量度。ACS部件22c分别输出第1、第3、第5、第7、…、第125和第127状态的当前状态量度。ACS部件22d分别输出第129、第131、第133、第135、…、第253和第255状态的当前状态量度。
为了使ACS部件22正常地操作,在每一个周期都必须提供指定的先前状态量度。这由图2中的状态量度存储器28来完成。图2中的状态量度存储器28包括两个存储器28a和28b、多路复用器28c及控制信号和地址发生器28d。
每当输入一个单个码字时,这两个存储器28a和28b就交替地重复读/写操作。具体说就是,如果输入一个单个码字,那么存储在存储器28a中的状态量度就被读出且读出的结果作为先前状态量度施加到ACS部件22。ACS部件22新产生的当前状态量度被存储到另一存储器28b中。
当输入下一个码字时,存储在存储器28b中的状态量度就被读出且读出的结果作为先前状态量度施加到ACS部件22。ACS部件22新产生的当前状态量度被存储到另一存储器28a中。
如上所述,因为每当输入一个码字时两个存储器交替地执行读/写操作,所以读和写的操作能够被同时执行。这样,译码操作就能够快速而有效地进行。
首先,将描述存储器28a和28b的读操作。如图7所示,存储器28a和28b包括8个存储簇SMM_A-SMM_H。存储簇SMM_A存储第0、第4、第8、…、第120和第124状态的状态量度。存储簇SMM_B存储第1、第5、第9、…、第121和第125状态的状态量度。存储簇SMM_C存储第128、第132、第136、…、第248和第252状态的状态量度。存储簇SMM_D存储第129、第133、第137、…、第249和第253状态的状态量度。存储簇SMM_E存储第2、第6、第10、…、第122和第126状态的状态量度。存储簇SMM_F存储第3、第7、第11、…、第123和第127状态的状态量度。存储簇SMM_G存储第130、第134、第138、…、第250和第254状态的状态量度。存储簇SMM_H存储第131、第135、第139、…、第251和第255状态的状态量度。
在64个周期的前32个周期期间,存储在存储簇SMM_A和SMM_B中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_E和SMM_F中的状态量度被施加到ACS部件22c和22d 。
在后32个周期中,存储在存储簇SMM_C和SMM_D中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_G和SMM_H中的状态量度被施加到ACS部件22c和22d。
控制信号和地址发生器28d向各ACS部件施加读地址,以便在前32个周期期间,存储在存储簇SMM_A和SMM_B中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_E和SMM_F中的状态量度被施加到ACS部件22c和22d。
然后,控制信号和地址发生器28d向各ACS部件施加读地址,以便在后32个周期期间,存储在存储簇SMM_C和SMM_D中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_G和SMM_H中的状态量度被施加到ACS部件22c和22d。
控制信号和地址发生器28d向多路复用器28c施加一个控制信号,以便每当输入一个码字时,从其中一个存储器中读出的状态量度被施加到ACS部件22。
接下来,将描述存储器的写操作。从图6中可以看出,ACS部件22a按第0、第2、第4、第6、…、第124和第126状态的顺序执行输出操作,并按SMM_A、SMM_E、SMM_A、SMM_E、…的顺序重复该操作。ACS部件22b按第128、第130、第132、第134、…、第252和第254状态的顺序执行输出操作,并按SMM_C、SMM_G、SMM_C、SMM_G、…的顺序重复该操作。ACS部件22c按第1、第3、第5、第7、…、第125和第127状态的顺序执行输出操作,并按SMM_B、SMM_F、SMM_B、SMM_F、…的顺序重复该操作。ACS部件22d按第129、第131、第133、第135、…、第253和第255状态的顺序执行输出操作,并按SMM_D、SMM_H、SMM_D、SMM_H、…的顺序重复该操作。
控制信号和地址发生器28d产生地址信号,以便在奇数周期期间,新的状态量度被存储到存储簇SMM_A、SMM_C、SMM_B和SMM_D中,在偶数周期期间,新的状态量度被存储到存储簇SMM_E、SMM_G、SMM_F和SMM_H中。
在图2的装置中,将先前状态量度和新产生的当前状态量度存储在各存储器中,并在每当输入一个码字时交替执行读和写的操作,用这种方法可以提高译码速度。但是,过多的存储容量被消耗于存储状态量度。而且,因为状态量度存储器的存储容量达到了状态数N的两倍,所以当状态数变得较大时运个问题就更突出了。
图8是显示一种维特比译码器的方框图,该译码器含有一个本发明的状态量度存储器。在图8的装置中,与图2中相同的部分分配相同的标号,这部分将不再做详细描述。图9中所示的状态量度存储器38的最突出的特点就是使用双端口存储器以减少存储容量。我们知道,双端口存储器能够在单个时钟脉冲中对相同的存储单元执行读和写操作,运一点不同于传统RAM。就是说,指定存储单元的数据在时钟上升沿被读出并通过读数据总线输出,加载于写数据总线上的数据在时钟下降沿被写入指定存储单元。如上所述,因为能够在同一存储单元中执行读和写操作,所以就能够减少状态量度存储器的存储容量。
然而,如果不加修改地使用图7中所示的存储簇结构,就不能执行正常的读和写操作。其原因如下:如图3A和3B所示,第128-第191状态的状态量度产生于64个周期的前32个周期。当产生的状态量度被记录到存储第128-191状态的状态量度的存储单元时,它们就不能被用于后32个周期。具体说就是,因为前32个周期中产生的状态量度是新状态的状态量度,而ACS部件22需要的状态量度是先前状态的状态量度,所以,当前32个周期中产生的第128-191状态的状态量度被记录到存储单元时,同单元内的先前第128-191状态的状态量度就不能被用于后32个周期。这样就产生了问题。
在本发明中,为解决此问题,使用了双端口存储器,其内部安装了一个用于前一半状态的存储簇和两个用于后一半状态的存储簇。用于前一半状态的存储簇能够同时执行读和写操作,用于后一半状态的两个存储簇能够交替执行读和写操作。就是说,在一个存储簇执行读操作的期间,另一个存储簇执行写操作,每当输入一个码字时,就交替执行上述操作。
图9是显示图8中状态量度存储器的详细方框图。在图9的装置中,标号38a表示ACS计数器,标号38b表示写地址发生器,标号38c表示读地址发生器,标号38d表示双端口存储器,标号38e表示写交叉部件(write crossunit),标号38f表示读交叉部件(read cross unit)。
ACS计数器38a按64个周期的顺序依次地执行计数操作。写地址发生器38b根据ACS计数器38a的计数结果产生存储器38d的写地址。读地址发生器38c根据ACS计数器38a的计数结果产生存储器38d的读地址。
写交叉部件38e按照ACS部件22的结构改变写入存储器38d的状态量度的顺序。读交叉部件38f根据ACS部件22的结构改变读自存储器38d的状态量度的顺序。
首先,描述存储器38d的读操作如下。如图9所示,存储器38d由12个存储簇SMM_A至SMM_L组成。存储簇SMM_A存储第0、第4、第8、…、第120和第124状态的状态量度。存储簇SMM_B存储第1、第5、第9、…、第121和第125状态的状态量度。存储簇SMM_E存储第2、第6、第10、…、第122和第126状态的状态量度。存储簇SMM_F存储第3、第7、第11、…、第123和第127状态的状态量度。
存储簇SMM_C和SMM_I存储第128、第132、第136、…、第248和第252状态的状态量度。存储簇SMM_D和SMM_J存储第129、第133、第137、…、第249和第253状态的状态量度。存储簇SMM_G和SMM_K存储第130、第134、第138、…、第250和第254状态的状态量度。存储簇SMM_H和SMM_L存储第131、第135、第139、…、第251和第255状态的状态量度。
在64个周期的前32个周期期间,存储在存储簇SMM_A和SMM_B中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_E和SMM_F中的状态量度被施加到ACS部件22c和22d。
在后32个周期期间,存储在存储簇SMM_C和SMM_D中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_G和SMM_H中的状态量度被施加到ACS部件22c和22d。
在64个周期的前32个周期期间,读地址发生器38c向各ACS部件施加读地址,以使存储在存储簇SMM_A和SMM_B中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_E和SMM_F中的状态量度被施加到ACS部件22c和22d。
然后,在后32个周期期间,读地址发生器38c向各ACS部件施加读地址,以使存储在存储簇SMM_C和SMM_D中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_G和SMM_H中的状态量度被施加到ACS部件22c和22d。
当输入下一个码字时,在64个周期的前32个周期期间,读地址发生器38c向各ACS部件施加读地址,以使存储在存储簇SMM_A和SMM_B中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMM_E和SMM_F中的状态量度被施加到ACS部件22c和22d 。
然后,在后32个周期期间,读地址发生器38c向各ACS部件施加读地址,以使存储在存储簇SMM_I和SMM_J中的状态量度被施加到ACS部件22a和22b,存储在存储簇SMMVK和SMM_L中的状态量度被施加到ACS部件22c和22d。
其次,描述存储器的写操作如下。如果输入某一个码字,那么写地址发生器38b就产生存储簇SMM_A、SMM_B、SMM_E、SMM_F、SMM_I、SMM_J、SMM_K和SMM_L的写地址。当输入下一个码字时,写地址发生器38b产生存储簇SMM_A、SMM_B、SMM_E、SMM_F、SMM_C、SMM_D、SMM_G和SMM_H的写地址。
因此,每当输入每一个码字时,存储簇SMM_A、SMM_B、SMM_E、SMM_F都被使用。然而,存储簇SMM_C、SMM_D、SMM_G和SMM_H,与存储簇SMM_I、SMM_J、SMM_K和SMM_L交替地执行读和写的操作。
如上所述,我们已就使用4个ACS部件的情况描述了本发明的实施例。值得注意的是,甚至当使用2n(其中n为1,2,…)个ACS部件时,本发明也可以不加任何修改地应用。在这种情况下,每一个存储器都被分成与ACS部件个数相同的存储簇。因此,应该理解,本发明保留所附权利要求的范围。
如上所述,本发明的装置的效果是,通过使用双端口存储器而减少用于存储状态量度的存储容量。
而且,本发明的装置将存储结构分为一个用于前一半状态的存储簇和两个用于后一半状态的存储簇,它们包含在一个单个的存储部件中。让用于前一半状态的一个存储簇同时执行读和写操作,并且让两个存储簇按码字交替执行读和写操作,这样可以防止误操作。存储器的个数等于ACS部件的个数。
在传统的现有技术中,为了存储状态量度,需要状态数信息量两倍的存储容量,并且将存储器分成ACS部件个数4倍的多个存储器。当使用本发明的装置时,存储容量只是状态数的1.5倍,存储器被分为与ACS部件个数一样。因此,就可以大大地降低维特比译码器的制造成本。
Claims (4)
1、一种维特比译码器,包括:支路量度计算器,用于计算输入码字和可从编码器输出的预定码字之间的相似性,并输出2N个支路量度,这里N为状态数;加-比-选(add-compare-select,ACS)部分,用于接收由支路量度计算器提供的2N个支路量度和N个先前状态量度以执行加-比操作,选择幸存路径,并计算N个当前状态量度,所述幸存路径显示了与接收码字的编码序列最接近的编码序列;以及状态量度存储器,用于向ACS部件提供N个先前状态量度或存储ACS部件产生的N个当前状态量度,该译码器的特征在于:
所述ACS部件包括M个ACS部件,每当输入一个码字时其中的每一个ACS部件都在N/M个周期期间执行N/M次操作。
所述状态量度存储器包括:
存储器,包括:一个存储簇,用于读和写由所述ACS部件产生的N个状态量度中的前一半状态量度;和两个存储簇,用于每当输入一个码字时交替地读和写后一半的状态量度;
计数器,用于对所述周期的进行顺序进行计数;
写地址发生器,用于根据所述计数器的计数结果产生所述存储器的写地址;
读地址发生器,用于根据所述计数器的计数结果产生所述存储器的读地址。
2、如权利要求1所述的维特比译码器,所述存储器是双端口存储器。
3、如权利要求1所述的维特比译码器,所述状态量度存储器还包括写交叉部件(write cross unit),用于根据所述ACS部件的结构重排(realign)写入存储器的状态量度。
4、如权利要求1所述的维特比译码器,所述状态量度存储器还包括读交叉部件(read cross unit),用于根据所述ACS部件的结构重排读自存储器的状态量度。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR37799/97 | 1997-08-07 | ||
KR1019970037799A KR100484127B1 (ko) | 1997-08-07 | 1997-08-07 | 비터비디코더 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1208287A true CN1208287A (zh) | 1999-02-17 |
CN1097880C CN1097880C (zh) | 2003-01-01 |
Family
ID=19517080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN98118015A Expired - Fee Related CN1097880C (zh) | 1997-08-07 | 1998-08-05 | 维特比译码器 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6317472B1 (zh) |
EP (1) | EP0896436B1 (zh) |
JP (1) | JPH11154874A (zh) |
KR (1) | KR100484127B1 (zh) |
CN (1) | CN1097880C (zh) |
DE (1) | DE69809155T2 (zh) |
ES (1) | ES2186970T3 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145789B (zh) * | 2007-07-23 | 2011-06-29 | 华东师范大学 | 高速维特比译码器幸存路径管理模块 |
Families Citing this family (158)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000138595A (ja) * | 1998-10-29 | 2000-05-16 | Nec Corp | ビタビ復号器 |
US6690750B1 (en) * | 1999-12-23 | 2004-02-10 | Texas Instruments Incorporated | Flexible Viterbi decoder for wireless applications |
US6741664B1 (en) * | 1999-02-05 | 2004-05-25 | Broadcom Corporation | Low-latency high-speed trellis decoder |
KR100580160B1 (ko) * | 1999-09-14 | 2006-05-15 | 삼성전자주식회사 | 변형된 역추적 방식의 2단 연출력 비터비 알고리즘 복호화기 |
US6757864B1 (en) * | 2000-04-06 | 2004-06-29 | Qualcomm, Incorporated | Method and apparatus for efficiently reading and storing state metrics in memory for high-speed ACS viterbi decoder implementations |
JP3501725B2 (ja) * | 2000-05-12 | 2004-03-02 | 日本電気株式会社 | ビタビ復号器 |
US7058422B2 (en) * | 2000-09-20 | 2006-06-06 | Bae Systems Information And Electronic Systems Integration Inc. | Method for overusing frequencies to permit simultaneous transmission of signals from two or more users on the same frequency and time slot |
US6848074B2 (en) | 2001-06-21 | 2005-01-25 | Arc International | Method and apparatus for implementing a single cycle operation in a data processing system |
CN100399706C (zh) * | 2002-08-14 | 2008-07-02 | 联发科技股份有限公司 | 部分响应最大可能性信道的维特比译码器 |
US7623585B2 (en) * | 2003-02-28 | 2009-11-24 | Maher Amer | Systems and modules for use with trellis-based decoding |
US7359464B2 (en) * | 2003-12-31 | 2008-04-15 | Intel Corporation | Trellis decoder and method of decoding |
DE102004038754A1 (de) * | 2004-08-09 | 2006-02-23 | Micronas Gmbh | Decoder und Verfahren zum Durchführen eines Viterbi-Algorithmus |
US7797618B2 (en) * | 2004-12-30 | 2010-09-14 | Freescale Semiconductor, Inc. | Parallel decoder for ultrawide bandwidth receiver |
US7458008B2 (en) * | 2004-12-30 | 2008-11-25 | Freescale Semiconductor, Inc. | Decision voting in a parallel decoder |
JP4600183B2 (ja) * | 2005-06-28 | 2010-12-15 | ソニー株式会社 | ビタビ復号装置 |
US7802163B2 (en) * | 2006-07-31 | 2010-09-21 | Agere Systems Inc. | Systems and methods for code based error reduction |
US7801200B2 (en) * | 2006-07-31 | 2010-09-21 | Agere Systems Inc. | Systems and methods for code dependency reduction |
US7779331B2 (en) | 2006-07-31 | 2010-08-17 | Agere Systems Inc. | Systems and methods for tri-column code based error reduction |
US7971125B2 (en) * | 2007-01-08 | 2011-06-28 | Agere Systems Inc. | Systems and methods for prioritizing error correction data |
US8359522B2 (en) | 2007-05-01 | 2013-01-22 | Texas A&M University System | Low density parity check decoder for regular LDPC codes |
US8196002B2 (en) * | 2007-06-01 | 2012-06-05 | Agere Systems Inc. | Systems and methods for joint LDPC encoding and decoding |
US7930621B2 (en) * | 2007-06-01 | 2011-04-19 | Agere Systems Inc. | Systems and methods for LDPC decoding with post processing |
US7876862B2 (en) | 2007-07-16 | 2011-01-25 | Agere Systems Inc. | Conditionally input saturated Viterbi detector |
WO2009041979A1 (en) * | 2007-09-28 | 2009-04-02 | Agere Systems Inc. | Systems and methods for reduced complexity data processing |
US8161348B2 (en) * | 2008-02-05 | 2012-04-17 | Agere Systems Inc. | Systems and methods for low cost LDPC decoding |
US8245104B2 (en) | 2008-05-02 | 2012-08-14 | Lsi Corporation | Systems and methods for queue based data detection and decoding |
EP2191569B1 (en) * | 2008-05-19 | 2018-11-21 | Avago Technologies General IP (Singapore) Pte. Ltd. | Systems and methods for mitigating latency in a data detector feedback loop |
US8660220B2 (en) * | 2008-09-05 | 2014-02-25 | Lsi Corporation | Reduced frequency data processing using a matched filter set front end |
US8245120B2 (en) * | 2008-09-17 | 2012-08-14 | Lsi Corporation | Power reduced queue based data detection and decoding systems and methods for using such |
US7990642B2 (en) * | 2009-04-17 | 2011-08-02 | Lsi Corporation | Systems and methods for storage channel testing |
US8443267B2 (en) * | 2009-04-28 | 2013-05-14 | Lsi Corporation | Systems and methods for hard decision assisted decoding |
KR20120012960A (ko) | 2009-04-28 | 2012-02-13 | 엘에스아이 코포레이션 | 판독된 데이터 처리 시스템의 동적 스케일링을 위한 시스템 및 방법 |
US8250434B2 (en) * | 2009-06-18 | 2012-08-21 | Lsi Corporation | Systems and methods for codec usage control during storage pre-read |
US8352841B2 (en) | 2009-06-24 | 2013-01-08 | Lsi Corporation | Systems and methods for out of order Y-sample memory management |
US8312343B2 (en) * | 2009-07-28 | 2012-11-13 | Lsi Corporation | Systems and methods for re-using decoding parity in a detector circuit |
US8458553B2 (en) | 2009-07-28 | 2013-06-04 | Lsi Corporation | Systems and methods for utilizing circulant parity in a data processing system |
US8321746B2 (en) | 2009-07-30 | 2012-11-27 | Lsi Corporation | Systems and methods for quasi-cyclic LDPC code production and decoding |
US8250431B2 (en) * | 2009-07-30 | 2012-08-21 | Lsi Corporation | Systems and methods for phase dependent data detection in iterative decoding |
US8266505B2 (en) * | 2009-08-12 | 2012-09-11 | Lsi Corporation | Systems and methods for retimed virtual data processing |
US8176404B2 (en) * | 2009-09-09 | 2012-05-08 | Lsi Corporation | Systems and methods for stepped data retry in a storage system |
US8688873B2 (en) | 2009-12-31 | 2014-04-01 | Lsi Corporation | Systems and methods for monitoring out of order data decoding |
US8578253B2 (en) | 2010-01-04 | 2013-11-05 | Lsi Corporation | Systems and methods for updating detector parameters in a data processing circuit |
US8683306B2 (en) * | 2010-01-04 | 2014-03-25 | Lsi Corporation | Systems and methods for data detection including dynamic scaling |
US8743936B2 (en) | 2010-01-05 | 2014-06-03 | Lsi Corporation | Systems and methods for determining noise components in a signal set |
US8161351B2 (en) | 2010-03-30 | 2012-04-17 | Lsi Corporation | Systems and methods for efficient data storage |
US9343082B2 (en) | 2010-03-30 | 2016-05-17 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for detecting head contact |
US8418019B2 (en) | 2010-04-19 | 2013-04-09 | Lsi Corporation | Systems and methods for dynamic scaling in a data decoding system |
US8443249B2 (en) | 2010-04-26 | 2013-05-14 | Lsi Corporation | Systems and methods for low density parity check data encoding |
US8527831B2 (en) | 2010-04-26 | 2013-09-03 | Lsi Corporation | Systems and methods for low density parity check data decoding |
US8381071B1 (en) | 2010-05-21 | 2013-02-19 | Lsi Corporation | Systems and methods for decoder sharing between data sets |
US8381074B1 (en) | 2010-05-21 | 2013-02-19 | Lsi Corporation | Systems and methods for utilizing a centralized queue based data processing circuit |
US8208213B2 (en) | 2010-06-02 | 2012-06-26 | Lsi Corporation | Systems and methods for hybrid algorithm gain adaptation |
US8773794B2 (en) | 2010-09-13 | 2014-07-08 | Lsi Corporation | Systems and methods for block-wise inter-track interference compensation |
US8295001B2 (en) | 2010-09-21 | 2012-10-23 | Lsi Corporation | Systems and methods for low latency noise cancellation |
US9219469B2 (en) | 2010-09-21 | 2015-12-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for filter constraint estimation |
US8560930B2 (en) | 2010-10-11 | 2013-10-15 | Lsi Corporation | Systems and methods for multi-level quasi-cyclic low density parity check codes |
US8443250B2 (en) | 2010-10-11 | 2013-05-14 | Lsi Corporation | Systems and methods for error correction using irregular low density parity check codes |
US8661071B2 (en) | 2010-10-11 | 2014-02-25 | Lsi Corporation | Systems and methods for partially conditioned noise predictive equalization |
US8385014B2 (en) | 2010-10-11 | 2013-02-26 | Lsi Corporation | Systems and methods for identifying potential media failure |
US8750447B2 (en) | 2010-11-02 | 2014-06-10 | Lsi Corporation | Systems and methods for variable thresholding in a pattern detector |
US8566379B2 (en) | 2010-11-17 | 2013-10-22 | Lsi Corporation | Systems and methods for self tuning target adaptation |
US8667039B2 (en) | 2010-11-17 | 2014-03-04 | Lsi Corporation | Systems and methods for variance dependent normalization for branch metric calculation |
US8810940B2 (en) | 2011-02-07 | 2014-08-19 | Lsi Corporation | Systems and methods for off track error recovery |
US8699167B2 (en) | 2011-02-16 | 2014-04-15 | Lsi Corporation | Systems and methods for data detection using distance based tuning |
US8446683B2 (en) | 2011-02-22 | 2013-05-21 | Lsi Corporation | Systems and methods for data pre-coding calibration |
US8693120B2 (en) | 2011-03-17 | 2014-04-08 | Lsi Corporation | Systems and methods for sample averaging in data processing |
US8854753B2 (en) | 2011-03-17 | 2014-10-07 | Lsi Corporation | Systems and methods for auto scaling in a data processing system |
US8611033B2 (en) | 2011-04-15 | 2013-12-17 | Lsi Corporation | Systems and methods for selective decoder input data processing |
US8887034B2 (en) | 2011-04-15 | 2014-11-11 | Lsi Corporation | Systems and methods for short media defect detection |
US8670955B2 (en) | 2011-04-15 | 2014-03-11 | Lsi Corporation | Systems and methods for reliability assisted noise predictive filtering |
US8566665B2 (en) | 2011-06-24 | 2013-10-22 | Lsi Corporation | Systems and methods for error correction using low density parity check codes using multiple layer check equations |
US8499231B2 (en) | 2011-06-24 | 2013-07-30 | Lsi Corporation | Systems and methods for reduced format non-binary decoding |
US8560929B2 (en) | 2011-06-24 | 2013-10-15 | Lsi Corporation | Systems and methods for non-binary decoding |
US8862972B2 (en) | 2011-06-29 | 2014-10-14 | Lsi Corporation | Low latency multi-detector noise cancellation |
US8595576B2 (en) | 2011-06-30 | 2013-11-26 | Lsi Corporation | Systems and methods for evaluating and debugging LDPC iterative decoders |
US8650451B2 (en) | 2011-06-30 | 2014-02-11 | Lsi Corporation | Stochastic stream decoding of binary LDPC codes |
US8566666B2 (en) | 2011-07-11 | 2013-10-22 | Lsi Corporation | Min-sum based non-binary LDPC decoder |
US8830613B2 (en) | 2011-07-19 | 2014-09-09 | Lsi Corporation | Storage media inter-track interference cancellation |
US8819527B2 (en) | 2011-07-19 | 2014-08-26 | Lsi Corporation | Systems and methods for mitigating stubborn errors in a data processing system |
US8879182B2 (en) | 2011-07-19 | 2014-11-04 | Lsi Corporation | Storage media inter-track interference cancellation |
US8539328B2 (en) | 2011-08-19 | 2013-09-17 | Lsi Corporation | Systems and methods for noise injection driven parameter selection |
US8854754B2 (en) | 2011-08-19 | 2014-10-07 | Lsi Corporation | Systems and methods for local iteration adjustment |
US9026572B2 (en) | 2011-08-29 | 2015-05-05 | Lsi Corporation | Systems and methods for anti-causal noise predictive filtering in a data channel |
US8656249B2 (en) | 2011-09-07 | 2014-02-18 | Lsi Corporation | Multi-level LDPC layer decoder |
US8756478B2 (en) | 2011-09-07 | 2014-06-17 | Lsi Corporation | Multi-level LDPC layer decoder |
US8681441B2 (en) | 2011-09-08 | 2014-03-25 | Lsi Corporation | Systems and methods for generating predictable degradation bias |
US8661324B2 (en) | 2011-09-08 | 2014-02-25 | Lsi Corporation | Systems and methods for non-binary decoding biasing control |
US8767333B2 (en) | 2011-09-22 | 2014-07-01 | Lsi Corporation | Systems and methods for pattern dependent target adaptation |
US8850276B2 (en) | 2011-09-22 | 2014-09-30 | Lsi Corporation | Systems and methods for efficient data shuffling in a data processing system |
US8578241B2 (en) | 2011-10-10 | 2013-11-05 | Lsi Corporation | Systems and methods for parity sharing data processing |
US8479086B2 (en) | 2011-10-03 | 2013-07-02 | Lsi Corporation | Systems and methods for efficient parameter modification |
US8689062B2 (en) | 2011-10-03 | 2014-04-01 | Lsi Corporation | Systems and methods for parameter selection using reliability information |
US8862960B2 (en) | 2011-10-10 | 2014-10-14 | Lsi Corporation | Systems and methods for parity shared data encoding |
US8996597B2 (en) | 2011-10-12 | 2015-03-31 | Lsi Corporation | Nyquist constrained digital finite impulse response filter |
US8707144B2 (en) | 2011-10-17 | 2014-04-22 | Lsi Corporation | LDPC decoder with targeted symbol flipping |
US8788921B2 (en) | 2011-10-27 | 2014-07-22 | Lsi Corporation | Detector with soft pruning |
US8527858B2 (en) | 2011-10-28 | 2013-09-03 | Lsi Corporation | Systems and methods for selective decode algorithm modification |
US8683309B2 (en) | 2011-10-28 | 2014-03-25 | Lsi Corporation | Systems and methods for ambiguity based decode algorithm modification |
US8604960B2 (en) | 2011-10-28 | 2013-12-10 | Lsi Corporation | Oversampled data processing circuit with multiple detectors |
US8443271B1 (en) | 2011-10-28 | 2013-05-14 | Lsi Corporation | Systems and methods for dual process data decoding |
US8700981B2 (en) | 2011-11-14 | 2014-04-15 | Lsi Corporation | Low latency enumeration endec |
US8751913B2 (en) | 2011-11-14 | 2014-06-10 | Lsi Corporation | Systems and methods for reduced power multi-layer data decoding |
US8760991B2 (en) | 2011-11-14 | 2014-06-24 | Lsi Corporation | Systems and methods for post processing gain correction |
US8531320B2 (en) | 2011-11-14 | 2013-09-10 | Lsi Corporation | Systems and methods for memory efficient data decoding |
US8719686B2 (en) | 2011-11-22 | 2014-05-06 | Lsi Corporation | Probability-based multi-level LDPC decoder |
US8631300B2 (en) | 2011-12-12 | 2014-01-14 | Lsi Corporation | Systems and methods for scalable data processing shut down |
US8625221B2 (en) | 2011-12-15 | 2014-01-07 | Lsi Corporation | Detector pruning control system |
US8819515B2 (en) | 2011-12-30 | 2014-08-26 | Lsi Corporation | Mixed domain FFT-based non-binary LDPC decoder |
US8707123B2 (en) | 2011-12-30 | 2014-04-22 | Lsi Corporation | Variable barrel shifter |
US8751889B2 (en) | 2012-01-31 | 2014-06-10 | Lsi Corporation | Systems and methods for multi-pass alternate decoding |
US8850295B2 (en) | 2012-02-01 | 2014-09-30 | Lsi Corporation | Symbol flipping data processor |
US8775896B2 (en) | 2012-02-09 | 2014-07-08 | Lsi Corporation | Non-binary LDPC decoder with low latency scheduling |
US8749907B2 (en) | 2012-02-14 | 2014-06-10 | Lsi Corporation | Systems and methods for adaptive decoder message scaling |
US8782486B2 (en) | 2012-03-05 | 2014-07-15 | Lsi Corporation | Systems and methods for multi-matrix data processing |
US8610608B2 (en) | 2012-03-08 | 2013-12-17 | Lsi Corporation | Systems and methods for reduced latency loop correction |
US8731115B2 (en) | 2012-03-08 | 2014-05-20 | Lsi Corporation | Systems and methods for data processing including pre-equalizer noise suppression |
US8873182B2 (en) | 2012-03-09 | 2014-10-28 | Lsi Corporation | Multi-path data processing system |
US8977937B2 (en) | 2012-03-16 | 2015-03-10 | Lsi Corporation | Systems and methods for compression driven variable rate decoding in a data processing system |
US9043684B2 (en) | 2012-03-22 | 2015-05-26 | Lsi Corporation | Systems and methods for variable redundancy data protection |
US9230596B2 (en) | 2012-03-22 | 2016-01-05 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for variable rate coding in a data processing system |
US8612826B2 (en) | 2012-05-17 | 2013-12-17 | Lsi Corporation | Systems and methods for non-binary LDPC encoding |
US8880986B2 (en) | 2012-05-30 | 2014-11-04 | Lsi Corporation | Systems and methods for improved data detection processing |
US8751915B2 (en) | 2012-08-28 | 2014-06-10 | Lsi Corporation | Systems and methods for selectable positive feedback data processing |
US9324372B2 (en) | 2012-08-28 | 2016-04-26 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for local iteration randomization in a data decoder |
US9019647B2 (en) | 2012-08-28 | 2015-04-28 | Lsi Corporation | Systems and methods for conditional positive feedback data decoding |
US8930780B2 (en) | 2012-08-28 | 2015-01-06 | Lsi Corporation | Systems and methods for non-zero syndrome based processing |
US8949702B2 (en) | 2012-09-14 | 2015-02-03 | Lsi Corporation | Systems and methods for detector side trapping set mitigation |
US9112531B2 (en) | 2012-10-15 | 2015-08-18 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for enhanced local iteration randomization in a data decoder |
US8634152B1 (en) | 2012-10-15 | 2014-01-21 | Lsi Corporation | Systems and methods for throughput enhanced data detection in a data processing circuit |
US9048870B2 (en) | 2012-11-19 | 2015-06-02 | Lsi Corporation | Low density parity check decoder with flexible saturation |
US8929009B2 (en) | 2012-12-19 | 2015-01-06 | Lsi Corporation | Irregular low density parity check decoder with low syndrome error handling |
US9130589B2 (en) | 2012-12-19 | 2015-09-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Low density parity check decoder with dynamic scaling |
US8773791B1 (en) | 2013-01-14 | 2014-07-08 | Lsi Corporation | Systems and methods for X-sample based noise cancellation |
US9003263B2 (en) | 2013-01-15 | 2015-04-07 | Lsi Corporation | Encoder and decoder generation by state-splitting of directed graph |
US9009557B2 (en) | 2013-01-21 | 2015-04-14 | Lsi Corporation | Systems and methods for reusing a layered decoder to yield a non-layered result |
US8930792B2 (en) | 2013-02-14 | 2015-01-06 | Lsi Corporation | Systems and methods for distributed low density parity check decoding |
US8885276B2 (en) | 2013-02-14 | 2014-11-11 | Lsi Corporation | Systems and methods for shared layer data decoding |
US9214959B2 (en) | 2013-02-19 | 2015-12-15 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for skip layer data decoding |
US9048873B2 (en) | 2013-03-13 | 2015-06-02 | Lsi Corporation | Systems and methods for multi-stage encoding of concatenated low density parity check codes |
US8797668B1 (en) | 2013-03-13 | 2014-08-05 | Lsi Corporation | Systems and methods for penalty based multi-variant encoding |
US9048874B2 (en) | 2013-03-15 | 2015-06-02 | Lsi Corporation | Min-sum based hybrid non-binary low density parity check decoder |
US9281843B2 (en) | 2013-03-22 | 2016-03-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for reduced constraint code data processing |
US9048867B2 (en) | 2013-05-21 | 2015-06-02 | Lsi Corporation | Shift register-based layered low density parity check decoder |
US9274889B2 (en) | 2013-05-29 | 2016-03-01 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for data processing using global iteration result reuse |
US8959414B2 (en) | 2013-06-13 | 2015-02-17 | Lsi Corporation | Systems and methods for hybrid layer data decoding |
US8917466B1 (en) | 2013-07-17 | 2014-12-23 | Lsi Corporation | Systems and methods for governing in-flight data sets in a data processing system |
US8817404B1 (en) | 2013-07-18 | 2014-08-26 | Lsi Corporation | Systems and methods for data processing control |
US9196299B2 (en) | 2013-08-23 | 2015-11-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for enhanced data encoding and decoding |
US8908307B1 (en) | 2013-08-23 | 2014-12-09 | Lsi Corporation | Systems and methods for hard disk drive region based data encoding |
US9129651B2 (en) | 2013-08-30 | 2015-09-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Array-reader based magnetic recording systems with quadrature amplitude modulation |
US9047882B2 (en) | 2013-08-30 | 2015-06-02 | Lsi Corporation | Systems and methods for multi-level encoding and decoding |
US9298720B2 (en) | 2013-09-17 | 2016-03-29 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for fragmented data recovery |
CN104518801A (zh) | 2013-09-29 | 2015-04-15 | Lsi公司 | 非二进制的分层低密度奇偶校验解码器 |
US9219503B2 (en) | 2013-10-16 | 2015-12-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for multi-algorithm concatenation encoding and decoding |
US9323606B2 (en) | 2013-11-21 | 2016-04-26 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for FAID follower decoding |
US9130599B2 (en) | 2013-12-24 | 2015-09-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods of converting detector output to multi-level soft information |
RU2014104571A (ru) | 2014-02-10 | 2015-08-20 | ЭлЭсАй Корпорейшн | Системы и способы для эффективного с точки зрения площади кодирования данных |
US9378765B2 (en) | 2014-04-03 | 2016-06-28 | Seagate Technology Llc | Systems and methods for differential message scaling in a decoding process |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60183824A (ja) | 1984-03-02 | 1985-09-19 | Toshiba Corp | ビタビ復号回路 |
JPS6162235A (ja) | 1984-09-04 | 1986-03-31 | Toshiba Corp | ビタビ復号法 |
KR930004862B1 (ko) * | 1990-12-17 | 1993-06-09 | 삼성전자 주식회사 | 상태 평가량 기억장치 |
US5465275A (en) * | 1993-11-16 | 1995-11-07 | At&T Ipm Corp. | Efficient utilization of present state/next state registers |
JP3241210B2 (ja) * | 1994-06-23 | 2001-12-25 | 沖電気工業株式会社 | ビタビ復号方法及びビタビ復号回路 |
US5822341A (en) * | 1995-04-06 | 1998-10-13 | Advanced Hardware Architectures, Inc. | Multiport RAM for use within a viterbi decoder |
US5859861A (en) * | 1995-06-21 | 1999-01-12 | Hyundai Electronics Ind. Co., Ltd. | High speed viterbi decoder |
JP2996615B2 (ja) * | 1996-01-08 | 2000-01-11 | 松下電器産業株式会社 | ビタビ復号装置及びその方法 |
JPH09232973A (ja) * | 1996-02-28 | 1997-09-05 | Sony Corp | ビタビ復号器 |
US5881075A (en) * | 1996-03-18 | 1999-03-09 | Samsung Electronics Co., Ltd. | Viterbi decoder |
-
1997
- 1997-08-07 KR KR1019970037799A patent/KR100484127B1/ko not_active IP Right Cessation
-
1998
- 1998-08-04 EP EP98306212A patent/EP0896436B1/en not_active Expired - Lifetime
- 1998-08-04 ES ES98306212T patent/ES2186970T3/es not_active Expired - Lifetime
- 1998-08-04 DE DE69809155T patent/DE69809155T2/de not_active Expired - Fee Related
- 1998-08-05 CN CN98118015A patent/CN1097880C/zh not_active Expired - Fee Related
- 1998-08-06 JP JP10223467A patent/JPH11154874A/ja active Pending
- 1998-08-06 US US09/129,900 patent/US6317472B1/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145789B (zh) * | 2007-07-23 | 2011-06-29 | 华东师范大学 | 高速维特比译码器幸存路径管理模块 |
Also Published As
Publication number | Publication date |
---|---|
KR100484127B1 (ko) | 2005-06-16 |
EP0896436B1 (en) | 2002-11-06 |
EP0896436A3 (en) | 2001-03-07 |
ES2186970T3 (es) | 2003-05-16 |
DE69809155T2 (de) | 2003-03-27 |
EP0896436A2 (en) | 1999-02-10 |
CN1097880C (zh) | 2003-01-01 |
US6317472B1 (en) | 2001-11-13 |
KR19990015603A (ko) | 1999-03-05 |
JPH11154874A (ja) | 1999-06-08 |
DE69809155D1 (de) | 2002-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1097880C (zh) | 维特比译码器 | |
JP5944941B2 (ja) | クロス・ページ・セクタ、マルチ・ページ符号化およびパー・ページ符号化を使用して多重レベル・セル・フラッシュ・メモリ・デバイスにデータを記憶するための方法および装置 | |
KR101504083B1 (ko) | 비휘발성 메모리를 갖춘 멀티레벨 시스템에서의 진보된 비트별 동작 및 장치 | |
CN1149218A (zh) | 维特比解码方法和维特比解码装置 | |
CN1237046A (zh) | 用于实现误码纠错用卷积码的维特比译码的运算装置 | |
CN1256005A (zh) | 编码方法和存储装置 | |
CN1853350A (zh) | 用于移动通信系统的维特比/涡轮联合译码器 | |
CN110708076A (zh) | 一种基于混合模型的dna存储编解码方法 | |
CN1862972A (zh) | Turbo编码方法及编码装置 | |
CN1758543A (zh) | 提高Turbo码译码速度的并行译码方法及译码装置 | |
CN1106081C (zh) | 译码电路 | |
CN1165193C (zh) | 在维特比译码器中储存路径量度的方法 | |
CN1349361A (zh) | 特博码的解码方法 | |
CN1147169C (zh) | 用于Turbo码的解码方法和解码器 | |
CN1446406A (zh) | 在高速acs维特比译码器实现的存储器中有效读取和存储状态量度的方法和设备 | |
CN1574652A (zh) | Turbo解码装置 | |
CN1176541C (zh) | 用于提高乘积码译码速度的方法及译码装置 | |
CN1787386A (zh) | 一种维特比译码器路径度量存储的方法 | |
CN1323102A (zh) | 用于特博码的解码器及其解码方法 | |
JP2002544622A (ja) | 記憶装置のための誤り訂正回路および方法 | |
CN1300391A (zh) | 运算处理装置 | |
CN1123125C (zh) | 可变长编码方法及其装置 | |
CN1591658A (zh) | 纠错码产生电路及其方法 | |
CN1220332C (zh) | 高编码率数据块编/解码方法及其装置 | |
CN1280729C (zh) | 数据存取方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20030101 |