[go: up one dir, main page]

JPH0517584B2 - - Google Patents

Info

Publication number
JPH0517584B2
JPH0517584B2 JP61179122A JP17912286A JPH0517584B2 JP H0517584 B2 JPH0517584 B2 JP H0517584B2 JP 61179122 A JP61179122 A JP 61179122A JP 17912286 A JP17912286 A JP 17912286A JP H0517584 B2 JPH0517584 B2 JP H0517584B2
Authority
JP
Japan
Prior art keywords
area
address
released
oldest
buffer memory
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 - Lifetime
Application number
JP61179122A
Other languages
Japanese (ja)
Other versions
JPS6336348A (en
Inventor
Akira Inaba
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.)
Toshiba Corp
Original Assignee
Tokyo Shibaura 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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP61179122A priority Critical patent/JPS6336348A/en
Priority to US07/079,163 priority patent/US4864495A/en
Priority to KR1019870008304A priority patent/KR880002335A/en
Publication of JPS6336348A publication Critical patent/JPS6336348A/en
Publication of JPH0517584B2 publication Critical patent/JPH0517584B2/ja
Granted legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/22Arrangements affording multiple use of the transmission path using time-division multiplexing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/06Indexing scheme relating to groups G06F5/06 - G06F5/16
    • G06F2205/064Linked list, i.e. structure using pointers, e.g. allowing non-contiguous address segments in one logical buffer or dynamic buffer space allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Position Input By Displaying (AREA)

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明はデータ処理装置に於けるバツフアメモ
リの管理方法に関する。
DETAILED DESCRIPTION OF THE INVENTION [Object of the Invention] (Field of Industrial Application) The present invention relates to a buffer memory management method in a data processing device.

(従来の技術) 従来、バツフアメモリの管理は、管理対象とな
るバツフアメモリを或る大きさの単位に区切り、
これらをリスト構造で連結して、使用中領域、解
放未使用領域等を表現するという手法を採つてい
た。
(Prior art) Conventionally, buffer memory management involves dividing the buffer memory to be managed into units of a certain size.
A method has been adopted in which these are connected in a list structure to express in-use areas, released unused areas, etc.

このようなリスト構造によるバツフアメモリの
管理手段に於いては管理対象となるバツフアメモ
リの区切り単位を小さくすると、メモリ使用効率
は向上するが、リスト処理に係る時間が大きくな
るという欠点があつた。
In buffer memory management means using such a list structure, memory usage efficiency is improved by reducing the division unit of the buffer memory to be managed, but there is a drawback that the time involved in list processing increases.

このため、高速のバツフアメモリ管理が必要と
される場合は、リスト構造でなく、一次元的にバ
ツフアメモリを管理することが望ましい。即ち、
受信データは順次バツフアメモリに蓄積して行
き、使用済データは直接バツフアメモリから解放
する。
Therefore, if high-speed buffer memory management is required, it is desirable to manage the buffer memory one-dimensionally rather than in a list structure. That is,
Received data is sequentially accumulated in the buffer memory, and used data is directly released from the buffer memory.

このような一次元的にバツフアメモリを管理す
る管理方法では、管理対象となるバツフアメモリ
の未使用領域と使用中領域の境界を管理する必要
があるが、この際、従来では、解放領域がバツフ
アメモリ上の何れの位置にあつて、使用・未使用
の境界や、以前に解放された領域をどのように結
合するかを全領域に亙つて調べなければならず、
従つて上記管理のための処理に要する時間は上述
したリスト構造の場合とほとんど変らず、高速化
の上でさほど大きな効果は期待できないという問
題があつた。
In such a one-dimensional management method of buffer memory, it is necessary to manage the boundaries between unused areas and used areas in the buffer memory to be managed. At any location, boundaries between used and unused areas and how to combine previously released areas must be examined across the entire area.
Therefore, the time required for the above-mentioned management processing is almost the same as in the case of the above-mentioned list structure, and there is a problem that no great effect in speeding up can be expected.

(発明が解決しようとする問題点) 上述したように従来では一次元的にバツフアメ
モリを管理する際、管理対象となるバツフアメモ
リ上の全領域を対象に比較検査する必要があるこ
とから、上記管理のための処理に多くの時間を要
し、高速化が計れないという問題があつた。
(Problems to be Solved by the Invention) As mentioned above, when buffer memory is conventionally managed one-dimensionally, it is necessary to conduct a comparative inspection of all areas on the buffer memory to be managed. The problem was that it took a lot of time to process the data, making it impossible to increase the speed.

