JPS6353636A - Buffer controller - Google Patents

Buffer controller

Info

Publication number
JPS6353636A
JPS6353636A JP61197715A JP19771586A JPS6353636A JP S6353636 A JPS6353636 A JP S6353636A JP 61197715 A JP61197715 A JP 61197715A JP 19771586 A JP19771586 A JP 19771586A JP S6353636 A JPS6353636 A JP S6353636A
Authority
JP
Japan
Prior art keywords
address
buffer memory
data
pointer
input
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
Application number
JP61197715A
Other languages
Japanese (ja)
Inventor
Makoto Shibuya
誠 渋谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alps Alpine Co Ltd
Original Assignee
Alps Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alps Electric Co Ltd filed Critical Alps Electric Co Ltd
Priority to JP61197715A priority Critical patent/JPS6353636A/en
Publication of JPS6353636A publication Critical patent/JPS6353636A/en
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Abstract

PURPOSE:To obtain a buffer controller executing an efficient economical data transfer making suitably variable the size of a buffer memory in accordance with the input/output speed of the data. CONSTITUTION:At the time of inputting the data, the data are inputted from a communication line 1 to an address designated by an ending pointer, and it is checked whether of not the address is the final address of buffer memories 51-54. When the address is the final address and the memory of the next sequence is used, a new memory 55 is prepared, inserted to the front of a next memory 53, the leading address is set to the ending pointer and processing is completed. When the data are read and supplied to an auxiliary memory device 3, it is checked whether or not the address designated by the leading pointer and the ending pointer is equal, when the address is not equal, the data are read, supplied to the device 3, and when the address is the final address, the leading address of the memory of the next sequence is designated to the leading pointer and the processing is completed.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、例えば通信回線等の第1の装置からある速度
で入力されるデータをバッファメモリを介して記憶装置
等の第2の装置に異なる速度で供給するバッファ制御装
置に関する。
DETAILED DESCRIPTION OF THE INVENTION [Industrial Application Field] The present invention provides data input at a certain speed from a first device such as a communication line to a second device such as a storage device via a buffer memory. The present invention relates to a buffer control device for feeding at different speeds.

