CN101064517B - 利用通道编码算法用于排列和解排列的网络 - Google Patents

利用通道编码算法用于排列和解排列的网络 Download PDF

Info

Publication number
CN101064517B
CN101064517B CN2007100976502A CN200710097650A CN101064517B CN 101064517 B CN101064517 B CN 101064517B CN 2007100976502 A CN2007100976502 A CN 2007100976502A CN 200710097650 A CN200710097650 A CN 200710097650A CN 101064517 B CN101064517 B CN 101064517B
Authority
CN
China
Prior art keywords
limit
node
row
network
terminal
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 - Fee Related
Application number
CN2007100976502A
Other languages
English (en)
Other versions
CN101064517A (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.)
Industrial Technology Research Institute ITRI
Original Assignee
Industrial Technology Research Institute ITRI
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 Industrial Technology Research Institute ITRI filed Critical Industrial Technology Research Institute ITRI
Publication of CN101064517A publication Critical patent/CN101064517A/zh
Application granted granted Critical
Publication of CN101064517B publication Critical patent/CN101064517B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/033Theoretical methods to calculate these checking 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/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/2757Interleaver with an interleaving rule not provided for in the subgroups H03M13/2703 - H03M13/2753
    • 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/2771Internal interleaver for turbo 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • 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
    • 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/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes

Abstract

一种用于通道编码排列和解排列的网络,其包含第一边和第二边,其各有至少一个端子。所述网络另包含:位于所述第一与所述第二边之间的两个或更多个节点列。所述列的第一列与所述第一边介接,且所述列的第二列与所述第二边介接。所述列中的每一列包含至少一个节点。所述列的每一节点连接到靠近所述列的相邻列中每一列的第一数量节点,且所述第一数量对于所述网络中的所有节点均是相同。被选作交换的节点同时被控制以实现交换操作。一种操作所述网络的方法包括如下步骤:确定数据流从所述第一边流至所述第二边的方向;确定控制信号的控制元件;及使所述控制元件的每一元件与被选作交换的所述节点的交换操作的一者相关联;提供由所述控制信号构成的控制序列;提供一欲操作的数据流;读取所述控制信号的至少一个控制元件;根据所读取的所述控制信号的所述至少一个控制元件,针对所述节点实施所述交换操作的交换操作;以及通过所述节点的所述交换操作所建立的路径传输所述数据流的至少一部分。

Description

利用通道编码算法用于排列和解排列的网络
技术领域
本发明涉及用于排列或解排列的网络,尤其是用于通道编码排列和解排列的网络和其通道编码数据保护概念。
背景技术
涡轮码(Turbo Code,TC)是一种通道编码,其发明于1993年且利用递归解码算法产生近向农极限(Shannon limit)的功效。在申请中的美国专利申请案第US 11/176,829号,Zheng等人,呈现创新的具有即时特性的编码器和解码器设计,其中利用序列间(inter-sequence)排列和序列内(intra-sequence)的排列。习知地,许多算法,如查表,可利用以实现排列,但复杂且不灵活,因此需要简单或灵活的通道编码排列和解排列之算法。
本发明提供一种创新且简易的算法和具有此概念的用于在编码器端或解码器端执行次序间排序的硬件结构。优选地,实施此概念的通道编码在下文被称做「ZYX码」。
发明内容
本发明提供一种用于通道编码排列和解排列的网络。所述网络包含第一边和第二边。所述第一边和所述第二边各有至少一个端子。所述网络进一步包括位于所述第一与所述第二边之间的两个或更多个节点的列。所述列的第一列与所述第一边介接,且所述列的第二列与所述第二边介接。所述列中的每一列包含至少一个节点。所述列的每一节点连接到靠近所述列的相邻列中每一列的第一数量节点。所述第一数量对于所述网络中的所有节点均是相同。被选作交换的节点同时被控制以实现交换操作。
本发明进一步关于操作所述网络的方法。所述方法包括以下步骤:
(a)确定数据流从所述第一边流至所述第二边的方向;
(b)确定控制信号的控制元件,且所述控制元件的数量相关于所述第一数量;
(c)使所述控制元件的每一元件与被选作交换的所述节点的交换操作的一者相关联;
(d)提供由所述控制信号构成的控制序列;
(e)提供欲操作的数据流;
(f)读取所述控制信号的至少一个控制元件;
(g)根据所读取的所述控制信号的所述至少一个控制元件,针对所述节点实施所述交换操作的交换操作;以及
(h)通过所述节点的所述交换操作所建立的路径传输所述数据流的至少一部分。
应注意,以上分配到每一步骤的字母仅为步骤之间易于分辨,并无次序之分。多种不同的实施例和改进,其不超过本发明的揭示范围,揭示于以下【实施方式】中。
附图说明
本发明利用以下附图为例,以便读者了解其用途、技术内容、特征和本发明的功效。请注意所有图中的连接线仅于节点彼此交错和接触。
图1为根据本发明的第一实施例的网络。
图2为根据本发明的第二实施例的扩展网络,其采用节点的三列。
图3为根据本发明的第三实施例的网络,其采用Omega网络。
图4为于「折叠与结合」后的如图2网络的一例。
图5为由于端子结合两网络的管线级网络的一例。
图6为本发明的方祛的流程图。
图7展示本发明的所述方法的实际操作。
具体实施方式
请参考图1,其为根据本发明的第一实施例的网络。在第一实施例中呈现网络(100)的基本结构,其包括第一边(101)和第二边(102)。第一边(101)和第二边(102)各有4端子(103)。网络(100)包括两个节点(104)的列(105,106)位于第一和第二边(101,102)之间。列的第一列(105)与第一边(101)介接,且列的第二列(106)与第二边(102)介接。列(105,106)中的每一列包含4个节点(104);其中列的每一节点(104)连接到靠近所述列的相邻列中每一列的第一数量节点(104),且对于网络(100)中的所有节点,第一数量是相同的。被选作交换的节点同时被控制以实现交换操作。
虽然列(105,106)包括第二数量节点,其对于列中的每一列第二数量是相同的;在某些实施例中,第二数量可对于列中的每一列不同。第二数量对于每一列不同的一理由是存储器管理,如此的实施例的部分将会在说明书后讨论。
介于节点(104)和端子(103)之间存在着某种连接逻辑。例如:第一边(101)和第二边(102)的端子可分别在第一列(105)和第二列(106)各有独特节点,且端子中的每一端子连接到每一独特节点。在此实施例中,这是指一个端子仅连接到节点,且此节点独有地连接到此端子。但仍有例外,例如作为存储器管理的用途,而此将会在说明书后讨论。
在【实施方式】的第一段中,所属领域中的技术人员应了解节点之间的连接和节点与端子之间的连接并不受限于此实施例。例如:参考图2,图1中的网络可经延伸以包括较多列,或可采用图3中的Omega网络。另外,一般Benes网络和层树网络(Fat TreeNetwork)也是两种可能的选择。甚至一个网络其内部实施p×p全连接交换网络以替代2×2全连接交换网络也可被运用,其中p为一整数。例如:Winograd傅利叶变换利用实施p×p全连接子网络的网络。只要利用附加的权利要求书中的必要元件,可容易了解许多可能的连接形式都在本发明的权利要求中。
同样在【实施方式】的第一段中,被选作交换的节点同时被控制以实现交换操作。利用图1的实施例说明,假设数据流的方向为从第一边(101)至第二边(102),被选作交换的节点则是第一列(105)的节点,其中因为第一列(105)的每一节点有两个经由网络输出的选择(水平的流或倾斜的流),因此每一节点有两种不同的交换操作。本发明的一优点为其简易性,这是由于所有的节点同时被控制以实现其中一交换操作,在说明书后将详细说明。
所属领域中的技术人员可发现第二列(106)的每一节点仅有经由网络输出数据流的选择。因此,第二列(106)的每一节点并不作用为交换。然而,如果在某些实施例中,第二列(106)的某些或所有节点输出数据到多于一个端子(103)时,所述的某些或所有节点可作用为交换。
第一边(101)的端子可为序列内(intra-sequence)排列器,而第二边(102)的端子为存储器缓冲器;或反之亦然。
第一边(101)的端子可为后验机率(APP)解码器,而第二边(102)的端子为存储器缓冲器,或反之亦然。
为了存储器管理、节省成本或节省空间的用途,可于「折叠与结合」(folding andcombination)的步骤后运用较少的端子或节点,如图2所示的实施例。请参考图2和图4的「折叠与结合」为例。「折叠与结合」可在网络的任一边执行,但是绝不是在两边之间。也就是说,端子(103-1)可与端子(103-2)、(103-3)或(103-4)结合,但绝不可与端子(104-9)、(104-10)、(104-11)或(104-11)结合。更清楚的说明,第一边的端子中的一端子可与第一边的另一端子结合,而第二边的端子中的一端子可与第二边的另一端子结合。相对的,所述列的一列中的所有节点中的一节点与同一列中的另一节点结合。图4显示一优选的「折叠与结合」,其中端子(103-5)与端子(103-7)结合,端子(103-6)与端子(103-8)结合,而相对地节点(104-5)与节点(104-7)结合,节点(104-6)与节点(104-8)结合。图4中的虚线代表被移动的连接。通过结合节点(104-5)与节点(104-7)以产生节点(104-13);依此类推产生节点(104-14)、(104-15)和(104-16)。对于第二边,仅剩下二端子:端子(103-9)和(103-10),其分别为端子(103-5)、(103-7)和端子(103-6)、(103-8)的结合。以图4的端子(103-9)为例,端子(103-5)和(103-7)在端子(103-9)中仍代表单独部分。然而,实际上端子(103-5)和(103-7)可被无缝地合并(或「联合」)到端子(103-9)中,且可利用「映射」(mapping)被区分,这是指如果端子(103-5)和(103-7)为存储器缓冲器时,连接(401)被映射以存取一特定范围的定址(代表端子(103-5)),而连接(402)则被映射以存取另一特定范围的定址(代表端子(103-7))。对端子(103-10)也是同一概念。
在图4中,若介于节点与端子之间的连接为部分重叠且相同时,则被结合以形成单一连接。举例而言,在映射可在端子(103-9)中被执行的假设下,连接(401)和(402)可被结合成单一连接。相同地,如果介于节点之间的连接为部分重叠且相同时,则被结合以形成单一连接。举例而言,在图4中连接(403)和(404)可被结合成单一连接。这是常规技术,因此不须详尽解释。
如图5所示,两个或更多个所述的网络可彼此连接,连接的方式为网络的第一边(101)的每一端子作用为连接到于第二边(102)的另一网络的一端子。或是相似地,网络的第二边(102)的每一端子作用为连接到于第一边(101)的另一网络的一端子。图5的子图(A)和(B)表示两个本发明所揭示的不同的网络。在子图(C)中,子图(A)的网络端子(103-1)、(103-2)、(103-3)和(103-4)分别连接于子图(B)的网络端子(501-1)、(501-2)、(501-3)和(501-4)。对于所属领域中的技术人员,可通过结合(103-1)与(501-1)、(103-2)与(501-2)、(103-3)与(501-3)和(103-4)与(501-4)尤其简化子图(C)的结构以成为子图(D)的结构。在所述的结合后,新节点分别以(504-1)、(504-2)、(504-3)和(504-4)代表。节点(504-1)、(504-2)、(504-3)和(504-4)中的每一节点司如所述的一般具有交换功能或是另加的缓冲功能的节点一样的作用。子图(D)中的网络在所属领域中通常被称为「管线级」(pipelined-stage)。
本发明还涉及一种网络的操作方法。在图6中叙述所述方法的第一实施例的流程图。此图所示仅为此方法的实施例,图6中的步骤另有许多不同的次序,其与原步骤略微不同。例如:步骤(a)、(b)和(c)之间的次序与步骤(d)和(e)之间的次序可任意的调整。
基本上,本发明的实施例包括以下8步骤:
步骤(a):
确定数据流从第一边(101)流至第二边(102)的方向。仅为了解释的方便,此方向在此实施例中被确定。对于网络而言,此方向可为反向。
步骤(b):
确定控制信号的控制元件和控制元件的总量,其相关于所述的第一数量。控制元件确定何种型态可被纳入任一控制信号中。控制元件中的每一元件可由二进制数字或受限于数字范围或集合的数字代表。例如:在一数字系统中控制信号由二位控制元件组成,控制元件被设定为「0」或「1」。在某些通信系统中,为了减少因噪音而产生的信号衰减,可在一数字集合中选择控制元件,如「100」、「0」和「-100」的集合。
步骤(c):
控制元件的每一元件与被选作交换的节点的交换操作的一个操作相关联。举例而言,列(105)的某些或所有节点可在接收控制元件「0」后,被切换以经由水平连接输出数据,而在接收控制元件「1」后,经由倾斜连接输出;反之亦然。也就是说,在所有同一列217或218的交换节点在接收控制元件中的一控制元件后被设定以经由水平或倾斜输出情形下,或在接收控制元件中的另一控制元件后经由倾斜输出情形下,4个可用的信号路径集合可从图2中的实施例被传送。第一集合为路径201、203、206、208、209、212、213和216。第二集合为路径201、203、206、208、210、211、214和215。第三集合为路径202、204、205、207、209、212、213和216。第四集合为路径202、204、205、207、210、211、214和215。应了解上述的4个集合仅为一例子。对于特定的用途,多于一个集合可同时被激发。在接收相同控制元件后,一集合可在一列中分派每一交换节点不同行动。举例来说,在接收控制元件「0」后,节点104-1水平地输出数据且节点104-2倾斜地输出数据。请注意,一般控制元件的总量等于第一数量,其第一数量代表交换操作中可能选择的数量。因此,仅需一控制元件来控制多个节点的交换。
步骤(d):
提供由配置成一列的控制信号所组成的一控制序列。
步骤(e):
将一欲操作的数据流输入到网络。
步骤(f):
读取至少一个全部节点的控制信号。
步骤(g):
根据所读取的控制信号的所述至少一个控制元件,针对所述节点实施所述交换操作的交换操作。
步骤(h):
通过节点的交换操作所建立的路径传输所述数据流的至少一部分。在步骤(i)中,如果数据流并没有被完整地传输,通常会重复步骤(f)用于读取另一控制信号,并接着执行步骤(g)和(h),直到数据被完整地传输。
在下文呈现参考图7的一实施例的现实操作,其中图2中的网络(200)再次被使用。
步骤(a):
确定数据流方向为从第一边至第二边(从左至右)的方向。
步骤(b):
控制元件定义为二位数二进制数字,也就是「00」、「01」、「10」和「11」。
步骤(c):
控制元件的左边数字涉及列(702)的节点(104-1,104-2,104-3,104-4),而控制元件的右边数字则涉及列(703)的节点(104-5,104-6,104-7,104-8)。「0」被定义为「水平地流」,而「1」被定义为「倾斜地流」。
步骤(d):
由一列的「00」、「01」、「10」和「11」组成的控制/序列(704)被输入至网络(200)。
步骤(e):
数据流(701)被输入至网络(200)。一般而言,数据流由多个输入序列(705,706,707,708)形成,且每一输入序列由至少一个数据元(a0,a1,...d2,d3)形成,如图7所示。通常数据元的大小由位或符号来计算。输入序列的数量与第一边的端子数量相同。如上所述,由于在第一边有4个端子(103-1,103-2,103-3,103-4),所以输入序列的数量为4。
步骤(f):
读取至少一个全部节点的控制信号。在此实施例中,所有控制信号均以「00」、「01」、「10」和「11」的顺序被读取。
步骤(g):
执行一相同交换操作。在前一步骤(f)中,控制信号的第一位为「00」,因此所有数据流经过列(702)和(703)的节点皆被维持为一水平方向,即为所有方向均相同。
步骤(h):
传送数据流的至少一部份。在此实施例中,传输输入序列(705,706,707,708)中数据元(a0,a1,...d2,d3)的第一位(a0,b0,c0,d0)。如在步骤(g)中所述,因第一控制信号为「00」数据流经过列(702)和(703)的节点皆被维持为一水平方向,而第二边端子的输出数据元件也分别为a0、b0、c0和d0。步骤(g)应维持一时间,其长度实质上足以传输输入序列中的每一输入序列中的数据元的第一位。在某些实施例中,可同时传输多于一数据元,控制序列维持的时间也做相对调整。
在所述时间后通过在步骤(f)中读取控制次序(「00」、「01」、「10」和「11」)的另一控制信号,重复步骤(g),且接着根据步骤(h)传输输入次序(705,706,707,708)中的每一输入序列中的另一数据元。其中另一控制信号根据一预定序列被选取。在此实施例中,在所述时间后另一控制信号「10」被读取(步骤(f)),接着传输数据元件a0、b0、c0和d0。相对应的,数据流经过列(702)和(703)的节点皆被维持为一水平方向(步骤(g))。在接下来的步骤(h)中,每一输入序列中数据元的第二位,即是数据元a1、b1、c1和d1,皆被传输至第二边,且在端子(103-5,103-6,103-7,103-8)被分别作为数据元件c1、d1、a1和b1输出。连续此操作直到传输数据流的所有数据元。
输入序列中的每一输入序列清楚地被分派且经由步骤(h)中的第一边的一特定端子传输。在此实施例中,输入序列(705)被分派且经由特定端子(103-1)传输;输入序列(706)被分派且经由特定端子(103-2)传输,依此类推。
在此实施例中,在控制序列中的控制信号的数量为4,即与每一输入序列中的数据元的数量相同。然而,在某些情况下为了多种用途,如效率或安全,控制序列可比每一输入序列的长度短或长。如果控制序列比每一输入序列的长度短时,控制信号中的至少一个控制信号在步骤(f)中被读取多于一次,且多于一次被步骤(g)利用。以此实施例为例,当全部四个控制信号均被利用且需第5控制信号时,控制序列可被再次地重新利用。相反,如果控制序列比每一输入序列的长度长时,至少一个控制信号可能在步骤(f)中不被读取。例如,可依据一安全算法决定是否利用一控制信号。
本方法特别为用于通道编码算法中的排列和解排列所设计,其中数据流可于一编码器中被排列,在一解码器中排列/解排列。请注意,由于解码器的内部算法,排列和解排列均可在解码器中执行。解排列实际上与上述的排列的执行方法相同。如图6所示,被所述方法操作(排列次序(709,710,711,712))的数据流可被解排列以成为步骤(e)的数据流,其是利用提供一控制序列以再次重复所述方法,所述控制序列包括与控制序列相同的内容。请注意所述的方向并不一定为从第二边至第一边的方向。同样的控制序列也可从第一边至第二边的方向执行,因为编码器端与解码器端可使用同一网络设计,其更进一步地简化和扩展其运用。
在安全性的用途上,控制序列可在不同的编码-解码器配对间加以区别,且控制序列可被实施于涡轮码(Turbo code)中。在利用多组编码-解码器对的情形时,编码器可在多于一个编码-解码器对中被重复地使用。低密度奇偶校验(LDPC)码可实施同一概念以建立奇偶校验(Parity check)矩阵。于广义的解释中,控制序列也可实施于LDPC码中以实现提高安全性的目的。在这样的设计中,不具有正确控制序列的第三者无法将编码后的数据流转换成其原来数据,即使其传输是在编码器和解码器之间拦截。控制序列优选的传输方式是控制序列由所述编码器传送至所述解码器时被加密。所述的「传送」并不局限于无线通信。例如:如果编码器为一无线服务供应器而解码器是使用者,控制序列可经由一邮寄安全数据表(或卡)、编码的因特网连接等等传送至所述使用者。

Claims (42)

1.一种用于通道编码排列和解排列的网络100),其包含第一边(101)和第二边(102),其中所述第一边(101)和所述第二边(102)各有至少一个端子(103),所述第一边(101)的至少一个端子为后验机率(APP)解码器,且所述第二边(102)的至少一个端子为存储器缓冲器,所述网络包含:
两个或更多个节点(104)的列(105,106),其位于所述第一和所述第二边(101,102)之间,其中所述列的第一列(105)与所述第一边(101)介接,且所述列的第二列(106)与所述第二边(102)介接;其中所述列(105,106)中的每一列包含至少一个节点(104);
其中所述列的每一节点(104)连接到靠近所述列的相邻列中每一列的第一数量节点(104),且对于所述网络(100)中的所有节点所连接的节点数与所述第一数量相同;以及
其中被选作交换的节点同时被控制以实现交换操作。
2.根据权利要求1所述的网络,其中所述列(105,106)的每一列包括第二数量节点,且对于所述列中的每一列,所述的第二数量皆相同。
3.根据权利要求1所述的网络,其中所述第一边(101)和所述第二边(102)的所述端子分别在所述第一列(105)和所述第二列(106)有一独特节点,且所述端子中的每一端子连接到每一独有节点。
4.根据权利要求1所述的网络,其中所述第一边(101)的所述端子(103)的一端子与所述第一边(101)的另一端子结合,且所述第二边(102)的所述端子(103)的一端子与所述第二边(102)的另一端子结合。
5.根据权利要求1所述的网络,其中所述列的一列中的所述节点的一节点与所述列中的另一节点结合。
6.根据权利要求4所述的网络,其中当所述节点和所述端子的连接为部分重叠且相同,则所述连接被结合以形成单一连接。
7.根据权利要求5所述的网络,其中当所述节点和所述端子的连接为部分重叠且相同时,则所述连接被结合以形成单一连接。
8.根据权利要求1所述的网络,其中当数据流过所述网络的一预定方向为从所述第一边(101)至所述第二边(102)时,所述节点中被选作交换的节点为所述第一列(105)的节点。
9.根据权利要求1所述的网络,所述网络为OMEGA网络。
10.根据权利要求1所述的网络,所述网络为Benes网络。
11.根据权利要求1所述的网络,所述网络为层树(Fat tree)网络。
12.根据权利要求1所述的网络,所述网络为Winograd Fourier网络。
13.根据权利要求1所述的网络,其中所述第一边(101)的所述端子为序列内排列器,且所述第二边(102)的所述端子为存储器缓冲器。
14.根据权利要求1所述的网络,其中所述第二边(102)的所述端子为序列内排列器,且所述第一边(101)的所述端子为存储器缓冲器。
15.一种用于通道编码排列和解排列的网络(100),其包含第一边(101)和第二边(102),其中所述第一边(101)和所述第二边(102)各有至少一个端子(103),所述第二边(102)的至少一个端子为后验机率(APP)解码器,且所述第一边(101)的至少一个端子为存储器缓冲器,所述网络包含:
两个或更多个节点(104)的列(105,106),其位于所述第一和所述第二边(101,102)之间,其中所述列的第一列(105)与所述第一边(101)介接,且所述列的第二列(106)与所述第二边(102)介接;其中所述列(105,106)中的每一列包含至少一个节点(104);
其中所述列的每一节点(104)连接到靠近所述列的相邻列中每一列的第一数量节点(104),且对于所述网络(100)中的所有节点所连接的节点数与所述第一数量相同;以及
其中被选作交换的节点同时被控制以实现交换操作。
16.根据权利要求1所述的网络,其中所述第一边(101)的每一端子作用为连接到处于所述第二边(102)的根据权利要求1所述的另一网络的一端子。
17.根据权利要求1所述的网络,其中所述第二边(102)的每一端子作用为连接到处于所述第一边(101)的根据权利要求1所述的另一网络的一端子。
18.根据权利要求16所述的网络,其中所述第一边(101)的所述端子与处于所述第二边(102)的所述另一网络的所述端子结合,且在结合后作用为一节点。
19.根据权利要求17所述的网络,其中所述第二边(102)的所述端子与处于所述第一边(101)的所述另一网络的所述端子结合,且在结合后作用为一节点。
20.根据权利要求18所述的网络,其中所述节点结合后也作用为缓冲器。
21.根据权利要求19所述的网络,其中所述节点结合后也作用为缓冲器。
22.一种操作网络(100)的方法,所述网络(100)为一种用于通道编码排列和解排列的网络(100),其包含第一边(101)和第二边(102),其中所述第一边(101)和所述第二边(102)各有至少一个端子(103),所述网络包含位于所述第一和所述第二边(101,102)之间的两个或更多个节点(104)的列(105,106),其中所述列的第一列(105)与所述第一边(101)介接,且所述列的第二列(106)与所述第二边(102)介接;其中所述列(105,106)中的每一列包含至少一个节点(104);其中所述列的每一节点(104)连接到靠近所述列的相邻列中每一列的第一数量节点(104),且对于所述网络(100)中的所有节点所连接的节点数与所述第一数量相同;以及其中被选作交换的节点同时被控制以实现交换操作,所述方法包括以下步骤:
(a)确定数据流从所述第一边流至所述第二边的方向;
(b)确定控制信号的控制元件;
(c)使所述控制元件的每一元件与被选作交换的所述节点的交换操作的一个操作相关联;
(d)提供由所述控制信号构成的控制序列;
(e)提供欲操作的数据流;
(f)读取至少一个全部节点的控制信号;
(g)根据所读取的所述控制信号的所述至少一个控制元件,针对所述节点实施所述交换操作的交换操作;以及
(h)通过所述节点的所述交换操作所建立的路径传输所述数据流的至少一部分。
23.根据权利要求22所述的方法,其中所述控制元件中的每一元件由一二进制数字代表。
24.根据权利要求22所述的方法,其中所述控制元件为有限的数字范围或集合的数字。
25.根据权利要求22所述的方法,其中所述控制元件的数量等于所述第一数量。
26.根据权利要求22所述的方法,其中所述数据流由多个输入序列形成,且所述输入序列中的每一输入序列由至少一个数据元形成。
27.根据权利要求26所述的方法,其中所述输入序列的数量与所述第一边的所述端子的数量相同。
28.根据权利要求26所述的方法,其中所述数据元的大小由位或符号来计算。
29.根据权利要求22所述的方法,其中所述数据流包含至少一个输入序列,且其中所述步骤(g)维持一时间,所述时间的长度实质上足以传输所述输入序列中的每一输入序列中的至少一个数据元。
30.根据权利要求29所述的方法,其中在时间后通过在所述步骤(f)中读取所述控制序列的另一控制信号,重复所述步骤(g),且接着根据所述步骤(h)传输所述输入序列中的每一输入序列中的另一数据元。
31.根据权利要求30所述的方法,其中所述另一控制信号根据一预定序列被选取。
32.根据权利要求30所述的方法,其中所述另一数据元根据一预定序列被选取。
33.根据权利要求30所述的方法,其中所述输入序列中的每一输入序列被分派且经由所述步骤(h)中的所述第一边的一特定端子传输。
34.根据权利要求30所述的方法,其中所述输入序列中的每一输入序列的所述数据元数量与所述控制序列的所述控制信号数量相同。
35.根据权利要求30所述的方法,其中所述控制信号中的至少一个控制信号在所述步骤(f)中被读取多于一次,且多于一次被步骤(g)利用。
36.根据权利要求30所述的方法,其中所述控制信号中的至少一个控制信号不在所述步骤(f)中的任一步骤被读取。
37.根据权利要求22所述的方法,其中被所述方法操作的所述数据流可被解排列以成为步骤(e)的所述数据流,这是利用提供一第二控制序列以再次重复所述方法,所述第二控制序列包括与所述控制序列相同的内容。
38.根据权利要求37所述的方法,其中所述数据流在一编码器内被排列,且在一解码器内被排列/解排列。
39.根据权利要求37所述的方法,其中所述控制序列在不同的编码-解码器配对之间加以区别。
40.根据权利要求39所述的方法,其中当所述控制序列由所述编码器传送至所述解码器时被加密。
41.根据权利要求40所述的方法,其中所述控制序列被实施在低密度奇偶校验(LDPC)码中。
42.根据权利要求41所述的方法,其中所述控制序列被实施在涡轮码(Turbo code)中。
CN2007100976502A 2006-04-28 2007-04-27 利用通道编码算法用于排列和解排列的网络 Expired - Fee Related CN101064517B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/414,433 2006-04-28
US11/414,433 US7856579B2 (en) 2006-04-28 2006-04-28 Network for permutation or de-permutation utilized by channel coding algorithm