本発明は上記実情に鑑みなされたもので、バツ
フアメモリの全領域を比較検査することなく、解
放されたメモリ領域の先頭アドレスと最終アドレ
スを一組の入力とするテーブルを用いて、バツフ
アメモリの使用中領域(部分的に解放された領域
を含む)のうち、最も古いアドレス(以下最旧ア
ドレスと称す)を管理する構成としたもので、こ
れにより高速の一次元的なバツフアメモリ管理を
実現できる。
The present invention has been made in view of the above-mentioned circumstances, and uses a table that takes as a set of inputs the starting address and the final address of the freed memory area, without comparing and inspecting the entire area of the buffer memory, while the buffer memory is in use. The configuration is such that the oldest address (hereinafter referred to as the oldest address) of the area (including a partially released area) is managed, thereby realizing high-speed one-dimensional buffer memory management.

[発明の構成] (問題点を解決するための手段及び作用) 本発明は、バツフアメモリ上のまだ読出されて
いない最も古いデータが格納された最旧アドレス
を管理するとともに、既にデータが読出され空領
域として解放された領域の範囲を繋がりのない領
域に整理してその領域が解放された順に管理し、
新たにデータが読出された領域を解放する際、前
記最旧アドレスと新たな解放領域、及び新たな解
放領域と最も古く解放された領域との各々の繋が
りを調べ、先の最旧アドレスから解放領域が連続
する領域の最終アドレスの次アドレスまで最旧ア
ドレスを更新するとともに、先の最旧アドレスと
新たな解放領域との繋がりがない場合には、新た
な解放領域と最も古く解放された領域との繋がり
を調べて、繋がりのあるときには繋がつた全領域
として、繋がりのないときには新たな領域として
解放領域の管理を行なうもので、これにより管理
対象となるバツフアメモリの全領域を比較検査す
る必要がなく、高速の一次元的なバツフアメモリ
管理が実現できる。
[Structure of the Invention] (Means and Effects for Solving the Problems) The present invention manages the oldest address in the buffer memory where the oldest data that has not yet been read is stored, and also manages the oldest address in which the oldest data that has not yet been read is stored, and also manages the oldest address in which the oldest data that has not yet been read is stored, and The range of areas released as areas is organized into unconnected areas and managed in the order in which the areas were released.
When releasing an area from which data has been newly read, check the connections between the oldest address and the new released area, and the new released area and the oldest released area, and release from the previous oldest address. The oldest address is updated to the next address of the final address of the continuous area, and if there is no connection between the previous oldest address and the new free area, the new free area and the oldest free area are updated. When there is a connection, the free area is managed as the entire connected area, and when there is no connection, the free area is managed as a new area.This makes it necessary to compare and inspect all areas of the buffer memory to be managed. Therefore, high-speed one-dimensional buffer memory management can be realized.

(実施例) 以下図面を参照して本発明の一実施例を説明す
る。
(Example) An example of the present invention will be described below with reference to the drawings.

第1図は本発明の一実施例に於ける構成要素を
示すブロツク図である。
FIG. 1 is a block diagram showing the components in one embodiment of the present invention.

図中、1はCPUであり、後述する管理テーブ
ル2を用いて第7図に示すようなバツフア領域の
解放処理制御を実行する。2はCPU1の制御の
下にバツフアメモリ3上に於ける領域管理のため
のアドレス情報を保持するFIFO構造の管理テー
ブルであり、解放されたデータのバツフアメモリ
3上に於ける先頭アドレスを保持する先頭アドレ
ス保持部2Sと、同最終アドレスを保持する最終
アドレス保持部2Eからなる。3はCPU1の管理
対象下に置かれたバツフアメモリであり、CPU
1の制御の下にデータが蓄積され、不要となつた
データが解放される。又、図中のBTMは使用中
領域内の最も古い領域の先頭位置を示す最旧アド
レスが貯えられるアドレスレジスタ(以下単に
BTMと称す)、OPは上記管理テーブル2に保持
された最旧エントリを示すアウトプツトポインタ
(以下単にOPと称す)、IPは同最新エントリを示
すインプツトポインタ(以下単にIPと称す)で
ある。
In the figure, reference numeral 1 denotes a CPU, which executes buffer area release processing control as shown in FIG. 7 using a management table 2 to be described later. 2 is a management table with a FIFO structure that holds address information for area management on the buffer memory 3 under the control of the CPU 1, and a start address that holds the start address of released data on the buffer memory 3 It consists of a holding section 2S and a final address holding section 2E that holds the same final address. 3 is buffer memory placed under the management of CPU 1, and
Data is accumulated under the control of 1, and data that is no longer needed is released. In addition, BTM in the figure is an address register (hereinafter simply referred to as BTM) that stores the oldest address indicating the beginning position of the oldest area within the area in use.
OP is an output pointer (hereinafter simply referred to as OP) indicating the oldest entry held in the management table 2, and IP is an input pointer indicating the latest entry (hereinafter simply referred to as IP). .

第2図乃至第6図はそれぞれ上記実施例の動作
状態を示す動作説明図であり、第7図は上記
CPU1の制御の下に実行されるバツフア領域解
放処理フローを示すフローチヤートである。
2 to 6 are operation explanatory diagrams showing the operating states of the above embodiment, and FIG. 7 is an explanatory diagram showing the operation state of the above embodiment.
2 is a flowchart showing a buffer area release processing flow executed under the control of CPU1.

ここで、上記第1図乃至第7図を参照して一実
施例の動作を説明する。
Here, the operation of one embodiment will be explained with reference to the above-mentioned FIGS. 1 to 7.

第1図は受信したデータがバツフアメモリ3内
の領域aに蓄積されている状態を示している。こ
の際、BTMはバツフアメモリ3上の使用中領域
の最旧アドレスを示している。
FIG. 1 shows a state in which received data is stored in area a in buffer memory 3. As shown in FIG. At this time, BTM indicates the oldest address of the area in use on the buffer memory 3.

CPU1は上記バツフアメモリ3に蓄積された
或る領域のデータを解放するとき、先ず、その解
放しようとする領域(N)がBTMアドレスに接して
いるか否か、即ち解放しようとする領域(N)の先頭
アドレスがBTMのアドレスと一致するか否かを
調べ(第7図ステツプS10)、アドレスが一致す
れば、BTMのアドレス更新処理(第7図ステツ
プS11〜S15)を実行し、アドレスの一致をみな
ければ管理テーブル2の登録・変更処理(第7図
ステツプS21〜S25)を実行する。
When the CPU 1 releases data in a certain area stored in the buffer memory 3, it first checks whether the area (N) to be released is in contact with the BTM address, that is, the area (N) to be released is checked. Check whether the first address matches the BTM address (step S10 in Figure 7), and if the addresses match, execute the BTM address update process (steps S11 to S15 in Figure 7) to check if the addresses match. If not, the registration/change process for the management table 2 (steps S21 to S25 in FIG. 7) is executed.

第2図乃び第3図はそれぞれ上記バツフアメモ
リ3上から或る領域bのデータが解放された状態
を示しており、第2図は解放領域bの先頭アドレ
スがBTMのアドレスと一致しない状態、第3図
は解放領域bの先頭アドレスがBTMのアドレス
と一致した状態をそれぞれ示している。第2図に
示すような解放領域bの先頭アドレスがBTMの
アドレスと一致しない場合は後述する管理テーブ
ル2の登録・変更処理(第7図ステツプS21〜
S25)に於いて解放領域bの先頭アドレスが管理
テーブル2内のIPで示される管理テーブル2内
の先頭アドレス保持部2Sに保持され、最終アド
レスが同じく最終アドレス保持部2Eに保持され
た後、IPが更新(+1)される。又、第3図に
示すような解放領域bの先頭アドレスがBTMの
アドレスと一致した場合は後述するBTMのアド
レス更新処理(第7図ステツプS11〜S15)に於
いてOPの示す管理テーブル2内の先頭アドレス
保持部2Sに貯えられた先頭アドレスとBTMアド
レスの一致を確認して後、BTMのアドレスが解
放領域bのアドレス分だけ更新され、更にOPが
更新(+1)される。
2 and 3 respectively show a state in which data in a certain area b is released from the buffer memory 3, and FIG. 2 shows a state in which the start address of the released area b does not match the address of BTM, FIG. 3 shows a state in which the start address of release area b matches the address of BTM. If the start address of the release area b as shown in FIG.
In S25), the start address of release area b is held in the start address holding section 2 S in the management table 2 indicated by IP in the management table 2, and the final address is also held in the final address holding section 2 E. After that, the IP is updated (+1). In addition, if the start address of release area b as shown in FIG. 3 matches the BTM address, the address in the management table 2 indicated by OP is After confirming the match between the start address stored in the start address holding unit 2S and the BTM address, the BTM address is updated by the address of the release area b, and OP is further updated (+1).

CPU1は、解放しようとする領域(N)の先頭ア
ドレスがBTMのアドレスと一致したことを認識
すると、解放しようとする領域(N)の次アドレスま
でBTMのアドレスを更新した後(第7図ステツ
プS11)、OPとIPの値を比較して管理テーブル2
が空状態であるか否かを判断し(第7図ステツプ
S12)、OPの値とIPの値が一致して管理テーブル
2が空状態であることを認識するとその解放領域
(N)に対するBTMアドレスの更新処理を終了す
る。又、OPの値とIPの値が一致せず管理テーブ
ル2が空状態でないことを認識した際は、OPの
示す管理テーブル2内の先頭アドレス保持部2S
に貯えられた先頭アドレスとBTMアドレスが一
致するか否かを判断し(第7図ステツプS13)、
一致しないときはその解放領域(N)に対するテーブ
ル更新処理を終了し、又、一致するときは、上記
OPの示す管理テーブル2内の最終アドレス保持
部2Eに貯えられた最終アドレスの次アドレスま
でBTMのアドレスを更新した後(第7図ステツ
プS14)、OPの値を更新(+1)しその解放領域
(N)に対するBTMアドレスの更新処理を終了す
る。
When the CPU 1 recognizes that the start address of the area (N) to be released matches the address of the BTM, it updates the BTM address to the next address of the area (N) to be released (step 7 in Figure 7). S11), compare the values of OP and IP and manage table 2
is empty (see step 7 in Figure 7).
S12) When the OP value and IP value match and it is recognized that management table 2 is empty, the area is released.
The BTM address update process for (N) ends. Also, when the value of OP and the value of IP do not match and it is recognized that the management table 2 is not empty, the start address holding section 2 S in the management table 2 indicated by OP is
It is determined whether the first address stored in the BTM address matches the BTM address (step S13 in Figure 7),
If they do not match, finish the table update process for the free area (N), and if they match, proceed as described above.
After updating the BTM address to the address next to the final address stored in the final address holding unit 2E in the management table 2 indicated by OP (step S14 in Figure 7), update the value of OP (+1) and release it. region
The BTM address update process for (N) ends.

この一状態例を第6図に示している。第6図は
第4図の状態から、更に領域が解放される場合
で、その新たに解放される領域dの先頭アドレス
がBTMのアドレスと等しく、かつその最終アド
レスが先に解放された、OPの示す管理テーブル
2内の先頭アドレス保持部2Sに貯えられた先頭
アドレスに連続する場合を示している。この場合
は上記した第3図に示す状態のような単にBTM
のアドレスを新たに解放された領域だけ更新する
のではなく、既に解放されテーブルに積まれてい
る領域(図ではb)と合せてBTMのアドレスを
更新する。即ちOPの示す管理テーブル2内の最
終アドレス保持部2Eに貯えられた最終アドレス
の次アドレスまでBTMのアドレスを更新する。
そしてこの更新処理の後にOPの値を更新(+1)
し、上記解放領域dに対するBTMのアドレス更
新処理を終了する。
An example of this state is shown in FIG. Figure 6 shows a case where an area is further released from the state shown in Figure 4, and the start address of the newly released area d is equal to the address of BTM, and the final address is the OP This shows the case where the address is consecutive to the start address stored in the start address holding unit 2S in the management table 2 indicated by . In this case, simply BTM as shown in Figure 3 above.
Instead of updating the address of only the newly released area, the address of BTM is updated together with the area that has already been released and accumulated in the table (b in the figure). That is, the BTM address is updated to the next address after the final address stored in the final address holding unit 2E in the management table 2 indicated by OP.
And after this update process, update the OP value (+1)
Then, the BTM address update process for the release area d is completed.

次に解放しようとする領域(N)の先頭アドレスが
BTMのアドレスと一致しない場合の管理テーブ
ル2の登録・変更処理(第7図ステツプS21〜
S25)について説明する。
The start address of the area (N) to be released next is
Management table 2 registration/change processing when the address does not match the BTM address (step S21 in Figure 7)
S25) will be explained.

CPU1は、解放しようとする領域(N)の先頭ア
ドレスがBTMのアドレスと一致しないことを認
識すると(第7図ステツプS10)、OPとIPの値を
比較して管理テーブル2が空状態であるか否かを
判断する(第7図ステツプS21)。ここでOPの値
とIPの値が一致して管理テーブル2が空状態で
あることを認識すると、その解放領域(N)に対する
テーブル登録処理(第7図ステツプS23,S24)
を実行し、又、OPの値とIPの値が一致せず管理
テーブル2が空状態でないことを認識した際は、
OPの示す管理テーブル2内の最終アドレス保持
部2Eに貯えられた最終アドレスの更新(変更)
処理(第7図ステツプS22,S25)を実行する。
即ち、OPの値とIPの値が一致せず管理テーブル
2が空状態でないことを認識した際は、OPの示
す管理テーブル2内の最終アドレス保持部2E
貯えられた最終アドレスと解放しようとする領域
(N)の先頭アドレスが連続するか否か、即ち、OP
の示す管理テーブル2内の最終アドレス保持部2
に貯えられた最終アドレスの次アドレスと解放
しようとする領域(N)の先頭アドレスが一致するか
否かを判断し(第7図ステツプS22)、一致しな
いときは後述するテーブル登録処理(第7図ステ
ツプS23,S24)を実行し、又、一致するときは、
上記OPの示す管理テーブル2内の最終アドレス
保持部2Eに貯えられた最終アドレスの値を上記
解放しようとする領域(N)の最終アドレスの値に更
新(変更)して(第7図ステツプS25)、その解
放領域(N)に対するテーブル更新処理を終了する。
When the CPU 1 recognizes that the start address of the area (N) to be released does not match the address of the BTM (step S10 in Figure 7), it compares the values of OP and IP and determines that the management table 2 is empty. It is determined whether or not (step S21 in FIG. 7). When the OP value and the IP value match and it is recognized that the management table 2 is empty, table registration processing is performed for the released area (N) (steps S23 and S24 in Figure 7).
When you execute , and realize that the OP value and IP value do not match and management table 2 is not empty,
Update (change) the final address stored in final address holding section 2 E in management table 2 indicated by OP
Processing (steps S22 and S25 in FIG. 7) is executed.
In other words, when the value of OP and the value of IP do not match and it is recognized that the management table 2 is not empty, release the final address stored in the final address holding section 2E in the management table 2 indicated by OP. area
Whether the first addresses of (N) are consecutive or not, that is, OP
The final address holding unit 2 in the management table 2 indicated by
It is determined whether the address next to the final address stored in E matches the first address of the area (N) to be released (step S22 in Figure 7), and if they do not match, the table registration process (described later) is performed. Execute steps S23 and S24 in Figure 7, and if they match,
The value of the final address stored in the final address holding unit 2E in the management table 2 indicated by the above OP is updated (changed) to the value of the final address of the area (N) to be released (step 7 in Figure 7). S25), the table update process for the released area (N) is ended.

又、OPの値とIPの値が一致して管理テーブル
2が空状態であることを認識した際(第7図ステ
ツプS21)、又はOPの示す管理テーブル2内の最
終アドレス保持部2Eに貯えられた最終アドレス
の次アドレスと解放しようとする領域(N)の先頭ア
ドレスが一致しない際(第7図ステツプS22)
は、IPの示す管理テーブル2内の先頭アドレス
保持部2S及び最終アドレス保持部2Eに解放しよ
うとする領域(N)の先頭アドレス及び最終アドレス
を登録し(第7図ステツプS23)、IPの値を更新
(+1)して(第7図ステツプS24)、管理テーブ
ル2の登録処理を終了する。
Also, when the value of OP and the value of IP match and it is recognized that the management table 2 is empty (step S21 in Figure 7), or the final address holding section 2E in the management table 2 indicated by OP is When the next address of the stored final address and the first address of the area (N) to be released do not match (Step S22 in Figure 7)
registers the start address and end address of the area (N) to be released in the start address holding section 2 S and end address holding section 2 E in the management table 2 indicated by the IP (step S23 in Figure 7), and The value of is updated (+1) (step S24 in FIG. 7), and the registration process of the management table 2 is completed.

この状態例を第4図及び第5図に示している。
第4図及び第5図はそれぞれ上記した第2図の状
態から更に領域の解放が行われた場合の状態例で
あり、このうち、第4図は新たに解放される領域
cの先頭アドレスがBTMのアドレスに一致して
おらず、かつ先に解放された領域bにも繋がらな
い(即ちIP更新前に於けるIPの示す管理テーブ
ル2内の最終アドレス保持部2Eに貯えられたア
ドレスに連続しない)場合であり、この際は、新
たな解放領域として、IPの示す管理テーブル2
内の先頭アドレス保持部2S及び最終アドレス保
持部2Eに解放領域cの先頭アドレス及び最終ア
ドレスが書込まれる。又、第5図は新たな解放領
域cの先頭アドレスが先に解放された領域bに繋
がる(即ちIP更新前に於けるIPの示す管理テー
ブル2内の最終アドレス保持部2Eに貯えられた
アドレスに連続する)場合であり、この際は先に
解放された領域bに対応して登録された管理テー
ブル2内の最終アドレス保持部Eのアドレスを新
たに解放される領域cの最終アドレスの値に書き
換える。即ち、先の解放領域(図ではb)と新た
な解放領域(図ではc)を一つの連続した解放領
域として管理テーブル2に再登録する。
Examples of this state are shown in FIGS. 4 and 5.
Figures 4 and 5 are examples of states where the area is further released from the state shown in Figure 2 above, and in Figure 4, the start address of the newly released area c is It does not match the BTM address, and it does not connect to the previously released area b (that is, the address stored in the final address holding section 2 E in the management table 2 indicated by the IP before the IP update) In this case, management table 2 indicated by IP is used as a new free area.
The start address and end address of the free area c are written into the start address holding section 2S and the end address holding section 2E in the free area c. In addition, Fig. 5 shows that the first address of the newly released area c is connected to the previously released area b (that is, the last address stored in the last address holding section 2E in the management table 2 indicated by the IP before the IP update). In this case, the address in the final address holding section E in the management table 2 registered corresponding to the previously released area b is changed to the final address of the newly released area c. Rewrite to value. That is, the previous release area (b in the figure) and the new release area (c in the figure) are re-registered in the management table 2 as one continuous release area.