(従来の技術〕 ある第1の装置から第2の装置に比較的長いデータを逐
次供給する場合、すなわち具体的には通信回線等から逐
次入力されるデータを磁気ディスク等に逐次記憶させる
場合、磁気ディスクにデータを記憶させる速度が通信回
線からデータが入力される速度と同じときには特に問題
はないが、両速度は一般に異なることが多い。このよう
に両速度が異なる場合、通信回線から入力されるデータ
を磁気ディスクに迅速かつ効率的に供給するために、バ
ッファメモリが使用されている。そして、通信回線から
入力されるデータは一旦バッツァメモリに蓄積された後
、磁気ディスクの記憶速度に応じた速度でバッファメモ
リから磁気ディスクにデータが供給されるようになって
いる。
(Prior Art) When relatively long data is sequentially supplied from a first device to a second device, specifically, when data sequentially input from a communication line etc. is sequentially stored on a magnetic disk etc. There is no particular problem when the speed at which data is stored on the magnetic disk is the same as the speed at which data is input from the communication line, but the two speeds are generally different.If the two speeds are different like this, the data input from the communication line Buffer memory is used to quickly and efficiently supply data to magnetic disks.Then, data input from a communication line is stored in Batza memory and then processed according to the storage speed of the magnetic disk. Data is supplied from the buffer memory to the magnetic disk at the same speed.

このようにバッファメモリを介在して、第1の装置から
入力されるデータを第2の装置に供給すルハソファ制御
装置において、従来、バッファメモリはその記憶容量が
一定の容量に固定されたものを指定するという具合にラ
ンプアラウンド(Wrap around )構成が取
られている。
In a Luhasso control device that supplies data input from a first device to a second device via a buffer memory, conventionally, the buffer memory has a fixed storage capacity. A wrap-around configuration is adopted in which the user specifies the information.

このようなバッファメモリの制御において、第1の装置
から入力されるデータの速度が第2の装置に供給される
データの速度よりも速いと、第5図(b)に示すように
末尾ポインタはバッファメモリの最後から先頭を越えて
先頭ポインタの直前まで進み、バッファメモリはほとん
どデータで占有され、新たな次のデータを入力する領域
が無くなるため、バッファメモリは空ができるまで入力
を停止しなければならなくなる。
In controlling such a buffer memory, if the speed of data input from the first device is faster than the speed of data supplied to the second device, the end pointer will change as shown in FIG. 5(b). The process progresses from the end of the buffer memory past the beginning to just before the start pointer, and the buffer memory is almost occupied by data, and there is no space to input new data, so input must be stopped until the buffer memory becomes empty. It will stop happening.

また、反対に、第1の装置から入力されるデータの速度
が第2の装置に供給されるデータの速度よりも遅いと、
第5図(C)に示すように先頭ポインタは末尾ポインタ
の直前まで進み、バッファメモリはほとんど空状態にな
るため、第2の装置へのデータの供給はバッファメモリ
にデータがたまるまで待たなければならなくなる。
Conversely, if the speed of data input from the first device is slower than the speed of data supplied to the second device,
As shown in Figure 5 (C), the first pointer advances to just before the end pointer and the buffer memory becomes almost empty, so you have to wait until data is accumulated in the buffer memory before supplying data to the second device. It will stop happening.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

」二連したように、バッファメモリの容量が固定されて
いる従来の装置においては、第1の装置から入力される
データの速度と第2の装置に供給されるデータの速度と
の差によってバッファメモリの容量が足りなくなったり
、または多すぎることになり、足りない場合にはデータ
の転送を効率的に行うことができないし、また多すぎる
場合にはバッファメモリが無駄となり非経済的であると
いう問題がある。
''As described above, in conventional devices in which the capacity of the buffer memory is fixed, the buffer memory capacity is reduced depending on the difference between the speed of data input from the first device and the speed of data supplied to the second device. If there is not enough memory, or if there is too much memory, data cannot be transferred efficiently, and if there is too much, buffer memory is wasted and uneconomical. There's a problem.

本発明は、」1記に鑑みてなされたもので、その目的と
するところは、バッファメモリの大きさをデータの入出
力速度に応じて適切に可変し、効率的かつ経済的なデー
タ転送を行うことができるバッファ制御装置を提供する
ことにある。
The present invention has been made in view of item 1, and its purpose is to appropriately vary the size of the buffer memory according to the data input/output speed, thereby achieving efficient and economical data transfer. An object of the present invention is to provide a buffer control device that can perform the following steps.

〔問題点を解決するだめの手段〕[Failure to solve the problem]

上記問題点を解決するため、本発明は、第】の装置から
供給されるデータを蓄積するとともに、所定の順位で環
状に配列される複数のバッファメモリと、第1の装置か
らのデータを入力する前記バッファメモリの入力アドレ
スを指定する人力アドレスポインタと、該入力アドレス
ポインタで指定された入力アドレスのバッファメモリに
前記第1の装置からのデータを入力したとき、この入力
アドレスがバッファメモリの最後のアドレスであい場合
には次のアドレスを入力アドレスポインタに設定し、最
後のアドレスである場合には次の順位に配列されている
バッファメモリが既に使用中であるか否かをチェ’7り
して使用中でない場合には該バッファメモリの先頭アド
レスを入力アドレスポインタに設定し、使用中である場
合には新たなバッファメモリを前記環状順位の中の前記
使用中のバッファメモリの前に設定し、この新たなバッ
ファメモリの先頭アドレスを入力アドレスポインタに設
定する入力アドレスポインタ設定手段と、前記バッファ
メモリに蓄積されているデータを第2の装置に読み出す
バッファメモリの読出しアドレスを指定する読出しアド
レスポインタと、該読出しアドレスポインタで指定され
た読出しアドレスのバッファメモリからデータを読み出
して第2の装置に供給したとき、この読出しアドレスが
バッファメモリの最後のアドレスでない場合には次のア
ドレスを読出しアドレスポインタに設定し、最後のアド
レスである場合には次の順位に配列されているバッファ
メモリの先頭アドレスを読出しアドレスポインタに設定
する読出しアドレスポインタ設定手段とを有することを
要旨とする。
In order to solve the above-mentioned problems, the present invention has a plurality of buffer memories that store data supplied from the first device, are arranged in a ring in a predetermined order, and input data from the first device. When data from the first device is input to the buffer memory at the input address specified by the input address pointer, this input address is the last input address of the buffer memory. If the address is correct, set the next address to the input address pointer, and if it is the last address, check whether the buffer memory arranged in the next order is already in use. If the buffer memory is not in use, the start address of the buffer memory is set to the input address pointer, and if it is in use, a new buffer memory is set before the buffer memory in use in the circular order. , an input address pointer setting means for setting the start address of this new buffer memory as an input address pointer, and a read address pointer for specifying a read address of the buffer memory from which data stored in the buffer memory is read to a second device. When data is read from the buffer memory at the read address specified by the read address pointer and supplied to the second device, if this read address is not the last address of the buffer memory, the next address is read and the address pointer is and, if it is the last address, sets the first address of the buffer memory arranged in the next order as the read address pointer.

〔作用〕[Effect]

本発明のバッファ制御装置は、所定順位で環状に配列さ
れた複数のバッファメモリの入力アドレスポインタで指
定された入力アドレスに第1の装置からデータを入力し
たとき、この入力アドレスがバッファメモリの最後のア
ドレスである場合には次の順位に配列されているバッフ
ァメモリが既に使用中であるか否かをチェックして使用
中でない場合には該バッファメモリの先頭アドレスを入
力アドレスポインタに設定し、使用中である場合には新
たなバッファメモリを前記環状順位の中の前記使用中の
バッファメモリの前に追加設定し、この新たなバッファ
メモリの先頭アドレスを入力アドレスポインタに設定す
るとともに、読出しアドレスポインタで指定された読出
しアドレスのバッファメモリからデータを読み出して第
2の装置に供給したとき、この読出しアドレスがバッフ
ァメモリの最後のアドレスでない場合には次のアドレス
を読出しアドレスポインタに設定し、最後のアドレスで
ある場合には次の順位に配列されているバッファメモリ
の先頭アドレスを読出しアドレスポインタに設定してい
る。
In the buffer control device of the present invention, when data is input from a first device to an input address designated by an input address pointer of a plurality of buffer memories arranged circularly in a predetermined order, this input address is the last one of the buffer memories. If the address is, it is checked whether the buffer memory arranged in the next order is already in use or not, and if it is not in use, the start address of the buffer memory is set to the input address pointer, If it is in use, a new buffer memory is added and set before the buffer memory in use in the circular order, the start address of this new buffer memory is set to the input address pointer, and the read address is set. When data is read from the buffer memory at the read address specified by the pointer and supplied to the second device, if this read address is not the last address of the buffer memory, the next address is set to the read address pointer, and the last address is set to the read address pointer. , the first address of the buffer memory arranged in the next order is set as the read address pointer.

〔実施例〕〔Example〕

以下、図面を用いて本発明の詳細な説明する。 Hereinafter, the present invention will be explained in detail using the drawings.

第1図は本発明の一実施例に係るバッファ制御装置のブ
ロック図である。この実施例は、第1の装置である通信
回線1と第2の装置である補助記憶装置3との間におけ
るデータ転送をバッファメモリ装置5を使用し、データ
転送制御プログラム7に基づく図示しないコンピュータ
の制御により実施している。なお、この場合、補助記憶
袋W3は例えば磁気ディスク、フロンビイディスク等が
あるが、これに限定されるものでないばかりでなく、第
2の装置としては記憶装置以外の他の装置でもよいもの
である。また、同様に第1の装置も通信回線1に限定さ
れるものでない。
FIG. 1 is a block diagram of a buffer control device according to an embodiment of the present invention. This embodiment uses a buffer memory device 5 to transfer data between a communication line 1 that is a first device and an auxiliary storage device 3 that is a second device, and a computer (not shown) based on a data transfer control program 7. This is carried out under the control of In this case, the auxiliary storage bag W3 is, for example, a magnetic disk, a Fronbi disk, etc., but is not limited to this, and the second device may be any other device other than the storage device. be. Similarly, the first device is not limited to the communication line 1 either.

バッファメモリ装置5ば、第2図に示すように複数のバ
ッファメモリ51,52,53.54で構成されている
。バッファメモリ51.52.53.54は各々所定の
記憶容量を有する。また、バッファメモリ51,52,
53.54は所定の順位、すなわち図示のようにバッフ
ァメモリ51の次にバッファメモリ52.バッファメモ
リ52の次にバッファメモリ53.バッファメモリ53
の次にバッファメモリ54が配列されるというように所
定の順位で構成されるとともに、最後のバッファメモリ
54の次には最初のバッファメモリ51が続くという具
合に環状に連結するように構成されている。
The buffer memory device 5 is composed of a plurality of buffer memories 51, 52, 53, and 54, as shown in FIG. Buffer memories 51, 52, 53, and 54 each have a predetermined storage capacity. In addition, buffer memories 51, 52,
53, 54 are in a predetermined order, that is, the buffer memory 51 is next followed by the buffer memory 52 . Buffer memory 52 is followed by buffer memory 53 . Buffer memory 53
The buffer memories 54 are arranged in a predetermined order, and the last buffer memory 54 is followed by the first buffer memory 51, so that they are connected in a circular manner. There is.

そして、このように複数のバッファメモリ51〜54か
らなるバッファメモリ装置5に前記通信回線1からデー
タが入力されて蓄積され、この蓄積されたデータがバッ
ファメモリ装置5がら読み出されて補助記憶装置3に供
給されるよ・うに制御されることになるのであるが、第
2図において通信回線1からデータが入力されるアドレ
スは末尾ポインタによって指定され、また補助記憶装置
3に供給されるべくバッファメモリ装置5からデータが
読み出されるアドレスは先頭ポインタによって指定され
ている。第2図のバッファメモリ装置5において斜線が
施されている部分は通信回線1から入力されたデータが
既に蓄積されている領域であり、斜線の施されていない
空白部分はまだデータが蓄積されていない領域である。
Data is input from the communication line 1 and stored in the buffer memory device 5, which is composed of a plurality of buffer memories 51 to 54, and the stored data is read out from the buffer memory device 5 and stored in the auxiliary storage device. In FIG. 2, the address to which data is input from the communication line 1 is specified by the end pointer, and the buffer is controlled so that the data is supplied to the auxiliary storage device 3. The address from which data is read from the memory device 5 is specified by the head pointer. In the buffer memory device 5 in FIG. 2, the shaded area is the area where data input from the communication line 1 has already been stored, and the blank area that is not shaded is the area where data has not yet been stored. This is an area where there is no such thing.

今、通信回線1からデータを入力しようとすると、第2
図において末尾ポインタで指定されているアドレスのバ
ッファメモリ52の空白部分の先頭に蓄積される。そし
て、データの蓄積が終了すると、末尾ポインタはインク
リメントされて、末尾ポインタには今のアドレスの次の
アドレスが設定される。
Now, when I try to input data from communication line 1, the second
In the figure, the data is stored at the beginning of the blank part of the buffer memory 52 at the address specified by the end pointer. When data storage is completed, the end pointer is incremented, and the address next to the current address is set in the end pointer.

また、補助記憶装置3には、第2図において先頭ポイン
タで指定されるアドレスのパンファメモリ53の斜線部
分の先頭に蓄積されているデータが読み出され蓄積され
る。データの読出しが終了すると、先頭ポインタはイン
クリメントされて、末尾ポインタには今のアドレスの次
のアドレスが設定される。
In addition, the data stored at the beginning of the diagonally shaded portion of the expansion memory 53 at the address designated by the beginning pointer in FIG. 2 is read out and stored in the auxiliary storage device 3. When data reading is completed, the start pointer is incremented, and the end pointer is set to the next address from the current address.

このようにして、先頭ポインタによって指定されたアド
レスのデータが順次読み出されて補助記憶装置3に供給
されると、この先頭ポインタは第2図においてバッファ
メモリ53の斜線部分を順次消して空白部分にするよう
に移動し、バッファメモリ53の最後のアドレスの所ま
で進む。そして、この最後のアドレスの所も先頭ポイン
タで指定して読み出してしまうと、先頭ポインタは次の
順位にあるバッファメモリ54の先頭アドレスが先頭ポ
インタに設定され、以降はこのように先頭ポインタで指
定されるバッファメモリ54のデータが先頭アドレスか
ら順次読み出されるのである。
In this way, when the data at the address specified by the start pointer is sequentially read out and supplied to the auxiliary storage device 3, the start pointer sequentially erases the shaded areas of the buffer memory 53 in FIG. , and advances to the last address in the buffer memory 53. When this last address is also specified and read with the start pointer, the start address of the buffer memory 54 in the next order is set as the start pointer, and from then on, the start pointer is specified in this way. The data stored in the buffer memory 54 is sequentially read out from the first address.

また、バッファメモリ54のデータがすべて読み出され
ると、次の順位にある最初のバッファメモリ51の先頭
アドレスが先頭ポインタに設定され、このバッファメモ
リ51のデータが順次読み出されるのである。
Furthermore, when all the data in the buffer memory 54 is read out, the start address of the first buffer memory 51 in the next rank is set as the start pointer, and the data in this buffer memory 51 is read out in sequence.

また、末尾ポインタで指定されるアドレスにデータが順
次入力されると、この末尾ポインタは第2図においてバ
ッファメモリ52の空白部分を順次斜線部分に変更する
ように移動し、バッファメモリ52の最後のアドレスの
所まで進む。そして、この最後のアドレスの所も末尾ポ
インタで指定して読み出してしまうと、末尾ポインタは
次の順位にあるバッファメモリ53の先頭アドレスが末
尾ポインタに設定されることになるのであるが、この次
の順位のバッファメモリ53が第2図に示すように既に
入力されたデータが蓄積されて使用中であると、この使
用中のバッファメモリ53の先頭アドレスが末尾ポイン
タに設定されずに、この使用中のバッファメモリ53の
前に新たなバッファメモリ55が2点鎖線で示すように
挿入され、この挿入された新たなバッファメモリ55の
先頭アドレスが末尾ポインタに設定され、この末尾ポイ
ンタに設定された新たなバッファメモリ55の先頭アド
レスへ次のデータが入力されるようになっている。また
、仮にバッファメモリ53が使用中でない場合には、こ
のバッファメモリ53の先頭アドレスが末尾ポインタに
設定され、以降はこのように末尾ポインタで指定される
バッファメモリ53の先頭アドレスからデータが順次入
力されるのである。また、バッファメモリ53にデータ
がすべて入力されると、次の順位にある最初のバッファ
メモリ54が使用中でない場合には、このバッファメモ
リ54の先頭ア1゛レスが末尾ポインタに設定され、こ
のバッファメモリ54にデータが順次入力されるのであ
る。
Furthermore, when data is sequentially input to the address specified by the end pointer, the end pointer moves so as to sequentially change the blank part of the buffer memory 52 to the shaded part in FIG. Proceed to the address. If this last address is also specified and read with the end pointer, the end pointer will be set to the start address of the buffer memory 53 in the next order, but this next As shown in FIG. 2, if the buffer memory 53 in the order of A new buffer memory 55 is inserted in front of the buffer memory 53 inside as shown by the two-dot chain line, and the start address of this inserted new buffer memory 55 is set to the end pointer. The next data is input to the starting address of the new buffer memory 55. Furthermore, if the buffer memory 53 is not in use, the start address of this buffer memory 53 is set to the end pointer, and from then on, data is input sequentially from the start address of the buffer memory 53 specified by the end pointer. It will be done. Furthermore, when all data is input to the buffer memory 53, if the first buffer memory 54 in the next order is not in use, the start address of this buffer memory 54 is set as the end pointer, and this Data is sequentially input to the buffer memory 54.

次に第3図および第4図をフローチャートに従って作用
を説明する。
Next, the operation will be explained according to the flowcharts shown in FIGS. 3 and 4.

最初に、第3図を参照してデータを通信回線1からバッ
ファメモリ装w5に入力する場合の作用について説明す
る。
First, the operation when data is input from the communication line 1 to the buffer memory device w5 will be explained with reference to FIG.

まず、データの入力時には、末尾ポインタで指定される
アドレスに通信回線1からデータを入力しくステップ1
10)、末尾ポインタで指定しているアドレスがバッフ
ァメモリ51〜54の最後のアドレスであるか否かをチ
ェックする(ステップ120)。
First, when inputting data, input data from communication line 1 to the address specified by the end pointer.Step 1
10) Check whether the address specified by the end pointer is the last address of the buffer memories 51 to 54 (step 120).

バッファメモリの最後のアドレスでない場合には、末尾
ポインタを次のアドレスへと1つ進めて終了する(ステ
ップ130)。
If it is not the last address of the buffer memory, the end pointer is advanced by one to the next address and the process ends (step 130).

バッファメモリの最後のアドレスである場合には、次の
順位のバッファメモリが使用中であるか否かをチェック
する(ステップ140)。使用中でない場合には、その
使用中でないバッファメモリの先頭アドレスを末尾ポイ
ンタに設定して処理を終了する(ステップ150)。
If it is the last address of the buffer memory, it is checked whether the next buffer memory is in use (step 140). If it is not in use, the start address of the buffer memory that is not in use is set as the end pointer, and the process ends (step 150).

次の順位のバッファメモリが使用中の場合には、メモリ
を確保して新たなバッファメモリを作成しし、この′新
たなバッファメモリを今使用中であった次の順位のバッ
ファメモリの前に、例えば第2図に示すバッファメモリ
55のようムこバッファメモリ53の前に挿入する(ス
テップ160゜170)。それから、この新たに挿入さ
れたバッファメモリの先頭アドレスを末尾ポインタに設
定して処理を終了する(ステップ180)。
If the next buffer memory is in use, allocate memory and create a new buffer memory, and place this new buffer memory in front of the next buffer memory that is currently in use. , for example, before the buffer memory 53, such as the buffer memory 55 shown in FIG. 2 (steps 160 and 170). Then, the start address of this newly inserted buffer memory is set as the end pointer, and the process ends (step 180).

