(57)【特許請求の範囲】
【請求項１】
複数のカードから出力されたATMセルを多重するATMセル多重装置において、
各カードに接続された複数のメモリと、
該ATMセルに対し、各カードに共通の連続したセル到着番号を付加して該メモリに書き込む書込処理部と、
該メモリから該セル到着番号を読み出してその連続性をチェックすることにより、各カードから該ATMセルを該セル到着番号の順番に読み出すと共にその時のセル到着番号を次の読出時に照合するセル到着番号とする読出処理部と、
を備え、各メモリが優先度に対応した数だけ分割して設けられており、該書込処理部が、該ATMセル中に予め付加された優先度を検出し、該ATMセルに該セル到着番号を優先度別に付加して対応するメモリに書き込み、該読出処理部が、該優先度の高いメモリ中のATMセルから該セル到着番号の順番に読み出し、
該書込処理部が、各メモリに該ATMセルを書き込む時のアドレスカウンタを有し、各ATMセルが各メモリに書き込まれた時、対応する該アドレスカウンタをカウントアップさせると共に、そのカウント値を該読出処理部に通知し、該読出処理部が、該アドレスカウンタに対応した読出時のアドレスカウンタを有し、該ATMセルを該メモリから読み出した時に対応するアドレスカウンタをカウントアップさせ、該書込処理部から通知されたカウント値と該読出処理部のアドレスカウンタのカウント値との差の有無によって各メモリに該ATMセルが存在するか否かを判定し、
該書込処理部及び該読出処理部が、いずれかのカードが引き抜かれたことを示す信号を受けた時、そのカードに対応したメモリのアドレスカウンタをクリアし且つ書込を禁止することを特徴としたATMセル多重装置。
【請求項２】
請求項１において、
該書込処理部が、該セル到着番号をカウントするカウンタを有し、該カウンタが、各メモリに書き込まれる最大ATMセル数×優先度別のカード枚数+2以上のカウント値を有することを特徴としたATMセル多重装置。
【請求項３】
請求項２において、
該読出処理部が、該読み出したATMセルの該セル到着番号を最新の値として保持しており、各ATMセル中に付加されたセル到着番号と比較し、最初は該最新の値の初期値と一致するATMセルを読み出し、その後は該最新の値を"1"だけインクリメントした値と一致するATMセルを各メモリから読み出すことを特徴としたATMセル多重装置。
【請求項４】
請求項３において、
該読出処理部が、該一致するATMセルが見つからないとき、該最新の値と各ATMセル中の該セル到着番号との新旧を比較し、以って小さいセル到着番号のATMセルの方から優先的に読み出すことを特徴としたATMセル多重装置。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、ATMセル多重装置に関し、特にATM-PON(Asynchronous Transfer Mode-Passive Optical Network)レイヤで運用されるATMセル多重装置に関するものである。
【０００２】
高度情報通信サービスを実現するためのFTTH(Fiber to the Home)に代表されるような光アクセスネットワークの構築において、大容量のデータ通信を実現する手段としてATM-PON技術が必要不可欠になって来ている。
この場合、加入者側からのATMセルを多重し、データセルとしてATM-PONレイヤにマッピングする技術が必要となる。
【０００３】
【従来の技術】
図12は、上記の如く、ATMセルを多重しデータセルとしてATM-PONレイヤにマッピングするための光加入者インターフェース装置ONUを示しており、この光加入者インターフェース装置ONUにおいて加入者側からのATMセルを加入者終端装置(OLT)に受け渡すために、ATMセル多重装置11と上りデータ組み立て部12と下り遅延値取り組み部14とを備えている。
【０００４】
取り込み部14で取り込んだデータは更に外部に外付けされているカード▲１▼及び▲２▼に対して出力されると共に、これらのカード▲１▼及び▲２▼からの入力データをATMセル多重装置11で多重している。
そして、ATMセル多重装置11で多重したデータセルは、取り込み部14で指定された遅延調整値を受けて上りデータ組み立て部12における遅延調整部13でタイミング調整され、上りデータとして加入者終端装置へ出力されるようになっている。
【０００５】
図12に示したようなATMセル多重装置の従来例においては、カードが2枚の場合、カード毎に2つのRAMによって構成されるFIFOを持ち、いずれのFIFOにもセルが蓄積される場合、交互にそれらのFIFOからATMセルを読み出す「スキップポーリング」動作を行っていた。
【０００６】
【発明が解決しようとする課題】
このように従来のATMセル多重装置では、ATMセルを読み出す時に、カード▲１▼側のFIFOとカード▲２▼側のFIFOに対してスキップポーリング動作を行っていたため、それぞれのカード単体においては先着優先のFIFO書込／読出処理になっているが、両方のカード全体で見るとATM-PONレイヤ等の読出タイミングによっては必ずしもFIFOに書き込まれた順序でセルが読出されるとは限らず、一番古いセルから読み出されないという問題があった。
【０００７】
また、一つのカードに対応したFIFOのATMセルがフル状態に近い場合、書込が中々できないのでATMセルのATM-PONレイヤへマッピングする際の最大待ち時間が大きくなってしまうという問題があった。
さらに、カード側からのATMセルの優先度の識別をしていなかったため、一枚のカードにデータ系(データ等)とリアルタイム系(電話等)の両方のサービスが混在していた場合も区分けができず、リアルタイム系のATMセルのみを優先して転送することができないという問題があった。
【０００８】
さらには、運用中にカードが引き抜かれることがあり、挿入されているカードはそのままで、引き抜かれた方のカードに対応したFIFOについて不必要なATMセルを読み出してしまうという問題もあった。
従って本発明は、複数のカードから出力されたATMセルを多重するATMセル多重装置において、より古いATMセルから少ない待ち時間で優先的に転送することを目的とする。
【０００９】
【課題を解決するための手段】
[１] 上記の目的を達成するため、請求項１の本発明に係るATMセル多重装置は、まず、各カードに接続された複数のメモリと、該ATMセルに対し、各カードに共通の連続したセル到着番号を付加して該メモリに書き込む書込処理部と、該メモリから該セル到着番号を読み出してその連続性をチェックすることにより、各カードから該ATMセルを該セル到着番号の順番に読み出すと共にその時のセル到着番号を次の読出時に照合するセル到着番号とする読出処理部と、を備える。
【００１０】
すなわち本発明においては、各カードからのATMセルを対応するメモリへ書き込む時、書込処理部が該ATMセルにセル到着番号を連続して付加して行き、その付加したセル到着番号と一緒にメモリへ書き込む。このセル到着番号は各カードに共通な連続した番号になっている。
【００１１】
読出処理部では、ATMセルに付加されたセル到着番号のみを読み出し、これと、以前読み出したセル到着番号とを比較することにより、以前読み出したセル到着番号と連続したセル到着番号を有するATMセルが次に読み出すATMセルであるので、そのATMセルを読み出し、そのATMセルのセル到着番号を次の読出時に照合するセル到着番号とする。
【００１２】
このようにして、カードが複数枚あってもセル到着番号の連続性からATMの読出順序を先着優先で処理することが可能となる。
【００１４】
そして、請求項１の本発明に係るATMセル多重装置においては、各メモリが優先度に対応した数だけ分割して設けられており、該書込処理部が、該ATMセル中に予め付加された優先度を検出し、該ATMセルに該セル到着番号を優先度別に付加して対応するメモリに書き込み、該読出処理部が、該優先度の高いメモリ中のATMセルから該セル到着番号の順番に読み出す。
【００１５】
すなわち本発明においては、ATMセルに優先度を示す例えば優先識別ビットなどが付加されている場合、この識別ビットによりそのATMセルの優先度を識別し、例えば高優先(リアルタイム系)と低優先(データ系)などに分類する。そして、それぞれ優先度別に各カードに対応したメモリに書き込むことにより、セルの到着番号は優先度別にそれぞれ独立して設定されることになる。
【００１６】
読出処理部では、優先度の高いメモリにセルがあるか否かを確認し、ATMセルがあれば、上記のセル到着番号に従ってATMセルを読み出す。優先度の高いセルが無い場合には優先度の低い側のメモリからATMセルを読み出す。そしてこの場合にもセルの到着番号に従ってATMセルを読み出す。
【００１７】
このようにして、高い優先度のATMセルがメモリに残存する内は、そのメモリから読み出し続け、高い優先度のATMセルが無くなった時点で低い優先度のATMセルをメモリから読み出すことにより、低い優先度のATMセルに影響されることなく高い優先度のATMセルをより早く読み出すことが可能となる。
【００１８】
さらに、請求項１の本発明に係るATMセル多重装置においては、該書込処理部が、各メモリに該ATMセルを書き込む時のアドレスカウンタを有し、各ATMセルが各メモリに書き込まれた時、対応する該アドレスカウンタをカウントアップさせると共に、そのカウント値を該読出処理部に通知し、該読出処理部が、該アドレスカウンタに対応した読出時のアドレスカウンタを有し、該ATMセルを該メモリから読み出した時に対応するアドレスカウンタをカウントアップさせ、該書込処理部から通知されたカウント値と該読出処理部のアドレスカウンタのカウント値との差の有無によって各メモリに該ATMセルが存在するか否かを判定する。
【００１９】
すなわち本発明においては、各メモリにATMセルが格納されているか否かを判断するために、書込処理部及び読出処理部においてそれぞれ各メモリに対するATMセルの書込／読出時に用いるアドレスカウンタを設ける。
そして、書込処理部においてはATMセルをメモリに書き込んだ時点でそのアドレスカウンタをカウントアップさせ、読出処理部においては読出処理を行った時点でそのアドレスカウンタをカウントアップさせると共に両方のアドレスカウンタのカウント値(セルカウント値)を比較することにより、一致していなければメモリにATMセルが残っていると判定することが可能となる。
【００２０】
そしてさらに、請求項１の本発明に係るATMセル多重装置においては、該書込処理部及び該読出処理部が、いずれかのカードが引き抜かれたことを示す信号を受けた時、そのカードに対応したメモリのアドレスカウンタをクリアし且つ書込を禁止する。
【００２１】
すなわち本発明においては、運用中にカードが引き抜かれたような場合、引き抜いたカードに対応したメモリのアドレスカウンタのみをクリアし且つその書込を禁止する。
従って、書込処理部におけるメモリのアドレスカウンタのカウント値と読出処理部におけるメモリのアドレスカウンタのカウント値をカードが引き抜かれた時点でリセットすることにより、両者の値が共に"0"となりメモリにおけるセルの蓄積は無いと判定し、不必要な読出を防止することが可能となる。
【００２２】
[２] 請求項１の本発明に係るATMセル多重装置においては、該書込処理部が、該セル到着番号をカウントするカウンタを有し、該カウンタが、各メモリに書き込まれる最大ATMセル数×優先度別のカード枚数+2以上のカウント値を有することが好ましい。
【００２３】
すなわち本発明においては、上記の請求項１で、メモリのアドレスカウンタをクリアする場合、当該メモリに書き込まれているATMセルが実質的に失われることになる。
これに伴い、ATMセルに付加されているセル到着番号も失われることになるので引き抜かれたカードが再び挿入された場合、セル到着番号の連続性を認識することができない。
【００２４】
一方、メモリがフル状態であった場合に、カードが引き抜かれた場合に失われてしまうATMセルの数はメモリ容量分(メモリのアドレス数分)のセル番号数に相当する。もし、メモリの容量(フル時のセル数)×2+2よりセル到着番号が小さい場合には、セル到着番号の不連続時、書込側でセル到着番号をカウントするカウンタが一周している場合があるので一番近い値を認識できない。
【００２５】
このため、該セル到着番号をカウントするカウンタはメモリの容量(フル時のセル数)×2+2以上カウント可能であり、セル到着番号の連続性が検出できなかった場合は以前読み出したセル到着番号から一番近い番号のATMセルを読み出すことによってカードが引き抜かれた場合のセル到着番号の不連続性に関わらず、古いセルから読み出すことが可能となる。
【００２６】
[３] 請求項２の本発明に係るATMセル多重装置においては、該読出処理部が、該読み出したATMセルの該セル到着番号を最新の値として保持しており、各ATMセル中に付加されたセル到着番号と比較し、最初は該最新の値の初期値と一致するATMセルを読み出し、その後は該最新の値を"1"だけインクリメントした値と一致するATMセルを各メモリから読み出すことができる。
【００２７】
このように、書込処理部でATMセルに付加したセル到着番号と、読出処理部で保持する最新のセル到着番号とが"1"だけ異なることによりその連続性をチェックして順番にATMセルを読み出すことができる。
[４] 請求項２の本発明に係るATMセル多重装置においては、該読出処理部が、該一致するATMセルが見つからないとき、該最新の値と各ATMセル中の該セル到着番号との新旧を比較し、以って小さいセル到着番号のATMセルの方から優先的に読み出すことができる。
【００２８】
すなわち本発明では、連続性のないATMセルを検出したときは、セル到着番号の小さいATMセルの方から優先的に読み出せば、カード引き抜き時でも常に古いATMセルから読み出すことが可能となる。
【００２９】
【発明の実施の形態】
図1は本発明に係るATMセル多重装置の一実施例を示したもので、この実施例では2枚のカード▲１▼及び▲２▼を設けているが、本発明はこれに限定されるものではない。
【００３０】
図中、書込処理部1はカード▲１▼に接続されてカード▲１▼のデータを入力する書込処理部2と、カード▲２▼に接続されてその出力データを入力する書込処理部3と、これらの書込処理部2及び3に共通に接続され、セル到着番号を付加するセル到着番号付加部4とで構成されている。
【００３１】
また、この実施例では優先度として高優先と低優先とを用いており、この為、カード▲１▼及び▲２▼に対して高優先のRAMメモリであるFIFO 5及び6が設けられると共に同様にしてカード▲１▼及び▲２▼に対して低優先のメモリとしてFIFO 7及び8が設けられている。
【００３２】
FIFO 5 及び7は書込処理部2からのカード▲１▼のデータDATA 1をその優先度に応じて書き込むように接続されており、FIFO 6 及び8は書込処理部3からのカード▲２▼のDATA 2をやはり優先度に応じて書き込むように接続されている。
読出処理部９は書込処理部２及び３からのアドレスカウンタのカウント値（以下、単にアドレスカウンタまたはカウンタと称することがある。）W_CTR_H1, W_CTR_H2, W_CTR_L1, W_CTR_L2を入力すると共に、カウンタトリガ信号 W_CTR_H1_TRG, W_CTR_H2_TRG, W_CTR_L1_TRG, W_CTR_L2_TRGを入力している。
【００３３】
なお、以下の説明及び図面中において、例えば "H/L"は高優先又は低優先を示し、"H1/L1"はカード▲１▼高優先又はカード▲１▼低優先を示すものとする。
また、読出処理部9から書込処理部2に対しては読出処理部9内におけるアドレスカウンタのカウント値R_CTR_H1 及び R_CTR_L1が与えられ、書込処理部3に対しては、同じくアドレスカウンタのカウント値R_CTR_H2及び R_CTR_L2が与えられている。
【００３４】
さらに、FIFO 5に対してはアドレスADD_H1を与えることによりデータ（ATMデータセル）DATA_H1を読み出し、FIFO 6に対してはアドレスADD_H2を与えてデータDATA_H2を読み出し、FIFO 7に対してはアドレスADD_L1を与えてデータDATA_L1を読み出し、そして、FIFO 8に対してはアドレスADD_L2を与えてデータDATA_L2を読み出すようにしている。
【００３５】
このような本発明に係るATMセル多重装置の実施例の動作を、まず図2に示した動作フローチャートと図３〜図６に示したタイムチャートを参照して以下に説明する。なお、図２に示したフローチャートは書込処理部２及び３のいずれかを示したものであるが、ここではカード▲１▼に対する書込処理部２を例にとって説明する。
【００３６】
まず、書込処理部2はカード▲１▼が引き抜かれたか否かを判定する（ステップS1）。これは、図1には示していないが図3に示すようなカード抜け信号CARDがカード▲１▼から来ているか否かを監視することによって検出することができる。そして、カード抜け状態であることが判明した時にはカード▲１▼の側のFIFO 5及び7のアドレスカウンタ W_CTR_H/Lをクリアする(同S2)。
【００３７】
なお、図3において、カード抜け信号CARDを3段シフトさせ、且つ、このカード抜け信号を分周した信号U_PONを何段かシフト(この例では4段シフト)させることにより、FIFO 5及び7をクリアすると同時にその書込を禁止する期間を設定することができる。この書込禁止期間は図3では2つの例が示されているが、メモリの処理速度などによって種々決定できるものである。
【００３８】
また、FIFO 5及び7に対する書込処理部２におけるカウンタW_CTR_H/Lのリセット状態（値“0”）は図示のようにトリガ信号W_CTR_H/L_TRGによって信号U_PONと共に読出処理部9に伝えられる。
カード▲１▼が引き抜かれていないことが分った時には、今度はフレームパルスをチェックする(同S3)。これは、図4に示すようにカード▲１▼からの信号UPFPを監視し、且つこれを２段保護を与えることにより判定するようにしている。
【００３９】
次に、高優先セルが強制設定されているか否かを判定する(同S4)。これは、外付ピン等により、例えばカード▲１▼からのデータを全て高優先セルであると見做して強制的に設定するものであり、その場合にはステップS6に進むが、そのような強制設定がされていない場合にはステップS5に進む。
【００４０】
ステップS5においては、カード▲１▼からのデータが高優先セルであるか否かを判定する。これは、ATMセルにおけるQOSビット(サービス品質を識別するビット)により行うもので、図4に示す如く、カード▲１▼から入力したデータを２段シフトする際、１段目のシフト状態における0バイト目を判定ポイントとして見ることにより分かるものである。
【００４１】
この結果、高優先セルであることが分った時にはさらにパリティエラーの有無を判定し(同S6)、パリティエラーが無い場合にはステップS7の処理を下記のように実行する。
（1）ヘッダ部分を高優先FIFO 5に書き込む。これは、図4に示す2〜5バイト目のRAMデータ部分がFIFO 5に書き込まれることを示している。
【００４２】
（2）セル到着高優先用カウンタU_CTR_H/Lをカウントアップさせるように指示する。これは、書込処理部2がセル到着番号付加部4に対してセル到着番号を付加するためのカウンタのカウントアップを指示する処理であり、これを図5及び図6のタイムチャートにより説明する。
【００４３】
まず、このセル到着番号付加部4には高優先用のカウンタU_CTR_Hと低優先用のカウンタU_CTR_Lが設けられており、図4に示すようにQOSビットによって判定した優先処理の種別が例えば高優先であったことが分かった時には、書込処理部2からセル到着番号付加部4に対して高優先用のカウンタイネーブル信号U_CTR_EN_H1またはU_CTR_EN_H2が与えられるので、図5(1)に示すようにカード▲１▼であるかカード▲２▼であるかにより、カウンタU_CTR_Hはカウントアップする。
【００４４】
この実施例においては、セル到着番号カウンタU_CTR_H/Lは前述した「メモリ容量×カード枚数＋2」の一例として「0〜31」のカウント値をとるように設定されている。これについては後でも述べる。
そして、カード▲１▼であるか▲２▼であるかによって高優先セルの到着番号を図示のように振り分ける。
【００４５】
この状態が図6(1)により分り易く示されており、カード▲１▼に対する高優先FIFO 5においては12個のセル到着番号を各ATMセル中に付加するようになっている。最初のセルは到着番号(タイムスタンプ)が"0"としてカード▲１▼のFIFO 5のアドレスカウント"1"のセル中に付加され、2番目に到着したセルはカード▲２▼からのものであるので、FIFO 6においてアドレスカウント"1"の位置に付加されることになる。
【００４６】
以下、同様にして15番目のセルがカード▲１▼のFIFO 5におけるアドレスカウント"8"の位置に付加される例が最終セルである。
なお、図5及び図6ではカード▲１▼及び▲２▼からのATMセルが同時に到着した場合も示しており、この時には図示のように同じセル到着番号が例えば高優先セルであればFIFO 5及び6に共通に付加されることになる。
【００４７】
このようにして、セル到着番号は図4に示すRAMデータ中の5バイト目と6バイト目の間のHEC部(0バイト目に相当)に付加されることになる。図4の例では、高優先用のセル到着番号カウンタU_CTR_Hの値「15」が挿入されるように示されている。
【００４８】
（3）セル書込アドレスカウンタW_CTR_H/Lをカウントアップさせる。これは、図5及び図6に示したように、例えばFIFO 5に高優先セルが書き込まれて行く度毎にカウンタW_CTR_Hがカウントアップされて行き、図6の例では最後の15番目のATMセルがFIFO 5に格納された時のカウント値は"8"となっている。
【００４９】
この状態は前述の如く図4にも示されており、カウンタイネーブル信号U_CTR_EN_Hが発生した後、書込アドレスカウンタW_CTR_Hは"2"から"3"にカウントアップしている状態が示されている。このようなカウント値はトリガ信号W_CTR_TRGにより読出処理部9に通知される。
【００５０】
このようにステップS7を実行した後、ステップS8ではペイロード部分をFIFO 5に書き込む。すなわち、図4に示したRAMデータには優先度を示すHECバイト部の所にセル到着番号を挿入しているので、このHECバイト部と先のヘッダ部以外のペイロード部分を高優先FIFO 5に書き込むことにより、ATMセルデータ中には優先度を示す必要が無く、セル到着番号のみが挿入された形でFIFO 5に書き込まれることになる。
【００５１】
ステップS5に戻って、ATMセルが高優先セルでないことが分った場合には、更に低優先セルであるか否かを判定し(同S9)、低優先セルであることがQOSビットから分った時には、高優先セルと同様の処理を実行する(同S10〜S12)。
この低優先セルの場合には図4の右側に示されており、HECバイト部においては、セル到着番号「29」が挿入されるようになっている。また、この低優先時におけるセル到着番号の付加処理が図5(2)に示されており、この結果、図6(2)に示すようにカード▲１▼及び▲２▼に対する低優先用のFIFO 7及び8に書き込まれるATMセルとそのアドレスカウンタW_CTR_L1/L2が示されている。
【００５２】
次に、図1に示した読出処理部9の動作を図7及び図8に示したフローチャート並びに図9〜図11に示したタイムチャートを参照して以下に説明する。
まず読出処理部9は、カード▲１▼が引き抜かれているか否かを図3に示した信号U_PONを書込処理部2から受けることにより判定する(ステップS21)。カードが引き抜かれていることが分かった時には、図11の信号U_PON及びU_PON_FLAGに示すように読出処理部9に設けられている読出アドレスカウンタR_CTR_H1/L1をクリアする(同S22)。
【００５３】
同様に、カード▲２▼が引き抜かれていることが分かった時には(同S23)、読出アドレスカウンタR_CTR_H2/L2をクリアする(同S24)。
次に、読出処理部9は読出要求があるか否かを判定する(同S25)。これは、図9に示す如く加入者終端装置(OLT装置)からの下りデータ（のフレームカウンタ「49」の位置）により指定されるものである。この読出要求があったときには、高優先FIFOセルがあるか否かを判定する(同S26)。
【００５４】
このステップは、次のステップS23においてカード▲１▼及び▲２▼について共に高優先セルがあるか否かを判定するステップと同様に実行することができる。
すなわち、FIFO 5及び6には、図1及び図6(1)に示したように高優先セルが書き込まれているが、このように高優先セルが書き込まれているか否かは書込処理部2及び3における書込アドレスカウンタW_CTR_H1/H2と読出処理部9における読出アドレスカウンタR_CTR_H1/H2とを比較し、両者に差があるか否かによって判定する。
【００５５】
すなわち、書込処理部2においては例えばFIFO 5に関してカウンタW_CTR_H1のカウンタ値として"8"が設定されており、図10に示す如くトリガ信号W_CTR_TRG及びその保護段を経由した信号により読出処理部9に取り込まれている。
従って、読出処理部9においては後述する読出アドレスカウンタR_CTR_H1(同S32)の位置にATMセルを読み出した時のカウント値が保持されているので、このカウント値を書込みアドレスカウンタW_CTR_H1のカウンタ値と比較すれば良い。
【００５６】
但し、最初はカウンタR_CTR_H1は"0"であるから一致せず、この場合にはまずカード▲１▼のFIFO 5に高優先セルが書き込まれていることが分かる。同様にして図6(1)の例ではFIFO 6においても高優先セルが書き込まれているので、ステップS26からステップS27に進む。
【００５７】
このように、FIFO 5及び6において共に高優先セルが書き込まれている場合には、図8に示す読出優先処理が実行される(同S28)。
すなわち、読出処理部9においては、後述する読出セルの到着番号の最新値(同S47)を保持しており、この保持しているセル到着番号とFIFO 5及び6に書き込まれているATMセル中に付加されたセル到着番号が等しいか否かを図9に示すATMセルの0バイト目（フレームカウンタ「51」の位置）に基づいて判定する(同S51)。
【００５８】
この場合、最初の保持セル到着番号は初期値＝"0"であるので、図6(1)に示すFIFO 5のアドレスカウンタ値"1"に書き込まれている高優先セルのセル到着番号"0"と一致するので、ステップS52を経由してFIFO 5におけるアドレス"1"におけるATMセルが指定される。
【００５９】
すなわち、もしセル到着番号がカード▲１▼及び▲２▼で同じである場合（同時セル到着）には、ステップS51及びS52でカード▲１▼のFIFO 5の方が優先的に読み出されることを示している。もちろん、これは逆に設定することも可能である。
これにより、ステップS30に進み、FIFO 5におけるセル到着番号"0"のATMセルが読み出される。この読み出したATMセルのヘッダにエラーが無ければ（これは図9に示すパリティエラー信号UPPERR1により判定する。）、アドレスカウンタR_CTR_H1のみをカウントアップする(同S31, S32及び図9参照)。
【００６０】
そして、情報セルを組み立て(同S46)、図9に示すように多重データMUX_DATAが出力されることになる。この多重データMUX_DATAは56バイトのATM-PONレイヤに4バイトのATMヘッダと49バイトのデータセルを合わせた53バイトのATMセルをマッピングした形で出力される。
【００６１】
そして、ステップS47では前述の如く読み出したATMセルの到着番号（上記の例では"0"）を最新値として保持する。
このようにしてATMセルを読み出した後、ステップS21に戻り、同S22〜S25を経由した後、同S26及びS27で高優先セルがFIFO 5及び6に共に書き込まれていることが分かった時には再びステップS28に進む。
【００６２】
再び図8のステップS51において、保持セル到着番号は図7のステップS47で保持している最新のセル到着番号が"0"のままであり、且つステップS32でアドレスカウンタR_CTR_H1がカウントアップしているのでFIFO 5についてはアドレスカウンタR_CTR_H1の値"2"以上のセル到着番号が対象となり、FIFO 6についてはアドレスカウンタR_CTR_H2の値"1"以上のセル到着番号が対象となるので、いずれも保持セル到着番号と一致せず、従ってステップS51からステップS53に進む。
【００６３】
ステップS53では、保持セル到着番号を"1"だけインクリメントして"1"とし、FIFO 5及び6のセル到着番号と比較する。この結果、図6(1)の例では、FIFO 6のアドレスカウンタR_CTR_H2が"1"を指すセル到着番号"1"と一致するので、ステップS54を経由してステップS33に進み、FIFO 6の高優先セルを読み出し(同S33)、且つ同様にそのヘッダエラーの無いことを確認した後(同S34)、読出アドレスカウンタR_CTR_H2をカウントアップさせ(同S35)、情報セルを組み立て(同S45)、今読み出したセルの到着番号の最新値"1"を保持する(同S47)。
【００６４】
なお、ステップS53及びS54においても同S51及びS52と同様にカード▲１▼側を優先的に読み出すように設定している。
このようにして、再びステップS21からS28に進み、同じ処理を繰り返すことにより、図6(1)に示す15個のATMセルはセル到着番号に従って全て順次連続して読み出すことが可能となる。
【００６５】
従って、その後ステップS26に進んだ時、アドレスカウンタW_CTR_HとR_CTR_Hの両カウント値に差がないことから高優先セルはもう残っていないことが分かるので、ステップS36に進み、高優先セルと同様に低優先セルについての処理を行う。
【００６６】
この場合も、FIFO 7及び8に共に低優先セルがあるか否かを判定し(同S37)、共にある場合には読出優先処理を実行し(同S38)、FIFO 7またはFIFO 8の低優先セルを読み出し(同S40及びS43)、それぞれ読出セルのヘッダにエラーが無いことを確認した後(同S41及びS44)、読出アドレスカウンタR_CTR_L1及びR_CTR_L2をそれぞれカウントアップし（同S42及びS45）、情報セルを組み立て(同S46)、読み出したセルの到着番号を最新値として保持する(同S47)。
【００６７】
また、FIFO 7及び8のいずれかに低優先セルがある場合も同様にステップS37から同S39を経由して同様の処理を行なうことになる。
なお、ステップS31, S34, S41, S44において読出セルのヘッダにエラーがある場合には、アイドルセルの組み立てを行う(同S48)。
【００６８】
ここで、上記のステップS21及びS23においてカード▲１▼又は▲２▼が引き抜かれているか否かを判定したが、これらのカードが引き抜かれたような場合には引き抜かれた方のアドレスカウンタ(R_CTR_H/L)はクリアされるので、引き抜かれたカード側のセル到着番号が失われることになる。
【００６９】
その結果、セル到着番号の連続性を見るだけではカードが引き抜かれた時のセルの読出優先処理を行うことはできない。すなわち、セル到着番号が飛んだ場合は、上記のステップS28及びS38における読出優先処理において図8のステップS51〜S54だけでは古いセルから読み出すことができないので、さらにステップ S55〜S59に示す処理を行っている。
【００７０】
すなわち、カードが引き抜かれてしまった場合にはステップS53において保持セル到着番号を"1"だけインクリメントしたのではFIFO に書き込まれているATMセルのセル到着番号と一致せずATMセルを読み出すことはできない場合がある。
そこで、ステップS53からS55に進み、例えば図6(1)の高優先セルを例に考えると、保持セル到着番号"6"の位置でカード▲１▼が引き抜かれてしまった場合には、FIFO 5にその後に書き込まれるセル到着番号は"16"となるので、保持セル到着番号はFIFO 5及び6のいずれの到着番号よりも小さくなる。
【００７１】
従って、ステップS56に進み、この場合にはFIFO 5に書き込まれるセル到着番号"16"よりFIFO 6におけるセル到着番号"9"の方が小さいのでFIFO 6のセル到着番号"9"のセルの方が古いものであるとして選択され出力されることとなる。
また、保持セル到着番号がFIFO 5及び6のいずれかよりも小さい場合にはその保持セル到着番号の方が小さい関係にあるFIFOのセル到着番号のATMセルを出力すればよい(同S57及びS58)。
【００７２】
そして、保持セル到着番号がFIFO 5及び6のいずれのセル到着番号よりも大きい場合には、小さい方のFIFOのセル到着番号を選択することになる(同S59)。
このようなことから、書込処理部1におけるセル到着番号付加部4に設けられるセル到着番号カウンタU_CTR_H/Lは、フルの時のセル数×2+2以上のカウント値を有する必要があり、図6に示した例では、「26」以上のカウント値を設定する必要がある(図6の例では5ビットカウントの例として"31"に設定されている)。
【００７３】
また、ステップS59の例としては、図6(2)において、FIFO 8のセル到着番号"31"の時点でカード▲１▼が引き抜かれたような場合、FIFO 7に書き込まれるその後のATMセルの到着番号は"17"となるので、保持セル到着番号はFIFO 7及び8のセル到着番号のいずれよりも大きくなり、且つFIFO 8のセル到着番号"0"はFIFO 7のセル到着番号"17"よりも小さいので、FIFO 8のセル到着番号"0"のATMセルが読み出されることになる。
【００７４】
なお、図1及び図9に示した読出アドレスカウンタR_CTR_H/Lの値が書込処理部1に与えられているが、これはFIFOがフル状態になり読み出せなくなった状態を通知して、FIFOへのATMセルの書込を停止させるためである。
【００７５】
【発明の効果】
以上説明したように本発明に係るATMセル多重装置によれば、複数のカードから出力されるATMセルについて共通の連続したセル到着番号をセル毎に付加してメモリに書き込み、読出側でそのセル到着番号の連続性をチェックすることでATMセルを先着優先順位に読み出すと共にその時のセル到着番号を次の読出時に照合する番号として用いるように構成したので、セル数のアップダウンカウンタや制御用のメモリが必要なくなる。
【００７６】
また、いずれのカードが引き抜かれた場合、引き抜かれていない方のカードは正常に運用し、引き抜かれたカードのみアドレスカウンタをクリアすると共に、クリアに伴うセル到着番号の不連続が起きてもセル到着番号の最大値を古いセルから読み出すことができるような値に設定したので引き抜かれた前後のセルの順序の入れ換えが発生せずに済む。
【００７７】
さらに優先度に応じて格納するメモリを分け、リアルタイム系などのATMセルとデータ系のATMセルを識別した読出制御を行うことが可能となる。
【図面の簡単な説明】
【図１】本発明に係るATMセル多重装置の一実施例を示すブロック図である。
【図２】本発明に係るATMセル多重装置に用いられる書込処理部（カード1枚分）の動作フローチャート図である。
【図３】本発明に係るATMセル多重装置に用いられる書込処理部のカード抜け時の動作タイムチャート図である。
【図４】本発明に係るATMセル多重装置に用いられる書込処理部の動作タイムチャート図である。
【図５】本発明に係るATMセル多重装置に用いられるセル到着番号付加部の動作タイムチャート図である。
【図６】本発明に係るATMセル多重装置におけるFIFOメモリの先着優先読出順序例を示した図である。
【図７】本発明に係るATMセル多重装置に用いられる読出処理部の動作フローチャート図である。
【図８】図7に示した読出優先処理の実施例を示したフローチャート図である。
【図９】本発明に係るATMセル多重装置に用いられる読出処理部の動作タイムチャート図である。
【図１０】本発明に係るATMセル多重装置に用いられる読出処理部での書込処理信号の取り込み動作を示すタイムチャート図である。
【図１１】本発明に係るATMセル多重装置に用いられる読出処理部でのカード抜け信号によるリセット動作のタイムチャート図である。
【図１２】  ATMセル多重装置を含む光加入者インターフェース装置を示したブロック図である。
【符号の説明】
1  書込処理部
2  カード▲１▼側書込処理部
3  カード▲２▼側書込処理部
4  セル到着番号付加部
5  カード▲１▼の高優先FIFO
6  カード▲２▼の高優先FIFO
7  カード▲１▼の低優先FIFO
8  カード▲２▼の低優先FIFO
9  読出処理部
11  ATMセル多重装置
図中、同一符号は同一または相当部分を示す。
【図１】
0004222694.tif 000002
【図２】
0004222694.tif 000003
【図３】
0004222694.tif 000004
【図４】
0004222694.tif 000005
【図５】
0004222694.tif 000006
【図６】
0004222694.tif 000007
【図７】
0004222694.tif 000008
【図８】
0004222694.tif 000009
【図９】
0004222694.tif 000010
【図１０】
0004222694.tif 000011
【図１１】
0004222694.tif 000012
【図１２】
0004222694.tif 000013