22 UVM Callbacks
2023-12-29 18:07:22
回调用于改变组件或对象的行为而不修改其代码。请参阅SystemVerilog callback - VLSI Verify以更好地理解。UVM 中的phasing机制就是回调的一个简单示例。
1 UVM Callback Usage
- 允许即插即用机制以建立可重用的验证环境。
- 基于钩子方法(hook method)调用,执行用户自定义的代码,而不是空的回调方法。这带来了组件或对象的各种风格。
- 回调可用于在组件中引入错误或延迟。
2 UVM Callback Macros
下面仅提及广泛使用的回调宏:
3 UVM Callback Classes
UVM 回调为其实现提供了一组类。
4 UVM Callback Methods
uvm_callback 方法可以使用范围解析运算符来调用,因为它们是静态方法。
例如: uvm_callbacks#(T, CB)::add(obj,cb);
其中:
T?:使用用户定义回调的对象类型,它必须从 uvm_object 派生。
CB?:用户自定义回调类型
obj :?使用用户定义回调的对象句柄
cb?:用户定义回调对象
uvm_callbacks、uvm_callback_iter 和 uvm_callback 类还有许多其他方法,这里不讨论,常用方法和宏在上一节中介绍。?
5 Steps to implement uvm_callback
6 UVM callback in uvm_sequence
6.1 UVM callback in uvm_sequence example
文章来源:https://blog.csdn.net/Bonnie_89/article/details/135294510
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!