理解验证环境结构的第三个要点
1、学会区分哪一部分属于硬件、哪一部分属于软件,而哪一部分属于软硬件交互的部分。
硬件部分:待测设计MCDT
软件部分:验证环境(激励发生器、监测器、比较器。都是由类的实例构成)
软硬件交互部分:接口(软硬之间发生数据通信,必须依赖这个接口)
2、弄清楚验证环境中各个验证组件之间的位置层次关系以及它们之间是否有数据通信。
如果对MCDT的数据通道发送数据,必须通过channel interface
驱动channel interface的组件是channel initiator,
channel initiator从channel generator获得发送的随机数据,将这些数据内容,按照接口驱动协议驱动到接口上面。
channel generator和channel initiator之间存在数据通信关系
channel generator创建随机数据事务transaction实例,并且将transaction实例发送至channel initiator,这种通信依靠通信协议mailbox实现。
monitor到checker的通信
channel monitor和mcdt monitor需要在各自的接口上监测MCDT的端口数据,并将其写入到transaction实例中,再将其发送到checker比较器。最后checker将输入和输出数据做比较检查。从monitor到checker的通信是基于事务的,并且由mailbox实现。
从验证环境的通信看出,验证组件间的通信,都是基于事务级的传送。验证组件和硬件端口之间的通信必须依赖接口,通过硬件时序才可以实现。
3、理解清楚,仿真是如何开始运转,各个验证组件是如何展开工作,而最后仿真又是如何结束的。(验证环境是如何展开运行)