Nothing Special   »   [go: up one dir, main page]

JP2952051B2 - Atmにおけるセル同期演算回路 - Google Patents

Atmにおけるセル同期演算回路

Info

Publication number
JP2952051B2
JP2952051B2 JP76291A JP76291A JP2952051B2 JP 2952051 B2 JP2952051 B2 JP 2952051B2 JP 76291 A JP76291 A JP 76291A JP 76291 A JP76291 A JP 76291A JP 2952051 B2 JP2952051 B2 JP 2952051B2
Authority
JP
Japan
Prior art keywords
signal
cell
circuit
bit
header
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 - Lifetime
Application number
JP76291A
Other languages
English (en)
Other versions
JPH04363927A (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 JP76291A priority Critical patent/JP2952051B2/ja
Publication of JPH04363927A publication Critical patent/JPH04363927A/ja
Application granted granted Critical
Publication of JP2952051B2 publication Critical patent/JP2952051B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)
  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】
【0001】[発明の目的]
【0002】
【産業上の利用分野】本発明は、情報に何らかの冗長を
付加してセルの形にして送受信を行うATMにおける、
セル同期演算回路に関する。
【0003】
【従来の技術】近年ATM(Asynchronous
Transfer Mode)技術による広帯域通信
についての種々の検討がなされており、CCITT等で
もその方式の統一に向けた各種の議論がなされている。
ATMによる通信は、セルと呼ばれる固定長のパケット
を伝送して通信するものである。このセルを用いた通信
方式に関してCCITTにおいて規格の統一に向けた議
論がなされており、以下ではCCITTにおける勧告の
内容について述べる。
【0004】セル長は53バイトであり、そのうちヘッ
ダ部分が5バイト、ペイロード部分が48バイトであ
る。この5バイト、すなわち40ビットのセルヘッダの
うち、初めの32ビットはセルの種別やVPI(Vir
tual PathIdentifier),VCI
(Virtual Channel Identifi
er)といったあて先情報等を表すパラメータが書かれ
ている。残りの8ビットはその32ビットに対する冗長
部分であり、HEC(Header ErrorCon
trol)と呼ばれる。このHEC部分は、その以前の
32ビットに依存した値をとるという性質を利用して、
後述する様に各ノードの受信側および受信端末部におけ
るセル同期やセルヘッダの誤り訂正/検出に用いられ
る。
【0005】ここで、上記セルヘッダにおけるVPIや
VCIは送信端末から受信端末まで同じ値をとるとは限
らず、途中のノードでしばしば書き換えられる。従っ
て、HEC部分は各送信装置および各交換ノードの出力
装置側で、該当する値を計算により求めて付加する必要
がある。
【0006】HEC部分の生成法は、巡回符号の特性に
基づいたものである。まずセルヘッダの5バイト目にあ
たるHEC8ビットをすべて0とし、セルヘッダ40ビ
ットを多項式表現として、M(X)で表す。例えばセル
ヘッダが0,1の2進数表現で(00001001 0
0000010 00100001 00000110
00000000)と表されたとすると、M(X)は M(X)=X35+X32+X25+X21+X16+X10+X9 (1) となる。ここで生成多項式をG(X)とし、上記M
(X)をG(X)で割った剰余をR(X)とすると、例
えば上記のM(X)については、 R(X)=M(X)modG(X) =X7 +X6 +X4 +X3 +1 (2) G(X)=X8 +X2 +X+1 となる。このR(X)を0,1の2進表示になおすと
(1,1,0,1,1,0,0,1)であり、これに
(0,1,0,1,0,1,0,1)というあらかじめ
定まった固定パターンをビット毎の演算でモジュロ2で
足し算したものをHEC部分の値として、ヘッダの5バ
イト目に挿入する。すなわち、上記の例でHEC部分の
値は (1,1,0,1,1,0,0,0) (+)(0,1,0,1,0,1,0,1) =(1,0,0,0,1,1,0,1) (3) となり、従ってセルヘッダは2進表示で(000010
01 0000001000100001 00000
110 10001101)となる。ただし、(+)は
モジュロ2でのビット毎の加算を表す。
【0007】ところでATM技術を用いた通信において
は送信側と受信側での同期がとれていないため、セルが
いつ到着するかが分からない。従って何らかの方法でセ
ルの先頭を見つける必要がある。また一旦セル同期をと
ることができたとしても、ビットずれ等の事情により先
頭の位置の位相が変わったりする可能性があるため、引
き続き監視しておく必要がある。CCITTの勧告によ
れば、上記のHEC部分を用いた方法によりセル同期を
とる方法が示されている。
【0008】まず、上述のようにして生成されたセルヘ
ッダは次のような性質を持っている。上述のアルゴリズ
ムにより生成されたセルヘッダ40ビットを先程の様に
多項式表現したものをH(X)とする。いまH(X)か
ら2進表示で(0,1,0,1,0,1,0,1)を多
項式表現したものを引く。その結果C(X)は C(X)=H(X)−(X6 +X4 +X2 +1) =M(X)+R(X) (4) であり、実はC(X)はG(X)を生成多項式とする短
縮巡回符号の符号語になるので、C(X)はG(X)で
割り切れる。
【0009】このことを利用してセル同期をとる。すな
わちここがセル同期であると思われるところの40ビッ
トに対してまず34,36,38,40ビット目を反転
し、その後その40ビットをG(X)で割って割り切れ
たならば、そこでセルのヘッダ部分であると判断し、セ
ルヘッダの先頭をセルの先頭であるとみなす。
【0010】ところで、セル同期にはHUNT状態、P
RESYNC状態、SYNCH状態の3状態があり、こ
れらについて説明する。
【0011】まずセル同期が全くとれていない状態をH
UNT状態という。このときにはビット毎にセルの先頭
位置を探索する。すなわち、任意の40ビットに対して
上述のビット反転を行った後、G(X)による除算を行
い、余りが0になるところを探す。
【0012】このようにして一度正しく割りきれる部分
が見つかると、そこを仮のセルヘッダとみなして、PR
ESYNC状態になる。PRESYNC状態では仮定さ
れるヘッダ部分は決まっているので、1セル毎にそのヘ
ッダ部分の除算を行う。そしてもしDELTA回連続し
て正しく割り切れれば、そこがほぼ間違いなくセルヘッ
ダ部分とみなして、SYNCH状態になる。しかしなが
らそれまでにもし1回でも誤りのあるセルヘッダが得ら
れると、再びHUNT状態に戻る。
【0013】SYNCH状態でもセルヘッダ部分の計算
方法は全く同じである。ただしこの状態の場合には、セ
ルヘッダに対する除算がALPHA回連続して割りきれ
なかった場合にHUNT状態に戻る。それ以外ではこの
状態を続ける。
【0014】上述したようにセルヘッダが正しいとき、
それを多項式表現でH(X)とすると対応するC(X)
は符号語である。この符号は、G(X)を生成多項式と
しているため、最小ハミング距離が4である。すなわち
各符号語は他の符号語と少なくとも4ビットの0,1の
違いを有している。なぜならばG(X)は、 G(X)=X8 +X2 +X+1 =(X+1)(X7 +X6 +X5 +X4 +X3 +X2 +1) (5) の様に、X+1と7次の原始多項式の積に因数分解され
るからである。従って、これを用いるとセルヘッダの1
ビット誤り訂正/2ビット誤り検出、もしくは3ビット
の誤り検出が可能である。
【0015】SYNCH状態においては、セル同期に用
いるものと同一の演算によって1セル毎に検索をし、割
り切れるかの判定に加えて、割りきれなかった場合には
ヘッダに誤りがあるとみなして、誤りの訂正あるいは検
出を行う。その方法は誤り訂正モード、誤り検出モード
のいずれかのモード指定による。
【0016】誤り訂正モードでは、誤ったヘッダと判断
された場合、そのときのヘッダの誤りが1ビットならば
それを訂正する。もし2ビット以上の誤りであるとわか
ればそのセルを廃棄する。それに対し誤り検出モードで
は、セルヘッダが正しくないことが分かった時点で、そ
のセルを廃棄する。
【0017】PRESYNC状態からSYNCH状態に
移ったときは誤り訂正モードから始まる。このモードで
正しいヘッダが得られている限りはそのままのモードに
とどまる。もし、誤ったヘッダが得られたら、誤ったビ
ット数に応じてヘッダの訂正あるいは検出を行った後、
誤り検出モードに遷移する。誤り検出モードでは、もし
一度正しいセルヘッダが得られれば誤り訂正モードに遷
移する。ヘッダに誤りがあると、それを検出したとして
表示する。
【0018】次に、セルの伝送形態については、外部フ
レームのあるものとないものがあり、外部フレームのな
いものはセルベース、外部フレーム付きのものはSDH
(Synchronous Digital Hier
achy)ベースと呼ばれる。SDHベースの場合はそ
のフレームからの情報により、バイト周期を得ることが
できる。すなわち受信側において、入力されるデータ系
列を8ビット毎に区切ったとすると、セルの先頭が8ビ
ット中の何ビット目にあるかという情報を得ることがで
きる。従ってこの場合、上記のセル同期もバイト毎にそ
の特定ビットを開始点として検査すればよいことにな
る。
【0019】またSDHベースの場合には、送信側にお
いて48バイトのペイロード部分のみに対してスクラン
ブルをかける。これは故意にあるいは偶然に情報部分に
0または1が連続して続いたとすると、ビット同期をと
るのが非常に困難となるためである。これに対して受信
側ではPRESYNC状態およびSYNCH状態におい
て、セルヘッダとペイロード部分との切り分けができる
ので、48バイトのペイロード部分のみに対してディス
クランブルをかける。これは自己同期式のスクランブラ
・ディスクランブラであり、生成多項式は F(X)=X43+1 (6) である。このスクランブルおよびディスクランブルに用
いるデータとしてヘッダ部分を含むか否かは明文化され
ていないが、通常はヘッダ部分を除いて行うと解釈され
る。HUNT状態ではペイロード部分が明確でないた
め、このディスクランブラを行わない。なお、セルベー
スの場合には別のスクランブル方式が提案されている。
【0020】ところで以上に述べてきたものが、規格統
一のためのCCITTの勧告である。このCCITTの
勧告に対する具体的な回路の実現方法として、セル同期
回路の提案としては例えば豊島、龍野、“ヘッダ誤り制
御によるセル同期回路構成法の検討”(信学技報CS8
9−70)、龍野、戸倉、“ヘッダ誤り制御によるセル
同期方式の一検討”(信学技報DSP89−51)など
がある。これらの提案によると、セルベースにおいては
少なくとも1ビット毎に、またSDHベースでパラレル
入力の場合には1バイト毎にセルの同期検索ができるこ
とが示されている。またこのセル同期機能とヘッダ誤り
制御機能をあわせもつことが可能であることが述べられ
ているが、その具体的な回路としての実現法に関しては
述べられていない。
【0021】実際にHUNT状態でセル同期をとる際に
は、入力されたデータのヘッダ長に相当する5バイト部
分を調べて、そこの5バイト目がセルの先頭であるか検
索するが、このとき、その検査部分以前に入力された4
3ビット分のデータを常に蓄積しておく必要がある。こ
れは、その5バイト部分がセルの先頭であるとみなされ
た場合、前述したようにその直後からPRESYNC状
態となって、ペイロード部分のディスクランブルにヘッ
ダ部分を除いた43ビット前からのデータが用いられる
ためである。また、その検査した5バイトがセルの先頭
でないと判断された場合には、シフトして次の5バイト
部分の検査に移るが、このときシフトされて検査に用い
られなくなったデータは、新たな43ビットデータの一
部となる。従って、検査されている5バイト分のデータ
も検査の間蓄積しておく必要がある。すなわちセル同期
とペイロードのディスクランブルの機能を実現するため
には、合計83ビット分のデータ蓄積部が必要となる。
【0022】次に、HUNT状態でセル同期をとる際
に、1ビットあるいは1バイト毎に検索をしようとする
ときには、毎回40ビットをあらためて検査回路に入力
するのは処理のオーバヘッドが大きくなり非常に時間が
かかってしまう。従ってある40ビットの検査から次の
40ビットの検査に移る場合には、新たな1ビットある
いは1バイトを入力すると同時に、以前の先頭部分の1
ビットあるいは1バイトを用いて、検査回路中のそれら
の古いデータによる値を打ち消すような構成をとること
によって対処する。そうすると、新たに検査するときに
打ち消すための5バイト前の1ビットあるいは1バイト
のデータを蓄積しておく必要がある。
【0023】さらに、SYNCH状態で誤り訂正モード
の時に、入力されたセルヘッダに対しそのヘッダ誤りの
有無をチェックし、1ビット誤りの場合には訂正パター
ンを生成し、ヘッダ部分に排他的論理和で足し込むのが
一般的であり、このためヘッダをヘッダ誤り検査回路に
入力してからその訂正パターンが出力されるまで、セル
ヘッダを蓄積しておく回路が必要となる。
【0024】以上のような蓄積回路の必要性に関して、
上記の資料では述べられていなかったが、従来技術とし
てはこの場合、これらの回路が別々に設けられるものと
解釈できる。従ってこれらの蓄積回路のため、回路規模
が大きくなるという問題があった。
【0025】また、送信側の回路におけるHEC生成法
に関しては、田中、柳、高瀬、古谷、高崎、“並列型H
EC計算回路の検討”(1990年信学全大B−57
5)により、シリアル入力、パラレル入力の両方に対し
て、除算回路を用いた生成法が図6に示されている。こ
の従来技術は、実施例にも比較のために用いている。し
かしながら、この従来方法においては除算回路のみを用
いており、セルヘッダ40ビットにおいて最後の8ビッ
トをあらかじめすべて1に設定しておかねばならず、ま
た40ビットすべてを入力した後にHEC部分が生成さ
れるため、最後のデータが入力されてから生成されたH
EC部分が出てくるまでに8ビット分の遅延が生じてし
まい、時間が余計にかかるだけでなく、8ビット分の遅
延回路が増加してしまうという問題があった。
【0026】
【発明が解決しようとする課題】以上説明したように、
CCITTに対応した従来の送信側のHEC生成回路に
おいては、除算回路のみを用いたために8ビット分の入
出力の遅延とその分の遅延回路がついてしまうという問
題があった。
【0027】また、受信側においては、セル同期機能と
ディスクランブル機能を同時に実現するためのセルヘッ
ダ部分のデータ蓄積回路と、ヘッダ誤り訂正を行うため
にその訂正パターンを生成する間必要な訂正されるべき
セルヘッダ部の蓄積回路と、セル同期のための検査回路
への入力データをシリアル入力に対して少なくとも1ビ
ット毎、8ビットパラレル入力に対しては少なくとも1
バイト毎に更新する際に、検査回路より取り除かれるべ
き最古の1ビット以上あるいは1バイト以上のデータを
蓄えておく回路が必要になると考えられるが、その実現
方法は確立されておらず、セル同期回路および誤り制御
回路の実現法として、これらの蓄積回路を考慮したもの
はなく、従ってこれらの回路を別々に設けることが前提
とされていた。
【0028】本発明は以上の点を鑑みてなされたもの
で、その目的は、入力したセルヘッダに対し、遅延を最
小にすることおよび回路規模の縮小化をはかることので
きるATM送信側のHEC生成回路を提供することであ
る。
【0029】また本発明の他の目的は、セルの同期機能
およびディスクランブル機能の達成において、データ蓄
積部の回路規模を小さくすることのできるATM受信回
路系を提供することである。
【0030】[発明の構成]
【0031】
【課題を解決するための手段】本発明の特徴は、ATM
送信回路系において、少なくとも、入力セルヘッダに対
し第1の多項式を用いた乗算と第2の多項式を用いた除
算とを、同時に行い、該除算回路の剰余部分を用いてセ
ルヘッダに対する冗長ビットを生成するHEC生成回路
を有するセルヘッダ生成回路を具備することである。
【0032】本発明の他の特徴は、ATM受信回路系に
おいて、セル同期のために検査されるセルのデータを蓄
えておく機能と、前記セル同期のための検査回路に入力
されるデータの更新の際に該検査回路より取り除くべき
データを蓄えておく機能と、該冗長ビットを用いてセル
の全体あるいは一部分の誤り訂正を行う際に、該訂正デ
ータの訂正パターンが生成されるまで、該冗長ビットに
よって保護されたセルのデータを蓄えておく機能とを、
同時に有するシフトレジスタ回路を具備することであ
る。
【0033】
【作用】本発明に従うATMの送信側においては、セル
ヘッダに対する冗長ビットを生成する際に、元のデータ
をある多項式で乗算したものの出力を直接該当する除算
回路の多項式で割った剰余を用いることによって、元の
データを入力した直後に冗長ビットを発生させることが
可能となり、これをパケットのセルヘッダに直ちに付加
することにより、データ信号が入力してから出力するま
での回路内の遅延を最小に抑えることができる。またそ
れにより遅延のある場合に必要となる遅延回路が不要と
なり、回路規模の削減ができる。
【0034】また本発明に従うATMの受信側において
は、セルのペイロード部分に対してかけられるディスク
ランブルとセル同期を同時に実現するために必要となる
セルヘッダ部分のデータ蓄積機能と、セル同期のための
検査回路への入力データをシリアル入力の場合は少なく
とも1ビット毎に、また8ビットパラレル入力の場合は
少なくとも1バイト毎に更新する際に、上記検査回路よ
り取り除くべき1ビット以上あるいは1バイト以上のデ
ータを蓄えておく機能と、冗長ビットを用いてセルの全
体あるいは一部分に誤りがないか検査し、誤りが見つか
った場合には誤り訂正を行う際に、該訂正データを上記
誤り訂正パターンが生成されるまで蓄えておく機能とを
同時に有するシフトレジスタ回路を用いることにより、
回路規模を縮小することができる。
【0035】
【実施例】以下の実施例を図面に従って説明する。
【0036】図1は本発明に従うATM送信回路系にお
けるセル生成演算回路の一実施例を示したブロック図で
ある。
【0037】入力信号としてはセルクロック101と、
セル長データ信号102があり、セルクロック101は
セルデータのセルの先頭と何らかの関係を保って入力さ
れる。例えばセル長データ信号102の先頭ビットが入
力されると同時にセルクロック101が立ち上がり、決
まったクロック数の間それを保持し、その後立ち下がる
等の入力パターンとなっている。またここで入力される
セル長データ信号102とは、この回路の前段にてヘッ
ダ部分の書き換え、あるいは書き込みがあり、従ってセ
ルの長さは保たれているものの、そのヘッダの5バイト
目は正しいHECの値をとっているとは限らないような
入力信号を想定している。
【0038】セルカウンタ10は、セルクロック101
の立ち上がりあるいは立ち下がりを検出してリセットす
る。またちょうど1セル長分をカウントすると自動的に
元に戻るようになっている。従って通常時はカウンタ1
0からの出力値を見れば現在セルのどの部分が入力ある
いは出力されているかが分かるようになっている。それ
でカウンタ値の出力信号103を受け取った制御回路1
1は、これらの値をみて適宜必要な制御信号を出力す
る。またセルクロック101は一度入力しておけばタイ
ミングが変わらない限り以前のタイミングを保持するの
で必ずしも毎回入力する必要はない。さらに前段の回路
にて何らかの異常があり、データ長が一時的に変化して
しまうこと等があったとしても、異常状態から回復した
後の最初の正しいセルクロック信号の入力により、正し
い状態に復元できる。
【0039】HEC生成回路12では、制御信号104
に従ってセルデータ入力からそのヘッダ部分の先頭4バ
イトをとりだして5バイト目のHECを生成する。従っ
てHEC生成回路12からの出力信号109は、規格通
りのセルヘッダ5バイトとペイロード48バイトをもつ
完全なセルの形をとった信号になっている。この回路の
詳細については後述する。
【0040】セレクタ13と、シフトレジスタ回路
(A)15と、シフトレジスタ回路(B)16とはあわ
せて前述した数式(6)に示したF(X)による自己同
期型スクランブルを行う。後述する他のスクランブルと
区別するため、このスクランブルをスクランブル(P)
と呼ぶことにする。シフトレジスタ回路(A)15は、
43ビット長のレジスタを有しており、セレクタ13か
らの出力信号110がそのままレジスタに入力される。
シフトレジスタ回路(B)16は40ビット長のレジス
タを有しており、シフトレジスタ回路(A)15からの
出力信号106がそのままレジスタに入力される。
【0041】HEC生成回路12から出力されたセルデ
ータ信号109は、3つに分かれ、1つ目はそのままセ
レクタ13へ、2つ目はシフトレジスタ回路(A)15
からの出力信号106と排他的論理和をとられ、信号1
08としてセレクタ13に達し、3つ目はシフトレジス
タ回路(B)16からの出力信号112と排他的論理和
をとられ、信号107としてセレクタ13に達する。セ
レクタ13では、制御回路11からの信号105によっ
て、ヘッダ部分が通過するときは信号109を、ヘッダ
通過後43ビットクロック分は信号107を、それ以外
は信号108をそれぞれ選択して出力信号110として
出力する。
【0042】この選択動作の詳細を図2(A),図2
(B),図2(C)に示す。前述したようにF(X)に
よるスクランブル(P)はセルのペイロード部分のみに
かけるものであり、従って信号109にセルの先頭ビッ
トが到着すると、図2(A)のようにセレクタが信号1
09を出力110に接続する。すなわち何も操作せずに
通す。このヘッダ部分はシフトレジスタ回路(A)15
に順に入力されシフトする。
【0043】40ビットのセルヘッダがセレクタ13を
通過すると、信号109は最初のペイロードビットにな
る。従ってここはスクランブル(P)をかける必要があ
り、F(X)によるスクランブルでは43ビット前のス
クランブル(P)されたペイロードビットの排他的論理
和をとる必要があるが、このときシフトレジスタ回路
(A)15には40ビット分のヘッダがあり、これはス
クランブル(P)のデータとしては使用されない。必要
な43ビット前のペイロード信号はシフトレジスタ回路
(B)16から出力される信号112のビットである。
従って、図2(B)に示される様に信号112と信号1
09との排他的論理和をとった信号107が選択されて
信号110として出力される。このようにして各シフト
レジスタ回路の中身は順にシフトしていくが、セルヘッ
ダ40ビットがこの両シフトレジスタ回路内にある間は
常に両シフトレジスタ回路内のペイロードビット19の
合計が43になるため、その間ずっと信号107が選択
される。
【0044】セルヘッダ40ビットがすべてシフトレジ
スタ回路(B)16にはいると、シフトレジスタ回路
(A)15内の43ビットはすべてペイロード部分のス
クランブルされたデータとなるので、それ以降はシフト
レジスタ回路(A)15からの出力信号106と信号1
09との排他的論理和をとった信号108が新たにスク
ランブルされたデータとなり、従ってこの信号が選択さ
れて信号110として出力される。これは信号109と
して次のセルの先頭部分の信号が到着するまで続く。以
上のことが順に繰り返される。
【0045】図3にペイロードのスクランブル(P)に
関する別の実施例を示す。109Aは図2における信号
109と同様に完全な形をしたセル信号を示す。15A
は43ビット長のシフトレジスタ回路を示し、イネーブ
ル端子15Bがついていて、ここに入力される信号の
H,Lによって、外部からの信号を入力してシフトする
か、あるいは現在のデータを保持するかが決められる。
シフトレジスタ回路15Aの出力112A信号は、信号
109Aとの排他的論理和をとって、信号108Aとし
てセレクタ13Aに達する。セレクタ13Aへの制御信
号である信号105Aの値によって、信号109Aと信
号108Aのいずれかを選択して信号110Aとして出
力する。信号110Aは43ビットシフトレジスタ回路
15Aへの入力信号となっている。信号105Aはまた
シフトレジスタ回路15Aのイネーブル端子への制御信
号も兼ねている。
【0046】信号109Aとしてセルヘッダ部分が通過
するとき、セレクタ13Aは、信号109Aを選択して
信号110Aへ出力する。このときシフトレジスタ回路
15Aにはイネーブル信号が入っていて、レジスタに入
力される信号は無視され、レジスタの内容が保持され
る。信号109Aとしてセルのペイロード部分が通過す
るとき、セレクタ13Aは、信号108Aを選択して信
号110Aへ出力する。このときシフトレジスタ回路1
5Aにはイネーブル信号が入っていず、信号が順にレジ
スタに入力され、信号108AはF(X)によるスクラ
ンブル(P)をかけた信号となっている。
【0047】図3においてイネーブル端子15Bを除い
たものは、従来技術の項で述べた、スクランブル(P)
用のデータとしてヘッダを含んだものとなる。すなわち
43ビットシフトレジスタ回路15Aには正しいHEC
部分の付加されたセルヘッダとスクランブル(P)され
たペイロードが順に入力され、このデータを用いてペイ
ロード部分がスクランブルされる。
【0048】図1に戻って、110の出力信号は、その
まま出力するほかに、セルスクランブル回路14を通っ
て出力信号111として出すこともできる。セルスクラ
ンブル回路14は、セルの全体に対してかける自己同期
型のスクランブラである。その目的とするところはこの
信号を光信号として伝送する場合、受信側で電気信号に
変換するときにHまたはLが長く連続することにより、
ビットクロックの抽出ができなくなることを防止するこ
とである。このスクランブルを前述のペイロード部分の
みのスクランブルと区別してスクランブル(Q)と呼ぶ
ことにする。このスクランブル(Q)回路の詳細な構成
例を図4および図5に示す。なお、以後の説明中に述べ
られるDフリップフロップにおいて、これらを区別する
ために図面上左から順に1番目、2番目、3番目、の様
に表記することとする。
【0049】図4は、上述の目的を実現するための最も
構成の簡単な方法である。20はDフリップフロップを
示し、この例では7個順に並んでいる。この7個のDフ
リップフロップ20の中身はそれぞれ出力信号111の
1から7ビット遅れの値である。113は上記の7個の
フリップフロップの中身がすべてHまたはLであるとき
のみHとなる様な信号を示し、この信号113がHであ
るということはすなわち最新7ビットの信号111の出
力がLまたはHの連続であったことを示している。11
0はペイロード部分のみスクランブルされたセルデータ
を示し、これは信号113との排他的論理和をとられた
のち、信号111として外部に出力される。すなわちこ
の図4において信号110と信号111は、通常は信号
110はそのまま信号111として出力されるが、信号
111に7ビット連続したHまたはLの信号があると、
その次の信号111は信号110の反転となる様な関係
となっている。
【0050】図5はスクランブル(Q)の多項式として
以下のE1(X)を使用する場合を例として示してあ
る。
【0051】 E1(X)=X7 +X+1 (7) Dフリップフロップ20は7個あり、図4と同様、中身
はそれぞれ出力信号111の1から7ビット遅れの値で
ある。信号114はこの7個のDフリップフロップ20
の中身がすべてLのときにHとなる信号であり、また信
号115は図5中で7個ならんだDフリップフロップ2
0の両端のものの値を排他的論理和したものである。信
号110は図4と全く同一の入力信号であり、信号11
4および信号115とそれぞれ排他的論理和をとって、
信号111として出力される。
【0052】図4と図5の実施例における相違点は、信
号113が信号出力111の最新7ビットのHまたはL
の連続によってHとなったのに対し、信号114はL信
号のみの連続によってHになることである。これは、信
号110の入力パターンによってどちらの構成にするか
を考えるべきであるもので、もし信号111におけるH
信号の連続の割合がL信号の連続の割合に比べて非常に
小さい場合、信号113を用いるよりも信号114を用
いる方がかえってL信号およびH信号の連続が少なくな
る。同様に信号111にH信号が連続した場合のみに信
号110との排他的論理和をとる手法もある。
【0053】また図5においてはさらにデータのスクラ
ンブルを行って、HとLの信号がうまく混ざる様にして
いる。この実施例では7次の多項式を用いているが、最
適な多項式の次数については光信号を電気信号に変換す
るO/E変換機等の性能によって変えられるべきである
ので、ここでは特に述べない。
【0054】以上、図1から図5に関しては、シリアル
入力の場合についての説明を加えたが、この同じ構成で
パラレル入力の場合にも適用可能である。またこの回路
は前述のようにセルクロック入力によってすべての動作
が引き起こされるため、リセット信号を必要としない構
成になっている。さらに信号102は1ビットクロック
の遅延もなく、信号110あるいは信号111として出
力することが可能となっている。
【0055】図6および図7は前述したHEC生成回路
の構成例を示したものである。図6は従来の方法によ
り、除算回路のみを用いて構成した従来例、図7は本発
明の方式であり、除算回路と乗算回路とを組み合わせて
構成した例である。
【0056】すなわち、ここで、図6の従来例において
は、スイッチ22Aを介してフィードバックされ、後述
の如く排他的論理和される回路部分21が除算回路に相
当し、図7の実施例においては後述する如くにフィード
バックされ、排他的論理和される回路部分24が除算回
路に相当し、フォワードされ、排他的論理和される回路
部分25が乗算回路に相当する。
【0057】図6の従来例において201は図1におけ
る102と同様のセル長データ入力を示し、固定のセル
長であって、セルヘッダの5バイト目のHEC部分はす
べてL信号として入力されるものとする。信号201は
二手に分かれて一方は8ビット長のシフトレジスタ回路
25に入力され、他方はスイッチ23Aに向かう。
【0058】スイッチ23Aは入力された信号201の
うちセルの先頭5バイトの部分のみONとなり、それ以
外の部分ではOFFとなって、信号を通さない。スイッ
チ23AがOFFの間、8個あるDフリップフロップ2
0はリセットされている。スイッチ23AがOFFから
ONになるときに各フリップフロップ20のリセットが
はずされる。またこのとき同時にスイッチ22AもOF
FからONに変化する。
【0059】信号203はデータの入力側からみて8番
目のDフリップフロップ20の出力信号であり、スイッ
チ23Aを通過した信号との排他的論理和をとって1番
目のDフリップフロップ20にはいる。またこのとき同
時に1番目と2番目のDフリップフロップ20からの出
力が信号203との排他的論理和をとられて、それぞれ
2番目と3番目のDフリップフロップ20にはいる。こ
の動作の意味するところは、スイッチ23Aを通過した
40ビットのセルヘッダに対し、Dフリップフロップ2
0と2入力の排他的論理和から構成される回路を用いて
の除算を行うことである。その関係を式で表すと、ヘッ
ダ40ビットの先頭をa[40]、末尾をa[1]とし
たときにGF(2)上の多項式表現で、 a[40]X39+a[39]X38+・・・・+a[1] =(X8 +X2 +X+1)Q(X)+R(X) (8) R(X)=r[8]X7 +r[7]X6 +r[6]X5 +r[5]X4 +r[4]X3 +r[3]X2 +r[2]X+r[1] a[i](i=1〜8)=0 a[i](i=9〜40)=0または1 r[i](i=1〜8)=0または1 となる。信号203からは商であるQ(X)をビット列
になおした値が順に出力される。またヘッダ40ビット
がすべてスイッチ23Aを通過した直後のDフリップフ
ロップ20のi番目の中身はr[i]であり、これは上
記の式における余りR(X)の各項の値に相当する。
【0060】スイッチ23Aから40ビットのセルヘッ
ダが通過し終わると、スイッチ23Aおよびスイッチ2
2AがOFFに切り替わる。従ってその後信号203の
値はr[8]からr[1]までのデータとなる。
【0061】206は201信号が8ビットのシフトレ
ジスタによって遅延された信号を示し、また202は2
03信号の反転信号を示す。26Aはセレクタを示し、
制御信号205に従って、203,202,206の各
信号から1つを選択して、出力信号204とする。通常
は信号206が選択されているが、201がセルの40
ビット目を入力した次のタイミング、すなわちセレクタ
26Aが206からセルヘッダの32ビット目を信号2
04として出力した直後から、信号203と信号202
をこの順にビット毎に切り替えて選択し、合計8ビット
クロック分のデータを信号204として出力する。その
後再び信号206を選択する。これによって信号204
から出力されるセルデータの5バイト目は順に(r
[8],r[7](+)1,r[6],r[5](+)
1,r[4],r[3](+)1,r[2],r[1]
(+)1)となり、HEC部分が付加されたことにな
る。
【0062】図6の問題点は、入力信号を8ビットシフ
トする必要があり、このために入力した信号が出力する
までに8ビット分の遅延が生じてしまうこと、回路も余
分に必要であること、また入力信号201の5バイト目
の値はすべてLである必要があることであった。これを
解決している本発明の実施例が図7に示されている。
【0063】入力信号102は図1と同一のものであ
り、ヘッダの5バイト目の値は任意である。信号102
は2つに分かれて、一方はそのままセレクタ26への入
力信号となり、他方は8つあるDフリップフロップ20
の8番目の出力信号である信号207と排他的論理和を
とった後、スイッチ23への入力となる。
【0064】スイッチ23は入力された信号102がセ
ルの先頭4バイトの部分であるときのみONとなり、そ
れ以外の部分ではOFFとなって、信号を通さない。ス
イッチ23がOFFの間に8個あるDフリップフロップ
20はリセットされている。スイッチ23がOFFから
ONになるときに各Dフリップフロップ20のリセット
がはずれさる。
【0065】スイッチ23を通過した信号は、そのまま
1番目のDフリップフロップ20にはいる。またこのと
き同時に1番目と2番目のDフリップフロップ20から
の出力との排他的論理和をとって、それぞれ2番目と3
番目のDフリップフロップ20にはいる。この動作を意
味するところは、スイッチ23を通過した32ビットの
セルヘッダに対し、Dフリップフロップ20と2入力の
排他的論理和から構成される回路を用いて、X8 での乗
算を行った後にX8 +X2 +X+1の多項式による除算
を行うことである。先ほどの数式(8)において、a
[1]からa[8]がすべてLであることを考慮する
と、左辺は以下のように変形できる。
【0066】 a[40]X39+a[39]X38+・・・・+a[1] =a[40]X39+a[39]X38+・・・・+a[9]X8 (9) =X8 (a[40]X31+a[39]X30+・・・・+a[9]) a[i](i=1〜8)=0 a[i](i=9〜40)=0または1 従って数式(8)および数式(9)より X8 (a[40]X31+a[39]X30+・・・・+a[9]) =(X8 +X2 +X+1)Q(X)+R(X) (10) R(X)=r[8]X7 +r[7]X6 +r[6]X5 +r[5]X4 +r[4]X3 +r[3]X2 +r[2]X+r[1] a[i](i=9〜40)=0または1 r[i](i=1〜8)=0または1 となり、信号102としてヘッダの先頭32ビットを入
力した時点で、8つのDフリップフロップ20にr
[8]からr[1]の値がそれぞれ入っている状態にな
る。そこで32ビットのデータがスイッチ23を通過し
た時点でスイッチをOFFにする。
【0067】208は207信号の反転信号を示す。2
6はセレクタを示し、制御回路11からの制御信号10
4に従って、102,207,208の各信号から1つ
を選択して、109の出力信号とする。通常は信号10
2が選択されているが、102からセルの32ビット目
が入力された次のタイミング、すなわちセレクタ26が
102からセルヘッダの32ビット目を信号109とし
て出力した直後から、信号207と信号208をこの順
にビット毎に切り替えて選択し、合計8ビットクロック
分のデータを信号109として出力する。その後再び信
号102を選択する。これによって信号109から出力
されるセルデータの5バイト目は順に(r[8],r
[7](+)1,r[6],r[5](+)1,r
[4],r[3](+)1,r[2],r[1](+)
1)となり、HEC部分が付加されたことになる。
【0068】この回路において信号102は遅延なく、
信号109としてセレクタ13への信号となり、また図
6と比較してシフトレジスタ回路分の回路規模を縮小す
ることができる。さらに図7の回路への入力データとし
てa[1]からa[8]の8ビットを使用しないため、
入力信号102において該8ビットはいかなる値でも構
わない。
【0069】図8は図7における乗算・除算回路を8ビ
ットパラレルで計算する場合の回路図である。図8上で
最も上側にあるのをMSB(Most Signifi
cant Bit)と呼び、最も下側にあるのをLSB
(Least Significant Bit)と呼
ぶ。MSBは8ビットパラレル信号の最も上位であり、
セルの先頭は必ずMSBのところである。信号210と
して8ビットパラレル入力されるセルヘッダ4バイトの
各信号は1バイト前の各データを用いて排他的論理和を
とられ、その結果各フリップフロップ20にr[8]か
らr[1]のデータが結果として入る。これの偶数番目
のビットが反転されてパラレル信号211として出力さ
れる。
【0070】図9は本発明に従うATM受信回路系にお
けるセル同期演算回路の一実施例を示したブロック図で
ある。
【0071】入力信号としてはビットクロック信号30
2とスクランブルされたセルデータ信号301がありビ
ットクロック信号302は受信系回路の全パートにむか
う他、クロックモニタ回路37に入力される。通常受信
側へのデータ伝送は光で行うことを想定しており、従っ
て本回路の前段にある光電変換器においてビットクロッ
クの抽出が正しく行われていることを確認することが、
このモニタ回路37の目的とするところである。従って
ビットクロック302を分周等して、信号310として
出力し、クロックが正しく回路に入力されていることを
モニタすることができるようになっている。
【0072】入力データ信号301は、図1における信
号110と信号111からの2通りの信号入力パターン
が考えられる。信号110からの入力である場合には、
セルデータ全体に対するスクランブル(Q)がかけられ
ていないので、セレクタ(A)34が信号301を直接
信号304に接続する。また信号111からの入力であ
る場合には、セレクタ(A)34は、信号301をセル
ディスクランブル回路30に通してディスクランブルさ
れた出力データである信号303を信号304に接続す
る。後述のディスクランブルと区別するため、これをデ
ィスクランブル(q)と表すことにする。
【0073】セルディスクランブル(q)回路30は、
図1のセルスクランブル(Q)回路14と対で使用さ
れ、その回路構造は図4および図5のセルスクランブル
(Q)回路14の実施例と基本的に同一であるので、こ
こでは省略する。これらのスクランブル(Q)回路14
および、ディスクランブル(q)回路30は自己同期型
を変形したものであり、従って伝送路でビット誤りが発
生した場合、その誤りがディスクランブル(q)した時
に拡大することがある。
【0074】図4の実施例の場合は、伝送路中の誤りに
よって7ビット連続してHまたはLの信号として受信し
てしまった、あるいは本来7ビットのHまたはL信号の
連続であったはずのものがビット誤りによってそのよう
に受信されなかった場合に、ディスクランブル回路によ
り誤りが拡大する可能性があるが、それ以外では誤りの
拡大は起こらない。
【0075】また図5の実施例の場合には、L信号の連
続の際に図4と同じ様な誤りの拡大がある他に、数式
(7)における多項式E1(X)によるディスクランブ
ル(q)の際に誤り拡大が起こる。その拡大の程度はデ
ィスクランブル(q)に用いられる多項式の項数によ
る。例えば、多項式E1(X)の場合は3項式なので伝
送中の1ビット誤りは3ビット誤りとなる。
【0076】このようにディスクランブル(q)によっ
て誤りが拡大してしまうのは仕方のないことであるが、
セルの誤配送を最小限に抑えるために、セルヘッダ部の
誤り増加は極力誤り検出されるべきである。このために
は伝送中の1ビット誤りに対し、その誤りの拡大によっ
てヘッダ部の誤訂正や検出不可能な誤りを引き起こし、
本来とは違うセルヘッダの形になってしまわない様にス
クランブル(Q)の多項式を選ぶ必要がある。同じ次数
の同じ様な多項式においても適切なものとそうでないも
のとがあり、これらについて以下のE2(X)の多項式
を例にとって説明する。
【0077】 E2(X)=X7 +X6 +1 (11) セルヘッダのkビット目に1ビット誤りがあったとする
と、もとの正しいセルヘッダH(X)に対し、多項式E
2(X)によるディスクランブル(q)によって誤りの
拡大したヘッダERR(X)は、 ERR(X)=(X7 +X+1)X33-k+H(X) (12) となっている。ERR(X)から前述の34,36,3
8,40ビット目のビット反転に対応する多項式を引い
た後、HEC部分の生成多項式G(X)で割った余りS
(X)を求めると S(X)=(ERR(X)−(X6 +X4 +X2 +1))modG(X) =(H(X)−(X6 +X4 +X2 +1))modG(X) +(X7 +X+1)X33-kmodG(X) =(X7 +X+1)X33-kmodG(X) X126 modG(X)=X7 +X+1 ∴S(X)=X126 ・X33-kmodG(X) =X127 ・X32-kmodG(X) =1・X32-kmodG(X) =X32-kmodG(X) (13) となり、kが32以下の場合に伝送上のkビット目のヘ
ッダ誤りは、ディスクランブル(q)の結果別の(32
−k)ビット目の誤りとみなされて、誤ったヘッダ訂正
を行ってしまう。なおkが32より大きい場合は、この
誤り拡大に対する1ビットの訂正パターンが存在しない
ので誤訂正されず、誤りが検出される。このような現象
は、多項式によって起こらないものもあり、例えば多項
式E1(X)によるディスクランブル(q)は、E2
(X)と単に双対な多項式であるにもかかわらずセル中
の任意の1ビット誤りに対し、セルヘッダの誤訂正を引
き起こすことはない。従ってこのような多項式を選ぶの
がよい。
【0078】セレクタ(A)34からの出力信号304
は、ヘッダ部分は元のセルヘッダ形で、ペイロード部分
のみF(X)によるスクランブル(P)がかけられてい
るようなデータである。この信号は2つに分岐し、1つ
はシフトレジスタ回路(C)31に、もう1つはセル同
期・ヘッダ誤り制御回路33に入力される。回路33の
特徴はセル同期の機能とセルヘッダの誤り訂正/検出の
機能の両方を同一の回路を共有して実現することにあ
る。
【0079】通常セル同期をとる場合には、40ビット
の入力が必要であり、従ってこの間データを遅延させる
必要がある。また、セルヘッダの誤り訂正をするために
も少なくとも40ビットクロック分の遅延回路を必要と
する。しかしながら、セル同期とヘッダ誤り訂正/検出
回路を共有化し、さらにそのために必要な遅延用のシフ
トレジスタ回路を共有化すれば、回路規模を縮小するこ
とができる。さらにセル同期をできるだけ早くとるため
にはHUNT状態で1ビット毎の検索をするのがよい
が、これにはセル同期回路の入力信号をちょうど40ビ
ットクロック分遅延させたデータが必要になる。この遅
延回路としてもセル同期およびヘッダ誤り制御用に共有
したシフトレジスタ回路(C)31を流用することがで
きる。
【0080】図10にセル同期・ヘッダ誤り制御回路の
一実施例を示す。この回路の動作は前述のHUNT、P
RESYNC、SYNCHの各状態により異なるため、
各状態における動作を順に説明する。
【0081】315はシフトレジスタ回路(C)31か
らの信号を示し、信号304を単に40ビットクロック
分遅延させたものである。信号316は8個あるDフリ
ップフロップ20の値が、図上で右側から順に(L,
H,L,H,L,H,L,H)となるときに常にHとな
る様な信号である。信号316がHとなるとき、これは
最も新しく入力された40ビット分の信号がセルヘッダ
の候補であることを意味している。また信号317は、
8個あるDフリップフロップ20の値が、頭上で右側か
ら順に(L,H,H,L,L,L,H,L)となるとき
に常にHとなる様な信号である。
【0082】HUNT状態においては、スイッチ43お
よび44をONにし、スイッチ45および46はOFF
になっている。信号304は8個あるDフリップフロッ
プ20の8番目からの出力と排他的論理和をとられて、
1番目のDフリップフロップ20に入力される。このと
き、8番目のDフリップフロップ20の出力は、1番目
および2番目のDフリップフロップ20とも同時に排他
的論理和をとる。以上の動作は図11に示すような一般
的な除算回路の動作と同じである。
【0083】ここでさらに信号315は、8番目のDフ
リップフロップ20と排他的論理和をとられた1番目お
よび5番目、6番目のDフリップフロップ20の出力と
それぞれ排他的論理和をとって、次段のDフリップフロ
ップ20にはいる。この特殊な除算回路を用いることに
より、HUNT状態で常に信号304からの最新の40
ビットに対する除算の剰余を求めることができる。この
原理を以下に説明する。
【0084】図11に示すような一般の除算回路におい
ては、GF(2)での任意の入力に対し、それを多項式
G(X)で割ったときの余りを8個のDフリップフロッ
プ20に格納するような構成となっている。ある40ビ
ット入力が信号304Aとして入力されるものとする。
この信号を多項式表現でP(X)とし、またそれを多項
式G(X)で割ったときの余りをB(X)とする。B
(X)およびP(X)は以下のように表される。
【0085】 P(X)=p[40]X39+p[39]X38+・・・・+p[1] B(X)=P(X)mod(X8 +X2 +X+1) (14) =b8 7 +b7 6 +b6 5 +b5 4 +b4 3 +b3 2 +b2 X+b1 p[i](i=1〜40)=0または1 b1 (i=1〜8)=0または1 次に新しく1ビット(p[0])を入力すると、この回
路は41ビット入力に対する余りC(X)を計算する。
【0086】 C(X)=(X・P(X)+p[0])mod(X8 +X2 +X+1) (15) =c8 7 +c7 6 +c6 5 +c5 4 +c4 3 +c3 2 +c2 X+c1 1 (i=1〜8)=0または1 最新の40ビット入力に対する余りD(X)とC(X)
との関係は以下のようになる。
【0087】 C(X)=(p[40]X40+p[39]X39+・・・・ +p[1]X+p[0])mod(X8 +X2 +X+1) =(p[39]X39+・・・・+p[1]X+p[0]) mod(X8 +X2 +X+1) (+)p[40]X40mod(X8 +X2 +X+1) =D(X)(+)p[40]X40mod(X8 +X2 +X+1)(16) =D(X)(+)(X6 +X5 +X)p[40] ∴D(X)=C(X)(+)(X6 +X5 +X)p[40] 従って常に最新の40ビット入力に対する余りを8個の
Dフリップフロップ20の値とするためには、実施例図
10のように通常の除算回路に加え、40ビット前に入
力したデータビットを数式(16)に従って排他的論理
和すればよい。このようにして、1ビットごとに検査で
きるため、信号304がエラーのない正しいデータを入
力していれば、約1セル分の入力で少なくとも1回信号
316がHとなる。
【0088】信号316が一度Hになると、HUNT状
態からPRESYNC状態になる。このとき一応セルの
先頭が確定するので、その後は1セル毎にセルヘッダで
あると思われる40ビットを入力して、その余りを8個
のDフリップフロップによって確認すれば良い。従っ
て、PRESYNC状態になるとスイッチ43および4
4をOFFにし、次のセルヘッダと思われる40ビット
が到着するまでにDフリップフロップをリセットしてお
く。そして、304に次のセルヘッダが到着すると、ス
イッチ44のみを40ビット分入力する間だけONにし
て、そのデータに対し同じ除算をおこなう。もしこの
後、HUNT状態に戻った場合には、再びHUNT状態
での動作に戻る。
【0089】PRESYNC状態からSYNCH状態に
変化した場合も基本的なセル同期の動作はPRESYN
C状態の時と変わらない。しかしながら、SYNCH状
態の時は誤り制御を行うため、そのための動作が増え
る。すなわち、SYNCH状態で誤り訂正モードのと
き、スイッチ44がONとなって入力された40ビット
に対する除算の余りが(L,H,L,H,L,H,L,
H)にならないとき、信号316がHにならないことを
制御回路38が判定して、そこからの制御信号により、
スイッチ44がOFFになると同時にスイッチ45を1
ビットクロック分だけONにする。これにより1,3,
5,7番目のDフリップフロップ20がそれぞれ通常動
作の入力に対し反転されて、2,4,6,8番目のDフ
リップフロップ20に入力される。次のタイミングでス
イッチ45がOFFになると同時にスイッチ46がON
となる。この状態で40ビットクロック間除算回路を動
かし、信号306を出す。この信号はヘッダ誤りの訂正
パターンであり、信号306のi番目に出力されるビッ
トがHであれば、ヘッダのi番目のビットが誤っている
ことを意味する。また、40ビットクロックすべてL信
号であれば、これは誤りはあるが訂正できないことを意
味する。この信号306は制御回路38およびシフトレ
ジスタ回路(C)31の出力部で用いられる。なお、誤
り検出モードのときは、信号316のみで判定できるた
め、上記のような複雑な動作は行わず、PRESYNC
状態と全く同じ様な動作をする。
【0090】ここで信号306がヘッダ誤り訂正のパタ
ーンとなることの原理を述べる。前述したように、誤り
のないセルヘッダはその5バイト目から(L,H,L,
H,L,H,L,H)のパターンをGF(2)上で引い
た40ビットがG(X)を生成多項式とした短縮巡回符
号となっており、従ってこの40ビットを多項式表現し
たものはG(X)で割り切れる。この符号は誤り訂正を
する場合には1ビット誤り訂正、2ビット誤り検出が可
能であり、誤り検出のみの場合は3ビットまでの誤り検
出が可能である。
【0091】いまセルヘッダのi番目に1ビットだけエ
ラーがあったとすると、(L,H,L,H,L,H,
L,H)のパターンを除いた後の余りは、以下のT
(X)となる。
【0092】 T(X)=X39-1modG(X) (17) これをi+1回除算回路でシフトすると、 Xi+1 ・X39-1modG(X) =X40mod(X8 +X2 +X+1) =X6 +X5 +X (18) となり、同じ値になる。すなわちDフリップフロップの
値が(L,H,H,L,L,L,H,L)となるときが
i+1回シフトしたときであれば、i番目に誤りがある
とわかる。信号306はこれを利用したものであり、こ
の例ではi+1回シフトしているが、シフト回数はi回
以上の適当な値をとればよい。
【0093】シフトレジスタ回路(C)31は、40ビ
ット長以上であり、信号304を単純にそのビットクロ
ック分遅延したものが信号305として出力される。上
記の誤り訂正信号306の作成の際にi+m回シフトす
ると、その訂正信号出力の遅延のため40+mビット長
必要となる。この例ではi+1回シフトしているので、
41ビット長となっている。誤り訂正モードでヘッダ誤
りが訂正できるときのみ、信号306からHの値が高々
1ビット出力され、このとき、信号305は信号306
と排他的論理和をとられることにより、正しいセルヘッ
ダをもつ信号として信号307となる。それ以外の状態
では信号305はそのまま信号307となる。
【0094】信号307はそのままセレクタ(B)35
に向かうほか、シフトレジスタ回路(D)32にもはい
る。このシフトレジスタ回路は43ビット長であり、4
8のイネーブル端子がついていて、制御回路からの制御
を受ける。HUNT状態では信号307は順にシフトレ
ジスタ回路(D)32にはいるが、PRESYNC状態
およびSYNCH状態では信号307にセルヘッダのデ
ータが流れる間、シフトレジスタ回路の動作を止める。
このようにしてシフトレジスタ回路(D)32内には常
に最新の43ビット分のペイロードが入っていることに
なる。
【0095】シフトレジスタ回路(D)32を出た信号
308は信号307との排他的論理和をとって信号30
9として、セレクタ(B)35に達する。すなわち信号
309は多項式F(X)で表されるセルのペイロード部
分のディスクランブルされたデータにあたる。このディ
スクランブルは送信側のスクランブル(P)と対になっ
たものであり、他と区別するため、ディスクランブル
(p)と表すこととする。セレクタ(B)35では、H
UNT状態では常に信号307、それ以外の状態ではヘ
ッダ部分に対しては信号307、ペイロード部分に対し
ては信号309を選択して、信号311として出力す
る。信号311において、SYNCH状態ではエラーの
あるセルを除いて基本的に本来のセルの形になってい
る。
【0096】セルカウンタ36は、制御回路38よりH
UNT状態であるかそれ以外の状態であるかの信号を常
に受け取っている。HUNT状態であるとき、セル同期
・ヘッダ誤り制御回路33からの信号316がHになる
と、カウンタをリセットする。その後PRESYNC状
態およびSYNCH状態ではセルの先頭が分かっている
ため外部信号にかかわらず、ちょうど1セル長分を繰り
返しカウントするようになっている。従ってPRESY
NC状態およびSYNCH状態ではカウンタからの出力
値を見れば現在のセルのどの部分が入力あるいは出力さ
れているかが分かるようになっている。それでカウンタ
値の出力信号を受け取った制御回路38は、これらの値
をみて適宜必要な制御信号を出力する。
【0097】またこのカウンタはHUNT時においても
常に動作させる。この回路は外部からのリセット信号を
用いずに設計しているため、このカウンタを異常時の復
帰用の内部リセット信号出力のタイマーとして用いる。
例えば、HUNT状態で通常であれば1セル分の信号入
力で同期がとれるはずであるにもかかわらず、セル同期
がなかなかとれない場合、セルカウンタが何周かしたと
ころでセル同期・ヘッダ誤り制御回路33にリセットを
かけるなどの使用法がある。
【0098】状態表示回路40はHUNT、PRESY
NC、SYNCHの各状態とSYNCH状態における誤
り訂正モードおよび誤り検出モードの状態を外部に表示
するものである。従って信号314は複数の信号線から
なっている。またこの回路は制御回路38に対し、常に
現在の状態およびモードを知らせていて、この情報に従
って、制御回路38は各回路に制御信号を送る。
【0099】HUNT状態では、セル同期・ヘッダ誤り
制御回路33からの信号316がHとなった情報を制御
回路38から受け取って、状態表示回路40がPRES
YNC状態表示を出す。この情報を受け取った制御回路
38は、DELTAカウンタ41を動作させる。DEL
TAカウンタ41はセルカウンタ36の出力がある値の
時に、信号316がHであると自分のカウンタ値を1つ
あげ、Lであるとリセットする。このカウンタの情報を
制御回路38は状態表示回路40に渡す。状態表示回路
40はDELTAカウンタ41がリセットされるとHU
NT状態表示にし、またその値が外部から与えられた回
数と一致したことを知ると、PRESYNC状態からS
YNCH状態に表示を変えて制御回路38に送る。それ
により制御回路38はDELTAカウンタ41をリセッ
トし、今度はALPHAカウンタ42を動作させる。A
LPHAカウンタ42はセルカウンタ36の出力がある
値の時に、信号316がLであると自分のカウンタ値を
1つあげ、Hであるとリセットする。制御回路38はそ
の情報を状態表示回路40に渡し、状態表示回路40は
ALPHAカウンタ42の値が0であるときには誤り訂
正モードとし、それ以外の時は誤り検出モードを表示す
る。また、カウンタの値が外部から与えられた回数と一
致したことを知ると、SYNCH状態からHUNT状態
に表示を変えて制御回路38に送る。
【0100】セルクロック生成回路39は、SYNCH
状態のとき、セルの先頭と何らかの関係をもつタイミン
グでセルクロック信号312とセル有効表示信号313
を出す。セルクロック信号312は単に同期の確立した
状態でのセルの区切りを示す信号である。またセル有効
表示信号313は、ヘッダ誤りのあることがわかってな
おかつ訂正できないセルに対して例えばL表示をする。
このようにして次段の回路でこのセルを削除できるよう
にしている。
【0101】この図において、イネーブル端子48を除
いたものは従来技術の項で述べた、ペイロードディスク
ランブル(p)のディスクランブル用データとして、セ
ルヘッダを含んだ場合の一実施例となる。この場合はシ
フトレジスタ回路(D)32内にはヘッダおよびスクラ
ンブル(P)されたデータがはいり、これを用いてディ
スクランブル(p)されたデータ309とそのままのデ
ータ307とのいずれかがセレクタ(B)35により選
択される。その選択方法は上述のものと同一である。
【0102】以上図9に関し、シリアル入力の場合のみ
を述べてきたが、CCITTの規格による外部フレーム
を用いる場合には、バイト毎の位相情報がもらえるた
め、セル同期におけるヘッダ部分の検索は1バイト毎に
行えばよく、従って8ビットパラレル入力される場合
に、同様の回路構成で対応できる。
【0103】図12にこのうち図9の31,32,3
3,35の接続部分に対応する実施例を示す。基本的な
データの流れは図9のものと同一であるので、ここでは
概略の説明にとどめる。なお、前述したように、図上で
原則として最も上側にあるのをMSB、最も下側にある
のをLSBとし、セルの先頭は必ずMSBのところにあ
る。
【0104】入力信号501は8ビットパラレルシフト
レジスタ回路(A)52とセル同期・ヘッダ誤り制御回
路51に分岐して入り、シフトレジスタ回路(A)52
では5バイトクロック分シフトして信号502としてデ
ータ出力される。信号502は回路51への入力となる
他、回路51からのヘッダ誤り訂正パターン信号503
と排他的論理和をとられて、信号505として一方はセ
レクタ50への入力となり、また他方は8ビットパラレ
ルシフトレジスタ回路(B)53への入力となる。ただ
しセルヘッダとみなされる部分はスイッチ55をOFF
にして入力されないようにする。そして回路53および
3ビットパラレルのDフリップフロップ回路54からの
出力データと、信号505との排他的論理和をとられた
信号504がセレクタ50に達する。セレクタ50では
HUNT状態およびそれ以外でのセルヘッダ部分の信号
の場合は信号505を選択し、それ以外の場合は信号5
04を選択して出力信号506とする。
【0105】図13に図12のセル同期・ヘッダ誤り制
御回路51の構成を示す。これも基本的な動作の流れは
図10と同一である。信号502は信号501を5バイ
トクロック分遅延させた信号である。これを消去パター
ン生成回路59に入力し、HUNT状態の時に常に1バ
イト毎に最新5バイトに対する余りを計算できるよう、
過去に入力された信号の消去パターンを生成する。HU
NT状態の場合のみスイッチ60をONにして、このパ
ターンを信号501の各ビットと排他的論理和する。
【0106】57は除算パターン生成回路を示し、8ビ
ットパラレルのDフリップフロップ56からの出力信号
を、8ビット分シフトしたデータに対し、それをG
(X)で割った余りの8ビットパターンを生成する。こ
れをさきほどの信号501と信号502の排他的論理和
をとったものにさらに排他的論理和して、8ビットパラ
レルのDフリップフロップ56に入力する。このDフリ
ップフロップ56の値をMSBの方からみて(L,H,
L,H,L,H,L,H)のパターンの時、信号507
がHとなる。この信号507は図10における信号31
6に対応している。
【0107】誤り訂正モードの時にヘッダに誤りのある
ことが分かると、出力信号56に対し、スイッチ61を
1バイトクロック分のみONにして、2,4,6,8番
目のビットを反転させる。その後、一方は除算パターン
生成回路にはいり、順に8ビット分シフトしたパターン
を生成する。このときスイッチ62はOFFされてお
り、信号501は入力されない。またもう一方は訂正パ
ターン生成回路58に入って訂正のパターンを信号50
3として出力する。
【0108】消去パターン生成回路59の動作は入力信
号をf[j]、出力信号をfo[j](jは1から8ま
での整数)とし、それぞれ0,1の2進表示とすると、
以下の式で表される。ただし、f[8],fo[8]が
それぞれMSBであるとする。
【0109】 fo[8]=f[2](+)f[3](+)f[7](+)f[8] fo[7]=f[1](+)f[2](+)f[6](+)f[7] fo[6]=f[1](+)f[5](+)f[6] fo[5]=f[4](+)f[5](+)f[8] fo[4]=f[3](+)f[4](+)f[7] (19) fo[3]=f[2](+)f[3](+)f[6](+)f[8] fo[2]=f[1](+)f[3](+)f[5](+)f[8] fo[1]=f[3](+)f[4](+)f[8] 次に除算パターン生成回路57の動作は入力信号をg
[j]、出力信号をgo[j](jは[1]から8まで
の整数)とし、それぞれ0,1の2進表示とすると、以
下の式で表される。ただし、g[8],go[8]がそ
れぞれMSBであるとする。また“(+)”はビット毎
の排他的論理和を表す。
【0110】 go[8]=g[6](+)g[7](+)g[8] go[7]=g[5](+)g[6](+)g[7] go[6]=g[4](+)g[5](+)g[6] go[5]=g[3](+)g[4](+)g[5] (20) go[4]=g[2](+)g[3](+)g[4](+)g[8] go[3]=g[1](+)g[2](+)g[3](+)g[7] go[2]=g[1](+)g[2](+)g[7] go[1]=g[1](+)g[7](+)g[8] 最後に訂正パターン生成回路58の動作は入力信号h
[j]、入力信号の反転信号をhb[j]、出力信号を
ho[j](jは1から8までの整数)とし、それぞれ
0,1の2進表示とすると、以下の式で表される。ただ
し、h[8],hb[8],ho[8]がそれぞれMS
Bであるとする。また、“・”はAND論理を表す。
【0111】 ho[8]=(h[4]・h[6]・h[7])・(hb[1]・hb[2] ・hb[3]・hb[5]・hb[8]) ho[7]=(h[3]・h[5]・h[6])・(hb[1]・hb[2] ・hb[4]・hb[7]・hb[8]) ho[6]=(h[2]・h[4]・h[5]・h[8])・(hb[1] ・hb[3]・hb[6]・hb[7]) ho[5]=(h[1]・h[3]・h[4]・h[7]・h[8]) ・(hb[2]・hb[5]・hb[6]) (21) ho[4]=(h[2]・h[3]・h[6]・h[7])・(hb[1] ・hb[4]・hb[5]・hb[8]) ho[3]=(h[1]・h[2]・h[5]・h[6])・(hb[3] ・hb[4]・hb[7]・hb[8]) ho[2]=(h[1]・h[5]・h[6]・h[7])・(hb[2] ・hb[3]・hb[4]・hb[8]) ho[1]=(h[5]・h[7]・h[8])・(hb[1]・hb[2] ・hb[3]・hb[4]・hb[6])
【0112】
【発明の効果】以上説明したように、送信側において
は、セルの全体、または一部分に対する冗長ビットを生
成する際に、元のデータをある多項式で乗算したものの
出力を直接該当する除算回路の多項式で割った剰余を用
いることによって、元のデータを入力した直後に冗長ビ
ットを発生させることが可能となり、これをパケットに
直ちに付加することにより、データ信号が入力してから
出力するまでの回路内の遅延を最小に抑えることができ
る。またそれにより遅延のある場合に必要となる遅延回
路が不要となり、回路規模の削減ができる。
【0113】また受信側においては、セルのペイロード
部分に対してかけられるディスクランブルとセル同期を
同時に実現するために必要となるセルヘッダ部分のデー
タ蓄積機能と、セル同期のための検査回路への入力デー
タをシリアル入力の場合は少なくとも1ビット毎に、ま
た8ビットパラレル入力の場合は少なくとも1バイト毎
に更新する際に、上記検査回路より取り除くべき1ビッ
ト以上あるいは1バイト以上のデータを蓄えておく機能
と、上記冗長ビットを用いてセルの全体あるいは一部分
に誤りがないか検査し、誤りが見つかった場合には誤り
訂正を行う際に、該訂正データを上記誤り訂正パターン
が生成されるまで蓄えておく機能とを同時に有するシフ
トレジスタ回路を用いることにより、回路規模を縮小す
ることができる。
【図面の簡単な説明】
【図1】本発明の一実施例であるセル生成回路の全体構
成の図である。
【図2】セルのペイロード部分におけるスクランブル動
作の図である。
【図3】セルのペイロード部分におけるスクランブル動
作の別の構成図である。
【図4】セル全体のスクランブル回路の図である。
【図5】セル全体のスクランブル回路の別の一構成図で
ある。
【図6】従来のHEC生成回路の図である。
【図7】本発明の一実施例であるHEC生成回路の図で
ある。
【図8】図7の回路と同機能で8ビットパラレルの入出
力にした回路図である。
【図9】本発明の一実施例であるセル同期演算回路の全
体構成の図である。
【図10】セル同期・ヘッダ誤り制御回路の図である。
【図11】従来からある通常の除算回路の図である。
【図12】図9の回路をパラレル入出力にした場合の、
データの流れを示した図である。
【図13】パラレル入出力の場合のセル同期・ヘッダ誤
り制御回路の図である。
【符号の説明】
12 HEC生成回路 14 セルスクランブル回路 15 シフトレジスタ回路(A) 16 シフトレジスタ回路(B) 18 セルヘッダ 19 セルペイロード 25 8ビットシフトレジスタ 30 セルディスクランブル回路 31 シフトレジスタ回路(C) 32 シフトレジスタ回路(D) 33 セル同期・ヘッダ誤り制御回路 51 セル同期・ヘッダ誤り制御回路 52 パラレルシフトレジスタ回路(A) 53 パラレルシフトレジスタ回路(B) 57 除算パターン生成回路 58 訂正パターン生成回路 59 消去パターン生成回路 101 セルクロック 102 セル長データ信号 110 ペイロードスクランブル出力信号 111 セルスクランブル出力信号 301 受信データ 302 ビットクロック 306 誤り訂正パターン信号 310 クロックモニタ信号 311 セルデータ出力 312 セルクロック 313 セル有効表示信号 314 状態表示信号 315 5バイト遅延信号 502 5バイト遅延信号 503 誤り訂正パターン信号 506 セルデータ出力
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) H04L 7/08 H04L 12/28

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 情報をセルと呼ばれるある決まった長さ
    のパケットの形にして通信するようなATMシステムの
    受信回路系において、送信回路系の装置において付加さ
    れた冗長ビットの性質を利用して、セルの一部分を検査
    し該当する冗長ビットを見つけることにより同期をとる
    セル同期演算回路であって、少なくとも、 前記セル同
    期のための検査回路に入力されるデータの更新の際に該
    検査回路より取り除くべきデータを蓄えておく機能と、 セル同期のために検査されるセルの部分データを蓄えて
    おく機能と、 該冗長ビットを用いてセルの全体あるいは一部分のデー
    タの誤り訂正を行う際に、訂正対象データの訂正パター
    ンが生成されるまで、訂正対象データを蓄えておく機能
    と、 を有する シフトレジスタ回路、 を有することを特徴とするセル同期演算回路。
JP76291A 1991-01-08 1991-01-08 Atmにおけるセル同期演算回路 Expired - Lifetime JP2952051B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP76291A JP2952051B2 (ja) 1991-01-08 1991-01-08 Atmにおけるセル同期演算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP76291A JP2952051B2 (ja) 1991-01-08 1991-01-08 Atmにおけるセル同期演算回路

Publications (2)

Publication Number Publication Date
JPH04363927A JPH04363927A (ja) 1992-12-16
JP2952051B2 true JP2952051B2 (ja) 1999-09-20

Family

ID=11482709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP76291A Expired - Lifetime JP2952051B2 (ja) 1991-01-08 1991-01-08 Atmにおけるセル同期演算回路

Country Status (1)

Country Link
JP (1) JP2952051B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3454962B2 (ja) * 1995-03-23 2003-10-06 株式会社東芝 誤り訂正符号の符号器及び復号器

Also Published As

Publication number Publication date
JPH04363927A (ja) 1992-12-16

Similar Documents

Publication Publication Date Title
EP0503667B1 (en) A CRC operating method and an HEC synchronizing unit in the ATM switching method
US6487686B1 (en) Error correction method and transmission apparatus
JP3710198B2 (ja) Stm−n信号の誤り訂正符号化・復号化方法、stm−n信号の誤り訂正符号化回路及びstm−n信号の誤り訂正復号化回路
JP5464752B2 (ja) 受信器、インタリーブおよびデインタリーブ回路、ならびに方法
US3882457A (en) Burst error correction code
US5204903A (en) Secure communication equipment and secure transmission system
EP0883260A2 (en) Error correction in a digital transmission system
US4849995A (en) Digital signal transmission system having frame synchronization operation
JPH07177116A (ja) デジタル信号伝送装置
US4476458A (en) Dual threshold decoder for convolutional self-orthogonal codes
US5694405A (en) Encoder and decoder of an error correcting code
JP2952051B2 (ja) Atmにおけるセル同期演算回路
KR950007977B1 (ko) 디지탈 정보신호의 동기화 방법 및 장치
US4521886A (en) Quasi-soft decision decoder for convolutional self-orthogonal codes
US20050206542A1 (en) Data detector and multi-channel data detector
US5280484A (en) Time-division multiplex communication system with a synchronizing circuit at the receiving end which responds to the coding of words inserted in the transmitted information
JPS6359621B2 (ja)
JPH0787090A (ja) 巡回符号検出方法及び装置
JP3536799B2 (ja) フレーム同期回路および同期方法、ならびにそのプログラムを記録した記録媒体
US5500863A (en) CRC operational system
JP2926670B2 (ja) セル到着順序検出装置
JP2817638B2 (ja) 誤り訂正符号復号器の再同期化装置
KR100267277B1 (ko) 통신시스템의 셀 경계 식별 장치
JPH03139033A (ja) 送信情報に挿入されたワードのコード化に応答する受信端部の同期回路を具備した時分割多重通信システム
JPH08340342A (ja) 受信データブロックのチェックサムを検証するための方法及び該方法の実施装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080709

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090709

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090709

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100709

Year of fee payment: 11