【问题标题】:Specman-simulator synchronization issue?Specman-模拟器同步问题?
【发布时间】:2015-07-16 16:13:29
【问题描述】:

我正在使用 Cadence 的以太网 eVC,其中代理的监视器在以下信号处被窃听:

.            ____________                    _____
.clk   _____|            |__________________|
.      ________ _______ ________________ _________
.data  __0a____X___07__X_______0b_______X_________
.                      ^ ^

它在时钟的上升沿和下降沿对数据进行采样。上例中,数据0x07为垃圾数据,有效值为0xa(clk上升)和0xb(clk下降)。但是,监视器正在采样(对于 clk 下降)0x7!

我怀疑这是 Specman 模拟器同步问题。如果是这样怎么解决?

  • 模拟器 - IES 13.10
  • irun 13.10 选项 -(我将在此处仅包括我认为可能与该问题相关的选项,以及我尚不知道其用途的选项)

    -nomxindr  
    -vhdlsync  
    +neg_tchk  
    -nontcglitch  
    +transport_path_delays  
    -notimezeroasrtmsg  
    -pli_export  
    -snstubelab
    
  • 语言 - VHDL(顶级测试平台)、Verilog (DUT)、Specman(虚拟序列、Enet 和 OCP eVC)

  • 0x07(上面波形中的左 ^)和时钟下降沿(右 ^)之间的时间 = 0.098ns

一位同事建议使用-sntimescale,但我仍然无法想象这是如何导致/将解决问题的。这些搜索字符串中的任何一个都没有显示有用的提示,即使是来自 Cadence 的那些文章:“specman tick synchronization delta delay timescale precision”

【问题讨论】:

  • 确保您的 VHDL、Verilog、e 等的时间尺度和精度相同? -sntimescale 可能会有所帮助,但我相信此选项仅适用于 specman e;您可能需要为 VHDL 和 Verilog 找到等效的编译器选项。大多数 Verilog/SystemVerilog 模拟器默认为 1ns/1ns,因此 0.098ns 将四舍五入为 0。测试台/DUT 中也可能存在时序延迟或可能的阻塞/非阻塞分配滥用。
  • 您的 Specman 时钟事件是如何创建的?它们是否连接到同一个时钟网络?
  • @RossRogers 因为收集数据包信息的是 Enet eVC,所以我想它也使用了@driver.clock 采样事件。该时钟与波形中的时钟相同。
  • @Greg 我还没有尝试过。现在我只是延迟了时钟以允许 eVC 监视器“正确”采样数据。
  • 我想了解 Specman 如何与模拟器不同步。是否有我可以调用的模拟器命令,或者是否有我可以显示的 Specman 字段值来证明这个问题?或者您可以推荐的任何参考材料,以显示在 HDL 和 Specman 中具有不同时间尺度和精度的影响?

标签: vhdl specman uvm e cadence


【解决方案1】:

这确实可能是一个时间尺度问题。 有一本关于调试 specman 模拟器接口同步问题的综合食谱。请看here

要检查仿真中使用的时间刻度,您可以将 -print_hdl_precision 选项添加到 irun 以打印 VHDL 层次结构的精度。对于 Verilog,它将自动打印,以防它在代码中或通过 irun 选项设置。该信息将在详细说明过程中打印出来。

要检查 Specman 使用的时间刻度,您可以在 Specman 提示符下发出以下命令:
SN> print get_timescale()

另一个尝试的选项(仅在 timescale 选项没有帮助之后)是删除 -vhdlsync 标志。实际上,在大多数混合环境中,您应该添加此标志。但在极少数情况下,没有它,环境会更好地工作。如果您尝试删除此标志,请记住重新详细说明。

如果您在食谱中找不到问题的解决方案,则应进行更深入的调查。例如,specman 如何对信号进行采样。它是 simple_port、event_port、tick access 等吗?还有一些跟踪和探测命令可能会有所帮助。在这种情况下,我建议联系 Cadence 支持。

祝你好运!
三达

【讨论】:

  • 我已经更新了链接。但您也可以前往 Cadence 在线支持 (COS) 并搜索,因为该链接将来可能会再次更改。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多