JP5936030B2 - 情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
JP5936030B2
JP5936030B2 JP2011269877A JP2011269877A JP5936030B2 JP 5936030 B2 JP5936030 B2 JP 5936030B2 JP 2011269877 A JP2011269877 A JP 2011269877A JP 2011269877 A JP2011269877 A JP 2011269877A JP 5936030 B2 JP5936030 B2 JP 5936030B2
Authority
JP
Japan
Prior art keywords
unit
data
code
symbol
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2011269877A
Other languages
English (en)
Other versions
JP2013123087A (ja
Inventor
一久 舟本
一久 舟本
龍男 新橋
龍男 新橋
杉岡 達也
達也 杉岡
健一 丸子
健一 丸子
直弘 越坂
直弘 越坂
高橋 宏雄
宏雄 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2011269877A priority Critical patent/JP5936030B2/ja
Priority to US14/353,912 priority patent/US9565424B2/en
Priority to CN201280059307.8A priority patent/CN103975549B/zh
Priority to PCT/JP2012/081056 priority patent/WO2013084812A1/ja
Publication of JP2013123087A publication Critical patent/JP2013123087A/ja
Application granted granted Critical
Publication of JP5936030B2 publication Critical patent/JP5936030B2/ja
Priority to US15/404,381 priority patent/US10177878B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0072Error control for data other than payload data, e.g. control data
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • H03M5/145Conversion to or from block codes or representations thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4906Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
    • H04L25/4908Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using mBnB codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/002Diagnosis, testing or measuring for television systems or their details for television cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/70SSIS architectures; Circuits associated therewith
    • H04N25/71Charge-coupled device [CCD] sensors; Charge-transfer registers specially adapted for CCD sensors
    • H04N25/75Circuitry for providing, modifying or processing image signals from the pixel array

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Information Transfer Systems (AREA)
  • Error Detection And Correction (AREA)

Description

本開示は、情報処理装置、情報処理方法、及びプログラムに関し、特に、例えば、制御コードにエラー(誤り)が生じている場合においても、制御コードを精度良く検出できるようにした情報処理装置、情報処理方法、及びプログラムに関する。
例えば、デジタルカメラには、レンズを介して受光した光を光電変換して得られる画像信号を生成するイメージセンサと、イメージセンサから出力される画像信号に画像処理を施すDSP(digital signal processor)が内蔵されている。
イメージセンサでは、画像信号をDSPに出力する際に、画像信号を複数のパケットにパケット化(分割)し、各パケットに制御コードを付加する。なお、制御コードとしては、例えば、パケットの開始位置を示すスタートコードや、パケットの終了位置を示すエンドコード等が付加される。
そして、イメージセンサは、制御コードが付加されたパケットを、8ビット毎に10ビットのビット列に変換する8B10B変換を行い、8B10B変換後のパケットをDSPに出力する。
これに対して、DSPでは、イメージセンサから出力される8B10B変換後のパケットを、10ビット毎に8ビットのビット列に変換する10B8B変換(8B10B逆変換)を行う。
また、DSPでは、制御コードを表すビットパターンを予め保持しており、保持しているビットパターンに基づいて、10B8B変換後のパケットから制御コードを検出する。
すなわち、例えば、DSPでは、10B8B変換後のパケットに含まれるビット列のうち、予め保持しているビットパターンと一致するビット列を、制御コードとして検出する。
そして、DSPは、検出した制御コードに基づいて、10B8B変換後のパケットから画像信号を抽出し、抽出した画像信号に画像処理を行う。
なお、8B10B変換及び10B8B変換は、例えば、予め保持している変換テーブルを用いて行われる(例えば、特許文献1参照)。
特開2010-204881号公報
上述のDSPでは、10B8B変換後のパケットに含まれるビット列のうち、予め保持しているビットパターンと一致するビット列を、制御コードとして検出する。
しかしながら、例えば、イメージセンサからDSPに転送中のパケットに含まれる制御コードとしてのビット列にエラーが生じた場合、制御コードとしてのビット列と、予め保持しているビットパターンとが一致しないため、制御コードを検出できなくなってしまう。
本開示は、このような状況に鑑みてなされたものであり、制御コードにエラーが生じている場合においても、制御コードを精度良く検出できるようにするものである。
本開示の一側面である情報処理装置は、第1のビット数からなるビットデータにより構成される第1のデータが、前記ビットデータ毎に、前記第1のビット数よりも多い第2のビット数からなるシンボルに変換されたことにより得られる第2のデータを取得する取得部と、取得された前記第2のデータが前記第1のデータに逆変換される前の前記第2のデータに含まれる複数のシンボルから構成される第1のシンボル列を、検出対象のコードを表す第2のシンボル列と比較する比較部と、前記比較部による比較結果に基づいて、前記第2のデータから、前記検出対象のコードとしての前記第1のシンボル列を検出する検出部とを備え、前記検出部は、前記比較部による比較結果に基づいて、前記第1のシンボル列と前記第2のシンボル列との対応するビットどうしが一致しない個数を表すハミング距離を算出するハミング算出部と、算出された前記ハミング距離が予め決められた閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出するコード検出部と、前記検出対象のコードを検出する検出率に応じて、前記閾値を変更する変更部とを有し、前記コード検出部は、前記ハミング距離が、変更後の前記閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出し、前記ハミング算出部は、前記第1のシンボル列と前記第2のシンボル列との対応するビットのうち、連続して並ぶ第1の個数のビットどうしが一致しない場合、前記第1の個数のビットどうしが、前記第1の個数よりも少ない第2の個数のビットだけ一致しないものとして取り扱うことにより、前記ハミング距離を算出する
前記閾値は、前記第2のシンボル列に含まれるシンボルとは異なるシンボルにより構成される第3のシンボル列と、前記第2のシンボル列とのハミング距離の最小値よりも小さな値に予め決めることができる。
取得された前記第2のデータを、前記シンボル毎に、前記ビットデータに変換することにより、前記第1のデータを生成する逆変換部と、検出された前記検出対象のコードに基づいて、前記逆変換部により生成される前記第1のデータに対する処理を行う処理部とをさらに設けることができる。
本開示の一側面である情報処理方法は、所定のコードを検出する情報処理装置の情報処理方法において、前記情報処理装置による、第1のビット数からなるビットデータにより構成される第1のデータが、前記ビットデータ毎に、前記第1のビット数よりも多い第2のビット数からなるシンボルに変換されたことにより得られる第2のデータを取得する取得ステップと、取得された前記第2のデータが前記第1のデータに逆変換される前の前記第2のデータに含まれる複数のシンボルから構成される第1のシンボル列を、検出対象のコードを表す第2のシンボル列と比較する比較ステップと、前記比較ステップによる比較結果に基づいて、前記第2のデータから、前記検出対象のコードとしての前記第1のシンボル列を検出する検出ステップとを含み、前記検出ステップは、前記比較ステップによる比較結果に基づいて、前記第1のシンボル列と前記第2のシンボル列との対応するビットどうしが一致しない個数を表すハミング距離を算出するハミング算出ステップと、算出された前記ハミング距離が予め決められた閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出するコード検出ステップと、前記検出対象のコードを検出する検出率に応じて、前記閾値を変更する変更ステップとを含み、前記コード検出ステップは、前記ハミング距離が、変更後の前記閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出し、前記ハミング算出ステップは、前記第1のシンボル列と前記第2のシンボル列との対応するビットのうち、連続して並ぶ第1の個数のビットどうしが一致しない場合、前記第1の個数のビットどうしが、前記第1の個数よりも少ない第2の個数のビットだけ一致しないものとして取り扱うことにより、前記ハミング距離を算出する。
本開示の一側面であるプログラムは、コンピュータを、第1のビット数からなるビットデータにより構成される第1のデータが、前記ビットデータ毎に、前記第1のビット数よりも多い第2のビット数からなるシンボルに変換されたことにより得られる第2のデータを取得する取得部と、取得された前記第2のデータが前記第1のデータに逆変換される前の前記第2のデータに含まれる複数のシンボルから構成される第1のシンボル列を、検出対象のコードを表す第2のシンボル列と比較する比較部と、前記比較部による比較結果に基づいて、前記第2のデータから、前記検出対象のコードとしての前記第1のシンボル列を検出する検出部として機能させ、前記検出部は、前記比較部による比較結果に基づいて、前記第1のシンボル列と前記第2のシンボル列との対応するビットどうしが一致しない個数を表すハミング距離を算出するハミング算出部と、算出された前記ハミング距離が予め決められた閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出するコード検出部と、前記検出対象のコードを検出する検出率に応じて、前記閾値を変更する変更部と有し、前記コード検出部は、前記ハミング距離が、変更後の前記閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出し、前記ハミング算出部は、前記第1のシンボル列と前記第2のシンボル列との対応するビットのうち、連続して並ぶ第1の個数のビットどうしが一致しない場合、前記第1の個数のビットどうしが、前記第1の個数よりも少ない第2の個数のビットだけ一致しないものとして取り扱うことにより、前記ハミング距離を算出する
本開示の第1の側面によれば、第1のビット数からなるビットデータにより構成される第1のデータが、前記ビットデータ毎に、前記第1のビット数よりも多い第2のビット数からなるシンボルに変換されたことにより得られる第2のデータが取得され、取得された前記第2のデータが前記第1のデータに逆変換される前の前記第2のデータに含まれる複数のシンボルから構成される第1のシンボル列が、検出対象のコードを表す第2のシンボル列と比較され、その比較結果に基づいて、前記第2のデータから、前記検出対象のコードとしての前記第1のシンボル列が検出される。
本開示によれば、制御コードにエラーが生じている場合においても、制御コードを精度良く検出することが可能となる。
本開示における伝送システムの構成例を示すブロック図である。 図1の送信部の詳細な構成例を示すブロック図である。 8B10B変換に用いる変換テーブルの一例を示す図である。 図1の受信部の詳細な構成例を示すブロック図である。 10B8B変換の様子の一例を示す図である。 パディングコードにエラーが生じたときの一例を示す図である。 図1の伝送システムが行うシリアル転送処理を説明するためのフローチャートである。 図7のステップS3におけるパケット送信処理の詳細を説明するためのフローチャートである。 図7のステップS4におけるパケット受信処理の詳細を説明するためのフローチャートである。 図1の受信部の詳細な他の構成例を示すブロック図である。 図10の制御コード検出部が、パディングコードを検出するときの様子の一例を示す図である。 図10の受信部が行うパケット受信処理の詳細を説明するためのフローチャートである。 バースト誤りが生じたパディングコードの一例を示す図である。 本開示における伝送システムの他の構成例を示すブロック図である。 図14の受信部の詳細な構成例を示すブロック図である。 図14の伝送システムが行うパラレル転送処理を説明するためのフローチャートである。 図16のステップS84におけるパケット受信処理の詳細を説明するためのフローチャートである。 コンピュータの構成例を示すブロック図である。
以下、本開示における実施の形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(10B8B変換後のパケットから、ハミング距離を用いて制御コードを検出するときの一例)
2.第2の実施の形態(10B8B変換前のパケットから、ハミング距離を用いて制御コードを検出するときの一例)
3.第3の実施の形態(パラレル伝送を行うときの一例)
4.変形例
<1.第1の実施の形態>
[伝送システム1の構成例]
図1は、第1の実施の形態である伝送システム1の構成例を示している。
この伝送システム1は、イメージセンサ21及びDSP(digital signal processor)22から構成される。イメージセンサ21及びDSP22は、それぞれ異なるLSI(large scale integration)等により構成され、撮像機能を実現するものとして、例えば、デジタルカメラや携帯電話機等の内部に設けられる。
伝送システム1において、イメージセンサ21とDSP22とは1本の伝送路を介して接続されている。伝送路は、有線の伝送路(例えば、信号線等)であってもよいし、無線の伝送路であってもよい。なお、図1において、lane1は、1本の伝送路を表している。
イメージセンサ21は、撮像部41、パケット化部42、送信部43、及び制御部44から構成される。
撮像部41は、例えばCMOS(complementary metal oxide semiconductor)やCCD(charge coupled device)等の撮像素子から構成され、レンズを介して受光した光を光電変換し、その光電変換により得られる画像信号を、パケット化部42に供給する。
パケット化部42は、撮像部41からの画像信号を、複数のパケットにパケット化(分割)し、送信部43に供給する。
送信部43は、パケット化部42からのパケットに、パケットの開始位置を示すスタートコード(Start Code)や、パケットの終了位置を示すエンドコード(End Code)等の制御コードを付加する。
なお、制御コードとしては、スタートコード及びエンドコードの他、パディングコード(Pad Code)やデスキューコード(Deskew Code)等が存在する。
パディングコードは、撮像部41から伝送(出力)される画像信号の伝送レートと、イメージセンサ21(送信部43)からDSP22(受信部61)に伝送される画像信号の伝送レートとの差を埋めるために付加される。
すなわち、例えば、撮像部41の伝送レートが2Gbpsであり、送信部43の伝送レートが5Gbpsである場合、送信部43から受信部61に、2Gbpsで画像信号が伝送されるように、パディングコードが付加される。
また、デスキューコードは、イメージセンサ21からDSP22に対して、複数の伝送路を用いて並列にパケットを転送するパラレル転送を行う場合、複数の異なる伝送路間で生じるスキュー(パケットの遅延)を補正するために付加される。なお、伝送システム1では、シリアル転送を行うので、スキューが生じず、デスキューコードを付加する必要がないが、便宜的に付加するようにしている。
また、送信部43は、予め保持している変換テーブルを用いて、制御コードを付加済みのパケットを、8ビットのビット列を表すビットデータ毎に、10ビットのビット列を表すシンボルに変換する8B10B変換を施す。
そして、送信部43は、8B10B変換後のパケットを、1本の伝送路を介して、DSP22にシリアル転送する。なお、送信部43の詳細は、図2を参照して詳述する。
制御部44は、撮像部41、パケット化部42、及び送信部43を制御する。
DSP22は、受信部61、パケット組立部62、画像処理部63、及び制御部64から構成される。なお、DSP22の受信部61には、送信部43から、1本の伝送路を介して、複数のシンボルにより構成されるパケットが送信されてくる。
受信部61は、1本の伝送路を介して送信部43から送信されてくるパケットを受信し、受信したパケットを、10ビットのシンボル毎に、8ビットのビットデータに変換する10B8B変換(8B10B逆変換)を施す。
さらに、受信部61は、10B8B変換後のパケットに含まれるデータ列のうち、制御コードを表すデータ列とのハミング距離が予め決められた閾値以下であるデータ列を、制御コードとして検出する。
ここで、データ列とは、連続して並ぶビットデータの列を表す。また、ハミング距離とは、10B8B変換後のパケットに含まれるデータ列と、制御コードを表すデータ列との対応するビットどうしが一致しない個数を表す。
そして、受信部61は、検出した制御コードを、10B8B変換後のパケットから除去し、除去後のパケット(画像信号の一部分のみから構成される)を、パケット組立部62に供給する。
受信部61は、上述のように、10B8B変換後のパケットから、ハミング距離を用いて制御コードを検出するようにしている。しかしながら、受信部61は、10B8B変換前のパケットから、ハミング距離を用いて制御コードを検出するようにしてもよい。
なお、10B8B変換後のパケットから制御コードを検出するときの受信部61の構成は、図4を参照して詳述する。また、10B8B変換前のパケットから制御コードを検出するときの受信部61の構成は、図10を参照して詳述する。
パケット組立部62は、受信部61からの各パケット(制御コードが除去されたパケット)を組み立てることにより、イメージセンサ21の撮像部41から出力されたものと同一の画像信号を生成し、画像処理部63に供給する。
画像処理部63は、パケット組立部62からの画像信号に対して画像処理(例えばノイズ除去や、手振れ補正等)を施し、画像処理後の画像信号を出力する。なお、画像処理後の画像信号は、例えば、伝送システム1を内蔵するデジタルカメラや携帯電話機等に設けられた記憶部や表示部に出力され、記憶部に記憶されたり、画像信号に対応する画像が表示部に表示される。
制御部64は、受信部61、パケット組立部62、及び画像処理部63を制御する。
[送信部43の構成例]
次に、図2は、図1の送信部43の構成例を示している。
この送信部43は、制御コード付加部81、8B10B変換部82、及びPS(parallel to serial)変換部83から構成される。
制御コード付加部81には、パケット化部42からパケットが供給される。制御コード付加部81は、パケット化部42からのパケットに制御コードを付加し、制御コードを付加後のパケットを、8B10B変換部82に供給する。
8B10B変換部82は、図示せぬ内蔵のメモリに予め保持している変換テーブルを用いて、制御コード付加部81からのパケットを、8ビットのビットデータ毎に、10ビットのシンボルに変換する8B10B変換を行う。
ここで、制御コード付加部81から8B10B変換部82に供給されるパケットは、複数のビットデータにより構成される。このビットデータは、ペイロード(いまの場合、画像信号の一部分)、又は制御コードの一部分のいずれかを表す。
なお、8B10B変換は、送信されるパケットの各ビットに同じ値(1又は0)が所定の数以上連続して並ぶことを防止するために行われる。これにより、パケットの受信側であるDSP22において、容易にビット同期をとることができる。
[8B10B変換に用いられる変換テーブルの一例]
次に、図3は、8B10B変換に用いる変換テーブルの一例を示している。
図3には、制御コードの一部分である8ビットのビットデータ(図3の「8B HGF_EDCBA」に対応)を、10ビットのシンボルKx.y(図3の「10B abcdei_fghj」に対応)に8B10B変換する際に用いられる変換テーブルの一例が示されている。
なお、ペイロードとしての8ビットのビットデータを、10ビットのシンボルDx.yに8B10B変換する場合、制御コードの一部分である8ビットのビットデータを8B10B変換する場合に用いられる変換テーブルと同様の変換テーブルを用いて8B10B変換が行われる。
このため、図3では、制御コードの一部分である8ビットのビットデータを8B10B変換する場合のみを説明し、ペイロードとしての8ビットのビットデータを8B10B変換する場合の説明は省略する。
図3に示される変換テーブルは、8ビットのビットデータを構成する各ビットのうちの下位5ビットEDCBAが、10ビットのシンボルを構成する各ビットのうちの上位6ビットabcdeiにビット変換される場合の対応関係を示している。また、図3に示される変換テーブルは、8ビットのビットデータを構成する各ビットのうちの上位3ビットHGFが、10ビットのシンボルを構成する各ビットのうちの下位4ビットfghjにビット変換される場合の対応関係を示している。
10ビットのシンボルKx.yとしては、8ビットのビットデータに対応する2種類のシンボルが存在する。これらの2種類のシンボルのいずれを出力するかは、直前に出力されたシンボルのランニングディスパリティ値(running disparity値:以下、RD値という)により決定される。
ここで、RD値は、直前に出力されたシンボルに含まれる1の個数から、同一のシンボルに含まれる0の個数を減算して得られる値をいう。
すなわち、図3において、直前に出力されたシンボルのRD値が正である場合、極性「RD-」に対応するシンボルが次に出力され、直前に出力されたシンボルのRD値が負である場合、極性「RD+」に対応するシンボルが次に出力される。
なお、直前に出力されたシンボルのRD値が0である場合、直前に出力されたシンボルと同一の極性に対応するシンボルが次に出力される。具体的には、例えば、直前に出力されたシンボルのRD値が0である場合、直前に出力されたシンボルに対応する極性が「RD-」であるときには、「RD-」に対応するシンボルが次に出力される。
また、シンボルKx.yのxは、8B10B変換前のビットデータを構成する各ビットのうちの下位5ビットEDCBAを10進数で表現した値を表す。さらに、シンボルKx.yのyは、8B10B変換前のビットデータを構成する各ビットのうちの上位3ビットHGFを10進数で表現した値を表す。このことは、シンボルDx.yについても同様である。
図2に戻り、8B10B変換部82は、8B10B変換後のパケットをPS変換部83に供給する。
PS変換部83は、8B10B変換部82からのパケットを、パラレル転送用のデータからシリアル転送用のデータに変換するPS変換を行う。そして、PS変換部83は、PS変換後のパケットを、シリアル転送により、伝送路(lane1)を介してDSP22に送信する。
[受信部61の構成例]
次に、図4は、図1の受信部61の構成例を示している。
受信部61は、SP(serial to parallel)変換部101、10B8B変換部102、制御コード検出部103、及び制御コード除去部104から構成される。
SP変換部101は、イメージセンサ21から伝送路(lane1)を介して送信されてくる各パケットを受信する。そして、SP変換部101は、受信したパケットを、シリアル転送用のデータからパラレル転送用のデータに変換するSP変換(PS変換の逆変換)を行い、SP変換後のパケットを、10B8B変換部102に供給する。
10B8B変換部102は、送信部43の8B10B変換部82(図2)が予め保持している変換テーブルと同一の変換テーブルを、図示せぬ内蔵のメモリに予め保持している。
10B8B変換部102は、図示せぬ内蔵のメモリに予め保持している変換テーブルを用いて、SP変換部101からのパケットを、10ビットのシンボル毎に、8ビットのビットデータに変換する10B8B変換(8B10B変換の逆変換)を行う。
そして、10B8B変換部102は、複数のビットデータにより構成されるパケットを、制御コード検出部103及び制御コード除去部104に供給する。
制御コード検出部103は、検出対象の制御コード(例えば、スタートコード、エンドコード、パディングコード、及びデスキューコード等)毎に、その制御コードを表すデータ列を、図示せぬ内蔵のメモリに比較用のデータ列として予め保持している。
制御コード検出部103は、10B8B変換部102からのパケットに含まれるデータ列と、予め保持している比較用のデータ列とを比較する。
また、制御コード検出部103は、その比較結果に基づいて、10B8B変換部102からのパケットに含まれるデータ列のうち、比較用のデータ列とのハミング距離が予め決められた閾値以下となるデータ列を、制御コードとして検出する。
すなわち、例えば、制御コード検出部103は、その比較結果に基づいて、10B8B変換部102からのパケットに含まれるデータ列のそれぞれについて、比較用のデータ列とのハミング距離を算出する。
そして、制御コード検出部103は、10B8B変換部102からのパケットに含まれるデータ列のそれぞれについて算出されたハミング距離のうち、予め決められた閾値以下となるハミング距離に対応するデータ列を、制御コードとして検出する。
さらに、制御コード検出部103は、その検出結果に基づいて、10B8B変換部102から制御コード除去部104に供給されるパケットを構成する各ビットデータのうち、制御コードとしてのビットデータが存在する位置を表す制御コード情報を、各制御コード毎に生成し、制御コード除去部104に供給する。
制御コード除去部104は、制御コード検出部103からの制御コード情報に基づいて、10B8B変換部102からのパケットから、制御コードを除去する。そして、制御コード除去部104は、制御コードの除去により、ペイロード(いまの場合、画像信号の一部分)のみとされたパケットを、パケット組立部62に供給する。
次に、図5は、10B8B変換部102が行う10B8B変換の様子の一例を示している。
図5Aには、SP変換部101から10B8B変換部102に供給されるパケットの一例を示している。このパケットは、図5Aに示されるように、ペイロード(payload)、ペイロードの間に付加(挿入)されたパディングコード(Pad Code)、ペイロードの先頭に付加されたスタートコード(Start Code)、ペイロードの末尾に付加されたエンドコード(End Code)、エンドコードの末尾に付加されたデスキューコード(Deskew Code)により構成されている。
なお、図5Aに示される矩形は、それぞれ、10ビットのシンボルを表す。したがって、スタートコード、パディングコード、エンドコード、又はデスキューコードは、それぞれ、4個のシンボルから構成される。なお、制御コードを構成するシンボルの個数は、4個に限定されず、1個、2個、3個、又は5個以上とすることができる。
図5Bには、10B8B変換前のパディングコードを表すシンボル列が示されている。すなわち、図5Bには、パディングデータとしてのシンボル列を構成する4個のシンボルKx.yとして、K23.7(1110101000),K28.4(0011110010),K28.6(0011110110),K28.3(0011110011)が示されている。
図5Cには、10B8B変換後のパディングコードを表すデータ列が示されている。すなわち、図5Cには、パディングデータとしてのデータ列を構成する4個のビットデータとして、"11110111"(K23.7),"10011100"(K28.4),"11011100"(K28.6),"01111100"(K28.3)が示されている。
10B8B変換部102は、SP変換部101からのパケット(図5A)を構成する各シンボルを、予め保持している変換テーブルを用いて、10ビットのシンボル(図5B)から、8ビットのシンボル(図5C)に10B8B変換する。
具体的には、10B8B変換部102は、SP変換部101からのパケット(図5A)を構成する各シンボルとして、例えばパディングコードを表す4個のシンボル(図5B)を、それぞれ、4個のビットデータ(図5C)に10B8B変換する。
10B8B変換部102は、10B8B変換後のパケットを、制御コード検出部103及び制御コード除去部104に供給する。
ここで、10B8B変換部102から出力されるパケットから、例えばパディングコードを検出する場合、比較用のデータ列(8ビットのK23.7,K28.4,K28.6,K28.3の組合せからなるデータ列)と一致するデータ列を、パディングコードとして検出する検出方法が考えられる。
しかしながら、伝送路(lane1)を介して送信中のパケットに含まれるパディングコードにエラー(誤り)が生じた場合、上述の検出方法では、エラーの生じたパケットから、パディングコードを検出できないことが生じ得る。
次に、図6は、パディングコードにエラーが生じたときの一例を示している。
図6Aには、図5Aと同様のパケットが示されている。
図6Bには、図5Bに示した10B8B変換前のパディングコードを構成するビットにエラーが生じたときの一例が示されている。なお、図6Bにおいて、「e(error)」が付与されているビットは、エラーにより反転したビット、つまり、図5Bに示したパディングコードのビットとは異なるビットを示している。
すなわち、図6Bには、エラーが生じたパディングコードとしてのシンボル列を構成する4個のシンボルKx.yとして、K23.7(1110101000),K28.5(0011111010),K28.0(0011110100),K28.4(0011110010)が示されている。
図6Cには、図6Bに示したパディングコードを10B8B変換して得られるデータ列を示している。なお、図6Cに示されるデータ列において、「e」が付与されているビットは、図5Cに示したパディングコードのビットとは異なるビットを示している。
すなわち、図6Cには、図6Bに示したパディングコードとしてのシンボル列を10B8B変換して得られるデータ列を構成する4個のビットデータとして、"11110111"(K23.7),"10111100"(K28.5),"00011100"(K28.0),"10011100"(K28.4)が示されている。
図6Bに示したように、例えば、パディングコードにエラーが生じた場合、上述の検出方法では、10B8B変換部102から出力されるパケットから、パディングコードを検出する際に比較される比較用のデータ列と一致するデータ列を検出できないことが生じ得る。
この場合、10B8B変換部102から出力されるパケットから、パディングコードを検出できなくなってしまう。このことは、パディングコード以外の制御コードについても同様のことが言える。
そこで、制御コード検出部103は、10B8B変換部102から供給されるパケットから、比較用のデータ列とのハミング距離が予め決められた閾値以下となるデータ列を、制御コードとして検出するようにしている。
したがって、制御コード検出部103は、パケットに含まれる制御コードのビットにエラーが生じている場合でも、制御コードを精度良く検出できるようになる。
[伝送システム1の動作説明]
次に、図7のフローチャートを参照して、伝送システム1が行うシリアル転送処理を説明する。
このシリアル転送処理は、例えば、イメージセンサ21による被写体の撮像が行われるときに開始される。
ステップS1において、イメージセンサ21の撮像部41は、被写体の撮像を行い、その撮像により得られる画像信号(撮像画像)を、パケット化部42に供給する。すなわち、例えば、撮像部41は、レンズを介して受光した光を光電変換し、その光電変換により得られる画像信号を、パケット化部42に供給する。
ステップS2において、パケット化部42は、撮像部41からの画像信号を、複数のパケットにパケット化(分割)し、送信部43に供給する。
ステップS3において、送信部43は、パケット化部42からのパケットに制御コードを付加して8B10B変換を施し、8B10B変換後のパケットをDSP22に送信するパケット送信処理を行う。なお、ステップS3におけるパケット送信処理は、図8のフローチャートを参照して詳述する。
ステップS4において、DSP22の受信部61は、1本の伝送路を介して送信部43から送信されてくるパケットを受信して10B8B変換(8B10B逆変換)を施し、10B8B変換後のパケットから制御コードを除去してパケット組立部62に出力するパケット受信処理を行う。なお、ステップS4におけるパケット受信処理は、図9のフローチャートを参照して詳述する。
ステップS5において、パケット組立部62は、受信部61からの各パケット(制御コードが除去されたパケット)を組み立てることにより、イメージセンサ21の撮像部41から出力されたものと同一の画像信号を生成し、画像処理部63に供給する。
ステップS6において、画像処理部63は、パケット組立部62からの画像信号に対して画像処理(例えばノイズ除去や、手振れ補正等)を施し、画像処理後の画像信号を出力する。以上で図7のシリアル転送処理は終了される。
次に、図8のフローチャートを参照して、図7のステップS3におけるパケット送信処理の詳細を説明する。
ステップS21において、制御コード付加部81は、パケット化部42からのパケットに制御コードを付加し、制御コードを付加後のパケットを、8B10B変換部82に供給する。
ステップS22において、8B10B変換部82は、図示せぬ内蔵のメモリに予め保持している変換テーブルを用いて、制御コード付加部81からのパケットを、8ビットのビットデータ毎に、10ビットのシンボルに変換する8B10B変換を行う。そして、8B10B変換部82は、8B10B変換後のパケットをPS変換部83に供給する。
ステップS23において、PS変換部83は、8B10B変換部82からのパケットを、パラレル転送用のデータからシリアル転送用のデータに変換するPS変換を行う。
そして、PS変換部83は、PS変換後のパケットを、シリアル転送により、伝送路(lane1)を介してDSP22に送信して、処理は図7のステップS3に戻され、ステップS4に進められて、DSP22の受信部61によるパケット受信処理が行なわれる。
次に、図9のフローチャートを参照して、図7のステップS4におけるパケット受信処理の詳細を説明する。
ステップS41において、SP変換部101は、イメージセンサ21から伝送路(lane1)を介して送信されてくる各パケットを受信する。
ステップS42において、SP変換部101は、受信したパケットを、シリアル転送用のデータからパラレル転送用のデータに変換するSP変換(PS変換の逆変換)を行い、SP変換後のパケットを、10B8B変換部102に供給する。
ステップS43において、10B8B変換部102は、図示せぬ内蔵のメモリに予め保持している変換テーブルを用いて、SP変換部101からのパケットを、10ビットのシンボル毎に、8ビットのビットデータに変換する10B8B変換(8B10B変換の逆変換)を行う。
そして、10B8B変換部102は、10B8B変換後のパケット、つまり、複数のビットデータにより構成されるパケットを、制御コード検出部103及び制御コード除去部104に供給する。
ステップS44において、制御コード検出部103は、10B8B変換部102からのパケットに含まれるデータ列(例えば、4個のビットデータにより構成されるデータ列)と、予め保持している比較用のデータ列とを比較する。
ステップS45において、制御コード検出部103は、ステップS44の処理での比較結果に基づいて、10B8B変換部102からのパケットに含まれるデータ列と比較用のデータ列との対応する各ビットのうち、一致しないビットの個数を表すハミング距離を算出する。
ステップS46において、制御コード検出部103は、算出したハミング距離に基づいて、10B8B変換部102からのパケットに含まれるデータ列のうち、比較用のデータ列とのハミング距離が予め決められた閾値以下となるデータ列を、制御コードとして検出する。
そして、制御コード検出部103は、その検出結果に基づいて、10B8B変換部102から制御コード除去部104に供給されるパケットを構成する各ビットデータのうち、制御コードとしてのビットデータが存在する位置を表す制御コード情報を、各制御コード毎に生成し、制御コード除去部104に供給する。
ステップS47において、制御コード除去部104は、制御コード検出部103からの制御コード情報に基づいて、10B8B変換部102からのパケットから、制御コードを除去する。
そして、制御コード除去部104は、制御コードの除去により、ペイロード(いまの場合、画像信号の一部分)のみとされたパケットを、パケット組立部62に供給して、処理は図7のステップS4に戻され、ステップS5に進められて、それ以降の処理が行なわれる。
以上説明したように、図9のパケット受信処理のステップS46において、制御コード検出部103が、10B8B変換部102からのパケットに含まれるデータ列のうち、比較用のデータ列とのハミング距離が予め決められた閾値以下となるデータ列を、制御コードとして検出するようにした。
したがって、例えば、10B8B変換後のパケットにエラーが生じていたとしても、制御コードを精度良く検出することができる。
ところで、例えば、10B8B変換前のシンボル列に生じているエラーの個数(ビットが反転している個数)が同一であっても、エラーの生じる場所によっては、シンボル列を10B8B変換して得られるデータ列に生じるエラーの個数が異なるものとなる。
したがって、例えば、伝送路(lane1)において、平均して、シンボル列に含まれるx個のビットにエラーが生じることがわかっている場合でも、ハミング距離の閾値を、単純にxに決定することができない。
しかしながら、ハミング距離の閾値は、容易に決定できることが望ましい。
そこで、図1の受信部61において、10B8B変換前のパケットに含まれるシンボル列のうち、比較用のシンボル列とのハミング距離が予め決められた閾値以下となるシンボル列を、制御コードとして検出するようにするようにしてもよい。
この場合、10B8B変換前のシンボル列に、平均してx個のビットにエラーが生じることがわかっているときには、ハミング距離の閾値を、単純にxに決定することができる。
<2.第2の実施の形態>
[受信部61の他の構成例]
次に、図10は、10B8B変換前のパケットに含まれるシンボル列のうち、比較用のシンボル列とのハミング距離が予め決められた閾値以下となるシンボル列を制御コードとして検出する受信部61の構成例を示している。
なお、図10の受信部61は、10B8B変換前のパケットから、制御コードを検出する点で、図4の受信部61とは異なるが、それ以外の点については同様に構成される。図10では、図4の受信部61と同様に構成される部分について、同一の符号を付すようにしているので、それらの説明は、以下、適宜省略する。
すなわち、図10の受信部61では、図4の制御コード検出部103に代えて、制御コード検出部121が設けられている他は、図4の受信部61と同様に構成される。
なお、制御コード検出部121には、SP変換部101からパケットが供給される。また、制御コード検出部121は、検出対象の制御コード毎に、その制御コードを表すシンボル列を、比較用のシンボル列として、図示せぬ内蔵のメモリに予め保持している。
制御コード検出部121は、SP変換部101からのパケットに含まれるシンボル列と、予め保持している比較用のシンボル列とを比較する。
そして、制御コード検出部121は、その比較結果に基づいて、SP変換部101からのパケットから、制御コードとしてのシンボル列を検出する。
すなわち、例えば、制御コード検出部121は、その比較結果に基づいて、SP変換部101からのパケットに含まれるシンボル列のそれぞれについて、比較用のシンボル列とのハミング距離を算出する。
そして、制御コード検出部121は、SP変換部101からのパケットに含まれるシンボル列のそれぞれのハミング距離のうち、予め決められた閾値以下となるハミング距離に対応するシンボル列を、制御コードとして検出する。
また、制御コード検出部121は、その検出結果に基づいて、10B8B変換部102から制御コード除去部104に供給されるパケットを構成する各ビットデータのうち、制御コードとしてのビットデータが存在する位置を表す制御コード情報を、各制御コード毎に生成し、制御コード除去部104に供給する。
次に、図11は、制御コード検出部121が、SP変換部101からのパケットから、制御コードとして、例えばパディングコードを検出するときの様子の一例を示している。
なお、図11A及び図11Bは、それぞれ、図6A及び図6Bと同様に構成される。
制御コード検出部121は、SP変換部101から供給されるパケット(図11A)から、比較用のシンボル列(10ビットのK23.7,K28.4,K28.6,K28.3の組合せからなるシンボル列)とのハミング距離が予め決められた閾値(例えば3)以下となるシンボル列を、パディングコードとして検出する。
ここで、例えば、閾値を3としているのは、以下の理由による。すなわち、制御コード用のシンボルKx.yとペイロード用のシンボルDx.yは、それぞれ、異なるビット列から構成される。このため、シンボルKx.yからなる比較用のシンボル列と、シンボルDx.yからなるシンボル列(ペイロードを表す)とのハミング距離は、少なくとも4以上となる。よって、シンボルDx.yからなるシンボル列としてのペイロードを、パディングコード等の制御コードとして検出することを防止するために、閾値は値4より小さな値(例えば3)とされる。
図11において、SP変換部101から制御コード検出部121に供給されるパケットに含まれるパディングコードを表すシンボル列(図11B)と、比較用のシンボル列とのハミング距離は3であり、閾値以下となる。
このため、制御コード検出部121は、図11Bに示される、4個のシンボルK23.7,K28.5,K28.0,K28.4からなるシンボル列を、パディングコードとして検出する。
[図10の受信部61の動作説明]
次に、図12のフローチャートを参照して、図10の受信部61が行うパケット受信処理について説明する。
なお、図12のパケット受信処理は、図1の伝送システム1の受信部61を図10に示したように構成した場合のシリアル転送処理(図7)におけるステップS4で実行される。
ステップS61において、SP変換部101は、図9のステップS41の場合と同様にして、イメージセンサ21から伝送路(lane1)を介して送信されてくる各パケットを受信する。
ステップS62において、SP変換部101は、図9のステップS42の場合と同様にして、受信したパケットを、シリアル転送用のデータからパラレル転送用のデータに変換するSP変換(PS変換の逆変換)を行う。そして、SP変換部101は、SP変換後のパケットを、10B8B変換部102及び制御コード検出部121に供給する。
ステップS63において、制御コード検出部121は、SP変換部101からのパケットに含まれるシンボル列と、予め保持している比較用のシンボル列とを比較する。
ステップS64において、制御コード検出部121は、ステップS63の処理での比較結果に基づいて、SP変換部101からのパケットに含まれるシンボル列と比較用のシンボル列との対応する各ビットのうち、一致しないビットの個数を表すハミング距離を算出する。
ステップS65において、制御コード検出部121は、算出したハミング距離に基づいて、SP変換部101からのパケットに含まれるシンボル列のうち、比較用のシンボル列とのハミング距離が予め決められた閾値以下となるシンボル列を、制御コードとして検出する。
そして、制御コード検出部121は、その検出結果に基づいて、10B8B変換部102から制御コード除去部104に供給されるパケットを構成する各ビットデータのうち、制御コードとしてのビットデータが存在する位置を表す制御コード情報を、各制御コード毎に生成し、制御コード除去部104に供給する。
ステップS66において、10B8B変換部102は、図9のステップS43の場合と同様にして、図示せぬ内蔵のメモリに予め保持している変換テーブルを用いて、SP変換部101からのパケットを、10ビットのシンボル毎に、8ビットのビットデータに変換する10B8B変換(8B10B変換の逆変換)を行う。
そして、10B8B変換部102は、10B8B変換後のパケット、つまり、複数のビットデータにより構成されるパケットを、制御コード除去部104に供給する。
ステップS67において、制御コード除去部104は、図9のステップS47の場合と同様にして、制御コード検出部121からの制御コード情報に基づいて、10B8B変換部102からのパケットから、制御コードを除去する。
そして、制御コード除去部104は、制御コードの除去により、ペイロード(いまの場合、画像信号の一部分)のみとされたパケットを、パケット組立部62に供給して、処理は図7のステップS4に戻され、ステップS5に進められて、それ以降の処理が行なわれる。
以上説明したように、図12のパケット受信処理のステップS65において、制御コード検出部121が、10B8B変換前のパケットから制御コードを検出するようにした。
このため、例えば、10B8B変換によりエラーの個数が増加して、ハミング距離が閾値よりも大きくなってしまう事態を防止できる。よって、10B8B変換後のパケットから制御コードを検出する場合と比較して、より精度良く制御コードを検出することが可能となる。
また、図12のパケット受信処理のステップS65において、制御コード検出部121が、10B8B変換前のパケットに含まれるシンボル列のうち、比較用のシンボル列とのハミング距離が予め決められた閾値以下となるシンボル列を、制御コードとして検出するようにした。
したがって、例えば、10B8B変換前のパケットに含まれるシンボル列のうち、比較用のシンボル列と一致するシンボル列を、制御コードとして検出する場合と比較して、制御コードを検出する精度を向上させることができる。
例えば、1ビットに誤りが生じる確率PeがPe=1e-10(1の-10乗)であり、パディングコードが40ビットのシンボル列で表される場合に、パディングコードが見落とされる確率について考える。
この場合、例えば、10B8B変換前のパケットに含まれるシンボル列のうち、比較用のシンボル列と一致するシンボル列を、パディングコードとして検出するときには、パディングコードが見落とされる確率P1は次のようになる。
すなわち、確率P1は、40ビット中に1ビット以上の誤りが生じる確率であり、確率P1=1-{(1-Pe)40}=4e-9となる。
これに対して、10B8B変換前のパケットに含まれるシンボル列のうち、比較用のシンボル列とのハミング距離が予め決められた閾値(いまの場合3)以下となるシンボル列を、制御コードとして検出するときには、パディングコードが見落とされる確率P2は次のようになる。
すなわち、確率P2は、40ビット中に4ビット以上の誤りが生じる確率を表し、P2=1-{(1-Pe)40+40×Pe×(1-Pe)39+40×(39/2)×Pe2(1-Pe)38+40×39×(38/2)×Pe3(1-Pe)37}=9.14e-36となり、確率P1よりも小さいものとなっている。
ところで、伝送路において、例えば、連続してビットにエラーが生じるバースト誤りの生じる確率が大である場合、制御コード検出部121は、バースト誤りで生じたビットの誤りの個数E1を、個数E1よりも少ない個数E2であるものとして、ハミング距離を算出してもよい。
この場合、制御コードとしてのシンボル列にバースト誤りが生じている場合でも、ハミング距離が閾値よりも大きくなる事態を抑止できるので、制御コード検出部121は、制御コードを、比較的、精度良く検出することが可能となる。
次に、図13は、バースト誤りが生じたパディングコードの一例を示している。
なお、図13Aは図11Aと同様に構成される。また、図13Bは、図11Bにおいて図中右側に示されたシンボルK28.4が、シンボルK28.0になっている以外、図11Bと同様に構成される。
図13Bに示される、パディングコードとしてのシンボル列には、連続する3個のビット(図中右端に示される3個のビット)にバースト誤りが生じている。
制御コード検出部121は、例えば、SP変換部101から供給されるパケット(図13A)から、比較用のシンボル列(10ビットのK23.7,K28.4,K28.6,K28.3の組合せからなるシンボル列)とのハミング距離が予め決められた閾値(例えば3)以下となるシンボル列を、パディングコードとして検出する。
図13において、ハミング距離は、図13Bに示される「e」の個数と同一の5となり、閾値以下とはならないため、図13Bに示されるシンボル列は、パディングコードとして検出されない。
したがって、伝送路において、例えば、連続してビットにエラーが生じるバースト誤りの生じる確率が大である場合、制御コード検出部121は、図13Bに示されるバースト誤りで生じた誤りの個数E1(いまの場合3)を、個数E2(いまの場合1)であるものとして取り扱う。
この場合、制御コード検出部121は、図13に示されるシンボル列のハミング距離として、閾値以下の値(いまの場合3)を算出することとなり、図13に示されるシンボル列を、パディングコードとして検出する。
このように構成することにより、制御コード検出部121は、SP変換部101からのパケットに含まれる制御コード(例えばパディングコード等)としてのシンボル列にバースト誤りが生じている場合でも、制御コードを検出することが可能となる。
ところで、第2の実施の形態において、ハミング距離の閾値は、例えば3であるものとしたが、その他、例えば、伝送路(lane1)で生じる誤りの頻度に応じて予め決定するようにしてもよい。
すなわち、例えば、伝送路において、シンボル列を構成する各ビットのうち、平均してx個のビットにエラーが生じることがわかっているときには、ハミング距離の閾値は、例えばxに予め決定される。
また、伝送路において生じるエラーの頻度が変化した場合、制御コード検出部121は、ハミング距離の閾値を、変化後の伝送路に応じた閾値に変更するようにしてもよい。この場合、制御コード検出部121は、変更後の閾値を用いて、SP変換部101からのパケットから、制御コードを検出する。
すなわち、例えば、制御コード検出部121は、パディングコードをそれぞれ含むp個のパケットから、パディングコードの検出を試みる。
そして、制御コード検出部121は、実際に検出したパディングコードの個数qと、p個のパケットに含まれるパディングコードの個数pとに基づいて、検出率q/pを算出する。
制御コード検出部121は、算出した検出率q/pが所定の第1の閾値以下である場合、検出率を向上させるために、ハミング距離の閾値を、より大きな値に変更する。これにより、制御コード検出部121は、パケットに生じるエラーの変化に拘らず、SP変換部101からのパケットから、制御コードを精度良く検出することが可能となる。
なお、制御コード検出部121は、算出した検出率q/pが、値1よりも大きな第2の閾値(例えば、1.1など)以上である場合、制御コードではないものも、制御コードとして検出しているため、ハミング距離の閾値を、より小さな値に変更するようにしてもよい。なお、第2の閾値は、第1の閾値よりも大きな値である。
この場合、制御コード検出部121は、SP変換部101からのパケットから、制御コードではないものを誤検出する事態を抑止し、制御コードのみを精度良く検出することが可能となる。
上述した第1及び第2の実施の形態では、シリアル転送により、イメージセンサ21からDSP22に対してパケットを送信する場合を説明したが、その他、例えば、パラレル転送によりパケットを送信することもできる。
<3.第3の実施の形態>
[伝送システム141の構成例]
次に、図14は、パラレル転送によりパケットを送信する伝送システム141の構成例を示している。
この伝送システム141は、イメージセンサ161及びDSP162から構成される。イメージセンサ161及びDSP162は、それぞれ異なるLSI等により構成され、撮像機能を実現するものとして、例えば、デジタルカメラや携帯電話機等の内部に設けられる。
なお、この伝送システム141では、第1の実施の形態である伝送システム1と同様に構成される部分について同一の符号を付すようにしているので、それらの説明は、以下、適宜省略する。
すなわち、伝送システム141において、図1のイメージセンサ21の送信部43に代えて送信部181n(n=1,…,N-1,N)が、図1のDSP22の受信部61及び制御部64に代えて受信部201n及び制御部202が設けられている他は、図1の伝送システム1の場合と同様に構成される。
送信部181nには、パケット化部42からパケットが供給される。送信部181nは、図1の送信部43と同様にして、パケット化部42からのパケットに制御コードを付加し、制御コードを付加済みのパケットに対して8B10B変換を施す。
そして、送信部181nは、8B10B変換後のパケットを、送信部181nと受信部201nとの間に設けられた伝送路(lane n)を介して、DSP162の受信部201nに送信する。
これにより、送信部1811乃至181Nから受信部2011乃至201Nには、N個のパケットが並列して転送(パラレル転送)される。
受信部201nは、図10の受信部61と同様にして、伝送路(lane n)を介して送信部181nから送信されてくるパケットを受信し、受信したパケットから制御コードを検出する。
また、受信部201nは、図10の受信部61と同様にして、受信したパケットに10B8B変換を施す。
さらに、受信部201nは、制御コードとしてデスキューコードを検出したときのタイミング(を表す情報)を、制御部202に供給する。これに対応して、制御部202から受信部201nには、スキューを補正する際に用いられる補正情報が供給される。
ここで、スキューとは、パラレル転送される複数のパケットが受信されるときのタイミングのずれを表す。
受信部201nは、制御部202からの補正情報に基づいて、複数の伝送路(lane1乃至lane N)から送信されてくるパケットどうしに生じたスキューを補正するスキュー補正処理を、10B8B変換後のパケットに施す。
そして、受信部201nは、検出した制御コードを、スキュー補正処理後のパケットから除去し、除去後のパケット(画像信号の一部分のみ)を、パケット組立部62に供給する。
すなわち、受信部201nは、スキュー補正処理を行う点で異なるものの、それ以外の点では、図10の受信部61と同様に構成されている。
制御部202は、受信部2011乃至201N、パケット組立部62、及び画像処理部63を制御する。
また、制御部202は、受信部2011乃至201Nからそれぞれ供給される複数のタイミングに基づいて、例えば、複数のタイミングのうち、最も遅いタイミングに所定の時間を加算して得られるタイミング(時刻)を、補正情報として受信部2011乃至201Nに供給する。
[受信部201nの構成例]
次に、図15は、図14の受信部201nの構成例を示している。
なお、この受信部201nは、受信したパケットに生じているスキューを補正する点で、図10の受信部61とは異なるが、それ以外の点については同様に構成される。図15では、図10の受信部61と同様に構成される部分について、同一の符号を付すようにしているので、それらの説明は、以下、適宜省略する。
すなわち、図15の受信部201nでは、図10の制御コード検出部121に代えて制御コード検出部221が設けられ、10B8B変換部102と制御コード除去部104の間にスキュー補正部222が設けられている他は、図10の受信部61と同様に構成される。
制御コード検出部221は、図10の制御コード検出部121と同様にして、SP変換部101からのパケットから、制御コードとしてのシンボル列を検出する。
すなわち、例えば、制御コード検出部221は、SP変換部101からのパケットに含まれるシンボル列と、予め保持している比較用のシンボル列とを比較する。
また、例えば、制御コード検出部221は、その比較結果に基づいて、SP変換部101からのパケットに含まれるシンボル列のそれぞれについて、比較用のシンボル列とのハミング距離を算出する。
そして、制御コード検出部221は、SP変換部101からのパケットに含まれるシンボル列のそれぞれのハミング距離のうち、予め決められた閾値以下となるハミング距離に対応するシンボル列を、制御コードとして検出する。
さらに、例えば、制御コード検出部221は、その検出結果に基づいて、制御コード除去部104に供給されるパケットを構成する各ビットデータのうち、制御コードとしてのビットデータが存在する位置を表す制御コード情報を、各制御コード毎に生成し、制御コード除去部104に供給する。また、制御コード検出部221は、デスキューコードについて生成した制御コード情報を、スキュー補正部222に供給する。
さらに、例えば、制御コード検出部221は、制御コードとしてデスキューコードを検出したタイミング(を表す情報)を、制御部202に供給する。
スキュー補正部222には、10B8B変換部102から、8ビットのビットデータから構成されるパケットが、制御コード検出部221から、デスキューコードの制御コード情報が、制御部202から補正情報が、それぞれ供給される。
スキュー補正部222は、制御コード検出部221からのデスキューコードの制御コード情報、及び制御部202からの補正情報に基づいて、10B8B変換部102からのパケットに生じているスキューを補正する。すなわち、例えば、スキュー補正部222は、10B8B変換部102からのパケットに含まれるデスキューコードが、制御部202からの補正情報が表すタイミングで出力されるように、10B8B変換部102からのパケットを、制御コード除去部104に出力する。なお、パラレル転送により転送されてくる各パケットは、いずれも同一の構成(例えば、パケット長が同一であり、同じ位置にデスキューコード等の制御コードが存在する構成)とされている。
これにより、送信部1811乃至181Nから受信部2011乃至201Nにパラレル転送された複数のパケットが、受信部2011乃至201Nのそれぞれにおいて、スキュー補正部222から制御コード除去部104に同一のタイミングで供給される。このため、パラレル転送された複数のパケットの間に生じていたスキューが補正される。
[伝送システム141の動作説明]
次に、図16のフローチャートを参照して、伝送システム141が行うパラレル転送処理を説明する。
このパラレル転送処理は、例えば、イメージセンサ161による被写体の撮像が行われるときに開始される。
ステップS81において、イメージセンサ161の撮像部41は、図7のステップS1の場合と同様に、被写体の撮像を行い、その撮像により得られる画像信号を、パケット化部42に供給する。すなわち、例えば、イメージセンサ161の撮像部41は、レンズを介して受光した光を光電変換し、その光電変換により得られる画像信号を、パケット化部42に供給する。
ステップS82において、イメージセンサ161のパケット化部42は、撮像部41からの画像信号を、複数のパケットにパケット化(分割)する。そして、パケット化部42は、パケット化により得られる各パケットを、順次、送信部1811乃至181Nに供給する。
ステップS83において、送信部1811乃至181Nは、それぞれ、図1の送信部43と同様に、パケット化部42からのパケットに制御コードを付加して8B10B変換を施し、8B10B変換後のパケットをDSP22に送信するパケット送信処理を行う。
ステップS84において、DSP162の受信部201nは、送信部181nから伝送路(lane n)を介して送信されてくるパケットを受信し、受信したパケットに10B8B変換(8B10B逆変換)やスキュー補正処理等を施してパケット組立部62に出力するパケット受信処理を行う。なお、ステップS84におけるパケット受信処理は、図17のフローチャートを参照して詳述する。
ステップS85において、パケット組立部62は、受信部2011乃至201Nのそれぞれから供給される各パケット(制御コードが除去されたパケット)を組み立てることにより、イメージセンサ161の撮像部41から出力されたものと同一の画像信号を生成し、画像処理部63に供給する。
ステップS86において、DSP162の画像処理部63は、パケット組立部62からの画像信号に対して画像処理(例えばノイズ除去や、手振れ補正等)を施し、画像処理後の画像信号を出力する。以上で図16のパラレル転送処理は終了される。
次に、図17のフローチャートを参照して、図16のステップS84におけるパケット受信処理の詳細を説明する。
ステップS101において、受信部201nのSP変換部101は、イメージセンサ161から伝送路(lane n)を介して送信されてくるパケットを受信する。
ステップS102において、SP変換部101は、受信したパケットを、シリアル転送用のデータからパラレル転送用のデータに変換するSP変換(PS変換の逆変換)を行い、SP変換後のパケットを、10B8B変換部102及び制御コード検出部221に供給する。
ステップS103において、制御コード検出部221は、SP変換部101からのパケットに含まれるシンボル列と、予め保持している比較用のシンボル列とを比較する。
ステップS104において、制御コード検出部221は、ステップS103の処理での比較結果に基づいて、SP変換部101からのパケットに含まれるシンボル列と比較用のシンボル列との対応する各ビットのうち、一致しないビットの個数を表すハミング距離を算出する。
ステップS105において、制御コード検出部221は、算出したハミング距離に基づいて、SP変換部101からのパケットに含まれるシンボル列のうち、比較用のシンボル列とのハミング距離が予め決められた閾値以下となるシンボル列を、制御コードとして検出する。
そして、制御コード検出部221は、その検出結果に基づいて、スキュー補正部222から制御コード除去部104に供給されるパケットを構成する各ビットデータのうち、制御コードとしてのビットデータが存在する位置を表す制御コード情報を、各制御コード毎に生成し、制御コード除去部104に供給する。また、制御コード検出部221は、デスキューコードについて生成した制御コード情報を、スキュー補正部222に供給する。
さらに、制御コード検出部221は、制御コードとしてデスキューコードを検出したタイミングを、制御部202に供給する。
これにより、受信部2011乃至201Nのそれぞれの制御コード検出部221でデスキューコードを検出したときのタイミングが、受信部2011乃至201Nのそれぞれの制御コード検出部221から制御部202に供給される。そして、制御部202は、受信部2011乃至201Nのそれぞれの制御コード検出部221からの複数のタイミングに基づいて、補正情報を生成し、受信部2011乃至201Nのそれぞれのスキュー補正部222に供給する。
ステップS106において、10B8B変換部102は、図9のステップS43の場合と同様にして、図示せぬ内蔵のメモリに予め保持している変換テーブルを用いて、SP変換部101からのパケットを、10ビットのシンボル毎に、8ビットのビットデータに変換する10B8B変換(8B10B変換の逆変換)を行う。
そして、10B8B変換部102は、10B8B変換後のパケット、つまり、8ビットからなる複数のビットデータにより構成されるパケットを、スキュー補正部222に供給する。
ステップS107において、スキュー補正部222は、制御コード検出部221からのデスキューコードの制御コード情報、及び制御部202からの補正情報に基づいて、10B8B変換部102からのパケットに生じているスキューを補正する。すなわち、例えば、スキュー補正部222は、10B8B変換部102からのパケットに含まれるデスキューコードが、制御部202からの補正情報が表すタイミングで出力されるように、10B8B変換部102からのパケットを、制御コード除去部104に出力する。
ステップS108において、制御コード除去部104は、図9のステップS47の場合と同様にして、制御コード検出部121からの制御コード情報に基づいて、スキュー補正部222からのパケットから、制御コードを除去する。
そして、制御コード除去部104は、制御コードの除去により、ペイロード(いまの場合、画像信号の一部分)のみとされたパケットを、パケット組立部62に供給して、処理は図16のステップS84に戻され、ステップS85に進められ、それ以降の処理が行なわれる。
以上説明したように、図17のパケット受信処理のステップS105において、制御コード検出部221が、10B8B変換前のパケットから制御コードを検出するようにした。
このため、例えば、10B8B変換によりエラーの個数が増加して、ハミング距離が閾値よりも大きくなってしまう事態を防止できる。よって、10B8B変換後のパケットから制御コードを検出する場合と比較して、より精度良く制御コードを検出することが可能となる。
また、例えば、ステップS105において、制御コード検出部221が、10B8B変換前のパケットに含まれるシンボル列のうち、比較用のシンボル列とのハミング距離が予め決められた閾値以下となるシンボル列を、制御コードとして検出するようにした。
したがって、例えば、10B8B変換前のパケットに含まれるシンボル列のうち、比較用のシンボル列と一致するシンボル列を、制御コードとして検出する場合と比較して、制御コードを検出する精度を向上させることができる。
<4.変形例>
第2の実施の形態において、制御コード検出部121は、SP変換部101から供給されるパケットに含まれるシンボル列のうち、比較用のシンボル列とのハミング距離が閾値以下であるシンボル列を、制御コードとして検出するようにした。
しかしながら、制御コード検出部121は、シンボル列を構成する複数のシンボルのうち、過半数のシンボルが比較用のシンボル列と一致するようなシンボル列を、SP変換部101からのパケットに含まれる制御コードとして検出するようにしてもよい。このことは、第3の実施の形態における制御コード検出部221についても同様である。
また、第1の実施の形態においても同様に、制御コード検出部103は、データ列を構成する複数のビットデータのうち、過半数のビットデータが比較用のデータ列と一致するようなデータ列を、10B8B変換部102からのパケットに含まれる制御コードとして検出するようにしてもよい。
その他、例えば、制御コード検出部121及び221は、それぞれ、制御コードの種類毎に、異なる検出方法で検出を行うようにしてもよい。
すなわち、例えば、スタートコードについては、シンボル列を構成する4個のシンボルのうち、3個のシンボルが、比較用のシンボル列と一致する場合に、そのシンボル列をスタートコードとして検出する。なお、エンドコードについても、スタートコードと同様にして検出する。
そして、例えば、デスキューコードについては、シンボル列が、比較用のシンボル列と一致する場合に、そのシンボル列をデスキューコードとして検出する。
さらに、例えば、パディングコードについては、シンボル列と比較用のシンボル列とのハミング距離が閾値以下となる場合に、そのシンボル列をパディングコードとして検出する。
なお、第1の実施の形態における制御コード検出部103についても同様に、制御コードの種類毎に異なる検出方法で検出を行うようにしてもよい。
上述した第1乃至第3の実施の形態では、イメージセンサ側で8B10B変換を行うようにしたが、8B10B変換に代えて、pビットのビットデータをqビットのシンボルに変換するpBqB変換を採用することができる。すなわち、例えば、イメージセンサは、8B10B変換に代えて、3B4B変換、5B6B変換、64B66B変換、64B67B変換、128B130B変換等を採用することができる。
この場合、DSP側では、qビットのシンボルをpビットのビットデータに変換するqBpB変換(pBqB逆変換)が行われる。すなわち、例えば、DSPは、10B8B変換に代えて、4B3B変換、6B5B変換、66B64B変換、67B64B変換、130B128B変換等を採用することができる。
また、上述した第1乃至第3の実施の形態では、制御コードとして、例えば、スタートコード、エンドコード、パディングコード、及びデスキューコードを検出する場合について説明したが、その他、他の制御コードを検出することができる。
さらに、上述した第1の実施の形態では、イメージセンサ21からDSP22にデータを伝送する伝送システム1について説明した。しかしながら、例えば、異なるLSI間でデータを伝送するものであれば、イメージセンサ21とDSP22との組合せに限定されず、どのような組合せであってもよい。このことは、第3の実施の形態における伝送システム141についても同様である。
ところで、本技術は、以下の構成をとることができる。
(1)第1のビット数からなるビットデータにより構成される第1のデータが、前記ビットデータ毎に、前記第1のビット数よりも多い第2のビット数からなるシンボルに変換されたことにより得られる第2のデータを取得する取得部と、取得された前記第2のデータが前記第1のデータに逆変換される前の前記第2のデータに含まれる複数のシンボルから構成される第1のシンボル列を、検出対象のコードを表す第2のシンボル列と比較する比較部と、前記比較部による比較結果に基づいて、前記第2のデータから、前記検出対象のコードとしての前記第1のシンボル列を検出する検出部とを含む情報処理装置。
(2)前記検出部は、前記比較部による比較結果に基づいて、前記第1のシンボル列と前記第2のシンボル列との対応するビットどうしが一致しない個数を表すハミング距離を算出するハミング算出部と、算出された前記ハミング距離が予め決められた閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出するコード検出部とを有する上記(1)に記載の情報処理装置。
(3)前記検出部は、前記検出対象のコードを検出する検出率に応じて、前記閾値を変更する変更部をさらに有し、前記コード検出部は、前記ハミング距離が、変更後の前記閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出する上記(2)に記載の情報処理装置。
(4)前記ハミング算出部は、前記第1のシンボル列と前記第2のシンボル列との対応するビットのうち、連続して並ぶ第1の個数のビットどうしが一致しない場合、前記第1の個数のビットどうしが、前記第1の個数よりも少ない第2の個数のビットだけ一致しないものとして取り扱うことにより、前記ハミング距離を算出する上記(2)又は(3)に記載の情報処理装置。
(5)前記閾値は、前記第2のシンボル列に含まれるシンボルとは異なるシンボルにより構成される第3のシンボル列と、前記第2のシンボル列とのハミング距離の最小値よりも小さな値に予め決められている上記(2)乃至(4)に記載の情報処理装置。
(6)取得された前記第2のデータを、前記シンボル毎に、前記ビットデータに変換することにより、前記第1のデータを生成する逆変換部と、検出された前記検出対象のコードに基づいて、前記逆変換部により生成される前記第1のデータに対する処理を行う処理部とをさらに含む上記(1)乃至(5)に記載の情報処理装置。
上述した一連の処理は、例えばハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、又は、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のコンピュータなどに、プログラム記録媒体からインストールされる。
[コンピュータの構成例]
図18は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示している。
CPU(Central Processing Unit)241は、ROM(Read Only Memory)242、又は記憶部248に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)243には、CPU241が実行するプログラムやデータ等が適宜記憶される。これらのCPU241、ROM242、及びRAM243は、バス244により相互に接続されている。
CPU241にはまた、バス244を介して入出力インタフェース245が接続されている。入出力インタフェース245には、キーボード、マウス、マイクロホン等よりなる入力部246、ディスプレイ、スピーカ等よりなる出力部247が接続されている。CPU241は、入力部246から入力される指令に対応して各種の処理を実行する。そして、CPU241は、処理の結果を出力部247に出力する。
入出力インタフェース245に接続されている記憶部248は、例えばハードディスクからなり、CPU241が実行するプログラムや各種のデータを記憶する。通信部249は、インタネットやローカルエリアネットワーク等のネットワークを介して外部の装置と通信する。
また、通信部249を介してプログラムを取得し、記憶部248に記憶してもよい。
入出力インタフェース245に接続されているドライブ250は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等のリムーバブルメディア251が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータ等を取得する。取得されたプログラムやデータは、必要に応じて記憶部248に転送され、記憶される。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを記録(記憶)する記録媒体は、図18に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini-Disc)を含む)、もしくは半導体メモリ等よりなるパッケージメディアであるリムーバブルメディア251、又は、プログラムが一時的もしくは永続的に格納されるROM242や、記憶部248を構成するハードディスク等により構成される。記録媒体へのプログラムの記録は、必要に応じてルータ、モデム等のインタフェースである通信部249を介して、ローカルエリアネットワーク、インタネット、デジタル衛星放送といった、有線又は無線の通信媒体を利用して行われる。
なお、本明細書において、上述した一連の処理を記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
さらに、本開示は、上述した第1乃至第3の実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
1 伝送システム, 21 イメージセンサ, 22 DSP, 41 撮像部, 42 パケット化部, 43 送信部, 44 制御部, 61 受信部, 62 パケット組立部, 63 画像処理部, 64 制御部, 81 制御コード付加部, 82 8B10B変換部, 83 PS変換部, 101 SP変換部, 102 10B8B変換部, 103 制御コード検出部, 104 制御コード除去部, 121 制御コード検出部, 141 伝送システム, 161 イメージセンサ, 162 DSP, 1811乃至181N 送信部, 2011乃至201N 受信部, 202 制御部, 221 制御コード検出部, 222 スキュー補正部

Claims (5)

  1. 第1のビット数からなるビットデータにより構成される第1のデータが、前記ビットデータ毎に、前記第1のビット数よりも多い第2のビット数からなるシンボルに変換されたことにより得られる第2のデータを取得する取得部と、
    取得された前記第2のデータが前記第1のデータに逆変換される前の前記第2のデータに含まれる複数のシンボルから構成される第1のシンボル列を、検出対象のコードを表す第2のシンボル列と比較する比較部と、
    前記比較部による比較結果に基づいて、前記第2のデータから、前記検出対象のコードとしての前記第1のシンボル列を検出する検出部と
    を備え、
    前記検出部は、
    前記比較部による比較結果に基づいて、前記第1のシンボル列と前記第2のシンボル列との対応するビットどうしが一致しない個数を表すハミング距離を算出するハミング算出部と、
    算出された前記ハミング距離が予め決められた閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出するコード検出部と、
    前記検出対象のコードを検出する検出率に応じて、前記閾値を変更する変更部と
    を有し、
    前記コード検出部は、前記ハミング距離が、変更後の前記閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出し、
    前記ハミング算出部は、前記第1のシンボル列と前記第2のシンボル列との対応するビットのうち、連続して並ぶ第1の個数のビットどうしが一致しない場合、前記第1の個数のビットどうしが、前記第1の個数よりも少ない第2の個数のビットだけ一致しないものとして取り扱うことにより、前記ハミング距離を算出する
    情報処理装置。
  2. 前記閾値は、前記第2のシンボル列に含まれるシンボルとは異なるシンボルにより構成される第3のシンボル列と、前記第2のシンボル列とのハミング距離の最小値よりも小さな値に予め決められている
    請求項1に記載の情報処理装置。
  3. 取得された前記第2のデータを、前記シンボル毎に、前記ビットデータに変換することにより、前記第1のデータを生成する逆変換部と、
    検出された前記検出対象のコードに基づいて、前記逆変換部により生成される前記第1のデータに対する処理を行う処理部と
    をさらに含む請求項1に記載の情報処理装置。
  4. 所定のコードを検出する情報処理装置の情報処理方法において、
    前記情報処理装置による、
    第1のビット数からなるビットデータにより構成される第1のデータが、前記ビットデータ毎に、前記第1のビット数よりも多い第2のビット数からなるシンボルに変換されたことにより得られる第2のデータを取得する取得ステップと、
    取得された前記第2のデータが前記第1のデータに逆変換される前の前記第2のデータに含まれる複数のシンボルから構成される第1のシンボル列を、検出対象のコードを表す第2のシンボル列と比較する比較ステップと、
    前記比較ステップによる比較結果に基づいて、前記第2のデータから、前記検出対象のコードとしての前記第1のシンボル列を検出する検出ステップと
    を含み、
    前記検出ステップは、
    前記比較ステップによる比較結果に基づいて、前記第1のシンボル列と前記第2のシンボル列との対応するビットどうしが一致しない個数を表すハミング距離を算出するハミング算出ステップと、
    算出された前記ハミング距離が予め決められた閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出するコード検出ステップと、
    前記検出対象のコードを検出する検出率に応じて、前記閾値を変更する変更ステップとを含み、
    前記コード検出ステップは、前記ハミング距離が、変更後の前記閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出し、
    前記ハミング算出ステップは、前記第1のシンボル列と前記第2のシンボル列との対応するビットのうち、連続して並ぶ第1の個数のビットどうしが一致しない場合、前記第1の個数のビットどうしが、前記第1の個数よりも少ない第2の個数のビットだけ一致しないものとして取り扱うことにより、前記ハミング距離を算出する
    情報処理方法。
  5. コンピュータを、
    第1のビット数からなるビットデータにより構成される第1のデータが、前記ビットデータ毎に、前記第1のビット数よりも多い第2のビット数からなるシンボルに変換されたことにより得られる第2のデータを取得する取得部と、
    取得された前記第2のデータが前記第1のデータに逆変換される前の前記第2のデータに含まれる複数のシンボルから構成される第1のシンボル列を、検出対象のコードを表す第2のシンボル列と比較する比較部と、
    前記比較部による比較結果に基づいて、前記第2のデータから、前記検出対象のコードとしての前記第1のシンボル列を検出する検出部と
    して機能させ、
    前記検出部は、
    前記比較部による比較結果に基づいて、前記第1のシンボル列と前記第2のシンボル列との対応するビットどうしが一致しない個数を表すハミング距離を算出するハミング算出部と、
    算出された前記ハミング距離が予め決められた閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出するコード検出部と、
    前記検出対象のコードを検出する検出率に応じて、前記閾値を変更する変更部と
    有し、
    前記コード検出部は、前記ハミング距離が、変更後の前記閾値以下である場合に、前記第1のシンボル列を、前記検出対象のコードとして検出し、
    前記ハミング算出部は、前記第1のシンボル列と前記第2のシンボル列との対応するビットのうち、連続して並ぶ第1の個数のビットどうしが一致しない場合、前記第1の個数のビットどうしが、前記第1の個数よりも少ない第2の個数のビットだけ一致しないものとして取り扱うことにより、前記ハミング距離を算出する
    プログラム。
