2022年《VHDL实用教程》完整版- .pdf
《2022年《VHDL实用教程》完整版- .pdf》由会员分享,可在线阅读,更多相关《2022年《VHDL实用教程》完整版- .pdf(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、KONXIN杭州康芯电子有限公司KONXIN第 3 章 VHDL程序结构19第 3 章 VHDL程序结构如何才算一个完整的VHDL 程序并没有完全一致的结论例如设计者注重于系统的行为仿真和仅注重综合后的时序仿真因为后者无需在程序中加入控制仿真的语句及设置相关的参数一个完整的设计实体的最低要求应该能为VHDL 综合器所接受即元件的形式而存在的VHDL 程序既可以被高层次的系统所调用也可以作为一个电路功能块而独立存在和独立运行并不是必须具备的模式实体ARCHITECTURE ? ? ? ? 32? ? ? o? ?o?11?VHDL程序中的最基本的部分最简单的VHDL程序结构中还应包括另一重要的部
2、分LIBRARY? ? ? ? ?a ? ? ? 3? ?a?t y? ? ? ? ? ?tCONFIGURATION? ?11?o? ? ? ? ?3? a ?2? ?o? 3? ?1|? ? ? 3? ? ? ? ? ? ?a ?a o?31? 3.1 实 体实体是设计实体的表层设计单元它是设计实体对外的一个通信界面外界所看到的仅仅是它的界面上的各种接口用于描述此设计实体的逻辑结构和逻辑功能这一部分是不可见的名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 37 页 -
3、 - - - - - - - - VHDL 实用教程20不同逻辑功能的设计实体可以拥有相同的实体描述而其具体的逻辑功能是由设计实体中结构体的描述确定的它可以对一个门电路一块电路板乃至整个系统进行接口描述ENTITY 实体名 IS GENERIC ( 类属表 )END ENTITY 实体名ENTITY 实体名 IS?D? ? ? ?o ? ? ?2 ?D? VHDL 的编译器和综合器来说但为了便于阅读和分辨而由设计者添加的内容可以以小写方式来表示END ENTITY nand其中的 nand 即为设计者取的实体名在实体中定义的实体名即为这个设计实体的名称已有元件的调用和连接例 2-3 中的 1
4、位全加器的设计就是在其结构体中调用了描述或门和半加器的设计实体直接使用了它们的实体名b : IN STD_LOGIC ; cob =binso =e)=D ?EDA 软件对VHDL 文件的取名有特殊要求如 h_adder.vhd? VHDL 程序的文件名取为此程序的实体名是一种比较好的编程习惯名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 37 页 - - - - - - - - - KONXIN杭州康芯电子有限公司KONXIN第 3 章 VHDL程序结构213. GEN
5、ERIC 类属说明语句类属常以一种说明的形式放在实体或块结构体前的说明部分类属与常数不同且不能再改变因此类属说明的一般书写格式如下数据类型 : 设定值 数据类型 : 设定值 ) ? ?D 1? ?2?y? ? ?2?D?Y?2?D? ? ?3?DD?a ?D? ? ?PORT? ?D? ? ?D? ? ? ?a? ?DD?a2?-? 11? ? ?D? ? ?D 2?D?a?t ?y? y? ?| ?3 y? ? ?y? ? ? ?t ? ? ?3?o?Y?aD?2?y?DD? ?D? 常 数名 是由设计者确定的类属常数名设定值 即为常数名所代表的数值VHDL 综合器仅支持数据类型为整数的类属
6、值 ENTITY mcu1 IS GENERIC (addrwidth : INTEGER := 16); PORT( add_bus : OUT STD_LOGIC_VECTOR(addrwidth-1 DOWNTO 0) ); .在这里即定义add_bus 为一个16 位的标准位矢量其中所以这类似于将上例端口表写成对于类属值addrwidth的改变将对结构体中所有相关的总线的定义同时作了改变名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 37 页 - - - - -
7、- - - - VHDL 实用教程22ENTITY PGAND2 IS GENERIC ( trise : TIME := 1 ns; tfall : TIME := 1 ns ) ; PORT ( a1 : IN STD_LOGIC ; a0 : IN STD_LOGIC ; z0 : OUT STD_LOGIC );END ENTITY PGAND2;这是一个准备作为2 输入与门的设计实体的实体描述tfall为下沿宽度这两个参数用于仿真模块的设计它在例化语句中调用了程序3-4?3D3-4中的类属变量n 并没有如程序3-2那样明确规定了它的取值并在两个不同的类属映射语句中作了不同的赋值显然为
8、方便而迅速地改变电路的结构和规模提供了极便利的条件程序 3-4程序 3-5名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 37 页 - - - - - - - - - KONXIN杭州康芯电子有限公司KONXIN第 3 章 VHDL程序结构23 u2: andn GENERIC MAP (n =5) PORT MAP (a(0)=d3,a(1)=d4,a(2)=d5, a(3)=d6,a(4)=d7, c=q2); END;程序 给出了类属映射语句()配合端口映射语句()
9、语句的使用范例描述元件间端口的衔接方式的它描述相应元件类属参数间的衔接和传送方式作一些相关的练习其端口表部分对设计实体与外部电路的接口通道进行了说明MODEo y?Y D? ? ? 1?和引导一些对库和程序包使用的说明语句实体端口说明的一般书写格式如下端口名 : 端口模式数据类型 ) ;其中的 端口名 是设计者为实体的每一个对外通道所取的名字如输入或输出等这是由于 VHDL 是一种强类型语言内部信号和操作数的数据类型有严格的规定一个实体通常有一个或多个端口实体与外界交流的信息必须通过端口通道流入或流出图 3-1是它对应的原理图程序 3-6? ?a2? ?3?D?o?a? 2?-1|? ? ?
10、? ?| ?t ?o?a2?y? ? ? ? ? ?a2?y?D?o? ?acbnand2图 3-1 nand对应的原理图符号名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 37 页 - - - - - - - - - VHDL 实用教程24h IN 模式并规定为单向只读模式Variable信息读入设计实体中OUT 定义的通道确定为输出端口可以通过此端口将信号输出设计实体h INOUT模式即从端口的内部看也可以通过此端口读入外部的数据信息信号既可以从此端口流出INOUT
11、模式包含了IN ? ? ?D?o?2? ?a?因此在程序中很方便地实现了P0 口作为可读可写的双向端口的功能BUFFER 定义的通道确定为具有数据读入功能的输出端口程序 3-7WR : IN STD_LOGIC; -读禁止读数BUFFER 模式从本质上将仍是OUT 模式即允许内部回读输出的信号, 即允许反馈可将计数器输出的计数信号回读与INOUT模式相比BUFFER 的区别在于回读而是由内部产生有时往往在时序上有所差异即利用 BUFFER 建立一个缓冲模式的端口或在结构体内定义一个缓冲节点信号SIGNAL?-1|名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -
12、- - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 37 页 - - - - - - - - - KONXIN杭州康芯电子有限公司KONXIN第 3 章 VHDL程序结构25能和综合后的电路都是一样的由图 3-2可以看出而可能是一种电路的接口方式程序 3-8程序 3-9? ? ?y?3 ?DOUT 相当于只可输出的引脚与 TRI 引脚不同名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 37 页 - - - - - - - - - VH
13、DL 实用教程26相当于双向引脚OUT表 3-1 端口模式说明端口模式端口模式说明 IN输入单向赋值模式 BUFFER具有读功能的输出模式从内部看可以读或写在实用中位BIT_VECTOR则其信号值是一个1 位的二进制数如程序3-3的端口a0这是取自 IEEE 库中 STD_LOGIC_1164程序包中BIT数据类型的定义则其信号值 是 一 组 二 进 制 数从 而 构 成 一 个 地 址 总 线 端 口 3.2 结构体结构体是实体所定义的设计实体中的一个组成部分结构体由两大部分组成常数子程序和元件等元素的说明部分h描述实体逻辑行为的它们包括各种形式的顺序描述语句和并行描述语句h以元件例化语句为
14、特征的外部元件如程序 2-3?11?| ? ?2?11o? ? ? ? ?DD?a?11?2?¥ ? ? ?D? CONFIGURATION配置语句指明用于综合的结构体和用于仿真的结构体一个实体只能对应一个结构体如果实体代表一个器件符号当把这个符号例化成一个实际的器件安装到电路上时即指定一种实现方案图 3-2 程序 3-8或 3-9综合后的电路图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 37 页 - - - - - - - - - KONXIN杭州康芯电子有限公司K
15、ONXIN第 3 章 VHDL程序结构27个结构体ARCHITECTURE 结构体名 OF 实体名 IS 说明语句 BEGIN 功能描述语句END ARCHITECTURE 结构体名 ;在书写格式上而结构体名 可以由设计者自己选择结构体的取名不可相重ARCHITECTUREBEGIN?11?D?3D2-2中的实体名是Latch在说明语句部分它的数据类型定义为 STD_LOGIC?11?2?11? ? ?11? ? ?2? 32. 结构体说明语句结构体中的说明语句是对结构体的功能描述语句中将要用到的信号(SIGNAL)常 数 (CONSTANT)函 数 (FUNCTION)和 过 程(PROCE
16、DURE) 等加以说明在一个结构体中说明和定义的数据类型元件如果希望这些定义也能用于其它的实体或结构体中3. 功能描述语句结构如图3-3所示的功能描述语句结构可以含有五种不同类型的以并行方式工作的语句结构而在每一语句结构的内部可能含有并行运行的逻辑描述语句或顺序运行的逻辑描述语句这五种语句结构本身是并行语句如进程语句内所包含的是顺序语句h块语句是由一系列并行执行语句构成的组合体h进程语句定义顺序语句模块或内部的运算数据向其它的信号进行赋值名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL实用教程 2022年VHDL实用教程完整版- 2022 VHDL 实用教程 完整版
限制150内