为什么 uvm_tlm_fifo 需要 put_export 和 get_peek_export?
Why do we need put_export and get_peek_export for uvm_tlm_fifo?
IEEE UVM 的 12.2.8
部分讨论了 uvm_tlm_fifo
类。我想知道为什么我们需要导出 put_export
和 get_peek_export
?
同样的put
和get
方法可以直接在fifo上使用,为什么我需要使用接口方法?
提前致谢:)
使用 TLM 导出的要点是在建立连接时消除依赖性。 uvm_tlm_fifo 组件的 put
和 get
是方法实现,而导出只是接口。
当您将 fifo 嵌入到另一个组件中时,您可以直接调用实现,而无需进行任何连接作为快捷方式。但是如果你想让另一个组件建立连接,TLM 原则抽象出 FIFO 的存在,让你连接到一个通用的 put 或 get export。
IEEE UVM 的 12.2.8
部分讨论了 uvm_tlm_fifo
类。我想知道为什么我们需要导出 put_export
和 get_peek_export
?
同样的put
和get
方法可以直接在fifo上使用,为什么我需要使用接口方法?
提前致谢:)
使用 TLM 导出的要点是在建立连接时消除依赖性。 uvm_tlm_fifo 组件的 put
和 get
是方法实现,而导出只是接口。
当您将 fifo 嵌入到另一个组件中时,您可以直接调用实现,而无需进行任何连接作为快捷方式。但是如果你想让另一个组件建立连接,TLM 原则抽象出 FIFO 的存在,让你连接到一个通用的 put 或 get export。