微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > SV里initial与变量定义logic的问题

SV里initial与变量定义logic的问题

时间:10-02 整理:3721RD 点击:
在验证当中遇到个问题,突然有点困惑,虽然解决但是不知道原理,求大神启发一下。
7 ///monitors MCU I-BUS.
78 initial forever @(posedge `MCU_TOP.clk)
79if(soc_cfg[1][0] && `MCU_TOP.slv_iHReady)begin
80logic trans;
81logic [31:0] addr;
82logic [1:0] hsize;
83if(trans)
84$display("@%0t:\tread%0d\t0x%8h\t0x%8h",$time,hsize
,addr,`MCU_TOP.slv_iHRData);
85addr=`MCU_TOP.cpu_iHAddr;
86trans=`MCU_TOP.cpu_iHTrans[1];
87hsize=`MCU_TOP.cpu_iHSize[1:0];
88end
env里定义的这个部分,在initial后在定义变量logic,编译没有错,但是display没有触发 。
只有把logic搬到initial块以外才可以运行。
这其中SV的原理是什么?

一个是默认initial 的赋初值,一个是变量初值,不会有事件产生。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top