JP2013062737A - 信号送受信回路 - Google Patents

信号送受信回路 Download PDF

Info

Publication number
JP2013062737A
JP2013062737A JP2011200790A JP2011200790A JP2013062737A JP 2013062737 A JP2013062737 A JP 2013062737A JP 2011200790 A JP2011200790 A JP 2011200790A JP 2011200790 A JP2011200790 A JP 2011200790A JP 2013062737 A JP2013062737 A JP 2013062737A
Authority
JP
Japan
Prior art keywords
code
signal line
correction
bits
error detection
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.)
Pending
Application number
JP2011200790A
Other languages
English (en)
Inventor
Tsugio Takahashi
次男 高橋
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2011200790A priority Critical patent/JP2013062737A/ja
Priority to US13/599,490 priority patent/US8943389B2/en
Publication of JP2013062737A publication Critical patent/JP2013062737A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

【課題】同時スイッチングエラーと特定の信号線上の多発エラーとの双方に対してエラー訂正能力を確保するのが困難なこと。
【解決手段】データバッファ部は、入力ワードを過去一定個数分記憶すると共に、入力順に第1の信号線群に出力する。符号生成部は、ワードと同じビット数のビット列であって、ビット列中の複数のビットが第1および第2の信号線群の範囲または第1および第2の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されないビットの組み合わせとなるビット列を訂正範囲とする誤り検出訂正符号を生成する。符号送信部は、誤り検出訂正符号の各ビットを、当該ビット列とその訂正範囲のビット列とから構成される符号語中の複数のビットが第1および第2の信号線群の範囲または第1および第2の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されることがないタイミングで、第2の信号線群のそれぞれ異なる信号線に出力する。
【選択図】図1

Description

本発明は、複数の信号線で互いに接続される信号送信回路と信号受信回路とから構成される信号送受信回路に関し、特にデータに誤り検出訂正符号を付加して送受信する信号送受信回路に関する。
データを送受信する信号送受信回路において、信号送信側がデータに誤り検出訂正符号を付加して送信し、信号受信側が誤り検出訂正符号を用いて受信データの誤りを検出し訂正することが行われている(例えば特許文献1参照)。
図24は、信号送受信回路において送受信される信号のフォーマットの一例を示す。この例では、4ビット構成の各ワード毎に、3ビットのECC(Error Check and Correct)符号を付加して合計7ビットの符号語を生成し、各符号語を7本の信号線を用いて符号語単位で送受信する。この場合、ECC符号として例えばハミング符号を用いると、ワード中の1ビット誤りを訂正することができる。
他方、映像信号にデジタル音声信号を多重化してシリアル伝送を行う映像信号送信装置において、デジタル音声信号の所定のデータ数毎に誤り検出訂正符号を付加した後に、ビットの並べ替えを行う技術が提案されている(例えば特許文献2参照)。具体的には、特許文献2に記載の映像信号送信装置は、m×nのセルを持ったメモリに順番に行方向に1ビットずつ書き込みを行った後、読み出しを列方向に変えて読み出している。
特公昭62−501047号公報 特開平5−219488号公報
LSI間等でデータを伝送する場合、ソフトエラーの確率よりも同時スイッチングノイズに起因して発生するエラーの確率が高くなる。同時スイッチングノイズは、多数のドライバが同一の論理方向(例えば0→1の方向)に同時にスイッチングする時に電源ラインに発生するノイズである。電源ラインに同時スイッチングノイズが発生すると、その電源ラインから電力の供給を受けている複数の信号線に同時にエラーが発生する可能性がある。このため、図24の信号フォーマットのように、各ワードに誤り検出訂正符号を付加して符号語を生成し、符号語単位で伝送を行う信号送受信回路は、同時スイッチングノイズが発生すると同じ符号語に2ビット以上の訂正不可能なエラーが発生する確率が高くなる。
他方、特許文献2に記載されるように、一定個数の符号語毎に、m×nのセルを持ったメモリに順番に行方向に1ビットずつ書き込みを行った後、読み出しを列方向に変えて読み出す場合、mとnを符号語のビット数に等しく設定すると、図24の信号フォーマットを図25の信号フォーマットに変換して伝送することができる。図25の信号フォーマットでは、全ての符号語において、或るタイミングで伝送されるビット数は1ビットになるため、同時スイッチングノイズが発生して信号線上の全ビットにエラーが発生したとしても、それぞれの符号語では高々1ビットのエラーになる。このため、全ての符号語で誤り訂正が可能になる。しかしながら、図25の信号フォーマットでは、同じ符号語の全ビットが同じ信号線を通じて伝送される。このため、信号線毎に設けられている入出力バッファアンプの経年変化による性能劣化などが原因で何れか1つの信号線にエラーが多発すると、同じ符号語に2ビット以上の訂正不可能なエラーが発生する可能性が高くなる。
本発明の目的は、上述したような課題、すなわち、同時スイッチングエラーと特定の信号線上の多発エラーとの双方に対してエラー訂正能力を確保するのは困難である、という課題を解決する信号送受信回路を提供することにある。
本発明の一形態にかかる信号送受信回路は、
第1および第2の信号線群によって互いに接続される信号送信回路と信号受信回路とを備え、
上記信号送信回路は、
入力されたワードを過去一定個数分記憶するとともに、入力順に上記第1の信号線群にワード単位で出力する送信側データバッファ部と、
上記ワードを構成するビット数と同じビット数のビット列であって、当該ビット列中の複数のビットが上記第1の信号線群の範囲または上記第1の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されないビットの組み合わせとなるビット列を上記送信側データバッファ部から読み出し、該読み出したビット列を訂正範囲とする誤り検出訂正符号を生成する符号生成部と、
上記符号生成部により生成された誤り検出訂正符号の各ビットを、当該誤り検出訂正符号のビット列と上記訂正範囲のビット列とから構成される符号語中の複数のビットが上記第1および第2の信号線群の範囲または上記第1および第2の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されることがないタイミングで、上記第2の信号線群のそれぞれ異なる信号線に出力する符号送信部と
を有し、
上記信号受信回路は、
上記第1の信号線群から受信したワードを過去一定個数分記憶するとともに、受信順にワード単位で出力する受信側データバッファ部と、
上記第2の信号線群から受信した誤り検出訂正符号を過去一定個数分記憶する受信側符号バッファ部と、
同じ符号語を構成する誤り検出訂正符号とその訂正範囲となるビット列とが上記受信側符号バッファ部と上記受信側データバッファ部とに揃って記憶されたときに、上記受信側符号バッファ部から当該符号語の誤り検出訂正符号を読み出し、該読み出した誤り検出訂正符号を用いて、上記受信側データバッファ部に記憶されている当該誤り検出訂正符号の訂正範囲となるビット列の誤り訂正を行う誤り訂正部とを有する、
といった構成を採る。
本発明は上述したような構成を有するため、同時スイッチングエラーと特定の信号線上の多発エラーとの双方に対してエラー訂正能力を確保することが可能になる。
本発明の第1の実施形態にかかる信号送受信回路のブロック図である。 本発明の第2の実施形態にかかる信号送信回路のブロック図である。 本発明の第2の実施形態にかかる信号送信回路に入力される信号のフォーマットを示す図である。 本発明の第2の実施形態にかかる信号送信回路から出力される信号のフォーマットを示す図である。 本発明の第3の実施形態にかかる信号受信回路のブロック図である。 本発明の第4の実施形態にかかる信号送信回路のブロック図である。 本発明の第4の実施形態にかかる信号送信回路の動作説明図である。 本発明の第4の実施形態にかかる信号送信回路から出力される信号のフォーマットを示す図である。 本発明の第5の実施形態にかかる信号受信回路のブロック図である。 本発明の第6の実施形態にかかる信号送信回路のブロック図である。 本発明の第6の実施形態にかかる信号送信回路の動作説明図である。 本発明の第6の実施形態にかかる信号送信回路から出力される信号のフォーマットを示す図である。 本発明の第7の実施形態にかかる信号受信回路のブロック図である。 本発明の第8の実施形態にかかる信号送信回路のブロック図である。 本発明の第8の実施形態にかかる信号送信回路の動作説明図である。 本発明の第8の実施形態にかかる信号送信回路から出力される信号のフォーマットを示す図である。 本発明の第9の実施形態にかかる信号受信回路のブロック図である。 本発明の第10の実施形態にかかる信号送信回路のブロック図である。 本発明の第10の実施形態にかかる信号送信回路の動作説明図である。 本発明の第10の実施形態にかかる信号送信回路から出力される信号のフォーマットを示す図である。 本発明の第11の実施形態にかかる信号受信回路のブロック図である。 本発明の第12の実施形態にかかる信号送受信回路のブロック図である。 本発明の第13の実施形態にかかる信号送受信回路のブロック図である。 本発明に関連する信号受信回路から出力される信号のフォーマットを示す図である。 本発明に関連する信号受信回路から出力される信号のフォーマットを示す図である。
次に本発明の実施の形態について図面を参照して詳細に説明する。
[第1の実施形態]
図1を参照すると、本発明の第1の実施形態にかかる信号送受信回路100は、信号送信回路110と、この信号送信回路110に信号線群130を通じて接続される信号受信回路120とから構成される。信号線群130は、複数の信号線により構成される。信号線群130は、ワードの伝送に使用する信号線群131と、誤り検出訂正符号の伝送に使用する信号線群132とに分けられている。
信号送信回路110は、それぞれが複数ビットから構成される複数のワードを順に入力し、これら複数のワードから、ワードと同じビット数の情報ビットと誤り検出訂正符号とから構成される複数の符号語を生成して信号線群130を介して信号受信回路120に送信する機能を有している。その際、信号送信回路110は、同じ符号語の複数のビットが信号線群130のうちの特定の信号線群に同一のタイミングで並列に出力されず、且つ、同じ符号語の誤り検出訂正符号の各ビットが信号線群132のそれぞれ異なる信号線に出力されるようにする。
ここで、特定の信号線群とは、信号線を駆動する駆動回路の電源が同じ信号線の集まりを意味する。従って、単一電源の場合には、信号線群130全体が1つの特定の信号線群になる。また、信号線群131と信号線群132とがそれぞれ異なる電源で駆動される駆動回路につながっている場合には、信号線群131と信号線群132のそれぞれが1つの特定の信号線群となる。さらに、信号線群131中に、或る電源で駆動される駆動回路につながる信号線群と別の電源で駆動される駆動回路につながる信号線群とが存在する場合、信号線群131中の同じ電源で駆動される駆動回路につながる信号線どうしが1つの特定の信号線群となる。一般にLSI、FPGAにおいては、信号出力の際の電源ノイズはLSI/FPGAのチップ上の電源配線から決まる電源供給の単位、いわゆる電源バンク(Bank)単位にほぼ独立に発生する。従って異なる電源バンク間では同時スイッチングノイズを考慮する必要はない。
本実施形態の信号送信回路110は、データバッファ部111と符号生成部112と符号送信部113とを有する。
データバッファ部111は、入力されたワードを過去一定個数分記憶するとともに、入力順に信号線群131にワード単位で出力する機能を有する。
符号生成部112は、ワードを構成するビット数と同じビット数のビット列をデータバッファ部111に記憶されている複数のワードから抽出し、この抽出したビット列を訂正範囲とする誤り検出訂正符号を生成して符号送信部113に出力する機能を有する。符号生成部112は、上記のビット列の抽出では、ビット列中の複数のビットが、信号線群131のうちの特定の信号線群に同一のタイミングで出力されないビットの組み合わせになるようなビット列を抽出する。好ましくは、符号生成部112は、上記のビット列の抽出では、ビット列中の任意の2ビットの組み合わせが、信号線群131のうちの特定の信号線群に同一のタイミングで出力されないビットの組み合わせになるようなビット列を抽出する。
符号送信部113は、符号生成部112により生成された誤り検出訂正符号の各ビットを、出力タイミングを調整して信号線群132のそれぞれ異なる信号線に送信する機能を有する。符号送信部113は、誤り検出訂正符号の各ビットの送信を、当該誤り検出訂正符号のビット列とその訂正範囲のビット列とから構成される符号語中の複数のビットが信号線群130に同一のタイミングで並列に出力されることがないタイミングで実施する。好ましくは、符号送信部113は、誤り検出訂正符号の各ビットの送信を、当該誤り検出訂正符号のビット列とその訂正範囲のビット列とから構成される符号語中の任意の2ビットの組み合わせが信号線群130に同一のタイミングで並列に出力されることがないタイミングで実施する。
信号受信回路120は、信号線群130を介して信号送信回路110から複数の符号語を受信し、この受信した符号語毎に誤り検出訂正符号を用いて情報ビットの誤り訂正を行い、誤り訂正後の情報ビットによって構成されるデータをワード単位に出力する機能を有する。本実施形態では、信号受信回路120は、データバッファ部121と符号バッファ部122と誤り訂正部123とを有する。
データバッファ部121は、信号線群131から受信したワードを過去一定個数分記憶するとともに、受信順にワード単位で出力する機能を有する。
符号バッファ部122は、信号線群132から受信した誤り検出訂正符号を過去一定個数分記憶する機能を有する。
誤り訂正部123は、同じ符号語を構成する誤り検出訂正符号とその訂正範囲となるビット列とが符号バッファ部122とデータバッファ部121とに揃ったときに、符号バッファ部122から当該符号語の誤り検出訂正符号を読み出し、この読み出した誤り検出訂正符号を用いて、データバッファ部121に記憶されている訂正範囲となるビット列の誤り訂正を行う機能を有する。
本実施形態では、誤り検出訂正符号として、ハミング符号あるいは拡張ハミング符号を用いることができる。この場合の必要ビット数は以下の通りである。
ワードのビット数 ハミング符号 拡張ハミング符号
4ビット 3ビット 4ビット
8ビット 4ビット 5ビット
16ビット 5ビット 6ビット
32ビット 6ビット 7ビット
64ビット 7ビット 8ビット
また本実施形態では、誤り検出訂正符号として、多ビット訂正が可能は符号(例えばBCH符号)やブロック訂正が可能な符号(例えばリードソロモン(Read-Solomon)符号)を用いることができる。
次に本実施形態の動作を説明する。
信号送信回路110のデータバッファ部111は、外部からワードが順に入力されると、入力されたワードを一時的に記憶し、所定時間の遅延後、信号線群131を通じてワード単位に信号受信回路120に送信する。また信号送信回路110の符号生成部112は、ワードを構成するビット数と同じビット数のビット列であって、当該ビット列中の複数のビット(好ましくは任意の2ビットの組み合わせ)が信号線群131のうちの特定の信号線群に同一のタイミングで出力されないビットの組み合わせとなるビット列をデータバッファ部111に記憶された複数のワードに跨って抽出し、この抽出したビット列を訂正範囲とする誤り検出訂正符号を生成する。さらに信号送信回路110の符号送信部113は、符号生成部112により生成された誤り検出訂正符号の各ビットを、当該誤り検出訂正符号のビット列とその訂正範囲のビット列とから構成される符号語中の複数のビット(好ましくは任意の2ビットの組み合わせ)が信号線群130に同一のタイミングで出力されることがないタイミングで、信号線群132のそれぞれ異なる信号線に出力する。
他方、信号受信回路120のデータバッファ部121は、信号線群131から受信したワードを一時的に記憶し、所定時間だけ遅延させて(若し誤りビットがある場合にはこの期間に誤り訂正部123によって訂正される)、ワード単位に外部に出力する。また信号受信回路120の符号バッファ部122は、信号線群132から過去一定期間に受信した誤り検出訂正符号を記憶する。そして信号受信回路120の誤り訂正部123は、符号バッファ部122から符号語を構成する誤り検出訂正符号を抽出し、この抽出した誤り検出訂正符号を用いて、データバッファ部121内のビット列のうち上記誤り検出訂正符号の訂正範囲のビット列の誤り訂正を行う。
このように本実施形態にかかる信号送受信回路100によれば、同時スイッチングエラーと特定の信号線上の多発エラーとの双方に対してエラー訂正能力を確保することが可能になる。その理由は、同じ符号語の複数のビットが信号線群130のうちの特定の信号線群、すなわち信号線を駆動する駆動回路の電源が同じ複数の信号線に、同一のタイミングで出力されないため、同時スイッチングエラーが発生しても同じ符号語の複数のビットにエラーが発生する確率が低下するためである。また、同じ符号語の誤り検出訂正符号の各ビットが同じ一つの信号線に出力されないため、特定の信号線上に多発エラーが発生しても同じ符号語の誤り検出訂正符号の複数のビットにエラーが発生する確率が低下するためである。
[第2の実施形態]
図2を参照すると、本発明の第2の実施形態にかかる信号送信回路210は、データバッファ部211と符号生成部212と符号送信部213とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。
データバッファ部211は、4(=ワード長)×4(=ワード長)のセルを持つフリップフロップアレイ(FFアレイ)214を有する。各セルは、一つのフリップフロップで構成される。以下、紙面の横方向を行、縦方向を列と定義し、i行目、j列目のセルをCi,jと表記する。データバッファ部211は、クロックに同期してワードを入力する。データバッファ部211に入力されたワードの各ビットは、FFアレイ214の1列目のセルC1,1、C2,1、C3,1、C4,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,4、C2,4、C3,4、C4,4が保持していたビット情報は信号線群131に出力される。すなわち、FFアレイ214の各行は一つのシフトレジスタを構成している。また、FFアレイ214のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、C1,4、C2,3、C3,2、C4,1のセルから合計4(=ワード長)ビットを読み出し、符号生成部212に出力している。読み出すセルはこの例に限定されない。FFアレイ214の各行のセルのうち、他の行のセルとは列位置が相違する箇所のセルから合計4(=ワード長)ビットのビット情報を読み出せればよい。
符号生成部212は、新たなワードがFFアレイ214に入力される毎に、FFアレイ214のC1,4、C2,3、C3,2、C4,1のセルから読み出された4ビットを訂正範囲とする3ビットの誤り検出訂正符号を生成する。この誤り検出訂正符号の各ビットは符号送信部213に出力される。
符号送信部213は、FFアレイ215を有する。FFアレイ215の行数は、誤り検出訂正符号のビット数に等しい3である。1行目には、FFアレイ214の列数に1を加えた5個のセルが配列されている。2行目には、FFアレイ214の列数に2を加えた6個のセルが配列されている。3行目には、FFアレイ214の列数に3を加えた7個のセルが配列されている。各セルは、一つのフリップフロップで構成される。符号送信部213は、クロックに同期して誤り検出訂正符号を入力する。符号送信部213に入力された誤り検出訂正符号の各ビットは、FFアレイ215の1列目のセルC1,1、C2,1、C3,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,5、C2,6、C3,7が保持していたビット情報は信号線群132に出力される。すなわち、FFアレイ215の各行は、それぞれ段数の異なるシフトレジスタを構成している。
次に本実施形態の信号送信回路210の動作を説明する。
図3は、信号送信回路210に入力されるワードの時系列である。図3において、縦方向はワード内のビットの並びを示し、横方向は時間を示す。ワードを他のワードと区別するため、およびワード内のビットを他のビットを区別するために、ワードのビットは、「ワード識別子‐ワード内識別子」という形式の参照符号を付与している。例えば、時刻t7に入力されているビット7-1は、7番目に入力されたワードの1番目のビットを示している。
信号送信回路210のデータバッファ部211は、図3に示すような順序で入力されるワードをクロックに同期してFFアレイ214に順にシフトインする。またデータバッファ部211は、FFアレイ214からシフトアウトされるワードを信号線群131に出力していく。
他方、データバッファ部211の上記動作と並行して、符号生成部212は、FFアレイ214に新たなワードが入力される毎に、FFアレイ214のC1,4、C2,3、C3,2、C4,1のセルから読み出された4ビットを訂正範囲とする3ビットの誤り検出訂正符号を生成し、符号送信部213に出力する。
符号送信部213は、上記の誤り検出訂正符号をクロックに同期してFFアレイ215に順にシフトインする。また符号送信部213は、FFアレイ215からシフトアウトされる誤り検出訂正符号のビットを信号線群132に出力する。
図4は、データバッファ部211および符号送信部213から信号線群に出力されるワードと誤り検出訂正符号の時系列である。図4において、縦方向はワード内および誤り検出訂正符号内のビットの並びを示し、横方向は時間を示す。誤り検出訂正符号を他の符号語の誤り検出訂正符号と区別するため、および同じ符号語の誤り検出訂正符号内のビットを他のビットと区別するために、誤り検出訂正符号のビットは、「符号語識別子‐誤り検出訂正符号内識別子」という形式の参照符号を付与している。例えば、時刻t11に出力されているビットE3-1は、3番目の符号語における誤り検出訂正符号の1番目のビットであることを示している。また、各ワードの各ビットがどの符号語に属するかを明らかにするために、ワードのビットに符号語識別子を括弧付きで付記している。例えば、時刻t11に出力されている、7番目のワードの3番目のビット7-3(E5)は、5番目の符号語に属していることを示している。
図4を参照すると、本実施形態では、符号語の構成ビットが信号線群の並列伝送方向および時間方向に対して2次元的に配置され、同じタイミングで出力されるビットおよび同じ信号線に出力されるビットは符号語当たり高々1ビットである。従って、同時スイッチングノイズによって信号線群上の全てのビットにエラーが発生した場合でも、それぞれのビットがそれぞれ異なる符号語に属しているが故に訂正可能となる。例えば、時刻t11に送信されたビット7-1〜7-4の全てにエラーが発生した場合、ビット7-1は7番目の符号語、ビット7-2は6番目の符号語、ビット7-3は5番目の符号語、ビット7-4は4番目の符号語にそれぞれ属しているので、それぞれの符号語が1ビットずつエラー訂正を行うことで、結果としてビット7-1〜7-4で構成されるワードの全ビットのエラー訂正が可能になる。
また同じ信号線に出力されるビットは符号語当たり高々1ビットであるため、何れか1つの信号線にエラーが多発した場合でも、それぞれのビットがそれぞれ異なる符号語に属しているが故に訂正可能となる。
なお、本実施形態では、通信開始後の最初の3ワードおよび最後の3ワードは誤り訂正を行うことができないので、ワード信号が常時連続して流れるような装置に適している。
[第3の実施形態]
図5を参照すると、本発明の第3の実施形態にかかる信号受信回路310は、データバッファ部311と符号記憶部312と誤り訂正部313とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。
データバッファ部311は、7(=符号語長)×4(=ワード長)のセルを持つフリップフロップアレイ(FFアレイ)314を有する。各セルは、一つのフリップフロップで構成される。データバッファ部311は、クロックに同期して信号線131からワードを入力する。データバッファ部311に入力されたワードの各ビットは、FFアレイ314の1列目のセルC1,1、C2,1、C3,1、C4,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,7、C2,7、C3,7、C4,7が保持していたビット情報は外部に出力される。すなわち、FFアレイ314の各行は一つのシフトレジスタを構成している。また、FFアレイ314のセルが保持するビット情報は、並列に読み書きすることができる。本実施形態では、同じ符号語の情報ビットを記憶するC1,7、C2,6、C3,5、C4,4のセルから合計4(=ワード長)ビットを読み出し、誤り訂正部313に出力している。
符号記憶部312は、FFアレイ315を有する。FFアレイ315の行数は、誤り検出訂正符号のビット数に等しい3である。1行目には、3個のセルが配列されている。2行目には、2個のセルが配列されている。3行目には、1個のセルが配列されている。各セルは、一つのフリップフロップで構成される。符号記憶部312は、クロックに同期して信号線群132から誤り検出訂正符号を入力する。符号記憶部312に入力された誤り検出訂正符号の各ビットは、FFアレイ315の1列目のセルC1,1、C2,1、C3,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列が保持していたビット情報は廃棄される。
誤り訂正部313は、新たなビット列が信号線群130から入力される毎に、同じ符号語を構成する誤り検出訂正符号の全ビットとその訂正範囲となるビット列の全ビットとをFFアレイ315とFFアレイ314とを読み出す機能を有する。具体的には、誤り訂正部313は、クロック毎に、FFアレイ315のセルC1,3、C2,2、C3,1に保持されている誤り検出訂正符号と、FFアレイ314のセルC1,7、C2,6、C3,5、C4,4に保持されている情報ビットとを読み出す。また誤り訂正部313は、上記読み出した情報ビットと誤り検出訂正符号とに基づいて、上記読み出した情報ビットの誤り検出を行い、若し1ビットの誤りを検出する機能と、上記誤り検出訂正符号を用いて上記情報ビットの誤り訂正を行い、訂正後の情報ビットをFFアレイ314の元のセルC1,7、C2,6、C3,5、C4,4に書き戻す機能とを有する。
次に本実施形態の信号受信回路310の動作を説明する。
信号受信回路310には、信号線群130を通じて図4に示したような時系列信号が入力される。信号受信回路310のデータバッファ部311および符号記憶部312は、図4に示すような順序で入力されるビット列をクロックに同期してFFアレイ314と315とに順にシフトインするとともに、所定時間だけ遅延させて、ワード単位に外部に出力する。若し誤りビットがある場合には、この所定期間内に誤り訂正部313によって訂正される。
誤り訂正部313は、新たなビット列が信号線群130から入力される毎に、FFアレイ315のセルC1,3、C2,2、C3,1に保持されている誤り検出訂正符号と、FFアレイ314のセルC1,7、C2,6、C3,5、C4,4に保持されている情報ビットとから構成される符号語を読み出す。次に誤り訂正部313は、この読み出した符号語の誤り検出を行う。そして誤り訂正部313は、若し1ビットの誤りを検出した場合、読み出した符号語の誤り検出訂正符号に基づいて、当該符号語の情報ビットの誤りを訂正し、訂正後の情報ビットをFFアレイ314の元のセルC1,7、C2,6、C3,5、C4,4に書き戻す。
本実施形態によれば、第2の実施形態にかかる信号送信回路と組み合わせて用いることができる信号受信回路を提供することができる。
[第4の実施形態]
図6を参照すると、本発明の第4の実施形態にかかる信号送信回路410は、データバッファ部411と符号生成部412と符号送信部413とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。
データバッファ部411は、8(=ワード長×2)×4(=ワード長)のセルを持つFFアレイ414を有する。各セルは、一つのフリップフロップで構成される。データバッファ部411は、クロックに同期してワードを入力する。データバッファ部411に入力されたワードの各ビットは、FFアレイ414の1列目のセルC1,1、C2,1、C3,1、C4,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,8、C2,8、C3,8、C4,8が保持していたビット情報は信号線群131に出力される。すなわち、FFアレイ414の各行は一つのシフトレジスタを構成している。また、FFアレイ414のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、8クロック毎に、全てのセルから合計32(=ワード長×8)ビットが符号生成部412に読み出される。
符号生成部412は、データバッファ部411のFFアレイ414の全セルから8ワード分の合計32ビットを読み出す機能と、これらの32ビットをビット長4の8個のグループに分割する機能と、各々のグループ毎にそれらのグループに属するビット列を訂正範囲とするビット長3の8個の誤り検出訂正符号を生成する機能とを有する。符号生成部412は、上記のビット列の分割では、任意のビット列中の任意の2ビットの組み合わせがFFアレイ414の同じ行のセルに保持されるビットの組み合わせにならず、然もFFアレイ414の同じ段のセルに保持されるビットの組み合わせにならないようにする。具体的には、本実施形態は、FFアレイ414のセルを以下のような8グループに分割する(図7参照)。
グループ1:C1,8、C2,7、C3,6、C4,5
グループ2:C1,7、C2,6、C3,5、C4,4
グループ3:C1,6、C2,5、C3,4、C4,3
グループ4:C1,5、C2,4、C3,3、C4,2
グループ5:C1,4、C2,3、C3,2、C4,1
グループ6:C1,3、C2,2、C3,1、C4,8
グループ7:C1,2、C2,1、C3,8、C4,7
グループ8:C1,1、C2,8、C3,7、C4,6
符号生成部412によって生成された上記8グループ分の合計24ビットの誤り検出訂正符号は、符号送信部413に出力される。
符号送信部413は、8(=ワード長×2)×3(=符号長)のセルを持つFFアレイ415を有する。各セルは、一つのフリップフロップで構成される。符号送信部413は、符号生成部412によって生成された上記8グループ分の合計24ビットの誤り検出訂正符号をFFアレイ415の24個のセルに詰め込む。符号送信部413は、この詰め込みでは、同じ符号語の誤り検出訂正符号中の任意の2ビットの組み合わせがFFアレイ415の同一行および同一列のビットの組み合わせにならず、然も同じ符号語の誤り検出訂正符号中の各ビットを保持するFFアレイ415の段がその訂正範囲のビット列を保持するFFアレイ414の段と同じ段にならないようにする。具体的には、本実施形態は、各グループの符号ビットを以下のセルに詰め込む(図7参照)
グループ1:C1,4、C2,3、C3,2
グループ2:C1,3、C2,2、C3,1
グループ3:C1,2、C2,1、C3,8
グループ4:C1,1、C2,8、C3,7
グループ5:C1,8、C2,7、C3,6
グループ6:C1,7、C2,6、C3,5
グループ7:C1,6、C2,5、C3,4
グループ8:C1,5、C2,4、C3,3
また符号送信部413は、FFアレイ415に誤り検出訂正符号を格納すると、クロックに同期してFFアレイ415の各列のセルが保持している誤り検出訂正符号のビット情報を1つ後ろの列のセルに移動させ、最後尾の列のセルC1,8、C2,8、C3,8が保持していたビット情報は信号線群132に出力する。
次に本実施形態の信号送信回路410の動作を説明する。
信号送信回路410には、図3に示したような時系列信号が入力される。信号送信回路410のデータバッファ部411は、図3に示すような順序で入力されるワードをクロックに同期してFFアレイ414に順にシフトインする。そしてデータバッファ部411は、8ワード分のデータをFFアレイ414に入力した時点で、FFアレイ414の全てのセルのビットが符号生成部412に出力された後、再び、8ワード分のデータをFFアレイ414に順にシフトインする。このシフトインに伴ってFFアレイ414からシフトアウトされるワードは、信号線群131に順次出力される。これに同期して、符号送信部413のFFアレイ415からは誤り検出訂正符号が信号線群132に順次出力されている。
他方、符号生成部412は、8ワード分のデータがFFアレイ414に入力される毎に、これら8ワード分のデータをFFアレイ414から読み出して図7に示したような4ビット長の8つのグループに分割し、各グループ毎にそのグループに属する情報ビットを訂正範囲とする合計24ビットの誤り検出訂正符号を生成し、符号送信部413へ出力する。そして、符号送信部413は、8グループ分の上記24ビットの誤り検出訂正符号を図7に示したようなフォーマットでFFアレイ415に格納し、クロックに同期してFFアレイ415のシフトアウトを行う。FFアレイ415からシフトアウトされる誤り検出訂正符号は、信号線群132に順に出力される。
図8は、データバッファ部511および符号送信部512から信号線群に出力されるワードと誤り検出訂正符号の時系列である。図8に示されるように、本実施形態では、符号語の構成ビットが信号線群の並列伝送方向および時間方向に対して2次元的に配置され、同じタイミングで出力されるビットおよび同じ信号線に出力されるビットは符号語当たり高々1ビットである。従って、同時スイッチングエラーと特定の信号線上の多発エラーとの双方に対してエラー訂正能力を確保することができる。
また本実施形態では、8ワード(2×ワード長)単位で、その8ワード分の情報ビットとそれらのための誤り検出訂正符号の全ビットとを送信することができる。このため、本実施形態は、バーストデータの送信に特に適している。
[第5の実施形態]
図9を参照すると、本発明の第5の実施形態にかかる信号受信回路510は、データバッファ部511と符号記憶部512と誤り訂正部513とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。
データバッファ部511は、8(=ワード長×2)×4(=ワード長)のセルを持つFFアレイ514を有する。各セルは、一つのフリップフロップで構成される。データバッファ部511は、クロックに同期してワードを入力する。データバッファ部511に入力されたワードの各ビットは、FFアレイ514の1列目のセルC1,1、C2,1、C3,1、C4,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,8、C2,8、C3,8、C4,8が保持していたビット情報は外部に出力される。すなわち、FFアレイ514の各行は一つのシフトレジスタを構成している。また、FFアレイ514のセルが保持するビット情報は、並列に読み書きすることができる。本実施形態では、32クロック毎に、全てのセルから合計32(=ワード長×8)ビットが誤り訂正部513に読み出される。また、誤り訂正された場合、訂正後の情報ビットがFFアレイ514の該当するセルに書き戻される。
符号記憶部512は、8(=ワード長×2)×3(=誤り検出訂正符号長)のセルを持つFFアレイ515を有する。各セルは、一つのフリップフロップで構成される。符号記憶部512は、クロックに同期して信号線群132から誤り検出訂正符号のビットを入力する。符号記憶部512に入力された誤り検出訂正符号の各ビットは、FFアレイ515の1列目のセルC1,1、C2,1、C3,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,8、C2,8、C3,8が保持していたビット情報は廃棄される。すなわち、FFアレイ515の各行は一つのシフトレジスタを構成している。また、FFアレイ515のセルが保持するビット情報は、並列に読み書きすることができる。本実施形態では、32クロック毎に、全てのセルから合計24(=誤り検出訂正符号長×8)ビットが誤り訂正部513に読み出される。
誤り訂正部513は、FFアレイ514とFFアレイ515とから合計8符号語分の情報ビットと誤り検出訂正符号ビットとを読み出す機能と、これらの符号語毎に、誤り検出訂正符号を用いて訂正範囲のビット列を訂正する機能と、訂正後のビット列をFFアレイ514の元のセルに書き戻す機能とを有する。誤り訂正部513は、これらの処理を1クロック内で実施する。
次に本実施形態の信号受信回路510の動作を説明する。
信号受信回路510には、信号線群130を通じて図8に示したような時系列信号が入力される。信号受信回路510のデータバッファ部511および符号記憶部512は、図8に示すような順序で入力されるビット列をクロックに同期してFFアレイ514と515とに順にシフトインする。
誤り訂正部513は、32クロック毎に、すなわち8つのワードとその誤り検出訂正符号とを含む合計8つの符号語がFFアレイ514とFFアレイ515との保持される毎に、FFアレイ514とFFアレイ515とから合計8符号語分の情報ビットと誤り検出訂正符号ビットとを読み出し、符号語毎に、誤り検出訂正符号を用いて訂正範囲のビット列を訂正し、訂正後のビット列をFFアレイ514の元のセルに書き戻す。
誤り訂正部513による上記処理は1クロック内で実施される。その後、クロックに同期して、次の8個分の符号語が信号線群からFFアレイ514とFFアレイ515とに順にシフトインされていき、これに伴ってFFアレイ514から誤り訂正後のワードが順にシフトアウトされて外部に出力される。
本実施形態によれば、第3の実施形態にかかる信号送信回路と組み合わせて用いることができる信号受信回路を提供することができる。
[第6の実施形態]
図10を参照すると、本発明の第6の実施形態にかかる信号送信回路610は、データバッファ部611と符号生成部612と符号送信部613とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。また、信号送信回路610に接続される信号線群131は、電源バンクAに属する信号線群131−1と、電源バンクBに属する信号線群131−2とに分割されているものとする。さらに符号送信部613に接続される信号線群132は、別の電源バンクCに属するものとする。
データバッファ部611は、信号線群131−1に対応するFFアレイ614−1と信号線群131−2に対応するFFアレイ614−2とを有する。それぞれのFFアレイ614は、3×2(=1/ワード長)のセルを持つ。各セルは、一つのフリップフロップで構成される。データバッファ部611は、クロックに同期してワードを入力する。データバッファ部611に入力されたワードの各ビットは、2つのFFアレイ614の1列目のセルC1,1、C2,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,3、C2,3が保持していたビット情報は、信号線群131−1、131−2に出力される。すなわち、2つのFFアレイ614の各行は一つのシフトレジスタを構成している。また、2つのFFアレイ614のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、3クロック毎に、2つのFFアレイ614毎に、全てのセルから合計6ビットが符号生成部612に読み出される。
符号生成部612は、それぞれのFFアレイ614毎に、当該FFアレイ614の6個のセルから情報ビットを読み出す機能と、これらの6ビットのビット列をビット長2の3個のグループに分割する機能とを有する。符号生成部612は、上記のビット列の分割では、任意のビット列中の任意の2ビットの組み合わせが同じFFアレイ614の同じ行のセルに保持されるビットの組み合わせにならず、然も同じFFアレイ614の同じ段のセルに保持されるビットの組み合わせにならないようにする。具体的には、本実施形態は、以下のようなセルのグループに分割する(図11参照)。
グループ1:C1,3、C2,2
グループ2:C1,2、C2,1
グループ3:C1,1、C2,3
また符号生成部612は、上記グループ毎に、2つのFFアレイ614の同じグループに属する合計4ビットのビット列を訂正範囲とするビット長3の誤り検出訂正符号を生成する機能を有する。符号生成部614によって生成された上記グループ分の合計9ビットの誤り検出訂正符号は、符号送信部613に出力される。
符号送信部613は、3×3(=ワード長)のセルを持つFFアレイ615を有する。各セルは、一つのフリップフロップで構成される。符号送信部613は、符号生成部612によって生成された上記3グループ分の合計9ビットの誤り検出訂正符号をFFアレイ615の9個のセルに詰め込む。符号送信部613は、この詰め込みでは、同じ符号語の誤り検出訂正符号中の任意の2ビットの組み合わせがFFアレイ613の同一行および同一列のビットの組み合わせにならないようにする。具体的には、本実施形態は、以下のように詰め込む(図7参照)
グループ1:C1,3、C2,2、C3,1
グループ2:C1,2、C2,1、C3,3
グループ3:C1,1、C2,3、C3,2
また符号送信部613は、FFアレイ615に誤り検出訂正符号を格納すると、クロックに同期してFFアレイ615の各列のセルが保持している誤り検出訂正符号のビット情報を1つ後ろの列のセルに移動させ、最後尾の列のセルC1,3、C2,3、C3,3が保持していたビット情報は信号線群132のそれぞれ異なる信号線に出力する。
次に本実施形態の信号送信回路610の動作を説明する。
信号送信回路610には、図3に示したような時系列信号が入力される。信号送信回路610のデータバッファ部611は、図3に示すような順序で入力されるワードをクロックに同期して2つのFFアレイ614に順にシフトインする。そしてデータバッファ部611は、3ワード分のデータを2つのFFアレイ614に入力した時点で、2つのFFアレイ614の全てのセルのビットを符号生成部612に出力した後、再び、3ワード分のデータを2つのFFアレイ614に順にシフトインする。このシフトインに伴って2つのFFアレイ614からシフトアウトされるワードは、信号線群131−1、信号線群131−1に順次出力される。これに同期して、後述するように符号送信部413のFFアレイ415から誤り検出訂正符号が信号線群132に順次出力される。
他方、符号生成部612は、3ワード分のデータが2つのFFアレイ614に入力される毎に、これら3ワード分のデータを2つのFFアレイ614から読み出して図11に示したような4ビット長の3つのグループに分割し、各グループ毎にそのグループに属する情報ビットを訂正範囲とする合計9ビットの誤り検出訂正符号を生成し、符号送信部613へ出力する。そして、符号送信部613は、3グループ分の上記9ビットの誤り検出訂正符号を図11に示したようなフォーマットでFFアレイ615に格納し、クロックに同期してFFアレイ615のシフトアウトを行う。FFアレイ615からシフトアウトされる誤り検出訂正符号は、信号線群132に順に出力される。
図12は、データバッファ部611および符号送信部612から信号線群に出力されるワードと誤り検出訂正符号の時系列である。図12に示されるように、本実施形態では、電源バンク毎に、符号語の構成ビットが信号線群の並列伝送方向および時間方向に対して2次元的に配置され、同じタイミングで出力されるビットおよび同じ信号線に出力されるビットは符号語当たり高々1ビットである。従って、同時スイッチングエラーと特定の信号線上の多発エラーとの双方に対してエラー訂正能力を確保することができる。
また本実施形態では、所定数のワード単位(本実施形態では、3ワード単位)で、そのワード分の情報ビットとそれらのための誤り検出訂正符号の全ビットとを送信することができる。このため、本実施形態は、バーストデータの送信に特に適している。
[第7の実施形態]
図13を参照すると、本発明の第7の実施形態にかかる信号受信回路710は、データバッファ部711と符号記憶部712と誤り訂正部713とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。また、信号受信回路710に接続される信号線群131は、電源バンクAに属する信号線群131−1と、電源バンクBに属する信号線群131−2とに分割されているものとする。さらに符号受信部712に接続される信号線群132は、別の電源バンクCに属するものとする。
データバッファ部711は、信号線群131−1に対応するFFアレイ714−1と信号線群131−2に対応するFFアレイ714−2とを有する。それぞれのFFアレイ714は、3×2(=1/ワード長)のセルを持つ。各セルは、一つのフリップフロップで構成される。データバッファ部711は、クロックに同期してワードを入力する。データバッファ部711に入力されたワードの各ビットは、2つのFFアレイ714の1列目のセルC1,1、C2,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,3、C2,3が保持していたビット情報は、信号線群131−1、131−2に出力される。すなわち、2つのFFアレイ714の各行は一つのシフトレジスタを構成している。また、2つのFFアレイ714のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、3クロック毎に、2つのFFアレイ714毎に、全てのセルから合計6ビットが誤り訂正部713に読み出される。
符号記憶部712は、3×3のセルを持つFFアレイ715を有する。各セルは、一つのフリップフロップで構成される。符号記憶部712は、クロックに同期して信号線群132から誤り検出訂正符号を入力する。符号記憶部712に入力された誤り検出訂正符号の各ビットは、FFアレイ715の1列目のセルC1,1、C2,1、C3,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,3、C2,3、C3,3が保持していたビット情報は廃棄される。すなわち、FFアレイ715の各行は一つのシフトレジスタを構成している。また、FFアレイ715のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、3クロック毎に、FFアレイ715の全てのセルから合計9ビットが誤り訂正部713に読み出される。
誤り訂正部713は、FFアレイ714とFFアレイ715とから合計3符号語分の情報ビットと誤り検出訂正符号ビットとを読み出す機能と、これらの符号語毎に、誤り検出訂正符号を用いて訂正範囲のビット列を訂正する機能と、訂正後のビット列をFFアレイ714の元のセルに書き戻す機能とを有する。誤り訂正部713は、これらの処理を1クロック内で実施する。
次に本実施形態の信号受信回路710の動作を説明する。
信号受信回路710には、信号線群130を通じて図12に示したような時系列信号が入力される。信号受信回路710のデータバッファ部711および符号記憶部712は、図12に示すような順序で入力されるビット列をクロックに同期してFFアレイ714とFFアレイ715とに順にシフトインする。
誤り訂正部713は、3クロック毎に、すなわち3つのワードとその誤り検出訂正符号とを含む合計3つの符号語がFFアレイ714とFFアレイ715とに保持される毎に、FFアレイ714とFFアレイ715とから合計3符号語分の情報ビットと誤り検出訂正符号ビットとを読み出し、符号語毎に、誤り検出訂正符号を用いて訂正範囲のビット列を訂正し、訂正後のビット列をFFアレイ714の元のセルに書き戻す。
誤り訂正部713による上記処理は1クロック内で実施される。その後、クロックに同期して、次の3個分の符号語が信号線群からFFアレイ714とFFアレイ715とに順にシフトインされていき、これに伴ってFFアレイ714から誤り訂正後のワードが順にシフトアウトされて外部に出力される。
本実施形態によれば、第6の実施形態にかかる信号送信回路と組み合わせて用いることができる信号受信回路を提供することができる。
[第8の実施形態]
図14を参照すると、本発明の第8の実施形態にかかる信号送信回路810は、データバッファ部811と符号生成部812と符号送信部813とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。また、信号送信回路810に接続される信号線群131は、電源バンクAに属する信号線群131−1と、電源バンクBに属する信号線群131−2とに分割されているものとする。さらに符号送信部813に接続される信号線群132は、別の電源バンクCに属するものとする。
データバッファ部811は、信号線群131−1に対応するFFアレイ814−1と信号線群131−2に対応するFFアレイ814−2とを有する。それぞれのFFアレイ814は、6×2のセルを持つ。各セルは、一つのフリップフロップで構成される。データバッファ部811は、クロックに同期してワードを入力する。データバッファ部811に入力されたワードの各ビットは、2つのFFアレイ814の1列目のセルC1,1、C2,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,6、C2,6が保持していたビット情報は、信号線群131−1、131−2に出力される。すなわち、2つのFFアレイ814の各行は一つのシフトレジスタを構成している。また、2つのFFアレイ814のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、6クロック毎に、2つのFFアレイ814毎に、全てのセルから合計12ビットが符号生成部812に読み出される。
符号生成部812は、それぞれのFFアレイ814毎に、当該FFアレイ814の12個のセルから情報ビットを読み出す機能と、これらの12ビットのビット列をビット長2の6個のグループに分割する機能とを有する。符号生成部812は、上記のビット列の分割では、任意のビット列中の任意の2ビットの組み合わせが同じFFアレイ814の同じ行のセルに保持されるビットの組み合わせにならず、然も同じFFアレイ814の同じあるいは隣接する段のセルに保持されるビットの組み合わせにならないようにする。具体的には、本実施形態は、以下のようなセルのグループに分割する(図15参照)。
グループ1:C1,6、C2,4
グループ2:C1,5、C2,3
グループ3:C1,4、C2,2
グループ4:C1,3、C2,1
グループ5:C1,2、C2,6
グループ6:C1,1、C2,5
また符号生成部812は、上記グループ毎に、2つのFFアレイ814の同じグループに属する合計4ビットのビット列を訂正範囲とするビット長3の誤り検出訂正符号を生成する機能を有する。符号生成部614によって生成された上記グループ分の合計18ビットの誤り検出訂正符号は、符号送信部813に出力される。
符号送信部813は、3×6のセルを持つFFアレイ815を有する。各セルは、一つのフリップフロップで構成される。符号送信部813は、符号生成部812によって生成された上記6グループ分の合計18ビットの誤り検出訂正符号をFFアレイ815の18個のセルに詰め込む。符号送信部813は、この詰め込みでは、同じ符号語の誤り検出訂正符号中の任意の2ビットの組み合わせがFFアレイ613の同一行の組み合わせにならず、然も同一あるいは隣接する列のビットの組み合わせにならないようにする。具体的には、本実施形態は、以下のように詰め込む(図15参照)
グループ1:C1,6、C2,4、C3,2
グループ2:C1,5、C2,3、C3,1
グループ3:C1,4、C2,2、C3,6
グループ4:C1,3、C2,1、C3,5
グループ5:C1,2、C2,6、C3,4
グループ6:C1,1、C2,5、C3,3
また符号送信部813は、FFアレイ815に誤り検出訂正符号を格納すると、クロックに同期してFFアレイ815の各列のセルが保持している誤り検出訂正符号のビット情報を1つ後ろの列のセルに移動させ、最後尾の列のセルC1,6、C2,6、C3,6が保持していたビット情報は信号線群132のそれぞれ異なる信号線に出力する。
次に本実施形態の信号送信回路810の動作を説明する。
信号送信回路810には、図3に示したような時系列信号が入力される。信号送信回路810のデータバッファ部811は、図3に示すような順序で入力されるワードをクロックに同期して2つのFFアレイ814に順にシフトインする。そしてデータバッファ部811は、6ワード分のデータを2つのFFアレイ814に入力した時点で、2つのFFアレイ814の全てのセルのビットを符号生成部812に出力した後、再び、6ワード分のデータを2つのFFアレイ814に順にシフトインする。このシフトインに伴って2つのFFアレイ814からシフトアウトされるワードは、信号線群131−1、信号線群131−1に順次出力される。これに同期して、後述するように符号送信部813のFFアレイ815から誤り検出訂正符号が信号線群132に順次出力される。
他方、符号生成部812は、6ワード分のデータが2つのFFアレイ814に入力される毎に、これら6ワード分のデータを2つのFFアレイ814から読み出して図15に示したような4ビット長の6つのグループに分割し、各グループ毎にそのグループに属する情報ビットを訂正範囲とする合計18ビットの誤り検出訂正符号を生成し、符号送信部813へ出力する。そして、符号送信部813は、6グループ分の上記18ビットの誤り検出訂正符号を図15に示したようなフォーマットでFFアレイ815に格納し、クロックに同期してFFアレイ815のシフトアウトを行う。FFアレイ815からシフトアウトされる誤り検出訂正符号は、信号線群132に順に出力される。
図16は、データバッファ部811および符号送信部812から信号線群に出力されるワードと誤り検出訂正符号の時系列である。図16に示されるように、本実施形態では、電源バンク毎に、符号語の構成ビットが信号線群の並列伝送方向および時間方向に対して2次元的に配置され、同じタイミングで出力されるビットおよび同じ信号線に出力されるビットは符号語当たり高々1ビットである。従って、同時スイッチングエラーと特定の信号線上の多発エラーとの双方に対してエラー訂正能力を確保することができる。
また本実施形態では、電源バンク毎に、同じ符号語の構成ビットが連続して出力されず、1ビット飛びで出力されている。このため、非常に大きな同時スイッチングノイズによって連続する2ワードにエラーが発生した場合でも、それぞれのビットがそれぞれ異なる符号語に属しているが故に訂正可能となる。本実施形態では、1ビット飛びであるが、2ビット飛び、3ビット飛びの符号化フォーマットにすればさらに効果が増すのは言うまでもない。
本実施形態では、所定数のワード単位(本実施形態では、6ワード単位)で、そのワード分の情報ビットとそれらのための誤り検出訂正符号の全ビットとを送信することができる。このため、本実施形態は、バーストデータの送信に特に適している。
[第9の実施形態]
図17を参照すると、本発明の第9の実施形態にかかる信号受信回路910は、データバッファ部911と符号記憶部912と誤り訂正部913とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。また、信号送信回路910に接続される信号線群131は、電源バンクAに属する信号線群131−1と、電源バンクBに属する信号線群131−2とに分割されているものとする。さらに符号記憶部912に接続される信号線群132は、別の電源バンクCに属するものとする。
データバッファ部911は、信号線群131−1に対応するFFアレイ914−1と信号線群131−2に対応するFFアレイ914−2とを有する。それぞれのFFアレイ914は、6×2のセルを持つ。各セルは、一つのフリップフロップで構成される。データバッファ部911は、クロックに同期してワードを入力する。データバッファ部911に入力されたワードの各ビットは、2つのFFアレイ914の1列目のセルC1,1、C2,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,6、C2,6が保持していたビット情報は、ワードとして外部に出力される。すなわち、2つのFFアレイ914の各行は一つのシフトレジスタを構成している。また、2つのFFアレイ914のセルが保持するビット情報は、並列に読み書きすることができる。本実施形態では、6クロック毎に、2つのFFアレイ914毎に、全てのセルから合計12ビットが誤り訂正部913に読み出される。
符号記憶部912は、6×2のセルを持つFFアレイ915を有する。各セルは、一つのフリップフロップで構成される。符号記憶部912は、クロックに同期して信号線群132から誤り検出訂正符号を入力する。符号記憶部912に入力された誤り検出訂正符号の各ビットは、FFアレイ915の1列目のセルC1,1、C2,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動し、最後尾の列のセルC1,6、C2,6が保持していたビット情報は廃棄される。すなわち、FFアレイ915の各行は一つのシフトレジスタを構成している。また、FFアレイ915のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、6クロック毎に、FFアレイ915の全てのセルから合計18ビットが誤り訂正部913に読み出される。
誤り訂正部913は、FFアレイ914とFFアレイ915とから合計6符号語分の情報ビットと誤り検出訂正符号ビットとを読み出す機能と、これらの符号語毎に、誤り検出訂正符号を用いて訂正範囲のビット列を訂正する機能と、訂正後のビット列をFFアレイ914の元のセルに書き戻す機能とを有する。誤り訂正部913は、これらの処理を1クロック内で実施する。
次に本実施形態の信号受信回路910の動作を説明する。
信号受信回路910には、信号線群130を通じて図16に示したような時系列信号が入力される。信号受信回路910のデータバッファ部911および符号記憶部912は、図16に示すような順序で入力されるビット列をクロックに同期してFFアレイ914とFFアレイ915とに順にシフトインする。
誤り訂正部913は、6クロック毎に、すなわち6つのワードとその誤り検出訂正符号とを含む合計6つの符号語がFFアレイ914とFFアレイ915とに保持される毎に、FFアレイ914とFFアレイ915とから合計6符号語分の情報ビットと誤り検出訂正符号ビットとを読み出し、符号語毎に、誤り検出訂正符号を用いて訂正範囲のビット列を訂正し、訂正後のビット列をFFアレイ914の元のセルに書き戻す。
誤り訂正部913による上記処理は1クロック内で実施される。その後、クロックに同期して、次の6個分の符号語が信号線群からFFアレイ914とFFアレイ915とに順にシフトインされていき、これに伴ってFFアレイ914から誤り訂正後のワードが順にシフトアウトされて外部に出力される。
本実施形態によれば、第8の実施形態にかかる信号送信回路と組み合わせて用いることができる信号受信回路を提供することができる。
[第10の実施形態]
図18を参照すると、本発明の第10の実施形態にかかる信号送信回路1010は、データバッファ部1011と符号生成部1012と符号送信部1013とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。また、信号送信回路1010に接続される信号線群131は電源バンクAに属し、符号送信部1013に接続される信号線群132は、別の電源バンクBに属するものとする。
データバッファ部1011は、4×4のセルを持つFFアレイ1014を有する。各セルは、一つのフリップフロップで構成される。データバッファ部1011は、クロックに同期してワードを入力する。データバッファ部1011に入力されたワードの各ビットは、FFアレイ1014の1列目のセルC1,1、C2,1、C3,1、C4,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動する。すなわち、FFアレイ1014の各行は一つのシフトレジスタを構成している。また、FFアレイ1014のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、FFアレイ1014に4ワード分のデータが保持された後、2度にわたって読み出しが行われる。1回目の読み出しは、誤り検出訂正符号を生成するために、FFアレイ1014の各行単位で、セルに保持されたビットが一つのグループとして並列に読み出されて符号生成部1012に出力される。すなわち、図19に示すように、FFアレイ1014の1行目のセルC1,1、C1,2、C1,3、C1,4のビット列がグループ1、2行目のセルC2,1、C2,2、C2,3、C2,4のビット列がグループ2、3行目のセルC3,1、C3,2、C3,3、C3,4のビット列がグループ3、4行目のセルC4,1、C4,2、C4,3、C4,4のビット列がグループ4として読み出されて符号生成部1012に出力される。2回目の読み出しは、信号線131にデータを出力するために、FFアレイ1014の各列単位に、セルに保持されたビットが一つのワードとして読み出されて信号線群131のそれぞれ異なる信号線に出力される。
符号生成部1012は、FFアレイ1014から行単位で情報ビットを読み出す機能と、この読み出した行単位のビット列毎に、そのビット列を訂正範囲とするビット長3の誤り検出訂正符号を生成する機能とを有する。符号生成部1012によって生成された4符号語分の合計12ビットの誤り検出訂正符号は、符号送信部1013に出力される。
符号送信部1013は、3×4のセルを持つFFアレイ1015を有する。各セルは、一つのフリップフロップで構成される。符号送信部1013は、符号生成部1012によって生成された4符号語分の合計12ビットの誤り検出訂正符号をFFアレイ1015の12個のセルに詰め込む。符号送信部1013は、この詰め込みでは、同じ符号語の誤り検出訂正符号中の任意の2ビットの組み合わせがFFアレイ1015の同一行の組み合わせにならず、然も同一列のビットの組み合わせにならないようにする。具体的には、本実施形態は、各グループの誤り検出訂正符号をFFアレイ1013の以下のセルに詰め込む(図19参照)
グループ1:C1,4、C2,3、C3,2
グループ2:C1,3、C2,2、C3,1
グループ3:C1,2、C2,1、C3,4
グループ4:C1,1、C2,4、C3,3
また符号送信部1013は、FFアレイ1015に誤り検出訂正符号を格納すると、クロックに同期してFFアレイ815の各列のセルが保持している誤り検出訂正符号のビットを1つ後ろの列のセルに移動させ、最後尾の列のセルC1,4、C2,4、C3,4、C4,4が保持していたビット情報は信号線群132のそれぞれ異なる信号線に出力する。
次に本実施形態の信号送信回路1010の動作を説明する。
信号送信回路1010には、図3に示したような時系列信号が入力される。信号送信回路1010のデータバッファ部1011は、図3に示すような順序で入力されるワードをクロックに同期してFFアレイ1014に順にシフトインする。そしてデータバッファ部811は、4ワード分のデータをFFアレイ1014に入力した時点で、FFアレイ1014の各行のビット列を一つのグループのビット列として符号生成部1012に出力する。
符号生成部1012は、FFアレイ1014の各行(各グループ)のビット列を訂正範囲とする誤り検出訂正符号を生成し、符号送信部1013に出力する。符号送信部1013は、各グループの誤り検出訂正符号を図19に示したような配置方法でFFアレイ1015に詰め込む。
その後、データバッファ部1011におけるFFアレイ1014と符号送信部1013におけるFFアレイ1015とがクロックに同期して列方向に4クロック分、シフトされる。これにより、次の4ワードがFFアレイ1014に順に入力されると共に、FFアレイ1014に保持されていた4符号語分の合計16ビットがワード単位で信号線群131に順に出力され、且つ、FFアレイ1015に保持されていた4符号語分の合計12ビットの誤り検出訂正符号が信号線群132に3ビットずつ並列に出力される。
図20は、本実施形態の信号送信回路1010から信号線群に出力されるワードと誤り検出訂正符号の時系列である。図20に示されるように、本実施形態では、電源バンク毎に、同じタイミングで信号線群に出力されるビットは符号語当たり高々1ビットである。従って、同時スイッチングノイズによって特定の信号線群上の全てのビットにエラーが発生した場合でも、それぞれのビットがそれぞれ異なる符号語に属しているが故に訂正可能となる。
また本実施形態では、同じ信号線に出力される誤り検出訂正ビットは符号語当たり高々1ビットである。従って、特定の信号線上の多発エラーに対してエラー訂正能力を確保することが可能になる。
本実施形態では、所定数のワード単位(本実施形態では、4ワード単位)で、そのワード分の情報ビットとそれらのための誤り検出訂正符号の全ビットとを送信することができる。このため、本実施形態は、バーストデータの送信に特に適している。
[第11の実施形態]
図21を参照すると、本発明の第11の実施形態にかかる信号受信回路1110は、データバッファ部1111と符号記憶部1112と誤り訂正部1113とを有する。以下、ワードのビット数が4ビット、誤り検出訂正符号のビット数が3ビットのハミング符号を例にして、各部の構成を説明する。また、信号受信回路1110に接続される信号線群131は電源バンクAに属し、符号記憶部1112に接続される信号線群132は、別の電源バンクBに属するものとする。
データバッファ部1111は、4×4のセルを持つFFアレイ1114を有する。各セルは、一つのフリップフロップで構成される。データバッファ部1111は、クロックに同期して信号線群131からワードを入力する。データバッファ部1111に入力されたワードの各ビットは、FFアレイ1114の1列目のセルC1,1、C2,1、C3,1、C4,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動する。すなわち、FFアレイ1114の各行は一つのシフトレジスタを構成している。また、FFアレイ1114のセルが保持するビット情報は、並列に読み書きすることができる。本実施形態では、FFアレイ1114に4ワード分のデータが保持された後、2度にわたって読み出しが行われる。1回目の読み出しは、誤り検出訂正を行うために、FFアレイ1114の各行単位で、セルに保持されたビットが一つのグループとして並列に読み出されて誤り訂正部1113に出力される。2回目の読み出しは、受信データを外部に出力するために、FFアレイ1114の各列単位に、セルに保持されたビットが一つのワードとして読み出されて外部に出力される。また、誤り訂正が必要になる場合、上記1回目の読み出しと2回目の読み出しとの間に、FFアレイ1114への書き出しが実施される。
符号記憶部1112は、4×4のセルを持つFFアレイ1115を有する。各セルは、一つのフリップフロップで構成される。データバッファ部1111は、クロックに同期して信号線群132から誤り検出訂正符号を入力する。符号記憶部1112に入力された誤り検出訂正符号の各ビットは、FFアレイ1115の1列目のセルC1,1、C2,1、C3,1に入力される。このとき、各セルが保持していたビット情報は1つ後ろの列のセルに移動する。すなわち、FFアレイ1115の各行は一つのシフトレジスタを構成している。また、FFアレイ1115のセルが保持するビット情報は、並列に読み出すことができる。本実施形態では、FFアレイ1115に4符号語分の誤り検出訂正符号が保持された後、FFアレイ1115の全セルに保持されたビットが読み出されて誤り訂正部1113に出力される。
誤り訂正部1113は、FFアレイ1114とFFアレイ1115とから合計6符号語分の情報ビットと誤り検出訂正符号ビットとを読み出す機能と、これらの符号語毎に、誤り検出訂正符号を用いて訂正範囲のビット列を訂正する機能と、訂正後のビット列をFFアレイ1114の元のセルに書き戻す機能とを有する。誤り訂正部1113は、これらの処理を1クロック内で実施する。
次に本実施形態の信号受信回路1110の動作を説明する。
信号受信回路1110には、信号線群130を通じて図20に示したような時系列信号が入力される。信号受信回路1110のデータバッファ部1111および符号記憶部1112は、図20に示すような順序で入力されるビット列をクロックに同期してFFアレイ1114とFFアレイ1115とに順にシフトインする。
誤り訂正部1113は、6クロック毎に、すなわち6つのワードとその誤り検出訂正符号とを含む合計6つの符号語がFFアレイ1114とFFアレイ1115とに保持される毎に、FFアレイ1114とFFアレイ1115とから合計6符号語分の情報ビットと誤り検出訂正符号ビットとを読み出し、符号語毎に、誤り検出訂正符号を用いて訂正範囲のビット列を訂正し、訂正後のビット列をFFアレイ1114の元のセルに書き戻す。
誤り訂正部1113による上記処理は1クロック内で実施される。その後、クロックに同期して、次の6個分の符号語が信号線群からFFアレイ1114とFFアレイ1115とに順にシフトインされていき、これに伴ってFFアレイ1114から誤り訂正後のワードが順にシフトアウトされて外部に出力される。
本実施形態によれば、第10の実施形態にかかる信号送信回路と組み合わせて用いることができる信号受信回路を提供することができる。
[第12の実施形態]
図22を参照すると、本発明の第12の実施形態にかかる信号送受信回路1200は、信号送信側LSI1210と、この信号送信側LSI1210に信号線群1230、信号線群1240を通じて接続される信号受信側LSI1220とから構成される。信号線群1230は、例えばデータバスであり、複数の信号線により構成される。信号線群1240は、ECC符号を伝送する複数の信号線により構成される。
信号送信側LSI1210は、デジタルロジック部1211と信号送信部1212とを有する。信号受信側LSI1220は、デジタルロジック部1221と信号受信部1222とを有する。デジタルロジック部1211、1221は、MPU等で構成される。デジタルロジック部1211は、デジタルロジック部1221にデータを送信する場合、ワード単位でデータを信号送信部1212へ出力する。
信号送信部1212は、デジタルロジック部1211から複数のワードを順に入力し、これら複数のワードからワードと同じビット数の情報ビットと誤り検出訂正符号とから構成される複数の符号語を生成し、信号線群1230、1240を介して信号受信回路1220に送信する機能を有している。この信号送信部1212は、上述した第1、第2、第4、第6、第8、第10の実施形態にかかる信号送信回路によって構成することができる。
信号受信部1222は、信号線群1230、1240を介して信号送信回路1210から複数の符号語を受信し、この受信した符号語毎に誤り検出訂正符号を用いて情報ビットの誤り訂正を行い、誤り訂正後の情報ビットによって構成されるデータをワード単位にデジタルロジック部1221に出力する機能を有する。この信号受信部1221は、上述した第1、第3、第5、第7、第9、第11の実施形態にかかる信号受信回路によって構成することができる。
[第13の実施形態]
図23を参照すると、本発明の第13の実施形態にかかる信号送受信回路1300は、LSI1310と、このLSI1310とバス信号およびECC符号の授受を行うDDR−SDRAM1320とから構成される。またLSI1310は、MPU等で構成されるデジタルロジック部1330と、DDRコントローラ1340と、デジタルロジック部1330とDDRコントローラ1340との間に配置された信号送信部1350および信号受信部1360とを有する。
信号送信部1350は、デジタルロジック部1330から複数のワードを順に入力し、これら複数のワードからワードと同じビット数の情報ビットと誤り検出訂正符号とから構成される複数の符号語を生成し、信号線群1371、1381を介してDDRコントローラ1340に送信する機能を有している。この信号送信部1350は、上述した第1、第2、第4、第6、第8、第10の実施形態にかかる信号送信回路によって構成することができる。
信号受信部1360は、信号線群1372、1382を介してDDRコントローラ1340から複数の符号語を受信し、この受信した符号語毎に誤り検出訂正符号を用いて情報ビットの誤り訂正を行い、誤り訂正後の情報ビットによって構成されるデータをワード単位にデジタルロジック部1330に出力する機能を有する。この信号受信部1360は、上述した第1、第3、第5、第7、第9、第11の実施形態にかかる信号受信回路によって構成することができる。
以上本発明について幾つかの実施形態を挙げて説明したが、本発明は以上の実施形態にのみ限定されずその他各種の付加変更が可能である。また、説明を簡略化するために、4ビット構成のワードに3ビットの誤り検出訂正符号を付加する例に基づいて各実施形態を説明したが、ワードの構成ビット数は4ビットに限定されず、8ビット、16ビット、32ビット、64ビット等に任意のビット数とすることができ、また誤り検出訂正符号もワードの構成ビット数および誤り検出訂正能力に応じた任意のビット数にすることが可能である。
本発明は、LSIとLSI間やLSIとRAM間等において、誤り検出訂正符号を付加してパラレルデータにて信号を受け渡す分野全般に利用することができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
第1および第2の信号線群によって互いに接続される信号送信回路と信号受信回路とを備え、
前記信号送信回路は、
ワードのビット数をkとするとき、それぞれがk段のk個のシフトレジスタを有し、入力されたワードの各ビットを前記k個の送信側シフトレジスタにシフトインし、前記k個の送信側シフトレジスタからシフトアウトされる各ビットを前記第1の信号線群のそれぞれ異なる信号線に出力する送信側データバッファ部と、
新たなワードが前記送信側データバッファ部に入力される毎に前記k個の送信側シフトレジスタのそれぞれ異なる段から1ビットずつ読み出した合計kビットのビット列を訂正範囲とするビット数mの誤り検出訂正符号を生成する符号生成部と、
それぞれk+1段、k+2段、…、k+m段のm個の送信側シフトレジスタを有し、前記符号生成部によって生成された誤り検出訂正符号の各ビットを前記m個の送信側シフトレジスタにシフトインし、前記m個の送信側シフトレジスタからシフトアウトされる各ビットを前記第2の信号線群のそれぞれ異なる信号線に出力する符号送信部とを有し、
前記信号受信回路は、
それぞれがk+m段のk個の受信側シフトレジスタを有し、前記第1の信号線群から受信したワードの各ビットを前記k個の受信側シフトレジスタにシフトインし、前記k個の受信側シフトレジスタからシフトアウトされる各ビットを出力する受信側データバッファ部と、
それぞれ1段、2段、…、m段のm個の受信側シフトレジスタを有し、前記第2の信号線群から受信した各ビットを前記m個の受信側シフトレジスタにシフトインする受信側符号バッファ部と、
同じ符号語を構成する誤り検出訂正符号の全ビットとその訂正範囲となるビット列の全ビットとが前記k個の受信側シフトレジスタと前記m個の受信側シフトレジスタとに揃って保持されたときに、前記m個の受信側シフトレジスタから当該符号語の誤り検出訂正符号を読み出し、該読み出した誤り検出訂正符号を用いて、前記k個の受信側シフトレジスタに保持されている当該誤り検出訂正符号の訂正範囲となるビット列の誤り訂正を行う誤り訂正部とを有することを特徴とする信号送信回路。
(付記2)
第1および第2の信号線群によって互いに接続される信号送信回路と信号受信回路とを備え、
前記信号送信回路は、
ワードのビット数をkとするとき、それぞれが2k段のk個の送信側シフトレジスタを有し、入力されたワードの各ビットを前記k個の送信側シフトレジスタにシフトインし、前記k個の送信側シフトレジスタからシフトアウトされる各ビットを前記第1の信号線群のそれぞれ異なる信号線に出力する送信側データバッファ部と、
前記k個の送信側シフトレジスタに2k個のワードがシフトインされる毎に、前記k個の送信側シフトレジスタに記憶された2k個のワードを、ビット数kの2k個のビット列であって、任意のビット列中の任意の2ビットの組み合わせが同じ前記送信側シフトレジスタに保持されるビットの組み合わせにならず、然も前記k個の送信側シフトレジスタの同じ段のビットの組み合わせにならないビット列に分割して読み出し、該読み出した2k個のビット列を訂正範囲とするビット数mの2k個の誤り検出訂正符号を生成する符号生成部と、
それぞれが2k段のm個の送信側シフトレジスタを有し、前記符号生成部によって2k個の誤り検出訂正符号が生成される毎に、任意の誤り検出訂正符号中の任意の2ビットの組み合わせが、同じ前記送信側シフトレジスタに保持されるビットの組み合わせにならず、また前記m個の送信側シフトレジスタの同じ段のビットの組み合わせにもならず、さらに当該誤り検出訂正符号の各ビットを保持する前記m個の送信側シフトレジスタの段がその訂正範囲のビット列を記憶する前記k個の送信側シフトレジスタの段と同じ段にならないように、前記2k個の誤り検出訂正符号の各ビットを前記m個の送信側シフトレジスタに格納した後、前記k個の送信側シフトレジスタと同期して前記m個の送信側シフトレジスタのシフトアウトを行い、前記m個の送信側シフトレジスタからシフトアウトされる各ビットを前記第2の信号線群のそれぞれ異なる信号線に出力する符号送信部と
を有し、
前記信号受信回路は、
それぞれが2k段のk個の受信側シフトレジスタを有し、前記第1の信号線群から受信したワードの各ビットを前記k個の受信側シフトレジスタにシフトインし、前記k個の受信側シフトレジスタからシフトアウトされる各ビットを出力する受信側データバッファ部と、
それぞれが2k段のm個の受信側シフトレジスタを有し、前記第2の信号線群から受信した誤り検出訂正符号の各ビットを前記m個の受信側シフトレジスタにシフトインする受信側符号バッファ部と、
2k個の符号語の誤り検出訂正符号の全ビットとその訂正範囲となるビット列の全ビットとが前記k個の受信側シフトレジスタと前記m個の受信側シフトレジスタとに揃って保持されたときに、前記m個の受信側シフトレジスタから各符号語の誤り検出訂正符号を読み出し、該読み出した各符号語の誤り検出訂正符号を用いて、前記k個の受信側シフトレジスタに保持されている各符号語の訂正範囲となるビット列の誤り訂正を行う誤り訂正部とを有することを特徴とする信号送信回路。
100…信号送受信回路
110…信号送信回路
111…データバッファ部
112…符号生成部
113…符号送信部
120…信号受信回路
121…データバッファ部
122…符号バッファ部
123…誤り訂正部
130、131、132…信号線群

Claims (8)

  1. 第1および第2の信号線群によって互いに接続される信号送信回路と信号受信回路とを備え、
    前記信号送信回路は、
    入力されたワードを過去一定個数分記憶するとともに、入力順に前記第1の信号線群にワード単位で出力する送信側データバッファ部と、
    前記ワードを構成するビット数と同じビット数のビット列であって、当該ビット列中の複数のビットが前記第1の信号線群の範囲または前記第1の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されないビットの組み合わせとなるビット列を前記送信側データバッファ部から読み出し、該読み出したビット列を訂正範囲とする誤り検出訂正符号を生成する符号生成部と、
    前記符号生成部により生成された誤り検出訂正符号の各ビットを、当該誤り検出訂正符号のビット列と前記訂正範囲のビット列とから構成される符号語中の複数のビットが前記第1および第2の信号線群の範囲または前記第1および第2の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されることがないタイミングで、前記第2の信号線群のそれぞれ異なる信号線に出力する符号送信部と
    を有し、
    前記信号受信回路は、
    前記第1の信号線群から受信したワードを過去一定個数分記憶するとともに、受信順にワード単位で出力する受信側データバッファ部と、
    前記第2の信号線群から受信した誤り検出訂正符号を過去一定個数分記憶する受信側符号バッファ部と、
    同じ符号語を構成する誤り検出訂正符号とその訂正範囲となるビット列とが前記受信側符号バッファ部と前記受信側データバッファ部とに揃って記憶されたときに、前記受信側符号バッファ部から当該符号語の誤り検出訂正符号を読み出し、該読み出した誤り検出訂正符号を用いて、前記受信側データバッファ部に記憶されている当該誤り検出訂正符号の訂正範囲となるビット列の誤り訂正を行う誤り訂正部とを有することを特徴とする信号送受信回路。
  2. 前記符号生成部は、前記ワードを構成するビット数と同じビット数のビット列であって、当該ビット列中の任意の2ビットの組み合わせが前記第1の信号線群の範囲または前記第1の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されないビットの組み合わせとなるビット列を前記送信側データバッファ部から読み出し、該読み出したビット列を訂正範囲とする誤り検出訂正符号を生成し、
    前記符号送信部は、前記符号生成部により生成された誤り検出訂正符号の各ビットを、当該誤り検出訂正符号のビット列と前記訂正範囲のビット列とから構成される符号語中の任意の2ビットの組み合わせが前記第1および第2の信号線群の範囲または前記第1および第2の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されることがないタイミングで、前記第2の信号線群のそれぞれ異なる信号線に出力する
    ことを特徴とする請求項1に記載の信号送受信回路。
  3. 前記部分信号線群は、信号線を駆動する駆動回路の電源が同じ信号線の集まりであることを特徴とする請求項1または2に記載の信号送受信回路。
  4. 第1および第2の信号線群に接続された信号送信回路であって、
    入力されたワードを過去一定個数分記憶するとともに、入力順に前記第1の信号線群にワード単位で出力する送信側データバッファ部と、
    前記ワードを構成するビット数と同じビット数のビット列であって、当該ビット列中の複数のビットが前記第1の信号線群の範囲または前記第1の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されないビットの組み合わせとなるビット列を前記送信側データバッファ部から読み出し、該読み出したビット列を訂正範囲とする誤り検出訂正符号を生成する符号生成部と、
    前記符号生成部により生成された誤り検出訂正符号の各ビットを、当該誤り検出訂正符号のビット列と前記訂正範囲のビット列とから構成される符号語中の複数のビットが前記第1および第2の信号線群の範囲または前記第1および第2の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されることがないタイミングで、前記第2の信号線群のそれぞれ異なる信号線に出力する符号送信部とを有することを特徴とする信号送信回路。
  5. 前記符号生成部は、前記ワードを構成するビット数と同じビット数のビット列であって、当該ビット列中の任意の2ビットの組み合わせが前記第1の信号線群の範囲または前記第1の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されないビットの組み合わせとなるビット列を前記送信側データバッファ部から読み出し、該読み出したビット列を訂正範囲とする誤り検出訂正符号を生成し、
    前記符号送信部は、前記符号生成部により生成された誤り検出訂正符号の各ビットを、当該誤り検出訂正符号のビット列と前記訂正範囲のビット列とから構成される符号語中の任意の2ビットの組み合わせが前記第1および第2の信号線群の範囲または前記第1および第2の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されることがないタイミングで、前記第2の信号線群のそれぞれ異なる信号線に出力する
    ことを特徴とする請求項4に記載の信号送信回路。
  6. 前記部分信号線群は、信号線を駆動する駆動回路の電源が同じ信号線の集まりであることを特徴とする請求項4または5に記載の信号送信回路。
  7. 第1および第2の信号線群に接続される信号受信回路であって、
    前記第1の信号線群からワード単位で受信したワードを過去一定個数分記憶するとともに、受信順にワード単位で出力する受信側データバッファ部と、
    前記ワードを構成するビット数と同じビット数のビット列であって当該ビット列中の複数のビットが前記第1の信号線群のうちの特定の信号線群に同一のタイミングで出力されないビットの組み合わせとなるビット列を訂正範囲とする誤り検出訂正符号であって、当該誤り検出訂正符号のビット列と前記訂正範囲のビット列とから構成される符号語中の複数のビットが前記第1および第2の信号線群のうちの特定の信号線群に同一のタイミングで出力されることがないタイミングで前記第2の信号線群のそれぞれ異なる信号線に出力された誤り検出訂正符号を前記第2の信号線群から受信して過去一定個数分記憶する受信側符号バッファ部と、
    同じ符号語を構成する誤り検出訂正符号とその訂正範囲となるビット列とが前記受信側符号バッファ部と前記受信側データバッファ部とに揃って記憶されたときに、前記受信側符号バッファ部から当該符号語の誤り検出訂正符号を読み出し、該読み出した誤り検出訂正符号を用いて、前記受信側データバッファ部に記憶されている当該誤り検出訂正符号の訂正範囲となるビット列の誤り訂正を行う誤り訂正部とを有することを特徴とする信号受信回路。
  8. 送信側データバッファ部と符号生成部と符号送信部とを有する信号送信回路と、受信側データバッファ部と符号記憶部と誤り訂正部とを有する信号受信回路とが、第1および第2の信号線群によって互いに接続される信号送受信回路が実行する信号送受信方法であって、
    前記送信側データバッファ部が、入力されたワードを過去一定個数分記憶するとともに、入力順に前記第1の信号線群にワード単位で出力し、
    前記符号生成部が、前記ワードを構成するビット数と同じビット数のビット列であって、当該ビット列中の複数のビットが前記第1の信号線群の範囲または前記第1の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されないビットの組み合わせとなるビット列を前記送信側データバッファ部から読み出し、該読み出したビット列を訂正範囲とする誤り検出訂正符号を生成し、
    前記符号送信部が、前記符号生成部により生成された誤り検出訂正符号の各ビットを、当該誤り検出訂正符号のビット列と前記訂正範囲のビット列とから構成される符号語中の複数のビットが前記第1および第2の信号線群の範囲または前記第1および第2の信号線群を構成する部分信号線群の範囲で同一のタイミングで出力されることがないタイミングで、前記第2の信号線群のそれぞれ異なる信号線に出力し、
    前記受信側データバッファ部が、前記第1の信号線群から受信したワードを過去一定個数分記憶するとともに、受信順にワード単位で出力し、
    前記符号記憶部が、前記第2の信号線群から受信した誤り検出訂正符号を過去一定個数分記憶し、
    前記誤り訂正部が、同じ符号語を構成する誤り検出訂正符号とその訂正範囲となるビット列とが前記受信側符号バッファ部と前記受信側データバッファ部とに揃って記憶されたときに、前記受信側符号バッファ部から当該符号語の誤り検出訂正符号を読み出し、該読み出した誤り検出訂正符号を用いて、前記受信側データバッファ部に記憶されている当該誤り検出訂正符号の訂正範囲となるビット列の誤り訂正を行う
    ことを特徴とする信号送受信方法。
