Vengineerの妄想(準備期間)

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

Bluespec SystemVerilog : let

Verification Engineerの戯言

Bluespec SystemVerilogでは、代入される変数は代入する型と同じでなければいけません。
しかしながら、一時変数を使うときにはもっと便利な方法として、letを使うというものです。
右辺値がValueメソッドの場合は、つぎのようになります。

    let n = valueof(BuffSize);


代入されるnは、代入するvalueofメソッドの戻り値の型であるとbscにて推定されます。
代入文でないと一時変数の型が分からないので、必ず右辺は必要になります。

右辺値がActionValueメソッドである場合は、

    let z1 <- rndm.get;


のように、=ではなく、<-を使います。

検証、Verification、Bluespec SystemVerilog