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

シリアライザ/デシリアライザデバイスの制御チャネルおよび動作に関するFAQ

筆者: Wai Phyo

要約: このアプリケーションノートでは、ギガビットマルチメディアシリアルリンク(GMSL)シリアライザ/デシリアライザ(サーデス)デバイスの制御チャネルおよび動作に関するよくある質問(FAQ)を取り上げます。これらの製品は、自動車の低コストのシールドツイストペア(STP)または同軸ケーブル上でビデオおよび制御情報を伝送します。以下の質問は、これらのデバイスのシリアルリンクおよびそれがビデオデータと制御情報を扱う方法に関するものです。

目次

動作

小型GMSLデバイス

GMSLデバイス

GMSL以外のデバイス

制御チャネル

設定

動作

小型GMSLデバイス

Q) MAX9272のダブル出力機能がシリアライザでサポートされていない場合、データはデフォルトのシングル入力になります。これはどういう意味ですか?
A) シリアライザのMAX9259とデシリアライザのMAX9272を組み合わせる場合、MAX9259はシングル入力になると考えてください。たとえば、MAX9259とMAX9272を組み合わせる場合、両端でBWSを同じ設定にする必要があります。MAX9272は、シングル出力モードとダブル出力モードのどちらにすることも可能です。MAX9259のDINからMAX9272のDOUTへのパラレルデータのマッピングは、以下のとおりです。
(BWS = 0、24ビットモード) 9259 [DIN(0:20)]から9272 [DRS = 0、DBL = 0; DOUT(0:21)]へ。9272のDOUT21はゼロになります。9259 [DIN(0:20)]から9272 [DRS = 0、DBL = 1; DOUTA(0:10)&DOUTB(0:10)]へ。9272のDOUTB10はゼロになります。
(BWS = 1、3ビットモード) 9259 [DIN(0:28)]から9272 [BWS = 1、DBL = 0; DOUT(0:27)]へ。9259のDIN28はマッピングされません。9259 [DIN(0:28)]から9272 [DRS = 0、DBL = 1; DOUTA(0:14)&DOUTB(0-14)]へ。9272のDOUTB14はゼロになります。
GMSLデバイスのMAX9259と小型GMSLデバイスのMAX9272を組み合わせることが可能です。MAX9272には端子の制限があり、許容されるPCLK周波数範囲はMAX9259との互換性が必要であることを忘れないでください。また、MAX9259 (またはMAX9272)でサポートされている1つまたは複数の特長/機能が、MAX9272 (またはMAX9259)デバイスではサポートされません(たとえば、オーディオ、ハミング符号、CRCおよびHVエンコードなど)。
Q) MAX9272MAX9271からデータを受信する場合、BWSおよびDBLは両方のデバイスで同じ設定にする必要がありますか?たとえば、MAX9271がシングルモードでデータを入力し、MAX9272がダブルモードでデータを出力するということは可能ですか?
A) はい、BWSは両方の側で同じ設定にする必要があります。MAX9271がシングル入力モードでMAX9272がダブル出力モード、または入力がダブルで出力がシングルということは可能です。
MAX9271のシングル入力データは、次のようにMAX9272のダブル出力にマッピングされます。
A. BWS = 0の場合、DIN(0:15)はDOUTA(0:10)&DOUTB(0:4)にマッピングされます。DOUTB(5:10)はゼロになります。
B. BWS = 1の場合、DIN(0:15)はDOUTA(0:14)&DOUTB(0)にマッピングされます。DOUTB(1:14)はゼロになります。
MAX9271のダブル入力データは、次のようにMAX9272のシングル出力にマッピングされます。
A. BWS = 0の場合、DINA(0:10)はDOUT(0:10)にマッピングされ、DINB(0:10)はDOUT(11:21)にマッピングされます。
B. BWS = 1の場合、DINA(0:12)はDOUT(0:12)にマッピングされ、DINB(0:12)はDOUT(15:27)にマッピングされます。
DINA(13:14)およびDINB(13:14)は、少し複雑です。DINA(13:14)またはDINB(13:14)のいずれかがDOUT(13:14)から出力されますが、どちらなのかは分かりません。システムが起動するたびに変化する可能性があります。そのため、DIN(13:14)を使用する場合は、DINA(13:14)とDINB(13:14)を同じにしてください(すなわち、DIN[0:12]に比べて半分のレートになります)。
Q) MAX9272がHS0/VS0とHS1/VS1の2つのHV出力を備えているのはなぜですか?
A) 両方の側がDBL = 1およびHVEN = 1の場合、最初のDBLサイクルでのMAX9271の入力HS/VSの値はHS0/VS0で、第2のDBLサイクルでのMAX9271の入力HS/VSの値はHS1/VS1です。
Q) MAX9271をダブルモードで使用する場合、シングルモードと同じ転送レートを維持するには、シングルモードのPCLKの2倍の周波数をPLCLKINに印加するのですか?
A) はい。
Q) MAX9271/MAX9272の「25MHz~75MHzクロック(15ビットダブル入力/出力の場合)」という記述は、ダブルモードでのデータ転送レートがクロックの半分、12.5M~37.5Mword/secになるという意味ですか?
A) はい。
Q) シリアライザからデシリアライザのGPIOを駆動する方法はありますか?H/Vエンコードとはどんな機能で、どんな利点がありますか?
A) GPIOはレジスタビットに接続されており、データとは連携されていません。任意のDxx端子(データ + HSYNC + VSYNCを送信するのに十分な端子がある場合)を使用してHSYNCおよびVSYNCを送信することができます。そのあと、HSYNCおよびVSYNCはピクセルと同期されます。この場合、HSYNCおよびVSYNCは2つの専用のDxx端子を使用し、シリアルリンクの帯域幅を常に使用します。また、HSYNCとVSYNCの周波数は非常に低速です。H/VエンコードをイネーブルするとシリアルリンクのBWが最大になりますが、D0:13 (14データビット)のみが利用可能になります。H/Vは専用のD14/15をシングル入力モードで使用します。

