秦晓飞系列-eda技术vhdl版-第8章 vhdl设计深入

上传人:ji****en 文档编号:111888641 上传时间:2019-11-04 格式:PPT 页数:35 大小:1,007.01KB
返回 下载 相关 举报
秦晓飞系列-eda技术vhdl版-第8章 vhdl设计深入_第1页
第1页 / 共35页
秦晓飞系列-eda技术vhdl版-第8章 vhdl设计深入_第2页
第2页 / 共35页
秦晓飞系列-eda技术vhdl版-第8章 vhdl设计深入_第3页
第3页 / 共35页
秦晓飞系列-eda技术vhdl版-第8章 vhdl设计深入_第4页
第4页 / 共35页
秦晓飞系列-eda技术vhdl版-第8章 vhdl设计深入_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《秦晓飞系列-eda技术vhdl版-第8章 vhdl设计深入》由会员分享,可在线阅读,更多相关《秦晓飞系列-eda技术vhdl版-第8章 vhdl设计深入(35页珍藏版)》请在金锄头文库上搜索。

1、第8章 VHDL设计深入 主讲教师:秦晓飞 上海理工大学光电学院 第8章 VHDL设计深入 8.1 数据对象 8.2 含高阻输出的电路设计 8.3 顺序语句归纳 8.4 并行赋值语句讨论 8.5 IF语句概述 8.6 仿真延时 8.7 VHDL的描述风格 8.1 数据对象 8.1 数据对象 VHDL的数据对象有3类,常量(Constant)、变量(Variable)、信号( Signal)。书上把3种数据对象比作3种不同形状的酒瓶,将酒瓶中装的不同 类型的酒比作数据类型。 常量和变量与软件语言中的概念类似,较好理解。信号具有更多的硬件 特征,本节通过信号与变量的比较,深入介绍它们的特性。 8.

2、1.1 常数 8.1.2 变量 8.1.3 信号 8.1 数据对象 8.1.1 常数 常数的定义和设置主要是为了使程序更容易阅读和修改。常数一旦做了 赋值定义后就不能改变。语法如下: 举例: 常数定义所允许的设计单元:程序包、实体、结构体、进程、块、子程 序。 常数的可视性:即常数的使用范围取决于它被定义的位置。 8.1 数据对象 8.1.2 变量 变量的主要作用是在进程中作为临时的数据存储单元。定义语法如下: 举例: 变量定义所允许的设计单元:只能在进程和子程序中。 变量的可视性:是一个局部量,适用范围仅限于定义了变量的进程和子 程序的顺序语句中。 变量的初值:不是必须的,定义的初值只对仿真

3、器有效,对综合器不一 定有效,有的综合器不支持设置初值(Quartus II支持)。 变量的赋值:是一种理想化的数据传输,立即发生,不存在延时。 8.1 数据对象 8.1.3 信号 信号可以作为设计实体中并行语句模块间的信息交流通道。信号作为一 种数值容器,不但可以容纳当前值,也可以保持历史值,这与触发器的记忆 功能对应。 信号的初值:不是必须的,定义的初值只在行为仿真中有效。 信号定义所允许的设计单元:只能在实体、结构体和程序包中,不能在 进程和子程序中。 信号的可视性:是一个全局量,在实体中定义的信号,在其对应的结构 体中都是可见的(当然在其包含的进程中也是可见的)。进程的敏感表只能 包含

4、信号,不能包含变量,因为只有信号才能把进程外的信息代入进程内部 ,或者将进程内的信息带出进程。 信号与端口:端口也是信号,只不过指明了信号流向,输出端口不能读 入,输入端口不能被赋值。信号可看成实体内部的端口,没有指明信号流向 ,可读入也可被赋值。 8.1 数据对象 8.1.3 信号 信号的赋值:数据不是即时被传入目标信号的,可以设定延时量,即使 设置零延时,赋值生效也要经历一个特定的延时,即延时,也称仿真延 时。这与实际器件的传输延时特性对应。与变量赋值完全不同。延时设置 AFTER x ns仅对VHDL仿真有效,无法综合。 信号的赋值可以出现在进程中,也可以在并行语句中。前者是顺序信号 赋

5、值,允许对同一目标信号进行多次赋值;后者是并行信号赋值,不允许对 同一目标信号进行多次赋值。但进程之间是并行的,并行赋值不允许对同一 信号进行同时赋值,这在电路上相当于“短路”或“线与”。进程中的同一 信号的多个赋值源,只有最后的赋值语句被启动并生效。 8.1 数据对象 8.1.3 信号 用AFTER语句可在不同时间序列对同一信号进行赋值。AFTER指定的时间 是同时开始计时的,显然后面的时间值要比前面的时间值大。 举例: 8.1 数据对象 8.1.4 进程中的信号赋值与变量赋值 例8-1和8-2都是D触发器正确的,可综合的描述。 这里的变量 Q1不再只是 暂存数据功 能,与非完 整条件语句

6、构成时序电 路。 这里的QZ), 高阻态之间发生“线与”是没问题的。如果换成others=0或其他就会综合出错 了。例8-11如果使用四个并列的process也可以综合出正确的三态总线电路。 8.3 顺序语句归纳 8.3 顺序语句归纳 8.3.1 进程语句格式 8.3.2 进程结构组成 (1)进程说明部分:定义一些局部量,如数据类型、常数、变量、属性、子 程序等。但不能定义信号和共享变量。 (2)顺序描述部分:包括信号赋值语句、变量赋值语句、进程启动语句(如 wait)、子程序调用语句、顺序描述语句(如if、case、loop等)、进程跳 出语句(如next、exit等)。 (3)多数VHDL

7、综合器要求敏感信号列表必须列出本进程中所有输入信号。 8.3 顺序语句归纳 8.3.2 进程要点 (1)process为无限循环语句 进程只有两种状态:运行或等待。进程运行结束后自动返回,不许软件 语言中的返回语句。 (2)进程中的顺序语句具有顺序和并行双重性质 严格讲,VHDL程序不能称为“程序”,而应称为“代码”,语句的运行 不能称为“执行”,而应称为“实现”。Process的执行时间固定为一个延 时,1000条和10条顺序语句执行时间是一样的。 (3)信号可以是多个进程间的通信线 多个进程之间是并行同步执行的,进程间的通信可通过信号实现。 (4)一个进程中只允许描述对应一个时钟信号的同步

8、时序逻辑 尽管同一进程中可放置多条条件语句,但推荐只放置一个含有时钟边沿 检测的条件语句。异步时钟逻辑和多时钟逻辑必须由多个进程来表达。 8.4 并行赋值语句讨论 8.4 并行赋值语句讨论 并行语句并不等于总是并行且同时被执行。例如不同进程之间是并行的 ,除非它们具有完全相同的敏感表,否则不可能完全并行运行。 8.5 IF语句概述 8.5 IF语句概述 (1)不完整条件语句, 常用来产生时序逻辑。 (2)完整条件语句,常用来 产生组合逻辑。 (3)嵌套条件语句,可用来 产生组合、时序、混合逻辑。 (4)多分支条件语句,特点是任一分支 的执行条件是以上各分支条件的相与。有 的逻辑正好需要这种功能

9、,比如例8-14。 8.5 IF语句概述 8.5 IF语句概述 8.6 仿真延时 8.6 仿真延时 延时的设置只是用来仿真的。本节介绍的固定延时和传输延时需要手动 设置,用来进行行为仿真建模;如果源文件中不设置这两种延时,EDA软件也 可以使用门级仿真器对选定的FPGA或CPLD进行时序仿真。 8.6.1 固有延时(惯性延时) 物理意义是分布电容对脉冲能量的吸收效应。当信号的脉宽小于器件的 固有延时时,器件对输入信号不作任何反应。 8.6.2 传输延时 表达输入和输出之间的一种绝对延时关系。 8.6 仿真延时 8.6.3 仿真 不管是时序仿真还是功能仿真,都是在计算机中用软件实现的。软件是 顺

10、序执行的,有先后顺序。为了仿真并行逻辑特性,VHDL仿真器和综合器自 动为系统中的信号配置一个足够小而又满足逻辑排序的延时量,即仿真软件 的最小分辨时间,称之为仿真(simulation Delta),或延时。 8.7 VHDL的描述风格 8.7 VHDL的描述风格 实际开发中,将VHDL的描述分为可综合描述和不可综合描述更有意义。 可综合描述通常又称为RTL描述,这里的RTL已经失去字面意义。过多的讨论 或牵强的归属VHDL程序结构属于哪种描述风格,没有理论意义和工程价值。 这几种描述只是原来小规模低速逻辑器件设计思想的遗留。 8.7.1 RTL描述 RTL(Register Transpo

11、rt Level),寄存器传输级。 RTL的概念产生于对电路的描述,这种描述以寄存器为特征,中间插入各 种组合逻辑。传统的RTL电路是一系列的组合电路模块和寄存器电路模块相互 间级联而成,信号具有逐级传输特征。 目前RTL的概念已经泛化,具有两方面的意思: (1)RTL描述。指电路是“实际存在的”“真实的”,因此把可通过综 合器生成实际电路的HDL代码形式称之为RTL描述。 (2)RTL级orRTL电路。指电路模块的表述层次。行为级、系统级、RTL 级、门极、晶体管级、物理级。比如现在习惯把功能仿真称之为RTL级仿真, 把时序仿真称为门级仿真。 8.7 VHDL的描述风格 8.7.2 行为描述 两方面的含义: (1)从VHDL仿真的角度看,凡是可以在VHDL仿真器上进行仿真测试的, 且允许含有不可综合语句的系统模型都可称为行为描述模型。 (2)从具体描述方法看,只描述功能或行为,不涉及硬件结构,即只表 达输入和输出间转换行为,不包含任何结构信息。 行为描述是抽象程度最高的描述,是自顶向下设计的基础。 8.7.3 数据流描述 传统上也成RTL描述,只不过更注重非结构话的并行语句描述。 8.7.4 结构描述 基于基本元件和底层模块例化语句进行的描述,是实现层次化、模块化 设计的基础。 谢谢!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号