欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载  

    第9章VHDL结构与要素.ppt

    • 资源ID:2912366       资源大小:643.02KB        全文页数:18页
    • 资源格式: PPT        下载积分:4
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要4
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第9章VHDL结构与要素.ppt

    第9章 VHDL结构与要素,2019/6/4,2,一个完整的VHDL程序通常包括:,实体Entity,结构体Architecture,配置Configuration,包集合Package,库Library,描述所设计的系统的外部接口信号或引脚,描述系统内部的结构和行为,从库中选取所需单元来组成系统设计的不同版本,存放各设计模块都能共享的数据类型、常数和子程序,存放已经编译的实体、结构体、包集合和配置,2019/6/4,3,9.1 实体,VHDL实体作为一个设计实体(独立的电路功能结构)的组成部分,其功能是对这个设计实体与外部电路进行接口描述。 实体是设计实体的表层设计单元,实体说明部分规定了设计单元的输入输出接口或引脚,它是设计实体对外的一个通信界面。 它可以是一个简单的数字电路,也可以是复杂的数字电路,但基本构成是一致的。,例1 对于二选一器件的VHDL描述:,2019/6/4,4,ENTITY mux IS GENERIC(m:TIME:=1ns); PORT (d0,d1,sel: IN BIT); q: OUT BIT); END mux; ARCHITECTURE connect OF mux IS SIGNAL tmp:BIT; BEGIN cale:PROCESS(d0,d1,sel) VARIABLE tmp1,tmp2,tmp3:BIT; BEGIN tmp1:=d0 AND sel; tmp2:=d1 AND (NOT sel); tmp3:=tmp1 OR tmp2; tmp=tmp3; q=tmp AFTER m; END PROCESS; END connect ;,实体名,端口名,方向,实体,进程语句,结构体,2019/6/4,5,一、实体说明,基本结构:ENTITY 实体名 IS 类属参数说明; 端口说明; END 实体名;,1、类属参数说明 必须放在端口说明之前,用于指定参数。 如:q=tmp AFTER m;说明tmp建立一个延时值。 GENERIC(m:TIME:=1ns);构造体内m的值为1ns。 2、端口说明 对基本设计实体与外部接口的描述。 格式:PORT(端口名:端口模式 数据类型; 端口名:端口模式 数据类型名);,2019/6/4,6,端口名 赋予外部引脚的名称。如d0,sel,y 等 端口方向 定义外部引脚是输入还是输出。 IN输入 OUT输出(构造体内不能再使用) INOUT双向 BUFFER输出(构造体内可再使用) LINKAGE不指定方向(无论哪一个方向都可连接),OUT,BUFFER,2019/6/4,7,9.2 结构体,基本结构: ARCHITECTURE 结构体名 OF 实体名 IS 定义语句 内部信号、常数、数据类型、函数等; BEGIN 并行处理语句; END 结构体名;,通常命名为behavioral(行为), dataflow(数据流),structural(结构),位于ARCHITECTURE和BEGIN之间,对信号、常数、数据类型、函数进行定义,位于BEGIN和END之间,描述构造体的行为及连接关系,2019/6/4,8,在HDL设计中,设计者将自上至下分为3个层次:,行为描述,RTL方式描述,逻辑综合,即对整个系统数学模型的描述,一般应用在设计的初始阶段。,即寄存器传输描述(又称数据流描述),采用该描述,导出系统的逻辑表达式,进行逻辑综合。,将程序转换成基本的逻辑文件来描述,相当于人工设计时,生成了原理图。,2019/6/4,9,例:二选一的数据流方式描述: ENTITY mux IS PORT (d0,d1,sel: IN BIT); q: OUT BIT); END mux; ARCHITECTURE dataflow OF mux IS BEGIN q=(d0 AND sel ) OR (NOT sel AND d1); END dataflow ;,并行处理语句,=表示传送或代入,即将逻辑运算结果送q输出。即,2019/6/4,10,9.4 VHDL库 库是经编译后的数据的集合,存放包集合定义、实体定义、构造体定义和配置定义。 库的说明总是放在设计单元的最前面。 格式:LIBRARY 库名; 这样,在设计单元内的语句就可以使用库中的数据。 库的好处在于使设计者可以共享已经编译过的设计结果。 库的种类 VHDL语言中存在的库大致分为5种:,2019/6/4,11,IEEE库,STD库,WORK库,VITAL库,STD_LOGIC_1164 NUMERIC_BIT NUMERRIC_STD,STD_LOGIC_ARITH STD_LOGIC_SIGNED STD_LOGIC_UNSIGNED,虽没得到IEEE承认,但仍汇集在该库中,是VHDL的标准库,该库中定义了STANDARD和TEXTIO(文件输入/输出程序包)两个程序包。,现行作业库,使用时无需说明,使用VITAL库,可以提高VHDL门级时序模拟的精度,因此只在VHDL仿真器中使用。,2019/6/4,12,库的使用 除WORK和STD库之外,其它库使用前先要用两条语句对库进行说明。 如: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;,库名,包集合名,项目名,表示包集合的所有项目都要用,2019/6/4,9.5 VHDL程序包,常用的预定义的程序包,STD_LOGIC_1164程序包,STD_LOGIC_ARITH程序包,STD_LOGIC_UNSIGNED和STD_LOGIC_SIGNED程序包,STANDARD和TEXTIO程序包,13,2019/6/4,14,9.8 数据类型 9.8.1 VHDL的预定义数据类型,VHDL的预定义数据类型都在VHDL标准程序包STANDARD中定义的。,1、布尔量 Boolean 一个布尔量有两种状态:,逻辑“真” True,逻辑“假” False,2、位 Bit 逻辑0或1,通常将值放在单引号中。 如BIT(1)等,3、位矢量 Bit_VECTOR 用双引号括起来的一组位数据。 如“001100”、X“00BB”等。其中X表示十六进制。,2019/6/4,15,BIT,BIT_VECTOR,取值只能为“0”、“1”,取值可能是一组二进制位的值,例:PORT(d0,d1,sel: IN BIT ; q: OUT BIT ; bus: OUT BIT_VECTOR(7 DOWNTO 0);,都是BIT数据类型,bus是BIT_VECTOR类型,(7 DOWNTO 0)表示该bus端口由B7B0构成,位矢量长度为8位。,2019/6/4,16,9.8.3 其他预定义标准数据类型,1. 无符号数据类型(UNSIGNED TYPE),2. 有符号数据类型(SIGNED TYPE),十进制的8可以作如下表示: UNSIGNED (“1000“),两则无符号数据定义的示例: VARIABLE var : UNSIGNED(0 TO 10) ; SIGNAL sig : UNSIGNED(5 DOWNTO 0) ;,例如: SIGNED'(“0101“) 代表 +5,5 SIGNED'(“1011“) 代表 5,变量var有11位数值,最高位是var(0),信号sig有6位数值,最高位是sig(5),最高位是符号位,2019/6/4,17,9.9 VHDL语言的运算操作符,逻辑运算Logical,关系运算Relational,算术运算Arithmetic,并置运算Concatenation,1、逻辑运算符,NOT(取反)、AND(与)、OR(或)、NAND(与非)、NOR(或非)、XOR(异或) 其优先级别NOT最高,见课本P257表9-3。,2、算术运算符,+、-、*、/(加减乘除)、MOD(取模)、REM(取余)、+、-(正负)、*(指数)、ABS(取绝对值),2019/6/4,18,3、关系运算符,=、/=、= 注意: 关系运算符= 和代入符= 是相同的,在读VHDL语句时,要根据上下文关系来判断。,4、并置运算符 并置运算符&用于位的连接。 如将四个位用&连接起来,就可以构成一个具有四位长度的位矢量。,

    注意事项

    本文(第9章VHDL结构与要素.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开