CN1265787A - 用crc外码对多速率信号的表输出维特比解码 - Google Patents

用crc外码对多速率信号的表输出维特比解码 Download PDF

Info

Publication number
CN1265787A
CN1265787A CN98803554A CN98803554A CN1265787A CN 1265787 A CN1265787 A CN 1265787A CN 98803554 A CN98803554 A CN 98803554A CN 98803554 A CN98803554 A CN 98803554A CN 1265787 A CN1265787 A CN 1265787A
Authority
CN
China
Prior art keywords
path
frame
yardstick
crc
decoding
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
Application number
CN98803554A
Other languages
English (en)
Inventor
J·M·施泰因
A·巴尔-达维德
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25234442&utm_source=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1265787(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN1265787A publication Critical patent/CN1265787A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4115Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors list output Viterbi decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/47Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0054Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Catalysts (AREA)
  • Crystals, And After-Treatments Of Crystals (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)

Abstract

一种对含有冗余信息的多速率编码数字数据的帧进行解码的方法和装置,冗余信息是为了验证解码操作的有效性而提供的。接收到的数据帧含有信息位和循环冗余校验(CRC)位。根据本发明,接收到帧进行解码和进行校验,以确定CRC位是否正确地对应于解码信息位。如果已解码的帧通过CRC测试过程,那么把已解码帧提供给用户。然而如果已解码帧未通过CRC测试,那么在接收到的帧上至少再进行一次解码过程。在本发明的第一示例实施例中,在CRC校验失败时,利用格构解码器(224)对数据进行解码,选择通过格构产生次最大可能的路径的数据。在第二示例实施例中,如果CRC测试失败,那么格构解码器(224)识别所有的路径,其尺度在与通过格构最佳路径相关的尺度的预定阈值内。然后,相对于次最佳路径(从最大可能的路径开始)在已解码帧上进行CRC测试。如果这些路径中的任何一条路径通过CRC校验,那么由解码器(224)输出信息位,如果未通过,那么表明是一个差错。

Description

用CRC外码对多速率信号的表输出维特比解码
                      发明背景
I.发明领域
本发明涉及数字信号处理,更具体地说,本发明涉及一种对含有冗余校验位的一帧数字数据或知道该数据的任何其它方信息进行解码的新颖的和改进的方法和装置。
II.现有技术的描述
随着无线通信技术的发展,在提供的服务中用户已经开始要求更高的传输质量。为提供这样的服务,提供更高传输质量的一种手段涉及到采用数字传输技术。在现有技术中公知几种数字调制技术,包括码分多址(CDMA)、时分多址(TDMA)和频分多址(FDMA)。
CDMA的扩频调制技术比其它的数字调制技术具有更显著的优点。在题目为“利用卫星或陆上转发器的扩频多址通信***”的美国专利号4,901,307中揭示了CDMA技术在多址通信***中的使用,该专利已转让给本发明的受让人,这里将其引作参考。在题目为“在CDMA蜂窝网电话***中产生信号波形的***和方法”的美国专利号5,103,459中进一步揭示了CDMA技术在多址通信***中的使用,该专利也转让给本发明的受让人,这里将其引作参考。利用CDMA提供数字式无线通信的方法由电信工业协会(TIA)在TIA/EIA/IS-95-A双模宽带扩频蜂窝网***的移动台-基地台兼容标准(下文中简称IS-95)中进行标准化。
在CDMA通信***中,由于每个用户的发射对其它用户的发射起增加噪声的作用,使每个用户仅发射必要的数据可以使CDMA***的容量达到最大。降低用户在容量上的负担而不降低对用户的服务质量的一种十分有效的手段是采用可变速率的数据发射,这里,由用户发射的数据速率随时间而变化。在题目为“可变速率的声码器”的美国专利号5,414,796中详细描述了提供话音数据可变速率编码的方法,该专利转让给本发明的受让人,这里将其引作参考。
为了防止信道引起的误差,在无线通信***中采用了数字误差校正技术。检测并校正信道引起的误差的一种方法是通过采用格构解码。维特比解码器是一特定类型的格构解码器,已经证明它比其它的误差校正***更优越。在题目为“CDMA***应用的多速率串行维特比解码器”的于1993年9月24日提交待批的美国专利申请08/126,477中详细描述进行可变速率数据的维特比解码的方法和装置,该专利申请转让给本发明的受让人,这里将其引作参考。
然而,在现有技术中仍然需要进一步提高由CDMA调制技术给予的编码增益并由此而实现***容量增加的***和技术。
                          发明概要
本发明为一种对含有冗余信息的数字数据帧进行解码的新颖的和改进的方法和装置,冗余信息是为了验证解码操作有效性而提供的。本发明提高了CDMA***的编码增益并取得扩大的***容量。在本发明中,提供含有信息位和循环冗余校验(CRC)位的数据帧。对接收的数据帧进行解码,并且进行校验以确定CRC位是否正确地对应于已解码的信息位。如果已解码的帧通过CRC测试过程,那么,把已解码的帧提供给用户。然而,如果已解码的帧未通过CRC测试,那么,在接收的帧上至少再进行一次附加的解码过程。
在本发明的第一示例实施例中,利用格构解码器对数据进行解码,选择取得通过格构的最大可能的路径的数据。然后,在已解码的数据帧上进行CRC测试。如果CRC测试失败,那么,格构解码器确定通过格构的第二次最大可能的路径。然后对已解码的帧进行第二次CRC测试。如果已解码的帧通过CRC测试,那么,由解码器输出信息位。然而,如果已解码的帧未能通过CRC测试,那么,格构解码器选择通过格构的下一次最大可能的路径。重复进行这一过程直至成功地通过CRC测试或者直至预定次数的解码尝试未取得成功并且解码器表明不能对该帧进行解码和给出一个帧删除。
在第二个例举的实施例中,利用格构解码器对数据进行解码,和选择取得通过格构最佳路径的数据。然后在已解码的数据帧上进行CRC测试。如果CRC测试失败,那么,在与通过格构的最佳路径相关的尺度的预定阈值内格构解码器识别具有尺度的路径。然后,相对于它们找到的次最佳路径对已解码的帧进行CRC测试。如果这些路径中的任意一个通过CRC校验,那么,由解码器输出对应于最可能路径的信息位。如果没有通过,那么,给出一个差错。在较佳实施例中,采用维特比解码器进行解码,所采用的尺度是Yamamoto尺度。
                          附图简述
从以下结合附图所作的详细描述中,本发明的特征、目的和优点将变得更加清楚,在整个附图中相似的参考符号采用相应的表示,其中:
图1是按含有一组CRC位和一组信息位的帧发射数据的示例发射***;
图2A-2D是本发明的可变速率帧结构的示例表示;
图3是本发明的解码器的示例实施;
图4是本发明的解码***的第一示例实施例的方框图;
图5是描述第一示例实施例的对数据进行解码的方法的流程图;
图6是在格构解码器中状态转移的图示;
图7是在图6所示的状态转移格构中所选路径的图示;
图8是通过格构解码器的路径选择的图示;
图9是具有四种可能状态的解码器的图示;
图10是第一示例实施例的格构解码器的方框图;
图11是通过格构的最佳路径和与该路径相关的计算路径选择差值的图示;
图12是按照第一实施例选择的次最佳路径的图示;
图13是通过格构的第一和第二所选路径和与第三路径选择过程相关的计算出路径选择差值的图示;
图14示出本发明的解码***的第二示例实施例的装置;
图15是说明本发明的第二示例实施例的方法的流程图;
图16是说明本发明的选择次最佳路径的阈值技术的流程图;
图17是用本发明的解码方法的第二示例实施例确定路径的格构图的图示。
              较佳实施例的详细描述
现在将参考附图描述例举的实施例和示例的应用,以揭示本发明的优越的技术。
虽然,这里是参考特定应用的例举实施例描述本发明的,但是,应当明白,本发明并不局限于此。对于本领域的专业人员而言,根据这里所提供的情况将能够看到在本发明的范围和本发明可能具有重要用途的相关领域内的其它改进、应用和实施例。
参考图1,数据源2提供数字数据的帧。在示例的实施例中,数据源2每20ms提供一帧,当然本发明同样可应用于其它速率。在示例的实施例中,数据源2是一个可变速率的数据源,这里,帧中的位数随时间而变化。在示例的实施例中,数据源2是可变速率的语音编码器,在上述的美国专利5,414,796中描述它的一个例子。
在美国专利5,414,796中的语音编码器选择一个速率,在该速率下根据帧中的取样能量对数字化的语音取样的帧进行编码。当用户不在说话时,这将减少发送的位数,如上所述,使用户对CDMA通信***中其他用户的干扰减至最小。应当注意,本发明同样可应用于固定速率的数据源。此外,本发明同样可应用于语音之外的数字信息的发送,如传真、视频或其它的数字化数据。
将来自数据源2的信息位的帧提供给帧格式化器4。在示例的实施例中,帧格式化器4由CRC发生器6和尾位发生器8组成。CRC发生器6根据数据源2的帧中所提供的信息位产生一组冗余校验位并将冗余位添加到帧中。本发明可应用于其它的冗余校验位发生器,冗余位或奇偶位发生器的设计和实施是本领域人员公知的。CRC发生器6的一个示例实施例在上述的美国专利5,414,796中描述并已经按IS-95标准化。应当注意,本发明同样可应用于其它的冗余位发生器,本领域专业人员应当理解。
将由信息位和CRC位组成的帧提供给尾位发生器8,它产生一组尾位并将这些尾位添加到帧中。尾位的作用是当通过编码器的帧结束时迫使编码器10处于预定状态。在示例的实施例中,尾位发生器8产生一组0值的尾位,以致于迫使编码器10的输出处于0状态。
现在参考图2A-2D,图中示出本发明的示例帧格式。这些帧格式称为复用任选项2帧格式,按照IS-95标准进行标准化。对于本领域的专业人员而言是很显然,本发明同样可应用于利用其它帧格式发射的数据的解码。
在示例的实施例中,数据源2以四种不同速率提供数据。参考图2A,如果数据源2提供由267个信息位组成的帧,则称为全速率帧,那么,CRC发生器6按照信息位产生12个CRC位(以F表示)并将这些位添加到帧中。尾位发生器8产生8个0值的尾位(以T表示)并将这些位添加到帧中。在帧的起始处提供一个保留位(以R表示),能够将它用于例如控制发射功率。
参考图2B,如果数据源2提供由125个信息位组成的帧,称为半速率帧,那么,CRC发生器6按照信息位产生10个CRC位(以F表示)并将这些位添加到帧中。然后,尾位发生器8产生8个0值的尾位(以T表示)并将这些位添加到帧中。在帧的起始处提供一个保留位(以R表示),能够将它用于例如控制发射功率。
参考图2C,如果数据源2提供由55个信息位组成的帧,称为四分之一速率帧,那么,CRC发生器6按照信息位产生8个CRC位(以F表示)并将这些位添加到帧中。然后,尾位发生器8产生8个0值的尾位(以T表示)并将这些位添加到帧中。在帧的起始处提供一个保留位(以R表示),能够将它用于例如控制发射功率。
参考图2D,如果数据源2提供由21个信息位组成的帧,称为八分之一速率帧,那么,CRC发生器6按照信息位产生6个CRC位(以F表示)并将这些位添加到帧中。然后,尾位发生器8产生8个0值的尾位(以T表示)并将这些位添加到帧中。在帧的起始处提供一个保留位(以R表示),能够将它用于例如控制发射功率。
把帧格式化器4输出的帧提供给编码器10。在示例的实施例中,编码器10是一个具有约束长度9(k=9)的速率1/2卷积编码器。卷积编码器的设计和实施是本领域人员公知的。来自编码器10的编码符号提供给交织器12。
在示例的实施例中,交织器12有选择地提供帧中的冗余度,以致于符号数据占据帧的整个容量。如果帧小于全速率,那么,交织器12提供符号的复本。因此,如果帧是半速率,那么,交织器12提供速率2的冗余度,每一帧含有符号的单个原本和这些符号的一个复本,如果帧是四分之一速率,那么,交织器12提供速率4的冗余度,每一帧含有符号的单个原本和这些符号的三个复本,如果帧是八分之一速率,那么,交织器12提供速率8的冗余度,每一帧含有符号的单个原本和这些符号的七个复本。在符号重复后,通过每6个符号中删除2个,对它们进行截取,以获得如IS-95标准中所描述的给定个数的符号。然后,交织器12根据预定的记录格式记录这些符号。在示例的实施例中,交织器12如IS-95标准所描述的那样提供冗余度和记录帧。
将经过修改的符号提供给调制器14,它按照预定调制格式对符号进行调制。在示例的实施例中,调制器是如上述的美国专利4,901,307和5,103,459中详细描述的CDMA调制器。将经过调制的数据帧提供给发射机16,对帧进行上变频和放大,通过天线20发射帧。
参考图3,天线49接收由图1所示的发射***1发射的信号并提供给接收机(RCVR)50。接收机50对接收信号进行下变频、滤波和放大并将其提供给解调器52。解调器52按照预定解调格式对接收信号进行解调。在示例的实施例中,解调器52是如上述美国专利4,901,307和5,103,459中详细描述的CDMA解调器。
将经过解调的数据帧提供给去交织器54,它按照预定的重新排序格式对帧中的软符号数据进行重新排序并在发射过程中符号被删除的地方增加0,以获得经过修改的帧格式。将经过修改的软判定符号数据帧提供给解码***56。解码***56对数据进行解码并将已解码数据提供给数据信宿58。数据信宿58可以提供在已解码的数据帧上进行的后处理。例如,如果数据是经过压缩的语音数据,那么,数据信宿58按照预定的扩展格式把语音参数转换为数字化的语音取样,例如美国专利5,414,796中所描述的。
图4示出本发明的解码***56的第一示例实施例的装置,图5提供说明本发明第一示例实施例的方法的流程图。正如图4和5所示,在方框250中,将来自去交织器54的经修改的软符号数据的帧提供给并存储在帧缓冲器220中(图4)。
然后,在图252中,按照当前速率假设在符号合并器222中对符号进行合并。合并过程利用了这一事实的有利之处,对于小于全速率的速率,在发射的符号数据中存在冗余,所以,通过对符号的所有冗余副本的能量求和能够达到对所发射的符号数据的更好的估测。在上述的待批  美国专利申请08/126,477中详细描述了产生符号的改进估测的过程。
示例的实施例首先对以全速率发射帧的假设进行测试。在全速率假设下,不存在符号重复,所以,不进行符号数据的合并。在方框254中,把来自符号合并器222的数据提供给改进的维特比解码器224。在示例的实施例中,改进的维特比解码器224是一个维特比解码器,但是本领域的专业人员将会明白其它形式的格构解码器同样可以应用。维特比解码器的设计和实施是本领域人员公知的,在上述待批的美国专利申请08/126,477中描述了维特比解码器的一种特定的实施。
改进的维特比解码器224计算在帧中的发射信息位和CRC位的估测值,把帧估测值提供给CRC测试子***232。在方框256中,CRC测试子***232从已解码的信息位产生一组冗余位,正如参考CRC发生器6所描述一样。CRC测试子***232将由信息位估测值产生的CRC位与来自改进的维特比解码器224的冗余位的估测值进行比较。将比较的结果提供给控制处理器234,它确定CRC测试是否通过。
在控制方框258中,如果CRC测试通过,那么,方法继续进行到方框266。在方框266中,符号差错率(SER)计算器228计算已解码帧的符号差错率。SER计算器228产生已接收符号数据的硬判定估测值或者接收来自改进的维特比解码器224的硬判定估测值。然后,SER计算器228从改进的维特比解码器224接收帧的已解码数据并利用与编码器10进行编码操作(图1)相同的编码操作对帧进行编码,以产生一组重新编码的符号数据。将重新编码的符号数据逐个符号地与硬判定符号数据进行比较,两组符号数据之间的不同的数目是符号差错率,在方框268中将其提供给选择器230。
在本实施例中,输出缓冲器226只有在对于速率假设的解码已经通过CRC测试后才将已解码的符号数据提供给选择器230。在一个较佳实施例中,改进的维特比解码器224把尺度数据提供给选择器230,有助于速率选择。提供给选择器的尺度数据可以是单个位的Yamamoto尺度或总尺度。
在方框258中,如果CRC测试失败,那么,在方框260中,控制处理器234在当前速率假设下在对帧进行解码时增加尝试次数的计数。在方框262中,控制处理器234确定对帧进行解码的尝试次数是否已经达到在当前速率假设下对帧进行解码的预定的最大尝试次数。如果已经达到最大尝试次数,那么,方法继续进行到方框264,控制处理器23把信号提供给选择器230,表示在当前速率假设下不能对帧进行解码。
在控制方框262中,如果未达到在当前速率下对帧进行解码的最大尝试次数,那么,控制处理器234把消息提供给改进的维特比解码器224。在方框278中,响应于来自控制处理器234的消息,改进的维特比解码器224使其路径计数(i)增加一。然后,在方框254中,改进的维特比解码器224找到通过格构的第i个最佳路径。方法继续进行到方框256,按照如上所述过程重复进行。
在方框270中,控制处理器234确定是否已经对所有可能的速率进行测试,如果不是,那么,方法继续进行到方框272,它选择下一个待测试的速率,然后,方法继续进行到方框252,对下一速率假设进行测试。响应于来自控制处理器234的信号,帧缓冲器220把帧数据提供给符号合并器222。控制处理器234把表示待测试的速率假设的信号提供给符号合并器222。在方框252中,符号合并器222按照待测试的速率假设对符号数据进行合并。方法继续进行到方框254和按照如上所述继续进行。
在方框270中,如果已经对所有的速率进行测试,那么,在方框274中,选择器230确定发射数据的最可能的速率,在方框276中提供对应于该速率的数据。选择器230可以决定删除由于测量质量差而造成的帧。在示例的实施例中,选择器230根据不同的已解码帧的符号差错率和尺度数据值确定速率。
可以采用很多的方法来进行第一示例实施例的附加路径搜索。然而,许多方法需要太多的内存作储存。在第一示例实施例的较佳方法中,应用一种减少路径搜索所需的内存量和时间的方法。例如,一种方法则是在最佳路径的特定尺度阈值内对所有的路径进行解码,最佳路径是在运行改进的维特比解码器224时碰到的。
首先,在图6、7和8中给出格构解码操作的简要概述。图6示出在约束长度k=3的格构解码器中的可能的状态跃迁。在格构解码器中可能的状态数目(S)由方程式给出:
       S=2k-1       (1)
因此,在图6中,有四种状态,所以k=3。参考图9,编码器的状态可以由在点300和310处的位的值限定。存在四个这样的状态。当下一个位移到点300时,点300处的值将转移到点310中,点310的值将被丢弃。
与每个状态相关的是状态尺度,它与在此时此状态的残存序列的几率反相地相关,所以,尺度越高,几率可能越低。对于这些状态中的每一个,状态尺度在图6中起始状态上方的括号内。另外,存在一个相关分支尺度,它与从时刻N的一个状态跃迁到时刻N+1的另一个状态的状态跃迁几率反相地相关。所以,例如考虑起始状态01(点290),如果进入编码器的下一位是0,那么,编码器在时刻N+1的状态将是00(点292)。然而,如果起始状态是01(点290)和进入编码器的下一位是1,那么,在N+1的状态将是10(点294)。
通过把时刻N+1的起始状态的状态尺度与跃迁至该状态的分支相加而计算在时刻N+1的状态尺度的值。选择结果为较低状态尺度的分支而丢弃导致那个状态的另外的分支。在图7中,示出了按照图6的状态和分支尺度所选的分支。在N+1时刻,首先在括号中示出新计算的状态尺度,然后示出状态的值由此状态出现所选的跃迁。
例如,如果人们想计算在时刻N+1的状态00(点292)的状态尺度,那么,有两条路径导向状态00。注意:当采用速率1/n的编码器或者基于对速率1/n编码器的数据流的穿孔的编码器时,情况总是这样。一条路径从状态01(点290)引出。在状态01(点290)上的状态尺度是6,跃迁到状态00(点292)的相关分支尺度的值为10。因此,如果选择那个分支,则点状态00在时刻N+1的状态尺度(点292)的值为16。第二条路径从状态00(点288)引出。在状态00(点288)上的状态尺度为4,跃迁到状态00(点292)的相关分支尺度的值为2。因此,如果选择那个分支,则点状态00在时刻N+1的状态尺度(点292)的值是6。所以,选择来自状态00(点288)的分支,给该状态分配状态尺度6。
图8示出一条通过格构的所选路径。由于尾位,最终状态是已知的。在示例的实施例中,因为尾位都是0,已知最终状态是全0状态。由于仅存在一条引导到那个状态的路径,选择的路径是引导到那个已知状态的路径。一旦路径已知,那么数据是通过链式返回操作的方式输出的,这里解码器沿所选路径的轨迹返回和输出导致所选跃迁的位。例如,在从状态10到状态11的跃迁中,位输出具有值1。这是用于选择通过格构最佳路径的方法。下面将更全面地讨论次最佳路径的选择。
图10示出本发明的第一示例实施例的解码器224。将来自符号合并器(未示出)的合并符号提供给分支尺度计算器350。分支尺度计算器的设计和实施是本领域人员公知的。相加比较选择(ACS)元件354按照来自分支尺度计算器350的分支尺度确定状态尺度的值,正如以上参考图10和11所述的。然后,将新计算出的状态尺度存储在状态尺度存储器352中,把所选分支的指示提供给链式返回存储器358。当计算了该帧的所有状态尺度时,链式返回存储器元件358在链式返回控制360的控制下,按照如上所述,选择通过格构的最佳路径,并将已解码数据提供给CRC位校验元件(未示出)。
如果CRC测试失败,那么,确定通过格构的次最佳路径。重新运行寻找通过格构的最佳路径的算法(即维特比算法)。然而,除了以上所述的步骤外,按照例举的实施例,计算通过格构最佳路径与每个时刻被弃路径之间的距离的量度并将其存储在Δ排序装置356中。如果选择被弃路径则ΔS,P的值是状态(S)的尺度值与在所选路径(p)上的状态的尺度值中的差值。
ΔS,P=被弃路径的状态尺度-所选路径的状态尺度
图11示出DS,P值的例子。每条路径具有与其相关的值DP它是相对于最佳路径测量的。DP的值由那个路径与其合并的更好路径的DP和在合并点DS,P上尺度的差给出的。因此,最佳路径的DP的值(即维特比算法的输出)为0。
D排序装置356确定D值的最小值Dmin。在发现Dmin的点处,执行链式返回操作以确定导致岔开点的路径。参考图12,按照如上所述重新进行状态尺度计算过程,由D排序装置356发现最小路径差是在点362处的D5,1。从点362,链式返回存储器358在链式返回控制器360的控制下确定次最佳路径和相应的已解码数据序列。这是在对应于最佳路径的数据中通过替换第一N+6数据位而获得的。在较佳实施例中,链式返回操作是在路径岔开点的一个新约束长度内截取的,因为误差事件很少大于几个约束长度。在图12中,这出现在点364处。在图12中的次最佳路径是DP=D5,1
为了找到第三最佳路径,第三次进行相同的状态尺度计算过程,按照如上所述计算DS,P值,但是这次它们是为相对于次最佳路径的路径选择而计算的。只有在次最佳路径与最佳路径合并前的时刻,需要计算这些。换句话说,在图12和13中的时刻N+5。参考图13,ACS 354计算至第二路径的必要路径差值(D0,2、D1,2、D2,2、D3,2和D4,2)。应当注意:这些尺度中有一些可能以前已经计算过,但是必须再次考虑。用于比较的值不是基于至次最佳路径的距离而是基于至最佳路径的距离。因此,对于提供给D排序装置356的尺度值必须是相对于通过格构的最佳路径。例如,为了得到比较用的尺度差,对于指定D4,2的路径,必须通过使D4,2(离第二路径的距离)与D5,1(第二路径至第一路径的距离)相加而计算该路径的DP值。ACS354把算出的值提供给D排序装置356。然后,D排序装置356通过寻找与最佳和次最佳路径合并的路径的最低的DP值而寻找第三最近路径。
在例举的实施例中,D排序装置356并不存储所有的DP值,而是仅存储最低的M值,这里M是将被搜索的路径的最大数目。然后,对于接下来的每一个第i个最佳路径,仅须存储最小的M-i值。
在另一个实施例中,解码过程不是重新进行寻找每一个次最佳路径,而是为每一次路径搜索存储和重新使用状态尺度。这减少了计算的次数,但是增加了所需的存储量。应当记住,为了说明起见,大大简化了图11-13中所例举的例子。在示例的实施例中,帧的大小为288个信息位,代码的长度为9(k=9),它包括256个状态。因此,假设状态尺度的存储大约需要一个字节的信息,存储每个状态的状态尺度(假设5位状态尺度)所需的存储器则大约需要74千字节的存储器。
图14示出本发明的解码***56的第二示例实施例的装置,图15提供说明本发明第二示例实施例的方法的流程图500。在方框550中,将来自去交织器54的已修改软符号数据的帧提供至并存储在帧缓冲器420中。
然后,在方框552中,按照当前速率假设在符号合并器422中合并符号。合并过程利用了对于小于全速率的速率在发射的符号数据中存在冗余性的事实的有利之处,所以,通过对符号的所有的冗余复本的能量求和能够实现所发射符号数据的更好的估测。在上述的待批美国专利申请08/126,477中详细描述了符号的改善估测的产生过程。
示例的实施例首先测试数据帧是以全速率发射的假设。在全速率假设下,不存在符号重复,所以不进行符号数据的合并。在方框554中,将来自符号合并器422的数据提供给改进的维特比解码器424。在示例的实施例中,改进的维特比解码器424是一种维特比解码器,但是本领域的专业人员将会明白同样可以应用其它形式的格构解码器。维特比解码器的设计和实施在本领域是公知的,在上述的待批美国专利申请08/126,477中描述了维特比解码器的一种特定的实施。在本实施例中,维特比解码器424包括分支尺度计算器450。将来自符号合并器422的合并符号提供给分支尺度计算器450。分支尺度计算器的设计和实施在本领域是众所周知的。相加比较选择(ACS)元件454按照分支尺度计算器450的分支尺度确定状态尺度的值,正如以上参考图6和7所述的。然后,将新算出的状态尺度存储在状态尺度存储器452中并将所选分支的指示提供给链式返回存储器458。当算出该帧的所有的状态尺度时,链式返回存储器元件458在链式返回控制器460的控制下按照如上所述选择通过格构的最佳路径并将解码数据输出到CRC位校验元件432。在方框554中,将计数器i和m的值设定为1。解码器运行的次数由i表示,校验其CRC的路径的个数由m表示。
改进的维特比解码器424由此计算帧中所发射的信息位和CRC位的估测值。在方框556中,CRC测试子***432由解码信息位产生一组冗余位,正如参考图1中CRC发生器6所描述的。CRC测试子***432将由信息位估测值产生的CRC位与由改进的维特比解码器424估测的冗余位进行比较。将比较的结果提供给控制处理器434。
在控制方框558中,如果CRC测试通过,那么,方法继续进行到方框570。在方框570中,符号差错率(SER)计算器428计算已解码帧的符号差错率。SER计算器428产生接收符号数据的硬判定估测值或者从改进的维特比解码器424接收硬判定估测值。然后,SER计算器428从改进的维特比解码器424接收该帧的已解码数据并采用同编码器10进行的相同的编码操作对该帧进行编码,以产生一组重叠编码的符号数据。将重新编码的符号数据逐个符号地与硬判定符号数据进行比较,两组符号数据之间不同的个数就是符号差错率,在方框570中将其提供给选择器430。
在示例的实施例中,只有在对于该速率假设的解码已经通过CRC测试后,输出缓冲器426才把解码符号数据提供给选择器430。在较佳实施例中,改进的维特比解码器424把尺度数据提供给选择器430,以有助于速率选择。提供给选择器的尺度数据可以是单个位的Yamamoto尺度或总尺度。
如果在方框558中CRC测试失败,那么在方框560中,改进的维特比解码器424对于给定的速率假定对符号数据422执行第二轮运行。在这一轮运行中,把改进的维特比解码器认为是对前一轮运行中由维特比解码器找出的最可能的路径进行处理。ACS块454通过格构继续按照计算出的分支尺度450对状态尺度452进行更新,但是这一标准的维特比解码过程除外,给Δ排序电路456输出由输出缓冲器426提供给ACS的与被处理路径(对于解码器的第二轮运行的最佳路径)合并的所有路径的尺度。链式返回控制460进行链式返回,以获得与这一路径相关的数据序列。如果该路径的尺度填满一些判别阈值则才进行链式返回。下面将说明这一阈值判别。把在这一过程中找到的路径存储在输出缓冲器426中。
方框562采用CRC校验器432对由块560找到并存储在缓冲器426中的路径的CRC进行校验。CRC校验的结果由控制器434记录。在方框562中,控制处理器434为这一速率假设增加所发现路径的个数m。在方框586中,控制处理器434增加由改进的维特比解码器424进行的运行次数i。
如果在控制方框556中还未达到最大的运行次数,那么,控制处理器434在方框582中检查其中是否存在已经发现的路径,这些路径还没有经改进的维特比解码器424处理(即,一直还未试图找到与它合并的路径)。如果不存在这样的路径,那么,在方框586中,控制器434指示选择器430解码器未能发现这一速率假设的路径。
如果在控制方框582中仍然存在已经发现的路径,改进的维特比解码器424还未对它们进行处理,那么解码器继续进行到方框566,检查第i个最可能路径(还未对该路径进行处理)的CRC是否具有通过的CRC。如果在控制方框558中CRC校验失败,那么,控制器434指示改进的维特比解码器424对第i个最佳路径进行处理。正如前面所述的,这是在方框560中完成的。
如果在控制方框582中不存在已经发现但是还未进行处理的路径,那么解码器继续进行到方框584,指示选择器430没有发现这一速率假设的路径。如果在控制方框566中已经达到最大的运行的次数,那么,控制处理器434在方框568中检查是否已经发现通过由CRC校验器432进行的CRC校验的路径。如果不存在这样的路径,方法继续进行到方框584。如果存在通过CRC校验的路径,那么,方法继续进行到方框570。
在方框574中,控制处理器434确定是否已经测试了所有可能的速率。如果不是,那么,方法继续进行到方框576,在这里选择下一个待测试的速率,然后方法继续进行到方框552,测试下一个速率假设。响应于来自控制处理器434的信号,帧缓冲器420把帧数据提供给符号合并器422。控制处理器434把指示待测试速率假设的信号提供给符号合并器422。在方框552中,符号合并器422按照待测试的速率假设合并符号数据。方法继续进行到方框544并按照如上所述继续进行。
如果在方框574中已经测试了所有速率,那么,在方框578中选择器430确定发射数据最可能的速率并在方框580中提供对应于该速率的数据。选择器430可以决定删除由于测量质量差而造成的帧。在示例的实施例中,选择器430确定基于不同已解码帧的符号差错率的速率和尺度数据值。
图16示出第二示例实施例的方法的流程图,它说明选择本发明的次最佳路径的阈值技术。这个流程图仅仅说明对于一种给定的速率假设的路径搜索。下列定义有助于对本发明的理解:
p-格构中的路径,这里它将由其信息序列给出;
yp-相对于最佳路径的路径p的尺度;
lp-路径p的最小岔开点;
F-数据的m路径的阵列,它包含它们的信息序列(p)、它们的尺度(yp)和它们的最小岔开点(lp);
Δ(p)-与路径p合并的路径的Yamamoto尺度的矢量;
Δi(p)-矢量Δ(p)的第i个值;
t-阈值,所考虑的所有路径将具有小于t的尺度;
q-从另一个路径(p)岔开的路径,这些路径存储在阵列N中;
T-路径的暂时存储器;
C-具有通过CRC的路径的存储器;以及
“部分链式返回”-是从岔开点的有限长度链式返回。岔开信息序列是通过仅改变从它岔开的路径中的这一有限个数的输出位而获得的。
这个实施方案的两个主要参数是t,阈值和m,重新运行ACS机构的次数。参数n通常较小,在2至4的量级上。
对于给定速率的解码,过程从方框610开始,这里,改进的维特比解码器424进行标准维特比解码。ACS454对状态尺度452进行更新并把判定位输出到链式返回存储器458。CB机构460进行链式返回,以便把解码数据序列输出到位于输出缓冲器426中的存储器阵列F。到这一点,已经采用了标准维特比解码,正如本领域专业人员将会明白的。有两个尺度与最佳路径相关:即相对于最佳路径的尺度yp,它显然为0;和最小岔开点lp,它等于帧长度。这两个参数的重要性将在下文中成为显然的。
在方框612中,控制处理器434识别第一路径及其在位于输出缓冲器426的存储器阵列F中的参数。这一路径以p表示。对于解码器的第一轮运行,这是最佳路径。
在方框614中,由CRC机构432对在方框612中所识别的路径的CRC进行校验。如果CRC通过,那么,过程继续进行到方框616,终止帧的解码。尽管在图16中未特别示出,可以输出或计算涉及该帧的其它数据,例如,重新编码的SER428或已解码帧的类似的尺度。
如果方框614的CRC校验失败,那么,方框618的控制器434重新运行改进的解码器424,寻找与路径p合并的路径。ACS454进行状态尺度计算和更新452直至格构中的点lp。除了通常的相加、比较和选择外,改进的解码器424的ACS454执行附加的功能。这是向Δ排序电路456输出以q表示的路径的Yamamoto尺度的值,它和在格式中的每个指数j到最高为指数lp的路径p合并。在指数j(1≤j≤lp)与p合并的路径q的总尺度由yq=Δi(p)+yp给出。如果这个尺度yq小于某一给定阈值t,那么,链式返回控制460从格构中路径p的指数j起执行部分链式返回,这里指数j的判定位被保留。与指数大于j的路径p的位连锁的链式返回过程的结果形成新的路径q。这一路径q,与其相对于最佳路径的尺度和岔开点lq=j-1一起,存储在输出缓冲器426的阵列N中。
在方框618中,在执行部分链式返回和按照阈值获得新序列后,过程继续进行到方框620。在方框620中,控制434识别在输出缓冲器426中的序列位置。定义阵列T为以前的m条最可能路径和发现的新路径的并集,位于N中。然后把T的m条最可能路径定义为新阵列F。
然后,过程继续进行到方框622,这里对发现的所有新路径的CRC432进行校验。以前定义T中的这些新路径为阵列N。如果这些路径中的任何一条路径通过CRC校验,那么,该路径及其尺度保持在由C表示的阵列中。本领域的专业人员很清楚,在方框622中执行的过程能够同时在方框618的过程中执行。明显地,由T、F、N和C表示的阵列不需要定义为存储器分配阵列,而是指向存储在输出缓冲器中的序列的指针。这些阵列是为了清楚地说明过程而定义的。
如果在方框624中已经到达解码器的最大运行次数(m=1)或者不存在更多的与阈值判据适合的待处理的序列(F是空的),那么,控制处理器434继续进行到方框628。如果在方框628中不存在通过CRC校验的序列,即阵列C是空的,那么,控制处理器434结束当前速率假设的解码过程并给选择器430发信号,没有发现序列。控制处理器434可以向选择器430输出有关未成功地对速率假设解码的数据,例如,最佳路径的可能尺度,在其判定中有助于选择器430。
另一方面,如果在方框628中C不是空的,那么过程继续进行到方框630,这里控制处理器434向选择器430输出通过CRC校验的具有最小尺度的路径。也可以给选择器430提供有关已解码帧的其它数据,例如,SER428和路径的尺度。
如果在方框624中解码器还未达到最大运行次数(m>1)和存在待处理的序列(F不是空的),那么,控制处理器434减小m,过程继续进行到方框612,对下一个最可能的序列(F中的第一序列)继续进行处理。
图17是由本发明的解码方法的第二示例实施例所确定的路径的格构图。在图17中,最佳路径(由维特比解码器424输出的一个,不是所发射的正确的一个)以粗虚线表示。该方法可以通过假设未校验最佳路径的CRC而说明。在解码器的第一次重新运行中,发现3条路径的尺度小于阈值。它们的岔开点是i、j和k,限定信息序列。这些是曾经从最佳路径岔开一次的路径。假设在点j岔开的路径具有最小尺度和未校验其CRC。寻找从这一路径岔开的路径,发现两条路径,具有小于阈值的总尺度。这些路径是j’和j”。现在,进行解码器的第二次重新运行。这一次,对从路径i、k、j’和j”之外的具有最小尺度的路径岔开的路径进行检查。假设k路径具有最小尺度和未校验其CRC。现在寻找从k岔开的路径。在图中,存在三条尺度小于阈值的路径k’、k”和k”’。
注意:对于岔开给定路径的路径的所需的搜索时间不是恒定的,,因为仅需要使解码器运行到岔开点。在下表中可以概括上述例子的解码循环次数:
表1
    解码循环次数     CB循环次数
    寻常维特比算法(VA)寻常VA+来自最佳路径的Δ矢量高达j的VA+来自路径j的Δ矢量高达k的VA+来自路径k的Δ矢量     寻常VA在i,j和k上的部分CB在j’和j”上的部分CB在k’,k”和k”’上的部分CB
应当注意:对于校验合并路径的每个路径可能需要一个附加缓冲器。对于岔开的路径需要一些附加缓冲器。如果未校验CRC能够重新使用这些缓冲器。在图17的例子中,总共发现9条路径,解码器仅运行4(n+2)次。在发现的所有9条可能性很高的路径中,仅保证它们中的4条(N+2)是最可能的。这是第二实施例相对于第一实施例的创新优点,在第一实施例中对于发现的每一条额外路径解码器需要重新运行至少一次(或者对于截取链式返回存储器是两次)。在第二示例实施例中,阈值判别允许人们有时为解码器的每一次重新运行寻找一条以上的路径,不受解码器利用截取链式返回实施的限制。
在十分可靠的CRC(若干个位)的情况中,当找到具有良好CRC的第一序列时能够停止解码过程。在不可靠的CRC的情况中,只要时间允许(下一帧的到达)将多次发现路径。将保持通过CRC校验的所有路径,解码器将决定具有良好CRC的,具有最小尺度的路径。
提供对较佳实施例的以上的描述能够使本领域的专业人员制造或使用本发明。对于本领域专业人员而言,对这些实施例的各种改进是很显然的,这里所限定的一般原理可以应用到其它实施例上,无需利用创造才能。因此,不希望将本发明限于这里所示出的实施例,而是与这里所揭示的原理和新颖特征相一致的最宽的范围。

Claims (12)

1.一种供多速率编码信号用的解码***,所述解码***包括:
解码器装置,用于接收多速率编码数据的帧和对所述的数据帧进行格构解码,以提供一组信息位和至少一个校验位;
校验装置,用于接收所述的信息位和所述的至少一个校验位和按照所述信息位和所述至少一个校验位确定所述解码的有效性;
其特征在于:所述解码器装置进一步包括当所述解码的所述确定的有效性表示对所述帧正确地进行解码而失败时按照所述次最佳路径确定第二组信息位和第二至少一个校验位的装置。
2.如权利要求1所述的解码***,其特征在于:所述的解码装置包括确定所述次最佳路径的装置。
3.如权利要求2所述的解码***,其特征在于:确定所述次最佳路径的装置包括识别其尺度在与通过格构的最佳路径相关的尺度的预定阈值内的次最佳路径的装置。
4.如权利要求1所述的解码***,其特征在于:所述的校验装置包括相对于所述信息位对所述校验位进行循环冗余校验(CRC)的装置。
5.如权利要求1所述的解码***,其特征在于:所述的尺度是Yamamoto尺度。
6.一种供多速率编码信号解码用的解码***,所述解码***包括:
对可由格构表示的多速率编码信息序列进行解码,以提供与最佳路径相关的解码序列的第一装置;
对与所述信息序列有关的校验位进行有效性检验的第二装置;
响应于所述第二装置的用于识别通过所述格构的次最佳路径的第三装置,包括识别其尺度在与通过所述格构的最佳路径相关的尺度的预定阈值内的路径的装置。
7.如权利要求6所述的解码***,其特征在于:所述的进行解码的装置是维特比解码器。
8.如权利要求6所述的解码***,其特征在于:所述的进行有效性检验的装置包括相对于所述信息序列对所述校验位进行循环冗余校验(CRC)的装置。
9.如权利要求6所述的解码***,其特征在于:所述的第三装置包括选择所述路径中的一条路径作为次最佳路径的装置。
10.如权利要求9所述的解码***,其特征在于进一步包括对所述次最佳路径进行循环冗余校验的装置。
11.如权利要求6所述的解码***,其特征在于:所述的尺度是Yamamoto尺度。
12.一种供多速率编码信号用的解码方法,所述解码方法包括步骤:
对可由格构表示的多速率编码信息序列进行解码,以提供与最佳路径相关的解码序列;
对与所述信息序列有关的校验位进行有效性检验;
识别通过所述格构的次最佳路径包括当所确定的校验位的有效性表示对所述序列正确地进行解码而失败时识别其尺度在与通过格构的最佳路径相关的尺度的预定阈值内的路径的步骤。
CN98803554A 1997-03-21 1998-03-20 用crc外码对多速率信号的表输出维特比解码 Pending CN1265787A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/821,845 US6094465A (en) 1997-03-21 1997-03-21 Method and apparatus for performing decoding of CRC outer concatenated codes
US08/821,845 1997-03-21

Publications (1)

Publication Number Publication Date
CN1265787A true CN1265787A (zh) 2000-09-06

Family

ID=25234442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN98803554A Pending CN1265787A (zh) 1997-03-21 1998-03-20 用crc外码对多速率信号的表输出维特比解码

Country Status (19)

Country Link
US (1) US6094465A (zh)
EP (1) EP0970566B1 (zh)
JP (1) JP3998726B2 (zh)
KR (1) KR100634071B1 (zh)
CN (1) CN1265787A (zh)
AT (1) ATE241874T1 (zh)
AU (1) AU6769798A (zh)
BR (1) BR9809566A (zh)
CA (1) CA2284638C (zh)
DE (1) DE69815087T2 (zh)
DK (1) DK0970566T3 (zh)
ES (1) ES2203938T3 (zh)
FI (1) FI118240B (zh)
HK (1) HK1026528A1 (zh)
ID (1) ID24973A (zh)
IL (1) IL131907A0 (zh)
PT (1) PT970566E (zh)
RU (1) RU99122351A (zh)
WO (1) WO1998043360A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100345389C (zh) * 2000-10-05 2007-10-24 三星电子株式会社 用于检测turbo解码器的传输率的装置和方法
CN100347982C (zh) * 2003-09-30 2007-11-07 国际商业机器公司 为具有n块数据的消息产生循环冗余检验的方法和装置
CN1578162B (zh) * 2003-07-22 2010-09-08 日本电气株式会社 数据解码方法和设备及其接收器和通信***
CN1988431B (zh) * 2005-12-21 2010-12-08 美国博通公司 信号处理的方法及***
CN101098211B (zh) * 2005-06-30 2012-01-25 株式会社日立制作所 发送控制装置、接收控制装置、以及通信***
CN102394727B (zh) * 2006-04-24 2015-11-25 高通股份有限公司 无线通信***中的重叠编码

Families Citing this family (123)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185258B1 (en) * 1997-09-16 2001-02-06 At&T Wireless Services Inc. Transmitter diversity technique for wireless communications
US6281929B1 (en) * 1997-09-23 2001-08-28 Zenith Electronics Corporation Testing arrangement for decoders
CA2276207C (en) 1997-10-31 2003-02-18 At&T Wireless Services, Inc. Low complexity maximum likelihood detection of concatenated space codes for wireless applications
US6188736B1 (en) * 1997-12-23 2001-02-13 At&T Wireless Svcs. Inc. Near-optimal low-complexity decoding of space-time codes for fixed wireless applications
US6112325A (en) * 1998-01-23 2000-08-29 Dspc Technologies, Ltd. Method and device for detecting rate
JPH11355150A (ja) * 1998-06-09 1999-12-24 Sony Corp パンクチャドビタビ復号方法
US6269130B1 (en) * 1998-08-04 2001-07-31 Qualcomm Incorporated Cached chainback RAM for serial viterbi decoder
US6459740B1 (en) * 1998-09-17 2002-10-01 At&T Wireless Services, Inc. Maximum ratio transmission
US6278715B1 (en) * 1998-11-05 2001-08-21 Qualcom Incorporated System and method for reducing deinterleaver memory requirements through chunk allocation
JP3239870B2 (ja) * 1998-12-28 2001-12-17 日本電気株式会社 データ誤り訂正システム
US6681203B1 (en) * 1999-02-26 2004-01-20 Lucent Technologies Inc. Coupled error code protection for multi-mode vocoders
US6668352B1 (en) * 1999-04-28 2003-12-23 Samsung Electronics Co., Ltd. Distortion compensating device and method in a multi-code mobile communication system
US6282250B1 (en) 1999-05-05 2001-08-28 Qualcomm Incorporated Low delay decoding
US6378106B1 (en) * 1999-05-28 2002-04-23 Lucent Technologies Inc. Viterbi decoding using single-wrong-turn correction
US6848069B1 (en) * 1999-08-10 2005-01-25 Intel Corporation Iterative decoding process
US6700938B1 (en) * 1999-09-29 2004-03-02 Motorola, Inc. Method for determining quality of trellis decoded block data
JP3524828B2 (ja) * 1999-10-21 2004-05-10 三洋電機株式会社 符号誤り訂正検出装置
US6901118B2 (en) * 1999-12-23 2005-05-31 Texas Instruments Incorporated Enhanced viterbi decoder for wireless applications
US6598189B1 (en) * 2000-04-28 2003-07-22 Nortel Networks Limited Method and apparatus for determining the rate and quality of received data in a variable rate digital communication system
US6594793B1 (en) * 2000-09-08 2003-07-15 Ericsson Inc. Methods and systems for multiplexing and decoding variable length messages in digital communications systems
FI111886B (fi) 2000-12-08 2003-09-30 Nokia Corp Tiedonkäsittelymenetelmä
JPWO2002091656A1 (ja) * 2001-04-25 2004-08-26 三菱電機株式会社 データ復号方法
US7487430B2 (en) * 2002-03-27 2009-02-03 Samsung Electronics Co., Ltd. Apparatus and method for receiving packet data control channel in a mobile communication system
US7162675B2 (en) * 2002-04-05 2007-01-09 Lucent Technologies Inc. Error detection methods in wireless communication systems
KR100431162B1 (ko) * 2002-06-29 2004-05-12 피앤피네트워크 주식회사 코드레이트 검출장치
US7505534B1 (en) 2002-11-04 2009-03-17 Nortel Networks Limited Method for determination of discontinuous transmission, frame erasure, and rate
JP2006507736A (ja) * 2002-11-25 2006-03-02 松下電器産業株式会社 Fec復号化における消失判定手順
US7047475B2 (en) * 2003-02-04 2006-05-16 Hewlett-Packard Development Company, L.P. CRC encoding scheme for conveying status information
US7792134B2 (en) * 2004-04-30 2010-09-07 Alcatel-Lucent Usa Inc. Method and apparatus for detecting an uplink packet data channel in a CDMA wireless communications system
JP4321394B2 (ja) * 2004-07-21 2009-08-26 富士通株式会社 符号化装置、復号装置
US7716565B2 (en) * 2004-08-20 2010-05-11 Broadcom Corporation Method and system for decoding video, voice, and speech data using redundancy
CN1744475B (zh) * 2004-08-20 2011-08-10 美国博通公司 通过冗余和迭代处理进行信号处理的方法和***
US8046662B2 (en) 2004-08-20 2011-10-25 Broadcom Corporation Method and system for decoding control data in GSM-based systems using inherent redundancy
KR100955190B1 (ko) 2004-09-25 2010-04-29 어웨어, 인크. Crc 카운터 정규화
US7607072B2 (en) 2005-01-28 2009-10-20 Agere Systems Inc. Method and apparatus for-soft-output viterbi detection using a multiple-step trellis
US7697483B2 (en) * 2005-04-04 2010-04-13 Ntt Docomo, Inc. Transmitting method, receiving method, radio base station, and mobile station
US8948309B2 (en) * 2005-07-26 2015-02-03 Broadcom Corporation Method and system for redundancy-based decoding of video content in a wireless system
US8295362B2 (en) * 2006-01-05 2012-10-23 Broadcom Corporation Method and system for redundancy-based decoding of video content
FR2890806B1 (fr) * 2005-09-09 2008-02-22 Thales Sa Procede d'amelioration de decodage iteratif de codes
US7809090B2 (en) * 2005-12-28 2010-10-05 Alcatel-Lucent Usa Inc. Blind data rate identification for enhanced receivers
US20070180349A1 (en) * 2006-01-31 2007-08-02 Jacobsen Eric A Techniques for uequal error protection for layered protection applications
US8150662B2 (en) * 2006-11-29 2012-04-03 American Express Travel Related Services Company, Inc. Method and computer readable medium for visualizing dependencies of simulation models
US8111767B2 (en) * 2007-05-31 2012-02-07 Renesas Electronics Corporation Adaptive sliding block Viterbi decoder
US8650352B2 (en) 2007-09-20 2014-02-11 Densbits Technologies Ltd. Systems and methods for determining logical values of coupled flash memory cells
WO2009095902A2 (en) 2008-01-31 2009-08-06 Densbits Technologies Ltd. Systems and methods for handling immediate data errors in flash memory
US8694715B2 (en) 2007-10-22 2014-04-08 Densbits Technologies Ltd. Methods for adaptively programming flash memory devices and flash memory systems incorporating same
US8443242B2 (en) * 2007-10-25 2013-05-14 Densbits Technologies Ltd. Systems and methods for multiple coding rates in flash devices
US8453022B2 (en) 2007-12-05 2013-05-28 Densbits Technologies Ltd. Apparatus and methods for generating row-specific reading thresholds in flash memory
US8335977B2 (en) 2007-12-05 2012-12-18 Densbits Technologies Ltd. Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated BCH codes and/or designation of “first below” cells
WO2009072105A2 (en) 2007-12-05 2009-06-11 Densbits Technologies Ltd. A low power chien-search based bch/rs decoding system for flash memory, mobile communications devices and other applications
WO2009074979A2 (en) * 2007-12-12 2009-06-18 Densbits Technologies Ltd. Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications
WO2009074978A2 (en) 2007-12-12 2009-06-18 Densbits Technologies Ltd. Systems and methods for error correction and decoding on multi-level physical media
US8327246B2 (en) 2007-12-18 2012-12-04 Densbits Technologies Ltd. Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith
JP4806673B2 (ja) * 2007-12-27 2011-11-02 ルネサスエレクトロニクス株式会社 復号装置及び復号方法
TWI351182B (en) * 2008-02-22 2011-10-21 Ralink Technology Corp Power-saving method for use with viterbi decoder and bit processing circuit of wireless receiver
US8972472B2 (en) 2008-03-25 2015-03-03 Densbits Technologies Ltd. Apparatus and methods for hardware-efficient unbiased rounding
US8332725B2 (en) 2008-08-20 2012-12-11 Densbits Technologies Ltd. Reprogramming non volatile memory portions
US8819385B2 (en) 2009-04-06 2014-08-26 Densbits Technologies Ltd. Device and method for managing a flash memory
US8458574B2 (en) 2009-04-06 2013-06-04 Densbits Technologies Ltd. Compact chien-search based decoding apparatus and method
US8566510B2 (en) 2009-05-12 2013-10-22 Densbits Technologies Ltd. Systems and method for flash memory management
US8305812B2 (en) 2009-08-26 2012-11-06 Densbits Technologies Ltd. Flash memory module and method for programming a page of flash memory cells
US8995197B1 (en) 2009-08-26 2015-03-31 Densbits Technologies Ltd. System and methods for dynamic erase and program control for flash memory device memories
US9330767B1 (en) 2009-08-26 2016-05-03 Avago Technologies General Ip (Singapore) Pte. Ltd. Flash memory module and method for programming a page of flash memory cells
US8868821B2 (en) 2009-08-26 2014-10-21 Densbits Technologies Ltd. Systems and methods for pre-equalization and code design for a flash memory
CN101673296B (zh) * 2009-09-02 2011-07-20 太仓市同维电子有限公司 数据通讯过程中文件校验的方法
JP5573053B2 (ja) * 2009-09-04 2014-08-20 ソニー株式会社 無線通信装置および無線通信方法
US20110083065A1 (en) * 2009-10-01 2011-04-07 Telefonaktiebolaget L M Ericsson (Publ) False Detection Reduction in Communication Systems
US8730729B2 (en) 2009-10-15 2014-05-20 Densbits Technologies Ltd. Systems and methods for averaging error rates in non-volatile devices and storage systems
US8724387B2 (en) 2009-10-22 2014-05-13 Densbits Technologies Ltd. Method, system, and computer readable medium for reading and programming flash memory cells using multiple bias voltages
US8626988B2 (en) 2009-11-19 2014-01-07 Densbits Technologies Ltd. System and method for uncoded bit error rate equalization via interleaving
US9037777B2 (en) 2009-12-22 2015-05-19 Densbits Technologies Ltd. Device, system, and method for reducing program/read disturb in flash arrays
US8607124B2 (en) 2009-12-24 2013-12-10 Densbits Technologies Ltd. System and method for setting a flash memory cell read threshold
US8341502B2 (en) 2010-02-28 2012-12-25 Densbits Technologies Ltd. System and method for multi-dimensional decoding
US9104610B2 (en) 2010-04-06 2015-08-11 Densbits Technologies Ltd. Method, system and medium for analog encryption in a flash memory
US8527840B2 (en) 2010-04-06 2013-09-03 Densbits Technologies Ltd. System and method for restoring damaged data programmed on a flash device
US8745317B2 (en) 2010-04-07 2014-06-03 Densbits Technologies Ltd. System and method for storing information in a multi-level cell memory
US9021177B2 (en) 2010-04-29 2015-04-28 Densbits Technologies Ltd. System and method for allocating and using spare blocks in a flash memory
US8539311B2 (en) 2010-07-01 2013-09-17 Densbits Technologies Ltd. System and method for data recovery in multi-level cell memories
US8621321B2 (en) 2010-07-01 2013-12-31 Densbits Technologies Ltd. System and method for multi-dimensional encoding and decoding
US8467249B2 (en) 2010-07-06 2013-06-18 Densbits Technologies Ltd. Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system
US8964464B2 (en) 2010-08-24 2015-02-24 Densbits Technologies Ltd. System and method for accelerated sampling
US8508995B2 (en) 2010-09-15 2013-08-13 Densbits Technologies Ltd. System and method for adjusting read voltage thresholds in memories
US9063878B2 (en) 2010-11-03 2015-06-23 Densbits Technologies Ltd. Method, system and computer readable medium for copy back
US8850100B2 (en) 2010-12-07 2014-09-30 Densbits Technologies Ltd. Interleaving codeword portions between multiple planes and/or dies of a flash memory device
US10079068B2 (en) 2011-02-23 2018-09-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Devices and method for wear estimation based memory management
US8693258B2 (en) 2011-03-17 2014-04-08 Densbits Technologies Ltd. Obtaining soft information using a hard interface
US8990665B1 (en) 2011-04-06 2015-03-24 Densbits Technologies Ltd. System, method and computer program product for joint search of a read threshold and soft decoding
US9501392B1 (en) 2011-05-12 2016-11-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Management of a non-volatile memory module
US9195592B1 (en) 2011-05-12 2015-11-24 Densbits Technologies Ltd. Advanced management of a non-volatile memory
US9110785B1 (en) 2011-05-12 2015-08-18 Densbits Technologies Ltd. Ordered merge of data sectors that belong to memory space portions
US9396106B2 (en) 2011-05-12 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US8996790B1 (en) 2011-05-12 2015-03-31 Densbits Technologies Ltd. System and method for flash memory management
US9372792B1 (en) 2011-05-12 2016-06-21 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US8667211B2 (en) 2011-06-01 2014-03-04 Densbits Technologies Ltd. System and method for managing a non-volatile memory
US8588003B1 (en) 2011-08-01 2013-11-19 Densbits Technologies Ltd. System, method and computer program product for programming and for recovering from a power failure
US8553468B2 (en) 2011-09-21 2013-10-08 Densbits Technologies Ltd. System and method for managing erase operations in a non-volatile memory
US8996788B2 (en) 2012-02-09 2015-03-31 Densbits Technologies Ltd. Configurable flash interface
US8947941B2 (en) 2012-02-09 2015-02-03 Densbits Technologies Ltd. State responsive operations relating to flash memory cells
US8996793B1 (en) 2012-04-24 2015-03-31 Densbits Technologies Ltd. System, method and computer readable medium for generating soft information
US8838937B1 (en) 2012-05-23 2014-09-16 Densbits Technologies Ltd. Methods, systems and computer readable medium for writing and reading data
US8879325B1 (en) 2012-05-30 2014-11-04 Densbits Technologies Ltd. System, method and computer program product for processing read threshold information and for reading a flash memory module
US9921954B1 (en) 2012-08-27 2018-03-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for split flash memory management between host and storage controller
US9368225B1 (en) 2012-11-21 2016-06-14 Avago Technologies General Ip (Singapore) Pte. Ltd. Determining read thresholds based upon read error direction statistics
US9069659B1 (en) 2013-01-03 2015-06-30 Densbits Technologies Ltd. Read threshold determination using reference read threshold
US9136876B1 (en) 2013-06-13 2015-09-15 Densbits Technologies Ltd. Size limited multi-dimensional decoding
US9413491B1 (en) 2013-10-08 2016-08-09 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for multiple dimension decoding and encoding a message
US9348694B1 (en) 2013-10-09 2016-05-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Detecting and managing bad columns
US9786388B1 (en) 2013-10-09 2017-10-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Detecting and managing bad columns
US9397706B1 (en) 2013-10-09 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for irregular multiple dimension decoding and encoding
US9536612B1 (en) 2014-01-23 2017-01-03 Avago Technologies General Ip (Singapore) Pte. Ltd Digital signaling processing for three dimensional flash memory arrays
US10120792B1 (en) 2014-01-29 2018-11-06 Avago Technologies General Ip (Singapore) Pte. Ltd. Programming an embedded flash storage device
US9542262B1 (en) 2014-05-29 2017-01-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Error correction
US9892033B1 (en) 2014-06-24 2018-02-13 Avago Technologies General Ip (Singapore) Pte. Ltd. Management of memory units
US9972393B1 (en) 2014-07-03 2018-05-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Accelerating programming of a flash memory module
US9584159B1 (en) 2014-07-03 2017-02-28 Avago Technologies General Ip (Singapore) Pte. Ltd. Interleaved encoding
US9449702B1 (en) 2014-07-08 2016-09-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Power management
US9524211B1 (en) 2014-11-18 2016-12-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Codeword management
US10305515B1 (en) 2015-02-02 2019-05-28 Avago Technologies International Sales Pte. Limited System and method for encoding using multiple linear feedback shift registers
TWI569589B (zh) * 2015-05-13 2017-02-01 晨星半導體股份有限公司 維特比解碼裝置及維特比解碼方法
CN106301395A (zh) * 2015-06-10 2017-01-04 晨星半导体股份有限公司 维特比解码装置及维特比解码方法
US10628255B1 (en) 2015-06-11 2020-04-21 Avago Technologies International Sales Pte. Limited Multi-dimensional decoding
US9851921B1 (en) 2015-07-05 2017-12-26 Avago Technologies General Ip (Singapore) Pte. Ltd. Flash memory chip processing
US9954558B1 (en) 2016-03-03 2018-04-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Fast decoding of data stored in a flash memory

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4748626A (en) * 1987-01-28 1988-05-31 Racal Data Communications Inc. Viterbi decoder with reduced number of data move operations
US4845714A (en) * 1987-06-08 1989-07-04 Exabyte Corporation Multiple pass error correction process and apparatus for product codes
US5023889A (en) * 1988-05-31 1991-06-11 California Institute Of Technology Trellis coded multilevel DPSK system with doppler correction for mobile satellite channels
US5056117A (en) * 1989-08-07 1991-10-08 At&T Bell Laboratories Decision feedback equalization with trellis coding
CA2020899C (en) * 1989-08-18 1995-09-05 Nambirajan Seshadri Generalized viterbi decoding algorithms
US5208816A (en) * 1989-08-18 1993-05-04 At&T Bell Laboratories Generalized viterbi decoding algorithms
US5416787A (en) * 1991-07-30 1995-05-16 Kabushiki Kaisha Toshiba Method and apparatus for encoding and decoding convolutional codes
JP2683665B2 (ja) * 1991-11-27 1997-12-03 日本電気株式会社 最尤系列推定装置
ZA93290B (en) * 1992-01-16 1993-11-22 Qualcomm Inc Method and apparatus for the formatting of data for transmission
JPH06334697A (ja) * 1993-05-20 1994-12-02 Matsushita Electric Ind Co Ltd 誤り検出方法
US5509020A (en) * 1993-05-27 1996-04-16 Sony Corporation Viterbi decoding apparatus and methods
US5577053A (en) * 1994-09-14 1996-11-19 Ericsson Inc. Method and apparatus for decoder optimization
JP3169522B2 (ja) * 1995-01-19 2001-05-28 沖電気工業株式会社 データ受信装置
US5703902A (en) * 1995-06-16 1997-12-30 Qualcomm Incorporated Method and apparatus for determining signal strength in a variable data rate system
US5784392A (en) * 1995-06-26 1998-07-21 Nokia Mobile Phones Ltd. Viterbi decoder with l=2 best decoding paths
US5883923A (en) * 1995-09-18 1999-03-16 Oki Electric Industry Co., Ltd. Data receiver with symbol rate discrimination and statistical analysis functions
US5751725A (en) * 1996-10-18 1998-05-12 Qualcomm Incorporated Method and apparatus for determining the rate of received data in a variable rate communication system
US5872775A (en) * 1996-10-30 1999-02-16 Qualcomm Incorporated Method and apparatus for performing rate determination

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100345389C (zh) * 2000-10-05 2007-10-24 三星电子株式会社 用于检测turbo解码器的传输率的装置和方法
CN1578162B (zh) * 2003-07-22 2010-09-08 日本电气株式会社 数据解码方法和设备及其接收器和通信***
CN100347982C (zh) * 2003-09-30 2007-11-07 国际商业机器公司 为具有n块数据的消息产生循环冗余检验的方法和装置
CN101098211B (zh) * 2005-06-30 2012-01-25 株式会社日立制作所 发送控制装置、接收控制装置、以及通信***
CN1988431B (zh) * 2005-12-21 2010-12-08 美国博通公司 信号处理的方法及***
CN102394727B (zh) * 2006-04-24 2015-11-25 高通股份有限公司 无线通信***中的重叠编码

Also Published As

Publication number Publication date
ES2203938T3 (es) 2004-04-16
EP0970566B1 (en) 2003-05-28
RU99122351A (ru) 2001-08-27
CA2284638A1 (en) 1998-10-01
KR20010005541A (ko) 2001-01-15
PT970566E (pt) 2003-10-31
EP0970566A1 (en) 2000-01-12
DE69815087D1 (de) 2003-07-03
DK0970566T3 (da) 2003-09-22
US6094465A (en) 2000-07-25
WO1998043360A1 (en) 1998-10-01
FI19991971A (fi) 1999-11-22
ID24973A (id) 2000-08-31
JP2001520834A (ja) 2001-10-30
DE69815087T2 (de) 2004-04-01
IL131907A0 (en) 2001-03-19
KR100634071B1 (ko) 2006-10-13
AU6769798A (en) 1998-10-20
ATE241874T1 (de) 2003-06-15
JP3998726B2 (ja) 2007-10-31
CA2284638C (en) 2007-07-24
FI118240B (fi) 2007-08-31
HK1026528A1 (en) 2000-12-15
BR9809566A (pt) 2000-07-04

Similar Documents

Publication Publication Date Title
CN1265787A (zh) 用crc外码对多速率信号的表输出维特比解码
EP1628405B1 (en) List output Viterbi decoding using CRC constraint tests and physical constraint tests
US7752522B2 (en) Method and apparatus for recovery of particular bits of a frame
US6813323B2 (en) Decoding method and communication terminal apparatus
JP3169522B2 (ja) データ受信装置
US6944348B2 (en) Apparatus and method for coding/decoding
KR101551261B1 (ko) 전송된 메시지들에 대한 다중 가설들을 사용한 디코딩 방식
US20090276221A1 (en) Method and System for Processing Channel B Data for AMR and/or WAMR
CN1234929A (zh) 进行数据速率确定的方法和装置
US20100153103A1 (en) Method and system for decoding wcdma amr speech data using redundancy
US7706481B2 (en) Method and system for improving reception in wired and wireless receivers through redundancy and iterative processing
US6732321B2 (en) Method, apparatus, and article of manufacture for error detection and channel management in a communication system
US5917837A (en) Method and apparatus for performing decoding of codes with the use of side information associated with the encoded data
WO1998011670A9 (en) Method and apparatus for performing decoding of codes at variable data rates
JP2006505983A (ja) フォーマット検出
CN1272254A (zh) 具有简化的信道译码器的传输***
US8019615B2 (en) Method and system for decoding GSM speech data using redundancy
JP2002501328A (ja) 情報を、ソース制御チャネルデコーディングを使用してコーディング、デコーディングおよび伝送するための方法および装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20000906