基于fpga的hdb3编码实现---毕业论文内容摘要:

)直到门级电路逐层进行描述。 另外,高层次的行为描述可以与底层次的寄存器描述和结构描述混合使用。 采用 VHDL 语言设计硬件电路时,当门级或门级以上层次的描述通过仿真检验以后,再用相应的工具将设计映射成不同的工艺。 在工艺更新时无须 原设计程序,只需改变相应的映射工具。 由此可见,修改电路和修改工艺相互之间不会产生影响。 作为 IEEE 标准的 VHDL 语言,语法严格,设计成果便于复用和交流。 一个大规模的数字系统设计不可能从门级电路开始逐步进行设计,而是一些模块电路的有机叠加。 这些模块电路可以预先设计或者使用以前设计中的存档模块。 这些模块电路可以采用 VHDL 语言进行描述且存放于库中,便于在以后设计中复用。 这样可以减小数字系统设计的工作量,缩短开发周期 5 FPGA 的设计流程 FPGA 的设计流程就是利用 EDA 开发软件 和编程工具对 FPGA 芯片进行开发的过程。 FPGA 的开发流程一般如图 1所示,包括电路设计、设计输入、功能仿真、综合优化、综合后仿真、实现、布线后仿真等主要步骤。 图 1 FPGA 开发的一般流程 1. 电路功能设计 在系统设计之前,首先要进行的是方案论证、系统设计和 FPGA 芯片选择等准备工作。 系统工程师根据任务要求,如系统的指标和复杂度,对工作速度和芯片本身的各种资源、成本等方面进行权衡,选择合理的设计方案和合适的器件类型。 一般都采用自顶向下的设计方法,把系统分成若干个基本单元,然后再把每个基本单元划 分为下一层次的基本单元,一直这样做下去,直到可以直接使用 EDA 元件库为止。 2. 设计输入 设计输入是将所设计的系统或电路以开发软件要求的某种形式表示出来,并输入给EDA 工具的过程。 常用的方法有硬件描述语言( HDL)和原理图输入方法等。 原理图输入方式是一种最直接的描述方式,在可编程芯片发展的早期应用比较广泛,它将所需的器件从元件库中调出来,画出原理图。 这种方法虽然直观并易于仿真,但效率很低,且不易维 6 护,不利于模块构造和重用。 更主要的缺点是可移植性差,当芯片升级后,所有的原理图都需要作一定的改动。 目前,在实际 开发中应用最广的就是 HDL 语言输入法,利用文本描述设计,可以分为普通 HDL 和行为 HDL。 普通 HDL 有 ABEL、 CUR 等,支持逻辑方程、真值表和状态机等表达方式,主要用于简单的小型设计。 而在中大型工程中,主要使用行为 HDL,其主流语言是 Verilog HDL 和 VHDL。 这两种语言都是美国电气与电子工程师协会( IEEE)的标准,其共同的突出特点有:语言与芯片工艺无关,利于自顶向下设计,便于模块的划分与移植,可移植性好,具有很强的逻辑描述和仿真功能,而且输入效率很高。 3. 功能仿真 功能仿真,也称为前仿真,是在 编译之前对用户所设计的电路进行逻辑功能验证,此时的仿真没有延迟信息,仅对初步的功能进行检测。 仿真前,要先利用波形编辑器和 HDL等建立波形文件和测试向量(即将所关心的输入信号组合成序列),仿真结果将会生成报告文件和输出信号波形,从中便可以观察各个节点信号的变化。 如果发现错误,则返回设计修改逻辑设计。 常用的工具有 Model Tech 公司的 ModelSim、 Sysnopsys 公司的 VCS 和Cadence 公司的 NCVerilog 以及 NCVHDL 等软件。 虽然功能仿真不是 FPGA 开发过程中的必需步骤,但却是系统设计 中最关键的一步。 4. 综合 所谓综合就是将较高级抽象层次的描述转化成较低层次的描述。 综合优化根据目标与要 求 优化所生成的逻辑连接,使层次设计平面化,供 FPGA 布局布线软件进行实现。 就目前的层次来看,综合优化( Synthesis)是指将设计输入编译成由与门、或门、非门、 RAM、触发器等基本逻辑单元组成的逻辑连接网表,而并非真实的门级电路。 真实具体的门级电路需要利用 FPGA 制造商的布局布线功能,根据综合后生成的标准门级结构网表来产生。 为了能转换成标准的门级结构网表, HDL 程序的编写必须符合特定综合器所要 求的风格。 由于门级结构、 RTL 级的 HDL 程序的综合是很成熟的技术,所有的综合器都可以支持到这一级别的综合。 常用的综合工具有 Synplicity 公司的 Synplify/Synplify Pro 软件以及各个 FPGA 厂家自己推出的综合开发工具。 5. 综合后仿真 综合后仿真检查综合结果是否和原设计一致。 在仿真时,把综合生成的标准延时文件 7 反标注到综合仿真模型中去,可估计门延时带来的影响。 但这一步骤不能估计线延时,因此和布线后的实际情况还有一定的差距,并不十分准确。 目前的综合工具较为成熟,对于一般的设计可以省 略这一步,但如果在布局布线后发现电路结构和设计意图不符,则需要回溯到综合后仿真来确认问题之所在。 在功能仿真中介绍的软件工具一般都支持综合后仿真。 6. 实现与布局布线 实现是将综合生成的逻辑网表配置到具体的 FPGA 芯片上,布局布线是其中最重要的过程。 布局将逻辑网表中的硬件原语和底层单元合理地配置到芯片内部的固有硬件结构上,并且往往需要在速度最优和面积最优之间作出选择。 布线根据布局的拓扑结构,利用芯片内部的各种连线资源,合理正确地连接各个元件。 目前, FPGA 的结构非常复杂,特别是在有时序约束条件时,需要利用时 序驱动的引擎进行布局布线。 布线结束后,软件工具会自动生成报告,提供有关设计中各部分资源的使用情况。 由于只有 FPGA 芯片生产商对芯片结构最为了解,所以布局布线必须选择芯片开发商提供的工具。 7. 时序仿真与验证 时序仿真,也称为后仿真,是指将布局布线的延时信息反标注到设计网表中来检测有无 时序违规(即不满足时序约束条件或器件固有的时序规则,如建立时间、保持时间等)现象。 时序仿真包含的延迟信息最全,也最精确,能较好地反映芯片的实际工作情况。 由于不同芯片的内部延时不一样,不同的布局布线方案也给延时带来不同的影响。 因此在布局布线后,通过对系统和各个模块进行时序仿真,分析其时序关系,估计系统性能,以及检查和消除竞争冒险是非常有必要的。 在功能仿真中介绍的软件工具一般都支持综合后仿真。 Quartus II 概述 Quartus II 是 Altera 公司 的综合性 PLD 开发 软件 ,支持原理图、 VHDL、 VerilogHDL 以及 AHDL( Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整 PLD 设计流程。 Quartus II 可以在XP、 Linux 以及 Unix 上使用,除了可以使用 Tcl 脚本 完成设计流程外,提供了完善的用户图形界面设计方式。 具有运行速度快,界面统一,功能集中,易学易用等特点。 Quartus II支持 Altera 的 IP 核,包含了 LPM/MegaFunction 宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。 对第三方 EDA 工具的良好支持也使用 8 户可以在设计流程的各个阶段使用熟悉的第三方 EDA 工具。 此外, Quartus II 通过和 DSP Builder 工具与 Matlab/Simulink 相结合,可以方便地实现各种 DSP 应用系统;支持 Altera的片上可编程系统( SOPC)开发,集系统级设计、 嵌入式软件开发 、可编程逻辑设计于一体,是一种综合性的开发平台。 Maxplus II 作为 Altera 的上一代 PLD 设计软件,由于其出色的易用性而得到了广泛的应用。 目前 Altera 已经停止了对 Maxplus II 的更新支持,Quartus II 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。 Altera 在 Quartus II 中包含了许多诸如 SignalTap II、 Chip Editor 和 RTL Viewer 的设计辅助工具,集成了 SOPC和 HardCopy 设计流程,并且继承了 Maxplus II 友好的图形界面及简便的使用方法。 Altera Quartus II 作为一种可编程逻辑的设计环境 , 由于其强大的设计能力和直观易用的接口,越来越受到 数字系统设计 者的欢迎。 9 2 HDB3 码介绍 数字基带信号 数字基带信号的传输是数字通信系统的重要组成部分之一。 在数字通信中,有些场合可不经过载波调制和解调过程,而对基带信号进行直接 传输。 为使基带信号能适合在基带信道中传输,通常要经过基带信号变化,这种变化过程事实上就是编码过程。 于是,出现了各种各样常用码型。 不同码型有不同的特点和不同的用途。 作为传输用的基带信号归纳起来有如下要求: 1 希望将原始信息符号编制成适合与传输用的码型; 2 对所选码型的电波形,希望它适宜在信道中传输。 可进行基带传输的码型较多。 AMI 码 AMI 码称为传号交替反转码。 其编码规则为代码中的 0 仍为传输码 0,而把代码中 1 交替地变化为传输码的 +11+11,、。 举例如下。 消息代码: 0 1 1 1 0 0 1 0 、 AMI 码: 0 +1 1 +1 0 0 1 0 、或 0 1 +1 1 0 0 +1 0 、 AMI 码的特点: 无直流成分且低频成分很小,因而在信道传输中不易造成信号失真。 编码电路简单,便于观察误码状况。 由于它可能出现长的连 0 串,因而不利于接受端的定时信号的提取。 HDB3 码 这种码型在数字通信中用得很多, HDB3 码是 AMI 码的改进型,称 为三阶高密度双极性码。 它克服了 AMI 码的长连 0 传现象。 NRZ, AMI, HDB3 码之间的对应关系 假设信息码为 0000 0110 0001 0000,对应的 NRZ 码、 AMI 码, HDB3 码如图 21 所示。 10 图 21 NRZ , AMI, HDB3 码型图 分析表现, AMI 码及 HDB3 码的功率谱不含有离散谱 fS 成份( fS= 1/TS,等于位同步信号频率)。 在通信的终端需将他们译码为 NRZ 码才能送给数字终端机 或数 /模转换电路。 在做译码时必须提供位同步信号。 工程上,一般将 AMI 或 HDB3 码数字信号进行整流处理,得到占空比为 的单极性归零码( RZ|τ= )。 由于整流后的 AMI, HDB3 码中含有离散谱 fS,故可用一选频网络得到频率为 fS 的正弦波,经整形、限幅、放大处理后即可得到位同步信号。 HDB3 码的编码规则 HDB3 码的编码规则: 将消息代码变换成 AMI 码; 检查 AMI 码中的连 0 情况,当无 4 个以上的连 0 传时,则保持 AMI 的形式不变;若出现4 个或 4 个以上连 0 时,则将 1 后的第 4 个 0 变为 与前一非 0 符号( +1 或 1)同极性的符号,用 V 表示( +1 记为 +V, 1 记为。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。