1.之前的my_transaction 是mac 包,其中的pload 是ip 包,如下:
2.现在要求mac 中指定ip 地址等数据,需要约束mac 包跑咯爱的值:
要对ip_transaction 约束,需自己计算,容易错。
3.可简化:
可重用性不高。
4.加入crc错误,如下:
、
只变了一行。
5.给DUT IP checksum 错误的包:
6.上面代码为不同的测试用例,但几乎相同。
1)要提高重用性,将ip 相关写成一个函数。mac 相关写成一个函数,放在base_sequence中。
2)新建测试用例时,从base_sequence 派生新的sequence,并调用函数。
7.使用layer sequence。上面的一个sequence 中包含2 中transaction。最好将它们分离,一个sequence 产生ip_transaction,另一个sequence产生my_transaction。前者将ip_transaction 交给后者。这就是layer sequence。
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-08 17:38:05