添加动态内容以测试流评论

时间:2018-01-18 13:19:50

标签: origen-sdk

作为this one的相关问题,是否可以添加动态内容来测试流量评论?我看到Origen test program docs表示测试之前的注释被添加到测试程序文档中。这适用于所有者知道测试名称的流程,而不是迭代流程,其中测试名称由许多变量组成,如下所示:

hsio_loopback loopback_type: test_type, loopback_mode: lpbk_mode, protocol_mode: mode, speed: speed, cond: voltage

或许可以在评论中使用ERB吗?

THX

1 个答案:

答案 0 :(得分:1)

目前没有一种方法可以调用注入动态注释,我认为我们不想引入erb解析阶段。

我不认为添加这样的方法也很容易添加。

我可以看到的增强功能是添加在注释中放置常规字符串插值逻辑的功能,然后我们可以让注释解析器评估注释字符串。

这有一个很大的警告:由于注释被解析(并且将被eval'd)在流执行的一边,它将无法评估注释中嵌入的任何局部变量。

即。这不起作用,因为i是一个局部变量:

dut.srams.each_with_index do |sram, i|

  # Testing SRAM #{i}
  test "sram", instance: i

end

这样的东西会起作用,因为它注入了一个全局变量,以后在解析/评估注释时可以访问它,但对你来说可能用处不大:

# Testing one of #{dut.srams.size} SRAMs
test "sram", instance: i

我认为要做你真正想要的事情,我们需要支持这一点,但是你可能需要做更多工作才能完成你的工作:

dut.srams.each_with_index do |sram, i|

  cc "Testing SRAM #{i}"
  test "sram", instance: i

end