当前位置:首页 > EDA > 电子设计自动化
[导读]摘要:基于卷积码的编译码原理,使用VHDL语言和FPGA芯片设计并实现了(2,1,3)卷积码编译码器。其中译码器设计采用“截尾”的Vite-rbi译码算法,在支路量度计算、路径量度和译码路径的更新与存储以及判决与

摘要:基于卷积码的编译码原理,使用VHDL语言和FPGA芯片设计并实现了(2,1,3)卷积码编译码器。其中译码器设计采用“截尾”的Vite-rbi译码算法,在支路量度计算、路径量度和译码路径的更新与存储以及判决与输出等环节的实现中采取了若干有效措施,节省了存储空间,提高了设计性能。最后通过仿真验证了设计的正确性与合理性。
关键词:FPGA;卷积码;编译码器;Viterbi译码器:VHDL

    由于卷积码具有较好的纠错性能,因而在通信系统中被广泛使用。采用硬件描述语言VerilogHDL或VHDL和FPGA(Field Programmable Gate Array——现场可编程门阵列)进行数字通信系统设计,可在集成度、可靠性和灵活性等方面达到比较满意的效果。
    文献以生成矩阵G=[101,111]的(2,1,3)卷积码为例,介绍了卷积码编码器的原理和VerilogHDL语言的描述方式;文献采用VerilogHDL语言,对(2,1,7)卷积码的Viterbi硬判决译码进行了FPGA设计。本文基于卷积码编/译码的基本原理,使用VHDL语言和FPGA芯片设计并实现了(2,1,3)卷积码编码器及其相应的Viterbi译码器,通过仿真验证了设计的正确性。

1 (2,1,3)卷积码编码器的设计
1.1 (2,1,3)卷积码编码器的原理
    卷积码编码器通常记作(n,k,N),对应于每段k个比特的输入序列,输出n个比特;这n个输出比特不仅与当前的k个输入比特有关,而且还与以前的(N-1)k个输入比特有关。(n,k,N)卷积码编码器包括:一个由Ⅳ段组成的输入移位寄存器,每段有k级,共Nk位;一组n个模2加法器;一个由n级组成的输出移位寄存器。整个编码过程可以看成是输入序列与由移位寄存器和模2加法器连接方式所决定的另一个序列的卷积。
    对于(2,1,3)卷积码编码器来说,n=2,k=1,N=3,即每输入1个信息比特时经编码后产生2个输出比特,输出比特不仅与当前的1个输入比特有关.而且还与以前的2个输入比特有关。(2,1,3)卷积编码器框图如图1所示。


    由图可以看出,输出为:
   
1.2 设计思路
    编码器为串入串出结构。这里一共定义4个端口信号,它们分别是:
   
   
    当编码使能start为0时不进行编码,并将状态state清零;start为1时进行编码,此时每2个时钟周期输入一个新的信息比特,同时状态信号改变,输出2位已编码比特,即每个时钟周期输出1位已编码比特。

2 维特比译码器的设计
2.1 维特比译码器的原理
    卷积码的译码一般采用维特比译码。维特比译码本质上是对长度为L的二进制序列的最佳译码,需要对可能发送的2L个不同的序列的2L条路径量度进行计算和比较,选取其中量度最小的一条作为幸存路径。其基础是基于网格图的描写,即对于不同的路径的量度进行比较,如某一节点上发出的某条路径已经不可能获得最大似然函数,那么就放弃这条路径,并在保存下来的路径中重新选择译码路径,一直到最后,复杂度较高。维特比译码器实际上对各个可能路径进行比较,比较原则是计算其路径的对数似然函数,而计算似然函数就是计算该路径与接收序列之间的汉明距(量度)。译码过程的操作可归纳为“加-比-选”3个部分。
    实际的维特比译码中,译码几步后可能的路径便合为一条,因此,不必等全部译出后再输出,即译码一定长度后便可将已经相同的部分输出,这样做可以大量节省译码所需路径的存储空间。只要保证译码深度在5~10倍的约束长度之间就不影响译码效果,这就是所谓的“截尾译码”。
2.2 结构框图
    维特比译码器的结构框图如图2所示。


    在设计中。将框图简化为“加”(支路量度计算)、“比选”(路径量度和译码路径的更新与存储)以及定时与控制三部分。
2.3 设计思路
2.3.1 端口及信号定义
    输入输出端口为:
   

    其中“比前路径长度”中下划线前的数字代表该路径最后停在的状态,下划线后的数字代表是由哪个状态转移过来的。如果是“0”则代表由状态号较小的状态转移过来的那条路径,反之如果为“1”则代表由状态号较大的状态转移过来的那条路径;“选后路径长度”和“译码路径”的序号表示该路径最后停在的状态号。图3为维特比译码过程的网格图。


2.3.2 定时与控制
    由时钟控制,每个时钟输入一位,每两个时钟输出一位,称为一个译码周期。在每个译码周期的前一个时钟周期内完成“加”,此时译码状态为“0”;在后一个时钟周期内完成“比和选”,译码状态为“1”。
2.3.3 支路量度计算
    由于(2,1,3)卷积码的形式已经固定,因此,可以事先把支路量度表做好,如表1所示。译码器工作时可根据输入通过查表得到“比前路径长度”的增加值,暂存到addi_j中,而后统一加入“比前路径长度”chni_j中。


2.3.4 路径量度和译码路径的更新与存储
    在到达同一状态的两条路径中选取路径长度较小的作为幸存路径,即在chnk_0和chnk_1中选择较小的存入rlengthk(k=0~3)。
    由于每个状态译码路径的最后一位在每一步中是不变的,均是"0101”(状态0~3),因此更新译码路径时只需将选中的译码路径向高位移一位后存储即可。即进行如下判断:
    1)对于新路径0的判断,如果chn0_0<=chn0_1则选择旧路径0,否则选择旧路径2;
    2)对于新路径1的判断,如果chn1_0<=chn1_1则选择旧路径0,否则选择旧路径2;
    3)对于新路径2的判断,如果chn2_0<=chn2_1则选择旧路径1,否则选择旧路径3;
    4)对于新路径3的判断,如果chn3_0<=chn3_1则选择旧路径1,否则选择旧路径3;
    其中chn0_0,chn0_1,chn1_0,chn1_l,chn2_0,chn2_1,chn3_0,chn3_1已由上一步得出。
2.3.5 判决与输出
    译码深度为10,译码的输出只需将译码路径的最高位中出现较多的一位输出,当“0”和“1”的个数相等时输出任意一个。由图4所示的卡诺图可得,译码输出的逻辑表达式为:
    dataout=(route0 (9) and routel (9)) 0r (route2 (9) and route3 (9))


2. 3.6 译码初始化
    由于刚开始译码的第一步和第二步,译码路径并未完全展开,“加-比-选”与后面的步骤略有不同。因此设置一个译码步骤计数器step,对译码前两步的“加”进行单独处理,而不改变“比选”部分。
2.3.7 路径量度的溢出
    由于路径量度是一直累加的,如果不进行处理则计数器将溢出。设计中发现,各条路径之间的路径量度相差不会太大。解决的办法是:如果有一个路径量度超过了某一门限,就将所有记录的路径量度减一个小量。在实际中,由于(2,1,3)卷积码每一步译码后路径量度最多增加2,因此为避免溢出,设置门限为8,当超过该门限时各路径量度都减小2。这样就可以用很少容量的寄存器保存任意长的路径量度。

3 仿真结果
    仿真在MaxplusII10.2环境下进行,选择FLEX1OK系列中的EPF10K30RC240-3器件。以下是部分仿真结果。
3.1 卷积码编码器仿真
    卷积码编码器的仿真波形如图5所示。在编码使能之后输入序列data_in为110111001000…(每个bit持续2个时钟周期),编码输出序列data_out为110101000110011111101100……(每个bit持续1个时钟周期),结果与文献中的例12-1完全一致。


3.2 维特比译码器仿真
    维特比译码器的仿真波形如图6所示。其中图(a)为输入无误码时的情形,图中输入序列为1101010001100111…,译码输出序列为110111 00…;图(b)为输入有误码时的情形,图中假设输入序列为1001010101100101…(其中黑体的bit为误码),则译码输出序列仍为11011100…。


    由仿真结果可以看出。用上述方法设计的卷积码编/译码器功能正确,并具有较好的纠错能力。

4 结论
    本文用VHDL语言和FPGA芯片设计并实现了(2,1,3)卷积码编码器及维特比译码器。仿真结果表明,编/译码器的功能正确,达到设计要求。在设计中采用了模块化结构,维特比译码器设计采用了截尾译码算法,节省了存储空间。另外,设计中还较好的解决了译码过程中的支路度量计算、路径量度和译码路径的更新与存储以及译码判决与输出等关键技术问题。
    由于卷积码具有相似的结构和特点,所以文中(2,1,3)卷积码编/译码器的设计思路,对其他形式的卷积码编/译码器也是适用的。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