GMSLデバイス

Q) GMSLデバイスのエラースレッショルド(ERRTHR)レジスタの推奨設定値はいくつですか?
A) 推奨値または臨界値はありません。このレジスタに0が設定されていると、検出された個々のエラーが通知されます。ほとんどのアプリケーションでは、単一のエラーまたは数個のエラーは問題にならず、より重大な状況が発生したときにのみシステムµCの介入が必要になります。その場合は、ERRTHRにより大きい値を設定して、多数のエラーが検出された場合にのみエラーパルスを生成させることができます。
Q) 自動エラーリセット(AUTORST)とは何をするもので、どんな場合に必要になりますか?
A) 自動エラーリセット機能は、以下のように動作します。
  1. デシリアライザをAUTORST = 1に設定します。
  2. ERRTHR (エラースレッショルド)に値を設定するか、デフォルトの0のままにします。
  3. デシリアライザは検出されたエラーの数をカウントし、DECERRレジスタを更新します。
  4. DECERR > ERRTHRになると、デシリアライザはERRORB端子に約1µsのパルスを生成し、そのあとDECERRレジスタが0にリセットされて、再びDECERR <= ERRTHRになります。
  5. さらに多くのエラーが検出された場合、DECERRは再びインクリメントして、ステップ4が繰り返されます。
  6. ERRTHR = 0の場合(デフォルト)、エラーが検出されるたびにERRORB端子にエラーパルスが生成されます。
  7. 自動エラーリセット機能を使用する場合、DECERRレジスタは自動的にリセットされるため、ECUで読み取ってリセットする必要はありません。
Q) エラーが何回発生するとPLLのロックが外れますか?
A) ロック喪失は、エラーのカウント/フィルタ方法のタイプに応じてトリガされます。個々のワードに対して、エラーがあった場合はカウンタが1だけインクリメントされます。ワードにエラーがなかった場合、同じカウンタがデクリメントされますが、0以下になることはありません。カウンタが特定の値に達すると、ロックが失われます。そのため、ロック喪失はエラーの絶対数ではなく、エラーの頻度によって決まります。デフォルトの条件下では、平均して4ワードに1ワードの割合でエラーがあると、いずれロックが失われることになります。
Q) GMSLデバイスがシリアライザとデシリアライザのデバイスアドレス用のレジスタを備えているのはなぜですか?
A) シリアライザおよびデシリアライザのデバイスアドレスは、UART-I²C変換のために必要です。パケットのデバイスアドレスがシリアライザとデシリアライザの両方のアドレスと一致しない場合、そのパケットはI²Cに変換されます。そのため、シリアライザはデシリアライザのアドレスを知っている必要があり、逆にデシリアライザはシリアライザのアドレスを知っている必要があります。UART-I²Cコンバータを使用しない場合は、チップは自分自身のアドレスのみを知っていれば十分です。
Q) デシリアライザでビット順を再設定(たとえばLSBからMSBの順をMSBからLSBの順に)することはできますか?
A) ビット順を内部で設定することはできませんが、ビデオのMSBをLSBスロットから送信することや、逆にLSBをMSBスロットから送信することは可能です。また、デシリアライザからのMSBをディスプレイ側でLSBに接続することも可能です。
Q) GMSLデバイスがスリープモードのときに、µCからリモートデバイスのレジスタにアクセスすることはできますか?
A) スリープモード時、GMSLデシリアライザはいかなるコマンドまたはリクエストも受け付けません。ウェイクアップ信号のみに反応します。
Q) ウェイクアップ信号とはどのようなものですか?特定のパターンを含んでいますか?
A) ウェイクアップ信号は、クロックに似た低周波数(約550kHz)のパターンです。スリープモード時、レシーバはウェイクアップ信号のみを検出します。ウェイクアップ信号は500kHzの15サイクルで構成されますが、デシリアライザは3または4サイクルが検出されたあとでウェイクアップします。
Q) MAX9259をYUV422イメージ形式に直接接続することは可能ですか?それともマキシムのシリアライザへの入力にはYUV-RGBデータコンバータが必要ですか?
A) GMSLデバイスはデジタル入力としてRGBまたはYUV形式を受け付け、それらをシリアル化します。
Q) ほとんどのGMSLデバイスでは、シリアルリンクデータ形式(パラレル入力、DIN27)は予備ビット(RES)に割り当てられています。このマッピングはMAX9263でも同じですか?
A) はい、RESビットは常にDIN27に割り当てられたビットから送信されます。
Q) スリープモードとは何ですか?
A) シリアライザ/デシリアライザチップセットは、より低電力のスリープモードを備えており、µCに接続されていないデバイス(たとえばLCDアプリケーションにおけるMAX9260やカメラアプリケーションにおけるMAX9259など)の消費電力を低減します。スリープモードを開始するには、該当するリモートICのSLEEPビットに1を設定してください。MAX9259は、SLEEP = 1に設定した直後にスリープします。MAX9260は、SLEEP = 1に設定したあと、シリアルリンクが非アクティブになるか8ms経過した時点(いずれか早い方)でスリープします。さまざまなµCおよび起動条件でのデバイスのウェイクアップの詳細については、MAX9259/MAX9260のデータシートの「Link Startup Procedure (リンクのスタートアップ手順)」の項を参照してください。µC側のデバイスはスリープモードに移行することができず、そのSLEEPビットは0のままです。µC側のデバイスを低電力状態にするには、PWDN入力端子を使用してください。
Q) ワード境界とは何ですか?
A) ワード境界とは、シリアルリンク上のビットをワード単位に分けて処理するための分割方法です。
Q) 不正なシリアルワード境界はどうやって検出されますか?不正なワード境界が検出された場合、それはパリティエラーとして通知されますか、デコードエラーとして通知されますか、それとも両方ですか?
A) ワード境界が検出されない場合、短時間でデコードエラーとパリティエラーが発生し、デシリアライザはロックを失って、新しいワード境界を探します。有効なワード境界を発見することができない場合、デシリアライザはCDRをリセットして再ロックを試みます。
Q) 何がロック喪失のトリガになりますか?言い換えると、パリティエラーまたはデコードエラーが検出された場合、何回のパリティまたはデコードエラーによってロック喪失がトリガされますか?
A) GMSLデシリアライザは、ロック喪失を検出するためのカウンタを備えています。デコードまたはパリティエラーがあった場合、カウンタがインクリメントされます。エラーがなかった場合、カウンタが1だけデクリメントされます(0以下にはなりません)。カウンタが最大スレッショルドに達すると、デシリアライザはロック喪失を通知し、LOCK端子がローになります。
Q) バス競合が発生した場合、MAX9263およびMAX9264のレジスタ値は変化しますか?
A) バス競合が発生した場合でも、MAX9263およびMAX9264のレジスタ値は同じままです。しかし、UART通信は失われるか、内容が損なわれます。しかし、バス競合が原因でレジスタの設定が変化する可能性はほとんどありません。
Q) 9.6kbpsの低レートは、よりビットレートの低いµCをサポートするために実装されたのですか?UARTの速度の選択によって、割込み信号に何か影響がありますか?
A) はい、MAX9259/MAX9260チップセットは、当初は最低100kbps用に設計されました。しかし、一部のµCはより低速のビットレートを必要としたため、最低9.6kbpsまでの速度をサポートするように設計が変更されました。低速のUARTを使用する場合、リンク上でINT信号と混同される可能性があるため、MAX9259/MAX9260デバイスではUARTの速度が100kbps以下の場合には割込みがサポートされません。

GMSL以外のデバイス

Q) MAX9257は、ACKとSTART条件間にSTOPビットを生成することができますか?µCが2つのUART STOPビットを送信した場合、どちらの側が余分な1つを除去するのですか?MAX9257 (ペリフェラル)のI²Cトランスレータは、余分なSTOPビットを生成しますか?
A) 残念ながら、MAX9257はこの目的の位置にSTOPビットを生成することができません。I²Cプロトコルによると、STARTビットの繰り返しは許容されます(たとえば、STOP条件が不要な場合)。2つまたはそれ以上のUARTのSTOPビットは、内部回路によって1つのSTOPビットと見なされます。STOPビットの数はカウントされないため、各UARTフレームのあとにいくつのSTOPビットが使用されたかに関係なく、I²Cトランスレータは個々のUARTパケットに対して常に1つのSTOP条件をI²Cバス上に生成します。しかし、GMSLデバイスは、I2CMETHOD = 1という設定および1つの書込みのあとに1つの読取りという形で2つの個別のパケットを使用することによって、その位置にSTOPを生成することができます。
Q) ボーレートが100kbpsの場合、MAX9258AへのUART入力で必要とされるボーレートの精度はどのくらいですか?
A) UARTのボーレートの精度は5%以内にしてください。たとえば、100kbpsの場合、個々のUARTビットについて9.5µs < ビット時間 < 10.5µsである必要があります。

制御チャネル

