組み込み型
幅指定可能な4値データ型
logic
は4値(0
、1
、x
、z
)のデータ型です。幅は logic
のあとの <>
で指定できます。<X, Y, Z,,,>
のように多次元指定も可能です。
module ModuleA {
let _a: logic = 1;
let _b: logic<10> = 1;
let _c: logic<10, 10> = 1;
}
幅指定可能な2値データ型
bit
は2値(0
、1
)のデータ型です。幅は logic
のあとの <>
で指定できます。<X, Y, Z,,,>
のように多次元指定も可能です。
module ModuleA {
let _a: bit = 1;
let _b: bit<10> = 1;
let _c: bit<10, 10> = 1;
}
整数型
整数型にはいくつかの種類があります。
u32
:32ビットの符号なし整数u64
:64ビットの符号なし整数i32
:32ビットの符号付き整数i64
:64ビットの符号付き整数
module ModuleA {
let _a: u32 = 1;
let _b: u64 = 1;
let _c: i32 = 1;
let _d: i64 = 1;
}
浮動小数点数型
浮動小数点数型にもいくつかの種類があります。
f32
:32ビット浮動小数点数f64
:64ビット浮動小数点数
いずれも IEEE Std 754 準拠の表現です。
module ModuleA {
let _a: f32 = 1.0;
let _b: f64 = 1.0;
}
文字列型
string
は文字列を表す型です。
module ModuleA {
let _a: string = "";
}
Type型
type
は型の種類を表す型です。type
型の変数は param
か const
としてのみ定義可能です。
module ModuleA {
const a: type = logic;
const b: type = logic<10>;
const c: type = u32;
}