次に、第4図を参照してバッファメモリからデータを読
み出して補助記憶装置3に供給する場合の作用について
説明する。
Next, the operation when reading data from the buffer memory and supplying it to the auxiliary storage device 3 will be described with reference to FIG.

まず、この処理においては、先頭ポインタと末尾ポイン
タで指定されるアドレスが等しいか否かがチェックされ
る(ステップ210)。両アドレスが等しい場合には、
エラーとなって処理は終了する(ステップ220)。な
お、この時、バッファメモリ装置5は空である。
First, in this process, it is checked whether the addresses specified by the start pointer and the end pointer are equal (step 210). If both addresses are equal,
An error occurs and the process ends (step 220). Note that at this time, the buffer memory device 5 is empty.

両アドレスが等しくない場合には、先頭ポインタが指定
するアドレスのバッファメモリからデータを読み出して
補助記憶装置3に供給する(ステップ230)。そして
、先頭ポインタの指定するアドレスがバッファメモリの
最後のアドレスであるか否かをチェックする(ステップ
240)。
If the two addresses are not equal, the data is read from the buffer memory at the address specified by the head pointer and supplied to the auxiliary storage device 3 (step 230). Then, it is checked whether the address specified by the head pointer is the last address of the buffer memory (step 240).

最後のアドレスでない場合には、先頭ポインタを次のア
ドレスへと1つ進めて処理を終了する(ステップ250
)。
If it is not the last address, the start pointer is advanced by one to the next address and the process ends (step 250).
).

