CN1144377C - 信道编码装置 - Google Patents

信道编码装置 Download PDF

Info

Publication number
CN1144377C
CN1144377C CNB998005568A CN99800556A CN1144377C CN 1144377 C CN1144377 C CN 1144377C CN B998005568 A CNB998005568 A CN B998005568A CN 99800556 A CN99800556 A CN 99800556A CN 1144377 C CN1144377 C CN 1144377C
Authority
CN
China
Prior art keywords
bit
parity check
data bit
delayer
switch
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.)
Expired - Lifetime
Application number
CNB998005568A
Other languages
English (en)
Other versions
CN1263650A (zh
Inventor
金宰烈
朴昌洙
姜熙原
孔骏镇
卢宗善
梁景喆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1263650A publication Critical patent/CN1263650A/zh
Application granted granted Critical
Publication of CN1144377C publication Critical patent/CN1144377C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/04TPC
    • H04W52/30TPC using constraints in the total amount of available transmission power
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q1/00Details of selecting apparatus or arrangements
    • H04Q1/02Constructional details
    • H04Q1/14Distribution frames
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory 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
    • H03M13/2903Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent 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
    • H03M13/2957Turbo codes and decoding
    • H03M13/2993Implementing the return to a predetermined state, i.e. trellis termination
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6356Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4006Conversion to or from arithmetic code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/25Arrangements specific to fibre transmission
    • H04B10/2575Radio-over-fibre, e.g. radio frequency signal modulated onto an optical carrier
    • H04B10/25752Optical arrangements for wireless networks
    • H04B10/25753Distribution optical network, e.g. between a base station and a plurality of remote units
    • H04B10/25754Star network topology
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • H04B7/26Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
    • H04B7/2628Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile using code-division multiple access [CDMA] or spread spectrum multiple access [SSMA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0077Multicode, e.g. multiple codes assigned to one user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/16Code allocation
    • 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/0064Concatenated codes
    • H04L1/0066Parallel concatenated codes
    • 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
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/48Message addressing, e.g. address format or anonymous messages, aliases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/58Message adaptation for wireless communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/12Setup of transport tunnels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1016IP multimedia subsystem [IMS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/20Control channels or signalling for resource management
    • H04W72/23Control channels or signalling for resource management in the downlink direction of a wireless link, i.e. towards a terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/26Network addressing or numbering for mobility support
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/08Access point devices
    • H04W88/085Access point devices with remote components
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S370/00Multiplex communications
    • Y10S370/901Wide area network
    • Y10S370/902Packet switching
    • Y10S370/903Osi compliant network
    • Y10S370/906Fiber data distribution interface, FDDI
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S370/00Multiplex communications
    • Y10S370/901Wide area network
    • Y10S370/902Packet switching
    • Y10S370/903Osi compliant network
    • Y10S370/907Synchronous optical network, SONET

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Error Detection And Correction (AREA)
  • Communication Control (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

公开了一种在通信***的递归***编码器中采用具有终止效果的帧结构执行信道编码的装置。所述信道编码装置具有:一***器,用于将至少一个预定位***在输入数据位流的预定位置;一第一分支编码器,用于对所述位***的数据位流进行编码,以产生第一奇偶校验符号流,并且输出所产生的作为第一奇偶校验符号流的奇偶校验符号;一交织器,用于对所述位***的数据位流进行交织;和一第二分支编码器,用于对所述交织器的输出进行编码,以产生第二奇偶校验符号流,并且输出所产生的作为第二奇偶校验符号流的奇偶校验符号。

Description

信道编码装置
                           技术领域
本发明一般涉及用于以帧为单位进行数据通信的装置和方法,特别涉及信道编码装置和方法。
                           背景技术
在用于处理声音、字符、图像和视频信号的通信***中,数据通常是以连续的帧传送的。此外,在用于进行这样的帧数据通信的***中,还应采用用于纠错的信道编码器来编码帧单元中的数据。在这种情况下,该信道编码器将尾部位(tail bit)***在数据帧末端,以将卷积编码器复位到已知状态,并使解码器采用此信息有效地对各帧解码。一种IS-95***通常采用非递归(non-recursive)***卷积编码器,将与串行时延数据序列的分支(tap)数目相同量的一序列零(0)位加到每帧的末端,以实现帧终止,因为输入位被反馈给延迟器。
图1是作为通常的递归***编码器的turbo编码器的方框图。该turbo编码器采用两个简单的分支编码器(constituent encoder)将N位输入帧编码为奇偶校验符号,并具有串行或并行结构。此外,该turbo编码器将递归***卷积代码用作分支代码。
图1所示的是传统的并行turbo编码器,这是由Berrou发表公开的美国专利No.5,446,747,可作为本发明的参考。图1的turbo编码器包括设置于第一分支编码器110和第二分支编码器130之间的交织器120。交织器120具有与输入数据位的帧长度N相同的大小,并改变要输入到第二分支编码器130的数据位的排列,以减少奇偶校验位之间的相关性。
第一分支编码器110对输入数据位进行编码,而交织器120按照特定规则来交织该输入数据位,以改变该数据位的排列。第二分支编码器130对交织器120的输出进行编码。分支编码器110和130具有相同的结构。
图2是说明图1的递归***卷积编码器中的终止方案(termination scheme)的图。要了解更详细的信息请参见D.Divsalar和F.Pollara的《turbo代码的设计(On the Design of Turbo codes)》,该文于1995年11月15日发表于《TDA进展报道42-123(TDA Progress Report)》,并且也可以作为本发明的参考。这里,输入到第一和第二分支编码器110和130的一帧数据被假定为20位数据。在图2中,D1-D4表示延迟器,而XOR1-XOR6表示异或门。
参照图2,为进行编码,开关SW1接通,而开关SW2断开。然后,20位的输入帧数据顺序施加到延迟器D1-D4,并由异或门XOR1-XOR6进行异或,从而在XOR6输出编码位。当以这种方式将20个数据位都进行了编码时,开关SW1断开,而开关SW2接通,以终止帧。然后,异或门XOR1-XOR4对延迟器的输出数据位和相应的反馈数据位分别进行异或,从而输出零位。所得的零位再一次顺序输入到延迟器D1-D4并存储在其中。这些输入到延迟器D1-D4的零位变为尾部位,并且这些尾部位也由分支编码器编码,然后输出施加到多路复用器的尾部奇偶校验位。
所述多路复用器对从分支编码器输出的编码数据位和尾部奇偶校验位多路复用。所产生的尾部位数目取决于包含在分支编码器110和130中的延迟器的数目。图2中的终止方案对每帧产生4个尾部位和用于各尾部位的4个编码位(尾部奇偶校验位),不期望地增加了最终编码位的数目,这就导致了位速率的下降。也就是说,当将编码速率确定为(输入数据位数目)/(输出数据位数目)时,具有图1结构的turbo代码的编码速率为(输入数据位数目)/{(第一分支编码器编码数据位的数目+第一尾部位+第一尾部奇偶校验位)+(第二分支编码器编码数据位的数目+第二尾部奇偶校验位)}。因此,在图1中,由于帧数据由20位组成并且延迟器的数目为4,故位速率变为20/{(20)+(20+4+4)+(20+4+4)}。
这样的递归***卷积编码器的性能依赖于缀尾方法(tailing method),因为很难完美地对turbo代码缀尾。
                         发明内容
因此,本发明的一个目的是提供一种在移动***的递归***编码器中采用具有终止作用的帧结构来执行信道编码的装置和方法。
本发明的另一个目的是提供一种递归***信道编码装置和方法,用于在信道编码之前将具有特定值的位***数据帧中预定位置,以获得终止效果。
本发明的另一个目的是提供一种递归***信道编码装置和方法,用于在信道编码之前将具有特定值的位***输入帧数据位流的预定位置,对包括***位的输入数据位进行信道编码,在输入帧数据位流的位***位置处对超出帧长度的***位和编码数据位进行穿孔(puncturing)。
本发明的另一个目的是提供一种信道编码装置和方法,用于将具有特定值的位***帧数据的预定位置,以对包括***位的输入数据位进行编码,采用递归***分支编码器产生编码符号和尾部奇偶校验,并对***位进行穿孔,以将尾部奇偶校验***在穿孔的***位位置处。
为达到上述目的,提供了一种信道编码装置。在该信道编码装置中,一个位***器将具有特定值的位***数据位中具有较高差错发生概率的位位置。一分支编码器对所述位***器的输出编码。一选择器选择所述位***器的输出和所述分支编码器的输出,并将所选值作为信道编码数据输出。
具体来讲,本发明提供了一种信道编码装置,其包括:一***器,用于将至少一个预定位***在输入数据位流的预定位置;一第一分支编码器,用于对所述位***的数据位流进行编码,以产生第一奇偶校验符号流,并且输出所产生的作为第一奇偶校验符号流的奇偶校验符号;一交织器,用于对所述位***的数据位流进行交织;和一第二分支编码器,用于对所述交织器的输出进行编码,以产生第二奇偶校验符号流,并且输出所产生的作为第二奇偶校验符号流的奇偶校验符号。
                       附图说明
从下列参照附图的详细描述中,本发明的上述和其它目的、特征和优点将变得更加明白,附图中相同的标号表示相同的部分。在附图中:
图1是说明用于通信***的传统信道编码器的图;
图2是说明图1的分支编码器(110和130)的图;
图3是说明按照本发明第一实施例的信道编码器的图;
图4是图3的位***器(310)的详图;
图5是说明图3的分支编码器(320和340)的详图;
图6是解释按照所述第一实施例的、随时间的经过而进行的位处理过程的图;
图7是说明按照本发明第二实施例的信道编码器的图;
图8是说明图7的多路复用器(750)的详图;
图9是解释按照所述第二实施例的、随时间的经过而进行的位处理过程的图;
图10是说明按照本发明第三实施例的信道编码器的图;
图11是说明图10的分支编码器(1020或1040)的详图;
图12是说明图10的多路复用器(1050)的详图;
图13是解释按照所述第三实施例的、随时间的经过而进行的位处理过程的图;
图14是说明按照本发明第四实施例的信道编码器的图;
图15A是说明图14的位***器(1410)的详图;
图15B是说明图14的分支编码器(1420或1440)的详图;
图16是说明图14的多路复用器(1450)的详图;
图17是解释按照所述第四实施例的、随时间的经过而进行的位处理过程的图;
图18是说明按照本发明第五实施例的信道编码器的图;
图19是说明图18的位***器(1810)的详图;
图20是说明图18的分支编码器(1820或1840)的详图;
图21是说明图18的多路复用器(1850)的详图;
图22是说明按照本发明第六实施例的信道编码器的图;
图23是说明图22的多路复用器(2250)的详图;
图24是说明按照本发明第七实施例的信道编码器的图;
图25是说明图24的多路复用器(2450)的详图;
图26是说明按照本发明第八实施例的信道编码器的图;
图27是说明图26的多路复用器(2650)的详图;
图28是说明按照本发明第九实施例的信道编码器的图;
图29是说明图28的位***器(2810)的详图;和
图30是说明图28的多路复用器(2850)的详图。
                        具体实施方式
下面将参照附图描述本发明的优选实施例。在下面的描述中,公知的功能或结构没有被详细描述,以防它们以不必要的细节影响本发明。
这里所用的术语“数据位”是指没有被编码的数据,而术语“奇偶校验位”是指由分支编码器编码的数据。
通常,在通信***中,发送器采用信道编码器对发送数据编码并送出所编码的数据;然后由接收器对从发送器接收的数据解调,以将所接收数据转换为原始数据。这里,信道编码器以帧为单元对发送数据编码并产生尾部位,这些尾部位被附加到发送数据的每帧,以指示帧的终止。本发明提出了一种在信道编码器中具有终止效果的帧结构。
所述具有终止效果的帧结构可用下列几种方式来实现:
第一,将与尾部位数目同样多的已知位***一个信道帧中具有较高差误发生概率的位置处。这里,递归***分支编码器可以不具有产生尾部位的结构。差误概率是由实验方式确定的,并且***位置应当对信道编码器和信道解码器都为已知。***位位置可通过在呼叫建立过程中或在信道分配过程中发送相关消息来得知。要***的已知位可以是即使不被传送也对通信性能影响极小的不重要的位。所述已知位还可以是用接收器预定的编码位或数据位。在此,它们被假定是零位。
第二,将与尾部位数目同样多的所述已知位***所述信道帧中具有较高差误发生概率的位置处,其中***的所述已知位的数目超过预定帧长度。采用分支编码器对位***的数据位进行编码。然后,当输出信道编码数据时,超过信道编码数据的帧长度的位被在输入数据的位***位置穿孔。这里,递归***编码器不产生尾部位并且信道解码器应当预先知道位***位置。
第三,在采用具有终止效果的帧结构产生信道编码信号的过程中,将与尾部位数目同样多的、所述已知的位***所述信道帧中具有较高差误发生概率的位置处;分支编码器产生用于终止的尾部位和用于尾部位的编码数据,之后,在特定***位置处对数据位穿孔,以将尾部位和用于尾部位的编码数据***穿孔位***位置。
第四,不产生所述尾部位,并且所述已知位***在所述信道帧中具有较高差错发生概率的位置处。在位***位置,多个编码数据位而不是***位被重复发送。
第五,为了终止,将具有特定逻辑的位***数据位中具有较高差错概率的位位置处。一分支编码器对位***的数据位进行编码并产生附加到编码数据位的尾部位。也就是说,该分支编码器通过位***和尾部位附加来执行终止功能。
第六,执行与第五种方式中相同的操作。此外,在位***位置处对***位进行穿孔,并且,第一分支编码器在穿孔位置重复地发送最后4个尾部奇偶校验位。
第七,执行与第六种方式中相同的操作。此外,在位***位置处对***位进行穿孔,并且,第二分支编码器在穿孔位置重复地发送最后4个奇偶校验位。
第八,为了终止,将具有特定逻辑的位***数据位中具有较高差错概率的位位置处。一分支编码器对位***的数据位进行编码并内部产生附加到编码数据位的尾部位。
第九,为了终止,将具有特定逻辑的6位***数据位中具有较高差错概率的位位置处。一位***器在所述位***位置对***位穿孔。第一分支编码器在穿孔位置执行缀尾并对包括尾部位的数据位进行交织。当对第一分支编码器的输出编码时,第二分支编码器将超过帧长度的6位***在穿孔的位***位置。
现在,请参见下面使用上述位***方法的九个不同的实施例。
第一实施例
按照本发明第一实施例的编码器不产生尾部位,而是在预定位置***已知位以执行终止功能。在本实施例中,一个帧具有16个数据位,并将每个都为零的8个已知位代码***帧中具有较高差错概率的位位置处。这里,位***位置是通过在解码编码数据的过程中实验检测最多差错发生的位置而确定的。此外,turbo编码器采用1/3的编码率。
在本实施例中,当采用具有1/3编码率的turbo编码器编码24位帧数据(16个帧数据位加上8个已知位)时,在解码期间通过实验来确定具有较高差错概率的位置。具有相对较高差错概率的8位位置被确定,并在被确定位置将已知位***在输入帧数据位。这里,解码器在解码***了特定代码的编码帧数据时,了解位***位置。
当已知位为零位时(实际上,“0”位是作为“-1”来发送的),***位置的零位在解码前被改变为大的负值(例如,-5),以便增加可靠性。以此方式,解码器解码各位,即已知所述24位的1/3的8位,从而提高了性能。在这种情况下,由于帧变短而使性能提高。
图3是说明按照本发明第一实施例的、具有用于***已知位的位***器的turbo编码器的图。位***器310包括用于通过处理输入数据位来产生已知位的一位产生器,并通过将由该位产生器产生的已知位***预定位***位置来以帧为单位产生数据位。第一分支编码器320对从位***器310输出的数据位进行编码。交织器330按照预定规则以帧为单位来交织从位***器310输出的数据位,以改变数据位的排列(或顺序)。在本示例中,将一对角交织器用于交织器330。第二分支编码器340对从交织器330输出的交织数据位以帧为单位进行编码。一递归***卷积编码器可被用于所述第一和第二分支编码器320和340。多路复用器(MUX)350在一未描述的控制器的控制下,对位***器310、第一分支编码器320和第二分支编码器340的输出进行多路复用。这里,位***器310输出数据位流Ik,第一分支编码器320输出第一奇偶校验位P1k,而第二分支编码器340输出第二奇偶校验位P2k
图4是说明图3的turbo编码器中的位***器310的图。参照图4,位产生器430产生要***在数据位中的已知位。这里,假定这些已知位为零位。延迟器412-426可由如触发器(flip-flop)等的存储单元组成,并且可以具有串行移位寄存器结构,用于按照位时钟来移位输入数据位。开关432在未描述的控制器的控制下进行切换,以选择延迟器412-426的输出。此外,开关432还在所述未描述的控制器的控制下,切换到从位产生器430输出的一已知位***在数据位中的位置处的下一延迟器的输出。也就是说,当选择的已知位***在数据位中时,开关432选择被延迟1位的数据位。开关432可由多路复用器来实现。开关434在所述未描述的控制器的控制下切换到位产生器430和开关432的输出,以产生数据位Ik。开关434在所述控制器的控制下将已知位***在输入数据位中的预定位置处。
下面将参照图4描述在数据位中***已知位的操作。由延迟器412-426按照位时钟来延迟输入数据位。首先,开关432选择输入数据位,而开关434连接到开关432。然后,输入数据位通过开关432和434来输出。同时,如果位***位置被确定,则在控制器的控制下,开关432连接到延迟器412的输出,而开关434连接到位产生器430的输出。结果,用于数据位的路径被切断,并且从位产生器430输出的零位***在相应位位置。在数据位应当在***零位之后连续输出的情况下,开关434再一次由控制器连接到开关432。也就是说,由于在***零位之后选择一位延迟的数据位,可在预定位置***零位而无数据位的丢失。
通过重复此过程而将零位***在一帧的数据位中。当在***零位之后接收到用于下一帧的数据位时,开关432连接到数据位输入节点,然后再次重复上面的过程。在数据位被编码用于通信的情况下,在输入到各分支编码器的数据位流的后面部分的差错概率相对较高。因此,从位产生器430输出的零位被***的位置可大多位于数据位流的后面部分,例如如表1所示。
表1
 I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11  Ib1 I12 I13 I14  Ib2 I15 I16  Ib3  Ib4  Ib5  Ib6  Ib7  Ib8
其中Ix表示数据位,而Ibx表示***位。
在数据位流中***已知位的原因是为了提高接收器方的解码性能。因此,最好将与尾部位数目一样多的已知位***在信道帧中具有较高差错发生概率的位位置处。在多数情况下,具有较高差错发生概率的位位置分布在输入到分支编码器的数据位流的后面部分,如表1所示。因此,将已知位***在输入到第一和第二分支编码器320和340的数据位流的后部。这里,对于第二分支编码器340,已知位应当***在从交织器330输出的交织数据位的后面部分。因此,位***器310在将已知位***提供给第二分支编码器340的数据位中时应当考虑这个情况。
从位***器310输出的表1的数据位提供给第一分支编码器320和交织器330。从交织器330输出的帧单元中的交织数据位被第二分支编码器340编码。图5示出了图3的第一和第二分支编码器320和340的结构。如图所示,第一和第二分支编码器320和340是递归***卷积编码器。此外,分支编码器320和340具有不产生尾部位的结构,如图5所示。
第一分支编码器320对从位***器310输出的表1的数据位进行编码。从第一分支编码器320输出的编码数据位如表2所示。
表2
 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11  Cb1 C12 C13 C14  Cb2 C15 C16  Cb3  Cb4  Cb5  Cb6  Cb7  Cb8
其中Cx表示从第一分支编码器320输出的符号,而Cbx表示从第一分支编码器320输出的***位的符号。这里所述的是turbo编码器320具有1/3的编码率的情况。
同时,交织器330对从位***器310输出的数据位进行交织,而第二分支编码器340对从交织器330输出的交织数据位编码。从第二分支编码器340输出的编码数据位示于表3。
表3
 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11  Db1 D12 D13 D14  Db2 D15 D16  Db3  Db4  Db5  Db6  Db7  Db8
其中Dx表示从第二分支编码器340输出的符号,而Dbx表示从第二分支编码器340输出的***位的符号。这里所述的是turbo编码器340具有1/3的编码率的情况。虽然数据位的顺序实际上是通过交织来重排的,但表3的顺序保持不便,以便于解释。
然后,多路复用器350在未描述的控制器的控制下,对位***器310、第一分支编码器320和第二分支编码器340的输出进行多路复用。表4所示的是从多路复用器350输出的信道编码数据位。
表4
 I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11  Ib1 I12 I13 I14  Ib2 I15 I16  Ib3  Ib4  Ib5  Ib6  Ib7  Ib8C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11  Cb1 C12 C13 C14  Cb2 C15 C16  Cb3  Cb4  Cb5  Cb6  Cb7  Cb8D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11  Db1 D12 D13 D14  Db2 D15 D16  Db3  Db4  Db5  Db6  Db7  Db8
信道编码器的性能可按照已知位的***位置来变化。例如,可以通过将已知位以规则间隔***输入数据位流来提高信道编码器的性能,如表5所示。
表5
 I1 I2 I3 I4  Ib1  Ib2 I5 I6 I7 I8  Ib3  Ib4 I9 I10 I11 I12  Ib5  Ib6 I13 I14 I15 I16  Ib7  Ib8
其中Ix表示数据位,而Ibx表示***位。
因此,如表5所示,最好以规则间隔将与连续编码器中的存储器数目同样多的已知位连续***在输入数据位流中(例如,对于约束长度为3的情况,连续***两个已知位)。
图6是按照本发明第一实施例的、图3的turbo编码器的定时图。参照图6,在间隔T1中,位***器310将零位***在帧中预定位位置处,以产生表1的数据位Ik(参见611)。在间隔T2中,***零位的数据位Ik被同时加到多路复用器350、第一分支编码器320和交织器330。然后,第一分支编码器320对该***零位的数据位Ik编码,以产生作为第一奇偶校验位的第一编码数据位Ck(参见612),并且交织器330按照预定规则对该***零位的数据位Ik进行交织(参见613)。之后,在间隔T3中,多路复用器350将从位***器310输出的数据位Ik延迟一个帧周期,第一分支编码器320将第一编码数据位Ck输入到多路复用器350,并且第二分支编码器340对从交织器330输出的交织的数据位Ik进行编码,以产生作为第二奇偶校验位的第二编码数据位Dk。当第二分支编码器340产生了第二奇偶校验位Dk时,多路复用器350在间隔T4中对数据位Ik、第一奇偶校验位Ck和第二奇偶校验位Dk进行多路复用。
虽然图6示出了并行处理数据位Ik、第一奇偶校验位Ck和第二奇偶校验位Dk的例子,但也可以以位产生顺序串行输出位***器310、第一分支编码器320和第二分支编码器340的输出。
正如从上面的描述中所看到的,在按照所述第一实施例的递归***turbo编码器中,各个分支编码器不产生用于终止的尾部位,而是将已知位(即,零位)***在具有较高差错概率的位位置处。
第二实施例
按照本发明第二实施例的信道编码器将已知位***在具有较高差错发生概率的位位置处,其中将***位的数目设置成超过帧大小(或长度)。在本示例中,假定每帧包括16个输入数据位和12个***位。由于输出数据位Ik、奇偶校验位Ck和Dk应当为28位,将***位删除并将剩余的奇偶校验位Ck和Dk***在删除位的位置。
***位的数目是由编码器的输入数据位数目、输出代码符号的数目和代码率来确定的。也就是说,当编码器的输入数据位数目为N,编码器的输出代码符号的数目为M,并且代码率为1/K时,***位的数目为(M-KN)/(K-1)。由此,当编码器的输入数据位数目为16,输出代码符号的数目为72,并且代码率为1/3时,***位的数目为12。
实际上,随着***位数目的增加,编码器具有的性能提高。按照本实施例的编码器可通过对于给定的输入数据位数目和输出代码符号数目,***尽可能多的已知位来最大程度地改善其性能。在本实施例中,当使用12个***位并且在编码后发送数据位时,对于最大的位***,能够通过仅发送编码符号,而不发送***位来改善编码器的性能。
图7是说明按照本发明第二实施例的信道编码器的图。位***器710包括用于通过处理输入数据位来产生已知位的一位产生器,并通过将由该位产生器产生的已知位***预定位位置来产生超过帧大小的数据位。第一分支编码器720对从位***器710输出的数据位进行编码,以产生第一奇偶校验位Ck。交织器730按照预定规则以帧为单位来交织从位***器710输出的数据位,以改变数据位的排列(或顺序)。在本示例中,将一对角交织器用于交织器730。第二分支编码器740对从交织器730输出的交织数据位以帧为单位进行编码,以产生第二奇偶校验位Dk。一递归***卷积编码器可被用于所述第一和第二分支编码器720和740。多路复用器(MUX)750在一未描述的控制器的控制下,对位***器710、第一分支编码器720和第二分支编码器740的输出进行多路复用,以产生预定长度的数据帧。这里,位***器710输出数据位流Ik,第一分支编码器720输出第一奇偶校验位P1k,而第二分支编码器740输出第二奇偶校验位P2k
在操作中,当接收到16个输入数据位时,位***器710以与第一实施例的位***器310相同的方式进行操作。位***器710具有类似于图4的结构,其不同之处在于它是由12个延迟器组成的。因此,位***器710通过在控制器的控制下控制内部开关,将12个零位***帧中具有较高差错概率的12个位位置。因此,在本实施例中,位***器710输出28个数据位Ik,这些数据位同时加到多路复用器750、第一分支编码器720和交织器730。此外,从交织器730输出的交织数据位Ik加到第二分支编码器740。这里,第一和第二分支编码器720和740具有图5的结构,其结构也不产生用于终止的尾部位。
然后,第一分支编码器720对从位***器710输出的12个零位***其中的所述28个数据位Ik编码,并且向多路复用器750输出28个第一奇偶校验位Ck。交织器730对从位***器710输出的所述28个数据位Ik交织,并且第二分支编码器740以与第一分支编码器720相同的方式编码所交织的数据位,以产生加到多路复用器750的28个第二奇偶校验位Dk
多路复用器750对来自数据位Ik的***位进行穿孔,以将6个第一奇偶校验位Ck和6个第二奇偶校验位Dk***在穿孔位置,然后输出剩余的22个第一奇偶校验位Ck和剩余的22个第二奇偶校验位Dk
参照图8,多路复用器750首先接收从位***器710输出的28个数据位Ik。然后,多路复用器750中的开关812连接到延迟器822,直到从位***器710接收到所述28个数据位Ik中的起始22个数据位,并且延迟器822延迟所接收的数据位Ik。之后,开关812连接到延迟器824,直到从位***器710接收到所述28个数据位Ik中的剩余4个数据位,并且延迟器824延迟所接收的剩余6个数据位。
以相同的方式,多路复用器750接收从第一分支编码器720输出的28个第一奇偶校验位Ck。然后,多路复用器750中的开关814连接到延迟器826,直到从第一分支编码器720中接收到所述28个第一奇偶校验位Ck的起始22个数据位,并且延迟器826延迟所接收的第一奇偶校验位Ck。之后,开关814连接到延迟器828,直到从第一分支编码器720接收到所述28个第一奇偶校验位Ck中的剩余6个第一奇偶校验位,并且延迟器828延迟所接收的剩余6个第一奇偶校验位。
之后,多路复用器750接收从第二分支编码器740输出的28个第二奇偶校验位Dk。然后,多路复用器750中的开关816连接到延迟器830,直到从第二分支编码器740中接收到所述28个第二奇偶校验位Dk的起始22个数据位,并且延迟器830延迟所接收的第二奇偶校验位Dk。之后,开关816连接到延迟器832,直到从第二分支编码器740接收到所述28个第二奇偶校验位Dk中的剩余6个第二奇偶校验位,并且延迟器832延迟所接收的剩余6个第二奇偶校验位。
如上所述,多路复用器750顺序接收28个数据位Ik、28个第一奇偶校验位Ck和28个第二奇偶校验位Dk,并将各个所述位中的起始22位和剩余6位分别存储在相应的延迟器中。开关812-816由未描述的控制器控制。此外,延迟器822-832的每一个都由级联的存储单元构成,并且存储输入位,直到相应延迟处理结束。
当延迟处理结束时,开关844连接到开关842,并且开关842连接到延迟器822。因此,延迟器822的输出是通过开关842和844来输出的。当输出存储在延迟器822中的一个数据位时,开关842连接到延迟器824,并保持与开关844的连接。然后,存储在延迟器824中的剩余数据位中的一位通过开关842和844输出。也就是说,存储在延迟器822中的数据位被穿孔,然后输出存储在延迟器824中的数据位。之后,开关842连接到延迟器822,继续保持与开关844的连接。通过重复上述过程6次,存储在延迟器822中的数据位被穿孔,然后,存储在延迟器824中的剩余6个数据位被***在穿孔的位置。
随后,开关842连接到延迟器822,并保持与开关844的连接。然后,延迟器822的输出通过开关842和844而输出。当输出存储在延迟器822中的一个数据位时,开关842连接到延迟器828,并保持与开关844的连接。然后,存储在延迟器828中的剩余6个第一奇偶校验位中的一位通过开关842和844输出。之后,开关842再次连接到延迟器822,继续保持与开关844的连接。通过重复上述过程6次,存储在延迟器822中的数据位被穿孔,然后,存储在延迟器828中的剩余6个第一奇偶校验位被***在穿孔的位置。
以这种方式,所述数据位和所述剩余6个第一奇偶校验位交替输出。接着,开关842连接到延迟器822,并保持与开关844的连接。然后,延迟器822的输出通过开关842和844而输出。当输出存储在延迟器822中的一个数据位时,开关842连接到延迟器832,并保持与开关844的连接。然后,存储在延迟器832中的剩余6个第二奇偶校验位中的一位通过开关842和844输出。之后,开关842再次连接到延迟器822,继续保持与开关844的连接。通过重复上述过程6次,存储在延迟器822中的数据位被穿孔,然后,存储在延迟器832中的剩余6个第二奇偶校验位被***在穿孔的位置。
通过上述过程,存储在延迟器822中的22个数据位被穿孔,然后,存储在延迟器824中的剩余6个数据位、存储在延迟器828中的剩余6个第一奇偶校验位和存储在延迟器832中的剩余6个第二奇偶校验位被***在穿孔的位置。因此,多路复用器750对从位***器710输出的数据位Ik中的***位进行穿孔,并将8个奇偶校验位***在穿孔的***位置,之后输出24个数据位。
当完成上述处理时,开关844连接到延迟器826。然后,输出存储在延迟器826中的22个第一奇偶校验位Ck。之后,开关844连接到延迟器830,以输出存储在延迟器830中的22个第二奇偶校验位Dk
参照图9,在按照第二实施例的图7的编码器中,位***器710将12位***在16个输入数据位中,以产生28个数据位Ik。这样,第一和第二分支编码器720和740分别产生28个第一奇偶校验位Ck和28个第二奇偶校验位Dk。多路复用器750对所述28个数据位Ik在12个***位置穿孔,然后在其中***剩余6个数据位、剩余6个第一奇偶校验位和剩余6个第二奇偶校验位。之后,多路复用器750顺序输出数据位Ik、第一奇偶校验位Ck和第二奇偶校验位Dk
在解码过程中,多路复用器750的输出值被多路分解为一数据位部分、一第一奇偶校验位部分和一第二奇偶校验位部分,其中所述数据位部分被以“-5”值在位***位置穿孔。这样处理的数据位被现有解码器解码。(参见ClaudeBerrou、Alain Glavieux和Punya Thitmajshima的《接近Shannon有限纠错编码和解码(Near Shannon Limit Error-Correction Coding and Decoding):Turbo-Codes(1)》。
第三实施例
按照本发明第三实施例的编码器将具有特定逻辑的位***在具有较高差错发生概率的位位置处,其中,分支编码器对已知位***的数据位进行编码,并产生要加入到编码数据位的尾部位。也就是说,按照第三实施例的编码器通过位***和尾部位附加来执行终止功能。
图10是说明按照本发明第三实施例的编码器的图,参见图10,位***器1010接收16个输入位,并具有与按照第一实施例的位***器310相同的结构。位***器1010在未描述的控制器的控制下,将8个零位***在帧中具有较高差错概率的8个数据位位置处。因此,在本示例中,位***器1010输出24个数据位Ik,这些数据位共同加到多路复用器1050、第一分支编码器1020和交织器1030。此外,从交织器1030输出的交织的数据位Ik加到第二分支编码器1040。第一分支编码器1020是如图11所示的递归***分支编码器,具有用于产生要附加到编码数据位的尾部位的结构。此外,第二分支编码器1040具有不产生用于终止的尾部位的结构,就象第一实施例的图5那样。
下面将参照图11描述第一分支编码器1020的操作。为了编码,开关1111连接输入节点到异或门1131,开关1113保持断开(OFF)状态,而开关1115连接到异或门1135。然后,将24个数据位Ik通过开关1111和异或门1131顺序加到延迟器1121-1127,并且异或门1135输出编码数据位。当数据位Ik全部被延迟器1121-1127和异或门1135以这种方式编码时,开关1111连接到异或门1133和1131,开关1113接通(ON),并且开关1115连接到开关1113。然后,通过对反馈输出进行异或而产生零位,将其存储在延迟器1121-1127中并通过开关1115输出。这里,存储在延迟器1121-1127中的零值变为尾部位并通过开关1115输出。尾部位的数目相应于分支编码器1020中延迟器的数目。在图11中,第一分支编码器1020每帧产生4个尾部位,并且还产生用于各个尾部奇偶校验(paritie)的编码位。因此,第一分支编码器输出24位第一奇偶校验位、4个尾部位和4个尾部位奇偶校验位。
因此,第一分支编码器1020产生24个第一奇偶校验位Ck,并且当处理了最后一个数据位(即,第24个数据位)时,将开关1111连接到异或门1133、开关1113连接到开关1111、并且开关1115连接到开关1113;相同的处理重复4次,以产生4个尾部位。通过此过程,将28个第一奇偶校验位Ck和4个尾部位输出到多路复用器1050。
此外,交织器1030对从位***器1010输出的24个数据位Ik进行交织,并将交织的数据位提供给第二分支编码器1040。然后,第二分支编码器1040以与第一分支编码器1020相同的方式编码交织的数据位,以产生加到多路复用器1050的24个第二奇偶校验位Dk
由具有与图5所示相同结构的第二分支编码器1040对从交织器1030输出的交织数据位以帧为单位进行编码。第二分支编码器1040为递归***卷积编码器,如图5所示。此外,第二分支编码器1040具有不产生尾部位的结构。
然后,多路复用器1050对来自数据位Ik的***位进行穿孔,并将4个第一奇偶校验位Ck***在穿孔位置,并选择性地输出剩余的24个第一奇偶校验位Ck和24个第二奇偶校验位Dk
图12是说明多路复用器1050的图。参照图12,多路复用器1050首先接收从位***器1010输出的24个数据位Ik。然后,多路复用器1050中的一延迟器1222存储所接收的24个数据位Ik
之后,多路复用器1050接收从第一分支编码器1020输出的28个第一奇偶校验位Ck。然后,多路复用器1050中的开关1212连接到延迟器1224,直到从第一分支编码器1020中接收到第一奇偶校验位Ck的起始24位,并且延迟器1224存储所接收的第一奇偶校验位Ck。随后,开关1212连接到延迟器1226,直到从第一分支编码器1020接收到32个第一分支代码输出中的剩余8位,并且延迟器1226存储所接收的第一分支代码输出中的剩余8位。
接下来,多路复用器1050接收从第二分支编码器1040输出的24个第二奇偶校验位Dk。然后,多路复用器1050中的延迟器1228存储所接收的24个第二奇偶校验位Dk
这样顺序产生的24个数据位Ik、28个第一奇偶校验位Ck和24个第二奇偶校验位Dk加到多路复用器1050。然后,多路复用器1050以接收顺序将顺序接收的数据位Ik、第一奇偶校验位Ck和第二奇偶校验位Dk存储在相应延迟器中,其中28个第一奇偶校验位Ck的起始24位和剩余4位分别存储在相应的延迟器中。延迟器1222-1228的每一个都由级联的存储单元组成,并且存储相应的输入位,直到上述延迟处理结束。
在上述延迟处理结束后,开关1236连接到开关1234,并且开关1234连接到延迟器1222。因此,延迟器1222的输出是通过开关1234和1236来输出的。当输出存储在延迟器1222中的一个数据位时,开关1234连接到延迟器1226,并保持与开关1236的连接。然后,存储在延迟器1226中的剩余第一奇偶校验位中的一位通过开关1234和1236输出。也就是说,存储在延迟器1222中的数据位被穿孔,然后,存储在延迟器1226中的第一奇偶校验位被***在穿孔位置。之后,开关1234再次连接到延迟器1222,并保持与开关1236的连接。上述操作被重复8次,以对存储在延迟器1222中的数据位穿孔,并在穿孔位置***存储在延迟器1226中的剩余8个第一奇偶校验位。结果,在24个数据位Ik中,8个***位被穿孔,以在穿孔位置(即,位***位置)***8个第一奇偶校验位,从而输出24位。
之后,开关1236连接到延迟器1224的输出。然后,存储在延迟器1224中的24个第一奇偶校验位Ck通过开关1236而输出。接着,开关1236切换到延迟器1228,以输出存储在延迟器1228中的24个第二奇偶校验位Dk
参照图13,在按照第三实施例的图10的编码器中,位***器1010将8位***在16个输入数据位中,以产生24个数据位Ik。产生尾部位的一递归***分支编码器用于分支编码器。在此情况下,第一分支编码器总共产生32个数据位,由24个编码数据位、4个尾部位和该4个尾部位的编码数据组成。当输出编码数据位时,输入数据位Ik中8个***位被穿孔,以将剩余8个第一奇偶校验位***在位穿孔位置。
在解码过程中,多路复用器1050的输出值被多路分解为一数据位部分、一第一奇偶校验位部分和一第二奇偶校验位部分,其中所述数据位部分被以“-5”值在位***位置穿孔。这样处理的数据位被现有解码器解码。(参见ClaudeBerrou、Alain Glavieux和Punya Thitmajshima的《接近Shannon有限纠错编码和解码(Near Shannon Limit Error-Correction Coding and Decoding):Turbo-Codes(1)》。
虽然假定本实施例采用零位作为***位,也可以采用由接收器预定的编码位或数据位。
在此第三实施例中,第二分支代码也可以用与第一分支代码相同的方式来终止尾部位的产生。此外,第二尾部位和尾部奇偶校验位也可以***在删除位的位置。第一分支代码和第二分支代码输出奇偶校验位和尾部位及尾部奇偶校验位。***位可以是第一分支代码输出的一部分和第二分支代码输出的一部分。
第四实施例
按照本发明第四实施例的编码器通过在预定位位置***特定数据位来执行终止功能,而不产生尾部位。编码位的一特定数目,而不是***位,在***位置处重复。在本示例中,一个帧包括16个数据位,并将8个为零位的已知位***在帧中具有较高差错概率的位位置处。这里,已知位的位置是通过在解码编码数据的过程中实验检测最多差错发生的位置而确定的。此外,假定各个分支编码器具有1/3的编码率。
在本实施例中,当采用具有1/3编码率的turbo编码器编码24位帧数据(16个帧数据位加上8个已知位)时,在解码期间通过实验来确定具有较高差错概率的位置。具有相对较高差错概率的8位位置被确定,并在被确定位置将已知位***在数据位中。在编码之后,各个奇偶校验位的最后4位被重复,以将重复位代替已知位***在位***位置。这里,解码器在解码***了特定代码的编码帧数据时,了解奇偶校验位***位置。
当已知位为零位时(实际上,“0”位是作为“-1”来发送的),***位置的零位在解码前被改变为大的负值(例如,-5),以便增加可靠性。以此方式,解码器解码各位,即已知所述24位的1/3的8位,从而提高了性能。在这种情况下,由于帧变短而使性能提高。
图14是说明按照本发明第四实施例的、具有用于***已知位的位***器的turbo编码器的图。位***器1410包括用于通过处理输入数据位来产生已知位的一位产生器,并通过将由该位产生器产生的已知位***预定位位置来以帧为单位产生数据位。第一分支编码器1420对从位***器1410输出的数据位进行编码。交织器1430按照预定规则来以帧为单位交织从位***器1410输出的数据位,以改变数据位的排列(或顺序)。在本示例中,将一对角交织器用于交织器1430。第二分支编码器1440对从交织器1430输出的数据位以帧为单位进行编码。一递归***卷积编码器可被用于所述第一和第二分支编码器1420和1440。多路复用器1450在一未描述的控制器的控制下,对位***器1410、第一分支编码器1420和第二分支编码器1440的输出进行多路复用。这里,位***器1410输出数据位Ik,第一分支编码器1420输出第一奇偶校验位P1k,而第二分支编码器1440输出第二奇偶校验位P2k
图15A是说明图14的turbo编码器中的位***器1410的图。参照图15A,位产生器1530产生要***在数据位中的已知位。这里,假定这些已知位为零位。延迟器1512-1526可由如触发器(flip-flop)等的存储单元组成,并且可以具有串行移位寄存器结构,用于按照位时钟来移位输入数据位。开关1532在未描述的控制器的控制下进行切换,以选择延迟器1512-1526的输出。此外,开关1532还在所述未描述的控制器的控制下,切换到从位产生器1530输出的已知位***在数据位中的位置处的下一延迟器的输出。也就是说,当选择的已知位***在数据位中时,开关1532选择被延迟1位的数据位。开关1532可由多路复用器来实现。开关1534在所述未描述的控制器的控制下切换到位产生器1530和开关1532的输出,以产生数据位Ik。开关1534通过所述控制器将已知位***在数据位的预定位置中。
下面将参照图15A描述在数据位中***已知位的操作。由延迟器1512-1526按照位时钟来延迟输入数据位。首先,开关1532选择输入数据位,而开关1534连接到开关1532。然后,输入数据位通过开关1532和1534来输出。同时,如果位***位置被确定,则在控制器的控制下,开关1532连接到延迟器1512的输出,而开关1534连接到位产生器1530的输出。结果,数据位的路径被切断,并且从位产生器1530输出的零位***在相应位位置。在数据位应当在***零位之后连续输出的情况下,开关1534由控制器连接到开关1532。也就是说,由于在***零位之后选择一位延迟的数据位,可在预定位置***零位而无数据位的丢失。
通过重复此过程而将零位***在用于一帧的数据位中。当在***零位之后接收到用于下一帧的数据位时,开关1532连接到数据位输入节点,然后再次重复上面的过程。在数据位被编码用于通信的情况下,在帧的后面部分的差错概率相对较高。因此,从位产生器1530输出的零位被***的位置可以大多位于帧的后面部分。
从位***器1410输出的数据位加到第一分支编码器1420和交织器1430。从交织器1430输出的交织数据位以帧为单位被第二分支编码器1440编码。图15B示出了图14的第一和第二分支编码器1420和1440的结构。如图所示,第一和第二分支编码器1420和1440是递归***卷积编码器。此外,分支编码器1420和1440具有不产生尾部位的结构,如图15B所示。
当第一分支编码器1420对从位***器1410输出的数据位进行编码时,交织器1430对从位***器1410输出的数据位进行交织,并且第二分支编码器1440对从交织器1430输出的交织数据位进行编码。
然后,多路复用器1450在未描述的控制器的控制下,对位***器1410、第一分支编码器1420和第二分支编码器1440的输出进行多路复用。
参照图16,多路复用器1450顺序接收24个数据位Ik、24个第一奇偶校验位Ck和24个第二奇偶校验位Dk,并将各个所述位中的起始24位存储在相应的存储器中和将各个奇偶校验位的剩余4位存储在相应的延迟器中。开关1601-1640由未描述的控制器控制。此外,延迟器1621-1625的每一个都由级联的存储单元构成,并且存储输入到各延迟器的位,直到延迟处理结束。
当延迟处理结束时,开关1640连接到开关1630,并且开关1630连接到延迟器1621。因此,延迟器1621的输出是通过开关1630和1640来输出的。当输出存储在延迟器1621中的一个数据位时,开关1630连接到延迟器1623,并保持与开关1640的连接。然后,存储在延迟器1623中的剩余数据位中的一位通过开关1630和1640输出。也就是说,存储在延迟器1621中的数据位被穿孔,然后存储在延迟器1623中的数据位被***穿孔位置。之后,开关1630再次连接到延迟器1621,继续保持与开关1640的连接。通过重复上述过程4次,存储在延迟器1621中的数据位被穿孔,然后,存储在延迟器1623中的剩余4个第一奇偶校验位被***在穿孔的位置。
随后,开关1630连接到延迟器1621,并保持与开关1640的连接。然后,延迟器1621的输出通过开关1630和1640而输出。当输出存储在延迟器1621中的一个数据位时,开关1630连接到延迟器1625,并保持与开关1640的连接。然后,存储在延迟器1625中的剩余4个第二奇偶校验位中的一位通过开关1630和1640输出。之后,开关1630再次连接到延迟器1621,继续保持与开关1640的连接。通过重复上述过程4次,存储在延迟器1621中的数据位被穿孔,然后,存储在延迟器1625中的剩余4个第二奇偶校验位被***在穿孔的位置。
通过上述过程,存储在延迟器1621中的24个数据位中的8个***位被穿孔,然后,存储在延迟器1623中的剩余4个第一奇偶校验位和存储在延迟器1625中的剩余4个第二奇偶校验位被交替***在穿孔位置,从而输出24位。因此,多路复用器1450对从位***器1410输出的数据位Ik中的8个***位进行穿孔,并将8个奇偶校验位***在穿孔的***位置,之后输出24个数据位。
当完成上述处理时,开关1640连接到延迟器1622。然后,输出存储在延迟器1622中的24个第一奇偶校验位Ck。之后,开关1640连接到延迟器1624,以输出存储在延迟器1624中的24个第二奇偶校验位Dk
图17是按照本发明第四实施例的、图14的turbo编码器的定时图。参照图17,在间隔T1中,位***器1410将零位***在帧中预定位位置处,以产生数据位Ik(参见1711)。在间隔T2中,***零位的数据位Ik被同时加到多路复用器1450、第一分支编码器1420和交织器1430。然后,第一分支编码器1420对该***零位的数据位Ik编码,以产生作为第一奇偶校验位的第一编码数据位Ck(参见1712),并且交织器1430按照预定规则对该***零位的数据位Ik进行交织(参见1713)。之后,在间隔T3中,多路复用器1450将从位***器1410输出的数据位Ik延迟一个帧周期,第一分支编码器1420将第一编码数据位Ck输入到多路复用器1450,并且第二分支编码器1440对从交织器1430输出的交织的数据位Ik进行编码,以产生作为第二奇偶校验位的第二编码数据位Dk。当第二分支编码器1440产生了第二奇偶校验位Dk时,多路复用器1450在间隔T4中对数据位Ik、第一奇偶校验位Ck和第二奇偶校验位Dk进行多路复用。
虽然图17示出了并行处理数据位Ik、第一奇偶校验位Ck和第二奇偶校验位Dk的例子,但也可以以产生顺序串行输出位***器1410、第一分支编码器1420和第二分支编码器1440的输出。
正如从上面的描述中所看到的,在按照所述第四实施例的递归***turbo编码器中,各个分支编码器不产生用于终止的尾部位,而是将已知位(即,零位)***在具有较高差错概率的位位置处。
第五实施例
按照本发明第五实施例的编码器将具有特定逻辑的位***在具有较高差错发生概率的预定位***位置处的数据位中。分支编码器对位***的数据位进行编码,并产生要加到编码数据位的尾部位。也就是说,按照第五实施例的编码器通过位***和尾部位附加来执行终止功能。
***位的数目是由编码器的输入数据位数目、输出代码符号的数目、约束长度和代码率来确定的。也就是说,当编码器的输入数据位数目为N,编码器的输出代码符号的数目为M,约束长度为L,并且代码率为1/K时,***位的数目为(M-KN-2(K-1)(L-1))/(K-1)。由此,当编码器的输入数据位数目为16,输出代码符号的数目为72,约束长度为5,并且代码率1/3时,***位的数目为4。
实际上,随着***位数目的增加,编码器具有的性能提高。按照本实施例的编码器可通过对于给定的输入数据位数目和输出代码符号数目,***尽可能多的已知位来最大程度地改善其性能。在本实施例中,当使用12个***位并且在编码后发送数据位时,对于最大的位***,能够通过仅发送编码符号,而不发送***位来改善编码器的性能。
图18是说明按照本发明第五实施例的编码器的图。参照图18,位***器1810接收16个输入位。这里,位***器1810具有类似于图15A的位***器1410的结构,其区别在于位***器1810包括如图19所示的4个存储器。位***器1810在未描述的控制器的控制下,将4个零位***在一帧中具有较高差错概率的4个预定位位置处。位***器1810的结构示于图19。
在本实施例中,位***器1810输出20个数据位Ik,这些数据位共同加到多路复用器1850、第一分支编码器1820和交织器1830。从交织器1830输出的交织的数据位Ik加到第二分支编码器1840。这里,第一分支编码器1820是如图20所示的递归***分支编码器,具有用于产生要附加到所编码位的尾部位的结构。此外,具有不产生用于终止的尾部位的结构的、如图15B所示的编码器用作第二分支编码器1840。
参照图20,下面将描述第一分支编码器1820的操作。为了编码,开关2011连接输入节点到异或门2031,开关2013保持断开(OFF)状态,而开关2015连接到异或门2035。然后,将20个数据位Ik通过开关2011和异或门2031顺序加到延迟器2021-2027,并且异或门2035输出编码的数据位。当数据位Ik全部被延迟器2021-2027和异或门2035以这种方式编码时,开关2011将异或门2033连接到异或门2031,以便终止。然后,通过对反馈输出进行异或而产生零位,将其存储在延迟器2021-2027中并通过开关2015输出。这里,存储在延迟器2021-2027中的零值变为尾部位并通过开关2015输出。尾部位的数目相应于分支编码器1820中延迟器的数目。在图20中,分支编码器1820每帧产生4个尾部位,并且还产生用于各个尾部位0的4个尾部位奇偶校验位(编码位)。
因此,第一分支编码器1820产生20个第一奇偶校验位Ck,并且当处理了最后一个数据位(即,第20个数据位)时,将开关2011连接到异或门2033、开关2013连接到开关2011、并且开关2015连接到开关2013;相同的处理重复4次,以产生4个尾部位Tk。通过此过程,将24个第一奇偶校验位Ck和4个尾部位输出到多路复用器1850。开关1860切换到交织器1830,以将尾部位Tk加到交织器1830,并且开关1870连接到多路复用器1850,以将尾部位Tk加到多路复用器1850。
此外,交织器1830对从位***器1810输出的20个数据位Ik和从第一分支编码器1820输出的4个尾部位进行交织,并将24个交织的数据位提供给第二分支编码器1840。然后,第二分支编码器1840以与图14的第一分支编码器1440相同的方式编码交织的数据位,以产生加到多路复用器1850的24个第二奇偶校验位Dk
由具有与图15B所示相同结构的第二分支编码器1840对从交织器1830输出的交织数据位以帧为单位进行编码。第二分支编码器1840为递归***卷积编码器,如图15B所示。此外,第二分支编码器1840具有不产生尾部位的结构。
然后,多路复用器1850对数据位Ik的4个***位进行穿孔,并将4个第一奇偶校验位Ck***在穿孔位置,并选择性地输出剩余的24个第一奇偶校验位Ck和24个第二奇偶校验位Dk。***的4位可以是第一分支编码尾部位或尾部位奇偶校验位。
图21是说明多路复用器1850的图。参照图21,多路复用器1850首先接收从位***器1810输出的20个数据位Ik。然后,多路复用器1850中的一延迟器2122存储所接收的20个数据位Ik
之后,多路复用器1850将从第一分支编码器1820输出的24个第一奇偶校验位Ck存储在延迟器2124中,并将从第一分支编码器1820输出的4个尾部位Tk存储在延迟器2122中。接着,多路复用器1850将从第二分支编码器1840输出的24个第二奇偶校验位Dk存储在延迟器2126中。
延迟器2122-2126的每一个都由级联的存储单元组成,并且存储相应的输入位,直到上述延迟处理结束。
在上述延迟处理结束后,开关2101连接到延迟器2122,以输出存储在延迟器2122中的位。随后,开关2101连接到延迟器2124,以输出存储在延迟器2124中的位。之后,开关2101连接到延迟器2126,以输出存储在延迟器2126中的位。
第六实施例
按照本发明第六实施例的编码器执行与第五实施例相同的操作,并对数据位穿孔,以将已知位***在穿孔的位***位置,并在该位置重复发送来自第一分支编码器的4个尾部位。图22是说明按照本发明第六实施例的编码器的图,其中在多路复用器2250之前的操作与第五实施例相同。
参照图22,多路复用器2250首先接收从位***器2210输出的20个数据位Ik。然后,多路复用器2250中的延迟器2321存储所接收的20个数据位Ik。之后,多路复用器2250将从第一分支编码器2220输出的24个第一奇偶校验位Ck存储在延迟器2322中,将最后4个第一奇偶校验位存储在延迟器2323中,并将从第一分支编码器2220输出的4个尾部位Tk存储在延迟器2321中。接着,多路复用器2250将从第二分支编码器2240输出的24个第二奇偶校验位Dk存储在延迟器2324中。
延迟器2321-2324的每一个都由级联的存储单元组成,并且存储相应的输入位,直到上述延迟处理结束。
在上述延迟处理结束后,开关2340连接到开关2330,并且开关2330连接到延迟器2321。因此,延迟器2321的输出是通过开关2330和2340来输出的。当输出存储在延迟器2321中的一个数据位时,开关2330连接到延迟器2323,并保持与开关2340的连接。然后,存储在延迟器2323中的剩余第一奇偶校验位中的一位通过开关2330和2340输出。也就是说,存储在延迟器1121中的数据位被穿孔,然后,存储在延迟器2323中的第一奇偶校验位被***在穿孔位置。之后,开关2330再次连接到延迟器2321,并保持与开关2340的连接。上述操作被重复4次,以对存储在延迟器2321中的数据位穿孔,并在穿孔位置***存储在延迟器2323中的剩余4个第一奇偶校验位。
以此方式,存储在延迟器2321中的24个数据位Ik被穿孔,以在穿孔位置***存储在延迟器2323中的剩余4个第一奇偶校验位,从而输出24位。结果,多路复用器2250对从位***器2210输出的24个数据位Ik穿孔,以将4个奇偶校验位***在穿孔的位***位置,从而输出24个数据位。
之后,开关2340连接到延迟器2322的输出。然后,存储在延迟器2322中的24个第一奇偶校验位Ck通过开关2340输出。接着,开关2340切换到延迟器2324,以输出存储在延迟器2324中的24个第二奇偶校验位Dk
第七实施例
按照本发明第七实施例的编码器执行与第五实施例相同的操作,并对数据位穿孔,以将已知位***在穿孔的位***位置,并在该位置重复发送第二分支编码器的4个尾部位。图24是说明按照本发明第七实施例的编码器的图,其中在多路复用器2450之前的操作与第五实施例相同。
参照图24,多路复用器2450首先接收从位***器2410输出的20个数据位Ik。然后,多路复用器2450中的延迟器2521存储所接收的20个数据位Ik。之后,多路复用器2450将从第一分支编码器2420输出的24个第一奇偶校验位Ck存储在延迟器2522中,并将从第一分支编码器2420输出的4个尾部位Tk存储在延迟器2521中。接着,多路复用器2450接收从第二分支编码器2440输出的24个第二奇偶校验位Dk。如图25所示构成的多路复用器2450对分别从位***器2410、第一分支编码器2420和第二分支编码器2440输出的数据位Ik、及奇偶校验位Ck和Dk多路复用。
图25是说明按照本发明第七实施例的多路复用器2450的图。
参照图25,延迟器2523存储第二奇偶校验位Dk,并且延迟器2524存储第二奇偶校验位Dk的最后4位。开关2501由未描述的控制器控制。此外,延迟器2521-2524的每一个都由级联的存储单元组成,并且存储相应的输入位,直到上述延迟处理结束。
在上述延迟处理结束后,开关2540连接到开关2530,并且开关2530连接到延迟器2521。因此,延迟器2521的输出是通过开关2530和2540来输出的。当输出存储在延迟器2521中的一个数据位时,开关2540连接到延迟器2524,以输出存储在延迟器2524中的最后4个第二奇偶校验位中的一位。也就是说,数据位被穿孔,然后,存储在延迟器2524中的第二奇偶校验位被***在穿孔位置。之后,开关2530再次连接到延迟器2521,并保持与开关2540的连接。上述操作被重复4次,以对存储在延迟器2521中的数据位穿孔,并在穿孔的位***位置***存储在延迟器2524中的最后4个第二奇偶校验位。
以此方式,存储在延迟器2521中的24个数据位Ik被穿孔,交替***存储在延迟器2524中的最后4个第二奇偶校验位,从而输出24位。结果,多路复用器2450对从位***器2410输出的24个数据位Ik穿孔,以将4个第二奇偶校验位***在穿孔的位***位置,从而输出24个数据位。
之后,开关2540连接到延迟器2522的输出。然后,存储在延迟器2522中的24个第一奇偶校验位Ck通过开关2540输出。接着,开关2540切换到延迟器2524,以输出存储在延迟器2524中的24个第二奇偶校验位Dk
第八实施例
按照本发明第八实施例的编码器将具有特定逻辑的位***在数据位中具有较高差错发生概率的位位置处。分支编码器对位***的数据位进行编码,并独立(或内部)产生要加入到编码数据位的尾部位。也就是说,按照本实施例的编码器通过位***和尾部位附加来执行终止功能。
图26是说明按照本发明第八实施例的编码器的图。参照图26,位***器2610接收16个输入位。这里,位***器2610具有与图19的位***器1810类似的结构。位***器2610在未描述的控制器的控制下,将4个零位***在帧中具有较高差错概率的4个数据位位置处。因此,在本示例中,位***器2610输出20个数据位Ik,这些数据位共同加到多路复用器2650、第一分支编码器2620和交织器2630。此外,从交织器2630输出的交织的数据位Ik加到第二分支编码器2640。这里,第一分支编码器2620和第二分支编码器2640是如图20所示的递归***分支编码器,该编码器产生要附加到编码数据位的尾部位。
第一分支编码器2620产生24个第一奇偶校验位Ck和4个尾部位Tk,其中,第一奇偶校验位Ck加到多路复用器2650,而尾部位Tk加到开关2670。开关2670连接到多路复用器2650,并且在未描述的控制器的控制下进行切换,以接收从位***器2610输出的数据位Ik或从第一分支编码器2620输出的尾部位Tk。开关2670对数据位Ik穿孔,以将从第一分支编码器2620输出的尾部位Tk***在穿孔的位***位置,并将其提供给多路复用器2650。
交织器2630对从位***器2610输出的20个数据位Ik进行交织,并将交织的数据位提供给第二分支编码器2640。然后,第二分支编码器2640产生24个第二奇偶校验位Dk和4个尾部位Tk。开关2660选择性地将从第二分支编码器2640输出的第二奇偶校验位Dk和4个尾部位Tk加到多路复用器2650。
图27是说明多路复用器2650的图。参照图27,多路复用器2650首先接收从位***器2610输出的20个数据位Ik。然后,多路复用器2650中的一延迟器2721存储所接收的20个数据位Ik
之后,多路复用器2650将从第一分支编码器2620输出的24个第一奇偶校验位Ck存储在延迟器2722中,并将从第一分支编码器2620输出的4个尾部位Tk存储在延迟器2721中。接着,多路复用器2650将从第二分支编码器2640输出的24个第二奇偶校验位Dk存储在延迟器2723中,并将从第二分支编码器2640输出的4个尾部位Tk存储在延迟器2724中。
延迟器2721-2724的每一个都由级联的存储单元组成,并且存储相应的输入位,直到上述延迟处理结束。
在上述延迟处理结束后,开关2740连接到开关2730,并且开关2730连接到延迟器2721。因此,延迟器2721的输出是通过开关2730和2740来输出的。当输出存储在延迟器2721中的一个***位时,开关2730连接到延迟器2724,并保持与开关2740的连接,以输出存储在延迟器2724中的4个尾部位。也就是说,存储在延迟器2721中的数据位被穿孔,然后,存储在延迟器2724中的尾部位被***在穿孔的位***位置。之后,开关2730再次连接到延迟器2721,并保持与开关2740的连接。上述操作被重复4次,以对存储在延迟器2721中的数据位穿孔,并在穿孔的位***位置***存储在延迟器2724中的4个尾部位。
之后,开关2740连接到延迟器2722的输出,以输出存储在延迟器2722中的第一奇偶校验位Ck。接着,开关2740连接到延迟器2723,以输出存储在延迟器2723中的第二奇偶校验位Dk
正如从上面的描述中所看到的,在按照所述第八实施例的递归***turbo编码器中,各个分支编码器不产生用于终止的尾部位,而是将已知位(即,零位)***在具有较高差错概率的位位置处。
第九实施例
按照本发明第九实施例的编码器将具有特定逻辑的6位***在数据位中具有较高差错发生概率的位***位置处。对数据位在位***位置穿孔,并在穿孔的位***位置,第一分支编码器执行缀尾,并对包括尾部位的数据位进行交织。当对交织的数据位编码时,第二分支编码器将超出帧大小的6位***在穿孔的位***位置。
图28是说明按照本发明第九实施例的编码器的图。参照图28,位***器2810接收16个输入位。这里,位***器2810具有类似于图15A的位***器1410的结构,其区别在于位***器2810包括6个延迟器。位***器2810在未描述的控制器的控制下,将6个零位***在一帧中具有较高差错概率的6个数据位位置处。
因此,在本实施例中,位***器2810输出22个数据位Ik,这些数据位共同加到多路复用器2850、第一分支编码器2820和交织器2830。而且,从交织器2830输出的交织的数据位Ik加到第二分支编码器2840。这里,第一分支编码器2820是如图20所示的递归***分支编码器,它产生要附加到编码位的尾部位。第二分支编码器2840是如图15B所示的递归***分支编码器,它不产生所述尾部位。
第一分支编码器2820具有如图20所示的结构,对每帧产生4个尾部位,并产生用于各个尾部位的4个编码位。因此,第一分支编码器2820产生26个第一奇偶校验位Ck,并且当处理了第22个数据位时,将开关2011连接到异或门2033、开关2013连接到开关2011、并且开关2015连接到开关2013;相同的处理重复4次,以产生4个尾部位。通过此过程,第一分支编码器2820产生24个第一奇偶校验位Ck和4个尾部位,其中第一奇偶校验位Ck加到多路复用器2850,并且4个尾部位Tk加到交织器2830并经过开关2870加到多路复用器2850。
此外,交织器2830对从位***器2810输出的22个数据位Ik和从第二分支编码器2840输出的4个尾部位进行交织,并将交织的26个数据位提供给第二分支编码器2840。然后,第二分支编码器2840以与第一分支编码器2820相同的方式编码交织的数据位,以产生加到多路复用器2850的26个第二奇偶校验位Dk。也就是说,由第二分支编码器2840对从交织器2830输出的交织数据位以帧为单位进行编码。第二分支编码器2840是如图15B所示的递归***卷积编码器。此外,第二分支编码器2840具有不产生尾部位的结构。
图30是说明多路复用器2850的图。参照图30,多路复用器2850首先接收从位***器2810输出的22个数据位Ik。然后,多路复用器2850中的一延迟器3022存储所接收的22个数据位Ik
之后,多路复用器2850接收从第一分支编码器2820输出的26个第一奇偶校验位Ck,仅将起始24位存储在延迟器3026中,并且在开关3014切换到延迟器3028时将剩余2位存储在延迟器3028中。多路复用器2850接收4个尾部位Tk,并将前2个尾部位存储在延迟器3022中,并且在开关3012切换到延迟器3024时将最后2个尾部位存储在延迟器3024中。接着,多路复用器2850接收26个第二奇偶校验位Dk,将起始24位存储在延迟器3030中,并在开关3016切换到延迟器3032时将最后2位存储在延迟器3032中。
延迟器3022-3032的每一个都由级联的存储单元组成,并且存储相应的输入位,直到上述延迟处理结束。
在上述延迟处理结束后,开关3042连接到开关3044,并且开关3042连接到延迟器3022。因此,延迟器3022的输出是通过开关3042和3044来输出的。当输出存储在延迟器3022中的一个***位时,开关3042连接到延迟器3024,并保持与开关3044的连接。然后,存储在延迟器3024中的最后两个尾部位中的一个通过开关3042和3044输出。也就是说,存储在延迟器3022中的数据位被穿孔,然后,存储在延迟器3024中的尾部位***在穿孔位置。之后,开关3042再次连接到延迟器3022,并保持与开关3044的连接。上述操作被重复2次,以对存储在延迟器3022中的数据位穿孔,并在穿孔位置***存储在延迟器3024中的剩余2个尾部位。
之后,开关3042连接到延迟器3022,并保持与开关3044的连接。然后,延迟器3022的输出通过开关3042和3044输出。当输出存储在延迟器3022中的一个***位时,开关3042连接到延迟器3028,并保持与开关3044的连接。然后,存储在延迟器3026中的剩余2个第一奇偶校验位中的一位通过开关3042和3044输出。之后,开关3042再次连接到延迟器3022,并保持与开关3044的连接。上述操作被重复2次,以对存储在延迟器3022中的数据位穿孔,并在穿孔位置***存储在延迟器3028中的剩余2个第一奇偶校验位。
之后,开关3042连接到延迟器3022,并保持与开关3044的连接。然后,延迟器3022的输出通过开关3042和3044输出。当输出存储在延迟器3022中的一个***位时,开关3042连接到延迟器3032,并保持与开关3044的连接。然后,存储在延迟器3032中的剩余2个第二奇偶校验位中的一位通过开关3042和3044输出。之后,开关3042再次连接到延迟器3022,并保持与开关3044的连接。上述操作被重复2次,以对存储在延迟器3022中的数据位穿孔,并在穿孔位置***存储在延迟器3032中的剩余2个第二奇偶校验位。
尽管已在假定***位为零位的条件下描述了本发明,但也可以使用由接收器预定的编码位或数据位。
尽管已参照本发明的特定优选实施例描述了本发明,但本领域的普通技术人员应当理解,可对本发明进行形式和细节的各种修改,而不脱离由所附权利要求所限定的本发明的精神和范围。

Claims (14)

1.一种信道编码装置,包括:
一***器,用于将至少一个预定位***在输入数据位流的预定位置;
一第一分支编码器,用于对所述位***的数据位流进行编码,以产生第一奇偶校验符号流,并且输出所产生的作为第一奇偶校验符号流的奇偶校验符号;
一交织器,用于对所述位***的数据位流进行交织;和
一第二分支编码器,用于对所述交织器的输出进行编码,以产生第二奇偶校验符号流,并且输出所产生的作为第二奇偶校验符号流的奇偶校验符号。
2.如权利要求1所述的信道编码装置,其中每一个所述第一和第二分支编码器都是一递归***信道编码器。
3.如权利要求1所述的信道编码装置,其中所述预定位***位置分布在要输入到各个分支编码器的数据位流的后面部分。
4.如权利要求1所述的信道编码装置,其中所述预定位***位置以规则的间隔分布在输入数据位流中,并且与分支编码器中的存储器数目同样多的***位被连续***。
5.如权利要求1所述的信道编码装置,其中所述信道编码器还包括:
一选择器,用于选择所述位***器的输出和所述信道编码器的输出,并将所选择的输出作为信道编码符号流输出。
6.如权利要求5所述的信道编码装置,其中所述选择器是一多路复用器,该多路复用器顺序选择所述***器的输出、所述第一奇偶校验符号流和所述第二奇偶校验符号流,并将所选择值作为信道编码符号流输出。
7.如权利要求5所述的信道编码装置,其中每一个所述第一和第二分支编码器都是一递归***信道编码器。
8.如权利要求5所述的信道编码装置,其中所述预定位***位置分布在要输入到各个分支编码器的数据位流的后面部分。
9.如权利要求1所述的信道编码装置,其中所述预定位为零位。
10.如权利要求1所述的信道编码装置,其中所述信道编码器还包括:
一多路复用器,用于对***在从所述位***器输出的数据位流中的预定位置的位进行穿孔,并将所述用于尾部位的奇偶校验符号***在穿孔位置,以输出信道编码数据。
11.如权利要求10所述的信道编码装置,其中所述多路复用器对***的预定位进行穿孔,并将与穿孔位数目同样多的奇偶校验符号***在数据位流中的所述穿孔的位位置,以便输出作为信道编码数据的输入帧大小的数据位流、排除了***在穿孔位置的第一奇偶校验符号的第一奇偶校验符号、和排除了***在穿孔位置的第二奇偶校验符号的第二奇偶校验符号。
12.如权利要求11所述的信道编码装置,其中由所述多路复用器***在所述数据位流中的所述第一奇偶校验符号的一部分包括位于所述第一奇偶校验符号流的最后部分的符号。
13.如权利要求10所述的信道编码装置,其中所述多路复用器对***的预定位进行穿孔,并将与穿孔位数目同样多的奇偶校验符号***在数据位流中的所述穿孔的位位置,以便输出作为信道编码数据的输入帧大小的数据位流、排除了***在穿孔位置的第一奇偶校验符号的第一奇偶校验符号、和排除了***在穿孔位置的第二奇偶校验符号的第二奇偶校验符号。
14.如权利要求11所述的信道编码装置,其中所述***符号包括分布在所述第一奇偶校验符号流的后面部分的符号和所述第一分支编码器的奇偶校验符号。
CNB998005568A 1998-04-18 1999-04-19 信道编码装置 Expired - Lifetime CN1144377C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR19980013956 1998-04-18
KR1998/13956 1998-04-18
KR19980014879 1998-04-25
KR1998/14879 1998-04-25

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CNB031277225A Division CN100466502C (zh) 1998-04-18 1999-04-19 通信***的信道编码方法

Publications (2)

Publication Number Publication Date
CN1263650A CN1263650A (zh) 2000-08-16
CN1144377C true CN1144377C (zh) 2004-03-31

Family

ID=26633578

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB031277225A Expired - Lifetime CN100466502C (zh) 1998-04-18 1999-04-19 通信***的信道编码方法
CNB998005568A Expired - Lifetime CN1144377C (zh) 1998-04-18 1999-04-19 信道编码装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CNB031277225A Expired - Lifetime CN100466502C (zh) 1998-04-18 1999-04-19 通信***的信道编码方法

Country Status (11)

Country Link
US (1) US6437714B1 (zh)
EP (2) EP0990308B1 (zh)
JP (1) JP3546063B2 (zh)
KR (1) KR100318911B1 (zh)
CN (2) CN100466502C (zh)
AU (1) AU735889B2 (zh)
BR (1) BR9906358A (zh)
CA (1) CA2291696C (zh)
DE (2) DE69942705D1 (zh)
RU (1) RU2184419C2 (zh)
WO (1) WO1999055011A1 (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089477B1 (en) * 1999-08-18 2006-08-08 California Institute Of Technology Interleaved serial concatenation forming turbo-like codes
DE10001147A1 (de) * 2000-01-13 2001-07-19 Siemens Ag Verfahren zum Fehlerschutz bei der Übertragung eines Datenbitstroms
CN100426717C (zh) * 2000-01-20 2008-10-15 北方电讯网络有限公司 可变速率分组数据应用中带有软组合的混合arq方案
DE10008064B4 (de) * 2000-02-22 2009-07-02 Siemens Ag Verfahren zum Anpassen der einem Turbo-Codierer zuzuführenden Datenblöcke und entsprechende Kommunikationsvorrichtung
KR100360251B1 (ko) * 2000-03-29 2002-11-08 엘지전자 주식회사 통신시스템의 핸드오프 처리장치 및 이동체 수신기
US20020172292A1 (en) * 2000-05-05 2002-11-21 Gray Paul K. Error floor turbo codes
US7116710B1 (en) 2000-05-18 2006-10-03 California Institute Of Technology Serial concatenation of interleaved convolutional codes forming turbo-like codes
US6944803B2 (en) * 2000-07-06 2005-09-13 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communications Research Centre Canada Code structure, encoder, encoding method, and associated decoder and decoding method and iteratively decodable code structure, encoder, encoding method, and associated iterative decoder and iterative decoding method
KR100830486B1 (ko) * 2000-12-15 2008-05-20 엘지전자 주식회사 통신 시스템에서의 신호 송수신 방법
KR100489043B1 (ko) * 2000-12-20 2005-05-11 엘지전자 주식회사 이동 통신 시스템에서 이동 단말기간 음성 호 연결시데이터 포맷방법
US20020124224A1 (en) * 2000-12-29 2002-09-05 Blankenship Thomas Keith Method and system for matching information rates in turbo coded channels
KR100708475B1 (ko) * 2001-01-08 2007-04-18 삼성전자주식회사 펑쳐링된 패리티심벌을 복원하는 터보디코더용 프리디코더 및 터보코드의 복원방법
EP1317070A1 (en) * 2001-12-03 2003-06-04 Mitsubishi Electric Information Technology Centre Europe B.V. Method for obtaining from a block turbo-code an error correcting code of desired parameters
TWI225340B (en) * 2003-08-28 2004-12-11 Sunplus Technology Co Ltd System using parity check bit for data transmission protection and method thereof
EP1779575A1 (en) * 2004-08-17 2007-05-02 Nokia Corporation Methods and apparatus for balancing modulation in cellular communications over noisy channels
KR100689735B1 (ko) * 2004-12-11 2007-03-08 한국전자통신연구원 비이진 터보 부호의 부호화 장치 및 그 방법
US7949062B2 (en) 2004-12-11 2011-05-24 Electronics And Telecommunications Research Institute Encoding system using a non-binary turbo code and an encoding method thereof
WO2006075382A1 (ja) * 2005-01-14 2006-07-20 Fujitsu Limited 符号化方法、復号方法及びそれらの装置
US7797615B2 (en) * 2005-07-07 2010-09-14 Acer Incorporated Utilizing variable-length inputs in an inter-sequence permutation turbo code system
KR100651847B1 (ko) 2005-09-05 2006-12-01 엘지전자 주식회사 다중 순환 부호화를 이용한 터보 부호의 부호화/복호 장치및 방법
KR100678580B1 (ko) 2005-10-14 2007-02-02 삼성전자주식회사 통신시스템에서 터보부호의 성능을 향상하기 위한 장치 및방법
JP2007116592A (ja) * 2005-10-24 2007-05-10 Kddi Corp 復号化装置および符号化・復号化システム
JP2007116591A (ja) * 2005-10-24 2007-05-10 Kddi Corp 符号化装置、復号化装置、および符号化・復号化システム
KR101283862B1 (ko) * 2006-08-16 2013-07-08 엘지전자 주식회사 터보 부호의 부호화 장치 및 방법
AU2006204634B2 (en) * 2006-08-31 2009-10-29 Canon Kabushiki Kaisha Runlength encoding of leading ones and zeros
US8074155B2 (en) * 2006-09-28 2011-12-06 Broadcom Corporation Tail-biting turbo coding to accommodate any information and/or interleaver block size
KR101233175B1 (ko) * 2006-11-08 2013-02-15 엘지전자 주식회사 연속적인 길이를 가지는 터보 코드 인코딩 및 디코딩 방법
FR2922699A1 (fr) * 2007-10-18 2009-04-24 Canon Kk Decodage iteratif dans un reseau maille, procede et systeme correspondants
JP5248085B2 (ja) * 2007-10-29 2013-07-31 ルネサスエレクトロニクス株式会社 データ処理方法およびデータ処理装置並びにプログラム
EP2150001B1 (en) * 2008-08-01 2019-10-23 Telefonaktiebolaget LM Ericsson (publ) Technique for rate matching in a data transmission system
JP4841684B2 (ja) * 2010-09-24 2011-12-21 富士通株式会社 送信装置及び送信方法
CN102413456B (zh) * 2011-09-02 2014-11-19 中国电信股份有限公司 基于运营网络的用户终端防盗方法、装置和***
US9164943B2 (en) * 2012-01-18 2015-10-20 Intel Corporation Self correction logic for serial-to-parallel converters
CN105262558B (zh) * 2014-06-26 2019-07-09 深圳市中兴微电子技术有限公司 一种多级编码装置及其实现方法
CN104184483A (zh) * 2014-09-11 2014-12-03 山东大学 一种参数可配置Turbo的码编码器
US10523363B2 (en) * 2015-08-03 2019-12-31 Lg Electronics Inc. Transmission method and processing method for bitstream in wireless communication system
WO2017121473A1 (en) * 2016-01-13 2017-07-20 Huawei Technologies Duesseldorf Gmbh Window-interleaved turbo (wi-turbo) codes
US20230081418A1 (en) * 2021-09-15 2023-03-16 Samsung Display Co., Ltd. Systems and methods for transition encoding compatible pam4 encoding

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4755993A (en) * 1986-07-16 1988-07-05 Northern Telecom Limited Transmission system using forward error correction
US4771400A (en) * 1986-12-29 1988-09-13 Cylink Corporation Bit density controller
GB2253974B (en) * 1991-03-22 1995-02-22 British Telecomm Convolutional coding
FR2675971B1 (fr) * 1991-04-23 1993-08-06 France Telecom Procede de codage correcteur d'erreurs a au moins deux codages convolutifs systematiques en parallele, procede de decodage iteratif, module de decodage et decodeur correspondants.
US5438590A (en) * 1993-05-24 1995-08-01 Comstream Corporation Transmitting and receiving apparatus and method including punctured convolutional encoding and decoding
JP3322998B2 (ja) * 1994-04-12 2002-09-09 三菱電機株式会社 ディジタルvtr
US5862153A (en) * 1995-09-29 1999-01-19 Kabushiki Kaisha Toshiba Coding apparatus and decoding apparatus for transmission/storage of information
FR2747255B1 (fr) * 1996-04-03 1998-07-10 France Telecom Procede et dispositif de codage convolutif de blocs de donnees, et procede et dispositif de decodage correspondants
US5721745A (en) 1996-04-19 1998-02-24 General Electric Company Parallel concatenated tail-biting convolutional code and decoder therefor
US5996104A (en) * 1996-09-13 1999-11-30 Herzberg; Hanan System for coding system
CA2228714A1 (en) 1997-04-03 1998-10-03 At&T Corp. Method and apparatus for spectral efficient transmission of cdma modulated signals
US5907582A (en) * 1997-08-11 1999-05-25 Orbital Sciences Corporation System for turbo-coded satellite digital audio broadcasting
US5978365A (en) * 1998-07-07 1999-11-02 Orbital Sciences Corporation Communications system handoff operation combining turbo coding and soft handoff techniques
US6829305B2 (en) * 1999-12-08 2004-12-07 Lg Electronics Inc. Concatenated convolutional encoder and decoder of mobile communication system
FR2807895B1 (fr) * 2000-04-18 2002-06-07 Canon Kk Procedes et dispositifs de codage et de decodage et systemes les mettant en oeuvre

Also Published As

Publication number Publication date
CN100466502C (zh) 2009-03-04
KR19990083314A (ko) 1999-11-25
CN1263650A (zh) 2000-08-16
JP2000513556A (ja) 2000-10-10
AU735889B2 (en) 2001-07-19
RU2184419C2 (ru) 2002-06-27
WO1999055011A1 (en) 1999-10-28
EP1434356B1 (en) 2010-08-25
CN1496049A (zh) 2004-05-12
CA2291696C (en) 2007-11-27
EP0990308B1 (en) 2010-08-18
EP1434356A3 (en) 2005-03-09
US6437714B1 (en) 2002-08-20
EP0990308A1 (en) 2000-04-05
DE69942684D1 (de) 2010-09-30
BR9906358A (pt) 2000-09-19
JP3546063B2 (ja) 2004-07-21
KR100318911B1 (ko) 2001-12-29
DE69942705D1 (de) 2010-10-07
EP1434356A2 (en) 2004-06-30
CA2291696A1 (en) 1999-10-28
AU3346099A (en) 1999-11-08

Similar Documents

Publication Publication Date Title
CN1144377C (zh) 信道编码装置
CN1113295C (zh) 错误校正编码方法及其设备
CN1252962C (zh) 用于数据通信***的速率匹配设备和方法
CN1171391C (zh) 交错方法、交错装置、涡轮编码方法以及涡轮编码装置
CN1324832C (zh) 用于通信***的混合自动重复请求设备和方法
CN1836394A (zh) 在移动通信***中编码/解码块低密度奇偶校验码的装置和方法
CN1144375C (zh) 在信道编码器的输入级中预先***已知比特的装置和方法
CN1968071A (zh) 解码装置、解码方法、和接收设备
CN1406420A (zh) 发送装置、接收装置以及通信方法
CN1618175A (zh) 用于对数据比特并行编码的方法和装置
CN1692557A (zh) 编码设备、编码方法、编码程序、解码设备、解码方法、和解码程序
CN2631163Y (zh) 一种时分双工/码分多址(tdd/cd ma)通信***
CN1633770A (zh) 速率匹配方法
CN1655491A (zh) 使用比特排列方法的传输装置
CN101047393A (zh) 一种产生交织器/解交织器的方法及其应用
CN1276588C (zh) 在通信***中生成代码的设备和方法
CN1135771C (zh) 数据传输设备
CN1310555A (zh) 接收信号合成方法与***以及无线电接收台与接收台
CN1685621A (zh) 用于解交织通信设备中的交织数据流的方法和装置
CN1961517A (zh) 包括本地检错码的纠错编码方法、对应的解码方法、发送、接收和存储装置以及程序
CN1262071C (zh) 码分多址移动通信***中的编码/解码设备和方法
CN1848718A (zh) 应用于可变长度通讯***的方法
CN1647419A (zh) 码分多址(cdma)无线***的接收站及方法
CN1808957A (zh) 匹配数据速率的方法和装置
CN1682450A (zh) 用于对可变长度的软输入代码字序列进行信源译码的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20040331

CX01 Expiry of patent term