Verification Engineerの戯言
Bluespec SystemVerilogには、finite state machine(FSM)を定義するのに便利なStmtFSMパッケージというのがあるんです。
StmtFSMパッケージには、次のようなインターフェースが定義されています。
・FSM ・One
FSMインターフェースは、
interface FSM; method Action start(); method Action waitTillDone(); method Bool done(); endinterface: FSMのようになっています。
startメソッドは、FSMを起動します。
waitTillDoneメソッドは、FSMが終了するまで実行します。
doneメソッドは、FSMが終了しているかどうかを示します。
waitTillDoneメソッドは、FSMが終了するまで実行します。
doneメソッドは、FSMが終了しているかどうかを示します。
startメソッドで起動し、doneメソッドで終了するまで待ちます。
また、waitTillDoneメソッドを実行します。
また、waitTillDoneメソッドを実行します。
Onceインターフェースは、
interface Once; method Action start(); method Action clear(); method Bool done(); endinterface: FSMのようになっています。
startメソッドは、FSMを起動します。一度実行すると、再度startメソッドを実行することはできません。
clearメソッドを実行することでstartメソッドを実行することができます。
doneメソッドは、FSMが終了しているかどうかを示します。
clearメソッドを実行することでstartメソッドを実行することができます。
doneメソッドは、FSMが終了しているかどうかを示します。
検証、Verification、Bluespec SystemVerilog