Q) 不正なデータパケットを受け取った場合、リモート側GMSLは通信を終了しますか、それとも出力(UARTまたはI²C)への処理を行いますか?
A) リモート側がI²Cの場合、パリティエラーが検出されるとリモート側GMSLデバイスが制御チャネルのパケットを終了します。リモート側がUARTの場合、入力したものがそのままペリフェラルに出力されます。リモート側スレーブがエラーをチェックしてパケットを終了します。
Q) UARTモードでの制御パケットのフレーム間の最大遅延はどのくらいですか?
A) 制御パケットのフレーム間の最大遅延は2ビット時間です。
Q) 通信パケットが完了したあと、次のパケットを送信することができるまでのウェイト時間はどのくらいですか?
A) 新しいパケットを開始することができるのはパケットの終了から16ビット時間後です。
Q) ACKフレームを受信するまでの最大時間はどのくらいですか?
A) GMSLは、直前のフレームのSTOPビットから4ビット時間以内にACKフレームを送信します。1つのUARTフレームは11ビット長で、若干のリンク遅延が発生する可能性があります。直前のフレームの終了(STOPビット)から16ビット時間以内にACKフレームが受信されない場合、ACKフレームが送信されなかったか、または制御チャネルのリンクに問題がある(たとえば、CCがディセーブルされているなど)と考えてください。
Q) MSがトグルする場合、制御チャネルはどのくらいの間利用不可になりますか?
A) デシリアライザのMSがトグルされた場合、CCは1msにわたって利用不可になります。この利用不可状態は直ちに発生します。シリアライザのMSをトグルしても制御チャネルはディセーブルされないことに注意してください。
Q) INTがトグルする場合、制御チャネルはどのくらいの間利用不可になりますか?
A) デシリアライザのINTがトグルされた場合、CCは350µsにわたって利用不可になります。
Q) CLINKENからSERENへまたはその逆に切り替える場合、順方向CCはどのくらいの間利用不可になりますか?
A) シリアライザのロック時間とデシリアライザのリンクスタートアップ時間を足してください。
Q) 起動後、逆方向制御チャネルはどのように利用可能になりますか?
A) 逆方向制御チャネルは、シリアライザが起動したあとシリアライザで利用可能になります。しかしシリアルリンクが開始または停止するときに、逆方向制御チャネルは350µsにわたって一時的にディセーブルされます。
Q) リンクを介したウェイクアップの場合、CCはどのように利用可能になりますか?
A) シリアライザまたはデシリアライザの起動時間の仕様を使用してください。
Q) 動作中にCDSを変化させた場合、CCはどんな挙動を示しますか?
A) 動作中にCDSを変化させることは推奨されません。しかし、変化させることは可能です。動作中にCDSを変化させてもCCはディセーブルされませんが、UARTとI²Cの間でインタフェースを変更するために使用することができます(注:GMSLチップがI²Cマスターです)。

設定

