假设DUT具有两个具有不同顺序协议的独立接口。在一个" process / thread"中测试它们应该很容易。但目前的peekpoketester似乎很难做到这一点。例如,一个推送和一个拉动接口:
one.valid = 1;
@(posedge clock) begin
if (one.ready)
one.data <= next
end
two.ready = 1;
@(posedge clock) begin
if (two.valid)
handle(two.data)
end
答案 0 :(得分:1)
解决这个问题的一种方法是使用凿子测试员AdvTester。有一个示例使用AdvTester以与ConcurrentDecoupledTestingSpec中的问题相关的方式使用AdvTester,其中显示了如何实现DUT的异步测试。改进测试仪生态系统是Chisel的一个当前项目,请在chisel3提出这样的特定需求作为问题。