当前位置: 首页 > news >正文

网站怎么宣传win10系统优化工具

网站怎么宣传,win10系统优化工具,网页设计与制作教程游戏页面,大型网站 phpuvm通信-uvm_event uvm_event_pool uvm_event_callback 1.同步的方法 1.1 sv与uvm中同步的方法 (1) 在sv中,用于同步的方法有event, semaphore和mailbox; (2) 在UVM中,用于同步的方法为uvm_event(uvm_event派生于uvm_object); (3) uvm_event不仅能实现不同组件…uvm通信-uvm_event uvm_event_pool uvm_event_callback  1.同步的方法 1.1 sv与uvm中同步的方法 (1) 在sv中,用于同步的方法有event, semaphore和mailbox; (2) 在UVM中,用于同步的方法为uvm_event(uvm_event派生于uvm_object); (3) uvm_event不仅能实现不同组件进程间同步的功能,还能像TLM通信一样传递数据,并且作用范围更广(TLM通信只能局限于uvm_component之间,而uvm_event不限于此); 1.2 什么情况下会使用uvm_event呢 (1) 组件之间的常规的数据流向是通过TLM通信方法实现的比如sequencer与driver之间或者monitor与scoreboard之间。然而有些时候数据的传输的偶然触发的并且需要立即响应这个时候uvm_event就是得力的助手了。 (2) uvm_event也解决了一个重要问题那就是在一些uvm_object和uvm_component对象之间如果要发生同步那么无法通过TLM传输因为TLM传输必须是在组件component和组件之间进行的。如果在sequence与sequence之间要进行同步或者sequence与driver之间要进行同步都可以借助uvm_event来实现。 2.uvm_event的使用示例(已实践,非常好用) (1)通过uvm_event_pool::get_global_pool()函数获取全局的单实例类uvm_event_pool类型对象的句柄; (2)两个initial块中调用get_global_pool返回同一个uvm_event_pool类型对象的句柄; (3)通过uvm_event_pool.get(“ev”)可以得到一个名字为”ev”的uvm_event对象的句柄;如果名字为ev的uvm_event对象不存在,会在第一次调用get_global()函数时创建这样一个对象。 (4)在uvm_event中,触发的方式是uvm_event.trigger(); 而等待触发的方式是wait_ptrigger() (电平触发)和wait_trigger()(上升沿触发); //step1.The event is created in the top-level test;3 //step2.The event is placed in config_db;4 class eth_transmit_event_sync_test extends eth_blk_env_test;5 ...6 uvm_event transmit_barrier_evnew(transmit_complete_event);7 ...8 virtual function void build_phase(uvm_phase phase);9 super.build_phase(phase); 10 uvm_config_db #(uvm_event)::set(null,,transmit_b,transmit_barrier_env); 11 endfunction 12 endclass 13 14 //step3.The transmit_sequence picks it from config_db; 15 //simple transmit sequence with events; 16 virtual task body(); 17 uvm_config_db #(uvm_event)::get(null,,transmit_b,send_2_pkt_event); 18 ... 19 send_2_pkt_event.trigger(); 20 ... 21 endtask 22 23 //step4.The interrupt sequence picks it from config_db; 24 class tx_interrupt_event_seq extends base_sequence; 25 ... 26 uvm_event int_event; 27 ... 28 virtual task body(); 29 ... 30 uvm_config_db #(uvm_event)::get(null,,transmit_b,int_event); 31 int_event.wait_ptrigger(); 32 ... 33 endtask 34 35 endclass 3.uvm_event相关function/task 注1: uvm_event主要有三类function: trigger函数(如trigger(), get_trigger_data(), get_trigger_time()等),状态函数(is_on(),is_off(),reset(), get_num_waiters()等),callback函数(add_callback(), delete_callback()等); 3.1 wait_on (1) 等待事件处于activated状态,如果事件已经被触发,这个task会立即返回;一旦事件被触发,它将一直保持on状态直到事件reset; 3.2 wait_off (1) 如果事件已经被触发,并且处于on状态,该task会等待该事件通过调用reset而关掉; (2) 如果事件没有被触发,该task会立即返回; 4.uvm_event与event的区别 (1) uvm_event的基础是event,只不过对event的触发与等待进行了扩展; (2) event被-触发后,会触发用/wait(event.triggered())等待该事件的对象; uvm_event通过trigger()来触发,会触发使用wait_trigger()/wait_ptrigger()/wait_trigger_data()/wait_ptrigger_data()等待的对象; (3) 如果再次触发事件,event只需使用-来触发; uvm_event需要先通过reset()方法重置初始状态,再使用trigger()来触发; (4) event无法携带更多的信息; uvm_event可以通过trigger(uvm_event datanull)的可选参数,将要伴随触发的数据对象都写到该触发事件中,而等待该事件的对象可以通过方法wait_trigger_data(output uvm_object data)来获取事件触发时写入的数据对象; 注1:如果uvm_event.trigger不传递参数,不传递额外的信息,则等待该事件的对象可以调用wait_trigger,而不是wait_trigger_data; (5) event触发时无法直接触发回调函数; uvm_event可通过add_callback函数来添加回调函数; (6) event无法直接获取等待它的进程数目,而uvm_event可以通过get_num_waiters()来获取等待它的进程数目; 5.uvm_event_pool (1) 不同的组件可以共享同一个uvm_event这不需要通过跨层次传递uvm_event对象句柄来实现共享的因为这并不符合组件环境封闭的原则。这种共享同一个uvm_event对象是通过uvm_event_pool这一全局资源池来实现的。 (2) uvm_event_pool这个资源池类是uvm_object_string_pool #(T)的子类它可以生成和获取通过字符串来索引的uvm_event对象。通过全局资源池对象唯一的在环境中任何一个地方的组件都可以从资源池中获取共同的对象这就避免了组件之间的互相依赖。 6.uvm_event_callback(派生于uvm_callback) (1) 可以从uvm_event_callback进行类的派生,并实现pre_trigger与post_trigger函数,之后将该派生类通过add_callback函数添加到uvm_event中; (2) pre_trigger()有返回值如果返回值为1则表示uvm_event不会被trigger也不会再执行post_trigger()方法如果返回值为0则会继续trigger该事件对象。 注1:对于uvm_event的callback而言,不用采用示例2中通用的callback机制方法,可以直接使用uvm_event已经实现好的函数(如add_callback等);
http://www.hkea.cn/news/14289893/

