JP2002366503A - バッファ装置、バッファ装置の制御方法、およびバッファ装置の制御プログラム - Google Patents

バッファ装置、バッファ装置の制御方法、およびバッファ装置の制御プログラム

Info

Publication number
JP2002366503A
JP2002366503A JP2001174947A JP2001174947A JP2002366503A JP 2002366503 A JP2002366503 A JP 2002366503A JP 2001174947 A JP2001174947 A JP 2001174947A JP 2001174947 A JP2001174947 A JP 2001174947A JP 2002366503 A JP2002366503 A JP 2002366503A
Authority
JP
Japan
Prior art keywords
buffer
data
address
read request
bus
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.)
Withdrawn
Application number
JP2001174947A
Other languages
English (en)
Inventor
Takashi Fujiwara
隆史 藤原
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2001174947A priority Critical patent/JP2002366503A/ja
Publication of JP2002366503A publication Critical patent/JP2002366503A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 ソフトウェア制御の負担を軽減し、小さいバ
ッファ容量で高速なデータ転送を行なえるようにする。 【解決手段】 アドレスの連続するデータバッファ1−
3−14〜1−3−17から成るバッファセット1−3
−1、1−3−2につき、それぞれバッファアドレスを
格納するアドレスバッファ1−3−13、データが格納
されている事を示すバッファイネーブルフラグ1−3−
18、バッファが全て空である事を示すEmptyフラ
グ1−3−11、バッファの全てにデータが格納されて
いる事を示すFullフラグ1−3−12を設け、デー
タライト要求またはデータリード要求に対して、フラグ
1−3−11、1−3−12の状態、およびデータライ
ト要求またはデータリード要求に係るアドレスとアドレ
スバッファ1−3−13の値の比較結果に基づき、リト
ライを返すかデータ転送を受け付けるかを決定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は情報処理装置内のバ
スに接続され、前記バスに接続されたバスマスタからの
データライト要求またはデータリード要求を受け付ける
バッファ装置、バッファ装置の制御方法、およびバッフ
ァ装置の制御プログラムに関する。
【0002】
【従来の技術】従来より、種々の情報処理装置におい
て、バス上でCPUの制御を介さずにデータ転送を行な
う転送技術が用いられており、たとえば、あるバスマス
タがデータブロックをバッファにライトし、ライトされ
たデータブロックを他のマスタにリードさせる装置があ
る。このようなバッファ装置では、ライトが終了するの
を待ってからリードを開始しなければならなかった。
【0003】また、このようなバッファ装置では、バッ
ファ容量を節約するためにはデータブロックを細かい単
位に分けてライト/リードを行なっているが、ある程度
大きなブロックの場合、ソフトウェアによる制御を少な
くし、転送速度を上げようとするときには、オーバーラ
ンを起こさない程度のデータのライトが終了した時点で
リードを開始する制御を行なっていたが、これには大き
な容量のバッファが必要であった。
【0004】
【発明が解決しようとする課題】すなわち、従来の方式
では、バッファ容量を節約するためにはデータブロック
を細かい単位に分けてライト/リードを行なわなくては
ならず、ソフトウェアによる制御のオーバーヘッドが大
きくなるという問題がある一方、ソフトウェアによる制
御を少なくし、転送速度を上げようとすると、大きな容
量のバッファが必要となる問題がある。
【0005】本発明の課題は、あるバスマスタがデータ
ブロックをバッファにライトし、他のマスタがライトさ
れたデータブロックをバッファからリードするバッファ
装置において、装置全体のソフトウェア制御の負担を軽
減し、小さいバッファ容量で高速なデータ転送を行なえ
るようにすることである。
【0006】
【課題を解決するための手段】以上の課題を解決するた
めに、本発明においては、情報処理装置内のバスに接続
され、前記バスに接続されたバスマスタからのデータラ
イト要求またはデータリード要求を受け付けるバッファ
装置、その制御方法、およびその制御プログラムにおい
て、データ転送のために1つ、ないしはアドレスの連続
する複数のデータを格納するデータバッファから成るバ
ッファセットを含む複数のバッファブロックを有し、前
記バッファセットの1つについて、それぞれ前記データ
バッファのアドレスを格納するアドレスバッファと、前
記データバッファにデータが格納されていることを示す
バッファイネーブルフラグと、前記データバッファがす
べて空であることを示すバッファエンプティフラグと、
前記データバッファのすべてにデータが格納されている
ことを示すバッファフルフラグを用い、前記データライ
ト要求またはデータリード要求が行なわれた際、前記バ
ッファエンプティフラグ、および前記バッファフルフラ
グの状態、およびデータライト要求またはデータリード
要求に係るアドレスと前記アドレスバッファの値の比較
結果に基づき、前記データライト要求またはデータリー
ド要求に対してリトライを返すかデータ転送を受け付け
るかを判断する構成を採用した。
【0007】
【発明の実施の形態】以下、添付図面を参照して本発明
の実施形態を詳細に説明する。
【0008】図1は本発明を採用した自動アドレッシン
グバッファ装置の構成を示している。
【0009】本実施形態の自動アドレッシングバッファ
装置はバスインターフェース1−1によってバス1−4
に接続される。バッファコントローラ1−2はバッファ
ブロック1−3の状態を監視し、その状態に応じてバス
インターフェース1−1からのアクセス要求に対して返
答し、バッファブロック1−3とのデータのやり取りを
行なう。
【0010】バス1−4には、不図示のCPUやSCS
Iカード、フロッピー(登録商標)ディスクコントロー
ラなどのバスマスタが接続される。機器全体は、コンピ
ュータシステムや画像処理装置などの情報処理装置とし
て構成される。
【0011】バスインターフェース1−1とバッファコ
ントローラ1−2の間は符号1−11〜1−16の信号
により接続されている。またバッファコントローラ1−
2とバッファブロック1−3の間は1−21〜1−29
の信号により接続されている。
【0012】本実施形態の自動アドレッシングバッファ
装置は、2セットのバッファセット1−3−1、1−3
−2を有する(それぞれバッファセットA、B)。バッ
ファセット1−3−1、1−3−2は同一構成であるの
で、ここではバッファセット1−3−2側の符号の図示
を省略してある。
【0013】バッファセット1−3−1、1−3−2
は、32bitのデータをアドレスが連続する4ワード
格納できるデータバッファ1−3−14〜1−3−17
と、これらデータバッファに格納したデータの先頭アド
レスを示すアドレスバッファ1−3−13(32bit
アドレスの上位28bitを格納する)を有する。
【0014】さらに、バッファセット1−3−1、1−
3−2は、当該のバッファセットが空であることを示す
1bitのEmptyフラグ1−3−11とバッファに
すべてデータが入っていることを示す1bitのFul
lフラグ1−3−12を有する。
【0015】また、データバッファ1−3−14〜1−
3−17にはデータイネーブルフラグ1−3−18が付
属しており、このデータイネーブルフラグ1−3−18
により対応するデータバッファにデータが格納されてい
るかどうかを示す。
【0016】本実施形態では、1つのバッファセット1
−3−1(1−3−2)には32bitx4ワード分の
データが格納できるが、ビット数ならびにワード数はい
くつであってもよい。また、バッファセットの数も任意
のセット数であってよい。
【0017】本実施形態の自動アドレッシングバッファ
装置にはあらかじめバス1−4上のアドレス空間が割り
振られており、そのアドレス空間への他のバスマスタか
らのアクセスにのみ応じるようになっている。なお、こ
のアドレス空間はバスインターフェース1−1にベース
アドレスレジスタなどの書き換え可能なレジスタを持つ
ことにより、プログラマブルにすることもできる。
【0018】バスインターフェース1−1はバス1−4
からの転送を監視し、転送のアドレスが自分のアドレス
空間と一致した場合にその転送に反応し、バスコントロ
ーラ1−2へ転送要求を出す。
【0019】転送要求がライト転送であった場合には、
転送要求のあったアドレスAddress1−11、ラ
イト要求信号WriteReq1−12、ライトデータ
WriteData1−16をバッファコントローラに
対して出し、バッファコントローラからレディー信号R
eady1−14が帰ってきた場合にはその転送を正常
終了させ、リトライ信号Retry1−15が帰ってき
た場合にはその転送をリトライとしてバス1−4に返
す。
【0020】また、リード転送であった場合には、転送
要求のあったアドレスAddress1−11、リード
要求信号WriteReq1−12をバッファコントロ
ーラに対して出し、バッファコントローラからレディー
信号Ready1−14が帰ってきた場合には、リード
データReadData1−17をバス1−4に返して
その転送を正常終了させ、リトライ信号Retry1−
15が帰ってきた場合にはその転送をリトライとしてバ
ス1−4に返す。
【0021】バッファコントローラ1−2はバスインタ
ーフェース1−1から要求を受けた場合、バッファブロ
ック1−3からのバッファの状態を示すステータス信号
によってレディー信号1−14を返すかリトライ信号1
−15を返すかを判断する。
【0022】バッファブロック1−3の状態を示すステ
ータス信号には以下のものがある。まず、Addr−A
1−21はバッファセットA1−3−1のアドレスバッ
ファ1−3−13に格納されているアドレスを示す。F
ull−A1−22はFullフラグ1−3−12、E
mpty−A1−23はEmptyフラグ1−3−11
をそれぞれ示す。Addr−B1−24、Full−B
1−25、Empty−B1−26はそれぞれ同様にバ
ッファセットB1−3−2の内容を示す。
【0023】次に上記構成における動作を図2の表図と
図3〜図6のフローチャート図を参照して説明する。
【0024】まず、バッファブロック1−3の入出力動
作を説明する。バッファブロック1−3のライト/リー
ドするバッファセットは、バッファセットセレクト信号
1−32によって選択される。
【0025】ここで図3、図4を参照して、バッファセ
ット1−3−1のライト/リード動作について説明する
(バッファセットB1−3−2の動作も以下同様であ
る)。
【0026】図3はバッファセット1−3−1のライト
処理を示している。図示のように、バッファセットA1
−3−1は、バッファコントローラ1−2からライトリ
クエスト信号1−27を受けると、Emptyフラグ1
−3−11がセットされているかどうかを調べ(ステッ
プS11)、Emptyフラグ1−3−11がセットさ
れている場合にはアドレス1−29の上位28ビットを
アドレスバッファ1−3−13に格納する(ステップS
12)。Emptyフラグ1−3−11がセットされて
いない場合にはアドレスの格納は行なわない(ステップ
S11〜S12)。
【0027】ライトデータ1−30を書き込むデータバ
ッファはアドレス1−29のビット3とビット2によっ
て選択する(LSBをビット0と考える)。図2にアド
レス1−29のビット3とビット2と、データバッファ
の対応関係を示す。
【0028】例えばアドレスが0x1000_0008
の時は、ビット3が1、ビット2が0となるのでデータ
バッファ31−3−16に格納する。
【0029】このようにして決定した(ステップS1
3)データバッファにデータを書き(ステップS1
4)、そのデータバッファに対応するデータイネーブル
フラグ1−3−18をセットする(ステップS15)と
ともに、Emptyフラグ1−3−11をリセットする
(ステップS16)。
【0030】ここで、このバッファセットのもしすべて
のデータバッファのデータがイネーブルの場合(ステッ
プS17)は、Fullフラグ1−3−12をセットす
る(ステップS18)。
【0031】一方、バッファセットに対するリード処理
は図4のように行なわれる。
【0032】バッファコントローラ1−2からリクエス
ト信号1−28を受けると、アドレス1−29のビット
3とビット2によってバッファセットA1−3−1はリ
ードデータ1−31に出すデータバッファを選択し、そ
のデータバッファからデータを読み出す(ステップS2
1)。こうしてあるデータバッファがリードされるとそ
のデータバッファに対応するデータイネーブルフラグ1
−3−18をリセットする(ステップS22)。
【0033】そして、すべてのデータバッファのデータ
イネーブルフラグ1−3−18がリセットされている場
合(ステップS23)はEmptyフラグ1−3−11
をセットする(ステップS24)。
【0034】次に、バッファコントローラ1−2側の動
作を図5および図6を参照して説明する。
【0035】図5はバッファコントローラ1−2のライ
トリクエスト処理を示している。
【0036】バッファコントローラ1−2はバスインタ
ーフェース1−1からライト要求を受けると、まずバッ
ファセットA1−3−1について評価を行なう。
【0037】バッファセットA1−3−1のEmpty
−A1−23がセットされておらず(ステップS3
1)、かつこのバッファセットのアドレスAddr−A
1−21とバスインターフェース1−1からのアドレス
1−11の上位28ビットとを比較し(ステップS3
2)、両者が同一であればバスインターフェース1−1
にレディー信号1−14を返し、該当するバッファセッ
トへのライトを行なう(ステップS33)。バッファセ
ットA1−3−1が条件に合わない場合は、バッファセ
ットB1−3−2について評価を行なう(ステップS3
4〜)。
【0038】バッファセットB1−3−2側の処理も同
様で、Empty−B1−26がセットされておらず
(ステップS34)、しかもアドレスAddr−B1−
24とバスインターフェース1−1からのアドレス1−
11の上位28ビットが一致した場合(ステップS3
5)レディー信号1−14を返し、該当するバッファセ
ットへのライトを行なう(ステップS36)。
【0039】なお、Empty−A1−23(Empt
y−B1−26)がセットされておらず、アドレスがヒ
ット(一致)する、という事は、対応するバッファセッ
トへの途中まで書き込みが行なわれていることを示し、
この場合、本実施形態では上記のようにして当該のバッ
ファセットへの書き込みを継続させる。
【0040】バッファセットへのライトはライトリクエ
スト信号WriteReq1−27とアドレスAddr
ess1−29、ライトデータWriteData1−
30、バッファセットセレクト信号SetSell−3
2をバッファブロック1−3に対して出力する。これに
より、図3に示したバッファブロック側のライト処理が
行なわれる。
【0041】また、上記の条件に当てはまらない場合
は、ステップS37、S38でそれぞれのバッファセッ
トのEmpty−A1−23、Empty−B1−26
を調べ、セットされているEmptyフラグがあれば、
上記のステップS33またはS36に分岐して対応する
バッファセットへの書き込みを行なう。
【0042】アドレスがヒットせず、バッファセットに
も空きがなかった場合にはバッファコントローラ1−2
はバスインターフェース1−1に対してリトライ信号1
−15を出し、その転送をリトライさせる(ステップS
39)。
【0043】図6はバッファコントローラ1−2のリー
ドリクエスト処理を示している。
【0044】同図のように、バッファコントローラ1−
2はバスインターフェース1−1からバーストリード要
求を受けると、まずバッファセットA1−3−1から評
価を行なう。
【0045】まず、FullフラグA1−22がセット
されており(ステップS41)、かつAddr−A1−
21とバスインターフェース1−1からのアドレス1−
11の上位28ビットとを比較し(ステップS42)、
同一であれば該当するバッファセットからのリードを行
なう(ステップS43)。リードが完了したら、バスイ
ンターフェース1−1にリードデータ1−17と共にレ
ディー信号1−14を返す。
【0046】バッファセットB1−3−2側の処理も同
様であり、FullフラグB1−25がセットされてお
り(ステップS44)、かつAddr−B1−24とバ
スインターフェース1−1からのアドレス1−11の上
位28ビットとを比較し(ステップS45)、同一であ
れば該当するバッファセットからのリード、リードデー
タおよびレディー信号1−14の返送を行なう(ステッ
プS46)。
【0047】なお、バッファセットからのバーストデー
タのリードについては、バーストビート回数だけリード
リクエスト信号ReadReq1−28とアドレス1−
29、バッファセットセレクト信号1−32をバッファ
ブロック1−3に対して与え、その都度リードデータ1
−31を受け取る。これはバーストコントロール信号な
どを追加することによりバーストデータの連続転送も可
能になる。バッファセットA1−3−1がこの条件に合
わない場合は、バッファセットB1−3−2について評
価を行なう。何れのバッファセットも条件に合わない場
合にはバッファコントローラ1−2はバスインターフェ
ース1−1に対してリトライ信号1−15を出し、その
転送をリトライさせる。
【0048】以上の動作を要約すると、本実施形態のバ
ッファ装置では、バスからライトされたデータと同じア
ドレスにリード要求が来た場合に対してのみ、ライトが
完了していればリードが可能になる。また、ライトされ
ていないアドレスについてリード要求がきた場合はリト
ライを返す。ライトバッファがフルの場合にライト要求
がきた場合にもリトライを返す。また、一つのバッファ
ブロックのバッファ容量をバスのバースト長に合わせて
おけば、バースト長のデータがそろうまでは、そのアド
レスにリード要求がきてもリトライで返し、これによ
り、リードについては常にバースト転送が実現される。
【0049】以上のようにして、本実施形態によれば、
バス(1−4)に接続されたバスマスタデバイスがデー
タブロックをバッファにライトし、他のマスタがライト
されたデータブロックをバッファからリードする動作に
おいて、ライトを行なうバスマスタのDMAコントロー
ラとリードを行なうバスマスタのDMAコントローラに
対して、同時に起動をかけることができ、ソフトウェア
による制御の負担を大幅に軽減することができる。リー
ドが終わったバッファについては新たな別のアドレスの
ライトデータを格納できるため、バッファ容量の節約が
実現できる。さらには、バースト長のデータが揃うまで
は、そのアドレスにリード要求がきてもリトライで返す
ので、リードについては常にバースト転送が行なわれ、
これにより高効率なデータ転送が可能になる。
【0050】なお、以上の実施形態において、図1にそ
れぞれ別個のブロックとして示した部材の任意の部分は
1チップのLSIなどとして構成することができ、ま
た、図3〜図5に示した制御手順はそのようなLSIチ
ップのマイクロコードプログラムとして実装することが
できる。
【0051】
【発明の効果】以上から明らかなように本発明によれ
ば、情報処理装置内のバスに接続され、前記バスに接続
されたバスマスタからのデータライト要求またはデータ
リード要求を受け付けるバッファ装置、その制御方法、
およびその制御プログラムにおいて、データ転送のため
に1つ、ないしはアドレスの連続する複数のデータを格
納するデータバッファから成るバッファセットを含む複
数のバッファブロックを有し、前記バッファセットの1
つについて、それぞれ前記データバッファのアドレスを
格納するアドレスバッファと、前記データバッファにデ
ータが格納されていることを示すバッファイネーブルフ
ラグと、前記データバッファがすべて空であることを示
すバッファエンプティフラグと、前記データバッファの
すべてにデータが格納されていることを示すバッファフ
ルフラグを用い、前記データライト要求またはデータリ
ード要求が行なわれた際、前記バッファエンプティフラ
グ、および前記バッファフルフラグの状態、およびデー
タライト要求またはデータリード要求に係るアドレスと
前記アドレスバッファの値の比較結果に基づき、前記デ
ータライト要求またはデータリード要求に対してリトラ
イを返すかデータ転送を受け付けるかを判断する構成を
採用しているので、ライトを行なうバスマスタのDMA
コントローラとリードを行なうバスマスタのDMAコン
トローラに対して、同時に起動をかけることができ、装
置全体のソフトウェア制御の負担を軽減し、小さいバッ
ファ容量で高速なデータ転送を行なえる、という優れた
効果がある。
【図面の簡単な説明】
【図1】本発明の実施形態に係る自動アドレッシングバ
ッファ装置の構成を示すブロック図である。
【図2】図1の装置におけるアドレスとデータバッファ
の対応を示した表図である。
【図3】図1の装置におけるバッファセットのライト処
理を示したフローチャート図である。
【図4】図1の装置におけるバッファセットのリード処
理を示したフローチャート図である。
【図5】図1の装置におけるライトリクエスト処理を示
したフローチャート図である。
【図6】図1の装置におけるリードリクエスト処理を示
したフローチャート図である。
【符号の説明】
1−1 バスインターフェース 1−2 バッファコントローラ 1−3 バッファブロック 1−3−1、1−3−2 バッファセット 1−3−11 Emptyフラグ 1−3−12 Fullフラグ 1−3−13 アドレスバッファ 1−3−14、15、16、17 データバッファ 1−3−18 バッファイネーブルフラグ

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 情報処理装置内のバスに接続され、前記
    バスに接続されたバスマスタからのデータライト要求ま
    たはデータリード要求を受け付けるバッファ装置におい
    て、 1つ、ないしはアドレスの連続する複数のデータを格納
    するデータバッファから成るバッファセットと、前記デ
    ータバッファのアドレスを格納するアドレスバッファ
    と、前記データバッファにデータが格納されていること
    を示すバッファイネーブルフラグと、前記データバッフ
    ァがすべて空であることを示すバッファエンプティフラ
    グと、前記データバッファのすべてにデータが格納され
    ていることを示すバッファフルフラグとから構成される
    1つないし複数のバッファブロックと、 前記データライト要求またはデータリード要求が行なわ
    れた際、前記バッファエンプティフラグ、および前記バ
    ッファフルフラグの状態、およびデータライト要求また
    はデータリード要求に係るアドレスと前記アドレスバッ
    ファの値の比較結果に基づき、前記データライト要求ま
    たはデータリード要求に対してリトライを返すかデータ
    転送を受け付けるかを判断する制御手段を有することを
    特徴とするバッファ装置。
  2. 【請求項2】 前記バスからデータライト要求があった
    際、前記バッファセットの内の一つに前記バッファエン
    プティフラグがセットされておらず、かつそのアドレス
    バッファと前記データライト要求のアドレスが一致した
    という第1の条件、あるいは、前記第1の条件が成立せ
    ず、かつ、前記バッファセットのデータバッファにバッ
    ファエンプティフラグがセットされているという第2の
    条件のいずれかが成立した場合に、該当するバッファセ
    ットに対するデータライト要求を受け付け、それ以外の
    場合には前記データライト要求に対してリトライを返す
    ことを特徴とする請求項1に記載のバッファ装置。
  3. 【請求項3】 前記バスからデータリード要求があった
    際、前記バッファセットの内の一つに前記バッファフル
    フラグがセットされており、かつそのバッファセットの
    アドレスバッファと前記データリード要求のアドレスが
    一致した場合、該当するバッファセットに対するデータ
    リード要求を受け付け前記バスからのデータリード要求
    に対してデータを返し、それ以外の場合には前記データ
    リード要求に対してリトライを返すことを特徴とする請
    求項1に記載のバッファ装置。
  4. 【請求項4】 情報処理装置内のバスに接続され、前記
    バスに接続されたバスマスタからのデータライト要求ま
    たはデータリード要求を受け付けるとともに、このデー
    タ転送のために1つ、ないしはアドレスの連続する複数
    のデータを格納するデータバッファから成るバッファセ
    ットを含むバッファブロックを有するバッファ装置の制
    御方法において、 前記バッファセットの1つについて、それぞれ前記デー
    タバッファのアドレスを格納するアドレスバッファと、
    前記データバッファにデータが格納されていることを示
    すバッファイネーブルフラグと、前記データバッファが
    すべて空であることを示すバッファエンプティフラグ
    と、前記データバッファのすべてにデータが格納されて
    いることを示すバッファフルフラグを用い、 前記データライト要求またはデータリード要求が行なわ
    れた際、前記バッファエンプティフラグ、および前記バ
    ッファフルフラグの状態、およびデータライト要求また
    はデータリード要求に係るアドレスと前記アドレスバッ
    ファの値の比較結果に基づき、前記データライト要求ま
    たはデータリード要求に対してリトライを返すかデータ
    転送を受け付けるかを判断することを特徴とするバッフ
    ァ装置の制御方法。
  5. 【請求項5】 前記バスからデータライト要求があった
    際、前記バッファセットの内の一つに前記バッファエン
    プティフラグがセットされておらず、かつそのアドレス
    バッファと前記データライト要求のアドレスが一致した
    という第1の条件、あるいは、前記第1の条件が成立せ
    ず、かつ、前記バッファセットのデータバッファにバッ
    ファエンプティフラグがセットされているという第2の
    条件のいずれかが成立した場合に、該当するバッファセ
    ットに対するデータライト要求を受け付け、それ以外の
    場合には前記データライト要求に対してリトライを返す
    ことを特徴とする請求項4に記載のバッファ装置の制御
    方法。
  6. 【請求項6】 前記バスからデータリード要求があった
    際、前記バッファセットの内の一つに前記バッファフル
    フラグがセットされており、かつそのバッファセットの
    アドレスバッファと前記データリード要求のアドレスが
    一致した場合、該当するバッファセットに対するデータ
    リード要求を受け付け前記バスからのデータリード要求
    に対してデータを返し、それ以外の場合には前記データ
    リード要求に対してリトライを返すことを特徴とする請
    求項4に記載のバッファ装置の制御方法。
  7. 【請求項7】 情報処理装置内のバスに接続され、前記
    バスに接続されたバスマスタからのデータライト要求ま
    たはデータリード要求を受け付けるとともに、このデー
    タ転送のために1つ、ないしはアドレスの連続する複数
    のデータを格納するデータバッファから成るバッファセ
    ットを含む複数のバッファブロックを有するバッファ装
    置の制御プログラムにおいて、 前記バッファセットの1つについて、それぞれ前記デー
    タバッファのアドレスを格納するアドレスバッファと、
    前記データバッファにデータが格納されていることを示
    すバッファイネーブルフラグと、前記データバッファが
    すべて空であることを示すバッファエンプティフラグ
    と、前記データバッファのすべてにデータが格納されて
    いることを示すバッファフルフラグを用い、前記データ
    ライト要求またはデータリード要求が行なわれた際、前
    記バッファエンプティフラグ、および前記バッファフル
    フラグの状態、およびデータライト要求またはデータリ
    ード要求に係るアドレスと前記アドレスバッファの値の
    比較結果に基づき、前記データライト要求またはデータ
    リード要求に対してリトライを返すかデータ転送を受け
    付けるかを判断する工程を含むことを特徴とするバッフ
    ァ装置の制御プログラム。
  8. 【請求項8】 前記バスからデータライト要求があった
    際、前記バッファセットの内の一つに前記バッファエン
    プティフラグがセットされておらず、かつそのアドレス
    バッファと前記データライト要求のアドレスが一致した
    という第1の条件、あるいは、前記第1の条件が成立せ
    ず、かつ、前記バッファセットのデータバッファにバッ
    ファエンプティフラグがセットされているという第2の
    条件のいずれかが成立した場合に、該当するバッファセ
    ットに対するデータライト要求を受け付け、それ以外の
    場合には前記データライト要求に対してリトライを返す
    ことを特徴とする請求項7に記載のバッファ装置の制御
    プログラム。
  9. 【請求項9】 前記バスからデータリード要求があった
    際、前記バッファセットの内の一つに前記バッファフル
    フラグがセットされており、かつそのバッファセットの
    アドレスバッファと前記データリード要求のアドレスが
    一致した場合、該当するバッファセットに対するデータ
    リード要求を受け付け前記バスからのデータリード要求
    に対してデータを返し、それ以外の場合には前記データ
    リード要求に対してリトライを返すことを特徴とする請
    求項7に記載のバッファ装置の制御プログラム。
