(测试计量技术及仪器专业论文)turbo码编码器ip核设计及其sopc验证平台的实现.pdf_第1页
(测试计量技术及仪器专业论文)turbo码编码器ip核设计及其sopc验证平台的实现.pdf_第2页
(测试计量技术及仪器专业论文)turbo码编码器ip核设计及其sopc验证平台的实现.pdf_第3页
(测试计量技术及仪器专业论文)turbo码编码器ip核设计及其sopc验证平台的实现.pdf_第4页
(测试计量技术及仪器专业论文)turbo码编码器ip核设计及其sopc验证平台的实现.pdf_第5页
已阅读5页,还剩77页未读 继续免费阅读

(测试计量技术及仪器专业论文)turbo码编码器ip核设计及其sopc验证平台的实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 差错控制编码技术是保证移动通信传输质量的关键技术,t u r b o 码的出现为 差错控制编码技术掀开了新的篇章,这种新的编码方法与目前通信系统中普通的 卷积码编码方式相比,其纠错性能有了很大的提高,接近了s h a n n o n 极限。t u r b o 码己被国际电信联盟提议用于第三代移动通信系统中。 本文研究了t u r b o 码编译码理论,结合i m t - 2 0 0 0 中w - c d m a 标准进行编 码器p 核设计,然后验证其在硬件环境( 下载到f p g a ) q b 能否正常工作,即对其 进行f p g a 验证,f p g a 验证与软件仿真相比,有了真正的硬件环境,更容易验 证整体功能、发现软件仿真时难以发现的设计错误。本文对基于n i o s 处理器( 软 核) 的s o p c 系统的设计进行了探讨,详细论述了在n i o si i 开发板的f p g a 芯片 上利用n i o si ic p u ( 软核) 搭建嵌入式系统的设计方法。利用此方法,把要验证的 口核及其它辅助模块组建到设计的嵌入式系统中,且一起下载到f p g a 芯片中, 再结合p c 机,构成整个验证系统。设计中采用q u a r t u s i i 开发工具,使用v e r i l o g h d l 语言编写各个子模块,在s t r a t i xe p l s 4 0 系列f p g a 芯片上实现了具有高速 性、可变码率的编码器口核,可以用于第三代移动通信系统。 本文主要创新点为:在t u r b o 码编码器设计中实现了两个分量码编码器全归 零;采用流水线技术进行t u r b o 码编码器的设计,提高了编码速度;在内部加入 了并串转换模块,更便于开发者应用此口核到自己的系统中;本文还提出了基 于n i o s 处理器搭建s o p c 系统来验证口核的验证方法,并论述了此验证方法的 通用性。 关键词:t u r b o 码s o p cn i o si if p g a 验证 v a b s t r a c t t h ee r r o rc o n t r o lc o d i n gt e c h n o l o g yi st h ee s s e n t i a lt e c h n o l o g yt og u a r a n t e et h e m o b i l ec o m m u n i c a t i o nt r a n s m i s s i o nq u a l i t y t h ea p p e a r a n c eo ft u r b oc o d ec r e a t e d t h en e wa g eo ft h ee r r o rc o n t r o lc o d i n gt e c h n o l o g y c o m p a r e dw i t hc o n v o l u t i o nc o d e t h eo r d i n a r ye n c o d i n gm e t h o di np r e s e n tc o m m u n i c a t i o n ss y s t e m ,i t se r r o rc o r r e c t i o n p e r f o r m a n c ei si m p r o v e ds i g n i f i c a n t l y t u r b oc o d eh a db e e np r o p o s e dt ob eu s e di n t h e3 t hg e n e r a t i o nm o b i l ec o m m u n i c a t i o ns y s t e mb yi n t e m a t i o n a lt e l e c o m m u n i c a t i o n u n i o n t h et h e o r yo ft u r b oc o d e se n c o d i n ga n dd e c o d i n gw i t ht h es t a n d a r do f w - c d m ai nt h ei m t - 2 0 0 0i si n t r o d u c e di nt h ep a p e r t h e nf p g ae m u l a t i o no f t h ei p c o r ei sc a r r i e do nt ov e i l f yi ft h ei pc o r ec a nw o r kc o r r e c t l yi nt h es y s t e m c o m p a r e d w i t ht h es o f t w a r es i m u l a t i o n ,f p g ae m u l a t i o nh a st h er e a lh a r d w a r ee n v i r o n m e n ta n d c a l lf i n ds o m ee r r o rw h i c hs o f t w a r es i m u l a t i o nc a n n tf i n d t h em e t h o do fd e s i g n n i o si ic p ue m b e d d e ds y s t e mu s i n gf p g ai nt h en i o sd e v e l o p m e n tb o a r di s i n t r o d u c e di nt h ep 印e r u s i n gt h i sm e t h o d ,w es e tu pt h ei pc o r ea n do t h e rl o g i c a l m o d u l e st ot h ee m b e d d e ds y s t e ma n dd o w n l o a di ti n t ot h ef p g ac h i pt of o r mt h e e n t i r ee m u l a t i o ns y s t e m f i n a l l yw ed i s s c u s st h eu n i v e r s a l i t yo f t h ee m u l a t i o nm e t h o d t h et u r b oe n c o d e rw h i c hh a sh i g hs p e e da n dv a r i a b l ec o d i n gr a t ea r er e a l i z e do nt h e h a r d w a r ep l a t f o r mo fs t r a t i xe p l s 4 0w i t hq u a r t u si is o f t w a r e t h ee n c o d e rc a nb e u s e di n3 gm o b i l ec o m m u n i c a t i o ns y s t e m t h em a i nc r e a t i v ep o i n t so ft h ep a p e ri st h er e a l i z a t i o no ft u r b oe n c o d e rw i t h t w oc o m p o n e n tc o d ee n c o d e r si sd e s i g n e dt os h i f t i n t oz e r os i m u l t a n e o u s l ya n d p r o c e s st h ed a t ab yp i p e l i n i n gt e c h n o l o g y t h ee n c o d e ri sd e s i g n e dt oc h a n g et h ed a t a f r o mp a r a l l e lt os e r i a lf o rt h ec o n v e n i e n c eo ft h es y s t e md e v e l o p e r m o r e o v e r , t h e p a p e rp r o p o s e st h ee m u l a t i o nm e t h o da n du s et h es o p cs y s t e mb a s e do nt h en i o s p r o c e s s o rt oe m u l a t et h ei pc o r e k e y w o r d s :t u r b oc o d i n g s o p cn i o si if p g ae m u l a t i o n 原创性声明 本人声明:所呈交的论文是本人在导师指导下进行的研究工作。 除了文中特别加以标注和致谢的地方外,论文中不包含其他人已发表 或撰写过的研究成果。参与同一工作的其他同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了谢意。 签名:塑日期:竺咝:门 本论文使用授权说明 本人完全了解上海大学有关保留、使用学位论文的规定,即:学 校有权保留论文及送交论文复印件,允许论文被查阅和借阅;学校可 以公布论文的全部或部分内容。 ( 保密的论文在解密后应遵守此规定) 签名:j 虹导师签名:j 狙日期:啤1 7 份 1 1 差错控制技术概述 第一章绪论 1 1 1 差错控制编码技术的发展 1 9 4 8 年s h a n n o n 在他的开创性论文“通信的数学理论”中,首次阐明了在有 扰信道实现可靠通信的方法,提出了著名的有扰信道编码定理,s h a n n o n 在著名 的信道编码定理中指出:每一信道均有一个相应的信道容量极限c ,在数据传输 速率r 小于该极限c 时,可以通过好的信道编码来实现信息的无差错传输,该 理论由此奠定了差错控制理论的基石。自此以后信道编码的任务就是寻找这种编 码。h a m m i n g 、s l e p i a n 等人根据s h a n n o n 的思想,给出了一系列设计差错控制 技术的方法,此后,差错控制技术受到了越来越多的通信工作者的重视,在理论 和实践中得到了飞速发展。至今,差错控制技术已有五十多年历史,其发展大致 分以下几个阶段。 5 0 年代至6 0 年代初,主要研究各种有效的编、译码方法,奠定了线性分组 码的理论基础:提出了著名的b c h 编码、译码方法。 自6 0 年代至8 0 年代初,这是差错控制技术发展过程中最活跃的时期。提出 了许多有效的编码算法,其中卷积码的研究有了空前的发展,如卷积码的译码序 列、门限译码、迭代译码、软判决译码和v i t e r b i 译码等,同时还注意到了差错 控制的实用化问题。1 9 6 1 年,j m w o z e n c r a n 提出序列译码法。1 9 6 3 年,梅西 ( j l m a s s e y ) 提出了虽然效果差但易于实现的门限译码法,使卷积码在有线和无 线信道的数据传输中得到了一些实际应用。而后,在1 9 6 7 年,维特【= l ( v i t e r b i ) 提出了最大似然译码法,它对约束长度l 不太大的码来说容易实现而且性能优 越,大规模集成电路v l s i 的发展又为它打下了硬件基础,直至现在它仍是主要 译码的算法。 自8 0 年代初以来,戈帕等从几何观点讨论分析码,利用代数曲线构造了一 类代数几何码。由于代数几何码是一类范围广泛的码,在理论上已证明它具有优 越的性能,现在已经取得许多成果。 9 0 年代初,随着无线移动通信系统得到大规模的实际应用,差错控制技术 迎来了实践的一次重大突破,b e r r o u 于1 9 9 3 年提出的t u r b o 码编码方法采取了 软输入软输出判决、随机交织和反馈迭代译码等一系列方法,在信噪比极低时能 保持很低的比特差错率。t u r b o 码克服了传统码随机性差、码字重量分布不均的 缺点,与以往传统差错控制相比,纠错译码能力有了很大提高,相当接近香农极 限,在高速率数据传递状态下有着独特的良好性能,被r r u 选入第三代移动通 信系统标准( 包括w c d m a ,c d m a 2 0 0 0 和t d s c d m a ) 的信道编码的方案。 t u r b o 码的出现,使差错控制技术在实践中达到了一个全新的高度。t u r b o 码出 现后,世界范围内对随机码的研究进入了一个高潮。 1 1 2 通信系统中差错控制技术 通信的目的是要把对方未知的消息及时、安全可靠地传送给对方。这样就要 求一个通信系统传输消息必须可靠而且快速,但是在数字通信系统中可靠和快速 性往往是一对矛盾。若要求快速,必然使得每个数据码元所占的时间缩短,波形 变窄,能量减少,故在受到干扰后产生错误的可能性增大,传送信息的可靠性降 低。而要求可靠,则使得传送消息的速率变慢。因此,如何较合理地解决可靠性 和速度这一对矛盾,是正确设计一个通信系统的关键问题之一。差错控制理论也 正是解决这对矛盾中不断发展起来的。数字通信系统模型t 2 】如图1 1 所示: r r r r 1 堡塑r 1 堕塑塑竺叫堡望塑里1 塑型望i i 匹习坷 i 匝习圃一叵亟弘匠 图1 1 数字通信系统模型 图1 1 中,信源编码是把信源发出的消息等转换成二进制形式的信息序列。 为了抗击传输过程中的各种干扰,往往要人为地加入一些冗余度,使其具有自动 检错或纠错功能,这种功能由图中的信道编码即纠错编码完成。数字信号在信道 传输过程中,总会遇到各种干扰而使信号失真,这种失真信号在信道传输过程中, 信息序列可能已有错误,经过信道译码器,对其中的错误进行纠错,恢复成原来 的信息送给用户。 数字通信系统中,利用纠、检错码进行差错控制的基本方法大致分成三类p j : 一类是前向纠错( f e c ) ,信息在发送端经纠错编码后送入信道,接收端通过纠错 译码自动纠正传输中的差错,这种方式的优点是无需反向信道,延时小,实时性 好,即适用于点对点通信,又适用于点对多点组播或广播通信;第二类是反馈重 发( a r q ) ,发送端发送检错码,接收端通过译码器检测接收码组是否符合编码规 律,从而判断该码是否存在传输差错,如判定码组有差错,则通过反向信道通知 发送端将该码组重发一次,如此反复直到接收端认为正确接收为止:第三类是混 合纠错( h e c ) ,此法是前向纠错和反馈重发的结合,发送端发送的码兼有检错和 纠错的能力,接收端译码器收到码字后,首先检验错误情况,如果差错不超过码 的纠错能力,则自动纠错,如果判断码的差错数量已超出码的纠错能力,接收端 通过反馈信道给发送端一个要求重发的信息。 1 2t u r b o 码的提出及在实际系统中的应用 t u r b o 码又称并行级联卷积码( p c c c ) ,是在1 9 9 3 年瑞士日内瓦召开的国际通 信会议上,由c b e r r o u 等人提出的一种编码技术 4 1 1 5 1 。它巧妙地将卷积码和随机 交织器结合在一起,利用随机交织的方式实现了随机编码的思想;同时,采用软 输入软输出的迭代译码算法来逼近最大似然译码。假设t u r b o 码中使用了约束长 度n 5 n 递归系统卷积码( r s c ,r e c u r s i v es y s t e mc o n v o l u t i o n a lc o d e s ) 和6 5 5 3 6 比 特长的分组交织器,校验位经过删余处l 犟( p u n c t u r e d ,又叫凿孔、截短) 后,可以 得到码率为1 2 的系统码( n = 1 3 1 0 7 2 ,k = 6 5 5 3 6 ) 。仿真结果显示:信噪比e 以4 0 为 o 7 d b 时,经过1 8 次迭代译码,比特差错率可低至l o ,性能非常接近s h a n n o n g 艮 ( 1 2 码率0 d bo 因此这一超乎寻常的优异性能,立即引起信息与编码理论界的轰 动。 t u r b o 码提出时理论基础还不完善,其良好的性能主要是计算机仿真结果, 但是人们通过大量的模拟、仿真表明,t u r b o 码的确具有相当优异的性能。因此 t u r b o 码的发现,标志着信道编码理论与技术的研究进入了一个崭新的阶段。尽 管目前对t u r b o 码的作用机制尚不十分清楚,对迭代译码算法的性能还缺乏有效 的解释,但它无疑为最终达至o s h a n n o n 信道容量开辟了一条新的路径,其原理思 想在相关研究理论中具有广阔的应用前景。目前,t u r b o 码被看作是1 9 8 2 年t c m 技术问世阻来,信道编码理论与技术研究上所取得的最伟大的技术成就,具有里 程碑的意义。 许多科学家在研究t u r b o 码的理论依据过程中取得了不少的成果7 1 【8 1 。目前 t u r b o 码已有了很大的发展,在各方面走向了实际应用的阶段。在t u r b o 码的应用 研究中,t u r b o 码已被美国空间数据系统顾问委员会作为深空通信标准,同时它 也已被定为第三代移动通信系统( r m t 一2 0 0 0 ) 的信道编码方案之一( d 以t 一2 0 0 0 在接入网方面的基本要求为:有限覆盖和室内环境时达到2 m b i t ,s ;室内外步行 环境3 8 4k b i f f s 室外车辆动中1 4 4k b i f f s ;卫星移动环境至少9 6k b i g s ) 。其中具有 代表性的3 g p p 的w c d m a 、c d m a 2 0 0 0 和我国的t d s c d m a 三个标准中的信道 编码方案都使用了t u r b o 码,用于高速率,高质量的通信业务,第三代移动通信 的标准的实施为t u r b o 码的研究提供了重要的应用背景【9 1 。另外与t u r b o 码相结合 的t c m 技术也在实际中用了很大的应用。同时,迭代译码的思想已作为“t u r b o 原理”而广泛应用于编码、调制、信号检测等领域。 t u r b o 码在文本传输和数据存储等方面也有应用。国外已有专门的编解码芯 片,如新加坡o k i 公司的e m i k 0 7 ,朗讯科技贝尔实验室推出的t u r b o 解码器芯片; 国内也有很多高校( 上交大、北邮、天大、南理工) 在进行t u r b o 码及其在相关领 域的应用研究,但总体上来说,国内仍处在研究实验阶段,未见有芯片级的编解 码器出现。 1 3s o p c 技术简介 自2 0 世纪下半叶以来,微电子技术得到了迅速发展,集成电路设计和工艺 水平有了很大的提高,单片集成度中每片已能包含上亿个晶体管,从而使得将原 来有许多i c 组成的电子系统集成在一个单片硅片上成为可能,构成所谓的片上 系统( s y s t e mo nc h i p ,s o c ) ,或系统芯片口0 1 。与普通的集成电路相比,系统芯 片不再是一种功能单一的单元电路,而是将信号采集、处理和输入输出等完整的 系统功能集成在一起成为一个专用功能的电子系统芯片,其设计思想也有别于普 通i c 。因此,当今电子系统的设计已不再是利用各种通用i c 进行p c b 板级的 设计和调试,而是转向以大规模f p g a 或a s i c 为物理载体的系统芯片的设计, 前者称为s o p c ( s y s t e mo np r o g r a m m a b l ec h i p ,简称为可编程片上系统) ,后者 为s o c 。另一方面,由于集成电路工艺的成熟和e d a 工具的迅速发展,使得电 子系统的设计者并不需要过多的关注半导体集成工艺,完全可以利用现有的成熟 工艺,在e d a 工具的帮助下完成整个系统从行为算法级( 系统级) 到物理结构级 的全部设计,并最终在f p g a 上实现,或委托i c 制造商进行a s i c 生产。 s o p c ( s y s t e m o na p r o g u a m m a b l e c h i p ,片上可编程系统) 是a l t e r a 公司提出 来的一种灵活、高效的s o c 解决方案】【i ”。它将处理器、i o 口、l v d s 、c d r 等系统需要的功能模块集成到一个p l d 器件上,构建成一个可编程的片上系统。 它是可编程系统,具有灵活的设计方式,可裁减,可扩充,可升级,并具备硬软 件在系统可编程的功能。可编程器件内,还具有小容量高速r a m 资源。由于市 场有丰富的i pc o r e 资源可供灵活选择,用户可以构成各种不同的系统,如单处 理器、多处理器系统。有些可编程器件内还可以包含部分可编程模拟电路。除了 系统使用的资源外,可编程器件内还具有编程逻辑资源,用于实现其它的附加逻 辑。 1 4 本文主要内容 本文主要结合上海市教委青年基金项目 t u r b o 码编译码器设计”,并参考 i m t - 2 0 0 0 中w - c d m a 标准,对t u r b o 码编译码理论进行了深入的研究,并在实 践的基础上,对t u r b o 码编码器的f p g a 实现进行了研究,使用硬件描述语言 v e r i l o gh d l 设计t u r b o 码编码器口核,提出了可实际应用于s o p c ( 片上可编程 系统1 的实现方案,力求使设计的编码器的数据吞吐率达到5 m b i t s 以便于应用在 第三代移动通信系统中;然后搭建验证此口核的软硬件平台,验证平台分为上 位机部分和下位机部分,上位机部分主要是运行在p c 机上的应用软件,下位机 部分是指利用我们设计的t u r b o 码编码器口核及其它辅助模块和a l t c r a 公司的 n i o si ic p u ( 软核1 等i p 核,在开发板上的s t r a t i x 系列的f p g a 芯片上搭建s o p c 硬件系统并编写驱动软件。 我们的研究工作主要创新之处在于:在t u r b o 码编码器设计中实现了两个分 量码编码器全归零;对数据采用流水处理,提高了编码速度;在内部加入了并串 转换模块,使系统开发者方便地搭建此p 核到自己的系统中;本文还提出并使 用了基于n i o s 处理器搭建s o p c 系统来验证口核的验证方法,并论述了此验证 方法的通用性。 主要内容安排如下: 1 本文第一章介绍了差错控制编码技术及t u r b o 码的研究现状。 2 本文在第二章中论述了t u r b o 码编译码器原理,并重点分析了其分量码 编码器和交织器的原理。 3 第三章中主要介绍了f p g a 器件特点、原理;本设计中用到的f p g a 设 计方法、流程;f p g a 验证的意义,验证时用到的s o p c 系统软硬件协同设计 方法。 4 第四章中详细分析了t u r b o 码编码器设计的关键问题及解决方案,t u r b o 码编码器口核的f p g a 设计及其各个子模块的具体硬件实现、仿真结果。 5 第五章主要分析了为达到验证目的所采取的方法,给出了验证系统的结 构,并详细论述了其实现。 6 最后是对全文的总结以及对今后研究的展望。 第二章t u r b o 码原理 本章中首先介绍了t u r b o 码编译码原理,分析了编译码方法,然后对t u r b o 码编码器中用到的分量码编码器、交织器的原理进行了详细论述。 2 1t u r b o 码编译码原理 2 1 1t u r b o 码编码方法 t u r b o 码编码器是由两个反馈的系统卷积码编码器通过一个交织器并行连接 而成的,编码后的校验位经过删余阵,从而产生不同码率的码字( 见图2 1 ) ,图2 1 所示的是典型的t u r b o 码编码器结构框图,信息序y u u n 编码器后分成三路,一路 保持不变输出系统位u ,一路经过第一个递归系统卷积码( r s c l ) 进行编码,输出 校验位序列x p ,另一路经过交织器,形成一个新的序列u l ( 长度与内容没变但比 特位置经过重新排列) ,然后经过第二个递归系统卷积码( r s c 2 ) 进行编码,输出 校验位序y o x p 2 。序列x p l 与x p 2 经过删余器,形成校验序列x p 。序列x p 与未编码 序列u 经过复用调制后,生成t t v b o 码序列s 。 圈2 1t u r b o 码编码器结构图 例如,基于( 2 ,1 ,4 ) r s c ( 递归系统卷积码) 的t i l r b o 码编码器。分量码是码 率为l 2 的寄存器级数为4 的( 2 ,1 ,4 ) r s c 码。其生成矩阵为: g ( d ) _ 【1 ,而若而 我们假设输入序列为: u = ( 101 1001 ) 则第一个分量码编码器的输出序列为: x p l = ( 11 10 00 假设经过交织后信息序列变为: u l = ( 1101010 ) 第二个分量码编码器所输出的校验位序列: x p 2 = ( 10 000 0 0 ) 则编码后的t u r b o 码序列为( 在不加删余的情况下) : s = f 1 1 1 ,0 1 0 ,1 1 0 ,1 0 0 ,0 0 0 ,0 0 0 ,1 1 0 ) 2 1 _ 2t u r b o 码译码方法 由于t u r b o 码是由两个或多个分量码经过不同交织后对同一信息序列进行编 码,对任何单个传统编码,通常在译码器的最后得到硬判决译码比特,然而t u r b o 码译码算法不应局限于在译码器中通过的是硬判决信息。为了更好的利用译码器 之间的信息,译码算法所用的应当是软判决信息而不应是硬判决,一个由两个分 量码构成t u r b o 码的译码器是由两个与分量码对应的译码单元和交织器与解交织 器组成的,将一个译码单元的软输出信息作为下一个译码单元的输入;为了获得 更好的译码性能,将此过程迭代数次。这就是t u r b o 码译码器的基本工作原理。 图2 2t u r b o 码译码器结构图 t u r b o 码的译码一般采用软输入软输$ ( s o f li n p u ts o f to u t p u t ) l 舨馈递推迭 代算法。t u r b o 码的译码过程是通过两个子译码器交错重复译码来完成的,两个 子译码器之间是依靠反馈附加的外信息( e x t r i n s i ci n f o r m a t i o n ) 建立相互联系的。设 编码端输出的比特序列u 、x p i 和x p 2 ,经过信道并加入噪声后,就成为图2 2 中的输入信息序列x 、校验序列y 和校验序列y 2 。具体译码过程如下: 1 ) 串并转换:由于接收序列为串行数据,所以首先要进行串并转换,将接 收序列分为并行的接收信息序列x 、对应子编码器1 的校验序列y l ,和对应子编 码器2 的校验序列y 2 。 2 ) 迭代计算:将接收信息序y u x s u 接收校验序列y l 送入子译码器1 进行译码。 将子译码器1 译码输出的外信息序列厶l 进行交织得到三。,同时也将接收信息序 y u x 进行交织得到x ,然后将它和三。l 与校验序y l j y 2 一起送入子译码器2 进行译 码,译码输出为外信息序列上。2 和似然值序y u l ( x ) 。将先验信息序列k 解交织得 到z m 自第二次迭代开始,送入子译码器l 的输入加入了来自子译码器2 的外信 息序列z 。2 ;除此之外,每次迭代运算均与第一次迭代运算相同。 3 ) 判决输出:迭代计算p 次后,对于译码器2 输出的似然值解交织后判决输 出,完成译码。循环迭代结构的形成就是由外信息在两个子译码器之间的传输形 成的,所谓外信息,工。1 。2 ) 是由译码器1 ( 2 ) 向译码器2 ( 1 ) 提供的辅助信息。对于 译码器1 而言,其输出的软判决信息l ( x 1 ) 可以分成三个分量,即加入权重的x , 加入权重的z 。2 和一个由输入序列共同作用得到的信息。这其中,前两项与译码 器2 直接相关,不适合作为外部信息转输给译码器2 ,因此被称为内部信息l l 。而 最后一项没有这种直接相关性,因而被作为外部信息输入译码器2 ,即l ( x ) = a x 十b e 2 + 三。- 。在外信息的作用下。一定信噪比下的误比特率将随迭代次数的增 加而下降。同时,外信息与内信息的相关性也逐渐增大,外信息所提供的纠错能 力逐渐减弱。在循环一定次数之后,译码性能不再提高,达到饱和。一般迭代次 数p 为8 次左右。由于这种将输出反馈到前端的迭代结构类似于气轮机的工作原 理、所以b e r r o u 等人将其命名为t u r b o 码。 常见的软输入软输出( s i s o ) 算法主要有: 1 1m a p 系列算法 标准m a p 算法【”】,是对b a h l 软输出算法进行一定的修正后,通过除以先 验分布( 前次的软输出) 来消除正反馈的算法,主要是最小化比特误差,需要进 行前向和后向递推运算,并涉及大量非线性运算,译码性能较好但计算量大,通 过采用各种简化方法,如l o g m a p ,m a x l o g - m a pe 1 4 】【”1 等,可以显著减少 运算量。 2 1s o v a 译码算法 s 0 v a 算法【”l ( s o t t - o u t p u tv i t e r b ia l g o r i t b a n ) ,即软输出维特比算法,维特比 算法是一种最大似然序列估计算法,主要是最小化序列误差。由于在其计算过程 中每一步都要删除一些低似然译码路径,每一状态仅保留一条最优存留路径,因 而无法直接提供软输出。为了给其输出中的每一比特赋予一个可信度,就需要在 删除低似然路径时做一些修正,保留必要的信息。 其基本思想是利用最优存留路径和被删除路径的路径度量差,此差值越小意 味着此次选取可靠度越低,然后利用这一差值来修e 此路径上各比特的可信度。 s o v a 算法译码性能较差但是计算简单,且计算量不随序列长度的增长而增加。 事实上,只要对s o v a 算法的可信度更新方法作一些修正,就可以使其和 m a x l o g - m a p 算法完全等价。例如,b a t t a i l 在1 9 8 7 年就曾提出了一种被称为 b r s o v a 的算法,通过逻辑的方式可以证明b r s o v a 算法和m a x l o g m a p 算法是完全等价的,因此两者性能是相同的,不过b r s o v a 算法虽然计算量要 比m a x l o g - m a p 算法少得多,但其所需的存储量较大【1 7 l 。 2 2 分量码编码器 t u r b o 码是建立在一种特殊的系统卷积码递归系统卷积码( r s c ) 基础之 上的,它以两个r s c 码作为它的分量码。所以我们有必要进一步对r s c 码进行 介绍。 图2 3 递归系统卷积码编码器( g l ,9 2 ) = ( 3 7 2 1 ) 从差错编码的有关文献中我们可知,非系统卷积码( n s c ) 的b e r 性能在高信 噪比时比约束长度相同的非递归系统码要好,而在低信噪比时情况却j f 好相反。 递归系统卷积码r s c 综合了n s c 码和系统码的特性,虽然它与n s c 码具有相 同的t r e l l i s 结构和自由距离,但是在高码率( r c 9 3 ) 的情况下,对任何信噪比, 它的性能均比等效的n s c 码要好1 8 】。因此在t u r b o 码中采用r s c 码作为分量码。 一个生成多项式为( 3 7 ,2 1 ) 的1 6 状态r s c 编码器结构如图2 3 所示。 用r s c 码构成t u r b o 码的码率为: 三r = 土r i + 土r 2 一l ( 2 圳 + 一1 t z 。z 。lj r 。、r :为构成分量码的码率,在经删余后,分量码r s c l 与r s c 2 的码率r 、 r :可以不同。 在码率为1 2 的情况下,t u r b o 码在k 时刻的输出为x 。= ( z ;,x f ) ,其中硭由 j ? 1 和z f 2 交替组成。假设采用b p s k 调制方法,则信道上的发送符号为: q = ( c ;,c f ) = ( ( 2 c i 一1 ) i ,( 2 c f 一1 ) i )( 2 2 2 ) 经过信道传输、解调,接收器匹配滤波器在k 时刻的输出采样为 y 。= ( 以,y f ) ,译码器的任务就是从此接收序列估计发送信号。 2 3 交织器 2 3 1 交织器基本原理 交织是指一个数据队列在一一对应的条件下进行数据的位置重排过程。其逆 过程为解交织,也就是将接收到的信息序列进行位置还原,使数据的位置还原成 发送时的顺序。 设交织器的输入为: c = ( c ,c 2 ,c ,c 。) ( 2 3 1 ) 且c 为二进制序列,其中c , 0 ,1 ) ,l j n 。序列c 经交织器交织后得 到一个二进制输出序列0 : c = ( c ,c :,c ,c 。) ( 2 3 2 ) 其中0 o ,l ,1 j n 。序列c 中的数据和序列0 中的数据完全一样, 只是数据的顺序不一样。如果把输入和输出看成两个大小都是的集合,那么从c 到c 是一一对应的关系。我们定义集合a 如下: a = 1 ,2 , 3 _ n ( 2 3 3 ) 则交织器可以定义为一个一一对应的函数: 石( a a ) :j = 万( i ) ,j ,i a( 2 3 4 ) 其中j ,i 分别为输入序列c 和输出序列0 的数据在序列中位置序号,可以用一个 交织向量来表示这种映射关系: 巧。= ( 茚( 1 ) ,7 r ( 2 ) ,玎( 3 ) 。厅( ) )( 2 3 5 ) c = c g ,g ,c j q ,- :i + e = c 。,己,c 3 - c , 图2 4 交织器原理图 为了进一步说明交织器的原理,我们来看一个例子,假设一个大小= 8 的 伪随机交织器,设其输入序列为: c = ( c ,c :,c 3 ,c 。,c ,c 6 ,c ,c 8 ) ( 2 3 6 ) 经交织后得到序列为: c = ( c l ,c 2 ,c 3 ,c 4 ,c 5 ,c 6 ,c 7 ,c b ) = ( c :,c 4 ,c ,c l ,c 8 ,e ,g ,c 。) ( 2 3 7 ) 其映射函数如图2 5 ,交织向量可以表示如下: 厅。= ( x 0 ) ,r r ( 2 ) ,石( 3 ) ,万( 4 ) ,万( 5 ) ,万( 6 ) ,r r ( 7 ) ,厅( 8 ) ) = ( 4 ,1 ,7 ,2 ,6 ,8 ,3 ,5 ) c c 图2 5 交织器的映射关系 t u r b o 码的性能在很大程度上依赖于交织器。t u r b o 码的性能主要由低比特 重量模式( 重量为1 、2 ) 来反映。在高斯信道下帧长为1 9 2 b i t ,1 0 x1 0 i 1 的误比 特率和2 0 1 0 。的误帧率要在信噪比为2 0 d b 时才能达到。通过对不同的交织 器进行仿真的结果表明,伪随机交织器【2 0 l 【3 0 】和分组交织器适合于帧长较小条件 下t u r b o 码编码且二者性能大致相当;在帧长较长的情况下,适于用随机交织。 2 3 2 交织器设计原则 交织器主要作用是对输入信息序列的比特顺序进行重置,使交织前后的序列 相关性减小。好的交织器能把低重量的输入序列中连续“1 ”的比特分散,当信息 序列经第一个编码器编码后得到的校验码重较低时,交织器能使信息序列在交织 后进入第二个编码器编码后输出的校验码有较高码重,从而保证总的编码输出码 重【2 1 】。交织器的设计中有以下两个原则: 汉明重量原则 在a w g n 信道下采用最大似然算法的线性纠错码的性能,和此种纠错码的 最小汉明距离( d m ) 或自由距离( d f r e e ) 有关。在a w g n 信道下,误比特率近似等 于: 只。盟 6 犯等 ( 2 3 8 ) 其中,d 一也就是最小汉明重量。其中 ,。是码重等于最小汉明重量的码字 的数量,n 是交织器的长度,吃。是产生最小汉明重量码字的输入序列的平均汉 明重量。r 是编码速率,b 是未编码前的信息比特的平均能量,高斯白噪声的单 边带功率谱密度是n 。 由式( 2 3 8 1 式可以看出,对于t u r b o 码,当交织器长度n 固定时,要想获得更 好的纠错性能,可以通过增加d 。或者减小n m 两种途径。当t u r b o 码中的r s c 成员编码器固定时,交织器的结构将极大的影响上述两个参数。 当输入序列进入r s c 编码器( 图2 1 ) 产生较低汉明重量的校验码字时,我们就 可通过交织器来打乱输入序列后再送入第- 二r s c 编码器,使其产生较高汉明重量 的校验码字,这样对于整个编码输出码字,就有比较高的汉明重量【2 2 】【2 8 】。 从此种观点来看,交织器的设计就是尽量避免两个r s c 编码器同时产生低汉 明重量的校验码字,尽量地提高码字的d 。,尽量地减少低汉明重量码字的数量 。这就是汉明重量原则。 b ) 随机性原则 t u r b o 码的译码不是采用最优的最大似然译码算法,而是采用了次优的迭代 译码算法。采用最大似然译码算法时,影响码性能的关键是码的最小汉明距离或 自由距离。而在次优的迭代译码算法中,每次迭代输入的先验信息和从信道获得 的比特信息的相关性将极大地影响译码的性能。因为先验信息是由另一成员译码 器输出的外在信息经交织或反交织获得的。由于成员译码器采用的是m a p 等算 法,每一个信息比特的外在信息都会和其前n m 和后n m 个信息比特有关( 若采用 s o v a 算法时,只和前n m 个信息比特有关) ,n m 一般高达5 6 倍的成员编码器的 约束长度。若在信息经交织或反交织后又作为2 n m 个信息比特中的某一个比特的 先验信息来进行译码,可想而知,译码会因为它们的相关性而使眭能下降。从此 种角度来讲,使外在信息和信道比特信息二者越不相关越好。因此交织器应尽量 的使二者不相关。我们称之为随机性原则。 3 1 引言 第三章f p g a 技术与s o p c 系统的研究 在集成电路设计中,一般有两种设计方法即a s i c 设计和p l d 设计( f p g a 或c p l d ) b ”,在前端设计中,两种设计方法都要进行功能仿真和时序仿真,只 是使用的软件仿真工具不同。当软件仿真通过后,两种设计方法都需要再进行 f p g a 验证,f p g a 验证是进行硬件仿真,硬件仿真比起软件仿真有了真正的硬 件环境,更容易验证整体功能、发现软件仿真时难以发现的设计错误。当f p g a 验证通过后,如果是a s i c 设计,则可以进行投片生产,而若是f p g a 设计,则 可以将p 核提供给系统开发者,应用到f p g a 开发系统中。下面将依次介绍 f p g a 设计流程、s o p c 软硬件设计方法以及所用的开发环境。 3 2f p g a 技术 3 2 1f p g a 器件介绍 现场可编程序列f p g a 器件是x i l i n x 公司1 9 8 5 年首家推出的,它是一种新 型的高密度p l d ,采用c m o s s r a m 工艺制作。f p g a 的结构与门阵列p l d 不 同,其内部由许多独立的可编程逻辑模块( c l b ) 组成,逻辑块之间可以灵活地相 互连接。f p g a 的结构一般分为三部分:可编程逻辑块,可编程i o 模块和可编 程内部连线。c l b 功能很强,不仅能够实现逻辑函数,还可以配置成r a m 等复 杂形式。配置数据存放在片内的s r 州或者熔丝图上,基于s r a m 的f p g a 器 件工作前需要从芯片外部加载配置数据。配置数据可以存储在片外的e p r o m 或 者计算机上,设计人员可以控制加载过程,在现场修改器件的逻辑功能,即所谓 现场可编程。f p g a 出现后收到电子工程师的普遍欢迎,发展迅速。x i l i n x ,a l t e r a 和a c t e l 等公司都提供高性能的f p g a 芯片。 f p g a 的特点有: ( 1 ) 采用f p g a 设计a s i c 电路,用户不需要投片生产,就能得到合用的芯片。 ( 2 ) f p g a 可做其它全定制或半定韦i j a s i c 电路的中试样片。 ( 3 ) f p g a 内部有丰富的触发器和i ,o 引脚。 f p g a 是a s i c 电路中设计周期最短、开发费用最低、风险最小的器件之 o ( 5 ) f p g a 采用高速c h m o s 工艺,功耗低,可以与c m o s 、t t l 电平兼容。 f p g a 在掉电后信息即丢失,所以每次上电后需对f p g a 进行重新加载,要 外挂配置用的e e p r o m 。在上电的时候,由e e p r o m 内自行启动的加载时序把 数据流加入f p g a 中,对其内部逻辑进行配置。而对基于e e p r o m t 艺的c p l d 来说,则不存在这样的问题,在数据下载芯片后,掉电后也不会丢失,唯一的缺 点是c p l d 芯片数据擦写次数往往有限,对产品开发阶段的技术设计人员要求较 高。 f p g a 结构中查找表是一个是产生所需逻辑电路的核心部分,查找表 ( l o o k - u p t a b l e ) 简称u j t ,它本质上是一个r a m ,目前f p g a 中多使用4 输入的 u 丌,所以每一个u j t 可以看成一个有4 位地址线的1 6 x l 的r a m 。当用户通过原 理图或h d l 语言描述一个逻辑电路以后,f p g a 开发软件会自动计算逻辑电路的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论