关于systemC线程函数中wait语句的各种用法

在线程方法中必定会使用到线程语句wait,而wait有多种使用方法:

(1)wait()不带参数:

    等待敏感量列表上的事件,不管是哪个事件。

(2)wait(port.posedge_event())   or  wait(port.negedge_event()):

    等待某个端口发生上或下跳边触发的事件。

(3)wait(port.value_changed_event() )

    等待端口的值发生变化的事件

  (4)    wait(port1.posedge_event() |  port2.negedge_event() | port.value_changed_event() )

    使用逻辑符号和posedge_event等语句构造一个一组事件的集合,等待这个集合条件的发生

(5)wait(time)

    wait(10,SC_NS)等待10ns的时间,wait(0,SC_NS)等待时间delta,同时可以指定等待的时间

(6)wait(time, event_set)

    最长等待时间为time,等待事件为event_set事件集合

(7)使用sc_event的wait方法

    使用sc_event可以定义一个事件,通过event.notify来激活事件,使用event.cancel来取消事件

    可以将event事件放入到wait语句中使用,来通知一个事件的发生。


猜你喜欢

转载自blog.51cto.com/13824643/2137465