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

[信息与通信]VHDL集成电路第三章.ppt

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

3.2.3 库、程序包及配置 1. 库 库由一个或多个程序包构成。我们往往把一些密切相关 的、可重复利用的设计资源(如函数、过程、元件等) 放在一个程序包中,再把性质相近、功能类似的程序包 归于同一个库中. 图3-4 库的基本组成部分 表3-2 VHDL中常用的库和包 库名 程序包名 定义内容 STD STANDARD 定义BIT、BIT_VECTOR、INTEGER等数据类型 TEXTIO 对文本文件进行读写操作的过程和函数 IEEE STD_LOGIC_1164 定义STD_LOGIC、STD_LOGIC_VECTOR数据类型 ST_LOGIC_SIGNED 定义STD_LOGIC、STD_LOGIC_VECTOR数据类型的有符号的算术运算(如+、-、*等) STD_LOGIC_UNSIGNED 定义STD_LOGIC、STD_LOGIC_VECTOR数据类型的无符号的算术运算(如+、-、*等) STD_LOGIC_ARITH 定义了UNSIGNED 、SIGNED、SMALL_INT三种数据类型,并定义了上述类型及STD_LOGIC的混合算术运算、比较操作函数、数据类型转换函数。 使用一个库之前,需要首先对库进行声明。经过声明之后,在设计中就可以 调用库中的代码了。 库说明语句的一般语法结构为: LIBRARY 库名; USE 库名.程序包名.项目名; 例如:LIBRARY IEEE;   USE IEEE.STD_LOGIC_1164.ALL --开放该程序包 --的所有项目   USE IEEE.STD_LOGIC_UNSIGNED. +;--只开放+ --运算操作符 库说明语句的作用范围是从一个实体说明开始到它所属的结构 体为止,实际上可以认为在实体中是全局的。 2. 程序包 程序包的作用是收集被多个VHDL设计实体共享的数据类型、 子程序或数据对象,使之适用于更一般的访问和调用范围。 如果要使用某个程序包中的所有定义,可按如下方式去调 用这个程序包,即: USE 库名.程序包名.项目名; 3. 配置 每个实体可以有多个结构体 每个结构体的地位是相同的 利用配置语句指定一个确定的实体。 3.3 VHDL语言要素 1. 常量 常量是指在设计实体中不会发生变化的值,一旦定义赋值, 程序中不能修改。 常量定义的语法格式为: CONSTANT 常量名:数据类型 := 表达式 ; 例如: CONSTANT width: POSITIVE: = 8; CONSTANT vcc : REAL := 5.0; CONSTANT delay : TIME := 10ns; 2. 信号 信号是电子电路内部连接和电路的抽象表述,也是 描述电路的最基本方式。 信号通常在构造体说明语句、程序包首和实体说明 语句中定义,不能在进程的说明语句和子程序(包 括函数和过程)的说明语句中定义。 信号定义的语法结构为: SIGNAL 信号名:数据类型 [约束条件][ := 表达式]; 信号赋值语句的语法结构为: 目标信号名 = 表达式[AFTER 时间表达式 ];  【例3.3.1】 信号定义语句和赋值语句的举例 ARCHITECTURE m1 OF or_1 IS  SIGNAL c, d: BIT ; --信号可以在结构体说明语句中定 --义,而变量不行 BEGIN PROCESS(a,b,d ) --其中a,b为输入端口,端口类型BIT BEGIN …  c = a; --信号赋值部分  d = b AFTER 20ns ; --信号延时20ns后再赋值 END; 3. 变量 变量常用来表示临时存储的中间数据,以便于实现程序的算 法,如门与门间的连线及其连线上的信号值。 变量定义的语法结构为: VARIABLE 变量名[,… ,变量名] [约束条件] : 数据类型 [:=表达式 ]; 变量赋值语句的语法结构为: 目标变量名 :=表达式; 【例3.3.2】 变量定义语句和赋值语句的举例 PROCESS(

文档评论(0)

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

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

1亿VIP精品文档

相关文档