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

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

Info

Publication number
JPH04363927A
JPH04363927A JP3000762A JP76291A JPH04363927A JP H04363927 A JPH04363927 A JP H04363927A JP 3000762 A JP3000762 A JP 3000762A JP 76291 A JP76291 A JP 76291A JP H04363927 A JPH04363927 A JP H04363927A
Authority
JP
Japan
Prior art keywords
cell
signal
circuit
input
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.)
Granted
Application number
JP3000762A
Other languages
English (en)
Other versions
JP2952051B2 (ja
Inventor
Keiji Tsunoda
啓治 角田
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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】[発明の目的]
【0002】
【産業上の利用分野】本発明は、情報になんらかの冗長
を付加してセルの形にして送受信を行うAMTにおける
、セルヘッダ生成回路およびセル同期演算回路に関する
【0003】
【従来の技術】近年ATM(Asynchronous
  Transfer  Mode)技術による広帯域
通信についての種々の検討がなされており、CCITT
等でもその方式の統一に向けた各種の議論がなされてい
る。 ATMによる通信は、セルと呼ばれる固定長のパケット
を伝送して通信するものである。このセルを用いた通信
方式に関してCCITTにおいて規格の統一に向けた議
論がなされており、以下ではCCITTにおける勧告の
内容について述べる。
【0004】セル長は53バイトであり、そのうちヘッ
ダ部分が5バイト、ペイロード部分が48バイトである
。この5バイト、すなわち40ビットのセルヘッダのう
ち、初めの32ビットはセルの種別やVPI(Virt
ual  PathIdentifier),VCI(
Virtual  Channel  Identif
ier)といったあて先情報等を表すパラメータが書か
れている。残りの8ビットはその32ビットに対する冗
長部分であり、HEC(Header  ErrorC
ontrol)と呼ばれる。このHEC部分は、その以
前の32ビットに依存した値をとるという性質を利用し
て、後述する様に各ノードの受信側および受信端末部に
おけるセル同期やセルヘッダの誤り訂正/検出に用いら
れる。
【0005】ここで、上記セルヘッダにおけるVPIや
VCIは送信端末から受信端末まで同じ値をとるとは限
らず、途中のノードでしばしば書き換えられる。従って
、HEC部分は各送信装置および各交換ノードの出力装
置側で、該当する値を計算により求めて付加する必要が
ある。
【0006】HEC部分の生成法は、巡回符号の特性に
基づいたものである。まずセルヘッダの5バイト目にあ
たるHEC8ビットをすべて0とし、セルヘッダ40ビ
ットを多項式表現として、M(X)で表す。例えばセル
ヘッダが0,1の2進数表現で(00001001  
00000010  00100001  00000
110  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進表示で(0000
1001  0000001000100001  0
0000110  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  Hi
erachy)ベースと呼ばれる。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ビットの検査から次の4
0ビットの検査に移る場合には、新たな1ビットあるい
は1バイトを入力すると同時に、以前の先頭部分の1ビ
ットあるいは1バイトを用いて、検査回路中のそれらの
古いデータによる値を打ち消すような構成をとることに
よって対処する。そうすると、新たに検査するときに打
ち消すための5バイト前の1ビットあるいは1バイトの
データを蓄積しておく必要がある。
【0023】さらに、SYNCH状態で誤り訂正モード
の時に、入力されたセルヘッダに対しそのヘッダ誤りの
有無をチェックし、1ビット誤りの場合には訂正パター
ンを生成し、ヘッダ部分に排他的論理和で足し込むのが
一般的であり、このためヘッダをヘッダ誤り検査回路に
入力してからその訂正パターンが出力されるまで、セル
ヘッダを蓄積しておく回路が必要となる。
【0024】以上のような蓄積回路の必要性に関して、
上記の資料では述べられていなかったが、従来技術とし
てはこの場合、これらの回路が別々に設けられるものと
解釈できる。従ってこれらの蓄積回路のため、回路規模
が大きくなるという問題があった。
【0025】また、送信側の回路におけるHEC生成法
に関しては、田中、柳、高瀬、古谷、高崎、“並列型H
EC計算回路の検討”(1990年信学全大B−575
)により、シリアル入力、パラレル入力の両方に対して
、除算回路を用いた生成法が図6に示されている。この
従来技術は、実施例にも比較のために用いている。しか
しながら、この従来方法においては除算回路のみを用い
ており、セルヘッダ40ビットにおいて最後の8ビット
をあらかじめすべて1に設定しておかねばならず、また
40ビットすべてを入力した後にHEC部分が生成され
るため、最後のデータが入力されてから生成されたHE
C部分が出てくるまでに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)のようにセレクタが信号10
9を出力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と信号10
9との排他的論理和をとった信号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へ出力する。このときシフトレジスタ回路15
Aにはイネーブル信号が入っていず、信号が順にレジス
タに入力され、信号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フ
リップフロップ20の両端のものの値を排他的論理和し
たものである。信号110は図4と全く同一の入力信号
であり、信号114および信号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]=(X
8 +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または1r[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)=X
8 (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]X
31+a[39]X30+・・・・+a[9])=(X
8 +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または1r[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  Signif
icant  Bit)と呼び、最も下側にあるのをL
SB(Least  Significant  Bi
t)と呼ぶ。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
)に対し、多項式E2(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 +X
2 +1))modG(X)          =(
H(X)−(X6 +X4 +X2 +1))modG
(X)          +(X7 +X+1)X3
3−kmodG(X)          =(X7 
+X+1)X33−kmodG(X)  X126 m
odG(X)=X7 +X+1∴S(X)=X126 
・X33−kmodG(X)          =X
127 ・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 +X
2 +X+1)                  
  (14)        =b8 X7 +b7 