JP2011269877A 2011-12-09 2011-12-09 情報処理装置、情報処理方法、及びプログラム Expired - Fee Related JP5936030B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2011269877A JP5936030B2 (ja) 2011-12-09 2011-12-09 情報処理装置、情報処理方法、及びプログラム
US14/353,912 US9565424B2 (en) 2011-12-09 2012-11-30 Information processing device, information processing method, and program
CN201280059307.8A CN103975549B (zh) 2011-12-09 2012-11-30 信息处理装置、信息处理方法和程序
PCT/JP2012/081056 WO2013084812A1 (ja) 2011-12-09 2012-11-30 情報処理装置、情報処理方法、及びプログラム
US15/404,381 US10177878B2 (en) 2011-12-09 2017-01-12 Information processing for detection of control code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011269877A JP5936030B2 (ja) 2011-12-09 2011-12-09 情報処理装置、情報処理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2013123087A JP2013123087A (ja) 2013-06-20
JP5936030B2 true JP5936030B2 (ja) 2016-06-15

Family

ID=48574180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011269877A Expired - Fee Related JP5936030B2 (ja) 2011-12-09 2011-12-09 情報処理装置、情報処理方法、及びプログラム

Country Status (4)

Country Link
US (2) US9565424B2 (ja)
JP (1) JP5936030B2 (ja)
CN (1) CN103975549B (ja)
WO (1) WO2013084812A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6221400B2 (ja) * 2013-06-21 2017-11-01 富士ゼロックス株式会社 送信装置及び情報伝送システム
KR102166908B1 (ko) * 2014-02-13 2020-10-19 삼성전자주식회사 고속 데이터 인터페이스 장치 및 상기 장치의 스큐 보정 방법
JP2017005630A (ja) * 2015-06-15 2017-01-05 株式会社リコー 通信装置、通信方法及びプログラム
JP2017050734A (ja) * 2015-09-02 2017-03-09 株式会社リコー シリアル通信装置、通信システム及び通信方法
US10511463B2 (en) 2015-09-09 2019-12-17 Sony Corporation Reception device, reception method, and communication system
JP6985846B2 (ja) * 2017-08-14 2021-12-22 キヤノン株式会社 信号処理装置及び信号処理方法
JP7367280B2 (ja) * 2019-07-14 2023-10-24 ヴァレンス セミコンダクター リミテッド 8b10b pam4エンコーディング

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3700264B2 (ja) * 1996-07-15 2005-09-28 松下電器産業株式会社 無線装置
JP3419367B2 (ja) * 1999-11-29 2003-06-23 日本電気株式会社 ユニークワード検出回路及びユニークワード検出方法
JP2004518336A (ja) * 2001-01-16 2004-06-17 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビットインターリーブ化符号化変調(bicm)マッピング
US6812870B1 (en) * 2003-09-11 2004-11-02 Xilinx, Inc. Enhanced 8b/10b encoding/decoding and applications thereof
US7152199B2 (en) * 2004-06-02 2006-12-19 Teknovus, Inc. Method and apparatus for delineating data in an FEC-coded Ethernet frame
JP4852963B2 (ja) * 2005-10-14 2012-01-11 株式会社日立製作所 伝送装置
US20080013634A1 (en) * 2006-07-14 2008-01-17 Samsung Electronics Co., Ltd. Apparatus and method for high-speed interfacing between integrated circuits
JP2009177347A (ja) * 2008-01-22 2009-08-06 Nikon Corp 通信装置および通信方法

