JP2000322371A - データバッファ管理システム及びその方法 - Google Patents

データバッファ管理システム及びその方法

Info

Publication number
JP2000322371A
JP2000322371A JP11130717A JP13071799A JP2000322371A JP 2000322371 A JP2000322371 A JP 2000322371A JP 11130717 A JP11130717 A JP 11130717A JP 13071799 A JP13071799 A JP 13071799A JP 2000322371 A JP2000322371 A JP 2000322371A
Authority
JP
Japan
Prior art keywords
data buffer
value
address
channel
offset value
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
JP11130717A
Other languages
English (en)
Inventor
Katsumi Tsukahara
克美 塚原
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 Ibaraki Ltd
Original Assignee
NEC Ibaraki 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 NEC Ibaraki Ltd filed Critical NEC Ibaraki Ltd
Priority to JP11130717A priority Critical patent/JP2000322371A/ja
Publication of JP2000322371A publication Critical patent/JP2000322371A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Systems (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【課題】 主記憶装置と複数の入出力チャネルとの間の
データ転送をデータバッファを介して制御する入出力制
御装置において、管理制御が簡単でかつ有効利用を可能
としたデータバッファ管理方式を得る。 【解決手段】 アクセスアドレスを生成するためのベー
スアドレス値とオフセット値とを、チャネル対応に予め
レジスタ130,140に設定しておき、データ転送要
求元チャネルに対応するベースアドレス値とオフセット
値とを、このレジスタから読出して、データバッファ1
10のアクセスアドレスを、アドレス変換部160で生
成する。この生成アドレスにより、データバッフアァを
アクセスする。チャネルに応じて当該レジスタの内容を
更新することができるので、使用チャネルの動作速度等
に応じて、各チャネルにデータバッファの容量を適応的
に割振ることができ、バッファの有効利用が簡単な制御
で可能となる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデータバッファ管理
システム及びその方法に関し、特に主記憶装置と複数の
入出力チャネルとの間のデータ転送をデータバッファを
介して制御する入出力制御装置におけるデータバッファ
管理方式に関するものである。
【0002】
【従来の技術】情報処理システムにおいては、主記憶装
置と入出力チャネルとの間のデータ転送を行う場合、入
出力制御装置内に設けられているデータバッファを介し
てデータ転送がなされるが、従来、入出力制御装置内の
データバッファは、チャネル毎に固定長で最大チャネル
数分の容量を有する様に設計されている。かかる方式で
は、システム構成上、実際に使用しないチャネルに対し
てもデータバッファの固定長容量が確保されていること
になり、またチャネル毎にデータ転送量等の差があるに
も関わらず、どのチャネルに対しても同一の固定容量と
なっているので、有効利用ができないという問題を有し
ている。
【0003】一方、情報処理システムにおける周辺装置
の性能は年々高速化されており、よってデータバッファ
を有効に使用することが求められている。そこで、特開
平4−284561号公報を参照すると、複数のチャネ
ルの各々に対して個別にかつ均等に割当てられた領域で
ある個別データバッファ領域の他に、各チャネルが共通
に使用できる共有データバッファ領域を設けておき、個
別データバッファ領域が満杯になると、共有データバッ
ファ領域に空きがあればこの領域を使用して、拡張領域
として利用可能とした技術が開示されている。
【0004】
【発明が解決しようとする課題】しかしながら、この特
開平4−284561号公報では、個別データバッファ
領域の他に、共有データバッファを設けて、個別データ
バッファ領域が満杯になると、共有データバッファ領域
に空きがあればこの領域を使用する方式であるので、共
有データバッファの管理制御が複雑になるという問題点
がある。
【0005】本発明の目的は、管理制御が簡単でかつ有
効利用を可能としたデータバッファ管理システム及びそ
の方法を提供することである。
【0006】本発明の他の目的は、高速動作をなすチャ
ネルに対するデータバッファの容量を拡大し、また低速
動作をなすチャネルに対するデータバッファの容量を低
減することによってシステム性能向上を図ったデータバ
ッファ管理システム及びその方法を提供することであ
る。
【0007】
【課題を解決するための手段】本発明によれば、主記憶
装置と複数の入出力チャネルとの間のデータ転送をデー
タバッファを介して制御する入出力制御装置におけるデ
ータバッファ管理システムであって、前記データバッフ
ァへのアクセスアドレス生成のために、前記チャネルの
各々に対応して設けられたベースアドレス値及びオフセ
ット値を格納するレジスタ手段と、データ転送要求に応
答して、要求元チャネルに対応する前記レジスタ手段か
らのベースアドレス値及びオフセット値を参照して前記
アクセスアドレスを生成するアドレス生成手段とを含
み、この生成アドレスに従って前記データバッファをア
クセスするようにしたことを特徴とするデータバッファ
管理システムが得られる。
【0008】そして、前記アドレス生成手段は、前記要
求元チャネルを索引キーとして前記レジスタ手段を索引
する手段と、この索引された前記ベースアドレス値と前
記オフセット値とを加算して前記アクセスアドレスを生
成する手段とを有することを特徴とし、また前記アドレ
ス生成手段は、前記アクセスアドレスによるアクセス終
了に応答して、前記レジスタ手段のオフセット値を設定
値だけインクリメントする手段を有することを特徴とす
る。
【0009】更に、前記レジスタ手段は、前記チャネル
の各々が占有可能なリミット値が予め設定されており、
前記アドレス生成手段は、前記オフセット値のインクリ
メント結果が前記リミット値を越える場合、前記オフセ
ット値を初期値に設定することを特徴とする。また、前
記レジスタ手段の設定値を変化自在としたことを特徴と
する。
【0010】本発明によれば、主記憶装置と複数の入出
力チャネルとの間のデータ転送をデータバッファを介し
て制御する入出力制御装置におけるデータバッファ管理
方法であって、データ転送要求に応答して、前記チャネ
ルの各々に対応して設けられたベースアドレス値及びオ
フセット値を格納したレジスタ手段を、要求元チャネル
を索引キーとして読出すステップと、この読出されたベ
ースアドレス値及びオフセット値を用いてアクセスアド
レスを生成するアドレス生成ステップと、この生成アド
レスに従って前記データバッファをアクセスするステッ
プとを含むことを特徴とするデータバッファ管理方法が
得られる。
【0011】そして、前記アドレス生成ステップは、前
記読出されたベースアドレス値とオフセット値とを加算
して前記アクセスアドレスを生成するようにしたことを
有することを特徴とすし、また前記アクセスアドレスに
よるアクセス終了に応答して、前記レジスタ手段のオフ
セット値を設定値だけインクリメントするステップを、
更に含むことを特徴とする。
【0012】更に、前記レジスタ手段には、前記チャネ
ルの各々が占有可能なリミット値が予め設定されてお
り、前記オフセット値のインクリメント結果が前記リミ
ット値を越える場合、前記オフセット値を初期値に設定
するステップを、更に含むことを特徴とする。更にはま
た、前記レジスタ手段の設定値を更新するステップを含
むことを特徴とする。
【0013】本発明の作用を述べる。アクセスアドレス
を生成するためのベースアドレス値とオフセット値と
を、チャネル対応に予めレジスタに設定しておき、デー
タ転送要求元チャネルに対応するベースアドレス値とオ
フセット値とを、このレジスタから読出して、データバ
ッファのアクセスアドレスを生成し、この生成アドレス
により、データバッフアァをアクセスする様にする。チ
ャネルに応じて当該レジスタの内容を更新することがで
きるので、使用チャネルの動作速度等に応じて、各チャ
ネルにデータバッファの容量を適応的に割り振ることが
でき、バッファの有効利用が、簡単な制御で可能とな
る。
【0014】
【発明の実施の形態】以下に図面を参照しつつ本発明の
実施例を説明する。図1は本発明のデータバッファ管理
システムを含む情報処理装置の一例のブロック図であ
る。入出力制御装置100は、主記憶装置200と複数
のチャネル制御部300との間のデータ転送を制御する
ものである。400はチャネル制御部300に接続され
た入出力装置を示している。
【0015】この入出力制御装置100は、データ転送
のためのデータを一時蓄えておくデータバッファ110
と、データ転送するチャネル番号を保持するチャネルレ
ジスタ120と、このチャネル番号レジスタ120で指
定され(索引され)チャネル毎に保持されるベースレジ
スタ群130、オフセットレジスタ群140、リミット
レジスタ群150からなるアドレス変換用レジスタと、
このアドレス変換用レジスタから読出されたデータに基
いてデータバッファ110のアクセスアドレスを生成す
るアドレス変換部160とを備えている。
【0016】ベースレジスタ群130に保持されるベー
スアドレス値は、各チャネルのデータを格納すべきデー
タバッファ110の先頭アドレス値であり、オフセット
レジスタ群140に保持されるオフセット値は、ベース
アドレス(先頭アドレス)からのオフセット量を示すも
のである。また、リミットレジスタ群150に保持され
るべきリミット値は、そのチャネルに割当てられた最大
容量値を示すものであり、最大オフセット値と一致する
ものである。これ等のレジスタ群の各値は使用するチャ
ネルの種類に応じて更新可能であるものとする。
【0017】入出力制御装置100が主記憶装置200
とチャネル制御部300との間でどのようにデータ転送
をするかを説明する。主記憶装置200からチャネル制
御部300へのデータ転送の場合、入出力制御装置10
0はチャネル制御部300からのデータ転送要求に対し
て、主記憶装置200にデータの要求を行い、データバ
ッファ110にデータを格納する。そして、入出力制御
装置100はチャネル制御部300へ必要なデータを転
送する。
【0018】チャネル制御部300はこのデータ転送を
繰返し要求し、入出力制御装置100はデータバッファ
にデータが無くなったら主記憶からデータを読出すこと
で、入出力装置400とデータ転送が行われる。一般的
に、主記憶装置200とチャネル制御部300の1回の
データ転送量は、主記憶装置200との間の方が多く、
データバッファ110に格納されたデータはチャネル制
御部300のデータ転送要求の数回分で出力される。
【0019】逆に、チャネル制御部300から主記憶装
置200へのデータ転送の場合、入出力制御装置100
はチャネル制御部300からのデータ転送要求に対し
て、主記憶装置200にデータ転送ができるまでデータ
バッファ110にデータを格納し、主記憶装置にデータ
を書込むことで、入出力装置400とデータ転送が行わ
れる。複数チャネルから要求があった場合、入出力制御
装置100は上記データ転送がチャネル毎に順番に処理
される。
【0020】次に、図2を参照して、データバッファ1
10をチャネル単位に分割する方法について説明する。
チャネル0バッファ空間1は、ベースレジスタa(図1
のベースレジスタ群130の1つ)とオフセットレジス
タb(図1のオフセットレジスタ群140の1つ)によ
って指定される。リミットレジスタc(図1のリミット
レジスタ群150の1つ)はチャネル0バッファ空間1
の最大値を示し、オフセットレジスタbの最大値と一致
する。同様に、チャネル1バッファ空間2は、ベースレ
ジスタa’(ベースレジスタ群130の1つ)とオフセ
ットレジスタb’(オフセットレジスタ群140の1
つ)によって指定される。リミットレジスタc’(リミ
ットレジスタ群150の1つ)はチャネル1バッファ空
間2の最大値を示し、オフセットレジスタb’の最大値
と一致する。
【0021】データバッファ110とチャネル0バッフ
ァ空間1及びチャネル1バッファ空間2との対応は、ア
ドレス変換部160によって行われる。アドレス変換部
160は、ベースアドレスa,a’とオフセットb,
b’とを加算することで、データバッファ110のアク
セスアドレスに変換する。いま仮に、チャネル0バッフ
ァ空間1のベースアドレスaが0h、オフセットレジス
タbが000h、リミットレジスタcがFFhとする
と、000hから0FFhまでのデータバッファ空間が
チャネルバッファ0空間1となり、データバッファの0
番地のアドレスが指定される。
【0022】チャネル1バッファ空間2のベースアドレ
スa’が8h、オフセットレジスタb’が00Ah、リ
ミットレジスタc’が0Fhとすると、データバッファ
の800hから80Fhまでのデータバッファ空間がチ
ャネルバッファ0空間となり、データバッファ3の80
Ah番地のアドレスが指定される。
【0023】図3は本発明の実施例の動作を示すフロー
チャートである。図3を参照すると、チャネルからのデ
ータ転送要求に応答して(ステップS1)、この要求元
チャネル番号(チャネルレジスタ120に格納される)
を検索キーとして、各レジスタ群130,140,15
0が夫々索引され、対応するベースアドレス値、オフセ
ット値及びリミット値が読出される(ステップS2)。
この読出されたベースアドレス値とオフセット値とが加
算されることにより、データバッファ110のアクセス
アドレスが生成される(ステップS3)。このアクセス
アドレスによりデータバッファ110がアクセスされて
転送データの格納または読出しがなされる(ステップS
4)。
【0024】しかる後に、現在のオフセット値に対し
て、予め定められた所定値がインクリメントされ、次の
転送データのためのアクセスアドレス生成用のオフセッ
ト値の生成がなされる(ステップS5)。本例では、こ
の所定値として、“1”を使用しているが、データ転送
単位に相当する値に設定されれば良い。この所定値だけ
インクリメントされたアドレスはリミット値と比較され
(ステップS6)、このリミット値を越えていなけれ
ば、次のアクセスアドレスのためのオフセット値とし
て、オフセットレジスタ群140の対応する部分に格納
されることになる。リミット値を越えていれば、オフセ
ットレジスタ群140の対応する部分のオフセット値を
初期値“0”にセットし直す。尚、オフセット値の初期
値を“0”としたが、それ以外の値でも理論的には可能
である。
【0025】
【発明の効果】以上述べた様に、本発明によれば、入出
力制御装置におけるチャネルと主記憶装置との間のデー
タ転送において、チャネル毎にデータバッファの容量を
可変とすることができるので、使用される周辺装置のデ
ータ転送性能に合わせたデータバッファの容量を確保す
ることができ、データバッファにおけるデータのオーバ
フローを低減し入出力制御装置の性能を向上させること
ができるという効果がある。
【図面の簡単な説明】
【図1】本発明の実施例のブロック図である。
【図2】データバッファのチャネル毎の容量割当例を説
明する図である。
【図3】本発明の実施例の動作を示すフローチャートで
ある。
【符号の説明】
100 入出力制御装置 110 データバッファ 120 チャネルレジスタ 130 ベースレジスタ群 140 オフセットレジスタ群 150 リミットレジスタ群 160 アドレス変換部 300 チャネル制御部 400 入出力装置

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 主記憶装置と複数の入出力チャネルとの
    間のデータ転送をデータバッファを介して制御する入出
    力制御装置におけるデータバッファ管理システムであっ
    て、前記データバッファへのアクセスアドレス生成のた
    めに、前記チャネルの各々に対応して設けられたベース
    アドレス値及びオフセット値を格納するレジスタ手段
    と、データ転送要求に応答して、要求元チャネルに対応
    する前記レジスタ手段からのベースアドレス値及びオフ
    セット値を参照して前記アクセスアドレスを生成するア
    ドレス生成手段とを含み、この生成アドレスに従って前
    記データバッファをアクセスするようにしたことを特徴
    とするデータバッファ管理システム。
  2. 【請求項2】 前記アドレス生成手段は、前記要求元チ
    ャネルを索引キーとして前記レジスタ手段を索引する手
    段と、この索引された前記ベースアドレス値と前記オフ
    セット値とを加算して前記アクセスアドレスを生成する
    手段とを有することを特徴とする請求項1記載のデータ
    バッファ管理システム。
  3. 【請求項3】 前記アドレス生成手段は、前記アクセス
    アドレスによるアクセス終了に応答して、前記レジスタ
    手段のオフセット値を設定値だけインクリメントする手
    段を有することを特徴とする請求項2記載のデータバッ
    ファ管理システム。
  4. 【請求項4】 前記レジスタ手段は、更に、前記チャネ
    ルの各々が占有可能なリミット値が予め設定されてお
    り、前記アドレス生成手段は、前記オフセット値のイン
    クリメント結果が前記リミット値を越える場合、前記オ
    フセット値を初期値に設定することを特徴とする請求項
    3記載のデータバッファ管理システム。
  5. 【請求項5】 前記レジスタ手段の設定値を変化自在と
    したことを特徴とする請求項1〜4いずれか記載のデー
    タバッファ管理システム。
  6. 【請求項6】 主記憶装置と複数の入出力チャネルとの
    間のデータ転送をデータバッファを介して制御する入出
    力制御装置におけるデータバッファ管理方法であって、
    データ転送要求に応答して、前記チャネルの各々に対応
    して設けられたベースアドレス値及びオフセット値を格
    納したレジスタ手段を、要求元チャネルを索引キーとし
    て読出すステップと、この読出されたベースアドレス値
    及びオフセット値を用いてアクセスアドレスを生成する
    アドレス生成ステップと、この生成アドレスに従って前
    記データバッファをアクセスするステップとを含むこと
    を特徴とするデータバッファ管理方法。
  7. 【請求項7】 前記アドレス生成ステップは、前記読出
    されたベースアドレス値とオフセット値とを加算して前
    記アクセスアドレスを生成するようにしたことを有する
    ことを特徴とする請求項6記載のデータバッファ管理方
    法。
  8. 【請求項8】 前記アクセスアドレスによるアクセス終
    了に応答して、前記レジスタ手段のオフセット値を設定
    値だけインクリメントするステップを、更に含むことを
    特徴とする請求項7記載のデータバッファ管理方法。
  9. 【請求項9】 前記レジスタ手段には、更に、前記チャ
    ネルの各々が占有可能なリミット値が予め設定されてお
    り、前記オフセット値のインクリメント結果が前記リミ
    ット値を越える場合、前記オフセット値を初期値に設定
    するステップを更に含むことを特徴とする請求項8記載
    のデータバッファ管理方法。
  10. 【請求項10】 前記レジスタ手段の設定値を更新する
    ステップを更に含むことを特徴とする請求項6〜9いず
    れか記載のデータバッファ管理方法。
JP11130717A 1999-05-12 1999-05-12 データバッファ管理システム及びその方法 Pending JP2000322371A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11130717A JP2000322371A (ja) 1999-05-12 1999-05-12 データバッファ管理システム及びその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11130717A JP2000322371A (ja) 1999-05-12 1999-05-12 データバッファ管理システム及びその方法

Publications (1)

Publication Number Publication Date
JP2000322371A true JP2000322371A (ja) 2000-11-24

Family

ID=15040952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11130717A Pending JP2000322371A (ja) 1999-05-12 1999-05-12 データバッファ管理システム及びその方法

Country Status (1)

Country Link
JP (1) JP2000322371A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002093392A1 (fr) * 2001-05-14 2002-11-21 Renesas Technology Corp. Processeur de donnees
CN112445729A (zh) * 2020-11-30 2021-03-05 深圳开立生物医疗科技股份有限公司 操作地址确定方法、PCIe系统、电子设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002093392A1 (fr) * 2001-05-14 2002-11-21 Renesas Technology Corp. Processeur de donnees
CN112445729A (zh) * 2020-11-30 2021-03-05 深圳开立生物医疗科技股份有限公司 操作地址确定方法、PCIe系统、电子设备及存储介质
CN112445729B (zh) * 2020-11-30 2024-04-16 深圳开立生物医疗科技股份有限公司 操作地址确定方法、PCIe系统、电子设备及存储介质

Similar Documents

Publication Publication Date Title
US5706461A (en) Method and apparatus for implementing virtual memory having multiple selected page sizes
US9086920B2 (en) Device for managing data buffers in a memory space divided into a plurality of memory elements
US20060218315A1 (en) Memory access control circuit
KR940005790B1 (ko) Dma 기능을 갖춘 정보 처리장치
US7373467B2 (en) Storage device flow control
JP2003248622A (ja) 帯域幅を増加させるためのメモリシステム
JP4855864B2 (ja) ダイレクトメモリアクセスコントローラ
JP2000322371A (ja) データバッファ管理システム及びその方法
US20090235010A1 (en) Data processing circuit, cache system, and data transfer apparatus
JP2000299686A (ja) スケジューリング装置
JP4082580B2 (ja) 無線通信制御装置
JPH10124438A (ja) 入出力処理装置
JPH09319658A (ja) 可変ページサイズのメモリ管理方式
JP2009088622A (ja) バッファメモリを有するパケット転送装置および方法
JPS63263524A (ja) デ−タ構造変換方式
JP3429880B2 (ja) メモリ装置およびメモリアクセス方法
JP3542894B2 (ja) ファイルシステム
JP2002024157A (ja) Dma処理方法およびdma処理装置
JP3343460B2 (ja) Hdlcフレーム処理装置
JPH08202648A (ja) ダイレクトメモリアクセス転送方式及び方法
JP3207329B2 (ja) バスコントローラおよびバス転送方法
JPH0588983A (ja) チヤネル装置の動的アドレス変換方法
JP2000207350A (ja) デ―タ転送装置及びデ―タ転送方法
JPH04195234A (ja) データ転送方式
JPH0368046A (ja) メモリアクセス方式