Q) デシリアライザでビット順を再設定(たとえばLSBからMSBの順をMSBからLSBの順に)することはできますか?
A) ビット順を内部で設定することはできませんが、ビデオのMSBをLSBスロットから送信することや、逆にLSBをMSBスロットから送信することは可能です。また、デシリアライザからのMSBをディスプレイ側でLSBに接続することも可能です。
Q) MAX9259をYUV422イメージ形式に直接接続することは可能ですか?それともマキシムのシリアライザへの入力にはYUV-RGBデータコンバータが必要ですか?
A) GMSLデバイスはデジタル入力としてRGBまたはYUV形式を受け付け、それらをシリアル化します。
Q) カメラアプリケーションで、MAX9259/MAX9260チップセットを%-overbar_pre%AUTOS%-overbar_post% = ロー(SEREN = ハイおよびCLINKEN = ロー)に設定しています。起動後、カメラがピクセルクロックを供給し、MAX9259とMAX9260間の順方向チャネルがアクティブになります。レジスタ4 (0x04)に書込みを行って、SEREN = ローおよびCLINKEN = ハイに変更しようとしました。レジスタ4は値の読取りのみが可能で、レジスタ4への書込みができません。他のすべてのレジスタの読み書きには問題ありません。%-overbar_pre%AUTOS%-overbar_post% = ハイに変更して、起動時に設定リンクモードに移行すべきでしょうか?なぜレジスタ4の読取りはできるのに書込みはできないのですか?
A) SEREN = 0およびCLINKEN = 1が書き込まれた場合、シリアルリンクはしばらく遮断されます。その間は、読取りまたは書込みを行うことはできません。制御リンク(逆方向チャネルのみ)は、シリアルリンクの停止/開始後350µsの間は動作しません。順方向リンクが遮断された場合、順方向チャネルのためにさらに時間が必要になります。ビデオリンクから設定リンクへの切り替え時には、周波数が変化するため、動作中のすべてのPLLは新しい周波数に再ロックする必要があります。これには350µs以上かかる可能性がありますが、その上限は常に「ロック時間」の仕様以下になります。
Q) 私のセットアップでは、シリアライザの制御方向選択(CDS)端子はローに設定され、デシリアライザではハイに設定されているため、各GMSLチップはそれぞれのµCに接続することができます。デシリアライザのレジスタがINTTYPE = 01に設定されている場合は、µCの両方の側がUART通信によってサーデスのレジスタにアクセス可能です。この条件下では、バス競合処理方式を扱うソリューションを自分で用意する必要がありますか?サーデスのレジスタにアクセスするµC間に、バス競合は存在しますか?
A) はい。両方のµCが同じバスに接続されているため、バス競合を防止(または修正)するために何らかの手段が必要です。必要に応じて、FWDCCENおよびREVCCENビットを使用して制御チャネルをリモート側から切断することが可能です(詳細については、チュートリアル5046 「デュアル電子制御ユニット(ECU)構成の車載アプリケーションにおけるGMSLサーデスデバイスの使用」を参照)。
Q) シリアライザではMS = L、CSD = Lにして、デシリアライザではCDS = Hにすると、シリアライザとデシリアライザの両方のINTTYPEの設定が「01」になりますか?
A) これらの設定では、両方の側がUARTインタフェースになります。しかし、INTTYPEの設定は自動的に更新されず、CDSによってすでにインタフェースタイプが強制的にUARTになるため、INTTYPEの設定は使用されません(すなわち、無視されます)。MAX9263のINTTYPEの設定はCDS = Hのときに有効になり、MAX9264のINTTYPEの設定はCDS = Lのときに有効になります。
Q) CDS = LおよびMS = Lのとき、UARTによるベースモードがイネーブルされます。この端子の設定によって、シリアライザのINTTYPEの設定は自動的に「01」に設定されますか?
A) いいえ、INTTYPEの設定は自動的に変更されません。MAX9263のINTTYPEの設定はCDS = Hのときに有効になり、MAX9264のINTTYPEの設定はCDS = Lのときに有効になります。INTTYPEは、そのサーデスデバイスがリンクの(µC側ではなく)ペリフェラル側にある場合に、制御チャネルインタフェースを選択するために使用されます。
Q) スペクトラム拡散クロックを両方の側でオンにするとどうなりますか?バッファのオーバーフローまたはアンダーフローが発生する可能性はありますか?
A) シリアライザ側でスペクトラム拡散をオンにした場合、デシリアライザの出力もほぼ同じ拡散率およびプロファイルになります(その帯域幅はスペクトラム拡散FMレートより大幅に高いため、CDRは十分それに追従します)。この場合、デシリアライザの出力には0.5%の拡散がかかります。これにはいくつかの理由があります。
デシリアライザで付加される拡散は加算方式で、復元されたクロックに対して行われます。これは、シリアライザとデシリアライザが正確に同じ拡散プロファイルを備えている場合、それらの変調プロファイルは同期されないため、両方の側でスペクトラム拡散をオンにすると、一方の側と他方の側の間で加算または減算が行われる可能性があることを意味します。拡散が完全に同期している場合は、ほぼ2倍の拡散がかかることになり、拡散プロファイル間に(変調周波数の) 180°ある場合は、互いに相殺される可能性さえあります。すなわち、両方の側で拡散をオンにした場合、デシリアライザの出力では拡散プロファイルの保証がなくなります。
拡散プロファイルが同期され同時に付加された場合、振幅が大きくなるため(したがって同じ周波数変調に対して周波数の変化が高速になるため)、ダウンストリームのブロックは新しいプロファイルを処理することができない可能性があります。MAX9266およびMAX9268の場合、SSPLLのあとに7xPLLが位置するため、これらの問題に遭遇する場合があります。
次のステップ
EE-Mail EE-Mail配信の登録申し込みをして、興味のある分野の最新ドキュメントに関する自動通知を受け取る。
© , Maxim Integrated Products, Inc.
このウェブサイトのコンテンツは米国および各国の著作権法によって保護されています。コンテンツの複製を希望される場合は お問い合わせください。.
APP 5535:
アプリケーションノート 5535,AN5535, AN 5535, APP5535, Appnote5535, Appnote 5535