Also Published As

Publication number Publication date
US10177878B2 (en) 2019-01-08
US9565424B2 (en) 2017-02-07
US20170126361A1 (en) 2017-05-04
CN103975549A (zh) 2014-08-06
CN103975549B (zh) 2017-04-12
WO2013084812A1 (ja) 2013-06-13
US20140300755A1 (en) 2014-10-09
JP2013123087A (ja) 2013-06-20

Similar Documents

Publication Publication Date Title
JP5936030B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP5233165B2 (ja) データ伝送装置
JP6318713B2 (ja) 誤り検出装置、誤り検出方法、および誤り検出プログラム
JP2010258985A (ja) 信号処理装置、及び誤り訂正方法
JP2013078378A5 (ja)
US20120131422A1 (en) Transmitting device, transmitting method, receiving device, receiving method, program, and transmission system
JP4322946B2 (ja) 通信装置
US20130179746A1 (en) Transmitting/receiving system, method, and computer readable medium
JP5618143B2 (ja) 符号化装置、符号化方法、復号装置、復号方法、プログラム、および伝送システム
US10044535B2 (en) Serial communication apparatus, communication system, and method for communication
US10057524B2 (en) Image capturing apparatus
JP5425667B2 (ja) 送信装置、受信装置、および伝送システム
WO2021100602A1 (ja) 送信装置、受信装置、および伝送システム
JP2009152979A (ja) 直接拡散通信装置および通信方法
US20110285869A1 (en) Serial data sending and receiving apparatus and digital camera
KR20130111586A (ko) 저 레이턴시 직렬 상호 접속 아키텍처에서의 피드백 루프의 제공
JP2010028615A (ja) クロック・データ・リカバリ回路
JP2020088671A (ja) 撮像装置及び当前記装置における信号処理方法
JP4347170B2 (ja) エラー検出装置並びにそれを用いたエラー訂正装置及びその方法
JP2008048347A (ja) 電子基板およびバックボード伝送方法
JP2019149609A (ja) 撮像装置及び当該装置における信号処理方法
JP2011077602A (ja) 画像転送装置および画像形成装置
JP2020096281A (ja) 撮像装置、データ処理装置およびデータ処理方法
JP2018174500A (ja) 受信装置およびシンボル列訂正方法
JP2017183893A (ja) リカバリ回路およびリカバリ方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150714

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151106

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160414

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160427

R151 Written notification of patent or utility model registration

Ref document number: 5936030

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees