eda课程设计-航空通信中小数分频器的设计(编辑修改稿)内容摘要:

, 最好先写系统行为级代码进行行为仿真。 如果系统行为仿真正确 , 就可以将行为级代码转化为 RTL级代码。 这种转化称之为高层次综合或者行为级综合。 转化的方法有 2 种 : 一是使用高层次综合工具自动转化 ,例如 SYNO PSYS 公司的 Behavior Compiler[3 ]。 二是使用手工方法转化。 手工方法使用很普遍 , 原因是目前高层次综合的理论和方法还不成熟 ,其工具难求或者其性能没有手工方法好。 (4) 功能 仿真 : 也叫 RTL 级仿真 , 是指不考虑延时信息的一种仿真 ,只能验证 RTL 级的行为描述是否能达到所要求的功能。 功能仿真需要的输入是 RTL 级代码、测试激励和库 (有时要调用工艺库中宏功能单元的行为级模型 )。 可利用专用的仿真工具进行仿真 ,如 Modelsim,VCS 等工具。 如果仿真不对 ,则需要检查和修改 RTL 级代码或者测试激励甚至系统方案。 仿真的过程是先对源代码进行编译 ,检查是否有语法错误。 如果没有错误 ,就将源代码转换为一种中间格式 ,便于仿真工具的内部运算。 编译的结果自动存放在一个指定的工作目录中 ,仿真的结果主 要以波形文件的形式存放。 (5) 逻辑综合 : 逻辑综合是将 RTL 级的行为描述转化为使用门级单元的结构描述。 门级的结构描述称之为网表。 网表文件主要记录的是所用工艺库门级单 9 元之间的互连关系 (即门级结构 )。 综合的输入需要 RTL 级描述、约束和工艺库。 综合时所加的约束一般比较简单 ,如时钟频率、器件型号和其他综合设置等。 综合的过程是 translate (转换 ) + map (映射 ) +optimize (优化 )。 转换是将 RTL 级行为描述转化为 RTL 级结构描述 (使用与工艺无关的通用逻辑门符号表示 )。 映射是将转换后的 结果使用工艺库门级单元的连接关系来表示 ,并根据需要进行优化 ,形成网表文件。 映射是对某种目标器件而言的一种资源分配和优化操作。 一般综合工具能将转换后的结果显示为 RTL 级原理图 ,也能将网表显示为门级原理图。 网表文件中含门级单元的延时信息 ,对连线延时有预估值或者为零 ,不同的软件处理的方法可能不同 ,暂称之为网表文件 1。 网表文件的格式可以表示成标准格式 (edif) ,也可以表示成 VHDL 或者 V erilog_ HDL 格式 (在综合工具中设置 )。 综合报告文件中含所用逻辑资源、预估出的时钟最高频率、关键路径 (延时最长的路径 , 可在软件中显示 ) 等信息。 (6) 布线前门级仿真 : 是门级功能仿真 ,一般不考虑延时。 该仿真的输入需要综合后的门级网表、工艺库和测试激励。 有的 EDA 工具不提供此仿真功能 ,可以不做。 (7) 适配 (布局布线 ) : 适配就是将网表文件映射到目标器件中的一种操作 , 是对目标器件的第二次映射 (第一次映射是综合 )。 即对网表中的每一个门级单元在器件中定位 (布局 ),并使用器件内的连线资源按照网表中的连接关系连接起来(布线 ) 同时要满足引脚分配、时钟线的分配等约束条件。 适配的输入需要网表文件 工艺库 (要使用其中的布 线模型等信息 )和约束。 适配所加的约束比较多 , 如引脚分配、时钟树的分配、模块在器件中的定位等。 适配后产生的文件有网表文件 反标文件和编程文件等。 根据适配工具和适配设置的不同 ,产生的网表文件 2可以具有不同的格式并可以设置为包含延时信息 (包括门延时和线延时 )。 反标文件含延时信息 ,使用标准格式 (SDF 格式 )表示。 编程文件用于对器件编程下载。 (8) 时序仿真 : 是最接近真实情况的一种仿真 , 因为该仿真含所有的延时信息和约束信息 (约束信息包含在网表文件 2 中 )。 时序仿真的输入需要测试激励、工艺库门级单元模型、网表文 件 2 和反标文件。 如果网表文件 2 中含有延时信息 , 则不需要反标文件。 时序仿真的结果跟延时关系极大。 延时跟工艺有关 , 10 特别是深亚微米工艺 ,线延时大大超过门延时 ,所以总延时跟布局布线关系极大。 如果仿真结果不对 , 要从约束、综合、布局布线、 RTL 级代码等环节上找原因 , 也可以借助时序分析工具找原因。 (9) 时序分析 : 使用 EDA 软件的时序分析功能能够分析所有时钟的频率、周期、关键路径和其他所有时钟路径上的延时信息 ,进行建立时间和保持时间分析和输入到输出、输入到寄存器、寄存器到输出的延时分析等 ,从而可以找出不满足 时序关系的原因所在。 时序分析是一个辅助功能 ,有时可以不做。 (10) 器件编程 : 指将适配后产生的编程文件下载到 FPGA CPLD 器件中。 下载的过程就是一个改写器件内逻辑结构的过程 ,故称之为编程。 下载使用专用的编程器或者下载电缆。 器件的编程接口一般使用 10 针 JTA G 插座。 习惯上 ,对CPLD 器件的下载叫编程 ,对 FPGA 器件的下载叫配置。 CPLD 器件基于 EEPROM 工艺或者 FLA SH 工艺 ,掉电后信息不丢失。 而 FPGA 器件基 SRAM 查找表工艺 ,掉电后编程信息会丢失 ,在下次上电后需要重新加载编程文件。 配置 方式有多种模式 , 较常用的是 PS 模式 (调试时用 )和使用配置器件模式 (产品中使用 ),它是使用一个 EPROM 型的配置芯片 ,先将编程数据烧写到配置芯片中 ,配置芯片跟 FPGA使用专用接口引脚相连。 这样 ,上电后配置芯片自动给 FPGA 加载编程数据。 也可使用单片机进行配置。 (11) 系统验证 : 先将 FPGA 芯片在测试板上进行功能验证 ,然后再到实际系统中验证。 系统验证通过后就可以在产品中使用。 至此 ,FPGA 芯片设计完成。 硬件描述语言 VHDL VHDL 语言是一种用于电路设计的高级语言。 它在 80 年代的后期 出现。 最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。 VHDL 的英文全写是: VHSIC( Very High Speed Integrated Circuit) Hardware Description 路硬件描述语言。 因此它的应用主要是应用在数字电路的设计中。 目前它在中国的应用多数是用在 FPGA/CPLD/EPLD 的设计中。 当然在一些实力较为雄厚的单位,它也被用来设计 主要用于描述数字系统的结构,行为 ,功能和接口。 除了含有许多具有硬件特征的语句外, VHDL 的语言形式、描述风格以及 11 语法是十分类似于一般的计算机高级语言。 VHDL 的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分 ,及端口 )和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。 在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。 底层嵌入功能单元是指那些通用程度较高的嵌入式功能模块,比如PLL(phase Locked Loop)、 DLL(Delay Locked Loop)、 DSP、 CPU 等。 本设计中用到了 PLL 嵌入式单元,该模块单元是通过开发平台的 IP 核生成器自动生成的(内嵌专用硬核里的内嵌专用硬核是有别于底层嵌入功能单元的,主要是指那些通用性相对较弱、不是所有 FPGA 器件都包括的硬核)。 与其他硬件描述语言相比,VHDL 具有以下特点: 功能强大、设计灵活。 VHDL 具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。 它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。 VHDL 支持同步电路、异步电路和随机电路的设 计,。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。