相关文章:

  • 喜欢做网站土地流转网站开发
  • 有没有什么 网站能够做试卷wordpress需要伪静态吗
  • php做网站一般用什么软件网站后台树形菜单样式
  • 网站建设计划书内容专业网页网站设计图书
  • 硬盘做免费嗳暧视频网站网站外链建设与维护
  • 旅游网站建设案例网站建设 套格式
  • 高校网站集群平台子站开发官网在线制作
  • 深圳网站建设南山郑州seo网站有优化
  • 上市公司中 哪家网站做的好做网站公司哪个好
  • 厦门seo网站建设费用外贸公司取名
  • 对网站开发实训的建议软件通网站建设
  • 高质量的网站建设国外云服务器厂商
  • 网站建设文档搜索引擎优化策略应该包括
  • h5网站设计报价如何访问自己做的网站
  • 嘉兴网站制作费用安徽 网站开发
  • 口碑好网站建设电话广州五羊建设官方网站
  • 电子商务网站建设臧良运课后答案南通网站建设兼职
  • 做淘宝电商比较厉害的网站太原网站 制作
  • 深圳做网站的公司哪个好深圳商城网站设计制作
  • 微信房地产网站建设怎么建自己的网站?
  • 自助网站建设公司电话青岛知名网站建设公司排名
  • 汕头免费建站网页模板制作工具
  • 网站的主题是什么2880元网站建设
  • 济南企业建站哪家做的好科技公司名称大全简单大气
  • 嘉祥住房和城乡建设局网站网站建设属什么资产
  • 合肥专业网站优化价格wordpress弹出搜索
  • 郑州网站建设正云长春网站建设新格
  • 国外有哪些设计网站网站建设策划报价
  • 网站建设对比网页美工设计是什么
  • 五金配件网站建设报价宣传海报怎么制作