HDL语言的主要描述语句 5.1 顺序描述语句 5.2 并发描述语句 5.3 GENERARE语句 5.4 属性(attribute)描述 5.1顺序描述语句 WAIT语句 断言语句 信号赋值语句 变量赋值语句 IF语句 CASE语句 LOOP语句 NEXT 语句 过程调用语句 NULL语句(只占位置的空操作,对信号赋空值,表示关闭) 1.WAIT语句 WAIT语句用于多种不同的目的,常用于为综合工具指定时钟输入。另一用途是将进程的执行延时一段时间或者是为了动态地修改进程的敏感表。 wait 语句的执行会暂停进程的执行,直到信号敏感表发生变化或某种条件满足为止。若进程中含信号敏感表,则必须紧跟在 procees之后,这等价于该进程最后一个语句为wait on 语句;此时不能用显式的wait语句。 4种不同条件: WAIT ---无限等待 WAIT ON ---敏感信号量变化 WAIT UNTIL ---条件满足 WAIT FOR ---指定的持续时间 WAIT ON *格式: WAIT ON 信号[,信号]; *例1: WAIT ON a,b; 表示,当a 或b 变化时,进程便执行后继的语句 *例2: process(a,b) begin y<=a and b; end process; process begin y<=a and b; wait on a,b; end process; 以上两进程等价。 WAIT UNTIL *表示当检测到某个信号出现之前,进程被终止 *格式: WAIT UNTIL 条件表达式 *例: WAIT UNTIL 信号 = 数值; WAIT UNTIL 信号‘event and 信号 = 数值; WAIT UNTIL not 信号’stable and 信号 = 数值; wait until CLK='1'; wait until CLK'event and CLK='1'; wait until not CLK'stable and CLK='1'; 电路综合时,以上3种情况硬件无差别。 *常用语句: signal CLK: BIT; „„ process begin wait until CLK'event and CLK='1'; --等待时钟上沿 end process; WAIT FOR *格式: WAIT FOR 时间表达式; 表示等待指定时间后再执行后继语句; *例: wait for 20 ns; wait for (a*(b+c)); 多条件WAIT语句 同时使用多个等待条件; 超时等待 断言(assert)语句 *在运行过程中报告指定的错误信息,用于仿真和调试; *基本格式: assert 条件[report 报告信息][severity 出错级别]; 报告信息:字符串;出错级别:note, warning, error, failure。执行此语句时,如果条件为真,则向下执行,...