VHDL描述逻辑门电路.ppt_第1页
VHDL描述逻辑门电路.ppt_第2页
VHDL描述逻辑门电路.ppt_第3页
VHDL描述逻辑门电路.ppt_第4页
VHDL描述逻辑门电路.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VHDL描述逻辑门电路 一 库和程序包 库和程序包用来描述和保留元件 类型说明函数 子程序等 以便在其它设计中可以随时引用这些信息 提高设计效率 库 LIBRARY 库是经编译后的数据的集合 它存放包集合定义 实体定义 结构定义和配置定义 一 库和程序包 USE语句指明库中的程序包 一旦说明了库和程序包 整个设计实体都可以进入访问或调用 但其作用范围仅限于所说明的设计实体 USE语句的使用将使所说明的程序包对本设计实体部分或全部开放 库语句的格式为 LIBRARY库名 一 库和程序包 USE语句有以下两种常用的格式 USE库名 程序包名 项目名 USE库名 程序包名 ALL 第一种语句格式的作用是向本设计实体开放指定库中的特定程序包内的所选定的项目 第二种语句格式的作用是向本设计实体开放指定库中的特定程序包内的所有内容 二 库和程序包 例如 LIBRARYIEEE USEIEEE STD LOGIC 1164 ALL USEIEEE STD LOGIC 1164 STD ULOGIC 此例中 第一个USE语句表明打开IEEE库中的STD LOGIC 1164程序包 并使程序包中的所有公共资源对本语句后面的VHDL设计实体程序全部开放 关键词ALL代表程序包中的所有资源 第二个USE语句开放了程序包STD LOGIC 1164中的STD ULOGIC数据类型 STD ULOGIC 可枚举数据类型 一 库和程序包 VHDL中的库大致可归纳为5种 IEEE库 常用的资源库 IEEE库包含经过IEEE正式认可的STD LOGIC 1164包集合和某些公司提供的一些包集合 如STD LOGIC ARITH 算术运算库 STD LOGIC UNSIGNED等 STD库 VHDL的标准库 库中存放有称为 standard 的标准包集合 其中定义了多种常用的数据类型 均不加说明可直接引用 STD库中还包含有称为 textio 的包集合 在使用 textio 包集合中的数据时 应先说明库和包集合名 然后才可使用该包集合中的数据 ASIC矢量库 在VHDL语言中 为了进行门级仿真 各公司可提供面向ASIC的逻辑门库 在该库中存放着与逻辑门一一对应的实体 为了使用面向ASIC的库 对库进行说明是必要的 一 库和程序包 WORK库 WORK库是现行作业库 设计者所描述的VHDL语句不需要任何说明 将都存放在WORK库中 WORK库对所有设计都是隐含可见的 因此在使用该库时无需进行任何说明 用户定义库 用户定义库简称用户库 是由用户自己创建并定义的库 设计者可以把自己经常使用的非标准 一般是自己开发的 包集合和实体等汇集成在一起定义成一个库 作为对VHDL标准库的补充 用户定义库在使用时同样要首先进行说明 上述5类库中 除了STD库和WORK库之外的其它库均为资源库 资源库是存放常规元件和标准模块的库 使用时需预先说明 二 库和程序包 LIBRARYIEEE USEIEEE STD LOGIC 1164 ALL USEIEEE STD LOGIC ARITH ALL USEIEEE STD LOGIC UNSIGNED ALL 二 VHDL的实体 Entity ENTITYISPORT 端口名 端口类别信号类型 端口名 端口类别信号类型 END 注意 实体应以语句 ENTITY实体名IS 开始 语句 ENDENTITY实体名 结束 实体名 对实体的命名 要求实体名必须与存盘文件名相同 二 VHDL的实体 Entity ENTITYadderISPORT a b cin INBIT s co OUTBIT ENDadder 二 VHDL的实体 Entity 端口说明描述端口的名称 模式和数据类型 端口 实体的每一个输入 输出信号称为端口 对应于硬件电路图或芯片的一个引脚 端口说明 端口名称 对端口的命名 是端口的标识符 端口模式 说明端口信号的流动方向 ENTITYISPORT 端口名 端口类别信号类型 端口名 端口类别信号类型 END 其中端口名是设计者为实体的每一个对外通道所取的名字 通常为英文字母加数字 名字的定义有一定的惯例 如Clk表示时钟 D开头的端口名表示数据 A开头的端口名表示地址 ClkDataAddress 端口类别是指这些通道上的数据流动的方式 如输入或输出等 端口模式有以下几种类型 端口的五种模式 输入模式 IN 输出模式 OUT 双向模式 INOUT 缓冲模式 BUFFER 端口的五种模式 1 输入 IN 允许信号进入实体 主要用于时钟输入 控制输入 如load reset enable clk 和单向的数据输入 如地址数据信号address 等 端口的五种模式 2 输出 OUT 输出模式只允许信号离开实体 常用于计数输出 单向数据输出 被设计实体产生的控制其他实体的信号等 注意 输出模式不能用于被设计实体的内部反馈 因为输出端口在实体内不能看做是可读的 端口的五种模式 3 双向模式 INOUT 双向模式允许信号双向传输 既可以进入实体 也可以离开实体 双向模式端口允许引入内部反馈 端口的五种模式 4 缓冲 BUFFER 缓冲模式允许信号输出到实体外部 但同时也可以在实体内部引用该端口的信号 缓冲端口既能用于输出也能用于反馈 缓冲模式用于在实体内部建立一个可读的输出端口 例如计数器输出 计数器的现态用来决定计数器的次态 端口的五种模式 端口模式可用下图说明 图中方框代表一个设计实体或模块 Out与Buffer的区别 OUT BUFFER 缓冲 Buffer 与Output类似 但允许该管脚名作为一些逻辑的输入信号 三 结构体 结构体描述了基本设计单元 实体 的结构 行为 元件及内部连接关系 也就是说它定义了设计实体的功能 规定了设计实体的数据流程 制定了实体内部元件的连接关系 结构体对其基本设计单元的输入和输出关系可用以下三种方式进行描述 即行为描述 基本设计单元的数学模型描述 寄存器传输描述 数据流描述 和结构描述 逻辑元件连接描述 三 结构体 结构体是对实体功能的具体描述 因此它一定要跟在实体的后面 结构体格式 ARCHITECTUREOFIS 结构体说明部分 BEGIN END结构体名 三 结构体 ENTITYnand2ISPORT a b INBIT p OUTBIT ENDnand2 ARCHITECTUREbehaveOFnand2ISBEGINp anandb ENDbehave 三 结构体 ENTITYnor2ISPORT a b INBIT p OUTBIT ENDnand2 ARCHITECTUREbehaveOFnor2ISBEGINp anorb ENDbehave 例 采用数据流描述方式设计 依据真值表 LIBRARYIEEE USEIEEE STD LOGIC 1164 ALL ENTITYnor2 v2ISPORT a b INSTD LOGIC y OUTSTD LOGIC ENDnor2 v2 ARCHITECTUREdataflowOFnor2 v2ISBEGINPROCESS a b VARIABLEcomb STD LOGIC VECTOR 1DOWNTO0 BEGINcomb a aby001010100110 CASEcombISWHEN 00 yyyyy X ENDCASE ENDPROCESS ENDdataflow aby000011101110 例 采用行为描述方式设计的异或门 依据逻辑表达式 LIBRARYIEEE USEIEEE STD LOGIC 1164 ALL ENTITYxor2 v1ISPORT a b INSTD LOGIC y OUTSTD LOGIC ENDxor2 v1 ARCHITECTUREbehaveOFxor2 v1ISBEGINy aXORb ENDbehave 例 采用数据流描述方式设计的异或门 依据真值表 LIBRARYIEEE USEIEEE STD LOGIC 1164 ALL ENTITYxor2 v2ISPORT a b INSTD LOGIC y OUTSTD LOGIC ENDxor2 v2 ARCHITECTUREdataflowOFxor2 v2ISBEGINPROCESS a b VARIABLEcomb STD LOGIC VECTOR 1DOWNTO0 BEGINcomb a 三态门 三态门真值表 lVHDL语言描述 libraryieee useieee std logic 1164 a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论