JP3454962B2 - 誤り訂正符号の符号器及び復号器 - Google Patents

誤り訂正符号の符号器及び復号器

Info

Publication number
JP3454962B2
JP3454962B2 JP06430395A JP6430395A JP3454962B2 JP 3454962 B2 JP3454962 B2 JP 3454962B2 JP 06430395 A JP06430395 A JP 06430395A JP 6430395 A JP6430395 A JP 6430395A JP 3454962 B2 JP3454962 B2 JP 3454962B2
Authority
JP
Japan
Prior art keywords
input
output
bits
circuit
bit
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
JP06430395A
Other languages
English (en)
Other versions
JPH08265173A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP06430395A priority Critical patent/JP3454962B2/ja
Priority to US08/619,332 priority patent/US5694405A/en
Publication of JPH08265173A publication Critical patent/JPH08265173A/ja
Application granted granted Critical
Publication of JP3454962B2 publication Critical patent/JP3454962B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、伝送される通信データ
の誤りを検出、訂正するために通信データに誤り訂正符
号を付加する誤り訂正符号の符号器及び符号化された通
信データを検査する復号器に関し、特に符号化及び復号
化の演算処理をパラレル化する際の技術に関する。
【0002】
【従来の技術】誤り訂正符号は、送信側から送られたデ
ータに通信路上で誤りが生じた場合に、この誤りを受信
側で検出、訂正することを可能とする符号である。誤り
訂正符号を用いた通信では、送信側において元のデータ
に冗長符号を付加することによってデータを符号化す
る。受信側では、受信した符号化データを復号化して元
のデータを得る。
【0003】符号化したデータに通信路上で誤りが生じ
ていれば、受信側ではこの誤りを検出することが可能で
あり、また訂正可能な範囲の誤りであれば訂正すること
も可能である。このような誤り訂正符号を利用した通信
方式の一例としてATM(Asynchronous
Transfar Mode,非同期伝送モード)通信
がある。
【0004】ATM通信においては、データは53バイ
トからなるATMセル(以下、単にセルと呼ぶ)を単位
として伝送される。セルはヘッダと呼ばれる先頭の5バ
イトの部分とペイロードと呼ばれる48バイトのユーザ
データ部分とに大別される。ヘッダにはセル伝送先を示
すアドレスやその他の管理情報等の重要な情報が記載さ
れており、この部分に生じた誤りは極力検出訂正するこ
とが望ましい。これを可能にするために、ヘッダは誤り
訂正符号となるように構成されている。すなわち、ヘッ
ダに冗長度を持たせるためのデータとして、ヘッダの5
バイト目にHECバイト(又は単にHEC)と呼ばれる
1バイトのデータを付加することにより、ヘッダのデー
タを符号化する。
【0005】次に、ATM通信におけるヘッダの符号化
と復号化の原理について説明する。
【0006】まず、送信側における符号化の操作とし
て、5バイトのヘッダ(ただしHECが付加される5バ
イト目を(00000000)としたもの)を生成多項
式G(X)=X8 +X2 +X+1によって割り、その余
り(最大8ビット)をHECとして5バイト目に付加す
る。HECを付加したことにより、5バイトのヘッダ全
体は生成多項式G(X)によって割り切れることにな
る。
【0007】以下、このようにHECを求めるための演
算を「HEC生成」と呼ぶことにする。なお、実際のA
TM通信では、前記の余りに8ビットパターン(010
10101)を加えたものをHECバイトとして定義す
るが、以下では説明を簡単にするために、(01010
101)を加えないものをHECバイトとして定義す
る。
【0008】一方、受信側では受信データを送信側と同
じ生成多項式G(X)によって割り、割り切れれば正し
いヘッダが検出されたものと見なす。割り切れない場合
には誤りが生じたとみなし、必要に応じて誤り訂正、あ
るいはセルの廃棄等の処理を行う。以下、この復号化の
操作を「HEC検査」と呼ぶことにする。
【0009】次に、これらの処理を実現するための構成
について説明する。
【0010】まず、HEC生成を行うための回路、すな
わちHEC生成回路について説明する。
【0011】上記説明からわかるように、HEC生成は
除算回路を用いて行われる。図6に入力データD(X)
にX8 を掛けてX8 D(X)としたものを生成多項式G
(X)X8 +X2 +X+1によって割る除算回路の構成
を示す。
【0012】図6において、入力線101にヘッダの先
頭4バイトのデータがシリアルに入力している時には、
スイッチ102をオンにしておく。スイッチ102を介
して入力されたデータは順次フリップフロップF1 〜F
8 に転送されるが、スイッチ102を介した入力データ
とフリップフロップF8 に格納されたデータが排他的論
理和ゲート103aで排他的論理和がとられ、この論理
演算結果とフリップフロップF1 に格納されたデータが
排他的論理和ゲート103bで排他的論理和がとられ、
排他的論理和ゲート103aの論理演算結果とフリップ
フロップF2 に格納されたデータが排他的論理和ゲート
103cで排他的論理和がとられる。
【0013】このようにして、ヘッダの先頭4バイトの
データが入力し終ると、これをX8倍したものをG
(X)によって割った余りが8個のフリップフロップF
1 〜F8に記憶される。フリップフロップF8 がMSB
のビットである。8個のフリップフロップF1 〜F8
記憶された余りを信号線104から順次出力させること
によりHECバイトが得られる。
【0014】次に、HEC検査を行うための回路、すな
わちHEC検査回路について説明する。
【0015】図7に入力データD(X)を生成多項式G
(X)=X8 +X2 +X+1によって割る除算回路の構
成を示す。
【0016】図7において、入力線105にヘッダの5
バイトのデータが入力している時には、スイッチ106
をオンにしておく。スイッチ106を介して入力された
データは順次フリップフロップF1 〜F8 に転送される
が、スイッチ106を介した入力データとフリップフロ
ップF8 に格納されたデータが排他的論理和ゲート10
7aで排他的論理和がとられ、フリップフロップF1
格納されたデータとフリップフロップF8 に格納された
データが排他的論理和ゲート107bで排他的論理和が
とられ、フリップフロップF2 に格納されたデータとフ
リップフロップF8 に格納されたデータが排他的論理和
ゲート107cで排他的論理和がとられる。
【0017】このようにして、ヘッダの5バイトのデー
タが入力し終ると、これをG(X)によって割った余り
が8個のフリップフロップF1 〜F8 に記憶される。こ
の余り(いわゆるシンドローム)を信号線108から順
次出力させ、(00000000)であるか否かを調べ
ることにより誤りの有無を判定することができる。ま
た、シンドロームのパターンを調べることにより1ビッ
トの誤りを訂正することが可能である。
【0018】しかし実際には、高伝送レートの通信で用
いられる機器の回路内においてこのようなシリアルの回
路が用いられることはなく、これをパラレル化した回路
が用いられる。なぜなら、高伝送レートで送受信される
データをシリアルで処理するには、現在のデバイス技術
で提供できる素子の動作速度では低速すぎるためであ
る。したがって、実際に用いられるのは、シリアルの除
算回路を例えば8ビットパラレル化したものである。8
ビットパラレル化した回路では、シリアルの回路で8サ
イクルかけて行われる除算の結果を1サイクルで得るこ
とができ、素子の動作速度が低くても高い伝送レートに
対応することが可能となる。
【0019】次に、8ビットパラレル化されたHEC生
成回路及びHEC検査回路について説明する。
【0020】図8は図6に示すシリアルのHEC生成回
路を8ビットパラレル化した回路構成を示す図である。
【0021】図8において、HEC生成回路は、入力線
109から与えられる受信データを受けるスイッチ11
0、排他的論理和ゲート111、ビットパラレル入力の
除算パターン生成回路112、8ビットパラレルで1段
のシフトレジスタ113で構成される。8ビットパラレ
ル入力の除算パターン生成回路112は、その入力ビッ
ト線をI[i](i=0〜7、i=7がMSBに対
応)、出力ビット線をO[i](i=0〜7、i=7が
MSBに対応)とすれば、次式によって与えられ、例え
ば図9に示すように排他的論理和ゲートにより構成され
る。
【0022】
【数1】 0[7] = I[7] EXOR I[6] EXOR I[5], 0[6] = I[6] EXOR I[5] EXOR I[4], 0[5] = I[5] EXOR I[4] EXOR I[3], 0[4] = I[4] EXOR I[3] EXOR I[2], 0[3] = I[7] EXOR I[3] EXOR I[2] EXOR I[1], …… (1) 0[2] = I[6] EXOR I[2] EXOR I[1] EXOR I[0], 0[1] = I[6] EXOR I[1] EXOR I[0] 0[0] = I[7] EXOR I[6] EXOR I[0]. ここでEXORは排他的論理和の演算を表すものとす
る。(1)式の機能は、例えば図9に示すような回路に
よって実現される。以上のように構成される回路を「8
ビットのHEC生成回路」と呼ぶことにする。
【0023】このような構成において、ヘッダの1バイ
ト目から4バイト目までのデータが、信号線109に入
力している間、スイッチ110がオンになっている。4
バイト目が入力し終ると、次の5サイクル目にシフトレ
ジスタ113から、ヘッダの先頭4バイトのデータにX
8 を掛けたものを生成多項式G(X)=X8 +X2 +X
+1によって割った余り、すなわちHECバイトが出力
される。
【0024】次に、図10に図7に示すシリアルのHE
C検査回路を8ビットパラレル化した回路構成を示す。
【0025】図10において、この回路は、入力線11
4から与えられる受信データを受けるスイッチ115、
排他的論理和ゲート116、8ビットパラレルで1段の
シフトレジスタ117、8ビットパラレル入力の除算パ
ターン生成回路118、及びヘッダ検出回路119で構
成される。ヘッダ検出回路119は、シフトレジスタ1
17から出力される余りが(00000000)である
時に信号線120からハイレベルの信号を出力して、ヘ
ッダが誤りなく受信されたことを通知するための回路で
ある。また、8ビットパラレル入力の除算パターン生成
回路118は、上述した(1)式で与えられる。以上の
ように構成される回路を「8ビットのHEC検査回路」
と呼ぶことにする。
【0026】この回路は次のように動作する。
【0027】ヘッダの1バイト目から5バイト目までの
データが、信号線aに入力している間、スイッチ115
はオンになっている。5バイト目が入力し終わると、次
の6サイクル目に信号線cから、ヘッダの5バイトのデ
ータを生成多項式G(X)=X8 +X2 +X+1によっ
て割った余り(シンドローム)が出力される。ヘッダに
誤りがなければこの余りは(00000000)にな
り、この時ヘッダ検出回路119は信号線120にハイ
レベルの信号を出力して、ヘッダが誤りなく受信された
ことを通知する。一方、ヘッダに誤りがあればこの余り
は(00000000)以外となり、この時ヘッダ検出
回路119は信号線120にロウレベルの信号を出力し
て、ヘッダに誤りが生じたことを通知する。
【0028】次に、図11を参照して除算の過程を詳細
に説明する。
【0029】図11は図10に示す8ビットのHEC検
査回路の各信号線a,b及びc上のデータの変化を1サ
イクル毎に記載したものである。図11中の信号線a,
b,c及びdは、図10に記載された同じ符号の信号線
に対応している。信号線aの欄に記載されているH1,
H2,…は、各々のサイクルにおいてそれぞれヘッダの
1バイト目、2バイト目、…が入力していることを表
す。また、信号線bの欄に記載されている、例えば(H
1,H2)modGは、ヘッダの2バイト目までが入力
したところでその2バイトを生成多項式G(X)によっ
て割った余りが信号線bに出力されていることを表す。
信号線cには、信号線bに出力されたデータを1サイク
ル遅延させたものが出力される。
【0030】この図11から、ヘッダが1バイト入力す
る毎に、それまでに入力したデータをG(X)によって
割った余りが信号線bに出力され、その1サイクル後に
信号線cに出力されることがわかる。従って、ヘッダが
誤りがなく受信された場合、そのことがヘッダ検出回路
119によって検出されるのは、ヘッダの入力開始から
6サイクル目となる。
【0031】以上がATM通信における8ビットパラレ
ルでのヘッダの符号化と復号化の方法である。すでに述
べたように、回路構成をパラレル化するのは、現在得ら
れる素子の動作速度が高伝送レートの通信に要求される
データ処理速度に追い付かないことを補うためである。
しかし、近い将来にはさらに高速の伝送レートが実用段
階に入ると考えられているため、回路構成を現在の8ビ
ットパラレルからより並列度の高い16ビットパラレル
に拡張することが求められる。
【0032】そこで、次に従来ある8ビットの回路を拡
張して、HEC検査回路を16ビットパラレル化した回
路について考えてみることにする。このため、しばらく
の間は、HEC生成回路については触れず、HEC検査
回路のみを取り上げることにする。
【0033】図12にHEC検査回路を16ビットパラ
レル化した回路(以降、この回路を16ビットのHEC
検査回路と呼ぶことにする)の構成を示す。
【0034】図12において、信号線aH およびaL
それぞれ、16ビットデータ入力バスの上位8ビットと
下位8ビットとに対応する。スイッチ121は、信号線
Hへの入力と信号線aL への入力を別々にオン、オフ
することができる。信号線aH 上のデータは、信号線d
上のデータと排他的論理和ゲート122によって排他的
論理和を取られてから信号線bを通って16ビットパラ
レルで1段のシフトレジスタ123の上位8ビット分の
フリップフロップに入力した後、信号線cH に出力され
る。信号線aL 上のデータはそのままシフトレジスタ1
23の下位8ビットに入力した後、信号線cL 上に出力
される。124は16ビットパラレル入力の場合の除算
パターン生成回路であり、16ビットの入力と8ビット
の出力を持つ。この生成回路124の入力は16ビット
であるが、9桁の生成多項式G(X)による除算の余り
は最大で8桁なので、出力は8ビットとなる。入力ビッ
ト線をI[i](i=0〜15、i=15がMSBに対
応)とすれば、I[i]とO[i]の関係は次式によっ
て与えられる。
【0035】
【数2】 0[7] = I[15] EXOR I[13] EXOR I[11] EXOR I[7] EXOR I[6] EXOR I[5], 0[6] = I[14] EXOR I[12] EXOR I[10] EXOR I[6] EXOR I[5] EXOR I[4], 0[5] = I[15] EXOR I[13] EXOR I[11] EXOR I[9] EXOR I[5] EXOR I[4] EXOR I[3], 0[4] = I[15] EXOR I[14] EXOR I[12] EXOR I[10] EXOR I[8] EXOR I[4] EXOR I[3] EXOR I[2], 0[3] = I[14] EXOR I[13] EXOR I[11] EXOR I[9] EXOR I[7] EXOR I[3] EXOR I[2] EXOR I[1], 0[2] = I[15] EXOR I[13] EXOR I[12] EXOR I[10] EXOR I[8] EXOR I[6] EXOR I[2] EXOR I[1] EXOR I[0], 0[1] = I[15] EXOR I[14] EXOR I[13] EXOR I[12] EXOR I[9] EXOR I[6] EXOR I[1] EXOR I[0], 0[0] = I[14] EXOR I[12] EXOR I[8] EXOR I[7] EXOR I[6] EXOR I[0]. …… (2) 125は図10に示したものと同じヘッダ検出回路であ
る。
【0036】次に、図12に示す16ビットのHEC検
査回路の動作を説明する。
【0037】ここで、データ入力バス幅が8ビットから
16ビットに広がったことで、その動作を考えるに際し
て考慮すべき事が起こる。それは、16ビットパラレル
のデータバスでは、1サイクルに2バイトずつのデータ
が転送されることになるが、1セルが53バイトという
奇数のバイト数から成るため、セルの先頭(ヘッダの1
バイト目)が16ビットデータバス上の上位8ビットと
下位8ビットに交互に現れることになる。よって、これ
ら2通りの場合のそれぞれについて16ビットのHEC
検査回路の動作を考える必要がある。そこでまず、デー
タ入力バスの上位8ビットにヘッダの1バイト目がある
場合の動作を図13を参照して説明する。
【0038】図13は16ビットのHEC検査回路の各
信号線上のデータの変化を1サイクル毎に示したもので
ある。
【0039】図13において、1サイクル目には、ヘッ
ダの1バイト目(H1)が信号線aH に、またヘッダの
2バイト目(H2)が信号線aL に同時に入力する。こ
の時信号線bからはヘッダの1バイト目をG(X)で割
った余り(H1)modG(ヘッダの1バイト目自身)
が出力される。以降、各サイクルでの除算の余りは信号
線bから出力され、シフトレジスタ123の上位8ビッ
トに記憶された後、信号線cH に出力される。2サイク
ル目には、ヘッダの3バイト目(H3)と4バイト目
(H4)が入力し、信号線bからは3バイト目までの入
力をG(X)で割った余り(H1,H2,H3)mod
Gが出力される。
【0040】3サイクル目には、信号線aH にヘッダの
5バイト目(H5)が入力し、信号線aL の入力はオフ
になっている。この時、信号線bには5バイト目までの
入力をG(X)で割った余り(H1,H2,H3,H
4,H5)modGが出力される。この余りは、ヘッダ
に誤りが発生していなければ(00000000)であ
り、それが4サイクル目に信号線cH に出力された時、
ヘッダ検出回路125からヘッダが誤りなく受信された
ことを示す信号が送出される。以上の動作で信号線cH
に出力された余りを書き並べてみると、 (H1)modG, (H1,H2,H3)modG, (H1,H2,H3,H4,H5)modG となる。これらの余りは、8ビットのHEC検査回路の
図11に示す動作において、それぞれ、2、4、および
6サイクル目に図10に示す信号線cに出力される余り
に対応している。そして、8ビットのHEC検査回路の
動作ではそれぞれ3、5サイクル目に信号線cに出力さ
れていた余り: (H1,H2)modG, (H1,H2,H3,H4)modG は、16ビットのHEC検査回路の動作では出力されな
い。これは、16ビットパラレルの回路ではデータ処理
が2バイトずつ行われるためである。
【0041】次に、データ入力バスの下位8ビットにヘ
ッダの1バイト目がある場合の動作を図14を参照して
説明する。
【0042】図14において、1サイクル目には、信号
線aH の入力はオフになっており、信号線aL にヘッダ
の1バイト目(H1)が入力する。この時はまだ実際の
除算は行われておらず、信号線bから出力された(00
000000)とヘッダの1バイト目がシフトレジスタ
123に入力しただけである。2サイクル目には、ヘッ
ダの2バイト目(H2)が信号線aH に、またヘッダの
3バイト目(H3)が信号線aL に同時に入力する。こ
の時、信号線bからはヘッダの2バイト目までの入力を
G(X)で割った余り(H1,H2)modGが出力さ
れる。
【0043】3サイクル目には、ヘッダの4バイト目
(H4)と5バイト目(H5)が入力し、信号線bから
は4バイト目までの入力をG(X)で割った余り(H
1,H2,H3,H4)modGが出力される。4サイ
クル目には、ペイロードの1バイト目(P1)と2バイ
ト目(P2)が入力し、この時、信号線bからはセルの
先頭から6バイト目(P1)までの入力をG(X)で割
った余り(H1,H2,H3,H4,H5,P1)mo
dGが出力される。以上の動作で信号線cH に出力され
た余りを書き並べてみると、 (H1,H2)modG, (H1,H2,H3,H4)modG, (H1,H2,H3,H4,H5,P
1)modG となる。
【0044】この場合には、8ビットのHEC検査回路
の動作(図11参照)において、2、4、および6サイ
クル目に図10の信号線cに出力されていた余り: (H1)modG, (H1,H2,H3)modG, (H1,H2,H3,H4,H5)modG は出力されない。これは、HEC検査の結果を示す余り
(H1,H2,H3,H4,H5)modGが得られな
いことを意味する。ここで注意すべきことは、図14に
示す動作における4サイクル目以降に信号線aH および
信号線aL への入力を0にしたとしても、得られる余り
は(H1,H2,H3,H4,H5,0000000
0)modGであって、(H1,H2,H3,H4,H
5)modGではないということである。
【0045】
【発明が解決しようとする課題】従来技術の延長上にあ
る図12に示す16ビットのHEC検査回路を用いた場
合には、図14に示す動作が示す通り、ヘッダの1バイ
ト目がデータ入力バスの下位8ビットにある場合にはH
EC検査を行うことができない。すなわち、1セルおき
にしかHEC検査を行うことができないという不具合が
生じる。
【0046】この不具合はATM通信のみならず、より
一般的な通信の方式に関して生じ得ることでもある。す
なわち、バイト単位のデータが集まってできている符号
化された一連のデータの1バイト目が、16ビットパラ
レルのデータバスの上位8ビットと下位8ビットのどち
らに対しても出力されるような場合には、前記ATM通
信の例における不具合と同様の不具合が生じるのであ
る。
【0047】さらにまた、16ビットのHEC検査回路
に関する上記の不具合は、HEC生成回路を16ビット
パラレル化した場合にも同様に生じることになる。
【0048】そこで、この発明は、上記に鑑みてなされ
たものであり、その目的とするところは、バイト単位の
データが集まってできている符号化された、又は符号化
すべき一連のデータの1バイト目が2nビットパラレル
のデータバスの上位nビット又は下位nビットのいずれ
かに対して出力されても、このデータを復号化(または
符号化)すことを可能とするような2nビットパラレル
の誤り訂正符号の符号器及び復号器を提供することにあ
る。
【0049】
【課題を解決するための手段】上記目的を達成するため
に、請求項1記載の発明は、受信データを2nビットず
つ入力するデータ入力バスと、前記データ入力バスの上
位nビットへの受信データの入力をオン/オフする第1
のスイッチと、前記データ入力バスの下位nビットへの
受信データの入力をオン/オフする第2のスイッチと、
前記データ入力バスの上位nビットに入力した受信デー
タを一方の入力として排他的論理和をとる第1のゲート
回路と、前記第1のゲート回路の出力を上位nビットの
入力とし、前記データ入力バスの下位nビットの出力を
下位nビットの入力とする2nビットパラレルのシフト
レジスタと、前記シフトレジスタからの2nビットの出
力を入力とし、除算パターンを生成し、生成したnビッ
トの除算パターン出力を前記第1のゲート回路の他方の
入力に与える第1の組み合わせ回路と、前記シフトレジ
スタの上位nビットの出力を入力とし、nビットの除算
パターンを生成出力する第2の組み合わせ回路と、前記
第2の組み合わせ回路の出力と前記シフトレジスタの下
位nビットの出力との排他的論理和をとる第2のゲート
回路と、前記シフトレジスタの上位nビットの出力を入
力として、その入力が誤り訂正符号が受信されたことを
示すパターンであることを検出する第1の検出回路と、
前記第2のゲート回路の出力を入力とし、その入力が誤
り訂正符号が受信されたことを示すパターンであること
を検出する第2の検出回路とから構成される。
【0050】請求項2記載の発明は、受信データの上位
nビットとnビットの除算パターンとの排他的論理和を
上位nビットの入力とし、受信データの下位nビットを
下位nビットの入力とする2nビットパラレルのシフト
レジスタを備え、16ビットパラレルで受信データを復
号化する誤り訂正符号の復号器において、前記シフトレ
ジスタの上位nビットの出力を入力とし、nビットの除
算パターンを生成出力する組み合わせ回路と、前記組み
合わせ回路の出力と前記シフトレジスタの下位nビット
の出力との排他的論理和をとるゲート回路と、前記シフ
トレジスタの上位nビットの出力を入力として、その入
力が誤り訂正符号が受信されたことを示すパターンであ
ることを検出する第1の検出回路と、前記ゲート回路の
出力を入力とし、その入力が誤り訂正符号が受信された
ことを示すパターンであることを検出する第2の検出回
路とから構成される。
【0051】請求項3記載の発明は、請求項1又は2記
載の誤り訂正符号の復号器において、前記シフトレジス
タの上位nビットと前記第2のゲート回路又は前記ゲー
ト回路の出力を択一的に選択する第1のセレクタと、前
記第1のセレクタにより選択された出力をスイッチング
制御するスイッチと、前記スイッチを介して前記第1の
セレクタの出力を受けて、2nビットの誤り訂正パター
ンを生成する生成回路と、前記生成回路により生成され
た誤り訂正パターンを遅延させる遅延回路と、前記遅延
回路により遅延された誤り訂正パターン又は前記生成回
路により生成された誤り訂正パターンを選択する第2の
セレクタと、受信データを2nビットパラレルにシフト
して格納する第2のシフトレジスタと、前記第2のシフ
トレジスタの出力と前記第2のセレクタの出力との排他
的論理和をとるゲート回路とからなる受信データの1ビ
ット誤り訂正回路を備えて構成される。
【0052】請求項5記載の発明は、受信データを16
ビットずつ入力するデータ入力バスと、前記データ入力
バスの上位nビットへの受信データの入力をオン/オフ
する第1のスイッチと、前記データ入力バスの下位nビ
ットへの受信データの入力をオン/オフする第2のスイ
ッチと、前記データ入力バスの上位nビットに入力した
受信データを一方の入力として排他的論理和をとるゲー
ト回路と、前記ゲート回路の出力を上位nビットの入力
とし、前記データ入力バスの下位nビットの出力を下位
nビットの入力とし、nビットの除算パターンを生成出
力する第1の組み合わせ回路と、前記ゲート回路の出力
を入力とし、nビットの除算パターンを生成出力する第
2の組み合わせ回路と、前記第1の組み合わせ回路の出
力を入力とし、出力を前記ゲート回路の他方の入力に与
える8ビットパラレルのシフトレジスタと、前記シフト
レジスタの出力又は前記第2の組み合わせ回路の出力の
いずれか一方を選択して出力する選択回路とから構成さ
れる。
【0053】
【作用】上記構成において、請求項1又は2記載の発明
は、データ入力バスの上位nビットに入力した受信デー
タとnビットの除算パターンとの排他的論理和をとり、
この演算結果を上位nビットの入力としデータ入力バス
の下位nビットの出力を下位nビットの入力としてシフ
トレジスタに格納し、シフトレジスタの2nビットを入
力としnビットの除算パターンを生成し、シフトレジス
タの上位nビットの出力が誤り訂正符号が受信されたこ
とを示すパターンであることを検出し、シフトレジスタ
の上位nビットが誤り訂正符号が受信されたことを示す
パターンであることを検出するようにし、一方、シフト
レジスタの上位nビットを入力としてnビットの除算パ
ターンを生成し、生成されたnビットの除算パターンと
シフトレジスタの下位nビットの排他的論理和をとり、
この演算結果が誤り訂正符号が受信されたことを示すパ
ターンであることを検出し、シフトレジスタの下位nビ
ットが誤り訂正符号が受信されたことを示すパターンで
あることを検出するようにしている。
【0054】請求項3記載の発明は、データ入力バスの
上位nビットに入力した受信データとシフトレジスタの
出力との排他的論理和をとり、この演算結果を上位nビ
ットの入力としデータ入力バスの下位nビットの出力を
下位nビットの入力としてnビットの除算パターンを生
成し、このnビットの除算パターンをシフトレジスタに
格納し、前記演算結果を入力としてnビットの除算パタ
ーンを生成し、シフトレジスタの出力又は前記演算結果
を入力としたnビットの除算パターンのいずれか一方を
選択して出力するようにしている。
【0055】
【実施例】以下、図面を用いてこの発明を説明する。
【0056】図1は請求項1又は2記載の発明の一実施
例に係わる誤り訂正符号の復号器の構成を示す図であ
る。
【0057】図1に示す実施例は、16ビットのHEC
検査回路の構成を示すものである。図1において、1は
スイッチであり、信号線aH への入力と信号線aL への
入力を別々にオン、オフすることができる。2は16ビ
ットパラレルのシフトレジスタである。3は前述した
(1)式によって機能が記述される前記8ビットパラレ
ル入力の除算パターン生成回路である。4は前述した
(2)式によって機能が記述される前記16ビットパラ
レル入力の除算パターン生成回路である。5は排他的論
理和ゲートであり、信号線aH 上のデータと信号線d上
のデータとの排他的論理和を信号線bに出力する。6お
よび7は共にヘッダ検出回路である。検出回路6は信号
線cH に(00000000)が出力された時に、検出
回路7は信号線fに(00000000)が出力された
時に、それぞれ信号線8および9にハイレベルの信号を
出力して、ヘッダが誤りなく受信されたことを通知す
る。10は排他的論理和ゲートであり、信号線cL 上の
データと信号線e上のデータとの排他的論理和を信号線
fに出力する。
【0058】図1に示す構成と図12に示す構成を比較
すれば、この実施例の16ビットのHEC検査回路は、
図12に示す従来の16ビットのHEC検査回路に、8
ビットパラレル入力の除算パターン生成回路3やヘッダ
検出回路7等から成る回路を付け加えた構成であること
がわかる。この実施例の特徴は、16ビットパラレル入
力の除算パターン生成回路と8ビットパラレル入力の除
算パターン生成回路とを合わせ持っていることである。
これら2つの除算パターン生成回路を組み合わせた回路
構成にしたことにより、従来構成が内在していた不具合
を解決することができるのである。
【0059】次に、この実施例の16ビットのHEC検
査回路の動作を説明する。
【0060】入力バスの上位8ビットにヘッダの1バイ
ト目がある場合の動作は、図13に示す従来の16ビッ
トのHEC検査回路の動作と全く同様である。この場合
は、ヘッダの入力を開始してから4サイクル目に、信号
線cH から余り(H1,H2,H3,H4,H5)mo
dG(X)が出力される。ヘッダに誤りがなく、出力さ
れた余りが(00000000)であれば、ヘッダ検出
回路6からヘッダが誤りなく受信されたことを示す信号
が信号線8を介して送出される。
【0061】次に、データ入力バスの下位8ビットにヘ
ッダの1バイト目がある場合の動作を図2を参照して説
明する。
【0062】図2はこの実施例の16ビットのHEC検
査回路の各信号線上のデータの変化を1サイクル毎に示
したものである。1サイクル目から3サイクル目までの
動作は、図14に示すものと全く同様である。すなわ
ち、1サイクル目から3サイクル目にかけて5バイトの
ヘッダが入力し、3サイクル目には、ヘッダの1バイト
目から4バイト目までのデータをG(X)によって割っ
た余り(H1,H2,H3,H4)modG(X)が信
号線bに出力される。この余りは、4サイクル目に信号
線cH に出力される。
【0063】ここからの動作が、従来の16ビットのH
EC検査回路と異なってくる。
【0064】信号線cH に出力された余り(H1,H
2,H3,H4)modG(X)は8ビットパラレル入
力の除算パターン生成回路3に入力し、その出力は信号
線eから出力されて、信号線cL に出力されているヘッ
ダの5バイト目(H5)と排他的論理和がとられる。4
サイクル目におけるこの動作は、8ビットのHEC検査
回路において図11に示す5サイクル目に行われる動作
に他ならない。
【0065】すなわち、図10に示す8ビットのHEC
検査回路では、5サイクル目に信号線cに出力される余
り(H1,H2,H3,H4)modG(X)を8ビッ
ト入力の除算パターン生成回路118に入力させ、その
出力(信号線d上のデータ)と信号線aから出力される
ヘッダの5バイト目(H5)との排他的論理和をとるこ
とにより、最終的な余り(H1,H2,H3,H4,H
5)modG(X)を得る。
【0066】これに対して、この実施例の16ビットの
HEC検査回路では、4サイクル目に信号線cH に出力
される余り(H1,H2,H3,H4)modG(X)
を8ビット入力の除算パターン生成回路3に入力させ、
その出力(信号線e上のデータ)と信号線cL から出力
されるヘッダの5バイト目(H5)との排他的論理和を
とることにより、信号線fに余り(H1,H2,H3,
H4,H5)modG(X)を出力させるのである。こ
の余りはヘッダ検出回路7に入力し、ヘッダに誤りがな
ければ、信号線9からヘッダが検出されたことを示す信
号が送出されることになる。
【0067】このようにして、上記実施例の16ビット
のHEC検査回路では、従来の16ビットのHEC検査
回路とは異なり、データ入力バスの下位8ビットにヘッ
ダの1バイト目がある場合でもHEC検査を確実に行う
ことができる。
【0068】図3は請求項3記載の発明の一実施例に係
わる誤り訂正符号の復号器の構成を示す図である。
【0069】図3に示す実施例の構成は、1ビットの誤
り訂正が可能な16ビットのHEC検査回路であり、こ
の回路は上述した実施例の16ビットのHEC検査回路
に、従来からよく知られている1ビット誤り訂正回路を
組み合わせることにより、データ入力バスの上位8ビッ
トまたは下位8ビットのいずれかにヘッダの1バイト目
がある場合にでも、ヘッダの1ビット誤り訂正を行うこ
とができるようにした回路である。
【0070】図3において、信号線11は16ビットの
データ入力バスである。データ入力バス11は二手に分
かれ、一方は16ビットパラレルで3段のシフトレジス
タ12に入力し、その出力はデータバス13に出力され
る。もう一方は、図2の14の部分への入力となる。1
4は先の実施例で示した16ビットのHEC検査回路で
あり、図1に示したのと同じ構成を有する回路である。
【0071】15はセレクタであり、16ビットのHE
C検査回路14の中の信号線cH または信号線fからの
出力のいずれかを選択して、スイッチ16に出力する。
スイッチ16からの出力は誤り訂正パターン生成回路1
7に入力する。誤り訂正パターン生成回路17は、8ビ
ットの入力を受けて16ビットの出力をデータバス18
に出力する。データバス18は二手に分かれ、その一方
はセレクタ19に入力する。もう一方は、1バイト遅延
回路20に入力し、その出力はセレクタ19に入力す
る。1バイト遅延回路20は、例えば図4に示すように
8ビットパラレルで1段のシフトレジスタ25を用いて
構成される。
【0072】セレクタ19は、誤り訂正パターン生成回
路17からの出力、または1バイト遅延回路20からの
出力のいずれかをを選択して信号線21に出力する。信
号線13と信号線21は排他的論理和ゲート22の入力
となり、その出力は信号線23に出力される。
【0073】誤り訂正パターン生成回路17は、受信デ
ータのシンドロームを調べて、1ビット誤りを訂正する
データパターンを生成するための回路であり、従来から
よく知られているものである。その入力ビット線I
[i](i=0〜7、i=7がMSBに対応)、出力ビ
ット線をO[i](i=0〜15、i=15がMSBに
対応)とすれば、I[i]とO[i]の関係は次式によ
って与えられる。
【0074】
【数3】 0[15] = (I[5]・I[4]・I[0])・( ̄I[7]・ ̄I[6]・ ̄I[3]・ ̄I[2]・ ̄I[1]), 0[14] = (I[7]・I[4]・I[3]・I[1]・I[0])・( ̄I[6]・ ̄I[5]・ ̄I[2]), 0[13] = (I[7]・I[6]・I[3]・I[2]・I[1])・( ̄I[5]・ ̄I[4]・ ̄I[0]), 0[12] = (I[6]・I[5]・I[2]・I[1]・I[0])・( ̄I[7]・ ̄I[4]・ ̄I[3]), 0[11] = (I[7]・I[5]・I[4])・( ̄I[6]・ ̄I[3]・ ̄I[2]・ ̄I[1]・ ̄I[0]), 0[10] = (I[6]・I[4]・I[3])・( ̄I[7]・ ̄I[5]・ ̄I[2]・ ̄I[1]・ ̄I[0]), 0[9] =(I[5]・I[3]・I[2])・( ̄I[7]・ ̄I[6]・ ̄I[4]・ ̄I[1]・ ̄I[0]), 0[8] =(I[4]・I[2]・I[1])・( ̄I[7]・ ̄I[6]・ ̄I[5]・ ̄I[3]・ ̄I[0]), 0[7] =(I[3]・I[1]・I[0])・( ̄I[7]・ ̄I[6]・ ̄I[5]・ ̄I[4]・ ̄I[2]), 0[6] =(I[7]・I[2]・I[1])・( ̄I[6]・ ̄I[5]・ ̄I[4]・ ̄I[3]・ ̄I[0]), 0[5] =(I[6]・I[1]・I[0])・( ̄I[7]・ ̄I[5]・ ̄I[4]・ ̄I[3]・ ̄I[2]), 0[4] =(I[7]・I[5]・I[1])・( ̄I[6]・ ̄I[4]・ ̄I[3]・ ̄I[2]・ ̄I[0]), 0[3] =(I[6]・I[4]・I[0])・( ̄I[7]・ ̄I[5]・ ̄I[3]・ ̄I[2]・ ̄I[1]), 0[2] =(I[7]・I[5]・I[3]・I[1]・I[0])・( ̄I[6]・ ̄I[4]・ ̄I[2]), 0[1] =(I[7]・I[6]・I[4]・I[2]・I[1])・( ̄I[5]・ ̄I[3]・ ̄I[0]), 0[0] =(I[6]・I[5]・I[3]・I[1]・I[0])・( ̄I[7]・ ̄I[4]・ ̄I[2]), …… (3) ただし、 ̄I[i]はビット数I[i]の信号を反転た
ものを表し、「・」は論理積を表す。(3)式の機能
は、ANDゲートとNORゲートを使って簡単に回路化
することができる。
【0075】次に、この回路の動作を説明する。
【0076】まず、データ入力バスの上位8ビットにヘ
ッダの1バイト目がある場合の動作について述べる。こ
の場合には、セレクタ15は信号線cH を選択し、セレ
クタ19は信号線18を選択するように制御される。ま
た、信号線11にヘッダの1バイト目および2バイト目
が入力した時を1サイクル目とすると、スイッチ16は
1サイクル目から3サイクルまではオフ、4サイクル目
から6サイクル目まではオンとなるように制御される。
【0077】1サイクル目から3サイクル目にかけて、
信号線11からヘッダの1バイト目からペイロードの1
バイト目までを入力すると、16ビットのHEC検査回
路14は図13に示す動作を行い、4サイクル目には信
号線cH から5バイトのヘッダを生成多項式G(X)で
割った時に得られるシンドロームパターンが出力され
る。この出力データは、セレクタ15、スイッチ16を
介して誤り訂正パターン生成回路17に入力する。
【0078】巡回符号論理によれば、ヘッダに1ビット
の誤りがある場合には、40通りある誤りビットの位置
に対応して、それぞれ異なるシンドロームが得られるこ
とが示される。誤り訂正パターン生成回路17は、4サ
イクル目にシンドロームパターンが入力するとこれをデ
コードして、ヘッダの1バイト目から2バイト目までの
16ビット中のいずれか1ビットに誤りがある場合は、
信号線18上で誤りの発生位置と同位のビット線にハイ
レベルの信号を出力し、残りのビット線にはロウレベル
の信号を出力する。この誤り訂正パターンは、セレクタ
19を介して信号線21に出力される。
【0079】一方、この時(4サイクル目)には、ヘッ
ダの1バイト目および2バイト目が、シフトレジスタ1
2の3段目から信号線13に出力されている。このデー
タに対して、信号線21から出力された誤り訂正パター
ンの排他的論理和がとられることにより、誤りビットが
訂正される。
【0080】1バイト目および2バイト目に誤りがな
く、3バイト目および4バイト目を合わせた16ビット
中のいずれか1ビットに誤りがあった場合には、5サイ
クル目に信号線cH から出力されるデータを誤り訂正パ
ターン生成回路17によってデコードすることにより、
誤りの発生位置と同位のビット線のみをハイレベルとす
る誤り訂正パターンが信号線18から出力される。この
誤り訂正パターンは、セレクタ19を介して信号線21
に出力される。
【0081】この時(5サイクル目)には、ヘッダの3
バイト目および4バイト目が、シフトレジスタ12の3
段目から信号線13に出力されている。このデータに対
して、信号線21から出力された誤り訂正パターンの排
他的論理和がとられることにより、誤りビットが訂正さ
れる。
【0082】1バイト目から4バイト目に誤りがなく、
5バイト目のいずれか1ビットに誤りがあった場合に
は、6サイクル目に同様の動作が行われることにより、
誤りが訂正される。
【0083】次に、データ入力バスの下位8ビットにヘ
ッダの1バイト目がある場合の動作について説明する。
【0084】この場合には、セレクタ15は信号線fを
選択し、セレクタ19は信号線24を選択するように制
御される。また、信号線11にペイロードの53バイト
目およびヘッダの1バイト目が入力した時を1サイクル
目とすると、スイッチ16は1サイクル目から3サイク
ル目まではオフ、4サイクル目から6サイクル目までは
オンとなるように制御される。
【0085】1サイクル目から3サイクル目にかけて、
信号線11からペイロードの48バイト目から次のセル
のヘッダの5バイト目までを入力すると、16ビットの
HEC検査回路14は図2に示す動作を行い、4サイク
ル目には信号線fから5バイトのヘッダを生成多項式G
(X)で割った時に得られるシンドロームパターンが出
力される。この出力データは、セレクタ15、スイッチ
16を介して誤り訂正パターン生成回路17に入力す
る。
【0086】誤り訂正パターン生成回路17は、4サイ
クル目にシンドロームパターンが入力するとこれをデコ
ードして、ヘッダの1バイト目から2バイト目までの1
6ビット中どこか1ビットに誤りがある場合は、信号線
18上で誤りの発生位置と同位のビット線にハイレベル
の信号を出力し、残りのビット線にはロウレベルの信号
を出力する。この誤り訂正パターンは、1バイト遅延回
路20およびセレクタ19を介して信号線21に出力さ
れる。1バイト遅延回路20を通ることにより、信号線
18から出力される16ビットの誤り訂正パターンの上
位8ビット(ヘッダの1バイト目に対する誤り訂正パタ
ーン)だけが、4サイクル目に信号線24の下位8ビッ
トに出力され、誤り訂正パターンの下位8ビット(ヘッ
ダの2バイト目に対する誤り訂正パターン)は、5サイ
クル目に信号線24の上位8ビットに出力されることに
なる。
【0087】一方、この時(4サイクル目)には、ペイ
ロードの48バイト目およびヘッダの1バイト目が、シ
フトレジスタ12の3段目から信号線13に出力されて
いる。このデータに対して、信号線21から出力された
誤り訂正パターンの排他的論理和がとられることによ
り、誤りビットが訂正される。
【0088】1バイト目に誤りがなく、2バイト目およ
び3バイト目を合わせた16ビット中のいずれか1ビッ
トに誤りがあった場合には、5サイクル目に信号線fか
ら出力されるデータを誤り訂正パターン生成回路17に
よってデコードすることにより、誤りの発生位置と同位
のビット線のみをハイレベルの信号とする誤り訂正パタ
ーンが信号線18から出力される。この誤り訂正パター
ンは、1バイト遅延回路20およびセレクタ19を介し
て信号線21に出力される。
【0089】この時(5サイクル目)には、ヘッダの2
バイト目および3バイト目が、シフトレジスタ12の3
段目から信号線13に出力されている。このデータに対
して、信号線21からの誤り訂正パターンの排他的論理
和がとられることにより、誤りビットが訂正される。
【0090】1バイト目から3バイト目に誤りがなく、
4バイト目および5バイト目を合わせた16ビット中の
いずれか1ビットに誤りがあった場合には、6サイクル
目に同様の動作が行われることにより、誤り訂正され
る。
【0091】以上のように、この実施例においては、図
1に示すHEC検査回路に1ビット誤り訂正回路を組み
合わせることにより、データ入力バスの上位8ビットま
たは下位8ビットのいずれかにヘッダの1バイト目があ
る場合にでも、HEC検査を行えることはもちろんのこ
と、ヘッダの1ビット誤り訂正をも行うことができる。
【0092】図5は請求項5記載の発明の一実施例に係
わる誤り訂正符号の符号器の構成を示す図である。
【0093】図5に示す実施例は、16ビットパラレル
のHEC生成回路(以下、この回路を16ビットのHE
C生成回路と呼ぶ)の構成を示す。
【0094】図5において、26はスイッチであり、信
号線aH への入力と信号線aL への入力を別々にオン、
オフすることができる。27は排他的論理和ゲートであ
り、信号線aH 上のデータと信号線d上のデータとの排
他的論理和を信号線bに出力する。28および29は、
それぞれ前記16ビットおよび前記8ビットパラレル入
力の除算パターン生成回路である。30は8ビットパラ
レルで1段のシフトレジスタである。31はセレクタで
あり、信号線dまたは信号線eからのデータを選択す
る。この16ビットのHEC生成回路は、図7の8ビッ
トのHEC生成回路を16ビットに拡張し、さらに8ビ
ットパラレル入力の除算パターン生成回路29やセレク
タ31等を追加したものである。
【0095】次に、この16ビットのHEC生成回路の
動作を説明する。
【0096】まず、データ入力バスの上位8ビットにヘ
ッダの1バイト目がある場合について述べる。この場合
は、セレクタ31の入力として、信号線dを選択してお
く。ヘッダの入力が始まってから1サイクル目に、信号
線aH および信号線aL からそれぞれヘッダの1バイト
目および2バイト目が同時に入力する。この時、信号線
cからは、1バイト目から2バイト目にかけての入力を
8 倍してから生成多項式G(X)によって割った余り
[X8 (H1,H2)]modG(X)が出力される。
【0097】2サイクル目には、ヘッダの3バイト目お
よび4バイト目が入力し、この時、信号線cからは1バ
イト目から4バイト目にかけての入力をX8 倍してから
生成多項式G(X)によって割った余り[X8 (H1,
H2,H3,H4)]modG(X)、すなわちHEC
バイトが出力される。このHECバイトは、3サイクル
目に信号線dに出力され、セレクタ31を介して出力さ
れた後、ヘッダの5バイト目に付加される。
【0098】次に、データ入力バスの下位8ビットにヘ
ッダの1バイト目がある場合について述べる。この場合
は、セレクタ31の入力として、信号線eを選択してお
く。ヘッダの入力が始まってから1サイクル目に、信号
線aH はオフになり、信号線aL からヘッダの1バイト
目が入力する。この時、信号線cからは、1バイト目の
入力をX8 倍してから生成多項式G(X)によって割っ
た余り[X8 (H1)]modG(X)が出力される。
【0099】2サイクル目には、ヘッダの2バイト目お
よび3バイト目が入力し、この時、信号線cからは1バ
イト目から3バイト目にかけての入力をX8 倍してから
生成多項式G(X)によって割った余り[X8 (H1,
H2,H3)]modG(X)が出力される。この余り
は、3サイクル目に信号線dに出力された後、排他的論
理和ゲート27によって信号線aH に入力しているヘッ
ダの4バイト目と排他的論理和がとられる。排他的論理
和がとられた後に信号線bに出力されたデータは、8ビ
ット入力の除算パターン生成回路29に入力し、その出
力として信号線eから余り[X8 (H1,H2,H3,
H4)]modG(X)、すなわちHECバイトが出力
される。
【0100】以上のようにして、この実施例の16ビッ
トのHEC生成回路では、データ入力バスの上位8ビッ
トまたは下位8ビットのいずれかにヘッダの1バイト目
がある場合にでもHEC生成を行うことができる。
【0101】以上、ATM通信に即した3つの実施例を
用いて、本発明を詳細に説明してきた。ATM通信で
は、符号化および復号化されるデータは5バイトから成
るヘッダであり、使用される生成多項式はG(X)=X
8 +X2 +X+1であるが、本発明の適用される範囲は
これに限定されるものではない。本明細書に記載した符
号化および復号化の方法は、より一般的な巡回符号論理
に基づくものであり、従ってこの方法によって符号化さ
れるデータを用いた通信方式であって、かつ16ビット
パラレルでのデータ処理に起因する前記の問題を有する
通信方式には、本発明の誤り訂正符号符号器および復号
器を等しく応用することができる。
【0102】また、本発明は、一実施例として16ビッ
トパラレルの構成を説明したが、これを拡張して2n
(n=16,32……)ビットとすることは、当業者で
あれば上記の説明及び現在の技術水準から容易に実施し
得るものである。
【0103】なお、図1に示す実施例の16ビットパラ
レルのHEC検査回路は、16ビットパラレルのHEC
生成回路として用いることも可能である。この場合に
は、図1におけるヘッダ検出回路6,7は不要となる。
HEC生成回路としての動作は次のようになる。
【0104】まず,データ入力バスの上位8ビットにヘ
ッダの1バイト目がある場合は、図13を見ればわかる
ように、ヘッダの1バイト目から4バイト目までを入力
させれば、3サイクル目には信号線bから余り(H1,
H2,H3,H4,00000000)modG
(X)、すなわちHECを得ることができる。また、デ
ータ入力バスの下位8ビットにヘッダの1バイト目があ
る場合は、図14に示すように、ヘッダの1バイト目か
ら4バイト目までを入力させれば、4サイクル目には信
号線fから余り(H1,H2,H3,H4,00000
000)modG(X)、すなわちHECを得ることが
できる。
【0105】
【発明の効果】以上説明したように、本発明の誤り訂正
符号の符号器又は復号器によれば、バイト単位のデータ
が集まってできている符号化された、又は符号化すべき
一連のデータの1バイト目が、2nビットパラレルのデ
ータバスの上位nビットと下位nビットのいずれかに対
して出力されても、このデータを復号化又は符号化する
ことが可能となる。
【図面の簡単な説明】
【図1】請求項1又は2記載の発明の一実施例に係わる
誤り訂正符号の復号器の構成を示す図。
【図2】ヘッダの1バイト目がデータ入力バスの下位8
ビットに入力する場合における、図1に示す16ビット
パラレルのHEC検査回路の動作を示す図。
【図3】図1に示す16ビットパラレルのHEC検査回
路に1ビット誤り訂正回路を組み合わせた回路の構成を
示す図。
【図4】図3に示す1バイト遅延回路の構成を示す図。
【図5】請求項5記載の発明の一実施例に係わる誤り訂
正符号の復号器の構成を示す図。
【図6】シリアルのHEC生成回路として用いることが
可能な除算回路の構成を示す図。
【図7】シリアルのHEC検査回路として用いることが
可能な除算回路の構成を示す図。
【図8】8ビットパラレルのHEC生成回路の構成を示
す図である。
【図9】8ビットパラレルの入力の除算パターン生成回
路の構成を示す図。
【図10】8ビットパラレルのHEC検査回路の構成を
示す図。
【図11】8ビットパラレルのHEC検査回路の動作を
示す図。
【図12】従来の16ビットパラレルのHEC検査回路
の構成を示す図。
【図13】ヘッダの1バイト目がデータ入力バスの上位
8ビットに入力する場合における、従来の16ビットパ
ラレルのHEC検査回路の動作を示す図。
【図14】ヘッダの1バイト目がデータ入力バスの下位
8ビットに入力する場合における、従来の16ビットパ
ラレルのHEC検査回路の動作を示す図。
【符号の説明】
1,16,26 スイッチ 2,12,25,30 シフトレジスタ 3,4,28,29 除算パターン生成回路 5,10,22,27 排他的論理和ゲート 6,7 ヘッダ検出回路 8,9,21,23,24 信号線 11 データ入力バス 13,18 データバス 14 HEC検査回路 15,19、31 セレクタ 17 誤り訂正パターン生成回路 20 遅延回路

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 受信データを2nビットずつ入力するデ
    ータ入力バスと、 前記データ入力バスの上位nビットへの受信データの入
    力をオン/オフする第1のスイッチと、 前記データ入力バスの下位nビットへの受信データの入
    力をオン/オフする第2のスイッチと、 前記データ入力バスの上位nビットに入力した受信デー
    タを一方の入力として排他的論理和をとる第1のゲート
    回路と、 前記第1のゲート回路の出力を上位nビットの入力と
    し、前記データ入力バスの下位nビットの出力を下位n
    ビットの入力とする2nビットパラレルのシフトレジス
    タと、 前記シフトレジスタからの2nビットの出力を入力と
    し、除算パターンを生成し、生成したnビットの除算パ
    ターン出力を前記第1のゲート回路の他方の入力に与え
    る第1の組み合わせ回路と、 前記シフトレジスタの上位nビットの出力を入力とし、
    nビットの除算パターンを生成出力する第2の組み合わ
    せ回路と、 前記第2の組み合わせ回路の出力と前記シフトレジスタ
    の下位nビットの出力との排他的論理和をとる第2のゲ
    ート回路と、 前記シフトレジスタの上位nビットの出力を入力とし
    て、その入力が誤り訂正符号が受信されたことを示すパ
    ターンであることを検出する第1の検出回路と、 前記第2のゲート回路の出力を入力とし、その入力が誤
    り訂正符号が受信されたことを示すパターンであること
    を検出する第2の検出回路とを具備することを特徴とす
    る誤り訂正符号の復号器。
  2. 【請求項2】 受信データの上位nビットとnビットの
    除算パターンとの排他的論理和を上位nビットの入力と
    し、受信データの下位nビットを下位nビットの入力と
    する2nビットパラレルのシフトレジスタを備え、16
    ビットパラレルで受信データを復号化する誤り訂正符号
    の復号器において、 前記シフトレジスタの上位nビットの出力を入力とし、
    nビットの除算パターンを生成出力する組み合わせ回路
    と、 前記組み合わせ回路の出力と前記シフトレジスタの下位
    nビットの出力との排他的論理和をとるゲート回路と、 前記シフトレジスタの上位nビットの出力を入力とし
    て、その入力が誤り訂正符号が受信されたことを示すパ
    ターンであることを検出する第1の検出回路と、 前記ゲート回路の出力を入力とし、その入力が誤り訂正
    符号が受信されたことを示すパターンであることを検出
    する第2の検出回路とを具備することを特徴とする誤り
    訂正符号の復号器。
  3. 【請求項3】 前記シフトレジスタの上位nビットと前
    記第2のゲート回路又は前記ゲート回路の出力を択一的
    に選択する第1のセレクタと、 前記第1のセレクタにより選択された出力をスイッチン
    グ制御するスイッチと、 前記スイッチを介して前記第1のセレクタの出力を受け
    て、2nビットの誤り訂正パターンを生成する生成回路
    と、 前記生成回路により生成された誤り訂正パターンを遅延
    させる遅延回路と、 前記遅延回路により遅延された誤り訂正パターン又は前
    記生成回路により生成された誤り訂正パターンを選択す
    る第2のセレクタと、 受信データを2nビットパラレルにシフトして格納する
    第2のシフトレジスタと、 前記第2のシフトレジスタの出力と前記第2のセレクタ
    の出力との排他的論理和をとるゲート回路とからなる受
    信データの1ビット誤り訂正回路を具備することを特徴
    とする請求項1又は2記載の誤り訂正符号の復号器。
  4. 【請求項4】 前記遅延回路は、nビットパラレルのシ
    フトレジスタを備えてなることを特徴とする請求項3記
    載の誤り訂正符号の復号器。
  5. 【請求項5】 受信データを16ビットずつ入力するデ
    ータ入力バスと、 前記データ入力バスの上位nビットへの受信データの入
    力をオン/オフする第1のスイッチと、 前記データ入力バスの下位nビットへの受信データの入
    力をオン/オフする第2のスイッチと、 前記データ入力バスの上位nビットに入力した受信デー
    タを一方の入力として排他的論理和をとるゲート回路
    と、 前記ゲート回路の出力を上位nビットの入力とし、前記
    データ入力バスの下位nビットの出力を下位nビットの
    入力とし、nビットの除算パターンを生成出力する第1
    の組み合わせ回路と、 前記ゲート回路の出力を入力とし、nビットの除算パタ
    ーンを生成出力する第2の組み合わせ回路と、 前記第1の組み合わせ回路の出力を入力とし、出力を前
    記ゲート回路の他方の入力に与える8ビットパラレルの
    シフトレジスタと、 前記シフトレジスタの出力又は前記第2の組み合わせ回
    路の出力のいずれか一方を選択して出力する選択回路と
    を具備することを特徴とする誤り訂正符号の符号器。