X6 +b6 X5 +b5 X4         
          +b4 X3 +b3 X2 +
b2 X+b1 p[i](i=1〜40)=0または
1b1 (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)        =c
8 X7 +c7 X6 +c6 X5 +c5 X4
                   +c4 X3
 +c3 X2 +c2 X+c1 c1 (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[4
0]従って常に最新の40ビット入力に対する余りを8
個のDフリップフロップ20の値とするためには、実施
例図10のように通常の除算回路に加え、40ビット前
に入力したデータビットを数式(16)に従って排他的
論理和すればよい。このようにして、1ビットごとに検
査できるため、信号304がエラーのない正しいデータ
を入力していれば、約1セル分の入力で少なくとも1回
信号316がHとなる。
【0088】信号316が一度Hになると、HUNT状
態からPRESYNC状態になる。このとき一応セルの
先頭が確定するので、その後は1セル毎にセルヘッダで
あると思われる40ビットを入力して、その余りを8個
のDフリップフロップによって確認すれば良い。従って
、PRESYNC状態になるとスイッチ43および44
を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では、HU
NT状態では常に信号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,33
,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における信号316に
対応している。
【0107】誤り訂正モードの時にヘッダに誤りのある
ことが分かると、出力信号56に対し、スイッチ61を
1バイトクロック分のみONにして、2,4,6,8番
目のビットを反転させる。その後、一方は除算パターン
生成回路にはいり、順に8ビット分シフトしたパターン
を生成する。このときスイッチ62はOFFされており
、信号501は入力されない。またもう一方は訂正パタ
ーン生成回路58に入って訂正のパターンを信号503
として出力する。
【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]  f
o[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]がそれぞれMSBであるとする。ま
た、“・”は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]・h
b[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  セルデータ出力

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】  情報をセルと呼ばれるある決まった長
    さのパケットの形にして通信するようなATMシステム
    の送信回路系において、セルヘッダを生成するためのセ
    ルヘッダ生成回路が、少なくとも、入力データに対し第
    1の多項式を用いた乗算と第2の多項式を用いた除算と
    を同時に行い、該除算回路の剰余部分を用いてセルの全
    体、または一部分に対する冗長ビットを生成する手段を
    具備することを特徴とするセルヘッダ生成回路。
  2. 【請求項2】  上記入力データが、入力セルヘッダで
    あり、上記セルの一部分が、セルヘッダであることを特
    徴とする請求項1記載のセルヘッダ生成回路。
  3. 【請求項3】  情報をセルと呼ばれるある決まった長
    さのパケットの形にして通信するような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 true JPH04363927A (ja) 1992-12-16
JP2952051B2 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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694405A (en) * 1995-03-23 1997-12-02 Kabushiki Kaisha Toshiba Encoder and decoder of an error correcting code

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694405A (en) * 1995-03-23 1997-12-02 Kabushiki Kaisha Toshiba Encoder and decoder of an error correcting code

Also Published As

Publication number Publication date
JP2952051B2 (ja) 1999-09-20

Similar Documents

Publication Publication Date Title
US5345451A (en) Cyclic redundancy check operating method and a head error checker synchronizing unit in an asynchronous transfer mode switching process
US6487686B1 (en) Error correction method and transmission apparatus
CA2038592C (en) Synchronization circuit
AU669746B2 (en) Method and device for detection and correction of errors in ATM cell headers
US6920603B2 (en) Path error monitoring method and apparatus thereof
EP0484862A2 (en) Secure communication equipment and secure transmission system
JPH07177116A (ja) デジタル信号伝送装置
US5694405A (en) Encoder and decoder of an error correcting code
JPH04363927A (ja) Atmにおけるセル同期演算回路
JPH0879211A (ja) ディジタル通信装置
US6145113A (en) Series reed-solomon decoder synchronized with bit clock signal
JPH0787090A (ja) 巡回符号検出方法及び装置
EP0737390A1 (en) Device for establishing cell boundaries in a bit stream and crc calculation
JP3753006B2 (ja) 通信装置と通信方法
JP3058796B2 (ja) 伝送フレームの誤り制御送信装置及び誤り制御受信装置及び誤り訂正符号付伝送フレーム送信方法と受信方法
JP3536799B2 (ja) フレーム同期回路および同期方法、ならびにそのプログラムを記録した記録媒体
JP2926670B2 (ja) セル到着順序検出装置
JP3849459B2 (ja) 伝送データ情報検出方法と伝送データ情報検出装置
JPH08340342A (ja) 受信データブロックのチェックサムを検証するための方法及び該方法の実施装置
KR20040010931A (ko) 통신 시스템에서의 일반 프레이밍 절차 프레임 경계 검출회로
JPH04207734A (ja) セル送受信装置
JP2000349728A (ja) ルート切替制御システム、切替制御方法及び記録媒体
JP3578690B2 (ja) 可変周期カウンタおよび位相変動追従型分離回路
JPH03226019A (ja) Crc演算装置
JP2004200763A (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