OFDM系统中Turbo编码混合ARQ技术的研究和实现PPT课件

上传人:re****.1 文档编号:579118692 上传时间:2024-08-25 格式:PPT 页数:72 大小:580.50KB
返回 下载 相关 举报
OFDM系统中Turbo编码混合ARQ技术的研究和实现PPT课件_第1页
第1页 / 共72页
OFDM系统中Turbo编码混合ARQ技术的研究和实现PPT课件_第2页
第2页 / 共72页
OFDM系统中Turbo编码混合ARQ技术的研究和实现PPT课件_第3页
第3页 / 共72页
OFDM系统中Turbo编码混合ARQ技术的研究和实现PPT课件_第4页
第4页 / 共72页
OFDM系统中Turbo编码混合ARQ技术的研究和实现PPT课件_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《OFDM系统中Turbo编码混合ARQ技术的研究和实现PPT课件》由会员分享,可在线阅读,更多相关《OFDM系统中Turbo编码混合ARQ技术的研究和实现PPT课件(72页珍藏版)》请在金锄头文库上搜索。

1、OFDM系统中系统中Turbo编码混合编码混合ARQ技技术的研究和实现术的研究和实现 答辩人:刘伟峰 指导老师:朱杰 背景概述背景概述2Bell Joint Lab课题背景课题背景l高频短波通信 抗毁能力极强覆盖范围广运行成本低机动灵活l战争、自然灾害、边远地区的主要通信方式3Bell Joint Lab研究重点研究重点lTurbo码的原理、仿真和设计Matlab建模仿真矩阵推导MAP算法短帧Turbo码的设计方法lTurbo编码混合自动重复请求方案现有方案的分析比较提出新颖的“分而治之Turbo编码HARQ”方案l系统模块的DSP实现与优化循环冗余校验码的快速实现Max-Log-MAP算法的

2、实现与优化4Bell Joint LabOFDM抗多径衰落的尖兵抗多径衰落的尖兵l频谱划分成窄的平坦衰落子信道l串并变换后,每个子信道上的符号速率下降,可以很好的对抗时延扩展l把频率和时间选择性衰落的影响随机化,有利于纠错码工作一个频率选择性信道多个非频率选择性信道5Bell Joint LabOFDM的的Matlab实现实现 6Bell Joint Lab Turbo码的原理、仿真和设计码的原理、仿真和设计7Bell Joint LabTurbo码码接近接近Shannon限的好码限的好码l编码器由两个递归系统卷积码通过交织器级联的方式结合而成,以较小的编译码复杂度,生成码重分布优良的长码 l

3、译码器采用迭代的方式,两个分量译码器互相帮助,充分利用码子的约束信息 l在短约束长度、长分组以及10到20次迭代的情况下,Turbo码在误码率(BER)10e-5处距离Shannon限0.5dB左右 8Bell Joint LabTurbo编码器编码器并行级联卷积编码器串行级联卷积编码器9Bell Joint LabTurbo解码器解码器并行级联卷积译码器10Bell Joint Lab软输入软输出分量译码器软输入软输出分量译码器l对数似然比(LLR)lY是观测,uk 是估计值l符号表示0,1比特,幅度表示可靠程度11Bell Joint LabMAP算法算法l想法把比特的概率估计转化为状态转

4、移的概率估计把状态转移的概率估计以递推形式计算l计算三种度量,两次递推,一步到位 l特点(相比维特比算法)复杂度大(乘法,除法,指数,对数计算)卷积译码无优势可以输出译码软信息12Bell Joint LabMAP算法算法l前向度量l后向度量l分支度量l前向递推 l后向递推 l后验概率LLR13Bell Joint LabMAP算法的计算流程算法的计算流程l计算分支度量l前向递推计算前向度量l后向递推计算前向度量l综合计算后验概率LLR14Bell Joint LabMAP算法的矩阵表示算法的矩阵表示前向度量后向度量分支度量矩阵前向递推后向递推15Bell Joint LabMAP算法的矩阵表

