第四章VHDL硬件描述语言.ppt

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

西安邮电学院电信系 罗朝霞 西安邮电学院电信系 罗朝霞 3 标识符   1)保留标识符    2)短标识符   3)扩展标识符 三)数据类型 2、用户自定义数据类型   4、运算操作符 1)算术运算符      2)关系运算符   3)逻辑运算符(Logical)   4)连接运算符  上图表示,若a信号在20ns的时间内不变化,则b信号获取一个布尔‘真’值;否则获取一个布尔‘假’。 (3)signalQUIET(time) 若信号signal在time规定的时间内无变化,则返回一个布尔‘真’值。在此函数中,signal信号用于一个事件处理的触发,如一个中断处理事件。signalQUIET由电平触发。 signal‘STABLE与signal’QUIET不同之处在于:前者用于测信号signal自身的变化,后者用于信号处理其他事务。 (4)signalTRANSACTION 当信号signal有变化,有事务处理时,产生一个数值型变量的变化。信号signal每变化一次,每处理一个事务,其值都要变化一次。在程序包STD_IEEE_1164中,预定义了下面两个函数用来检测时钟沿: FUNCTION rising_edge(SIGNAL s:STD_ULOGIC)RETURN BOOLEAN; FUNCTION falling_edge(SIGNAL s:STD_ULOGIC)RETURN BOOLEAN。 利用这两个函数和信号类届性可以实现时钟信号的边沿检测。可用逻辑表达式(clkEVENT)AND(clk=1)或NOT(clkSTABLE)AND(clk=1)来判断时钟的上升沿是否到来,也可用rising_edge(clk)来检测时钟信号的上升沿;同理,可用逻箱表达式(clkEVENT)AND(clk=0)或NOT(clkSTABLE)AND(clk=0)或falling_edge(clk)来检测时钟信号的下降沿。 一、VHDL的顺序语句 二、VHDL的并行语句 一、VHDL的顺序语句 顺序语句用来定义进程、过程或函数的行为。 顺序语句完全按照程序中出现的顺序执行各条语句,在结构层次中前面语句的执行结果可能直接影响后面语句的结果,而并行语句中仅仅执行被激活的语句,而不是所有的语句.   顺序语句包括: 1、IF语句 2、CASE语句 3、LOOP语句 4、NEXT语句 5、EXIT语句 6、RETURN语句 7、NULL语句 1、IF语句 IF语句是VHDL语言中最常见﹑最基础的语句。IF语句有四种形式。 1) IF 条件 THEN 顺序语句; END IF; 格式 注意 这是一种不完整的IF语句,通常用于产生时序电路。例4-8 2) IF 条件 THEN 顺序语句1; ELSE 顺序语句2; END IF; 格式 注意 这是一种完整的IF语句,通常用于产生组合电路。例4-9 3) IF 条件 THEN IF 条件 THEN 顺序语句; END IF; END IF; 格式 注意 这是一种多重IF语句嵌套式条件句,可以产生较为丰富的条件描述,既可以产生组合电路,又可以产生时序电路,或者产生两者的混合。在使用该语句时应注意,END IF结束句的个数应该与嵌入条件句数量一致。 4) IF 条件1 THEN 顺序语句1; ELSIF 条件2 THEN 顺序语句2; …… ELSIF 条件n THEN 顺序语句n; ELSE 顺序语句n+1; END IF; 格式 注意 这类语句可以实现不同类型电路的描述。其任一分支顺序语句的执行条件是以上各分支条件相与,即语句中顺序语句的执行条件具有向上相与的功能。例4-10 2、CASE语句 CASE 条件表达式 IS

文档评论(0)

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

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

1亿VIP精品文档

相关文档