VHDL语言的主要描述语句.doc

VHDL语言的主要描述语句.doc

ID:55926265

大小:100.50 KB

页数:17页

时间:2020-06-15

VHDL语言的主要描述语句.doc_第1页
VHDL语言的主要描述语句.doc_第2页
VHDL语言的主要描述语句.doc_第3页
VHDL语言的主要描述语句.doc_第4页
VHDL语言的主要描述语句.doc_第5页
资源描述:

《VHDL语言的主要描述语句.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、VHDL语言的主要描述语句按照语句的执行顺序对VHDL语言进行分类,包含两类语句:l并行描述语句该语句的执行与书写顺序无关,总是同时被执行l顺序描述语句从仿真的角度,该语句是顺序执行的进程语句(PROCESS)是最典型的并行语句,一个构造体内可以有几个进程语句同时存在,而且并发执行。但是进程内部的所有语句都是顺序语句。一、顺序描述语句顺序描述语句只能用在进程和子程序中,它和其他高级语言一样,其语句是按照语句的出现的顺序加以执行的。如下分别介绍有关的顺序描述语句.1.WAIT语句进程在执行过程中总是处于两种状态:执行或挂起

2、,进程的状态变化受等待语句的控制,当进程执行到等待语句,就被挂起,并等待再次执行进程.等待语句的格式:*WAIT无限等待*WAITON敏感信号变化*WAITUNTIL条件满足*WAITFOR时间到(1)WAITON格式:WAITON信号[,信号]例5-1PROCESS(a,b)BEGINy<=aANDb;ENDPROCESS;该例中的进程与下例中进程相同:例5-1PROCESSBEGINy<=aANDb;WAITONa,b;ENDPROCESS;例5-2PROCESS(a,b)BEGINy<=aANDb;WAITONa,

3、b;ENDPROCESS;(2)WAITUNTIL直到条件满足格式:WAITUNTIL布尔表达式当进程执行到该语句时,被挂起;若布尔表达式为真时,进程将被启动.例:WAITUNTIL((x*10)<100)(3)WAITFOR 等到时间到格式:WAITFOR时间表达式当进程执行到该语句时,被挂起;等待一定的时间后,进程将被启动.例:WAITFOR20ns;WAITFOR(a*(b+c);(4)多条件WAIT语句例:WAITONnmi,interruptUNTIL((nmi=TRUE)OR(interrupt=TRUE))

4、FOR5us该等待有三个条件:第一,信号nmi和interrupt任何一个有一次刷新动作第二,信号nmi和interrupt任何一个为真第三,已等待5us只要一个以上的条件被满足,进程就被启动.*注意:多条件等待时,表达式的值至少应包含一个信号量的值。(5)超时等待例5-3例5-41.断言语句(ASSERT)(主要用于仿真、调试)格式:ASSERT条件[REPORT输出信息][SEVERITY级别]执行到断言语句时,判断条件,若条件满足就继续执行,否则输出文字串和错误级别信息.例:ASSERT(tiaojian=’1’)

5、REPORT“somethingwrong”SEVERITYERROR;2.信号代入语句格式:目的信号量<=信号量表达式例:a<=b;(注意区别小于等于)3.变量赋值语句格式:目的变量:=表达式例:c:=a+d4.IF语句三种书写格式:1)IF的门闩控制格式:IF条件THEN顺序执行语句;ENDIF;例5-5IF(a=’1’)THENc<=b;ENDIF;例5-62)IF语句的二选择控制格式:IF条件THEN顺序执行语句;ELSE顺序执行语句;ENDIF;例5-7ARCHITECTURErt1OFmux2ISBEGINP

6、ROCESS(a,b,sel)BEGINIF(sel=’1’)THENc<=a;ELSEc<=b;ENDIF;ENDPROCESS;ENDrt1;3)IF语句的多选择控制格式:IF条件THEN顺序执行语句ELSIF条件THEN顺序执行语句::ELSIF条件THEN顺序执行语句ELSIF条件THEN顺序执行语句ENDIF;例如:5-8LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux4ISPORT(input:INSTD_LOGIC_VECTOR(3DOWNTO0);sel:I

7、NSTD_LOGIC_VECTOR(1DOWNTO0);q:OUTSTD_LOGIC);ENDmux4;ARCHITECTURErt1OFmux4ISBEGINnn:PROCESS(input,sel)BEGINIF(sel='00')THENq<=input(0);ELSIF(sel='01')THENq<=input(1);ELSIF(sel='10')THENq<=input(2);ELSEq<=input(3);ENDIF;ENDPROCESSnn;ENDrt1;注意:条件判断输出是布尔量。1.CASE语句常用来

8、描述总线、编码和译码的行为。格式:CASE表达式ISWHEN条件表达式=>顺序处理语句END CASE;其中WHEN的条件表达式可以有4种形式:WHEN值=>顺序处理语句WHEN值

9、值

10、值

11、…

12、值=>顺序处理语句WHEN值TO值=>顺序处理语句WHENOTHERS=>顺序处理语句例:5-9LIBRARYIEEE;US

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。