代入

代入文は 変数 = 式; の形式です。SystemVerilog と異なり、always_comb でも always_ff でも代入演算子は = です。以下のような代入演算子もあります。

  • +=:加算代入
  • -=:減算代入
  • *=:乗算代入
  • /=:除算代入
  • %=:剰余代入
  • &=:ビットAND代入
  • |=:ビットOR代入
  • ^=:ビットXOR代入
  • <<=:論理左シフト代入
  • >>=:論理右シフト代入
  • <<<=:算術左シフト代入
  • >>>=:算術右シフト代入
module ModuleA (
    i_clk: input clock,
) {
    let a: logic<10> = 1;
    var b: logic<10>;
    var c: logic<10>;
    var d: logic<10>;
    var e: logic<10>;

    always_comb {
        b =  a + 1;
        c += a + 1;
    }

    always_ff (i_clk) {
        d =  a + 1;
        e -= a + 1;
    }
}