OFDM之卷积交织

交织是为了在时域或频域或者同时在时域、频域上分布传输的信息比特,使信道的突发错误在时间上得以扩散,从而使得译码器可以将他们当作随机错误处理。交织器在几个分组长度或几个约束长度范围内对码元进行混选,这个范围由突发持续时间决定的。通信系统的交织模式取决于信道特性。如果系统在一个纯粹的AWGN环境下运行,即准平稳信道,那么在一个数据包的持续时间上基本没有什么变化,就不需要交织。因为这时,通过重新分配的方法是无法改变误码分布的。

(1)交织深度:交织深度与所采用的调制方式有关:BPSK、QPSK、16QAM和64QAM的交织深度分别为48、96、192和288个比特,每种调制方式的交织深度是通过数据子载波的数量与每个符号中比特的个数相乘而得到的

(2)Signal符号交织的实现

Signal符号是BPSK调制,因此只涉及第一级变换,其作用是保证相邻的编码比特被映射到不相邻的自载波上,具体的变换公式为:

           (4-6)

其中,k是交织前的编码比特标号;i是交织后的标号;Signal Interleaver中的Ncbps为48。

硬件实现中,可以使用一块片上的双口块RAM(Dual Port Block Memory)作为整个模块的核心器件。模块采用RAM写地址乱序、读地址顺序的方式实现交织处理,即比特流按照交织后的顺序写入到RAM中,而后再一次读出。

基于上述分析,Signal符号交织器的硬件实现框图如图4-29所示。


输入比特的标号INDEX-IN经过写地址产生器WA Generator变换成写入双口RAM的地址,从而使得相邻的编码比特能够被映射到不相邻的地址上。计数器CTR DIV48按顺序将存入的数据读出。

RAM写地址的产生是整个设计的关键。由式(4-6)可知,可以对输入比特流同步的输入数据标号INDEX_IN进行运算得到每个输入比特的写地址。为了简化硬件实现,对式(4-6)进行如下变换:


其中,WA相当于式(4-6)中的i,INDEX_IN相应于k。模16的运算可通过取INDEX_IN的低4位实现,乘法运算由于一个乘数固定为3,故也可用“移位+加法”来代替。

(3)Data符号交织器的实现

Data符号交织器的实现以16QAM调制为例,Data符号的整个交织处理过程分为两级。第一级为标准的分组交织器,原理和实现方法均与Signal Interleaver相同。考虑到本设计所要实现的数据传输速率为36Mb/s和16QAM的调制方式,因此交织深度应为192bits。我们采用的算法要求将所有192比特的数据按照一定规则的乱序地址写入RAM中后再顺序读出,显然读出过程中是不允许新的数据写入的,这样就出现了一个问题,即无法实现对数据的连续处理。解决办法是采用流水线结构,将RAM的存储空间扩展1倍,相邻OFDM符元轮流使用前一半和后一半存储空间。在具体硬件实现时,控制电路对运算得到的写地址信号进行处理,存入前一半存储空间的地址信号保持不变,存入后一半存储空间的地址信号则会被加上192。处理延迟依然存在,但整个处理过程保持了连续性。

设置存储交织数据的双口块ROM的深度为192的2倍,即384,相应的用一个0至383的计数器作为读地址顺序读出ROM中的内容。

对36MHz的传输速率而言,第二季交织处理遵循如下等式


第二级交织基本过程是每24个比特为一单元,前12个顺序保持不变,后12个每相邻两位交换位置,这样就保证了相邻的编码比特被分别映射到星座图中的重要和次要位置,因此LSB长时间的低可靠性将被避免。

使用一块24bit的双口分布式存储器(Dual Port Distributed Memory)作为第二级交织的存储单元(也可使用双口ROM来实现此功能)。依然通过写地址变换实现交织操作,前12个地址空间被顺序写入,后12个则在写入时将地址末位取反。当前12个或后12个地址空间在进行写入操作时,另一半已完成写入的存储空间开始顺序读出其中的数据,这样可以避免读、写操作的冲突。

对于第二级交织的实现,由于第二级交织的实现方法为每24个数据DI_DIN2为一组,前12个保持不变,后12个数据两两交换位置,因此我们用深度为24的双口ROM存储每组数据,同时采用两个0至23的计数器CTR DIV24,一个用来生成写入地址WA,另一个用来顺序读出,读出地址为RA。


2.3 问题

(1)什么时候用一级交织,而什么时候用两级交织?(不明白)

(2)XILINX FPGA的OFDM通信系统基带设计一书中,

第一级交织:每个Symbol符号为192个比特,1个Symbol数据输入完时,WAC_1取反,准备下一个Symbol数据的输入,同时读使能信号拉高,将完成交织处理的数据一次读出存储器。

对数据进行交织处理分为两级,第一级是标准的块交织,交织深度为Ncbps;第二步交织的处理过程为:每24(36)个比特为一组,前12(18)个顺序不变,后12(18)个比特每相邻两位交换位置。第一步交织保证相邻的比特在经过OFDM调制后会落在不相邻的子载波上;第二步交织使得相邻的比特依次映射到星座图中相对重要和次中药的星座点上,从而减轻衰落信道对系统性能的影响。随工作模式的不同,第一步处理的交织深度和交织方式都会不同,而第二步的交织方式甚至是否进行也都不同。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值