このようなバツフアメモリ3上の領域解放処理
が領域解放の都度、繰返し実行される。
Such area release processing on the buffer memory 3 is repeatedly executed each time an area is released.

上述したようなバツフアメモリ3の領域管理機
能をもつことにより、バツフアメモリ3に蓄積さ
れたデータを解放する際、その解放領域とそれ以
前に解放されている領域が連続しているか否かの
比較をバツフアメモリ全域に亙つて行なうことな
く、管理テーブル2に保持されている最旧エント
リの値と比較するだけで領域の連続性を確認で
き、これによりバツフアメモリ3の最旧使用アド
レスの更新処理を高速に行なうことができる。
By having the above-mentioned area management function of the buffer memory 3, when data stored in the buffer memory 3 is released, the buffer memory can compare whether the released area and the previously released area are contiguous. The continuity of the area can be confirmed simply by comparing it with the value of the oldest entry held in the management table 2, without having to update the entire area, thereby speeding up the process of updating the oldest used address in the buffer memory 3. be able to.

尚、上記した実施例ではデータ送受信の際のバ
ツフアメモリ管理を例にとつて説明したが、これ
に限らず、各種の機器間に於いてデータを遣り取
りする際に広く応用できる。
In the above-described embodiment, buffer memory management during data transmission and reception was explained as an example, but the present invention is not limited to this and can be widely applied to data exchange between various devices.

[発明の効果] 以上詳記したように本発明によれば、データを
最も古いデータから順に一時的に保持し、保持さ
れたデータが要求に応じた読出されるバツフアメ
モリの空領域を管理する方法に於いて、バツフア
メモリ上のまだ読出されていない最も古いデータ
が格納された最旧アドレスを管理するとともに、
既にデータが読出され空領域として解放された領
域の範囲を繋がりのない領域に整理してその領域
が解放された順に管理し、新たにデータが読出さ
れた領域を解放する際、前記最旧アドレスと新た
な解放領域、及び新たな解放領域と最も古く解放
された領域との各々の繋がりを調べ、先の最旧ア
ドレスから解放領域を連続する領域の最終アドレ
スの次アドレスまで最旧アドレスを更新するとと
もに、先の最旧アドレスと新たな解放領域との繋
がりがない場合には、新たな解放領域と最も古く
解放された領域との繋がりを調べて、繋がりのあ
るときには繋がつた全領域として、繋がりのない
ときには新たな領域として解放領域の管理を行な
うバツフアメモリ管理機能を備えたことにより、
管理対象となるバツフアメモリの全領域を比較検
査する必要がなく、高速の一次元的なバツフアメ
モリ管理が実現できる。
[Effects of the Invention] As detailed above, according to the present invention, there is a method of temporarily holding data in order of oldest data and managing empty areas of a buffer memory from which the held data is read out in response to a request. In addition to managing the oldest address on the buffer memory where the oldest data that has not yet been read is stored,
The range of areas where data has already been read and has been released as empty space is organized into unconnected areas and managed in the order in which the areas were released, and when releasing the area where new data has been read, the oldest address Checks the connection between the new free area and the new free area and the oldest free area, and updates the oldest address from the previous oldest address to the next address of the final address of the continuous free area. At the same time, if there is no connection between the previous oldest address and the new free area, check the connection between the new free area and the oldest free area, and if there is a connection, consider all the connected areas. By being equipped with a buffer memory management function that manages the free area as a new area when there is no connection,
There is no need to compare and inspect the entire area of the buffer memory to be managed, and high-speed one-dimensional buffer memory management can be achieved.

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

第1図は本発明の一実施例を実現するための構
成要素を示すブロツク図、第2図乃至第6図はそ
れぞれ上記実施例に於ける動作説明図、第7図は
上記実施例の処理フローを示す図である。 1…CPU、2…バツフアメモリ、2S…先頭ア
ドレス保持部、2E…最終アドレス保持部、3…
バツフアメモリ、BTM…最旧アドレスレジス
タ、IP…インプツトポインタ、OP…アウトプツ
トポインタ。
FIG. 1 is a block diagram showing constituent elements for realizing an embodiment of the present invention, FIGS. 2 to 6 are explanatory diagrams of operations in the above embodiment, and FIG. 7 is a processing diagram of the above embodiment. It is a figure showing a flow. 1...CPU, 2...Buffer memory, 2 S ...Start address holding section, 2 E ...Last address holding section, 3...
Buffer memory, BTM...oldest address register, IP...input pointer, OP...output pointer.

Claims (1)

