Vengineerの妄想(準備期間)

人生は短いけど、長いです。人生を楽しみましょう!

functionの中でtaskが呼ばれている?

Verification Engineerの戯言

VMM-1.0のsv/std_lib/vmm_channel.svファイルの次の2つの関数の中でtaskが呼ばれています。
(見つけちゃったんです。)
    function vmm_data vmm_channel::unput(int offset);
    function vmm_data vmm_channel::remove();

呼ばれているtaskは、
    this.unblock_producer();
で、定義はつぎのようになっています。
    task vmm_channel::unblock_producer();
      if (this.level() <= this.empty)
      begin
        this.full_chan = 0;
        this.notify.indicate(EMPTY);
      end

      if (this.level() < this.full)
      begin
        this.notify.reset(FULL);
      end

      -> this.item_taken;
    endtask: unblock_producer

検証、Verification、SystemVerilog、VMM、Verification Methodology Manual