CN101682486B - 包括环形缓冲器的装置和用于向环形缓冲器分配冗余版本的方法 - Google Patents

包括环形缓冲器的装置和用于向环形缓冲器分配冗余版本的方法 Download PDF

Info

Publication number
CN101682486B
CN101682486B CN2008800199821A CN200880019982A CN101682486B CN 101682486 B CN101682486 B CN 101682486B CN 2008800199821 A CN2008800199821 A CN 2008800199821A CN 200880019982 A CN200880019982 A CN 200880019982A CN 101682486 B CN101682486 B CN 101682486B
Authority
CN
China
Prior art keywords
circular buffer
bit
redundancy versions
parity bits
row
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2008800199821A
Other languages
English (en)
Other versions
CN101682486A (zh
Inventor
宇菲·W·布兰肯希普
T·基思·布兰肯希普
布赖恩·K·克拉松
阿吉特·尼姆巴尔克
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.)
Motorola Mobility LLC
Google Technology Holdings LLC
Original Assignee
Motorola Mobility LLC
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 Motorola Mobility LLC filed Critical Motorola Mobility LLC
Publication of CN101682486A publication Critical patent/CN101682486A/zh
Application granted granted Critical
Publication of CN101682486B publication Critical patent/CN101682486B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • 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
    • 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
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]
    • H04L1/1819Hybrid protocols; Hybrid automatic repeat request [HARQ] with retransmission of additional or different redundancy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Information Transfer Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
  • Information Transfer Between Computers (AREA)
  • Detection And Correction Of Errors (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

在发射器的操作中,创建环形缓冲器,其中,仅该环形缓冲器的列顶部被定义为用于冗余版本的开始位置。在该环形缓冲器是序列格式的情况下,所有可能冗余版本的位置为第一冗余版本的开始位置的列索引的函数。

Description

包括环形缓冲器的装置和用于向环形缓冲器分配冗余版本的方法
技术领域
本发明一般涉及通信系统,并且更具体地,涉及用于在通信系统内将冗余版本分配到环形缓冲器的方法和装置。
背景技术
在通信系统中,使用错误控制技术来保护信号在通过信道的传输期间不受损害。作为这种错误控制技术的一部分,针对每个信息块生成码字。为了匹配通过空中传输的速率,在码字通过物理信道被发射之前,经由速率匹配算法调整码字大小。速率匹配算法经由码字的打孔或重复,提供要通过信道发射的期望数目的比特。速率匹配算法是重要的,这是因为其能够显著影响系统性能和实现效率。
如果系统仅使用前向纠错(FEC),那么,对于给定信息块,只需要一个传输,并且速率匹配算法只提供一个版本的码字。如果系统使用混合自动重复请求(HARQ)操作,那么,对于给定信息块,可能需要多个传输,并且可能需要速率匹配算法来提供不同版本的码字(例如,对于递增冗余HARQ)。如果对于信息块只使用一个传输,那么HARQ退化成FEC。
一种执行速率匹配功能的方法是定义用于每个信息块大小的打孔/重复图案,以及系统可能遇到的码速率。然而,这种方法是不灵活的。而且,如果系统涉及数千信息块大小和码速率组合,诸如在3GPP通信系统中,这种方法变得不现实。
另一种执行速率匹配的方法是定义逐个步进通过码字比特的规则,并且确定码字比特是否应被打孔(清除)或重复。这种方法具有灵活的益处,并且在3GPP Re1-99中作了定义。然而,这种方法受实现效率低的影响。此外,对于IR HARQ,无法保证与给定信息块相关联的传输不重叠(即,正交)。因此,系统性能可能受到影响。
可选地,可以设计基于环形缓冲器的速率匹配算法,以低的实现复杂度来提供好的性能。在该方法中,码字比特被重新设置,以形成环形缓冲器。如果需要Ndesired个编码比特用于传输,则从环形缓冲器截取长Ndesired的连续比特块(如果达到环形缓冲器的最后一个比特,则绕回)。因此,使用单一方法可以实现打孔和重复。环形缓冲技术在灵活性、执行性能和实现容易性等方面具有优势。
为了在HARQ操作中实现不同码字版本,诸如冗余版本(RV)的参数可以被用作对基于环形缓冲器的速率匹配算法的输入。冗余版本可以定义在环形缓冲器内用于选择用于传输的码字片的开始位置。
在现有技术中,RV的可允许的开始位置被均匀分布在环形缓冲器上,该环形缓冲器包含重新设置之后的码字比特序列,这使得难以实现HARQ的每个传输。因此,存在对用于在通信系统中将冗余版本分配到环形缓冲器的方法和装置的需求,其改善基于环形缓冲器的速率匹配算法的效率。
附图说明
图1是现有技术发射器的结构图。
图2示出了子块交织和交错。
图3是发射器的结构图。
图4和图5示出了子块交织和交错。
图6示出了虚比特去除的环形缓冲器可以以矩阵格式来表示。
图7示出了具有虚比特的冗余版本环形缓冲器。
图8示出了虚拟环形缓冲器的使用。
图9示出了利用环形缓冲的第一级速率匹配。
图10示出了系统比特打孔。
图11示出了跳过环形缓冲器内的一小部分系统比特
图12是示出图3的发射器的操作的流程图。
图13是示出图3的发射器的操作的流程图。
具体实施方式
为了解决上述需求,此处提供了一种用于在通信系统内将冗余版本分配到环形缓冲器的方法和装置。在操作期间,生成环形缓冲器,其中,仅将冗余版本定义为开始于组成子块交织器的顶部(即在第一行)。例如,总共八个冗余版本,这些冗余版本将被设置在位置
Figure GSB00000971505000031
Figure GSB00000971505000032
i=0,1,...,7,其中,σ表示第一RV(RV0)的位置的子块交织器列索引。
如上所述定义RV位置导致较容易实现HARQ。更确切地说,本技术允许无记忆RV定义,这在利用环形缓冲器速率匹配(RM)支持大量的输入块大小方面是非常有用的。具体而言,上述RV设置允许实现虚拟环形缓冲器(即,不实现物理环形缓冲器),这允许从开始于环形缓冲器中任何RV的编码器输出流直接选择期望数目的比特。
本发明包括用于将冗余版本分配到环形缓冲器的方法。该方法包括接收系统比特、第一奇偶比特块以及第二奇偶比特块的步骤。系统比特、第一奇偶比特块以及第二奇偶比特块均包括虚比特。单独地对系统比特、第一奇偶比特块以及第二奇偶比特块进行块交织,并且将第一奇偶比特块与第二奇偶比特块进行交错,以创建交错的奇偶比特。将交织的系统比特添加在交错的奇偶比特前面,以创建环形缓冲器,并且将冗余版本定义为开始于环形缓冲器的特定行。当接收到冗余版本(RV)和期望比特的数目时,从RV比特位置开始,输出该数目的期望比特。
本发明包括一种装置,该装置包括编码器,该编码器输出系统比特、第一奇偶比特块、和第二奇偶比特块。提供了速率匹配电路,接收系统比特、第一奇偶比特块和第二奇偶比特块并且创建具有虚比特的环形缓冲器。将该环形缓冲器的特定行用作冗余版本(RV),并且速率匹配电路从特定RV开始从该环形缓冲器向发射器输出非虚比特。最后,提供了发射电路,接收这些非虚比特并且发射这些非虚比特。
最后,本发明包括一种装置,该装置包括编码器,该编码器输出系统比特、第一奇偶比特块和第二奇偶比特块,每个的长度为Kstream。该装置另外包括速率匹配电路,用于接收该系统比特、第一奇偶比特块和第二奇偶比特块,并且对系统比特、第一奇偶比特块和第二奇偶比特块进行交织。提供了逻辑电路,用于定义冗余版本(RV),该冗余版本(RV)对应于在数据流内开始输出数据的位置。当使用八个RV时,RV处于位置
Figure GSB00000971505000041
i=0,1,...,7,其中,σ表示第一RV(RV0)的开始位置的子块交织器列索引。流包括交织的系统比特以及交织和交错的第一和第二奇偶比特块。最后,提供了发射电路,用于接收开始于特定RV的非虚比特并且发射这些非虚比特。
现在参考附图,其中,相同附图标记指相同组件,图1和图2示出基于环形缓冲器的速率匹配方法的功能。更确切地说,图1是发射器的结构图,并且图2示出了子块交织和交错。在发射器100的操作期间,编码器101输出系统比特流和至少两个奇偶流。对于该特定示例,编码器101包括在3GPP标准中采用的1/3速率turbo编码器。应注意的是,下列概念可以被调整适于其他类型的纠错码,诸如具有其他码速率的turbo码、低密度奇偶校验(LDPC)码、卷积码等。
编码器101输出与系统比特流和两个奇偶流对应的三个流。在某些情形下,系统流可以包含若干(例如,4个)非系统比特,例如,由于用于3GPP turbo码的尾比特所导致的。(当使用咬尾编码时,尾比特不存在)。这些流也可以包含在turbo编码之前插入的填充比特。出于简明目的,在系统流中的所有比特被称为系统比特,并且在各个奇偶流中的所有比特分别被称为奇偶0比特和奇偶1比特。
速率匹配电路102从编码器101接收流输出,并且单独地在每个流上执行子块交织。这在图2中示出,在图2中,S′、P0′和P1′分别是系统比特流、奇偶0比特流和奇偶1比特流。利用每个流自己的子块交织器(未在图1或2中示出)重新设置(交织)每个流,以产生S、P0和P1。然后,将P0和P1彼此交错,以产生交错的P0和P1部分201。通过将重新设置的系统比特S存储在交错的P0和P1部分201前面的开端中,形成单一输出缓冲器105(也被称为环形缓冲器)。
对于期望的操作码速率,计算要被选择用于发射的编码比特的数目Ndesired,并且将其作为输入传送至逻辑电路104。逻辑电路104仅从某个开始点开始,从环形缓冲器的序列读出长Ndesired的连续比特块(如果超过环形缓冲器的最后一个比特,绕回到开端)。因此,使用单一方法,可以实现打孔和重复。环形缓冲技术在灵活性(在实现的码速率方面)和粒度(在流大小方面)具有优势。如果子块交织器被适当地设计,则环形缓冲器速率匹配选择大致均匀分布在码栅格上的奇偶比特,而不考虑期望的操作码速率。
图3是发射器300的结构图。发射器300包括编码器301和速率匹配电路303。速率匹配电路303另外包括逻辑电路305和存储器307。逻辑电路305优选地为微处理器、微控制器、数字信号处理器(DSP)或者本领域的技术人员所已知的其他这种设备。因此,通过执行软件指令和程序,确定发射器300的逻辑电路305的特定操作/功能。被用作环形缓冲器的存储器307包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)和/或只读存储器(ROM)或其等效物。编码器301优选地为1/3速率3GPP turbo编码器,然而,此处所描述的用于操作发射器300的技术可以被应用于其他编码器,包括但不限于执行具有其他码速率、具有尾比特或无尾比特、咬尾的turbo编码的turbo编码器,具有或不具有填充比特插入的二进制或双二进制turbo编码器等。
在操作期间,编码器301输出与系统比特流和两个奇偶流对应的三个流。逻辑电路305接收从编码器301输出的流,并且单独地在每个流上执行子块交织。然后,逻辑电路305将P0’和P1’进行交错。通过将重新设置的系统比特S存储在交错的P0和P1前面的开端中,形成单一输出缓冲器307(环形缓冲器)。
虽然子块交织器可以是任何置换器(permuter),出于简单目的,通常使用Nr行和Nc列的矩形交织器(也被称为块交织器)。如果每个流的流大小Kstream等于矩形交织器大小Nr×Nc(即,该块是满的),这些操作是直接的。然而,流大小常常小于Nr×Nc,因此需要(Nr×Nc-Kstream)个虚比特来填充该块。
这种形成环形缓冲器的过程在图4和图5中示出,其中,4个虚比特被插入每个流。参考图4,添加了虚比特407的系统比特401被块交织,以产生置换的系统比特S402。以类似方式,奇偶比特P0′和P1′403(具有添加的虚比特)被交织,以产生奇偶比特P0和P1 404。将虚比特附加到流后面,以便对于每个流块交织器是满的。P0和P1被交错,以产生交错的部分交错的P0和P1部分405。将这两个矩阵S和P0-1如图5所示的组合并且存储在缓冲器307中。从矩阵的顶部开始,按列方向读出缓冲器307。虽然在以上描述中,虚比特被插入在流之后,但在某些实施例中,可以将其插入在流之前。
在发射器300的操作期间,计算要被选择用于发射的编码比特的数目Ndesired,并且将其传送至逻辑电路305。逻辑电路305仅从某个开始点开始,从输出缓冲器307中读出长Ndesired的连续比特块(如果超过输出缓冲器的最后一个比特,则绕回到开端)。对于混合自动重复请求(HARQ)操作,将参数(冗余版本(RV))提供至逻辑电路305,以定义缓冲器307内的开始点,以便可以选择缓冲器的不同部分用于发射。由于FEC等同于只有一个传输的HARQ,因此也可以用RV值来定义FEC。因此,逻辑电路305接收RV值以及要被选择用于发射的编码比特的数目Ndesired。从由RV定义的位置开始,将Ndesired个比特从缓冲器307读出。这些比特通常被输出至发射器311,用于随后的调制和发射。
应注意的是,上文出于图示的目的,给出用于S和交错的P0和P1的特定格式,并且可以通过若干方式对其进行格式化。例如,虽然使用单维阵列来表示环形缓冲器,但是出于数学上的目的,使用二维矩阵格式常常是有用的。
如果虚比特被保持在环形缓冲器中,则其被称为虚比特填充的环形缓冲器。虚比特填充的环形缓冲器的大小等于输入流大小与插入的虚比特总数目之和。如根据上下文将清楚的,虚比特填充的环形缓冲器可以是如图5所示的矩阵格式,或者如图2所示的序列格式(即,单维阵列或数据流)。如果虚比特被去除,则其被称为虚比特去除的环形缓冲器。虚比特去除的环形缓冲器的大小等于输入流大小之和。类似地,虚比特去除的环形缓冲器可以以图6中的矩阵格式或者以序列格式来表示,在矩阵格式中,在虚比特被去除的任何位置,存在不连续性。现有技术的RV被大致均匀地分布在虚比特去除的环形缓冲器上,这使得难以实现HARQ的每个传输,因为针对每个情形需要使用非零解(non-trivial)运算来计算编码器输出流中的精确的RV开始位置。为了解决这一问题,虚比特填充的环形缓冲器307可以被用于定义用于冗余版本的开始位置。
下文在随后的速率匹配技术描述中可能是有用的。
■Kinfo指信息块大小(或者消息分组的长度)
■KFEC指由FEC编码器支持的输入块大小(KFEC等于用于二进制turbo码的交织器大小,并且等于用于双二进制turbo码的交织器大小的两倍。)
■Kfiller指被添加至信息块以获取被支持用于FEC编码器的输入大小的填充比特的数目。Kfiller=KFEC-Kinfo
■Kstream=K被称为流长度,其等于或稍大于KFEC,这取决于在turbo码中所使用的栅格终止方法。对于3GPP turbo码,存在三个流,每个长度Kstream=KFEC+4,由分别出自第一和第二编码器的系统比特和奇偶比特构成,并且12个尾比特均匀分布在三个流中。
■Nr指在环形缓冲器中使用的子块交织器的行数目。
■Nc指在环形缓冲器中使用的子块交织器的列数目。
■Krect=Nr×Nc是在环形缓冲器中使用的子块交织器的尺寸。一般而言,Krect被选择为大于或等于Kstream,但是,作为速率匹配算法的一部分如果填充比特被丢弃,则Krect也可以被选择为大于或等于KFEC
RV定义
出于阐释的目的,考虑当子块交织器具有30列的情形,并且需要定义8个RV。在该情形下,图7中的缓冲器可能具有90个列,这些列不能被均匀地划分成八个RV。难以找出编码器输出流中的每个RV的开始点(除了如果RV0总是从环形缓冲器的开端开始情形下的RV0以外)。假定需要8个均匀分布的RV,则如果不包括虚比特(即,虚比特去除的环形缓冲器),那么,RVi的开始点是Kstream×3/8×i(当必要时,通过诸如四舍五入、取下限或上限的运算得到整数值),i=0,1,...7。可选地,如果虚比特被计算在内(即,虚比特填充的环形缓冲器),那么,RVi的开始点是Nr×Nc×3/8×i=Nr×90/8×i(当必要时,通过诸如四舍五入、取下限或上限的运算得到整数值)。在任意情形下,如果期望均匀分布的RV开始位置,那么,7个RV的开始点几乎总是位于Nr×90矩形的中间。(一种解是令所有7个RV开始点在Nr×30矩形的顶部行中,从而导致RV在缓冲器中略微不均匀的分布。)如果30列的子块交织器被应用于3GPP长期演进(LTE)标准,应注意下列问题。
·如果存储RV开始点,那么,总共188×7个开始点需要被存储,这耗费存储器。应注意的是,存在188个QPP交织器大小,并且对于每个大小,存在7个RV需要被存储。
·如果在运行中计算RV开始点,那么两个困难的运算需要被编程入硬件中,以找出在奇偶-0/奇偶-1矩形的矩形或者系统比特的矩形中点的行和列索引。例如,如果RV开始于系统流内的第L个索引,那么这两个运算是:
O除法,以找出列索引=floor(L/_Nr),假定列索引开始于0。如果Nc固定为30,由于Nr随着Kstream改变,并且Nr很可能不是2的幂,所以该除法在硬件中不是零解(trivial)。
O求模,以找出行索引=mod(L,Nc)=mod(L,30)。由于30不是2的幂,因此该求模运算在硬件中也不是零解。
使用Nc=30在较大程度上增加了定位RV的困难。相反,优选的是,在缓冲器307中的列的总数目是所支持的RV的总数目的倍数,以具有均匀分布的RV(虽然RV仍可以被非均匀地定义)。例如,当要定义8个RV时,子块交织器可以使用32个列。通常需要定义2c个RV,其中,c为整数。因此,使用Nc=2d是方便的,其中,d为大于或等于c的整数。为了进一步降低复杂性并且最小化虚比特的量,优选的是对于该系统的所有信息块大小使用相同值d。例如,常数d=5(因此,Nc=32列)可以被用于3GPP LTE的所有信息块大小。
另外,如果在定义RV的开始位置之前,虚比特不被丢弃,则均匀分布的RV可以被定义为总是开始于组成子块交织器的列的顶部(即,第一行),因此,避免了诸如上面所讨论的除法和求模的复杂运算。
如果使用具有列间置换模式{0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,1,17,9,25,5,21,13,29,3,19,11,27,7,23,15,31}的Nc=32的子块交织器,那么,相同数目的列被用于所有Kstream,行数目随着Kstream改变,
Figure GSB00000971505000091
由于通常需要RV来将缓冲器307划分成大致均匀的部分,因此如果使用虚比特去除的环形缓冲器,则需要另外的计算开销以模拟用于每个流大小的RV定义中的非均匀性。
为了进一步说明,考虑当RV的数目=8的情形,在子块交织器中的列数目是Nc=32,并且输入流大小是Kstream,并且长度32的列置换被用于S、P0和P1的子块交织中。
图6示出了定义了8个RV的虚比特去除的环形缓冲器(即,在丢弃虚比特之后)。应注意的是,在虚比特被丢弃的任何地方都存在不连续性,通过从左上角开始按列方向读取矩阵元素,来获取具有序列格式的虚比特去除的环形缓冲器(可以被用于缓冲器307中)。RV在矩形中的分布规则性的缺乏导致其中任何RV值可能被输入到RM块的HARQ运算的困难。必须基于流大小(以及虚比特的数目)计算用于RV的开始点的行和列索引,因此,导致硬件复杂。
接下来,描述简化具有环形缓冲器的HARQ运算的一种可选方式。在该情形下,如图7所示,在定义RV之后,将虚比特丢弃。事实上,这些虚比特被留在环形缓冲器(虚比特填充的环形缓冲器)中,并且由于虚比特填充的环形缓冲器大小是8的倍数,为任何流大小Kstream定义平均分隔的八个RV是可能的。具体而言,八个RV可以被定义为开始于子块交织器列的顶部。一般而言,将RV分配至子块交织器的第一行的任何位置(即,在列的顶部)是方便的。例如,在图7中,八个RV可以开始于下述八列的顶部:2、14、26、38、50、62、74、86(其中,Nc=32)。当以具有序列格式的虚比特填充的环形缓冲器的位置来描述时,冗余版本开始于
Figure GSB00000971505000101
i=0,1,...,7,其中,σ表示第一个RV(RV0)的开始位置的列索引。
应注意的是,该RV定义对于虚比特填充的环形缓冲器是无记忆的,在某种意义上在不了解先前RV的开始位置的情况下,开始从任何RV输出期望的码比特是容易的。当正在从虚比特填充的环形缓冲器读出比特时,虚比特被丢弃。即使列的总数目不是所支持的RV的总数目的倍数,例如,具有8个RV的Nc=30,RV仍然可以被定义为开始于90列中的任何8个的顶部。
虽然在上文讨论中将列顶部用作定义RV的开始位置的简单方法,但也可以使用其他方便的位置。例如,RV的开始位置可以全部位于虚比特填充的环形缓冲器的特定行r,其中0≤r<Nr
在整个虚比特填充的环形缓冲器中定义RV的理由如下。
●每个流(或者子块交织器)的置换被描述为具有虚比特的Krect=Nr×Nc矩形阵列。
○当Kstream=Nr×Nc时,按行方向将每个流的比特写入矩形中,并且按列方向读出(在列置换之后)。
○当Kstream<Nr×Nc时,按行方向将每个流的比特写入矩形中,并且按列方向读出,并且填充(Nr×Nc-Kstream)个虚比特,以完全填满该矩形。在通过信道传输之前,虚比特被删除或被“剪除”。
●应注意的是,当矩形是满的(使用或不使用虚比特)时,每个流的置换具有封闭形式的表达,这意味着容易确定反向置换。如果容易确定反向置换,则因此也容易确定对应于特定RV的在编码器输出流中的位置。如果矩形被部分地填充(无虚比特并且Kstream<Nr×Nc),则每个流的置换不具有封闭形式的表达。在该情形下,难以确定反向置换,并且因此,也难以确定对应于特定RV的在编码器输出流中的位置。
为了便于解释,在上述讨论中,假定物理地形成环形缓冲器307(虚比特去除的或虚比特填充的),例如,通过将环形缓冲器的比特存储在存储器中。对于硬件实现,最好使用虚拟环形缓冲器概念,该虚拟环形缓冲器概念在不形成物理环形缓冲器307的情况下,生成期望的输出比特。换言之,在没有中间存储的情况下,实现速率匹配功能。该概念在图8中示出。
通过找出代数规则,以容易地生成物理环形缓冲器的期望部分,而不必经过整个物理环形缓冲器形成过程,可以避免形成物理环形缓冲器的中间步骤。
在虚拟环形缓冲器中,速率匹配算法基于输入参数(RV数目和输入大小),将其地址生成器初始化为适当的开始值。然后,通过遵循如输入流的子块置换所描述的地址生成规则,其直接开始输出比特。地址生成规则定义比特被从其输出的编码器输出流中的位置的顺序。
虚拟环形缓冲器可以作为虚比特填充的环形缓冲器和虚比特去除的缓冲缓冲器操作。然而,如果使用虚比特去除的环形缓冲器,那么,RV可以在如图6所示的环形缓冲器(具有矩阵格式)中的任何位置开始。因此,在这种场景下,RV开始点可能需要被明确地存储,这耗费存储器。可选地,可以针对每种情形推导RV开始点,但是在虚拟环形缓冲器操作中的地址初始化在硬件中的实现变得复杂。
相反,当利用虚比特填充的环形缓冲器时,为了操作虚拟环形缓冲器,RV开始于子块交织器列的顶部,并且因此在虚拟环形缓冲器操作中的地址初始化变得更有效率。每当地址生成器指向虚比特时,地址生成器自动前进,而不输出比特。
具有第一级速率匹配的RV定义
当接收器具有有限量的软缓冲器大小时,可能需要第一级速率匹配技术。在第一级速率匹配中,发射器可能了解接收器的软缓冲器能力,并且因此,其被允许只发射不超过能够被存储在接收器的软缓冲器中的码比特。
最大软缓冲器大小可以对具有环形缓冲器的速率匹配施加某种约束。具体而言,对于每个码块环形缓冲器可以如图9所示的被进一步限制。在这种情形下,在环形缓冲器中的绕回可能发生在早于环形缓冲器末端的点。
一般而言,如果对turbo编码器的输入(传输块或者串接传输块)大于turbo交织器所支持的最大尺寸,那么,TB被分割成多个码块段,单独地对每个码块段进行turbo编码和速率匹配,从而允许流水线操作。因此,TB的每个段可以具有其自己的环形缓冲器(或者虚拟环形缓冲器)(应注意的是,为每个段创建物理环形缓冲器不是必要的)。假定NIR是每HARQ过程的总软缓冲器大小(或者对应于TB的最大缓冲器大小)。
如果逐个码字(即,一段接一段)地执行速率匹配,则优选的是,如果第一级速率匹配被包括,则该第一级速率匹配也将逐个码字(一段接一段)地被执行。用于每个码字(或段)的环形缓冲器大小被限于Ncw,其中,Ncw<3×Kstream,并且3×Kstream=3×Kinfo+12是在第一级速率匹配之前的满环形缓冲器大小(每段)。应注意的是,当Ncw≥3×Kstream时,第一级RM(每段)是透明的。(来自所有传输块)的用于全部码字的大小的和Ncw不能超过NIR,其是所有TB的软缓冲器大小。代替将NIR作为第一级RM算法的输入,在LTE中的每码字RM的第一级RM可以将Ncw作为输入。
用于第一级速率匹配的选择可以包括:
1.将缓冲器大小限制为用于UE分类的设置最大值(对于所有TB,给定TTI的所有码字。用户设备(UE)分类定义在3GPP和3GPP LTE中的发射器/接收器能力集合)。通过调整,从NIR确定每TB和每码字限制。例如,Ncw=floor(NIR/C),其中,C是用于串接TB的turbo码字的数目,通过码块分割规则被确定。通过与码块分割规则类似的方式,确定每码字限制是可能的。
2.将缓冲器限制在用于UE分类的设置最大值N′IR(设置每TB限制)。通过调整,从该最大值确定每码字限制。
3.将缓冲器限制在用于UE分类的每码字设置最大值。
利用这三种选择的任何一个,通过从(在各个段中)虚拟环形缓冲器删除整个列,可以定义每码字限制。
对于RV定义,这些选择包括:
方案1.仅允许可能RV的子集。如果Y个RV被定义,而没有第一级速率匹配(即,第一级速率匹配是透明的),那么,当第一级速率匹配不是透明的时,Y个可用RV中的Y′个RV可以被保持,Y′<=Y。例如,使用RV-i,i=0,1,...,Y′-1,其中,RV-Y′的开始点小于Ncw
方案2.重新定义RV,以便Y个RV的整个集合和在允许的最大环形 缓冲器大小内是可用的。RV被这样定义使得它们在具有被插入的虚比特的环形缓冲器的列的顶部开始。系统比特打孔的量不改变,以便RV0对于所有UE分类,开始于相同位置。例如,如果虚比特填充的环形缓冲器的Ncol个列(在第一级速率匹配之前包含3×Nc)在第一级速率匹配之后保持,那么,Y个RV可以开始于列索引floor((Ncol-2)/Y))×i+2,i=0,1,...,Y-1的列顶部。
RV开始点也可以在每码字的基础上被定义,虽然优选的是对每TB用信号传送单个RV以用于有效率的HARQ运算。
系统比特打孔
上文讨论的RV定义可以被改进以适应被称为系统打孔的性能增强技术。
在文献中常见的是,部分系统turbo码可能好于系统turbo码,一个简单的解释是后者是前者的子集。然而,系统比特打孔未被用于诸如WCDMA或者CDMA2000 turbo编码的现有无线标准中的速率匹配算法。其主要原因是,当有效编码速率高时,在(RV0)的传输优选的为可自解码的。
系统比特打孔被用于避免奇偶比特的过度打孔,否则,这会导致较高编码速率上的差的最小距离,并且从而性能降低。
在诸如3GPP的通信系统中,编码速率或许可以高达5/6(或者甚至更高),并且因此,这种系统将能够处理系统比特打孔的一小部分。应注意的是,这种部分系统码仍然是可自解码的。对于具有块大小Kinfo的turbo码,令ΔK(R)表示以码速率R被打孔的系统比特的一部分。
然后,在设计速率匹配中的一个挑战是找出用于Kinfo和R的所有有效组合的ΔK(R)的最优值。在确定ΔK(R)之后,环形缓冲器可以被重新构造以包括系统比特打孔。如图10所示的重新构造存在许多选项。在系统打孔的讨论中,具有序列格式的环形缓冲器被用于说明这些技术,并且环形缓冲器可以是虚比特填充的或虚比特去除的。在下列的示例中,假定母码速率为1/3,并且总是从环形缓冲器中的第一比特开始顺序地截取这些比特。如所提及的,Kinfo指信息块大小,Kstream指流的长度。
1.图10中的选项1描述了具有序列格式的正常环形缓冲器,其中,所有系统比特被首先发射,随后是一些或所有奇偶比特。
2.图10中的选项2包含与正常环形缓冲器相同的比特,但是环形缓冲器被修改;从环形缓冲器的系统部分截取系统比特(SA)中的某些,并且将其设置在环形缓冲器的末端。因此,在第一次传输中,SA中的系统比特以多个码速率被打孔。通过简单地将RV0设置在具有相对于环形缓冲器开端的偏移的位置处的开始,也可以实现选项2。基于需要的系统比特打孔的量,可以确定该偏移。对于码速率R>=Kinfo/(3×L-SA),在SA中的系统比特总是被打孔。
3.选项3与选项2的相同之处在于环形缓冲器被修改;然而,从环形缓冲器的系统部分截取的系统比特(SA)被设置在来自奇偶流的X比特之后的缓冲器中。因此,在第一次传输中,系统比特的某些以多个码速率被打孔。对于码速率R>=Kinfo/(SB+X),SA中的系统比特总是被打孔。
a.从码速率K/(SB+X)>R>Kinfo/(SB+X+SA),SA中的系统比特的一部分被打孔。
b.对于码速率Kinfo/(SB+X+SA)>=R,所有系统比特被发射。
4.选项4与选项3的相同之处在于环形缓冲器被修改。然而,从环形缓冲器的系统部分截取的系统比特(SA)分布在缓冲器中的某个范围。因此,在第一次传输中,某些系统比特以多个码速率被打孔。选项4允许环形缓冲器设计中的更多灵活性,使系统打孔比率ΔK(R)最优化。例如,SA中的系统比特可以被均匀分布在一范围内;或者它们以增加的系统比特密度分布在一范围内;或者它们以降低的系统比特密度分布在一范围内。
存在对于上文所列出的选项的其他变型。例如,SA中的系统比特可以不位于子块交织的系统流S′的前方,而是在的S′中间或末端。其也可以从非连续的S′的位置截取,诸如S′中每x比特取一个比特,x>1。
虽然新的修改被示出为在形成该环形缓冲器之后执行的附加步骤,但该步骤可以被直接合并到环形缓冲器的定义中。
不同选项具有不同复杂性/性能权衡。选项2可以不是优选的,因为系统比特打孔对于几乎接近1/3的所有速率是固定的。一些仿真结果建议,对于LTE,大约5%的系统比特打孔对于诸如3/4或5/6的高速率可能是优选的,而0%对于诸如2/3或1/2的较低编码速率是优选的。因此,将系统比特设置在如由这种理由所指示的缓冲器的部分中,可能是优选的。可选地,已经建议以低编码速率使用RV7,以关闭系统比特打孔。
虽然该讨论集中在用于第一次传输的速率匹配设计(从而FEC)上,相同的重新构造的环形缓冲器可以被用于具有每信息块多个传输的HARQ的背景中。通过截取重新构造的环形缓冲器的不同部分,可以获取用于HARQ传输的不同冗余版本,其中,部分的大小等于当前物理信道传输所需要的长度。具体而言,如果需要Y个冗余版本(RV),一种简单的方法在重新构造的环形缓冲器内定义Y个不同开始点(Ao,A1,...,AY-1),一个冗余版本一个。对于RVi,从Ai至mod(Ai+Ntx,NCB)截取比特,其中,i=0,1,...,Y-1,并且Ntx是用于传输所需要的比特数目,NCB是环形缓冲器的长度。换言之,从位置Ai开始读取Ntx比特,如果达到缓冲器的末端,则绕回到该环形缓冲器的开端。对于给定信息块,对于每个传输,Ntx可以是不同的。
具有系统打孔的RV定义
合并(a),基于虚比特填充的环形缓冲器的RV定义和(b),系统打孔,改善的速率匹配设计具有以下优势,将Nc=32和母码速率1/3(即,turbo编码器101的三个流)用于说明:
·虚比特被包含在环形缓冲器中以使RV定义容易(即,虚比特填充的环形缓冲器)。
·易于开始用于HARQ重传的每个RV。例如,RV被定义为开始于在矩阵格式的环形缓冲器中的子块交织器列的顶部(即,第一行)。更确切地说,
-如果需要定义8个RV,则RVi将从序列格式的虚比特填充的环形缓冲器中的位置
Figure GSB00000971505000171
i=0,1,...,7开始。在矩阵格式中,RVi开始于第(12×i+σ)列的顶部。
-如果仅定义4个RV,每个RV开始于第(24×i+σ)列的顶部(其中σ=2)。同样,在序列格式中,RVi开始于
Figure GSB00000971505000181
Figure GSB00000971505000182
i=0,1,...,3的比特位置。
当σ=0(模3×Nc)时,RV0(即,i=0)将开始于环形缓冲器的开端,因此,没有系统比特打孔。对于三个流(即,母码速率1/3),通过将σ设置为大于0(模3×Nc)的值,可以开启系统比特打孔,因此,当读出用于RV0的比特时,跳过小部分系统比特。换言之,RV0(第一冗余版本)被定义为开始于第σ列的顶部,其中,σ是偏移列的数目。这在图11中示出。例如,通过设置σ=2,RV0可以被定义为从列#2而非列#0开始。σ的其他值也可以被考虑。
上面所讨论的改善的设计可以具有若干变型。这些变型中的某些如下:
·虽然在提出的设计中使用32列,但是其他值,尤其是诸如8、16、64或128的2的幂可以被用作Nc
·虽然在设计示例中使用特定列置换,但其他置换也可以被用于置换这些列。
·如果两个或多个Nc被用于速率匹配设计,那么,每个Nc可以被用于多个交织器大小。
·子块交织器对于所有流可以不相同。例如,子块交织器对于系统和奇偶1流可以是相同的,但是,奇偶2流的子块交织器可以是不同的。
·虽然为了便于描述,RV被定义为开始于子块交织器列的顶部,但它们也可以被定义为开始于虚比特填充的环形缓冲器的其他方便位置处。例如,所有RV可以开始于组成子块交织器的相同行r,其中,0≤r<Nr
具有第一级速率匹配和系统打孔的RV定义
当使用系统打孔和第一级速率匹配时,RV定义可能需要被修改以满足下列要求:
·通过将虚比特包括在环形缓冲器(即,虚比特填充的环形缓冲器)中的RV定义。
·开始针对用于HARQ重传的每个RV的地址生成。例如,RV可以被定义为开始于矩阵格式的环形缓冲器中的子块交织器列的顶部(即,在子块交织器列中的第一行)。
·在第一级速率匹配之后将RV的开始位置保持在环形缓冲器限制的范围内。
当使用系统打孔和第一级速率匹配二者时,该实现可以被解释如下。首先,通过从环形缓冲器删除一个或多个列(优选地从虚拟环形缓冲器的最后一列),以形成缩短的环形缓冲器,来实现第一级RM。因此,通过定义第一冗余版本以开始于具有相对于缩短的环形缓冲器开端的偏移的位置,可以对系统比特打孔。换言之,通过将RV0定义在系统子块交织器的子块交织器中某个非零列编号,可以实现系统比特打孔。应注意的是,上述步骤也可以被直接合并。再次,第一级速率匹配可以被认为是在每个码字(或每段)的基础上被应用。为了方便起见,在第一级速率匹配被应用之后,缩短的环形缓冲器也被称为环形缓冲器。这种区别从上下文应是显而易见的。
例如,如果将8个RV用作基线(当第一级RM不存在时),那么,下列选项可以用于定义具有第一级RM的RV。
·利用RV定义方案1,8个RV开始位置可以被保持,但是不必总被使用。仅位于环形缓冲器中的范围(0≤j≤Ncw-1)内的原始RV开始位置可以被允许。这也可以使用下列条件来表述:仅使用具有Nr×σ<=Nr(12×i+σ)<=Ncw-1的RV-i,在某些情形下导致可能少于8个RV。允许的最后RV索引i从而是floor(((Ncw-1)/Nr-σ)/12)。
·利用RV定义方案2,仍需要8个RV(在所有情形下),那么,RV开始位置可以是Nr(C×i+σ),i=0,1,...,7,其中,C是使得Nr(C×i+σ)<=Ncw-1的最大整数。换言之,C=floor(((Ncw-i)/Nr-σ)/7)。
在上面的讨论中,C表示在两个相邻RV之间的列数目,Y是定义的RV数目。
如果在第一级速率匹配之前其他数目(例如4个)的RV被定义,则可以应用类似的RV修改。例如,如果4个RV被用作基线(当第一级RM不存在时),那么,以下选项对于定义具有第一级RM的RV是可用的。
没有第一级速率匹配的情况下,RV-i开始于序列格式的虚比特填充的环形缓冲器的位置Nr×(Nc×3/4×i+σ)=Nr×(24×i+σ),i=0,1,2,3。在使用第一级速率匹配之后,环形缓冲器包含位置j的比特,其中0≤j≤Ncw-1。
·利用RV定义方案1,4个RV开始位置被保持,然后,仅使用具有Nr×2<=Nr(24×i+σ)<=Ncw-1的RV-i,导致可能少于4个RV。
·利用RV定义方案2,仍然需要4个RV,然后,RV开始位置可以是Nr×(C×i+2),i=0,1,2,3,其中,C是使得Nr(C×i+σ)<=Ncw-1的最大整数。
图12是示出图3的发射器的操作的流程图。具体而言,图12的逻辑流示出用于将冗余版本分配至环形缓冲器307的步骤以及来自环形缓冲器307的比特的随后发射。该逻辑流开始于步骤1201,其中,逻辑电路305接收系统比特、第一奇偶比特块和第二奇偶比特块。这些比特被从编码器301输出。如上所述,该系统比特、第一奇偶比特块和第二奇偶比特块都包括虚比特。逻辑电路305使用交织器309单独地对系统比特、第一奇偶比特块和第二奇偶比特块进行块交织(步骤1203)。在步骤1205,逻辑电路305将第一奇偶比特块与第二奇偶比特块进行交错,并且将交织的系统比特添加在交错的奇偶比特前面,以创建环形缓冲器307。在步骤1207,然后,逻辑电路305在该环形缓冲器的特定行内定义冗余版本。在本发明的一个实施例中,特定行包括环形缓冲器的顶部行,例如,8个或4个子块交织器列顶部。逻辑电路305接收冗余版本和期望比特的数目(步骤1209),并且向发射器输出开始于RV比特位置的该数目的期望比特(步骤1211)。
图13是示出图3的发射器的操作的流程图。具体而言,图13的逻辑流示出用于将冗余版本分配至虚拟环形缓冲器的步骤,以及来自虚拟环形缓冲器的比特的随后发射。逻辑流开始于步骤1301,其中,逻辑电路305接收系统比特、第一奇偶比特块和第二奇偶比特块。如上所述,系统比特、第一奇偶比特块和第二奇偶比特块均包括虚比特。逻辑电路305使用交织器309单独地对系统比特、第一奇偶比特块和第二奇偶比特块进行块交织(步骤1303)。在步骤1305,逻辑电路305将第一奇偶比特块与第二奇偶比特块进行交错,并且将交织的系统比特加在交错的奇偶比特的前面。在步骤1307,然后,逻辑电路305定义对应于在数据流内的比特位置的冗余版本,并且其中,所有可能RV在位置
Figure GSB00000971505000211
i=0,1,...,7,其中,σ表示第一RV(RV0)的开始位置的列索引。数据流包括交织的系统比特以及交错的第一交织奇偶比特块和第二交织奇偶比特块。逻辑电路305接收冗余版本和期望比特的数目(步骤1309),并且向发射器输出开始于RV比特位置的该数目的期望比特(步骤1311)。
虽然已经参考特定实施例具体示出和描述了本发明,但本领域的技术人员应理解的是,在不脱离本发明的精神和范围的前提下,可以对本发明的形式和具体细节进行各种改变。
在一个示例中,虽然该过程被解释为虚比特可以不被添加到流上,并且后来从环形缓冲器中被去除,但通过诸如适当地生成地址的其他方式实现相同效果。
在另一示例中,从环形缓冲器的特定行(例如,列的顶部)开始RV可以等同于从针对每个流的子块交织器中的特定行开始RV,同时,虚比特存在。将开始点映射至在子块交织器内的其位置对某种实现可能是更方便的,同时,在环形缓冲器中定义RV开始点对于其他实现可能是更方便的。
这些改变应包含在所附权利要求的范围内。

