(57)【特許請求の範囲】
【請求項１】
受信データに含まれる同期コードを検出し、検出した２つの同期コードの間に受信するシリアルデータをパラレルデータに変換し、変換後のデータを出力する変換部と、
前記変換部から出力されるデータをラインメモリに格納し、前記ラインメモリからデータを読み出して処理する処理部と、
デバッグ信号に応答して、前記変換部に受信する前記シリアルデータを前記パラレルデータに変換させる制御信号を前記変換部に出力する制御部と、
を有し、
前記変換部は、
前記制御信号及び前記受信データが書き込まれるシフトレジスタと、
前記シフトレジスタに書き込まれた前記制御信号及び前記受信データに基づいて前記同期コードを検出してタイミング信号を出力する同期コード検出回路と、
前記タイミング信号に基づいて、前記シフトレジスタから出力される前記シリアルデータを前記パラレルデータに変換する変換回路と、
を有し、
前記制御部は、前記同期コードと等しい内部同期コードを記憶し、前記デバッグ信号に応答して、前記制御信号として前記内部同期コードを前記シフトレジスタに出力する同期コード書込回路を有することを特徴とする半導体装置。
【請求項２】
前記制御部は、前記受信データに含まれるブランクビットを検出する検出回路を含み、
前記同期コード書込回路は、前記ブランクビットを検出する検出回路の検出結果に基づいて前記内部同期コードを前記シフトレジスタに出力する、ことを特徴とする請求項１に記載の半導体装置。
【請求項３】
前記同期コード書込回路は、前記内部同期コードを前記シフトレジスタに出力するタイミングをずらすようにした、ことを特徴とする請求項１又は２に記載の半導体装置。
【請求項４】
前記同期コード検出回路が前記同期コードを検出して出力する検出信号に応答して同期信号を生成する同期信号生成回路と、
前記変換部から出力される第１のパラレルデータと、前記処理部から出力される第２のパラレルデータとが入力され、前記デバッグ信号に基づいて前記第１のパラレルデータと前記第２のパラレルデータのうちの何れか一方を選択し、選択したパラレルデータを出力するデータ選択回路と、
前記同期信号に基づいて、前記データ選択回路の出力信号をシリアルデータに変換するパラレル・シリアル変換処理部と、
を含むことを特徴とする請求項１〜３のうちの何れか一項に記載の半導体装置。
【請求項５】
受信データに含まれる同期コードを検出し、検出した２つの同期コードの間に受信するシリアルデータをパラレルデータに変換し、変換後のデータを出力する変換部と、
前記変換部から出力されるデータをラインメモリに格納し、前記ラインメモリからデータを読み出して処理する処理部と、
デバッグ信号に応答して、前記変換部に受信する前記シリアルデータを前記パラレルデータに変換させる制御信号を前記変換部に出力する制御部と、
を有し、
前記変換部は、
前記制御信号及び前記受信データが書き込まれるシフトレジスタと、
前記シフトレジスタに書き込まれた前記制御信号及び前記受信データに基づいて前記同期コードを検出してタイミング信号を出力する同期コード検出回路と、
前記タイミング信号に基づいて、前記シフトレジスタから出力される前記シリアルデータを前記パラレルデータに変換する変換回路と、
を有し、
前記制御部は、前記デバッグ信号に応答して前記タイミング信号と等しい波形の内部タイミング信号を生成し、前記制御信号として前記内部タイミング信号を出力するタイミング信号生成回路と、
前記デバッグ信号に応答して前記タイミング信号と前記内部タイミング信号とのうちの何れか一方を選択して出力する選択回路と
を含み、
前記変換回路は、前記選択回路の出力信号に応答して前記シリアルデータを前記パラレルデータに変換する、ことを特徴とする半導体装置。
【請求項６】
前記制御部は、前記受信データに含まれるブランクビットを検出する検出回路を含み、
前記タイミング信号生成回路は、前記ブランクビットを検出する検出回路の検出結果に基づくタイミングで前記内部タイミング信号を生成する、ことを特徴とする請求項５に記載の半導体装置。
【請求項７】
前記タイミング信号生成回路は、前記内部タイミング信号を生成するタイミングをずらすようにした、ことを特徴とする請求項５又は６に記載の半導体装置。
【請求項８】
前記受信データを送信する送信装置に供給する第１の同期信号を生成する第１の信号生成回路と、
前記同期コード検出回路が前記同期コードを検出して出力する検出信号に応答して第２の同期信号を生成する第２の同期信号生成回路と、
前記第１の同期信号と前記第２信号とが入力され、前記デバッグ信号に基づいて前記第１の同期信号と前記第２の同期信号のうちの何れか一方を選択し、選択した同期信号を出力する信号選択回路と、
前記変換部から出力される第１のパラレルデータと、前記処理部から出力される第２のパラレルデータとが入力され、前記デバッグ信号に基づいて前記第１のパラレルデータと前記第２のパラレルデータのうちの何れか一方を選択し、選択したパラレルデータを出力するデータ選択回路と、
前記信号選択回路の出力信号に基づいて、前記データ選択回路の出力信号をシリアルデータに変換するパラレル・シリアル変換処理部と、
を含むことを特徴とする請求項５〜７のうちの何れか一項に記載の半導体装置。
【請求項９】
前記２つの同期コードの間に受信するデータは、１つのフレームの画像データを構成する各ラインの画素データであり、
１ライン目の前記画素データは、フレーム開始コードとライン終了コードとの間に送信され、１ライン目と最終ラインとの間の各ラインの画素データは、ライン開始コードとライン終了コードとの間に送信され、最終ラインの画素データは、ライン開始コードとフレーム終了コードの間に送信され、
前記ラインメモリには複数ラインの画素データが格納され、
前記処理部は、前記ラインメモリから読み出した画素データを画像処理する、
ことを特徴とする請求項１〜８のうちの何れか一項に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
半導体装置に関する。
【背景技術】
【０００２】
近年、画像データのように、大量のデータを転送する半導体装置は、接続された半導体装置とシリアル通信を行うためのシリアルインタフェース回路を備えている。（例えば、特許文献１参照）。
【０００３】
シリアル通信では、同期コードを用いて有効なデータの送信開始と送信終了を検出する。例えば、送信側の半導体装置のインタフェース回路は、同期コードとデータを送信する。同期コードは、データの送信開始を示す開始コードと、データの送信終了を示す終了コードを含む。受信側の半導体装置のインタフェース回路は、同期コードを検出し、データを受信する。詳述すると、インタフェース回路は、開始コードと終了コードをそれぞれ検出し、開始コードと終了コードとの間の受信データを有効なデータとして処理する。
【０００４】
上記のような半導体装置の開発工程は、シリアル通信を行うインタフェース回路の動作確認を行う工程を含む。高速な転送を行うシリアル通信は、その開発段階において、基板上のノイズ・反射などの影響や送信側の問題等により通信異常が発生し、受信側の半導体装置においてデータを受信できない場合がある。
【０００５】
このため、動作確認を行う工程において、通信異常の原因解析が行われる。この原因解析は、オシロスコープやロジックアナライザ等を用いて信号を伝達する配線における信号の状態を観測して行われる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平９−１１６５９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、上記のような原因解析の方法は、観測や解析に時間がかかり、効率が悪い。また、信号を観測するために接続されるプローブは、観測する波形に影響を与える場合があり、信号の観測が難しい場合がある。
【課題を解決するための手段】
【０００８】
本発明の一観点によれば、受信データに含まれる同期コードを検出し、検出した２つの同期コードの間に受信するシリアルデータをパラレルデータに変換し、変換後のデータを出力する変換部と、前記変換部から出力されるデータをラインメモリに格納し、前記ラインメモリからデータを読み出して処理する処理部と、デバッグ信号に応答して、前記変換部に受信する前記シリアルデータを前記パラレルデータに変換させる制御信号を前記変換部に出力する制御部と、を有し、前記変換部は、前記制御信号及び前記受信データが書き込まれるシフトレジスタと、前記シフトレジスタに書き込まれた前記制御信号及び前記受信データに基づいて前記同期コードを検出してタイミング信号を出力する同期コード検出回路と、前記タイミング信号に基づいて、前記シフトレジスタから出力される前記シリアルデータを前記パラレルデータに変換する変換回路と、を有し、前記制御部は、前記同期コードと等しい内部同期コードを記憶し、前記デバッグ信号に応答して、前記制御信号として前記内部同期コードを前記シフトレジスタに出力する同期コード書込回路を有する。
【発明の効果】
【０００９】
本発明の一観点によれば、同期コードを用いたシリアル通信において発生する通信異常の原因解析を可能とすることができる。
【図面の簡単な説明】
【００１０】
【図１】電子機器のシステム構成図である。
【図２】画像処理装置のデバッグ環境を示すブロック回路図である。
【図３】シリアルデータの説明図の説明図である。
【図４】第１実施形態の画像処理装置のブロック回路図である。
【図５】第１実施形態の動作を示すタイミング図である。
【図６】第２実施形態の画像処理装置のブロック回路図である。
【図７】第２実施形態の動作を示すタイミング図である。
【図８】第３実施形態の画像処理装置のブロック回路図である。
【図９】第３実施形態の動作を示すタイミング図である。
【図１０】第４実施形態の画像処理装置のブロック回路図である。
【発明を実施するための形態】
【００１１】
以下、実施形態を図面に従って説明する。
図１に示す電子機器１は、例えば、携帯電話機である。この電子機器１は、センサモジュール２、画像処理装置３、制御装置４、表示装置５、メモリ（ＲＡＭ）６を備えている。
【００１２】
センサモジュール２は画像処理装置３とシリアル通信可能に接続されている。つまり、センサモジュール２と画像処理装置３はそれぞれシリアルインタフェース回路を有し、該インタフェース回路を介して互いにデータ等の授受を行う。同様に、画像処理装置３は制御装置４とシリアル通信可能に接続されている。また、制御装置４は、表示装置５、メモリ（ＲＡＭ）６と接続されている。
【００１３】
センサモジュール２は、例えば、ＣＭＯＳセンサモジュール、ＣＣＤイメージセンサモジュール等の撮像装置である。センサモジュール２は、入射光に応じた画像データＧＤ（デジタル信号）を出力する。
【００１４】
画像処理装置３のタイミング信号発生器１１は、同期信号Ｖｓ，Ｈｓを出力する。センサモジュール２は、同期信号Ｖｓ，Ｈｓに基づいてデータＳｄ１とストローブ信号ＳＴＲＢを出力する。センサモジュール２は送信装置の一例である。このデータＳｄ１は、センサモジュール２が生成した１フレームの画像データを含む。ストローブ信号ＳＴＲＢは、データＳｄ１を受信する際に用いるクロック信号を再生するための信号である。センサモジュール２は、データＳｄ１をＤＳリンク方式によりエンコードして生成したストローブ信号ＳＴＲＢを出力する。
【００１５】
シリアル・パラレル変換処理部（以下、パラレル変換部という）１２は、センサモジュール２が出力したデータＳｄ１とストローブ信号ＳＴＲＢを受け取り、クロック信号を生成する。そして、パラレル変換部１２は、クロック信号に同期して動作し、受信データＳｄ１をパラレルデータに変換し、変換後のデータを出力する。
【００１６】
画像処理部１３は、パラレル変換部１２から出力されるデータをラインメモリ１４に格納する。ラインメモリ１４の容量は、画像処理部１３にて処理される複数ライン（例えば１６ライン）の画像データを記憶可能に設定されている。画像処理部１３は、ラインメモリ１４に格納した画像データを読み出して処理する。画像処理部１３は、処理後の画像データを出力する。パラレル・シリアル変換処理部（以画像処理部１３が実行する処理は、例えば、オートフォーカス、ズーム、ホワイトバランス調整、符号化処理（例えばＪＰＥＧ方式による圧縮処理）、解像度変換処理、色調変換処理、等である。パラレル・シリアル変換処理部（以下、シリアル変換部という）１５は、画像処理部１３から出力される画像データ（パラレルデータ）をシリアルデータに変換し、変換後のデータＳｄ２を出力する。
【００１７】
制御装置４は、機器全体を制御する機能や通信機能を有する半導体装置であり、例えばベースバンドＬＳＩと呼ばれる。制御装置４は、画像処理装置３の活性／非活性を制御する。例えば、制御装置４は、メニューの表示によって静止画像の撮影が選択されると画像処理装置３を活性化し、撮影終了が選択される（終了のためのキーが操作される）と画像処理装置３を非活性化する。画像処理装置３の活性化及び非活性化は、例えば動作電源電圧の供給／停止や、活性化／非活性化のための制御信号、等により行われる。なお、センサモジュール２は、画像処理装置３の活性化又は非活性化に応じて活性化又は非活性化される。活性化した画像処理装置３は、各同期信号Ｖｓ，Ｈｓをセンサモジュール２に供給し、受信したデータＳｄ１に基づくデータＳｄ２を出力する。
【００１８】
この制御装置４はメモリ６と接続されている。メモリ（ＲＡＭ）６はラインメモリ１４と比して大容量のメモリであり、例えばフラッシュメモリや同期型半導体記憶装置（ＳＤＲＡＭ）である。制御装置４は、画像処理装置３から出力されるデータＳｄ１をメモリ６に格納する。
【００１９】
表示装置５は、例えば液晶表示装置、有機ＥＬ表示装置等である。制御装置４は、通信等のメニューや動作表示を表示装置５に表示させる。また、制御装置４は、メモリ６に格納された画像データを表示装置５に表示させる。
【００２０】
また、制御装置４は、記録媒体７と接続される。記録媒体７は、例えば、ＳＤメモリカード、ＵＳＢメモリ等の可搬型記録媒体であり、必要に応じて機器に備えられたスロット等（図示略）に挿入される。挿入された記録媒体７は、機器に備えられた端子を介して制御装置４と電気的に接続される。制御装置４は、メモリ６に記憶されたデータ、例えば画像処理装置３にて画像処理された画像データＧＤを記録媒体７に記憶する。
【００２１】
図２に示すように、半導体装置の開発工程（デバッグ工程）において、上記の画像処理装置３は、例えば制御装置４ａに接続される。制御装置４ａは、例えば、デジタルスチルカメラに用いられる画像処理用の半導体装置（ＬＳＩ）である。この制御装置４ａは、画像処理装置３のデバッグ処理を行う際に用いられる半導体装置（ホスト装置）の一例である。従って、図１に示す制御装置４をデバッグ処理の際に用いても良い。
【００２２】
制御装置４ａは、図１に示す制御装置４と同様に、画像処理装置３とシリアル通信可能なインタフェース回路（シリアル・パラレル変換処理部）を有している。この制御装置４ａは、インタフェース回路を介して入力したデータをメモリ６ａに格納する。メモリ６ａは複数フレームの画像データを記憶可能な容量を持つフレームメモリであり、例えばＳＤＲＡＭが用いられる。
【００２３】
なお、デバッグ環境において、画像処理装置３は、センサモジュール２ａと接続される。また、制御装置４ａは、表示装置５ａと接続される。また、この制御装置４ａは、記録媒体７ａに対し、メモリ６ａに格納したデータを含む各種データを格納可能である。画像処理装置３のデバッグ工程において、図１に示すセンサモジュール２や表示装置５は必ずしも必要がない。例えば、図２に示すセンサモジュール２ａは、図１に示すセンサモジュール２と同じ電気的特性のシリアルデータＳｄ１とストローブ信号ＳＴＲＢを出力する機能を有していればよく、例えば画素数が異なっていても良い。また、図１に示すセンサモジュール２等を画像処理装置３に接続してデバッグ処理を行うようにしてもよい。
【００２４】
デバッグ装置９ａは画像処理装置３に接続され、デバッグ装置９ｂは制御装置４ａに接続される。これらのデバッグ装置９ａ，９ｂは、デバッグ処理を行う作業者（開発者）によって操作される。
【００２５】
デバッグ装置９ａは、画像処理装置３のデバッグ処理に必要なデータを、画像処理装置３のレジスタ１６に格納する機能を有している。画像処理装置３は、レジスタ１６に格納されたデータに従ってデバッグ処理を実行する。
【００２６】
画像処理装置３のデバッグ処理は、図１に示すセンサモジュール２からシリアル送信されるシリアルデータＳｄ１の同期コードをパラレル変換部１２が検出できないときに、そのシリアルデータＳｄ１の状態を解析するために実行される処理である。
【００２７】
このデバッグ処理において、画像処理装置３のパラレル変換部１２は、シリアルデータＳｄ１において同期コードを検出したときと同じ状態を擬似的に生成する。例えば、画像処理装置３は、この擬似的な状態を、シリアルデータＳｄ１に含まれる同期コードと等しい同期コード（以下、内部同期コードという）を有し、この内部同期コードを用いて生成する。そして、画像処理装置３は、内部同期コードを用いてシリアルデータＳｄ１を取り込み、取り込んだデータをシリアルデータＳｄ２に変換して出力する。
【００２８】
制御装置４ａは、画像処理装置３から受け取るシリアルデータＳｄ２をパラレルデータに変換し、変換後のデータをメモリ６ａに格納する。メモリ６ａに格納されたデータは、画像処理装置３から出力されたシリアルデータＳｄ２、即ち画像処理装置３に取り込まれたシリアルデータＳｄ１に対応するデータである。従って、作業者（開発者）は、メモリ６ａに格納されたデータを解析することにより、画像処理装置３における受信データの状態を確認することができる。そして、作業者は、受信データの状態に基づいて、通信異常の原因解析を行うことができる。
【００２９】
以上のように、画像処理装置３は、センサモジュール２ａとの間で通信異常が発生する状態であっても、デバッグモードにおいてそのセンサモジュール２ａから出力されるシリアルデータＳｄ１を受信し、その受信データに基づくデータＳｄ２を出力する。このデータＳｄ２は、制御装置４ａによってメモリ６ａに格納される。メモリ６ａに格納されたデータは、電源の遮断や重ね書されるまで保存されるため、作業者はデータを繰り返し確認することができる。従って、メモリ６ａにデータを格納することは、オシロスコープやロジックアナライザ等を用いて信号を伝達する配線における信号の状態を観測する場合と比べ、原因解析を容易にする。
【００３０】
レジスタ１６に設定されるデバッグ処理に必要なデータは、デバッグ処理の開始、デバッグ処理の終了、デバッグの終了、取り込むデータのサイズを含む。
デバッグ装置９ａは、画像処理装置３のレジスタ１６に、デバッグ処理の開始，終了を示す情報を格納する。この情報は、例えばレジスタ１６の所定領域に格納された１ビットのデータである。例えば、「１」のデータはデバッグの開始を示し、「０」のデータはデバッグの終了を示す。レジスタ１６は、この情報に基づいてデバッグ信号ＤＢＧを出力する。例えば、レジスタ１６は、デバッグ処理の開始を示すデータ（  例えば「１」）に基づいて、例えばＨレベルのデバッグ信号ＤＢＧを出力し、デバッグ処理の終了を示すデータ（例えば「０」）に基づいてＬレベルのデバッグ信号ＤＢＧを出力する。
【００３１】
また、デバッグ装置９ａは、レジスタ１６に、取り込むデータのサイズを格納する。このサイズは、画像処理装置３が取り込むデータ、つまりセンサモジュール２ａが出力するシリアルデータＳｄ１に基づく。
【００３２】
次に、センサモジュール２ａが出力するデータＳｄ１を説明する。
例えば、センサモジュール２ａの撮像素子は、マトリックス状に配列されたｍ個×ｎ個の受光素子（画素）を有している。従って、撮像素子にて撮像された１フレームの画像データは、ｎ個×ｍ個の画素データＰ１１〜Ｐｎｍにより構成されている。各画素データＰ１１〜Ｐｎｍは、所定数（例えば４）のビットにより構成されている。ｍ個の受光素子が配列された方向を水平方向（行）とし、ｎ個の受光素子が配列された方向を垂直方向（列）とする。
【００３３】
センサモジュール２ａは、同期コードと画素データＰ１１〜Ｐｎｍを出力する。同期コードは、開始コードと終了コードを含む。開始コードは、フレーム開始コードＳＯＦ(Start of frame)、ライン開始コードＳＯＬ(Start of line )を含む。フレーム開始コードＳＯＦは、１フレーム分のデータの転送開始を示すコードである。ライン開始コードＳＯＬは、１ライン分のデータの転送開始を示すコードである。終了コードは、フレーム終了コードＥＯＦ(End of frame)、ライン終了コードＥＯＬ(End of line )を含む。フレーム終了コードＥＯＦは、１フレーム分のデータの転送終了を示すコードである。ライン終了コードＥＯＬは、１ライン分のデータの転送終了を示すコードである。
【００３４】
同期コードは、画像処理装置３にとって必要なデータ（有効なデータ）と、不要なデータを区別するために送信されるコードである。つまり、センサモジュール２ａは、有効データを出力する前に開始コードを出力し、有効データの後に終了コードを出力する。これにより、画像処理装置３は、開始コードを検出し、その開始コードに続くデータを有効データとして受け取る。そして、終了コードを検出し、有効データの終了を判定する。
【００３５】
図３に示すように、センサモジュール２ａは、垂直同期信号Ｖｓに応答して１フレーム分のデータの先頭を示すフレーム開始コードＳＯＦを出力した後、１行目の画素データＰ１１，Ｐ１２…Ｐ１ｍを出力し、１ライン分のデータの終了を示すライン終了コードＥＯＬを出力する。次に、センサモジュール２ａは、水平同期信号Ｈｓに応答して１ライン分のデータの先頭を示すライン開始コードＳＯＬを出力した後、２行目の画素データＰ２１，Ｐ２２…Ｐ２ｍを出力し、１ライン分のデータの終了を示すライン終了コードＥＯＬを出力する。同様に、センサモジュール２ａは、３行目〜（ｎ−１）行目の画素データについて、各行のデータの先頭を示すライン開始コードＳＯＬを出力した後、各行の画素データを出力し、１ライン分のデータの終了を示すライン終了コードＥＯＬを出力する。そして、センサモジュール２ａは、最終行の画素データについて、先ず、１ライン分のデータの先頭を示すライン開始コードＳＯＬを出力した後、最終行（ｎ行目）の画素データＰｎ１，Ｐｎ２…Ｐｎｍを出力し、１フレーム分のデータの終了を示すフレーム終了コードＥＯＦを出力する。尚、図３は、各同期コードＳＯＦ，ＳＯＬ，ＥＯＬ，ＥＯＦが４ビットとして示している。
【００３６】
尚、センサモジュール２ａは、水平同期信号Ｈｓの１周期の間に、１行分の画像データと開始コード及び終了コードを含むデータＳｄ１を出力する。言い換えれば、センサモジュール２ａは、水平同期信号Ｈｓに応答して開始した１行分のデータＳｄ１を、次の水平同期信号Ｈｓを入力するまでに終了する。この、終了コードが送信されてから次の開始コードが送信されるまでの間を、ブランク期間という。そして、センサモジュール２ａは、ブランク期間において、所定値（例えば「１」）のブランクビットＢＬＢを出力する。このように出力されるブランクビットＢＬＢの数は、１行分のデータＳｄ１のビット数と、データＳｄ１を出力するタイミングを決定するクロック信号の周波数に応じて異なる。
【００３７】
そして、水平同期信号Ｈｓの１周期の間に送信されるビットの数を、送信水平サイズという。この送信水平サイズは、１行分のデータＳｄ１のビット数とブランクビットＢＬＢのビット数の総和値、つまり開始コードのビット数と、終了コードのビット数と、１行分の画素データの総ビット数（＝１行の画素数×各画素データのビット数）と、ブランクビットＢＬＢのビット数の総和値である。そして、図２に示すレジスタ１６には、この送信水平サイズと等しい値の取込水平サイズ（Ｈｓｉｚｅ）が設定される。
【００３８】
つまり、センサモジュール２ａは、フレーム開始コードＳＯＦ又はライン開始コードＳＯＬを、送信水平サイズ毎に出力する。同様に、センサモジュール２ａは、ライン終了コードＥＯＬ又はフレーム終了コードＥＯＦを送信水平サイズ毎に出力する。従って、画像処理装置３は、この送信水平サイズと等しい数のビットを受け取る毎に、内部同期コード（開始コード）をシリアルデータＳｄ１に挿入する。そして、画像処理装置３は、開始コードを挿入した後、１ラインの画素のビット数の総和値、つまり有効データのビット数をカウントした後に、内部同期コード（終了コード）をシリアルデータＳｄ１に挿入する。これにより、同期コードを検出した信号が、シリアル通信が正常なときと同じタイミングで生成され、その検出信号によりシリアル通信が正常なときと同様の処理によりシリアルデータＳｄ１を受け取ることができる。
【００３９】
また、センサモジュール２ａは、フレーム開始コードＳＯＦを出力した後、１フレームの最初のラインのデータを出力する。また、センサモジュール２ａは、１フレームの最後のラインのデータを出力した後、フレーム終了コードＥＯＦを送信する。つまり、センサモジュール２ａは、１フレームのライン数毎にフレーム開始コードＳＯＦを出力する。同様に、センサモジュール２ａは、１フレームのライン毎にフレーム終了コードＥＯＦを出力する。従って、図２に示すレジスタ１６には、１フレームのライン数が取込垂直サイズ（Ｖｓｉｚｅ）として設定される。
【００４０】
従って、画像処理装置３は、デバッグ信号ＤＢＧに応答してフレーム開始コードＳＯＦをシリアルデータＳｄ１に挿入する。そして、画像処理装置３は、ライン終了コードＥＯＬをシリアルデータＳｄ１に挿入した回数をカウントし、そのカウント値に基づいて、カウント値がライン数より１少ない値になった後、有効データのビット数１フレームの画像データを構成する全てのラインの画素データを出力した後に、フレーム終了コードＥＯＦを出力する。これにより、同期コードを検出した信号が、シリアル通信が正常なときと同じタイミングで生成され、その検出信号によりシリアル通信が正常なときと同様の処理により１フレーム分の画素データと等しい数の有効データを受け取ることができる。
【００４１】
次に、画像処理装置の詳細を説明する。
（第１実施形態）
図４に示すように、画像処理装置３のタイミング信号発生器１１は、垂直同期信号Ｖｓと水平同期信号Ｈｓを生成する。この垂直同期信号Ｖｓ及び水平同期信号Ｈｓは、図２に示すセンサモジュール２ａに供給される。垂直同期信号Ｖｓは、センサモジュール２ａに対して、１フレーム分の画像データの転送開始を指示する信号である。水平同期信号Ｈｓは、各行の画素データの転送開始を指示する信号である。
【００４２】
パラレル変換部１２のクロック生成回路２０は、データＳｄ１とストローブ信号ＳＴＲＢに基づいてクロック信号ＣＫを生成する。クロック生成回路２０は例えば排他的論理和（ＥＯＲ）回路であり、データＳｄ１の論理レベルをストローブ信号ＳＴＲＢの論理レベルを排他的論理和演算し、その演算結果に応じたレベルのクロック信号ＣＫを出力する。このクロック信号ＣＫは、シフトレジスタ２１等に供給される。
【００４３】
シフトレジスタ２１は、同期コードのビット数に応じた数（図４において４個）のフリップフロップ回路（ＦＦ回路）２１ａ〜２１ｄを有している。各ＦＦ回路２１ａ〜２１ｄは直列に接続されている。各ＦＦ回路２１ａ〜２１ｄにはクロック信号ＣＫが供給される。各ＦＦ回路２１ａ〜２１ｄはそれぞれ、クロック信号ＣＫに応答して入力信号をラッチし、ラッチしたレベルと等しいレベルの信号を出力する。
【００４４】
従って、シフトレジスタ２１は、クロック信号ＣＫに応答して受信データＳｄ１を転送する。そして、シフトレジスタ２１は、各ＦＦ回路２１ａ〜２１ｄにそれぞれラッチしたデータ、つまり４ビットのパラレルデータを出力する。また、シフトレジスタ２１は、最終段のＦＦ回路２１ｄから１ビットのデータ、つまりシリアルデータを出力する。
【００４５】
シフトレジスタ２１から出力される４ビットのパラレルデータは比較回路２２に供給される。比較回路２２はコード記憶レジスタ２３と接続されている。コード記憶レジスタ２３には、同期コードであるフレーム開始コードＳＯＦ及びライン開始コードＳＯＬが記憶されている。比較回路２２とコード記憶レジスタ２３は、同期コードを検出する検出回路に含まれる。
【００４６】
比較回路２２は、シフトレジスタ２１から出力されるパラレルデータと、コード記憶レジスタ２３に記憶されている各コードとを比較し、比較結果に応じてタイミング信号ＴＩと検出信号ＳＦ，ＳＬを出力する。
【００４７】
詳述すると、比較回路２２は、シフトレジスタ２１から出力されるパラレルデータをフレーム開始コードＳＯＦと比較する。比較回路２２は、パラレルデータがフレーム開始コードＳＯＦと一致すると、第１のレベル（例えばＨレベル）のタイミング信号ＴＩを出力する。また、比較回路２２は、パラレルデータがフレーム開始コードＳＯＦと一致すると、所定レベル（例えばＨレベル）のフレーム検出信号ＳＦを一定期間（例えば、クロック信号ＣＫの１周期の間）出力する。比較回路２２は、シフトレジスタ２１から出力されるパラレルデータをライン開始コードＳＯＬと比較する。比較回路２２は、パラレルデータがライン開始コードＳＯＬと一致すると、第１のレベル（例えばＨレベル）のタイミング信号ＴＩを出力する。また、比較回路２２は、パラレルデータがライン開始コードＳＯＬと一致すると、所定レベル（例えばＨレベル）の検出信号ＳＬを一定期間（例えばクロック信号ＣＫの１周期の間）出力する。
【００４８】
また、比較回路２２は、シフトレジスタ２１から出力されるパラレルデータをフレーム終了コードＥＯＦと比較する。比較回路２２は、パラレルデータがフレーム終了コードＥＯＦと一致すると、第１のレベルと異なる第２のレベル（例えばＬレベル）のタイミング信号ＴＩを出力する。比較回路２２は、シフトレジスタ２１から出力されるパラレルデータをライン終了コードＥＯＬと比較する。比較回路２２は、パラレルデータがフレーム終了コードＥＯＦと一致すると、第２のレベル（例えばＬレベル）のタイミング信号ＴＩを出力する。
【００４９】
即ち、比較回路２２は、シフトレジスタ２１に保持された同期コードを検出し、その検出結果に応じたタイミング信号ＴＩを出力する。詳しくは、比較回路２２は、開始コード（フレーム開始コードＳＯＦ及びライン開始コードＳＯＬ）と終了コード（ライン終了コードＥＯＬ及びフレーム終了コードＥＯＦ）を検出する。そして、比較回路２２は、開始コードと終了コードの間に転送される有効データに応じた期間、所定レベル（第１のレベル）のタイミング信号ＴＩを出力する。
【００５０】
図３に示すように、１フレーム分の画像データを転送する受信データＳｄ１は、フレーム開始コードＳＯＦにより始まり、フレーム終了コードＥＯＦにより終了する。そして、１フレーム分の画像データを構成する各行の画像データは、ライン終了コードＥＯＬとライン開始コードＳＯＬにより区切られている。従って、比較回路２２は、フレーム開始コードＳＯＦを検出するまでの間、第２のレベル（Ｌレベル）のタイミング信号ＴＩを出力する。そして、比較回路２２は、１ライン目（図３において最上段）の受信データＳｄ１に対して、フレーム開始コードＳＯＦを検出してからライン終了コードＥＯＬを検出するまでの間、第１のレベル（Ｈレベル）のタイミング信号ＴＩを出力する。そして、比較回路２２は、ライン開始コードＳＯＬを検出してから次のライン開始コードＳＯＬを検出するまでの間、第２のレベル（Ｌレベル）のタイミング信号ＴＩを出力する。
【００５１】
同様に、比較回路２２は、２ライン目から（ｎ−１）ライン目までの受信データＳｄ１に対して、ライン開始コードＳＯＬを検出してからライン終了コードＥＯＬを検出するまでの間、第１のレベル（Ｈレベル）のタイミング信号ＴＩを出力する。そして、比較回路２２は、ライン開始コードＳＯＬを検出してから次のライン開始コードＳＯＬを検出するまでの間、第２のレベル（Ｌレベル）のタイミング信号ＴＩを出力する。そして、比較回路２２は、ライン開始コードＳＯＬを検出してからフレーム終了コードＥＯＦを検出するまでの間、第１のレベル（Ｈレベル）のタイミング信号ＴＩを出力する。
【００５２】
つまり、図４に示す比較回路２２は、開始コードから終了コードまでの間、第１のレベル（Ｈレベル）のタイミング信号ＴＩを出力し、終了コードから次の開始コードまでの間、第２のレベル（Ｌレベル）のタイミング信号ＴＩを出力する。
【００５３】
なお、比較回路２２は、開始コードの検出（一致）に応じて出力する第１のレベル（Ｈレベル）のタイミング信号ＴＩを、同期コードのビット数に応じて遅延して出力するように構成されている。例えば、比較回路２２は、クロック信号ＣＫに同期して動作する遅延回路を有し、その遅延回路により、同期コードのビット数と等しいサイクル分だけ第１のレベルのタイミング信号ＴＩを、開始コードの検出（一致）から遅れて出力する。なお、比較回路２２は、終了コードの検出（一致）に応じて出力する第２のレベル（Ｌレベル）のタイミング信号ＴＩを出力する。
【００５４】
変換回路２４は、シフトレジスタ３１、ラッチ回路３２、カウンタ回路３３を有している。
シフトレジスタ３１は、画素データのビット数に応じた数（図４において４個）のフリップフロップ回路（ＦＦ回路）３１ａ〜３１ｄを備え、これらＦＦ回路３１ａ〜３１ｄは直列に接続されている。各ＦＦ回路３１ａ〜３１ｄにはクロック信号ＣＫが供給される。各ＦＦ回路３１ａ〜３１ｄはそれぞれ、クロック信号ＣＫに応答して入力信号をラッチし、ラッチしたレベルと等しいレベルの信号を出力する。従って、シフトレジスタ３１は、クロック信号ＣＫに同期して入力信号を転送する。そして、シフトレジスタ３１は、各ＦＦ回路３１ａ〜３１ｄにラッチした信号を出力する。
【００５５】
ラッチ回路３２は、画素データのビット数に応じた数（図４において４個）のフリップフロップ回路（ＦＦ回路）３２ａ〜３２ｄを備えている。各ＦＦ回路３２ａ〜３２ｄには、対応するシフトレジスタ３１のＦＦ回路３１ａ〜３１ｄの出力信号が供給される。また、各ＦＦ回路３２ａ〜３２ｄには、カウンタ回路３３から出力されるカウントアップ信号ＵＰが供給される。各ＦＦ回路３２ａ〜３２ｄは、カウントアップ信号ＵＰに応答して入力信号をラッチし、ラッチしたレベルと等しいレベルの信号を出力する。これにより、ラッチ回路３２は、シリアルデータＳｄ１に含まれる４ビットの画素データを出力する。
【００５６】
カウンタ回路３３には、上記のタイミング信号ＴＩと、クロック信号ＣＫが供給される。カウンタ回路３３は、第１のレベルのタイミング信号ＴＩに応答して活性化し、第２のレベルのタイミング信号ＴＩに応答して非活性化する。活性化したカウンタ回路３３は、クロック信号ＣＫをカウントし、非活性化したカウンタ回路３３はカウント値をリセットする。活性化時において、カウンタ回路３３は、例えばＨレベルのクロック信号ＣＫに応答してカウント値をカウントアップ（＋１）する。
【００５７】
カウンタ回路３３には、画素データのビット数に応じたカウントアップ値（例えば４）が設定されている。カウンタ回路３３は、カウント値がカウントアップ値と一致すると、所定レベル（例えばＨレベル）のカウントアップ信号ＵＰを出力し、カウント値をリセット（＝０）する。従って、カウンタ回路３３は、画素データのビット数に応じたクロック信号ＣＫのサイクル毎にカウントアップ信号を出力する。
【００５８】
つまり、カウンタ回路３３は、シフトレジスタ３１の第１〜第４ＦＦ回路３１ａ〜３１ｄにそれぞれ画素データＰ１１〜Ｐｎｍの各ビットｂ０〜ｂ３が保持される毎に、カウントアップ信号ＵＰをラッチ回路３２に出力する。従って、ラッチ回路３２は、カウントアップ信号ＵＰを入力する毎に、画素データを出力する。
【００５９】
同期信号生成回路２５は、比較回路２２から出力される検出信号ＳＦ，ＳＬに応答して同期信号ＶＤ，ＨＤを生成する。詳述すると、同期信号生成回路２５は、検出信号ＳＦに応答して所定レベル（例えばＬレベル）の垂直同期信号ＶＤを一定期間（例えばクロック信号ＣＫの１サイクルの間）出力した後、所定レベル（例えばＬレベル）の水平同期信号ＨＤを一定期間出力する。また、同期信号生成回路２５は、検出信号ＳＬに応答して所定レベル（例えばＬレベル）の水平同期信号ＨＤを一定期間出力する。
【００６０】
つまり、同期信号生成回路２５は、１フレーム分の画像データを含む受信データＳｄ１について、受信データＳｄ１に含まれる最初の開始コード（フレーム開始コードＳＯＦ）に応答して垂直同期信号ＶＤと水平同期信号ＨＤを出力する。更に、同期信号生成回路２５は、最初の開始コードを除く開始コード、即ち受信データＳｄ１に含まれる２番目以降の開始コード（ライン開始コードＳＯＬ）に応答して水平同期信号ＨＤを出力する。
【００６１】
上記のシフトレジスタ２１には同期コード書込回路（以下、単に書込回路）２６が接続されている。書込回路２６はレジスタ１６に接続され、そのレジスタ１６からデバッグ信号ＤＢＧが入力される。また、書込回路２６には、レジスタ１６に記憶されたデバッグ情報に基づく制御信号Ｃｐが入力される。制御信号Ｃｐは、取込水平サイズ（Ｈｓｉｚｅ）、取込垂直サイズ（Ｖｓｉｚｅ）を含む制御パラメータである。また、書込回路２６にはクロック信号ＣＫが入力される。
【００６２】
上記したように、レジスタ１６には、図２に示すデバッグ装置９ａにより、画像処理装置３のデバッグ処理に必要な情報が格納される。このレジスタ１６に格納される情報は、デバッグ処理の開始、デバッグ処理の終了、デバッグ処理において取り込むデータのサイズ（取込水平サイズ（Ｈｓｉｚｅ）及び取込垂直サイズ（Ｖｓｉｚｅ））を含む。
【００６３】
取込水平サイズ（Ｈｓｉｚｅ）は、水平同期信号Ｈｓの１周期の間に画像処理装置３が取り込むビットの数である。つまり、取込水平サイズは、開始コードのビット数と、終了コードのビット数と、１フレームの画像データにおける水平方向の画素のビット数の総和と、ブランクビットのビット数の合計値である。取込垂直サイズ（Ｖｓｉｚｅ）は、垂直同期信号Ｖｓの１周期の間に画像処理装置３が取り込むラインの数である。この取込垂直サイズは、１フレームの画像データにおける垂直方向の画素数と等しい値である。また、この取込垂直サイズは、垂直同期信号Ｖｓの１周期の間に出力される水平同期信号Ｈｓのパルス数と等しい値である。
【００６４】
書込回路２６は、デバッグ信号ＤＢＧに応答して、動作モードを通常モード又はデバッグモードに切り替える。例えば、書込回路２６は、例えばＨレベルのデバッグ信号ＤＢＧに応答して通常モードからデバッグモードに切り替え、Ｌレベルのデバッグ信号ＤＢＧに応答してデバッグモードから通常モードに切り替える。そして、書込回路２６は、デバッグモードのときに、クロック信号ＣＫと設定値Ｃｐに基づいて、内部同期コードをシフトレジスタ２１に書き込む。一方、書込回路２６は、通常モードにおいて、シフトレジスタ２１に対して内部同期コードの書き込みを行わない。
【００６５】
書込回路２６には、コード記憶レジスタ２３に記憶された同期コードと等しい内部同期コードが記憶されている。つまり、内部同期コードは、開始コードと終了コードを含む。開始コードはフレーム開始コードＳＯＦとライン開始コードＳＯＬ、終了コードはライン終了コードＥＯＬとフレーム終了コードＥＯＦである。
【００６６】
デバッグモードにおいて、書込回路２６は、クロック信号ＣＫをカウントし、そのカウント値と設定値Ｃｐとに応じて内部同期コードをシフトレジスタ２１に書き込む。
詳述すると、書込回路２６は、デバッグ信号ＤＢＧに応答して動作モードを通常モードからデバッグモードに切り替えると、書込行番号をリセット（＝０）し、フレーム開始コードＳＯＦをシフトレジスタ２１に書き込む。また、書込回路２６は、カウント値をリセット（＝０）し、カウントを開始する。
【００６７】
シフトレジスタ２１に対するコードの書き込みは、例えば、シフトレジスタ２１を構成するＦＦ回路２１ａ〜２１ｄに対するセット信号及びリセット信号により行われる。書込回路２６は、各ＦＦ回路２１ａ〜２１ｄに対するセット信号及びリセット信号を制御し、内部同期コードと等しいレベルの信号を各ＦＦ回路２１ａ〜２１ｄに記憶させる。つまり、書込回路２６は、シフトレジスタ２１、つまり各ＦＦ回路２１ａ〜２１ｄに記憶されたデータを、内部同期コードに書き換える。
【００６８】
そして、書込回路２６は、カウント値と１ラインに対応する設定値（ライン設定値）と比較する。ライン設定値は、開始コードに対する終了コードの位置（ビット数）に対応し、例えば、画素数と各画素のビット数の積の結果と、開始コードのビット数の和の値に設定されている。書込回路２６は、カウント値がライン設定値と等しいとき、書込行番号と取込垂直サイズとの比較結果に応じた終了コードをシフトレジスタ２１に書き込む。書込回路２６は、書込行番号が取込垂直サイズより小さいときにライン終了コードＥＯＬをシフトレジスタ２１に書き込み、書込行番号をインクリメント（＋１）する。また、書込回路２６は、書込行番号が取込垂直サイズと等しいときにフレーム終了コードＥＯＦをシフトレジスタ２１に書き込む。
【００６９】
そして、書込回路２６は、カウント値と取込水平サイズと比較し、カウント値が取込水平サイズと等しいときに、書込行番号に応じてフレーム開始コードＳＯＦ又はライン開始コードＳＯＬをシフトレジスタ２１に書き込む。書込回路２６は、書込行番号が「０」のときにフレーム開始コードＳＯＦをシフトレジスタ２１に書き込み、書込行番号が「０」より大きいときにライン開始コードＳＯＬをシフトレジスタ２１に書き込む。
【００７０】
画像処理部１３は、同期信号生成回路２５から出力される垂直同期信号ＶＤ及び水平同期信号ＨＤに応答して、変換回路２４から出力されるパラレルデータＰｄ１（画素データＰ１１〜Ｐｎｍ）を処理し、処理後のパラレルデータＰｄ２（画素データＱ１１〜Ｑｎｍ）を出力する。そして、画像処理部１３は、パラレルデータＰｄ２（画素データＱ１１〜Ｑｎｍ）の出力タイミングに応じて垂直同期信号ＶＤ１及び水平同期信号ＨＤ１を出力する。
【００７１】
詳述すると、画像処理部１３は、変換回路２４から出力されるパラレルデータＰｄ１（画素データＰ１１〜Ｐｎｍ）を順次受け取り、これをラインメモリ１４に格納する。画像処理部１３は、ラインメモリ１４に格納された複数行の画素データを、処理に応じた数の画素データ（例えば４個×４個の画素データ）を読み出してこれを処理し処理後のデータをラインメモリ１４に格納する。そして、画像処理部１３は、複数行の画素データに対する処理が終了すると、水平同期信号ＨＤを出力した後、１行分の画素データを順次出力する。
【００７２】
なお、ラインメモリ１４は、画像処理部１３が処理する画素データの行数よりも多くの行数の画素データを記憶可能な容量のメモリである。従って、画像処理部１３は、処理中の画素データが記憶された領域と異なる領域に、画像処理部１３が変換回路２４から受け取る画素データを格納する。
【００７３】
データ選択回路１７には、変換回路２４から出力されるパラレルデータＰｄ１が入力される。また、データ選択回路１７には、画像処理部１３から出力される処理後のパラレルデータＰｄ２が入力される。また、データ選択回路１７には、レジスタ１６から出力されるデバッグ信号ＤＢＧが入力される。
【００７４】
データ選択回路１７は、デバッグ信号ＤＢＧに応答して、パラレルデータＰｄ１（画素データＰ１１〜Ｐｎｍ）と処理後のパラレルデータＰｄ２（画素データＱ１１〜Ｑｎｍ）のうちの何れか一方を選択し、その選択した画素データを出力する。例えば、データ選択回路１７は、第１のレベル（Ｌレベル）のデバッグ信号ＤＢＧに応答してパラレルデータＰｄ１を選択して出力する。また、データ選択回路１７は、第２のレベル（Ｈレベル）のデバッグ信号ＤＢＧに応答してパラレルデータＰｄ２を選択して出力する。
【００７５】
レジスタ１６は、通常モードのときに第１のレベルのデバッグ信号ＤＢＧを出力し、デバッグモードのときに第２のレベルのデバッグ信号ＤＢＧを出力する。従って、データ選択回路１７は、通常モードのときに、画像処理部１３から出力される処理済のパラレルデータＰｄ２を選択して出力し、デバッグモードのときに、変換回路２４から出力される処理前のパラレルデータＰｄ１を選択して出力する。
【００７６】
次に、上記のように構成された画像処理装置３の作用を説明する。
なお、説明及び図面を簡略化するために、有効データのデータ数、つまり画素数を「４」とする。
【００７７】
図５に示すように、シリアルデータＳｄ１が、図２に示すセンサモジュール２ａから出力される。尚、図５に示すシリアルデータＳｄ１において、上段はシリアルデータＳｄ１として出力されるデータ又はコードを示し、下段は、そのデータ又はコードのビットビット番号を示す。なお、後述するシリアルデータＳｄａについても同様である。
【００７８】
即ち、センサモジュール２ａは、５ビットのブランクビットＢＬＢを出力する。次いで、４ビットのフレーム開始コードＳＯＦを出力し、４ビットの画素データＰ１１〜Ｐ１４を出力し、４ビットのライン終了コードＥＯＬを出力する。そして、ブランクビットＢＬＢからライン終了コードＥＯＬまでを繰り返し出力する。
【００７９】
変換回路２４は、タイミング信号ＴＩに基づいて、シフトレジスタ３１に記憶されたシリアルデータＳｄａ（画素データＰ１１のビット０〜３）に基づくパラレルデータＰｄ１（Ｄ１１）を出力する。
【００８０】
（通常モード）
図４に示すシフトレジスタ２１には、シリアルデータＳｄ１が順次記憶される。そして、図５に示す時刻Ｔ１において、シフトレジスタ２１には、フレーム開始コードＳＯＦが記憶される。従って、比較回路２２は、検出信号ＳＦとタイミング信号ＴＩを出力する。
【００８１】
図５の中段に示されたデータＳｄａは、シフトレジスタ２１から変換回路２４のシフトレジスタ３１に出力されるシリアルデータＳｄａである。このシリアルデータＳｄａは、同期コードのビット数、即ちシフトレジスタ２１の段数に応じたビット数（本実施形態では４ビット）だけシリアルデータＳｄ１から遅れて出力される。
【００８２】
そして、図４に示す変換回路２４は、フレーム開始コードＳＯＦの検出により出力されるタイミング信号ＴＩに基づいて、シリアルデータＳｄａをパラレルデータＰｄ１に変換して出力する。例えば、変換回路２４は、図５に示す画素データＰ１１のビット０〜３を含む４ビットのパラレルデータＤ１１を出力する。次いで、変換回路２４は、画素データＰ１２のビット０〜３を含む４ビットのパラレルデータＤ１２を出力する。同様に、変換回路２４は、画素データＰ１３のビット０〜３を含むパラレルデータＤ１３、画素データＰ１４のビット０〜３を含むパラレルデータＤ１４を出力する。
【００８３】
（デバッグモード）
図４に示すレジスタ１６は、デバッグ処理の開始を示す情報が格納されると、図５に示すように、Ｈレベルのデバッグ信号ＤＢＧを出力する。図４に示す書込回路２６は、そのデバッグ信号ＤＢＧに応答して、フレーム開始コードＳＯＦをシフトレジスタ２１に書き込む。このとき、シフトレジスタ２１には、図５に示すように、シリアルデータＳｄ１として、画素データＰ１１のビット２，３と画素データＰ１２のビット０，１が記憶されている。これらのビットデータは、フレーム開始コードＳＯＦのビット０〜４に書き換えられる。
【００８４】
比較回路２２は、シフトレジスタ２１に書き込まれたフレーム開始コードＳＯＦとコード記憶レジスタ２３から出力される同期コードと比較し、その比較結果に応じてタイミング信号ＴＩを出力する。一方、図４に示すシフトレジスタ２１は、このフレーム開始コードＳＯＦのビット０〜３に続いて、画素データＰ１２のビット２，３、画素データＰ１３のビット０〜４を順次出力する。
【００８５】
変換回路２４は、タイミング信号ＴＩに基づいて、フレーム開始コードＳＯＦに続く４ビット、即ち、画素データＰ１２のビット２，３と画素データＰ１３のビット０，１を含む４ビットのパラレルデータＤ１１を出力する。図４に示すデータ選択回路１７は、Ｈレベルのデバッグ信号ＤＢＧに応答してパラレルデータＰｄ１（Ｄ１１）を選択してシリアルデータＳｄ２に変換して出力する。
【００８６】
次いで、変換回路２４は、図５に示すように、画素データＰ１３のビット２，３と画素データＰ１４のビット０，１を含むパラレルデータＤ１２を出力する。同様に、変換回路２４は、画素データＰ１４のビット２，３とライン終了コードＥＯＬのビット０，１を含む４ビットのパラレルデータＤ１３、ライン終了コードＥＯＬのビット２，３とブランクビットＢＬＢの２ビットを含む４ビットのパラレルデータＤ１４を出力する。
【００８７】
次いで、書込回路２６は、カウント値に基づいて、内部同期コード（ライン終了コードＥＯＬ）をシフトレジスタ２１に書き込む。次いで、書込回路２６は、カウント値と取込水平サイズ（Ｈｓｉｚｅ）とを比較し、カウント値が取込水平サイズと等しくなると、書込行番号に応じた開始コード、即ちライン開始コードＳＯＬをシフトレジスタ２１に書き込む。このとき、シフトレジスタ２１には、図５に示すように、シリアルデータＳｄ１として、画素データＰ２１のビット２，３と画素データＰ２２のビット０，１が記憶されている。これらのビットデータは、ライン開始コードＳＯＬのビット０〜４に書き換えられる。
【００８８】
比較回路２２は、シフトレジスタ２１に書き込まれたライン開始コードＳＯＬとコード記憶レジスタ２３から出力される同期コードと比較し、その比較結果に応じてタイミング信号ＴＩを出力する。一方、図４に示すシフトレジスタ２１は、このライン開始コードＳＯＬのビット０〜３に続いて、画素データＰ２２のビット２，３、画素データＰ２３のビット０〜４を順次出力する。
【００８９】
変換回路２４は、タイミング信号ＴＩに基づいて、図５に示すように、ライン開始コードＳＯＬに続く４ビット、即ち、画素データＰ２２のビット２，３と画素データＰ２３のビット０，１を含む４ビットのパラレルデータＤ２１を出力する。図４に示すデータ選択回路１７は、Ｈレベルのデバッグ信号ＤＢＧに応答してパラレルデータＰｄ１（Ｄ２１）を選択してシリアルデータＳｄ２に変換して出力する。
【００９０】
このようにして画像処理装置３から出力されるシリアルデータＳｄ２は、図２に示す制御装置４ａによってメモリ６ａに格納される。つまり、図５に示すパラレルデータＤ１１〜Ｄ１４，Ｄ２１がメモリ６ａに格納される。内部同期コードにより取り込まれた有効データ、即ちフレーム開始コードＳＯＦにより取り込まれたパラレルデータＤ１１〜Ｄ１４は１行目のデータであり、ライン開始コードＳＯＬにより取り込まれたパラレルデータＤ２１は２行目のデータである。
【００９１】
図５に示すように、パラレルデータＤ１１は、画素データＰ１２のビット２，３と画素データＰ１３のビット０，１を含む。また、パラレルデータＤ１２は、画素データＰ１３のビット２，３と画素データＰ１４のビット０，１を含む。そして、パラレルデータＤ２１は、画素データＰ２２のビット２，３と画素データＰ２３のビット０，１を含む。従って、各パラレルデータＤ１１，Ｄ１２，Ｄ２１は、それぞれ、画素データのビット２，３と、その画素データに続く画素データのビット０，１を含む。
【００９２】
つまり、各パラレルデータは、それぞれ２ビットずれたデータを含む。このように、メモリ６ａに格納されたパラレルデータのビット位置と、画像処理装置３に入力されるシリアルデータＳｄ１に含まれる各画素データのビット位置との間には、規則性がある。従って、作業者は、メモリ６ａに記憶されたデータの各ビットを確認することで、この規則性を容易に確認することができる。
【００９３】
そして、規則性に基づいて、メモリ６ａに記憶されたデータのビットをシフトする。例えば、図５に示すパラレルデータＤ１１〜Ｄ１４の各ビットを、図５において右方向に２ビットだけビットシフトする。すると、例えば、画素データＰ１３のビット０〜３を含む４ビットのパラレルデータが生成される。つまり、画素データの各ビットを含むパラレルデータが生成される。
【００９４】
また、規則性に基づいて、ライン終了コードＥＯＬの各ビットを含む４ビットのパラレルデータが生成される。このパラレルデータの各ビットは、センサモジュール２ａと画像処理装置３の間のシリアル通信において、受信端である画像処理装置３の入力端子におけるシリアルデータＳｄ１のレベルを示す。そして、センサモジュール２ａが出力するライン終了コードＥＯＬの各ビットのレベルは判っている。従って、ライン終了コードＥＯＬの各ビットと、パラレルデータの各ビットとを比較することで、シリアル通信におけるレベルの変化を解析することができる。
【００９５】
尚、このレベル変化の解析には、画素データと、メモリ６ａに格納されたデータを用いることもできる。つまり、所定の画像（例えばテストパターン）をセンサモジュール２ａにて撮像する。その撮像した画像の画素データは、画像処理装置３と制御装置４ａを介してメモリ６ａに格納される。そして、メモリ６ａに格納されたデータを、上記と同様にして生成したデータに基づく画像を、例えば図２に示す表示装置５ａに表示させる。所定の画像と表示装置５ａに表示された画像とを比較することで、上記レベルの変化を解析することができる。
【００９６】
以上説明したように、本実施形態によれば、以下の効果を奏する。
（１）書込回路２６は、デバッグ信号ＤＢＧに応答して内部同期コードをシフトレジスタ２１に書き込む。比較回路２２は、シフトレジスタ２１に書き込まれた内部同期コードにより同期コードを検出したことを示すタイミング信号ＴＩを出力する。そして、変換回路２４は、タイミング信号ＴＩに応答して、シフトレジスタ２１から出力されるシリアルデータＳｄａをパラレルデータＰｄ１に変換する。従って、画像処理装置３が受信するシリアルデータＳｄ１において同期コードを検出できない場合に、デバッグ信号ＤＢＧを生成させることで、シリアルデータＳｄ１を受信することができる。
【００９７】
（２）画像処理装置３のシリアル変換部１５は、デバッグ信号ＤＢＧに基づいて受信したデータをシリアルデータＳｄ２に変換して出力する。このシリアルデータＳｄ２は、制御装置４ａにて受信されてパラレルデータに変換され、その変換後のデータがメモリ６ａに格納される。従って、メモリ６ａに格納されたデータにより、画像処理装置３が受信したデータを確認することができる。この結果、シリアル通信のための回路のデバッグ処理（回路の設計変更、調整等）を行うことが可能となる。
【００９８】
（３）データ選択回路１７は、デバッグ信号ＤＢＧに応答して、通常モードのときに画像処理部１３から出力されるパラレルデータＰｄ２を選択してシリアル変換部１５に出力する。一方、データ選択回路１７は、デバッグモードのときにパラレル変換部１２の変換回路２４から出力されるパラレルデータＰｄ１を選択してシリアル変換部１５に出力する。つまり、画像処理装置３は、デバッグモードのときに、画像処理部１３を迂回してパラレルデータＰｄ１をシリアル変換部１５に供給するパスを有している。その結果、画像処理部１３にて処理されていないデータ、つまり受信したシリアルデータＳｄ１の一部がそのままシリアルデータＳｄ２として出力され、メモリ６ａに格納される。このため、センサモジュール２ａと画像処理装置３との間のシリアル通信におけるデータの状態を確認することができる。このため、シリアル通信における通信異常の原因解析を容易に行うことが可能となる。
【００９９】
（４）書込回路２６は、シリアルデータＳｄ１とストローブ信号ＳＴＲＢに基づいて生成したクロック信号ＣＫをカウントする。そして、書込回路２６は、カウント値とシリアルデータＳｄ１に応じた取込水平サイズ（Ｈｓｉｚｅ）とを比較し、カウント値が取込水平サイズと等しくなると、開始コードをシフトレジスタ２１に書き込むようにした。その結果、シリアルデータＳｄ１を内部同期コードにより取り込んだパラレルデータＰｄ１（Ｄ１１．Ｄ２１）は、同じ規則規に従って、受信した画素データのビットを含む。従って、作業者は、規則性に基づいて、メモリ６ａに記憶されたデータのビットをシフトすることで、受信した各画素データと等しいデータを生成することができる。つまり、メモリ６ａに格納したデータから、受信した画素データを容易に復元することができる。
【０１００】
同様に、メモリ６ａに格納したデータから、シリアルデータに含まれる同期コードを受信したデータを容易に復元することができる。そして、センサモジュール２ａが出力するライン終了コードＥＯＬの各ビットのレベルは判っている。従って、ライン終了コードＥＯＬの各ビットと、パラレルデータの各ビットとを比較することで、シリアル通信におけるレベルの変化を解析することができる。
【０１０１】
（第２実施形態）
次に、第２実施形態を図面に従って説明する。
なお、この実施形態において、上記実施形態と同じ構成については同じ符号を付して詳細な説明を省略する。
【０１０２】
図６に示すように、画像処理装置３ａのシリアル・パラレル変換処理部（パラレル変換部）１２ａは、同期コード書込回路２６ａと、ブランクビットを検出するためのカウンタ回路２７を有している。このカウンタ回路２７には、受信データＳｄ１とクロック信号ＣＫとデバッグ信号ＤＢＧが入力される。
【０１０３】
カウンタ回路２７は、デバッグ信号ＤＢＧに基づいて、デバッグモード時にカウント動作し、通常モード時にカウントを停止する。そして、カウンタ回路２７は、カウント動作において、クロック信号ＣＫに応答して受信データＳｄ１を判定し、受信データＳｄ１がブランクビットＢＬＢの場合にカウント値をカウントアップ（＋１）し、受信データＳｄ１がブランクビットＢＬＢではない場合にカウント値をリセット（＝０）する。
【０１０４】
図２に示すセンサモジュール２ａは、終了コードを出力してから開始コードを出力するまでの期間（ブランク期間）において、所定値（例えば「１」）のブランクビットＢＬＢを出力する。従って、このブランクビットＢＬＢは、ブランク期間、連続する所定値のビット列である。連続するブランクビットＢＬＢの数（ビット列の長さ）を例えば「１０」とする。
【０１０５】
従って、カウンタ回路２７は、クロック信号ＣＫに応答して受信データＳｄ１を入力し、その受信データＳｄ１が所定値（「１」）の場合にカウント値をカウントアップし、受信データＳｄ１が所定値と異なる値（「０」）の場合にカウント値をリセットする。そして、カウンタ回路２７には、ブランクビットＢＬＢのビット列の長さに対応する判定値が記憶されている。この判定値は、ビット列の長さよりも少ない値（例えば「８」）である。カウンタ回路２７は、カウント値と判定値とを比較し、その比較結果に応じて検出信号ＳＸ１を出力する。例えば、カウンタ回路２７は、カウント値が判定値と等しいときに所定レベル（例えばＨレベル）の検出信号ＳＸ１を出力し、カウント値が判定値と異なるときに所定レベルと異なるレベル（例えばＬレベル）の検出信号ＳＸ１を出力する。従って、所定レベル（Ｈレベル）の検出信号ＳＸ１は、連続するブランクビットＢＬＢの検出を示す。
【０１０６】
書込回路２６ａは、検出信号ＳＸ１に応答して、内部同期コードの開始コードをシフトレジスタ２１に書き込む。詳述すると、書込回路２６ａは、検出信号ＳＸ１に応答して、書込行番号をリセット（＝０）する。また、書込回路２６ａは、カウント値をリセット（＝０）し、カウントを開始する。そして、書込回路２６ａは、書込行番号に応じてフレーム開始コードＳＯＦ又はライン開始コードＳＯＬをシフトレジスタ２１に書き込む。書込回路２６ａは、書込行番号が「０」のときにフレーム開始コードＳＯＦをシフトレジスタ２１に書き込み、書込行番号が「０」より大きいときにライン開始コードＳＯＬをシフトレジスタ２１に書き込む。
【０１０７】
そして、書込回路２６ａは、カウント値と１ラインに対応する設定値（ライン設定値）と比較する。書込回路２６ａは、カウント値がライン設定値と等しいとき、書込行番号と取込垂直サイズとの比較結果に応じた終了コードをシフトレジスタ２１に書き込む。書込回路２６ａは、書込行番号が取込垂直サイズより小さいときにライン終了コードＥＯＬをシフトレジスタ２１に書き込み、書込行番号をインクリメント（＋１）する。また、書込回路２６ａは、書込行番号が取込垂直サイズと等しいときにフレーム終了コードＥＯＦをシフトレジスタ２１に書き込む。
【０１０８】
次に、上記のように構成された画像処理装置３ａの作用を説明する。
尚、通常モードにおける作用は第１実施形態と同じであるため省略し、デバッグモードにおける作用を説明する。
【０１０９】
カウンタ回路２７は、ブランクビットＢＬＢをカウントし、そのカウント値が判定値（＝８）と等しいときに、図７に示すように、Ｈレベルの検出信号ＳＸ１を出力する。図６に示す書込回路２６ａは、その検出信号ＳＸ１に応答して、フレーム開始コードＳＯＦをシフトレジスタ２１に書き込む。このとき、シフトレジスタ２１には、シリアルデータＳｄ１として、ブランクビットＢＬＢのビット４〜７（５ビット目〜８ビット目）が記憶されている。これらのビットデータは、フレーム開始コードＳＯＦのビット０〜４に書き換えられる。
【０１１０】
そして、図６に示すシフトレジスタ２１は、このフレーム開始コードＳＯＦのビット０〜３に続いて、ブランクビットＢＬＢのビット８，９、フレーム開始コードＳＯＦのビット０〜４を順次出力する。変換回路２４は、フレーム開始コードＳＯＦに続く４ビット、即ち、ブランクビットＢＬＢのビット８，９とフレーム開始コードＳＯＦのビット０，１を含む４ビットのパラレルデータＤ１１を出力する。
【０１１１】
次いで、図６に示す変換回路２４は、フレーム開始コードＳＯＦのビット２，３と画素データＰ１１のビット０，１を含むパラレルデータＤ１２を出力する。同様に、変換回路２４は、画素データＰ１１のビット２，３と画素データＰ１２のビット０，１を含む４ビットのパラレルデータＤ１３、画素データＰ１２のビット２，３と画素データＰ１３のビット０，１を含む４ビットのパラレルデータＤ１４を出力する。次いで、書込回路２６ａは、カウント値に基づいて、内部同期コード（ライン終了コードＥＯＬ）をシフトレジスタ２１に書き込み、書込行番号をインクリメントする。
【０１１２】
次いで、書込回路２６ａは、検出信号ＳＸ１に応答して、書込行番号に応じた開始コード、即ちライン開始コードＳＯＬをシフトレジスタ２１に書き込む。そして、図６に示す変換回路２４は、ライン開始コードＳＯＬに続く４ビット、即ち、ブランクビットＢＬＢのビット８，９とライン開始コードＳＯＬのビット０，１を含む４ビットのパラレルデータＤ２１を出力する。同様に、変換回路２４は、ライン開始コードＳＯＬのビット２，３と画素データＰ２１のビット０，１を含む４ビットのパラレルデータＤ２２を出力する。
【０１１３】
図６に示すシリアル変換部１５は、変換回路２４から出力されるパラレルデータＰｄ１、つまり、図７に示すパラレルデータＤ１１〜Ｄ１４，Ｄ２１，Ｄ２２等をシリアルデータＳｄ２に変換して出力する。このようにして画像処理装置３ａから出力されるシリアルデータＳｄ２は、図２に示す制御装置４ａによってメモリ６ａに格納される。つまり、図７に示すパラレルデータＤ１１〜Ｄ１４，Ｄ２１，Ｄ２２がメモリ６ａに格納される。
【０１１４】
図７に示すように、パラレルデータＤ１１は、ブランクビットＢＬＢのビット８，９とフレーム開始コードＳＯＦのビット０，１を含む。また、パラレルデータＤ１２は、フレーム開始コードＳＯＦのビット２，３と画素データＰ１１のビット０，１を含む。そして、パラレルデータＤ２１は、ブランクビットＢＬＢのビット８，９とライン開始コードＳＯＬのビット０，１を含み、パラレルデータＤ２１は、ライン開始コードＳＯＬのビット２，３と画素データＰ２１のビット０，１を含む。
【０１１５】
従って、メモリ６ａに格納されたデータは、第１実施形態と同様に、規則性を有する。更に、各行の先頭の複数のデータには、フレーム開始コードＳＯＦのビット０〜３が含まれる。従って、図６に示す画像処理装置３ａが受信した開始コード（フレーム開始コードＳＯＦ及びライン開始コードＳＯＬ）のビット列を容易に確認することができる。そして、図２に示すセンサモジュール２ａから出力される開始コード（フレーム開始コードＳＯＦ及びライン開始コードＳＯＬ）のビット列は判っている。従って、これら２つのビット列を比較することで、シリアル通信におけるレベルの変化を解析することができる。
【０１１６】
以上説明したように、本実施形態によれば、第１実施形態の効果に加え、以下の効果を奏する。
（５）カウンタ回路２７は、シリアルデータＳｄ１のブランクビットＢＬＢをカウントし、カウント値と判定値とを比較する。そして、カウンタ回路２７は、カウント値が判定値と等しいときにＨレベルの検出信号ＳＸ１を出力する。書込回路２６ａは、Ｈレベルの検出信号ＳＸ１に応答して同期コードの開始コード（フレーム開始コードＳＯＦ又はライン開始コードＳＯＬ）をシフトレジスタ２１に書き込む。シリアル通信において、ブランクビットＢＬＢに続いて開始コード（フレーム開始コードＳＯＦ又はライン開始コードＳＯＬ）が送信される。従って、取り込んだ最初の複数のパラレルデータのうちのいくつかに、開始コードが含まれる。従って、画像処理装置３ａが受信した開始コード（フレーム開始コードＳＯＦ及びライン開始コードＳＯＬ）のビット列を容易に確認することができる。そして、センサモジュール２ａから出力される開始コード（フレーム開始コードＳＯＦ及びライン開始コードＳＯＬ）のビット列は判っている。従って、これら２つのビット列を比較することで、シリアル通信におけるレベルの変化を解析することができる。
【０１１７】
（第３実施形態）
次に、第３実施形態を図面に従って説明する。
なお、この実施形態において、上記各実施形態と同じ構成については同じ符号を付して詳細な説明を省略する。
【０１１８】
図８に示すように、画像処理装置３ｂのシリアル・パラレル変換処理部（パラレル変換部）１２ｂは、同期コード書込回路２６ｂを有している。書込回路２６ｂは、第２実施形態の書込回路２６ａと同じ機能を有している。更に、この書込回路２６ｂは、開始コードを書き込むタイミングを、フレーム毎に変更する機能を有している。この書込回路２６ｂの機能を、図９に従って説明する。尚、図９において、最上段に示すシリアルデータＳｄａ及びパラレルデータＰｄ１は、通常モードにおいてシフトレジスタ２１及び変換回路２４からそれぞれ出力される。そして、２段目以下のシリアルデータＳｄａ及びパラレルデータＰｄ１は、デバッグモードにおいてシフトレジスタ２１及び変換回路２４からそれぞれ出力される。
【０１１９】
図８に示す書込回路２６ｂは、先ず、第２実施形態の書込回路２６ａと同様に、検出信号ＳＸ１に応答してフレーム開始コードＳＯＦをシフトレジスタ２１に書き込む。この書き込により、シフトレジスタ２１に保持されたブランクビットＢＬＢのビット４〜７がフレーム開始コードＳＯＦに書き換えられる。
【０１２０】
そして、図６に示すシフトレジスタ２１は、このフレーム開始コードＳＯＦのビット０〜３に続いて、ブランクビットＢＬＢのビット８，９、フレーム開始コードＳＯＦのビット０〜４を順次出力する。変換回路２４は、フレーム開始コードＳＯＦに続く４ビット、即ち、ブランクビットＢＬＢのビット８，９とフレーム開始コードＳＯＦのビット０，１を含む４ビットのパラレルデータＤ１１を出力する。次いで、変換回路２４は、フレーム開始コードＳＯＦのビット２，３と画素データＰ１１のビット０，１を含むパラレルデータＤ１２を出力する。同様に、変換回路２４は、画素データＰ１１のビット２，３と画素データＰ１２のビット０，１を含む４ビットのパラレルデータＤ１３、画素データＰ１２のビット２，３と画素データＰ１３のビット０，１を含む４ビットのパラレルデータＤ１４を出力する。
【０１２１】
図８に示す書込回路２６ｂがシフトレジスタ２１にフレーム終了コードＥＯＦを書き込むと、１フレーム分のデータが終了する。
そして、次にカウンタ回路２７からＨレベルの検出信号ＳＸ１が出力されると、書込回路２６ｂは、クロック信号ＣＫに基づいて、図９に示すように、その検出信号ＳＸ１から１ビット分遅れてフレーム開始コードＳＯＦをシフトレジスタ２１に書き込む。この書込により、シフトレジスタ２１に保持されたブランクビットＢＬＢのビット５〜８がフレーム開始コードＳＯＦに書き換えられる。
【０１２２】
そして、図８に示すシフトレジスタ２１は、２フレーム目（Ｆ２）のデータを出力する。即ち、シフトレジスタ２１は、図９に示すように、フレーム開始コードＳＯＦのビット０〜３に続いて、ブランクビットＢＬＢのビット９、フレーム開始コードＳＯＦのビット０〜４を順次出力する。変換回路２４は、フレーム開始コードＳＯＦに続く４ビット、即ち、ブランクビットＢＬＢのビット９とフレーム開始コードＳＯＦのビット０〜２を含む４ビットのパラレルデータＤ１１を出力する。次いで、変換回路２４は、フレーム開始コードＳＯＦのビット３と画素データＰ１１のビット０〜２を含むパラレルデータＤ１２を出力する。同様に、変換回路２４は、画素データＰ１１のビット３と画素データＰ１２のビット０〜２を含む４ビットのパラレルデータＤ１３、画素データＰ１２のビット３と画素データＰ１３のビット０〜２を含む４ビットのパラレルデータＤ１４を出力する。
【０１２３】
そして、次のフレーム（Ｆ３）において、書込回路２６ｂは、検出信号ＳＸ１から２ビット分遅れてフレーム開始コードＳＯＦを書き込む。その結果、図９に示すように、パラレルデータＰｄ１のデータＤ１１〜Ｄ１４が、シリアルデータＳｄａの１ビット分遅れて出力される。このデータＤ１１〜Ｄ１４は、２フレーム目（Ｆ２）のデータＤ１１〜Ｄ１４に対して１ビットずれた４つのビットを含む。例えば、データＤ１１は、フレーム開始コードＳＯＦのビット０〜３を含み、データＤ１２は画素データＰ１１のビット０〜３を含む。
【０１２４】
以後、図８に示す書込回路２６ｂは、開始コードの書き込みタイミングを１ビットずつ遅らせる。その結果、各フレームにおいて出力されるデータＤ１１〜Ｄ１４は、前のフレームのデータＤ１１〜Ｄ１４に対し、１ビットずれた４つのビットを含む。
【０１２５】
そして、図８に示す書込回路２６ｂは、設定されたフレーム数の書き込みを実行すると、書き込みを停止する。設定されたフレーム数は、例えば、デバッグ情報としてレジスタ１６から設定値Ｃｐとして供給される。そして、図２に示すメモリ６ａには、設定されたフレーム数分のデータが格納される。
【０１２６】
上記のように、書込回路２６ｂが同期コードの書き込みタイミングを１ビットずつずらすことで、変換回路２４から出力されるパラレルデータＰｄ１（Ｄ１１〜Ｄ１４）に含まれるビットが変更される。従って、図９に示すように、７フレーム目（Ｆ７）のパラレルデータＰｄ１として出力されるデータＤ１１は、画素データＰ１１のビット０〜３を含む。つまり、メモリ６ａに格納された７フレーム目のデータの配列は、図２に示すセンサモジュール２ａから出力される画像データの配列と等しい。従って、この７フレーム目（Ｆ７）のデータに基づく画像を、例えば図２に示す表示装置５ａに表示させると、表示装置５ａには、センサモジュール２ａにて撮影した画像と等しい画像が表示される。
【０１２７】
つまり、メモリ６ａに格納された複数フレームのデータを、順次表示装置５ａに表示させることで、センサモジュール２ａが出力した有効データと等しいビット位置のデータ、つまり正しいビット位置のデータを確認することができる。そして、この正しいビット位置のデータに基づいて、シリアル通信におけるレベルの変化を解析することができる。
【０１２８】
以上説明したように、本実施形態によれば、上記各実施形態の効果に加え、以下の効果を奏する。
（６）書込回路２６ｂは、フレーム毎に、開始コードの書き込みタイミングを１ビットずつ遅らせるようにした。その結果、メモリ６ａには、受信したシリアルデータＳｄ１に含まれる画素データのビット配列と等しいビット配列のデータが格納される。このため、センサモジュール２ａが出力した有効データと等しいビット位置のデータ、つまり正しいビット位置のデータを確認することができる。そして、この正しいビット位置のデータに基づいて、シリアル通信におけるレベルの変化を解析することができる。
【０１２９】
（第４実施形態）
次に、第４実施形態を図面に従って説明する。
なお、この実施形態において、上記各実施形態と同じ構成については同じ符号を付して詳細な説明を省略する。
【０１３０】
図１０に示すように、画像処理装置３ｃは、シリアル・パラレル変換処理部（パラレル変換部）１２ｃ、信号選択回路１８、タイミング信号生成回路１９を有している。
信号選択回路１８は、画像処理部１３とシリアル変換部１５との間に接続されている。この信号選択回路１８には、画像処理部１３から出力される同期信号ＶＤ２，ＨＤ２が供給される。また、信号選択回路１８には、タイミング信号発生器１１から出力される同期信号Ｖｓ，Ｈｓが供給される。更に、信号選択回路１８にはレジスタ１６から出力されるデバッグ信号ＤＢＧが供給される。
【０１３１】
信号選択回路１８は、デバッグ信号ＤＢＧに応答して、画像処理部１３から出力される同期信号ＶＤ２，ＨＤ２と、タイミング信号発生器１１から出力される同期信号Ｖｓ，Ｈｓのうちの何れか一対を選択し、その選択した一対の同期信号を出力する。例えば、信号選択回路１８は、Ｌレベルのデバッグ信号ＤＢＧ（通常モード）に応答して画像処理部１３から出力される同期信号ＶＤ２，ＨＤ２を選択し、それら同期信号ＶＤ２，ＨＤ２と等しいレベルの信号を出力する。一方、信号選択回路１８は、Ｈレベルのデバッグ信号ＤＢＧ（デバッグモード）に応答して、タイミング信号発生器１１から出力される同期信号Ｖｓ，Ｈｓを選択し、それら同期信号Ｖｓ，Ｈｓと等しいレベルの信号を出力する。
【０１３２】
従って、シリアル変換部１５は、通常モードにおいて、画像処理部１３から出力される同期信号ＶＤ２，ＨＤ２に応じた信号により、データ選択回路１７から出力されるパラレルデータをシリアルデータＳｄ２に変換する。一方、シリアル変換部１５は、デバッグモードにおいて、タイミング信号発生器１１から出力される同期信号Ｖｓ，Ｈｓに応じた信号により、データ選択回路１７から出力されるパラレルデータをシリアルデータＳｄ２に変換する。
【０１３３】
タイミング信号生成回路（以下、信号生成回路）１９には、レジスタ１６から出力されるデバッグ信号ＤＢＧと設定値Ｃｐが供給される。また、信号生成回路１９にはクロック信号ＣＫが入力される。信号生成回路１９は、デバッグ信号ＤＢＧとクロック信号ＣＫと設定値Ｃｐに基づいて、所定周期の内部タイミング信号Ｔｄを生成する。
【０１３４】
信号生成回路１９は、比較回路２２が出力するタイミング信号ＴＩと等しい周期の内部タイミング信号Ｔｄを生成する。詳述すると、比較回路２２は、シフトレジスタ２１に保持された開始コード（フレーム開始コードＳＯＦ及びライン開始コードＳＯＬ）を検出して第１のレベル（Ｈレベル）のタイミング信号ＴＩを出力する。また、比較回路２２は、シフトレジスタ２１に保持された終了コード（ライン終了コードＥＯＬ及びフレーム終了コードＥＯＦ）を検出して第２のレベル（Ｌレベル）のタイミング信号ＴＩを出力する。タイミング信号ＴＩの周期は、開始コードの周期、即ちクロック信号ＣＫのサイクルにおいて、取込水平サイズ（Ｈｓｉｚｅ）分のサイクルである。
【０１３５】
従って、信号生成回路１９は、このタイミング信号ＴＩの波形と等しい波形のタイミング信号Ｔｄを生成する。即ち、信号生成回路１９には、取込水平サイズと有効データのビット数が設定値Ｃｐとしてレジスタ１６から供給される。信号生成回路１９は、デバッグ信号ＤＢＧに応答してクロック信号ＣＫのカウントを開始し、第１のレベル（Ｈレベル）のタイミング信号Ｔｄを出力する。そして、信号生成回路１９は、カウント値と有効データのビット数とを比較し、カウント値がビット数と等しくなると第２のレベル（Ｌレベル）のタイミング信号Ｔｄを出力する。次いで、信号生成回路１９は、カウント値と取込水平サイズと比較し、カウント値が取込水平サイズと等しくなると、カウント値をリセット（＝０）し、第１のレベルのタイミング信号Ｔｄを出力する。
【０１３６】
信号生成回路１９により生成された内部タイミング信号Ｔｄは、パラレル変換部１２ｃの選択回路２８に供給される。この選択回路２８には、比較回路２２から出力されるタイミング信号ＴＩが入力される。また、選択回路２８には、デバッグ信号ＤＢＧが入力される。
【０１３７】
選択回路２８は、デバッグ信号ＤＢＧに応答して、タイミング信号ＴＩと内部タイミング信号Ｔｄのうちの一方を選択し、その選択した信号と等しいレベルの信号Ｔｓを出力する。例えば、選択回路２８は、Ｌレベルのデバッグ信号ＤＢＧ（通常モード）に応答して比較回路２２から出力されるタイミング信号ＴＩを選択し、そのタイミング信号ＴＩと等しいレベルの信号Ｔｓを出力する。一方、選択回路２８は、Ｈレベルのデバッグ信号ＤＢＧ（デバッグモード）に応答して信号生成回路１９から出力される内部タイミング信号Ｔｄを選択し、その内部タイミング信号Ｔｄと等しいレベルの信号Ｔｓを出力する。
【０１３８】
選択回路２８から出力される信号Ｔｓは、変換回路２４のカウンタ回路３３に供給される。カウンタ回路３３は、信号Ｔｓに応答してカウント動作し、カウントアップ信号ＵＰを出力する。つまり、カウンタ回路３３は、通常モードのとき、比較回路２２から出力されるタイミング信号ＴＩに応答してカウントアップ信号ＵＰを出力し、デバッグモードのとき、信号生成回路１９から出力されるタイミング信号Ｔｄに応答してカウントアップ信号ＵＰを出力する。
【０１３９】
以上説明したように、本実施形態によれば、以下の効果を奏する。
（１）信号生成回路１９は、デバッグ信号ＤＢＧとクロック信号ＣＫと設定値Ｃｐに基づいて、同期コードを正常に検出したときに比較回路２２が出力するタイミング信号ＴＩの波形と等しい波形の内部タイミング信号Ｔｄを生成する。そして、パラレル変換部１２ｃの選択回路２８は、デバッグ信号ＤＢＧに応答して、通常モードのときには比較回路２２から出力されるタイミング信号ＴＩと等しい信号Ｔｓを出力し、デバッグモードのときには信号生成回路１９から出力される内部タイミング信号Ｔｄと等しい信号Ｔｓを出力する。その結果、画像処理装置３が受信するシリアルデータＳｄ１において同期コードを検出できない場合に、デバッグ信号ＤＢＧを生成させることで、シリアルデータＳｄ１を受信することができる。
【０１４０】
（２）信号選択回路１８は、デバッグ信号ＤＢＧに応答して、通常モードのときに画像処理部１３から出力される同期信号ＶＤ２，ＨＤ２を選択してシリアル変換部１５に出力する。一方、信号選択回路１８は、デバッグモードのときにタイミング信号発生器１１から出力される同期信号Ｖｓ，Ｈｓを選択してシリアル変換部１５に出力する。シリアル変換部１５は、信号選択回路１８から出力される同期信号に基づいて、データ選択回路１７から出力されるデータをシリアルデータＳｄ２に変換して出力する。従って、画像処理装置３が受信するシリアルデータＳｄ１において同期コードを検出できない場合に、タイミング信号発生器１１が生成する同期信号Ｖｓ，Ｈｓに基づいてパラレル・シリアル変換を行うことができ、受信したシリアルデータＳｄ１に基づくシリアルデータＳｄ２を出力することができる。
【０１４１】
尚、上記各実施形態は、以下の態様で実施してもよい。
・上記各実施形態において、画素データのビット数、同期コードのビット数、ブランクビットＢＬＢが連続する数及びその判定値は、適宜変更されてもよい。
【０１４２】
・第１〜第３実施形態では、同期コード書込回路２６に、検出する同期コードと等しい内部同期コードを記憶したが、コード記憶レジスタ２３に記憶された同期コードを用いて内部同期コードとしてシフトレジスタ２１に書き込むようにしてもよい。
【０１４３】
・第２，第３実施形態において、カウンタ回路２７は判定値を記憶し、カウント値と判定値との比較結果に応じて検出信号ＳＸ１を出力する構成とした。ブランクビットＢＬＢを検出することができればよく、構成を適宜変更してもよい。例えば、判定値を書込回路２６ａ，２６ｂに記憶する。そして、カウンタ回路２７は、カウント値を出力する。書込回路２６ａ，２６ｂは、判定値とカウント値とを比較し、その比較結果に応じて内部同期コードをシフトレジスタ２１に書き込む。なお、判定値は、デバッグのための情報としてレジスタ１６に記憶し、他の情報とともに書込回路２６ａ，２６ｂに供給するようにしてもよい。このように構成しても、上記第２，第３実施形態と同様の効果を得ることができる。
【０１４４】
・上記第４実施形態において、ブランクビットＢＬＢをカウントするカウンタ回路２７（図６，図８参照）を有し、信号生成回路１９は、第２，第３実施形態の書込回路２６ａ，２６ｂと同様に、そのカウンタ回路２７の出力信号ＳＸ１に応答してタイミング信号Ｔｄを出力するようにしてもよい。更に、第３実施形態と同様に、信号生成回路１９は、カウンタ回路２７の出力信号ＳＸ１に応答して出力するタイミング信号Ｔｄをずらすようにしてもよい。このように構成することにより、第２，第３実施形態の画像処理装置３ａ，３ｂと同様の効果が得られる。
【０１４５】
・上記各実施形態において、デバッグの終了を示す情報として、画像処理装置３が取り込むフレーム数を用いても良い。レジスタ１６は、設定されたフレーム数を含む設定値Ｃｐを出力する。例えば、図４に示す書込回路２６は、設定されたフレーム数と等しい数のフレーム終了コードＥＯＦをシフトレジスタ２１に書き込んだ後、同個コードの書き込み処理を停止する。あｍた、図１０に示す信号生成回路１９は、第１のレベルのタイミング信号Ｔｄを出力した回数をカウントし、そのカウント値に１フレームのライン数を乗算した結果の値が設定されたフレーム数と等しくなると、タイミング信号Ｔｄの出力を停止する。このように構成すると、デバッグモードにおいて、画像処理装置３，３ａ〜３ｃは、シリアルデータＳｄ２の出力を自動的に停止する。このため、作業者がデバッグ装置９ａを操作してタイミング終了を設定する必要がなく、デバッグ処理を容易にする。また、レジスタ１６に設定するフレーム数は、図２に示すメモリ６ａに格納するデータの量に対応する。従って、メモリ６ａの容量に応じてフレーム数を設定することで、メモリ６ａがオーバーフローするのを防ぐことができる。
【０１４６】
・上記各実施形態では、画像データを含むシリアルデータＳｄ１を受信する画像処理装置３，３ａ〜３ｃをデバッグする場合について説明したが、画像データ以外のデータを含むシリアルデータを受信する装置に具体化してもよい。
【０１４７】
・上記各実施形態では、２種類の開始コード（フレーム開始コードＳＯＦ及びライン開始コードＳＯＬ）を用い、２種類の終了コード（ライン終了コードＥＯＬ及びフレーム開始コードＳＯＦ）を用いて有効データを送受信するシリアル通信に具体化したが、１種類の開始コードと１種類の終了コードを用いて有効データを送受信するシリアル通信、又は３種類以上の開始コードと３種類以上の終了コードを用いて有効データを送受信するシリアル通信に具体化してもよい。なお、開始コードの種類の数と終了コードの種類の数は互いに異なっていてもよい。
【０１４８】
・上記第３実施形態では、書込回路２６ｂが内部同期コードをシフトレジスタ２１に書き込むタイミングを１フレーム毎にずらすようにしたが、１ライン又は複数ライン毎にタイミングをずらすようにしてもよい。このようにすれば、作業者が確認する画像のフレーム数が少なくなり、短時間でビットの位置ずれを検出することが可能となる。
【０１４９】
・上記第１実施形態の書込回路２６を、第３実施形態の書込回路２６ｂと同様に、内部同期コードの書き込みタイミングをずらすように構成してもよい。
・上記各実施形態の画像処理装置３，３ａ〜３ｃはシリアルデータＳｄ２を出力するように構成されたが、パラレルデータを出力するように構成されてもよい。
【符号の説明】
【０１５０】
３，３ａ〜３ｃ  画像処理装置
４ａ  制御装置
１１  タイミング信号発生器
１２  シリアル・パラレル変換処理部（パラレル変換部）
１３  画像処理部
１５  パラレル・シリアル変換処理部（シリアル変換部）
１６  レジスタ
１７  データ選択回路
１８  信号選択回路
１９  タイミング信号生成回路（制御部）
２０  クロック生成回路
２１  シフトレジスタ
２２  比較回路（同期コード検出回路）
２３  コード記憶レジスタ（同期コード検出回路）
２４  変換回路
２５  同期信号生成回路
２６  同期コード書込回路（制御部）
２７  カウンタ回路（ブランクビットを検出する検出回路）
Ｓｄ１，Ｓｄ２  シリアルデータ
Ｐｄ１，Ｐｄ２  パラレルデータ
ＢＬＢ  ブランクビット
ＤＢＧ  デバック信号
ＳＯＦ  フレーム開始コード（同期コード、開始コード）
ＳＯＬ  ライン開始コード（同期コード、開始コード）
ＥＯＦ  フレーム終了コード（同期コード、終了コード）
ＥＯＬ  ライン終了コード（同期コード、終了コード）
Ｐ１１〜Ｐｎｍ  画素データ（有効データ）
Ｈｓ，ＨＤ１，ＨＤ２  水平同期信号
Ｖｓ，ＶＤ１，ＶＤ２  垂直同期信号
【図１】
0005581974.tif 000002
【図２】
0005581974.tif 000003
【図３】
0005581974.tif 000004
【図４】
0005581974.tif 000005
【図５】
0005581974.tif 000006
【図６】
0005581974.tif 000007
【図７】
0005581974.tif 000008
【図８】
0005581974.tif 000009
【図９】
0005581974.tif 000010
【図１０】
0005581974.tif 000011