(57)【要約】  本技術は、データの伝送効率を高めることができるようにする送信装置、受信装置、制御方法、プログラム、および送受信システムに関する。本技術の一側面の送信装置は、データストリームの送信が所定のモードで行われている場合において、モードの内容を規定するパラメータを変更するとき、変更後のパラメータにより規定されるモードでのデータストリームの送信を、データの同期とレーン間のデータのタイミングのずれの補正とを受信装置において行うためのトレーニング処理を行ってから開始するか、トレーニング処理を行わずに開始するかを、変更するパラメータの種類に応じて切り替える。本技術は、チップ間のデータ伝送に適用することができる。
2018225533.tif 000002
【特許請求の範囲】
【請求項１】
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配する分配部と、
分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信する複数の信号処理部と、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部と
を備える送信装置。
【請求項２】
前記伝送対象のデータは、撮像して得られた画像データであり、
前記画像データは、それぞれの前記パケットにライン単位で格納される
請求項１に記載の送信装置。
【請求項３】
前記パラメータを設定し、前記画像データの供給元となる撮像部をさらに備え、
前記制御部は、前記受信装置から送信された、前記モードの変更を要求する情報が前記撮像部により受信された場合、前記撮像部により設定された前記パラメータの変更を反映させる
請求項２に記載の送信装置。
【請求項４】
変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を前記トレーニング処理を行わずに開始する場合、
複数の前記信号処理部は、前記トレーニング処理を行った場合に前記トレーニング処理に要する期間、ブランキングデータを送信し、前記ブランキングデータの送信終了後、前記データストリームを送信する
請求項２に記載の送信装置。
【請求項５】
複数の前記信号処理部は、前記パラメータの変更が行われたタイミングを基準として次のフレームの送信開始まで、前記ブランキングデータを送信する
請求項４に記載の送信装置。
【請求項６】
前記パラメータの変更が、所定のラインの送信後のブランキング期間に行われた場合、
複数の前記信号処理部は、前記所定のラインの次のラインの前記画像データを格納する前記パケットを構成する前記パケットデータの送信を、変更後の前記パラメータにより規定される前記モードで行う
請求項２に記載の送信装置。
【請求項７】
前記パラメータの変更が、所定のフレームの送信後のブランキング期間に行われた場合、
複数の前記信号処理部は、前記所定のフレームの次のフレームの前記画像データを格納する前記パケットを構成する前記パケットデータの送信を、変更後の前記パラメータにより規定される前記モードで行う
請求項２に記載の送信装置。
【請求項８】
前記パラメータの変更が行われたか否かを表すフラグをヘッダに含む前記パケットを生成するパケット生成部をさらに備える
請求項１に記載の送信装置。
【請求項９】
変更後の前記パラメータをヘッダに含む前記パケットを生成するパケット生成部をさらに備える
請求項１に記載の送信装置。
【請求項１０】
前記パラメータは、
前記データストリームの送信に用いる前記レーンの数を表すレーン情報、
前記画像データを構成する各ピクセルのビット数を表すビット情報、
１ラインのピクセル数を表すライン情報、
前記パケットを構成するペイロードデータの誤り訂正に用いられる誤り訂正符号の種類を表す誤り訂正符号情報、
前記パケットを構成するフッタに含まれ、前記ペイロードデータの誤り検出に用いられる誤り検出符号の種類を表す誤り検出符号情報、
および、それぞれの前記レーンの伝送レートの種類を表すレート情報
のうちの少なくともいずれかを含む
請求項２に記載の送信装置。
【請求項１１】
前記制御部は、変更する前記パラメータが、前記レーン情報または前記レート情報である場合、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を前記トレーニング処理を行ってから開始させ、前記ビット情報、前記ライン情報、前記誤り訂正符号情報、または前記誤り検出符号情報である場合、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を前記トレーニング処理を行わずに開始させる
請求項１０に記載の送信装置。
【請求項１２】
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、
分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信し、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える
ステップを含む制御方法。
【請求項１３】
コンピュータに、
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、
分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信し、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える
ステップを含む処理を実行させるプログラム。
【請求項１４】
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを複数の前記レーンを用いて並列に送信する送信装置から送信されてきた前記データストリームを受信する複数の信号処理部と、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部と
を備える受信装置。
【請求項１５】
前記パケットのヘッダに含まれる、前記パラメータの変更が行われたか否かを表すフラグが、前記パラメータの変更が行われたことを表している場合、
前記制御部は、前記データストリームの受信を、前記トレーニング処理を行わずに開始させる
請求項１４に記載の受信装置。
【請求項１６】
前記制御部は、前記データストリームの受信を、前記ヘッダに含まれる前記パラメータを変更後の前記パラメータとして用いて、前記トレーニング処理を行わずに開始させる
請求項１４に記載の受信装置。
【請求項１７】
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを複数の前記レーンを用いて並列に送信する送信装置から送信されてきた前記データストリームを受信し、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える
ステップを含む制御方法。
【請求項１８】
コンピュータに、
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを複数の前記レーンを用いて並列に送信する送信装置から送信されてきた前記データストリームを受信し、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える
ステップを含む処理を実行させるプログラム。
【請求項１９】
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配する分配部と、
分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信する複数の信号処理部と、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部と
を備える送信装置と、
前記送信装置から送信されてきた前記データストリームを受信する複数の信号処理部と、
前記データストリームの送信が所定のモードで行われている場合において、前記パラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、前記トレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部と
を備える受信装置と
を含む送受信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、送信装置、受信装置、制御方法、プログラム、および送受信システムに関し、特に、データの伝送効率を高めることができるようにした送信装置、受信装置、制御方法、プログラム、および送受信システムに関する。
【背景技術】
【０００２】
イメージセンサの高画質化、高フレームレート化に伴い、イメージセンサと、イメージセンサにより撮像された画像を処理するDSP(Digital Signal Processor)との間のインタフェースに求められるデータの伝送容量が高まってきている。【０００３】
特許文献１には、画像データを格納するパケットを複数レーンに分配し、複数レーンを介して、イメージセンサからDSPにデータを伝送する伝送方式が記載されている。この伝送方式においては、１フレームの各ラインを構成する画像データがイメージセンサにおいて各パケットに格納され、DSPに伝送される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１２０１５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
データ伝送のモードを変更する毎に、データ伝送を一度止め、受信側でのCDRによる再同期とレーン間のData Skew（データの受信タイミングのずれ）の補正のためのトレーニング処理を行うものとした場合、伝送効率が低下する。【０００６】
例えば、トレーニング処理の間は画像データを伝送することができず、トレーニング処理に用いるためのいわば無効なデータを伝送する必要があり、そのような無効なデータを伝送する分だけ、伝送効率が低下することになる。【０００７】
本技術はこのような状況に鑑みてなされたものであり、データの伝送効率を高めることができるようにするものである。
【課題を解決するための手段】
【０００８】
本技術の第１の側面の送信装置は、伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配する分配部と、分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信する複数の信号処理部と、前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部とを備える。【０００９】
本技術の第２の側面の受信装置は、伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを複数の前記レーンを用いて並列に送信する送信装置から送信されてきた前記データストリームを受信する複数の信号処理部と、前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部とを備える。【００１０】
本技術の第１の側面においては、前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかが、変更する前記パラメータの種類に応じて切り替えられる。【００１１】
本技術の第２の側面においては、前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかが、変更する前記パラメータの種類に応じて切り替えられる。
【発明の効果】
【００１２】
本技術によれば、データの伝送効率を高めることができる。【００１３】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【００１４】
【図１】伝送システムの第１の構成例を示す図である。
【図２】伝送システムの第２の構成例を示す図である。
【図３】伝送システムの第３の構成例を示す図である。
【図４】フレームフォーマットの例を示す図である。
【図５】送信部と受信部の構成例を示す図である。
【図６】ヘッダ構造を示す図である。
【図７】ヘッダ情報の内容と情報量を示す図である。
【図８】ビット配列の例を示す図である。
【図９】各画素の画素値が８ビットで表される場合のPixel to Byte変換の例を示す図である。
【図１０】各画素の画素値が１０ビットで表される場合のPixel to Byte変換の例を示す図である。
【図１１】各画素の画素値が１２ビットで表される場合のPixel to Byte変換の例を示す図である。
【図１２】各画素の画素値が１４ビットで表される場合のPixel to Byte変換の例を示す図である。
【図１３】各画素の画素値が１６ビットで表される場合のPixel to Byte変換の例を示す図である。
【図１４】ペイロードデータの例を示す図である。
【図１５】ペイロードデータの他の例を示す図である。
【図１６】パリティが挿入されたペイロードデータの例を示す図である。
【図１７】ペイロードデータにヘッダを付加した状態を示す図である。
【図１８】ペイロードデータにヘッダとフッタを付加した状態を示す図である。
【図１９】パリティが挿入されたペイロードデータにヘッダを付加した状態を示す図である。
【図２０】パケットデータの割り当ての例を示す図である。
【図２１】制御コードの例を示す図である。
【図２２】K Characterの値を示す図である。
【図２３】Pad Codeの挿入の例を示す図である。
【図２４】制御コード挿入後のパケットデータの例を示す図である。
【図２５】Data Skewの補正の例を示す図である。
【図２６】撮像装置の処理について説明するフローチャートである。
【図２７】図２６のステップＳ２において行われるデータ送信処理について説明するフローチャートである。
【図２８】図２６のステップＳ３において行われるデータ受信処理について説明するフローチャートである。
【図２９】レーン数を切り替える場合の制御シーケンスを示す図である。
【図３０】フレームフォーマットの他の例を示す図である。
【図３１】図３０のフレームフォーマットの１パケットを拡大して示す図である。
【図３２】ヘッダ情報の内容を示す図である。
【図３３】Mode Changeのシーケンスの例を示す図である。
【図３４】図３３の１フレーム目を拡大して示す図である。
【図３５】Training Sequenceにおいて用いられる制御コードの例を示す図である。
【図３６】レジスタに設定されるパラメータの例を示す図である。
【図３７】Mode Change with Standbyのシーケンスの例を示す図である。
【図３８】イメージセンサの各レイヤ間で用いられる制御信号の例を示す図である。
【図３９】送信部のリンクレイヤの状態遷移の例を示す図である。
【図４０】送信部の物理レイヤの状態遷移の例を示す図である。
【図４１】DSPの各レイヤ間で用いられる制御信号の例を示す図である。
【図４２】受信部のリンクレイヤの状態遷移の例を示す図である。
【図４３】受信部の物理レイヤの状態遷移の例を示す図である。
【図４４】Mode Changeの例を示す図である。
【図４５】簡易型Mode Changeの例を示す図である。
【図４６】無効フレームの伝送がある簡易型Mode Changeのシーケンスの例を示す図である。
【図４７】簡易型Mode Changeが用いられる場合の、送信部のリンクレイヤの状態遷移の例を示す図である。
【図４８】簡易型Mode Change時の各部の処理について説明するシーケンス図である。
【図４９】無効フレームの伝送がない簡易型Mode Changeのシーケンスの例を示す図である。
【図５０】ヘッダに格納される情報の例を示す図である。
【図５１】リザーブ領域の割り当ての例を示す図である。
【図５２】Additional Informationの例を示す図である。
【図５３】簡易型Mode Change時の各部の処理について説明するシーケンス図である。
【図５４】リザーブ領域の割り当ての他の例を示す図である。
【図５５】Additional Informationの例を示す図である。
【図５６】簡易型Mode Change時の各部の処理について説明するシーケンス図である。
【図５７】コンピュータの構成例を示すブロック図である。
【図５８】内視鏡手術システムの概略的な構成の一例を示す図である。
【図５９】図５８に示すカメラヘッド及びＣＣＵの機能構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
１．データ伝送について
２．Mode Changeについて
（１）通常のMode Change
（２）Training Sequenceを省略したMode Change
（３）無効フレームの伝送がない簡易型Mode Change
３．変形例
４．応用例
【００１６】
＜１．データ伝送について＞
［伝送システムの構成例］
図１は、本技術の一実施形態に係る伝送システムの第１の構成例を示す図である。
【００１７】
図１の伝送システム１は、イメージセンサ１１とDSP１２から構成される。イメージセンサ１１とDSP１２はそれぞれ異なるLSI(Large Scale Integrated Circuit)により構成され、デジタルカメラや携帯電話機などの、撮像機能を有する同じ撮像装置内に設けられる。イメージセンサ１１には撮像部２１と１つの送信部２２が設けられ、DSP１２には１つの受信部３１と画像処理部３２が設けられている。
【００１８】
イメージセンサ１１の撮像部２１は、CMOS(Complementary Metal Oxide Semiconductor)などの撮像素子よりなり、レンズを介して受光した光の光電変換を行う。また、撮像部２１は、光電変換によって得られた信号のA/D変換などを行い、１フレームの画像を構成する画素データを、１画素のデータずつ順に送信部２２に出力する。
【００１９】
送信部２２は、撮像部２１から供給された各画素のデータを、例えば撮像部２１から供給された順に複数の伝送路に割り当て、複数の伝送路を介して並列にDSP１２に送信する。図１の例においては、８本の伝送路を用いて画素データの伝送が行われている。イメージセンサ１１とDSP１２の間の伝送路は有線の伝送路であってもよいし、無線の伝送路であってもよい。以下、適宜、イメージセンサ１１とDSP１２の間の伝送路をレーン（Lane）という。
【００２０】
DSP１２の受信部３１は、８本のレーンを介して送信部２２から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部３２に出力する。
【００２１】
画像処理部３２は、受信部３１から供給された画素データに基づいて１フレームの画像を生成し、生成した画像を用いて各種の画像処理を行う。イメージセンサ１１からDSP１２に伝送される画像データはRAWデータであり、画像処理部３２においては、画像データの圧縮、画像の表示、記録媒体に対する画像データの記録などの各種の処理が行われる。
【００２２】
図２は、伝送システム１の第２の構成例を示す図である。図２に示す構成のうち、図１に示す構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
【００２３】
図２の伝送システム１のイメージセンサ１１には、撮像部２１と、２つの送信部である送信部２２−１，２２−２が設けられ、DSP１２には、２つの受信部である受信部３１−１，３１−２と、画像処理部３２が設けられている。
【００２４】
撮像部２１は、撮像を行うことによって得られた１フレームの画像を構成する画素データを、１画素のデータずつ、送信部２２−１と送信部２２−２に並列に出力する。例えば、撮像部２１は、奇数ラインの画素のデータを送信部２２−１に出力し、偶数ラインの画素のデータを送信部２２−２に出力する。
【００２５】
送信部２２−１は、撮像部２１から供給された各画素のデータを、例えば撮像部２１から供給された順に複数のレーンに割り当て、複数のレーンを介して並列にDSP１２に送信する。送信部２２−２も同様に、撮像部２１から供給された各画素のデータを、例えば撮像部２１から供給された順に複数のレーンに割り当て、複数のレーンを介して並列にDSP１２に送信する。
【００２６】
図２の例においてもイメージセンサ１１とDSP１２の間は８本のレーンを介して接続されている。送信部２２−１と送信部２２−２は、それぞれ、４本のレーンを用いて画素データを伝送する。
【００２７】
DSP１２の受信部３１−１は、４本のレーンを介して送信部２２−１から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部３２に出力する。受信部３１−２も同様に、４本のレーンを介して送信部２２−２から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部３２に出力する。
【００２８】
画像処理部３２は、受信部３１−１から供給された画素データと受信部３１−２から供給された画素データに基づいて１フレームの画像を生成し、生成した画像を用いて各種の画像処理を行う。
【００２９】
図２に示すようにイメージセンサ１１に２つの送信部を設け、それに対応させて２つの受信部をDSP１２に設けることにより、撮像部２１が出力する画素データのレートが高い場合であっても画素データをDSP１２に伝送することが可能になる。
【００３０】
図３は、伝送システム１の第３の構成例を示す図である。図３に示す構成のうち、図１に示す構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
【００３１】
図３の伝送システム１においては、イメージセンサ１１−１とイメージセンサ１１−２の２つのイメージセンサが設けられている。イメージセンサ１１−１には撮像部２１−１と１つの送信部である送信部２２−１が設けられ、イメージセンサ１１−２には撮像部２１−２と１つの送信部である送信部２２−２が設けられる。DSP１２には、図２の場合と同様に、２つの受信部である受信部３１−１，３１−２と、画像処理部３２が設けられている。
【００３２】
イメージセンサ１１−１の撮像部２１−１は、撮像を行うことによって得られた１フレームの画像を構成する画素データを、１画素のデータずつ順に送信部２２−１に出力する。
【００３３】
送信部２２−１は、撮像部２１−１から供給された各画素のデータを、例えば撮像部２１−１から供給された順に複数のレーンに割り当て、複数のレーンを介して並列にDSP１２に送信する。
【００３４】
イメージセンサ１１−２の撮像部２１−２は、撮像を行うことによって得られた１フレームの画像を構成する画素データを、１画素のデータずつ順に送信部２２−２に出力する。
【００３５】
送信部２２−２は、撮像部２１−２から供給された各画素のデータを、例えば撮像部２１−２から供給された順に複数のレーンに割り当て、複数のレーンを介して並列にDSP１２に送信する。
【００３６】
図３の例においてもイメージセンサ側とDSP１２の間は８本のレーンを介して接続されている。イメージセンサ１１−１とイメージセンサ１１−２にはそれぞれ４本のレーンが割り当てられ、送信部２２−１と送信部２２−２は、それぞれ、４本のレーンを用いて画素データを伝送する。
【００３７】
DSP１２の受信部３１−１は、４本のレーンを介してイメージセンサ１１−１の送信部２２−１から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部３２に出力する。受信部３１−２も同様に、４本のレーンを介してイメージセンサ１１−２の送信部２２−２から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部３２に出力する。
【００３８】
画像処理部３２は、受信部３１−１から供給された画素データに基づいて１フレームの画像を生成するとともに、受信部３１−２から供給された画素データに基づいて１フレームの画像を生成する。画像処理部３２は、生成した画像を用いて各種の画像処理を行う。
【００３９】
図３に示すように２つのイメージセンサを設けることにより、例えば、イメージセンサ１１−１により撮像された左目用の画像と、イメージセンサ１１−２により撮像された右目用の画像からなる3D画像を１つのDSP１２で処理することが可能になる。左目用の画像と右目用の画像には視差がある。
【００４０】
以上のように、伝送システム１のイメージセンサには、撮像された１フレームの画像データを伝送する送信部が１つまたは複数設けられる。一方、DSPには、イメージセンサの送信部に対応して、イメージセンサから伝送されてきたデータを受信する受信部が１つまたは複数設けられる。
【００４１】
以下、イメージセンサ１１に１つの送信部が設けられ、DSP１２に１つの受信部が設けられる図１の伝送システム１におけるデータ伝送について説明する。図２と図３の送信部２２−１−受信部３１−１間、送信部２２−２−受信部３１−２間においても同様にしてデータ伝送が行われる。
【００４２】
［フレームフォーマット］
図４は、イメージセンサ１１−DSP１２間で１フレームの画像データを伝送するのに用いられるフォーマットの例を示す図である。
【００４３】
有効画素領域Ａ１は、撮像部２１により撮像された１フレームの画像の有効画素の領域である。有効画素領域Ａ１の左側には、垂直方向の画素数が有効画素領域Ａ１の垂直方向の画素数と同じであるマージン領域Ａ２が設定される。
【００４４】
有効画素領域Ａ１の上側には、水平方向の画素数が、有効画素領域Ａ１とマージン領域Ａ２全体の水平方向の画素数と同じである前ダミー領域Ａ３が設定される。図４の例においては、前ダミー領域Ａ３にはEmbedded Dataが挿入されている。Embedded Dataは、シャッタスピード、絞り値、ゲインなどの、撮像部２１による撮像に関する設定値の情報が含まれる。後ダミー領域Ａ４にEmbedded Dataが挿入されることもある。
【００４５】
有効画素領域Ａ１の下側には、水平方向の画素数が、有効画素領域Ａ１とマージン領域Ａ２全体の水平方向の画素数と同じである後ダミー領域Ａ４が設定される。
【００４６】
有効画素領域Ａ１、マージン領域Ａ２、前ダミー領域Ａ３、および後ダミー領域Ａ４から画像データ領域Ａ１１が構成される。
【００４７】
画像データ領域Ａ１１を構成する各ラインの前にはヘッダが付加され、ヘッダの前にはStart Codeが付加される。また、画像データ領域Ａ１１を構成する各ラインの後ろにはフッタがオプションで付加され、フッタの後ろにはEnd Codeなどの後述する制御コードが付加される。フッタが付加されない場合、画像データ領域Ａ１１を構成する各ラインの後ろにEnd Codeなどの制御コードが付加される。
【００４８】
撮像部２１により撮像された１フレームの画像をイメージセンサ１１からDSP１２に伝送する毎に、図４に示すフォーマットのデータ全体が伝送データとして伝送される。
【００４９】
図４の上側の帯は下側に示す伝送データの伝送に用いられるパケットの構造を示している。水平方向の画素の並びをラインとすると、パケットのペイロードには、画像データ領域Ａ１１の１ラインを構成する画素のデータが格納される。１フレームの画像データ全体の伝送は、画像データ領域Ａ１１の垂直方向の画素数以上の数のパケットを用いて行われることになる。
【００５０】
１ライン分の画素データが格納されたペイロードに、ヘッダとフッタが付加されることによって１パケットが構成される。後に詳述するように、ヘッダには、Frame Start, Frame End, Line Valid, Line Number, ECCなどの、ペイロードに格納されている画素データの付加的な情報が含まれる。各パケットには、制御コードであるStart CodeとEnd Codeが少なくとも付加される。
【００５１】
このように、１フレームの画像を構成する画素データをライン毎に伝送するフォーマットを採用することによって、ヘッダ等の付加的な情報やStart Code, End Codeなどの制御コードをライン毎のブランキング期間中に伝送することが可能になる。
【００５２】
［送信部２２と受信部３１の構成］
図５は、送信部２２と受信部３１の構成例を示す図である。
【００５３】
図５の左側に破線で囲んで示す構成が送信部２２の構成であり、右側に破線で囲んで示す構成が受信部３１の構成である。送信部２２と受信部３１は、それぞれ、リンクレイヤの構成と物理レイヤの構成からなる。実線Ｌ２より上側に示す構成がリンクレイヤの構成であり、実線Ｌ２より下側に示す構成が物理レイヤの構成である。
【００５４】
なお、実線Ｌ１の上に示す構成はアプリケーションレイヤの構成である。システム制御部５１、フレームデータ入力部５２、およびレジスタ５３は撮像部２１において実現される。システム制御部５１は、送信部２２のLINK-TXプロトコル管理部６１と通信を行い、フレームフォーマットに関する情報を提供するなどして画像データの伝送を制御する。フレームデータ入力部５２は、ユーザによる指示などに応じて撮像を行い、撮像を行うことによって得られた画像を構成する各画素のデータを送信部２２のPixel to Byte変換部６２に供給する。レジスタ５３は、Pixel to Byte変換のビット数やLane数等の情報を記憶する。レジスタ５３に記憶されている情報に従って画像データの送信処理が行われる。
【００５５】
また、アプリケーションレイヤの構成のうちのフレームデータ出力部１４１、レジスタ１４２、およびシステム制御部１４３は画像処理部３２において実現される。フレームデータ出力部１４１は、受信部３１から供給された各ラインの画素データに基づいて１フレームの画像を生成し、出力する。フレームデータ出力部１４１から出力された画像を用いて各種の処理が行われる。レジスタ１４２は、Byte to Pixel変換のビット数やLane数などの、画像データの受信に関する各種の設定値を記憶する。レジスタ１４２に記憶されている情報に従って画像データの受信処理が行われる。システム制御部１４３は、LINK-RXプロトコル管理部１２１と通信を行い、モードチェンジ等のシーケンスを制御する。
【００５６】
［送信部２２のリンクレイヤの構成］
はじめに、送信部２２のリンクレイヤの構成について説明する。
【００５７】
送信部２２には、リンクレイヤの構成として、LINK-TXプロトコル管理部６１、Pixel to Byte変換部６２、ペイロードECC挿入部６３、パケット生成部６４、およびレーン分配部６５が設けられる。LINK-TXプロトコル管理部６１は、状態制御部７１、ヘッダ生成部７２、データ挿入部７３、およびフッタ生成部７４から構成される。
【００５８】
LINK-TXプロトコル管理部６１の状態制御部７１は、送信部２２のリンクレイヤの状態を管理する。
【００５９】
ヘッダ生成部７２は、１ライン分の画素データが格納されたペイロードに付加されるヘッダを生成し、パケット生成部６４に出力する。
【００６０】
図６は、ヘッダ生成部７２により生成されるヘッダの構造を示す図である。
【００６１】
上述したように、１パケット全体は、ヘッダと、１ライン分の画素データであるペイロードデータから構成される。パケットにはフッタが付加されることもある。ヘッダは、ヘッダ情報とHeader ECCから構成される。
【００６２】
ヘッダ情報には、Frame Start, Frame End, Line Valid, Line Number, Reservedが含まれる。各情報の内容と情報量を図７に示す。
【００６３】
Frame Startは、フレームの先頭を示す１ビットの情報である。図４の画像データ領域Ａ１１の１ライン目の画素データの伝送に用いられるパケットのヘッダのFrame Startには１の値が設定され、他のラインの画素データの伝送に用いられるパケットのヘッダのFrame Startには０の値が設定される。
【００６４】
Frame Endは、フレームの終端を示す１ビットの情報である。有効画素領域Ａ１の終端ラインの画素データをペイロードに含むパケットのヘッダのFrame Endには１の値が設定され、他のラインの画素データの伝送に用いられるパケットのヘッダのFrame Endには０の値が設定される。
【００６５】
Frame StartとFrame Endが、フレームに関する情報であるフレーム情報となる。
【００６６】
Line Validは、ペイロードに格納されている画素データのラインが有効画素のラインであるのか否かを表す１ビットの情報である。有効画素領域Ａ１内のラインの画素データの伝送に用いられるパケットのヘッダのLine Validには１の値が設定され、他のラインの画素データの伝送に用いられるパケットのヘッダのLine Validには０の値が設定される。
【００６７】
Line Numberは、ペイロードに格納されている画素データにより構成されるラインのライン番号を表す１３ビットの情報である。
【００６８】
Line ValidとLine Numberが、ラインに関する情報であるライン情報となる。
【００６９】
Reservedは拡張用の32ビットの領域である。ヘッダ情報全体のデータ量は６バイトになる。
【００７０】
図６に示すように、ヘッダ情報に続けて配置されるHeader ECCには、６バイトのヘッダ情報に基づいて計算された２バイトの誤り検出符号であるCRC(Cyclic Redundancy Check)符号が含まれる。また、Header ECCには、CRC符号に続けて、ヘッダ情報とCRC符号の組である８バイトの情報と同じ情報が２つ含まれる。
【００７１】
すなわち、１つのパケットのヘッダには、同じヘッダ情報とCRC符号の組が３つ含まれる。ヘッダ全体のデータ量は、１組目のヘッダ情報とCRC符号の組の８バイトと、２組目のヘッダ情報とCRC符号の組の８バイトと、３組目のヘッダ情報とCRC符号の組の８バイトとの、あわせて２４バイトになる。
【００７２】
図８は、ヘッダ情報とCRC符号の１つの組を構成する８バイトのビット配列の例を示す図である。
【００７３】
ヘッダを構成する８バイトのうちの１番目の１バイトであるバイトＨ７には、１ビット目から順に、Frame Start, Frame End, Line Validの各１ビットと、Line Numberの１３ビットのうちの１〜５ビット目が含まれる。また、２番目の１バイトであるバイトＨ６には、Line Numberの１３ビットのうちの６〜１３ビット目が含まれる。
【００７４】
３番目の１バイトであるバイトＨ５から６番目の１バイトであるバイトＨ２がReservedとなる。７番目の１バイトであるバイトＨ１と８番目の１バイトであるバイトＨ０にはCRC符号の各ビットが含まれる。
【００７５】
図５の説明に戻り、ヘッダ生成部７２は、システム制御部５１による制御に従ってヘッダ情報を生成する。例えば、システム制御部５１からは、フレームデータ入力部５２が出力する画素データのライン番号を表す情報や、フレームの先頭、終端を表す情報が供給される。
【００７６】
また、ヘッダ生成部７２は、ヘッダ情報を生成多項式に適用してCRC符号を計算する。ヘッダ情報に付加されるCRC符号の生成多項式は例えば下式（１）により表される。
【数１】
2018225533.tif 000003
【００７７】
ヘッダ生成部７２は、ヘッダ情報にCRC符号を付加することによってヘッダ情報とCRC符号の組を生成し、同じヘッダ情報とCRC符号の組を３組繰り返して配置することによってヘッダを生成する。ヘッダ生成部７２は、生成したヘッダをパケット生成部６４に出力する。
【００７８】
データ挿入部７３は、スタッフィング（stuffing）に用いられるデータを生成し、Pixel to Byte変換部６２とレーン分配部６５に出力する。Pixel to Byte変換部６２に供給されたスタッフィングデータであるペイロードスタッフィングデータは、Pixel to Byte変換後の画素データに付加され、ペイロードに格納される画素データのデータ量の調整に用いられる。また、レーン分配部６５に供給されたスタッフィングデータであるレーンスタッフィングデータは、レーン割り当て後のデータに付加され、レーン間のデータ量の調整に用いられる。
【００７９】
フッタ生成部７４は、システム制御部５１による制御に応じて、適宜、ペイロードデータを生成多項式に適用して３２ビットのCRC符号を計算し、計算により求めたCRC符号をフッタとしてパケット生成部６４に出力する。フッタとして付加されるCRC符号の生成多項式は例えば下式（２）により表される。
【数２】
2018225533.tif 000004
【００８０】
Pixel to Byte変換部６２は、フレームデータ入力部５２から供給された画素データを取得し、各画素のデータを１バイト単位のデータに変換するPixel to Byte変換を行う。例えば、撮像部２１により撮像された画像の各画素の画素値（RGB）は、８ビット、１０ビット、１２ビット、１４ビット、１６ビットのうちのいずれかのビット数で表される。
【００８１】
図９は、各画素の画素値が８ビットで表される場合のPixel to Byte変換の例を示す図である。
【００８２】
Data[0]がLSBを表し、数字の最も大きいData[7]がMSBを表す。白抜き矢印で示すように、この場合、画素Nの画素値を表すData[7]〜[0]の８ビットは、Data[7]〜[0]からなるByte Nに変換される。各画素の画素値が８ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数と同じ数になる。
【００８３】
図１０は、各画素の画素値が１０ビットで表される場合のPixel to Byte変換の例を示す図である。
【００８４】
この場合、画素Nの画素値を表すData[9]〜[0]の１０ビットは、Data[9]〜[2]からなるByte 1.25*Nに変換される。
【００８５】
画素N+1〜N+3についても同様に、それぞれの画素値を表すData[9]〜[0]の１０ビットが、Data[9]〜[2]からなるByte 1.25*N+1〜Byte 1.25*N+3に変換される。また、画素N〜N+3のそれぞれの下位のビットであるData[1]とData[0]が集められてByte 1.25*N+4に変換される。各画素の画素値が１０ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数の1.25倍の数になる。
【００８６】
図１１は、各画素の画素値が１２ビットで表される場合のPixel to Byte変換の例を示す図である。
【００８７】
この場合、画素Nの画素値を表すData[11]〜[0]の１２ビットは、Data[11]〜[4]からなるByte 1.5*Nに変換される。
【００８８】
画素N+1についても同様に、画素N+1の画素値を表すData[11]〜[0]の１２ビットが、Data[11]〜[4]からなるByte 1.5*N+1に変換される。また、画素Nと画素N+1のそれぞれの下位のビットであるData[3]〜[0]が集められてByte 1.5*N+2に変換される。各画素の画素値が１２ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数の1.5倍の数になる。
【００８９】
図１２は、各画素の画素値が１４ビットで表される場合のPixel to Byte変換の例を示す図である。
【００９０】
この場合、画素Nの画素値を表すData[13]〜[0]の１４ビットは、Data[13]〜[6]からなるByte 1.75*Nに変換される。
【００９１】
画素N+1〜N+3についても同様に、それぞれの画素値を表すData[13]〜[0]の１４ビットが、Data[13]〜[6]からなるByte 1.75*N+1〜Byte 1.75*N+3に変換される。また、画素N〜N+3のビットのうちの残ったビットが下位のビットから順に集められ、例えば、画素NのビットであるData[5]〜[0]と、画素N+1のビットであるData[5],[4]がByte 1.75*N+4に変換される。
【００９２】
同様に、画素N+1のビットであるData[3]〜[0]と、画素N+2のビットであるData[5]〜[2]がByte 1.75*N+5に変換され、画素N+2のビットであるData[1],[0]と、画素N+3のビットであるData[5]〜[0]がByte 1.75*N+6に変換される。各画素の画素値が１４ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数の1.75倍の数になる。
【００９３】
図１３は、各画素の画素値が１６ビットで表される場合のPixel to Byte変換の例を示す図である。
【００９４】
この場合、画素Nの画素値を表すData[15]〜[0]の１６ビットは、Data[15]〜[8]からなるByte 2*NとData[7]〜[0]からなるByte 2*N+1に変換される。各画素の画素値が１６ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数の2倍の数になる。
【００９５】
図５のPixel to Byte変換部６２は、このようなPixel to Byte変換を例えばラインの左端の画素から順に各画素を対象として行う。また、Pixel to Byte変換部６２は、Pixel to Byte変換によって得られたバイト単位の画素データに、データ挿入部７３から供給されたペイロードスタッフィングデータを付加することによってペイロードデータを生成し、ペイロードECC挿入部６３に出力する。
【００９６】
図１４は、ペイロードデータの例を示す図である。
【００９７】
図１４は、各画素の画素値が１０ビットで表される場合のPixel to Byte変換によって得られた画素データを含むペイロードデータを示している。色を付していない１つのブロックが、Pixel to Byte変換後のバイト単位の画素データを表す。また、色を付している１つのブロックが、データ挿入部７３により生成されたペイロードスタッフィングデータを表す。
【００９８】
Pixel to Byte変換後の画素データは、変換によって得られた順に、所定の数のグループにグループ化される。図１４の例においては、各画素データがグループ０〜１５の１６グループにグループ化されており、画素Ｐ０のMSBを含む画素データがグループ０に割り当てられ、画素Ｐ１のMSBを含む画素データがグループ１に割り当てられている。また、画素Ｐ２のMSBを含む画素データがグループ２に割り当てられ、画素Ｐ３のMSBを含む画素データがグループ３に割り当てられ、画素Ｐ０〜Ｐ３のLSBを含む画素データがグループ４に割り当てられている。
【００９９】
画素Ｐ４のMSBを含む画素データ以降の画素データについても、グループ５以降の各グループに順に割り当てられる。ある画素データがグループ１５に割り当てられたとき、それ以降の画素データは、グループ０以降の各グループに順に割り当てられる。なお、画素データを表すブロックのうち、３本の破線が内側に付されているブロックは、Pixel to Byte変換時に、画素N〜N+3のLSBを含むようにして生成されたバイト単位の画素データを表す。
【０１００】
送信部２２のリンクレイヤにおいては、このようにしてグループ化が行われた後、クロック信号によって規定される期間毎に、各グループにおいて同じ位置にある画素データを対象として処理が並行して行われる。すなわち、図１４に示すように１６のグループに画素データが割り当てられた場合、各列に並ぶ１６の画素データを同じ期間内に処理するようにして画素データの処理が進められる。
【０１０１】
上述したように、１つのパケットのペイロードには１ラインの画素データが含まれる。図１４に示す画素データ全体が、１ラインを構成する画素データである。ここでは、図４の有効画素領域Ａ１の画素データの処理について説明しているが、マージン領域Ａ２等の他の領域の画素データについても有効画素領域Ａ１の画素データとともに処理される。
【０１０２】
１ライン分の画素データがグループ化された後、各グループのデータ長が同じ長さになるように、ペイロードスタッフィングデータが付加される。ペイロードスタッフィングデータは１バイトのデータである。
【０１０３】
図１４の例においては、グループ０の画素データにはペイロードスタッフィングデータが付加されず、破線で囲んで示すように、グループ１〜１５の各画素データには、終端にペイロードスタッフィングデータが１つずつ付加されている。画素データとスタッフィングデータからなるペイロードデータのデータ長（Byte）は下式（３）により表される。
【数３】
2018225533.tif 000005
【０１０４】
式（３）のLineLengthはラインの画素数を表し、BitPixは１画素の画素値を表すビット数を表す。PayloadStuffingはペイロードスタッフィングデータの数を表す。
【０１０５】
図１４に示すように画素データを１６グループに割り当てるとした場合、ペイロードスタッフィングデータの数は下式（４）により表される。式（４）の％は剰余を表す。
【数４】
2018225533.tif 000006
【０１０６】
図１５は、ペイロードデータの他の例を示す図である。
【０１０７】
図１５は、各画素の画素値が１２ビットで表される場合のPixel to Byte変換によって得られた画素データを含むペイロードデータを示している。
【０１０８】
図１５の例においては、画素Ｐ０のMSBを含む画素データがグループ０に割り当てられ、画素Ｐ１のMSBを含む画素データがグループ１に割り当てられ、画素Ｐ０と画素Ｐ１のLSBを含む画素データがグループ２に割り当てられている。画素Ｐ２のMSBを含む画素データ以降の画素データについても、グループ３以降の各グループに順に割り当てられる。画素データを表すブロックのうち、１本の破線が内側に付されているブロックは、Pixel to Byte変換時に、画素Nと画素N+1のLSBを含むようにして生成されたバイト単位の画素データを表す。
【０１０９】
図１５の例においては、グループ０とグループ１の画素データにはペイロードスタッフィングデータが付加されず、グループ２〜１５の各画素データには、終端にペイロードスタッフィングデータが１つずつ付加されている。
【０１１０】
このような構成を有するペイロードデータがPixel to Byte変換部６２からペイロードECC挿入部６３に供給される。
【０１１１】
ペイロードECC挿入部６３は、Pixel to Byte変換部６２から供給されたペイロードデータに基づいて、ペイロードデータの誤り訂正に用いられる誤り訂正符号を計算し、計算により求めた誤り訂正符号であるパリティをペイロードデータに挿入する。誤り訂正符号として、例えばリードソロモン符号が用いられる。なお、誤り訂正符号の挿入はオプションであり、例えば、ペイロードECC挿入部６３によるパリティの挿入と、フッタ生成部７４によるフッタの付加はいずれか一方のみを行うことが可能とされる。
【０１１２】
図１６は、パリティが挿入されたペイロードデータの例を示す図である。
【０１１３】
図１６に示すペイロードデータは、図１５を参照して説明した、各画素の画素値が１２ビットで表される場合のPixel to Byte変換によって得られた画素データを含むペイロードデータである。斜線を付して示すブロックがパリティを表す。
【０１１４】
図１６の例においては、グループ０〜１５の各グループの先頭の画素データから順に１４個選択され、選択された２２４個（２２４バイト）の画素データに基づいて２バイトのパリティが求められている。２バイトのパリティが、その計算に用いられた２２４個の画素データに続けてグループ０，１の１５番目のデータとして挿入され、２２４個の画素データと２バイトのパリティから１つ目のBasic Blockが形成される。
【０１１５】
このように、ペイロードECC挿入部６３においては、基本的に、２２４個の画素データに基づいて２バイトのパリティが生成され、２２４個の画素データに続けて挿入される。
【０１１６】
また、図１６の例においては、１つ目のBasic Blockに続く２２４個の画素データが各グループから順に選択され、選択された２２４個の画素データに基づいて２バイトのパリティが求められている。２バイトのパリティが、その計算に用いられた２２４個の画素データに続けてグループ２，３の２９番目のデータとして挿入され、２２４個の画素データと２バイトのパリティから２つ目のBasic Blockが形成される。
【０１１７】
あるBasic Blockに続く画素データとペイロードスタッフィングデータの数である16×Mが２２４に満たない場合、残っている16×M個のブロック（画素データとペイロードスタッフィングデータ）に基づいて２バイトのパリティが求められる。また、求められた２バイトのパリティがペイロードスタッフィングデータに続けて挿入され、16×M個のブロックと２バイトのパリティからExtra Blockが形成される。
【０１１８】
ペイロードECC挿入部６３は、パリティを挿入したペイロードデータをパケット生成部６４に出力する。パリティの挿入が行われない場合、Pixel to Byte変換部６２からペイロードECC挿入部６３に供給されたペイロードデータは、そのままパケット生成部６４に出力される。
【０１１９】
パケット生成部６４は、ペイロードECC挿入部６３から供給されたペイロードデータに、ヘッダ生成部７２により生成されたヘッダを付加することによってパケットを生成する。フッタ生成部７４によりフッタの生成が行われている場合、パケット生成部６４は、ペイロードデータにフッタを付加することも行う。
【０１２０】
図１７は、ペイロードデータにヘッダを付加した状態を示す図である。
【０１２１】
Ｈ７〜Ｈ０の文字を付して示す２４個のブロックは、ヘッダ情報、またはヘッダ情報のCRC符号である、バイト単位のヘッダデータを表す。図６を参照して説明したように１つのパケットのヘッダには、ヘッダ情報とCRC符号の組が３組含まれる。
【０１２２】
例えばヘッダデータＨ７〜Ｈ２はヘッダ情報（６バイト）であり、ヘッダデータＨ１，Ｈ０はCRC符号（２バイト）である。
【０１２３】
図１７の例においては、グループ０のペイロードデータには１つのヘッダデータＨ７が付加され、グループ１のペイロードデータには１つのヘッダデータＨ６が付加されている。グループ２のペイロードデータには１つのヘッダデータＨ５が付加され、グループ３のペイロードデータには１つのヘッダデータＨ４が付加されている。グループ４のペイロードデータには１つのヘッダデータＨ３が付加され、グループ５のペイロードデータには１つのヘッダデータＨ２が付加されている。グループ６のペイロードデータには１つのヘッダデータＨ１が付加され、グループ７のペイロードデータには１つのヘッダデータＨ０が付加されている。
【０１２４】
また、図１７の例においては、グループ８のペイロードデータには２つのヘッダデータＨ７が付加され、グループ９のペイロードデータには２つのヘッダデータＨ６が付加されている。グループ１０のペイロードデータには２つのヘッダデータＨ５が付加され、グループ１１のペイロードデータには２つのヘッダデータＨ４が付加されている。グループ１２のペイロードデータには２つのヘッダデータＨ３が付加され、グループ１３のペイロードデータには２つのヘッダデータＨ２が付加されている。グループ１４のペイロードデータには２つのヘッダデータＨ１が付加され、グループ１５のペイロードデータには２つのヘッダデータＨ０が付加されている。
【０１２５】
図１８は、ペイロードデータにヘッダとフッタを付加した状態を示す図である。
【０１２６】
Ｆ３〜Ｆ０の文字を付して示す４個のブロックは、フッタとして生成された４バイトのCRC符号であるフッタデータを表す。図１８の例においては、フッタデータＦ３〜Ｆ０が、グループ０からグループ３のそれぞれのペイロードデータに付加されている。
【０１２７】
図１９は、パリティが挿入されたペイロードデータにヘッダを付加した状態を示す図である。
【０１２８】
図１９の例においては、パリティが挿入された図１６のペイロードデータに対して、図１７、図１８の場合と同様にヘッダデータＨ７〜Ｈ０が付加されている。
【０１２９】
パケット生成部６４は、このようにして生成した１パケットを構成するデータであるパケットデータをレーン分配部６５に出力する。レーン分配部６５に対しては、ヘッダデータとペイロードデータからなるパケットデータ、ヘッダデータとペイロードデータとフッタデータからなるパケットデータ、または、ヘッダデータと、パリティが挿入されたペイロードデータからなるパケットデータが供給されることになる。図６のパケット構造は論理的なものであり、リンクレイヤ、物理レイヤにおいては、図６の構造を有するパケットのデータがバイト単位で処理される。
【０１３０】
レーン分配部６５は、パケット生成部６４から供給されたパケットデータを、先頭のデータから順に、Lane0〜7のうちのデータ伝送に用いる各レーンに割り当てる。
【０１３１】
図２０は、パケットデータの割り当ての例を示す図である。
【０１３２】
ここでは、ヘッダデータとペイロードデータとフッタデータからなるパケットデータ（図１８）の割り当てについて説明する。Lane0〜7の８レーンを用いてデータ伝送を行う場合のパケットデータの割り当ての例を白抜き矢印＃１の先に示す。
【０１３３】
この場合、ヘッダデータＨ７〜Ｈ０の３回繰り返しを構成するそれぞれのヘッダデータは、先頭のヘッダデータから順にLane0〜7に割り当てられる。あるヘッダデータがLane7に割り当てられたとき、それ以降のヘッダデータは、Lane0以降の各レーンに順に割り当てられる。Lane0〜7の各レーンには同じヘッダデータが３個ずつ割り当てられることになる。
【０１３４】
また、ペイロードデータは、先頭のペイロードデータから順にLane0〜7に割り当てられる。あるペイロードデータがLane7に割り当てられたとき、それ以降のペイロードデータは、Lane0以降の各レーンに順に割り当てられる。
【０１３５】
フッタデータＦ３〜Ｆ０は、先頭のフッタデータから順に各レーンに割り当てられる。図２０の例においては、ペイロードデータを構成する最後のペイロードスタッフィングデータがLane7に割り当てられており、フッタデータＦ３〜Ｆ０がLane0〜3に１つずつ割り当てられている。
【０１３６】
黒色を付して示すブロックはデータ挿入部７３により生成されたレーンスタッフィングデータを表す。レーンスタッフィングデータは、１パケット分のパケットデータが各レーンに割り当てられた後、各レーンに割り当てられるデータ長が同じ長さになるように、データの数が少ないレーンに割り当てられる。レーンスタッフィングデータは１バイトのデータである。図２０の例においては、データの割り当て数の少ないレーンであるLane4〜7に対して、レーンスタッフィングデータが１つずつ割り当てられている。
【０１３７】
パケットデータがヘッダデータとペイロードデータとフッタデータからなる場合のレーンスタッフィングデータの数は下式（５）により表される。
【数５】
2018225533.tif 000007
【０１３８】
式（５）のLaneNumはレーンの数を表し、PayloadLengthはペイロードデータ長（バイト）を表す。また、FooterLengthはフッタ長（バイト）を表す。
【０１３９】
また、パケットデータが、ヘッダデータと、パリティが挿入されたペイロードデータからなる場合のレーンスタッフィングデータの数は下式（６）により表される。式（６）のParityLengthは、ペイロードに含まれるパリティの総バイト数を表す。
【数６】
2018225533.tif 000008
【０１４０】
Lane0〜5の６レーンを用いてデータ伝送を行う場合のパケットデータの割り当ての例を白抜き矢印＃２の先に示す。
【０１４１】
この場合、ヘッダデータＨ７〜Ｈ０の３回繰り返しを構成するそれぞれのヘッダデータは、先頭のヘッダデータから順にLane0〜5に割り当てられる。あるヘッダデータがLane5に割り当てられたとき、それ以降のヘッダデータは、Lane0以降の各レーンに順に割り当てられる。Lane0〜5の各レーンには４個ずつヘッダデータが割り当てられることになる。
【０１４２】
また、ペイロードデータは、先頭のペイロードデータから順にLane0〜5に割り当てられる。あるペイロードデータがLane5に割り当てられたとき、それ以降のペイロードデータは、Lane0以降の各レーンに順に割り当てられる。
【０１４３】
フッタデータＦ３〜Ｆ０は、先頭のフッタデータから順に各レーンに割り当てられる。図２０の例においては、ペイロードデータを構成する最後のペイロードスタッフィングデータがLane1に割り当てられており、フッタデータＦ３〜Ｆ０がLane2〜5に１つずつ割り当てられている。Lane0〜5のパケットデータの数が同じ数であるから、この場合、レーンスタッフィングデータは用いられない。
【０１４４】
Lane0〜3の４レーンを用いてデータ伝送を行う場合のパケットデータの割り当ての例を白抜き矢印＃３の先に示す。
【０１４５】
この場合、ヘッダデータＨ７〜Ｈ０の３回繰り返しを構成するそれぞれのヘッダデータは、先頭のヘッダデータから順にLane0〜3に割り当てられる。あるヘッダデータがLane3に割り当てられたとき、それ以降のヘッダデータは、Lane0以降の各レーンに順に割り当てられる。Lane0〜3の各レーンには６個ずつヘッダデータが割り当てられることになる。
【０１４６】
また、ペイロードデータは、先頭のペイロードデータから順にLane0〜3に割り当てられる。あるペイロードデータがLane3に割り当てられたとき、それ以降のペイロードデータは、Lane0以降の各レーンに順に割り当てられる。
【０１４７】
フッタデータＦ３〜Ｆ０は、先頭のフッタデータから順に各レーンに割り当てられる。図２０の例においては、ペイロードデータを構成する最後のペイロードスタッフィングデータがLane3に割り当てられており、フッタデータＦ３〜Ｆ０がLane0〜3に１つずつ割り当てられている。Lane0〜3のパケットデータの数が同じ数であるから、この場合、レーンスタッフィングデータは用いられない。
【０１４８】
レーン分配部６５は、このようにして各レーンに割り当てたパケットデータを物理レイヤに出力する。以下、Lane0〜7の８レーンを用いてデータを伝送する場合について主に説明するが、データ伝送に用いるレーンの数が他の数の場合であっても同様の処理が行われる。
【０１４９】
［送信部２２の物理レイヤの構成］
次に、送信部２２の物理レイヤの構成について説明する。
【０１５０】
送信部２２には、物理レイヤの構成として、PHY-TX状態制御部８１、クロック生成部８２、信号処理部８３−０乃至８３−Ｎが設けられる。信号処理部８３−０は、制御コード挿入部９１、8B10Bシンボルエンコーダ９２、同期部９３、および送信部９４から構成される。レーン分配部６５から出力された、Lane0に割り当てられたパケットデータは信号処理部８３−０に入力され、Lane1に割り当てられたパケットデータは信号処理部８３−１に入力される。また、LaneNに割り当てられたパケットデータは信号処理部８３−Ｎに入力される。
【０１５１】
このように、送信部２２の物理レイヤには、信号処理部８３−０乃至８３−Ｎがレーンの数と同じ数だけ設けられ、各レーンを用いて伝送するパケットデータの処理が、信号処理部８３−０乃至８３−Ｎのそれぞれにおいて並行して行われる。信号処理部８３−０の構成について説明するが、信号処理部８３−１乃至８３−Ｎも同様の構成を有する。
【０１５２】
PHY-TX状態制御部８１は、信号処理部８３−０乃至８３−Ｎの各部を制御する。例えば、信号処理部８３−０乃至８３−Ｎにより行われる各処理のタイミングがPHY-TX状態制御部８１により制御される。
【０１５３】
クロック生成部８２は、クロック信号を生成し、信号処理部８３−０乃至８３−Ｎのそれぞれの同期部９３に出力する。
【０１５４】
信号処理部８３−０の制御コード挿入部９１は、レーン分配部６５から供給されたパケットデータに対して制御コードを付加する。制御コードは、予め用意された複数種類のシンボルの中から選択された１つのシンボルにより、または複数種類のシンボルの組み合わせにより表されるコードである。制御コード挿入部９１により挿入される各シンボルは８ビットのデータである。後段の回路で8B10B変換が施されることによって、制御コード挿入部９１により挿入された１シンボルは１０ビットのデータになる。一方、受信部３１においては後述するように受信データに対して10B8B変換が施されるが、受信データに含まれる10B8B変換前の各シンボルは１０ビットのデータであり、10B8B変換後の各シンボルは８ビットのデータになる。
【０１５５】
図２１は、制御コード挿入部９１により付加される制御コードの例を示す図である。
【０１５６】
制御コードには、Idle Code, Start Code, End Code, Pad Code, Sync Code, Deskew Code, Standby Codeがある。
【０１５７】
Idle Codeは、パケットデータの伝送時以外の期間に繰り返し送信されるシンボル群である。Idle Codeは、8B10B CodeであるD CharacterのD00.0（00000000）で表される。
【０１５８】
Start Codeは、パケットの開始を示すシンボル群である。上述したように、Start Codeはパケットの前に付加される。Start Codeは、３種類のK Characterの組み合わせであるK28.5, K27.7, K28.2, K27.7の４シンボルで表される。それぞれのK Characterの値を図２２に示す。
【０１５９】
End Codeは、パケットの終了を示すシンボル群である。上述したように、End Codeはパケットの後ろに付加される。End Codeは、３種類のK Characterの組み合わせであるK28.5, K29.7, K30.7, K29.7の４シンボルで表される。
【０１６０】
Pad Codeは、画素データ帯域とPHY伝送帯域の差を埋めるためにペイロードデータ中に挿入されるシンボル群である。画素データ帯域は、撮像部２１から出力され、送信部２２に入力される画素データの伝送レートであり、PHY伝送帯域は、送信部２２から送信され、受信部３１に入力される画素データの伝送レートである。Pad Codeは、４種類のK Characterの組み合わせであるK23.7, K28.4, K28.6, K28.3の４シンボルで表される。
【０１６１】
図２３は、Pad Codeの挿入の例を示す図である。
【０１６２】
図２３の上段は、Pad Code挿入前の、各レーンに割り当てられたペイロードデータを示し、下段は、Pad Code挿入後のペイロードデータを示す。図２３の例においては、先頭から３番目の画素データと４番目の画素データの間、６番目の画素データと７番目の画素データの間、１２番目の画素データと１３番目の画素データの間にPad Codeが挿入されている。このように、Pad Codeは、Lane0〜7の各レーンのペイロードデータの同じ位置に挿入される。
【０１６３】
Lane0に割り当てられたペイロードデータに対するPad Codeの挿入は信号処理部８３−０の制御コード挿入部９１により行われる。他のレーンに割り当てられたペイロードデータに対するPad Codeの挿入も同様に、信号処理部８３−１乃至８３−Ｎにおいてそれぞれ同じタイミングで行われる。Pad Codeの数は、画素データ帯域とPHY伝送帯域の差と、クロック生成部８２が生成するクロック信号の周波数などに基づいて決定される。
【０１６４】
このように、Pad Codeは、画素データ帯域が狭く、PHY伝送帯域が広い場合に、双方の帯域の差を調整するために挿入される。例えば、Pad Codeが挿入されることによって、画素データ帯域とPHY伝送帯域の差が一定の範囲内に収まるように調整される。
【０１６５】
図２１の説明に戻り、Sync Codeは、送信部２２−受信部３１間のビット同期、シンボル同期を確保するために用いられるシンボル群である。Sync Codeは、K28.5, Any**の２シンボルで表される。Any**は、どの種類のシンボルが用いられてもよいことを表す。Sync Codeは、例えば送信部２２−受信部３１間でパケットデータの伝送が開始される前のトレーニングモード時に繰り返し送信される。
【０１６６】
Deskew Codeは、レーン間のData Skew、すなわち、受信部３１の各レーンで受信されるデータの受信タイミングのずれの補正に用いられるシンボル群である。Deskew Codeは、K28.5, Any**の２シンボルで表される。Deskew Codeを用いたレーン間のData Skewの補正については後述する。
【０１６７】
Standby Codeは、送信部２２の出力がHigh-Z（ハイインピーダンス）などの状態になり、データ伝送が行われなくなることを受信部３１に通知するために用いられるシンボル群である。すなわち、Standby Codeは、パケットデータの伝送を終了し、Standby状態になるときに受信部３１に対して伝送される。Standby Codeは、K28.5, Any**の２シンボルで表される。
【０１６８】
制御コード挿入部９１は、このような制御コードを付加したパケットデータを8B10Bシンボルエンコーダ９２に出力する。
【０１６９】
図２４は、制御コード挿入後のパケットデータの例を示す図である。
【０１７０】
図２４に示すように、信号処理部８３−０乃至８３−Ｎにおいては、それぞれ、パケットデータの前にStart Codeが付加され、ペイロードデータにPad Codeが挿入される。パケットデータの後ろにはEnd Codeが付加され、End Codeの後ろにDeskew Codeが付加される。図２４の例においては、Deskew Codeの後ろにIdle Codeが付加されている。
【０１７１】
8B10Bシンボルエンコーダ９２は、制御コード挿入部９１から供給されたパケットデータ（制御コードが付加されたパケットデータ）に対して8B10B変換を施し、１０ビット単位のデータに変換したパケットデータを同期部９３に出力する。
【０１７２】
同期部９３は、8B10Bシンボルエンコーダ９２から供給されたパケットデータの各ビットを、クロック生成部８２により生成されたクロック信号に従って送信部９４に出力する。なお、送信部２２に同期部９３が設けられないようにしてもよい。この場合、8B10Bシンボルエンコーダ９２から出力されたパケットデータは、送信部９４にそのまま供給される。
【０１７３】
送信部９４は、Lane0を構成する伝送路を介して、同期部９３から供給されたパケットデータを受信部３１に送信する。８レーンを用いてデータ伝送が行われる場合、Lane1〜7を構成する伝送路をも用いてパケットデータが受信部３１に送信される。
【０１７４】
［受信部３１の物理レイヤの構成］
次に、受信部３１の物理レイヤの構成について説明する。
【０１７５】
受信部３１には、物理レイヤの構成として、PHY-RX状態制御部１０１、信号処理部１０２−０乃至１０２−Ｎが設けられる。信号処理部１０２−０は、受信部１１１、クロック生成部１１２、同期部１１３、シンボル同期部１１４、10B8Bシンボルデコーダ１１５、スキュー補正部１１６、および制御コード除去部１１７から構成される。Lane0を構成する伝送路を介して送信されてきたパケットデータは信号処理部１０２−０に入力され、Lane1を構成する伝送路を介して送信されてきたパケットデータは信号処理部１０２−１に入力される。また、LaneNを構成する伝送路を介して送信されてきたパケットデータは信号処理部１０２−Ｎに入力される。
【０１７６】
このように、受信部３１の物理レイヤには、信号処理部１０２−０乃至１０２−Ｎがレーンの数と同じ数だけ設けられ、各レーンを用いて伝送されてきたパケットデータの処理が、信号処理部１０２−０乃至１０２−Ｎのそれぞれにおいて並行して行われる。信号処理部１０２−０の構成について説明するが、信号処理部１０２−１乃至１０２−Ｎも同様の構成を有する。
【０１７７】
受信部１１１は、Lane0を構成する伝送路を介して送信部２２から伝送されてきたパケットデータを表す信号を受信し、クロック生成部１１２に出力する。
【０１７８】
クロック生成部１１２は、受信部１１１から供給された信号のエッジを検出することによってビット同期をとり、エッジの検出周期に基づいてクロック信号を生成する。クロック生成部１１２は、受信部１１１から供給された信号を、クロック信号とともに同期部１１３に出力する。
【０１７９】
同期部１１３は、クロック生成部１１２により生成されたクロック信号に従って、受信部１１１において受信された信号のサンプリングを行い、サンプリングによって得られたパケットデータをシンボル同期部１１４に出力する。クロック生成部１１２と同期部１１３によりCDR(Clock Data Recovery)の機能が実現される。
【０１８０】
シンボル同期部１１４は、パケットデータに含まれる制御コードを検出することによって、または制御コードに含まれる一部のシンボルを検出することによってシンボル同期をとる。例えば、シンボル同期部１１４は、Start Code, End Code, Deskew Codeに含まれるK28.5のシンボルを検出し、シンボル同期をとる。シンボル同期部１１４は、各シンボルを表す１０ビット単位のパケットデータを10B8Bシンボルデコーダ１１５に出力する。
【０１８１】
また、シンボル同期部１１４は、パケットデータの伝送が開始される前のトレーニングモード時に送信部２２から繰り返し送信されてくるSync Codeに含まれるシンボルの境界を検出することによってシンボル同期をとる。
【０１８２】
10B8Bシンボルデコーダ１１５は、シンボル同期部１１４から供給された１０ビット単位のパケットデータに対して10B8B変換を施し、８ビット単位のデータに変換したパケットデータをスキュー補正部１１６に出力する。
【０１８３】
スキュー補正部１１６は、10B8Bシンボルデコーダ１１５から供給されたパケットデータからDeskew Codeを検出する。スキュー補正部１１６によるDeskew Codeの検出タイミングの情報はPHY-RX状態制御部１０１に供給される。
【０１８４】
また、スキュー補正部１１６は、Deskew Codeのタイミングを、PHY-RX状態制御部１０１から供給された情報により表されるタイミングに合わせるようにしてレーン間のData Skewを補正する。PHY-RX状態制御部１０１からは、信号処理部１０２−０乃至１０２−Ｎのそれぞれにおいて検出されたDeskew Codeのタイミングのうち、最も遅いタイミングを表す情報が供給されてくる。
【０１８５】
図２５は、Deskew Codeを用いたレーン間のData Skewの補正の例を示す図である。
【０１８６】
図２５の例においては、Lane0〜7の各レーンにおいて、Sync Code, Sync Code,…,Idle Code, Deskew Code, Idle Code, …, Idle Code, Deskew Codeの伝送が行われ、それぞれの制御コードが受信部３１において受信されている。同じ制御コードの受信タイミングがレーン毎に異なり、レーン間のData Skewが生じている状態になっている。
【０１８７】
この場合、スキュー補正部１１６は、１つ目のDeskew CodeであるDeskew Code Ｃ１を検出し、Deskew Code Ｃ１の先頭のタイミングを、PHY-RX状態制御部１０１から供給された情報により表される時刻ｔ１に合わせるように補正する。PHY-RX状態制御部１０１からは、Lane0〜7の各レーンにおいてDeskew Code Ｃ１が検出されたタイミングのうち、最も遅いタイミングであるLane7においてDeskew Code Ｃ１が検出された時刻ｔ１の情報が供給されてくる。
【０１８８】
また、スキュー補正部１１６は、２つ目のDeskew CodeであるDeskew Code Ｃ２を検出し、Deskew Code Ｃ２の先頭のタイミングを、PHY-RX状態制御部１０１から供給された情報により表される時刻ｔ２に合わせるように補正する。PHY-RX状態制御部１０１からは、Lane0〜7の各レーンにおいてDeskew Code Ｃ２が検出されたタイミングのうち、最も遅いタイミングであるLane7においてDeskew Code Ｃ２が検出された時刻ｔ２の情報が供給されてくる。
【０１８９】
信号処理部１０２−１乃至１０２−Ｎのそれぞれにおいて同様の処理が行われることによって、図２５の矢印＃１の先に示すようにレーン間のData Skewが補正される。
【０１９０】
スキュー補正部１１６は、Data Skewを補正したパケットデータを制御コード除去部１１７に出力する。
【０１９１】
制御コード除去部１１７は、パケットデータに付加された制御コードを除去し、Start CodeからEnd Codeまでの間のデータをパケットデータとしてリンクレイヤに出力する。
【０１９２】
PHY-RX状態制御部１０１は、信号処理部１０２−０乃至１０２−Ｎの各部を制御し、レーン間のData Skewの補正などを行わせる。また、PHY-RX状態制御部１０１は、所定のレーンで伝送エラーが起きて制御コードが失われた場合、失われた制御コードに代えて、他のレーンで伝送されてきた制御コードを付加することによって制御コードの誤り訂正を行う。
【０１９３】
［受信部３１のリンクレイヤの構成］
次に、受信部３１のリンクレイヤの構成について説明する。
【０１９４】
受信部３１には、リンクレイヤの構成として、LINK-RXプロトコル管理部１２１、レーン統合部１２２、パケット分離部１２３、ペイロードエラー訂正部１２４、およびByte to Pixel変換部１２５が設けられる。LINK-RXプロトコル管理部１２１は、状態制御部１３１、ヘッダエラー訂正部１３２、データ除去部１３３、およびフッタエラー検出部１３４から構成される。
【０１９５】
レーン統合部１２２は、物理レイヤの信号処理部１０２−０乃至１０２−Ｎから供給されたパケットデータを、送信部２２のレーン分配部６５による各レーンへの分配順と逆順で並び替えることによって統合する。
【０１９６】
例えば、レーン分配部６５によるパケットデータの分配が図２０の矢印＃１の先に示すようにして行われている場合、各レーンのパケットデータの統合が行われることによって図２０の左側のパケットデータが取得される。各レーンのパケットデータの統合時、データ除去部１３３による制御に従って、レーンスタッフィングデータがレーン統合部１２２により除去される。レーン統合部１２２は、統合したパケットデータをパケット分離部１２３に出力する。
【０１９７】
パケット分離部１２３は、レーン統合部１２２により統合された１パケット分のパケットデータを、ヘッダデータを構成するパケットデータとペイロードデータを構成するパケットデータに分離する。パケット分離部１２３は、ヘッダデータをヘッダエラー訂正部１３２に出力し、ペイロードデータをペイロードエラー訂正部１２４に出力する。
【０１９８】
また、パケット分離部１２３は、パケットにフッタが含まれている場合、１パケット分のデータを、ヘッダデータを構成するパケットデータとペイロードデータを構成するパケットデータとフッタデータを構成するパケットデータに分離する。パケット分離部１２３は、ヘッダデータをヘッダエラー訂正部１３２に出力し、ペイロードデータをペイロードエラー訂正部１２４に出力する。また、パケット分離部１２３は、フッタデータをフッタエラー検出部１３４に出力する。
【０１９９】
ペイロードエラー訂正部１２４は、パケット分離部１２３から供給されたペイロードデータにパリティが挿入されている場合、パリティに基づいて誤り訂正演算を行うことによってペイロードデータのエラーを検出し、検出したエラーの訂正を行う。例えば、図１６に示すようにしてパリティが挿入されている場合、ペイロードエラー訂正部１２４は、１つ目のBasic Blockの最後に挿入されている２つのパリティを用いて、パリティの前にある２２４個の画素データの誤り訂正を行う。
【０２００】
ペイロードエラー訂正部１２４は、各Basic Block, Extra Blockを対象として誤り訂正を行うことによって得られた誤り訂正後の画素データをByte to Pixel変換部１２５に出力する。パケット分離部１２３から供給されたペイロードデータにパリティが挿入されていない場合、パケット分離部１２３から供給されたペイロードデータはそのままByte to Pixel変換部１２５に出力される。
【０２０１】
Byte to Pixel変換部１２５は、ペイロードエラー訂正部１２４から供給されたペイロードデータに含まれるペイロードスタッフィングデータをデータ除去部１３３による制御に従って除去する。
【０２０２】
また、Byte to Pixel変換部１２５は、ペイロードスタッフィングデータを除去して得られたバイト単位の各画素のデータを、８ビット、１０ビット、１２ビット、１４ビット、または１６ビット単位の画素データに変換するByte to Pixel変換を行う。Byte to Pixel変換部１２５においては、図９乃至図１３を参照して説明した、送信部２２のPixel to Byte変換部６２によるPixel to Byte変換と逆の変換が行われる。
【０２０３】
Byte to Pixel変換部１２５は、Byte to Pixel変換によって得られた８ビット、１０ビット、１２ビット、１４ビット、または１６ビット単位の画素データをフレームデータ出力部１４１に出力する。フレームデータ出力部１４１においては、例えば、ヘッダ情報のLine Validにより特定される有効画素の各ラインがByte to Pixel変換部１２５により得られた画素データに基づいて生成され、ヘッダ情報のLine Numberに従って各ラインが並べられることによって１フレームの画像が生成される。
【０２０４】
LINK-RXプロトコル管理部１２１の状態制御部１３１は、受信部３１のリンクレイヤの状態を管理する。
【０２０５】
ヘッダエラー訂正部１３２は、パケット分離部１２３から供給されたヘッダデータに基づいてヘッダ情報とCRC符号の組を３組取得する。ヘッダエラー訂正部１３２は、ヘッダ情報とCRC符号の組の各組を対象として、ヘッダ情報のエラーを検出するための演算である誤り検出演算を、そのヘッダ情報と同じ組のCRC符号を用いて行う。
【０２０６】
また、ヘッダエラー訂正部１３２は、それぞれの組のヘッダ情報の誤り検出結果と、誤り検出演算により求められたデータの比較結果とのうちの少なくともいずれかに基づいて正しいヘッダ情報を推測し、正しいと推測したヘッダ情報と復号結果を出力する。誤り検出演算により求められたデータは、ヘッダ情報にCRCの生成多項式を適用することによって求められた値である。また、復号結果は、復号成功または復号失敗を表す情報である。
【０２０７】
ヘッダ情報とCRC符号の３つの組をそれぞれ組１、組２、組３とする。この場合、ヘッダエラー訂正部１３２は、組１を対象とした誤り検出演算によって、組１のヘッダ情報にエラーがあるか否か（誤り検出結果）と、誤り検出演算により求められたデータであるデータ１を取得する。また、ヘッダエラー訂正部１３２は、組２を対象とした誤り検出演算によって、組２のヘッダ情報にエラーがあるか否かと、誤り検出演算により求められたデータであるデータ２を取得する。ヘッダエラー訂正部１３２は、組３を対象とした誤り検出演算によって、組３のヘッダ情報にエラーがあるか否かと、誤り検出演算により求められたデータであるデータ３を取得する。
【０２０８】
また、ヘッダエラー訂正部１３２は、データ１とデータ２が一致するか否か、データ２とデータ３が一致するか否か、データ３とデータ１が一致するか否かをそれぞれ判定する。
【０２０９】
例えば、ヘッダエラー訂正部１３２は、組１、組２、組３を対象としたいずれの誤り検出演算によっても誤りが検出されず、誤り検出演算によって求められたデータのいずれの比較結果もが一致した場合、復号結果として、復号成功を表す情報を選択する。また、ヘッダエラー訂正部１３２は、いずれのヘッダ情報も正しいと推測し、組１のヘッダ情報、組２のヘッダ情報、組３のヘッダ情報のうちのいずれかを出力情報として選択する。
【０２１０】
一方、ヘッダエラー訂正部１３２は、組１を対象とした誤り検出演算でだけ誤りが検出されなかった場合、復号結果として、復号成功を表す情報を選択するとともに、組１のヘッダ情報が正しいと推測し、組１のヘッダ情報を出力情報として選択する。
【０２１１】
また、ヘッダエラー訂正部１３２は、組２を対象とした誤り検出演算でだけ誤りが検出されなかった場合、復号結果として、復号成功を表す情報を選択するとともに、組２のヘッダ情報が正しいと推測し、組２のヘッダ情報を出力情報として選択する。
【０２１２】
ヘッダエラー訂正部１３２は、組３を対象とした誤り検出演算でだけ誤りが検出されなかった場合、復号結果として、復号成功を表す情報を選択するとともに、組３のヘッダ情報が正しいと推測し、組３のヘッダ情報を出力情報として選択する。
【０２１３】
ヘッダエラー訂正部１３２は、以上のようにして選択した復号結果と出力情報をレジスタ１４２に出力し、記憶させる。このように、ヘッダエラー訂正部１３２によるヘッダ情報の誤り訂正は、複数のヘッダ情報の中から、エラーのないヘッダ情報をCRC符号を用いて検出し、検出したヘッダ情報を出力するようにして行われる。
【０２１４】
データ除去部１３３は、レーン統合部１２２を制御してレーンスタッフィングデータを除去し、Byte to Pixel変換部１２５を制御してペイロードスタッフィングデータを除去する。
【０２１５】
フッタエラー検出部１３４は、パケット分離部１２３から供給されたフッタデータに基づいて、フッタに格納されたCRC符号を取得する。フッタエラー検出部１３４は、取得したCRC符号を用いて誤り検出演算を行い、ペイロードデータのエラーを検出する。フッタエラー検出部１３４は、誤り検出結果を出力し、レジスタ１４２に記憶させる。
【０２１６】
［イメージセンサ１１とDSP１２の動作］
次に、以上のような構成を有する送信部２２と受信部３１の一連の処理について説明する。
【０２１７】
はじめに、図２６のフローチャートを参照して、伝送システム１を有する撮像装置の動作について説明する。図２６の処理は、例えば、撮像装置に設けられたシャッタボタンが押されるなどして撮像の開始が指示されたときに開始される。
【０２１８】
ステップＳ１において、イメージセンサ１１の撮像部２１は撮像を行う。撮像部２１のフレームデータ入力部５２（図５）は、撮像によって得られた１フレームの画像を構成する画素データを、１画素のデータずつ順に出力する。
【０２１９】
ステップＳ２において、送信部２２によりデータ送信処理が行われる。データ送信処理により、１ライン分の画素データをペイロードに格納したパケットが生成され、パケットを構成するパケットデータが受信部３１に対して送信される。データ送信処理については図２７のフローチャートを参照して後述する。
【０２２０】
ステップＳ３において、受信部３１によりデータ受信処理が行われる。データ受信処理により、送信部２２から送信されてきたパケットデータが受信され、ペイロードに格納されている画素データが画像処理部３２に出力される。データ受信処理については図２８のフローチャートを参照して後述する。
【０２２１】
ステップＳ２において送信部２２により行われるデータ送信処理と、ステップＳ３において受信部３１により行われるデータ受信処理は、１ライン分の画素データを対象として交互に行われる。すなわち、ある１ラインの画素データがデータ送信処理によって送信されたとき、データ受信処理が行われ、データ受信処理によって１ラインの画素データが受信されたとき、次の１ラインの画素データを対象としてデータ送信処理が行われる。送信部２２によるデータ送信処理と、受信部３１によるデータ受信処理は、適宜、時間的に並行して行われることもある。ステップＳ４において、画像処理部３２のフレームデータ出力部１４１は、１フレームの画像を構成する全てのラインの画素データの送受信が終了したか否かを判定し、終了していないと判定した場合、ステップＳ２以降の処理を繰り返し行わせる。
【０２２２】
１フレームの画像を構成する全てのラインの画素データの送受信が終了したとステップＳ４において判定した場合、ステップＳ５において、画像処理部３２のフレームデータ出力部１４１は、受信部３１から供給された画素データに基づいて１フレームの画像を生成する。
【０２２３】
ステップＳ６において、画像処理部３２は、１フレームの画像を用いて画像処理を行い、処理を終了させる。
【０２２４】
次に、図２７のフローチャートを参照して、図２６のステップＳ２において行われるデータ送信処理について説明する。
【０２２５】
ステップＳ１１において、ヘッダ生成部７２は、Frame Start, Frame End, Line Valid, Line Number, Reservedからなるヘッダ情報を生成する。
【０２２６】
ステップＳ１２において、ヘッダ生成部７２は、ヘッダ情報を生成多項式に適用してCRC符号を計算する。
【０２２７】
ステップＳ１３において、ヘッダ生成部７２は、ヘッダ情報にCRC符号を付加することによってヘッダ情報とCRC符号の組を生成し、同じヘッダ情報とCRC符号の組を３組繰り返して配置することによってヘッダを生成する。
【０２２８】
ステップＳ１４において、Pixel to Byte変換部６２は、フレームデータ入力部５２から供給された画素データを取得し、Pixel to Byte変換を行う。Pixel to Byte変換部６２は、Pixel to Byte変換によって得られたバイト単位の画素データのグループ化、ペイロードスタッフィングデータの付加などを行うことによって生成したペイロードデータを出力する。ペイロードデータに対しては、適宜、ペイロードECC挿入部６３によりパリティが挿入される。
【０２２９】
ステップＳ１５において、パケット生成部６４は、１ライン分の画素データを含むペイロードデータと、ヘッダ生成部７２により生成されたヘッダに基づいてパケットを生成し、１パケットを構成するパケットデータを出力する。
【０２３０】
ステップＳ１６において、レーン分配部６５は、パケット生成部６４から供給されたパケットデータを、データ伝送に用いられる複数のレーンに割り当てる。
【０２３１】
ステップＳ１７において、制御コード挿入部９１は、レーン分配部６５から供給されたパケットデータに制御コードを付加する。
【０２３２】
ステップＳ１８において、8B10Bシンボルエンコーダ９２は、制御コードが付加されたパケットデータの8B10B変換を行い、１０ビット単位のデータに変換したパケットデータを出力する。
【０２３３】
ステップＳ１９において、同期部９３は、8B10Bシンボルエンコーダ９２から供給されたパケットデータを、クロック生成部８２により生成されたクロック信号に従って出力し、送信部９４から送信させる。ステップＳ１７乃至Ｓ１９の処理は信号処理部８３−０乃至８３−Ｎにより並行して行われる。１ライン分の画素データの送信が終了したとき、図２６のステップＳ２に戻りそれ以降の処理が行われる。
【０２３４】
次に、図２８のフローチャートを参照して、図２６のステップＳ３において行われるデータ受信処理について説明する。
【０２３５】
ステップＳ３１において、受信部１１１は、送信部２２から伝送されてきたパケットデータを表す信号を受信する。ステップＳ３１乃至Ｓ３６の処理は信号処理部１０２−０乃至１０２−Ｎにより並行して行われる。
【０２３６】
ステップＳ３２において、クロック生成部１１２は、受信部１１１から供給された信号のエッジを検出することによってビット同期をとる。同期部１１３は、受信部１１１において受信された信号のサンプリングを行い、パケットデータをシンボル同期部１１４に出力する。
【０２３７】
ステップＳ３３において、シンボル同期部１１４は、パケットデータに含まれる制御コードを検出するなどしてシンボル同期をとる。
【０２３８】
ステップＳ３４において、10B8Bシンボルデコーダ１１５は、シンボル同期後のパケットデータに対して10B8B変換を施し、８ビット単位のデータに変換したパケットデータを出力する。
【０２３９】
ステップＳ３５において、スキュー補正部１１６は、Deskew Codeを検出し、上述したように、Deskew CodeのタイミングをPHY-RX状態制御部１０１から供給された情報により表されるタイミングに合わせるようにしてレーン間のData Skewを補正する。
【０２４０】
ステップＳ３６において、制御コード除去部１１７は、パケットデータに付加された制御コードを除去する。
【０２４１】
ステップＳ３７において、レーン統合部１２２は、信号処理部１０２−０乃至１０２−Ｎから供給されたパケットデータを統合する。
【０２４２】
ステップＳ３８において、パケット分離部１２３は、レーン統合部１２２により統合されたパケットデータを、ヘッダデータを構成するパケットデータとペイロードデータを構成するパケットデータに分離する。
【０２４３】
ステップＳ３９において、ヘッダエラー訂正部１３２は、パケット分離部１２３により分離されたヘッダデータに含まれるヘッダ情報とCRC符号の各組を対象としてCRC符号を用いた誤り検出演算を行う。また、ヘッダエラー訂正部１３２は、各組の誤り検出結果と、誤り検出演算により求められたデータの比較結果とに基づいてエラーのないヘッダ情報を選択し、出力する。
【０２４４】
ステップＳ４０において、Byte to Pixel変換部１２５は、ペイロードデータのByte to Pixel変換を行い、８ビット、１０ビット、１２ビット、１４ビット、または１６ビット単位の画素データを出力する。Byte to Pixel変換の対象となるペイロードデータに対しては、適宜、パリティを用いた誤り訂正がペイロードエラー訂正部１２４により行われる。
【０２４５】
１ライン分の画素データの処理が終了したとき、図２６のステップＳ３に戻りそれ以降の処理が行われる。
【０２４６】
イメージセンサ１１とDSP１２の間でのデータ伝送は、以上のように、１フレームの１ラインが１パケットに相当するパケットフォーマットを用いて行われる。
【０２４７】
イメージセンサ１１とDSP１２間のデータ伝送に用いられるパケットフォーマットは、ヘッダ情報や、Start Code, End Code等のパケット境界を示す制御コードの伝送を最小限に抑えるフォーマットといえ、伝送効率の低下を防ぐことが可能になる。仮に、１パケットのペイロードに格納される画素データが１ラインより少ないパケットフォーマットを採用した場合、１フレーム全体の画素データを伝送するためにはより多くのパケットを伝送する必要があり、伝送するヘッダ情報や制御コードの数が多くなる分、伝送効率が低下してしまう。
【０２４８】
また、伝送効率の低下を防ぐことによって伝送レイテンシを抑えることが可能となり、大量の画像データを高速に伝送する必要がある高画素・高フレームレートのインタフェースを実現することができる。
【０２４９】
伝送の信頼度／冗長度を上げて受信部３１側で誤り訂正を行うことを前提にしたパケットフォーマットを採用することによって、ヘッダ情報の伝送エラー対策を確保することが可能になる。Frame/Line（V/H）の同期情報等の伝送がヘッダ情報を用いて行われるため、ヘッダ情報が伝送エラーで失われると、システム上、大きな不具合となる可能性があるが、そのようなことを防ぐことができる。
【０２５０】
また、ヘッダ情報の伝送エラー対策を確保するための実装コストや消費電力の増大を抑えることもできる。すなわち、イメージセンサ１１とDSP１２間のデータ伝送に用いられるパケットフォーマットは、CRC符号が付加されていることで、ヘッダ情報の伝送エラーの有無をDSP１２において検出することができるようになっている。また、ヘッダ情報とCRC符号の組を３組伝送することで、ヘッダ情報の伝送エラーが生じた場合にDSP１２において正しいヘッダ情報に訂正することができるようになっている。
【０２５１】
仮に、ヘッダ情報の伝送エラー対策として誤り訂正符号を用いるとした場合、誤り訂正符号の計算を行う回路を送信部２２に用意するとともに、誤り訂正演算を行う回路を受信部３１に用意する必要があることになる。ヘッダ情報に付加されるのは誤り検出符号であるCRC符号であるため、誤り訂正に関する演算を行う回路を用意する場合に較べて、回路規模、消費電力を小さくすることができる。また、ヘッダ情報の誤りを検出した場合にヘッダ情報の再送を受信部３１が送信部２２に対して要求することも行われないため、再送要求のための逆方向の伝送路を用意する必要がない。
【０２５２】
冗長度を上げ、8B10Bコードの複数のK Characterを組み合わせて制御コードを構成することによって、制御コードのエラー確率を低減させることができ、これにより、比較的簡単な回路で制御コードの伝送エラー対策を確保することが可能になる。
【０２５３】
具体的には、Start Codeには３種類のK Characterを４シンボル組み合わせて用いているが、少なくともK28.5以外のシンボルを検出できれば受信部３１においてStart Codeを特定することができ、伝送エラーに対する耐性が高いといえる。End Codeについても同様である。
【０２５４】
また、Pad Codeに４種類のK Characterを組み合わせて用いているが、他の制御コードより多くの種類のK Characterを割り当てることによって、他の制御コードよりエラー耐性を上げることが可能になる。すなわち、４種類のうちの１種類のシンボルを検出できれば受信部３１においてPad Codeを特定することができる。Pad Codeは、伝送頻度がStart CodeやEnd Codeなどよりも高いため、よりエラー耐性を上げることができる構造を持たせている。
【０２５５】
さらに、レーン毎に、同じ制御コードを同じタイミングで伝送することによって、１つのレーンで伝送エラーが起きて制御コードが失われた場合でも、他のレーンの制御コードを使って、エラーとなった制御コードを再現することができる。
【０２５６】
また、K Characterの数が限られているため、必要最小限のK Characterを組合せてそれぞれの制御コードを構成するようになされている。例えば、繰り返し送信することによって伝送エラーを比較的許容できるSync Code, Deskew Code, Standby Codeについては、K Characterを追加で割り当てる必要がないようなデータ構造を用いている。
【０２５７】
再同期させるために必要な制御コードが１パケット（１ライン）毎に割り当てられているため、静電気等の外乱やノイズなどによりビット同期が外れてしまった場合に再同期を迅速にとることができる。また、同期外れによる伝送エラーの影響を最小限に抑えることができる。
【０２５８】
具体的には、クロック生成部１１２と同期部１１３により実現されるCDRにおいて8B10B変換後のビットデータの遷移／エッジを検出することでビット同期をとることができる。送信部２２がデータを送り続けていれば、CDRロック時間として想定された期間内でビット同期をとることができることになる。
【０２５９】
また、シンボル同期が外れてしまった場合でも、特定のK Character（K28.5）をシンボル同期部１１４において検出することによって再同期を迅速にとることができる。K28.5はStart Code, End Code, Deskew Codeにそれぞれ用いられているから、１パケット分のパケットデータの伝送期間中に、３箇所でシンボル同期をとることが可能になる。
【０２６０】
また、Deskew Codeを用いてレーン間のData Skewを補正することができるようにすることによって、レーン間の同期をとることもできる。
【０２６１】
リンクレイヤにおいて、１６個ずつなどのグループ単位（図１４の例の場合、１６バイト単位）で各パケットデータが並列処理されるようにすることによって、１クロック周期に１つずつパケットデータを処理する場合に較べて、回路規模やメモリ量を抑えることができる。実装上、パケットデータを１つずつ処理する場合と所定の単位毎にまとめて処理する場合とで、後者の方が回路規模等を抑えることができる。回路規模を抑えることができることによって、消費電力を抑えることも可能になる。
【０２６２】
また、レーン割り当ての際、連続するパケットデータを異なるレーンに割り当てることによってエラー耐性を高めることができる。あるレーンにおいてパリティの誤り訂正能力を超えた数の連続するパケットデータに跨ってエラーが生じた場合であっても、受信部３１においてレーン結合が行われることによって、エラーが生じたパケットデータの位置が分散することになり、パリティを用いたエラー訂正が可能になることがある。パリティによる誤り訂正能力はパリティ長により定まる。
【０２６３】
さらに、物理レイヤに近い方を下位として、レーン分配・レーン統合より上位でECC処理を行うようにすることによって、送信部２２と受信部３１の回路規模を削減することが可能になる。例えば、送信部２２において、パケットデータの各レーンへの割り当てが行われた後にペイロードにECCのパリティが挿入されるとした場合、ペイロードECC挿入部をレーン毎に用意する必要があり、回路規模が大きくなってしまうがそのようなことを防ぐことができる。
【０２６４】
物理レイヤにおいてはパケットデータの並列処理が複数の回路で行われるが、PHY-TX状態制御部８１やクロック生成部８２については共通化することによって、それらの回路をレーン毎に用意する場合に較べて回路の簡素化を図ることができる。また、レーン毎に異なる制御コードを伝送しないプロトコルを用いることによって、各レーンのパケットデータを処理する回路の簡素化を図ることができる。
【０２６５】
［レーン数の切り替え］
各レーンにおいて同じ制御コードを同じタイミングで伝送することは、通常のデータ伝送時だけでなく、例えばレーン数を切り替える場合にも行われる。レーン数を切り替える場合においても、アクティブなレーン（データ伝送に用いられるレーン）の状態は全て同じ状態になる。
【０２６６】
図２９は、レーン数を切り替える場合の制御シーケンスを示す図である。
【０２６７】
図２９の右側に垂直同期信号（XVS）、水平同期信号（XHS）のタイミングを示す。垂直同期信号が検出される時刻ｔ１までの間に１フレームの画像を構成する各ラインの画素データが水平同期信号に従って伝送され、時刻ｔ１のタイミングで、アクティブなレーンを４レーンから２レーンに変更する場合について説明する。時刻ｔ１までは、４つのレーンを用いてデータ伝送が行われている。
【０２６８】
図２９のほぼ中央には縦方向に各レーンの状態を示している。「PIX DATA」は、その文字が付されているレーンにおいて画素データの伝送が行われていることを表す。「PIX DATA」に続く「E」、「BLK」、「S」は、それぞれ、Frame End、ブランキング期間、Frame Startを表す。
【０２６９】
時刻ｔ１までの１フレーム期間に伝送するフレームの画素データの伝送が終了した場合、ステップＳ８１において、画像処理部３２は、受信部３１に対してレーン数を４から２に切り替えることを指示する。画像処理部３２による指示はステップＳ７１において受信部３１により受信される。
【０２７０】
時刻ｔ１になったとき、ステップＳ８２において、画像処理部３２は、イメージセンサ１１の撮像部２１に対して、モードチェンジを要求する。撮像部２１に対して送信されるモードチェンジの要求には、レーン数を４から２に切り替えることを表す情報も含まれている。図１等には示していないが、撮像部２１と画像処理部３２の間には、シャッタスピード、ゲインなどの撮像に関する設定値の情報を画像処理部３２が撮像部２１に対して送信するための伝送路が設けられている。モードチェンジの要求もこの伝送路を介して撮像部２１に送信される。
【０２７１】
ステップＳ５１において、撮像部２１は、画像処理部３２からのモードチェンジの要求を受信し、ステップＳ５２において、送信部２２に対してレーン数を４から２に切り替えることを指示する。撮像部２１による指示はステップＳ６１において送信部２２により受信される。
【０２７２】
送信部２２と受信部３１の間ではStandby Sequenceが行われ、Lane0〜3を使ってStandby Codeが送信部２２から受信部３１に繰り返し伝送される。Standby Sequenceが終了したとき、ステップＳ７２において、受信部３１から状態の検出結果が出力され、ステップＳ８３において画像処理部３２により受信される。また、アクティブな状態を維持するLane0とLane1についてはLowの状態となり、データ伝送を終了するLane2とLane3についてはHigh-Zの状態となる。
【０２７３】
送信部２２と受信部３１の間ではTraining Sequenceが行われ、Lane0とLane1を使ってSync Codeが送信部２２から受信部３１に繰り返し伝送される。受信部３１においてはビット同期が確保され、Sync Codeが検出されることによってシンボル同期が確保される。
【０２７４】
Training Sequenceが終了したとき、ステップＳ７３において、受信部３１は、画像処理部３２に対して準備が完了したことを通知する。受信部３１による通知はステップＳ８４において画像処理部３２により受信され、レーン数を切り替える場合の一連の制御シーケンスが終了する。
【０２７５】
このように、レーン数を切り替える制御シーケンスにおいては、続けてデータ伝送に用いられるLane0,1と同じ状態になるように、データ伝送を終了するLane2,3においてもStandby Sequence時にStandby Codeが伝送される。例えば、Lane2,3については、Standby Codeの伝送を行わないでそのままHigh-Zの状態にすることも考えられるが、続けてデータ伝送に用いられるレーンと異なる状態になってしまい、制御が複雑になる。
【０２７６】
［フレームフォーマットの変形例］
図３０は、イメージセンサ１１−DSP１２間のデータ伝送に用いられるフレームフォーマットの他の例を示す図である。上述した説明と重複する説明については適宜省略する。
【０２７７】
図３０に示すフレームフォーマットは、各ラインの画像データに付加されるヘッダに太線Ｌ１１で囲むEmbedded Line, Data ID, Region Numberの３つのデータが追加されている点で図４のフォーマットと異なる。図５のヘッダ生成部７２によりこれらの情報が生成され、ヘッダに付加されることになる。
【０２７８】
図３１は、図３０のフレームフォーマットの１パケットを拡大して示す図である。１つのパケットは、ヘッダと、１ライン分の画素データであるペイロードデータから構成される。パケットにはフッタが付加されることもある。各パケットの先頭にはStart Codeが付加され、後ろにはEnd Codeが付加される。
【０２７９】
ヘッダ情報には、上述したFrame Start, Frame End, Line Valid, Line Numberに加えて、ライン情報としてのEmbedded Line、データ識別としてのData ID、および領域情報としてのRegion Numberが含まれる。各情報の内容を図３２に示す。
【０２８０】
Embedded Lineは、Embedded Dataが挿入されているラインの伝送に用いられるパケットであるのか否かを表す１ビットの情報である。例えば、Embedded Dataを含むラインの伝送に用いられるパケットのヘッダのEmbedded Lineには１の値が設定され、他のラインの伝送に用いられるパケットのヘッダのEmbedded Lineには０の値が設定される。上述したように、撮像に関する設定値の情報が、Embedded Dataとして前ダミー領域Ａ３や後ダミー領域Ａ４の所定のラインに挿入される。
【０２８１】
Data IDは、マルチストリーム伝送におけるデータのIDやデータ種別を示すＰビットの情報である。Ｐビットは１ビット以上の所定の数のビットを表す。マルチストリーム伝送は、１つの送信部と１つの受信部の組を複数用いて行われるデータ伝送である。
【０２８２】
Region Numberは、ペイロードに格納されている画素データが、撮像部２１のどの領域のデータであるのかを示す１ビットの情報である。これらの３つのデータが追加されることによって、Reservedは３０−Ｐビットになる。
【０２８３】
＜２．Mode Changeについて＞
ここで、Mode Change（モードチェンジ）について説明する。Mode Changeは、データ伝送のモードの内容を規定する、上述したレーン数などのパラメータの変更時に行われる。
【０２８４】
［（１）通常のMode Change］
・Mode Change
図３３は、Mode Changeのシーケンスの例を示す図である。
【０２８５】
図３３の左側に縦に並べて示す３つのフレームは、Mode Change時に伝送されるデータのフレームフォーマットを示す。図３３の上下方向が時間方向を示す。Mode Change時に行われる動作のうち、イメージセンサ１１とDSP１２の主な動作について説明する。
【０２８６】
左端に示す垂直同期信号（XVS）により規定される時刻ｔ５１〜ｔ５２、時刻ｔ５２〜ｔ５３、および時刻ｔ５３〜ｔ５４の各期間が、各フレームの伝送期間に相当する。各フレームを構成するそれぞれのラインが、水平同期信号（XHS）のタイミングに従って１パケットを用いて伝送される。
【０２８７】
図３４は、図３３の１フレーム目を拡大して示す図である。
【０２８８】
図３４の例においては、時刻ｔ５１から時刻ｔ６１までの間、図４の前ダミー領域Ａ３のデータに相当するBlanking Dataをペイロードに格納したパケットが伝送される。
【０２８９】
また、時刻ｔ６１から時刻ｔ６２までの間、Embedded Dataをペイロードに格納したパケットが伝送され、時刻ｔ６２から時刻ｔ６３までの間、各ラインの画素データをペイロードに格納したパケットが伝送される。時刻ｔ６３から時刻ｔ５２までの間、図４の後ダミー領域Ａ４のデータに相当するBlanking Dataをペイロードに格納したパケットが伝送される。
【０２９０】
各パケットは、ペイロードの前にヘッダを付加することによって構成される。それぞれのパケットの前にはStart Codeが付加され、後ろにはEnd Codeが付加される。End Codeの後ろにはDeskew CodeとIdle Codeが付加される。
【０２９１】
図３３の右側のシーケンス図における白抜き矢印＃１１は、このような１フレーム目のデータの送受信が送信部２２と受信部３１の間で行われていることを示す。２フレーム目、３フレーム目についても、上のラインから順に、１ラインずつ伝送される。
【０２９２】
１フレーム目の最後のラインの伝送が終了した時刻ｔ５２のタイミングのステップＳ１３１において、DSP１２の画像処理部３２は、受信部３１に対してConfigを出力する。Configは、レジスタに設定されたパラメータを、受信動作に反映させることを要求する制御信号である。撮像部２１と送信部２２間、受信部３１と画像処理部３２間で用いられる各種の制御信号については後に詳述する。
【０２９３】
Configの出力前、イメージセンサ１１の撮像部２１とDSP１２の画像処理部３２の間では所定のインタフェース（撮像部２１と画像処理部３２の間の図示せぬ伝送路）を介して通信が行われ、パラメータの変更が行われる。撮像部２１においては、変更後のパラメータがレジスタ５３（図５）に設定され、画像処理部３２においては、変更後のパラメータがレジスタ１４２に設定される。
【０２９４】
ステップＳ１２１において、受信部３１は、画像処理部３２から出力されたConfigを受信し、レジスタ１４２に設定された変更後のパラメータを読み出してデータの受信動作に反映させる。以降のデータの受信が、変更後のパラメータにより規定される内容で行われる。
【０２９５】
ステップＳ１３２において、画像処理部３２は、イメージセンサ１１の撮像部２１に対してMode Changeを発行する。Mode Changeの発行は、伝送モードの変更を要求する制御信号を送信することを意味する。Mode Changeの発行も、図示せぬインタフェースを用いて行われる。
【０２９６】
Mode Changeの発行をステップＳ１０１において受信した撮像部２１は、ステップＳ１０２において、送信部２２に対してConfigを出力する。
【０２９７】
ステップＳ１１１において、送信部２２は、撮像部２１から出力されたConfigを受信し、レジスタ５３に設定された変更後のパラメータを読み出してデータの送信動作に反映させる。以降のデータの送信が、変更後のパラメータにより規定される内容で行われる。
【０２９８】
ステップＳ１１２において、送信部２２は、受信部３１との間でStandby Sequenceを行う。上述したように、Standby Sequenceにおいては送信部２２から受信部３１に対してStandby Codeが繰り返し伝送される。
【０２９９】
Standby Sequenceが終了したとき、送信部２２と受信部３１の間の各レーンはLow（Lowインピーダンス）となり、データ伝送が停止した状態になる。
【０３００】
ステップＳ１１４において、送信部２２は、受信部３１との間でTraining Sequenceを行う。Training Sequenceは、受信部３１において、CDRを行うことによってクロックを再生し、同期を確立するとともに、レーン間のData Skewを補正するために行われる処理である。
【０３０１】
図３５は、Training Sequenceにおいて用いられる制御コードの例を示す図である。
【０３０２】
図３５の縦方向がレーンを示し、横方向が時間方向を示す。Training Sequenceにおいては、Sync Codeが繰り返し伝送され、その後、Idle Codeの繰り返しと１つのDeskew Codeを組として、その組が繰り返し伝送される。受信部３１においては、Sync Codeを用いてクロックの再生と同期の確立が行われ、Deskew Codeを用いて、図２５を参照して説明したようにして、レーン間のData Skewの補正が行われる。
【０３０３】
Training Sequenceの後、図３３のステップＳ１１５において、送信部２２は、Idle Codeを送信する。
【０３０４】
ステップＳ１２２において、受信部３１は、送信部２２から送信されたIdle Codeを受信する。このようなTraining Sequenceが行われることにより、受信部３１は、変更後のパラメータに従って、送信部２２から送信されてくるデータを受信できる状態になる。
【０３０５】
送信部２２による３フレーム目の各ラインの送信は、変更後のパラメータにより規定される内容で行われる。白抜き矢印＃１２は、３フレーム目のデータの送受信が、変更後のパラメータを用いて送信部２２と受信部３１の間で行われていることを示す。
【０３０６】
以上のようなMode Changeが、パラメータの変更時に行われる。
【０３０７】
図３６は、レジスタに設定されるパラメータの例を示す図である。
【０３０８】
Lane Numは、データストリームの伝送に用いるレーンの数を表す情報である。Lane Numには、例えば１，２，４，６，８のうちのいずれかの値が設定される。
【０３０９】
Pixel Bitは、画像データを構成する各ピクセルのビット数を表す情報である。Pixel Bitには、例えば８，１０，１２，１４，１６のうちのいずれかの値が設定される。
【０３１０】
Line Lengthは、１ラインのピクセル数を表す情報である。Line Lengthには、４以上の所定の値が設定される。
【０３１１】
ECC Optionは、パケットを構成するペイロードデータの誤り訂正に用いられる誤り訂正符号の種類を表す情報である。ECC Optionには、０，１，２のうちのいずれかの値が設定される。
【０３１２】
CRC Optionは、パケットを構成するフッタに含まれ、ペイロードデータの誤り検出に用いられる誤り検出符号の種類を表す情報である。CRC Optionには、On/Offのいずれかが設定される。CRC Optionの設定がOnであることは、誤り検出符号が含まれることを示し、Offであることは、誤り検出符号が含まれていないことを示す。
【０３１３】
Baud Gradeは、それぞれのレーンの伝送レートの種類を表す情報である。Baud Gradeには、Grade1/Grade2のいずれかが設定される。
【０３１４】
イメージセンサ１１とDSP１２においては、このような各パラメータの値として同じ値が設定される。イメージセンサ１１のレジスタ５３に設定されたパラメータは、撮像部２１からConfigが出力されることに応じて送信部２２により読み出され、送信動作に反映される。一方、DSP１２のレジスタ１４２に設定されたパラメータは、画像処理部３２からConfigが出力されることに応じて受信部３１により読み出され、受信動作に反映される。
【０３１５】
なお、パラメータの種類は、図３６に示すものに限定されるものではなく、他のパラメータが用いられるようにしてもよい。
【０３１６】
・Mode Change with Standby
Mode Changeには、図３３のMode Changeの他に、Mode Change with Standbyが規定される。図３３のMode Changeが、データ伝送の停止中に各レーンがLowになるものであるのに対して、Mode Change with Standbyは、データ伝送の停止中に各レーンがHigh-Z（Highインピーダンス）になるものである。
【０３１７】
図３７は、Mode Change with Standbyのシーケンスの例を示す図である。イメージセンサ１１とDSP１２の主な動作について説明する。
【０３１８】
図３７の右方に示すように、所定のフレームの画像データの送信終了後のステップＳ２３１において、DSP１２の画像処理部３２は、イメージセンサ１１の撮像部２１に対してStandbyを送信する。
【０３１９】
StandbyをステップＳ２０１において受信したイメージセンサ１１の撮像部２１は、ステップＳ２０２において、送信部２２に対してStandbyを出力する。
【０３２０】
ステップＳ２１１において、受信部３１は、画像処理部３２から出力されたStandbyを受信し、受信部３１との間でStandby Sequenceを行う。
【０３２１】
Standby Sequenceが終了したとき、送信部２２と受信部３１はStandby modeの状態になる。送信部２２と受信部３１の間の各レーンはHigh-Zとなり、データ伝送が停止した状態になる。
【０３２２】
例えばStandby modeの状態になっている間、イメージセンサ１１の撮像部２１とDSP１２の画像処理部３２の間では所定のインタフェースを介して通信が行われ、パラメータの変更が行われる。撮像部２１においては、変更後のパラメータがレジスタ５３に設定され、画像処理部３２においては、変更後のパラメータがレジスタ１４２に設定される。
【０３２３】
ステップＳ２３２において、画像処理部３２は、受信部３１に対してSetupを出力する。
【０３２４】
ステップＳ２２１において、受信部３１は、画像処理部３２から出力されたSetupを受信し、Standby modeから起動する。受信部３１においては、適宜、レジスタ１４２に設定されたパラメータが読み出され、受信動作に反映される。
【０３２５】
ステップＳ２３３において、DSP１２の画像処理部３２は、イメージセンサ１１の撮像部２１に対してWakeupを送信する。
【０３２６】
WakeupをステップＳ２０３において受信したイメージセンサ１１の撮像部２１は、ステップＳ２０４において、送信部２２に対してSetupを出力する。
【０３２７】
ステップＳ２１２において、送信部２２は、撮像部２１から出力されたSetupを受信し、Standby modeから起動する。送信部２２においては、適宜、レジスタ５３に設定されたパラメータが読み出され、送信動作に反映される。送信部２２と受信部３１の間の各レーンはLowとなる。
【０３２８】
ステップＳ２１３において、送信部２２は、受信部３１との間でTraining Sequenceを行う。受信部３１においては、Sync Codeを用いてクロックの再生と同期の確立が行われ、Deskew Codeを用いて、レーン間のData Skewの補正が行われる。
【０３２９】
Training Sequenceの後、ステップＳ２１４において、送信部２２は、Idle Codeを送信する。
【０３３０】
Training Sequenceを終えた受信部３１は、ステップＳ２２２において、画像処理部３２に対してReadyを送信し、データの受信準備が完了したことを通知する。
【０３３１】
ステップＳ２３４において、画像処理部３２は、受信部３１から出力されたReadyを受信する。その後、画像処理部３２は、送信部２２から送信され、受信部３１において受信された画像データを取得して処理を行う。
【０３３２】
Mode Change with Standbyは以上のようにして行われる。図３３を参照して説明したMode Changeと、Mode Change with Standbyをそれぞれ区別する必要がない場合、単に、Mode Changeという。
【０３３３】
・送信部２２の状態遷移
図３８は、送信側であるイメージセンサ１１の各レイヤ間で用いられる制御信号の例を示す図である。
【０３３４】
アプリケーションレイヤ（撮像部２１）からリンクレイヤに対しては、ラインの開始と終了を表すLine Start／Line End、レジスタ５３に設定されたパラメータを表すPixel Bit，Lane Num，Baud Grade，Line Length，ECC Option，CRC Optionが出力される。
【０３３５】
また、アプリケーションレイヤからリンクレイヤに対しては、Config，Standby，Setupが出力される。Configは、レジスタ５３に設定されたパラメータを送信動作に反映させることを要求する信号である。Standbyは、Standby Sequenceを開始することを要求する信号である。Setupは、Standby modeから起動することを要求する信号である。
【０３３６】
このような各制御信号が、アプリケーションレイヤのシステム制御部５１から出力される。LINK-TXプロトコル管理部６１の状態制御部７１は、アプリケーションレイヤから出力される制御信号を受信することに応じて、リンクレイヤの各部の状態を制御する。
【０３３７】
リンクレイヤから物理レイヤに対しては、制御コードの送信の開始と終了を要求するTX Start／TX End、リンクレイヤから出力されるデータが、有効データであるか否かを表すData Valid／Data Invalidが出力される。
【０３３８】
また、リンクレイヤから物理レイヤに対しては、レジスタ５３に設定された６種類のパラメータのうちの、物理レイヤの処理に関係のあるLane NumとBaud Gradeが出力される。Lane NumとBaud Grade以外のパラメータは、リンクレイヤの処理に関係のあるパラメータである。
【０３３９】
さらに、リンクレイヤから物理レイヤに対しては、Config，Standby，Setupが出力される。Configは、Standby modeの後、各レーンをLowの状態にすることを要求する信号である。Standbyは、Standby Sequenceの開始を要求する信号である。Setupは、Training Sequenceの開始を要求する信号である。
【０３４０】
このような各制御信号が、リンクレイヤの状態制御部７１から出力される。PHY-TX状態制御部８１は、リンクレイヤから出力される制御信号を受信することに応じて、物理レイヤの各部の状態を制御する。
【０３４１】
図３９は、送信部２２のリンクレイヤの状態遷移の例を示す図である。主な遷移について説明する。
【０３４２】
図３９において、それぞれのブロックはリンクレイヤの状態を表す。ある状態から他の矢印に向かう矢印は、それぞれの矢印の近傍の制御信号がアプリケーションレイヤから出力されたときに起こる状態遷移を表す。後述する図４０、図４２、図４３等においても同様である。
【０３４３】
例えば、中央に示すBlankingの状態において、アプリケーションレイヤからConfigが出力された場合、状態制御部７１は、矢印＃２１の先に示すように、リンクレイヤの状態をMode Changeの状態に遷移させる。このとき、例えば図３３を参照して説明したMode Changeが行われる。
【０３４４】
Mode Changeの状態にある場合、状態制御部７１から物理レイヤに対しては、StandbyまたはConfigが出力される。各ブロックの内側に示す制御信号は、その状態にある場合に物理レイヤに対して出力される信号を示す。
【０３４５】
状態制御部７１は、図３９に示すような遷移図に従って、リンクレイヤの状態を制御する。
【０３４６】
図４０は、送信部２２の物理レイヤの状態遷移の例を示す図である。主な遷移について説明する。
【０３４７】
例えば、中央に示すIdle Codeの伝送中の状態において、リンクレイヤからStandbyが出力された場合、PHY-TX状態制御部８１は、矢印＃３１の先に示すように、物理レイヤの状態をStandby Sequenceの状態に遷移させる。
【０３４８】
Standby Sequenceが終わった場合、PHY-TX状態制御部８１は、矢印＃３２の先に示すように各レーンをHigh-Zにする。各レーンがHigh-ZになっているときにリンクレイヤからSetupが出力された場合、PHY-TX状態制御部８１は、矢印＃３３の先に示すように、各レーンをLowにする。Standby SequenceにおいてConfigが出力された場合も同様に、PHY-TX状態制御部８１は、矢印＃３４の先に示すように各レーンをLowにする。
【０３４９】
各レーンをLowにした後、PHY-TX状態制御部８１は、物理レイヤの状態を、矢印＃３５の先に示すようにTraining Sequenceの状態とし、Training Sequenceが終了した場合、矢印＃３６の先に示すようにIdle Codeを伝送する状態とする。
【０３５０】
PHY-TX状態制御部８１は、図４０に示すような遷移図に従って、物理レイヤの状態を制御する。
【０３５１】
・受信部３１の状態遷移
図４１は、受信側であるDSP１２の各レイヤ間で用いられる制御信号の例を示す図である。
【０３５２】
送信部２２からStart Code／End Codeが供給された場合、物理レイヤからリンクレイヤに対しては、受信の開始／終了を要求するRX Start／RX Endが出力される。このとき、リンクレイヤからアプリケーションレイヤ（画像処理部３２）に対しては、Line Start／Line Endが出力される。
【０３５３】
また、送信部２２からPAD Codeが供給された場合、物理レイヤからリンクレイヤに対しては、物理レイヤから出力されるデータが、有効データであるか否かを表すData Valid／Data Invalidが出力される。このとき、リンクレイヤからアプリケーションレイヤに対しては、ヘッダの解析結果を表すHeader Infoなどが出力される。
【０３５４】
Standby Sequenceを開始する場合、物理レイヤからリンクレイヤに対しては、Standby Detectが出力される。このとき、リンクレイヤからアプリケーションレイヤに対してはStandby Detectが出力される。
【０３５５】
Training Sequenceを開始する場合、物理レイヤからリンクレイヤに対しては、RX Readyが出力される。このとき、リンクレイヤからアプリケーションレイヤに対してはRX Readyが出力される。
【０３５６】
アプリケーションレイヤからリンクレイヤに対しては、レジスタ１４２に設定されたパラメータを表すPixel Bit，Lane Num，Baud Grade（Data Rate），Line Length，ECC Option，CRC Optionが出力される。ECC Option，CRC Optionはオプションのため、出力しないことも可能である。リンクレイヤから物理レイヤに対しては、レジスタ１４２に設定された６種類のパラメータのうちの、物理レイヤの処理に関係のあるLane NumとBaud Gradeが出力される。
【０３５７】
また、アプリケーションレイヤからリンクレイヤに対しては、Config，Standby，Setupが出力される。Configは、レジスタ１４２に設定されたパラメータを受信動作に反映させることを要求する信号である。Standbyは、Standby Sequenceを開始することを要求する信号である。Setupは、Standby modeから起動することを要求する信号である。Config，Standby，Setupは、リンクレイヤから物理レイヤに対しても出力される。
【０３５８】
PHY-RX状態制御部１０１は、送信部２２から送信されてきた制御コードを受信することに応じて、または、リンクレイヤから出力される制御信号を受信することに応じて、物理レイヤの各部の状態を制御する。
【０３５９】
また、LINK-RXプロトコル管理部１２１の状態制御部１３１は、リンクレイヤから出力される制御信号を受信することに応じて、または、アプリケーションレイヤから出力される制御信号を受信することに応じて、リンクレイヤの各部の状態を制御する。
【０３６０】
図４２は、受信部３１のリンクレイヤの状態遷移の例を示す図である。主な遷移について説明する。
【０３６１】
例えば、中央に示すBlankingの状態において、物理レイヤからStandby Detectが出力された場合、状態制御部１３１は、矢印＃４１の先に示すように、リンクレイヤの状態をWaitの状態に遷移させる。
【０３６２】
Waitの状態において、アプリケーションレイヤレイヤからConfigが出力された場合、状態制御部１３１は、矢印＃４２の先に示すように、リンクレイヤの状態をMode Changeの状態に遷移させる。
【０３６３】
状態制御部１３１は、図４２に示すような遷移図に従って、リンクレイヤの状態を制御する。
【０３６４】
図４３は、受信部３１の物理レイヤの状態遷移の例を示す図である。主な遷移について説明する。
【０３６５】
例えば、中央に示すRX Readyを出力している状態において、Standby Sequenceを開始する場合、PHY-RX状態制御部１０１は、矢印＃５１の先に示すように、物理レイヤの状態をStandby Detectを出力する状態に遷移させる。
【０３６６】
Standby Detectを出力している状態において、リンクレイヤからConfigが出力された場合、PHY-RX状態制御部１０１は、矢印＃５２の先に示すように、物理レイヤの状態をTraining Waitの状態に遷移させる。
【０３６７】
Training Waitの状態において、Training Sequenceを開始する場合、PHY-RX状態制御部１０１は、矢印＃５３の先に示すように、物理レイヤの状態をRX Readyを出力する状態に遷移させる。
【０３６８】
PHY-RX状態制御部１０１は、図４３に示すような遷移図に従って、物理レイヤの状態を制御する。
【０３６９】
［（２）Training Sequenceを省略したMode Change］
以上のように、データ伝送のモードは６種類のパラメータにより規定される。パラメータの変更時、Mode ChangeにおいてTraining Sequenceが行われ、データ伝送が一度停止することになる。
【０３７０】
ところで、６種類のパラメータのうち、Lane NumとBaud Grade以外のパラメータは、仮に変更したとしても同期の確立とレーン間のData Skewの補正を再度行う必要がない、すなわち、Training Sequenceが不要なパラメータである。
【０３７１】
Lane NumとBaud Gradeは物理レイヤの処理に関係のあるパラメータであり、変更した場合には同期がずれるとともにレーン間のData Skewの量が変化するためにTraining Sequenceが必要になる。一方、Lane NumとBaud Grade以外のパラメータは、リンクレイヤの処理に関係のあるパラメータであり、変更の前後で、同期のずれやレーン間のData Skewの量に変化がない。
【０３７２】
Mode Changeの方式として、Training Sequenceを伴う上述したMode Changeの他に、Training Sequenceを省略したMode Changeが規定される。Training Sequenceを伴うMode ChangeとTraining Sequenceを省略したMode Changeは、変更するパラメータの種類に応じて切り替えて実行される。
【０３７３】
図４４は、Mode Changeの例を示す図である。
【０３７４】
図４４の上段に示すように、変更するパラメータがLane NumまたはBaud Gradeである場合、Training Sequenceを伴うMode Changeが行われる。
【０３７５】
一方、図４４の下段に示すように、変更するパラメータがLane NumとBaud Grade以外のパラメータである場合、Training Sequenceを省略したMode Change、または、Training Sequenceを伴うMode Changeが行われる。
【０３７６】
このように、変更するパラメータの種類に応じてTraining Sequenceを適宜省略することにより、Mode Changeを簡略化することが可能になる。
【０３７７】
また、同期の確立とData Skewの補正を再度行う必要がない場合であってもそれらの処理を行うとした場合、無駄な電力消費が受信側において発生することになるが、Training Sequenceを適宜省略することにより消費電力を抑えることが可能になる。
【０３７８】
以下、適宜、Training Sequenceを省略したMode Changeを、簡易型Mode Changeという。
【０３７９】
簡易型Mode Changeとして、図４５に示すように、無効フレームの伝送がある簡易型Mode Changeと、無効フレームの伝送がない簡易型Mode Changeとの２種類が規定される。
【０３８０】
・無効フレームの伝送がある簡易型Mode Changeのシーケンス
図４６は、無効フレームの伝送がある簡易型Mode Changeのシーケンスの例を示す図である。図３３の説明と重複する説明については適宜省略する。
【０３８１】
図４６の右端に示すように、１フレーム目の最後のラインの伝送が終了したステップＳ３３１において、DSP１２の画像処理部３２は、受信部３１に対してConfigを出力する。
【０３８２】
Configの出力前、イメージセンサ１１の撮像部２１とDSP１２の画像処理部３２の間では所定のインタフェースを介して通信が行われ、パラメータの変更が行われる。Pixel Bitなどの、Lane NumとBaud Grade以外のパラメータが変更されるものとする。撮像部２１においては、変更後のパラメータがレジスタ５３に設定され、画像処理部３２においては、変更後のパラメータがレジスタ１４２に設定される。
【０３８３】
ステップＳ３２１において、受信部３１は、画像処理部３２から出力されたConfigを受信し、レジスタ１４２に設定された変更後のパラメータを読み出してデータの受信動作に反映させる。以降のデータの受信が、変更後のパラメータにより規定される内容で行われる。
【０３８４】
ステップＳ３３２において、画像処理部３２は、イメージセンサ１１の撮像部２１に対してMode Changeを発行する。
【０３８５】
Mode Changeの発行をステップＳ３０１において受信したイメージセンサ１１の撮像部２１は、ステップＳ３０２において、送信部２２に対してConfigを出力する。
【０３８６】
ステップＳ３１１において、送信部２２は、撮像部２１から出力されたConfigを受信し、レジスタ５３に設定された変更後のパラメータを読み出してデータの送信動作に反映させる。以降のデータの送信が、変更後のパラメータにより規定される内容で行われる。
【０３８７】
送信部２２と受信部３１の双方においてパラメータの変更が反映された後、白抜き矢印＃６１で示すようにBlanking Dataの送信が開始される。Blanking Dataの送信は、Training Sequenceに要する時間を含む、２フレーム目の送信が終了するタイミングである時刻ｔ５３まで続けられる。
【０３８８】
すなわち、Training Sequence等が省略され、無効なデータではあるが、データの伝送が続けられることになる。
【０３８９】
ここで送信されるBlanking Dataは、左側の枠Ｆ１で囲んで示すように無効フレームを構成するデータである。
【０３９０】
Blanking Dataの伝送も、ライン毎に１つのパケットを用いて行われる。Blanking Dataを格納したペイロードの前にヘッダが付加されることによって各パケットが構成される。それぞれのパケットの前にはStart Codeが付加され、後ろにはEnd Codeが付加される。End Codeの後ろにはDeskew CodeとIdle Codeが付加される。
【０３９１】
無効フレームの送信が終了した時刻ｔ５３において、３フレーム目の送信が開始される。送信部２２による３フレーム目の各ラインの送信は、変更後のパラメータにより規定される内容で行われる。また、受信部３１による３フレーム目の各ラインの受信は、変更後のパラメータにより規定される内容で行われる。
【０３９２】
このように、送信部２２は、簡易型Mode Changeの実行時、パラメータの変更を送信動作に即時に反映させ、データ伝送の一時停止を生じさせることなく無効フレームの送信を行う。
【０３９３】
図４７は、簡易型Mode Changeが用いられる場合の、送信部２２のリンクレイヤの状態遷移の例を示す図である。
【０３９４】
図４７に示すように、中央に示すBlankingの状態からMode Changeの状態への遷移は、アプリケーションレイヤからConfigが出力され、かつ、変更されたパラメータがLane NumまたはBaud Gradeである場合に発生することになる。状態制御部７１は、図４７に示すような遷移図に従って、リンクレイヤの状態を制御する。
【０３９５】
ここで、図４８のシーケンス図を参照して、簡易型Mode Change時の各部の処理の詳細について説明する。図４８に示す処理は、基本的に、図４６を参照して説明した処理と同様の処理である。
【０３９６】
パラメータの変更が撮像部２１と画像処理部３２の間で行われた後、ステップＳ４０１において、撮像部２１は、変更後のパラメータをレジスタ５３に設定する。
【０３９７】
一方、ステップＳ４３１において、画像処理部３２は、変更後のパラメータをレジスタ１４２に設定する。
【０３９８】
ステップＳ４３２において、画像処理部３２は、受信部３１に対してConfigを出力する。
【０３９９】
ステップＳ４２１において、受信部３１は、画像処理部３２から出力されたConfigを受信する。
【０４００】
ステップＳ４２２において、受信部３１は、レジスタ１４２からパラメータを読み出してデータの受信動作に反映させる。状態制御部１３１は、リンクレイヤの各部を制御し、新たに設定されたパラメータに応じた処理を行わせる。
【０４０１】
画素データを含むフレームである有効フレームの最後のラインの送信が終了したステップＳ４３３において、画像処理部３２は、撮像部２１に対してMode Changeを発行する。
【０４０２】
ステップＳ４０２において、撮像部２１は、Mode Changeの発行を受信する。
【０４０３】
ステップＳ４０３において、撮像部２１は、送信部２２に対してConfigを出力する。
【０４０４】
ステップＳ４１１において、送信部２２は、撮像部２１から出力されたConfigを受信する。
【０４０５】
ステップＳ４１２において、送信部２２は、レジスタ５３からパラメータを読み出してデータの送信動作に反映させる。状態制御部７１は、リンクレイヤの各部を制御し、新たに設定されたパラメータに応じた処理を行わせる。
【０４０６】
変更されたパラメータがPixel Bit，Line Length，ECC Option，CRC Optionのうちのいずれかである場合、ステップＳ４１３において、状態制御部７１は、リンクレイヤの状態を、簡易型Mode Changeを実行する状態とする。
【０４０７】
ステップＳ４１４において、送信部２２は、Blanking Dataを含む無効フレームを送信する。無効フレームの送信は、新たに設定されたパラメータに従って行われる。
【０４０８】
無効フレームの送信が終了した場合、ステップＳ４１５において、送信部２２は、画素データを含む有効フレームを送信する。
【０４０９】
一方、ステップＳ４２３において、受信部３１は、送信部２２から送信された無効フレームを受信する。無効フレームの受信は、新たに設定されたパラメータに従って行われる。
【０４１０】
無効フレームの受信が終了した場合、ステップＳ４２４において、受信部３１は、送信部２２から送信された有効フレームを受信する。その後、送信部２２と受信部３１の間では有効フレームの送受信が続けられる。
【０４１１】
このように、簡易型Mode Changeは、変更するパラメータによっては不要ともいえるTraining Sequenceを省略するようにして行われる。
【０４１２】
これにより、Mode Change時の送信側のシーケンスを簡略化することが可能になる。
【０４１３】
また、CDRによる再同期などが不要になるため、受信側の消費電力の削減が可能になる。
【０４１４】
なお、複数種類のパラメータが一度に変更されるようにしてもよい。この場合、Lane NumとBaud Gradeのうちの少なくともいずれかの変更が行われるときに、Training Sequenceを伴うMode Changeが行われることになる。また、Pixel Bit，Line Length，ECC Option，CRC Optionのうちの少なくともいずれかの変更が行われるときに、簡易型Mode Changeが行われることになる。
【０４１５】
［（３）無効フレームの伝送がない簡易型Mode Change］
次に、無効フレームの伝送がない簡易型Mode Changeについて説明する。
【０４１６】
・（３−１）シーケンスについて
図４９は、無効フレームの伝送がない簡易型Mode Changeのシーケンスの例を示す図である。
【０４１７】
図４９に示すシーケンスは、パラメータの変更が行われた後、無効フレームの伝送を生じさせずに、枠Ｆ２で囲んで示すように有効フレームの伝送が行われる点で、図４６を参照して説明したシーケンスと異なる。
【０４１８】
図４９の右端に示すように、ステップＳ４８１において、DSP１２の画像処理部３２は、受信部３１に対してConfigを出力する。受信部３１に対するConfigの出力は、例えば１フレーム目の所定のラインの伝送中に行われる。Configの出力前、イメージセンサ１１の撮像部２１とDSP１２の画像処理部３２の間では所定のインタフェースを介して通信が行われ、パラメータの変更が行われる。
【０４１９】
ステップＳ４７１において、受信部３１は、画像処理部３２から出力されたConfigを受信し、所定のタイミングで、レジスタ１４２に設定された変更後のパラメータを読み出してデータの受信動作に反映させる。パラメータの反映タイミングについては後述する。
【０４２０】
ステップＳ４８２において、画像処理部３２は、イメージセンサ１１の撮像部２１に対してMode Changeを発行する。Mode Changeの発行も、１フレーム目の所定のラインの伝送中に行われる。
【０４２１】
Mode Changeの発行をステップＳ４５１において受信したイメージセンサ１１の撮像部２１は、ステップＳ４５２において、送信部２２に対してConfigを出力する。送信部２２に対するConfigの出力も、１フレーム目の所定のラインの伝送中に行われる。
【０４２２】
ステップＳ４６１において、送信部２２は、撮像部２１から出力されたConfigを受信し、所定のタイミングで、レジスタ５３に設定された変更後のパラメータを読み出してデータの送信動作に反映させる。
【０４２３】
送信部２２と受信部３１の双方においてパラメータの変更が反映された後の時刻ｔ５２以降、有効フレームである２フレーム目の伝送が行われる。白抜き矢印＃７１は、このような２フレーム目のデータの送受信が送信部２２と受信部３１の間で行われていることを示す。その後、送信部２２と受信部３１の間では有効フレームの送受信が続けられる。
【０４２４】
このように、無効フレームの伝送を生じさせずに簡易型Mode Changeを行うようにすることが可能である。
【０４２５】
ここで、無効フレームの伝送を生じさせないようにするためには、Mode Changeの発行と、Configに応じたパラメータの反映が、次のフレーム（変更前のパラメータを用いて伝送中のフレームの次のフレーム）の開始タイミングに間に合う必要がある。Configに応じたパラメータの反映には、Configの出力自体も含まれる。
【０４２６】
Mode Changeの発行とConfigに応じたパラメータの反映のタイミングには、所定の制約が設定される。
【０４２７】
変更するパラメータが、Pixel Bit，Line Length，ECC Option，CRC Optionのうちのいずれかである場合、Mode Changeの発行とConfigに応じたパラメータの反映のタイミングには、例えば以下のような制約が設定される。
【０４２８】
例１
送信側：次のフレームの先頭を表すTX Start（図３８）の出力まで
受信側：次のフレームの先頭を表すRX Start（図４１）の出力まで
【０４２９】
この場合、Mode Changeの発行とConfigに応じたパラメータの反映が、送信部２２においては、リンクレイヤ（状態制御部７１）から物理レイヤ（PHY-TX状態制御部８１）に対してTX Startが出力されるまでに行われる必要がある。また、受信部３１においては、物理レイヤ（PHY-RX状態制御部１０１）からリンクレイヤ（状態制御部１３１）に対してRX Startが出力されるまでに行われる必要がある。
【０４３０】
例２
送信側：伝送中のフレームの最後を表すTX Endの出力まで
受信側：伝送中のフレームの最後を表すRX Endの出力まで
【０４３１】
この場合、Mode Changeの発行とConfigに応じたパラメータの反映が、送信部２２においては、リンクレイヤから物理レイヤに対してTX Endが出力されるまでに行われる必要がある。また、受信部３１においては、物理レイヤからリンクレイヤに対してRX Endが出力されるまでに行われる必要がある。
【０４３２】
上記例１、例２の制約を満たすタイミングとして、Mode Changeの発行とConfigに応じたパラメータの反映が、伝送中のフレームの垂直ブランキング期間中に行われるようにしてもよい。例えば図４９の１フレーム目における、後ダミー領域Ａ４のデータに相当するBlanking Dataの期間が、垂直ブランキング期間に相当する。
【０４３３】
これにより、無効フレームの伝送がない簡易型Mode Changeによるパラメータの変更を、フレーム単位で行わせることが可能になる。
【０４３４】
また、Mode Changeの発行とConfigに応じたパラメータの反映が、伝送中のラインの水平ブランキング期間中に行われるようにしてもよい。例えば図４９の１フレーム目の所定のラインの最後尾に付加されるIdle Codeの期間が、水平ブランキング期間に相当する。
【０４３５】
これにより、無効フレームの伝送がない簡易型Mode Changeによるパラメータの変更を、ライン単位で行わせることが可能になる。
【０４３６】
以上のように、無効フレームの伝送を生じさせないようにすることにより、データの伝送効率の低下を防ぐことが可能になる。
【０４３７】
・（３−２）Packet Headerを用いて設定変更フラグを伝送する例
無効フレームの伝送がない簡易型Mode Changeにおいて、パラメータの変更が生じたことが、ヘッダに格納された設定変更フラグを用いて送信側から受信側に通知されるようにしてもよい。
【０４３８】
受信部３１においては、ヘッダの解析が行われ、設定変更フラグに基づいて、パラメータの変更が生じているか否かの検出が行われる。パラメータの変更が生じていることを検出された場合、レジスタ１４２に設定された変更後のパラメータを読み出してデータの受信動作に反映させる処理が行われる。
【０４３９】
後に詳述するが、この場合のシーケンスは、Configの出力に応じて行われる処理が異なる点を除いて、図４９を参照して説明したシーケンスと基本的に同様のシーケンスとなる。
【０４４０】
図５０は、ヘッダに格納される情報の例を示す図である。
【０４４１】
図５０に示す各情報は、領域情報が含まれていない点で、図３２に示す情報と異なる。図５０の例においては、データ識別を示すデータ情報が４ビットとして定義されている。Reservedは２７ビットになる。設定変更フラグは、２７ビットのリザーブ領域（Reserved）を用いて設定される。
【０４４２】
図５１は、リザーブ領域の２７ビット（[26:0]）の割り当ての例を示す図である。
【０４４３】
図５１に示すように、リザーブ領域の２７ビットのうちの上位３ビット（[26:24]）は、Information Typeとして割り当てられる。
【０４４４】
Information Type（[2:0]）の値が000（3’d0）であることは、リザーブ領域が、設定変更フラグの設定に用いられていないことを示す。例えば、受信側において設定変更フラグの値を解釈することができない場合、Information Typeの値として000が設定される。これにより、受信側の性能の違いによる互換性を確保することが可能になる。
【０４４５】
Information Typeの値が001（3’d1）であることは、リザーブ領域が、設定変更フラグとしてのParameter Change Indicatorの設定に用いられていることを示す。
【０４４６】
リザーブ領域の２７ビットのうちの上位４ビット目以降の２４ビット（[23:0]）は、Additional Informationとして割り当てられる。
【０４４７】
図５２は、Information Typeの値が001である場合のAdditional Informationの例を示す図である。
【０４４８】
Additional Informationとして割り当てられた２４ビットのうちの最上位ビット（[23]）は、Parameter Change Indicatorに割り当てられる。
【０４４９】
Parameter Change Indicatorの値が１（1’b1）であることは、パラメータの変更が生じていることを示す。
【０４５０】
無効フレームの伝送がない簡易型Mode Changeを行う場合、すなわち、Pixel Bit，Line Length，ECC Option，CRC Optionのうちのいずれかのパラメータの変更が生じた場合、Parameter Change Indicatorの値として１が設定されたヘッダを含むパケットが所定のタイミングで生成され、送信される。
【０４５１】
一方、Parameter Change Indicatorの値が０（1’b0）であることは、パラメータの変更が生じていないことを示す。
【０４５２】
なお、Additional Informationとして割り当てられた２４ビットのうちの最上位ビット以外（[22:0]）はReservedとなる。
【０４５３】
ここで、図５３のシーケンス図を参照して、パラメータの変更が生じたことをParameter Change Indicatorを用いて通知する場合の、簡易型Mode Change時の各部の処理について説明する。
【０４５４】
パラメータの変更が撮像部２１と画像処理部３２の間で行われた後、ステップＳ５０１において、撮像部２１は、変更後のパラメータをレジスタ５３に設定する。
【０４５５】
一方、ステップＳ５３１において、画像処理部３２は、変更後のパラメータをレジスタ１４２に設定する。
【０４５６】
ステップＳ５３２において、画像処理部３２は、受信部３１に対してConfigを出力する。ここで出力されるConfigは、変更後のパラメータがレジスタ１４２に設定されたこと（Write new setting）を通知するものであり、レジスタ１４２からパラメータを読み出して反映することを受信部３１に対して要求するものではない。受信部３１に対するConfigの出力は、例えば１フレーム目の所定のラインの伝送中に行われる。
【０４５７】
ステップＳ５２１において、受信部３１は、画像処理部３２から出力されたConfigを受信する。
【０４５８】
ステップＳ５３３において、画像処理部３２は、撮像部２１に対してMode Changeを発行する。Mode Changeの発行も、例えば１フレーム目の所定のラインの伝送中に行われる。
【０４５９】
ステップＳ５０２において、撮像部２１は、Mode Changeの発行を受信する。
【０４６０】
ステップＳ５０３において、撮像部２１は、送信部２２に対してConfigを出力する。ここで出力されるConfigは、変更後のパラメータがレジスタ５３に設定されたこと（Write new setting）を通知するものであり、レジスタ５３からパラメータを読み出して反映することを送信部２２に対して要求するものではない。
【０４６１】
ステップＳ５１１において、送信部２２は、撮像部２１から出力されたConfigを受信する。
【０４６２】
例えば１フレーム目の最後のラインの送信が終了したステップＳ５１２において、送信部２２は、レジスタ５３からパラメータを読み出してデータの送信動作に反映させる。状態制御部７１は、リンクレイヤの各部を制御し、新たに設定されたパラメータに応じた処理を行わせる。
【０４６３】
変更されたパラメータがPixel Bit，Line Length，ECC Option，CRC Optionのうちのいずれかである場合、ステップＳ５１３において、送信部２２の状態制御部７１は、リンクレイヤの状態を、簡易型Mode Changeを実行する状態とする。
【０４６４】
ステップＳ５１４において、送信部２２のパケット生成部６４は、２フレーム目の先頭ラインのデータをペイロードに格納し、Parameter Change Indicatorの値として１を設定したヘッダを付加することによってパケットを生成する。Parameter Change Indicatorの値として１が設定されたヘッダは、ヘッダ生成部７２により生成され、パケット生成部６４に対して供給される。
【０４６５】
すなわち、この例においては、Parameter Change Indicatorは、あるフレームの先頭ラインのパケットのヘッダに設定される。
【０４６６】
ステップＳ５１５において、送信部２２は、先頭ラインのパケットを送信する。先頭ラインのパケットを構成するパケットデータはデータストリームとして受信部３１に対して供給される。
【０４６７】
ステップＳ５２２において、受信部３１は、送信部２２から送信されたデータストリームに対して処理を施し、先頭ラインのパケットを受信する。先頭ラインのパケットはパケット分離部１２３により分離され、ヘッダを構成する各情報が例えば状態制御部１３１に供給される。
【０４６８】
ステップＳ５２３において、状態制御部１３１は、ヘッダを解析し、Parameter Change Indicatorの値として１が設定されていることに基づいて、Pixel Bit，Line Length，ECC Option，CRC Optionのうちのいずれかのパラメータの変更が生じていることを検出する。
【０４６９】
ステップＳ５２４において、状態制御部１３１は、パラメータの変更が生じていることを検出したことに応じて、レジスタ１４２からパラメータを読み出してデータの受信動作に反映させる。状態制御部１３１は、リンクレイヤの各部を制御し、新たに設定されたパラメータに応じた処理を行わせる。これにより、送信部２２と受信部３１の双方においてパラメータの変更が反映された状態になる。
【０４７０】
ステップＳ５１６において、送信部２２は、有効フレームの各ラインのパケットを送信する。
【０４７１】
一方、ステップＳ５２５において、受信部３１は、送信部２２から送信された各ラインのパケットを受信する。その後、送信部２２と受信部３１の間では有効フレームの送受信が続けられる。
【０４７２】
このように、あるフレームの先頭ラインのパケットのヘッダを用いてParameter Change Indicatorを伝送することにより、当該先頭ライン以降においてパラメータの変更が生じているのか否かを送信側から受信側に通知することが可能になる。
【０４７３】
また、無効フレームの伝送がない簡易型Mode Changeによるパラメータの変更を、フレーム単位で行わせることが可能になる。
【０４７４】
Parameter Change Indicatorを用いた通知が、あるフレームの先頭ラインのパケットのヘッダを用いて行われるのではなく、各ラインのパケットのヘッダを用いて行われるようにしてもよい。
【０４７５】
これにより、無効フレームの伝送がない簡易型Mode Changeによるパラメータの変更を、ライン単位で行わせることが可能になる。
【０４７６】
Parameter Change Indicatorが図５１を参照して説明したようにして設定されるようにすることにより、後方互換性を維持しながら、新しい情報を受信側に伝送することが可能になる。
【０４７７】
また、２７ビットのリザーブ領域を、Information typeの領域とAdditional Informationの領域に分けることで、拡張性を残しておくことが可能になる。
【０４７８】
・（３−３）Packet Headerを用いてパラメータを伝送する例
パケットに付加されるヘッダを用いて、パラメータ自体が送信側から受信側に通知されるようにしてもよい。
【０４７９】
図５４は、リザーブ領域の２７ビット（[26:0]）の割り当ての他の例を示す図である。
【０４８０】
図５４に示すように、リザーブ領域の２７ビットのうちの上位３ビット（[26:24]）は、Information Typeとして割り当てられる。
【０４８１】
Information Type（[2:0]）の値が000（3’d0）であることは、リザーブ領域が、パラメータの格納に用いられていないことを示す。例えば、受信側において、ヘッダに格納されたパラメータを解釈することができない場合、Information Typeの値として000が設定される。これにより、受信側の性能の違いによる互換性を確保することが可能になる。
【０４８２】
Information Typeの値が001（3’d1）であることは、リザーブ領域が、パラメータとしてのLink Parametersの格納に用いられていることを示す。
【０４８３】
リザーブ領域の２７ビットのうちの上位４ビット目以降の２４ビット（[23:0]）は、Additional Informationとして割り当てられる。
【０４８４】
図５５は、Information Typeの値が001である場合のAdditional Informationの例を示す図である。
【０４８５】
Additional Informationとして割り当てられた２４ビットのうちの上位３ビット（[23:21]）は、Pixel Bitに割り当てられる。３ビットを用いて、１画素のビット数が示される。
【０４８６】
Pixel Bitの値が000（3’d0）であることは、１画素が８ビットで表されることを示す。Pixel Bitの値が001（3’d1）であることは、１画素が１０ビットで表されることを示す。Pixel Bitの値が010（3’d2）であることは、１画素が１２ビットで表されることを示す。Pixel Bitの値が011（3’d3）であることは、１画素が１４ビットで表されることを示す。Pixel Bitの値が100（3’d4）であることは、１画素が１６ビットで表されることを示す。
【０４８７】
Additional Informationとして割り当てられた２４ビットのうちの１８ビット（[20:3]）は、Line Lengthに割り当てられる。１８ビットを用いて、１ラインあたりの画素数が示される。
【０４８８】
Additional Informationとして割り当てられた２４ビットのうちの２ビット（[2:1]）は、ECC Optionに割り当てられる。２ビットを用いて、ECC Optionの種類が示される。
【０４８９】
ECC Optionの値が00（2’d0）であることは、ECC Optionの種類がECC Option 0であることを示す。ECC Optionの値が01（2’d1）であることは、ECC Optionの種類がECC Option １であることを示す。ECC Optionの値が10（2’d2）であることは、ECC Optionの種類がECC Option 2であることを示す。
【０４９０】
Additional Informationとして割り当てられた２４ビットのうちの最下位の１ビット（[0]）は、CRC Optionに割り当てられる。１ビットを用いて、CRC OptionのON／OFFが示される。
【０４９１】
CRC Optionの値が１（1’b1）であることは、CRC OptionがONであることを示す。CRC Optionの値が０（1’b0）であることは、CRC OptionがOFFであることを示す。
【０４９２】
このように、パケットのヘッダには、Pixel Bit，Line Length，ECC Option，CRC OptionであるLink Parametersが設定される。
【０４９３】
ここで、図５６のシーケンス図を参照して、Link Parametersをヘッダを用いて通知する場合の、簡易型Mode Change時の各部の処理について説明する。図５６に示す処理のうち、図５３を参照して説明した処理と同様の処理の説明については適宜省略する。
【０４９４】
パラメータの変更が撮像部２１と画像処理部３２の間で行われた後、ステップＳ５５１において、撮像部２１は、変更後のパラメータをレジスタ５３に設定する。
【０４９５】
一方、ステップＳ５８１において、画像処理部３２は、変更後のパラメータをレジスタ１４２に設定する。
【０４９６】
ステップＳ５８２において、画像処理部３２は、受信部３１に対してConfigを出力する。ここで出力されるConfigは、変更後のパラメータがレジスタ１４２に設定されたことを通知するものである。受信部３１に対するConfigの出力は、例えば１フレーム目の所定のラインの伝送中に行われる。
【０４９７】
ステップＳ５７１において、受信部３１は、画像処理部３２から出力されたConfigを受信する。
【０４９８】
ステップＳ５８３において、画像処理部３２は、撮像部２１に対してMode Changeを発行する。Mode Changeの発行も、例えば１フレーム目の所定のラインの伝送中に行われる。
【０４９９】
ステップＳ５５２において、撮像部２１は、Mode Changeの発行を受信する。
【０５００】
ステップＳ５５３において、撮像部２１は、送信部２２に対してConfigを出力する。ここで出力されるConfigは、変更後のパラメータがレジスタ５３に設定されたことを通知するものである。
【０５０１】
ステップＳ５６１において、送信部２２は、撮像部２１から出力されたConfigを受信する。
【０５０２】
１フレーム目の最後のラインの送信が終了したステップＳ５６２において、送信部２２は、レジスタ５３からパラメータを読み出してデータの送信動作に反映させる。状態制御部７１は、リンクレイヤの各部を制御し、新たに設定されたパラメータに応じた処理を行わせる。
【０５０３】
変更されたパラメータがPixel Bit，Line Length，ECC Option，CRC Optionのうちのいずれかである場合、ステップＳ５６３において、送信部２２の状態制御部７１は、リンクレイヤの状態を、簡易型Mode Changeを実行する状態とする。
【０５０４】
ステップＳ５６４において、送信部２２のパケット生成部６４は、２フレーム目の先頭ラインのデータをペイロードに格納し、Link Parametersを含むヘッダを付加することによってパケットを生成する。Link Parametersの各値を含むヘッダは、ヘッダ生成部７２により生成され、パケット生成部６４に対して供給される。
【０５０５】
ステップＳ５６５において、送信部２２は、先頭ラインのパケットを送信する。先頭ラインのパケットを構成するパケットデータはデータストリームとして受信部３１に対して供給される。
【０５０６】
ステップＳ５７２において、受信部３１は、送信部２２から送信されたデータストリームに対して処理を施し、先頭ラインのパケットを受信する。先頭ラインのパケットはパケット分離部１２３により分離され、ヘッダを構成する各情報が例えば状態制御部１３１に供給される。
【０５０７】
ステップＳ５７３において、状態制御部１３１は、ヘッダを解析し、Link Parametersが含まれていることを検出する。
【０５０８】
ステップＳ５７４において、状態制御部１３１は、Link Parametersをデータの受信動作に反映させ、Link Parametersに応じた処理をリンクレイヤの各部に行わせる。これにより、送信部２２と受信部３１の双方においてパラメータの変更が反映された状態になる。
【０５０９】
ステップＳ５６６において、送信部２２は、有効フレームの各ラインのパケットを送信する。
【０５１０】
一方、ステップＳ５７５において、受信部３１は、送信部２２から送信された各ラインのパケットを受信する。その後、送信部２２と受信部３１の間では有効フレームの送受信が続けられる。
【０５１１】
このように、あるフレームの先頭ラインのパケットのヘッダを用いてLink Parametersを伝送することにより、フレーム単位で、変更後のパラメータを送信側から受信側に通知することが可能になる。
【０５１２】
Link Parametersの通知が、あるフレームの先頭ラインのパケットのヘッダを用いて行われるのではなく、各ラインのパケットのヘッダを用いて行われるようにしてもよい。
【０５１３】
これにより、無効フレームの伝送がない簡易型Mode Changeによるパラメータの変更を、ライン単位で行わせることが可能になる。
【０５１４】
Link Parametersが図５４を参照して説明したようにして設定されるようにすることにより、後方互換性を維持しながら、新しい情報を受信側に伝送することが可能になる。
【０５１５】
なお、ヘッダを用いたLink Parametersの伝送が、パラメータの変更が生じ、簡易型Mode Changeを行う場合にだけ行われ、パラメータの変更が生じていない場合には行われないようにしてもよい。
【０５１６】
ヘッダのリザーブ領域の割り当ては、上述した例に限られるものではない。例えば、Parameter Change Indicatorを格納する場合、リザーブ領域の２７ビットのうちの先頭の１ビットがParameter Change Indicatorとして割り当てられるようにすることが可能である。また、Link Parametersとしてヘッダを用いて伝送される情報についても、図５５を参照して説明した情報に限られるものではなく、他の情報が伝送されるようにしてもよい。
【０５１７】
＜３．変形例＞
上述した複数のレーンを使ったチップ間のデータ伝送は、画像データだけでなく、音声データ、テキストデータなどの各種のデータの伝送にも用いることができる。
【０５１８】
以上においては、イメージセンサ１１とDSP１２が同一の装置内に設けられるものとしたが、それぞれ異なる装置内に設けられるようにしてもよい。
【０５１９】
・コンピュータの構成例
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０５２０】
図５７は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０５２１】
CPU(Central Processing Unit)１００１、ROM(Read Only Memory)１００２、RAM(Random Access Memory)１００３は、バス１００４により相互に接続されている。
【０５２２】
バス１００４には、さらに、入出力インタフェース１００５が接続されている。入出力インタフェース１００５には、キーボード、マウスなどよりなる入力部１００６、ディスプレイ、スピーカなどよりなる出力部１００７が接続される。また、入出力インタフェース１００５には、ハードディスクや不揮発性のメモリなどよりなる記憶部１００８、ネットワークインタフェースなどよりなる通信部１００９、リムーバブルメディア１０１１を駆動するドライブ１０１０が接続される。
【０５２３】
以上のように構成されるコンピュータでは、CPU１００１が、例えば、記憶部１００８に記憶されているプログラムを入出力インタフェース１００５及びバス１００４を介してRAM１００３にロードして実行することにより、上述した一連の処理が行われる。
【０５２４】
CPU１００１が実行するプログラムは、例えばリムーバブルメディア１０１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部１００８にインストールされる。
【０５２５】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０５２６】
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０５２７】
なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
【０５２８】
＜４．応用例＞
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、内視鏡手術システムに適用されてもよい。この場合、上述したイメージセンサ１１は、内視鏡側の筐体内に設けられ、DSP１２は、内視鏡から送信されてきた画像データの処理を行う画像処理装置側の筐体内に設けられる。
【０５２９】
図５８は、本開示に係る技術が適用され得る内視鏡手術システム５０００の概略的な構成の一例を示す図である。図５８では、術者（医師）５０６７が、内視鏡手術システム５０００を用いて、患者ベッド５０６９上の患者５０７１に手術を行っている様子が図示されている。図示するように、内視鏡手術システム５０００は、内視鏡５００１と、その他の術具５０１７と、内視鏡５００１を支持する支持アーム装置５０２７と、内視鏡下手術のための各種の装置が搭載されたカート５０３７と、から構成される。
【０５３０】
内視鏡手術では、腹壁を切って開腹する代わりに、トロッカ５０２５ａ〜５０２５ｄと呼ばれる筒状の開孔器具が腹壁に複数穿刺される。そして、トロッカ５０２５ａ〜５０２５ｄから、内視鏡５００１の鏡筒５００３や、その他の術具５０１７が患者５０７１の体腔内に挿入される。図示する例では、その他の術具５０１７として、気腹チューブ５０１９、エネルギー処置具５０２１及び鉗子５０２３が、患者５０７１の体腔内に挿入されている。また、エネルギー処置具５０２１は、高周波電流や超音波振動により、組織の切開及び剥離、又は血管の封止等を行う処置具である。ただし、図示する術具５０１７はあくまで一例であり、術具５０１７としては、例えば攝子、レトラクタ等、一般的に内視鏡下手術において用いられる各種の術具が用いられてよい。
【０５３１】
内視鏡５００１によって撮影された患者５０７１の体腔内の術部の画像が、表示装置５０４１に表示される。術者５０６７は、表示装置５０４１に表示された術部の画像をリアルタイムで見ながら、エネルギー処置具５０２１や鉗子５０２３を用いて、例えば患部を切除する等の処置を行う。なお、図示は省略しているが、気腹チューブ５０１９、エネルギー処置具５０２１及び鉗子５０２３は、手術中に、術者５０６７又は助手等によって支持される。
【０５３２】
（支持アーム装置）
支持アーム装置５０２７は、ベース部５０２９から延伸するアーム部５０３１を備える。図示する例では、アーム部５０３１は、関節部５０３３ａ、５０３３ｂ、５０３３ｃ、及びリンク５０３５ａ、５０３５ｂから構成されており、アーム制御装置５０４５からの制御により駆動される。アーム部５０３１によって内視鏡５００１が支持され、その位置及び姿勢が制御される。これにより、内視鏡５００１の安定的な位置の固定が実現され得る。
【０５３３】
（内視鏡）
内視鏡５００１は、先端から所定の長さの領域が患者５０７１の体腔内に挿入される鏡筒５００３と、鏡筒５００３の基端に接続されるカメラヘッド５００５と、から構成される。図示する例では、硬性の鏡筒５００３を有するいわゆる硬性鏡として構成される内視鏡５００１を図示しているが、内視鏡５００１は、軟性の鏡筒５００３を有するいわゆる軟性鏡として構成されてもよい。
【０５３４】
鏡筒５００３の先端には、対物レンズが嵌め込まれた開口部が設けられている。内視鏡５００１には光源装置５０４３が接続されており、当該光源装置５０４３によって生成された光が、鏡筒５００３の内部に延設されるライトガイドによって当該鏡筒の先端まで導光され、対物レンズを介して患者５０７１の体腔内の観察対象に向かって照射される。なお、内視鏡５００１は、直視鏡であってもよいし、斜視鏡又は側視鏡であってもよい。
【０５３５】
カメラヘッド５００５の内部には光学系及び撮像素子が設けられており、観察対象からの反射光（観察光）は当該光学系によって当該撮像素子に集光される。当該撮像素子によって観察光が光電変換され、観察光に対応する電気信号、すなわち観察像に対応する画像信号が生成される。当該画像信号は、ＲＡＷデータとしてカメラコントロールユニット（ＣＣＵ：Camera  Control  Unit）５０３９に送信される。なお、カメラヘッド５００５には、その光学系を適宜駆動させることにより、倍率及び焦点距離を調整する機能が搭載される。
【０５３６】
なお、例えば立体視（３Ｄ表示）等に対応するために、カメラヘッド５００５には撮像素子が複数設けられてもよい。この場合、鏡筒５００３の内部には、当該複数の撮像素子のそれぞれに観察光を導光するために、リレー光学系が複数系統設けられる。
【０５３７】
（カートに搭載される各種の装置）
ＣＣＵ５０３９は、ＣＰＵ（Central  Processing  Unit）やＧＰＵ（Graphics  Processing  Unit）等によって構成され、内視鏡５００１及び表示装置５０４１の動作を統括的に制御する。具体的には、ＣＣＵ５０３９は、カメラヘッド５００５から受け取った画像信号に対して、例えば現像処理（デモザイク処理）等の、当該画像信号に基づく画像を表示するための各種の画像処理を施す。ＣＣＵ５０３９は、当該画像処理を施した画像信号を表示装置５０４１に提供する。また、ＣＣＵ５０３９は、カメラヘッド５００５に対して制御信号を送信し、その駆動を制御する。当該制御信号には、倍率や焦点距離等、撮像条件に関する情報が含まれ得る。
【０５３８】
表示装置５０４１は、ＣＣＵ５０３９からの制御により、当該ＣＣＵ５０３９によって画像処理が施された画像信号に基づく画像を表示する。内視鏡５００１が例えば４Ｋ（水平画素数３８４０×垂直画素数２１６０）又は８Ｋ（水平画素数７６８０×垂直画素数４３２０）等の高解像度の撮影に対応したものである場合、及び／又は３Ｄ表示に対応したものである場合には、表示装置５０４１としては、それぞれに対応して、高解像度の表示が可能なもの、及び／又は３Ｄ表示可能なものが用いられ得る。４Ｋ又は８Ｋ等の高解像度の撮影に対応したものである場合、表示装置５０４１として５５インチ以上のサイズのものを用いることで一層の没入感が得られる。また、用途に応じて、解像度、サイズが異なる複数の表示装置５０４１が設けられてもよい。
【０５３９】
光源装置５０４３は、例えばＬＥＤ（light  emitting  diode）等の光源から構成され、術部を撮影する際の照射光を内視鏡５００１に供給する。
【０５４０】
アーム制御装置５０４５は、例えばＣＰＵ等のプロセッサによって構成され、所定のプログラムに従って動作することにより、所定の制御方式に従って支持アーム装置５０２７のアーム部５０３１の駆動を制御する。
【０５４１】
入力装置５０４７は、内視鏡手術システム５０００に対する入力インタフェースである。ユーザは、入力装置５０４７を介して、内視鏡手術システム５０００に対して各種の情報の入力や指示入力を行うことができる。例えば、ユーザは、入力装置５０４７を介して、患者の身体情報や、手術の術式についての情報等、手術に関する各種の情報を入力する。また、例えば、ユーザは、入力装置５０４７を介して、アーム部５０３１を駆動させる旨の指示や、内視鏡５００１による撮像条件（照射光の種類、倍率及び焦点距離等）を変更する旨の指示、エネルギー処置具５０２１を駆動させる旨の指示等を入力する。
【０５４２】
入力装置５０４７の種類は限定されず、入力装置５０４７は各種の公知の入力装置であってよい。入力装置５０４７としては、例えば、マウス、キーボード、タッチパネル、スイッチ、フットスイッチ５０５７及び／又はレバー等が適用され得る。入力装置５０４７としてタッチパネルが用いられる場合には、当該タッチパネルは表示装置５０４１の表示面上に設けられてもよい。
【０５４３】
あるいは、入力装置５０４７は、例えばメガネ型のウェアラブルデバイスやＨＭＤ（Head  Mounted  Display）等の、ユーザによって装着されるデバイスであり、これらのデバイスによって検出されるユーザのジェスチャや視線に応じて各種の入力が行われる。また、入力装置５０４７は、ユーザの動きを検出可能なカメラを含み、当該カメラによって撮像された映像から検出されるユーザのジェスチャや視線に応じて各種の入力が行われる。更に、入力装置５０４７は、ユーザの声を収音可能なマイクロフォンを含み、当該マイクロフォンを介して音声によって各種の入力が行われる。このように、入力装置５０４７が非接触で各種の情報を入力可能に構成されることにより、特に清潔域に属するユーザ（例えば術者５０６７）が、不潔域に属する機器を非接触で操作することが可能となる。また、ユーザは、所持している術具から手を離すことなく機器を操作することが可能となるため、ユーザの利便性が向上する。
【０５４４】
処置具制御装置５０４９は、組織の焼灼、切開又は血管の封止等のためのエネルギー処置具５０２１の駆動を制御する。気腹装置５０５１は、内視鏡５００１による視野の確保及び術者の作業空間の確保の目的で、患者５０７１の体腔を膨らめるために、気腹チューブ５０１９を介して当該体腔内にガスを送り込む。レコーダ５０５３は、手術に関する各種の情報を記録可能な装置である。プリンタ５０５５は、手術に関する各種の情報を、テキスト、画像又はグラフ等各種の形式で印刷可能な装置である。
【０５４５】
以下、内視鏡手術システム５０００において特に特徴的な構成について、更に詳細に説明する。
【０５４６】
（支持アーム装置）
支持アーム装置５０２７は、基台であるベース部５０２９と、ベース部５０２９から延伸するアーム部５０３１と、を備える。図示する例では、アーム部５０３１は、複数の関節部５０３３ａ、５０３３ｂ、５０３３ｃと、関節部５０３３ｂによって連結される複数のリンク５０３５ａ、５０３５ｂと、から構成されているが、図５８では、簡単のため、アーム部５０３１の構成を簡略化して図示している。実際には、アーム部５０３１が所望の自由度を有するように、関節部５０３３ａ〜５０３３ｃ及びリンク５０３５ａ、５０３５ｂの形状、数及び配置、並びに関節部５０３３ａ〜５０３３ｃの回転軸の方向等が適宜設定され得る。例えば、アーム部５０３１は、好適に、６自由度以上の自由度を有するように構成され得る。これにより、アーム部５０３１の可動範囲内において内視鏡５００１を自由に移動させることが可能になるため、所望の方向から内視鏡５００１の鏡筒５００３を患者５０７１の体腔内に挿入することが可能になる。
【０５４７】
関節部５０３３ａ〜５０３３ｃにはアクチュエータが設けられており、関節部５０３３ａ〜５０３３ｃは当該アクチュエータの駆動により所定の回転軸まわりに回転可能に構成されている。当該アクチュエータの駆動がアーム制御装置５０４５によって制御されることにより、各関節部５０３３ａ〜５０３３ｃの回転角度が制御され、アーム部５０３１の駆動が制御される。これにより、内視鏡５００１の位置及び姿勢の制御が実現され得る。この際、アーム制御装置５０４５は、力制御又は位置制御等、各種の公知の制御方式によってアーム部５０３１の駆動を制御することができる。
【０５４８】
例えば、術者５０６７が、入力装置５０４７（フットスイッチ５０５７を含む）を介して適宜操作入力を行うことにより、当該操作入力に応じてアーム制御装置５０４５によってアーム部５０３１の駆動が適宜制御され、内視鏡５００１の位置及び姿勢が制御されてよい。当該制御により、アーム部５０３１の先端の内視鏡５００１を任意の位置から任意の位置まで移動させた後、その移動後の位置で固定的に支持することができる。なお、アーム部５０３１は、いわゆるマスタースレイブ方式で操作されてもよい。この場合、アーム部５０３１は、手術室から離れた場所に設置される入力装置５０４７を介してユーザによって遠隔操作され得る。
【０５４９】
また、力制御が適用される場合には、アーム制御装置５０４５は、ユーザからの外力を受け、その外力にならってスムーズにアーム部５０３１が移動するように、各関節部５０３３ａ〜５０３３ｃのアクチュエータを駆動させる、いわゆるパワーアシスト制御を行ってもよい。これにより、ユーザが直接アーム部５０３１に触れながらアーム部５０３１を移動させる際に、比較的軽い力で当該アーム部５０３１を移動させることができる。従って、より直感的に、より簡易な操作で内視鏡５００１を移動させることが可能となり、ユーザの利便性を向上させることができる。
【０５５０】
ここで、一般的に、内視鏡下手術では、スコピストと呼ばれる医師によって内視鏡５００１が支持されていた。これに対して、支持アーム装置５０２７を用いることにより、人手によらずに内視鏡５００１の位置をより確実に固定することが可能になるため、術部の画像を安定的に得ることができ、手術を円滑に行うことが可能になる。
【０５５１】
なお、アーム制御装置５０４５は必ずしもカート５０３７に設けられなくてもよい。また、アーム制御装置５０４５は必ずしも１つの装置でなくてもよい。例えば、アーム制御装置５０４５は、支持アーム装置５０２７のアーム部５０３１の各関節部５０３３ａ〜５０３３ｃにそれぞれ設けられてもよく、複数のアーム制御装置５０４５が互いに協働することにより、アーム部５０３１の駆動制御が実現されてもよい。
【０５５２】
（光源装置）
光源装置５０４３は、内視鏡５００１に術部を撮影する際の照射光を供給する。光源装置５０４３は、例えばＬＥＤ、レーザ光源又はこれらの組み合わせによって構成される白色光源から構成される。このとき、ＲＧＢレーザ光源の組み合わせにより白色光源が構成される場合には、各色（各波長）の出力強度及び出力タイミングを高精度に制御することができるため、光源装置５０４３において撮像画像のホワイトバランスの調整を行うことができる。また、この場合には、ＲＧＢレーザ光源それぞれからのレーザ光を時分割で観察対象に照射し、その照射タイミングに同期してカメラヘッド５００５の撮像素子の駆動を制御することにより、ＲＧＢそれぞれに対応した画像を時分割で撮像することも可能である。当該方法によれば、当該撮像素子にカラーフィルタを設けなくても、カラー画像を得ることができる。
【０５５３】
また、光源装置５０４３は、出力する光の強度を所定の時間ごとに変更するようにその駆動が制御されてもよい。その光の強度の変更のタイミングに同期してカメラヘッド５００５の撮像素子の駆動を制御して時分割で画像を取得し、その画像を合成することにより、いわゆる黒つぶれ及び白とびのない高ダイナミックレンジの画像を生成することができる。
【０５５４】
また、光源装置５０４３は、特殊光観察に対応した所定の波長帯域の光を供給可能に構成されてもよい。特殊光観察では、例えば、体組織における光の吸収の波長依存性を利用して、通常の観察時における照射光（すなわち、白色光）に比べて狭帯域の光を照射することにより、粘膜表層の血管等の所定の組織を高コントラストで撮影する、いわゆる狭帯域光観察（Narrow  Band  Imaging）が行われる。あるいは、特殊光観察では、励起光を照射することにより発生する蛍光により画像を得る蛍光観察が行われてもよい。蛍光観察では、体組織に励起光を照射し当該体組織からの蛍光を観察するもの（自家蛍光観察）、又はインドシアニングリーン（ICG）等の試薬を体組織に局注するとともに当該体組織にその試薬の蛍光波長に対応した励起光を照射し蛍光像を得るもの等が行われ得る。光源装置５０４３は、このような特殊光観察に対応した狭帯域光及び／又は励起光を供給可能に構成され得る。
【０５５５】
（カメラヘッド及びＣＣＵ）
図５９を参照して、内視鏡５００１のカメラヘッド５００５及びＣＣＵ５０３９の機能についてより詳細に説明する。図５９は、図５８に示すカメラヘッド５００５及びＣＣＵ５０３９の機能構成の一例を示すブロック図である。
【０５５６】
図５９を参照すると、カメラヘッド５００５は、その機能として、レンズユニット５００７と、撮像部５００９と、駆動部５０１１と、通信部５０１３と、カメラヘッド制御部５０１５と、を有する。また、ＣＣＵ５０３９は、その機能として、通信部５０５９と、画像処理部５０６１と、制御部５０６３と、を有する。カメラヘッド５００５とＣＣＵ５０３９とは、伝送ケーブル５０６５によって双方向に通信可能に接続されている。
【０５５７】
まず、カメラヘッド５００５の機能構成について説明する。レンズユニット５００７は、鏡筒５００３との接続部に設けられる光学系である。鏡筒５００３の先端から取り込まれた観察光は、カメラヘッド５００５まで導光され、当該レンズユニット５００７に入射する。レンズユニット５００７は、ズームレンズ及びフォーカスレンズを含む複数のレンズが組み合わされて構成される。レンズユニット５００７は、撮像部５００９の撮像素子の受光面上に観察光を集光するように、その光学特性が調整されている。また、ズームレンズ及びフォーカスレンズは、撮像画像の倍率及び焦点の調整のため、その光軸上の位置が移動可能に構成される。
【０５５８】
撮像部５００９は撮像素子によって構成され、レンズユニット５００７の後段に配置される。レンズユニット５００７を通過した観察光は、当該撮像素子の受光面に集光され、光電変換によって、観察像に対応した画像信号が生成される。撮像部５００９によって生成された画像信号は、通信部５０１３に提供される。
【０５５９】
撮像部５００９を構成する撮像素子としては、例えばＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）タイプのイメージセンサであり、Ｂａｙｅｒ配列を有するカラー撮影可能なものが用いられる。なお、当該撮像素子としては、例えば４Ｋ以上の高解像度の画像の撮影に対応可能なものが用いられてもよい。術部の画像が高解像度で得られることにより、術者５０６７は、当該術部の様子をより詳細に把握することができ、手術をより円滑に進行することが可能となる。
【０５６０】
また、撮像部５００９を構成する撮像素子は、３Ｄ表示に対応する右目用及び左目用の画像信号をそれぞれ取得するための１対の撮像素子を有するように構成される。３Ｄ表示が行われることにより、術者５０６７は術部における生体組織の奥行きをより正確に把握することが可能になる。なお、撮像部５００９が多板式で構成される場合には、各撮像素子に対応して、レンズユニット５００７も複数系統設けられる。
【０５６１】
また、撮像部５００９は、必ずしもカメラヘッド５００５に設けられなくてもよい。例えば、撮像部５００９は、鏡筒５００３の内部に、対物レンズの直後に設けられてもよい。
【０５６２】
駆動部５０１１は、アクチュエータによって構成され、カメラヘッド制御部５０１５からの制御により、レンズユニット５００７のズームレンズ及びフォーカスレンズを光軸に沿って所定の距離だけ移動させる。これにより、撮像部５００９による撮像画像の倍率及び焦点が適宜調整され得る。
【０５６３】
通信部５０１３は、ＣＣＵ５０３９との間で各種の情報を送受信するための通信装置によって構成される。通信部５０１３は、撮像部５００９から得た画像信号をＲＡＷデータとして伝送ケーブル５０６５を介してＣＣＵ５０３９に送信する。この際、術部の撮像画像を低レイテンシで表示するために、当該画像信号は光通信によって送信されることが好ましい。手術の際には、術者５０６７が撮像画像によって患部の状態を観察しながら手術を行うため、より安全で確実な手術のためには、術部の動画像が可能な限りリアルタイムに表示されることが求められるからである。光通信が行われる場合には、通信部５０１３には、電気信号を光信号に変換する光電変換モジュールが設けられる。画像信号は当該光電変換モジュールによって光信号に変換された後、伝送ケーブル５０６５を介してＣＣＵ５０３９に送信される。
【０５６４】
また、通信部５０１３は、ＣＣＵ５０３９から、カメラヘッド５００５の駆動を制御するための制御信号を受信する。当該制御信号には、例えば、撮像画像のフレームレートを指定する旨の情報、撮像時の露出値を指定する旨の情報、並びに／又は撮像画像の倍率及び焦点を指定する旨の情報等、撮像条件に関する情報が含まれる。通信部５０１３は、受信した制御信号をカメラヘッド制御部５０１５に提供する。なお、ＣＣＵ５０３９からの制御信号も、光通信によって伝送されてもよい。この場合、通信部５０１３には、光信号を電気信号に変換する光電変換モジュールが設けられ、制御信号は当該光電変換モジュールによって電気信号に変換された後、カメラヘッド制御部５０１５に提供される。
【０５６５】
なお、上記のフレームレートや露出値、倍率、焦点等の撮像条件は、取得された画像信号に基づいてＣＣＵ５０３９の制御部５０６３によって自動的に設定される。つまり、いわゆるＡＥ（Auto  Exposure）機能、ＡＦ（Auto  Focus）機能及びＡＷＢ（Auto  White  Balance）機能が内視鏡５００１に搭載される。
【０５６６】
カメラヘッド制御部５０１５は、通信部５０１３を介して受信したＣＣＵ５０３９からの制御信号に基づいて、カメラヘッド５００５の駆動を制御する。例えば、カメラヘッド制御部５０１５は、撮像画像のフレームレートを指定する旨の情報及び／又は撮像時の露光を指定する旨の情報に基づいて、撮像部５００９の撮像素子の駆動を制御する。また、例えば、カメラヘッド制御部５０１５は、撮像画像の倍率及び焦点を指定する旨の情報に基づいて、駆動部５０１１を介してレンズユニット５００７のズームレンズ及びフォーカスレンズを適宜移動させる。カメラヘッド制御部５０１５は、更に、鏡筒５００３やカメラヘッド５００５を識別するための情報を記憶する機能を備えてもよい。
【０５６７】
なお、レンズユニット５００７や撮像部５００９等の構成を、気密性及び防水性が高い密閉構造内に配置することで、カメラヘッド５００５について、オートクレーブ滅菌処理に対する耐性を持たせることができる。
【０５６８】
次に、ＣＣＵ５０３９の機能構成について説明する。通信部５０５９は、カメラヘッド５００５との間で各種の情報を送受信するための通信装置によって構成される。通信部５０５９は、カメラヘッド５００５から、伝送ケーブル５０６５を介して送信される画像信号を受信する。この際、上記のように、当該画像信号は好適に光通信によって送信され得る。この場合、光通信に対応して、通信部５０５９には、光信号を電気信号に変換する光電変換モジュールが設けられる。通信部５０５９は、電気信号に変換した画像信号を画像処理部５０６１に提供する。
【０５６９】
また、通信部５０５９は、カメラヘッド５００５に対して、カメラヘッド５００５の駆動を制御するための制御信号を送信する。当該制御信号も光通信によって送信されてよい。
【０５７０】
画像処理部５０６１は、カメラヘッド５００５から送信されたＲＡＷデータである画像信号に対して各種の画像処理を施す。当該画像処理としては、例えば現像処理、高画質化処理（帯域強調処理、超解像処理、ＮＲ（Noise  reduction）処理及び／又は手ブレ補正処理等）、並びに／又は拡大処理（電子ズーム処理）等、各種の公知の信号処理が含まれる。また、画像処理部５０６１は、ＡＥ、ＡＦ及びＡＷＢを行うための、画像信号に対する検波処理を行う。
【０５７１】
画像処理部５０６１は、ＣＰＵやＧＰＵ等のプロセッサによって構成され、当該プロセッサが所定のプログラムに従って動作することにより、上述した画像処理や検波処理が行われ得る。なお、画像処理部５０６１が複数のＧＰＵによって構成される場合には、画像処理部５０６１は、画像信号に係る情報を適宜分割し、これら複数のＧＰＵによって並列的に画像処理を行う。
【０５７２】
制御部５０６３は、内視鏡５００１による術部の撮像、及びその撮像画像の表示に関する各種の制御を行う。例えば、制御部５０６３は、カメラヘッド５００５の駆動を制御するための制御信号を生成する。この際、撮像条件がユーザによって入力されている場合には、制御部５０６３は、当該ユーザによる入力に基づいて制御信号を生成する。あるいは、内視鏡５００１にＡＥ機能、ＡＦ機能及びＡＷＢ機能が搭載されている場合には、制御部５０６３は、画像処理部５０６１による検波処理の結果に応じて、最適な露出値、焦点距離及びホワイトバランスを適宜算出し、制御信号を生成する。
【０５７３】
また、制御部５０６３は、画像処理部５０６１によって画像処理が施された画像信号に基づいて、術部の画像を表示装置５０４１に表示させる。この際、制御部５０６３は、各種の画像認識技術を用いて術部画像内における各種の物体を認識する。例えば、制御部５０６３は、術部画像に含まれる物体のエッジの形状や色等を検出することにより、鉗子等の術具、特定の生体部位、出血、エネルギー処置具５０２１使用時のミスト等を認識することができる。制御部５０６３は、表示装置５０４１に術部の画像を表示させる際に、その認識結果を用いて、各種の手術支援情報を当該術部の画像に重畳表示させる。手術支援情報が重畳表示され、術者５０６７に提示されることにより、より安全かつ確実に手術を進めることが可能になる。
【０５７４】
カメラヘッド５００５及びＣＣＵ５０３９を接続する伝送ケーブル５０６５は、電気信号の通信に対応した電気信号ケーブル、光通信に対応した光ファイバ、又はこれらの複合ケーブルである。
【０５７５】
ここで、図示する例では、伝送ケーブル５０６５を用いて有線で通信が行われていたが、カメラヘッド５００５とＣＣＵ５０３９との間の通信は無線で行われてもよい。両者の間の通信が無線で行われる場合には、伝送ケーブル５０６５を手術室内に敷設する必要がなくなるため、手術室内における医療スタッフの移動が当該伝送ケーブル５０６５によって妨げられる事態が解消され得る。
【０５７６】
以上、本開示に係る技術が適用され得る内視鏡手術システム５０００の一例について説明した。なお、ここでは、一例として内視鏡手術システム５０００について説明したが、本開示に係る技術が適用され得るシステムはかかる例に限定されない。例えば、本開示に係る技術は、検査用軟性内視鏡システムや顕微鏡手術システムに適用されてもよい。
【０５７７】
［構成の組み合わせ例］
本技術は、以下のような構成をとることもできる。
【０５７８】
（１）
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配する分配部と、
分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信する複数の信号処理部と、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部と
を備える送信装置。
（２）
前記伝送対象のデータは、撮像して得られた画像データであり、
前記画像データは、それぞれの前記パケットにライン単位で格納される
前記（１）に記載の送信装置。
（３）
前記パラメータを設定し、前記画像データの供給元となる撮像部をさらに備え、
前記制御部は、前記受信装置から送信された、前記モードの変更を要求する情報が前記撮像部により受信された場合、前記撮像部により設定された前記パラメータの変更を反映させる
前記（２）に記載の送信装置。
（４）
変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を前記トレーニング処理を行わずに開始する場合、
複数の前記信号処理部は、前記トレーニング処理を行った場合に前記トレーニング処理に要する期間、ブランキングデータを送信し、前記ブランキングデータの送信終了後、前記データストリームを送信する
前記（２）または（３）に記載の送信装置。
（５）
複数の前記信号処理部は、前記パラメータの変更が行われたタイミングを基準として次のフレームの送信開始まで、前記ブランキングデータを送信する
前記（４）に記載の送信装置。
（６）
前記パラメータの変更が、所定のラインの送信後のブランキング期間に行われた場合、
複数の前記信号処理部は、前記所定のラインの次のラインの前記画像データを格納する前記パケットを構成する前記パケットデータの送信を、変更後の前記パラメータにより規定される前記モードで行う
前記（２）に記載の送信装置。
（７）
前記パラメータの変更が、所定のフレームの送信後のブランキング期間に行われた場合、
複数の前記信号処理部は、前記所定のフレームの次のフレームの前記画像データを格納する前記パケットを構成する前記パケットデータの送信を、変更後の前記パラメータにより規定される前記モードで行う
前記（２）に記載の送信装置。
（８）
前記パラメータの変更が行われたか否かを表すフラグをヘッダに含む前記パケットを生成するパケット生成部をさらに備える
前記（６）または（７）に記載の送信装置。
（９）
変更後の前記パラメータをヘッダに含む前記パケットを生成するパケット生成部をさらに備える
前記（６）または（７）に記載の送信装置。
（１０）
前記パラメータは、
前記データストリームの送信に用いる前記レーンの数を表すレーン情報、
前記画像データを構成する各ピクセルのビット数を表すビット情報、
１ラインのピクセル数を表すライン情報、
前記パケットを構成するペイロードデータの誤り訂正に用いられる誤り訂正符号の種類を表す誤り訂正符号情報、
前記パケットを構成するフッタに含まれ、前記ペイロードデータの誤り検出に用いられる誤り検出符号の種類を表す誤り検出符号情報、
および、それぞれの前記レーンの伝送レートの種類を表すレート情報
のうちの少なくともいずれかを含む
前記（２）乃至（９）のうちのいずれかに記載の送信装置。
（１１）
前記制御部は、変更する前記パラメータが、前記レーン情報または前記レート情報である場合、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を前記トレーニング処理を行ってから開始させ、前記ビット情報、前記ライン情報、前記誤り訂正符号情報、または前記誤り検出符号情報である場合、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を前記トレーニング処理を行わずに開始させる
前記（１０）に記載の送信装置。
（１２）
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、
分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信し、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える
ステップを含む制御方法。
（１３）
コンピュータに、
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、
分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信し、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える
ステップを含む処理を実行させるプログラム。
（１４）
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを複数の前記レーンを用いて並列に送信する送信装置から送信されてきた前記データストリームを受信する複数の信号処理部と、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部と
を備える受信装置。
（１５）
前記パケットのヘッダに含まれる、前記パラメータの変更が行われたか否かを表すフラグが、前記パラメータの変更が行われたことを表している場合、
前記制御部は、前記データストリームの受信を、前記トレーニング処理を行わずに開始させる
前記（１４）に記載の受信装置。
（１６）
前記制御部は、前記データストリームの受信を、前記ヘッダに含まれる前記パラメータを変更後の前記パラメータとして用いて、前記トレーニング処理を行わずに開始させる
前記（１４）に記載の受信装置。
（１７）
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを複数の前記レーンを用いて並列に送信する送信装置から送信されてきた前記データストリームを受信し、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える
ステップを含む制御方法。
（１８）
コンピュータに、
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配し、分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを複数の前記レーンを用いて並列に送信する送信装置から送信されてきた前記データストリームを受信し、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える
ステップを含む処理を実行させるプログラム。
（１９）
伝送対象のデータを格納するパケットを構成するパケットデータを複数のレーンに分配する分配部と、
分配した前記パケットデータを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて受信装置に対して並列に送信する複数の信号処理部と、
前記データストリームの送信が所定のモードで行われている場合において、前記モードの内容を規定するパラメータを変更するとき、変更後の前記パラメータにより規定される前記モードでの前記データストリームの送信を、データの同期と前記レーン間のデータのタイミングのずれの補正とを前記受信装置において行うためのトレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部と
を備える送信装置と、
前記送信装置から送信されてきた前記データストリームを受信する複数の信号処理部と、
前記データストリームの送信が所定のモードで行われている場合において、前記パラメータを変更するとき、変更後の前記パラメータにより規定される前記モードで送信された前記データストリームの受信を、前記トレーニング処理を行ってから開始するか、前記トレーニング処理を行わずに開始するかを、変更する前記パラメータの種類に応じて切り替える制御部と
を備える受信装置と
を含む送受信システム。
【符号の説明】
【０５７９】
１  伝送システム，  １１  イメージセンサ，  １２  DSP，  ２１  撮像部，  ２２  送信部，  ３１  受信部，  ３２  画像処理部，  ６２  Pixel to Byte変換部，  ６３  ペイロードECC挿入部，  ６４  パケット生成部，  ６５  レーン分配部，  ７２  ヘッダ生成部，  ８３−０乃至８３−Ｎ  信号処理部，  ９１  制御コード挿入部，  ９２  8B10Bシンボルエンコーダ，  ９３  同期部，  ９４  送信部，  １０２−０乃至１０２−Ｎ  信号処理部，  １１１  受信部，  １１２  クロック生成部，  １１３  同期部，  １１４  シンボル同期部，  １１５  10B8Bシンボルデコーダ，  １１６  スキュー補正部，  １１７  制御コード除去部，  １２２  レーン統合部，  １２３  パケット分離部，  １２４  ペイロードエラー訂正部，  １２５  Byte to Pixel変換部，  １３２  ヘッダエラー訂正部
【図１】
2018225533.tif 000009
【図２】
2018225533.tif 000010
【図３】
2018225533.tif 000011
【図４】
2018225533.tif 000012
【図５】
2018225533.tif 000013
【図６】
2018225533.tif 000014
【図７】
2018225533.tif 000015
【図８】
2018225533.tif 000016
【図９】
2018225533.tif 000017
【図１０】
2018225533.tif 000018
【図１１】
2018225533.tif 000019
【図１２】
2018225533.tif 000020
【図１３】
2018225533.tif 000021
【図１４】
2018225533.tif 000022
【図１５】
2018225533.tif 000023
【図１６】
2018225533.tif 000024
【図１７】
2018225533.tif 000025
【図１８】
2018225533.tif 000026
【図１９】
2018225533.tif 000027
【図２０】
2018225533.tif 000028
【図２１】
2018225533.tif 000029
【図２２】
2018225533.tif 000030
【図２３】
2018225533.tif 000031
【図２４】
2018225533.tif 000032
【図２５】
2018225533.tif 000033
【図２６】
2018225533.tif 000034
【図２７】
2018225533.tif 000035
【図２８】
2018225533.tif 000036
【図２９】
2018225533.tif 000037
【図３０】
2018225533.tif 000038
【図３１】
2018225533.tif 000039
【図３２】
2018225533.tif 000040
【図３３】
2018225533.tif 000041
【図３４】
2018225533.tif 000042
【図３５】
2018225533.tif 000043
【図３６】
2018225533.tif 000044
【図３７】
2018225533.tif 000045
【図３８】
2018225533.tif 000046
【図３９】
2018225533.tif 000047
【図４０】
2018225533.tif 000048
【図４１】
2018225533.tif 000049
【図４２】
2018225533.tif 000050
【図４３】
2018225533.tif 000051
【図４４】
2018225533.tif 000052
【図４５】
2018225533.tif 000053
【図４６】
2018225533.tif 000054
【図４７】
2018225533.tif 000055
【図４８】
2018225533.tif 000056
【図４９】
2018225533.tif 000057
【図５０】
2018225533.tif 000058
【図５１】
2018225533.tif 000059
【図５２】
2018225533.tif 000060
【図５３】
2018225533.tif 000061
【図５４】
2018225533.tif 000062
【図５５】
2018225533.tif 000063
【図５６】
2018225533.tif 000064
【図５７】
2018225533.tif 000065
【図５８】
2018225533.tif 000066
【図５９】
2018225533.tif 000067
【国際調査報告】
2018225533.tif 000068
2018225533.tif 000069
2018225533.tif 000070
2018225533.tif 000071