Claims (22)

1.一种用于将冗余版本分配至环形缓冲器的方法,所述方法包括下述步骤:
接收系统比特、第一奇偶比特块和第二奇偶比特块,其中,所述系统比特、所述第一奇偶比特块和所述第二奇偶比特块均包括虚比特;
单独地对所述系统比特、第一奇偶比特块和第二奇偶比特块进行块交织;
将所述第一奇偶比特块与所述第二奇偶比特块进行交错,以创建交错的奇偶比特;
将所述交织的系统比特添加到所述交错的奇偶比特前面,以创建环形缓冲器;
从所述环形缓冲器中删除一个或多个列,以形成缩短的环形缓冲器;
将冗余版本定义为开始于所述缩短的环形缓冲器的特定行;
接收冗余版本以及期望比特的数目;以及
输出开始于所述冗余版本比特位置的所述数目的期望比特。
2.根据权利要求1所述的方法,进一步包括下述步骤,
将所述冗余版本定义为开始于所述缩短的环形缓冲器的列顶部。
3.根据权利要求2所述的方法,其中,所述将冗余版本定义为开始于所述缩短的环形缓冲器的列顶部的步骤包括将冗余版本定义为开始于所述缩短的环形缓冲器的八个列顶部的步骤。
4.根据权利要求2所述的方法,其中,所述将冗余版本定义为开始于所述缩短的环形缓冲器的列顶部的步骤包括将冗余版本定义为开始于所述缩短的环形缓冲器的四个列顶部的步骤。
5.根据权利要求2所述的方法,进一步包括下述步骤,
将第一冗余版本定义为开始于第σ列的顶部,其中,σ是偏移列的数目。
6.根据权利要求2所述的方法,进一步包括下述步骤,
通过将第一冗余版本定义为开始于具有相对于所述缩短的环形缓冲器开端的偏移的位置,来对系统比特进行打孔。
7.根据权利要求1所述的方法,其中所述输出开始于冗余版本位置的比特的步骤包括在早于环形缓冲器末端的点绕回到环形缓冲器开端。
8.根据权利要求1所述的方法,其中所述删除一个或多个列的步骤包括从环形缓冲器的最后一列删除列。
9.根据权利要求1所述的方法,其中所述删除一个或多个列的步骤包括基于floor(NIR/C)确定每段的缓冲器大小,其中,C是用于串接传输块的段的码字的数目,通过码块分割规则被确定,并且其中,NIR是每混合自动重复请求过程的总软缓冲器大小。
10.一种用于将冗余版本分配至传输块的环形缓冲器的装置,包括:
编码器,所述编码器输出系统比特、第一奇偶比特块和第二奇偶比特块;
速率匹配电路,所述速率匹配电路接收所述系统比特、第一奇偶比特块和第二奇偶比特块,并且创建具有虚比特的环形缓冲器,并且其中,所述环形缓冲器的特定行包含冗余版本(RV)的开始点,并且其中,所述速率匹配电路从所述环形缓冲器中删除一个或多个列,以形成缩短的环形缓冲器,并且其中,所述速率匹配电路从特定冗余版本开始将非虚比特从所述缩短的环形缓冲器输出至发射器;
发射电路,所述发射电路接收所述非虚比特并且发射所述非虚比特。
11.根据权利要求10所述的装置,其中,所述缩短的环形缓冲器的八个列顶部被定义为冗余版本的开始位置。
12.根据权利要求10所述的装置,其中,所述缩短的环形缓冲器的四个列顶部被定义为用于冗余版本的开始位置。
13.根据权利要求10所述的装置,其中,所述缩短的环形缓冲器包括交织的系统比特、交织和交错的第一和第二奇偶比特块。
14.根据权利要求10所述的装置,其中,所述速率匹配电路在第σ列的顶部开始第一冗余版本,其中,σ是偏移列的数目。
15.根据权利要求10所述的装置,其中,所述速率匹配电路将冗余版本定义为开始于所述缩短的环形缓冲器的列顶部。
16.根据权利要求15所述的装置,其中,所述速率匹配电路通过将第一冗余版本定义为开始于具有相对于所述缩短的环形缓冲器开端的偏移的位置,来对所述系统比特进行打孔。
17.根据权利要求10所述的装置,其中所述速率匹配电路在冗余版本位置开始输出比特包括在早于环形缓冲器末端的点绕回到环形缓冲器开端。
18.根据权利要求10所述的装置,其中所述速率匹配电路删除一个或多个列包括从环形缓冲器的最后一列删除列。
19.根据权利要求10所述的装置,其中所述速率匹配电路基于floor(NIR/C)确定每段的缓冲器大小,其中,C是用于串接传输块的段的码字的数目,通过码块分割规则被确定,并且其中,NIR是每混合自动重复请求过程的总软缓冲器大小。
20.一种用于将冗余版本分配至传输块的环形缓冲器的方法,所述方法包括下述步骤:
将传输块分割成多个码块段;
通过编码器对与传输块相关联的段进行编码,以产生系统比特流和两个奇偶比特流;
每个流中插入虚比特以产生系统比特、第一奇偶比特块和第二奇偶比特块,其中,所述系统比特、所述第一奇偶比特块和所述第二奇偶比特块均包括虚比特;
单独地对所述系统比特、第一奇偶比特块和第二奇偶比特块进行块交织;
将所述第一奇偶比特块与所述第二奇偶比特块进行交错,以创建交错的奇偶比特;
将所述交织的系统比特添加到所述交错的奇偶比特前面,以创建环形缓冲器;
基于floor(NIR/C)确定每段的缩短的环形缓冲器的缓冲器大小,其中,C是用于串接传输块的段的码字的数目,通过码块分割规则被确定,并且其中,NIR是每混合自动重复请求过程的总软缓冲器大小;
接收冗余版本以及期望比特的数目;以及
从所述缩短的环形缓冲器输出开始于冗余版本位置的所述数目的期望比特。
21.根据权利要求20所述的方法,其中所述输出开始于冗余版本位置的比特的步骤包括在早于环形缓冲器末端的点绕回到环形缓冲器开端。
22.根据权利要求20所述的方法,其中所述冗余版本被定义为使得四个冗余版本的整个集合在所述缩短的环形缓冲器内是可用的。
CN2008800199821A 2007-06-20 2008-06-17 包括环形缓冲器的装置和用于向环形缓冲器分配冗余版本的方法 Active CN101682486B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/765,921 US7890834B2 (en) 2007-06-20 2007-06-20 Apparatus comprising a circular buffer and method for assigning redundancy versions to a circular buffer
US11/765,921 2007-06-20
PCT/US2008/067175 WO2008157523A2 (en) 2007-06-20 2008-06-17 An apparatus comprising a circular buffer and method for assigning redundancy versions to a circular buffer

