JPH0724045B2 - メモリ制御サブシステム - Google Patents
メモリ制御サブシステムInfo
- Publication number
- JPH0724045B2 JPH0724045B2 JP63064767A JP6476788A JPH0724045B2 JP H0724045 B2 JPH0724045 B2 JP H0724045B2 JP 63064767 A JP63064767 A JP 63064767A JP 6476788 A JP6476788 A JP 6476788A JP H0724045 B2 JPH0724045 B2 JP H0724045B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- processor
- line
- signal
- dma
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/32—Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer
- G06F13/34—Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer with priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0835—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
Description
【発明の詳細な説明】 A.産業上の利用分野 この発明は、キャッシュを有する少なくとも1台のプロ
セッサとメモリに直接アクセスできる装置とを含む複数
のユーザによって共用されるマルチポート・メモリへの
アクセスの調停と制御を行なうメモリ制御サブシステム
に関する。
セッサとメモリに直接アクセスできる装置とを含む複数
のユーザによって共用されるマルチポート・メモリへの
アクセスの調停と制御を行なうメモリ制御サブシステム
に関する。
B.従来技術とその問題点 本発明は、複数のユーザ、すなわち、専用または汎用の
プロセッサ、そのキャッシュ、およびアダプタなど高速
入出力装置が接続されている直接メモリ・アクセス(DM
A)バスによってメモリが共用されるシステムに適用さ
れる。これは、多重プロセッサ/多重DMAバス・メモリ
・ザブシステムに拡張できる。
プロセッサ、そのキャッシュ、およびアダプタなど高速
入出力装置が接続されている直接メモリ・アクセス(DM
A)バスによってメモリが共用されるシステムに適用さ
れる。これは、多重プロセッサ/多重DMAバス・メモリ
・ザブシステムに拡張できる。
こうした環境で、従来のマルチポート・メモリ制御サブ
システムは、プロセッサ/キャッシュ/DMAアクセスの調
停に関して、次の2種類に大別できる。
システムは、プロセッサ/キャッシュ/DMAアクセスの調
停に関して、次の2種類に大別できる。
第1に、入出力アダプタがメモリとの間で単一ワードを
転送する場合、メモリ・サブシステム・コントローラは
通常、サイクル・スチール動作により入出力アダプタが
メモリにアクセスできるようにする。この方法が容認で
きるのは、わずかしか入出力バンド幅が必要でない小型
システムの場合だけである。DMAバスに接続するアダプ
タが増加すると、入出力アダプタがそのバスをもとめて
競争するようになり、プロセッサは妥当な限界以下に速
度低下する。システム全体の中で、メモリ・サブシステ
ム・コントローラがネックになる。
転送する場合、メモリ・サブシステム・コントローラは
通常、サイクル・スチール動作により入出力アダプタが
メモリにアクセスできるようにする。この方法が容認で
きるのは、わずかしか入出力バンド幅が必要でない小型
システムの場合だけである。DMAバスに接続するアダプ
タが増加すると、入出力アダプタがそのバスをもとめて
競争するようになり、プロセッサは妥当な限界以下に速
度低下する。システム全体の中で、メモリ・サブシステ
ム・コントローラがネックになる。
第2に、入出力アダプタがメモリとの間で数ワードのバ
ースト転送を行なう場合および入出力バンド幅を最大値
にしなければならない場合、最大バースト長が、128バ
イトや256バイトなどかなり高い値に増大する。このた
め優先順位の問題が起こる。1つのバースト転送中に入
出力アダプタに優先権を与えた場合、プロセッサが止ま
り、メモリにアクセスできるまできわめて長い時間待た
なければならない。
ースト転送を行なう場合および入出力バンド幅を最大値
にしなければならない場合、最大バースト長が、128バ
イトや256バイトなどかなり高い値に増大する。このた
め優先順位の問題が起こる。1つのバースト転送中に入
出力アダプタに優先権を与えた場合、プロセッサが止ま
り、メモリにアクセスできるまできわめて長い時間待た
なければならない。
一方、プロセッサに優先権を与えると、有効な入出力バ
ンド幅と応答時間が制限されて、入出力オーバーランの
危険が増大し、入出力アダプタが最終的にメモリへのア
クセスを認められると、新しいプロセッサ要求はいずれ
も同じくらいの長い時間待たなければならない。このた
め、システムの設計者は、許容入出力バースト長を減ら
したり入出力アダプタとプロセッサの間で交互優先順位
方式を実現したりするなど、入出力バンド幅とプロセッ
サ応答時間の間でトレード・オフを行なう。以前の方法
よりよいが、これでもまだ入出力バンド幅が最適化され
ない。
ンド幅と応答時間が制限されて、入出力オーバーランの
危険が増大し、入出力アダプタが最終的にメモリへのア
クセスを認められると、新しいプロセッサ要求はいずれ
も同じくらいの長い時間待たなければならない。このた
め、システムの設計者は、許容入出力バースト長を減ら
したり入出力アダプタとプロセッサの間で交互優先順位
方式を実現したりするなど、入出力バンド幅とプロセッ
サ応答時間の間でトレード・オフを行なう。以前の方法
よりよいが、これでもまだ入出力バンド幅が最適化され
ない。
さらに、ある種のプロセッサでは、キャッシュをロード
するたびに、キャッシュの制御で時間が失われる。その
上、論理回路を追加しなければならず、キャッシュ・ラ
イン無効化の制御、すなわち、キャッシュ内容とメモリ
内容の間の一貫性の維持のため、プロセッサ時間が更に
浪費される。
するたびに、キャッシュの制御で時間が失われる。その
上、論理回路を追加しなければならず、キャッシュ・ラ
イン無効化の制御、すなわち、キャッシュ内容とメモリ
内容の間の一貫性の維持のため、プロセッサ時間が更に
浪費される。
本発明の目的は、複数のユーザが共通メモリを共用する
システムで使用できるよう効率的かつ単純なメモリ・コ
ントローラを提供することである。ユーザはキャッシュ
を有する少なくとも1台のプロセッサと、少なくとも1
本の直接アクセス・メモリ・バスを介してメモリに接続
された入出力アダプタなどの装置を含んでいる。
システムで使用できるよう効率的かつ単純なメモリ・コ
ントローラを提供することである。ユーザはキャッシュ
を有する少なくとも1台のプロセッサと、少なくとも1
本の直接アクセス・メモリ・バスを介してメモリに接続
された入出力アダプタなどの装置を含んでいる。
C.問題点を解決するための手段 本発明によるメモリ制御サブシステムは、複数のユーザ
によってアクセスされるメモリを含むデータ処理システ
ムで使用されるものである。ユーザには、それぞれメモ
リ内容の少なくとも1ワードを記憶する複数のキャッシ
ュ・ラインとして構成されたキャッシュ記憶手段をもつ
少なくとも1台のプロセッサ、およびそれを介してメモ
リに直接アクセスする入出力装置を接続する少なくとも
1本の直接メモリ・アクセス(DMA)バスが含まれ、前
記キャッシュ記憶手段はプロセッサのメモリ・アクセス
要求がキャッシュ記憶手段でヒットするかどうかに応じ
てキャッシュ・ヒットまたはキャッシュ・ミス制御信号
を供給する。これらのユーザはメモリにアクセスしたい
と要求を出す。
によってアクセスされるメモリを含むデータ処理システ
ムで使用されるものである。ユーザには、それぞれメモ
リ内容の少なくとも1ワードを記憶する複数のキャッシ
ュ・ラインとして構成されたキャッシュ記憶手段をもつ
少なくとも1台のプロセッサ、およびそれを介してメモ
リに直接アクセスする入出力装置を接続する少なくとも
1本の直接メモリ・アクセス(DMA)バスが含まれ、前
記キャッシュ記憶手段はプロセッサのメモリ・アクセス
要求がキャッシュ記憶手段でヒットするかどうかに応じ
てキャッシュ・ヒットまたはキャッシュ・ミス制御信号
を供給する。これらのユーザはメモリにアクセスしたい
と要求を出す。
前記メモリ制御サブシステムは、メモリ・アクセス制御
手段、プロセッサ制御手段およびDMA制御手段を含む。
手段、プロセッサ制御手段およびDMA制御手段を含む。
メモリ・アクセス制御手段(24)は、ユーザの要求に応
じて、選択されたユーザにメモリへのアクセスを認め、
選択されたユーザから要求されたメモリ書込み動作また
は読取り動作を制御する。
じて、選択されたユーザにメモリへのアクセスを認め、
選択されたユーザから要求されたメモリ書込み動作また
は読取り動作を制御する。
プロセッサ制御手段(20)は、 選択されたメモリ・アドレスでの書込み動作を要求する
プロセッサからのメモリ・アクセス要求に応じて、プロ
セッサがその動作を直ちに再開できるようそのプロセッ
サに肯定応答信号を送り、利用可能な場合メモリ要求が
メモリ制御手段によってサービスされるようにメモリ要
求に関連するメモリ・アドレスとデータをスタックする
メモリ書込み制御手段、および キャッシュ・ミス制御信号が活動状態である選択された
メモリ・アドレスにあるワードの読取り動作を要求する
プロセッサからのメモリ・アクセス要求に応じて、アド
レスされたワードを含むキャッシュ・ラインのワードの
アドレスをバッファさせ、利用可能な場合それをメモリ
制御手段に送り、これらのアドレスから読み取られたデ
ータをプロセッサとキャッシュ記憶手段に送るメモリ読
取り制御手段から構成される。
プロセッサからのメモリ・アクセス要求に応じて、プロ
セッサがその動作を直ちに再開できるようそのプロセッ
サに肯定応答信号を送り、利用可能な場合メモリ要求が
メモリ制御手段によってサービスされるようにメモリ要
求に関連するメモリ・アドレスとデータをスタックする
メモリ書込み制御手段、および キャッシュ・ミス制御信号が活動状態である選択された
メモリ・アドレスにあるワードの読取り動作を要求する
プロセッサからのメモリ・アクセス要求に応じて、アド
レスされたワードを含むキャッシュ・ラインのワードの
アドレスをバッファさせ、利用可能な場合それをメモリ
制御手段に送り、これらのアドレスから読み取られたデ
ータをプロセッサとキャッシュ記憶手段に送るメモリ読
取り制御手段から構成される。
DMA制御手段は、 DMAバスを介してメモリから入出力装置に送るべきデー
タ・バースト、または入出力装置からメモリに送るべき
データ・バーストを記憶することができるデータ・バッ
ファ手段。
タ・バースト、または入出力装置からメモリに送るべき
データ・バーストを記憶することができるデータ・バッ
ファ手段。
プロセッサからのメモリ・アクセス要求に応じて、DMA
制御手段によって開始されたメモリ転送をキャッシュ・
ライン境界で中断させてプロセッサ要求にサービスし、
その後バースト転送を再開する手段、および DMA制御手段によって開始されたメモリ書込み動作で変
更されるメモリ・アドレスに対応するキャッシュ・ライ
ンを無効化する手段から構成される。
制御手段によって開始されたメモリ転送をキャッシュ・
ライン境界で中断させてプロセッサ要求にサービスし、
その後バースト転送を再開する手段、および DMA制御手段によって開始されたメモリ書込み動作で変
更されるメモリ・アドレスに対応するキャッシュ・ライ
ンを無効化する手段から構成される。
D.実施例 第1図は、本発明を適用したシステムの全体構成と、本
発明によるメモリ制御サブシステムを3つの機能ユニッ
トに区分した形を示す。
発明によるメモリ制御サブシステムを3つの機能ユニッ
トに区分した形を示す。
例えば通信コントローラの中央制御装置であるプロセッ
サ2は、入出力バス6を介して入出力アダプタ4に接続
される。入出力バス6は、プロセッサ2とアダプタ4の
間での制御情報およびアドレス情報の交換に使用され
る。アダプタ4は、高速線8との間でビットを送受信す
る高速アダプタであると仮定する。送受信ビット・スト
リームは直接メモリ・アクセス(DMA)バス12を介して
システム・メモリ10に記憶される。バスへのアクセスが
認められると、アダプタ4は、DMAバス12に開始記憶ア
ドレスおよびバースト長を入力することにより転送を開
始する。
サ2は、入出力バス6を介して入出力アダプタ4に接続
される。入出力バス6は、プロセッサ2とアダプタ4の
間での制御情報およびアドレス情報の交換に使用され
る。アダプタ4は、高速線8との間でビットを送受信す
る高速アダプタであると仮定する。送受信ビット・スト
リームは直接メモリ・アクセス(DMA)バス12を介して
システム・メモリ10に記憶される。バスへのアクセスが
認められると、アダプタ4は、DMAバス12に開始記憶ア
ドレスおよびバースト長を入力することにより転送を開
始する。
メモリ10はどんな型式(静的または動的)のものも使用
できる。連続するワードがより迅速にアクセスされるペ
ージ・モード機能をもち、4バイトの幅であると仮定す
るが、他のどんな構成にも適合できる。
できる。連続するワードがより迅速にアクセスされるペ
ージ・モード機能をもち、4バイトの幅であると仮定す
るが、他のどんな構成にも適合できる。
メモリ10へのアクセスはメモリ制御サブシステム14によ
って制御される。プロセッサ2は様々なロード命令およ
び記憶命令によりメモリ10にアクセスする。プロセッサ
・キャッシュ16はフル・アソシアティブおよびセット・
アソシアティブのいずれでもよく、そのラインはNバイ
トである。話を簡単にするために、Nが16、すなわち4
ワードであると仮定する。キャッシュは2つの従来の型
式(ストア・スルーおよびストア・イン)のどちらのも
のでも使用できる。書込み要求がキャッシュ16とメモリ
10の両方で実行される場合、キャッシュはストア・スル
ー・キャッシュである。書込み要求がキャッシュ16のみ
で実行され、メモリ10がキャッシュ・ライン置換時に更
新される場合、キャッシュはストア・イン・キャッシュ
である。
って制御される。プロセッサ2は様々なロード命令およ
び記憶命令によりメモリ10にアクセスする。プロセッサ
・キャッシュ16はフル・アソシアティブおよびセット・
アソシアティブのいずれでもよく、そのラインはNバイ
トである。話を簡単にするために、Nが16、すなわち4
ワードであると仮定する。キャッシュは2つの従来の型
式(ストア・スルーおよびストア・イン)のどちらのも
のでも使用できる。書込み要求がキャッシュ16とメモリ
10の両方で実行される場合、キャッシュはストア・スル
ー・キャッシュである。書込み要求がキャッシュ16のみ
で実行され、メモリ10がキャッシュ・ライン置換時に更
新される場合、キャッシュはストア・イン・キャッシュ
である。
キャッシュ16とプロセッサ2はプロセッサ/キャッシュ
・バス18を介してメモリ制御サブシステム14に接続され
る。
・バス18を介してメモリ制御サブシステム14に接続され
る。
第1図に概略的に示すように、メモリ制御サブシステム
14は3つの機能ユニットに区分される。すなわち、プロ
セッサ・コントローラ(PC)20、DMAコントローラ(D
C)22およびメモリ・コントローラ(MC)24である。メ
モリ制御サブシステム14の3つの機能ユニットの構成を
第2図に示す。
14は3つの機能ユニットに区分される。すなわち、プロ
セッサ・コントローラ(PC)20、DMAコントローラ(D
C)22およびメモリ・コントローラ(MC)24である。メ
モリ制御サブシステム14の3つの機能ユニットの構成を
第2図に示す。
第2図を説明する前に、選択されたアダプタに接続され
ている選択された線との間でデータ・ビット・ストリー
ムを送受信するために実施される送受信プロセスについ
て手短かに説明する。
ている選択された線との間でデータ・ビット・ストリー
ムを送受信するために実施される送受信プロセスについ
て手短かに説明する。
たとえば、プロセッサ2から選択されたアダプタにデー
タ・バーストを転送させる送信動作は以下に示すように
して開始される。プロセッサ2は開始アドレスのところ
からメモリ10にデータ・バーストを記憶させる。プロセ
ッサ2は、バス6を介して選択されたアダプタに送信コ
マンドを送る。送信コマンド、開始アドレスおよびバー
スト長が、選択されたアダプタによってDMAバス12を介
してDMAコントローラ22に送られる。
タ・バーストを転送させる送信動作は以下に示すように
して開始される。プロセッサ2は開始アドレスのところ
からメモリ10にデータ・バーストを記憶させる。プロセ
ッサ2は、バス6を介して選択されたアダプタに送信コ
マンドを送る。送信コマンド、開始アドレスおよびバー
スト長が、選択されたアダプタによってDMAバス12を介
してDMAコントローラ22に送られる。
次に、DMAコントローラ22は、データ・バーストをメモ
リ10からコントローラ22のDMAバッファ80に転送させ、
次いで選択されたアダプタに転送させる。
リ10からコントローラ22のDMAバッファ80に転送させ、
次いで選択されたアダプタに転送させる。
アダプタが受け取ったデータ・バーストをメモリ10に転
送する受信動作は、以下に示すようにして開始される。
プロセッサ2は選択されたアダプタに受信コマンドを送
り、次いで、データ・バーストを記憶すべきメモリの開
始アドレスとバースト長を送る。この情報が、DMAコン
トローラ22に送られ、データ・バーストがDMAバッファ8
0に記憶される。バースト全体が受信されると、それが
メモリ10に転送される。
送する受信動作は、以下に示すようにして開始される。
プロセッサ2は選択されたアダプタに受信コマンドを送
り、次いで、データ・バーストを記憶すべきメモリの開
始アドレスとバースト長を送る。この情報が、DMAコン
トローラ22に送られ、データ・バーストがDMAバッファ8
0に記憶される。バースト全体が受信されると、それが
メモリ10に転送される。
メモリ・コントローラ24は、エラー訂正機構30とメモリ
制御回路32を用いて、メモリ10へのアクセスを制御す
る。メモリ10に書き込むべき、またはメモリ10から読み
取るべきデータは、メモリ・バス26のデータ線34に供給
される。メモリ・アドレスはアドレス線36に供給され
る。
制御回路32を用いて、メモリ10へのアクセスを制御す
る。メモリ10に書き込むべき、またはメモリ10から読み
取るべきデータは、メモリ・バス26のデータ線34に供給
される。メモリ・アドレスはアドレス線36に供給され
る。
論理回路38は、プロセッサ・コントローラ20とDMAコン
トローラ22からメモリ・アクセス要求を受け取って調停
し、プロセッサ・コントローラ20とDMAコントローラ22
が実行するオペレーションの順序を制御するためのタイ
ミング信号をバス39上に生成する。バス39は複数の線を
含んでいる。論理回路38は、バス線の1本に特定の動作
を開始させる活動信号を生成する。図面には、1本の線
39だけを示す。
トローラ22からメモリ・アクセス要求を受け取って調停
し、プロセッサ・コントローラ20とDMAコントローラ22
が実行するオペレーションの順序を制御するためのタイ
ミング信号をバス39上に生成する。バス39は複数の線を
含んでいる。論理回路38は、バス線の1本に特定の動作
を開始させる活動信号を生成する。図面には、1本の線
39だけを示す。
これを行なうために、論理回路38は、プロセッサ・コン
トローラ20から線40上のプロセッサ要求信号、また線41
上で読取り/書込み(R/W)制御信号を受け取り、DMAコ
ントローラ22から線42上でDMA要求信号、線44上でプロ
セッサ最終動作信号、また線46上でDMA最終動作信号を
受け取る。
トローラ20から線40上のプロセッサ要求信号、また線41
上で読取り/書込み(R/W)制御信号を受け取り、DMAコ
ントローラ22から線42上でDMA要求信号、線44上でプロ
セッサ最終動作信号、また線46上でDMA最終動作信号を
受け取る。
論理回路38は、プロセッサ・ユーザ線48またはDMAユー
ザ線50上で、1つのユーザにメモリへのアクセスを認め
る活動信号を生成する。要求が衝突した場合、DMAコン
トローラ22とプロセッサ・コントローラ20の要求が交互
にサービスされる。複数のプロセッサ・ユーザとDMAユ
ーザがある場合、1つのユーザ要求が選択できるよう
に、異なるユーザの間で優先順位が設定される。
ザ線50上で、1つのユーザにメモリへのアクセスを認め
る活動信号を生成する。要求が衝突した場合、DMAコン
トローラ22とプロセッサ・コントローラ20の要求が交互
にサービスされる。複数のプロセッサ・ユーザとDMAユ
ーザがある場合、1つのユーザ要求が選択できるよう
に、異なるユーザの間で優先順位が設定される。
メモリ・コントローラ24によってメモリ・ユーザとして
選択されたユーザは、後で説明するように、その最終動
作線を活動化してメモリを放棄するまで、望むだけの間
サービスを要求できる。
選択されたユーザは、後で説明するように、その最終動
作線を活動化してメモリを放棄するまで、望むだけの間
サービスを要求できる。
プロセッサ・コントローラ20は、メモリに書き込むべ
き、またはそこから読み取るべきデータを記憶するデー
タ・レジスタ手段51を含む。第2図に概略的に示すよう
に、データ・レジスタ手段51はプロセッサ・バス18のデ
ータ線52によってプロセッサ2に接続され、バス54を介
してエラー訂正機構30に接続されている。
き、またはそこから読み取るべきデータを記憶するデー
タ・レジスタ手段51を含む。第2図に概略的に示すよう
に、データ・レジスタ手段51はプロセッサ・バス18のデ
ータ線52によってプロセッサ2に接続され、バス54を介
してエラー訂正機構30に接続されている。
メモリ・アドレスは、プロセッサ2によりプロセッサ・
バス18のアドレス線58を介してメモリ・アドレス・レジ
スタ60に供給される。また、後に説明するように、特定
の条件でキャッシュ・ラインを無効にさせるために、メ
モリ・アドレスがキャッシュ無効化レジスタ64に送られ
る。
バス18のアドレス線58を介してメモリ・アドレス・レジ
スタ60に供給される。また、後に説明するように、特定
の条件でキャッシュ・ラインを無効にさせるために、メ
モリ・アドレスがキャッシュ無効化レジスタ64に送られ
る。
プロセッサ・コントローラ20は、プロセッサ2から線68
を介してメモリ要求信号を受け取る論理構成66を含んで
いる。メモリ要求に関連するデータとアドレスは、メモ
リ・コントローラ24が使用中の場合スタックされる。プ
ロセッサ2はメモリ10へのアクセスを要求するとき、線
68上でメモリ要求信号、線69上で読取り/書込み(R/
W)制御信号、また線58上でアクセスすべきメモリ・ア
ドレスを送る。これらの信号とアドレスはキャッシュ16
にも供給される。本発明の好ましい実施例では、プロセ
ッサ2からのメモリ要求により、1ワード、すなわち4
バイトがプロセッサ2とメモリ10の間で転送される。
を介してメモリ要求信号を受け取る論理構成66を含んで
いる。メモリ要求に関連するデータとアドレスは、メモ
リ・コントローラ24が使用中の場合スタックされる。プ
ロセッサ2はメモリ10へのアクセスを要求するとき、線
68上でメモリ要求信号、線69上で読取り/書込み(R/
W)制御信号、また線58上でアクセスすべきメモリ・ア
ドレスを送る。これらの信号とアドレスはキャッシュ16
にも供給される。本発明の好ましい実施例では、プロセ
ッサ2からのメモリ要求により、1ワード、すなわち4
バイトがプロセッサ2とメモリ10の間で転送される。
プロセッサ・コントローラ20の論理回路66は、キャッシ
ュ・ミス制御信号を線70上で受け取る。この制御信号
は、プロセッサ要求アドレスがキャッシュにヒットしな
いとき、すなわち、その時アドレスされた位置がキャッ
シュ中にないときに活動化される。
ュ・ミス制御信号を線70上で受け取る。この制御信号
は、プロセッサ要求アドレスがキャッシュにヒットしな
いとき、すなわち、その時アドレスされた位置がキャッ
シュ中にないときに活動化される。
書込み要求は、線70上のキャッシュ・ミス信号が活動化
されようともされなくとも、バッファされ、肯定応答信
号ACKが、プロセッサ・コントローラ20からACK線72を介
してプロセッサ2に送られる。
されようともされなくとも、バッファされ、肯定応答信
号ACKが、プロセッサ・コントローラ20からACK線72を介
してプロセッサ2に送られる。
メモリ・コントローラ24が利用できるとき、実際の書込
み動作が行なわれる。
み動作が行なわれる。
読取り要求に対してキャッシュ・ミス信号が活動化され
ない場合、すなわち読取りヒットが生じた場合は、メモ
リ10はアクセスされないので、読取り要求はプロセッサ
・コントローラ20によって放棄される。
ない場合、すなわち読取りヒットが生じた場合は、メモ
リ10はアクセスされないので、読取り要求はプロセッサ
・コントローラ20によって放棄される。
キャッシュ・ミス信号が活動化されると、読取り要求は
バッファされる。この場合、プロセッサ・コントローラ
20は、線74上のデータ有効タグを用いて、ミスの生じた
ラインをキャッシュ16にロードさせる。
バッファされる。この場合、プロセッサ・コントローラ
20は、線74上のデータ有効タグを用いて、ミスの生じた
ラインをキャッシュ16にロードさせる。
このようにして、キャッシュ16はプロセッサ・コントロ
ーラ20によって制御され、その動作はプロセッサ2にと
って完全にトランスペアレントである。
ーラ20によって制御され、その動作はプロセッサ2にと
って完全にトランスペアレントである。
プロセッサ・コントローラ20は、DMAコントローラ22か
ら線76上に送られたキャッシュ無効化要求をスタックす
る。かくして、直接メモリ・アクセス動作がその時キャ
ッシュ16にあるメモリ位置で実行されるとき、無効化制
御信号を使ってキャッシュ・ラインが無効化される。無
効化は、線78上のライン無効化タグを活動化しながらレ
ジスタ64によってキャッシュ16にメモリ・アドレスを送
るプロセッサ・コントローラ20によって実行される。ア
ドレスされたラインがキャッシュ16にある場合、その対
応するキャッシュ・ディレクトリ項目が消去される。な
ければ無効化は不要である。
ら線76上に送られたキャッシュ無効化要求をスタックす
る。かくして、直接メモリ・アクセス動作がその時キャ
ッシュ16にあるメモリ位置で実行されるとき、無効化制
御信号を使ってキャッシュ・ラインが無効化される。無
効化は、線78上のライン無効化タグを活動化しながらレ
ジスタ64によってキャッシュ16にメモリ・アドレスを送
るプロセッサ・コントローラ20によって実行される。ア
ドレスされたラインがキャッシュ16にある場合、その対
応するキャッシュ・ディレクトリ項目が消去される。な
ければ無効化は不要である。
DMAコントローラ22は、DMAバッファ80を含んでいる。DM
Aバッファ80中では、データ・レジスタ82を介してバス1
2上で送受信されるDMAバーストを一時的に記憶できる。
アダプタ4とDMAバッファ80の間での読取りデータまた
は書込みデータの転送中、メモリ・コントローラ24は関
係せず、プロセッサ要求にサービスすることができる。
Aバッファ80中では、データ・レジスタ82を介してバス1
2上で送受信されるDMAバーストを一時的に記憶できる。
アダプタ4とDMAバッファ80の間での読取りデータまた
は書込みデータの転送中、メモリ・コントローラ24は関
係せず、プロセッサ要求にサービスすることができる。
DMAコントローラ22は、メモリ・アドレス・カウンタ84
とDC-MC転送カウンタ86を含んでいる。カウンタ84はDMA
バス12に接続され、メモリ・アドレスを含む。メモリ・
アドレス・カウンタ84の内容はバス62を介してメモリ制
御回路32に供給される。メモリ10に書き込むべき、また
はメモリ10から読み取るべきデータは、バス54を介し
て、DMAバッファ80から送られ、またはDMAバッファ80に
書き込まれる。
とDC-MC転送カウンタ86を含んでいる。カウンタ84はDMA
バス12に接続され、メモリ・アドレスを含む。メモリ・
アドレス・カウンタ84の内容はバス62を介してメモリ制
御回路32に供給される。メモリ10に書き込むべき、また
はメモリ10から読み取るべきデータは、バス54を介し
て、DMAバッファ80から送られ、またはDMAバッファ80に
書き込まれる。
第2図を見るとわかるように、プロセッサ・コントロー
ラ20とDMAコントローラ22は、メモリ・コントローラ24
に対して同じアドレス・バス62を共用する。したがっ
て、DMA書込み動作中には、プロセッサ・コントローラ2
0は、線76上の無効化要求によって要求されたとき、他
の制御や時間の喪失や特殊なプロトコルなしに、DMAコ
ントローラ22からメモリ・コントローラ24に送られるア
ドレスをスチールすることができる。このアドレス・サ
ンプリングはメモリ・コントローラ24にとって完全にト
ランスペアレントである。
ラ20とDMAコントローラ22は、メモリ・コントローラ24
に対して同じアドレス・バス62を共用する。したがっ
て、DMA書込み動作中には、プロセッサ・コントローラ2
0は、線76上の無効化要求によって要求されたとき、他
の制御や時間の喪失や特殊なプロトコルなしに、DMAコ
ントローラ22からメモリ・コントローラ24に送られるア
ドレスをスチールすることができる。このアドレス・サ
ンプリングはメモリ・コントローラ24にとって完全にト
ランスペアレントである。
論理回路88は、線40上でプロセッサ要求信号、線50上で
DMAユーザ信号、またバス12からDMA書込み信号を受け取
り、線42上でDMA要求信号、線46上でDMA最終動作信号、
線76上で無効化要求信号を生成する。
DMAユーザ信号、またバス12からDMA書込み信号を受け取
り、線42上でDMA要求信号、線46上でDMA最終動作信号、
線76上で無効化要求信号を生成する。
プロセッサ要求線40はメモリ・コントローラ24だけでな
くDMAコントローラ22にも接続される。DMAコントローラ
22から線42上に送られたDMA要求は、メモリ・コントロ
ーラ24に供給される。メモリ・コントローラ24は、プロ
セッサ要求またはDMA要求を選択し、プロセッサ・ユー
ザ線48またはDMAユーザ線50を活動化する。
くDMAコントローラ22にも接続される。DMAコントローラ
22から線42上に送られたDMA要求は、メモリ・コントロ
ーラ24に供給される。メモリ・コントローラ24は、プロ
セッサ要求またはDMA要求を選択し、プロセッサ・ユー
ザ線48またはDMAユーザ線50を活動化する。
DMA転送中、すなわち、第2図に示したデータ経路およ
びメモリ・バス26を介するDMAバッファ80とメモリ10の
間での転送中に、DMAコントローラ22はスライス機能を
使用する。
びメモリ・バス26を介するDMAバッファ80とメモリ10の
間での転送中に、DMAコントローラ22はスライス機能を
使用する。
プロセッサ要求線40が非活動状態にある限り、DMA転送
が続く。
が続く。
DMA転送中にプロセッサ要求が出た場合、DMAコントロー
ラ22は、次のキャッシュ・ライン境界でそのバッファを
スライスする。これは、現在のキャッシュ・ラインの最
後のワードをヒットするとき最終動作制御線46を活動化
することで実行される。N=16バイトを含むキャッシュ
・ラインの場合、このワードのアドレスの下位ビットは
1100であり、N=32バイトのキャッシュ・ラインでは、
それは11100である。
ラ22は、次のキャッシュ・ライン境界でそのバッファを
スライスする。これは、現在のキャッシュ・ラインの最
後のワードをヒットするとき最終動作制御線46を活動化
することで実行される。N=16バイトを含むキャッシュ
・ラインの場合、このワードのアドレスの下位ビットは
1100であり、N=32バイトのキャッシュ・ラインでは、
それは11100である。
これは一時的にDMA転送を終了させる効果をもつ。しか
し、メモリ・コントローラ24がプロセッサ2にサービス
を始めるとき、DMAコントローラ22はその要求線42を活
動化する。プロセッサ2へのサービスは低レベルにある
プロセッサ要求線40をモニタすることで感知される。す
なわち、プロセッサ要求がサービスされるとすぐ、メモ
リ・コントローラ22はDMAコントローラ要求を許可す
る。かくして、DMAコントローラ22は、新しいラインの
読取りまたは書込みを開始することでそのバースト転送
を再開する。この新しいラインのアドレスの下位ビット
は、N=16バイトのとき0000、N=32バイトのとき0000
0である。
し、メモリ・コントローラ24がプロセッサ2にサービス
を始めるとき、DMAコントローラ22はその要求線42を活
動化する。プロセッサ2へのサービスは低レベルにある
プロセッサ要求線40をモニタすることで感知される。す
なわち、プロセッサ要求がサービスされるとすぐ、メモ
リ・コントローラ22はDMAコントローラ要求を許可す
る。かくして、DMAコントローラ22は、新しいラインの
読取りまたは書込みを開始することでそのバースト転送
を再開する。この新しいラインのアドレスの下位ビット
は、N=16バイトのとき0000、N=32バイトのとき0000
0である。
再び他のプロセッサ要求が到来すると、DMAコントロー
ラ22は、次のキャッシュライン境界で、すなわち、N=
16バイトの場合1100という下位4ビット、N=32バイト
の場合11100という下位5ビットが次に発生したとき
に、すなわち、N=16の場合少なくとも4つのワードが
転送されN=32の場合8ワードが転送されたとき、その
バーストをスライスする。
ラ22は、次のキャッシュライン境界で、すなわち、N=
16バイトの場合1100という下位4ビット、N=32バイト
の場合11100という下位5ビットが次に発生したとき
に、すなわち、N=16の場合少なくとも4つのワードが
転送されN=32の場合8ワードが転送されたとき、その
バーストをスライスする。
そうでない場合、DMA転送は完了するまで継続する。
本発明によると、第3図に示すメモリ・コントローラ論
理回路38は、アービタ100を含んでいる。アービタ100は
線40上でプロセッサ要求信号、線42上でDMA要求信号、
線44上でプロセッサ最終動作信号、また線46上でDMA最
終動作信号を受け取り、線48または50上に活動プロセッ
サ・ユーザ信号またはDMAユーザ信号を供給する。2つ
の要求が衝突する場合、線48または50上の信号は交互に
活動状態になり、プロセッサ・コントローラ20とDMAコ
ントローラ22に交互にサービスする。
理回路38は、アービタ100を含んでいる。アービタ100は
線40上でプロセッサ要求信号、線42上でDMA要求信号、
線44上でプロセッサ最終動作信号、また線46上でDMA最
終動作信号を受け取り、線48または50上に活動プロセッ
サ・ユーザ信号またはDMAユーザ信号を供給する。2つ
の要求が衝突する場合、線48または50上の信号は交互に
活動状態になり、プロセッサ・コントローラ20とDMAコ
ントローラ22に交互にサービスする。
要求信号が線40または42上に現れると、要求線102は活
動化されて、シーケンサ104が動作し始める。
動化されて、シーケンサ104が動作し始める。
線41を介して読取り/書込み(R/W)制御信号が、線44
を介してプロセッサ最終動作信号が、また線46を介して
DMA最終動作信号がシーケンサ104に供給される。シーケ
ンサ104はそれらから線39上で、論理回路66および88が
実行する動作を制御するタイミング信号を生成する。シ
ーケンサ104はまた、線106および108上で、メモリ制御
回路32に送られるバス62上のアドレス・ビットおよびエ
ラー訂正回路30から受け取られ、またはエラー訂正回路
30に送られるデータ・ビットのラッチ・アセンブリ110
および112へのゲート入力を制御する活動信号を生成す
る。
を介してプロセッサ最終動作信号が、また線46を介して
DMA最終動作信号がシーケンサ104に供給される。シーケ
ンサ104はそれらから線39上で、論理回路66および88が
実行する動作を制御するタイミング信号を生成する。シ
ーケンサ104はまた、線106および108上で、メモリ制御
回路32に送られるバス62上のアドレス・ビットおよびエ
ラー訂正回路30から受け取られ、またはエラー訂正回路
30に送られるデータ・ビットのラッチ・アセンブリ110
および112へのゲート入力を制御する活動信号を生成す
る。
次に、第4図を参照して論理回路66について説明する。
論理回路66は、線78上でライン無効化信号を生成し、プ
ロセッサ/DMAバス62上のアドレスをキャッシュ無効化レ
ジスタ64に供給するキャッシュ・ライン無効化回路200
を含んでいる。
ロセッサ/DMAバス62上のアドレスをキャッシュ無効化レ
ジスタ64に供給するキャッシュ・ライン無効化回路200
を含んでいる。
回路200は、線48上のプロセッサ・ユーザ信号が非活動
状態のときANDゲート204の一方の入力端に活動信号を供
給するインバータ202を含んでいる。ANDゲート204のも
う一方の入力端には、ライン無効化要求線76が接続され
ている。
状態のときANDゲート204の一方の入力端に活動信号を供
給するインバータ202を含んでいる。ANDゲート204のも
う一方の入力端には、ライン無効化要求線76が接続され
ている。
ライン無効化要求線76が活動状態になると、ラッチ206
がセットされ、そのライン無効化出力線78上に活動信号
を供給する。この信号は、バス62上のアドレス・ビット
を記憶するラッチ・アセンブリ208にも供給される。ア
ドレス・ビットはドライバ210を介してキャッシュ無効
化レジスタ64に転送される。かくして、メモリ・アドレ
スがキャッシュ・ディレクトリ(図示せず)に供給さ
れ、アドレスされたメモリ位置がキャッシュにある場
合、そのキャッシュ・ラインは無効にされる。
がセットされ、そのライン無効化出力線78上に活動信号
を供給する。この信号は、バス62上のアドレス・ビット
を記憶するラッチ・アセンブリ208にも供給される。ア
ドレス・ビットはドライバ210を介してキャッシュ無効
化レジスタ64に転送される。かくして、メモリ・アドレ
スがキャッシュ・ディレクトリ(図示せず)に供給さ
れ、アドレスされたメモリ位置がキャッシュにある場
合、そのキャッシュ・ラインは無効にされる。
プロセッサ・コントローラ20が非活動状態のとき、遊休
線212上の信号がANDゲート214と216を条件付ける。プロ
セッサ2から線68を介して送られるメモリ要求信号がAN
Dゲート214と216の1つの入力端に供給される。
線212上の信号がANDゲート214と216を条件付ける。プロ
セッサ2から線68を介して送られるメモリ要求信号がAN
Dゲート214と216の1つの入力端に供給される。
線69上の読取り/書込み(R/W)制御信号が、線70上の
キャッシュ・ミス信号と共にANDゲート216に供給され
る。アップ・レベルの読取り/書込み(R/W)制御信号
が読取り制御信号であると仮定する。すなわち、メモリ
要求がメモリ読取り要求であるとき、ANDゲート216はそ
の出力線218上に活動読取り信号を供給する。
キャッシュ・ミス信号と共にANDゲート216に供給され
る。アップ・レベルの読取り/書込み(R/W)制御信号
が読取り制御信号であると仮定する。すなわち、メモリ
要求がメモリ読取り要求であるとき、ANDゲート216はそ
の出力線218上に活動読取り信号を供給する。
線69上の信号はインバータ220で反転される。インバー
タ220の出力信号はANDゲート214に供給される。ANDゲー
ト214は線220上で活動書込み信号を生成する。線220上
の活動信号は、ラッチ222をセットし、ラッチ222は線72
上でACK信号を生成し、それがプロセッサ2に送られ
る。
タ220の出力信号はANDゲート214に供給される。ANDゲー
ト214は線220上で活動書込み信号を生成する。線220上
の活動信号は、ラッチ222をセットし、ラッチ222は線72
上でACK信号を生成し、それがプロセッサ2に送られ
る。
線218上の活動読取り信号はラッチ224をセットする。ラ
ッチ222と224の出力信号がORゲート226で論理和され、O
Rゲート226は、その出力線40を介してメモリ・コントロ
ーラ24の論理回路38にプロセッサ要求信号を供給する。
ッチ222と224の出力信号がORゲート226で論理和され、O
Rゲート226は、その出力線40を介してメモリ・コントロ
ーラ24の論理回路38にプロセッサ要求信号を供給する。
インバータ228で反転されたラッチ222の出力信号とラッ
チ224の出力信号がORゲート230で論理和され、ORゲート
230は線41を介してメモリ・コントローラ24の論理回路3
8に読取り/書込み(R/W)制御信号を供給する。
チ224の出力信号がORゲート230で論理和され、ORゲート
230は線41を介してメモリ・コントローラ24の論理回路3
8に読取り/書込み(R/W)制御信号を供給する。
線40上のプロセッサ要求信号はラッチ232にラッチされ
る。線220と218上の信号が、ORゲート234で論理和さ
れ、ORゲート234は、読取り動作または書込み動作をプ
ロセッサが要求したとき、その出力線236を介して活動
信号を供給する。この信号によりメモリ・アドレス・レ
ジスタ60の内容がラッチ・アセンブリ238に記憶され
る。
る。線220と218上の信号が、ORゲート234で論理和さ
れ、ORゲート234は、読取り動作または書込み動作をプ
ロセッサが要求したとき、その出力線236を介して活動
信号を供給する。この信号によりメモリ・アドレス・レ
ジスタ60の内容がラッチ・アセンブリ238に記憶され
る。
書込み動作が要求される場合、線220上の活動信号によ
り、(メモリ10に書き込むべきデータを含む)データ・
レジスタ51の入力データの内容がラッチ・アセンブリ24
0にロードされる。
り、(メモリ10に書き込むべきデータを含む)データ・
レジスタ51の入力データの内容がラッチ・アセンブリ24
0にロードされる。
ラッチ232の出力信号、線48上のプロセッサ・ユーザ信
号、およびメモリ・コントローラ24のシーケンサ104か
ら到来する線39上のタイミング信号がANDゲート242に供
給される。
号、およびメモリ・コントローラ24のシーケンサ104か
ら到来する線39上のタイミング信号がANDゲート242に供
給される。
ANDゲート242の出力線244上の活動信号はドライバ246に
供給される。このドライバ246により、ラッチ・アセン
ブリ238に含まれているアドレス・ビットがアドレス・
バス62を介してメモリ・コントローラ24に供給される。
供給される。このドライバ246により、ラッチ・アセン
ブリ238に含まれているアドレス・ビットがアドレス・
バス62を介してメモリ・コントローラ24に供給される。
線244上の信号は、ANDゲート247に供給される。ANDゲー
ト247は線220上の書込み信号によって条件付けられる。
ト247は線220上の書込み信号によって条件付けられる。
したがって、書込み動作が要求されると、ANDゲート247
の出力線上の活動信号により、ラッチ・アセンブリ240
に含まれるデータ・ビットがデータ・バス54を介してメ
モリコントローラ24に供給され、書込み動作を実行させ
る。
の出力線上の活動信号により、ラッチ・アセンブリ240
に含まれるデータ・ビットがデータ・バス54を介してメ
モリコントローラ24に供給され、書込み動作を実行させ
る。
線244上の出力信号はORゲート250の一方の出力端に供給
され、ORゲート250は、その出力端44上に活動出力信号
を生成する。この信号は、書込み動作が完了したことを
示す。
され、ORゲート250は、その出力端44上に活動出力信号
を生成する。この信号は、書込み動作が完了したことを
示す。
読取り動作が要求される場合、線70上のキャッシュ・ミ
ス信号が活動状態であると仮定して、4メモリ・ワード
を含むと仮定したラインが、線74上のデータ有効タグを
用いてキャッシュ16にロードされることになる。
ス信号が活動状態であると仮定して、4メモリ・ワード
を含むと仮定したラインが、線74上のデータ有効タグを
用いてキャッシュ16にロードされることになる。
この場合、4ワードをメモリ10から読み取って、キャッ
シュ16に転送しなければならない。
シュ16に転送しなければならない。
ロード動作は、線218上の読取り信号によって「4」に
セットされるキャッシュ・ライン・ワード・カウンタ25
1の制御下で実行される。
セットされるキャッシュ・ライン・ワード・カウンタ25
1の制御下で実行される。
線39上のタイミング信号はロード動作を制御する。AND
ゲート244の活動出力信号により、カウンタ251が減分さ
れ、ラッチ・アセンブリ238内のアドレス値が増分され
る。
ゲート244の活動出力信号により、カウンタ251が減分さ
れ、ラッチ・アセンブリ238内のアドレス値が増分され
る。
これにより、メモリ内の4つのワードは、ドライバ246
を介してバス62上に4つのワード・アドレスを送ること
により順次アドレスされる。アドレスされたメモリ位置
に記憶されたデータは、バス54を介してエラー訂正回路
30から読み取られ転送される。
を介してバス62上に4つのワード・アドレスを送ること
により順次アドレスされる。アドレスされたメモリ位置
に記憶されたデータは、バス54を介してエラー訂正回路
30から読み取られ転送される。
カウンタ251の内容が0になると、線253上に活動信号が
生成される。この信号はOR回路250を介して最終動作線4
4に供給される。
生成される。この信号はOR回路250を介して最終動作線4
4に供給される。
ANDゲート252は線244上で出力信号を受け取り、線218か
らの読取り信号によってドライバ254に入力される活動
信号を供給するように条件付けられる。すなわち、メモ
リ10から読み取られたデータ・ワードは、ドライバ254
を介してバス54から出力データ・レジスタ51に転送さ
れ、プロセッサ/キャッシュ・バス52を介して送られ
る。データ・ワード転送が行なわれる度に、ANDゲート2
52からの出力信号が活動状態になる。この信号がデータ
有効タグとして使われ、バス52上のデータをキャッシュ
に書き込ませる。
らの読取り信号によってドライバ254に入力される活動
信号を供給するように条件付けられる。すなわち、メモ
リ10から読み取られたデータ・ワードは、ドライバ254
を介してバス54から出力データ・レジスタ51に転送さ
れ、プロセッサ/キャッシュ・バス52を介して送られ
る。データ・ワード転送が行なわれる度に、ANDゲート2
52からの出力信号が活動状態になる。この信号がデータ
有効タグとして使われ、バス52上のデータをキャッシュ
に書き込ませる。
次に第5図を参照してDMAコントローラ22の論理回路88
について説明する。
について説明する。
DMAコントローラ22とメモリ・コントローラ24の間でのD
MAバースト転送の前に、メモリ・アドレス・カウンタ84
は、バーストに割り当てられたメモリの開始アドレスの
値にセットされ、DC-MC転送カウンタ86は、転送される
ワード数で表わしたバースト長の値にセットされる。こ
れは、DMAバス上のDMA交換プロトコルを介して行なわれ
る。このことは本発明の一部ではないので、詳しくは説
明しない。
MAバースト転送の前に、メモリ・アドレス・カウンタ84
は、バーストに割り当てられたメモリの開始アドレスの
値にセットされ、DC-MC転送カウンタ86は、転送される
ワード数で表わしたバースト長の値にセットされる。こ
れは、DMAバス上のDMA交換プロトコルを介して行なわれ
る。このことは本発明の一部ではないので、詳しくは説
明しない。
次に、DMA転送が一旦開始すると、すなわち、論理回路3
8(第2図)からのDMAユーザ線50が活動化されると、線
39からのタイミング信号のために、ワードが転送される
度にメモリ・アドレス・カウンタ84の内容が増分され、
DC-MCカウンタ86の内容が減分される。
8(第2図)からのDMAユーザ線50が活動化されると、線
39からのタイミング信号のために、ワードが転送される
度にメモリ・アドレス・カウンタ84の内容が増分され、
DC-MCカウンタ86の内容が減分される。
デコーダ300と302がそれぞれカウンタ86と84の内容を復
号する。
号する。
デコーダ300は、カウンタ86の内容がゼロになり、DMA転
送が完了したことを示すと線304上に活動信号を供給す
る。これは通常の最終動作信号である。カウンタ86の内
容がしきい値より高ければ、デコーダ300は線306にも活
動信号を供給する。しきい値は、本発明の好ましい実施
例では、3にセットされ、4つ以上のワードが未転送で
あることを示す。
送が完了したことを示すと線304上に活動信号を供給す
る。これは通常の最終動作信号である。カウンタ86の内
容がしきい値より高ければ、デコーダ300は線306にも活
動信号を供給する。しきい値は、本発明の好ましい実施
例では、3にセットされ、4つ以上のワードが未転送で
あることを示す。
線306、プロセッサ要求線40およびDMAユーザ線50はAND
ゲート308に接続されている。したがってANDゲート308
は、4つ以上のワードが未転送の場合にプロセッサから
メモリ利用要求が出されたとき、その出力線310上に活
動信号を供給する。
ゲート308に接続されている。したがってANDゲート308
は、4つ以上のワードが未転送の場合にプロセッサから
メモリ利用要求が出されたとき、その出力線310上に活
動信号を供給する。
その場合、プロセッサ要求がサービスされ、DMA転送が
中断されることになる。線310上の活動信号310はラッチ
312をセットする。
中断されることになる。線310上の活動信号310はラッチ
312をセットする。
デコーダ302の出力線314上の活動信号によって示される
次のキャッシュ・ライン境界のアドレスにおいて、AND
ゲート316は線318に活動信号を供給する。この信号はDM
A転送を中断すべきことを示す。
次のキャッシュ・ライン境界のアドレスにおいて、AND
ゲート316は線318に活動信号を供給する。この信号はDM
A転送を中断すべきことを示す。
線318と304はORゲート320に接続されている。ORゲート3
20は線322上に通常の最終動作または一時的な最終動作
を示す活動信号を供給する。この信号はラッチ324をセ
ットし、ラッチ324はその出力線46上にDMA最終動作信号
を供給する。
20は線322上に通常の最終動作または一時的な最終動作
を示す活動信号を供給する。この信号はラッチ324をセ
ットし、ラッチ324はその出力線46上にDMA最終動作信号
を供給する。
DMA転送を中断すべきとき、メモリ・コントローラ24はD
MAユーザ線50を非活動状態にする。したがって、DMAユ
ーザ信号を反転させるインバータ326によって活動信号
が供給される。カウンタの内容が4以上なので、その時
非活動状態である線304上の信号はインバータ328で反転
される。インバータ326と328の出力線は、ラッチ312の
出力線と共にANDゲート330に接続されている。これによ
り、ANDゲート330は、ORゲート332を介して送られラッ
チ334をセットする活動信号を供給する。ラッチ334は線
42上に活動DMA要求信号を送る。プロセッサ要求がサー
ビスされるとき、その信号が考慮される。
MAユーザ線50を非活動状態にする。したがって、DMAユ
ーザ信号を反転させるインバータ326によって活動信号
が供給される。カウンタの内容が4以上なので、その時
非活動状態である線304上の信号はインバータ328で反転
される。インバータ326と328の出力線は、ラッチ312の
出力線と共にANDゲート330に接続されている。これによ
り、ANDゲート330は、ORゲート332を介して送られラッ
チ334をセットする活動信号を供給する。ラッチ334は線
42上に活動DMA要求信号を送る。プロセッサ要求がサー
ビスされるとき、その信号が考慮される。
プロセッサ・ユーザ・データ転送が終了してDMAユーザ
線50がメモリ・コントローラ24により再び活動化される
とすぐに、DMAコントローラ22はデータ・バースト転送
を再開できる状態になる。
線50がメモリ・コントローラ24により再び活動化される
とすぐに、DMAコントローラ22はデータ・バースト転送
を再開できる状態になる。
ORゲート332は、そのもう一方の入力端で線336上の普通
のDMA要求信号を受け取る。この信号は転送を開始する
とき、すなわち、アダプタとDMAバスを介してプロセッ
サ2から送信コマンドを受け取り、メモリ10からDMAバ
ッファ80にデータ・バーストの転送を開始するとき、ま
たはアダプタあるいはDMAバスを介してプロセッサから
受信コマンドを受け取りかつデータ・バーストがDMAバ
ッファ80に記憶されるときに活動化される。この信号
は、バス12から受け取ったコマンドを復号するDMAコマ
ンド・デコーダ337によって生成される。
のDMA要求信号を受け取る。この信号は転送を開始する
とき、すなわち、アダプタとDMAバスを介してプロセッ
サ2から送信コマンドを受け取り、メモリ10からDMAバ
ッファ80にデータ・バーストの転送を開始するとき、ま
たはアダプタあるいはDMAバスを介してプロセッサから
受信コマンドを受け取りかつデータ・バーストがDMAバ
ッファ80に記憶されるときに活動化される。この信号
は、バス12から受け取ったコマンドを復号するDMAコマ
ンド・デコーダ337によって生成される。
論理回路88のライン無効化回路は、ANDゲート339と34
2、ORゲート338とラッチ340を含んでいる。
2、ORゲート338とラッチ340を含んでいる。
バースト開始アドレスである最初のメモリ・ワード・ア
ドレスの下位2ビットは、4つの組合せ00、01、10、11
のいずれかであるが、このワードは無効化しなければな
らないキャッシュのラインに属している。
ドレスの下位2ビットは、4つの組合せ00、01、10、11
のいずれかであるが、このワードは無効化しなければな
らないキャッシュのラインに属している。
線336上の通常転送開始信号により、ラッチ340がORゲー
ト338を介してセットされる。ラッチ340の出力信号は、
線50上のDMAユーザ信号と共にANDゲート342に供給され
る。ANDゲート342は、デコーダ337から線348上に送られ
るDMA書込み制御信号によって条件付けられ、最初のア
ドレスがメモリ・コントローラ24に送られるとすぐ、線
76上に活動無効化要求信号を供給する。
ト338を介してセットされる。ラッチ340の出力信号は、
線50上のDMAユーザ信号と共にANDゲート342に供給され
る。ANDゲート342は、デコーダ337から線348上に送られ
るDMA書込み制御信号によって条件付けられ、最初のア
ドレスがメモリ・コントローラ24に送られるとすぐ、線
76上に活動無効化要求信号を供給する。
2回目から最後の転送まで、無効化要求線76が各キャッ
シュ・ライン境界で活動化される。その境界は、ワード
・アドレスの下位ビット(LSB)11に相当する。これを
行なうために、ANDゲート339はアドレスの下位2ビット
が11であるときデコーダ302の出力線346上に供給される
活動信号によって条件付けられる。線348上のDMA書込み
制御信号と線50上のDMAユーザ信号がANDゲート339に供
給される。ANDゲート339の出力線350がORゲート338に接
続され、ライン無効化要求信号を活動化すべきとき、ラ
ッチ340をセットする。
シュ・ライン境界で活動化される。その境界は、ワード
・アドレスの下位ビット(LSB)11に相当する。これを
行なうために、ANDゲート339はアドレスの下位2ビット
が11であるときデコーダ302の出力線346上に供給される
活動信号によって条件付けられる。線348上のDMA書込み
制御信号と線50上のDMAユーザ信号がANDゲート339に供
給される。ANDゲート339の出力線350がORゲート338に接
続され、ライン無効化要求信号を活動化すべきとき、ラ
ッチ340をセットする。
最初の転送ワード・アドレスの下位ビットが10である場
合、二番目のワード・アドレスの下位2ビットは11にな
り、その場合、連続する2つの無効化が実行されること
に留意されたい。
合、二番目のワード・アドレスの下位2ビットは11にな
り、その場合、連続する2つの無効化が実行されること
に留意されたい。
第1図は、本発明を適用できるシステムの全体的構成を
表わすブロック図である。 第2図は、メモリ制御サブシステムをより詳細に表わす
ブロック図である。 第3図は、第2図のメモリ・コントローラ24を表わすブ
ロック図である。 第4図は、第2図のプロセッサ・コントローラPC20を表
わすブロック図である。 第5図は、第2図のDMAコントローラ22を表わすブロッ
ク図である。 2……プロセッサ、4……入出力アダプタ、6……入出
力バス、10……システム・メモリ、12……直接メモリ・
アクセス(DMA)バス、16……プロセッサ・キャッシ
ュ、20……プロセッサ・コントローラ(PC)、22……DM
Aコントローラ(DC)、24……メモリ・コントローラ(M
C)。
表わすブロック図である。 第2図は、メモリ制御サブシステムをより詳細に表わす
ブロック図である。 第3図は、第2図のメモリ・コントローラ24を表わすブ
ロック図である。 第4図は、第2図のプロセッサ・コントローラPC20を表
わすブロック図である。 第5図は、第2図のDMAコントローラ22を表わすブロッ
ク図である。 2……プロセッサ、4……入出力アダプタ、6……入出
力バス、10……システム・メモリ、12……直接メモリ・
アクセス(DMA)バス、16……プロセッサ・キャッシ
ュ、20……プロセッサ・コントローラ(PC)、22……DM
Aコントローラ(DC)、24……メモリ・コントローラ(M
C)。
フロントページの続き (72)発明者 ミツシエル・パイロネンコ フランス国06640サン・ジヤネ、フオン・ ド・ラ・パイロ(番地なし) (56)参考文献 特開 昭58−185083(JP,A) 特開 昭60−116060(JP,A)
Claims (1)
- 【請求項1】複数のユーザによってアクセスされるメモ
リを含み、キャッシュを有する少なくとも1つのプロセ
ッサおよび前記メモリに直接アクセスする入出力装置が
接続された少なくとも1つのDMAバスとを有するデータ
処理システムで使用されるメモリ制御サブシステムにお
いて、 ユーザの要求に応じて前記メモリにアクセスを許可し、
前記ユーザによるメモリの書込みまたは読出し動作を制
御するメモリアクセス制御手段と、 選択されたメモリアドレスで書込み動作を要求する前記
プロセッサからのメモリ要求に応じて肯定応答信号を前
記プロセッサに送信させることにより、前記プロセッサ
は前記動作を直ちに再開するメモリ書込み制御手段、選
択されたメモリアドレスで読出し動作を要求する前記プ
ロセッサからのメモリ要求に応じてキャッシュ・ライン
のワードのアドレスを前記メモリアクセス制御手段に送
信させ、前記アドレスから読出されたデータを前記プロ
セッサおよびキャッシュに送出するメモリ読出し制御手
段を含むプロセッサ制御手段と、 前記入出力装置から前記メモリに記憶されるべきデータ
または前記DMAバスを介して前記メモリから前記入出力
装置に送出されるべきデータを記憶することができるデ
ータ・バッファ手段、前記プロセッサからの前記メモリ
アクセス要求に応じてキャッシュラインの境界で、かつ
所定のデータバースト長でデータ転送を中断させ、プロ
セッサ要求にサービスし、その後前記データ転送を再開
させる手段、その内容がメモリ書込み動作によって修正
されるメモリアドレスに対応する前記キャッシュライン
を無効化する手段を含み、データが前記メモリから前記
バッファ手段に、または前記バッファ手段から前記メモ
リに転送される準備ができた場合、メモリアクセス要求
信号を供給するDMA制御手段とを備えたメモリ制御サブ
システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP87430014A EP0288649B1 (en) | 1987-04-22 | 1987-04-22 | Memory control subsystem |
EP87430014.8 | 1987-04-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS63269247A JPS63269247A (ja) | 1988-11-07 |
JPH0724045B2 true JPH0724045B2 (ja) | 1995-03-15 |
Family
ID=8198304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63064767A Expired - Lifetime JPH0724045B2 (ja) | 1987-04-22 | 1988-03-19 | メモリ制御サブシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US4912632A (ja) |
EP (1) | EP0288649B1 (ja) |
JP (1) | JPH0724045B2 (ja) |
DE (1) | DE3782335T2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005209163A (ja) * | 2003-12-22 | 2005-08-04 | Matsushita Electric Ind Co Ltd | メモリシステム制御方法 |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5055999A (en) * | 1987-12-22 | 1991-10-08 | Kendall Square Research Corporation | Multiprocessor digital data processing system |
JPH01237864A (ja) * | 1988-03-18 | 1989-09-22 | Fujitsu Ltd | Dma転送制御装置 |
US5148536A (en) * | 1988-07-25 | 1992-09-15 | Digital Equipment Corporation | Pipeline having an integral cache which processes cache misses and loads data in parallel |
US5161219A (en) * | 1989-01-13 | 1992-11-03 | International Business Machines Corporation | Computer system with input/output cache |
US5237670A (en) * | 1989-01-30 | 1993-08-17 | Alantec, Inc. | Method and apparatus for data transfer between source and destination modules |
EP0387464B1 (en) * | 1989-03-14 | 1994-06-22 | International Business Machines Corporation | Switching system for simultaneously transferring data between data processing units |
US5041962A (en) * | 1989-04-14 | 1991-08-20 | Dell Usa Corporation | Computer system with means for regulating effective processing rates |
US5119485A (en) * | 1989-05-15 | 1992-06-02 | Motorola, Inc. | Method for data bus snooping in a data processing system by selective concurrent read and invalidate cache operation |
EP0398523A3 (en) * | 1989-05-19 | 1991-08-21 | Hitachi, Ltd. | A device for data i/o and execution support in digital processors |
JPH0348951A (ja) * | 1989-07-18 | 1991-03-01 | Fujitsu Ltd | アドレスモニタ装置 |
JP2978539B2 (ja) * | 1989-07-24 | 1999-11-15 | 日本電気株式会社 | データ転送制御装置 |
JP2531802B2 (ja) * | 1989-09-28 | 1996-09-04 | 甲府日本電気株式会社 | リクエストバッファ制御システム |
JPH03144990A (ja) * | 1989-10-31 | 1991-06-20 | Toshiba Corp | メモリ装置 |
JPH03172947A (ja) * | 1989-11-13 | 1991-07-26 | Matra Design Semiconductor Inc | マイクロコンピュータ・システム |
US5297242A (en) * | 1989-12-15 | 1994-03-22 | Nec Corporation | DMA controller performing data transfer by 2-bus cycle transfer manner |
US5072365A (en) * | 1989-12-27 | 1991-12-10 | Motorola, Inc. | Direct memory access controller using prioritized interrupts for varying bus mastership |
JPH03269659A (ja) * | 1990-03-19 | 1991-12-02 | Nec Corp | マイクロプロセッサ |
US5249284A (en) * | 1990-06-04 | 1993-09-28 | Ncr Corporation | Method and system for maintaining data coherency between main and cache memories |
EP0460852A3 (en) * | 1990-06-04 | 1992-08-05 | Ncr Corporation | System for maintaining data coherency between main and cache memories |
US5255374A (en) * | 1992-01-02 | 1993-10-19 | International Business Machines Corporation | Bus interface logic for computer system having dual bus architecture |
CA2080608A1 (en) * | 1992-01-02 | 1993-07-03 | Nader Amini | Bus control logic for computer system having dual bus architecture |
US5325503A (en) * | 1992-02-21 | 1994-06-28 | Compaq Computer Corporation | Cache memory system which snoops an operation to a first location in a cache line and does not snoop further operations to locations in the same line |
EP0567708A1 (en) * | 1992-04-30 | 1993-11-03 | International Business Machines Corporation | Apparatus for optimizing cache memory invalidation |
US5265218A (en) * | 1992-05-19 | 1993-11-23 | Sun Microsystems, Inc. | Bus architecture for integrated data and video memory |
US5410668A (en) * | 1992-09-23 | 1995-04-25 | Amdahl Corporation | Reconfigurable cache memory which can selectively inhibit access to damaged segments in the cache memory |
US5699540A (en) * | 1992-11-16 | 1997-12-16 | Intel Corporation | Pseudo-concurrent access to a cached shared resource |
US5463739A (en) * | 1992-12-22 | 1995-10-31 | International Business Machines Corporation | Apparatus for vetoing reallocation requests during a data transfer based on data bus latency and the number of received reallocation requests below a threshold |
AU6410994A (en) * | 1993-03-30 | 1994-10-24 | Ast Research, Inc. | Cache address strobe control logic for simulated bus cycle initiation |
US5513374A (en) * | 1993-09-27 | 1996-04-30 | Hitachi America, Inc. | On-chip interface and DMA controller with interrupt functions for digital signal processor |
US5813028A (en) * | 1993-10-12 | 1998-09-22 | Texas Instruments Incorporated | Cache read miss request invalidation prevention method |
US5535352A (en) * | 1994-03-24 | 1996-07-09 | Hewlett-Packard Company | Access hints for input/output address translation mechanisms |
US5524208A (en) * | 1994-06-09 | 1996-06-04 | Dell Usa, L.P. | Method and apparatus for performing cache snoop testing using DMA cycles in a computer system |
DE69529250T2 (de) * | 1994-07-01 | 2003-10-30 | Sun Microsystems Inc | Rechnersystem mit einem multiplexierten Adressenbus und Pipeline-Schreiboperationen |
FR2724243B1 (fr) * | 1994-09-06 | 1997-08-14 | Sgs Thomson Microelectronics | Systeme de traitement multitaches |
US5630094A (en) * | 1995-01-20 | 1997-05-13 | Intel Corporation | Integrated bus bridge and memory controller that enables data streaming to a shared memory of a computer system using snoop ahead transactions |
US6044441A (en) * | 1995-09-29 | 2000-03-28 | Intel Corporation | Method and apparatus for encoding valid and invalid states in a cache with an invalid pattern |
US5765195A (en) * | 1995-12-08 | 1998-06-09 | Ncr Corporation | Method for distributing interprocessor interrupt requests via cache memory coherency mechanisms |
KR0160193B1 (ko) * | 1995-12-30 | 1998-12-15 | 김광호 | 직접메모리접근 제어장치 |
US6122699A (en) * | 1996-06-03 | 2000-09-19 | Canon Kabushiki Kaisha | Data processing apparatus with bus intervention means for controlling interconnection of plural busses |
US5802323A (en) * | 1996-06-14 | 1998-09-01 | Advanced Micro Devices, Inc. | Transparent burst access to data having a portion residing in cache and a portion residing in memory |
US5901291A (en) * | 1996-10-21 | 1999-05-04 | International Business Machines Corporation | Method and apparatus for maintaining message order in multi-user FIFO stacks |
GB2331379A (en) * | 1997-11-13 | 1999-05-19 | Advanced Telecommunications Mo | Controlling access to a shared memory by dual mapping |
KR100287366B1 (ko) * | 1997-11-24 | 2001-04-16 | 윤순조 | 엠피이지 방식을 이용한 휴대용 음향 재생장치 및 방법 |
US6108743A (en) * | 1998-02-10 | 2000-08-22 | Intel Corporation | Technique for performing DMA including arbitration between a chained low priority DMA and high priority DMA occurring between two links in the chained low priority |
JP3420091B2 (ja) | 1998-11-30 | 2003-06-23 | Necエレクトロニクス株式会社 | マイクロプロセッサ |
US6633926B1 (en) | 1998-11-30 | 2003-10-14 | Matsushita Electric Industrial Co., Ltd. | DMA transfer device capable of high-speed consecutive access to pages in a memory |
US6438628B1 (en) * | 1999-05-28 | 2002-08-20 | 3Com Corporation | System and method for data pacing |
US6449665B1 (en) | 1999-10-14 | 2002-09-10 | Lexmark International, Inc. | Means for reducing direct memory access |
WO2001033374A1 (de) * | 1999-11-02 | 2001-05-10 | Siemens Aktiengesellschaft | Burst-konzentrator zur effektiven unterstützung eines burstfähigen bussystems bei sequentiellen einzelwort-zugriffen |
US6523098B1 (en) * | 1999-12-22 | 2003-02-18 | Intel Corporation | Mechanism for efficient low priority write draining |
US6785759B1 (en) | 2000-05-10 | 2004-08-31 | International Business Machines Corporation | System and method for sharing I/O address translation caching across multiple host bridges |
US20020029354A1 (en) * | 2000-08-23 | 2002-03-07 | Seagate Technology Llc | Non-volatile write cache, in a disc drive, using an alternate power source |
US6775727B2 (en) * | 2001-06-23 | 2004-08-10 | Freescale Semiconductor, Inc. | System and method for controlling bus arbitration during cache memory burst cycles |
JP2003050774A (ja) * | 2001-08-08 | 2003-02-21 | Matsushita Electric Ind Co Ltd | データ処理装置およびデータ転送方法 |
US7013357B2 (en) * | 2003-09-12 | 2006-03-14 | Freescale Semiconductor, Inc. | Arbiter having programmable arbitration points for undefined length burst accesses and method |
US7424553B1 (en) | 2004-04-15 | 2008-09-09 | Xilinx, Inc. | Method and apparatus for communicating data between a network transceiver and memory circuitry |
US7225278B1 (en) | 2004-04-15 | 2007-05-29 | Xilinx, Inc. | Method and apparatus for controlling direct access to memory circuitry |
US7260688B1 (en) * | 2004-04-15 | 2007-08-21 | Xilinx, Inc. | Method and apparatus for controlling access to memory circuitry |
US7617338B2 (en) * | 2005-02-03 | 2009-11-10 | International Business Machines Corporation | Memory with combined line and word access |
US7720636B1 (en) | 2007-02-14 | 2010-05-18 | Xilinx, Inc. | Performance monitors (PMs) for measuring performance in a system and providing a record of transactions performed |
US7913022B1 (en) | 2007-02-14 | 2011-03-22 | Xilinx, Inc. | Port interface modules (PIMs) in a multi-port memory controller (MPMC) |
US8479124B1 (en) | 2007-02-14 | 2013-07-02 | Xilinx, Inc. | Graphical user interface (GUI) including input files with information that determines representation of subsequent content displayed by the GUI |
US7711907B1 (en) * | 2007-02-14 | 2010-05-04 | Xilinx, Inc. | Self aligning state machine |
US8392761B2 (en) * | 2010-03-31 | 2013-03-05 | Hewlett-Packard Development Company, L.P. | Memory checkpointing using a co-located processor and service processor |
KR20120108564A (ko) * | 2011-03-24 | 2012-10-05 | 삼성전자주식회사 | 데이터 처리 시스템 및 그 동작 방법 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4275440A (en) * | 1978-10-02 | 1981-06-23 | International Business Machines Corporation | I/O Interrupt sequencing for real time and burst mode devices |
US4345309A (en) * | 1980-01-28 | 1982-08-17 | Digital Equipment Corporation | Relating to cached multiprocessor system with pipeline timing |
US4590551A (en) * | 1981-08-24 | 1986-05-20 | Burroughs Corporation | Memory control circuit for subsystem controller |
US4504902A (en) * | 1982-03-25 | 1985-03-12 | At&T Bell Laboratories | Cache arrangement for direct memory access block transfer |
JPS58225432A (ja) * | 1982-06-24 | 1983-12-27 | Toshiba Corp | 要求バツフア装置 |
US4669043A (en) * | 1984-02-17 | 1987-05-26 | Signetics Corporation | Memory access controller |
-
1987
- 1987-04-22 DE DE8787430014T patent/DE3782335T2/de not_active Expired - Fee Related
- 1987-04-22 EP EP87430014A patent/EP0288649B1/en not_active Expired - Lifetime
-
1988
- 1988-03-19 JP JP63064767A patent/JPH0724045B2/ja not_active Expired - Lifetime
- 1988-03-31 US US07/176,122 patent/US4912632A/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005209163A (ja) * | 2003-12-22 | 2005-08-04 | Matsushita Electric Ind Co Ltd | メモリシステム制御方法 |
Also Published As
Publication number | Publication date |
---|---|
JPS63269247A (ja) | 1988-11-07 |
EP0288649B1 (en) | 1992-10-21 |
DE3782335D1 (de) | 1992-11-26 |
US4912632A (en) | 1990-03-27 |
EP0288649A1 (en) | 1988-11-02 |
DE3782335T2 (de) | 1993-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0724045B2 (ja) | メモリ制御サブシステム | |
US5768548A (en) | Bus bridge for responding to received first write command by storing data and for responding to received second write command by transferring the stored data | |
KR950014183B1 (ko) | 컴퓨터 시스템 및 시스템 메모리 액세스 제어 방법 | |
AU651747B2 (en) | Arbitration control logic for computer system having dual bus architecture | |
US5463753A (en) | Method and apparatus for reducing non-snoop window of a cache controller by delaying host bus grant signal to the cache controller | |
US5574868A (en) | Bus grant prediction technique for a split transaction bus in a multiprocessor computer system | |
US5185694A (en) | Data processing system utilizes block move instruction for burst transferring blocks of data entries where width of data blocks varies | |
US5404464A (en) | Bus control system and method that selectively generate an early address strobe | |
US4755937A (en) | Method and apparatus for high bandwidth shared memory | |
JP2004171579A (ja) | データ転送方法 | |
JP2532191B2 (ja) | 複式バス・ア―キテクチャを有する計算システムに使用するデ―タ伝送の管理方法 | |
GB2263378A (en) | Computer bus system with virtual memory data transfer capability | |
US5659708A (en) | Cache coherency in a multiprocessing system | |
JP3210880B2 (ja) | 遠隔メモリ間でデータを移動する回路、およびそのような回路を含む計算機 | |
US5097483A (en) | Tri-statable bus with apparatus to drive bus line to first level and then second level for predetermined time before turning off | |
US5809534A (en) | Performing a write cycle to memory in a multi-processor system | |
JPH06309231A (ja) | キャッシュメモリ制御方法 | |
JPH05210481A (ja) | 直接アクセス式ビデオバス | |
JP3240863B2 (ja) | 調停回路 | |
JP2001043204A (ja) | キャッシュ・メモリ制御装置 | |
EP0567708A1 (en) | Apparatus for optimizing cache memory invalidation | |
US5752265A (en) | Memory accessing in a multi-processor system using snooping | |
JP2000029823A (ja) | バスアクセス制御回路 | |
JPH0744460A (ja) | スヌープ処理方式 | |
JPH04280344A (ja) | メモリ装置 |