5、示算法的矩阵表示16Bell Joint LabMAP的简化算法的简化算法Max-Log-MAP指数运算和乘法运算的噩梦l变换到对数域中 l利用近似公式17Bell Joint LabMax-Log-MAP算法算法简化前向递推 简化后向递推 支路度量计算 后验概率计算 18Bell Joint LabLog-MAP算法算法 l近似导致性能损失l引入纠正项19Bell Joint Lab串行级联卷积码系统串行级联卷积码系统Matlab实现实现20Bell Joint Lab并行级联卷积码系统并行级联卷积码系统Matlab实现实现121Bell Joint Lab并行级联卷积码系统并行级联卷积码系

6、统Matlab实现实现222Bell Joint LabTurbo码仿真码仿真1之译码器结构之译码器结构迭代次数迭代次数23Bell Joint LabTurbo码仿真码仿真1之译码器结构之译码器结构误码率误码率24Bell Joint Lab短帧短帧Turbo码的设计要点码的设计要点1l译码器结构的选择:PCCC结构的误码平层大约为1e-5,而SCCC结构能够提供更低的误码平层(大约1e-7),SCCC需要更多的迭代次数达到误码平层,本身的译码复杂度也是远远高于PCCC(内编码器是4进制输入,8进制输出,格形图上有16个状态,每个状态出发有4条路径,每个状态有4条路径交汇)。在本系统中,我们

7、选择PCCC结构。25Bell Joint LabTurbo码仿真码仿真2之分量码之分量码递归递归26Bell Joint LabTurbo码仿真码仿真2之分量码之分量码生成多项式生成多项式27Bell Joint LabTurbo码仿真码仿真2之分量码之分量码约束长度约束长度28Bell Joint Lab短帧短帧Turbo码的设计要点码的设计要点2l分量码的选择:分量码必须是递归形式的,递归形式的分量码对于Turbo码减少低码重码子起着十分重要的作用,分量码的生成多项式也起着十分重要的作用,必须优化设计,分量码的约束长度对于Turbo码的作用十分有限,增大分量码的约束长度导致译码器复杂度的

8、增加。在本系统中,我们推荐使用poly2trellis(3, 7 5,7)分量码。29Bell Joint LabTurbo码仿真码仿真3之帧长之帧长30Bell Joint Lab短帧短帧Turbo码的设计要点码的设计要点3l帧长:对于Turbo码的性能而言,希望帧长越长越好,虽然帧长度的增加不会增加单位比特译码的复杂度,但是帧长直接决定了系统传输的时间延迟和译码存储空间,所以帧长度的选择必须折中考虑。一般的对于语音系统,帧长为200比特左右,对于视频系统,帧长为1000比特左右。本系统中,我们使用256比特作为帧的长度。31Bell Joint LabTurbo码仿真码仿真4之交织器之交织

9、器SCCC32Bell Joint LabTurbo码仿真码仿真4之交织器之交织器PCCC33Bell Joint LabTurbo码仿真码仿真4之交织器之交织器奇偶分离奇偶分离34Bell Joint Lab短帧短帧Turbo码的设计要点码的设计要点4l交织器:交织器在Turbo码系统中也是一个十分重要的组件,相比较差的交织器,良好的交织器可以提供大约0.2dB到1dB左右的增益,大量的试验证明,一般的随机交织可以取得良好的性能,代数交织和随机交织的性能相当,但是随着帧长的变小,随机交织的优越性会消失,直至我们必须“刻意”的设计交织器,才能使Turbo码正常工作。随机交织对于帧长度没有约束,

10、代数交织器一般对于帧长有着特殊的要求,矩阵交织器同样要求帧长能够分解成两个相近数的乘积。所有的交织器都可以通过查表的方式完成。本系统中,我们推荐使用随机交织。35Bell Joint LabTurbo码仿真码仿真5之译码算法之译码算法简化简化36Bell Joint LabTurbo码仿真码仿真5之译码算法之译码算法量化比特数量化比特数37Bell Joint Lab短帧短帧Turbo码的设计要点码的设计要点5l译码算法:Log-MAP算法和MAP算法相当,Max-Log-MAP有大约0.5dB的性能损失,MAP算法复杂度最大,Log-MAP和Max-Log-MAP计算量相近,但是Max-Lo

11、g-MAP算法在结构上最接近维特比算法,容易在DSP上快速实现。3比特的量化足够,但是在高信噪比区,推荐6比特量化。在本系统中,我们使用Max-Log-MAP算法,6比特量化。38Bell Joint LabTurbo码仿真码仿真6之打孔之打孔39Bell Joint Lab短帧短帧Turbo码的设计要点码的设计要点6l打孔:打孔可以提高码率,但是会带来误码率方面的性能损失,打孔的选择应该基于系统设计要求的考虑,没有孰优孰劣的问题。本系统中,我们使用1/2码率的Turbo码,打孔方式取经典方案。40Bell Joint LabTurbo码仿真码仿真7之结尾之结尾41Bell Joint Lab

12、短帧短帧Turbo码的设计要点码的设计要点7l结尾策略:对于帧长大约1000比特的系统,无需考虑迫零处理,当帧长小于50比特,我们采用方案4迫零处理。42Bell Joint Lab Turbo码混合码混合ARQ系统系统43Bell Joint LabTurbo编码混合编码混合ARQ系统系统44Bell Joint Lab传统传统HARQ分类分类lType I HARQ:数据被加以CRC并用FEC编码,重传时,错误分组被丢弃,重传分组与前一次相同。lType II HARQ:考虑无线信道的时变特性,在首次传输数据块时没有或带有较少的冗余,如果传输失败,重传的数据块不是首次所传数据块的复制,而是

13、增加了其中的冗余部分。在接收端将两次收到的数据块进行合并,编码速率下降而提高编码增益。lType III HARQ:与第二类HARQ不同的是重传码字具有自解码能力,因此接收端可以直接从重传码字当中解码恢复数据,也可以将出错重传码字与已有缓存的码字进行合并后解码。45Bell Joint LabTurbo码码HARQ I型型l我们用ARQ I型广义的表示发送端在重发数据分组时,不生成新的码子,与传统定义不同的是,接收端不一定丢弃首发分组,完全可以利用首发的信息,增加系统的通过率。l这种ARQ机制的优点是系统充分利用了硬件资源,编译码器的结构和控制都比较简单,有利于系统降低复杂性和减少功耗。46B

14、ell Joint LabTurbo码码HARQ I型型接力棒式接力棒式Turbo码码HARQ l在发方,首先将欲传信息经Turbo编码器编码后发送出去,接收端经过Turbo译码,如果通过CRC检错校验,反馈ACK信号回发送端,如果不能通过CRC检错校验,则反馈NACK信号到发送端;l发送端收到重发指令,则将该信息的原先的码子重新发送;l在收方,对于重发帧的译码,可将上一帧的译码结果用作先验信息,并用于Turbo译码器进行译码。如果译码结果通过CRC检错校验,反馈ACK,否则反馈NACK;l重复第2、第3步,直到发送端收到ACK信号,或者达到最大的重发次数,放弃此次通信。47Bell Join

15、t LabTurbo码码HARQ II型型 l我们用ARQ II型表示发送端在重发数据分组时,生成新的校验信息,即所谓的增量冗余信息,但是新的分组没有自解码性质。lARQ I型:简单的“重复码”,其最小码距是原来的L倍;实际上,通过L次重发可以构成纠错能力更强的纠错码。l这种ARQ机制的优点是能够充分利用重发的分组资源,纠错能力比I型更强,但是系统的编译码硬件设计必须以最低码率的纠错码设计,而系统一般运行在较高的码率水平上,所以不能充分利用硬件资源,编译码器的结构和控制相对复杂。48Bell Joint LabTurbo码码HARQ II型型速率兼容打孔速率兼容打孔Turbo码码HARQ l发

16、送端生成L*N比特长度的Turbo码,经过打孔形成N比特长度分组,发送到信道,并且保存被删除的其他校验比特;l接收端接收到分组,经过Turbo译码,如果通过了CRC检错,发送ACK信号,否则,发送NACK信号;l发送端收到NACK信号,并累计重发次数,发送剩余的相应的N比特校验比特;l接收端接收到重发分组后,与首发分组组成新的码子,经过Turbo译码,如果通过了CRC检错,发送ACK信号,否则,发送NACK信号;l发送端收到NACK信号,并累加重发次数,发送剩余的相应的N比特校验比特;l接收端接收到重发分组后,与前两次的分组组成新码子,经过Turbo译码,如果通过CRC检错,发送ACK信号,否

17、则,发送NACK信号;l重复上述过程,直到发送端收到ACK信号,或者重发次数达到最大的L次,放弃本次通信。49Bell Joint LabTurbo码码HARQ II型型Turbo码分而治之码分而治之HARQl基本思想是:假设系统是1/2码率的Turbo码,我们的编译码硬件设计也是按照基本的1/2码率的Turbo码来设计,当发送端被要求重发时,我们可以把信息序列分成奇数位和偶数位两类,奇数位的信息比特保持不变,但是偶数位的信息比特用已知的“01”序列代替,然后经过编码器生成码子,实际上,新生成的码子的有效信息比特只有原来的一半,同时,码率也下降了一半,这也就意味着码子有着更强的纠错能力,在接收

18、端,译码器首先对重发分组进行译码,运用相应的先验信息,得到关于信息序列奇数位比特的可靠信息,然后把这些信息反馈到第一个分组的译码器,通过奇数位比特的可靠信息来获得的正确译码。如果这时候,译码输出仍然没有通过CRC校验,那么在发送端可以把偶数位比特信息序列按奇偶分成2段,只传输其中1/4的信息比特,其他位置用已知序列填充,以此类推,最终获得正确译码。 50Bell Joint Lab分而治之方案的性能分而治之方案的性能误帧率误帧率51Bell Joint Lab分而治之方案的性能分而治之方案的性能通过率通过率52Bell Joint LabTurbo码码HARQ III型型lARQ III型表示

19、发送端在重发数据分组时,生成新的校验信息,同时新的分组具有自解码性质。l纠错能力和译码复杂度都介于I型和II型之间。与II型类似的是系统不能充分利用硬件资源,编译码器的结构和控制相对复杂。 53Bell Joint LabTurbo码码HARQ III型型多维多维Turbo码码HARQlTurbo码本身就可以构成一种很好的ARQ机制,首先,利用分量码1生成码子1,发送到信道,如果接收端能正确接收,那么继续发送下一帧数据,如果不能,那么经过交织的信息序列利用分量码2,生成码子2,发送到信道,译码器先对码子2进行译码(可以利用第一次译码的结果作为先验信息),如果译码成功,就反馈ACK信号,如果失败

20、,那么联合码子1和码子2进行Turbo迭代译码,如果译码成功那么就反馈ACK,如果到了预定的迭代次数,仍然没有通过CRC校验,那么反馈NACK信号,发送端可以进一步利用新的交织器和新的分量码,生成码子3,在接收端,译码器先利用前次译码结果作为先验信息,对码子3进行译码,如果成功就反馈ACK信号,如果失败,那么就把3个码子构成一个3维的Turbo码,进行译码,以此类推,直到译码成功 。54Bell Joint Lab Turbo/HARQ系统系统DSP实现实现55Bell Joint LabBLACKFIN DSP介绍介绍 l高度并行的计算单元数据总线和程序总线分离的哈佛结构流水线技术独立多个乘

21、加器单元 l高性能地址产生器循环缓冲 嵌套零开销循环 传输过程中饱和和限幅 l分层结构的内存较少的延迟缩短的处理空载时间 56Bell Joint LabBLACKFIN DSP程序优化程序优化l特殊指令的使用l并行指令的使用lDSP硬件资源的合理使用l数据在内存中的优化配置l流水线冲突57Bell Joint LabCRC算法原理算法原理lk位二进制数据序列lr位二进制校验码 ln位二进制序列 l生成多项式 l满足58Bell Joint Lab字节序列求余的递推算法字节序列求余的递推算法lM字节的序列 59Bell Joint LabCRC算法在算法在BLACKFIN DSP上的实现上的实

22、现 三字节序列算法三字节序列算法1.为形如Da 0 0 的三字节构造一个余数表。对于M字节序列N,读取前3个字节数据构成最初的三字节序列Da Db Di,此时i=3,然后进入如下的循环:2.根据Da查表求得Da 0 0 的余数Rh Rl;3.计算Db+Rh和Di+Rl,得到新的Da和Db;4.判断i是否等于M,如果相等则循环结束,得到余数,否则,读取序列N中的下个数据字节Di+1,得到新的三字节序列,跳到2。l3次总线读,2次异或,1次加法,1次移位和1次寄存器赋值 60Bell Joint LabCRC算法在算法在BLACKFIN DSP上的优化上的优化四字节序列算法四字节序列算法1.为形如