Publications (2)

Publication Number Publication Date
CN101682486A CN101682486A (zh) 2010-03-24
CN101682486B true CN101682486B (zh) 2013-04-10

Family

ID=39941691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008800199821A Active CN101682486B (zh) 2007-06-20 2008-06-17 包括环形缓冲器的装置和用于向环形缓冲器分配冗余版本的方法

Country Status (12)

Country Link
US (1) US7890834B2 (zh)
EP (3) EP2171908B9 (zh)
JP (2) JP5499366B2 (zh)
KR (2) KR101593700B1 (zh)
CN (1) CN101682486B (zh)
BR (1) BRPI0813136A2 (zh)
CA (1) CA2689587C (zh)
ES (1) ES2610818T3 (zh)
MY (1) MY149949A (zh)
RU (2) RU2467484C2 (zh)
WO (1) WO2008157523A2 (zh)
ZA (1) ZA200908521B (zh)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7434138B2 (en) * 2005-06-27 2008-10-07 Agere Systems Inc. Structured interleaving/de-interleaving scheme for product code encoders/decorders
US8069400B2 (en) * 2007-08-13 2011-11-29 Broadcom Corporation Optimal circular buffer rate matching for turbo code
KR20090030378A (ko) * 2007-09-20 2009-03-25 삼성전자주식회사 이동통신 시스템에서 블럭 인터리빙을 위한 장치 및 방법
US7986741B2 (en) * 2007-09-28 2011-07-26 Samsung Electronics Co., Ltd. Method and apparatus of improved circular buffer rate matching for turbo-coded MIMO-OFDM wireless systems
RU2010112600A (ru) * 2007-10-01 2011-10-10 Панасоник Корпорэйшн (Jp) Устройство беспроводной связи и способ управления кольцевым буфером
KR20090036534A (ko) * 2007-10-09 2009-04-14 엘지전자 주식회사 성상 재배열을 이용한 데이터 전송 방법
US8225165B2 (en) * 2007-10-12 2012-07-17 Industrial Technology Research Institute Methods and devices for encoding data in communication systems
WO2009057922A1 (en) * 2007-10-29 2009-05-07 Lg Electronics Inc. Method of data transmission using harq
US8234551B2 (en) * 2007-11-02 2012-07-31 Broadcom Corporation Single CRC polynomial for both turbo code block CRC and transport block CRC
US8532012B2 (en) * 2007-12-07 2013-09-10 Industrial Technology Research Institute Methods and devices for scalable reception in wireless communication systems
KR101476203B1 (ko) * 2008-01-08 2014-12-24 엘지전자 주식회사 성좌 재배열 이득을 보장하기 위한 harq 기반 신호 전송 방법
US8934890B2 (en) * 2008-01-11 2015-01-13 Texas Instruments Incorporated Transmission of data bursts on a constant data rate channel
JP5172943B2 (ja) 2008-03-12 2013-03-27 パナソニック株式会社 無線通信装置、無線通信システム及び無線通信方法
US8665720B2 (en) * 2008-03-12 2014-03-04 Broadcom Corporation Method and system for determining limited soft buffer size on transport blocks for rate matching
US8514888B2 (en) * 2008-09-12 2013-08-20 Industrial Technology Research Institute Methods and devices for wireless broadcasting service communication environment
WO2010087682A2 (en) * 2009-02-02 2010-08-05 Lg Electronics Inc. Apparatus and method for transmitting signal using bit grouping in wireless communication system
KR101216102B1 (ko) 2009-02-02 2012-12-26 엘지전자 주식회사 무선 통신 시스템에서 비트 그룹핑을 이용하여 신호를 전송하기 위한 장치 및 그 방법
EP2424143A1 (en) * 2009-04-24 2012-02-29 Panasonic Corporation Wireless communication device and wireless communication method
US8516352B2 (en) * 2009-07-21 2013-08-20 Ramot At Tel Aviv University Ltd. Compact decoding of punctured block codes
US8516351B2 (en) * 2009-07-21 2013-08-20 Ramot At Tel Aviv University Ltd. Compact decoding of punctured block codes
US9397699B2 (en) * 2009-07-21 2016-07-19 Ramot At Tel Aviv University Ltd. Compact decoding of punctured codes
US8375278B2 (en) * 2009-07-21 2013-02-12 Ramot At Tel Aviv University Ltd. Compact decoding of punctured block codes
US8290073B2 (en) 2009-10-08 2012-10-16 Intel Corporation Device, system and method of communicating data over wireless communication symbols with check code
US8423861B2 (en) * 2009-11-19 2013-04-16 Lsi Corporation Subwords coding using different interleaving schemes
US8537755B2 (en) * 2010-05-11 2013-09-17 Qualcomm Incorporated Rate matching device
JP2011249914A (ja) * 2010-05-24 2011-12-08 Panasonic Corp 無線送信装置、無線受信装置、無線送信方法及び無線受信方法
US8621289B2 (en) 2010-07-14 2013-12-31 Lsi Corporation Local and global interleaving/de-interleaving on values in an information word
CN101895374B (zh) * 2010-07-20 2012-09-05 华为技术有限公司 速率匹配方法及装置
US8402324B2 (en) 2010-09-27 2013-03-19 Lsi Corporation Communications system employing local and global interleaving/de-interleaving
US8724742B2 (en) 2010-10-06 2014-05-13 Motorola Mobility Llc Method and apparatus for soft buffer management for carrier aggregation
US8976876B2 (en) 2010-10-25 2015-03-10 Lsi Corporation Communications system supporting multiple sector sizes
US8588223B2 (en) 2010-11-09 2013-11-19 Lsi Corporation Multi-stage interconnection networks having smaller memory requirements
US8782320B2 (en) 2010-11-09 2014-07-15 Lsi Corporation Multi-stage interconnection networks having fixed mappings
CN102215097B (zh) * 2011-06-01 2017-12-29 深圳市中兴微电子技术有限公司 一种管理混合自动重传请求缓存的方法及装置
CN103378956B (zh) * 2012-04-12 2019-03-01 北京三星通信技术研究有限公司 Tdd系统的处理软缓存的方法及设备
CN107659384A (zh) 2012-11-16 2018-02-02 华为技术有限公司 数据处理的方法和装置
US9143291B2 (en) 2012-12-27 2015-09-22 Google Technology Holdings LLC Method and apparatus for device-to-device communication
US9185697B2 (en) 2012-12-27 2015-11-10 Google Technology Holdings LLC Method and apparatus for device-to-device communication
US9042938B2 (en) 2012-12-27 2015-05-26 Google Technology Holdings LLC Method and apparatus for device-to-device communication
US9370035B2 (en) 2013-08-12 2016-06-14 Google Technology Holdings LLC Methods and devices for mobile station device-to-device beacon window determination
US9392615B2 (en) 2013-08-20 2016-07-12 Google Technology Holdings LLC Methods and devices for allocating resources in device-to-device communication
US9727611B2 (en) * 2013-11-08 2017-08-08 Samsung Electronics Co., Ltd. Hybrid buffer management scheme for immutable pages
CN105637791A (zh) * 2014-05-27 2016-06-01 华为技术有限公司 一种循环映射方法和设备
CN105337684B (zh) * 2014-07-25 2019-09-13 华为技术有限公司 一种传输、存储下行数据的方法、基站及终端
CN106533611A (zh) * 2015-09-14 2017-03-22 中兴通讯股份有限公司 一种卷积码的数据发送方法及装置
CN105187162B (zh) * 2015-09-24 2018-04-27 北京思朗科技有限责任公司 一种多粒度并行解速率匹配方法和装置
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
CN108432167B (zh) * 2016-01-14 2021-07-30 苹果公司 对消息进行编码解码的装置、系统和计算机可读介质
US10541781B2 (en) * 2016-01-29 2020-01-21 Intel IP Corporation Rate matching using low-density parity-check codes
US9819445B1 (en) * 2016-05-05 2017-11-14 Mbit Wireless, Inc. Method and apparatus for joint rate matching and deinterleaving
US11043966B2 (en) 2016-05-11 2021-06-22 Qualcomm Incorporated Methods and apparatus for efficiently generating multiple lifted low-density parity-check (LDPC) codes
US10454499B2 (en) 2016-05-12 2019-10-22 Qualcomm Incorporated Enhanced puncturing and low-density parity-check (LDPC) code structure
EP3902142A1 (en) 2016-05-12 2021-10-27 MediaTek Inc. Qc-ldpc coding methods and apparatus
US9917675B2 (en) 2016-06-01 2018-03-13 Qualcomm Incorporated Enhanced polar code constructions by strategic placement of CRC bits
US10469104B2 (en) 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
JP2019165269A (ja) * 2016-07-28 2019-09-26 シャープ株式会社 基地局装置、端末装置および通信方法
KR102126404B1 (ko) * 2016-08-12 2020-06-24 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) Ldpc 코드들에 대한 레이트 매칭 방법들
WO2018068001A1 (en) * 2016-10-06 2018-04-12 Intel Corporation Circular buffer rate matching for polar code
WO2018103638A1 (zh) * 2016-12-07 2018-06-14 华为技术有限公司 数据传输的方法、发送设备、接收设备和通信系统
CN108173621B (zh) * 2016-12-07 2022-06-14 华为技术有限公司 数据传输的方法、发送设备、接收设备和通信系统
US10581457B2 (en) 2017-01-09 2020-03-03 Mediatek Inc. Shift coefficient and lifting factor design for NR LDPC code
US10432227B2 (en) * 2017-01-24 2019-10-01 Mediatek Inc. Location of interleaver with LDPC code
US10630319B2 (en) 2017-01-24 2020-04-21 Mediatek Inc. Structure of interleaver with LDPC code
CN108400844B (zh) * 2017-02-04 2021-07-20 华为技术有限公司 信息处理的方法、装置、通信设备和通信系统
EP3566351B1 (en) * 2017-02-06 2024-04-03 Mediatek Inc. Method and apparatus for communication
CN108400832B (zh) * 2017-02-06 2022-09-09 华为技术有限公司 数据处理方法和通信设备
US10348329B2 (en) * 2017-02-13 2019-07-09 Qualcomm Incorporated Low density parity check (LDPC) circular buffer rate matching
CN108574491B (zh) 2017-03-09 2020-02-21 华为技术有限公司 数据处理方法、数据处理装置和通信设备
CN114553368B (zh) 2017-03-22 2024-05-17 三星电子株式会社 在通信或广播系统中使用harq传输的装置和方法
KR20180107692A (ko) * 2017-03-22 2018-10-02 삼성전자주식회사 통신 또는 방송 시스템에서 harq 적용시 전송 방법 및 장치
US10567116B2 (en) 2017-05-12 2020-02-18 Mediatek Inc. Wireless communication using codebooks from a QC-LDPC code for shorter processing latency and improved decoder throughput efficiency
US10484013B2 (en) 2017-05-12 2019-11-19 Mediatek Inc. Shift-coefficient table design of QC-LDPC code for smaller code block sizes in mobile communications
US10484011B2 (en) 2017-05-12 2019-11-19 Mediatek Inc. Shift-coefficient table design of QC-LDPC code for larger code block sizes in mobile communications
US10312939B2 (en) 2017-06-10 2019-06-04 Qualcomm Incorporated Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code
CN110266448B (zh) * 2017-06-19 2020-11-10 华为技术有限公司 信息处理的方法、通信装置和存储介质
US20180367245A1 (en) * 2017-06-19 2018-12-20 Qualcomm Incorporated COMMUNICATION TECHNIQUES WITH SELF-DECODABLE REDUNDANCY VERSIONS (RVs) USING SYSTEMATIC CODES
WO2019028774A1 (en) * 2017-08-10 2019-02-14 Nokia Solutions And Networks Oy METHOD AND APPARATUS
WO2019100236A1 (en) * 2017-11-22 2019-05-31 Qualcomm Incorporated Circular buffer based hybrid automatic retransmission request for polar codes
US10680764B2 (en) 2018-02-09 2020-06-09 Qualcomm Incorporated Low-density parity check (LDPC) parity bit storage for redundancy versions
EP3857747A4 (en) * 2018-09-28 2022-01-26 ZTE Corporation BIT SELECTION FOR HYBRID AUTOMATIC REPEAT REQUESTS
WO2020114572A1 (en) * 2018-12-03 2020-06-11 Huawei Technologies Co., Ltd. Devices, methods and computer programs for spatial diversity via enhanced rate matching in wireless communications

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1122272C (zh) * 1993-12-18 2003-09-24 索尼公司 数据再生装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9814960D0 (en) * 1998-07-10 1998-09-09 Koninkl Philips Electronics Nv Coding device and communication system using the same
US6628723B1 (en) * 1999-10-15 2003-09-30 Cisco Technology Coding rate reduction for turbo codes
DE60128993T2 (de) * 2001-02-06 2008-02-28 Nortel Networks S.A. Mehrfachratenringpuffer und entsprechendes Betriebsverfahren
KR100480251B1 (ko) * 2001-05-08 2005-04-06 삼성전자주식회사 통신시스템에서 부호 생성 장치 및 방법
KR20030004978A (ko) * 2001-07-07 2003-01-15 삼성전자 주식회사 이동 통신시스템에서 초기전송 및 재전송 방법
US20050283710A1 (en) * 2002-08-01 2005-12-22 Stefano Olivieri Coding and decoding for rate matching in data transmission
US7986741B2 (en) * 2007-09-28 2011-07-26 Samsung Electronics Co., Ltd. Method and apparatus of improved circular buffer rate matching for turbo-coded MIMO-OFDM wireless systems

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1122272C (zh) * 1993-12-18 2003-09-24 索尼公司 数据再生装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MOTOROLA.Redundancy Version Definition for Circular Buffer Rate Matching,R1-072138.《3GPP TSG RAN 1》.2007, *
MOTOROLA.RedundancyVersionDefinitionforCircularBufferRateMatching R1-072138.《3GPP TSG RAN 1》.2007

