CN108023662B - 一种可配置的分组交织方法及交织器 - Google Patents
一种可配置的分组交织方法及交织器 Download PDFInfo
- Publication number
- CN108023662B CN108023662B CN201610938915.6A CN201610938915A CN108023662B CN 108023662 B CN108023662 B CN 108023662B CN 201610938915 A CN201610938915 A CN 201610938915A CN 108023662 B CN108023662 B CN 108023662B
- Authority
- CN
- China
- Prior art keywords
- interleaving
- data
- memory
- read
- interleaved
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0071—Use of interleaving
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种可配置的分组交织方法及交织器。该可配置的分组交织方法包括:接收可配置交织矩阵的配置信息;根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器;以及根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据。本发明通过配置可配置交织矩阵的信息,从而控制交织矩阵的交织深度以及交织方式,实现兼容不同通信系统或协议的交织方法。而且每种交织方法的交织方式也可配置,从而使用复杂环境的变化,提高了交织器的可扩展性。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种可配置的分组交织方法及交织器。
背景技术
在通信系统中,交织技术用于将信道中的突发错误转变为随机错误,提高系统的可靠性。在通信过程中,比特差错常常成串发生。然而,信道编码仅能检测和校正单个差错和不太长的差错串。采用交织技术,可以把一条消息中的相继比特分散开,从而使一条信息中的相继比特以非相继方式发送,这样即使在传输过程中发生了成串差错,恢复成一条相继比特串的消息时,差错也就变成单个(或者长度很短)的错误比特,这时再用信道纠正随机差错的编码技术(FEC)消除随机差错。
根据交织方式的不同,交织技术分为分组交织、卷积交织和伪随机交织。分组交织又称矩阵交织或块交织,编码后的码字序列被按行填入一个大小为m×n的矩阵,矩阵填满以后,再按列发出。同样,接收端的解交织器将接收到的信号按列填入m×n的矩阵,填满后再按行读出,然后送往解码器进行正常解码。这样,信道中的连续突发错误被解交织器以m个比特为周期进行分隔再送往解码器,如果这m个错误比特处于信道编码的纠错能力范围内,则达到了消除错误突发的目的。
然而,在现有通信技术中,不同通信系统或协议的分组交织方法之间无法兼容,每种交织方法的模式也往往是固定的,无法根据实际需要进行配置以适应复杂环境的变化。
发明内容
针对现有技术中不同通信系统或协议的分组交织方法之间无法兼容且每种交织方法的模式固定不变的缺陷,本发明提供一种可配置的分组交织方法及交织器,以兼容不同的分组交织方法,并且每种交织方法可配置成不同的交织模式。
本发明就上述技术问题而提出的技术方案如下:
一方面,提供了一种可配置的分组交织方法,包括:接收可配置交织矩阵的配置信息;根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器;以及根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据。
优选地,所述配置信息包括可配置交织矩阵的行数和列数;所述根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器包括:产生写地址,以确保待交织数据按行写入交织存储器中;其中所述写地址总数等于所述可配置交织矩阵的交织深度,所述交织深度等于可配置交织矩阵的行数与列数的乘积;以及控制待交织数据写入所述交织存储器中;
所述根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据包括:产生读地址,以确保从所述交织存储器中按列读出交织数据;其中所述读地址的总数等于所述可配置交织矩阵的交织深度;以及控制从所述交织存储器中读出交织数据。
优选地,所述配置信息包括可配置交织矩阵的行数和列数;所述根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器包括:产生写地址,以确保待交织数据按行写入交织存储器中;其中所述写地址总数等于所述可配置交织矩阵的交织深度,所述交织深度等于可配置交织矩阵的行数与列数的乘积;以及控制待交织数据写入所述交织存储器中;
所述根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据包括:产生读地址,以确保从所述交织存储器中按列读出交织数据;其中所述读地址的总数等于所述可配置交织矩阵的交织深度;以及控制从所述交织存储器中读出交织数据。
优选地,所述交织存储器的存储容量为可配置交织矩阵的最大交织深度的两倍。
优选地,所述配置信息还包括读出控制字;所述产生读地址,以确保从所述交织存储器中按列读出交织数据包括:根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从上到下、从左到右的顺序按列读出交织数据;根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从上到下、从右到左的顺序按列读出交织数据;根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从下到上、从左到右的顺序按列读出交织数据;或根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从下到上、从右到左的顺序按列读出交织数据。
优选地,所述配置信息还包括读出控制字;所述产生读地址,以确保从所述交织存储器中按行读出交织数据包括:根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从上到下、从左到右的顺序按行读出交织数据;根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从上到下、从右到左的顺序按行读出交织数据;根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从下到上、从左到右的顺序按行读出交织数据;或根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从下到上、从右到左的顺序按行读出交织数据。
另一方面,本发明还提供了一种可配置的分组交织器,包括:可配置模块,用于接收可配置交织矩阵的配置信息;写模块,用于根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器;所述交织存储器,用于存储写入的待交织数据;读模块,用于根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据。
优选地,所述配置信息包括可配置交织矩阵的行数和列数;所述写模块包括:写地址产生单元,用于产生写地址,以确保待交织数据按行写入交织存储器中;其中所述写地址总数等于所述可配置交织矩阵的交织深度,所述交织深度等于可配置交织矩阵的行数与列数的乘积;以及写入控制单元,用于控制待交织数据写入所述交织存储器中;
所述读模块包括:读地址产生单元,用于产生读地址,以确保从所述交织存储器中按列读出交织数据;其中所述读地址的总数等于所述可配置交织矩阵的交织深度;以及读出控制单元,用于控制从所述交织存储器中读出交织数据。
优选地,所述配置信息包括可配置交织矩阵的行数和列数;所述写模块包括:写地址产生单元,用于产生写地址,以确保待交织数据按行写入交织存储器中;其中所述写地址总数等于所述可配置交织矩阵的交织深度,所述交织深度等于可配置交织矩阵的行数与列数的乘积;以及写入控制单元,用于控制待交织数据写入所述交织存储器中;
所述读模块包括:读地址产生单元,用于产生读地址,以确保从所述交织存储器中按列读出交织数据;其中所述读地址的总数等于所述可配置交织矩阵的交织深度;以及读出控制单元,用于控制从所述交织存储器中读出交织数据。
优选地,所述交织存储器的存储容量为可配置交织矩阵的最大交织深度的两倍。
优选地,所述配置信息还包括读出控制字;所述读地址产生单元还用于:根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从上到下、从左到右的顺序按列读出交织数据;根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从上到下、从右到左的顺序按列读出交织数据;根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从下到上、从左到右的顺序按列读出交织数据;或根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从下到上、从右到左的顺序按列读出交织数据。
优选地,所述配置信息还包括读出控制字;所述读地址产生单元还用于:根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从上到下、从左到右的顺序按行读出交织数据;根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从上到下、从右到左的顺序按行读出交织数据;根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从下到上、从左到右的顺序按行读出交织数据;或根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从下到上、从右到左的顺序按行读出交织数据。
实施本发明实施例,具有如下有益效果:通过配置可配置交织矩阵的信息,从而控制交织矩阵的交织深度以及交织方式,实现兼容不同通信系统或协议的交织方法。而且每种交织方法的交织方式也可配置,从而使用复杂环境的变化,提高了交织器的可扩展性。另外,交织存储器的存储容量是交织矩阵最大交织深度的两倍,可实现双端口交织存储器,实现同时写入和读出操作,提高了交织效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的第一实施例分组交织方法流程图;
图2是本发明提供的第一实施例行写列读交织方式流程图;
图3是本发明提供的第一实施例列写行读交织方式流程图;
图4是本发明提供的第一实施例列读方法示意图;
图5是本发明提供的第一实施例行读方法示意图;
图6是本发明提供的第二实施例分组交织器结构示意图;
图7是本发明提供的第二实施例分组交织器结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一分组交织方法
本实施例提供了一种可配置的分组交织方法,参见图1~5,该可配置的分组交织方法包括:
步骤S102,接收可配置交织矩阵的配置信息;
具体地,可配置信息包括交织矩阵的行数M和列数N。交织矩阵的交织深度(或大小)等于交织矩阵的行数M与列数N的乘积M×N。因此,在本申请中,交织矩阵的交织深度是可以配置的,而不是固定不变的。在不同的通信系统或协议中,在各自所采用的交织方法中,交织矩阵的深度往往是不同的,因此不能相互兼容。而在本申请中,交织矩阵的大小可配置,从而可以兼容不同的通信协议。
步骤S104,根据配置信息产生写地址信息,并将待交织数据写入交织存储器;以及
步骤S106,根据配置信息产生读地址信息,并从交织存储器中读出交织数据。
具体地,待交织数据写入和读出交织存储器中的方式有两种,一种是按行写入按列读出,另一种是按列写入按行读出,写入方式是由写地址决定的,读出方式是由读地址决定的。下面将分别介绍这两种写入读出方式。
写入读出方式一:按行写入按列读出
如图2所示,首先,在步骤S202中,产生写地址,以确保待交织数据按行写入交织存储器中。其中写地址的总数等于可配置交织矩阵的交织深度,即交织矩阵的行数与列数的乘积。如图4所示,待交织数据102为一个数据串,本实施例中以1~20这20个连续的数据为例。为了将这20个数据按行写入交织矩阵202中,需要产生20个顺序的存储地址与待交织数据1~20一一对应。在本发明的优选实施例中,写地址的产生可以通过计数器来实现,计数器为模数可变的自增1计数器。计数器的模数由交织矩阵202的交织深度决定。然后,在步骤S204中,控制待交织数据102写入交织存储器中。根据交织存储器结构的不同,控制待交织数据写入交织存储器的方法也稍有不同,可以是写入使能信号或片选信号等。
在本实施例中,按行写入采用从上到下、从左到右的顺序。当然,在其他实施例中,按行写入也可以采用其他顺序,比如从上到下、从右到左,从下到上、从右到左,或者是从下到上、从左到右。
当按行写入时,采用按列读出的方式读出交织数据。如图2所示,首先,在步骤S302中,产生读地址,以确保交织存储器中按列读出交织数据。其中,读地址的总数等于可配置交织矩阵的行数与列数的乘积。然后,在步骤S304中,控制从交织存储器中读出交织数据。列读的方式有四种,对应这四种列读方式,需要产生四种对应的读地址。具体地,配置信息还包括读出控制字,用于控制列读的具体方式。列读的方式包括:
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从上到下、从左到右的顺序按列读出交织数据;
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从上到下、从右到左的顺序按列读出交织数据;
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从下到上、从左到右的顺序按列读出交织数据;或
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从下到上、从右到左的顺序按列读出交织数据。
具体地,结合图4所示,以数据串102,即[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]为例。在一个实施例中,按行写入交织存储器后得到交织矩阵202,然后按从上到下、从左到右的顺序按列读出时得到交织矩阵204,交织矩阵204以数据串104,即[1,6,11,16,2,7,12,17,3,8,13,18,4,9,14,19,5,10,15,20]读出。
当然,在另一个实施例中,交织矩阵202还可以按从上到下、从右到左的顺序按列读出,得到交织矩阵206,最后以数据串106,即[5,10,15,20,4,9,14,19,3,8,13,18,2,7,12,17,1,6,11,16]读出。
在另一个实施例中,交织矩阵202还可以按从下到上、从左到右的顺序按列读出,得到交织矩阵208,最后以数据串108,即[16,11,6,1,17,12,7,2,18,13,8,3,19,14,9,4,20,15,10,5]读出。
在另一个实施例中,交织矩阵202还可以按从下到上、从右到左的顺序按列读出,得到交织矩阵210,最后以数据串110,即[20,15,10,5,19,14,9,4,18,13,8,3,17,12,7,2,16,11,6,1]读出。
在本实施例中,交织矩阵202、204、206、208和210只是用来描述矩阵的不同状态,并不是表示交织矩阵的数量。
应理解,行写和列读一样,都有上述四种或更多种方式,这些方式可以随意进行排列组合,但是最终读出的数据串都只有图4描述的四种,即数据串104、106、108和110。也就是说,不管如何对读出方式进行变换,其效果都跟本实施例采用的方法一致,最终读出的数据串都只有四种。因此,根据本实施例的教导,进行其他方式的等价变换,都属于本发明的保护范围。
写入读出方式二:按列写入按行读出
如图3所示,首先,在步骤S302中,产生写地址,以确保待交织数据按列写入交织存储器中。其中写地址的总数等于交织矩阵的行数与列数的乘积。如图5所示,待交织数据112为一个数据串,本实施例中以1~20这20个连续的数据为例。为了将数据串[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]按列写入交织矩阵212中,需要产生20个顺序的存储地址与待交织数据1~20一一对应。在本发明的优选实施例中,写地址的产生可以通过计数器来实现,计数器为模数可变的自增1计数器。计数器的模数由交织矩阵212的交织深度决定。然后,在步骤S304中,控制待交织数据112写入交织存储器中。根据交织存储器结构的不同,控制待交织数据写入交织存储器的方法也稍有不同,可以是写入使能信号或片选信号等。
在本实施例中,按列写入采用从上到下、从左到右的顺序。当然,在其他实施例中,按行写入也可以采用其他顺序,比如从上到下、从右到左,从下到上、从右到左,或者是从下到上、从左到右。
当按列写入时,采用按行读出的方式读出交织数据。如图3所示,首先,在步骤S306中,产生读地址,以确保交织存储器中按列读出交织数据。其中,读地址的总数等于可配置交织矩阵的行数与列数的乘积。然后,在步骤S308中,控制从交织存储器中读出交织数据。行读的方式有四种,对应这四种行读方式,需要产生四种对应的读地址。具体地,配置信息还包括读出控制字,用于控制行读的具体方式。行读的方式包括:
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从上到下、从左到右的顺序按行读出交织数据;
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从上到下、从右到左的顺序按行读出交织数据;
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从下到上、从左到右的顺序按行读出交织数据;或
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从下到上、从右到左的顺序按行读出交织数据。
具体地,结合图5所示,以数据串112,即[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]为例。在一个实施例中,按列写入交织存储器后得到交织矩阵212,然后按从上到下、从左到右的顺序按行读出时得到交织矩阵214,交织矩阵214以数据串114,即[1,6,11,16,2,7,12,17,3,8,13,18,4,9,14,19,5,10,15,20]读出。
当然,在另一个实施例中,交织矩阵212还可以按从上到下、从右到左的顺序按列读出,得到交织矩阵216,最后以数据串116,即[16,11,6,1,17,12,7,2,18,13,8,3,19,14,9,4,20,15,10,5]读出。
在另一个实施例中,交织矩阵212还可以按从下到上、从左到右的顺序按列读出,得到交织矩阵218,最后以数据串118,即[5,10,15,20,4,9,14,19,3,8,13,18,2,7,12,17,1,6,11,16]读出。
在另一个实施例中,交织矩阵212还可以按从下到上、从右到左的顺序按列读出,得到交织矩阵220,最后以数据串120,即[20,15,10,5,19,14,9,4,18,13,8,3,17,12,7,2,16,11,6,1]读出。
在本实施例中,交织矩阵212、214、216、218和220只是用来描述矩阵的不同状态,并不是表示交织矩阵的数量。
应理解,列写和行读一样,都有上述四种或更多种方式,这些方式可以随意进行排列组合,但是最终读出的数据串都只有图5描述的四种,即数据串114、116、118和120。也就是说,不管如何对读出方式进行变换,其效果都跟本实施例采用的方法一致,最终读出的数据串都只有四种。因此,根据本实施例的教导,进行其他方式的等价变换,都属于本发明的保护范围。
结合以上两个写入读出方式可以看出,第一种方式最后读出的交织数据104、106、108、110与第二种方式最后读出的交织数据114、116、118和120实质上是相同的,只是顺序不同而已。也就是说,不论是行写列读还是列写行读,以及不论各自具体的读写顺序进行何种变换,同一个数据串102或112交织后的输出结果都只有四种。因此,在实施中,优选采用行写列读的方式进行交织,行写固定采用从左到右、从上到下的方式,而列读的方式可以通过控制字进行控制。
在本发明提供的优选实施例中,交织存储器的存储容量为可配置交织矩阵的最大交织深度的两倍。在现有不同的通信系统或协议中,所采用的交织矩阵的深度往往是不同的,但是其最大交织深度是可以预期的。因此,交织存储器的存储容量在工业实施上也是本领域技术人员可以根据实际情况进行选择的。将交织存储器的存储容量选为交织深度的两倍,可使交织存储器的读写操作连续进行。可将交织存储器分为两部分。当向交织存储器的一部分写入当前数据串时,从交织存储器的另一部分读出前一个交织数据串。从而不会使交织存储器的写入或读出操作独占交织存储器。当交织数据量很大时,比如1024个数据或更多,数据的读出和写入都需要一定的时间,通过将交织存储器的存储容量设置为交织深度的两倍,可以显著提升交织效率。
实施例二分组交织器
本实施例提供了一种可配置的分组交织器,如图4-6所示,该可配置的分组交织器可包括:可配置模块10、写模块12、交织存储器16以及读模块14。
如图6所示,可配置模块10用于接收可配置交织矩阵的配置信息。具体地,如图7所示,可配置信息包括交织矩阵的行数CIR和列数CIC。交织矩阵的交织深度(或大小)等于交织矩阵的行数CIR与列数CIC的乘积CIR×CIC。因此,在本申请中,交织矩阵的交织深度是可以配置的,而不是固定不变的。在不同的通信系统或协议中,在各自所采用的交织方法中,交织矩阵的深度往往是不同的,因此不能相互兼容。而在本申请中,交织矩阵的大小可配置,从而可以兼容不同的通信协议。
写模块12用于根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器。
交织存储器16,用于存储写入的待交织数据。
读模块14用于根据配置信息产生读地址信息,进而从交织存储器16中读出交织数据。
具体地,待交织数据写入和读出交织存储器16中的方式有两种,一种是按行写入按列读出,另一种是按列写入按行读出,写入方式是由写模块12所产生的写地址决定的,读出方式是由读模块14所产生的读地址决定的。下面将分别介绍这两种写入读出方式。
写入读出方式一:按行写入按列读出
如图7所示,写模块22包括写地址产生单元221和写入控制单元222。写地址产生单元221用于产生写地址,以确保待交织数据按行写入交织存储器26中。其中写地址的总数等于可配置交织矩阵的交织深度,即交织矩阵的行数与列数的乘积。如图4所示,待交织数据102为一个数据串,本实施例中以1~20这20个连续的数据为例。为了将这20个数据按行写入交织矩阵202中,需要产生20个顺序的存储地址与待交织数据1~20一一对应。在本发明的优选实施例中,写地址产生单元221可以通过计数器来实现,计数器为模数可变的自增1计数器。计数器的模数由交织矩阵202的交织深度决定。写入控制单元222用于控制待交织数据102写入交织存储器26中。根据交织存储器26结构的不同,写入控制单元222可以向交织存储器26提供写入使能信号或片选信号等来控制写入操作。
在本实施例中,按行写入采用从上到下、从左到右的顺序。当然,在其他实施例中,按行写入也可以采用其他顺序,比如从上到下、从右到左,从下到上、从右到左,或者是从下到上、从左到右。
当按行写入时,采用按列读出的方式读出交织数据。如图7所示,读模块24包括读地址产生单元241和读出控制单元242。读地址产生单元241用于产生读地址,以确保交织存储器中按列读出交织数据。其中,读地址的总数等于可配置交织矩阵的行数与列数的乘积。读出控制单元242用于控制从交织存储器中读出交织数据。列读的方式有四种,对应这四种列读方式,需要产生四种对应的读地址。具体地,配置信息还包括读出控制字CIO,用于控制列读的具体方式。列读的方式包括:
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从上到下、从左到右的顺序按列读出交织数据;
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从上到下、从右到左的顺序按列读出交织数据;
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从下到上、从左到右的顺序按列读出交织数据;或
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从下到上、从右到左的顺序按列读出交织数据。
具体地,结合图4所示,以数据串102,即[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]为例。在一个实施例中,按行写入交织存储器26后得到交织矩阵202,然后按从上到下、从左到右的顺序按列读出时得到交织矩阵204,交织矩阵204以数据串104,即[1,6,11,16,2,7,12,17,3,8,13,18,4,9,14,19,5,10,15,20]读出。
当然,在另一个实施例中,交织矩阵202还可以按从上到下、从右到左的顺序按列读出,得到交织矩阵206,最后以数据串106,即[5,10,15,20,4,9,14,19,3,8,13,18,2,7,12,17,1,6,11,16]读出。
在另一个实施例中,交织矩阵202还可以按从下到上、从左到右的顺序按列读出,得到交织矩阵208,最后以数据串108,即[16,11,6,1,17,12,7,2,18,13,8,3,19,14,9,4,20,15,10,5]读出。
在另一个实施例中,交织矩阵202还可以按从下到上、从右到左的顺序按列读出,得到交织矩阵210,最后以数据串110,即[20,15,10,5,19,14,9,4,18,13,8,3,17,12,7,2,16,11,6,1]读出。
在本实施例中,交织矩阵202、204、206、208和210只是用来描述矩阵的不同状态,并不是表示交织矩阵的数量。
应理解,行写和列读一样,都有上述四种或更多种方式,这些方式可以随意进行排列组合,但是最终读出的数据串都只有图4描述的四种,即数据串104、106、108和110。也就是说,不管如何对读出方式进行变换,其效果都跟本实施例采用的方法一致,最终读出的数据串都只有四种。因此,根据本实施例的教导,进行其他方式的等价变换,都属于本发明的保护范围。
写入读出方式二:按列写入按行读出
本写入读出方式与上一个写入读出方式所采用交织器结构基本相同,只是写地址产生单元和读地址产生单元所产生的地址不同。在本实施例中,如图5所示,按列写入采用从上到下、从左到右的顺序。当然,在其他实施例中,按行写入也可以采用其他顺序,比如从上到下、从右到左,从下到上、从右到左,或者是从下到上、从左到右。
当按列写入时,采用按行读出的方式读出交织数据。如图5所示,行读的方式有四种,对应这四种行读方式,需要产生四种对应的读地址。具体地,配置信息还包括读出控制字,用于控制行读的具体方式。行读的方式包括:
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从上到下、从左到右的顺序按行读出交织数据;
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从上到下、从右到左的顺序按行读出交织数据;
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从下到上、从左到右的顺序按行读出交织数据;或
根据读出控制字,将读地址与交织存储器中的数据一一对应以确保从交织存储器中按从下到上、从右到左的顺序按行读出交织数据。
具体地,结合图5所示,以数据串112,即[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]为例。在一个实施例中,按列写入交织存储器26后得到交织矩阵212,然后按从上到下、从左到右的顺序按行读出时得到交织矩阵214,交织矩阵214以数据串114,即[1,6,11,16,2,7,12,17,3,8,13,18,4,9,14,19,5,10,15,20]读出。
当然,在另一个实施例中,交织矩阵212还可以按从上到下、从右到左的顺序按列读出,得到交织矩阵216,最后以数据串116,即[16,11,6,1,17,12,7,2,18,13,8,3,19,14,9,4,20,15,10,5]读出。
在另一个实施例中,交织矩阵212还可以按从下到上、从左到右的顺序按列读出,得到交织矩阵218,最后以数据串118,即[5,10,15,20,4,9,14,19,3,8,13,18,2,7,12,17,1,6,11,16]读出。
在另一个实施例中,交织矩阵212还可以按从下到上、从右到左的顺序按列读出,得到交织矩阵220,最后以数据串120,即[20,15,10,5,19,14,9,4,18,13,8,3,17,12,7,2,16,11,6,1]读出。
在本实施例中,交织矩阵212、214、216、218和220只是用来描述矩阵的不同状态,并不是表示交织矩阵的数量。
应理解,列写和行读一样,都有上述四种或更多种方式,这些方式可以随意进行排列组合,但是最终读出的数据串都只有图5描述的四种,即数据串114、116、118和120。也就是说,不管如何对读出方式进行变换,其效果都跟本实施例采用的方法一致,最终读出的数据串都只有四种。因此,根据本实施例的教导,进行其他方式的等价变换,都属于本发明的保护范围。
结合以上两个写入读出方式可以看出,第一种方式最后读出的交织数据104、106、108、110与第二种方式最后读出的交织数据114、116、118和120实质上是相同的,只是顺序不同而已。也就是说,不论是行写列读还是列写行读,以及不论各自具体的读写顺序进行何种变换,同一个数据串102或112交织后的输出结果都只有四种。因此,在实施中,优选采用行写列读的方式进行交织,行写固定采用从左到右、从上到下的方式,而列读的方式可以通过控制字进行控制。
在本发明提供的优选实施例中,交织存储器的存储容量为可配置交织矩阵的最大交织深度的两倍。在现有不同的通信系统或协议中,所采用的交织矩阵的深度往往是不同的,但是其最大交织深度是可以预期的。因此,交织存储器的存储容量在工业实施上也是本领域技术人员可以根据实际情况进行选择的。将交织存储器的存储容量选为交织深度的两倍,可使交织存储器的读写操作连续进行。如图7所示,可将交织存储器26分为两部分261和262。当向交织存储器的261部分写入当前数据串时,从交织存储器的262部分读出前一个交织数据串。从而不会使交织存储器26的写入或读出操作独占交织存储器。当交织数据量很大时,比如1024个数据或更多,数据的读出和写入都需要一定的时间,通过将交织存储器的存储容量设置为交织深度的两倍,可以显著提升交织效率。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (10)
1.一种可配置的分组交织方法,其特征在于,包括:
接收可配置交织矩阵的配置信息;其中,所述配置信息包括可配置交织矩阵的行数和列数;交织矩阵的大小可配置,从而可兼容不同的通信协议;
根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器;以及
根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据;
其中,写地址的总数等于所述可配置交织矩阵的交织深度,读地址的总数等于所述可配置交织矩阵的交织深度;所述交织深度等于可配置交织矩阵的行数与列数的乘积;所述交织存储器的存储容量为可配置交织矩阵的最大交织深度的两倍。
2.根据权利要求1所述的可配置的分组交织方法,其特征在于,所述根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器包括:
产生写地址,以确保待交织数据按行写入交织存储器中;以及
控制待交织数据写入所述交织存储器中;
所述根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据包括:
产生读地址,以确保从所述交织存储器中按列读出交织数据;以及
控制从所述交织存储器中读出交织数据。
3.根据权利要求1所述的可配置的分组交织方法,其特征在于,所述根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器包括:
产生写地址,以确保待交织数据按列写入交织存储器中;以及
控制待交织数据写入所述交织存储器中;
所述根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据包括:
产生读地址,以确保从所述交织存储器中按行读出交织数据;以及
控制从所述交织存储器中读出交织数据。
4.根据权利要求2所述的可配置的分组交织方法,其特征在于,所述配置信息还包括读出控制字;
所述产生读地址,以确保从所述交织存储器中按列读出交织数据包括:
根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从上到下、从左到右的顺序按列读出交织数据;
根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从上到下、从右到左的顺序按列读出交织数据;
根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从下到上、从左到右的顺序按列读出交织数据;或
根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从下到上、从右到左的顺序按列读出交织数据。
5.根据权利要求3所述的可配置的分组交织方法,其特征在于,所述配置信息还包括读出控制字;
所述产生读地址,以确保从所述交织存储器中按行读出交织数据包括:
根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从上到下、从左到右的顺序按行读出交织数据;
根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从上到下、从右到左的顺序按行读出交织数据;
根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从下到上、从左到右的顺序按行读出交织数据;或
根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从下到上、从右到左的顺序按行读出交织数据。
6.一种可配置的分组交织器,其特征在于,包括:
可配置模块,用于接收可配置交织矩阵的配置信息;其中,所述配置信息包括可配置交织矩阵的行数和列数;交织矩阵的大小可配置,从而可兼容不同的通信协议;
写模块,用于根据所述配置信息产生写地址信息,进而将待交织数据写入交织存储器;
所述交织存储器,用于存储写入的待交织数据;
读模块,用于根据所述配置信息产生读地址信息,进而从所述交织存储器中读出交织数据;
其中,写地址的总数等于所述可配置交织矩阵的交织深度,读地址的总数等于所述可配置交织矩阵的交织深度;所述交织深度等于可配置交织矩阵的行数与列数的乘积;所述交织存储器的存储容量为可配置交织矩阵的最大交织深度的两倍。
7.根据权利要求6所述的可配置的分组交织器,其特征在于,所述写模块包括:
写地址产生单元,用于产生写地址,以确保待交织数据按行写入交织存储器中;以及
写入控制单元,用于控制待交织数据写入所述交织存储器中;
所述读模块包括:
读地址产生单元,用于产生读地址,以确保从所述交织存储器中按列读出交织数据;以及
读出控制单元,用于控制从所述交织存储器中读出交织数据。
8.根据权利要求6所述的可配置的分组交织器,其特征在于,所述写模块包括:
写地址产生单元,用于产生写地址,以确保待交织数据按列写入交织存储器中;以及
写入控制单元,用于控制待交织数据写入所述交织存储器中;
所述读模块包括:
读地址产生单元,用于产生读地址,以确保从所述交织存储器中按行读出交织数据;以及
读出控制单元,用于控制从所述交织存储器中读出交织数据。
9.根据权利要求7所述的可配置的分组交织器,其特征在于,所述配置信息还包括读出控制字;
所述读地址产生单元还用于:
根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从上到下、从左到右的顺序按列读出交织数据;
根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从上到下、从右到左的顺序按列读出交织数据;
根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从下到上、从左到右的顺序按列读出交织数据;或
根据所述读出控制字,将读地址与交织存储器中的数据一一对应以确保从所述交织存储器中按从下到上、从右到左的顺序按列读出交织数据。
10.根据权利要求8所述的可配置的分组交织器,其特征在于,所述配置信息还包括读出控制字;
所述读地址产生单元还用于:
根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从上到下、从左到右的顺序按行读出交织数据;
根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从上到下、从右到左的顺序按行读出交织数据;
根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从下到上、从左到右的顺序按行读出交织数据;或
根据所述读出控制字,将读地址与交织存储器中的数据一一对应,并从所述交织存储器中按从下到上、从右到左的顺序按行读出交织数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610938915.6A CN108023662B (zh) | 2016-11-01 | 2016-11-01 | 一种可配置的分组交织方法及交织器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610938915.6A CN108023662B (zh) | 2016-11-01 | 2016-11-01 | 一种可配置的分组交织方法及交织器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108023662A CN108023662A (zh) | 2018-05-11 |
CN108023662B true CN108023662B (zh) | 2021-08-20 |
Family
ID=62070603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610938915.6A Active CN108023662B (zh) | 2016-11-01 | 2016-11-01 | 一种可配置的分组交织方法及交织器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108023662B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111478750B (zh) * | 2020-03-12 | 2022-10-14 | 普联技术有限公司 | 一种数据并行交织方法、终端设备及计算机存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101217349A (zh) * | 2007-01-05 | 2008-07-09 | 中兴通讯股份有限公司 | 一种混合自动重传请求中比特收集的装置与方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100414067B1 (ko) * | 2001-06-05 | 2004-01-07 | 엘지전자 주식회사 | 인터리브 메모리 제어 장치 및 방법 |
CN101584121B (zh) * | 2007-01-16 | 2014-10-29 | 皇家飞利浦电子股份有限公司 | 用于对数据比特或码元进行交织的系统、装置和方法 |
CN101257313B (zh) * | 2007-04-10 | 2010-05-26 | 深圳市同洲电子股份有限公司 | 一种基于fpga实现的解卷积交织器及解卷积交织方法 |
CN101610089B (zh) * | 2008-06-17 | 2013-06-05 | 中兴通讯股份有限公司 | 一种第二次交织及解交织的方法和装置 |
CN101800619B (zh) * | 2009-12-28 | 2013-03-06 | 福州瑞芯微电子有限公司 | 一种基于块交织的交织或解交织方法及其装置 |
CN103166736A (zh) * | 2011-12-15 | 2013-06-19 | 无锡中星微电子有限公司 | 一种交织器读写方法 |
EP3017595B1 (en) * | 2013-06-30 | 2019-03-13 | LG Electronics Inc. | Apparatus for transmitting and receiving broadcast signals and methods therefor |
CN105490776B (zh) * | 2015-11-26 | 2019-07-09 | 华为技术有限公司 | 交织方法及交织器 |
-
2016
- 2016-11-01 CN CN201610938915.6A patent/CN108023662B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101217349A (zh) * | 2007-01-05 | 2008-07-09 | 中兴通讯股份有限公司 | 一种混合自动重传请求中比特收集的装置与方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108023662A (zh) | 2018-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0681373B1 (en) | Convolutional interleaver with reduced memory requirements and address generator therefor | |
JP4108359B2 (ja) | 等化方法及びその装置 | |
KR100754077B1 (ko) | 코딩된 저장 심벌 및 부가적인 정보를 사용하여 입력데이터 비트 시퀀스를 인터리빙하는 인터리버 및 방법 | |
US8194782B2 (en) | Grouping bits interleaving apparatus and method thereof | |
CN111294059A (zh) | 编码方法、译码方法、纠错方法及相关装置 | |
CN108023662B (zh) | 一种可配置的分组交织方法及交织器 | |
CN100589359C (zh) | 一种里德索罗蒙码的译码方法及装置 | |
KR20030070135A (ko) | 에러 정정 코드를 디코딩하는 방법 및 장치 | |
KR100499467B1 (ko) | 블록 인터리빙 방법 및 그를 위한 장치 | |
US20050050284A1 (en) | System and method for interleaving data in a communications device | |
US8161344B2 (en) | Circuits and methods for error coding data blocks | |
CN105376008A (zh) | Ldpc码字的交织映射方法及解交织解映射方法 | |
CN102437896B (zh) | 一种比特交织及星座映射的方法及装置 | |
WO2020133010A1 (zh) | 数据处理方法及矩阵存储器 | |
JP2001230680A (ja) | インタリーブ装置およびデインタリーブ装置 | |
CN102098126A (zh) | 用于块状编码的交织装置、速率匹配方法及装置 | |
US6718505B1 (en) | Method and apparatus for error correction in a process of decoding cross-interleaved Reed-Solomon code (CIRC) | |
US10484136B2 (en) | High speed interleaver/deinterleaver device supporting line rate, and method thereof | |
EP1111799B1 (en) | Error correction with a cross-interleaved Reed-Solomon code, particularly for CD-ROM | |
US20140359397A1 (en) | Memory access apparatus and method for interleaving and deinterleaving | |
KR100362562B1 (ko) | 무선통신시스템에서의부호화장치 | |
CN102136879A (zh) | 一种数据解交织方法及装置 | |
KR100447177B1 (ko) | 인터리빙 방법 및 이를 위한 장치 | |
US20050099881A1 (en) | Apparatus for interleave and method thereof | |
KR100218153B1 (ko) | 데이터 통신의 블록 인터리브/디인터리브 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |