- 1、本文档共116页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VHDL语言-修改后.ppt
顺序执行语句sequential statement If 语句例子 顺序执行语句sequential statement Case 语句格式 Case 表达式 is when 条件表达式= 顺序处理语句 when 条件表达式= 顺序处理语句 ……. when others= 顺序处理语句 end case 原则 : 1、完全性:表达式所有可能的值都必须说明,可以用 others 2、唯一性:相同表达式的值只能说明一次 顺序执行语句sequential statement Case 语句例子,条件表达式可以有多种形式 顺序执行语句sequential statement Case 语句例子 顺序执行语句sequential statement For loop 语句格式 For 循环变量 in 范围 loop [顺序处理语句] end loop 注意 : 循环变量不需要定义(声明);例子中 i 不需要定义 For loop 语句例子 For i in 1 to 10 loop sum=sum+1; end loop 顺序执行语句sequential statement 在loop语句中可以用next来跳出本次 循环,也可以用exit 来结束整个循环状态 next 格式:next [标号] [when 条件]; exit 格式: exit [标号] [when 条件]; For i in 1 to 10 loop sum=sum+1; next when sum=100; end loop For i in 1 to 10 loop sum=sum+1; exit when sum=100; end loop 顺序执行语句sequential statement While 语句格式 while 条件 loop [顺序处理语句] end loop While i10 loop sum=sum+1; i=i+1; end loop While 语句例子 并行处理语句concurrent statement 1、信号赋值操作 2、带条件的信号赋值语句 3、带选择的信号赋值语句 并行处理语句concurrent statement 信号赋值操作 符号“=”进行信号赋值操作的, 它可以用在顺序执行语句中, 也可以用在并行处理语句中 注意 1、用在并行处理语句中时,符号=右边的值是此条语句的敏感信号,即符号=右边的值发生变化就会重新激发此条赋值语句,也即符号=右边的值不变化时,此条赋值语句就不会执行。如果符号=右边是常数则赋值语句一直执行。 2、用在顺序执行语句中时,没有以上说法。 并行处理语句concurrent statement 赋值语句例子 Myblock: Block begin clr=‘1’ after 10 ns; clr=‘0’ after 20 ns; end block myblock process begin clr=‘1’ after 10 ns; clr=‘0’ after 20 ns; end block myblock 程序执行10 ns后clr 为1,又过 10 ns后 0赋给了clr,此时clr 以前的值1并没有清掉,clr将出现不稳定状态 程序执行10 ns后clr 为1,又过 20 ns后 clr的值变为0, 并行处理语句concurrent statement 条件信号带入语句格式 目的信号量 = 表达式1 when 条件1 else 表达式2 when 条件2 else 表达式3 when 条件3 ….. else 表达式4 注意:最后的Else 项是必须的; 满足完全性和唯一性 并行处理语句concurrent statement 条件信号带入语句例子 Block begin sel=b a; q=ain when sel=“00” else bin when sel=“01” else cin
文档评论(0)