JP2019036833A - 信号処理装置及び信号処理方法 - Google Patents

信号処理装置及び信号処理方法 Download PDF

Info

Publication number
JP2019036833A
JP2019036833A JP2017156649A JP2017156649A JP2019036833A JP 2019036833 A JP2019036833 A JP 2019036833A JP 2017156649 A JP2017156649 A JP 2017156649A JP 2017156649 A JP2017156649 A JP 2017156649A JP 2019036833 A JP2019036833 A JP 2019036833A
Authority
JP
Japan
Prior art keywords
signal
control code
lanes
code
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017156649A
Other languages
English (en)
Other versions
JP6985846B2 (ja
Inventor
直隆 村上
Naotaka Murakami
直隆 村上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017156649A priority Critical patent/JP6985846B2/ja
Publication of JP2019036833A publication Critical patent/JP2019036833A/ja
Application granted granted Critical
Publication of JP6985846B2 publication Critical patent/JP6985846B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Transforming Light Signals Into Electric Signals (AREA)

Abstract

【課題】良好に信号を伝送し得る信号処理装置及び信号処理方法を提供する。【解決手段】複数の第1レーンと、第1の駆動手段によって駆動され、複数の第1レーンの各々に制御コードを含む信号を供給する第1送信手段と、複数の第1レーンのうち、制御コードが検出された第1レーンの数に基づく第1検出信号を生成する第1処理手段と、を備える第1のリンクと、複数の第2レーンと、第2の駆動手段によって駆動され、複数の第2レーンの各々に制御コードを含む信号を供給する第2送信手段と、複数の第2レーンのうち、制御コードが検出された第2レーンの数に基づく第2検出信号を生成する第2処理手段と、を備える第2のリンクと、第1検出信号および第2検出信号に基づいて、複数の第1レーンで伝送される複数の信号と、複数の第2レーンで伝送される複数の信号とのタイミングを調整する調整手段と、を備えている。【選択図】図1

Description

本発明は、信号処理装置及び信号処理方法に関する。
近年のイメージセンサの高画質化、高フレームレート化に伴い、イメージセンサによって取得される画像データを高速に読み出す技術が求められている。例えば、複数の画像データを並行にシリアル伝送することによって、画像データを高速に読み出すことが提案されている。特許文献1には、並行にシリアル伝送された画像データに対して同期を調整する技術が開示されている。
特開2009−267969号公報
しかしながら、提案されている技術では、必ずしも良好に信号を伝送し得ない場合があった。
本発明の目的は、良好に信号を伝送し得る信号処理装置及び信号処理方法を提供することにある。
実施形態の一観点によれば、複数の第1レーンと、第1の駆動手段によって駆動され、前記複数の第1レーンの各々に制御コードを含む信号を供給する第1送信手段と、前記複数の第1レーンのうち、前記制御コードが検出された前記第1レーンの数に基づく第1検出信号を生成する第1処理手段と、を備える第1のリンクと、複数の第2レーンと、第2の駆動手段によって駆動され、前記複数の第2レーンの各々に制御コードを含む信号を供給する第2送信手段と、前記複数の第2レーンのうち、前記制御コードが検出された前記第2レーンの数に基づく第2検出信号を生成する第2処理手段と、を備える第2のリンクと、前記第1検出信号および前記第2検出信号に基づいて、前記複数の第1レーンで伝送される複数の信号と、前記複数の第2レーンで伝送される複数の信号とのタイミングを調整する調整手段と、を備える信号処理装置が提供される。
本発明によれば、良好に信号を伝送し得る信号処理装置及び信号処理方法を提供することができる。
第1実施形態による信号処理装置の一部を示すブロック図である。 送信データ処理回路を示すブロック図である。 リンク内スキュー調整回路を示すブロック図である。 リンク内スキュー調整回路の動作の例を示す図である。 データ処理回路を示すブロック図である。 レーン内制御コード検出部を示すブロック図である。 レーン内制御コード検出部の動作の例を示す図である。 リンク間スキュー調整回路を示すブロック図である。 リンク間スキュー調整回路の動作の例を示す図である。 第1実施形態による信号処理装置を示すブロック図である。 リンク内スキュー調整回路の動作の例を示す図である。 送信データ処理回路を示すブロック図である。 レーン内制御コード検出部を示すブロック図である。
以下、図面を参照して本発明の実施形態を説明する。ただし、本発明は以下の実施形態に限定されるものではない。
[第1実施形態]
第1実施形態による信号処理装置及び信号処理方法を図1乃至図11を用いて説明する。図10は、本実施形態による信号処理装置1001を示すブロック図である。ここでは、本実施形態による信号処理装置1001が撮像装置である場合を例に説明するが、これに限定されるものではない。
図10に示すように、本実施形態による信号処理装置1001は、撮像素子100と、画像処理部140と、システム制御部1003と、操作部1004と、表示部1005とを有する。信号処理装置1001には、撮像光学系(レンズユニット)1002が備えられる。また、信号処理装置1001には、記憶部1006が備えられる。撮像光学系1002及び記憶部1006は、信号処理装置1001の本体(ボディ)から着脱可能であってもよいし、着脱不能であってもよい。
システム制御部1003は、信号処理装置1001の各部を制御するとともに、信号処理装置1001全体の制御を司る。撮像素子100は、例えばCCDイメージセンサ又はCMOSイメージセンサである。撮像素子100の撮像面(図示せず)には、撮像光学系1002によって形成される被写体の光学像が結像される。撮像素子100の撮像面には、画素部(画像取得手段)105(図1参照)が備えられている。画素部105には、被写体の光学像を電気信号に変換するための不図示の複数の光電変換素子(フォトダイオード)が2次元的に配列されている。撮像素子100は、撮像光学系1002によって形成される被写体の光学像を光電変換することによってアナログの画素信号を生成し、アナログの画素信号に対してアナログ/デジタル変換を行うことによってデジタルの画素信号(画像データ)を生成する。撮像素子100によって取得される画像データは、例えば高速シリアル通信によって画像処理部140に送信される。
画像処理部140は、撮像素子100によって取得された画像データに対して所定の画像処理を行い、画像処理を施した画像データに対して圧縮処理等を行う。なお、撮像素子100と、画像処理部140とは、互いに異なるチップに集積されている。
操作部1004は、信号処理装置1001に対する操作をユーザが行うためのものである。例えば、撮影を行うための操作が、操作部1004を介してユーザによって行われる。また、撮影によって取得された画像の表示画角の変更の操作が、操作部1004を介してユーザによって行われる。表示部1005には、例えば、ライブビュー画像、又は、撮影によって取得された画像が表示される。また、表示部1005には、操作メニューが表示される。また、表示部1005には、信号処理装置1001の設定状態を示す情報等が表示される。信号処理装置1001によって取得された画像は、所定のファイル形式で記憶部1006に記憶される。
図1は、本実施形態による信号処理装置を示すブロック図である。図1には、信号処理装置1001に備えられた様々な構成要素のうちの撮像素子100と発振器101と画像処理部140とが抜き出して示されている。
撮像素子100は、タイミングジェネレータ(TG:Timing Generator)102〜104と、画素部105と、送信データ処理回路106、107と、パラレルシリアル変換器108〜113とを有する。撮像素子100は、PLL(Phase Locked Loop)114、115と、送信ドライバ116〜121とを更に有する。撮像素子100のこれらの構成要素は、第1チップに集積されている。
画像処理部140は、同期信号発生器(SSG:Sync Signal Generator)122と、受信ドライバ123〜128と、シリアルパラレル変換器129〜134と、リンク内スキュー調整回路135、136とを有する。画像処理部140は、データ処理回路137、138と、リンク間スキュー調整回路139と、クロック乗せ換え回路141とを更に有する。画像処理部140のこれらの構成要素は、第1チップとは異なる第2チップ(画像処理チップ)に集積されている。
本実施形態では、画素部105から出力される画素信号(画像信号)が、例えば2つの処理経路、即ち、リンクAの処理経路である第1の処理経路150と、リンクBの処理経路である第2の処理経路151とによって並行して処理される。第1の処理経路150には、送信データ処理回路106、パラレルシリアル変換器108〜110、PLL114、送信ドライバ116〜118、受信ドライバ123〜125、及び、シリアルパラレル変換器129〜131が備えられている。第1の処理経路150には、リンク内スキュー調整回路135、及び、データ処理回路137が更に備えられている。第2の処理経路151には、送信データ処理回路107、パラレルシリアル変換器111〜113、PLL115、送信ドライバ119〜121、受信ドライバ126〜128、及び、シリアルパラレル変換器132〜134が備えられている。第2の処理経路151には、リンク内スキュー調整回路136、及び、データ処理回路138が更に備えられている。クロック乗せ換え回路141は、第1の処理経路150と第2の処理経路151とにおいて共用される。
リンクAには、信号を伝送するレーンが例えば3つ備えられており、リンクBにも、信号を伝送するレーンが例えば3つ備えられている。パラレルシリアル変換器108、送信ドライバ116、受信ドライバ123及びシリアルパラレル変換器129は、リンクAの第1レーンLaneA1に備えられている。パラレルシリアル変換器109、送信ドライバ117、受信ドライバ124及びシリアルパラレル変換器130は、リンクAの第2レーンLaneA2に備えられている。パラレルシリアル変換器110、送信ドライバ118、受信ドライバ125及びシリアルパラレル変換器131は、リンクAの第3レーンLaneA3に備えられている。パラレルシリアル変換器111、送信ドライバ119、受信ドライバ126及びシリアルパラレル変換器132は、リンクBの第1レーンLaneB1に備えられている。パラレルシリアル変換器112、送信ドライバ120、受信ドライバ127及びシリアルパラレル変換器133は、リンクBの第2レーンLaneB2に備えられている。パラレルシリアル変換器113、送信ドライバ121、受信ドライバ128及びシリアルパラレル変換器134は、リンクBの第3レーンLaneB3に備えられている。
発振器101は、信号処理装置1001の動作の基準となるクロック信号(基準クロック)を、撮像素子100の各機能ブロック及び画像処理部140の各機能ブロックに供給する。図1に示すように、発振器101から出力されるクロック信号は、タイミングジェネレータ102〜104、送信データ処理回路106,107,PLL114,115,同期信号発生器122にそれぞれ入力される。なお、発振器101から出力されるクロック信号は、これらの機能ブロックのみならず、他の機能ブロックにも適宜供給される。撮像素子100の各機能ブロック及び画像処理部140の各機能ブロックは、発振器101から供給されるクロック信号に従って動作する。同期信号発生器122は、発振器101から供給されるクロック信号に同期するように、水平同期信号HD及び垂直同期信号VDを出力する。タイミングジェネレータ(駆動手段)102は、同期信号発生器122から供給される水平同期信号HD及び垂直同期信号VDに基づいて、撮像素子100の各機能ブロックを駆動するための駆動パルス信号(駆動信号)を生成する。
画素部105は、撮像素子100の撮像面に配されている。画素部105には、上述したように、被写体の光学像を電気信号に変換するための複数の光電変換素子が2次元的に配列されている。光電変換素子によって得られる画素信号は、タイミングジェネレータ102から供給される駆動パルス信号に従って、不図示の信号線に出力される。当該信号線に出力される画素信号は、不図示のアンプによって増幅される。アンプによって増幅されたアナログの画素信号は、不図示のA/D変換器によってデジタルの画素信号に変換される。こうして得られるデジタルの画素信号が画素部105から出力される。画素部105から出力される画素信号は、リンクAの処理経路である第1の処理経路150とリンクBの処理経路である第2の処理経路151とによって並行処理される。なお、ここでは、リンクが2つである場合を例に説明するが、処理経路の数は2つに限定されるものではない。また、ここでは、リンクAに3つのレーンが備えられており、リンクBにも3つのレーンが備えられている場合を例に説明するが、リンクA、Bにそれぞれ備えられるレーンの数は3つに限定されるものではない。
タイミングジェネレータ103は、タイミングジェネレータ102から供給される水平同期信号HD及び垂直同期信号VDに基づいてタイミング信号を生成し、生成したタイミング信号を第1の処理経路150に備えられた送信データ処理回路106に供給する。タイミングジェネレータ104は、タイミングジェネレータ102から供給される水平同期信号HD及び垂直同期信号VDに基づいてタイミング信号を生成し、生成したタイミング信号を第2の処理経路151に備えられた送信データ処理回路107に供給する。タイミングジェネレータ103は、第1の処理経路150の各部を駆動するために最適な位置に配されている。一方、タイミングジェネレータ104は、第2の処理経路151の各部を駆動するために最適な位置に配されている。このため、タイミングジェネレータ102とタイミングジェネレータ103との間の配線長と、タイミングジェネレータ102とタイミングジェネレータ104との間の配線長とは異なっている。配線長がこのように異なっているため、タイミングジェネレータ103から第1の処理経路150の各部に供給されるタイミング信号と、タイミングジェネレータ104から第2の処理経路151の各部に供給されるタイミング信号とは同期しない。このため、第1の処理経路150の各部と第2の処理経路151の各部とは、非同期で動作する。
送信データ処理回路(送信手段)106、107には、発振器101から出力されるクロック信号と、タイミングジェネレータ103、104からそれぞれ出力されるタイミング信号と、画素部105から出力される画素信号とがそれぞれ入力される。送信データ処理回路106、107は、発振器101からのクロック信号と、タイミングジェネレータ103、104からのタイミング信号とに基づいて、所定のプロトコルに従った処理を画素信号に対して行い、送信データを生成する。送信データ処理回路106、107は、生成した送信データをパラレルデータとして出力する。送信データ処理回路106、107は、画素部105によって取得される画素信号に基づくデータのみならず、トレーニングシーケンスのデータや制御コード等をも出力する。送信データ処理回路106、107は、伝送プロトコル上のリンク層に該当する。送信データ処理回路106、107は、それぞれ非同期で動作する。
パラレルシリアル変換器108〜110は、送信データ処理回路106の後段に位置している。パラレルシリアル変換器111〜113は、送信データ処理回路107の後段に位置している。パラレルシリアル変換器108〜113は、送信データ処理回路106、107からそれぞれ出力されるパラレルデータ(シリアル信号)をシリアルデータ(パラレル信号)に変換する。パラレルシリアル変換器108〜113によって得られたシリアルデータは、送信ドライバ116〜121を介して撮像素子100から出力される。
画像処理部140には、受信ドライバ123〜128が備えられている。送信ドライバ116〜121と受信ドライバ123〜128とは、配線によってそれぞれ電気的に接続されている。撮像素子100の送信ドライバ116〜121を介して出力されるシリアルデータは、受信ドライバ123〜128によってそれぞれ受信される。
PLL114、115は、パラレルシリアル変換器108〜113のシリアル伝送レートに応じたシリアルクロックをクロック信号からそれぞれ生成し、生成したシリアルクロックをパラレルシリアル変換器108〜110、111〜113にそれぞれ供給する。パラレルシリアル変換器108〜110において用いられるシリアルクロックと、パラレルシリアル変換器111〜113において用いられるシリアルクロックとは、周波数は同じであるが、異なるPLL114、115から供給されるものである。このため、パラレルシリアル変換器108〜110において用いられるシリアルクロックと、パラレルシリアル変換器111〜113において用いられるシリアルクロックとは、同期していない。
送信データ処理回路106から出力される複数のパラレルデータは、第1の処理経路150において処理される。送信データ処理回路107から出力される複数のパラレルデータは、第2の処理経路151において処理される。なお、ここでは、送信データ処理回路106、107が、それぞれ3つの出力セレクタ206〜208(図2参照)を介してデータを出力する場合を例に説明するが、これに限定されるものではない。
上述したように、第1の処理経路150と第2の処理経路151とは非同期で動作する。このため、リンクAに備えられた第1の処理経路150を伝搬するデータとリンクBに備えられた第2の処理経路151を伝搬するデータとの間にはスキューが生じ得る。このようなスキューは、リンク間スキューと称される。タイミングジェネレータ103とタイミングジェネレータ104とにタイミングジェネレータ102から分配される水平同期信号HDは、第1の処理経路150と第2の処理経路151とにおいて非同期で取り扱われる。このため、リンク間スキューの量は、水平転送期間(HD期間)毎に変動する。
送信データ処理回路106から出力されるデータは、例えば3つのレーンを伝搬する。パラレルシリアル変換器108〜110におけるリセット解除のタイミングの相違や、各々のレーンの配線長の相違に起因して、これらのレーンを伝搬するデータ間にはスキューが生じ得る。このようなスキューは、リンク内スキューと称される。また、送信データ処理回路107から出力されるデータも、例えば3つのレーンを伝搬する。パラレルシリアル変換器111〜113におけるリセット解除のタイミングの相違や、各々のレーンの配線長の相違に起因して、これらのレーンを伝搬するデータ間にもリンク内スキューが生じ得る。リンク内スキューの発生要因は動的に変化しないため、リンク内スキューの量は一定である。
図2は、送信データ処理回路106を示すブロック図である。なお、ここでは、送信データ処理回路106について説明するが、送信データ処理回路107の構成も、送信データ処理回路106の構成と同様である。送信データ処理回路106は、カウンタ201と、ステートマシン(FSM:Finite State Machine)202と、制御コード生成部203と、トレーニングシーケンス生成部204とをそれぞれ有する。送信データ処理回路106は、更に、IDLEコード生成部205と、出力セレクタ206〜208とをそれぞれ有する。
カウンタ201には、発振器101から供給されるクロック信号が入力される。カウンタ201は、クロック信号に基づいて処理サイクルのカウントを行い、カウントにより得られたカウント値をステートマシン202に供給する。ステートマシン202は、カウンタ201から供給されるカウント値と、タイミングジェネレータ103から供給されるタイミング信号とに基づいて制御信号を生成し、生成した制御信号を出力セレクタ206〜208に供給する。制御コード生成部203は、制御コードを生成し、生成した制御コードを出力セレクタ206〜208の各々に供給する。制御コード生成部203は、複数種の制御コードを生成する。制御コード生成部203によって生成される制御コードは、例えば、同期コード、無効コード及び終了コードである。同期コードは、水平同期信号HDに対応するように、データ列に挿入される。無効コードは、有効なデータが存在しない場合に、データ列に挿入される。終了コードは、1つの水平転送期間に対応するデータ列の末尾に付される。制御コードは、予め決定された語長の特定のパターンのデータ(シンボル)である。制御コードは、例えば4つのシンボルによって構成されるが、これに限定されるものではない。同期コードは、例えば、{第1の同期コード、第2の同期コード、第3の同期コード、第4の同期コード}={0x00、0x00、0xFF、0xFF}とすることができるが、これに限定されるものではない。このような特定のパターンのデータ(シンボル)を例えばパターンマッチングによって検出することによって、同期コードと、当該同期コードの位相とを検出することが可能である。トレーニングシーケンス生成部204は、トレーニングシーケンスのデータを生成し、生成したトレーニングシーケンスのデータを出力セレクタ206〜208の各々に供給する。トレーニングシーケンスのデータには、予め定められた特定の調整コードが含まれる。このような特定の調整コードは、リンク内スキューを解消する際に用いられる。IDLEコード生成部205は、IDLEコードを生成し、生成したIDLEコードを出力セレクタ206〜208の各々に供給する。IDLEコードは、送信すべき有効なデータが画素部105から出力されていない際に用いられる。画素部105から出力される画像データは、出力セレクタ206〜208の各々に供給される。
ステートマシン202から出力セレクタ206〜208に供給される制御信号は、所定のプロトコルに従って出力セレクタ206〜208からデータを出力するためのものである。ステートマシン202は、トレーニングシーケンス生成部204によって生成されるトレーニングシーケンスのデータが、出力セレクタ206〜208からそれぞれ出力されるデータ列の先頭に配されるように、出力セレクタ206〜208を制御する。ステートマシン202は、制御コード生成部203によって生成される制御コードが、出力セレクタ206〜208から出力されるデータ列の適切な位置に配されるように、出力セレクタ206〜208を制御する。ステートマシン202は、水平転送期間以外の期間においては、IDLEコード生成部205によって生成されたIDLEコードが出力セレクタ206〜208からそれぞれ出力されるように、出力セレクタ206〜208を制御する。なお、図2において、第1の出力データは、送信データ処理回路106からリンクAの第1レーンLaneA1に出力されるデータを意味している。また、図2において、第2の出力データは、送信データ処理回路106からリンクAの第2レーンLaneA2に出力されるデータを意味している。また、図2において、第3の出力データは、送信データ処理回路106からリンクAの第3レーンLaneA3に出力されるデータを意味している。
図1に示すように、受信ドライバ123〜128の後段には、シリアルパラレル変換器129〜134がそれぞれ備えられている。シリアルパラレル変換器129〜134には、受信ドライバ123〜128を介してシリアルデータが入力される。シリアルパラレル変換器129〜134は、入力されるシリアルデータを内部のシフトレジスタに蓄える。シリアルパラレル変換器129〜134は、シフトレジスタに蓄えたシリアルデータのうちから、予め決定された語長の特定のパターンのデータ(シンボル)を検出する。シリアルパラレル変換器129〜134は、特定のパターンのデータ(シンボル)が検出されたタイミングに従って、予め決定された語長毎にパラレルデータをクロック乗せ換え回路141に出力する。また、シリアルパラレル変換器129〜134は、シリアルパラレル変換器129〜134に入力されるシリアルデータから書き込みクロック信号をそれぞれ生成し、生成した各々の書き込みクロック信号をクロック乗せ換え回路141にそれぞれ供給する。また、シリアルパラレル変換器129〜134は、書き込みクロック信号をパラレルデータの語長に対応するように分周し、分周により得られた読み出しクロック信号をクロック乗せ換え回路141に出力する。なお、読み出しクロック信号を生成する手法は、これに限定されるものではない。例えば、不図示の発振器を設け、当該発振器から供給されるクロック信号をシリアルパラレル変換器129〜134から出力されるパラレルデータの語長に対応する周波数と同等になるように逓倍することによって、読み出しクロック信号を得るようにしてもよい。
クロック乗せ換え回路141は、FIFOの機能ブロックを備える。クロック乗せ換え回路141には、シリアルパラレル変換器129〜134から出力される信号、具体的には、パラレルデータ、書き込みクロック信号及び読み出しクロック信号が入力される。シリアルパラレル変換器129〜134からそれぞれ供給される書き込みクロック信号を用いて、クロック乗せ換え回路141に備えられたFIFOにパラレルデータが書き込まれる。シリアルパラレル変換器129〜134からそれぞれ供給される読み出しクロック信号のうちのいずれかを用いて、クロック乗せ換え回路141に備えられたFIFOからパラレルデータが読み出される。従って、シリアルパラレル変換器129〜134からそれぞれ出力されるパラレルデータは、共通の読み出しクロック信号に同期してクロック乗せ換え回路141から出力される。
シリアルパラレル変換器129〜131からそれぞれ出力され、クロック乗せ換え回路141によって共通の読み出しクロック信号に同期されたパラレルデータは、リンク内スキュー調整回路135に入力される。シリアルパラレル変換器132〜134からそれぞれ出力され、クロック乗せ換え回路141によって共通の読み出しクロック信号に同期されたパラレルデータは、リンク内スキュー調整回路136に入力される。リンク内スキュー調整回路135、136は、読み出しクロック信号に同期して動作する。リンク内スキュー調整回路135、136は、各々のパラレルデータのリンク内スキューを取り除き、リンク内スキューを取り除いたパラレルデータをデータ処理回路137、138にそれぞれ出力する。
リンク内スキュー調整回路135、136は、リンク内スキューを解消するためのものである。図3は、リンク内スキュー調整回路135を示すブロック図である。なお、ここでは、リンク内スキュー調整回路135について説明するが、リンク内スキュー調整回路136の構成も、リンク内スキュー調整回路135の構成と同様である。
リンク内スキュー調整回路135は、バッファ制御部301と、バッファ制御部311と、バッファ制御部321と、リードポインタ生成部330とを有する。バッファ制御部301には、カウンタ302と、調整コード検出部307と、出力セレクタ308と、バッファ群309とが備えられている。カウンタ302には、クロック信号が入力される。カウンタ302は、クロック信号に基づいて制御信号を生成し、生成した制御信号をスイッチ310に供給する。スイッチ310は、バッファ制御部301に入力されるパラレルデータの格納先となるバッファを切り換えるためのものである。バッファ群309には、例えば8つのバッファを含むバッファ群が備えられている。バッファ制御部301に入力されるパラレルデータの格納先は、カウンタ302から供給される制御信号に従って順次切り換えられる。このため、バッファ制御部301に入力されるパラレルデータは、バッファ群309に備えられた複数のバッファの各々に順次格納される。第1の期間においては、バッファ制御部301に入力されるパラレルデータは、第1のバッファ303aに格納される。第1の期間の次の第2の期間においては、バッファ制御部301に入力されるパラレルデータは、第2のバッファ303bに格納される。第2の期間の次の第3の期間においては、バッファ制御部301に入力されるパラレルデータは、第3のバッファ303cに格納される。同様にして、バッファ制御部301に入力されるパラレルデータは、不図示の第4のバッファ、不図示の第5のバッファ、不図示の第6のバッファ、不図示の第7のバッファ及び第8のバッファ303hに順次格納される。第8のバッファ303hへの格納が完了した後には、バッファ制御部301に入力されるパラレルデータの格納先は第1のバッファ303aに戻り、上記のような動作が繰り返される。出力セレクタ308は、バッファ群309に備えられた複数のバッファのうちのいずれかからの信号を選択的に出力する。調整コード検出部307は、予め決定された特定の調整コードをパラレルデータのうちから検出する。なお、図3において、第1のパラレルデータは、リンクAの第1レーンLaneA1を伝搬してリンク内スキュー調整回路135に入力されるパラレルデータを示している。また、図3において、第2のパラレルデータは、リンクAの第2レーンLaneA2を伝搬してリンク内スキュー調整回路135に入力されるパラレルデータを示している。また、図3において、第3のパラレルデータは、リンクAの第3レーンLaneA3を伝搬してリンク内スキュー調整回路135に入力されるパラレルデータを示している。
調整コード検出部307は、調整コードを検出した場合には、調整コードを検出したことを示す調整コード検出信号をリードポインタ生成部330に供給する。なお、バッファ制御部311、321の構成とバッファ制御部301の構成とは同様であるため、ここでは、バッファ制御部311、321の構成の説明を省略する。図3において、第1の調整コード検出信号は、バッファ制御部301からリードポインタ生成部330に供給される調整コード検出信号を意味している。また、図3において、第2の調整コード検出信号は、バッファ制御部311からリードポインタ生成部330に供給される調整コード検出信号を意味している。また、図3において、第3の調整コード検出信号は、バッファ制御部321からリードポインタ生成部330に供給される調整コード検出信号を意味している。
リードポインタ生成部330は、以下のような処理を行う。即ち、各々のバッファ制御部301、311、321から調整コード検出信号が供給されたタイミングと、全てのバッファ制御部301、311、321から調整コード検出信号が供給されるに至ったタイミングとに基づいて、以下のような処理を行う。リードポインタ生成部330は、これらに基づいて、各々のバッファ制御部301、311、321間の位相差を算出する。リードポインタ生成部330は、こうして算出された位相差に基づいて、各々のバッファ制御部301、311、321に対してバッファのリードポインタを通知する。図3において、第1のリードポインタは、リードポインタ生成部330からバッファ制御部301に供給されるリードポインタを意味している。第2のリードポインタは、リードポインタ生成部330からバッファ制御部311に供給されるリードポインタを意味している。第3のリードポインタは、リードポインタ生成部330からバッファ制御部321に供給されるリードポインタを意味している。また、図3において、第1の出力データは、リンク内スキュー調整回路135からリンクAの第1レーンLaneA1に出力されるデータを意味している。第2の出力データは、リンク内スキュー調整回路135からリンクAの第2レーンLaneA2に出力されるデータを意味している。第3の出力データは、リンク内スキュー調整回路135からリンクAの第3レーンLaneA3に出力されるデータを意味している。
図11は、リンク内スキュー調整回路135の動作の例を示す図である。なお、ここでは、リンク内スキュー調整回路135の動作を説明するが、リンク内スキュー調整回路136の動作もリンク内スキュー調整回路135の動作と同様である。リードポインタ生成部330は、バッファ制御部301、311、321から調整コード検出信号が供給されるのを待つ。リードポインタ生成部330は、バッファ制御部301、311、321のうちのいずれかから調整コード検出信号が出力されると、内部リードポインタのインクリメントを開始する。ここでは、バッファ制御部301からの第1の調整コード検出信号の供給に基づいて、内部リードポインタのインクリメントを開始する場合を例として示している。リードポインタ生成部330は、内部リードポインタと、調整コード検出信号が通知されるタイミングとに基づいて、各々のバッファ制御部301、311、321間のオフセット値を判定する。図11に示す例においては、第2の調整コード検出信号がHighレベルになったタイミングにおいて、内部リードポインタが1となっているため、リードポインタ生成部330は、バッファ制御部311のオフセットを1と判定する。また、図11に示す例においては、第3の調整コード検出信号がHighレベルになったタイミングにおいて、内部リードポインタが2となっているため、バッファ制御部321のオフセットを2と判定する。
バッファ制御部301、311、321の全てから調整コード検出信号が供給されるに至ると、リードポインタ生成部330は、各々のバッファ制御部301、311、321に対して、以下のような処理を行う。即ち、リードポインタ生成部330は、リンク内スキューを取り除くためのオフセット値を内部リードポインタに加えることにより得られるリードポインタを、バッファ制御部301、311、321に通知する。各々のバッファ制御部301、311、321は、こうして得られたリードポインタに従って、バッファ群309からデータを読み出す。このため、リンク内スキュー調整回路135は、リンク内スキューが取り除かれたデータを各々のレーンに出力することができる。
図4は、リンク内スキュー調整回路135、136の動作の例を示す図である。図4(a)は、リンク内スキュー調整回路135、136に入力されるデータの例を示している。図4(b)は、リンク内スキュー調整回路135、136から出力されるデータの例を示している。図4における横軸は時間である。入力データ401、402、403は、リンクAの第1レーンLaneA1〜第3レーンLaneA3をそれぞれ経てリンク内スキュー調整回路135に入力されるデータの例を示している。入力データ404、405、406は、リンクBの第1レーンLaneB1〜第3レーンLaneB3をそれぞれ経てリンク内スキュー調整回路136に入力されるデータの例を示している。各々の入力データは、例えば、トレーニングシーケンスのデータと、各々の水平ラインの先頭に対応するように設けられる同期コードと、画像データと、水平転送期間中に有効な画像データが存在しない場合に用いられる無効コードとを含む。各々の入力データは、例えば、1つの水平転送期間に対応するデータ列の終了を示す終了コードと、水平転送期間以外の期間において用いられるIDLEコードとを更に含む。
トレーニングシーケンスのデータ中には、予め定められた特定の調整コードが含まれている。リンク内スキュー調整回路135、136は、トレーニングシーケンスのデータに含まれている調整コードを調整コード検出部307によって検出するとともに、上記のような処理を行うことにより、リンク内スキューを解消する。
出力データ407、408、409は、リンクAの処理経路である第1の処理経路150の第1から第3のレーンにリンク内スキュー調整回路135からそれぞれ出力されるデータの例を示している。出力データ410、411、412は、リンクBの処理経路である第2の処理経路151の第1から第3のレーンにリンク内スキュー調整回路135からそれぞれ出力されるデータの例を示している。図4に示すように、リンク内スキューは解消されているが、リンク間スキューは解消されていない。
なお、リンク内スキュー調整回路135を、リンクAとリンクBの全てのレーンに対して適用し、全てのレーンにおいてスキューを解消することも考えられる。しかし、上述したように、リンク間スキューの量は、水平転送期間毎に変化し、一定ではない。このため、この段階では、リンク内スキューを解消することに留めておくことが好ましい。
データ処理回路137、138は、入力データに含まれる制御コードを検出し、検出した制御コードが所定の条件を満たす場合に、制御コードを検出したことを示す制御コード検出信号を出力するものである。換言すると、データ処理回路137、138は、入力データに含まれる制御コードを検出し、検出した制御コードを所定の条件に基づいて確定し、確定した制御コードに応じた制御コード検出信号を出力するものであるともいえる。図5は、データ処理回路137を示すブロック図である。データ処理回路137は、レーン内制御コード検出部501、502、503と、加算器504、506と、比較器505と、遅延素子508〜531と、セレクタ507、532、534と、デコーダ533とを有する。
遅延素子508〜531は、例えばフリップフロップによって構成されている。遅延素子508〜531のクロック入力端子には、クロック信号がそれぞれ入力される。遅延素子508〜531は、クロック信号に同期して動作する。遅延素子508〜531は、入力されたデータをそれぞれ出力方向(図5における右方向)にシフトする。
リンクAの処理経路である第1の処理経路150の各々のレーンを伝搬する入力データは、レーン内制御コード検出部501〜503にそれぞれ入力される。図5において、第1の入力データは、リンクAの第1レーンLaneA1を伝搬してデータ処理回路137に入力されるデータを意味している。また、図5において、第2の入力データは、リンクAの第2レーンLaneA2を伝搬してデータ処理回路137に入力されるデータを意味している。また、図5において、第3の入力データは、リンクAの第3レーンLaneA3を伝搬してデータ処理回路137に入力されるデータを意味している。レーン内制御コード検出部501〜503は、入力データのうちに含まれる制御コードをそれぞれ検出する。レーン内制御コード検出部501〜503は、制御コードを検出すると、制御コードを検出したことを示すレーン内制御コード検出信号を加算器504にそれぞれ出力する。加算器504は、レーン内制御コード検出部501〜503から供給されるレーン内制御コード検出信号を加算する。加算器504によって得られる加算値は、直列に接続された遅延素子520〜523によって遅延され、加算器506とセレクタ507とに供給される。また、加算器504によって得られる加算値は、第1の制御コード検出信号としてデータ処理回路137から出力され、データ処理回路138に供給される。
遅延素子508〜511は、直列に接続されている。遅延素子512〜515は、直列に接続されている。遅延素子516〜519は、直列に接続されている。遅延素子508〜511は、レーン内制御コード検出部501を通過した第1の入力データを遅延させる。遅延素子512〜515は、レーン内制御コード検出部502を通過した第2の入力データを遅延させる。遅延素子516〜519は、レーン内制御コード検出部503を通過した第3の入力データを遅延させる。図5において、第1の出力データは、遅延素子508〜511によって遅延されたデータを意味している。また、図5において、第2の出力データは、遅延素子512〜515によって遅延されたデータを意味している。また、図5において、第3の出力データは、遅延素子516〜519によって遅延されたデータを意味している。データ処理回路137からは、第1の出力データと第2の出力データと第3の出力データとを含む第1のパラレルデータがリンク間スキュー調整回路139に出力される。
データ処理回路138の構成は、図5に示すデータ処理回路137の構成と同様である。但し、データ処理回路138からは、第1の制御コード検出信号の代わりに、第2の制御コード検出信号が出力される。また、データ処理回路138からは、第1のリンク内制御コード検出信号の代わりに、第2のリンク内制御コード検出信号が出力される。データ処理回路138から出力される第2の制御コード検出信号は、データ処理回路137に供給される。直列接続された遅延素子524〜531は、データ処理回路138から供給される第2の制御コード検出信号を遅延させる。
遅延素子524〜531の各々から出力される信号が、セレクタ532に入力される。セレクタ532は、遅延素子524〜531からそれぞれ供給される信号のうちから1つの信号を選択し、選択した信号を加算器506に供給する。セレクタ532は、リンク間スキュー調整回路139から供給される遅延サイクル数信号に基づいて、遅延素子524〜531からそれぞれ供給される複数の信号のうちのいずれかを選択する。
データ処理回路138から供給される第2の制御コード検出信号を用いることなく、レーン内制御コード検出部501〜503を用いて制御コードを検出するモードを、第1の検出モードと称することとする。一方、レーン内制御コード検出部501〜503を用いるのみならず、データ処理回路138から供給される第2の制御コード検出信号をも用いて制御コードを検出するモードを、第2の検出モードと称することとする。
加算器506は、遅延素子523からの信号と、セレクタ532からの信号とを加算し、加算により得た信号をセレクタ507に供給する。セレクタ507は、遅延素子523からの信号と、加算器506からの信号とのうちの一方を選択し、選択した信号を出力する。第1の検出モードにおいては前者が選択され、第2の検出モードにおいては後者が選択される。
セレクタ534は、比較器505において用いられる閾値を、予め決定された2種類の閾値のうちから選択し、選択した閾値を比較器505に出力する。第1の検出モードにおいては、セレクタ534は第1の閾値を選択する。第2の検出モードにおいては、セレクタ534は、第2の閾値を選択する。
デコーダ533は、リンク間スキュー調整回路139から供給されるリンク間同期確立信号をデコードすることによりモード切り換え信号を生成し、生成したモード切り換え信号をセレクタ507、534にそれぞれ供給する。セレクタ507、534は、デコーダ533から供給されるモード切り換え信号に基づいて切り換え動作を行う。
セレクタ507によって選択された信号と、セレクタ534によって選択された信号とが、比較器505に入力される。比較器505は、セレクタ507からの信号と、セレクタ534からの信号とを比較し、セレクタ507からの信号がセレクタ534から供給される閾値以上となった場合に第1のリンク内制御コード検出信号を出力する。
第1の検出モードにおける動作の例について以下に説明する。例えば、レーン内制御コード検出部501、502からはレーン内制御コード検出信号が出力され、レーン内制御コード検出部503からはビットエラー等の要因によりレーン内制御コード検出信号が出力されない場合には、以下のようになる。レーン内制御コード検出部501、502からレーン内制御コード検出信号がそれぞれ供給され、レーン内制御コード検出部503からレーン内制御コード検出信号が供給されないため、加算器504によって得られる値は2となる。セレクタ507は、遅延素子523からの信号を出力するため、比較器505の一方の入力端子には、2という値が入力される。第1の検出モードにおいては、セレクタ534は第1の閾値を選択する。第1の閾値が例えば2である場合、比較器505の他方の入力端子には、2という値が入力される。セレクタ507から供給される値が、セレクタ534から供給される値以上であるため、比較器505は、第1のリンク内制御コード検出信号を出力する。
第2の検出モードにおける動作の例について以下に説明する。例えば、データ処理回路137においては、レーン内制御コード検出部501からレーン内制御コード検出信号が出力され、レーン内制御コード検出部502、503からはビットエラー等の要因によりレーン内制御コード検出信号が出力されないものとする。一方、データ処理回路138においては、全てのレーン内制御コード検出部501〜503からレーン内制御コード検出信号が出力されるものとする。この場合、データ処理回路137においては、加算器504から出力される値は1となり、データ処理回路138においては、加算器504から出力される値は3となる。データ処理回路138に備えられた加算器504から出力される値が3であるため、データ処理回路138からデータ処理回路137に供給される第2の制御コード検出信号の値は3となる。遅延素子523から出力される値が1であり、セレクタ532から出力される値が3であるため、加算器506から出力される値は4となる。第2の検出モードにおいては、セレクタ507は、加算器506からの信号を選択するため、比較器505の一方の入力端子には4という値が入力される。第2の検出モードにおいては、セレクタ534は第2の閾値を選択する。第2の閾値が例えば4である場合、比較器505の他方の入力端子には4という値が入力される。セレクタ507から供給される値が、セレクタ534から供給される値以上であるため、比較器505は、第1のリンク内制御コード検出信号を出力する。
なお、データ処理回路138から供給される第2の制御コード検出信号は、遅延素子524〜531によって遅延される。そして、リンク間スキュー調整回路139から供給される遅延サイクル数信号に応じた位相の第2の制御コード検出信号がセレクタ532によって選択される。このため、遅延素子523から加算器506に供給される信号の位相と、セレクタ532から加算器506に供給される信号の位相とが合致し、加算器506からは適切な加算値が出力される。
このように、本実施形態によれば、複数のレーンの制御コード検出結果を総合的に評価することが可能である。このため、特定のレーンでビットエラーが生じ、当該レーンにおいて制御コードを検出できない場合であっても、良好に動作することが可能である。即ち、本実施形態によれば、十分なエラー耐性を確保することが可能となる。
デコーダ533から供給されるモード切り換え信号によって、第1の検出モードと第2の検出モードとが切り換えられる。デコーダ533は、例えば以下のように動作する。デコーダ533は、例えば、リンク間スキュー調整回路139から供給されるリンク間同期確立信号を受信した直後のサイクルにおいて、第1の検出モードから第2の検出モードに遷移するようなモード切り換え信号をセレクタ507、534に供給する。このようなモード切り換え信号を出力した後、デコーダ533は、デコーダ533内に備えられたカウンタによって所定のサイクルをカウントする。所定のサイクルをカウントした後、デコーダ533は、第2の検出モードから第1の検出モードに遷移するようなモード切り換え信号をセレクタ507、534に供給する。従って、第1の検出モードから第2の検出モードへの遷移が行われてから所定の時間が経過した後に、第2の検出モードから第1の検出モードへの遷移が行われることとなる。例えば、第1の検出モードから第2の検出モードへの遷移が行われた後に供給される水平同期信号HDに応じたタイミングで、第2の検出モードから第1の検出モードへの遷移が行われる。所定のサイクルを、水平転送期間に応じたサイクル数とすれば、同期コードについては第1の検出モードで検出することができ、無効コード及び終了コードについては第2の検出モードで検出することができる。これにより、データ処理回路137が無効コード又は終了コードを閾値以下しか検出できない場合であっても、データ処理回路138が検出した無効コード又は終了コードの数と合わせて評価することにより、無効コードもしくは終了コードを検出し得る。したがって、レーンごとに同期コードを検出する場合よりも、エラー耐性を高めることできる。例えば、レーン内制御コード検出信号を出力しないレーン内制御コード検出部が、同期コードが検出された後に増加した場合であっても、無効コードや終了コードを検出することが可能となる。これにより、エラー耐性の向上を図ることができる。
なお、ここでは、リンク間スキュー調整回路139から供給されるリンク間同期確立信号に基づいてデコーダ533がモード切り換え信号を生成する場合を例に説明したが、これに限定されるものではない。例えば、データ処理回路137において同期コードが検出された際に、当該同期コードが検出されたことを示す信号をデコーダ533に供給するようにしてもよい。そして、デコーダ533が、当該信号に基づいて、モード切り換え信号を生成するようにしてもよい。
データ処理回路137は、制御コードの検出を確定する処理手段として機能し得る。データ処理回路137は、第1の検出モードにおいては、リンクAに備えられた複数のレーンのうちの制御コードが検出されたレーンの数に基づいて制御コードの検出を確定する。データ処理回路137は、第1の検出モードにおいては、リンクBに備えられた複数のレーンのうちの制御コードが検出されたレーンの数に基づくことなく、制御コードの検出を確定する。データ処理回路137は、第2のモードにおいては、リンクAに備えられた複数のレーンのうちの制御コードが検出されたレーンの数と、リンクBに備えられた複数のレーンのうちの制御コードが検出されたレーンの数とに基づいて、制御コードの検出を確定する。
図6は、レーン内制御コード検出部501を示すブロック図である。なお、ここでは、レーン内制御コード検出部501を例として説明するが、レーン内制御コード検出部502の構成も、レーン内制御コード検出部503の構成も、レーン内制御コード検出部501の構成と同様である。また、ここでは、各々の制御コードが4つのシンボルによって構成されている場合を例に説明する。また、制御コードとしては、同期コードと、無効コードと、終了コードとが検出され得る場合を例に説明する。
図6に示すように、レーン内制御コード検出部501は、遅延素子601〜604と、比較器605〜608、611〜614、617〜620と、加算器609、615、621と、比較器610、616、622とを有する。
遅延素子601〜604は、直列に接続されており、入力データを遅延させる。遅延素子601〜604のクロック入力端子には、クロック信号が入力される。遅延素子601の出力は、比較器605、611、617にそれぞれ入力される。遅延素子602の出力は、比較器606、612、618にそれぞれ入力される。遅延素子603の出力は、比較器607、613、619にそれぞれ入力される。遅延素子604の出力は、比較器608、614、620にそれぞれ入力される。比較器608は、遅延素子604の出力と期待値X1とが一致した場合には1を出力し、遅延素子604の出力と期待値X1とが一致しない場合には0を出力する。比較器607は、遅延素子603の出力と期待値X2とが一致した場合には1を出力し、遅延素子603の出力と期待値X2とが一致しない場合には0を出力する。比較器606は、遅延素子602の出力と期待値X3とが一致した場合には1を出力し、遅延素子602の出力と期待値X3とが一致しない場合には0を出力する。比較器605は、遅延素子601の出力と期待値X4とが一致した場合には1を出力し、遅延素子601の出力と期待値X4とが一致しない場合には0を出力する。比較器614は、遅延素子604の出力と期待値Y1とが一致した場合には1を出力し、遅延素子604の出力と期待値Y1とが一致しない場合には0を出力する。比較器613は、遅延素子603の出力と期待値Y2とが一致した場合には1を出力し、遅延素子603の出力と期待値Y2とが一致しない場合には0を出力する。比較器612は、遅延素子602の出力と期待値Y3とが一致した場合には1を出力し、遅延素子602の出力と期待値Y3とが一致しない場合には0を出力する。比較器611は、遅延素子601の出力と期待値Y4とが一致した場合には1を出力し、遅延素子601の出力と期待値Y4とが一致しない場合には0を出力する。比較器620は、遅延素子604の出力と期待値Z1とが一致した場合には1を出力し、遅延素子604の出力と期待値Z1とが一致しない場合には0を出力する。比較器619は、遅延素子603の出力と期待値Z2とが一致した場合には1を出力し、遅延素子603の出力と期待値Z2とが一致しない場合には0を出力する。比較器618は、遅延素子602の出力と期待値Z3とが一致した場合には1を出力し、遅延素子602の出力と期待値Z3とが一致しない場合には0を出力する。比較器617は、遅延素子601の出力と期待値Z4とが一致した場合には1を出力し、遅延素子601の出力と期待値Z4とが一致しない場合には0を出力する。期待値X1〜X4は、例えば、同期コードの4つのシンボルの値にそれぞれ対応している。期待値Y1〜Y4は、例えば、無効コードの4つのシンボルの値にそれぞれ対応している。期待値Z1〜Z4は、例えば、終了コードの4つのシンボルの値にそれぞれ対応している。比較器605〜608からそれぞれ出力される信号は、加算器609に供給される。比較器611〜614からそれぞれ出力される信号は、加算器615に供給される。比較器617〜620からそれぞれ出力される信号は、加算器621に供給される。加算器609、615、621によって得られた加算値は、比較器610、616、622にそれぞれ供給される。比較器610、616、622は、加算器609、615、621からそれぞれ供給される値と、予め設定された閾値とをそれぞれ比較する。比較器610は、加算器609によって得られた加算値が閾値以上である場合に、同期コード検出信号を出力する。比較器616は、加算器615によって得られた加算値が閾値以上である場合に、無効コード検出信号を出力する。比較器622は、加算器621によって得られた加算値が閾値以上である場合に、終了コード検出信号を出力する。これらの検出信号は束ねられ、レーン内制御コード検出信号として出力される。また、遅延素子601〜604によって遅延されたデータは、出力データとしてレーン内制御コード検出部501からそれぞれ出力される。
なお、第1のリンク内制御コード検出信号、第2のリンク内制御コード検出信号、第1の制御コード検出信号及び第2の制御コード検出信号のフォーマットは、特に限定されるものではない。例えば、第1のリンク内制御コード検出信号、第2のリンク内制御コード検出信号、第1の制御コード検出信号及び第2の制御コード検出信号が、複数ビットの信号の別々のフィールドにそれぞれ割り当てられていてもよい。
図7は、レーン内制御コード検出部501の動作の例を示す図である。なお、ここでは、レーン内制御コード検出部501を例として説明するが、レーン内制御コード検出部502も、レーン内制御コード検出部503も、レーン内制御コード検出部501と同様に動作し得る。図7には、レーン内制御コード検出部501に入力されるデータの例と、制御コードの期待値の例とが示されている。期待値の第1番目のシンボルは例えばオール0、即ち、0x00である。一方、入力データの第1番目のシンボルも例えばオール0である。従って、第1番目のシンボルについては、期待値と入力データとは一致している。期待値の第2番目のシンボルは例えばオール0である。一方、入力データの第2番目のシンボルもオール0である。従って、第2番目のシンボルについても、期待値と入力データとは一致している。期待値の第3番目のシンボルは例えばオール1、即ち、0xFFである。一方、入力データの第3番目のシンボルは、例えばビットエラー等によってデータが破損しており、0xFDとなっている。従って、この場合、第3番目のシンボルについては、期待値と入力データとが一致していない。期待値の第4番目のシンボルは例えばオール1である。一方、入力データの第4番目のシンボルも、オール1である。従って、第4番目のシンボルについては、期待値と入力データとが一致している。このように、図7に示す例においては、期待値と入力データとの間で、3つのシンボルが一致している。閾値が3である場合、期待値のシンボルと入力データのシンボルの一致数は閾値以上であるため、レーン内制御コード検出部501から制御コード検出信号が出力される。このように、レーン内制御コード検出部501は、制御コードを構成する複数のシンボルのうちの正常に検出されたシンボルの数に基づいて制御コードを検出する。このようにして制御コードを検出するため、本実施形態によれば、エラー耐性の向上を図ることができる。
リンク間スキュー調整回路139は、リンク間スキューを解消するためのものである。図8は、リンク間スキュー調整回路139を示すブロック図である。図8に示すように、リンク間スキュー調整回路139は、遅延素子801〜824と、デコーダ825と、ロード付きDタイプフリップフロップ826と、セレクタ827とを有する。遅延素子801〜824は、例えばフリップフロップによって構成されている。遅延素子801〜824のクロック入力端子には、クロック信号がそれぞれ入力される。遅延素子801〜824は、クロック信号に同期して動作する。遅延素子801〜824は、入力されたデータをそれぞれ出力方向(図8における右方向)にシフトする。
直列接続された遅延素子801〜804は、データ処理回路137から供給される第1のパラレル信号を遅延する。直列接続された遅延素子805〜808は、データ処理回路137から供給される第1のリンク内制御コード検出信号を遅延する。直列接続された遅延素子809〜816は、データ処理回路138から供給される第2のパラレル信号を遅延する。遅延素子809〜816の各々から出力される信号が、セレクタ827に入力される。直列接続された遅延素子817〜824は、データ処理回路138から供給される第2のリンク内制御コード検出信号を遅延する。遅延素子817〜824の各々から出力される信号dlyF1〜dlyF8が、デコーダ825に入力される。
デコーダ825は、第2のリンク内制御コード検出信号が有効、即ち、「1」となっている信号を、遅延素子817〜824の各々から出力される信号dlyF1〜dlyF8のうちから検出する。デコーダ825は、第2のリンク内制御コード検出信号が有効となったタイミングと同じタイミングの第2のパラレル信号が保持されている遅延素子809〜816の出力がセレクタ827によって選択されるようなデコードデータ(デコード信号)を出力する。ロード付きDタイプフリップフロップ826は、遅延素子808の出力がハイレベルになった際に、デコーダ825の出力をラッチする。セレクタ827は、ロード付きDタイプフリップフロップ826から供給されるデコードデータに応じて、遅延素子809〜816のいずれかからの出力を選択する。遅延素子804から出力される第1のデータと、セレクタ827によって選択された第2のデータとが連結されて、出力データとなる。遅延素子808の出力は、リンク間制御コード検出信号としてリンク間スキュー調整回路139から出力される。
遅延素子808から出力されるリンク間制御コード検出信号は、リンク間同期確立信号として、データ処理回路137、138に供給される。また、デコーダ825の出力は、遅延サイクル数信号としてデータ処理回路137、138に供給される。
図9は、リンク間スキュー調整回路139の動作の例を示す図である。ここでは、データ処理回路137から供給される第1のパラレル信号と、データ処理回路138から供給される第2のパラレル信号との間に、クロック信号の1サイクル分に相当するスキューが生じている場合を例に説明する。
上述したように、デコーダ825は、第2のリンク内制御コード検出信号が有効となったタイミングと同じタイミングの第2のパラレル信号が保持されている遅延素子809〜816の出力がセレクタ827によって選択されるようなデコードデータを出力する。
上述したように、デコーダ825の出力は、遅延素子808の出力がハイレベルになった際にラッチされる。このため、クロック信号の例えば4サイクル分に相当する時間だけ遅延させた第1のパラレル信号と、クロック信号の例えば3サイクル分に相当する時間だけ遅延させた第2のパラレル信号とが、揃った状態で出力データとして出力される。
このように、本実施形態によれば、リンクに備えられた複数のレーンのうちの制御コードが検出されたレーンの数に基づいて、制御コードの検出を確定する。このため、本実施形態によれば、制御コードを検出できないレーンがビットエラー等によって生じた場合であっても、制御コードを検出することができる。従って、本実施形態によれば、エラー耐性の高い信号処理装置及び信号処理方法を提供することができる。
また、本実施形態によれば、第1の検出モードにおいては、リンクAに備えられた複数のレーンのうちの制御コードが検出されたレーンの数に基づいて、制御コードの検出を確定する。第1の検出モードにおいては、リンクBに備えられた複数のレーンのうちの制御コードが検出されたレーンの数に基づくことなく、制御コードの検出を確定する。一方、第2の検出モードにおいては、リンクAに備えられた複数のレーンのうちの制御コードが検出されたレーンの数と、リンクBに備えられた複数のレーンのうちの制御コードが検出されたレーンの数とに基づいて、制御コードの検出を確定する。このため、制御コードを検出し得ないレーンが、例えば同期コードが検出された後に増加した場合であっても、例えば無効コード及び終了コードを検出することが可能となる。これにより、本実施形態によれば、エラー耐性の向上を図ることができる。
また、本実施形態によれば、リンク間スキューのみならずレーン間スキューをも解消し得るため、良好に伝送を行うことができる。
[第2実施形態]
第2実施形態による信号処理装置及び信号処理方法を図11及び図12を用いて説明する。図1乃至図10に示す第1実施形態による信号処理装置及び信号処理方法と同一の構成要素には、同一の符号を付して説明を省略又は簡潔にする。
本実施形態による信号処理装置は、同期コードのシンボル数が、無効コード及び終了コードのシンボル数と異なるものである。
図12は、本実施形態による信号処理装置に備えられた送信データ処理回路106を示すブロック図である。なお、ここでは、送信データ処理回路106について説明するが、送信データ処理回路107の構成も、送信データ処理回路106の構成と同様である。
本実施形態による送信データ処理回路106は、制御コード生成部209が更に設けられている点が、第1実施形態による送信データ処理回路106と相違している。制御コード生成部203は、例えば同期コードを生成し、生成した同期コードを出力セレクタ206〜208の各々に供給する。制御コードは、例えば4つのシンボルによって構成される。制御コード生成部209は、例えば無効コード及び終了コードを生成し、生成した無効コード及び終了コードを出力セレクタ206〜208の各々に供給する。無効コード及び終了コードは、例えば3つのシンボルによって構成される。
図13は、本実施形態による信号処理装置に備えられたレーン内制御コード検出部501を示すブロック図である。なお、ここでは、レーン内制御コード検出部501について説明するが、レーン内制御コード検出部502の構成も、レーン内制御コード検出部503の構成も、レーン内制御コード検出部501の構成と同様である。
本実施形態におけるレーン内制御コード検出部501は、比較器611、617が設けられていない点が、第1実施形態におけるレーン内制御コード検出部501と相違している。遅延素子601の出力は、比較器605のみに入力される。遅延素子602の出力は、比較器606、612、618にそれぞれ入力される。遅延素子603の出力は、比較器607、613、619にそれぞれ入力される。遅延素子604の出力は、比較器608、614、620にそれぞれ入力される。期待値X1〜X4は、例えば、同期コードの4つのシンボルの値にそれぞれ対応している。期待値Y1〜Y3は、例えば、無効コードの3つのシンボルの値にそれぞれ対応している。期待値Z1〜Z3は、終了コードの3つのシンボルの値にそれぞれ対応している。比較器605〜608からそれぞれ出力される信号は、加算器609に供給される。比較器612〜614からそれぞれ出力される信号は、加算器615に供給される。比較器618〜620からそれぞれ出力される信号は、加算器621に供給される。
加算器609、615、621によって得られた加算値は、比較器610、616、622にそれぞれ供給される。比較器610、616、622は、加算器609、615、621からそれぞれ供給される値と、予め設定された閾値とをそれぞれ比較する。比較器610は、加算器609によって得られた加算値が閾値以上である場合に、同期コード検出信号を出力する。比較器616は、加算器615によって得られた加算値が閾値以上である場合に、無効コード検出信号を出力する。比較器622は、加算器621によって得られた加算値が閾値以上である場合に、終了コード検出信号を出力する。これらの検出信号は束ねられ、レーン内制御コード検出信号として出力される。また、遅延素子601〜604によって遅延されたデータは、出力データとしてレーン内制御コード検出部501からそれぞれ出力される。
本実施形態では、無効コード及び終了コードのシンボル数が同期コードのシンボル数よりも少ないが、無効コード及び終了コードは第2の検出モードで検出される。第2の検出モードにおいては、リンクAに備えられた複数のレーンにおいて検出される制御コードのみならず、リンクBに備えられた複数のレーンにおいて検出される制御コードにも基づいて制御コードが確定される。このため、無効コード及び終了コードのシンボル数が少なくても、十分なエラー耐性を確保し得る。
このように、本実施形態によれば、無効コード及び終了コードのシンボル数が少ないため、データ量の低減に寄与することができる。無効コード及び終了コードは第2の検出モードで検出されるため、十分なエラー耐性は確保される。
[変形実施形態]
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
例えば、上記実施形態では、制御コードを複数のシンボルによって構成し、制御コードを構成する複数のシンボルのうちの正常に検出されたシンボルの数に基づいて制御コードを検出する場合を例に説明したが、これに限定されるものではない。例えば、調整コードを複数のシンボルによって構成し、調整コードを構成する複数のシンボルのうちの正常に検出されたシンボルの数に基づいて調整コードを検出するようにしてもよい。
また、上記実施形態では、リンク間スキューの量が水平転送期間毎に変動する場合を例に説明したが、これに限定されるものではない。例えば、リンク間スキューの量が垂直転送期間(VD期間)毎に変動し、水平転送期間毎に変動しない場合には、以下のようにすることができる。即ち、垂直転送期間において最初に検出される同期コードは第1の検出モードで検出し、垂直転送期間において最初に検出される同期コード以外の同期コードは第2の検出モードで検出するようにする。無効コード及び終了コードは、いずれも第2の検出モードで検出する。この場合には、第1の検出モードから第2の検出モードへの遷移が行われた後に供給される垂直同期信号VDに応じたタイミングで、第2の検出モードから第1の検出モードへの遷移が行われる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100…撮像素子
140…画像処理部

Claims (15)

  1. 複数の第1レーンと、
    第1の駆動手段によって駆動され、前記複数の第1レーンの各々に制御コードを含む信号を供給する第1送信手段と、
    前記複数の第1レーンのうち、前記制御コードが検出された前記第1レーンの数に基づく第1検出信号を生成する第1処理手段と、
    を備える第1のリンクと、
    複数の第2レーンと、
    第2の駆動手段によって駆動され、前記複数の第2レーンの各々に制御コードを含む信号を供給する第2送信手段と、
    前記複数の第2レーンのうち、前記制御コードが検出された前記第2レーンの数に基づく第2検出信号を生成する第2処理手段と、
    を備える第2のリンクと、
    前記第1検出信号および前記第2検出信号に基づいて、前記複数の第1レーンで伝送される複数の信号と、前記複数の第2レーンで伝送される複数の信号とのタイミングを調整する調整手段と、
    を備える信号処理装置。
  2. 前記第1処理手段は、
    前記複数の第1レーンのうちの前記制御コードが検出された前記第1レーンの数に基づいて前記第1検出信号を生成する第1のモードと、
    前記複数の第1レーンのうちの前記制御コードが検出された前記第1レーンの数および前記複数の第2レーンのうちの前記制御コードが検出された前記第2レーンの数に基づいて、前記第1検出信号を生成する第2のモードと、
    で動作し得ることを特徴とする請求項1に記載の信号処理装置。
  3. 前記信号は、複数種の前記制御コードを含み、
    前記複数種の制御コードのうちの第1の制御コードの検出に基づいて、前記第1のモードから前記第2のモードへの遷移が行われ、
    前記第1の制御コードと異なる第2の制御コードの検出は、前記第2のモードで行われる
    ことを特徴とする請求項2に記載の信号処理装置。
  4. 前記第1の制御コードは、同期コードであり、
    前記第2の制御コードは、無効コード又は終了コードであることを特徴とする請求項3に記載の信号処理装置。
  5. 前記第1の制御コードを構成するシンボルの数は、前記第2の制御コードを構成するシンボルの数より多いことを特徴とする請求項3または4に記載の信号処理装置。
  6. 前記第1のモードから前記第2のモードへの遷移が行われてから所定の時間が経過した後に、前記第2のモードから前記第1のモードへの遷移が行われることを特徴とする請求項2乃至5のいずれか1項に記載の信号処理装置。
  7. 前記第1のモードから前記第2のモードへの遷移が行われた後に供給される水平同期信号又は垂直同期信号に応じたタイミングで、前記第2のモードから前記第1のモードへの遷移が行われることを特徴とする請求項2乃至6のいずれか1項に記載の信号処理装置。
  8. 前記信号は、調整コードを更に含み、
    前記第1のリンクは、前記複数の第1レーンをそれぞれ伝搬する信号のスキューを、前記調整コードを用いて解消する第1調整手段を備え、
    前記第2のリンクは、前記複数の第2レーンをそれぞれ伝搬する信号のスキューを、前記調整コードを用いて解消する第2調整手段を備えることを特徴とする請求項1乃至7のいずれか1項に記載の信号処理装置。
  9. 前記第1調整手段および前記第2調整手段は、前記調整コードを構成する複数のシンボルのうちの正常に検出されたシンボルの数が第1閾値以上である場合に、前記調整コードを検出することを特徴とする請求項8に記載の信号処理装置。
  10. 前記第1処理手段および前記第2処理手段は、前記制御コードを構成する複数のシンボルのうちの正常に検出されたシンボルの数が、第2閾値以上である場合に前記制御コードを検出することを特徴とする請求項1乃至9のいずれか1項に記載の信号処理装置。
  11. 各第1レーンおよび各第2レーンは、
    パラレル信号をシリアル信号に変換するパラレルシリアル変換器と、
    前記パラレルシリアル変換器の後段に備えられるとともに、前記パラレルシリアル変換器から出力された前記シリアル信号をパラレル信号に変換するシリアルパラレル変換器と、
    前記シリアルパラレル変換器の後段に備えられるとともに、前記制御コードを検出する制御コード検出手段と
    を備える
    ことを特徴とする請求項1乃至10のいずれか1項に記載の信号処理装置。
  12. 画像を取得する画像取得手段を更に有し、
    前記パラレルシリアル変換器によって変換される前記パラレル信号は、前記画像取得手段から出力される画像信号である
    ことを特徴とする請求項11に記載の信号処理装置。
  13. 前記画像取得手段と、前記パラレルシリアル変換器と、前記第1送信手段と、前記第2送信手段とは、第1チップに設けられ、
    前記シリアルパラレル変換器と、前記制御コード検出手段と、前記第1処理手段と、前記第2処理手段とは、前記第1チップと異なる第2チップに設けられることを特徴とする請求項12に記載の信号処理装置。
  14. 前記第1チップは、入力された光学像に基づいて画像信号を出力する撮像素子であり、
    前記第2チップは、前記撮像素子から取得した前記画像信号を処理する画像処理チップであることを特徴とする請求項13に記載の信号処理装置。
  15. 第1の駆動手段によって駆動される第1送信手段によって複数の第1レーンの各々に制御コードを含む信号を供給するとともに、第2の駆動手段によって駆動される第2送信手段によって複数の第2レーンの各々に制御コードを含む信号を供給し、前記複数の第1レーンのうち、前記制御コードが検出された前記第1レーンの数に基づく第1検出信号を生成するとともに、前記複数の第2レーンのうち、前記制御コードが検出された前記第2レーンの数に基づく第2検出信号を生成するステップと、
    前記第1検出信号および前記第2検出信号に基づいて、前記複数の第1レーンで伝送される複数の信号と、前記複数の第2レーンで伝送される複数の信号とのタイミングを調整するステップと
    を有することを特徴とする信号処理方法。
JP2017156649A 2017-08-14 2017-08-14 信号処理装置及び信号処理方法 Active JP6985846B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017156649A JP6985846B2 (ja) 2017-08-14 2017-08-14 信号処理装置及び信号処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017156649A JP6985846B2 (ja) 2017-08-14 2017-08-14 信号処理装置及び信号処理方法

Publications (2)

Publication Number Publication Date
JP2019036833A true JP2019036833A (ja) 2019-03-07
JP6985846B2 JP6985846B2 (ja) 2021-12-22

Family

ID=65636025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017156649A Active JP6985846B2 (ja) 2017-08-14 2017-08-14 信号処理装置及び信号処理方法

Country Status (1)

Country Link
JP (1) JP6985846B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021141541A (ja) * 2020-03-09 2021-09-16 オリンパス株式会社 撮像装置および撮像方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009267969A (ja) * 2008-04-28 2009-11-12 Canon Inc 撮像装置及び当該装置における信号処理方法
JP2012120158A (ja) * 2010-11-12 2012-06-21 Sony Corp 画像出力装置、画像出力方法、画像処理装置、画像処理方法、プログラム、データ構造、および撮像装置
JP2013123087A (ja) * 2011-12-09 2013-06-20 Sony Corp 情報処理装置、情報処理方法、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009267969A (ja) * 2008-04-28 2009-11-12 Canon Inc 撮像装置及び当該装置における信号処理方法
JP2012120158A (ja) * 2010-11-12 2012-06-21 Sony Corp 画像出力装置、画像出力方法、画像処理装置、画像処理方法、プログラム、データ構造、および撮像装置
JP2013123087A (ja) * 2011-12-09 2013-06-20 Sony Corp 情報処理装置、情報処理方法、及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021141541A (ja) * 2020-03-09 2021-09-16 オリンパス株式会社 撮像装置および撮像方法
JP7428546B2 (ja) 2020-03-09 2024-02-06 オリンパス株式会社 撮像装置および撮像方法

Also Published As

Publication number Publication date
JP6985846B2 (ja) 2021-12-22

Similar Documents

Publication Publication Date Title
KR100719343B1 (ko) 독립적인 클럭 소스를 기준으로 직렬 클럭을 생성하는 직렬변환기와 데이터의 직렬 전송 방법
EP2053847A1 (en) Imager, imaging circuit, and image processing circuit
JP4652261B2 (ja) パラレル変換回路
US8520787B2 (en) Apparatus and method for deskewing serial data transmissions
EP2684324B1 (en) Apparatus and method for deskewing serial data transmissions
JP5365132B2 (ja) 直列信号の受信装置、直列伝送システム、直列伝送方法、直列信号の送信装置
US8305475B2 (en) Solid-state image sensing device and image signal output circuit
CN108471308B (zh) 半导体装置以及数据同步方法
JP6985846B2 (ja) 信号処理装置及び信号処理方法
US10057524B2 (en) Image capturing apparatus
JP5915105B2 (ja) データ転送システム、受信回路、及び受信方法
JP2007048264A (ja) 複数チップ間の同期合わせ機能を有したデータ処理装置
JP2010220148A (ja) コード生成回路およびイメージセンサ
KR101193057B1 (ko) 복수의 센서 데이터 입력 방법 및 장치
JP7059536B2 (ja) 信号伝送回路
JP5423071B2 (ja) データ転送装置及び撮像装置
JP2013175832A (ja) 画像処理装置、信号伝達回路及び半導体集積回路
JP6528590B2 (ja) 撮像装置およびその画像データ処理方法
JP2008167199A (ja) イメージセンサモジュール
JP3882300B2 (ja) シリアルデータ保持回路
JP6243210B2 (ja) シリアルデータ送信装置、シリアルデータ受信装置、シリアルデータ送信方法、及び、シリアルデータ送信プログラム
JP2010213204A (ja) データ送受信方法
JP2018074413A (ja) 伝送装置、及び信号処理方法
JP4987957B2 (ja) ヘッド分離型撮像装置、その制御ユニット、および信号処理方法
JP2000184229A (ja) 画像処理装置

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180126

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210323

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210521

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211028

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211126

R151 Written notification of patent or utility model registration

Ref document number: 6985846

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151