关于tb中monitor采样数据的一些技巧,最近颇为困扰,记录一下

本文探讨了如何使用超前脉冲进行数据采样。在示例中,B脉冲比信号A早一拍,通过设置value_d变量实现采样延迟,确保在B的上升沿采样到的是A变化前的信息。实验验证了这种方法正确地采样了信号变化前的数据。
摘要由CSDN通过智能技术生成

1.怎么用一个超前的脉冲去采样数据

用B这个脉冲去采样A=23. 我们看到B=1比A=23早一拍。tb可以使用赋值的办法使得采样delay一拍。

逻辑伪代码:

  value_d=0;

  //value_d1=0;

forever begin

   @(posedge vif.clk);

    if(value_d=1) begin

      sample_value=vif.A;

     end

     //value_d1=value_d;

     value_d=vif.B;

end

第一个上升沿结束: value_d=0

第二个上升沿结束:value_d=0;

第三个上升沿结束: value_d=1;

第四个上升沿结束:采样完成。

采样总会取信号变化之前的信息,经做实验,此结论是正确的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值