アプリケーションノート 4113

MAX9257/MAX9258のEVキットをI²Cモードで動作させるためのガイドライン


要約: 必要なアプリケーション向けにシリアライザ/デシリアライザ(SerDes)コンポーネントを選択する場合、事前にそれらの評価を行うことがハードウェア設計を成功させる上で極めて重要です。このアプリケーションノートでは、MAX9257/MAX9258のEVキットを迅速にI²Cモードに設定するためのガイドラインを提供し、グラフィックユーザインタフェース(GUI)の変化を1つずつ捉えたステップバイステップのスクリーンショットを示します。これらの指示に従うことによって、I²Cモードで動作する構成を非常に迅速に実現することができます。

以下の情報から、MAX9257/MAX9258のEVキットが持つすべての機能および特徴を利用したテスト構成について理解することができます。具体的な例として、I²Cモードを選びました。このモードを実装する前に、EVキットの立上げとソフトウェアの起動についての一般的なガイドラインに従ってください。このアプリケーションノートでは、お客様がすでにMAX9257/MAX9258のEVキットを所有しており、その使用法に習熟していることを前提にしています。なお、MAX9257/MAX9258のEVキットは「特別注文扱い」のEVキットですのでご注意ください。
  1. すべてのジャンパが、表1に示すデフォルト位置に設定されていることを確認してください。

    表1. MAX9257/MAX9258のEVキットのジャンパ設定
    JU1 短絡 アクティブローのPD端子を1kΩの抵抗でVCCにプルアップ
    JU2 開放 LVDSラインプローブ用コネクタ
    JU3 開放 LVDSラインプローブ用コネクタ
    JU4 短絡 アクティブローのERROR端子を1kΩの抵抗でVCCOUTにプルアップ
    JU5 短絡 LOCK端子を1kΩの抵抗でVCCOUTにプルアップ
    JU6 短絡 MAX9258のVCCをボード上のLDOの+3.3V出力に接続
    JU7 短絡 MAX9258のVCCOUTをボード上のLDOの+3.3V出力に接続
    JU8 短絡 MAX9258のVCCPLLをボード上のLDOの+3.3V出力に接続
    JU9 短絡 MAX9258のVCCSPLLをボード上のLDOの+3.3V出力に接続
    JU10 短絡 MAX9258のVCCLVDSをボード上のLDOの+3.3V出力に接続
    JU11 ピン2-3間を短絡 MAX9258への給電をボード上の+5V入力のLDO (U4)によって行う
    JU14 ピン2-3間を短絡 LVDSケーブルのライン1をグランドに接続
    JU15 短絡 MAX9258のRX端子をボード上のエミュレート用ECUのRxラインに接続
    JU16 短絡 MAX9258のTX端子をボード上のエミュレート用ECUのTxラインに接続
    JU17 ピン2-3間を短絡 MAX9257のSCL/TX端子をVCCIOにプルアップ
    JU18 ピン2-3間を短絡 MAX9257のSDA/RX端子をVCCIOにプルアップ
    JU19 短絡 MAX9257のVCCをボード上のLDOの+3.3V出力に接続
    JU20 短絡 MAX9257のVCCIOをボード上のLDOの+3.3V出力に接続
    JU21 短絡 MAX9257のVCCFPLLをボード上のLDOの+3.3V出力に接続
    JU22 短絡 MAX9257のVCCSPLLボード上のLDOの+3.3V出力に接続
    JU23 短絡 MAX9257のVCCLVDSをボード上のLDOの+3.3V出力に接続
    JU24 ピン2-3間を短絡 J6コネクタの一方をグランドに接続
    JU25 ピン2-3間を短絡 MAX9257のREM端子をグランドに接続
    JU26 ピン1-2間を短絡 MAX9257のSCL/TX端子をボード上のエミュレート用カメラのRxラインに接続
    JU27 ピン1-2間を短絡 MAX9257のSDA/RX端子をボード上のエミュレート用カメラのTxラインに接続
    JU29 ピン2-3間を短絡 LVDSケーブルのライン1をグランドに接続
    JU30 Open LVDSラインプローブ用コネクタ
    JU31 Open LVDSラインプローブ用コネクタ

  2. EVボードの両側にある5VおよびGNDパッドに5V電源を接続してください(図1)。すべての接続が完了し、すべてのジャンパ位置の確認が終わるまで電源はオフにしておいてください。

    Figure 1. Setup configuration for lab tests.
    図1. 実験室テスト用のセットアップ構成

  3. J2とJ7の間をJAEケーブルで接続してください。
  4. オシロスコープのCH1をJ1-37に接続してください。
  5. オシロスコープのCH2をJ1-35に接続してください。
  6. オシロスコープのCH3をJ5-12に接続してください。
  7. PCとJ3の間をUSBケーブルで接続してください(:J8ではありません)。
  8. スタートメニューのアイコンをクリックして、MAX9257_58 Evaluation Kit Softwareプログラムを起動してください。
  9. ECUによってリモートからMAX9257のウェイクアップを行うかという質問に対して、Yesボタンをクリックしてください。図2のようなソフトウェアのメインウィンドウが表示されます。

    Figure 2. The software main window appears when the Yes button is clicked to indicate that the ECU remotely wakes up the MAX9257. Once ECU wakes up MAX9257, TxIN, RxOUT, and CCEN all are high.
    画像の拡大
    (PDF)
    図2. ECUによってリモートからMAX9257のウェイクアップを行うことを示すYesボタンをクリックすると、ソフトウェアのメインウィンドウが表示されます。ECUによってMAX9257のウェイクアップが行われた後は、TxIN、RxOUT、およびCCENがすべてハイになります。

  10. ソフトウェアのメインウィンドウのステータスバーに「EV kit connected.」というメッセージが表示されることを確認してください。これは、EVキットが正しく接続されていることを示します。
  11. ECU ControlページのECU Wakes Up MAX9257ボタンをクリックしてください(図3)。

    Figure 3. Click the ECU Wakes Up MAX9257 button.
    画像の拡大
    (PDF)
    図3. ECU Wakes Up MAX9257ボタンをクリックします。

  12. Deserializer MAX9258タブをクリックして、Deserializer MAX9258ページに移動してください(図4)。

    Figure 4. Navigate to the Deserializer MAX9258 page.
    画像の拡大
    (PDF)
    図4. Deserializer MAX9258ページに移動します。

  13. Read MAX9258 & 9257ボタンをクリックして、MAX9258およびMAX9257の全レジスタの読取りを行ってください。
  14. ETOCNTドロップダウンメニューで選択を行い、Reg03の右にあるWriteボタンをクリックすることによって、MAX9258のレジスタ03 ETOCNTとMAX9257のレジスタ03 ETOCNTの両方に0100をセットしてください。
  15. CTOドロップダウンメニューで選択を行い、Reg07の右にあるWriteボタンをクリックすることによって、MAX9258のレジスタ07 CTOとMAX9257のレジスタ08 CTOの両方に111をセットしてください。
  16. Serializer MAX9257タブをクリックして、Serializer MAX9257ページに移動してください。
  17. SERENドロップダウンメニューで選択を行い、Reg04の右にあるWriteボタンをクリックすることによって、MAX9257のSERENビットをイネーブルしてください。リンク上で通信が行われているときには、SERENウィンドウが常にアクティブ化されることに注意してください。
  18. Camera Controlタブをクリックして、Camera Controlページに移動してください。
  19. Slow Blink D4ボタンをクリックして、LED D4が約5秒間点滅することを確認してください。
  20. Enable PCLK_IN/HSYNC_IN/VSYNC_INボタンをクリックして、LOCKの状態を示すLED D1が点灯することを確認してください。点灯した場合は、システムがロックされたことを示しています。
  21. マルチチャネルオシロスコープを使用して、このボードの評価中に波形を確認してください。トリガを適切に設定することによって、単一の送受信シーケンスおよびリンク上で送信されるデータを観察することができます。