バッファメモリの最後のアドレスである場合には、次の
順位のバッファメモリの先頭アドレスを先頭ポインタに
指定して処理を終了する(ステップ260)。
If it is the last address of the buffer memory, the start address of the next buffer memory is designated as the start pointer, and the process ends (step 260).

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明によれば、入力アドレスポ
インタで指定された入力アドレスに第1の装置からデー
タを入力したとき、この入力アドレスがバッファメモリ
の最後のアドレスである場合には次の順位に配設されて
いるバッファメモリが既に使用中であるか否かをチェッ
クし、使用中である場合には新たなバッファメモリを前
記環状順位の中の前記使用中のバッファメモリの前に追
加設定し、この新たなバッファメモリの先頭アドレスを
入力アドレスポインタに設定しているので、第1の装置
から人力されるデータの速度が第2の装置に供給される
データの速度よりも速く、バッファメモリが入力データ
で占有されるような場合には、新たなバッファメモリが
追加されるため、バッファメモリが足りなくなるという
ことが無くなり、データの入出力速度に応じた最適な容
量のバッファメモリが動的に設定され、効率的かつ経済
的なデータの転送が可能である。
As explained above, according to the present invention, when data is input from the first device to the input address specified by the input address pointer, if this input address is the last address of the buffer memory, the next Check whether the buffer memory arranged in the order is already in use, and if it is in use, add a new buffer memory in front of the buffer memory in use in the circular order. Since the start address of this new buffer memory is set in the input address pointer, the speed of data manually input from the first device is faster than the speed of data supplied to the second device, and the buffer When the memory is occupied by input data, a new buffer memory is added, which prevents the buffer memory from running out and allows the optimal capacity of the buffer memory to be operated according to the data input/output speed. configurable, allowing for efficient and economical data transfer.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例に係るバ・7フア制御装置の
ブロック図、 第2図は第1図の装置に使用されるバッファメモリ装置
の構成図、 第3図および第4図はそれぞれ第1図の装置のデータ入
力時およびデータ出力時の作用を示すフローチャート、 第5図は従来のバッファ制御装置の作用を説明するため
の図である。 1・・・・・・通信回線、 3・・・・・・補助記憶装置、 5・・・・・・バッファメモリ装置、 7・・・・・・データ転送制御プログラム、51〜54
・・バッファメモリ、 55・・・・・新たなバッファメモリである。 第3図 第4図
FIG. 1 is a block diagram of a buffer control device according to an embodiment of the present invention, FIG. 2 is a block diagram of a buffer memory device used in the device of FIG. 1, and FIGS. 3 and 4 are A flowchart showing the operation of the device shown in FIG. 1 at the time of data input and data output, respectively. FIG. 5 is a diagram for explaining the operation of the conventional buffer control device. 1...Communication line, 3...Auxiliary storage device, 5...Buffer memory device, 7...Data transfer control program, 51-54
...Buffer memory, 55...This is a new buffer memory. Figure 3 Figure 4

