JPH03220945A - Packet buffer circuit and packet processing circuit - Google Patents
Packet buffer circuit and packet processing circuitInfo
- Publication number
- JPH03220945A JPH03220945A JP2016511A JP1651190A JPH03220945A JP H03220945 A JPH03220945 A JP H03220945A JP 2016511 A JP2016511 A JP 2016511A JP 1651190 A JP1651190 A JP 1651190A JP H03220945 A JPH03220945 A JP H03220945A
- Authority
- JP
- Japan
- Prior art keywords
- data
- packet
- check code
- memory
- section
- 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
Links
- 239000000872 buffer Substances 0.000 title claims description 96
- 230000015654 memory Effects 0.000 claims description 110
- 238000000034 method Methods 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000013500 data storage Methods 0.000 claims 5
- 238000007689 inspection Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 230000003111 delayed effect Effects 0.000 description 5
- 230000003139 buffering effect Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
本発明は、パケットバッファ回路及びパケット処理回路
、更に詳しくいえば、固定長のパケット伝送/交換装置
に用いられるバッファメモリ回路の書き込み、読みだし
制御回路及びパケット信号の処理回路を比較的低速のメ
モリ素子を使用して構成する回路に関する。特に、AT
M(非同期転送モード)方式によるセル信号の処理に好
適な回路に関するものである。
(従来の技術1
通信分野における広帯域・マルチメディア化に対して、
CCITT(国際電信電話諮問委員会)で合意がなされ
たATM(アシンクロナス トランスファ モード”A
synchronous Transfer Mode
”非同期転送モード)方式では、セルと呼ばれる固定長
パケットを用いて伝送/交換を行う。このとき、伝送路
で多重化を行う際のタイムスロットの指定や、交換時の
トラフィック制御などで、セルの一次記憶を行うバッフ
ァメモリ装置が数多く使用される。
実用化を0指している1 50 M b / s等の高
速伝送の際には、例えばデータを8ビット数列(以下並
列ビット数をデータ幅と呼ぶ)にして扱ったとしても、
1バイト当たり約20 M Hzの速度となる。更には
、バッファメモリへの読み書きを別々に時刻で行えば、
約40MHzの高速の動作が要求される。その結果、バ
ッファメモリを高速のメモリ素子で構成するか、あるい
は、実効的な動作速度を低減させるなんらかの制御回路
等が必要になる。
従来は、バッファメモリにデュアルポートメモリを用い
て書き込み動作と読み出し動作を同時に行ったり、バッ
ファメモリを2系統用意しておいて書き込みと読み出し
を別のメモリに対して切り換えながら行う、等の方法が
用いられてきた。また、バッファメモリを2系統用意す
る方法に対しては、特許公開公報特開平1−16195
0号に記載の装置のように、独立して読み書きできるメ
モリブロックを複数用意し、読み出しと書き込みが同じ
ブロックに行われる場合は、書き込みブロック間をジャ
ンプさせ、メモリ量を、最低限必要な量に1ブロック分
加えるのみとしたバッファメモリ制御装置も提案されて
いる。The present invention provides a packet buffer circuit and a packet processing circuit, and more specifically, a write/read control circuit and a packet signal processing circuit of a buffer memory circuit used in a fixed-length packet transmission/switching device. The present invention relates to a circuit configured using elements. In particular, A.T.
The present invention relates to a circuit suitable for processing cell signals using the M (asynchronous transfer mode) method. (Conventional technology 1) Regarding broadband and multimedia in the communication field,
ATM (asynchronous transfer mode) A agreed upon by CCITT (International Telegraph and Telephone Consultative Committee)
Synchronous Transfer Mode
In the "asynchronous transfer mode" method, fixed-length packets called cells are used for transmission/switching.At this time, cell Many buffer memory devices are used for primary storage of Even if it is treated as
The rate is approximately 20 MHz per byte. Furthermore, if you read and write to the buffer memory separately at different times,
High-speed operation of approximately 40 MHz is required. As a result, it is necessary to configure the buffer memory with a high-speed memory element, or to provide some kind of control circuit that reduces the effective operating speed. Conventionally, methods include using dual-port memory as the buffer memory to perform write and read operations at the same time, or preparing two systems of buffer memory and performing write and read operations while switching to different memories. has been used. In addition, regarding the method of preparing two systems of buffer memory, Japanese Patent Application Laid-open No. 1-16195
As with the device described in No. 0, multiple memory blocks that can be read and written independently are prepared, and when reading and writing are performed to the same block, jumps are made between writing blocks to reduce the amount of memory to the minimum required amount. A buffer memory control device that only adds one block to the buffer memory has also been proposed.
【発明が解決しようとする課題)
上記従来技術は、デュアルポートメモリやFIFOを利
用する場合や、バッファメモリ制御装置を使用する場合
のどちらにおいても、バッファの読み出し/書き込みの
同時実行を目的としており、読み出し/書き込み自体の
レートを下げるものではない。即ち、セルの伝送速度が
そのままメモリ素子やFIFOの読み出し/書き込み速
度となり、依然として高速のメモリ素子を必要とする。
また、メモリ素子の動作速度を下げる方法としては、デ
ータ幅即ち並列化ビット数を多くして、読み出し/書き
込み頻度を下げることが行われる。
しかし、ATMセルの場合は1セルの長さが53バイト
である為、連続したセルに対してセルの境界を保ったま
までデータ幅を広くすることができない。例えば、16
ビツト幅にすれば、最後の1バイトは組み合わせる相手
がなく、アクセスに許容される時間も半分になってしま
う。これは53バイトという数字が素数である為である
。従って、セルの境界を保存するためには、8ビット以
上のデータ幅では53ビツト幅にするしかなく、拡大し
たデータ幅を使用することは、実用上不可能といえる。
更に、パケット境界の整正のための余分なデータを付与
するような方法もあるが、生成することの困難な特別な
りロックが必要となる。
本発明の目的は、パケットの冗長性を利用して境界を保
存したままでより広いデータ幅での処理を可能にするバ
ッファメモリ回路を実現することである。即ちセル単位
で処理する場合に、セルの最終バイトの処理後に1次の
セルの最初のバイト信号が処理されるようになるように
回路を構成する。更に、データ幅を広げることにより、
低速の回路素子で構成可能な、パケット信号を対象とす
るバッファメモリ回路及びパケット処理回路を実現する
ことである。
本発明の他の目的は、メモリ量を変化させずに低速のメ
モリ素子あるいはFIFOメモリの利用を可能にするこ
とにある。また1作成が困難な異なる周波数のクロック
を用いずとも適用可能なメモリ制御回路を提供すること
にある。即ち、メモリへの読み書きに、パケット境界の
整合に必要な余分なデータを加える為の、本来の読み書
きクロックと少し周波数が異なるクロックを発生させる
クロック発生回路を不要にすることにある。
【課題を解決するための手段】
本発明は上記目的を達成するため、固定長パケットを一
時的に記憶するパケットバッファ回路において、
a)上記パケットの一定の位置にあるデータを上記パケ
ットから取り除き、上記パケットの残りのデータを入力
データのに倍(kは2以上の整数)のデータ幅に拡張す
る分配並列化部と、b)書き込みデータの順序関係およ
び読み出しデータの順序関係を保存しながら、上記分配
並列化部の出力データを一時的に記憶するバッファメモ
リと。
C)上記パケットから取り除いた上記データを保存する
手段と。
d)上記バッファメモリの出力データのデータ幅を↓/
k倍に縮小し、上記手段から読み出した上記データを入
れるスペースを確保する多重化部とe)上記手段から読
みだした上記データを、上記多重化部の上記出力データ
内の上記スペースに挿入する選択部とを設け、上記入力
パケットのデータ幅と等しいデータ幅で上記バッファメ
モリの読み書きを行う場合に比べてl/k倍の速度で上
記バッファメモリの読み書きを行うようにした。
すなわち、上記残りのデータ長は上記バッファメモリの
読み書きのデータ幅の整数倍となるようにした。
上記入力データがパケットの中の特定位置に検査符号が
含まれている場合は、上記パケットから取り除く上記デ
ータは上記検査符号の一部か全部とする。その場合、上
記取り除くデータを保存する手段はメモリであっても、
取り除いた検査符号に対応する符号をバッファメモリか
ら読みだされたデータから再計算する計算回路で構成し
てもよい。
更に、上記バッファメモリは入出力の順序関係が維持さ
れるかぎり、信号処理回路であってもよい。[Problems to be Solved by the Invention] The above-mentioned conventional technology aims at simultaneous execution of buffer read/write, both when using a dual port memory or FIFO, and when using a buffer memory control device. , it does not reduce the read/write rate itself. That is, the cell transmission speed directly becomes the read/write speed of the memory element or FIFO, and a high-speed memory element is still required. Further, as a method of lowering the operating speed of a memory element, the data width, ie, the number of parallel bits, is increased to lower the read/write frequency. However, in the case of an ATM cell, since the length of one cell is 53 bytes, it is not possible to widen the data width while maintaining the cell boundaries for consecutive cells. For example, 16
If the bit width is used, the last byte will have no partner to combine with, and the time allowed for access will be halved. This is because the number 53 bytes is a prime number. Therefore, in order to preserve the cell boundaries, the data width of 8 bits or more has no choice but to be 53 bits wide, and it is practically impossible to use an expanded data width. Furthermore, there is a method of adding extra data for aligning packet boundaries, but this requires special locks that are difficult to generate. An object of the present invention is to realize a buffer memory circuit that utilizes packet redundancy to enable processing with a wider data width while preserving boundaries. That is, when processing in units of cells, the circuit is configured such that the first byte signal of the primary cell is processed after the last byte of the cell is processed. Furthermore, by expanding the data width,
An object of the present invention is to realize a buffer memory circuit and a packet processing circuit for processing packet signals, which can be configured with low-speed circuit elements. Another object of the present invention is to enable the use of low-speed memory elements or FIFO memories without changing the amount of memory. Another object of the present invention is to provide a memory control circuit that can be applied without using clocks of different frequencies, which is difficult to create. That is, the purpose is to eliminate the need for a clock generation circuit that generates a clock with a slightly different frequency from the original read/write clock in order to add extra data necessary for alignment of packet boundaries when reading and writing from memory. [Means for Solving the Problems] In order to achieve the above object, the present invention provides a packet buffer circuit for temporarily storing fixed length packets, which includes: a) removing data at a certain position of the packet from the packet; b) a distribution parallelization unit that expands the remaining data of the packet to a data width twice that of the input data (k is an integer of 2 or more); b) while preserving the order relationship of write data and the order relationship of read data; a buffer memory that temporarily stores output data of the distributed parallelization section; C) means for storing said data removed from said packet; d) Set the data width of the output data of the buffer memory above ↓/
a multiplexing unit that reduces the size by k times and secures a space for storing the data read from the means; and e) inserts the data read from the means into the space in the output data of the multiplexing unit. The buffer memory is read and written at a speed 1/k times faster than when the buffer memory is read and written with a data width equal to the data width of the input packet. That is, the remaining data length is set to be an integral multiple of the read/write data width of the buffer memory. If the input data includes a check code at a specific position in the packet, the data to be removed from the packet is part or all of the check code. In that case, even if the means to save the data to be removed is memory,
It may be configured with a calculation circuit that recalculates the code corresponding to the removed check code from the data read from the buffer memory. Furthermore, the buffer memory may be a signal processing circuit as long as the input/output order relationship is maintained.
【作用1
本発明によれば、バッファメモリの読み書きの速度は入
出力データの速度の1/kとなり、バッファメモリを低
速の回路素子で構成するころができる。
バッファメモリに読み書きされるパケットのデータ(残
りのデータ)量は読み書きデータ幅の整数倍となるので
、パケットの境界が保存される。
更に、パケットがATMセルの場合は、次のような利点
をもつ。 例えば、53バイト長のATMセルには1バ
イトのヘッダエラーチエツクと呼ばれる検査符号(CR
C)符号が含まれており、従って、検査符号を取り除け
ば52バイト長とすることができる。これにより、デー
タ幅を16ビツトにすれば、セルは26ワード長として
取り扱えるし、32ビツト幅とすれば、セルは13ワー
ド長として扱える。即ち、16ビツト幅で読み出し/書
き込み速度を2分の1に、32ビット幅で読み出し/I
Fき込み速度を4分の1にすることができる。
取り除いた検査符号は別にメモリに読み書きする必要は
なく、セル内のヘッダが実質的に内在させているもので
あり、バッファメモリから読み出されたヘッダから再計
算によって作りだすことができる。
【実施例】
以下、本発明の実施例について説明する。
第1図は、本発明によるパケットバッファ回路の一実施
例の構成を示すブロック図である。
パケットバッファ回路は入力部、バッファメモリ1及び
出力部からなる。入力側部において、nビット並列の入
力データ信号101はパケットの先頭を示す入力タイミ
ング信号102と組にして、分配並列化部2に入力され
る。分配並列化部2は詳しくは第4図の実施例によって
説明するように、入力されたパケット(入力データ信号
101)から検査符号を取り除く。検査符号がパケット
の途中に存在する場合、検査符号を除いた後のスペース
を詰める。更に、分配並列化部2で、検査符号を除くと
同時に入力データ信号101のデータ幅を変更する。こ
こでは、データ幅をに倍(kは2以上の整数)、すなわ
ちknビット並列の出力データ107にする。データ幅
かに倍になった出力データ107は、先入れ先出しメモ
リ(FIFOメモリ)1に一時的に書き込まれる。
この時、メモリ1への書き込みの制御は、FIFOメモ
リ1の書き込みクロック103で行われる。
FIFOメモリ1の書き込みクロック103は、パケッ
トから検査符号を取り除いたパケット長に対応したクロ
ック周波数を持つ。FIFOメモリ1には、書き込まれ
たパケットの先頭を示すために入力タイミング信号10
2も同時に書き込まれるが、入力タイミング信号遅延部
6で、分配並列化部2における入力データの遅延に対応
した遅延を与えられた後に、FIFOメモリlに書き込
まれる。
バッファメモリ回路の出力部では、FIFOメモリlの
読み出しクロック106に従って読み出された出力デー
タ109は、多重化部3で、データ幅が元のnビット並
列の信号 112に戻される6更に、多重化部3で、
検査符号が入るべき位置にスペースが確保される。多重
化部3でデータ幅を元に戻すと同時に、FIFOメモリ
1の出力データ109に対して、付加すべき検査符号が
検査符号再計算部4で再計算される。検査符号付加部5
では、多重化部3で元のデータ幅に戻されたパケットデ
ータ信号112に対して、入力されたパケットデータの
本来検査符号があった位置に。
検査符号再計算部4で再計算された検査符号111が挿
入される。これらの結果、復元されたパケットデータは
、出力データ信号 104として、本パケットバッフ
ァ回路から出力される。
また、FIFOメモリ1から読み出されたパケットデー
タの先頭位置を示すタイミング信号110は、多重化部
3、検査符号再計算部4、検査符号付加部5の動作タイ
ミング生成に使われると同時に、これらの処理に見合っ
た遅延が出力タイミング信号遅延部7で与えられ、出力
タイミング信号105として本パケットバッファ回路か
ら出力される。また、FIFOメモリ1の読み出しクロ
ック106は、FIFOメモリ1の書き込みクロック1
03と同様に、パケットデータから検査符号を取り除い
た後のパケット長に対応した周波数を持つ。
上述のパケットバッファ回路を、ATMセルに対して適
用した場合のタイミングチャートを、第2図に示す。
ATMセルは、セル長は53バイトであり、第5バイト
目に、第1〜4バイトのヘッダに対するCRC符号が、
検査符号として存在する。以下の説明では、ATMセル
は8ビット並列で入力されるものとし、並列化の度合い
を示す整数kについては、k=2とする。
本パケットバッファ回路に対する入力データ信号は、1
セル当たり53バイトのデータ長である。
このセルに対して、第5バイト目の検査符号を取り除い
た後で、先頭から2バイトづつを組み合わせて16ビツ
ト並列にしたデータを、FIFOメモリ1の書き込みデ
ータとする。即ち、FIFOメモリ1の書き込みデータ
は、元のバケットの第1と第2バイト目、第3と第4バ
イト目、第6と第7バイト目、第8と第9バイト目のよ
うに組み合わせて16ビツト並列化する。この書き込み
データを一時的にFIF○メモリ1に書き込み、読み出
したFIFOメモリ1の出力データを8ビット並列に戻
し、戻した結果の第5バイト目に検査符号が入るような
スペースを空けたデータ列が、多重化部3出力112と
なる。更に、多重化部3の出力の第5バイト目に、検査
符号再計算部(ECC計算)4の出力を挿入したものを
、本パケットバッファ回路の出力データ信号104とし
ている。出力タイミング信号104は、適切な遅延を与
えられて、出力データ信号105に同期して出力される
。
第3図は、本発明によるパケットバッファ回路の他の実
施例の構成を示すブロック図である。本実施例は、第1
図に示したパケットバッファ回路のF、IFOメモリ1
を、ランダムアクセスメモリ(RAM)8と、書き込み
アドレス発生部10と、読み出しアドレス発生部11.
及びアドレス選択部9で置き換えたものである。他の部
分は実質的に第1図の実施例と同じであるので同一部分
には同一の番号を付して、説明を省略する。
書き込みクロック103により書き込みアドレス発生部
10内のカウンタを動かし、RAM8の現在の書き込み
アドレス114を与える。同様にして、読み出しクロッ
ク106に従って、読み込みアドレス発生部11がRA
M8の読み出しアドレス115を与える。書き込みアド
レス114と読み出しアドレス115は、アドレス選択
部9で時分割多重され、RAM8に与えられる。以上の
ように、RAM8と、書き込みアドレス発生部10と、
読み出しアドレス発生部11.および、アドレス選択部
により、FIF○メモリ1と同様な動作を行う。
第4図は上記第1図及び第3図の分配並列化部2の一実
施例の構成を示すブロック図である。以下、第5図のタ
イミングチャートを用いて、第5図の分配並列化部2の
構成、動作を説明する。
分配並列化部2への入力データ信号101は、そのまま
、及び、−旦Dタイプフリップフロップ21でラッチさ
れた後にデータセレクタ22に渡される。ここでは、入
力データ信号101とその1クロツク遅れたデータ信号
202を セレクタ22で選択して、以下に説明するよ
うにして検査符号が取り除かれる。即ち、検査符号の前
はlクロック遅れたデータ信号202を、検査符号の後
はデータ信号101を用いる。これらのデータ信号を切
り換えることで、検査符号が存在していた部分のデータ
信号が除かれ、スペースが詰られる。
セレクタ22の出力信号204は、入力データのクロッ
ク周波数の1/2の周波数(1/2クロツクと呼ぶ )
205の極性が反転されたクロック206を使って1バ
イト毎にDフリップフロップ23でラッチされる。この
時、セレクタ22の出力204とDフリップフロップ2
3の出力207は、Dフリップフロップ24によって、
1/2クロツク205で改めてラッチされるので、16
ビツト並列化されたデータ信号107が得られる。
このデータ信号107は、前述の如く、書き込みクロッ
ク103を用いてFIFOメモリ1に書き込まれる。
第6図は上記第1図及び第3図の多重化部2の一実施例
の構成を示すブロック図である。以下、第7図のタイミ
ングチャートをもちいて、第6図の多重化部2を説明す
る。
FIFOメモリ1からの多重化部3への入力データ10
9は、−旦Dフリップフロップ31によってシステムの
タイミングクロックに合わされる。
その後に、データセレクタ32に入力される。セルの中
の偶数バイト目の8ビツトと、奇数バイト目の8ビツト
に分けて渡される。データセレクタ32では、1/2ク
ロツク301を用いて、奇数バイトに対する8ビツトと
、偶数バイトに対する8ビツトとが、時間的にずらして
出力される。データセレクタ32の出力303に対して
は、そのまま出力されるか、もしくはDフリップフロッ
プ33で1クロック分遅延されてから出力されるかが、
データセレクタ34により決定される。データセレクタ
34の制御は、検査符号が入るべきスペースを空けるた
めで、検査符号が入る位置以降のデータを1クロック遅
らせることを目的としている。即ち、検査符号の前はデ
ータセレクタ32の出力303をそのまま用い、検査符
号の後は、1クロック分遅れているDフリップフロップ
33の出力305を用いる。検査符号が入る第5バイト
目は、第4バイト目と同じ内容となっているが、これの
代わりに検査符号が挿入される。
以上、本発明によるパケットバッファ回路の実施例の説
明を、特にATMセルのデータを対象にして行ってきた
。他の実施例として、FIFOメモリ1と同様の役割を
果たす機能は、デュアルポートメモリなどを用いても、
実現することができる。
また、上記実施例においては、検査符号の再計算を行う
対象を、バッファメモリ1から読み出したデータ、即ち
、データ幅を拡張したものに対して行っている。しかし
、データ幅を元に戻した後に検査符号を計算しても、検
査符号再計算回路の構成が変わるのみで、同じ結果が得
られる。このような場合の実施例の構成を第8図に示す
。
第8図の構成において、検査符号再計算部4′の計算対
象が、 FIFOメモリ1の出力データ109ではなく
、多重化部3の出力112になっている点を除いては第
I及び第2図に示した実施例と同様である。
更に、第8図に示したように、多重化部3と検査符号再
計算部4′の間に、パケット内のデータの読み書きやパ
ケットの分解/再構成などのパケットに対する処理を行
うパケット処理回路12を設けることもできる。 即ち
、パケット処理回路12が、本来は検査符号付加部5で
付加される検査符号を参照していないならば、検査符号
を付加することは遅らせてもよい。従って、検査符号の
再計算と付加は、例えば本バッファ回路を搭載したモジ
ュールの出口で行うこともできる。このような構成によ
り、例えば、本回路の分配並列化部2とバッファメモリ
1と多重化部3を組にしてシリアルに連結し、その間に
パケット処理回路を加えて、パケットのバッファリング
とパケット内のデータ処理を交互に行うこともできる。
また、パケット処理回路12を多重化部3の前に挿入す
ることにより、低いスルーレートでのパケット処理を行
うことも可能である。更に、この応用でバッファメモリ
1を用いずに、パケット処理回路で置き換えたパケット
処理回路とすることもできる。このようにパケット処理
回路を構成することで、処理のスルーレートを低減させ
ることが可能となる。
更に、以上の説明では検査符号を取り除〈実施例につい
て説明したが、取り除いた検査符号を別のメモリに蓄え
、バッファメモリの出力データから再計算した検査符号
と比較することにより、バッファメモリ内やメモリの入
出力部で発生したビット誤りの検査を行うことができる
。この場合、別メモリは、エパケットに1つの検査符号
を記憶するのみであるので、低速のメモリで構成される
。
また、このような比較機能付きのパケットバッファ回路
は、伝送路で発生したビット誤りに対しても検査機能を
果たすので、パケットバッファ機能とビット誤り検査機
能を兼ねさせることができる。
これは、ビット誤りが発生したパケットに対して検査符
号を再計算すると、元々の検査符号との間に食違いを生
じる為である。
また、別メモリを用意する場合には、パケットから取り
除いたデータは保存されることより、検査符号以外のデ
ータを取り除くことも可能となる。
即ち、データ幅の拡張に対するパケット長の調整を、一
定の位置のデータを取り除いて別メモリに保存して行え
ばよい。この場合の別メモリのアクセス速度も、パケッ
トのスルーレートに比べて低くでき、データ幅の拡張で
本来のバッファメモリのアクセス速度も低減するため、
検査符号を取り除く場合と同様の効果を得ることが可能
である。
以上では、パケットバッファ回路を構成する場合の実施
例を説明してきたが、本バケツトバツフ7回路は、パケ
ットバッファの入出力のパケットの内容に変化がないこ
とを一つの特徴としている。
従って、メモリセルの周辺ロジック回路に本回路を有す
る半導体メモリを作成すれば、外部インタフェースは本
発明を用いない場合と同様ながら、内部メモリセルのア
クセス速度を低減したパケットメモリLSIを構成可能
となる。その結果、パケットメモリLSIの価格を低減
することが可能となる。
第9図は、入力バッファ回路をもつ空間スイッチ型AT
M交換機の基本的な構成図を示している。
即ち、入線116−1〜mに到着したATMセルは、入
力バッファ回路13−1〜mを通して空間スイッチ14
に入力される。空間スイッチ14は、ATMセルのヘッ
ダ部分に書かれたアドレス情報に基づいて行き先を決定
し、対応する出線118−1〜mにセルを出力する。こ
こで、入力バッファ13−1〜mは、複数の入線からセ
ルが到着したとき、空間スイッチ14の内部でセルが衝
突して失われてしまうことを防ぐ役割をしている。この
ような、 ATM交換機の入力バッファ13−1〜mに
、本発明によるバッファメモリ回路を用いれば、動作速
度の遅いメモリ素子を利用でき、大量のバッファメモリ
を必要とする場合でも、経済的に機器を構成できる。[Function 1] According to the present invention, the read/write speed of the buffer memory is 1/k of the input/output data speed, and the buffer memory can be constructed of low-speed circuit elements. Since the amount of packet data (remaining data) read and written to the buffer memory is an integral multiple of the read/write data width, packet boundaries are preserved. Furthermore, when the packet is an ATM cell, there are the following advantages. For example, an ATM cell with a length of 53 bytes has a 1-byte header error check code (CR).
C) code is included, so if the check code is removed, the length can be 52 bytes. As a result, if the data width is set to 16 bits, the cell can be handled as 26 words long, and if the data width is set to 32 bits, the cell can be handled as 13 words long. In other words, a 16-bit width reduces the read/write speed by half, and a 32-bit width reduces the read/write speed by half.
The F loading speed can be reduced to 1/4. The removed check code does not need to be read or written to the memory separately; it is essentially included in the header within the cell, and can be created by recalculation from the header read from the buffer memory. [Examples] Examples of the present invention will be described below. FIG. 1 is a block diagram showing the configuration of an embodiment of a packet buffer circuit according to the present invention. The packet buffer circuit consists of an input section, a buffer memory 1, and an output section. On the input side, an n-bit parallel input data signal 101 is combined with an input timing signal 102 indicating the beginning of a packet and input to the distribution parallelization unit 2. The distribution parallelization unit 2 removes the check code from the input packet (input data signal 101), as will be explained in detail with reference to the embodiment shown in FIG. If a check code exists in the middle of a packet, the space after removing the check code is filled up. Furthermore, the distribution parallelization unit 2 removes the check code and at the same time changes the data width of the input data signal 101. Here, the data width is doubled (k is an integer of 2 or more), that is, the output data 107 is kn-bit parallel. The output data 107 whose data width has been doubled is temporarily written to the first-in first-out memory (FIFO memory) 1. At this time, writing to the memory 1 is controlled by the write clock 103 of the FIFO memory 1. The write clock 103 of the FIFO memory 1 has a clock frequency corresponding to the packet length obtained by removing the check code from the packet. The FIFO memory 1 receives an input timing signal 10 to indicate the beginning of the written packet.
2 are also written at the same time, but after being given a delay by the input timing signal delay unit 6 corresponding to the delay of the input data in the distribution parallelization unit 2, they are written to the FIFO memory l. At the output section of the buffer memory circuit, the output data 109 read out according to the read clock 106 of the FIFO memory 1 is returned to the original n-bit parallel signal 112 in the multiplexing section 6. In part 3,
A space is reserved at the position where the check code should be placed. At the same time as the multiplexing unit 3 restores the data width to the original value, the check code recalculation unit 4 recalculates the check code to be added to the output data 109 of the FIFO memory 1. Check code addition section 5
Now, for the packet data signal 112 that has been restored to its original data width by the multiplexer 3, the check code of the input packet data is located at the original position. The check code 111 recalculated by the check code recalculation unit 4 is inserted. As a result, the restored packet data is output from this packet buffer circuit as an output data signal 104. Furthermore, the timing signal 110 indicating the start position of the packet data read out from the FIFO memory 1 is used to generate operation timings of the multiplexing unit 3, check code recalculating unit 4, and check code adding unit 5, and at the same time, A delay commensurate with the processing is given by the output timing signal delay section 7, and output from the present packet buffer circuit as an output timing signal 105. Further, the read clock 106 of the FIFO memory 1 is the write clock 1 of the FIFO memory 1.
03, it has a frequency corresponding to the packet length after removing the check code from the packet data. FIG. 2 shows a timing chart when the above-mentioned packet buffer circuit is applied to an ATM cell. The ATM cell has a cell length of 53 bytes, and the 5th byte contains the CRC code for the 1st to 4th byte headers.
Exists as a check code. In the following explanation, it is assumed that the ATM cells are inputted in 8-bit parallel fashion, and that the integer k indicating the degree of parallelization is k=2. The input data signal to this packet buffer circuit is 1
The data length is 53 bytes per cell. After removing the check code of the fifth byte from this cell, the first two bytes are combined to form 16-bit parallel data, and this data is used as write data in the FIFO memory 1. In other words, the write data in FIFO memory 1 is combined as the 1st and 2nd bytes, 3rd and 4th bytes, 6th and 7th bytes, and 8th and 9th bytes of the original bucket. Parallelize to 16 bits. This write data is temporarily written to FIF○ memory 1, the output data of FIFO memory 1 that has been read is returned to 8-bit parallel data, and a data string is created with a space left so that a check code can be placed in the 5th byte of the returned result. becomes the multiplexer 3 output 112. Furthermore, the output of the check code recalculation section (ECC calculation) 4 is inserted into the fifth byte of the output of the multiplexing section 3, and this is used as the output data signal 104 of the present packet buffer circuit. The output timing signal 104 is given an appropriate delay and is output in synchronization with the output data signal 105. FIG. 3 is a block diagram showing the configuration of another embodiment of the packet buffer circuit according to the present invention. In this example, the first
F of the packet buffer circuit shown in the figure, IFO memory 1
, a random access memory (RAM) 8 , a write address generator 10 , a read address generator 11 .
and an address selection section 9. Since the other parts are substantially the same as those in the embodiment shown in FIG. 1, the same parts are given the same numbers and the explanation will be omitted. The write clock 103 operates a counter in the write address generator 10 and provides the current write address 114 of the RAM 8. Similarly, according to the read clock 106, the read address generator 11
Give read address 115 of M8. The write address 114 and the read address 115 are time-division multiplexed by the address selection section 9 and provided to the RAM 8. As mentioned above, the RAM 8, the write address generation section 10,
Read address generation unit 11. The address selection unit performs the same operation as the FIF◯ memory 1. FIG. 4 is a block diagram showing the configuration of one embodiment of the distribution parallelization section 2 shown in FIGS. 1 and 3. In FIG. The configuration and operation of the distribution parallelization section 2 shown in FIG. 5 will be explained below using the timing chart shown in FIG. The input data signal 101 to the distribution parallelizer 2 is passed to the data selector 22 either as is or after being latched by the D-type flip-flop 21 . Here, the input data signal 101 and the data signal 202 delayed by one clock are selected by the selector 22, and the check code is removed as described below. That is, the data signal 202 delayed by one clock is used before the check code, and the data signal 101 is used after the check code. By switching these data signals, the data signal in the portion where the check code was present is removed, and the space is filled. The output signal 204 of the selector 22 has a frequency that is 1/2 of the clock frequency of the input data (referred to as 1/2 clock).
Each byte is latched by the D flip-flop 23 using a clock 206 in which the polarity of the clock 205 is inverted. At this time, the output 204 of the selector 22 and the D flip-flop 2
The output 207 of 3 is output by the D flip-flop 24,
It is latched again at 1/2 clock 205, so 16
A bit parallelized data signal 107 is obtained. This data signal 107 is written into the FIFO memory 1 using the write clock 103 as described above. FIG. 6 is a block diagram showing the configuration of one embodiment of the multiplexing section 2 shown in FIGS. 1 and 3 above. The multiplexer 2 shown in FIG. 6 will be explained below using the timing chart shown in FIG. Input data 10 from FIFO memory 1 to multiplexer 3
9 is synchronized with the system timing clock by a D flip-flop 31. Thereafter, the data is input to the data selector 32. The 8 bits in the even numbered byte and the 8 bits in the odd numbered byte in the cell are passed separately. The data selector 32 uses the 1/2 clock 301 to output 8 bits for odd numbered bytes and 8 bits for even numbered bytes with a time shift. For the output 303 of the data selector 32, it is determined whether it is output as is or after being delayed by one clock in the D flip-flop 33.
Determined by data selector 34. The control of the data selector 34 is to free up a space for the check code, and the purpose is to delay the data after the check code is inserted by one clock. That is, before the check code, the output 303 of the data selector 32 is used as is, and after the check code, the output 305 of the D flip-flop 33 delayed by one clock is used. The fifth byte, which contains the check code, has the same content as the fourth byte, but the check code is inserted instead. The embodiments of the packet buffer circuit according to the present invention have been described above with particular reference to ATM cell data. As another example, the function that plays the same role as the FIFO memory 1 can be achieved by using a dual port memory or the like.
It can be realized. Furthermore, in the above embodiment, the check code is recalculated on data read from the buffer memory 1, that is, on data whose data width has been expanded. However, even if the check code is calculated after restoring the data width to the original value, the same result can be obtained only by changing the configuration of the check code recalculation circuit. The configuration of an embodiment in such a case is shown in FIG. In the configuration shown in FIG. 8, the calculation target of the check code recalculation unit 4' is not the output data 109 of the FIFO memory 1 but the output 112 of the multiplexing unit 3. This is similar to the embodiment shown in the figure. Furthermore, as shown in FIG. 8, a packet processing circuit is provided between the multiplexer 3 and the check code recalculator 4' for processing the packets, such as reading and writing data in the packets and disassembling/reconfiguring the packets. 12 may also be provided. That is, if the packet processing circuit 12 does not refer to the check code originally added by the check code adding section 5, adding the check code may be delayed. Therefore, the check code can be recalculated and added, for example, at the exit of the module equipped with the present buffer circuit. With such a configuration, for example, the distribution parallelization unit 2, buffer memory 1, and multiplexing unit 3 of this circuit are serially connected as a set, and a packet processing circuit is added between them to perform packet buffering and packet internal processing. It is also possible to perform data processing alternately. Further, by inserting the packet processing circuit 12 before the multiplexing section 3, it is also possible to perform packet processing at a low slew rate. Furthermore, in this application, the buffer memory 1 may not be used and the packet processing circuit may be replaced with a packet processing circuit. By configuring the packet processing circuit in this way, it is possible to reduce the processing slew rate. Furthermore, in the above explanation, the check code is removed (although the embodiment was described, the removed check code is stored in another memory, and by comparing it with the check code recalculated from the output data of the buffer memory, the data stored in the buffer memory is It is possible to check for bit errors that occur in the memory input/output section. In this case, since the separate memory only stores one check code in the e-packet, it is configured as a low-speed memory. Furthermore, such a packet buffer circuit with a comparison function also performs a checking function for bit errors occurring on a transmission path, so that it can serve both the packet buffer function and the bit error checking function. This is because when a check code is recalculated for a packet in which a bit error has occurred, a discrepancy occurs between the check code and the original check code. Furthermore, if a separate memory is prepared, the data removed from the packet is saved, making it possible to remove data other than the check code. That is, the packet length can be adjusted for expanding the data width by removing data at a certain position and storing it in a separate memory. In this case, the access speed of the separate memory can also be lower than the packet slew rate, and the expansion of the data width also reduces the access speed of the original buffer memory.
It is possible to obtain the same effect as when the check code is removed. The embodiments in which the packet buffer circuit is configured have been described above, but one feature of the present bucket buffer circuit is that there is no change in the contents of packets input and output from the packet buffer. Therefore, by creating a semiconductor memory having this circuit in the peripheral logic circuit of the memory cell, it is possible to configure a packet memory LSI with a reduced access speed of internal memory cells, while the external interface is the same as when the present invention is not used. . As a result, it becomes possible to reduce the price of the packet memory LSI. Figure 9 shows a space switch type AT with an input buffer circuit.
A basic configuration diagram of the M exchange is shown. That is, the ATM cells arriving at the input lines 116-1 to 116-m are sent to the space switch 14 through the input buffer circuits 13-1 to 13-m.
is input. The space switch 14 determines the destination based on the address information written in the header of the ATM cell, and outputs the cell to the corresponding outgoing lines 118-1 to 118-m. Here, the input buffers 13-1 to 13-m have the role of preventing cells from colliding and being lost inside the space switch 14 when cells arrive from a plurality of incoming lines. If the buffer memory circuit according to the present invention is used in the input buffers 13-1 to 13-m of an ATM exchange, memory elements with slow operating speeds can be used, and even when a large amount of buffer memory is required, it can be achieved economically. Able to configure equipment.
本発明によれば、パケット内の必要な情報を落すことな
くデータ幅を変更できるので、パケットに対する処理回
路の動作速度を低くすことが可能となる。即ち、パケッ
トのバッファリングを行うメモリ回路に適用すれば、ア
クセス時間が数倍長いメモリ素子や同様に遅いFIFO
メモリを用いることができるので、装置を経済的に作成
することができる。例えば、ATMセルのバッファ回路
に適用すれば、アクセス時間が2分の1または4分の1
のメモリバッファを使用することができる。
即ち、150 M b / sの信号に対しても、8ビ
ット幅の時には、 1ワード当たりの処理を約50n
sで行う必要があるのに対して、データ幅を広げること
で、100nsもしくは200ns内で処理すれば十分
になる。
また、本発明によれば、必要なメモリ量を増すことなく
、実行的な信号処理速度を減じることができる。その上
、検査符号を記憶しない分、必要なメモリ量を減少させ
ることも可能である。
更に、本発明では、検査符号を取り除くので。
パケット境界の整合のための余分なデータを増やす方法
で用いるような、生成することが困難な。
特別なりロック信号を必要としない。
本発明により、広帯域l5DNに用いられるATMセル
のバッファ回路を簡単かつ安価に提供することが可能と
なる。According to the present invention, since the data width can be changed without dropping necessary information in the packet, it is possible to reduce the operating speed of the processing circuit for the packet. In other words, if applied to a memory circuit that performs packet buffering, it is possible to use a memory element with several times longer access time or a similarly slow FIFO.
Since memory can be used, the device can be made economically. For example, if applied to the buffer circuit of an ATM cell, the access time can be halved or quartered.
memory buffer can be used. In other words, even for a 150 Mb/s signal, when the width is 8 bits, the processing per word is about 50n.
However, by widening the data width, processing within 100 ns or 200 ns is sufficient. Furthermore, according to the present invention, the actual signal processing speed can be reduced without increasing the amount of memory required. Furthermore, since check codes are not stored, the amount of memory required can be reduced. Furthermore, in the present invention, check codes are removed. Difficult to generate, such as those used in methods that increase extra data for packet boundary alignment. No special lock signal required. According to the present invention, it is possible to easily and inexpensively provide a buffer circuit for an ATM cell used in a wideband I5DN.
第1図は本発明によるバッファ回路の一実施例のブロッ
ク図、第2図は第1図の実施例の動作を説明するための
タイミングチャート、第3図は本発明によるバッファ回
路の他の実施例のブロック図、第4図は第1図における
分配並列化部の1実施例の回路図、第5図は第4図の分
配並列化部のタイミングチャート、第6図は第1図にお
ける多重化部の一実現例の回路図、第7図は第6図の回
路の動作説明のためのタイミングチャート、第8図は本
発明のさらに他の実施例のブロック図、第9図は本発明
によるバッファ回路を使用した入力バッファ空間スイッ
チ型ATM交換機のブロック図を示す。
1・・・・・・FIFOメモリ、2・・・・・・分配並
列化部、3・・・・・・多重化部、4,4′・・・・・
・検査符号再計算部5・・・・・・検査符号付加部、
6・・・・・・入力タイミング信号遅延部、7・・・・
・・出力タ゛イミング信号遅延部。
8・・・・・・RAM、9・・・・・・アドレス選択部
、10・・・・・・書き込みアドレス発生部、11・・
・・・・読み出しアドレス発生部、12・・・・・・パ
ケット処理部。
13−1〜m・・・・・・入力バッファ、14・・・・
・・m X m空間スイッチ。
21.23.24.31.33
・・・・・・Dタイプフリップフロップ22・・・・・
データセレクタ、25・・・・・・NOT素子32.3
4・・・・・・データセレクタ、101・・・・・・入
力データ信号、
102・・・・・・入力タイミング信号、103・・・
・・・FIFOメモリ書き込みクロック信号、104・
・・・・・出力データ信号、
105・・・・・・出力タイミング信号、106・・・
・・・FIFOメモリ読み出しクロック信号。
201・・・・・・システムクロック信号、203・・
・・・・セレクタ制御信号、2.05.301・・・・
・・1/2クロック信号、304・・・・・・システム
クロック信号、306・・・・・・セレクタ制御信号。FIG. 1 is a block diagram of one embodiment of the buffer circuit according to the present invention, FIG. 2 is a timing chart for explaining the operation of the embodiment of FIG. 1, and FIG. 3 is another embodiment of the buffer circuit according to the present invention. FIG. 4 is a circuit diagram of one embodiment of the distribution parallelization section in FIG. 1, FIG. 5 is a timing chart of the distribution parallelization section in FIG. FIG. 7 is a timing chart for explaining the operation of the circuit in FIG. 6, FIG. 8 is a block diagram of still another embodiment of the present invention, and FIG. 9 is a circuit diagram of an embodiment of the present invention. 1 is a block diagram of an input buffer space switch type ATM exchange using a buffer circuit according to the present invention. 1... FIFO memory, 2... Distribution parallelization section, 3... Multiplexing section, 4, 4'...
・Check code recalculation unit 5...Check code addition unit, 6...Input timing signal delay unit, 7...
...Output timing signal delay section. 8...RAM, 9...Address selection section, 10...Write address generation section, 11...
. . . Read address generation section, 12 . . . Packet processing section. 13-1~m...Input buffer, 14...
・・m×m space switch. 21.23.24.31.33 ......D type flip-flop 22...
Data selector, 25...NOT element 32.3
4...Data selector, 101...Input data signal, 102...Input timing signal, 103...
... FIFO memory write clock signal, 104.
...Output data signal, 105...Output timing signal, 106...
...FIFO memory read clock signal. 201...System clock signal, 203...
...Selector control signal, 2.05.301...
... 1/2 clock signal, 304 ... system clock signal, 306 ... selector control signal.
Claims (1)
ァ回路において、 上記パケットの一定の位置にあるデータを上記パケット
から取り除き、上記パケットの残りのデータを入力デー
タの入力データ幅の整数倍のデータ幅のデータに変換す
る分配並列化部と、上記分配並列化部の出力データをデ
ータの順序関係を保存しながら、一時的に記憶するバッ
ファメモリと、 上記パケットから取り除いたデータを保存するデータ保
存手段と、 上記バッファメモリの出力データのデータ幅を上記分配
並列化部の入力データのデータ幅と等しい幅に戻し、上
記データ保存手段で保存したデータを入れるスペースを
確保する多重化部と 上記データ保存手段で保存したデータを、上記多重化部
の出力データ内の上記スペースに挿入する選択部とを設
けて構成されたパケットバッファ回路。 2、請求項第1記載において、上記データ保存手段が上
記分配並列化部で取り除かれたデータと同じデータを上
記バッファメモリの出力から作る回路で構成されたパケ
ットバッファ回路。 3、請求項第1記載において、上記データ保存手段がメ
モリで構成されたパケットバッファ回路。 4、位置固定である検査符号を含んだ固定長パケットを
一時的に記憶するパケットバッファ回路において、 上記パケットの上記検査符号の少なくとも一部を取り除
き、上記パケットの残りのデータを入力データ幅のk(
kは整数)倍のデータ幅のデータに変換する分配並列化
部と、 上記分配並列化部の出力データを書き込みデータの順序
関係および読み出しデータの順序関係を保存しながら記
憶するバッファメモリと、上記バッファメモリの出力デ
ータに対して、検査符号を再計算する検査符号再計算部
と、上記バッファメモリの出力データに対して、データ
幅を1/k倍に縮小し、検査符号を入れるスペースを確
保する多重化部と 上記多重化部で確保されたスペースに上記検査符号再計
算部からの検査符号を挿入し、出力データを得る選択部
とをもつことを特徴とする、パケットバッファ回路。 5、請求項第4記載のパケットバッファ回路において、
上記検査符号再計算部が上記バッファメモリの出力デー
タの代わりに、上記多重化部の出力データに対して上記
検査符号の再計算を行うように構成されたパケットバッ
ファ回路。 6、請求項第4又は第5記載のパケットバッファ回路に
、更に、上記分配並列化部で取り除かれた検査符号を保
存する検査符号メモリと、上記検査符号再計算部で再計
算された検査符号と上記検査符号メモリから読み出され
た検査符号とを照合し、上記バッファメモリ内でのデー
タの変化又は誤りを検査する検査回路を付加して構成さ
れたパケットバッファ回路。 7、請求項第6記載において、上記検査回路が、更に、
伝送路におけるビット誤りの検査機能を有するパケット
バッファ回路。 8、請求項第4、第5、第6又は第7記載において、上
記パケットが非同期転送モード(ATM)方式のセルで
あるパケットバッファ回路。 9、請求項第4、第5、第6又は第7記載において、上
記バッファメモリがFIFOメモリで構成されたパケッ
トバッファ回路。 10、請求項第4、第5、第6又は第7記載において、
上記バッファメモリが、 ランダムアクセスメモリと、 上記ランダムアクセスメモリの書き込みアドレスを発生
させる書き込みアドレス発生部と、上記ランダムアクセ
スメモリの読み出しアドレスを発生させる読み出しアド
レス発生部と、上記書き込みアドレス発生部の出力と上
記読み出しアドレス発生部の出力を選択的に上記ランダ
ムアクセスメモリに与えるためのアドレス選択部とによ
って構成されたパケットバッファ回路。 11、請求項第4、第5、第6又は第7記載において、
上記バッファメモリが、 デュアルポート形のランダムアクセスメモリと、 上記ランダムアクセスメモリの書き込みアドレスを発生
させる書き込みアドレス発生部と、上記ランダムアクセ
スメモリの読み出しアドレスを発生させる読み出しアド
レス発生部と、によって構成されたパケットバッファ回
路。 12、位置固定である検査符号を含んだ固定長パケット
を一時的に記憶するパケットバッファ回路において、 入力パケットの上記検査符号の一部もしくは全部を取り
除いてパケット長を調整し、上記パケットの区切りを守
ったまま上記パケットのデータ幅を拡張し、バッファメ
モリの書き込み/読み出し速度を低下させると共に、上
記バッファメモリの出力のデータ幅を上記パケットの本
来のデータ幅に戻す際に、上記検査符号を上記バッファ
メモリの出力データから復元することを特徴とするパケ
ットバッファ回路。 13、位置固定である検査符号を含んだ固定長パケット
を一時的に記憶するパケットバッファ回路において、 上記パケットの上記検査符号の一部もしくは全部を取り
除くと共に、上記パケットの残りのデータに対してデー
タ幅を拡張する手段と、書き込みデータの順序関係およ
び読み出しデータの順序関係を保存しながら、上記デー
タ幅拡張手段の出力を一時的に記憶する手段と、上記一
時的に記憶する手段の出力データのデータ幅を元に戻す
と共に、検査符号を再計算した結果が入るスペースを確
保する手段と、 上記記憶する手段の出力データに対して、新たに検査符
号を再計算する再計算手段と、 上記スペースに、上記再計算手段で計算した上記検査符
号を埋め込む手段、 を有するパケットバッファ回路。 14、位置固定である検査符号を含んだ固定長パケット
を処理するパケット処理回路において、上記パケットの
上記検査長符号の少なくとも一部を取り除き、上記パケ
ットの残りのデータを入力データ幅のk(kは整数)倍
のデータ幅のデータに変換する分配並列化部と、 上記分配並列化部の出力データを処理するデータ処理回
路と、 上記データ処理回路の出力データに対して、検査符号を
再計算する検査符号再計算部と、上記データ処理回路の
出力データに対して、データ幅を1/k倍に縮小し、検
査符号を入れるスペースを確保する多重化部と、 上記多重化部で確保されたスペースに上記検査符号再計
算部からの検査符号を挿入し、出力データを得る選択部
とをもつパケット処理回路。[Scope of Claims] 1. In a packet buffer circuit that temporarily stores fixed-length packets, data at a certain position of the packet is removed from the packet, and the remaining data of the packet is converted to the input data width of the input data. a distributed parallelization unit that converts the data into data with a data width that is an integral multiple of , a buffer memory that temporarily stores the output data of the distribution parallelization unit while preserving the data order relationship, and data removed from the packets. a data storage means for storing the data; and a multiplexer for returning the data width of the output data of the buffer memory to a width equal to the data width of the input data of the distribution parallelization unit and securing a space for storing the data stored by the data storage means. A packet buffer circuit comprising a converting section and a selecting section for inserting the data stored by the data storage means into the space in the output data of the multiplexing section. 2. The packet buffer circuit according to claim 1, wherein said data storage means is constituted by a circuit that creates the same data as the data removed by said distribution parallelization section from the output of said buffer memory. 3. The packet buffer circuit according to claim 1, wherein said data storage means is constituted by a memory. 4. In a packet buffer circuit that temporarily stores a fixed-length packet containing a check code whose position is fixed, at least a part of the check code of the packet is removed, and the remaining data of the packet is converted into a packet with an input data width of k. (
(k is an integer) times the data width; a buffer memory that stores the output data of the distribution parallelization unit while preserving the order relationship of the written data and the order relationship of the read data; A check code recalculation unit that recalculates the check code for the output data of the buffer memory, and a check code recalculation unit that reduces the data width to 1/k times for the output data of the buffer memory to secure space for the check code. 1. A packet buffer circuit comprising: a multiplexing section that performs the check code recalculation section; and a selection section that inserts the check code from the check code recalculation section into the space secured by the multiplexing section and obtains output data. 5. The packet buffer circuit according to claim 4,
The packet buffer circuit is configured such that the check code recalculation section recalculates the check code on the output data of the multiplexing section instead of the output data of the buffer memory. 6. The packet buffer circuit according to claim 4 or 5 further includes a check code memory for storing the check code removed by the distribution parallelization unit, and a check code recalculated by the check code recalculation unit. and a check code read from the check code memory, and further includes a test circuit for checking for changes or errors in data in the buffer memory. 7. In claim 6, the test circuit further comprises:
A packet buffer circuit that has a bit error inspection function in the transmission path. 8. The packet buffer circuit according to claim 4, wherein the packet is an asynchronous transfer mode (ATM) cell. 9. The packet buffer circuit according to claim 4, wherein the buffer memory is a FIFO memory. 10. In the fourth, fifth, sixth or seventh claim,
The buffer memory includes a random access memory, a write address generator that generates a write address for the random access memory, a read address generator that generates a read address for the random access memory, and an output of the write address generator. and an address selection section for selectively applying the output of the read address generation section to the random access memory. 11. In the fourth, fifth, sixth or seventh claim,
The buffer memory includes a dual-port random access memory, a write address generation section that generates a write address for the random access memory, and a read address generation section that generates a read address for the random access memory. Packet buffer circuit. 12. In a packet buffer circuit that temporarily stores fixed-length packets containing check codes whose positions are fixed, the packet length is adjusted by removing part or all of the check code from the input packet, and the packets are separated. When expanding the data width of the packet while maintaining the above-mentioned data width, reducing the writing/reading speed of the buffer memory, and returning the data width of the output of the buffer memory to the original data width of the packet, the check code is A packet buffer circuit characterized by restoring data from output data of a buffer memory. 13. In a packet buffer circuit that temporarily stores a fixed-length packet containing a check code whose position is fixed, part or all of the check code of the packet is removed, and the remaining data of the packet is means for temporarily storing the output of the data width expanding means while preserving the order relationship of the written data and the order relationship of the read data; means for restoring the data width to the original value and securing a space for storing the result of recalculating the check code; recalculating means for recalculating a new check code for the output data of the storing means; and the space for recalculating the check code. A packet buffer circuit comprising: means for embedding the check code calculated by the recalculation means. 14. In a packet processing circuit that processes a fixed-length packet containing a check code whose position is fixed, at least a part of the check length code of the packet is removed, and the remaining data of the packet is converted into k(k) of the input data width. is an integer); a data processing circuit that processes the output data of the above distribution parallelization section; and a check code recalculation for the output data of the above data processing circuit. a check code recalculation section that reduces the data width to 1/k times the data width of the output data of the data processing circuit to secure a space for the check code; and a selection section for inserting the check code from the check code recalculation section into the space provided by the check code recalculation section to obtain output data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1651190A JP2713487B2 (en) | 1990-01-26 | 1990-01-26 | Packet buffer circuit and packet processing circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1651190A JP2713487B2 (en) | 1990-01-26 | 1990-01-26 | Packet buffer circuit and packet processing circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03220945A true JPH03220945A (en) | 1991-09-30 |
JP2713487B2 JP2713487B2 (en) | 1998-02-16 |
Family
ID=11918295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1651190A Expired - Lifetime JP2713487B2 (en) | 1990-01-26 | 1990-01-26 | Packet buffer circuit and packet processing circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2713487B2 (en) |
-
1990
- 1990-01-26 JP JP1651190A patent/JP2713487B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2713487B2 (en) | 1998-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5212686A (en) | Asynchronous time division switching arrangement and a method of operating same | |
US5083269A (en) | Buffer device suitable for asynchronous transfer mode communication | |
EP1192753B1 (en) | Method and apparatus for shared buffer packet switching | |
JP4480845B2 (en) | TDM switch system with very wide memory width | |
JPH02111138A (en) | Buffer queue write pointer control circuit | |
US20060072598A1 (en) | Variable size FIFO memory | |
EP1189140B1 (en) | Synchronization control device | |
JPH04220829A (en) | Cell phase changing circuit | |
CA1297569C (en) | Switching system for prioritized data packets | |
US6259703B1 (en) | Time slot assigner for communication system | |
US5764967A (en) | Multiple frequency memory array clocking scheme for reading and writing multiple width digital words | |
KR100498233B1 (en) | First-in first-out memory circuit and method for executing the same | |
US5113368A (en) | Circuit for delaying at least one high bit rate binary data train | |
US6954466B1 (en) | Link-layer receiver | |
US5303231A (en) | Switch coupled between input and output ports in communication system | |
JPH03220945A (en) | Packet buffer circuit and packet processing circuit | |
US5732011A (en) | Digital system having high speed buffering | |
JP4060270B2 (en) | Apparatus and method for delaying video line data between transmitter and receiver | |
KR0181485B1 (en) | Data-buffering device for data telecommunication | |
JPH01270431A (en) | High-speed packet exchange switch | |
JPS6144426B2 (en) | ||
JPH01176197A (en) | Time division multiple access exchange system | |
KR100294703B1 (en) | Viterbi Decoder_ | |
JPH0242893A (en) | Time division switch | |
JP2002108804A (en) | Data switching device |