- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
≪使用環境≫
IC:CY7C68300C-56LTXC
設定:通信モードの設定は下図を参照
接続デバイスの仕様:ATA Ultra DMA mode 4 まで対応
Enable UDMA mode2 Enable multiword DMA / Enable PIO mode4,3
《質問》
上図の設定の場合、通常であればデータ通信は「UDMA Mode2」で接続されます。
もし、UDMA2のハンドシェイクに失敗した場合、
次にホスト⇔デバイスはどのモードで通信しますでしょうか?
優先順位としては UDMA > Multi-word DMA > PIO になりますでしょうか?
解決済! 解決策の投稿を見る。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
ハンドシェイクと仰っているのは、デバイス検出の通信を指していると考えています。
いかなる場合も絶対に失敗しないという保証はできません。
質問2は、ご認識の通りです。
AT2LPがAT2LPに接続されたデバイスのレジスタにアクセスし、デバイスの検出と制御をします。
よろしくお願い致します。
Hirotaka Takayama
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
UDMAでのハンドシェイクに失敗した場合、予測できない動作となります。
Multiword DMAでは通信しません。
よろしくお願い致します。
Hirotaka Takayama
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
HirotakaT_91様
ご回答ありがとうございます。
予測できない動作になる旨、承知いたしました。
例えば、デバイスに何が繋がるか分からない場合(どのモードに対応しているか分からない場合)の
推奨設定はございますでしょうか。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
より多くのATA/ATAPIデバイスをサポートできるよう、AT2LPでは多くのModeに対応できるよう設定するのが良いのではないでしょうか。
例えば、CY4615B RDKにて用意しているCY4615B_C_default.iicファイルであれば、UDMA2, 4, Multiword-DMA, PIO mode 3,4がenableになっています。 (PIO mode 0は常に対応します)
Hirotaka Takayama
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
ご返信ありがとうございます。
大変申し訳ございません。私の表現が悪かったので、質問の仕方と状況を整理させください。
今回の場合、一番最初に投稿した上の設定画像の様に
・UDMA2
・Multiword-DMA
・PIO mode 3,4
はEnableの状態です。
【質問1】
ハンドシェイク失敗時は予測できないモードになるということは、
当ICはいかなる通信モードでもハンドシェイクが失敗しない想定でしょうか。
【質問2】
以下の状況での動作をご教授願います。
基本使用はUDMA2対応のデバイスが接続される(ハンドシェイクも成功する)ので問題ありません。
しかし、イレギュラーな環境の場合、以下の動作になるということでよいでしょうか?
*******************************************************************************************************
イレギュラー環境①:UDMA2対応デバイス接続時にUDMA2ハンドシェイクが失敗する場合
⇒予測できない動作になる(上記回答より)
電源OFF→ONしないと復旧しない。
イレギュラー環境②:UDMA2に対応していないデバイスが接続される場合
⇒デバイスが対応するモードで接続(デバイスがモードを通知する?)
*******************************************************************************************************
大変恐縮ではございますが、ATA初心者なもので、見当違いの質問をしていたら申し訳ございません。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
ハンドシェイクと仰っているのは、デバイス検出の通信を指していると考えています。
いかなる場合も絶対に失敗しないという保証はできません。
質問2は、ご認識の通りです。
AT2LPがAT2LPに接続されたデバイスのレジスタにアクセスし、デバイスの検出と制御をします。
よろしくお願い致します。
Hirotaka Takayama