uvm_base——打好你的基础
uvm_base 是个很有意思的文件,这是UVM很巧妙的设计,将所有在base中包含的文件都包含在uvm_base.svh, 这样很方便管理各个文件直接的关系,而且还可以看出一些我之前没看过的东西,比如,文件之间的这种联系。
`ifndef UVM_BASE_SVH `define UVM_BASE_SVH typedef class uvm_cmdline_processor; `include "base/uvm_coreservice.svh" // Miscellaneous classes and functions. uvm_void is defined in uvm_misc, // along with some auxillary functions that UVM needs but are not really // part of UVM. `include "base/uvm_version.svh" `include "base/uvm_object_globals.svh" `include "base/uvm_misc.svh" // The base object element. Contains data methods (<copy>, <compare> etc) and // factory creation methods (<create>). Also includes control classes. `include "base/uvm_object.svh" `include "base/uvm_pool.svh" `include "base/uvm_queue.svh" `include "base/uvm_factory.svh" `include "base/uvm_registry.svh" // Resources/configuration facility `include "base/uvm_spell_chkr.svh" `include "base/uvm_resource.svh" `ifdef UVM_USE_RESOURCE_CONVERTER `include "deprecated/uvm_resource_converter.svh" `endif `include "base/uvm_resource_specializations.svh" `include "base/uvm_resource_db.svh" `include "base/uvm_config_db.svh" // Policies `include "base/uvm_printer.svh" `include "base/uvm_comparer.svh" `include "base/uvm_packer.svh" `include "base/uvm_links.svh" `include "base/uvm_tr_database.svh" `include "base/uvm_tr_stream.svh" `include "base/uvm_recorder.svh" // Event interface `include "base/uvm_event_callback.svh" `include "base/uvm_event.svh" `include "base/uvm_barrier.svh" // Callback interface `include "base/uvm_callback.svh" // Reporting interface `include "base/uvm_report_message.svh" `include "base/uvm_report_catcher.svh" `include "base/uvm_report_server.svh" `include "base/uvm_report_handler.svh" `include "base/uvm_report_object.svh" // Base transaction object `include "base/uvm_transaction.svh" // The phase declarations `include "base/uvm_phase.svh" `include "base/uvm_domain.svh" `include "base/uvm_bottomup_phase.svh" `include "base/uvm_topdown_phase.svh" `include "base/uvm_task_phase.svh" `include "base/uvm_common_phases.svh" `include "base/uvm_runtime_phases.svh" `include "base/uvm_component.svh" // Objection interface `include "base/uvm_objection.svh" `include "base/uvm_heartbeat.svh" `include "base/uvm_globals.svh" // Command Line Processor `include "base/uvm_cmdline_processor.svh" // traversal utilities `include "base/uvm_traversal.svh" `endif // UVM_BASE_SVH