JPH01106256A - バッファリング装置 - Google Patents
バッファリング装置Info
- Publication number
- JPH01106256A JPH01106256A JP26558987A JP26558987A JPH01106256A JP H01106256 A JPH01106256 A JP H01106256A JP 26558987 A JP26558987 A JP 26558987A JP 26558987 A JP26558987 A JP 26558987A JP H01106256 A JPH01106256 A JP H01106256A
- Authority
- JP
- Japan
- Prior art keywords
- data
- buffer
- buffers
- processing device
- data processing
- 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.)
- Pending
Links
- 230000003139 buffering effect Effects 0.000 title claims abstract description 15
- 239000000872 buffer Substances 0.000 claims abstract description 62
- 238000010586 diagram Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 238000013144 data compression Methods 0.000 description 1
- -1 for example Substances 0.000 description 1
Landscapes
- Information Transfer Systems (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はデータ転送装置に関し、特に非同期的にデータ
送受が行なわれるデータ処理装置間に接続されるバッフ
ァリング装置に関する。
送受が行なわれるデータ処理装置間に接続されるバッフ
ァリング装置に関する。
(従来の技術)
従来、この種のバッファリング装置は、データのオーバ
ーランを防ぐために大容量のバッファを持つのが一般的
である。しかしながら大容量のバッファを持つことはハ
ードウェアが増大し、実現する上で問題となる。このた
め、バッファ容量を小さくする種々工夫がなされてきた
。その一つがデータを圧縮する方法である。すなわち、
転送されるデータのパターンをあるブロックに区切って
比較すると同一パターンが現れることが少なくないので
、データをバッファに格納するとき少ない情報量として
記憶し、データ送出時にその情報をもとに拡張する方法
がとられる。
ーランを防ぐために大容量のバッファを持つのが一般的
である。しかしながら大容量のバッファを持つことはハ
ードウェアが増大し、実現する上で問題となる。このた
め、バッファ容量を小さくする種々工夫がなされてきた
。その一つがデータを圧縮する方法である。すなわち、
転送されるデータのパターンをあるブロックに区切って
比較すると同一パターンが現れることが少なくないので
、データをバッファに格納するとき少ない情報量として
記憶し、データ送出時にその情報をもとに拡張する方法
がとられる。
実際的な方法としては、送受(Xのデータブロック容量
のバッファを複数個′設け、各バッファ毎にカウンタを
設けておき、受信毎に直前に保持されたデータと比較し
て内容が同一の場合、そのデータを保持しているバッフ
ァのカウンタをインクリメントして、カウンタの示す値
だけ該当する時間に繰返させるようにし、受信したバッ
ファは次のデータの受信に使用するという方法である。
のバッファを複数個′設け、各バッファ毎にカウンタを
設けておき、受信毎に直前に保持されたデータと比較し
て内容が同一の場合、そのデータを保持しているバッフ
ァのカウンタをインクリメントして、カウンタの示す値
だけ該当する時間に繰返させるようにし、受信したバッ
ファは次のデータの受信に使用するという方法である。
(発明が解決しようとする問題点〕
上述した従来のバッファリング装置は、連続した同一パ
ターンのデータブロックに対しては有効であるが、離散
した同一パターンのデータブロックに対してはハ゛ツフ
ァの使用を省略できないという欠点がある。
ターンのデータブロックに対しては有効であるが、離散
した同一パターンのデータブロックに対してはハ゛ツフ
ァの使用を省略できないという欠点がある。
(問題点を解決するための手段〕
本発明のバッファリング装置は、バッファ毎に設けられ
、第1のデータ処理装置から転送されてきたデータと当
該バッファから読出されたデータを比較する比較器と、
データを現在保持しているバッファの第2のデータ処理
装置への送出順が登録されるキューレジスタと、第1の
データ処理装置からデータが転送されてくると、これを
前記複数のバッファのいずわか1つの空バッファに格納
すると同時に、該バッファ以外でデータを現在保持して
いるバッファのデータを読出し、比較器の出力からブロ
ック全体が同じデータを保持しているバッファが存在す
ると、前記格納動作を行なったバッファをビジー状態と
せず一致した前記バッファの番号をキューレジスタに登
録する手段を有する。
、第1のデータ処理装置から転送されてきたデータと当
該バッファから読出されたデータを比較する比較器と、
データを現在保持しているバッファの第2のデータ処理
装置への送出順が登録されるキューレジスタと、第1の
データ処理装置からデータが転送されてくると、これを
前記複数のバッファのいずわか1つの空バッファに格納
すると同時に、該バッファ以外でデータを現在保持して
いるバッファのデータを読出し、比較器の出力からブロ
ック全体が同じデータを保持しているバッファが存在す
ると、前記格納動作を行なったバッファをビジー状態と
せず一致した前記バッファの番号をキューレジスタに登
録する手段を有する。
(作 用)
したがって、#散じた同一パターンのデータブロックに
対してもデータの圧縮が行なわれ、少ない容量で効率的
にバッファリングを行なうことができる。
対してもデータの圧縮が行なわれ、少ない容量で効率的
にバッファリングを行なうことができる。
(実施例〕
次に、本発明の実施例について図面を参照して説明する
。
。
第1図は本発明のバッファリング装置の一実施例のブロ
ック図、第2図は第1図中のバッファ1〜4のブロック
図、第3図は第1図中の制御部7のブロック図である。
ック図、第2図は第1図中のバッファ1〜4のブロック
図、第3図は第1図中の制御部7のブロック図である。
このバッファリング装置は、データ、線901とダイア
ログ線903によってデータ送出装置(不図示)に接続
され、データ線902とダイアログ11!1904によ
ってデータ受取り装置(不図示)に接続されている。
ログ線903によってデータ送出装置(不図示)に接続
され、データ線902とダイアログ11!1904によ
ってデータ受取り装置(不図示)に接続されている。
バッファ1〜4はデータ送出装置およびデータ受取り装
置で扱うデータブロックのサイズに等しい容量、例えば
256バイトの容量を持ち、第2図に示すように、同時
に2つのアドレスによって読出し/書込みが可能なデュ
アルポートRAM12と、データ線901に設けられた
ゲート13で構成されている。アドレスレジスタ5はバ
ッファ1〜4の−を込みアドレスを保持し、アドレスレ
ジスタ6はバッファ1〜4の読出しアドレスを保持する
。比較器11,21,31.41はデータ線901によ
って転送されてきたデータとそれぞれバッファ1,2,
3.4から読出されたデータ線101,201,301
,401上のデータを比較し、一致すればそれぞれ一致
信号線111.211,311,411を”l″にする
。
置で扱うデータブロックのサイズに等しい容量、例えば
256バイトの容量を持ち、第2図に示すように、同時
に2つのアドレスによって読出し/書込みが可能なデュ
アルポートRAM12と、データ線901に設けられた
ゲート13で構成されている。アドレスレジスタ5はバ
ッファ1〜4の−を込みアドレスを保持し、アドレスレ
ジスタ6はバッファ1〜4の読出しアドレスを保持する
。比較器11,21,31.41はデータ線901によ
って転送されてきたデータとそれぞれバッファ1,2,
3.4から読出されたデータ線101,201,301
,401上のデータを比較し、一致すればそれぞれ一致
信号線111.211,311,411を”l″にする
。
選択器8は選択fi707の選択信号により制御され、
それぞれデータ線102,202,302゜402の上
のバッファ1,2,3.4から読出されたデータを選択
し、データ線902に出力する。制御部7は、第3図に
示すように、現在データを保持しているバッファのデー
タ送出順が登録されるキューレジスタ711〜718と
、キューの先頭を示すキューレジスタの番号を保持して
いるヘッドポインタ73と、キューの末尾を示すキュー
レジスタの番号を保持しているテールボインタ74と、
ダイアログa903,904.バッファ1〜4のアドレ
ス、[501,601,アドレスレジスタ5.6の制御
線705,706と接続された転送制御回路72と、キ
ューレジスタ711〜718.ヘッドポインタ73.テ
ールポインタ74.一致信号線711〜411.書込み
イネーブル線701〜7041選択線707と接続され
てキューレジスタ711〜718.バッファ1〜4の占
込み制御、選択器8の制御を行なうキュー制御回路で構
成されている。なお、キューがまったく存在しない時は
ヘッドポインタ73とテールポインタ74は同じキュー
レジスタを指定するが有効キューレジスタが1個の場合
と区別するため、そのキューレジスタにオール”0”の
値を書込む。
それぞれデータ線102,202,302゜402の上
のバッファ1,2,3.4から読出されたデータを選択
し、データ線902に出力する。制御部7は、第3図に
示すように、現在データを保持しているバッファのデー
タ送出順が登録されるキューレジスタ711〜718と
、キューの先頭を示すキューレジスタの番号を保持して
いるヘッドポインタ73と、キューの末尾を示すキュー
レジスタの番号を保持しているテールボインタ74と、
ダイアログa903,904.バッファ1〜4のアドレ
ス、[501,601,アドレスレジスタ5.6の制御
線705,706と接続された転送制御回路72と、キ
ューレジスタ711〜718.ヘッドポインタ73.テ
ールポインタ74.一致信号線711〜411.書込み
イネーブル線701〜7041選択線707と接続され
てキューレジスタ711〜718.バッファ1〜4の占
込み制御、選択器8の制御を行なうキュー制御回路で構
成されている。なお、キューがまったく存在しない時は
ヘッドポインタ73とテールポインタ74は同じキュー
レジスタを指定するが有効キューレジスタが1個の場合
と区別するため、そのキューレジスタにオール”0”の
値を書込む。
通常動作として全バッファ1〜4が空き状態のとき、ま
ずデータ送出装置からのダイアログ線903によるデー
タ送出要求によって空バッファ、例えばバッファ1に書
込みイネーブル線701をアクティブにしてデータ線9
01からのデータを、1F込んでゆく。このときのバッ
ファlの8込みアドレスはアドレスレジスタ5によって
与えられる。lブロック分の、!F込みが終rすると、
ゾールポインタ74の示すキューレジスタ、この場合キ
ューレジスタ711にバッファの番号、この場合値lを
−F〈。
ずデータ送出装置からのダイアログ線903によるデー
タ送出要求によって空バッファ、例えばバッファ1に書
込みイネーブル線701をアクティブにしてデータ線9
01からのデータを、1F込んでゆく。このときのバッ
ファlの8込みアドレスはアドレスレジスタ5によって
与えられる。lブロック分の、!F込みが終rすると、
ゾールポインタ74の示すキューレジスタ、この場合キ
ューレジスタ711にバッファの番号、この場合値lを
−F〈。
データ受取り装置へのデータ送出はキューの存在によっ
て開始され、ヘッドポインタ73の示すキューレジスタ
の値によって選択器8で目的とするバッファが選択され
、ダイアログ線904でデータ送出要求が出されデータ
線902からデータが送出される。このときアドレスは
アドレスレジスタ6によって与えられる。!ブロック分
の送出が完了すると、ヘッドポインタ73のインクリメ
ントが行なわれ、または最後のキューである場合はヘッ
ドポインタ73の示すキューレジスタにオール″0”の
値を8込む。
て開始され、ヘッドポインタ73の示すキューレジスタ
の値によって選択器8で目的とするバッファが選択され
、ダイアログ線904でデータ送出要求が出されデータ
線902からデータが送出される。このときアドレスは
アドレスレジスタ6によって与えられる。!ブロック分
の送出が完了すると、ヘッドポインタ73のインクリメ
ントが行なわれ、または最後のキューである場合はヘッ
ドポインタ73の示すキューレジスタにオール″0”の
値を8込む。
次に、本実施例の動作を説明する。
バッファ1〜3にそれぞれパターンA、B、Cのデータ
が保持されており、ヘットポインタ73はキューレジス
タ711を指定し、テールポインタ74はキューレジス
タ713を指定しており、さらにダイアログ線903か
らデータ送出要求を受けた場合、キュー制御回路71に
よってバッファ4が空状態であることが判定され、書込
みイネーブル線704がアクティブとなりアドレスレジ
スタ5によって与えられるアドレスに次々と書かれてゆ
く。この時同時にアドレスレジスタ5のアドレスによっ
てバッファ1〜3の値がデータ線101.201,30
1から読出され、比較器11.21.31でデータ線9
01のデータと比較される。バッファ4へ書込んだデー
タのパターンがBだとすると、一致信号線211は書込
みの間アクティブとなり、キュー制御回路71によって
、バッファ4へ書込んだデータ内容とバッファ2のデー
タ内容が一致していることが認識され、テールポインタ
74をインクリメントし、キューレジスタ714に値4
ではなく値2を書く。
が保持されており、ヘットポインタ73はキューレジス
タ711を指定し、テールポインタ74はキューレジス
タ713を指定しており、さらにダイアログ線903か
らデータ送出要求を受けた場合、キュー制御回路71に
よってバッファ4が空状態であることが判定され、書込
みイネーブル線704がアクティブとなりアドレスレジ
スタ5によって与えられるアドレスに次々と書かれてゆ
く。この時同時にアドレスレジスタ5のアドレスによっ
てバッファ1〜3の値がデータ線101.201,30
1から読出され、比較器11.21.31でデータ線9
01のデータと比較される。バッファ4へ書込んだデー
タのパターンがBだとすると、一致信号線211は書込
みの間アクティブとなり、キュー制御回路71によって
、バッファ4へ書込んだデータ内容とバッファ2のデー
タ内容が一致していることが認識され、テールポインタ
74をインクリメントし、キューレジスタ714に値4
ではなく値2を書く。
これによってバッファ4は空状態を保ったことになる。
以ト説明したように本発明は、新たに受取ったデータブ
ロックとすでに保持している全データブロックを比較し
、一致すればバッファのキュー介録する方法でデータの
圧縮保持を行なうことにより、少ないバッファ容量で効
率的にバッファリングを行なえる効果がある。
ロックとすでに保持している全データブロックを比較し
、一致すればバッファのキュー介録する方法でデータの
圧縮保持を行なうことにより、少ないバッファ容量で効
率的にバッファリングを行なえる効果がある。
第1図は本発明のバッファリング装置の一実施例のブロ
ック図、第2図は第1図中のバッファ1〜4のブロック
図、第3図は第1図中の制御部7のブロック図である。 1〜4−−−−−−−−−−−−バッファ、5.6峠・
・・・・・・・・・アドレスレジスタ、7・・・・・・
・・・・・・・・・・・・ル制面部、8−−−−−・・
・・・・・・・・・・・選択器、11.2+、31.4
1−・・比較器、12・・・・・・・・・・・・・・・
デュアルポートRAM、13・・・、・・・・・・・・
・・・・ゲート、71−−−−−−−−・・・・・・・
キュー制御回路、72・・・・・・・・・・・・・・・
転送制御回路、73−−−−・・・・・・・・・・・ヘ
ッドポインタ、74−−−−−−−−−−−−−−−テ
ールポインタ、101.102,201.202−−−
−−−−−−−−−データ線、301.302,401
,402゜ 901.902 111.211,311.411−−−−−−−軸・・
・一致信号線、501.601−−−−−−−−−アド
レス線、701〜704−・・・軸書込みイネーブル線
、705.706−−−−−−−−制御線、707−・
・・・・・・・・・・・・・選択線、903.904−
−−−−−−−−ダイアログ線、711〜718−−−
−−−キューレジスタ。
ック図、第2図は第1図中のバッファ1〜4のブロック
図、第3図は第1図中の制御部7のブロック図である。 1〜4−−−−−−−−−−−−バッファ、5.6峠・
・・・・・・・・・アドレスレジスタ、7・・・・・・
・・・・・・・・・・・・ル制面部、8−−−−−・・
・・・・・・・・・・・選択器、11.2+、31.4
1−・・比較器、12・・・・・・・・・・・・・・・
デュアルポートRAM、13・・・、・・・・・・・・
・・・・ゲート、71−−−−−−−−・・・・・・・
キュー制御回路、72・・・・・・・・・・・・・・・
転送制御回路、73−−−−・・・・・・・・・・・ヘ
ッドポインタ、74−−−−−−−−−−−−−−−テ
ールポインタ、101.102,201.202−−−
−−−−−−−−−データ線、301.302,401
,402゜ 901.902 111.211,311.411−−−−−−−軸・・
・一致信号線、501.601−−−−−−−−−アド
レス線、701〜704−・・・軸書込みイネーブル線
、705.706−−−−−−−−制御線、707−・
・・・・・・・・・・・・・選択線、903.904−
−−−−−−−−ダイアログ線、711〜718−−−
−−−キューレジスタ。
Claims (1)
- 【特許請求の範囲】 第1のデータ処理装置と、第1のデータ処理装置から送
信されたデータを非同期的に受信する第2のデータ処理
装置との間に接続され、データのバッファリングを行な
うバッファリング装置であって、第1と第2のデータ処
理装置間で扱われるデータの処理単位であるブロックの
サイズに等しい容量を持ち、第2のデータ処理装置へ送
出すべき第1のデータ処理装置から受信したデータを保
持する複数のバッファを有するバッファリング装置にお
いて、 バッファ毎に設けられ、第1のデータ処理装置から転送
されてきたデータと当該バッファから読出されたデータ
を比較する比較器と、 データを現在保持しているバッファの第2のデータ処理
装置への送出順が登録されるキューレジスタと、 第1のデータ処理装置からデータが転送されてくると、
これを前記複数のバッファのいずれか1つの空バッファ
に格納すると同時に、該バッファ以外でデータを現在保
持しているバッファのデータを読出し、比較器の出力か
らブロック全体が同じデータを保持しているバッファが
存在すると、前記格納動作を行なったバッファをビジー
状態とせず、一致した前記バッファの番号をキューレジ
スタに登録する手段を有することを特徴とするバッファ
リング装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP26558987A JPH01106256A (ja) | 1987-10-20 | 1987-10-20 | バッファリング装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP26558987A JPH01106256A (ja) | 1987-10-20 | 1987-10-20 | バッファリング装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01106256A true JPH01106256A (ja) | 1989-04-24 |
Family
ID=17419219
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP26558987A Pending JPH01106256A (ja) | 1987-10-20 | 1987-10-20 | バッファリング装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01106256A (ja) |
-
1987
- 1987-10-20 JP JP26558987A patent/JPH01106256A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7133940B2 (en) | Network interface device employing a DMA command queue | |
| US5179709A (en) | Look ahead bus transfer request | |
| US4145755A (en) | Information transferring apparatus | |
| US20020089695A1 (en) | Print control apparatus and method and storage medium | |
| US5343557A (en) | Workstation controller with full screen write mode and partial screen write mode | |
| JPH01106256A (ja) | バッファリング装置 | |
| US6215558B1 (en) | Data processing apparatus and method | |
| JPH06103225A (ja) | チェーン式dma方式及びそのためのdmaコントローラ | |
| US5774745A (en) | Method and apparatus for writing and reading entries in an event status queue of a host memory | |
| US7577560B2 (en) | Microcomputer logic development device | |
| CN119917474B (zh) | 数据解压方法、加速卡、存储介质及程序产品 | |
| JP2523874B2 (ja) | 非同期式シリアルデ―タ伝送装置 | |
| US5701546A (en) | Parallel interface circuit having a n-byte buffer and tansmitting the n byte data on a byte-by-byte basis in response to interrupt request signal | |
| JP2505298B2 (ja) | スプリットバスにおける可変バス幅指定方式及び可変バス幅情報受信方式 | |
| JPH02310649A (ja) | 受信フレーム転送方式および通信制御装置 | |
| JPS6240736B2 (ja) | ||
| JPH05128049A (ja) | 入出力制御装置 | |
| JPH0115100B2 (ja) | ||
| JPH0581165A (ja) | データ転送回路 | |
| JPS60207945A (ja) | デ−タ転送制御方式 | |
| JPH0353736A (ja) | 受信バッファ制御方式 | |
| JPS6019023B2 (ja) | デ−タ処理装置 | |
| JP2000132498A (ja) | Dma転送制御装置 | |
| JPH0817401B2 (ja) | Lan接続システム | |
| JPS6294042A (ja) | 通信制御装置 |