多端口交换机的ASIC验证

时间:2017-09-13 15:22:15

标签: system-verilog uvm

我有一个DUT可以从所有4个相同的接口(A,B,C,D)中获取数据包来自一个端口的数据包可以转到任一输出端口(1,2,3,4)。示例:A的报文可以分为1,2,3或4.端口B的报文可以分为1,2,3或4,依此类推。来自同一端口的数据包是按顺序排列的,但数据包可以按照A,B,C,D之间的任何顺序进行服务(端口之间不保持任何顺序,因为所有4个接口可以在发送数据包的同时处于活动状态)。

如何验证这样的DUT?要使用什么记分牌数据结构?我需要将DUT视为黑盒子,因为我不知道DUT如何决定将数据包发送到哪个端口。我在4个接口A,B,C和D中都有一个uvm代理。虚拟序列控制所有4个代理的序列。

任何输入?提前谢谢。

1 个答案:

答案 0 :(得分:0)

您的问题非常广泛且基于意见。您只能根据给出的要求进行验证。 中的数据包完整无缺。如果没有关于它们通过哪个端口的要求,那么它应该对您的测试平台无关紧要。必须有一些其他要求来处理您未提及的吞吐量。

在最简单的情况下,您需要使用全局数据包ID使所有数据包唯一,以便您可以将它们发送到公共记分板,并在测试结束时将所有收到的数据包与发送的数据包进行匹配。具有打包ID的关联数组适用于此。