VHDL语法入门学习第一篇

本文详细介绍了VHDL语言中的进程(PROCESS)概念及其内部常用的IF、WAIT、CASE或LOOP语句。特别关注了进程的敏感信号列表与WAIT语句的使用区别,以及如何利用WAIT语句来实现同步电路的设计。

1. 现在先遇到一个VHDL的语法问题,以前没用过VHDL,现在要去研究下,进程(PROCESS)

进程内部经常使用IF,WAIT,CASE或LOOP语句。PROCESS具有敏感信号列表(sensitivity list),或者使用WAIT语句进行执行条件的判断。PROCESS必须包含在主代码段中,当敏感信号列表中的某个信号发生变化时(或者当WAIT语句的条件得到满足时),PROCESS内部的代码就顺序执行一次。

2. WAIT语句

如果在process中使用了WAIT语句,就不能使用敏感信号列表了。WAIT语句使用以下3种形式的语法结构:
WAIT UNTIL signal_condition;
WAIT ON signal1 [, signal2, ...];
WAIT FOR time;
WAIT UNTIL 后面只有一个信号条件表达式,更适合于实现同步电路(将时钟的上升沿或下降沿作为条件),由于没有敏感信号列表,所以它必须是process的第一条语句。当WAIT UNTIL语句的条件满足是,process内部的代码就执行一遍。

3. 检测时钟的上升沿

rising_edge(clk) 和(clk'event and clk='1')都可以检测上升沿,rising_edge 是非常严格的上升沿,必须从0到1 ,    (clk'event and clk='1')可以从X到1

转载于:https://www.cnblogs.com/429512065qhq/p/8627206.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值