インテル® Agilex™ ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアル

ID 683567
日付 1/19/2023
Public
ドキュメント目次

16.5.9.3.2. ATAペイロード転送におけるレジスターの設定

次の表に従い、cmdargcmdblksiz、およびbytcntレジスターを設定する必要があります。
表 158.  ATAペイロード転送におけるcmdargレジスターの設定
ビット 備考

31

1または0

読み出し動作には0、書き込み動作には1に設定します。

30:24

0

予約済み (ビットはホスト・プロセッサーによって0に設定されます)

23:16

0

予約済み (ビットはホスト・プロセッサーによって0に設定されます)

15:8

データカウント

Data Count Unit [15:8]

7:0

データカウント

Data Count Unit [7:0]

表 159.  ATAペイロード転送におけるcmdレジスターの設定
ビット 備考
start_cmd

1

-
ccs_expected

1

CCSが想定されています。CE‑ATAカードデバイスで割り込みが有効になっている (ATAコントロール・レジスターでnIENビットが0に設定されている) 場合は、RW_BLKコマンドに対して1に設定します。

read_ceata_device

0または1

RW_BLKまたはRW_REG読み出しコマンドには1に設定します。

update_clk_regs_only

0

クロック・パラメーターの更新のないコマンドです。

card_num

0

-
send_initialization

0

初期化シーケンスはありません。

stop_abort_cmd

0

-
send_auto_stop

0

-
transfer_mode

0

ブロック転送モード。バイト数は4kBの整数倍にする必要があります。ブロックサイズは512、1k、または4kバイトにすることができます。

read_write

1または0

書き込みの場合は1、読み出しの場合は0

data_expected

1

データが想定されています。

response_length

0

-
response_expect

1

-
cmd_index

コマンド・インデックス

このパラメーターをコマンド番号に設定します。例えば、SD/SDIO WRITE_BLOCK (CMD24) の場合は24、WRITE_MULTIPLE_BLOCK (CMD25) の場合は25に設定します。

wait_prvdata_complete

1

  • コマンドをすぐに送信する場合は0
  • 前のDTO割り込み後にコマンドを送信する場合は1
check_response_crc

1

  • 応答CRCをチェックしない場合は0
  • 応答CRCをチェックする場合は1
表 160.  ATAペイロード転送におけるblksizレジスターの設定
ビット 備考

31:16

0

予約済みビットは0に設定されます。

15:0 (block_size)

512、1024、または4096

MMCブロックサイズは、ホストのネゴシエートに応じて512、1024、または4096バイトになります。

表 161.  ATAペイロード転送におけるbytcntレジスターの設定
ビット 備考

31:0

<n>*block_size

バイトカウントは、ブロックサイズの整数倍にする必要があります。ATAメディア・アクセス・コマンドの場合、バイトカウントは4KBの倍数にする必要があります。

(<n>*block_size = <x>*4KB。この <n> および <x> は整数です。)