レジスタ ファイル

Versal アダプティブ SoC AIE-ML アーキテクチャ マニュアル (AM020)

Document ID
AM020
Release Date
2023-11-10
Revision
1.2 日本語

AIE-ML にはいくつかの種類のレジスタがあります。レジスタの種類によって、使用するファンクション ユニットが異なります。このセクションでは、各種レジスタについて説明します。

スカラー レジスタ

スカラー レジスタには、コンフィギュレーション レジスタが含まれます。次に、各レジスタの説明を示します。

表 1. スカラー レジスタ
構文 ビット数 説明
r0..r31 32 ビット 汎用レジスタ
m0..m7 20 ビット 修飾子レジスタ
p0..p7 20 ビット ポインター レジスタ

特殊レジスタ

表 2. 特殊レジスタ
構文 ビット数 説明
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)
  1. ステータスおよび制御レジスタは、それぞれ少ないビット数で構成される別々のレジスタとして存在します。デバッグ インターフェイスを使用した場合のみ、個々のレジスタを 1 つの 32 ビット幅 SR および CR レジスタとしてアクセスできます。

ベクトル レジスタ

ベクトル レジスタはビット幅が広く SIMD 命令が可能で、オペランドの格納に使用します。これらのレジスタには接頭辞 W が付きます。24 個の 256 ビット レジスタ (wln および whn、n = 0 ~ 11) があります。2 つの W レジスタは 1 つの 512 ビット レジスタにグループ化でき、このレジスタには接頭辞 X が付きます。2 つの X レジスタも 1024 ビット レジスタにグループ化でき、このレジスタには接頭辞 Y が付きます。Y2 ~ Y5 が X4 ~ X11 のエイリアスとなります。

表 3. ベクトル レジスタ
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 ビット レジスタを形成します。
表 4. アキュムレータ レジスタ
256 ビット 512 ビット 1024 ビット
amll0 bml0 cm0
amlh0
amhl1 bmh0
amhh1
... ... ...
...
... ...
...
amll8 bml8 cm8
amlh8
amhl8 bmh8
amhh8