UVM1.2 相对于UVM1.1的变化

  • 新功能和更改功能

变量uvm_sequence_base::starting_phase已弃用,并由两个新方法set_starting_phase和get_starting_phase取代,这些方法阻止在phase中间修改starting_phase。此更改与UVM 1.1不向后兼容,但变量starting_phase虽然已弃用,但尚未从基类库中删除。

新方法uvm_sequence_base::set_automatic_phase_objection将在在sequence执行前后自动调用raise_objection和drop_objection,从而避免在一种常见情况下手动调用raise / drop_objection。

消息系统改造提供基于对象的API以向报告添加属性,使用新的宏`uvm_info_begin /`uvm_info_end等等。现在可以扩展uvm_report_server类,并且可以链接扩展报表服务器。

记录系统改造以为类uvm_recorder提供基于对象的API。

现在可以通过显式恢复默认类型来撤消工厂覆盖。

标准工厂可以替换为用户定义的工厂,例如提供改进的调试功能。

可以使用新方法uvm_objection::set_propagate_mode关闭objections的分层传播(通常是冗余的),以加快执行速度。objections的传播最终将被弃用。

新方法uvm_phase::get_objection_count提供了一种清除所有异议的方法,即

phase.drop_objection(this,“msg”,phase.get_objection_count(this));

用于phase计划内省的新方法uvm_phase :: get_adjacent_predecessor / successor_nodes。

新的回调类uvm_phase_cb允许在phase时进行回调。

现在扩展自uvm_object的每个类都必须具有构造函数。

现在uvm_event类使用(可选)事件有效内容的类型进行参数化。

类型uvm_bitstream_t已被策略对象和字段宏中的类型uvm_integral_t替换。

新类uvm_reg_transaction_order_policy用于指定超宽寄存器访问时的总线事务的顺序。

前缀UVM_已添加到类型为uvm_sequence_state_enum和uvm_sequencer_arb_mode的枚举值中。

new version宏`UVM_MAJOR_REV,`UVM_MINOR_REV等。

  • 下列特性成为官方标准的一部分

内置运行时phase(例如reset_phase)的进入和退出标准已记录在类参考手册中。

类uvm_sequence_library现已记录并正式发布。

变量uvm_sequence :: req和rsp现已记录并正式发布。

uvm_sequencer#():: get_next_item,try_next_item,item_done,get,peek和put方法现已记录在案并正式发布。

  • 不推荐的功能

set / get_config_int,set / get_config_string,set / get_config_object不建议使用。

不推荐使用uvm_component :: status,kill和do_kill_all。

不推荐使用stop_request,global_stop_request,set_global_timeout,set_global_stop_timeout和stop_timeout。

uvm_component :: stop_phase和变量enable_stop_interrupt已弃用。

不推荐使用变量uvm_test_done。

不推荐使用宏`uvm_sequence_utils,`uvm_declare_sequence_lib和`uvm_update_sequence_lib。

不推荐使用配置数据库参数“default_sequence”,“count”,“max_random_count”和“max_random_depth”。

不推荐使用方法uvm_sequencer_base :: add_sequence,get_seq_kind和get_sequence。

有新的迁移脚本可替换某些已修改或已弃用的功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值