Claims (1)

【特許請求の範囲】 第1の装置から供給されるデータを蓄積するとともに、
所定の順位で環状に配列される複数のバッファメモリと
、 第1の装置からのデータを入力する前記バッファメモリ
の入力アドレスを指定する入力アドレスポインタと、 該入力アドレスポインタで指定された入力アドレスのバ
ッファメモリに前記第1の装置からのデータを入力した
とき、この入力アドレスがバッファメモリの最後のアド
レスでない場合には次のアドレスを入力アドレスポイン
タに設定し、最後のアドレスである場合には次の順位に
配列されているバッファメモリが既に使用中であるか否
かをチェックして使用中でない場合には該バッファメモ
リの先頭アドレスを入力アドレスポインタに設定し、使
用中である場合には新たなバッファメモリを前記環状順
位の中の前記使用中のバッファメモリの前に追加設定し
、この新たなバッファメモリの先頭アドレスを入力アド
レスポインタに設定する入力アドレスポインタ設定手段
と、 前記バッファメモリに蓄積されているデータを第2の装
置に読み出すバッファメモリの読出しアドレスを指定す
る読出しアドレスポインタと、該読出しアドレスポイン
タで指定された読出しアドレスのバッファメモリからデ
ータを読み出して第2の装置に供給したとき、この読出
しアドレスがバッファメモリの最後のアドレスでない場
合には次のアドレスを読出しアドレスポインタに設定し
、最後のアドレスである場合には次の順位に配列されて
いるバッファメモリの先頭アドレスを読出しアドレスポ
インタに設定する読出しアドレスポインタ設定手段と、 を有することを特徴とするバッファ制御装置。
[Claims] Accumulating data supplied from the first device, and
a plurality of buffer memories arranged in a ring in a predetermined order; an input address pointer that designates an input address of the buffer memory into which data from a first device is input; and an input address pointer that designates an input address of the buffer memory that inputs data from a first device; When data from the first device is input to the buffer memory, if this input address is not the last address of the buffer memory, the next address is set to the input address pointer, and if it is the last address, the next address is set. It is checked whether the buffer memory arranged in the order of input address pointer setting means for additionally setting a new buffer memory before the in-use buffer memory in the circular order, and setting the start address of this new buffer memory as an input address pointer; A read address pointer that specifies the read address of the buffer memory at which data is to be read out to the second device, and when data is read from the buffer memory at the read address specified by the read address pointer and supplied to the second device. , if this read address is not the last address of the buffer memory, the next address is set to the read address pointer, and if it is the last address, the first address of the buffer memory arranged in the next order is set as the read address. A buffer control device comprising: read address pointer setting means for setting a pointer.
JP61197715A 1986-08-22 1986-08-22 Buffer controller Pending JPS6353636A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61197715A JPS6353636A (en) 1986-08-22 1986-08-22 Buffer controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61197715A JPS6353636A (en) 1986-08-22 1986-08-22 Buffer controller