23、Da 0 0 0的四字节和Db 0 0的三字节构造余数表。对于M字节序列N,读取前4个字节数据构成最初的四字节序列Da Db D2i-1 D2i,此时i=2,然后进入如下的循环:2.根据Da查表求得Da 0 0 0的余数Rah Ral;3.根据Db查表求得Db 0 0的余数Rbh Rbl;4.计算D2i-1 D2i+Rah Ral+Rbh Rbl,得到新的Da和Db;5.判断i是否等于M/2,如果相等则跳到6,否则,读取序列N中的下一个16位数据D2i+1 D2i+2,得到新的四字节序列Da Db D2i+1 D2i+2,跳到2。6.如果M是偶数,结束得到余数Da Db,否则对三字节序列Da

24、Db DM求余得到结果。 l3次总线读,2次异或,2次加法,2次移位和4次寄存器赋值。61Bell Joint LabCRC算法优化结果算法优化结果l四字节算法相比三字节算法,平均对每个字节的操作少了1.5次总线读,1次异或,但是多了一次寄存器数据搬移l测试表明:效率提高33% 62Bell Joint LabMax-Log-MAP算法算法简化前向递推 简化后向递推 支路度量计算 后验概率计算 63Bell Joint LabMax-Log-MAP在在BLACKFIN DSP上实现上实现l支路度量的计算用Add on Sign指令完成。l递推计算为“加比选”蝶形计算,用VIT_MAX指令完成,

25、2次16位的比较和选择 64Bell Joint Lab蝶形计算在蝶形计算在BLACKFIN DSP上实现上实现运算量占整个译码器的80% 65Bell Joint Lab蝶形计算在蝶形计算在BLACKFIN DSP上实现上实现前向递推:l读取BM值;l读取度量Ak-1(0);l读取度量Ak-1(1);l计算Ak-1(0)+BM,Ak-1(1)-BM,Ak-1(0)-BM,Ak-1(1)+BM;lVIT_MAX指令比较选择得到Ak(0)和Ak(2);l保存度量Ak(0)和Ak(2)。66Bell Joint Lab蝶形计算在蝶形计算在BLACKFIN DSP上实现上实现后向递推:l读取BM值;

26、l读取度量Bk(0);l读取度量Bk(2);l计算Bk(0)+BM,Bk(2)-BM,Bk(0)-BM,Bk(2)+BM;lVIT_MAX指令比较选择得到Bk-1(0)和Bk-1(1);l保存度量Bk-1(0)和Bk-1(1) 。67Bell Joint Lab蝶形计算在蝶形计算在BLACKFIN DSP上的优化上的优化l如果不进行优化,整个蝶形运算需要10条指令l本文从以下几个方面对ACS进行了优化:第一,BLACKFIN是双40位ALU结构,一个时钟周期内可以完成4次16位加法。第二,总线32位宽,一次可以读取或保存两个16位操作数。第三,BLACKFIN具有数据处理和数据存取的并行处理能

27、力。第四,两组可嵌套的零开销循环加上4组循环缓冲的数据指针。第五,合理的分配数据可以避免STALL现象的发生。 第六,流水线冲突。 68Bell Joint Lab蝶形计算在蝶形计算在BLACKFIN DSP上的优化上的优化前向递推:l读取BM | 读取度量Ak-1(0),Ak-1(1);l计算Ak-1(0)+BM,Ak-1(1)-BM,Ak-1(0)-BM,Ak-1(1)+BM;lVIT_MAX指令得到和Ak(0)和Ak(2) | 保存度量Ak(0) | 保存度量Ak(2) ; 69Bell Joint LabMax-Log-MAP算法优化结果算法优化结果l主频600M的BLACKFIN处理器,数据帧长为1024,译码器迭代6次l译码时间为0.5msl数据吞吐量为2Mbpsl相对于优化前,译码速度提高了50%以上 70Bell Joint Lab结束语结束语工作小结工作小结lMatlab建模、编程和仿真;l用矩阵形式表达MAP算法;l给出短帧Turbo码的设计要点;l提出“分而治之Turbo/HARQ”方案,给出仿真结果;l系统的阐述了BLACKFIN DSP的程序优化问题;l提出了CRC的“四字节序列求余”改进算法;l优化了Max-Log-MAP算法,提高了Turbo译码器的数据吞吐量。71Bell Joint Lab谢谢大家!谢谢大家!Q&A72Bell Joint Lab

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号