これでボードの全体的な機能の確認を終わり、次に説明する手順にしたがってEVキットをI²Cモードに設定します。I²Cは、ユーザがすべての制御レジスタおよびそれらの内容に対する制御を維持することができるという点で、望ましいモードです。

カメラがI²Cインタフェースを備えている場合は、MAX9258とMAX9257の両方をI²Cインタフェース上で動作するように設定すべきです。ボード上に搭載されているエミュレート用カメラは、デフォルトではUARTインタフェースで動作するため、最初にカメラをUARTインタフェースからI²Cインタフェースに切り替える必要があります。次に示す手順にしたがって、評価ボードのI²Cインタフェースにアクセスしてください。
  • プログラムを起動するか、またはECU ControlページのReset the EVKITボタンをクリックしてください。
  • MAX9257のREMがハイに設定されている(JU25のピン1-2間にジャンパプラグが装着されている)場合、ECU ControlページのECU Wakes Up MAX9257ボタンをクリックしてください。MAX9257のREMがローに設定されている(JU25のピン2-3間にジャンパプラグが装着されている)場合は、このステップを省略してください。
  • Deserializer MAX9258ページに移動してください。Read MAX9258 & 9257ボタンをクリックして、GUI上の現在のレジスタ値を更新してください。更新前に表示されているのは、最後に検出されたレジスタ値(または、起動時の場合はデフォルトのレジスタ値)です。
  • W/R Both 9258&9257というラベルの下にある4つのチェックボックスは、常にオンにしてください。それによってSerDesのレジスタを同時に設定することが可能になり、SerDesのパラメータ設定間に望ましくない不整合が発生するのを防ぐことができます。
  • MAX9258とMAX9257の両方のtCTOを64ビットに設定してください(CTO = 100)。
  • Camera Controlページに移動して、Exit UART Mode -> Enter I²C Modeボタンをクリックしてください。
  • 注意を促すメッセージにしたがって、JU26/JU27のジャンパプラグをピン1-2間からピン2-3間に移動してください。OKボタンをクリックしてください。
  • これで、カメラとSerDesがI²Cインタフェースで動作するようになりました。D4ダイオードの点灯/消灯および高速/低速点滅機能をテストすることによって、システムが正常に機能し、カメラのエミュレーションが行われることを確認することができます。そのための制御ボタンが、ソフトウェアの左側に配置されています。任意のページに移動して、SerDesの機能(たとえば、アクセス可能な各種レジスタの書換えなど)を実行してください。
  • エミュレーション用カメラのI²Cインタフェースは最高4.25MHzの速度で動作可能であり、これはMAX9258およびMAX9257も同じです。ECUのI²Cマスタークロックを変更する前に、MAX9258とMAX9257のBITRATEレジスタビットを適切に設定してください。
  • リンクを通してデータを送信する場合は、SERENEnabledに設定されていることを確認してください。

MAX9257/MAX9258のEVキットの動作を確認するための適切なセットアップに必要な計測器および部品

  • ヒューレットパッカードE3620A:0~25V、0~1Aのデュアル出力電源
  • テクトロニクスTDS 3014:帯域幅100MHz、サンプリング速度1.25Gsps、標準10xプローブを備えた4チャネルDSO
  • Windows®XPベースのPCまたはノートブックコンピュータ(USBインタフェースをサポートしているもの)
  • 2mのJAEベースのケーブル(MAX9257シリアライザとMAX9258デシリアライザの間を適切に接続するため)

MAX9257/MAX9258のEVキットのボードとのI²Cモード通信

このテストプログラムは、I²CモードでEVキットのボードとの通信を行う手順を示しています。このモードを機能させるため、あるいは適切に設定を行うためには、最初にUARTインタフェースモードでシステムを起動する必要があります。MAX9257/MAX9258の設定を行うためには、ソフトウェアをINTMODE = I²Cに設定する必要があります(MAX9257とMAX9258の両方のデバイスに対する更新/書込みを行うために、画面右側のチェックボックスを必ずオンにしてください)。デバイスへの書込みとTxIN端子のシングルトリガ観測を行うことによって、デバイスに書き込まれる一連のコマンド(たとえば、I²Cモード用の設定など)を捕捉することができます。図5に、ボードを限定的CTOモードに設定する送信(TxIN、CH2)および受信(RxIN、CH3)シーケンスのスナップショットを示します。これは、ボードをI²Cモード用に設定するために必要となるモードです。これらの手順は、すべてまだUARTモードで行われていることに注意してください(JU26およびJU27のピン1-2間を短絡)。

Figure 5. Monitoring RxIN and TxIN with a digital oscilloscope (DSO) shows that the data transmitted over the link is received by the MAX9258.
図5. RxINおよびTxINをディジタルオシロスコープ(DSO)で監視すると、リンク上で送信されたデータがMAX9258によって受信される様子を確認できます。

ジャンパの設定が完了した後で、カメラ制御タブでUARTモードをオフにしてI²Cモードに移行する必要があります。Exit UART Mode -> Enter I²C Modeをクリックしてください。I²Cモードを正しく動作させるためには、JU26およびJU27のピン2-3間を短絡させる必要があります。必ずソフトウェアのポップアップウィンドウに表示される指示にしたがってください(図6)。

Figure 6. Screen directions for proper I²C operation. Make sure that jumpers JU26 and JU27 are shunted to pins 2-3 for I²C mode.
画像の拡大
(PDF)
図6. 適切なI²C動作のための指示が画面上に表示されます。I²Cモードの場合、必ずジャンパJU26およびJU27のピン2-3間を短絡させてください。

ここで、システムによってCamera Controlページの下半分が有効化されます。I²Cモードが有効化されたのに対し、UARTモードは有効化されていないことを反映して、図7に示すようにページの上半分がグレー表示になります。

Figure 7. The upper portion of the Camera Control page is grayed out, indicating that I²C mode is enabled.
画像の拡大
(PDF)
図7. Camera Controlページの上半分がグレー表示になり、I²Cモードが有効化されたことを示します。