JP06430395A 1995-03-23 1995-03-23 誤り訂正符号の符号器及び復号器 Expired - Fee Related JP3454962B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP06430395A JP3454962B2 (ja) 1995-03-23 1995-03-23 誤り訂正符号の符号器及び復号器
US08/619,332 US5694405A (en) 1995-03-23 1996-03-21 Encoder and decoder of an error correcting code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06430395A JP3454962B2 (ja) 1995-03-23 1995-03-23 誤り訂正符号の符号器及び復号器

Publications (2)

Publication Number Publication Date
JPH08265173A JPH08265173A (ja) 1996-10-11
JP3454962B2 true JP3454962B2 (ja) 2003-10-06

Family

ID=13254355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06430395A Expired - Fee Related JP3454962B2 (ja) 1995-03-23 1995-03-23 誤り訂正符号の符号器及び復号器

Country Status (2)

Country Link
US (1) US5694405A (ja)
JP (1) JP3454962B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0949780B1 (en) * 1998-04-08 2006-03-01 Nec Corporation A frame format and method and apparatus for processing a frame
RU2273092C2 (ru) * 1998-04-29 2006-03-27 Конинклейке Филипс Электроникс Н.В. Способ, устройство и носитель для кодирования состоящей из многих слов информации
US6460157B1 (en) * 1999-11-30 2002-10-01 International Business Machines Corporation Method system and program products for error correction code conversion
US20020144208A1 (en) * 2001-03-30 2002-10-03 International Business Machines Corporation Systems and methods for enabling computation of CRC' s N-bit at a time
US8286059B1 (en) * 2007-01-08 2012-10-09 Marvell International Ltd. Word-serial cyclic code encoder
CN101493804B (zh) * 2008-01-24 2011-07-20 国际商业机器公司 数据总线系统及其编解码器和编解码方法
US8644434B2 (en) * 2011-09-22 2014-02-04 Lsi Corporation Apparatus and methods for performing sequence detection
JP6861611B2 (ja) * 2017-11-07 2021-04-21 ルネサスエレクトロニクス株式会社 半導体装置及びそれを備えた半導体システム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04211547A (ja) * 1990-03-20 1992-08-03 Fujitsu Ltd 同期回路
JP2952051B2 (ja) * 1991-01-08 1999-09-20 株式会社東芝 Atmにおけるセル同期演算回路
CA2059396C (en) * 1991-01-16 1996-10-22 Hiroshi Yamashita Compact device for checking a header error in asynchronous transfer mode cells
JP2655547B2 (ja) * 1991-03-13 1997-09-24 富士通株式会社 Crc演算方法及びatm交換方式におけるhec同期装置
JPH04334234A (ja) * 1991-05-10 1992-11-20 Nec Corp 多重処理形atmセル誤り訂正回路
EP0582749B1 (en) * 1992-07-14 1997-03-05 ALCATEL BELL Naamloze Vennootschap Error detection and correction device
ES2068105B1 (es) * 1992-11-30 1995-11-01 Alcatel Standard Electrica Metodo y dispositivo de deteccion y correccion de errores en cabeceras de celulas atm.

Also Published As

Publication number Publication date
US5694405A (en) 1997-12-02
JPH08265173A (ja) 1996-10-11

Similar Documents

Publication Publication Date Title
JP3549788B2 (ja) 多段符号化方法、多段復号方法、多段符号化装置、多段復号装置およびこれらを用いた情報伝送システム
US5040179A (en) High data rate BCH encoder
EP0114938B1 (en) On-the-fly multibyte error correction
US5440570A (en) Real-time binary BCH decoder
AU669746B2 (en) Method and device for detection and correction of errors in ATM cell headers
JPH04284753A (ja) Crc演算方法及びatm交換方式におけるhec同期装置
JP4125500B2 (ja) パリティビットが逆順に付加されたcrcコードのエラー検出装置及びその方法
US5748652A (en) Apparatus for detecting and correcting cyclic redundancy check errors
JPH10107650A (ja) 誤り検出回路および誤り訂正回路
US4592054A (en) Decoder with code error correcting function
JPH0728227B2 (ja) Bch符号の復号装置
JP3454962B2 (ja) 誤り訂正符号の符号器及び復号器
JP4071879B2 (ja) 誤り検出器、この誤り検出器を備えた通信システム、および誤り検出方法
US5140595A (en) Burst mode error detection and definition
JP2000004169A (ja) Crc演算方法及びcrc演算回路
JPH07170200A (ja) 巡回冗長検査同期装置
US5408476A (en) One bit error correction method having actual data reproduction function
Babaie et al. Double bits error correction using CRC method
JP2003078421A (ja) 符号系列の先頭位置検出方法とその装置、それを用いた復号方法とその装置
CN110741562A (zh) 向量信令码信道的流水线式前向纠错
JPS6217256B2 (ja)
KR100212829B1 (ko) 리드 솔로몬 복호기의 신드롬 계산장치
JP3268926B2 (ja) 誤り訂正回路
KR100192792B1 (ko) 리드 솔로몬 복호기의 다항식 평가 장치
JP2797569B2 (ja) ユークリッドの互除回路

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees