JP2005086683A - 誤り復号回路、データバス制御方法、及びデータバスシステム - Google Patents

誤り復号回路、データバス制御方法、及びデータバスシステム Download PDF

Info

Publication number
JP2005086683A
JP2005086683A JP2003318705A JP2003318705A JP2005086683A JP 2005086683 A JP2005086683 A JP 2005086683A JP 2003318705 A JP2003318705 A JP 2003318705A JP 2003318705 A JP2003318705 A JP 2003318705A JP 2005086683 A JP2005086683 A JP 2005086683A
Authority
JP
Japan
Prior art keywords
error
bus
data
cycle
circuit
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
JP2003318705A
Other languages
English (en)
Inventor
Yasuharu Aizawa
安晴 相澤
Kazunari Aoyama
一成 青山
Kunitaka Komaki
邦孝 小槇
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP2003318705A priority Critical patent/JP2005086683A/ja
Priority to EP04255401A priority patent/EP1515235A1/en
Priority to US10/934,352 priority patent/US20050066258A1/en
Priority to CN200410073771.XA priority patent/CN1595812A/zh
Publication of JP2005086683A publication Critical patent/JP2005086683A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • 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/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1575Direct decoding, e.g. by a direct determination of the error locator polynomial from syndromes and subsequent analysis or by matrix operations involving syndromes, e.g. for codes with a small minimum Hamming distance
    • 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/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

【課題】 誤り復号回路、データバスの制御方法、及びデータバスシステムにおいて、データバスの動作を高速化すること。
【解決手段】 誤り復号回路1は、受信データの誤り訂正処理を含む誤り復号回路において、受信データについてシンドロームを算出するシンドローム算出回路1aと、シンドロームに基づいて誤りを検出する誤り検出回路1b、シンドロームに基づいて誤り位置を算出する誤りパターン算出回路1cと、誤りパターンに基づいて受信信号の誤り訂正を行う反転回路1dとを備えた構成とし、誤り検出回路1bの検出結果に基づいて、受信信号に誤りがある場合にバスマスタ2に対してバスサイクルの延長要求信号を出力する。受信データに誤りがなければ入力したデータを訂正せずにデータバスに出力し、誤りがあり、誤り復号回路において訂正を行う場合のみバスサイクルを延長させることにより、データバスを高速動作させる。
【選択図】 図1

Description