Also Published As

Publication number Publication date
MY149949A (en) 2013-11-15
JP2014060814A (ja) 2014-04-03
KR101593700B1 (ko) 2016-02-12
ES2610818T3 (es) 2017-05-03
EP3136638A1 (en) 2017-03-01
RU2467484C2 (ru) 2012-11-20
KR20100031575A (ko) 2010-03-23
US7890834B2 (en) 2011-02-15
EP2171908B1 (en) 2016-10-19
ZA200908521B (en) 2010-08-25
WO2008157523A2 (en) 2008-12-24
JP2010529756A (ja) 2010-08-26
BRPI0813136A2 (pt) 2014-12-23
EP2171908B9 (en) 2017-04-19
US20080320353A1 (en) 2008-12-25
WO2008157523A3 (en) 2009-02-19
RU2604992C2 (ru) 2016-12-20
JP5499366B2 (ja) 2014-05-21
RU2012118754A (ru) 2013-11-10
CA2689587C (en) 2012-11-13
EP2485426A1 (en) 2012-08-08
KR20160006249A (ko) 2016-01-18
KR101701083B1 (ko) 2017-01-31
EP2171908A2 (en) 2010-04-07
CA2689587A1 (en) 2008-12-24
JP5791161B2 (ja) 2015-10-07
RU2010101681A (ru) 2011-07-27
CN101682486A (zh) 2010-03-24

