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

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

16.5.10. カードの読み出ししきい値

アプリケーションで単一ブロックまたは複数ブロックの読み出しコマンドを実行する必要がある場合、アプリケーションでは、Card Read Threshold (cardrdthreshold) フィールドをカードの適切な読み出ししきい値サイズにして、cardthrctlレジスターを設定する必要があります。また、cardrdthrenビットを1に設定する必要があります。コントローラーで指定されるこの追加情報は、カードの読み出ししきい値に等しいスペースがRX FIFOバッファーで利用可能な場合にのみ、コントローラーが読み出しコマンドを送信することを保証します。これにより、カードからデータブロックが送信されている途中でカードクロックが停止しないことを保証しています。カードの読み出ししきい値を転送のブロックサイズに設定することで、コントローラーがカードクロックを有効にする前に、RX FIFOバッファーに最低1つのブロックサイズのスペースがあることを保証します。

カードの読み出ししきい値は、往復遅延がsdmmc_clk_dividedの半分よりも大きい場合に必要です。

表 162.  カードの読み出ししきい値のガイドライン
バスの速度モード 往復遅延 (Delay_R) 40 カードクロック停止の可否 カード読み出ししきい値の要否

SDR25

Delay_R > 0.5 * (sdmmc_clk/4)

Delay_R < 0.5 * (sdmmc_clk/4)

不可

必要

不要

SDR12

Delay_R > 0.5 * (sdmmc_clk/4)

Delay_R < 0.5 * (sdmmc_clk/4)

不可

必要

不要

40

Delay_R = Delay_O + tODLY + Delay_I

この式の詳細は次のとおりです。

Delay_O = sdmmc_clksdmmc_cclk_out間の遅延 (I/Oピンの遅延を含む)

Delay_I = 入力I/Oピンの遅延 + 入力レジスターへのルーティング遅延

tODLY = sdmmc_cclk_outとカードの出力の間の遅延 (カードの製造元および速度モードによって異なる)