JP2011200790A 2011-09-14 2011-09-14 信号送受信回路 Pending JP2013062737A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011200790A JP2013062737A (ja) 2011-09-14 2011-09-14 信号送受信回路
US13/599,490 US8943389B2 (en) 2011-09-14 2012-08-30 Signal transmission/reception circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011200790A JP2013062737A (ja) 2011-09-14 2011-09-14 信号送受信回路

Publications (1)

Publication Number Publication Date
JP2013062737A true JP2013062737A (ja) 2013-04-04

Family

ID=47830955

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011200790A Pending JP2013062737A (ja) 2011-09-14 2011-09-14 信号送受信回路

Country Status (2)

Country Link
US (1) US8943389B2 (ja)
JP (1) JP2013062737A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9213595B2 (en) 2013-10-15 2015-12-15 International Business Machines Corporation Handling errors in ternary content addressable memories
KR102471531B1 (ko) * 2017-12-21 2022-11-28 에스케이하이닉스 주식회사 저속 동작 환경에서 고속 테스트를 수행할 수 있는 반도체 장치 및 시스템

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4435807A (en) * 1980-06-26 1984-03-06 Scott Edward W Orchard error correction system
JPS6350221A (ja) * 1986-08-20 1988-03-03 Fujitsu Ltd 無線通信システム
JPH10294720A (ja) * 1997-04-21 1998-11-04 Oki Electric Ind Co Ltd 信号伝送回路及び信号伝送方法
JP2002064506A (ja) * 2000-08-17 2002-02-28 Ricoh Co Ltd データ転送方式
JP2002271425A (ja) * 2001-03-09 2002-09-20 Oki Electric Ind Co Ltd 信号伝送方法
WO2005048520A1 (ja) * 2003-11-14 2005-05-26 Hitachi, Ltd. データ伝送方法及びデータ伝送装置
WO2007097040A1 (ja) * 2006-02-27 2007-08-30 Fujitsu Limited 情報処理装置の制御方法、情報処理装置
JP2009141453A (ja) * 2007-12-04 2009-06-25 Fuji Xerox Co Ltd データ伝送装置、データ送信装置、データ受信装置及びデータ伝送システム
JP2010183196A (ja) * 2009-02-03 2010-08-19 Fujitsu Ltd データ転送システム、データ送信装置、データ受信装置及びデータ転送方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5736410A (en) * 1980-08-14 1982-02-27 Sony Corp Error correcting method for multitrack recording
US4646312A (en) 1984-12-13 1987-02-24 Ncr Corporation Error detection and correction system
JPH05219488A (ja) 1992-01-31 1993-08-27 Matsushita Electric Ind Co Ltd 映像信号送信装置及び映像信号受信装置
KR100937060B1 (ko) * 2004-06-14 2010-01-15 닛본 덴끼 가부시끼가이샤 쌍방향 통신 방법과 장치, 시스템 및 프로그램을 기억한 기억 매체
US7739580B1 (en) * 2005-02-17 2010-06-15 Kencast, Inc. System, method and apparatus for reducing blockage losses on information distribution networks

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4435807A (en) * 1980-06-26 1984-03-06 Scott Edward W Orchard error correction system
JPS6350221A (ja) * 1986-08-20 1988-03-03 Fujitsu Ltd 無線通信システム
JPH10294720A (ja) * 1997-04-21 1998-11-04 Oki Electric Ind Co Ltd 信号伝送回路及び信号伝送方法
JP2002064506A (ja) * 2000-08-17 2002-02-28 Ricoh Co Ltd データ転送方式
JP2002271425A (ja) * 2001-03-09 2002-09-20 Oki Electric Ind Co Ltd 信号伝送方法
WO2005048520A1 (ja) * 2003-11-14 2005-05-26 Hitachi, Ltd. データ伝送方法及びデータ伝送装置
WO2007097040A1 (ja) * 2006-02-27 2007-08-30 Fujitsu Limited 情報処理装置の制御方法、情報処理装置
JP2009141453A (ja) * 2007-12-04 2009-06-25 Fuji Xerox Co Ltd データ伝送装置、データ送信装置、データ受信装置及びデータ伝送システム
JP2010183196A (ja) * 2009-02-03 2010-08-19 Fujitsu Ltd データ転送システム、データ送信装置、データ受信装置及びデータ転送方法

Also Published As

Publication number Publication date
US20130067296A1 (en) 2013-03-14
US8943389B2 (en) 2015-01-27

Similar Documents

Publication Publication Date Title
JP4382124B2 (ja) 誤り訂正符号化装置及び誤り訂正復号装置
US7103830B1 (en) DC balanced error correction coding
US8499219B2 (en) Encoding methods and systems for binary product codes
CN101667887A (zh) 编码方法及其装置、解码方法及其装置
US8977933B2 (en) Method for providing data protection for data stored within a memory element and integrated circuit device therefor
US7966544B2 (en) Loading the input memory of an LDPC decoder with data for decoding
US8667377B1 (en) Circuit and method for parallel decoding
JP2013062737A (ja) 信号送受信回路
US20080229170A1 (en) Parallel arrangement of serial concatenated convolutional code decoders with optimized organization of data for efficient use of memory resources
WO2020183525A1 (ja) 符号化装置、復号装置、及び誤り訂正装置
US20130064252A1 (en) Signal transmission/reception circuit
KR100499467B1 (ko) 블록 인터리빙 방법 및 그를 위한 장치
US9866219B2 (en) Device for logic operation
EP4120572A1 (en) Coding method and apparatus for data communication
US8875001B1 (en) Circuitry for parallel decoding of data blocks
JP5810670B2 (ja) 誤り訂正処理回路および誤り訂正処理方法
US9413491B1 (en) System and method for multiple dimension decoding and encoding a message
JP2013070289A (ja) 誤り訂正方法、誤り訂正装置、送信機、受信機及び誤り訂正プログラム
TW201332316A (zh) 增壓碼
KR100243468B1 (ko) 듀얼 포트 메모리를 이용한 길쌈 인터리버 /디인터리버
KR20080022630A (ko) 에러 교정 기능을 갖는 반도체 메모리 장치에서의 데이터경로
Liu et al. 10Gb/s orthogonally concatenated BCH encoder for fiber communications
KR0183171B1 (ko) 인터리버 및 디인터리버와 그 방법
JP2007110258A (ja) 誤り検査装置およびそれを用いた再生装置
Pathak et al. Hardware Architecture and FPGA Implementation of Low Latency Turbo Encoder for Deep-Space Communication Systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140806

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150217

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150630