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

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

16.4.6. 電圧の切り替え

この章では、電圧レベルを切り替える一般的な手順について説明します。

SD/MMCカードは、1.8Vや3.3Vなどのさまざまな動作電圧をサポートします。1.8Vのカードを使用している際に、それを取り外して3.3Vの別のカードに置き換える場合は、電圧の切り替えが必要です。

カードを動作させるための適切な電圧レベルを得るには、ボード上に別のデバイス、すなわち電圧変換トランシーバーと電源レギュレーターまたは電源が必要です。ソフトウェアは電圧の切り替えが必要なことを認識すると、別の電圧レベルをカードに供給する必要があることを電源レギュレーターに通知します (1.8Vと3.3Vの切り替え)。

多くのSDカードには、1.8Vまたは3.3Vで信号を送信するオプションがありますが、最初の電源投入時の電圧要件は3.3Vです。これらの異なる電圧要件をサポートするには、外部トランシーバーが必要です。

電圧レベルを切り替える一般的な手順では、HPSとSD/MMCカードの間でSD/MMC電圧変換トランシーバーを使用する必要があります。

図 53. 電圧切り替えコマンドフローの図
(*1) 注意: カードは次の場合にビジーを返します。
  • カードが内部初期化プロセスを実行している
  • カードがHigh CapacityまたはExtended CapacityのSDメモリーカードであり、ホストがHighをサポートしていない

次に、電圧切り替えのプログラミング・シーケンス手順をまとめます。

  1. ソフトウェア・ドライバーがCMD0を開始します。これによりバスモードがSDとして選択されます。
  2. バスがSDカードモードに入ると、CMD8が開始され、カードがSD Memory Card Specification、Version 2.00と互換性があるかを確認します。
    CMD8は、CMDのVHS (19:16) フィールドで指定されているホストの電源電圧内でカードが動作できるかを判断します。CMD8に対する応答を受信した場合、カードはホストの現在の電圧をサポートします。
  3. ACMD 41が開始されます。
    このコマンドに対する応答は、カードが電圧の切り替えをサポートしているかをソフトウェアに通知します。ビット38、36、および32が、ACMD41のカード引数によって確認されます。
    図 54. ACMD41の引数
    1. ビット30は、ホストがSDHC/SDXCをサポートしているかをカードに通知します。このビットは、1'b1に設定されている必要があります。
    2. ビット28は、1または0のいずれかになります。
    3. ビット24は1'b1に設定されている必要があります。これは、ホストが電圧切り替えに対応していることを示します。
      図 55. ACMD41の応答 (R3)
    4. ビット30 - 1'b1に設定されている場合、カードはSDHC/SDXCをサポートします。1'b0に設定されている場合、カードはSDSCのみをサポートします。
    5. ビット24 - 1'b1に設定されている場合、カードは電圧の切り替えをサポートしており、切り替えの準備が整っています。
    6. ビット31 - 1'b1に設定されている場合、初期化が終了しています。1'b0に設定されている場合は、初期化が進行中であることを意味します。

  4. カードが電圧の切り替えをサポートしている場合は、ソフトウェアで、 Synopsys® DesignWare Cores Mobile Storage Host Databookの「Voltage Switch Normal Scenario」または「Voltage Switch Error Scenario」で説明されている手順を実行する必要があります。