Publications (2)

Publication Number Publication Date
CN101064517A CN101064517A (zh) 2007-10-31
CN101064517B true CN101064517B (zh) 2010-09-08

Family

ID=38437366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007100976502A Expired - Fee Related CN101064517B (zh) 2006-04-28 2007-04-27 利用通道编码算法用于排列和解排列的网络

Country Status (4)

Country Link
US (2) US7856579B2 (zh)
EP (1) EP1850521A3 (zh)
CN (1) CN101064517B (zh)
TW (2) TWI376885B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7856579B2 (en) * 2006-04-28 2010-12-21 Industrial Technology Research Institute Network for permutation or de-permutation utilized by channel coding algorithm
US7797615B2 (en) * 2005-07-07 2010-09-14 Acer Incorporated Utilizing variable-length inputs in an inter-sequence permutation turbo code system
US20070011557A1 (en) * 2005-07-07 2007-01-11 Highdimension Ltd. Inter-sequence permutation turbo code system and operation methods thereof
GB2456775B (en) * 2008-01-22 2012-10-31 Advanced Risc Mach Ltd Apparatus and method for performing permutation operations on data
US8359515B2 (en) * 2009-12-02 2013-01-22 Lsi Corporation Forward substitution for error-correction encoding and the like
US8769365B2 (en) 2010-10-08 2014-07-01 Blackberry Limited Message rearrangement for improved wireless code performance
CN107276717B (zh) * 2010-10-08 2020-06-26 黑莓有限公司 用于获得改进的码性能的消息重新排布
US9432180B2 (en) 2011-06-03 2016-08-30 Harris Corporation Method and system for a programmable parallel computation and data manipulation accelerator
US10178651B2 (en) 2012-05-11 2019-01-08 Blackberry Limited Method and system for uplink HARQ and CSI multiplexing for carrier aggregation
CN110710139A (zh) 2017-03-29 2020-01-17 芬基波尔有限责任公司 具有光置换器的无阻塞全网状数据中心网络
WO2018183553A1 (en) * 2017-03-29 2018-10-04 Fungible, Inc. Non-blocking any-to-any data center network having multiplexed packet spraying within access node groups
CN110731070A (zh) 2017-03-29 2020-01-24 芬基波尔有限责任公司 通过多个交替数据路径进行分组喷射的无阻塞的任意到任意数据中心网络

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4400768A (en) 1980-06-04 1983-08-23 Burroughs Corporation Parallel access computer memory system employing a power-of-two memory modules
US4754394A (en) 1984-10-24 1988-06-28 International Business Machines Corporation Multiprocessing system having dynamically allocated local/global storage and including interleaving transformation circuit for transforming real addresses to corresponding absolute address of the storage
JPH063589B2 (ja) 1987-10-29 1994-01-12 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン アドレス置換装置
US5224100A (en) * 1991-05-09 1993-06-29 David Sarnoff Research Center, Inc. Routing technique for a hierarchical interprocessor-communication network between massively-parallel processors
US5530707A (en) * 1994-03-09 1996-06-25 At&T Corp. Area-efficient decoders for rate-k/n convolutional codes and other high rate trellis codes
US5815515A (en) * 1996-03-28 1998-09-29 Lsi Logic Corporation Edge metric calculation method and apparatus using permutations
US5734962A (en) 1996-07-17 1998-03-31 General Electric Company Satellite communications system utilizing parallel concatenated coding
US6477680B2 (en) * 1998-06-26 2002-11-05 Agere Systems Inc. Area-efficient convolutional decoder
FR2782425B1 (fr) * 1998-07-31 2000-10-13 France Telecom Procede et dispositif de codage correcteur d'erreurs et procede et dispositif de decodage correspondant
US6044116A (en) 1998-10-29 2000-03-28 The Aerospace Corporation Error-floor mitigated and repetitive turbo coding communication system
CA2298919C (en) * 1999-02-19 2006-04-18 Ntt Mobile Communications Network Inc. Interleaving and turbo encoding using prime number permutations
US6618371B1 (en) 1999-06-08 2003-09-09 Cisco Technology, Inc. Butterfly network with switches set for two node disjoint paths and method for forming the paths
US6922472B2 (en) 2000-05-05 2005-07-26 Teleputers, Llc Method and system for performing permutations using permutation instructions based on butterfly networks
AU2001288209A1 (en) * 2000-05-05 2001-11-26 Ruby B. Lee A method and system for performing permutations using permutation instructions based on modified omega and flip stages
US6728927B2 (en) 2000-05-26 2004-04-27 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communications Research Centre Method and system for high-spread high-distance interleaving for turbo-codes
JP2002076933A (ja) 2000-08-31 2002-03-15 Sony Corp 軟出力復号装置及び軟出力復号方法、並びに、復号装置及び復号方法
KR100393608B1 (ko) 2000-09-29 2003-08-09 삼성전자주식회사 유.엠.티.에스시스템내 터보부호화기의 내부 인터리버 및인터리빙 수행 방법
US6845482B2 (en) 2001-02-28 2005-01-18 Qualcomm Incorporated Interleaver for turbo decoder
US20030002474A1 (en) * 2001-03-21 2003-01-02 Thomas Alexander Multi-stream merge network for data width conversion and multiplexing
US7313192B2 (en) * 2001-05-31 2007-12-25 Nxp B.V. Method and apparatus for a complementary encoder/decoder
US6603412B2 (en) 2001-06-08 2003-08-05 Texas Instruments Incorporated Interleaved coder and method
US7085969B2 (en) 2001-08-27 2006-08-01 Industrial Technology Research Institute Encoding and decoding apparatus and method
JP3669433B2 (ja) 2001-12-25 2005-07-06 ソニー株式会社 インターリーブ装置及びインターリーブ方法、符号化装置及び符号化方法、並びに復号装置及び復号方法
KR100480264B1 (ko) 2002-02-06 2005-04-07 삼성전자주식회사 통신시스템에서 인터리버 및 인터리빙 방법
US7058874B2 (en) 2002-05-24 2006-06-06 Lucent Technologies Inc. Interleaver address generator and method of generating an interleaver address
US6961888B2 (en) * 2002-08-20 2005-11-01 Flarion Technologies, Inc. Methods and apparatus for encoding LDPC codes
US6957375B2 (en) * 2003-02-26 2005-10-18 Flarion Technologies, Inc. Method and apparatus for performing low-density parity-check (LDPC) code operations using a multi-level permutation
US20050216700A1 (en) * 2004-03-26 2005-09-29 Hooman Honary Reconfigurable parallelism architecture
US7856579B2 (en) * 2006-04-28 2010-12-21 Industrial Technology Research Institute Network for permutation or de-permutation utilized by channel coding algorithm
US20070011557A1 (en) * 2005-07-07 2007-01-11 Highdimension Ltd. Inter-sequence permutation turbo code system and operation methods thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Mansour,M.M..Unified Decoder Architectures for Repeat-Accumulate and LDPC Codes.《Signals,Systems and Computers,2004.Conference Record of the Thirty-Eighth Asilomar Conference on》.2004,527-531. *

Also Published As

Publication number Publication date
US20090168801A1 (en) 2009-07-02
EP1850521A3 (en) 2012-09-05
US20070255849A1 (en) 2007-11-01
CN101064517A (zh) 2007-10-31
US7856579B2 (en) 2010-12-21
TW200807892A (en) 2008-02-01
TWI376885B (en) 2012-11-11
EP1850521A2 (en) 2007-10-31
TW200950351A (en) 2009-12-01

Similar Documents

Publication Publication Date Title
CN101064517B (zh) 利用通道编码算法用于排列和解排列的网络
CN100375394C (zh) 通过组合陪集和强编码陪集标识符实现正交幅度调制的系统和方法
CN101232289B (zh) 涡轮解码器及解码涡轮编码信号的方法
EP0237186B1 (en) Decoding of lattices and codes
EP1024601A1 (en) Pipelined architecture to decode parallel and serial concatenated codes (turbo codes)
Silva et al. Sparse network coding with overlapping classes
JP4094809B2 (ja) 時間可変格子符号
CN100517984C (zh) 用于移动通信系统的维特比/涡轮联合译码器
CN106464427A (zh) 一种数据处理方法和数据发送端以及接收端
NO320121B1 (no) Satellittsambandssystem med parallellkjedekoding
CA2516716C (en) Method and apparatus for performing low-density parity-check (ldpc) code operations using a multi-level permutation
CN102217200B (zh) 译码电路及编码电路
WO2002013449A3 (en) Apparatus and method for providing turbo code interleaving in a communications system
US20070011564A1 (en) Multi-channel LDPC decoder architecture
US11526396B2 (en) Minimum-size belief propagation network for FEC iterative encoders and decoders and related routing method
CN101779379B (zh) 使用通用级联码(gcc)进行编码和解码
US20030053557A1 (en) Reduced complexity coding system using iterative decoding
Cai et al. Coding for segmented edits with local weight constraints
US8009769B2 (en) Method and a device for decoding slice codes
JP2001028549A (ja) 衛星アプリケーション用の積符号によって、セルを符号化する方法
US7908544B2 (en) Extended convolutional codes
GB2088600A (en) Apparatus for sorting data words on the basis of the valuees of associated parameters
CN105959082A (zh) 基于多进制编码与高阶调制的联合编码调制方法、装置
US6671327B1 (en) Turbo trellis-coded modulation
CN1375130B (zh) 用于编码数字源数据的方法及设备,以及对应的解码方法及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20090227

Address after: Hsinchu County, Taiwan, China

Applicant after: Industrial Technology Research Institute

Address before: Hsinchu City, Taiwan, China

Applicant before: Highdimension Ltd.

ASS Succession or assignment of patent right

Owner name: INDUSTRIAL TECHNOLOGY RESEARCH INSTITUTE

Free format text: FORMER OWNER: HIGH-DIMENSION CO., LTD.

Effective date: 20090227

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100908

Termination date: 20210427

CF01 Termination of patent right due to non-payment of annual fee