RAL Prediction

文章讨论了寄存器访问的两种预测机制——隐式预测和显式预测。隐式预测基于寄存器模型的读写操作,而显式预测通过监视总线事务更精确地同步寄存器模型。当启用显式预测时,会关闭隐式预测,并通过adapter将总线事务转化为寄存器模型的更新。监控器收集总线事务,predictor处理这些事务以保持模型和实际硬件的一致性。
摘要由CSDN通过智能技术生成

在大多数的应用场景,对寄存器的访问完全可以通过write(value) & read()这样的组合来完成,也可以选用set(value)先修改期望值,然后在通过update()函数去做同步。这样的好处是,如果RTL寄存器的值已经是我们的期望值,那么就不会也没有必要再浪费总线资源去重新配置一遍。
Explicit Prediction相对于Implicit Prediction,除了监视通过寄存器模型API对寄存器的访问操作,还可以覆盖到其他测试序列(sequence)通过总线对寄存器的直接访问,这一点会使它更加通用。

prediction的分类

auto prediction

如果在环境中没有集成独立的predictor的情况下,利用寄存器操作来自动记录每一次寄存器的读写值,并在后台自动调用predict()来保持寄存器模型中的值与RTL中的值保持一致。但是如果对于寄存器的操作是直接由总线层面进行的,如跳过寄存器模型的wirte()/read(),自动预测则捕捉不到这些寄存器行为,有可能导致DUT和registermodel两边的值不一致。
前门访问(write()/read()— 针对寄存器的)或者后门访问(peek()/poke())都可以触发隐式预测

register_model_inst.default_map.set_auto_predict(1);

explicit prediction

通过monitor在物理总线上捕捉总线事务,并将bus_transaction 传到外部predictor中,predi

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值