Publications (1)

Publication Number Publication Date
JPS6353636A true JPS6353636A (en) 1988-03-07

Family

ID=16379146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61197715A Pending JPS6353636A (en) 1986-08-22 1986-08-22 Buffer controller

Country Status (1)

Country Link
JP (1) JPS6353636A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03208124A (en) * 1990-01-10 1991-09-11 Sharp Corp Buffer memory for data communication equipment
JPH0659818A (en) * 1992-08-12 1994-03-04 Shikoku Nippon Denki Software Kk Buffer control system
EP0652683A2 (en) * 1993-08-24 1995-05-10 Mitsubishi Denki Kabushiki Kaisha A frame relay apparatus and a relay method
JPH08339289A (en) * 1995-06-13 1996-12-24 Nec Corp Variable capacity buffer memory
JP2008293484A (en) * 2007-04-27 2008-12-04 Panasonic Corp Buffer memory sharing apparatus
JP2009006404A (en) * 2007-06-26 2009-01-15 Caterpillar Japan Ltd Clamping device
US8256069B2 (en) 2007-03-15 2012-09-04 Kosmek Ltd. Link type clamp device

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03208124A (en) * 1990-01-10 1991-09-11 Sharp Corp Buffer memory for data communication equipment
JPH0659818A (en) * 1992-08-12 1994-03-04 Shikoku Nippon Denki Software Kk Buffer control system
EP0652683A2 (en) * 1993-08-24 1995-05-10 Mitsubishi Denki Kabushiki Kaisha A frame relay apparatus and a relay method
EP0652683A3 (en) * 1993-08-24 1997-02-05 Mitsubishi Electric Corp A frame relay apparatus and a relay method.
JPH08339289A (en) * 1995-06-13 1996-12-24 Nec Corp Variable capacity buffer memory
US8256069B2 (en) 2007-03-15 2012-09-04 Kosmek Ltd. Link type clamp device
JP2008293484A (en) * 2007-04-27 2008-12-04 Panasonic Corp Buffer memory sharing apparatus
JP2009006404A (en) * 2007-06-26 2009-01-15 Caterpillar Japan Ltd Clamping device

Similar Documents

Publication Publication Date Title
JPS6353636A (en) Buffer controller
JPS58149528A (en) Program loading system
EP1389748A2 (en) Numerical controller
JPH04167039A (en) Data write system
JP2000099452A (en) Dma control device
JP2567111B2 (en) Micro program controller
JP3297076B2 (en) Program management method for parallel execution type programmable controller system
JPH01121933A (en) Microcontroller
JPS6336021B2 (en)
JPS63124123A (en) Control system for magnetic disk device
JPS63213018A (en) External memory control device
JPS594735B2 (en) Channel Seigiyohoshiki
JPH06214939A (en) Dma controller
JPS6258356A (en) Dma controller
JPS63727A (en) Information retrieving method
JPS63296155A (en) Peripheral control unit
JPH04138554A (en) Parallel type digital signal processor
JPS6329301B2 (en)
JPS62196729A (en) Loading system for microprogram
JPH04286018A (en) High speed positioning system for magnetic tape storage device
JPH0721749B2 (en) File storage method, file reading method and file editing method
JPH04109888A (en) Motor controller
JPS608932A (en) Data storing method of buffer storage device
JPH0364896B2 (en)
JPH0192810A (en) Nc data storing system