Similar Documents

Publication Publication Date Title
CN101682486B (zh) 包括环形缓冲器的装置和用于向环形缓冲器分配冗余版本的方法
CN101183875B (zh) 一种Turbo码的有限长度循环缓存的速率匹配方法
CN102792624B (zh) 为lte高效实施包括harq结合的解速率匹配的方法
KR101597733B1 (ko) 무선 통신 시스템을 위한 레이트 매칭
KR100446537B1 (ko) 이동 통신시스템의 패킷 데이터 전송 방법 및 장치
EP1662687B1 (en) Apparatus and method for interleaving channels in a mobile communication system
CN101572588B (zh) 使用比特排列方法的传输装置
CN107026709A (zh) 一种数据包编码处理方法及装置、基站及用户设备
TWI469535B (zh) 用於編碼位元序列之方法及編碼電路
JP5679059B2 (ja) 無線送受信装置、通信システム及びそれらに用いるチャネルコーディング処理方法
JP2003224615A (ja) 高速ダウンリンクパケットアクセス移動通信システムにおけるシンボルマッピングのためのインターリービング装置及び方法
CN105471545A (zh) 一种数据包处理方法及装置
JP2013543685A (ja) フィードバック情報送信方法及びユーザ機器
CN103312442A (zh) 基于有限长度循环缓存速率匹配的数据发送方法及装置
CN105991227A (zh) 数据编码方法及装置
CN109478894B (zh) 一种ldpc码的基矩阵生成方法、编译码方法及设备
CN101867441A (zh) 星座图映射方法
CN1319300C (zh) 码分多址通信系统中的数据发送设备和方法
CN104618072A (zh) Ngb-w系统中逻辑帧信令信道的编码与调制方法
CN102098125B (zh) 并行基带处理的方法以及装置
JP4616997B2 (ja) インタリーブとそれに続くパンクチャリングまたはリピーティングによるレート整合とを行うデータ伝送方法
CN101436918B (zh) 结构化低密度奇偶校验码的信道编码方法、装置、及系统
CN102075285B (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
ASS Succession or assignment of patent right

Owner name: MOTOROLA MOBILE CO., LTD.

Free format text: FORMER OWNER: MOTOROLA INC.

Effective date: 20110107

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20110107

Address after: Illinois State

Applicant after: MOTOROLA MOBILITY, Inc.

Address before: Illinois State

Applicant before: Motorola, Inc.

C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: Illinois State

Patentee after: MOTOROLA MOBILITY LLC

Address before: Illinois State

Patentee before: MOTOROLA MOBILITY, Inc.

TR01 Transfer of patent right

Effective date of registration: 20160511

Address after: California, USA

Patentee after: Google Technology Holdings LLC

Address before: Illinois State

Patentee before: MOTOROLA MOBILITY LLC