本発明は、受信データを誤り訂正処理して訂正データを取得するデータ処理に関わり、受信データを復号する誤り復号回路、当該誤り復号回路が接続されたデータバスを接続する制御方法、及び当該データバスを含むシステムに関する。
データ中の誤りを訂正する方法として、誤り訂正符号を用いる方法が知られている。ここで、誤り訂正符号を用いた誤り訂正の概略について、図6を用いて説明する。
図6において、入力データは符号化回路10により符号化される。符号化回路10は、例えば後述するパリティ検査マトリックスに基づいて検査ビットを形成し、この検査ビットを入力データに付加して送信データを作成する。
送信データは伝送路11に送られ、伝送路11は通信先に受信信号を伝達する。通信先では、受信した受信データを誤り復号回路12で解読して出力データを生成する。
一般に、伝送路11には誤動作や外部ノイズ等に外乱要因があり、受信データは誤りを含むおそれがある。誤り復号回路12は、この誤りを訂正する機能を備える。なお、伝送路は通常の通信路に限らず、メモリシステムにおけるメモリ素子に適用することができ、送信データはメモリ素子への書き込み情報に適用させ、受信データはメモリ素子からの読み出し情報に適用させることもできる。
検査ビットが付加されて符号化された送信データは一般にnビットの2進数で表すことができ、この送信データはrビットの検査ビットを含むD=(d,d,…dn−1)により表すことができる。符号化は、0と1の2進数を要素とするr行n列のパリティ検査マトリックス(以下、Hマトリックスという)で表すことができ、誤りを含まない送信データDとHマトリックスとの間には次の関係が成り立つ。つまり、送信データDの検査ビットは、次の関係が成り立つように定められる。
D・HT=0 (1)
なお、ここで、HTはHの行と列を入れ換えた転置行列である。
式(1)の計算結果はシンドロームSと呼ばれ、rビットからなるベクトルで表される。このシンドロームSが、S=0であれば誤り無しと判定し、S≠0であれば誤り有りと判定する。また、このシンドロームSのパターンをHマトリックスに基づいて解析することにより誤りの位置と大きさを求めることができ、誤りを含むデータを訂正することができる。
伝送中において誤りが発生しなければ、受信データは送信データと同じになる。したがって、送信データDは上記式(1)を満足するように形成されているから、受信データに誤りがない場合には、上記式(1)の左辺中のDを受信データとすることにより得られる計算結果は0(rビットの零ベクトル)となる。一方、誤りが発生した場合には、上記式(1)の左辺中のDを受信データとして得られる計算結果は0ではなくなる。この計算結果のパターンのrビットのベクトルをHマトリックスに基づいて解析することにより、受信データの誤りの位置と大きさを求めることができ、受信データを訂正することができる。
一般に、誤り復号回路の誤り検出や誤り訂正の精度を上げると、回路の規模も大きくなる。上記した誤り復号回路を使用する場合には、受信データ中の誤りの有無に関わらず、誤り復号回路には全ての受信データが通されることになる。そのため、高い精度誤りの検出や誤り訂正が求められる場合には、誤り訂正を行う必要がない受信データについても大きな規模の回路を通さなければならず、高速動作が困難となるという問題がある。
図7は従来の誤り復号回路のデータ処理サイクルを説明するための図である。図7に示すように、従来の誤り復号回路は、受信データに誤りが含まれるか否かに関わらず、各誤り復号の処理を同一のサイクルTを単位として行うよう設定している。図7中に示すサイクル1からサイクル3において、サイクル1,3で処理される受信データは誤りを含まず、サイクル2で処理される受信データは誤りを含むものとしている。
サイクル時間は、長い処理時間を要する誤り訂正の処理に合わせて設定されているため、誤り訂正を行わず単に復号化するだけの処理では、設定されたサイクル時間内の早い時期に処理が完了することになる。したがって、この誤り復号回路の処理速度は、誤り訂正を行うサイクル時間によって定まることになる。
このような誤り復号回路が持つ問題を解決して高速動作を行う技術としてCRC符号を用いた方法が提案されている(特許文献1参照)。
この方法は、データ分析にCRC符号を付加し、CRC符号を含むデータ部に対して誤り符号(ECC)を設ける方法であり、誤り符号を除いたデータ部でCRCチェックを行い、データに誤りがある場合には誤り訂正回路で誤り訂正した訂正データは用い、データに誤りがない場合には訂正回路を通さない受信データを用いることにより、高速化を図ろうとするものである。
図8はこの従来の高速動作のための一構成例を説明するための概略図である。図8において、受信データは、データD〜Dと、CRC符号CRC〜CRCと、誤り符号ECC〜ECCとを含む。受信データは2つの系統で処理され、一方は誤り訂正回路12aで誤り訂正された後CRCチェック回路12bで誤り検出され訂正データとして出力され、他方はスイッチ12cを介して得られたデータD〜D及びCRC符号CRC〜CRCが訂正処理することなくバッファメモリ12dに一次的に記憶される。
前記2つの系統で得られた訂正データと無訂正データは、選択回路12eで選択されて出力データとして出力される。この選択回路12eによる選択は、別に用意したCRCチェック回路12fで得られた選択信号により行われ、誤りがある場合には誤り訂正回路12aで誤り訂正された訂正データが選択され、誤りがない場合にはバッファ12dに記憶しておいた無訂正データを選択する。
図9は、上記の高速動作の構成例において、受信データに誤りがない場合とある場合のサイクル例を示す図である。
受信データに誤りがある場合(サイクルB)には、受信データ(図9(a))は、CRCチェックの結果に基づいて(図9(d))、誤り訂正回路による訂正処理で得られる訂正データ(図9(c))を選択するため(図9(e))、サイクル時間は “T2”となる。
一方、受信データに誤りがない場合(サイクルA)には、受信データ(図9(a))は、CRCチェックの結果に基づいて(図9(d))、誤り訂正回路による訂正処理を行わない(図9(b))か、あるいは誤り訂正回路で得られる訂正データを選択せず、無訂正のデータ(図9(c))を選択するため(図9(e))、サイクル時間は受信データを訂正する時間分だけ短い“T1”となる。
特開平5−218883号公報
上記したCRCチェック回路を用いた構成は、各誤り復号回路においてサイクル時間を短縮するには有効であるが、これらの誤り復号回路を含む装置が接続されるデータバスシステムのバスサイクルを高速化することはできない。これは、データバスシステムでは、共通のバスに接続される複数のバススレーブをバスマスタにより制御管理している。バスマスタはデータバスシステムに設定されたバスサイクルに従って制御管理を行っている。このバスサイクルは、各バススレーブが備える誤り復号回路のサイクルを、データの誤り状況に応じて切り換えたとしても、バススレーブのバスサイクルの内で最も長いものに合わせる必要があり、バスマスタはデータバスシステム全体に対して設定したバスサイクルに基づいて動作しているため、データバスシステムの高速動作には結びつかないという問題がある。
図10は、従来のCRCチェック回路を用いた構成をデータバスシステムに適用した場合のバスサイクルを説明するための図である。受信データに誤りがない場合には、図9に示したようにサイクル時間はT1となり短くすることができるが、受信データに誤りがある場合には、図9に示したようにサイクル時間はT2となって長くなるため、データバスシステムは同一のサイクル時間で処理するには、長いサイクル時間T2を用いる必要がある。
また、従来のCRCチェック回路を用いた構成では、CRC符号を使用するため、誤り訂正後のデータに対して別途CRCチェックを行う必要があるため、受信データ中の誤りを検出するためのCRCチェック回路(図8中のCRCチェック回路12f)に加えて、訂正後のデータ用のCRCチェック回路(図8中のCRCチェック回路12b)が必要となり、CRCチェック回路を二重に要するという問題がある。
また、CRC符号に対しても誤り訂正符号が必要であるため、誤り訂正回路の規模も大きくなるという問題の他に、処理時間も長くなるという問題もある。
そこで、本発明は、上記した従来の課題を解決して、誤り復号回路、データバスの制御方法、及びデータバスシステムにおいて、データバスの動作を高速化することを目的とする。
本発明は、受信データに誤りがなければ入力したデータを訂正せずにデータバスに出力し、誤りがあり、誤り復号回路において訂正を行う場合のみバスサイクルを延長させることにより、データバスを高速動作させる。
本発明は、誤り復号回路の態様と、データバスの制御方法の態様と、このデータバスシステムの態様の各態様を含む。
本発明の誤り復号回路は、受信データの誤り訂正処理を含む誤り復号回路において、受信データについてシンドロームを算出するシンドローム算出回路と、シンドロームに基づいて誤りを検出する誤り検出回路と、シンドロームに基づいて誤り位置を算出する誤りパターン算出回路と、誤りパターンに基づいて受信信号の誤り訂正を行う反転回路とを備えた構成とし、誤り検出回路の検出結果に基づいて、受信信号に誤りがある場合にバスマスタに対してバスサイクルの延長要求信号を出力する。
受信信号に誤りがある場合にバスマスタに対してバスサイクルの延長要求信号を出力することにより、バスマスタは通常は短いバスサイクルで処理を行い、誤り復号回路で誤り訂正を行う場合のみ延長要求信号に基づいてバスサイクルを延長する。一般に、データに誤りが発生する頻度は低く、訂正を行わないサイクルが主である。そこで、本発明によれば、訂正を行わないサイクルの短いバスサイクルを通常のバスサイクルとして設定し、誤り訂正を行う場合のみにバスサイクルを延長することにより、ほとんどの場合を短いバスサイクルで処理を行う。これにより、データバスサイクルを高速化する。
誤り検出回路は、受信信号に誤りがある場合には、誤りパターン算出回路を駆動させると共にバスサイクルの延長要求信号を出力し、受信信号に誤りがない場合には、反転回路に入力した受信データをそのまま出力させる。誤り検出回路はシンドロームに基づいて誤りを検出することにより、従来のようなCRC回路の付加を不要とすることができる。
誤り復号回路において、反転回路は誤りパターンに基づいて受信信号を反転して誤り訂正を行う。誤り訂正を行わない場合には、反転回路は入力したデータをそのまま通過させるため、反転回路のみで誤り訂正を行う場合と誤り訂正を行わない場合の処理を行うことができる。
本発明のデータバスの制御方法の態様は、バスマスタと少なくとも1つのバススレーブとをバスを介して接続してなるデータバスをバスサイクルに従って制御する制御方法において、バスサイクルをバススレーブにおける受信信号の誤り検出の検出結果に基づいて変更する。
バススレーブは、受信信号の誤り検出を行い、この誤り検出の検出結果に基づいてバスサイクルのサイクル時間を延長する要求信号を出力し、バスマスタは延長要求信号に基づいてバスサイクルを延長し、延長したサイクル時間によりバス中のデータ制御を行う。
また、バススレーブは受信信号に誤りを検出する毎に延長要求信号を出力し、バスマスタは延長要求信号の出力毎に1バスサイクルのみ延長する。バスマスタは1つの延長要求信号につき1バスサイクルのみ延長を行い、この1バスサイクルの延長が完了した後は元のバスサイクルで処理を行う。
本発明のデータバスシステムは、バスマスタと少なくとも1つのバススレーブとをバスを介して接続してなるデータバスシステムにおいて、バススレーブは受信信号の誤り検出時にバスサイクルの延長要求信号を送信する。
バススレーブは、受信信号の誤りを検出し、当該誤り検出の検出結果に基づいてバスサイクルのサイクル時間を延長する要求信号を出力する誤り検出手段を備え、バスマスタは、延長要求信号に基づいてバスサイクルを延長し、当該延長したサイクル時間によりバス中のデータを制御する制御手段を備える。
バスマスタと少なくとも1つのバススレーブとをバスを介して接続してなるデータバスシステムにおいて、バススレーブは、受信データについてシンドロームを算出するシンドローム算出回路と、シンドロームに基づいて誤りを検出する誤り検出回路と、シンドロームに基づいて誤り位置を算出する誤りパターン算出回路と、誤りパターンに基づいて受信信号の誤り訂正を行う反転回路とを具備した誤り復号回路を備え、誤り復号回路は、誤り検出回路の検出結果に基づいて、受信信号に誤りがある場合にバスマスタに対してバスサイクルの延長要求信号を出力する。
本発明の誤り復号回路、データバスの制御方法、及びデータバスシステムは、受信データに誤りがなければ入力したデータを訂正せずにデータバスに出力し、誤りがあり、誤り復号回路において訂正を行う場合のみバスサイクルを延長させることにより、データバスを高速動作させることができる。
本発明によれば、データバスの動作を高速化することができる。
本発明の誤り復号回路によれば、データに誤りがある場合のみ誤り訂正を行うと共に、サイクル延長要求をバスマスタに出力することにより、誤り復号回路の処理を高速化すると共に、データバスサイクルを高速化することができる。また、データバスサイクルの高速化のための誤り復号回路の構成を簡易なものとすることができる。
本発明のデータバス制御方法、及びデータバスシステムによれば、バスマスタは、バススレーブからのサイクル延長要求に基づいてデータバスサイクルを切り換えることにより、データバスサイクルを高速化することができる。
以下、本発明の実施の形態について、図を参照しながら詳細に説明する。
図1は、本発明の誤り復号回路の概要を説明するための図である。図1に示す誤り復号回路1は、受信データを入力してそのシンドロームを算出するシンドローム算出回路1aと、算出したシンドロームに基づいて誤りを検出する誤り検出回路1bと、誤りを検出した場合にシンドロームに基づいて誤り位置を算出する誤りパターン算出回路1cと、算出した誤りパターンに基づいて受信信号の誤り訂正を行う反転回路1dとを備える。
誤り検出回路1bは、検出結果に基づいて受信信号に誤りがある場合に、バスマスタ2に対してバスサイクルの延長要求信号を出力する。
なお、受信データは、入力データに対して図示しない符号化回路によって検査ビットが付加され、伝送路を介して受信されるデータである。伝送路は、通常の通信路に限らず、メモリシステムにおけるメモリ素子に適用することができ、送信データはメモリ素子への書き込み情報に適用させ、受信データはメモリ素子からの読み出し情報に適用させることもできる。
ここで、検査ビットが付加されて符号化された送信データは、前記したように、一般にnビットの2進数で表すことができ、この送信データはrビットの検査ビットを含むD=(d,d,…dn−1)により表すことができる。
符号化は、前記したように、0と1の2進数を要素とするr行n列のパリティ検査マトリックス(以下、Hマトリックスという)で表すことができ、送信データDとするとき検査マトリックスHのビットは、式(1)の関係が成り立つように定められる。したがって、誤りを含まない送信データDとHマトリックスとの間には前記式(1)の関係が成り立つ。
シンドローム算出回路1aは、式(1)の演算を行ってシンドロームSの計算結果を得る。このシンドロームSはrビットからなるベクトルで表される。
誤り検出回路1bは、算出したシンドロームSが、S=0であれば誤り無しと判定し、S≠0であれば誤り有りと判定する。また、誤りパターン算出回路1cは、シンドロームSのパターンをHマトリックスに基づいて解析する。得られる誤りパターンは、送信データに含まれる誤りの位置と大きさを求めることができ、誤りを含むデータを訂正することができる。
シンドローム算出回路1aは、送信データDについて、その送信データDの形成に用いた検査マトリックスHを用いて式(1)の演算を行う。ここで、伝送中において誤りが発生しなければ、受信データは送信データと同じになるため、式(1)の左辺中のDを受信データとすることにより得られる計算結果は0(rビットの零ベクトル)となる。
一方、誤りが発生した場合には、式(1)の左辺中のDを受信データとして得られる計算結果は0ではなくなる。
この計算結果のパターンのrビットのベクトルをHマトリックスに基づいて解析することにより、受信データの誤りの位置と大きさを求めることができ、受信データを訂正することができる。
反転回路1dは、誤りパターン算出回路1cで算出した誤りパターンと受信データとの排他的論路和をとることにより受信データの訂正を行う。なお、誤りがない場合には、反転回路1は、入力した受信データを反転することなくそのまま出力する。
また、本発明の誤り検出回路1bは、シンドロームSに基づいて受信データの誤り検出を行うと共に、誤りを検出して誤り復号回路1で誤り訂正を行う場合には、バスマスタ2に対してサイクル延長要求を出力する。
サイクル延長要求は、バスマスタに対してバスサイクルのサイクル時間の延長を要求するものである。バスマスタは、このサイクル延長要求を受けると、データバスサイクルのサイクル時間を延長し、延長したサイクル時間に基づいてデータ処理を行う。
図2は、本発明の誤り復号回路の処理の手順を説明するためのフローチャートである。なお、図2中に示すS番号は、以下の(ステップS)と一致して示している。
図2において、シンドローム算出回路1aは受信データを取り込み(ステップS1)、シンドロームSを算出する(ステップS2)。誤り検出回路1bは、算出したシンドロームSが0(零ベクトル)であるか否かに基づいて、誤りの有無を判定する(ステップS3)。
誤り検出回路1bは、シンドロームSが0(零ベクトル)でない場合には誤り有りと判定し(ステップS3)、バスマスタ2に対してサイクル延長を要求し(ステップS4)、誤りパターン算出回路1cに誤りパターンを算出させる(ステップS5)。
反転回路1dは、誤りパターン算出回路1cから得た誤りパターンと、入力した受信データとの排他的論路和を求め、誤りを含む受信データを誤り訂正し(ステップS6)、訂正データを出力する(ステップS7)。
一方、誤り検出回路1bは、シンドロームSが0(零ベクトル)の場合には誤り無しと判定し(ステップS3)、反転回路1dにおいて入力した受信データを反転することなく、そのままの受信データをバスに出力する(ステップS8)。したがって、誤り無しの場合には、誤りパターン算出回路1cでは誤りパターンの算出処理は行わない。また、誤り無しの場合には、誤り検出回路1bは、バスマスタ2に対してサイクル延長の要求を行わない。
ステップS1〜ステップS8の工程は各バスサイクル毎に行い、次のバスサイクル時には、延長したバスサイクルのサイクル時間を設定された値に戻し、前記ステップS1〜ステップS8の工程を繰り返す(ステップS9)。
図3は、本発明によるデータバスサイクルのサイクル時間の延長処理を説明するための図であり、受信データに誤りがない場合とある場合のサイクル例を示す図である。なお、図3では、サイクル1,3,4は受信データに誤りがないサイクル例を示し、サイクル2は受信データに誤りがあるサイクル例を示している。
受信データに誤りがない場合(サイクル1,3,4)には、受信データ(図3(a))は、設定されたサイクル時間T1のバスサイクル内で処理され、誤り復号回路によりシンドローム算出と誤り検出が実行され、出力データ(図3(d))がバスに出力される。
一方、受信データに誤りがある場合(サイクル2)には、受信データ(図3(a))は、当初は設定されたサイクル時間T1のバスサイクル内での処理が行われるが、誤り復号回路によるシンドローム算出と誤り検出によって誤りが検出されると、バスマスタに対してサイクル延長要求を出す。バスマスタはこのサイクル延長要求を受けて、サイクル時間をT2に延長する(図3(e))。誤り復号回路は、延長されたサイクル時間内において、誤り検出に続いて誤りパターン算出処理と反転処理を行って、誤りを訂正した訂正データをバスに出力する。
延長されたバスサイクルが終了すると、バスマスタは再び設定されたサイクル時間T1に戻し、サイクル3の処理を続ける。
図4は、データバスシステムの構成を説明するための概略図である。データバスシステム5は、バス4を介してバスマスタ2及びバススレーブ3が接続されてなる。
なお、バススレーブ3は複数とすることができ、各バススレーブ3A,3Bは、受信したデータを復号する誤り復号回路1A,1Bを備える。バスマスタ2は、バス4上の複数のバススレーブ3(3A,3B)を制御管理する。バスマスタ2は、バス4上のバススレーブ3のデータ処理を、所定のサイクル時間に設定されたバスサイクルに従って行う。このバスサイクルは、例えば、各バススレーブが誤りのないデータについて処理を行うに要する時間に基づいて設定することができる。
バスマスタ2は、通常、受信データに誤りが含まれない処理時間を基準としてバスサイクルを設定することでデータ処理を高速化する。
バススレーブ3A,3Bの何れかにおいて受信データに誤りがある場合には、誤り復号回路はこの誤りを訂正する処理(誤りパターン算出処理、反転処理)を行う。この誤り訂正を行うバススレーブは、誤り検出時にバスマスタ2に対してサイクル延長要求を出し、誤りパターン算出処理や反転処理等の誤り訂正処理が次のサイクルの影響を与えないように、サイクル時間を延長する。延長したバスサイクルが終了した後は、バスマスタ2は延長したサイクル時間を元の設定したサイクル時間に戻す。
図5は、本発明のバスマスタ側の処理の手順を説明するためのフローチャートである。なお、図5中に示すS番号は、以下の(ステップS)と一致して示している。
バスマスタ2は、バススレーブ3から出されるサイクル延長要求を監視し(ステップS11)、サイクル延長要求が出された場合にはサイクル時間を延長し(ステップS12)、サイクル延長要求が出されていない場合にはサイクル時間は設定されたままとする(ステップS13)。
バスマスタは、延長されたサイクルあるいは設定状態のサイクルに従って、各バススレーブ3から送出されたデータを処理する(ステップS14)。1つのサイクルでの処理が完了した後、次のサイクルにおいて(ステップS15)、サイクルが延長されている場合には元の設定サイクルに戻し(ステップS16)、前記ステップS11〜ステップS15を繰り返す。
本発明の技術は、誤り自動訂正して高い信頼性が求められる装置やシステムに適用することができ、例えば、温度、振動、ノイズ等による作業環境の劣悪な状況の下において、正常動作が求められる産業用装置やシステム、あるいは医療、航空宇宙、公共システムなどの高い信頼性が要求される装置やシステムに適用することができる。
本発明の誤り復号回路の概要を説明するための図である。 本発明の誤り復号回路の処理の手順を説明するためのフローチャートである。 本発明によるデータバスサイクルのサイクル時間の延長処理を説明するための図である。 データバスシステムの構成を説明するための概略図である。 本発明のバスマスタ側の処理の手順を説明するためのフローチャートである。 誤り訂正符号を用いた誤り訂正の概略を説明するための図である。 従来の誤り復号回路のデータ処理サイクルを説明するための図である。 従来の高速動作のための一構成例を説明するための概略図である。 従来の高速動作の構成例において、受信データに誤りがない場合とある場合のサイクル例を示す図である。 従来のCRCチェック回路を用いた構成をデータバスシステムに適用した場合のバスサイクルを説明するための図である。
符号の説明
1 誤り復号回路
1a シンドローム算出回路
1b 誤り検出回路
1c 誤りパターン算出回路
1d 反転回路
2 バスマスタ
3 バススレーブ
4 バス
5 データバスシステム
10 符号化回路
11 伝送路
12 誤り復号回路
12a 誤り訂正回路
12b CRCチェック回路
12c スイッチ
12d バッファメモリ
12e 選択回路
12f CRCチェック回路

Claims (9)

  1. 受信データの誤り訂正処理を含む誤り復号回路において、
    受信データについてシンドロームを算出するシンドローム算出回路と、
    前記シンドロームに基づいて誤りを検出する誤り検出回路と、
    前記シンドロームに基づいて誤り位置を算出する誤りパターン算出回路と、
    前記誤りパターンに基づいて受信信号の誤り訂正を行う反転回路とを備え、
    前記誤り検出回路の検出結果に基づいて、受信信号に誤りがある場合にバスマスタに対してバスサイクルの延長要求信号を出力することを特徴とする誤り復号回路。
  2. 前記反転回路は、前記誤りパターンに基づいて受信信号を反転して誤り訂正を行うことを特徴とする、請求項1に記載の誤り復号回路。
  3. 前記誤り検出回路は、
    受信信号に誤りがある場合には、誤りパターン算出回路を駆動させると共にバスサイクルの延長要求信号を出力し、
    受信信号に誤りがない場合には、反転回路に入力した受信データをそのまま出力させることを特徴とする、請求項1に記載の誤り復号回路。
  4. バスマスタと少なくとも1つのバススレーブとをバスを介して接続してなるデータバスをバスサイクルに従って制御する制御方法において、
    前記バスサイクルを前記バススレーブにおける受信信号の誤り検出の検出結果に基づいて変更することを特徴とする、データバス制御方法。
  5. 前記バススレーブは、受信信号の誤り検出を行い、当該誤り検出の検出結果に基づいてバスサイクルのサイクル時間を延長する要求信号を出力し、
    前記バスマスタは前記延長要求信号に基づいてバスサイクルを延長し、当該延長したサイクル時間によりバス中のデータ制御を行うことを特徴とする、請求項4に記載のデータバス制御方法。
  6. 前記バススレーブは、受信信号に誤りを検出する毎に延長要求信号を出力し、
    前記バスマスタは、前記延長要求信号の出力毎に1バスサイクルのみ延長することを特徴とする、請求項4又は5に記載のデータバス制御方法。
  7. バスマスタと少なくとも1つのバススレーブとをバスを介して接続してなるデータバスシステムにおいて、
    前記バススレーブは、受信信号の誤り検出時にバスサイクルの延長要求信号を送信することを特徴とする、データバスシステム。
  8. 前記バススレーブは、受信信号の誤りを検出し、当該誤り検出の検出結果に基づいてバスサイクルのサイクル時間を延長する要求信号を出力する誤り検出手段を備え、
    前記バスマスタは、前記延長要求信号に基づいてバスサイクルを延長し、当該延長したサイクル時間によりバス中のデータを制御する制御手段を備えること特徴とする、請求項7に記載のデータバスシステム。
  9. バスマスタと少なくとも1つのバススレーブとをバスを介して接続してなるデータバスシステムにおいて、
    前記バススレーブは、前記請求項1記載の誤り復号回路を備えることを特徴とする、データバスシステム。
JP2003318705A 2003-09-10 2003-09-10 誤り復号回路、データバス制御方法、及びデータバスシステム Pending JP2005086683A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2003318705A JP2005086683A (ja) 2003-09-10 2003-09-10 誤り復号回路、データバス制御方法、及びデータバスシステム
EP04255401A EP1515235A1 (en) 2003-09-10 2004-09-07 Error decoding circuit, data bus control method and data bus system
US10/934,352 US20050066258A1 (en) 2003-09-10 2004-09-07 Error decoding circuit, data bus control method and data bus system
CN200410073771.XA CN1595812A (zh) 2003-09-10 2004-09-09 纠错译码电路、数据总线控制方法以及数据总线系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003318705A JP2005086683A (ja) 2003-09-10 2003-09-10 誤り復号回路、データバス制御方法、及びデータバスシステム

Publications (1)

Publication Number Publication Date
JP2005086683A true JP2005086683A (ja) 2005-03-31

Family

ID=34132005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003318705A Pending JP2005086683A (ja) 2003-09-10 2003-09-10 誤り復号回路、データバス制御方法、及びデータバスシステム

Country Status (4)

Country Link
US (1) US20050066258A1 (ja)
EP (1) EP1515235A1 (ja)
JP (1) JP2005086683A (ja)
CN (1) CN1595812A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005088681A (ja) * 2003-09-16 2005-04-07 Toyoda Gosei Co Ltd 助手席用エアバッグ装置
JP2005088686A (ja) * 2003-09-16 2005-04-07 Toyoda Gosei Co Ltd 助手席用エアバッグ装置
JP2007241625A (ja) * 2006-03-08 2007-09-20 Renesas Technology Corp 半導体装置
KR100881192B1 (ko) 2006-11-14 2009-02-05 삼성전자주식회사 에러 패턴 검출 방법, 에러 정정 장치, 및 데이터 부호화 방법
JP2009277174A (ja) * 2008-05-19 2009-11-26 Toshiba Corp バス信号制御回路、及び、バス信号制御回路を備えた信号処理回路

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7996731B2 (en) 2005-11-02 2011-08-09 Advanced Micro Devices, Inc. Error detection in high-speed asymmetric interfaces
JP5317392B2 (ja) * 2006-04-06 2013-10-16 三菱電機株式会社 デコード回路および表示装置
EP1901489B1 (en) * 2006-09-13 2014-11-05 Yamaha Corporation Network system and audio signal processor
CN102075290B (zh) * 2010-12-23 2013-04-24 西北工业大学 一种航空总线数据的编码解码方法
WO2013027483A1 (ja) * 2011-08-24 2013-02-28 三菱電機株式会社 誤り訂正復号装置
JP7018089B2 (ja) * 2020-04-02 2022-02-09 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置および読出し方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0601715A1 (en) * 1992-12-11 1994-06-15 National Semiconductor Corporation Bus of CPU core optimized for accessing on-chip memory devices
US5629949A (en) * 1993-09-21 1997-05-13 Cirrus Logic, Inc. Error correction verification method and apparatus using CRC check remainders
US5517508A (en) * 1994-01-26 1996-05-14 Sony Corporation Method and apparatus for detection and error correction of packetized digital data

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005088681A (ja) * 2003-09-16 2005-04-07 Toyoda Gosei Co Ltd 助手席用エアバッグ装置
JP2005088686A (ja) * 2003-09-16 2005-04-07 Toyoda Gosei Co Ltd 助手席用エアバッグ装置
JP2007241625A (ja) * 2006-03-08 2007-09-20 Renesas Technology Corp 半導体装置
KR100881192B1 (ko) 2006-11-14 2009-02-05 삼성전자주식회사 에러 패턴 검출 방법, 에러 정정 장치, 및 데이터 부호화 방법
JP2009277174A (ja) * 2008-05-19 2009-11-26 Toshiba Corp バス信号制御回路、及び、バス信号制御回路を備えた信号処理回路

Also Published As

Publication number Publication date
CN1595812A (zh) 2005-03-16
US20050066258A1 (en) 2005-03-24
EP1515235A1 (en) 2005-03-16

Similar Documents

Publication Publication Date Title
KR20090018252A (ko) 처리량을 높이기 위하여 더블 버퍼링 구조와 파이프라이닝기법을 이용하는 디코더 및 그 디코딩 방법
US8527834B2 (en) Information processing device and information processing method
EP1267494A2 (en) Burst error pattern generation method, and burst and byte error detection and correction apparatus
JP2005086683A (ja) 誤り復号回路、データバス制御方法、及びデータバスシステム
US20130124941A1 (en) Cyclic redundancy check code generating circuit, semiconductor memory device, amd method of driving semiconductor memory device
US8347169B1 (en) System and method for encoding using common partial parity products
JP6875661B2 (ja) 誤り検出用冗長ビットの生成方法および装置
JP3248098B2 (ja) シンドローム計算装置
JP5248300B2 (ja) 誤り訂正復号装置および誤り訂正復号方法
JP3029738B2 (ja) 複数ブロック化伝送フレームの誤り検出方法
JP4563834B2 (ja) データ通信システム
JP3071482B2 (ja) パケット受信機の誤り訂正回路
JP4829376B2 (ja) 情報処理装置および情報処理方法
JP2009117883A (ja) 演算処理装置
JPH0964754A (ja) 誤り検出符号生成回路
JPS61252719A (ja) バ−スト誤りの訂正方法および符号・復号装置
JP2000101447A (ja) 誤り訂正装置および誤り訂正方法
JP2013201503A (ja) チェンサーチ回路、復号器、記憶装置およびチェンサーチ方法
CN116266760A (zh) 极化码编码方法和装置、译码方法和装置、编译码系统
KR940007422B1 (ko) 버퍼레지스터를 사용하지 않는 rs 복호시스템
KR100234703B1 (ko) 데이타 오류체크 방법
JPH071876B2 (ja) Bch符号の復号装置
JPH10290167A (ja) 誤り検出方法および誤り検出回路
JPH1141113A (ja) 誤り訂正装置
JPH05315972A (ja) 短縮bch符号誤り訂正方式の位相確定方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050927

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051110

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060411