インテルのみ表示可能 — GUID: nik1412467955387
Ixiasoft
3.7. Avalon-MMスレーブのアドレス指定
動的なバスのサイズ調整により、異なるデータ幅のマスターとスレーブのペア間における転送時にデータを管理します。スレーブのデータは、マスターのアドレス空間の連続したバイトにアライメントされます。
マスターのデータ幅がスレーブのデータ幅よりも広い場合、マスターアドレス空間内のワードは、スレーブアドレス空間内の複数の位置にマッピングされます。例えば、32ビットのマスターが16ビットのスレーブから読み出しを行うと、スレーブ側で2つの読み出し転送が発生します。読み出しは、連続したアドレスに対して行われます。
マスターがスレーブよりも狭い場合は、インターコネクトでスレーブのバイトレーンを管理します。マスターの読み出し転送時に、インターコネクトは、スレーブデータの適切なバイトレーンのみを幅の狭いマスターに提供します。マスターの書き込み転送時は、インターコネクトは、自動的にbyteenable信号をアサートし、指定されているスレーブのバイトレーンにのみデータを書き込みます。
スレーブのデータ幅は、8、16、32、64、128、256、512、または1024ビットである必要があります。次の表は、フルワードアクセスを実行する32ビットのマスターにおける、さまざまな幅のスレーブデータに対するアライメントを示しています。この表で、OFFSET[N]は、スレーブアドレス空間へのスレーブ・ワード・サイズのオフセットを指しています。
マスターのバイトアドレス (1) | アクセス | 32ビット・マスターのデータ | ||
---|---|---|---|---|
8ビットのスレーブ・インターフェイスにアクセスする場合 | 16ビットのスレーブ・インターフェイスにアクセスする場合 | 64ビットのスレーブ・インターフェイスにアクセスする場合 | ||
0x00 | 1 | OFFSET[0] RCLK[7..0] | OFFSET[0] RCLK[15..0] (2) | OFFSET[0] RCLK[31..0] |
2 | OFFSET[1] RCLK[7..0] | OFFSET[1] RCLK[15..0] | — | |
3 | OFFSET[2] RCLK[7..0] | — | — | |
4 | OFFSET[3] RCLK[7..0] | — | — | |
0x04 | 1 | OFFSET[4] RCLK[7..0] | OFFSET[2] RCLK[15..0] | OFFSET[0] RCLK[63..32] |
2 | OFFSET[5] RCLK[7..0] | OFFSET[3] RCLK[15..0] | — | |
3 | OFFSET[6] RCLK[7..0] | — | — | |
4 | OFFSET[7] RCLK[7..0] | — | — | |
0x08 | 1 | OFFSET[8] RCLK[7..0] | OFFSET[4] RCLK[15..0] | OFFSET[1] RCLK[31..0] |
2 | OFFSET[9] RCLK[7..0] | OFFSET[5] RCLK[15..0] | — | |
3 | OFFSET[10] RCLK[7..0] | — | — | |
4 | OFFSET[11] RCLK[7..0] | — | — | |
0x0C | 1 | OFFSET[12] RCLK[7..0] | OFFSET[6] RCLK[15..0] | OFFSET[1] RCLK[63..32] |
2 | OFFSET[13] RCLK[7..0] | OFFSET[7] RCLK[15..0] | — | |
3 | OFFSET[14] RCLK[7..0] | — | — | |
4 | OFFSET[15] RCLK[7..0] | — | — | |
以下同様に続きます | 以下同様に続きます | 以下同様に続きます | 以下同様に続きます | |
注意:
|