左側に設けられたD4の点灯/消灯および高速/低速点滅を行うボタンをクリックしてカメラ制御のエミュレートを行うと、I²Cモードでカメラ側を完全に制御していることが分かります。D4は、デシリアライザボード上のFPGAのすぐ上、マイクロコントローラの近くに位置しています。

リンクを正しく動作させるには、SerDesとピクセルクロックリンクの設定を行う必要があります。テスト用として、ピクセルクロック速度10MHz、ビット解像度12ビットでSerDesを動作させると仮定します(図8および9)。

Figure 8. Serializer MAX9257 page after setting up all parameters.
画像の拡大
(PDF)
図8. すべてのパラメータ設定が終わった後のSerializer MAX9257ページ。

Figure 9. Camera Control screen after proper setup.
画像の拡大
(PDF)
図9. 適切な設定を行った後のCamera Control画面。

SerDesの2つの画面はよく似ており、このアプリケーションノートの目的に照らして、シリアライザについてのみカメラモード用の設定画面を示します。カメラモードでシステムを適切に操作するため、2つのSerDes画面とも同じ設定にしたがってください。

この結果、表2に示す設定になります。

表2. SerDesのセットアップ結果
ページ名 信号 設定
Camera Control PCLK_IN 10MHz
SerDes Control PRATE 00 (5MHz~10MHz)
SRATE 01 (100Mbps~200Mbps)
PWIDTH 001 (12ビット)

必ずこれらのパラメータをすべて書き込んでから、Camera ControlページでPCLKを有効化してください。

Camera ControlページでEnable PCLK_IN/HSYNC_IN/VSYNC_INボタンをクリックすると、図10のような画面が表示されます。この画面は、Camera ControlページでPCLKの有効化と無効化を行う場合の標準的な送信シーケンスを示しています。この図は単なる検証のためのものであり、I²Cモードでデータが転送されるときに信号がどのような形になるかを示すものです。

Figure 10. This transmitting sequence illustrates what I²C-mode data looks like when PCLK is enabled.
図10. この送信シーケンスは、PCLKを有効化したときI²Cモードのデータがどのような形になるかを示しています。

デシリアライザの設定を適切に行うと、結果は図11の画面になります。この画面から、PRATE、SRATE、およびPWIDTHの詳細が分かります。TxIN端子にトリガを設定してこの情報をデシリアライザに書き込むと、オシロスコープの画面は図12のようになります。ここには送信情報だけが表示されており、受信情報は表示されていません。

Figure 11. The MAX9258 deserializer is set up properly.
画像の拡大
(PDF)
図11. MAX9258デシリアライザが適切に設定されています。

Figure 12. This scope screen shows the transmitted result of writing the appropriate settings to the MAX9258 deserializer.
図12. このオシロスコープ画面は、適切な設定をMAX9258デシリアライザに書き込んだときの送信結果を示しています。

同様に、シリアライザを適切に設定すると、図13のような画面になります。この画面から、PRATE、SRATE、およびPWIDTHの詳細が分かります。適切な/任意の通信を行うためには、シリアライザ側でSERENビットをイネーブルする必要があることに注意してください。I²Cモードはインタフェースとの極めて柔軟な通信を提供するため、SERENビットはセットアップのもっと後の段階でイネーブルすることも可能です。

Figure 13. If the display appears as shown here, the MAX9257 serializer is properly set up. The Deserializer MAX9258 screen will need to look similar to this screen in order for the system to operate at its full capacity in camera or I²C mode.
画像の拡大
(PDF)
図13. ここに示すような画面が表示されれば、MAX9257シリアライザが適切に設定されています。カメラまたはI²Cモードにおいてシステムが最大の能力で動作するためには、Deserializer MAX9258画面もこれに似た内容になっている必要があります。

結論

ここからは、基本的にユーザが必要に応じて画面/ビット/レジスタの操作を行うことになります。MAX9257/MAX9258が反応しなくなった場合は、システムをリセットする必要があるかも知れません。ECU Controlページに戻って、Reset the EVKITボタンをクリックして、電源をオフにして、再びオンにして、再度リモートからMAX9257のウェイクアップを行うということを覚えておいてください。I²Cモードで操作を行う場合は、前述の手順をもう一度最初から行ってください。また、ボードはリセットによってUARTモードになるため、ジャンパJU26およびJU27の2つのジャンパプラグを設定し直す必要があることも忘れないでください。限定的CTOモードの処理を経てMAX9257/MAX9258をI²Cモードに設定するために、UARTモードが要求されます(たとえば、シリアライザとデシリアライザの両方についてCTOレジスタのCTOタイミングを64ビットに設定するなど)。