教育界杂志社官网 咨询电话:15198177376  投稿邮箱:jyjzzs@126.com 

基于CPLD的8B10B编码器模型的设计

更新时间:2015-12-10浏览:评论: 条

    周庆芳

  (曲靖师范学院 教育技术研究所 云南曲靖市 655011)

  关键字:FPGA 8B10B EDA

  1. 前言

  8B10B编码技术广泛应用在串行连接SCSI、串行ATA、光纤链路、以太网、XAUI、PCI Express总线、Infini Band、Serial Rapid IO、Hyper Transport总线以及IEEE1394b接口(火线)等技术中[1]。8B10B2将8bit代码组合编码成10bit代码,代码组合包括256个数据字符编码和12个控制字符编码,通过仔细选择编码方法可以获得不同的优化特性[2]。在高速串行流中,如果1码元或者0码元有连续多位没有发生变化,就会因为电压的关系而产生误码[3]。8B10B编码方式保证了直流平衡,保证在串行码元流中不会产生超过4个连续的1码元或者0码元,从而防止码间干扰。

  2. 8B10B编码器的实现

  2.1 8B10B编码器顶层设计思路

  8B10B是一个线路编号,其标注了一个8位符号到10位符号来完成直流平衡和有界视差。这是信号的一个重要属性,其需要在很高速率下发送因为它帮助减少符号间干扰。8位数据被当作一个10位的实体叫做符号或一个字符来传输。这个数据的低5位被编码成6位的组,最高的3位被编码成一个4位组。这些编码被连接在一起在电线上传输来组成10位的符号[5]。

  本文的8B10B编码器采用层次描述方式,也采用原理图输入和文本输入混合方式建立描述语言。8B10B编码器由indata模块、B3B4模块、B5B6模块、outdata模块组成。indata模块实现输入8位信号,并行输出3位信号和5位信号,为下一步3B4B编码和5B6B编码作基础准备。B3B4模块实现了输入3位码元,通过查表法,输出相对应的4位编码。indata模块与B3B4 模块、B5B6模块之间的数据总线分别为3位和5位。Outdata模块与B3B4模块、B5B6模块之间的数据总线分别为4位和6位。

  2.2 indata模块设计

  本文使用VHDL语言设计indata数据分流模块。VHDL语言对时序器件功能和逻辑行为有强大的描述能力,体现与设计平台和硬件实现对象无关性的优秀特点。

  运行QuartusII软件,按要求新建工程文件,在设计窗口输入indata分流模块的VHDL设计程序后,在Quartus上进行综合。综合过程就是把VHDL语言设计的HDL描述与硬件结构挂钩,实现了将软件转换为硬件电路。综合就是根据给定的硬件结构组件和约束控制条件进行编译、优化、转换,最后将电路的高级语言转换成可与FPGA/CPLD基本机构相映射的网表文件。B3B4模块由encode3B4B1模块、encode3B4B2模块、mux2_3B4B模块构成。encode3B4B1模块和encode3B4B2模块实现输入3位码元,根据3B4B编码算法,应用查表法,编码输出4位码元。其中,encode3B4B1模块实现RD-的编码功能,encode3B4B2实现RD+编码。mux2_3B4B模块的功能是实现通过en的高低电平来选择相对应的4位码元输出。encode3B4B1模块、encode3B4B2模块、mux2_3B4B模块都采用VHDL设计方式。B5B5模块由encode5B6B1模块、encode5B6B2模块、mux2模块组成。encode5B6B1模块和encode5B6B2模块根据B5B6编码算法,采用查表法来实现输入5位码元,输出6位码元的功能。encode5B6B1模块、encode5B6B2模块、mux2模块都采用VHDL设计方式,设计思路与B3B4模块的设计相似。

  2.3时序仿真验证

  电路设计完成后,需要进行功能仿真和时序仿真,验证设计结果是否满足设计要求。通过实践证明,虽然输出有延迟和毛刺,但是结果与预测的8B10B编码输出相同。因此,本文的8B10B编码器基本满足8B10B的算法,能够正确输出相应的编码。

  3. 总结

  本文基于Altera公司开发的Quartus II开发平台,利用EDA技术,采用VHDL程序设计输入和原理图设计输入混合设计的方式,提出一种简单实用的8B10B编码器的实现方法,完成了8B10B编码器模型的设计。该模型输入输出特性满足8B10B基本原理和核心算法,基本实现了设计要求。

  参考文献:

  [1]杨军,周克峰:《创新实验指导书》,云南大学信息学院电路实验室,2005年。

  [2]杨军,龙飞,徐炜:《Quartus II实验指导书》,云南大学滇池学院现代教育技术中心,2006年。

  [3]李宗伯:《VHDL设计表示和综合》,机械工业出版社,2002年

  [4]朱正伟:《EDA技术及应用》,清华大学出版社,2005年。

  [5]潘松,黄继业:《EDA技术与VHDL》,清华大学出版社,2005年

    奇速优客
    奇速优客
    奇速思维导图
    奇速中高考