【特許請求の範囲】[Claims] 1 データを古い順に一時的に保持し、読出され
た任意アドレスのデータ領域が使用済領域として
直接開放されるバツフアメモリの一次元的な管理
方法に於いて、バツフアメモリ上のまだ読出され
ていない最も古いデータが格納された最旧アドレ
スを管理するとともに、既にデータが読出され空
領域として解放された領域の範囲を繋がりのない
領域に整理して、その領域が解放された順に管理
し、新たにデータが読出された領域を解放する
際、前記最旧アドレスと新たな解放領域、及び新
たな解放領域と最も古く解放された領域との各々
の繋がりを調べ、先の最旧アドレスから解放領域
が連続する領域の最終アドレスの次アドレスまで
最旧アドレスを更新するとともに、先の最旧アド
レスと新たな解放領域との繋がりがない場合に
は、新たな解放領域と最も古く解放された繋がり
を調べて、繋がりのあるときには繋がつた全領域
として、繋がりのないときには新たな領域として
解放領域の管理を行なうことを特徴としたバツフ
アメモリ管理方法。
1 In a one-dimensional buffer memory management method in which data is temporarily held in chronological order and data areas at arbitrary addresses that have been read out are directly released as used areas, the oldest data in the buffer memory that has not been read out yet. In addition to managing the oldest address where data was stored, the range of areas that have already been read and released as empty areas is organized into unconnected areas, and the areas are managed in the order in which they were released, and new data is stored. When releasing the read area, check the connections between the oldest address and the new released area, and the new released area and the oldest released area, and check whether the released area is continuous from the previous oldest address. The oldest address is updated to the next address after the final address of the area to be released, and if there is no connection between the previous oldest address and the new free area, the link between the new free area and the oldest free area is checked. , a buffer memory management method characterized in that when there is a connection, the free area is managed as the entire connected area, and when there is no connection, the free area is managed as a new area.
JP61179122A 1986-07-30 1986-07-30 Buffer memory control method Granted JPS6336348A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP61179122A JPS6336348A (en) 1986-07-30 1986-07-30 Buffer memory control method
US07/079,163 US4864495A (en) 1986-07-30 1987-07-29 Apparatus for controlling vacant areas in buffer memory in a pocket transmission system
KR1019870008304A KR880002335A (en) 1986-07-30 1987-07-30 Packet switching system having a buffer memory to store received packets

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61179122A JPS6336348A (en) 1986-07-30 1986-07-30 Buffer memory control method

Publications (2)

Publication Number Publication Date
JPS6336348A JPS6336348A (en) 1988-02-17
JPH0517584B2 true JPH0517584B2 (en) 1993-03-09

Family

ID=16060384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61179122A Granted JPS6336348A (en) 1986-07-30 1986-07-30 Buffer memory control method

Country Status (3)

Country Link
US (1) US4864495A (en)
JP (1) JPS6336348A (en)
KR (1) KR880002335A (en)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8613069D0 (en) * 1986-05-29 1986-07-02 Univ Manchester Parallel storage allocation
US5335325A (en) * 1987-12-22 1994-08-02 Kendall Square Research Corporation High-speed packet switching apparatus and method
US5055999A (en) 1987-12-22 1991-10-08 Kendall Square Research Corporation Multiprocessor digital data processing system
US5341483A (en) * 1987-12-22 1994-08-23 Kendall Square Research Corporation Dynamic hierarchial associative memory
US5822578A (en) * 1987-12-22 1998-10-13 Sun Microsystems, Inc. System for inserting instructions into processor instruction stream in order to perform interrupt processing
US5761413A (en) * 1987-12-22 1998-06-02 Sun Microsystems, Inc. Fault containment system for multiprocessor with shared memory
US5282201A (en) * 1987-12-22 1994-01-25 Kendall Square Research Corporation Dynamic packet routing network
JP2745521B2 (en) * 1988-02-23 1998-04-28 株式会社日立製作所 Frame transmission method
US5303236A (en) * 1988-08-26 1994-04-12 Hitachi, Ltd. Signalling apparatus for use in an ATM switching system
JPH02117243A (en) * 1988-10-27 1990-05-01 Toshiba Corp Packet communication equipment
US5047927A (en) * 1988-10-28 1991-09-10 National Semiconductor Corporation Memory management in packet data mode systems
NL8900640A (en) * 1989-03-16 1990-10-16 At & T & Philips Telecomm METHOD FOR TRANSMITTING DATA PACKAGES IN ATD (ASYNCHRONOUS TIME DIVISION) AND AN APPARATUS FOR APPLYING THIS METHOD
US5729708A (en) * 1989-12-04 1998-03-17 Canon Kabushiki Kaisha Portable data buffer apparatus with manually controlled reception/transmission
US5687396A (en) * 1989-12-04 1997-11-11 Canon Kabushiki Kaisha Data buffer apparatus with interrupted transmission/reception
US5315708A (en) * 1990-02-28 1994-05-24 Micro Technology, Inc. Method and apparatus for transferring data through a staging memory
AU7497091A (en) * 1990-02-28 1991-09-18 Sf2 Corporation A method and apparatus for transferring data through a staging memory
US5048013A (en) * 1990-04-06 1991-09-10 At&T Bell Laboratories Transmission congestion control method and apparatus
US5130986A (en) * 1990-04-27 1992-07-14 At&T Bell Laboratories High speed transport protocol with two windows
US5261059A (en) * 1990-06-29 1993-11-09 Digital Equipment Corporation Crossbar interface for data communication network
US5313582A (en) * 1991-04-30 1994-05-17 Standard Microsystems Corporation Method and apparatus for buffering data within stations of a communication network
EP0522224B1 (en) * 1991-07-10 1998-10-21 International Business Machines Corporation High speed buffer management
CA2078315A1 (en) * 1991-09-20 1993-03-21 Christopher L. Reeve Parallel processing apparatus and method for utilizing tiling
US5313647A (en) * 1991-09-20 1994-05-17 Kendall Square Research Corporation Digital data processor with improved checkpointing and forking
US5189671A (en) * 1991-12-20 1993-02-23 Raynet Corporation Apparatus and method for formatting variable length data packets for a transmission network
US5303347A (en) * 1991-12-27 1994-04-12 Digital Equipment Corporation Attribute based multiple data structures in host for network received traffic
GB9209840D0 (en) * 1992-05-07 1992-06-24 Int Computers Ltd Data buffering mechanism
US5289470A (en) * 1992-12-14 1994-02-22 International Business Machines Corp. Flexible scheme for buffer space allocation in networking devices
US6389032B1 (en) * 1999-02-11 2002-05-14 International Business Machines Corporation Internet voice transmission
US6401144B1 (en) * 1999-02-26 2002-06-04 Intel Corporation Method and apparatus for managing data transfers between peripheral devices by encoding a start code in a line of data to initiate the data transfers
JP3580723B2 (en) * 1999-04-27 2004-10-27 沖電気工業株式会社 Receive buffer control method and voice packet decoding device
JP3285333B2 (en) 1999-05-14 2002-05-27 松下電器産業株式会社 Bus transfer device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5564682A (en) * 1978-11-09 1980-05-15 Fujitsu Ltd Buffer block return control system
JPS5696337A (en) * 1979-12-28 1981-08-04 Fujitsu Ltd Resource control system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1548401A (en) * 1975-10-08 1979-07-11 Plessey Co Ltd Data processing memory space allocation and deallocation arrangements
JPS57153359A (en) * 1981-03-18 1982-09-21 Ibm Data processing system with common memory
US4530049A (en) * 1982-02-11 1985-07-16 At&T Bell Laboratories Stack cache with fixed size stack frames
US4569034A (en) * 1982-07-19 1986-02-04 International Business Machines Corporation Method and apparatus which allows the working storage to be reconfigured according to demands for processing data input
GB8328396D0 (en) * 1983-10-24 1983-11-23 British Telecomm Multiprocessor system
DE3475152D1 (en) * 1984-05-23 1988-12-15 Ibm Buffer device used in a voice transmission network
US4758944A (en) * 1984-08-24 1988-07-19 Texas Instruments Incorporated Method for managing virtual memory to separate active and stable memory blocks
US4748618A (en) * 1986-05-21 1988-05-31 Bell Communications Research, Inc. Telecommunications interface

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5564682A (en) * 1978-11-09 1980-05-15 Fujitsu Ltd Buffer block return control system
JPS5696337A (en) * 1979-12-28 1981-08-04 Fujitsu Ltd Resource control system

Also Published As

Publication number Publication date
US4864495A (en) 1989-09-05
JPS6336348A (en) 1988-02-17
KR880002335A (en) 1988-04-30

Similar Documents

Publication Publication Date Title
JPH0517584B2 (en)
WO2001093046A1 (en) Dma doorbell
US20080147906A1 (en) DMA Transferring System, DMA Controller, and DMA Transferring Method
US6718405B2 (en) Hardware chain pull
JP3781007B2 (en) Data transfer method between computers
JP3260632B2 (en) Multiple data format table management method
JPH09200205A (en) Method and device for managing network
JP2023182276A (en) Electronic control device
JP2743849B2 (en) Update buffer management device
JP2708012B2 (en) Update buffer management device
JPH08123718A (en) Buffer controller
JPH0237425A (en) Digital signal processor
JPH03290741A (en) Error logging method
JPS63217446A (en) Buffer control system
JPH0991172A (en) Memory control status monitor
JP2926873B2 (en) Computer system
JPH0581207A (en) Data sharing method
JPH01232852A (en) Communication control system
JPH01159751A (en) Terminal device control method
JPH10171666A (en) Task control block management mechanism and its managing method
JPS6231386B2 (en)
JPS6324442A (en) Database exclusive control method
JPS62145443A (en) High-speed system for memory release processing
JP2005258889A (en) Program trace method and trace processing system
JPS61269758A (en) Completion information notification method in macro relay processing