AIE-ML にはいくつかの種類のレジスタがあります。レジスタの種類によって、使用するファンクション ユニットが異なります。このセクションでは、各種レジスタについて説明します。
スカラー レジスタ
スカラー レジスタには、コンフィギュレーション レジスタが含まれます。次に、各レジスタの説明を示します。
構文 | ビット数 | 説明 |
---|---|---|
r0..r31 | 32 ビット | 汎用レジスタ |
m0..m7 | 20 ビット | 修飾子レジスタ |
p0..p7 | 20 ビット | ポインター レジスタ |
特殊レジスタ
構文 | ビット数 | 説明 |
---|---|---|
dn0..dn7 | 20 ビット | AGU 次元サイズ レジスタ |
dj0..dj7 | 20 ビット | AGU 次元ストライド (ジャンプ) レジスタ |
dc0..dc7 | 20 ビット | AGU 次元カウント レジスタ |
s0..s3 | 6 ビット | シフト制御 |
sp | 20 ビット | スタック ポインター |
lr | 20 ビット | リンク レジスタ |
pc | 20 ビット | プログラム カウンター |
fc | 20 ビット | フェッチ カウンター |
32 ビット | ステータス レジスタ 1 | |
32 ビット | モード制御レジスタ 1 | |
ls | 20 ビット | ループ開始 |
le | 20 ビット | ループ終了 |
lc | 32 ビット | ループ カウント |
lci | 32 ビット | ループ カウント (PCU) |
|
ベクトル レジスタ
ベクトル レジスタはビット幅が広く SIMD 命令が可能で、オペランドの格納に使用します。これらのレジスタには接頭辞 W が付きます。24 個の 256 ビット レジスタ (wln および whn、n = 0 ~ 11) があります。2 つの W レジスタは 1 つの 512 ビット レジスタにグループ化でき、このレジスタには接頭辞 X が付きます。2 つの X レジスタも 1024 ビット レジスタにグループ化でき、このレジスタには接頭辞 Y が付きます。Y2 ~ Y5 が X4 ~ X11 のエイリアスとなります。
256 ビット | 512 ビット | 1024 ビット |
---|---|---|
wl0 | x0 | |
wh0 | ||
wl1 | x1 | |
wh1 | ||
wl2 | x2 | |
wh2 | ||
wl3 | x3 | |
wh3 | ||
wl4 | x4 | y2 |
wh4 | ||
wl5 | x5 | |
wh5 | ||
wl6 | x6 | y3 |
wh6 | ||
wl7 | x7 | |
wh7 | ||
wl8 | x8 | y4 |
wh8 | ||
wl9 | x9 | |
wh9 | ||
wl10 | x10 | y5 |
wh10 | ||
wl11 | x11 | |
wh11 |
マスク レジスタ
ベクトル レジスタ以外に、スパース度に使用する 128 ビット マスク レジスタが 4 個 (Q0 ~ Q3) あります。詳細は、スパース性 を参照してください。
アキュムレータ レジスタ
アキュムレータ レジスタは、ベクトル データパスの結果を格納するために使用します。このレジスタは 256 ビット幅で、8 レーンの 32 ビット データ、または 4 レーンの 64 ビット データと見なすことができます。アキュムレータ レジスタには、接頭辞am
が付きます。これら 2 つのエイリアスとして、接頭辞 bm
の 512 ビット レジスタを形成し、さらに 2 つの bm
のエイリアスとして、接頭辞 cm
の 1024 ビット レジスタを形成します。
256 ビット | 512 ビット | 1024 ビット |
---|---|---|
amll0 | bml0 | cm0 |
amlh0 | ||
amhl1 | bmh0 | |
amhh1 | ||
... | ... | ... |
... | ||
... | ... | |
... | ||
amll8 | bml8 | cm8 |
amlh8 | ||
amhl8 | bmh8 | |
amhh8 |