网站大量收购闲置独家精品文档,联系QQ:2885784924

VHDL语言及程序设计.ppt

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VHDL语言及程序设计

VHDL硬件描述语言及应用 -----------一种很好的数字系统硬件电路的形式化描述实现 VHDL语言概述 VHDL中的注意事项 在VHDL语言中,大小写不加区分,但在代码中巧妙应用大小写,可以使代码变得易于阅读和规范 实体名必须与VHDL文件名相同,否则编译会出错 信号与变量,过程与函数的区分 VHDL语言程序的基本构成 库、包集合:用于存放预先编译好的程序包(PACKAGE)和数据集合体,以便不同的VHDL设计使用 实体说明:规定设计单元的输入输出接口信号和引脚 构造体:定义设计单元的具体构造和操作 VHDL语言程序的基本构成示例 库和包集合的使用 库的说明总是放在设计单元的最前面,调用方法: LIRARY?库名 USE?库名.所要调用的程序包名.ALL 具体可打开安装目录C:\altera\quartus60\libraries\vhdl下相应的文件进行学习 常用库和包集合:IEEE库中的包集合STD_LOGIC_1164,STD_LOGIC_ARITH,STD_LOGIC_UNSIGNED,其中后两个包在日本synopsys(新思)公司目录中,该公司在FPGA行列还推出了prime time静态时序分析工具 STD库中STANDARD包集合是VHDL的标准配置,使用时可以不说明 WORK库:VHDL现行工作库,可以理解为用户当前编辑的目录中所有可用的包和数据集 实体(ENTITY) 实体类似于原理图中的一个部件符号,它并不描述设计的具体功能,只是定义所需的全部输入/输出信号。实体格式如下: ENTITY?实体名?IS [GENERIC(常数名:数据类型[:设定值])]????????类属说明 ???PORT???????????????????????????????????????端口说明 ??(端口信号名1:?模式?类型; 端口信号名2:?模式?类型; 端口信号名3:?模式?类型; 端口信号名4:?模式?类型); END?实体名; 实体名:实体名必须与VHDL文件名相同,否则编译会出错 Exemple of ENTITY ARCHITECTURE 所有能被仿真的实体都由结构体(ARCHITECTURE)描述,即结构体描述实体的结构或行为,一个实体可以有多个结构体,每个结构体分别代表该实体功能的不同实现方案 结构体格式: ARCHITECTURE?结构体名?OF?实体名?IS [定义语句(元件例化);] BEGIN 并行处理语句; END?结构体名; 结构体名是对本结构体的命名,它是该结构体的惟一名称,虽然可以由设计人员自由命名,但一般都将命名和对实体的描述结合起来,例如:行为描述(BEHAVE),寄存器传输级(RTL) Exemple of ARCHITECTURE ARCHITECTURE的BLOCK子结构 子结构的使用使设计者可以把整个电路分成若干个相对独立的模块来进行描述 子结构有:BLOCK,PROCESS,SUBPROGRAMS BLOCK与ARCHITECTURE相当于整体原理图与子原理图关系,结构内部语句是并发的,如希望BLOCK有条件执行,可采用卫式BLOCK,如下: ARCHITECTURE的PROCESS子结构 PROCESS中的语句是顺序执行的,一个结构体中可以有多个PROCESS,它们之间可以通过信号进行通信 PROCESS的启动受敏感信号控制,敏感信号的变化会直接导致PROCESS的启动 ARCHITECTURE的SUBPROGRAM子结构 与高级语言中的子程序概念差不多,可以反复调用,但不能重入,结构内语句为顺序执行,有Procedure和Function之分 多个过程和函数汇集在一起构成包集合,几个包集合汇集在一起构成库 VHDL中的数据对象 在逻辑综合中,VHDL常用的数据对象有信号、变量及常量 ?信号SIGNAL:为全局变量,定义格式: SIGNAL?信号名:?数据类型[:=初始值]; 赋值格式: 目标信号名=表达式 常在结构体中用赋值语句完成对信号赋初值的任务,因为综合器往往忽略信号声名时所赋的值 常量:全局变量,在设计中描述某一规定类型的特定值不变,如利用它可设计不同模值的计数器,模值存于一常量中,对不同的设计,改变模值仅需改变此常量即可,就如上一章所说的参数化元件。 定义格式: CONSTANT?常数名:数据类型:=表达式 ?变量(VARIABLE):用于声明局部值或用于子程序中,变量的赋值符号为“:=”, 定义格式: VARIABLE?变量名:?数据类型[:=初始值] VHDL中的信号与变量 信

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档