基于VHDL语言

基于VHDL语言

ID:43972583

大小:167.00 KB

页数:31页

时间:2019-10-17

基于VHDL语言_第1页
基于VHDL语言_第2页
基于VHDL语言_第3页
基于VHDL语言_第4页
基于VHDL语言_第5页
资源描述:

《基于VHDL语言》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、EDA技术——基于VHDL语言主讲教师:许钢2005.21EDA技术——VHDL顺序语句第5讲VHDL顺序语句顺序描述语句只能出现在进程(Process)或子程序中,它定义进程或子程序所执行的算法。顺序描述语句按这些语句在进程或子程序中出现的顺序执行,这一点与高级语言类似。VHDL中常用的顺序描述语句包括:信号和变量赋值、Wait、If、Case、Loop、Next、Exit、断言语句、过程调用语句、空语句等。2EDA技术——VHDL顺序语句第5讲VHDL顺序语句所有的顺序描述语句都只能在进程(pro

2、cess)中使用,进程内是顺序执行,进程与进程之间是并发的,有点类似于计算机操作系统中“进程”的概念。进程(Process)Process语句的格式:[进程名]:Process(敏感信号列表)Begin顺序描述语句;EndProcess;Process语句从Process开始,到EndProcess结束,进程名可以省略。功能相对独立的模块可以用一个进程来描述。3EDA技术——VHDL顺序语句第5讲VHDL顺序语句进程(Process)Process语句的格式:例1:Entitymux2IsPort(a

3、,b:Instd_logic;s:Instd_logic;f:Outstd_logic);Endmux2;ArchitecturebehaviorOfmux2IsBeginmux2:Process(a,b,s)BeginIf(s=‘0’)Thenf<=a;Elsef<=b;EndIf;EndProcess;Endbehavior;4EDA技术——VHDL顺序语句第5讲VHDL顺序语句进程(Process)Process的启动和敏感信号列表:进程在仿真运行中,总是处于两个状态之一:执行或挂起。初始启动时

4、,进程处于执行状态,进程中的顺序语句从前向后逐句执行一遍,即从Process执行到EndProcess之前。当最后一条语句执行完后,返回到进程开始的Process语句,进程处于挂起状态。此时,只要该进程的敏感信号列表中任何一个信号发生变化(即信号的值发生变化,如从“1”变到“0”或从“0”变到“1”),进程又再次处于执行状态。然后,再挂起,再执行,一直循环下去,直到仿真结束。从硬件方面来看,一个Process相当于一个电路模块,它的敏感信号列表指明了所有能引起该电路模块状态发生改变的信号。例1中mux

5、2进程的敏感信号列表是(a,b,s),三个信号中的任何一个发生变化,都引起进程重新执行。从硬件特性来看,二选一电路的a,b,s输入的变化都可能引起输出发生变化。5EDA技术——VHDL顺序语句第5讲VHDL顺序语句进程(Process)Process的启动和敏感信号列表:敏感信号列表对于进程至关重要,它是进程描述的一个重要组成部分。一般来说,如果描述的是组合电路模块,那么敏感信号列表必须包括所有的输入信号;否则,在综合时会出错,在仿真时将导致一个错误的结果。如果描述的是时序电路模块,那么敏感信号列表只

6、需要包括时钟信号和异步清零/置位信号。因为,触发器的输出只在时钟上升/下降沿才会改变。在一个结构体里可以有多个Process语句,这些Process之间可以通过一些信号相互联系。在一个Process的执行中,某个信号的值发生改变,它会导致另一个(或几个)进程的重新执行,如此构成所有进程的反复执行。6EDA技术——VHDL顺序语句第5讲VHDL顺序语句进程(Process)中的顺序语句1.信号和变量的赋值:信号的赋值语句格式:目标信号名<=表达式;例2:c<=‘1’;q<=“010010”;q(1)<=

7、‘1’;q(3downto1)<=“001”;a<=b;s<=axorb;x<=y+z;需要特别注意的是:VHDL是强类型语言,左边的信号量和右边的表达式的类型和位长度都必须一致,否则将出错。7EDA技术——VHDL顺序语句第5讲VHDL顺序语句进程(Process)中的顺序语句1.信号和变量的赋值:变量的赋值语句格式:目标变量名:=表达式;例3:v:=‘1’;s:=“010010”;变量赋值的符号与信号赋值的符号不同,表达式与信号赋值的表达式写法是完全一样的。变量与信号有明显的区别:变量只在定义它的

8、进程和子程序内有效,无法传递到进程之外;而信号在定义它的结构体内有效。赋给变量的值立即成为当前值;而赋给信号的值必须在进程结束后才能成为当前值。8EDA技术——VHDL顺序语句第5讲VHDL顺序语句进程(Process)中的顺序语句2.转向控制语句:条件控制语句——If语句:IF语句的基本格式:If条件ThenIf条件Then顺序描述语句;顺序描述语句;ElseEndIf;顺序描述语句;EndIf;9EDA技术——VHDL顺序语句第5讲VHDL顺序语句进

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

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

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