JPH0351944A - バッファメモリ制御装置 - Google Patents
バッファメモリ制御装置Info
- Publication number
- JPH0351944A JPH0351944A JP18714489A JP18714489A JPH0351944A JP H0351944 A JPH0351944 A JP H0351944A JP 18714489 A JP18714489 A JP 18714489A JP 18714489 A JP18714489 A JP 18714489A JP H0351944 A JPH0351944 A JP H0351944A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- bus master
- buffer
- timing
- 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.)
- Pending
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 55
- 230000007704 transition Effects 0.000 claims 1
- 238000000034 method Methods 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 7
- 238000012790 confirmation Methods 0.000 description 2
- 101000585284 Protobothrops flavoviridis Basic phospholipase A2 BP-III Proteins 0.000 description 1
- METIGIXCFPEQNM-UHFFFAOYSA-M amino-(2-bromoethyl)-dimethylazanium;bromide Chemical compound [Br-].C[N+](C)(N)CCBr METIGIXCFPEQNM-UHFFFAOYSA-M 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
Landscapes
- Information Transfer Systems (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
技術分野
本発明はバッファメモリ制御装置に関し、特に複数のバ
スマスタによってパイプライン方式のデータ処理を行う
際に使用されるバッファメモリの制御方式に関する。
スマスタによってパイプライン方式のデータ処理を行う
際に使用されるバッファメモリの制御方式に関する。
従来技術
かかるデータ処理においては、発生する中間処理結果を
共通のバッファメモリを介して各バスマスタ間にて受渡
しする場合、当該バッファメモリの管理制御が必要とな
る。
共通のバッファメモリを介して各バスマスタ間にて受渡
しする場合、当該バッファメモリの管理制御が必要とな
る。
すなわち、複数のバスマスタがデータバッファを共有し
てパイプラインデータ処理をなす場合、1つのバスマス
タが使用しているバッファに対して他のバスマスタがア
クセスしようとするとき、当該バッファに対する前者の
バスマスタの処理が終了したことを確認した上で後者の
バスマスタか処理を開始する必要がある。
てパイプラインデータ処理をなす場合、1つのバスマス
タが使用しているバッファに対して他のバスマスタがア
クセスしようとするとき、当該バッファに対する前者の
バスマスタの処理が終了したことを確認した上で後者の
バスマスタか処理を開始する必要がある。
従来の方式では、かかるバッファの管理制御をCPUに
よるソフトウエアにより行っている。よって、CPUは
これ等の管理制御の処理のために多大な時間を費やすこ
とになり、ソフトウエアの実行速度の低下をもたらす要
因となっている。また、CPUがかかる処理を実行中は
バスマスタは動作していないので、ハードウエア資源の
有効活用ができないという欠点がある。
よるソフトウエアにより行っている。よって、CPUは
これ等の管理制御の処理のために多大な時間を費やすこ
とになり、ソフトウエアの実行速度の低下をもたらす要
因となっている。また、CPUがかかる処理を実行中は
バスマスタは動作していないので、ハードウエア資源の
有効活用ができないという欠点がある。
発明の目的
本発明はこの様な従来技術の欠点を除去すべなされたも
のであって、その目的とするところは、CPUによるバ
ッファの管理制御をできるだけ少なくしてCPUの負荷
を軽減し、CPU及びバスマスタの有効利用を図ったバ
ッファメモリ制御装置を提供することにある。
のであって、その目的とするところは、CPUによるバ
ッファの管理制御をできるだけ少なくしてCPUの負荷
を軽減し、CPU及びバスマスタの有効利用を図ったバ
ッファメモリ制御装置を提供することにある。
発明の構或
本発明によれば、共通のバッファメモリを複数のバスマ
スタにより使用する際に、前記バッファメモリを複数の
領域に分割1,てこれ等領域を順次切換えて使用するよ
う管理制御するバッファメモリ111 lm装置であっ
て、前記バスマスタの各々が前記領域のいずれに対して
処理を行っているかを示す領域ビジー情報を格納する手
段と、前記領域ビジー情報の各遷移タイミングを用いて
前記バスマスタの各々に対する前記領域の使用許可のコ
マンド発行指令を生成する手段とを含むことを特徴とす
るバッファメモリ制御装置が得られる。
スタにより使用する際に、前記バッファメモリを複数の
領域に分割1,てこれ等領域を順次切換えて使用するよ
う管理制御するバッファメモリ111 lm装置であっ
て、前記バスマスタの各々が前記領域のいずれに対して
処理を行っているかを示す領域ビジー情報を格納する手
段と、前記領域ビジー情報の各遷移タイミングを用いて
前記バスマスタの各々に対する前記領域の使用許可のコ
マンド発行指令を生成する手段とを含むことを特徴とす
るバッファメモリ制御装置が得られる。
実施例
以下に、本発明の実施例を図面を参照して詳細に説明す
る。
る。
第1図は本発明の実施例の構成図である。CPUllは
コントロールバス16を経由してバスマスタ(BM)1
2 14に対して処理コマンドを発行し、データ処理
を行わせる。バスマスタ12,14はデータバス17を
経由してバッファメモリ(MEM)15との間でデータ
の受渡しを行い、処理の実行をなす。
コントロールバス16を経由してバスマスタ(BM)1
2 14に対して処理コマンドを発行し、データ処理
を行わせる。バスマスタ12,14はデータバス17を
経由してバッファメモリ(MEM)15との間でデータ
の受渡しを行い、処理の実行をなす。
タイミングコントロール回路13はバスマスタ12.1
4からの動作開始/終了タイミング信号を基に、CPU
11に対して次の処理コマンドの発行タイミングを通知
する。すなわち、CPUI1の代りにタイミングコント
ロール回路13がバッファメモリ15の管理制御を行う
よう構成している。
4からの動作開始/終了タイミング信号を基に、CPU
11に対して次の処理コマンドの発行タイミングを通知
する。すなわち、CPUI1の代りにタイミングコント
ロール回路13がバッファメモリ15の管理制御を行う
よう構成している。
第2図は第1図の構成図を更に詳細に示した本発明の実
施例の動作説明図である。バスマスタ1−2はバッファ
メモリ15内の人力データバッファ(IB)15aから
データを抜取り、処理結果データをバッファメモリ15
中の中間データバッファ(BUF)15c,15dに出
力する。
施例の動作説明図である。バスマスタ1−2はバッファ
メモリ15内の人力データバッファ(IB)15aから
データを抜取り、処理結果データをバッファメモリ15
中の中間データバッファ(BUF)15c,15dに出
力する。
バスマスタ14はバスマスタ12から出力された中間デ
ータバッファ15c,15dのデータを引取り、処理結
果を出力データバッファ(OB)15bに出力する。
ータバッファ15c,15dのデータを引取り、処理結
果を出力データバッファ(OB)15bに出力する。
人力及び出力データバッファ15a,15bは複数個の
ブロックに分割され、各ブロック毎に入出力処理が行わ
れる。入力データバッファ15aの1つのブロックのデ
ータがバスマスタ12により処理され、中間結果が中間
データバッファ15c,15dに出力され、このデータ
をバスマスタ14が処理し、出力データバッファ15b
の1つのブロックに出力するよう制御される。
ブロックに分割され、各ブロック毎に入出力処理が行わ
れる。入力データバッファ15aの1つのブロックのデ
ータがバスマスタ12により処理され、中間結果が中間
データバッファ15c,15dに出力され、このデータ
をバスマスタ14が処理し、出力データバッファ15b
の1つのブロックに出力するよう制御される。
各バスマスタ12.14に対する処理の動作フロー図が
第3図に示されており、(A)がバスマスタ12に対す
る処理フローであり、(B)がバスマスタ14に対する
処理フローである。
第3図に示されており、(A)がバスマスタ12に対す
る処理フローであり、(B)がバスマスタ14に対する
処理フローである。
すなわち、1つのバスマスタが1つのバッファを使用す
るときには、他のバスマスタが当該バッファを使用して
いないかどうかを確認し、使用中でなければ、そのバッ
ファを使用し、使用中であれば待機して使用終了後に使
用開始するのである。
るときには、他のバスマスタが当該バッファを使用して
いないかどうかを確認し、使用中でなければ、そのバッ
ファを使用し、使用中であれば待機して使用終了後に使
用開始するのである。
そして、当該バッファの使用が終了すれば、他のバッフ
ァの使用を行うのであるが、この場合も上記と同様な確
認制御処理が行われることになる。
ァの使用を行うのであるが、この場合も上記と同様な確
認制御処理が行われることになる。
こ0様な確認制御処理をタイミングコントロール回路l
3によるハードウエアによって行うものである。このタ
イミングコントロール回路13の具体例が第4図に示さ
れており、その各部動作タイミングチャートが第5図に
示されている。バスマスタ12.14からの動作期間中
を示す各信号301.302(BM婁IBUsY,BM
ll2BUSY)から、バスマスタ12.14に対する
コマンド発行タイミング信号3l5,31f3(B旧I
GO,B月82GO)を生成し、CPUIIへ送出する
ようにした構成の回路である。
3によるハードウエアによって行うものである。このタ
イミングコントロール回路13の具体例が第4図に示さ
れており、その各部動作タイミングチャートが第5図に
示されている。バスマスタ12.14からの動作期間中
を示す各信号301.302(BM婁IBUsY,BM
ll2BUSY)から、バスマスタ12.14に対する
コマンド発行タイミング信号3l5,31f3(B旧I
GO,B月82GO)を生成し、CPUIIへ送出する
ようにした構成の回路である。
レジスタ31.32はバスマスタ12.14に夫々対応
して設けられており、対応バスマスタが現在どのバッフ
ァに対して処理中であるかを記憶するためのものであり
、信号301.302がアクティブハイになる毎にレジ
スタ出力303〜30B (r3FtlUSE,BP
$2USE)が夫々反転する。
して設けられており、対応バスマスタが現在どのバッフ
ァに対して処理中であるかを記憶するためのものであり
、信号301.302がアクティブハイになる毎にレジ
スタ出力303〜30B (r3FtlUSE,BP
$2USE)が夫々反転する。
ナンドゲート33〜36は上記信号301〜306から
各バスマスタがいずれのバッファに対して現在動作中で
あるかを示す信号307〜310を生戊するものである
。
各バスマスタがいずれのバッファに対して現在動作中で
あるかを示す信号307〜310を生戊するものである
。
DFF(Dタイプフリップフロップ)41〜48、イン
バータ37〜40,EX−ORゲート49〜52、アン
ドゲート53〜56及びオアゲー1−57.58は、信
号807〜310の条件から次の処理コマンドが発行で
きるタイミングを生或するゲート回路である。
バータ37〜40,EX−ORゲート49〜52、アン
ドゲート53〜56及びオアゲー1−57.58は、信
号807〜310の条件から次の処理コマンドが発行で
きるタイミングを生或するゲート回路である。
例えば、バスマスタ12がバツファ15cに対する処理
を終了してバッファ15dに対して処理を行おうとする
場合には、バッファ15dに対するバスマスタl4の処
理が終了したことが確認された後に、バスマスタ12に
対するコマンドが発行されなければならない。
を終了してバッファ15dに対して処理を行おうとする
場合には、バッファ15dに対するバスマスタl4の処
理が終了したことが確認された後に、バスマスタ12に
対するコマンドが発行されなければならない。
このタイミングを示す信号311 f 13M111G
o(BF112)1は、2つの条件、すなわちバスマス
タ12がバツファ15Cに対する処理を終了しているこ
とと、バスマスタ14がバッファ15dに対する処理を
終了したことが同時に或立しているときに生或される必
要がある。
o(BF112)1は、2つの条件、すなわちバスマス
タ12がバツファ15Cに対する処理を終了しているこ
とと、バスマスタ14がバッファ15dに対する処理を
終了したことが同時に或立しているときに生或される必
要がある。
そこで、DFF41により、バスマスタ12がバッファ
15cに対する処理を終了したタイミングを取込んで保
持しておき、またDFF42により、バスマスタ12が
バッファ15dに対する処理を開始したタイミングをイ
ンバータ37を介して取込んでおく。そして、これ等D
FF41.42の出力をEX−ORゲート4つへ人ノノ
することにより、バスマスタ12が両バツファ15c,
15dを共に使用中でない期間を示す信号が生戊される
。この信号と、バスマスタ14がバツファ15d(バス
マスタ12がこれら使用したいバツファ)を使用してい
ることを示す信号310とを2人カアンドゲート53に
入力し、上記した目的とするBM$IGO(BFII2
)信号311を得ているのである。他の信号312〜3
14についても同等である。
15cに対する処理を終了したタイミングを取込んで保
持しておき、またDFF42により、バスマスタ12が
バッファ15dに対する処理を開始したタイミングをイ
ンバータ37を介して取込んでおく。そして、これ等D
FF41.42の出力をEX−ORゲート4つへ人ノノ
することにより、バスマスタ12が両バツファ15c,
15dを共に使用中でない期間を示す信号が生戊される
。この信号と、バスマスタ14がバツファ15d(バス
マスタ12がこれら使用したいバツファ)を使用してい
ることを示す信号310とを2人カアンドゲート53に
入力し、上記した目的とするBM$IGO(BFII2
)信号311を得ているのである。他の信号312〜3
14についても同等である。
信号311と312との論理和出力がオアゲート57よ
り出力され、これがバスマスタ12に対するバッファ1
5c又は15dの使用許可タイミングを示す信号315
(BMIIIGO)となる。同様に、信号313と31
4との論理和出力がオアゲート58より出力され、バス
マスタ14に対するバッファ15c又は15dの使用許
可タイミングを示す信号316(BMlt2GO)とな
る。
り出力され、これがバスマスタ12に対するバッファ1
5c又は15dの使用許可タイミングを示す信号315
(BMIIIGO)となる。同様に、信号313と31
4との論理和出力がオアゲート58より出力され、バス
マスタ14に対するバッファ15c又は15dの使用許
可タイミングを示す信号316(BMlt2GO)とな
る。
尚、インバータ5つはBMIIIGO(BPIII)信
号312を反転してアンドゲート56へ供給しており、
これによりバスマスタ12が先に動作開始することを保
証している。また、リセット信号317は各DFF41
〜48の初期化のために使用されるものであり、システ
ム全体を初期化するリセット信号が用いられる。
号312を反転してアンドゲート56へ供給しており、
これによりバスマスタ12が先に動作開始することを保
証している。また、リセット信号317は各DFF41
〜48の初期化のために使用されるものであり、システ
ム全体を初期化するリセット信号が用いられる。
CPUI 1はこうして得られたBMII IGO信号
315及びBM82GO信号31Bが夫々アクティブノ
\イになったことを検出して、対応するバスマスタに対
してバッファ使用コマンドを発行するのである。
315及びBM82GO信号31Bが夫々アクティブノ
\イになったことを検出して、対応するバスマスタに対
してバッファ使用コマンドを発行するのである。
発明の効果
以上説明した様に、本発明によれば、バスマスタが使川
するバッファ領域の管理と、バスマスタに対するCPU
からのコマンド発行のタイミグの制御をハードウエア化
しているので、CPUはハードウエアから通知されたタ
イミングでもって必要なコマンドをバスマスタに対して
発行するのみて良く、よってCPUは複雑なソフトウェ
制御を全く行う必要がくなり、それだけ有効利用が可能
となるという効果がある。
するバッファ領域の管理と、バスマスタに対するCPU
からのコマンド発行のタイミグの制御をハードウエア化
しているので、CPUはハードウエアから通知されたタ
イミングでもって必要なコマンドをバスマスタに対して
発行するのみて良く、よってCPUは複雑なソフトウェ
制御を全く行う必要がくなり、それだけ有効利用が可能
となるという効果がある。
第1図は本発明の実施例のシステムブロック図、第2図
は第1図のブロックの動作を示すための詳細ブロノク図
、第3図は本発明の実施例の動作フロー図、第4図はタ
イミングコントロール回路の具体例を示す回路図、第5
図はタイミングコントロール回路の動作を示すタイミン
グチャートである。 主要部分の符号の説明 1 1 ・・・・・・ CPU 12.14・・・・・・バスマスタ 13・・・・・・タイミングコントロール回路15・・
・・・・バッファメモリ 31.32・・・・・・レジスタ 41〜48・・・・・・DFF
は第1図のブロックの動作を示すための詳細ブロノク図
、第3図は本発明の実施例の動作フロー図、第4図はタ
イミングコントロール回路の具体例を示す回路図、第5
図はタイミングコントロール回路の動作を示すタイミン
グチャートである。 主要部分の符号の説明 1 1 ・・・・・・ CPU 12.14・・・・・・バスマスタ 13・・・・・・タイミングコントロール回路15・・
・・・・バッファメモリ 31.32・・・・・・レジスタ 41〜48・・・・・・DFF
Claims (1)
- (1)共通のバッファメモリを複数のバスマスタにより
使用する際に、前記バッファメモリを複数の領域に分割
してこれ等領域を順次切換えて使用するよう管理制御す
るバッファメモリ制御装置であって、前記バスマスタの
各々が前記領域のいずれに対して処理を行っているかを
示す領域ビジー情報を格納する手段と、前記領域ビジー
情報の各遷移タイミングを用いて前記バスマスタの各々
に対する前記領域の使用許可のコマンド発行指令を生成
する手段とを含むことを特徴とするバッファメモリ制御
装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP18714489A JPH0351944A (ja) | 1989-07-19 | 1989-07-19 | バッファメモリ制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP18714489A JPH0351944A (ja) | 1989-07-19 | 1989-07-19 | バッファメモリ制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0351944A true JPH0351944A (ja) | 1991-03-06 |
Family
ID=16200891
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP18714489A Pending JPH0351944A (ja) | 1989-07-19 | 1989-07-19 | バッファメモリ制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0351944A (ja) |
-
1989
- 1989-07-19 JP JP18714489A patent/JPH0351944A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| AU639589B2 (en) | Dynamic bus arbitration with grant sharing each cycle | |
| JPH0496163A (ja) | Dmaコントローラ | |
| JPH0351944A (ja) | バッファメモリ制御装置 | |
| JP3399776B2 (ja) | コンピュータおよびコンピュータにおける周辺デバイス制御データの転送方法 | |
| JPH06202894A (ja) | 共有メモリ制御回路 | |
| JP2000227895A (ja) | 画像データ転送装置および画像データ転送方法 | |
| JPS6146552A (ja) | 情報処理装置 | |
| JP2785855B2 (ja) | 情報処理装置 | |
| CA1309503C (en) | Selective receiver for each processor in a multiple processor system | |
| JPS6269348A (ja) | デ−タ転送装置 | |
| JPH01250163A (ja) | バス制御装置 | |
| JPS5938827A (ja) | マイクロプロセツサipl方式 | |
| JPH02301851A (ja) | システムバスアクセス方式 | |
| JPH02222059A (ja) | マルチプロセッサシステム | |
| JPH10171670A (ja) | タスク切り替え装置及びタスク切り替えプログラムを記録した媒体 | |
| JPS62147545A (ja) | 情報処理装置における転送命令処理方式 | |
| JPS6280754A (ja) | メモリアクセス制御装置 | |
| JPH01233544A (ja) | データ転送方式 | |
| JPH06103154A (ja) | 共有メモリ制御装置 | |
| JP2000285089A (ja) | マイクロプロセッサ及びデータの共有方式 | |
| JPS6343783B2 (ja) | ||
| JPS6214866B2 (ja) | ||
| JPS6343782B2 (ja) | ||
| JPH04211854A (ja) | コンピュータ装置 | |
| JPH0468459A (ja) | ディジタル信号処理装置 |