JP3183250B2 - キュー管理システム - Google Patents

キュー管理システム

Info

Publication number
JP3183250B2
JP3183250B2 JP10047598A JP10047598A JP3183250B2 JP 3183250 B2 JP3183250 B2 JP 3183250B2 JP 10047598 A JP10047598 A JP 10047598A JP 10047598 A JP10047598 A JP 10047598A JP 3183250 B2 JP3183250 B2 JP 3183250B2
Authority
JP
Japan
Prior art keywords
memory
queue
address
pointer
buffer
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
Application number
JP10047598A
Other languages
English (en)
Other versions
JPH11282745A (ja
Inventor
博久 光地
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP10047598A priority Critical patent/JP3183250B2/ja
Publication of JPH11282745A publication Critical patent/JPH11282745A/ja
Application granted granted Critical
Publication of JP3183250B2 publication Critical patent/JP3183250B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理装置のメ
モリ領域管理方式に関し、特にメモリアクセスのキュー
管理システムに関する。
【0002】
【従来の技術】メモリ領域の要求に応じてメモリからメ
モリ領域(メモリエリア)を獲得し、処理終了後、メモ
リ領域を解放すべくメモリに返却するための方式として
キュー管理システムが用いられている。図3は、従来の
キュー管理システムの一例を説明するための図である。
図3を参照すると、カレントポインタ5はメモリ上の現
在のポインタを保持する。
【0003】ネクストポインタ6は、返却されたキュー
要素(以下、「キュー要素」は単に「キュー」とも略記
される)をメモリに戻すときは、転送された返却キュー
アドレス8を格納し、カレントポインタ5をメモリライ
トデータ10とし、ネクストポインタ6をメモリライト
アドレス11として、メモリに書き込み、メモリ内のキ
ューに接続して、その後、ネクストポインタ6の値をカ
レントポインタ5に転送する。
【0004】また、メモリ内のキューを取り出すとき
は、カレントポインタ5をリードアドレス9としてメモ
リからデータを読み出し、読み出したメモリリードデー
タ12に含まれる次のメモリデータ領域のポインタアド
レスをネクストポインタ6に取り込み、その後、カレン
トポインタ5を要求キューアドレス7として渡し、ネク
ストポインタ6の値をカレントポインタ5に新しい値と
して転送する。
【0005】
【発明が解決しようとする課題】しかしながら、従来の
キュー管理システムにおいては、次のような問題点を有
している。
【0006】第1の問題点は、キューの返却と要求を同
時に受け付けることができない、ということである。そ
の理由は、バッファを備えていないためである。
【0007】第2の問題点は、連続して到来した、返却
や要求を受け付けることができず、メモリのリード、ラ
イトが完了するのを待たなければならない、ということ
である。
【0008】その理由は、上記第1の問題点と同様の理
由による。
【0009】したがって、本発明は、上記問題点に鑑み
てなされたものであって、その目的は、キューアドレス
の要求/返却に対して、メモリへのアクセス無しに即座
に応答することと、キューアドレスの要求と返却に、同
時に応答可能とする、キュー管理システムを提供するこ
とにある。
【0010】
【課題を解決するための手段】前記目的を達成するた
め、本発明は、メモリ上の現在のアドレスポインタを保
持するカレントポインタと、返却キューアドレスを取り
込み、要求キューアドレスを渡すための複数のバッファ
、を備え、キュー要素の要求に対して、前記複数のバ
ッファのうちキュー要素のアドレスを格納しているバッ
ファから順に取り出し要求キューアドレスとして要求元
に返却出力し、前記複数のバッファに記憶されているキ
ュー要素のアドレスの数があらかじめ定められた所定個
数よりも少なくなり、前記メモリからのキュー要素を取
り出すときに、前記カレントポインタをリードアドレス
としてメモリ読み出し時のメモリリードデータ内に含ま
れる次のキュー要素のメモリアドレスが書き込まれ、
方、前記複数のバッファに記憶されているキュー要素の
アドレスの数があらかじめ定められた前記所定個数を超
え、前記返却要求のなされたキュー要素を前記メモリに
戻すときに前記バッファより返却キュー要素のアドレス
が転送されるネクストポインタを備え、前記返却要求の
なされたキュー要素を前記メモリに戻すときには、前記
カレントポインタをメモリライトデータとし、前記ネク
ストポインタをメモリライトアドレスとして、前記メモ
リに書き込むことで、前記キュー要素を前記メモリ内の
キューに接続して返却し、その後、前記ネクストポイン
タの値を前記カレントポインタに転送し、前記メモリか
らキュー要素を取り出すときには、前記カレントポイン
タをリードアドレスとして、前記メモリを読み出し、読
み出したメモリリードデータに含まれる次のキュー要素
のアドレスを前記ネクストポインタに取り込み、その
後、前記ネクストポインタの値を前記カレントポインタ
として転送する。
【0011】
【発明の実施の形態】本発明は、メモリ上のメモリ領域
をアドレス等にてキュー構造で管理するシステムにおい
て、バッファを備えたことにより、キューアドレスの要
求/返却に対して、メモリへのアクセス無しに即座に応
答可能とし、さらに、キューアドレスの要求と返却に、
同時に応答することができるようにしたものである。
【0012】本発明のキュー管理システムは、その好ま
しい実施の形態において、図1を参照すると、メモリ上
の現在のアドレスポインタを保持するカレントポインタ
(5)と、返却キューアドレス(8)を取り込み、要求
キューアドレス(7)を渡すための複数のバッファ
(1、2、3、4)と、キュー要求の際に、メモリ読み
出し時のメモリリードデータ内に含まれる次のキューの
メモリエリアのアドレス、と、返却されたキューを前記
メモリに戻すときに、前記バッファ(3)より、返却キ
ューアドレスと、が転送されるネクストポインタ(6)
と、を備え、メモリに対するキュー返却時、カレントポ
インタ(5)をメモリライトデータとし、ネクストポイ
ンタ(6)をメモリライトアドレスとして、メモリに書
き込むことでメモリ内のキューにリンクして返却し、そ
の後、ネクストポインタ(6)の値をカレントポインタ
(5)に転送し、メモリに対するキュー要求時、カレン
トポインタ(5)をリードアドレスとしてメモリを読み
出し、読み出したメモリリードデータ(12)に含まれ
る次のキューのアドレスをネクストポインタ(6)に取
り込み、その後、ネクストポインタ(6)の値をカレン
トポインタ(5)に転送する。
【0013】ネクストポインタ(6)は、不図示のCP
Uから返却されたキューを、メモリに戻すときは、バッ
ファ(3)より、返却キューのアドレスが転送され、カ
レントポインタ(5)をメモリライトデータ(10)と
し、ネクストポインタ(6)をメモリライトアドレス
(11)として、メモリに書き込むことで、メモリ内の
キューにリンクして返却する。その後、ネクストポイン
タ(6)を新しいカレントポインタ(5)として転送す
る。
【0014】一方、メモリからキューを取り出すとき
は、カレントポインタ(5)をリードアドレス(9)と
して、メモリを読み出し、読み出したメモリリードデー
タ(12)に含まれる次のキューのアドレスをネクスト
ポインタ(6)に取り込み、その後、ネクストポインタ
(6)を新しいカレントポインタ(5)として転送す
る。
【0015】バッファ(1)からバッファ(4)は、返
却キューアドレス(8)を取り込み、また、要求キュー
アドレス(7)を渡すための4個のバッファであり、バ
ッファに格納されたアドレスの数が2個を超えたとき
は、キューをメモリに戻すために、ネクストポインタ
(6)に転送し、バッファに格納されたアドレスの数
2個未満になったときは、メモリからキューを取り出し
て、カレントポインタ(5)から、バッファ(1)かバ
ッファ(2)に転送する。なお、バッファ(4)からバ
ッファ(1)は、返却キューアドレス取り込み側からみ
て、前段のバッファの出力は、後段のバッファの入力に
設けられたセレクタ回路に供される。
【0016】このようにして、本発明の実施の形態で
は、バッファを複数備え、キューアドレスを2個保持し
ているので、連続して、キューアドレスの返却や要求が
あっても、バッファの値をすぐ使うことができ、その間
にメモリリード/ライトを行い、バッファに補充でき
る。また、バッファを複数持っているので、キューアド
レスの返却と要求を同時に受け付けることができる。
【0017】
【実施例】本発明の実施例について図面を参照して説明
する。図2は、本発明の一実施例のキューの構造を説明
するための図である。図2を参照すると、カレントポイ
ンタが、メモリエリア#1の先頭アドレスを指してお
り、メモリエリア#1の先頭にあるネクストポインタが
メモリエリア#2の先頭を指し、更に、メモリエリア#
2の先頭にあるネクストポインタがメモリエリア#3の
先頭を指している。このように次々とメモリエリア(キ
ュー)を繋いでいって(リンクする)、メモリの先頭ア
ドレスで管理する方式をキュー管理方式と呼ぶ。なお、
リンクの最後尾のエントリのネクストポインタは通常ヌ
ル値が設定される。
【0018】図1は、本発明の一実施例のキュー管理シ
ステムの構成を示す図である。
【0019】図1を参照すると、カレントポインタ5は
メモリ上の現在のポインタを保持している。
【0020】ネクストポインタ6は、返却されたキュー
をメモリに戻すときは、バッファ3より返却キューのア
ドレスが転送され、カレントポインタ5をメモリライト
データ10とし、ネクストポインタ6をメモリライトア
ドレス11として、メモリに書き込み、メモリ内のキュ
ーに接続し、その後、ネクストポインタ6を新しいカレ
ントポインタ5として転送する。
【0021】また、メモリ内のキューを取り出すとき
は、カレントポインタ5をリードアドレス9として、メ
モリを読み出し、読み出したメモリリードデータ12を
ネクストポインタ6に取り込み、その後、ネクストポイ
ンタ6を新しいカレントポインタ5として転送する。
【0022】バッファ1からバッファ4は、返却キュー
アドレス8を取り込み、また、要求キューアドレス7を
渡すための4個のバッファである。そしてバッファが2
個を超えたときは、キューをメモリに戻すためにネクス
トポインタ6に転送し、バッファが2個以下になったと
きは、メモリからキューを取り出して、カレントポイン
タ5からバッファ1もしくはバッファ2に転送する。図
1の構成では(バッファ4個)、返却キューアドレス8
を取り込むバッファ4と、バッファ4の出力又は返却キ
ューアドレス8をセレクタを介して取り込むバッファ3
と、返却キューアドレス8、バッファ3の出力、及びカ
レントポインタ5の出力のいずれかをセレクタを介して
取り込むバッファ2と、返却キューアドレス8、バッフ
ァ2の出力、及びカレントポインタ5の出力のいずれか
をセレクタを介して取り込むバッファ1とを備え、バッ
ファ1の出力は要求キューアドレス7として出力され、
バッファ3の出力はネクストポインタ6に供給される。
【0023】次に図1を参照して、本発明の一実施例の
動作について説明する。
【0024】図1おいて、カレントポインタ5をリード
アドレス9として、メモリを読み出す。
【0025】そして読み出したメモリリードデータ12
のうち次のメモリエリアをポイントするアドレス値をネ
クストポインタ6に取り込み、その後、ネクストポイン
タ6を新しいカレントポインタ5として転送し、同時
に、旧カレントポインタをバッファ1に転送する。同様
に、バッファ2にも、アドレスを転送する。この2つの
バッファ1、2に2個アドレスが貯まってる状態を保
つ。
【0026】この状態で、要求キューが到来したときに
は(メモリエリアのデータ取得要求時)、バッファ1か
ら要求キューアドレス7を順番に渡していき、バッファ
が2個より減ったら、先ほどと同様にして、メモリリー
ドを行い、カレントポインタ5の内容をバッファに転送
することで、バッファを補充する。
【0027】返却キューが到来したときは(使用済みメ
モリエリアのメモリへの返却要求時)、その時点で、バ
ッファの空いている一番下から入れていき、バッファ
が、3個以上に貯まったときは、バッファ3より、ネク
ストポインタ6に転送し、カレントポインタ5をメモリ
ライトデータ10とし、ネクストポインタ6をメモリラ
イトアドレス11として、メモリに書き込み、その後、
ネクストポインタ6の値を新しいカレントポインタ5の
値として転送する。
【0028】
【発明の効果】以上説明したように、本発明において
は、以下に記載するような効果を奏する。
【0029】本発明の第1の効果はバッファを持ち、キ
ューアドレスを2個保持しているので、連続して、キュ
ーアドレスの返却や要求があっても、バッファの値をす
ぐ使うことができ、その間にメモリリード/ライトを行
い、バッファに補充することができる、ということであ
る。
【0030】本発明の第2の効果はバッファを複数持っ
ているので、キューアドレスの返却と要求を同時に受け
付けることができることである。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示す図である。
【図2】本発明の一実施例におけるキューの構成を示す
図である。
【図3】従来のキュー管理システムを説明するための図
である。
【符号の説明】
1、2、3、4 バッファ 5 カレントポインタ 6 ネクストポインタ 7 要求キューアドレス 8 返却キューアドレス 9 メモリリードアドレス 10 メモリライトデータ 11 メモリライトアドレス

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】メモリ上の現在のアドレスポインタを保持
    するカレントポインタを備え、 前記メモリを区分する各メモリエリアは、前記各メモリ
    エリアのネクストポインタ領域によって次のメモリエリ
    アをポイントし、前記カレントポインタでポイントされ
    るメモリエリアを先頭とするキュー構造をなし、各メモ
    リエリアがキュー要素をなし、 前記メモリへの返却要求のなされたキュー要素のアドレ
    スを保持し、前記メモリから取り出されたキュー要素
    アドレスを保持する複数のバッファを備え、 キュー要素の要求に対して、前記複数のバッファのうち
    キュー要素のアドレスを格納しているバッファから順に
    取り出し要求キューアドレスとして要求元に返却出力
    し、 前記複数のバッファに記憶されているキュー要素のアド
    レスの数があらかじめ定められた所定個数よりも少なく
    なり、前記メモリからのキュー要素を取り出すときに、
    前記カレントポインタをリードアドレスとして メモリ読
    み出し時のメモリリードデータ内に含まれる次のキュー
    要素のメモリアドレスが書き込まれ、一方、前記複数の
    バッファに記憶されているキュー要素のアドレスの数が
    あらかじめ定められた前記所定個数を超え、返却要求の
    されたキュー要素を前記メモリに戻すときに前記バッ
    ファより返却キュー要素のアドレスが転送されるネクス
    トポインタと、 を備え、 前記返却要求のなされたキュー要素を前記メモリに戻す
    ときには、前記カレントポインタをメモリライトデータ
    とし、前記ネクストポインタをメモリライトアドレスと
    して、前記メモリに書き込むことで、前記キュー要素を
    前記メモリ内のキューに接続して返却し、その後、前記
    ネクストポインタの値を前記カレントポインタに転送
    し、前記メモリからキュー要素を取り出すとき には、前記カ
    レントポインタをリードアドレスとして、前記メモリを
    読み出し、読み出したメモリリードデータに含まれる次
    のキュー要素のアドレスを前記ネクストポインタに取り
    込み、その後、前記ネクストポインタの値を前記カレン
    トポインタとして転送する、 ことを特徴とするキュー管理システム。
  2. 【請求項2】前記複数のバッファに記憶されているキュ
    ー要素のアドレスの数が2個を超えたときは、前記返却
    要求のなされたキュー要素を前記メモリに戻すために、
    前記バッファに記憶されたキュー要素のアドレスの一つ
    を前記ネクストポインタに転送し、 前記複数のバッファに記憶されているキュー要素のアド
    レスの数が2個よりも減少した場合、前記メモリからキ
    ュー要素を取り出して、前記カレントポインタから、第
    1又は第2バッファに転送する、ことを特徴とする請求
    記載のキュー管理システム。
  3. 【請求項3】メモリ上の現在のアドレスポインタを保持
    するカレントポインタと、 前記メモリに返却されるキュー要素のアドレス(「返却
    キューアドレス」という)を取り込み保持し、前記メモ
    リから取り出すキュー要素のアドレス(「要求キューア
    ドレス」という)を保持出力する複数のバッファであっ
    て、要求キューアドレスの送出側から返却キュー要素の
    アドレスの取り込み側に順に設けられた第1乃至第4の
    バッファと、前記メモリ内のキューを取り出すときに メモリ読み出し
    時のメモリリードデータ内に含まれる次のキュー要素
    メモリアドレスが書き込まれ、且つ、返却されたキュー
    要素を前記メモリに戻すときに前記第3のバッファより
    返却キュー要素のアドレスが転送されるネクストポイン
    タと、 を備え、 前記カレントポインタをリードアドレスとして前記メモ
    リを読み出し、前記読み出したメモリリードデータのう
    ち次のメモリエリアをポイントするリードアドレス値を
    前記ネクストポインタに取り込み、その後、前記ネクス
    トポインタの値(すなわちリードアドレス)を前記カレ
    ントポインタに転送すると共に、前記カレントポインタ
    の旧値を前記第1バッファ、前記カレントポインタの現
    在値を前記第2のバッファに転送して前記第1、第2の
    バッファに2個アドレスが貯まってる状態を保ち、 この状態で、キュー要素の要求が到来したときには、前
    記第1バッファから該バッファに記憶されているキュ
    要素のアドレスを順番に要求元に渡していき、前記バ
    ッファに記憶されているキュー要素のアドレスの数が
    個よりも減少した場合、再びメモリリードを行うことで
    前記バッファの補充を行い、 一方、返却キュー要素が到来したときは、返却キュー
    素のアドレスをその時点でバッファの空いている側から
    順に入れていき、バッファが3個以上に貯まったとき
    は、第3のバッファより、前記ネクストポインタに転送
    し、前記カレントポインタをメモリライトデータとし、
    前記ネクストポインタをメモリライトアドレスとして前
    記メモリに書き込むことで前記メモリ内のキュー要素
    接続して返却し、その後、前記ネクストポインタの値を
    前記カレントポインタに転送して前記カレントポインタ
    の値を更新する、ことを特徴とするキュー管理システ
    ム。
  4. 【請求項4】前記メモリが複数のメモリエリアに区分さ
    れ、前記各メモリエリアの所定の位置に次のメモリエリ
    アのアドレスをポイントするネクストポインタ領域を備
    、前記メモリ内の各メモリエリアは、前記カレントポ
    インタでポイントされるメモリエリアを先頭とし前記メ
    モリエリアネクストポインタ領域でリンクされるキュー
    構造におけるキュー要素をなしている、ことを特徴とす
    請求項3に記載のキュー管理システム。
JP10047598A 1998-03-27 1998-03-27 キュー管理システム Expired - Fee Related JP3183250B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10047598A JP3183250B2 (ja) 1998-03-27 1998-03-27 キュー管理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10047598A JP3183250B2 (ja) 1998-03-27 1998-03-27 キュー管理システム

Publications (2)

Publication Number Publication Date
JPH11282745A JPH11282745A (ja) 1999-10-15
JP3183250B2 true JP3183250B2 (ja) 2001-07-09

Family

ID=14274950

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10047598A Expired - Fee Related JP3183250B2 (ja) 1998-03-27 1998-03-27 キュー管理システム

Country Status (1)

Country Link
JP (1) JP3183250B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4651780B2 (ja) * 2000-06-20 2011-03-16 Necエンジニアリング株式会社 キュー作成装置
JP2002014717A (ja) * 2000-06-30 2002-01-18 Mitsubishi Electric Corp 遠方監視制御システム

Also Published As

Publication number Publication date
JPH11282745A (ja) 1999-10-15

Similar Documents

Publication Publication Date Title
JPS5830319Y2 (ja) コンピユ−タシステム
US7290096B2 (en) Full access to memory interfaces via remote request
US5603006A (en) Cache control unit using a plurality of request stacks
US6766386B2 (en) Method and interface for improved efficiency in performing bus-to-bus read data transfers
JPS6217876Y2 (ja)
CN102918515A (zh) 将数据存储在存储器控制器中的多个缓冲器的任何中
JP2008234059A (ja) データ転送装置および情報処理システム
TWI250405B (en) Cache bank interface unit
JP3183250B2 (ja) キュー管理システム
US5530871A (en) Asynchronous input and output control system
US7257680B2 (en) Storage system including shared memory and plural disk drives, processors, and shared memory control units
US6735677B1 (en) Parameterizable queued memory access system
JPH08106443A (ja) データ処理システム及び並列コンピュータ
US6434592B1 (en) Method for accessing a network using programmed I/O in a paged, multi-tasking computer
US20060036779A1 (en) Method and control system for controlling a plurality of function blocks
JPH0528037A (ja) バツフア管理方式
US20030041190A1 (en) System and method for efficiently performing a command swapping procedure
JP3162459B2 (ja) データ処理装置
US7216194B2 (en) Methods and systems for improving delayed read handling
JP2505298B2 (ja) スプリットバスにおける可変バス幅指定方式及び可変バス幅情報受信方式
JP2000259488A (ja) キュー管理システム
KR100800704B1 (ko) 이동 통신 단말기의 메시지 전처리기 및 그 제어 방법
JP2856150B2 (ja) トランザクション履歴記録システム
JPH06301600A (ja) 記憶装置
JPH0720149B2 (ja) マルチメディア情報通信制御装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010327

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080427

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090427

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100427

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees