如何从系统 verilog 接口范围内的 class 进行扩展?
How to extend from a class present in the scope of a system verilog interface?
我正在经历这个,因为我的一些 UVC 使用这种方法:
https://www.doulos.com/knowhow/sysverilog/uvm/easier_uvm_guidelines/parameterized_interface/
但我想扩展界面中的 class 和 add/override 一些更多的功能。
但是当我试图覆盖 class 时,编译器无法找到 class,因为它在接口范围内。
关于如何覆盖 class 而不是重新实现所有功能有什么建议吗?
提前致谢。
这是使用此方法的一个问题 - 您只能从界面内扩展 class。但这与使用虚拟接口没有什么不同——你不能扩展接口。
最好的做法是将扩展 class 放入界面中。使用工厂覆盖 class.
的构造
我正在经历这个,因为我的一些 UVC 使用这种方法:
https://www.doulos.com/knowhow/sysverilog/uvm/easier_uvm_guidelines/parameterized_interface/
但我想扩展界面中的 class 和 add/override 一些更多的功能。
但是当我试图覆盖 class 时,编译器无法找到 class,因为它在接口范围内。
关于如何覆盖 class 而不是重新实现所有功能有什么建议吗?
提前致谢。
这是使用此方法的一个问题 - 您只能从界面内扩展 class。但这与使用虚拟接口没有什么不同——你不能扩展接口。
最好的做法是将扩展 class 放入界面中。使用工厂覆盖 class.
的构造