1.建立好后,可以在sequence 和其它components 中使用。参考模型为例有一个寄存器模型指针:
2.之前已经给env 的p_rm赋值,只需要在env中将p_rm 传给参考模型:
3.寄存器模型提供了两个基本任务:read 和write。
在参考模型中读取寄存器,使用read 任务:
read 原型如下所示:
1)常用前3个参数。
第一个是输出,表示操作是否成功。
第二个是输出,读取的数值。
第三个读取方式,前门 or 后门。
4.由于参考模型一般不写寄存器,对于write 任务,以在virtual sequence 为例。在sequence 中使用寄存器模型,通常通过引用p_sequencer(其实sequence 想得到外部的数据,渠道不多,m_sequencer cast 成p_sequencer应该是最常用的)。
1)首先在sequencer 中有一个寄存器模型的指针:
之前已给v_sqr.p_rm赋值。
2)因此可以直接以如下进行写操作:
write原型为:
5.寄存器模型对sequence 的transaction 类型没有任何要求。因此,可以在一个发送my_transaction 的sequence 中使用寄存器模型对寄存器进行读写操作。