m_sequencer 和 p_sequencer 的区别

1. 为什么要 引入 p_sequencer?

主要是因为 虚virtual sequencer 造成的: 例如你的 master sequencer 中有几个 sequencer, 然后再 seq 中想挂到不同的 sequencer 上去的时候,这个时候就可以用 p_sequncer 访问其中的其他的seqr 即可以完成;

2. m_sequencer 和 p_sequencer 两个的区别? 

m_sequencer 是 UVM 内部自带的一个 sequencer, 实际上是 当前 seq 已经跟 which sequencer 绑定的一个: 看源码: 当有多个 seq 的时候,就可以直接用  p_sequencer 使用了;m_sequencer是每一个 sequence 的属性; 

3. p_sequencer 如何使用? 

--p_sequencer 如何来的?  可以通过调用一个宏,会自动的把 m_sequencer 转化成一个 p_sequencer, 然后使用 p_sequencer.  看uvm 源码:

在 seq 中调用 uvm 自带这个宏,就会生成一个 p_sequencer.  可以看到 p_sequencer 指向的就是当前的一个具体的sequencer, 然后就可以访问该 sequncer 中的任何变量值; 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值