- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子设计自动化技术第二讲VHDL程序的基本结构 本章要点 对VHDL程序的宏观结构有一个明确的概念性认识; 认识实体、构造体的基本格式 理解实体、构造体在VHDL程序中的基本功能 能够尝试编写简单的VHDL程序。 VHDL程序组成部分及其功能 VHDL程序组成部分 基本设计单元的构成 实体和构造体两部分组成了VHDL的基本设计单元: 实体部分规定设计单元的输入输出接口信号和引脚; 构造体部分定义设计单元的具体构造或功能(行为)。 VHDL程序的基本构成格式 VHDL程序的基本构成格式说明 实体说明和构造体说明合在一起构成是VHDL的基本设计单元。 而基本设计单元配上库说明即构成VHDL基本格式。 建议:初学者首先使用 IEEE库,IEEE.STD_Logic_1164包。初学者所调用的资源一般不会超出IEEE.STD_Logic_1164包的范围,而且所有的VHDL编译工具都带有IEEE库,IEEE.STD_Logic_1164包。 实体的结构 ENTITY 实体名 IS [类属参数说明]; [端口说明]; END 实体名; 【例 2-1】 二选一选择器的实体说明 ENTITY mux IS -- 实体说明开始 PORT (d0, d1, sel : IN STD_LOGIC; q : OUT STD_LOGIC); -- 端口说明 END mux; -- 实体结束 构造体的结构 ARCHTECTURE 构造体名 OF 实体名 IS [定义语句]; --内部信号,常数,数据类型,函数等的定义 BEGIN [并行处理语句] ; END 构造体名; 【例 2-2】 二选一选择器的构造体说明 【例 2-2】 二选一选择器的构造体说明(续) ARCHITECTURE connect OF mux IS -- 构造体定义 BEGIN -- 构造体开始标记 PROCESS (d0, d1, sel) -- 进程 signal tmp1, tmp2, tmp3: std_logic; -- 信号的声明 BEGIN -- 进程开始标记 tmp1 = d0 AND sel; --信号赋值语句 tmp2 = d1 AND (NOT sel); --信号赋值语句 tmp3 = tmp1 OR tmp2; --信号赋值语句 q = tmp3; --信号赋值语句 END PROCESS; -- 进程结束 END connect; -- 构造体结束 实体基本格式 entity entity-name is port (signal-name : mode signal-type; …… signal-name : mode signal-type); end entity-name; 实体以 entity 实体名 is 开始,以end 实体名; 结束。 实体的主要内容为端口(port)说明; 要点:实体名、信号名、信号模式、信号类型 实体名、信号名 英文字母和数字构成,字母开头; 可在名称中使用单个下划线符号_; 字母不分大小写; 名称应具有意义,方便记忆; 名称不能重复使用; 很多编译器规定,文件名和项目名必须与实体名相同; 信号模式 每个端口信号都必须规定信号模式; 信号模式规定信号流动的方向; 常用信号模式: in 信号由该端口输入 out 信号由该端口输出 inout 双向端口,通常由三态门控制 buffer 输出端口,但模块内可以使用该信号 buffer信号只能定义在两个端口之间; buffer信号连接的端口模式都应为buffer; 信号类型: 所有信号都必须规定其类型; 数字电路设计中最常用的类型为: std_logic 单个逻辑量 std_logic_vector 逻辑数组、总线逻辑量 其他语法要点 除了第一行 entity … is 以外,每一句以分号“;”结束; 编写程序时,一行可以含若干句(以分号间隔),一句 也可以写若干行; 在一句结束后,可以用“--”符号后接说明文字,这些文字用于帮助理解程序,不会对编译产生影响; 单词之间必须使用空格;并列信号间使用逗号; 作 业 设计中心 VHDL程序由模块构成,每个模块对应于一个电路块; 模块至少由三部分组成: 库和包 library(设计资源) 实体 entity (外部端口) 构造体 architecture(内部结构) 实体用于描述所设
文档评论(0)