JP2001174947A 2001-06-11 2001-06-11 バッファ装置、バッファ装置の制御方法、およびバッファ装置の制御プログラム Withdrawn JP2002366503A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001174947A JP2002366503A (ja) 2001-06-11 2001-06-11 バッファ装置、バッファ装置の制御方法、およびバッファ装置の制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001174947A JP2002366503A (ja) 2001-06-11 2001-06-11 バッファ装置、バッファ装置の制御方法、およびバッファ装置の制御プログラム

Publications (1)

Publication Number Publication Date
JP2002366503A true JP2002366503A (ja) 2002-12-20

Family

ID=19016160

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001174947A Withdrawn JP2002366503A (ja) 2001-06-11 2001-06-11 バッファ装置、バッファ装置の制御方法、およびバッファ装置の制御プログラム

Country Status (1)

Country Link
JP (1) JP2002366503A (ja)

Similar Documents

Publication Publication Date Title
US6233641B1 (en) Apparatus and method of PCI routing in a bridge configuration
JP3273367B2 (ja) メモリに対し非同期でデータの読出し/書込みを行う方法及びそのためのダイレクトメモリアクセス・コントローラ
JP3181515B2 (ja) データ転送方法及びその方法を用いたデータ転送装置
US20040107265A1 (en) Shared memory data transfer apparatus
JP2001142842A (ja) Dmaハンドシェークプロトコル
US6766386B2 (en) Method and interface for improved efficiency in performing bus-to-bus read data transfers
JP2001216194A (ja) 演算処理装置
EP0332151A2 (en) Direct memory access controller
JPH1196072A (ja) メモリアクセス制御回路
JP4097883B2 (ja) データ転送装置および方法
JP2002366503A (ja) バッファ装置、バッファ装置の制御方法、およびバッファ装置の制御プログラム
JPH11232213A (ja) 入出力装置におけるデータ転送方式
JPH0556543B2 (ja)
US7028129B2 (en) Method and apparatus for converting an external memory access into a local memory access in a processor core
JPS6148745B2 (ja)
JPS58169390A (ja) バツフア記憶の書込み方法
JP3039391B2 (ja) メモリシステム
KR20010050234A (ko) 메모리(mem)와 결합한 데이터 처리용 디바이스
JPH05108578A (ja) 情報処理システム
JP3204297B2 (ja) Dma転送制御装置
JPH06301600A (ja) 記憶装置
JP3264316B2 (ja) ダイレクトメモリアクセス制御装置
JPH1011387A (ja) 情報処理装置
JPH07152650A (ja) キャッシュ制御装置
JPS6230108Y2 (ja)

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070209

A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080902