一种OFDM系统中的低时延高效交织方法与流程

文档序号:23767846发布日期:2021-01-29 20:52阅读:179来源:国知局
一种OFDM系统中的低时延高效交织方法与流程
一种ofdm系统中的低时延高效交织方法
技术领域
[0001]
本发明涉及通信技术领域,特别涉及一种ofdm系统中的低时延高效交织方法。


背景技术:

[0002]
ofdm(orthogonal frequency division multiplexing,正交频分复用)是一种特殊的多载波调制方案,它能很好地对抗频率选择性衰落和窄带干扰,因此,ofdm系统成为通信技术领域运用广泛的一类系统。交织是通信系统中将数据比特顺序打乱的一种技术,从而可以减少相邻比特间的相关性,达到增强抗突发错误能力、提高系统可靠性的目的。
[0003]
在相关技术中,交织方法分为线性交织和非线性交织。一种典型的线性交织器为块交织器,编码器输出的码字比特按照行的方向写入ram(randomaccessmemory,随机存取存储器),再按照列的方向读出,这种交织方法需要等待编码器输出的码字比特全部写入一块ram之后才可以进行读出操作。对于非线性交织,通常是预先根据公式确定一个交织顺序表和一块ram,把待交织比特按照交织顺序表依次写入ram的相应位置,最后,再从该块ram中顺序读出比特。假设待交织比特序列长度为n,无论是线性交织还是非线性交织,它们都需要另外开辟一块n比特大小的ram作为交织存储器,这两种交织过程的时间复杂度和空间复杂度均为。
[0004]
在相关技术中,需要另外开辟新的地址来存储已交织比特序列,硬件资源利用率低。另外,依次读出待交织比特再写入备用存储器的过程需要消耗大量的时钟周期,导致系统的时延高、吞吐量低。


技术实现要素:

[0005]
为了解决相关技术中硬件资源利用率低、系统的时延高、吞吐量低的问题,本发明提供了一种ofdm系统中的低时延高效交织方法。所述方法包括:步骤s102:确定组间交织顺序和组内交织顺序;所述组间交织顺序为所有子载波组的信息放入顺序;所述组内交织顺序为在每个子载波组内的所有子载波的信息放入顺序;步骤s104:按照所述组间交织顺序将下一个子载波组设置为当前子载波组,并计算当前读取长度;步骤s106:顺序读取所述当前读取长度的待交织比特;步骤s108:将所述当前读取长度的待交织比特进行星座映射,得到一个复数符号;步骤s110:按照所述组内交织顺序,将所述复数符号放在所述当前子载波组内的下一个子载波上传输,并将所述下一个子载波设置为当前子载波;步骤s112:若所述当前子载波是所述当前子载波组内的最后一个被放入复数符号的子载波,则转至步骤s104;和/或,若所述当前子载波不是所述当前子载波组内的最后一个被放入复数符号的子载波,则转至步骤s106。
[0006]
本发明的实施例提供的技术方案带来以下有益效果:通过确定组间交织顺序和组内交织顺序,计算当前子载波组对应的当前读取长度,从
待交织比特序列中顺序读取当前读取长度的比特进行星座映射,并将星座映射得到的复数符号放在当前子载波组内的下一个子载波上传输,当当前子载波内的子载波全部被放入复数符号时,对下一个子载波组进行处理,依次循环,不需要额外开辟地址空间来存储已交织比特序列,也不需要对待交织比特依次读取并乱序写入备用存储器,从而达到节省硬件资源、降低系统时延、提高系统吞吐量的效果。
附图说明
[0007]
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
[0008]
图1是根据一示例性实施例示出的一种ofdm系统中的低时延高效交织方法的流程图;图2是根据另一示例性实施例示出的一种ofdm系统中的低时延高效交织方法的流程图。
具体实施方式
[0009]
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的方法的例子。
[0010]
图1是根据一示例性实施例示出的一种ofdm系统中的低时延高效交织方法的流程图。该ofdm系统中的低时延高效交织方法用于在某种通信方式的ofdm系统中将待交织比特序列交织并传输,该通信方式可以是自组网通信、终端与基站通信、车联网通信等。如图1所示,该ofdm系统中的低时延高效交织方法可以包括以下步骤。
[0011]
在步骤102中,确定组间交织顺序和组内交织顺序;该组间交织顺序为所有子载波组的信息放入顺序;该组内交织顺序为在每个子载波组内的所有子载波的信息放入顺序。
[0012]
在步骤104中,按照该组间交织顺序将下一个子载波组设置为当前子载波组,并计算当前读取长度。
[0013]
在步骤106中,顺序读取该当前读取长度的待交织比特。
[0014]
在步骤108中,将该当前读取长度的该待交织比特进行星座映射,得到一个复数符号。
[0015]
在步骤110中,按照该组内交织顺序,将该复数符号放在该当前子载波组内的下一个子载波上传输,并将该下一个子载波设置为当前子载波。
[0016]
在步骤112中,若该当前子载波是该当前子载波组内的最后一个被放入复数符号的子载波,则转至步骤104;和/或,若该当前子载波不是该当前子载波组内的最后一个被放入复数符号的子载波,则转至步骤106。
[0017]
在本发明实施例中,首先确定组间交织顺序和组内交织顺序,其中,组间交织顺序为所有子载波组的信息放入顺序,组内交织顺序为在每个子载波组内的所有子载波的信息放入顺序,然后按照组间交织顺序依次对每个子载波组作以下处理:先计算当前子载波组对应的当前读取长度,再从待交织比特序列中顺序读取当前读取长度的比特来星座映射,
最后将复数符号按照组内交织顺序放在当前子载波组内的子载波上进行传输,不需要额外开辟地址空间来存储已交织比特序列,也不需要对待交织比特依次读取并乱序写入备用存储器,从而达到节省硬件资源、降低系统时延、提高系统吞吐量的效果。
[0018]
综上所述,本发明实施例中提供的ofdm系统中的低时延高效交织方法,通过确定组间交织顺序和组内交织顺序,计算当前子载波组对应的当前读取长度,从待交织比特序列中顺序读取当前读取长度的比特进行星座映射,并将星座映射得到的复数符号放在当前子载波组内的下一个子载波上传输,当当前子载波内的子载波全部被放入复数符号时,对下一个子载波组进行处理,依次循环,不需要额外开辟地址空间来存储已交织比特序列,也不需要对待交织比特依次读取并乱序写入备用存储器,从而达到节省硬件资源、降低系统时延、提高系统吞吐量的效果。
[0019]
图2是根据另一示例性实施例示出的一种ofdm系统中的低时延高效交织方法的流程图。该ofdm系统中的低时延高效交织方法用于在某种通信方式的ofdm系统中将待交织比特序列交织并传输,该通信方式可以是自组网通信、终端与基站通信、车联网通信等。如图2所示,该系统码字比特的存取方法可以包括以下步骤。
[0020]
在步骤202中,确定组间交织顺序和组内交织顺序;该组间交织顺序为所有子载波组的信息放入顺序;该组内交织顺序为在每个子载波组内的所有子载波的信息放入顺序。
[0021]
在ofdm系统中,通常在信道编码后引入交织技术,使得比特流乱序放在子载波上进行传输,从而使相邻比特间的相关性减弱,能够赋予系统更强的抗突发错误的能力。
[0022]
在本技术方案中,所有用于传输信息数据的子载波被划分为若干个子载波组,每个子载波组内使用相同的调制方式。整体技术方案是顺序取出一定长度的待交织比特,再乱序放入子载波,预先为系统的所有子载波组设计一个交织顺序,并为子载波组内的子载波设计一个交织顺序。
[0023]
首先确定两个交织顺序,一个是所有子载波组的信息放入顺序,称之为组间交织顺序,另一个是每个子载波组内的所有子载波的信息放入顺序,称之为组内交织顺序。从待交织的比特序列中顺序读取比特后,可以先按照组间交织顺序确定要被放入信息的子载波所在的子载波组,然后按照组内交织顺序确定要被放入信息的子载波。
[0024]
比如,ofdm系统的用来传输信息数据的子载波数量为1200个,可以提前为这1200个子载波编号,并划分为240个子载波组,即每5个子载波构成一个子载波组,每个子载波组内的5个子载波都选用相同的调制方式,同样,也为这240个子载波组编号。首先要确定该240个子载波组的信息放入顺序,即组间交织顺序,除此之外,对于每个子载波组,还要确定组内的5个子载波的信息放入顺序,即组内交织顺序。
[0025]
在步骤204中,从待交织比特序列中顺序读取固定长度的待交织比特,写入缓存器。
[0026]
可选的,该缓存器的长度为所述固定长度的2倍。
[0027]
为了使系统时延进一步降低,并使每次从待交织比特序列中读取的比特长度固定,可以引入一个缓存器来缓存从待交织比特序列中读取出的比特,这样,可以一次从待交织比特序列中读取固定长度的多个比特,提前缓存在缓存器中,当缓存器中的比特被用尽时,再重新读取新的固定长度的多个比特覆盖掉之前的比特。
[0028]
缓存器的长度可以设置为每次从待交织比特序列中读取的比特长度的2倍,这样,
每次从待交织比特序列中读取固定长度的比特,依次放置在缓存器的前半段和后半段,当缓存器中前半段的比特即将被用尽时,可以提前读取新的比特放置在缓存器的后半段,这样可以使系统的时延进一步降低。
[0029]
重述上例,假如系统的待交织比特序列长度是5000,系统的可选调制阶数是qpsk(quadrature phase shift keying,正交相移键控)、16qam(quadrature amplitude modulation,正交幅度调制)和256qam,它们每次进行星座映射所需的比特长度分别是2、4和8,可以引入一个长度为32的缓存器,每次从待交织比特序列中读取的比特固定长度可以设置为16,系统首先从待交织比特序列中读取16个比特,写入缓存器的前半段。
[0030]
在步骤206中,按照该组间交织顺序将下一个子载波组设置为当前子载波组,并计算该当前子载波组的调制方式。
[0031]
在这一步骤中,系统会按照组间交织顺序查找下一个将要被放入信息的子载波组,并将该子载波组设置为当前子载波组,由于每个子载波组内的子载波使用相同的调制方式,所以,要计算当前子载波组的调制方式,即从系统预设的可选调制方式中选择一种,作为当前子载波组的调制方式。为当前子载波组选取调制方式的方法可以遵循现有技术中的方法,常用的方法是在子载波组的内部选取一个子载波用来传输导频信息,在接收端通过接收到的导频信息判断该子载波组的传输能力,从而根据预设规则为该子载波组选取合适的调制方式。
[0032]
重述上例,假设根据组间交织顺序,下一个将要被放入信息的子载波组的编号为25,那么系统就把编号为25的子载波组设置为当前子载波组,并且依照常用方法,计算出当前子载波组的调制方式,本例设为16qam。
[0033]
在步骤208中,根据该调制方式计算当前读取长度。
[0034]
当系统计算出当前子载波组的调制方式后,就可以根据该调制方式计算当前读取长度,该当前读取长度表示使用当前子载波组的调制方式每次进行星座映射所需的比特长度,即每次把当前读取长度的比特星座映射为一个复数符号,放入子载波进行传输。
[0035]
重述上例,系统已知当前子载波组的调制方式是16qam,则根据该调制方式,计算出当前读取长度为4,即每次读取4个比特来进行星座映射。
[0036]
在步骤210中,若该缓存器中剩余未被读取的比特长度大于或等于该当前读取长度,则从该缓存器中顺序读取该当前读取长度的待交织比特;和/或,若该缓存器中剩余未被读取的比特长度小于该当前读取长度,则从该待交织比特序列中顺序读取该固定长度的比特,写入该缓存器,并从该缓存器中顺序读取该当前读取长度的待交织比特。
[0037]
系统已知当前读取长度后,就要从待交织比特序列中读取当前读取长度的比特来进行星座映射了。缓存器中已经预先写入了固定长度的比特,此时需要判断缓存器中剩余未被读取的比特长度和当前读取长度的大小关系。
[0038]
若缓存器中剩余未被读取的比特长度大于或者等于当前读取长度,说明缓存器中剩余未被读取的比特足够系统此次的读取,则系统从缓存器中顺序读取当前读取长度的比特即可,顺序读取是指,从最后一个已被读取的比特的下一个位置开始,顺序向后读取。
[0039]
若缓存器中剩余未被读取的比特长度小于当前读取长度,说明缓存器中剩余未被读取的比特太少,不能满足系统此次的读取,此时可以再从待交织比特序列中读取固定长度的比特顺序写入缓存器后,再从缓存器中顺序读取当前读取长度的比特。
[0040]
需要注意的是,从待交织比特序列中读取固定长度的比特顺序写入缓存器的操作可以提前进行,以使系统的时延更低。可以预先设置一个判断阈值,一旦缓存器中剩余未被读取的比特长度小于和/或等于该判断阈值,就执行从待交织比特序列中读取固定长度的比特顺序写入缓存器的操作。
[0041]
重述上例,当前读取长度为4,系统此次需要从缓存器中读取4个比特进行星座映射。若缓存器中剩余未被读取的比特长度为6,则直接从缓存器中顺序读取4个比特;若缓存器中剩余未被读取的比特长度为2,则可以先从待交织比特序列中读取16个比特顺序写入缓存器,再从缓存器中顺序读取4个比特。也可以预先设置一个判断阈值8,当缓存器中剩余未被读取的比特长度小于和/或等于8时,就从待交织比特序列中读取16个比特,顺序写入缓存器。
[0042]
在步骤212中,将该当前读取长度的待交织比特进行星座映射,得到一个复数符号。
[0043]
在这一步骤中,系统将刚刚读取的当前读取长度的比特进行星座映射,星座映射的结果为一个复数符号,星座映射的方法可以采用现有技术中的常用方法,此处将不做详细阐述。
[0044]
重述上例,系统可以依照现有技术中的常用方法,根据16qam星座图,将刚刚读取的4个比特星座映射为一个复数符号。
[0045]
在步骤214中,按照该组内交织顺序,将该复数符号放在该当前子载波组内的下一个子载波上传输,并将该下一个子载波设置为当前子载波。
[0046]
得到星座映射的复数符号之后,系统就要在当前子载波组中,根据组内交织顺序查找将要被放入信息的下一个子载波了,查找到该子载波后,将刚刚得到的复数符号放在该子载波上传输,并将该子载波设置为当前子载波。
[0047]
重述上例,假设组内交织顺序为2、4、3、1、5,按照该组内交织顺序,下一个要被放入信息的子载波编号为2,则系统将刚刚得到的复数符号放在当前子载波组中编号为2的子载波上传输,并且将编号为2的子载波设置为当前子载波。
[0048]
在步骤216中,若该当前子载波是该当前子载波组内的最后一个被放入复数符号的子载波,则转至步骤206;和/或,若该当前子载波不是该当前子载波组内的最后一个被放入复数符号的子载波,则转至步骤210。
[0049]
完成上述步骤后,系统的一个子载波上就已经传输了信息,接下来要根据组内交织顺序,判断当前子载波是否为当前子载波组内的最后一个被放入复数符号的子载波,若是,则说明当前子载波组内的子载波已经全部被放入信息,此时需要转至步骤206对下一个子载波组进行操作;若不是,则说明当前子载波组内还有未被放入信息的子载波,此时需要转至步骤210,继续从缓存器中读取当前读取长度的比特,用于星座映射。
[0050]
重述上例,当前子载波为当前子载波组内的编号为2的子载波,根据组内交织顺序2、4、3、1、5,编号为2的子载波不是当前子载波组内的最后一个被放入复数符号的子载波,说明当前子载波组内还有未被放入信息的子载波,此时需要转至步骤210,继续从缓存器中读取4个比特,进行星座映射后,将得到的复数符号放入当前子载波组内的编号为4的子载波上传输,并将编号为4的子载波设置为当前子载波。依次循环,当当前子载波组内编号为5的子载波也被放入复数符号之后,此时当前子载波为编号为5的子载波,它是当前子载波组
内的最后一个被放入复数符号的子载波,则需要转至步骤206,按照组间交织顺序,查找下一个要被放入信息的子载波组,并将查找到的子载波组设置为当前子载波组。
[0051]
本发明实施例中所描述的ofdm系统中的低时延高效交织方法是一种子载波组级别的交织方法,相比于相关技术中的比特级别的交织方法,该方法已经能够满足ofdm系统的要求,尤其是对于自适应调制方式的ofdm系统。首先,每个子载波组内的子载波上使用相同的调制方式,它们的信道质量是相似的,本发明实施例中的交织方法已经在子载波组级别将待交织比特序列进行了打散;其次,在ofdm系统中,如果使用格雷码进行星座映射,每一个子载波上传输的信息一般都是末位比特出错,不会发生长串错误,所以子载波组级别的交织方法已经能够满足抗突发错误的要求。
[0052]
在相关技术中,ofdm系统中的交织方法分为线性交织和非线性交织,线性交织和非线性交织的区别在于交织顺序是否是线性的。假设待交织比特序列的长度为n,对于线性交织而言,通常预先开辟一块n比特大小的ram作为交织存储器,将待交织比特按照行的方向依次写入ram,再按照列的方向从ram中读出比特,对于非线性交织而言,也需要另外开辟一块n比特大小的ram作为交织存储器,并按照预先设计的非线性交织顺序一一将待交织比特存入ram的相应位置,再从该块ram中顺序读出比特。对于单端口的ram而言,存储器的一次读写通常需要消耗一个时钟周期,所以,按照上述两种交织方法对n个待交织比特进行交织的时延均约为n个时钟周期,交织的时间复杂度和空间复杂度均为。而对于本发明实施例中所描述的ofdm系统中的低时延高效交织方法,不需要另外开辟n比特大小的硬件空间用作交织存储器,只需要从待交织比特序列中读取一定长度的待交织比特,将其星座映射为复数符号后,按照预先设计的组间交织顺序和组内交织顺序,将携带信息的复数符号放入ofdm系统相应的子载波上传输即可,减少了交织的中间过程,时间复杂度和空间复杂度均得到有效下降,同时,交织的效果仍能满足抗突发错误的要求,且交织的时延大大降低,效率明显提高。
[0053]
在本发明实施例中,首先确定组间交织顺序和组内交织顺序,其中,组间交织顺序为所有子载波组的信息放入顺序,组内交织顺序为在每个子载波组内的所有子载波的信息放入顺序,再从待交织比特序列中读取固定长度的比特写入缓存器,然后按照组间交织顺序依次对每个子载波组作以下处理:先计算当前子载波组对应的当前读取长度,再从缓存器中顺序读取当前读取长度的比特来星座映射,最后将复数符号按照组内交织顺序放在当前子载波组内的子载波上进行传输,不需要额外开辟地址空间来存储已交织比特序列,也不需要对待交织比特依次读取并乱序写入备用存储器,从而达到节省硬件资源、降低系统时延、提高系统吞吐量的效果。
[0054]
综上所述,本发明实施例中提供的ofdm系统中的低时延高效交织方法,通过确定组间交织顺序和组内交织顺序,预先从待交织比特序列中读取固定长度的比特写入缓存器,计算当前子载波组对应的当前读取长度,从缓存器中顺序读取当前读取长度的比特进行星座映射,并将星座映射得到的复数符号放在当前子载波组内的下一个子载波上传输,当当前子载波内的子载波全部被放入复数符号时,对下一个子载波组进行处理,依次循环,不需要额外开辟地址空间来存储已交织比特序列,也不需要对待交织比特依次读取并乱序写入备用存储器,从而达到节省硬件资源、降低系统时延、提高系统吞吐量的效果。
[0055]
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并
且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1