JP3343460B2 - HDLC frame processing device - Google Patents
HDLC frame processing deviceInfo
- Publication number
- JP3343460B2 JP3343460B2 JP06254895A JP6254895A JP3343460B2 JP 3343460 B2 JP3343460 B2 JP 3343460B2 JP 06254895 A JP06254895 A JP 06254895A JP 6254895 A JP6254895 A JP 6254895A JP 3343460 B2 JP3343460 B2 JP 3343460B2
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- frame
- processing unit
- frame data
- size
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Communication Control (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、HDLC(high−
level data link control)に
おけるフレームデータの格納,読み出しを行うHDLC
フレーム処理装置に関するものである。BACKGROUND OF THE INVENTION The present invention relates to an HDLC (high-
HDLC for storing and reading frame data in level data link control
The present invention relates to a frame processing device.
【0002】[0002]
【従来の技術】HDLCフレーム(LAPBフレーム,
LAPDフレーム等)を処理する装置において、フレー
ムデータを格納するメモリ(フレームバッファ)の従来
の構成を以下に説明する。図3は従来のフレーム処理装
置のバッファ構成を表すブロック図である。2. Description of the Related Art HDLC frames (LAPB frames,
A conventional configuration of a memory (frame buffer) for storing frame data in an apparatus for processing an LAPD frame or the like will be described below. FIG. 3 is a block diagram showing a buffer configuration of a conventional frame processing device.
【0003】これは、あるサイズを持つフレームデータ
201に対し、フレームバッファ202として、最大フ
レーム長より大きいサイズの大サイズバッファ203を
複数面持ち、1フレームのフレームデータ201を格納
するために、大サイズバッファ203を1面使用するこ
ととする。図示しない書き込み処理部は、フレームバッ
ファ202へのフレームデータライト開始時、空きバッ
ファプールから空きの大サイズバッファ203を1面ハ
ントし、そのバッファの先頭位置からフレームデータを
ライトしていく。[0003] In order to store one frame of frame data 201, a plurality of large-size buffers 203 having a size larger than the maximum frame length are provided as frame buffers 202 for frame data 201 having a certain size. It is assumed that one buffer 203 is used. At the start of writing frame data to the frame buffer 202, a write processing unit (not shown) hunts one empty large-size buffer 203 from the empty buffer pool and writes frame data from the head position of the buffer.
【0004】フレームデータライト完了後、図示しない
読み出し処理部にフレーム管理情報としてバッファナン
バとそのページの先頭からのオフセット(以下、最終ポ
インタ)を通知する。上述した読み出し処理部は、フレ
ームバッファ202からのフレームデータリードにおい
て、書き込み処理部から通知されたバッファの先頭から
最終ポインタまでリードし、そのバッファを空きバッフ
ァプールへ解放する。[0004] After the frame data write is completed, a buffer number and an offset from the head of the page (hereinafter, a final pointer) are notified to a read processing unit (not shown) as frame management information. When reading frame data from the frame buffer 202, the above-described read processing unit reads from the head of the buffer notified by the write processing unit to the last pointer, and releases the buffer to an empty buffer pool.
【0005】図4は従来のフレーム処理装置の他のバッ
ファ構成を表すブロック図である。これは、あるサイズ
を持つフレームデータ301に対し、フレームバッファ
302として、多数の同一サイズのメモリブロック(以
下、ページ303と称す)を持ち、フレーム長に応じた
面数のページ303をチェインして、フレームデータ3
01を格納するものであり、フレームバッファ302の
各ページ303は、管理情報として、チェイン有無フラ
グ、次ページナンバ、最終ポインタ(最終ページの場合
のみ)を持つものである。FIG. 4 is a block diagram showing another buffer configuration of the conventional frame processing device. This is because, for frame data 301 having a certain size, a large number of memory blocks (hereinafter, referred to as pages 303) of the same size are provided as a frame buffer 302, and the number of pages 303 corresponding to the frame length is chained. , Frame data 3
01, and each page 303 of the frame buffer 302 has, as management information, a chain presence / absence flag, a next page number, and a last pointer (only in the case of the last page).
【0006】図示しない書き込み処理部は、フレームデ
ータライト開始時、空きページを空きページプールから
ハントし、そのページナンバをフレーム管理情報の先頭
ページナンバとしてとして格納しておき、ページの先頭
からフレームデータをライトしていく。そのページの終
わりまでライトして、まだフレームデータが継続する場
合、再び空きページプールから新しいページをハントす
る。そして、前記ライトしたページの管理情報のチェイ
ン有無フラグを“チェイン有り”にし、前記ライトした
ページの管理情報の次のページナンバに今ハントした新
ページナンバをライトする。フレームデータが継続する
限り、このチェイン処理を繰り返す。At the start of frame data writing, a write processing unit (not shown) hunts free pages from the free page pool, stores the page number as the first page number of the frame management information, and stores the frame data from the top of the page. To write. Write to the end of the page, and if the frame data still continues, hunt a new page from the free page pool again. Then, the chain presence / absence flag of the management information of the written page is set to “chain present”, and the new page number hunted immediately is written to the next page number of the management information of the written page. This chain processing is repeated as long as the frame data continues.
【0007】フレームの最終データをライトし終わる
と、書き込み中のページの管理情報のチェイン有無フラ
グを“チェイン無し”にし、書き込み中のページの管理
情報の最終ポインタに最終ライトポインタをライトす
る。そして、図示しない読み出し処理部に、あらかじめ
格納しておいたフレーム管理情報の先頭ページナンバを
通知する。When the writing of the last data of the frame is completed, the chain presence / absence flag of the management information of the page being written is set to “no chain”, and the last write pointer is written to the last pointer of the management information of the page being written. Then, it notifies the read processing unit (not shown) of the first page number of the frame management information stored in advance.
【0008】上述した読み出し処理部は、フレームバッ
ファ302からのフレームデータリードにおいて、まず
書き込み処理部から受け取ったフレーム管理情報の先頭
ページナンバをリードページとする。そして、そのペー
ジの管理情報のチェイン有無フラグが“チェイン無し”
の場合には、管理情報の最終ポインタをリードし、最終
ポインタまでフレームデータを読み出して、データリー
ド処理を完了する。そして、そのページを空きページプ
ールへ解放する。[0008] In the reading of the frame data from the frame buffer 302, the read processing unit first sets the first page number of the frame management information received from the write processing unit as the read page. Then, the chain presence / absence flag of the management information of the page is “no chain”
In the case of, the last pointer of the management information is read, and the frame data is read up to the last pointer, and the data read process is completed. Then, the page is released to the free page pool.
【0009】また、そのページの管理情報のチェイン有
無フラグが“チェイン有り”の場合には、管理情報の次
ページナンバをリードし、そのページの最終までフレー
ムデータを読み出す。そして、そのページを空きページ
プールへ解放する。続けて次ページをリードページと
し、そのページの管理情報のチェイン有無フラグが“チ
ェイン無し”になるまで同様の処理を繰り返す。When the chain presence / absence flag of the management information of the page is "chain present", the next page number of the management information is read, and the frame data is read until the end of the page. Then, the page is released to the free page pool. Subsequently, the next page is set as the lead page, and the same processing is repeated until the chain presence / absence flag of the management information of the page becomes “no chain”.
【0010】[0010]
【発明が解決しようとする課題】しかしながら、従来の
第1のバッファ構成であると、いかなるサイズのフレー
ムデータを格納する場合にも、最大フレーム長より大き
いフレームバッファを1面使用するため、最大フレーム
長を大きくしたフレームバッファで短いフレームデータ
を格納する場合、フレームバッファの使用効率が低くな
る。However, in the conventional first buffer configuration, even when storing frame data of any size, one frame buffer larger than the maximum frame length is used. When short frame data is stored in a frame buffer having a large length, the use efficiency of the frame buffer is low.
【0011】また、十分なスループットを実現するため
にはバッファを多数面持たなければならないので、大容
量のフレームバッファメモリが必要で、コストの高いも
のとなってしまう。従来の第2のバッファ構成である
と、フレームバッファのチェイン処理が複雑で、管理情
報を格納するメモリに多数回アクセスするため、高速
(アクセスタイムの短い)メモリが要求される。このた
め、高速でフレームデータを処理するシステムへの適用
が難しいものである。Further, since a large number of buffers must be provided in order to realize a sufficient throughput, a large-capacity frame buffer memory is required, resulting in high cost. With the conventional second buffer configuration, a high-speed (short access time) memory is required because the chain processing of the frame buffer is complicated and the memory for storing the management information is accessed many times. Therefore, it is difficult to apply the system to a system that processes frame data at high speed.
【0012】[0012]
【課題を解決するための手段】上述した課題を解決する
ため、本発明は、フレーム単位で伝送されるフレームデ
ータを処理するバッファを備えたHDLCフレーム処理
装置において、それぞれ複数の面数を持つ2群以上のバ
ッファを有し、各群のバッファを1面ずつ合わせた場合
の合計サイズが1フレームデータの最大長より大きくな
るように前記群毎にバッファの面サイズを同一サイズに
設定するとともに、使用する群の順番を定めたフレーム
バッファと、前記1フレームデータに対して、前記各群
のバッファを1面ずつ順番に使用する処理部とを備えた
ことを特徴とする。To solve the problems described above SUMMARY OF THE INVENTION The present invention provides a HDLC frame processing apparatus having a buffer for processing frames de <br/> over data transmitted in frame units, each of the plurality When there are two or more groups of buffers with the number of planes, and the buffers of each group are combined one by one
Frame the total size of sets the face size of the buffer in the same size for each of the groups to be greater than the maximum length of one frame data, defining the order of the group to be used
A buffer, said for one frame data, and a processing unit that uses the buffer of each group <br/> one by one face
It is characterized by the following .
【0013】[0013]
【作用】上述した構成を有する本発明は、フレームデー
タを受信すると、まず、最初にデータを収納すべく決め
られた群の1面のバッファにデータを格納し、このバッ
ファで格納しきれない長さのフレームデータの場合は、
次の群の1面のバッファに格納するという手順により、
1つのフレームデータを最大で各群1面のバッファを使
用して格納する。SUMMARY OF] The present invention having the structure described above, when receiving the frame data, first, store the data in the buffer of the first one side of the group that is determined so as to house the data, it can not be stored in this buffer For frame data of length,
By the procedure of storing in the buffer of one side of the next group ,
One frame data can be used up to one buffer per group.
To store .
【0014】[0014]
【実施例】図1は本発明の第1の実施例を表すフレーム
処理装置のブロック図で、これは、LAPBフレームを
処理する装置に適用した場合である。ここで、現在、L
APBフレームの最大I(情報)フィールト長は409
9バイトであるので、AC(アドレス,制御)フィール
ドが3バイトの場合、フレームバッファとして1フレー
ムを格納するために最大4102バイト必要となる。FIG. 1 is a block diagram of a frame processing apparatus according to a first embodiment of the present invention, which is applied to an apparatus for processing a LAPB frame. Where L
The maximum I (information) field length of the APB frame is 409
Since it is 9 bytes, when the AC (address, control) field is 3 bytes, a maximum of 4102 bytes is required to store one frame as a frame buffer.
【0015】1はフレームバッファで、このフレームバ
ッファ1は、数10〜数100バイトのサイズの1次バ
ッファ2と、数kバイトのサイズの2次バッファ3で構
成される。1次バッファ2は同一サイズの複数面のバッ
ファで構成され、2次バッファ3は同一サイズの複数面
のバッファで構成されるものであるが、2次バッファ3
は使用頻度が比較的低いため、1次バッファ2より少な
い面数で構成される。そして、1次バッファ2の1面の
サイズと2次バッファ3の一面のサイズの合計が、最大
フレーム長(4102バイト)より大きくなるようにし
て、1次バッファ2と2次バッファ3の両方を用いれ
ば、1つのフレームデータが格納できるようにしてい
る。なお、1次バッファ2と2次バッファ3のサイズお
よび面数は、適用システムのトラフィック条件等により
決定されるものである。Reference numeral 1 denotes a frame buffer. The frame buffer 1 includes a primary buffer 2 having a size of several tens to several hundreds of bytes and a secondary buffer 3 having a size of several kbytes. The primary buffer 2 is composed of a plurality of buffers of the same size, and the secondary buffer 3 is composed of a buffer of a plurality of surfaces of the same size.
Is relatively infrequently used, and thus has a smaller number of planes than the primary buffer 2. Then, both the primary buffer 2 and the secondary buffer 3 are set so that the sum of the size of one surface of the primary buffer 2 and the size of one surface of the secondary buffer 3 is larger than the maximum frame length (4102 bytes). If used, one frame data can be stored. Note that the sizes and the number of planes of the primary buffer 2 and the secondary buffer 3 are determined according to the traffic conditions of the applicable system.
【0016】4はフレームバッファ管理部で、前記1次
バッファ2と2次バッファ3の中の空き1次バッファと
空き2次バッファの管理を行う。このフレームバッファ
管理部4は、伝送路5により書き込み処理部6に接続さ
れ、伝送路7により読み出し処理部8に接続され、伝送
路9により前記1次バッファ2と接続され、伝送路10
により前記2次バッファ3と接続される。Reference numeral 4 denotes a frame buffer management unit which manages an empty primary buffer and an empty secondary buffer in the primary buffer 2 and the secondary buffer 3. The frame buffer management unit 4 is connected to the write processing unit 6 by a transmission line 5, connected to the read processing unit 8 by a transmission line 7, connected to the primary buffer 2 by a transmission line 9,
Is connected to the secondary buffer 3.
【0017】前記書き込み処理部6は、伝送路11を介
してLAPBフレームのフレームデータを受信する。ま
た、読み出し処理部8は伝送路12を介してLAPBフ
レームのフレームデータを送信する。前記書き込み処理
部6は、1つのフレームデータを格納する場合に、まず
1次バッファ2に格納し、次に2次バッファ3に格納す
るというように、1つのフレームデータに対して1次バ
ッファ2と2次バッファ3を順番に使用する。これによ
り、1フレームデータ長が1次バッファ2のサイズを越
えていない場合は、1次バッファ2のみが使用され、1
フレームデータ長が1次バッファ2のサイズを越えてい
る場合は、2次バッファ3も使用される。また、前記読
み出し処理部8は、1つのフレームデータを読み出す場
合に、まず1次バッファ2から読み出し、次に2次バッ
ファ3から読み出すというように、1つのフレームデー
タに対して1次バッファ2と2次バッファ3を順番に使
用する。The write processing unit 6 receives the frame data of the LAPB frame via the transmission line 11. The read processing unit 8 transmits the frame data of the LAPB frame via the transmission path 12. When storing one frame data, the write processing unit 6 first stores the data in the primary buffer 2 and then stores the data in the secondary buffer 3. And the secondary buffer 3 are used in order. As a result, if the data length of one frame does not exceed the size of the primary buffer 2, only the primary buffer 2 is used, and
If the frame data length exceeds the size of the primary buffer 2, the secondary buffer 3 is also used. When reading out one frame data, the read processing unit 8 reads out one frame data from the primary buffer 2 and then reads out the data from the secondary buffer 3. The secondary buffer 3 is used in order.
【0018】このとき、読み出し処理部8は書き込み処
理部6から通知された管理情報に基づいてフレームデー
タの読み出しを行うものであるが、1つのフレームデー
タに必要とされるバッファ数を決めておき、かつ1次バ
ッファと2次バッファを使用する順番を決めておけば、
管理情報として必要な情報を少なくできるので、読み出
し処理部8の管理情報に対するアクセスを少なくできる
ものである。At this time, the read processing unit 8 reads frame data based on the management information notified from the write processing unit 6, but determines the number of buffers required for one frame data in advance. , And the order in which the primary and secondary buffers are used,
Since information required as management information can be reduced, access to the management information by the read processing unit 8 can be reduced.
【0019】上記構成によると、伝送路11を介してL
APBフレームのフレームデータを受信しはじめると、
書き込み処理部6は、フレームバッファ管理部4を介し
てまず空き1次バッファ2にフレームデータをライトす
る。フレームデータが1次バッファ2の1面のサイズを
越えて継続する場合、書き込み処理部6は、フレームバ
ッファ管理部4を介して空き2次バッファ3にフレーム
データの残りをライトする。ここで、上述したように、
1次バッファ2の1面のサイズと2次バッファ3の一面
のサイズの合計が、最大フレーム長より大きくなるよう
にしたので、1つのフレームデータは1次バッファ2と
2次バッファ3の両方を用いれば、必ず格納できるもの
であり、格納する順番は、1次バッファ2を先とする。According to the above configuration, L
When you start receiving the frame data of the APB frame,
The write processing unit 6 writes frame data to the empty primary buffer 2 via the frame buffer management unit 4 first. When the frame data continues beyond the size of one surface of the primary buffer 2, the write processing unit 6 writes the rest of the frame data to the empty secondary buffer 3 via the frame buffer management unit 4. Here, as described above,
Since the sum of the size of one surface of the primary buffer 2 and the size of one surface of the secondary buffer 3 is set to be larger than the maximum frame length, one frame data is transmitted to both the primary buffer 2 and the secondary buffer 3. If they are used, they can always be stored, and the storage order is the primary buffer 2 first.
【0020】LAPBフレームのフレームデータを受信
し終わると、書き込み処理部6は、管理情報として、使
用した1次バッファ2のナンバ、2次バッファ使用フラ
グ(2次バッファを使用したか否かを示す)、使用した
2次バッファ3のナンバ、最終ポインタの情報を読み出
し処理部8に送り、フレームバッファ1へのフレームデ
ータ書き込みを通知する。When the reception of the frame data of the LAPB frame is completed, the write processing unit 6 uses the number of the used primary buffer 2 and the secondary buffer use flag (indicating whether the secondary buffer is used or not) as management information. ), The information of the used secondary buffer 3 and the last pointer is sent to the read processing unit 8, and the writing of the frame data to the frame buffer 1 is notified.
【0021】ここで、上述した管理情報を記憶する管理
情報メモリは、読み出し処理部8で持つこととする。な
お、フレームバッファ管理部4で持っていてもよい。読
み出し処理部8がフレームバッファ1からフレームデー
タをリードする場合は、書き込み処理部6から受け取っ
て管理情報メモリに格納した管理情報にアクセスして、
1次バッファナンバから該当する1次バッファ2をリー
ドし、2次バッファ使用フラグを参照して2次バッファ
が使用されていない場合は、最終ポインタをリードし
て、最終ポインタまでフレームデータを読み出して、デ
ータリード処理を完了する。2次バッファが使用されて
いる場合は、2次バッファナンバから該当する2次バッ
ファ3をリードして、最終ポインタをリードして、最終
ポインタまでフレームデータを読み出して、データリー
ド処理を完了する。Here, the management information memory for storing the management information described above is provided in the read processing unit 8. Note that the frame buffer management unit 4 may have it. When the read processing unit 8 reads the frame data from the frame buffer 1, it accesses the management information received from the write processing unit 6 and stored in the management information memory,
The corresponding primary buffer 2 is read from the primary buffer number, and if the secondary buffer is not used by referring to the secondary buffer use flag, the final pointer is read and the frame data is read up to the final pointer. Then, the data read processing is completed. When the secondary buffer is used, the corresponding secondary buffer 3 is read from the secondary buffer number, the final pointer is read, and the frame data is read up to the final pointer, thereby completing the data read processing.
【0022】以上説明したように、本実施例では、1つ
のフレームについて2種類のバッファをフレーム長に応
じて使用することとし、これらバッファを1次バッフ
ァ,2次バッファとして、フレームデータ受信時は、ま
ず1次バッファを使用し、1次バッファで格納しきれな
い長さのフレームデータの場合は2次バッファを使用す
るというように、1面ずつこの順序で使用すると、複雑
なチェイン処理が必要でなくなり管理情報メモリへのア
クセス回数が減るので、管理情報メモリには比較的低速
の(アクセスタイムの長い)メモリを使用して、高速フ
レーム処理システムへ適用することが可能である。特
に、複数チャネルのフレームを時分割多重して送受信す
るシステムに適用した場合、フレームバッファアクセス
のチャネル切り換えに必要となる管理情報へのアクセス
と新バッファをハントするするために必要なバッファ管
理情報へのアクセスが連続するケースが有り得るが、本
実施例では、新バッファハントに伴うチェイン処理がな
いため、処理が複雑にならず、非常に有効である。As described above, in this embodiment, two types of buffers are used for one frame according to the frame length, and these buffers are used as a primary buffer and a secondary buffer. If the primary buffer is used first and frame data of a length that cannot be stored in the primary buffer is used, a secondary buffer is used. If these frames are used in this order one by one, complicated chain processing is required. However, since the number of accesses to the management information memory is reduced, it is possible to use a relatively low-speed (long access time) memory as the management information memory and apply it to a high-speed frame processing system. In particular, when the present invention is applied to a system in which frames of a plurality of channels are transmitted and received in a time-division multiplex manner, access to management information necessary for channel switching of frame buffer access and buffer management information necessary for hunting a new buffer are performed. However, in this embodiment, there is no chain processing associated with the new buffer hunt, so that the processing is not complicated and is very effective.
【0023】また、1次バッファ2をサイズの小さいバ
ッファとし、2次バッファ3をサイズの大きいバッファ
として、短いフレームは1次バッファ2のみ使用し、発
生頻度の小さい長いフレーム(1次バッファのサイズを
越えるもの)の場合のみ2次バッファ3も使用するよう
にすると、小さいサイズの1次バッファ2は多数必要で
あるが大きいサイズの2次バッファ3は少数で用が足
り、バッファメモリの使用効率の向上が期待できる。The primary buffer 2 is a small buffer, the secondary buffer 3 is a large buffer, and only the primary buffer 2 is used for short frames. If the secondary buffer 3 is also used only when the secondary buffer 3 is used, a large number of small-sized primary buffers 2 are needed, but a small number of large-sized secondary buffers 3 are sufficient, and the buffer memory usage efficiency is high. Can be expected to improve.
【0024】なお、上述した実施例では、LAPBフレ
ームを処理する装置に適用した場合を説明したが、バッ
ファサイズを変更すれば、LAPDフレームを処理する
装置にも適用可能である。図2は本発明の第2の実施例
を表すフレーム処理装置のブロック図で、これは、LA
PDフレームを処理する装置に適用した場合である。In the above-described embodiment, the case where the present invention is applied to an apparatus for processing a LAPB frame has been described. However, if the buffer size is changed, the present invention can be applied to an apparatus for processing an LAPD frame. FIG. 2 is a block diagram of a frame processing apparatus according to a second embodiment of the present invention.
This is a case where the present invention is applied to a device that processes a PD frame.
【0025】ここで、CCITT勧告Q.921によ
り、LAPDフレームの最大Iフィールト長は260バ
イト(デフォルト)であるので、ACフィールドが4バ
イトの場合、フレームバッファとして1フレームを格納
するために最大264バイト必要となる。このため、1
次バッファの1面のサイズと2次バッファの1面のサイ
ズの合計が最大フレーム長(264バイト)より大きく
なるようにして、1次バッファを同一サイズ(数10〜
数100バイト)の複数のバッファで構成し、2次バッ
ファを同一サイズ(数10〜数100バイト)の複数の
バッファで構成することにより、LAPDフレーム処理
装置にも応用可能である。Here, CCITT Recommendation Q. According to 921, since the maximum I-field length of the LAPD frame is 260 bytes (default), when the AC field is 4 bytes, a maximum of 264 bytes is required to store one frame as a frame buffer. Therefore, 1
The primary buffer has the same size (Equation 10) so that the sum of the size of one surface of the secondary buffer and the size of one surface of the secondary buffer is larger than the maximum frame length (264 bytes).
By configuring the secondary buffer with a plurality of buffers of the same size (several tens to several hundreds of bytes) and a plurality of buffers of the same size (several tens to several hundreds of bytes), it is also applicable to the LAPD frame processing device.
【0026】すなわち、21はフレームバッファで、こ
のフレームバッファ21は、数10〜数100バイトの
サイズの1次バッファ22と、数10〜数100バイト
のサイズの2次バッファ23で構成される。1次バッフ
ァ22は同一サイズの複数面のバッファで構成され、2
次バッファ23は同一サイズの複数面のバッファで構成
されるものである。That is, reference numeral 21 denotes a frame buffer. The frame buffer 21 includes a primary buffer 22 having a size of several tens to several hundreds of bytes and a secondary buffer 23 having a size of several tens to several hundreds of bytes. The primary buffer 22 is composed of a plurality of buffers of the same size,
The next buffer 23 is composed of a plurality of buffers of the same size.
【0027】そして、1次バッファ22の1面のサイズ
と2次バッファ23の一面のサイズの合計が、最大フレ
ーム長(264バイト)より大きくなるようにして、1
次バッファ22と2次バッファ23の両方を用いれば、
1つのフレームデータが格納できるようにしている。な
お、1次バッファ22と2次バッファ23のサイズおよ
び面数は、適用システムのトラフィック条件等により決
定されるものである。The sum of the size of one surface of the primary buffer 22 and the size of one surface of the secondary buffer 23 is set to be larger than the maximum frame length (264 bytes).
If both the secondary buffer 22 and the secondary buffer 23 are used,
One frame data can be stored. Note that the sizes and the number of planes of the primary buffer 22 and the secondary buffer 23 are determined by the traffic conditions of the applicable system.
【0028】24はフレームバッファ管理部で、前記1
次バッファ22と2次バッファ23の中の空き1次バッ
ファと空き2次バッファの管理を行う。このフレームバ
ッファ管理部24は、伝送路25により書き込み処理部
26に接続され、伝送路27により読み出し処理部28
に接続され、伝送路29により前記1次バッファ22と
接続され、伝送路30により前記2次バッファ23と接
続される。Reference numeral 24 denotes a frame buffer management unit.
The empty primary buffer and the empty secondary buffer in the next buffer 22 and the secondary buffer 23 are managed. The frame buffer management unit 24 is connected to a write processing unit 26 by a transmission line 25, and is read by a read processing unit 28 by a transmission line 27.
, And connected to the primary buffer 22 via a transmission line 29, and connected to the secondary buffer 23 via a transmission line 30.
【0029】前記書き込み処理部26は、伝送路31を
介してLAPDフレームのフレームデータを受信する。
また、読み出し処理部28は伝送路32を介してLAP
Dフレームのフレームデータを送信する。上記構成によ
ると、伝送路31を介してLAPDフレームのフレーム
データを受信しはじめると、書き込み処理部26は、フ
レームバッファ管理部24を介して空き1次バッファ2
2にフレームデータをライトする。フレームデータが1
次バッファ22の1面のサイズを越えて継続する場合、
書き込み処理部26は、フレームバッファ管理部24を
介して空き2次バッファ23にフレームデータの残りを
ライトする。The write processing unit 26 receives the frame data of the LAPD frame via the transmission line 31.
In addition, the read processing unit 28 transmits the LAP
The frame data of the D frame is transmitted. According to the above configuration, when the frame data of the LAPD frame starts to be received via the transmission line 31, the write processing unit 26 transmits the empty primary buffer 2 via the frame buffer management unit 24.
2 is written with frame data. Frame data is 1
When continuing beyond the size of one surface of the next buffer 22,
The write processing unit 26 writes the rest of the frame data to the empty secondary buffer 23 via the frame buffer management unit 24.
【0030】LAPDフレームのフレームデータを受信
し終わると、書き込み処理部26は、管理情報として、
使用した1次バッファ22のナンバ、2次バッファ使用
フラグ(2次バッファを使用したか否かを示す)、使用
した2次バッファ23のナンバ、最終ポインタの情報を
読み出し処理部28に送り、フレームバッファ21への
フレームデータ書き込みを通知する。When the reception of the frame data of the LAPD frame is completed, the write processing unit 26
The number of the primary buffer 22 used, the secondary buffer use flag (indicating whether or not the secondary buffer is used), the number of the secondary buffer 23 used, and the information of the last pointer are sent to the read processing unit 28, and the The frame data writing to the buffer 21 is notified.
【0031】ここで、上述した管理情報を記憶する管理
情報メモリは、読み出し処理部28で持つこととする。
なお、フレームバッファ管理部24で持っていてもよ
い。読み出し処理部28がフレームバッファ21からフ
レームデータをリードする場合は、書き込み処理部26
から受け取って管理情報メモリに格納した管理情報にア
クセスして、1次バッファナンバから該当する1次バッ
ファ22をリードし、2次バッファ使用フラグを参照し
て2次バッファ23が使用されていない場合は、最終ポ
インタをリードして、最終ポインタまでフレームデータ
を読み出して、データリード処理を完了する。2次バッ
ファ23が使用されている場合は、2次バッファナンバ
から該当する2次バッファ23をリードして、最終ポイ
ンタをリードして、最終ポインタまでフレームデータを
読み出して、データリード処理を完了する。Here, it is assumed that the read processing unit 28 has a management information memory for storing the above-mentioned management information.
It should be noted that the frame buffer management unit 24 may have it. When the read processing unit 28 reads frame data from the frame buffer 21, the write processing unit 26
When the secondary buffer 23 is not used, the corresponding primary buffer 22 is read from the primary buffer number, and the secondary buffer 23 is referred to by referring to the secondary buffer use flag, by accessing the management information received from the management information stored in the management information memory. Reads the last pointer, reads the frame data up to the last pointer, and completes the data read processing. When the secondary buffer 23 is used, the corresponding secondary buffer 23 is read from the secondary buffer number, the final pointer is read, and the frame data is read up to the final pointer, thereby completing the data read processing. .
【0032】以上説明したように、LAPDフレームを
処理する装置であっても、1つのフレームデータについ
て2種類のバッファを使用することとし、これらバッフ
ァを1次バッファ,2次バッファとして、1面ずつこの
順序で使用すると、複雑なチェイン処理が必要でなくな
り管理情報メモリへのアクセス回数が減るので、管理情
報メモリには比較的低速の(アクセスタイムの長い)メ
モリを使用して、高速フレーム処理システムへ適用する
ことが可能である。As described above, even an apparatus for processing an LAPD frame uses two types of buffers for one frame data, and uses these buffers as a primary buffer and a secondary buffer, one by one. When used in this order, complicated chain processing is not required, and the number of accesses to the management information memory is reduced. Therefore, a relatively low-speed (long access time) memory is used as the management information memory, and a high-speed frame processing system is used. It is possible to apply to
【0033】なお、上記各実施例においては、2種類の
バッファを1面ずつ使用することとして、フレームデー
タの長さに応じ、最大で2面のバッファを使用すること
としているが、1つのフレームデータに対して最大で3
面、あるいは4面というように、1つのフレームデータ
に対してあらかじめ何面のバッファを割り当てるという
ことを決めておけば、2種類以上のバッファを1面ずつ
使用することとしてもよい。In each of the above embodiments, two types of buffers are used one by one, and a maximum of two buffers are used in accordance with the length of the frame data. Up to 3 for the data
If it is determined in advance how many buffers are to be allocated to one frame data, such as one plane or four planes, two or more types of buffers may be used one by one.
【0034】すなわち、従来のページ方式であると、個
々のバッファに対応させて管理情報を持たせて、他のバ
ッファの使用の有無およびどのバッファを使用したか確
認しなければならず、アクセス回数が増えてしまうが、
1つのフレームデータに対して使用されるバッファの面
数を決めておき、かつアクセスする順番を決めておけ
ば、1つのフレームデータを複数のバッファに格納する
こととしても、個々のバッファに対応させて管理情報を
持つ必要はなく、アクセスの回数を減らすことができ、
高速でフレームデータの処理が可能となる。That is, in the case of the conventional page method, it is necessary to provide management information corresponding to each buffer to check whether or not another buffer is used and which buffer is used. Will increase,
If the number of buffers to be used for one frame data is determined and the order of access is determined, one frame data can be stored in a plurality of buffers, and can be made to correspond to each buffer. You don't need to have any management information,
Processing of frame data can be performed at high speed.
【0035】[0035]
【発明の効果】以上説明したように、本発明は、フレー
ム単位で伝送されるフレームデータを処理するバッファ
を備えたHDLCフレーム処理装置において、それぞれ
複数の面数を持つ2群以上のバッファを有し、各群のバ
ッファを1面ずつ合わせた場合の合計サイズが1フレー
ムデータの最大長より大きくなるように前記群毎にバッ
ファの面サイズを同一サイズに設定するとともに、使用
する群の順番を定めたフレームバッファと、前記1フレ
ームデータに対して、前記各群のバッファを1面ずつ順
番に使用する処理部とを備えた構成としているため、1
つのフレームデータ複数のバッファに格納する場合で
も、複雑なチェイン処理が必要でなくなり、高速でフレ
ームデータを処理するシステムに適用することが可能で
ある。 As described above, the present invention provides a frame
Buffer that processes frame data transmitted in units of programs
In the HDLC frame processing device provided with
It has two or more groups of buffers with multiple faces,
The total size of one frame at a time is one frame
Back up each group so that it is longer than the maximum data length.
Set the face size to the same size and use
A frame buffer in which the order of groups
For each frame data, the buffer of each group is
And a processing unit to be used for
When storing one frame data in multiple buffers
Also eliminates the need for complicated chain processing,
Can be applied to systems that process
is there.
【0036】また、大容量のフレームバッファを用いる
必要がないので、コストを抑えることができる。Further, since there is no need to use a large-capacity frame buffer, the cost can be reduced.
【図1】本発明の第1の実施例を表すフレーム処理装置
のブロック図である。FIG. 1 is a block diagram of a frame processing apparatus according to a first embodiment of the present invention.
【図2】本発明の第2の実施例を表すフレーム処理装置
のブロック図である。FIG. 2 is a block diagram of a frame processing device according to a second embodiment of the present invention.
【図3】従来のフレーム処理装置のバッファ構成を表す
ブロック図である。FIG. 3 is a block diagram illustrating a buffer configuration of a conventional frame processing device.
【図4】従来のフレーム処理装置の他のバッファ構成を
表すブロック図である。FIG. 4 is a block diagram illustrating another buffer configuration of a conventional frame processing device.
1 フレームバッファ 2 1次バッファ 3 2次バッファ 4 フレームバッファ管理部 6 書き込み処理部 8 読み出し処理部 Reference Signs List 1 frame buffer 2 primary buffer 3 secondary buffer 4 frame buffer management unit 6 write processing unit 8 read processing unit
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭64−93235(JP,A) 特開 平5−160860(JP,A) 特開 平4−237238(JP,A) 特開 昭62−40559(JP,A) 特開 昭62−100049(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04L 29/08 H04L 13/08 ──────────────────────────────────────────────────続 き Continuation of front page (56) References JP-A-64-93235 (JP, A) JP-A-5-160860 (JP, A) JP-A-4-237238 (JP, A) JP-A 62-93238 40559 (JP, A) JP-A-62-100049 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) H04L 29/08 H04L 13/08
Claims (3)
タを処理するバッファを備えたHDLCフレーム処理装
置において、それぞれ複数の面数を持つ 2群以上のバッファを有し、
各群のバッファを1面ずつ合わせた場合の合計サイズが
1フレームデータの最大長より大きくなるように前記群
毎にバッファの面サイズを同一サイズに設定するととも
に、使用する群の順番を定めたフレームバッファと、 前記 1フレームデータに対して、前記各群のバッファを
1面ずつ順番に使用する処理部と、 を備えたことを特徴とするHDLCフレーム処理装置。An HDLC frame processing apparatus including a buffer for processing frame data transmitted in frame units, comprising: two or more groups of buffers each having a plurality of planes ;
The total size of the group to be greater than the maximum length of a frame data when the combined buffer in each group, one surface
Turn <br/> surface size of the buffer with the set to the same size for each, and a frame buffer which defines the order of the group to be used, said for one frame data, a buffer of the respective groups one by one face HDLC frame processing unit, characterized in that it and a processing unit to be used for.
置において、 前記バッファの面サイズを群毎に異ならせ、大きい面サ
イズのバッファを持つ群のバッファ面数を、小さい面サ
イズのバッファを持つ群のバッファ面数より少なくした
ことを特徴とするHDLCフレーム処理装置。2. A HDLC frame processing apparatus according to claim 1, made different for each group of surface size of the buffer, the buffer surface number of the group, with a buffer of large surface Sa <br/> size, small surface HDLC frame processing apparatus is characterized in that less than buffer surface number of the group, with a buffer of Sa <br/> size.
置において、 前記処理部として、前記バッファにフレームデータを書
き込む書き込み処理部と、前記バッファからフレームデ
ータを読み出す読み出し処理部を用い、 かつ、管理情報を記憶する記憶部を備え、 前記書き込み処理部が使用したバッファを示す情報と、
前記書き込み処理部が使用したバッファの次のバッファ
を使用したか否かを示す情報を前記管理情報として前記
記憶部に通知し、 前記読み出し処理部は前記管理情報に基づいて前記バッ
ファから順番に前記フレームデータを読み出すことを特
徴とするHDLCフレーム処理装置。 3. The HDLC frame processing device according to claim 1, wherein the processing unit uses a write processing unit that writes frame data to the buffer, and a read processing unit that reads frame data from the buffer, and A storage unit for storing the information indicating the buffer used by the write processing unit,
The storage unit notifies the storage unit of information indicating whether a buffer next to the buffer used by the write processing unit has been used as the management information, and the read processing unit sequentially executes the buffer from the buffer based on the management information. An HDLC frame processing device for reading frame data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06254895A JP3343460B2 (en) | 1995-03-22 | 1995-03-22 | HDLC frame processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06254895A JP3343460B2 (en) | 1995-03-22 | 1995-03-22 | HDLC frame processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08265392A JPH08265392A (en) | 1996-10-11 |
JP3343460B2 true JP3343460B2 (en) | 2002-11-11 |
Family
ID=13203415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06254895A Expired - Fee Related JP3343460B2 (en) | 1995-03-22 | 1995-03-22 | HDLC frame processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3343460B2 (en) |
-
1995
- 1995-03-22 JP JP06254895A patent/JP3343460B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08265392A (en) | 1996-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7315550B2 (en) | Method and apparatus for shared buffer packet switching | |
US6487202B1 (en) | Method and apparatus for maximizing memory throughput | |
EP0404078A3 (en) | Communication apparatus for reassembling packets received from a network into a message | |
CA1317659C (en) | Process for the establishment of virtual connections passing through switching matrices of a multi-stage switching system | |
US6449281B1 (en) | Interface control of communication between a control processor and a digital signal processor | |
US6912716B1 (en) | Maximized data space in shared memory between processors | |
EP1032885B1 (en) | Apparatus and method for protocol application data frame operation requests interfacing with an input/output device | |
JP3343460B2 (en) | HDLC frame processing device | |
US6647477B2 (en) | Transporting data transmission units of different sizes using segments of fixed sizes | |
EP0446335B1 (en) | Packet/fast packet switch for voice and data | |
US20020141410A1 (en) | Date transmission memory | |
US5875299A (en) | disk access apparatus for performing a stride processing of data | |
JP3137770B2 (en) | Dynamic channel allocation system | |
US7239640B1 (en) | Method and apparatus for controlling ATM streams | |
JPH04363939A (en) | Cell output device | |
US20050044300A1 (en) | Apparatus with dual writing function, and storage control apparatus | |
KR100243414B1 (en) | Queuing apparatus and method of virtual connection unit | |
JP2533958B2 (en) | Data preceding set device | |
JP2552025B2 (en) | Data transfer method | |
JP2944193B2 (en) | Data receiving device | |
US20030081597A1 (en) | Dynamic buffering in packet systems | |
KR970057780A (en) | How to Use Scheduler Data in Set-top Unit Systems | |
JPH04370859A (en) | Data transmission/reception system between host and follower devices | |
JPH05268269A (en) | Blocking equipment | |
JPH0520940B2 (en) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070823 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080823 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090823 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |