谈谈UVM中的Factory机制

为了遵循验证计划完成不同的验证任务,用户可能需要扩展原始的通用验证环境。验证过程是动态的,可重用验证环境的开发人员无法预见未来每一个corner case验证的项目需求。 

UVM factory是经典软件开发中工厂设计模式(factory design pattern)的实现,该模式用于创建通用代码,从而在运行时(run-time)确定对象的确切子类型。对于以下可重用的类定义:

//UVM Non-Factory Allocation

 class driver extends uvm_component
 `uvm_component_utils(driver)
 function new(string name, uvm_component parent);
 super.new(name,parent);
 endfunction
 virtual task drive_transfer();
 ...
 endtask
 endclass:driver
 class agent extends uvm_component; // bad example that uses new()
 `uvm_component_utils(agent)
 driver my_driver;
 function new(string name, uvm_component parent);
 super.new(name,parent);
 // create the driver
 my_driver= new ("my_driv
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值