JPH0528043A - 命令キヤツシユメモリの無効化制御方法 - Google Patents
命令キヤツシユメモリの無効化制御方法Info
- Publication number
- JPH0528043A JPH0528043A JP3207573A JP20757391A JPH0528043A JP H0528043 A JPH0528043 A JP H0528043A JP 3207573 A JP3207573 A JP 3207573A JP 20757391 A JP20757391 A JP 20757391A JP H0528043 A JPH0528043 A JP H0528043A
- Authority
- JP
- Japan
- Prior art keywords
- cache memory
- instruction
- instruction code
- bus
- instruction cache
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】 命令キャッシュメモリの有効利用及びプロセ
ッサの処理効率の低下を回避することのできる命令キャ
ッシュメモリの無効化制御方法を提供する。 【構成】 命令キャッシュメモリ35に第1バス33の
アクセス状況及び命令キャッシュメモリ35に記憶され
た命令コードの無効化を行なう第1バス監視回路37を
設ける。第1バス監視回路37は、第1バス33のアク
セスが命令コードの書込みであった場合、独自にこの書
込みに関係する命令コードが命令キャッシュメモリ35
に記憶されているかを認識し、記憶されていた場合には
無効化を行なう。
ッサの処理効率の低下を回避することのできる命令キャ
ッシュメモリの無効化制御方法を提供する。 【構成】 命令キャッシュメモリ35に第1バス33の
アクセス状況及び命令キャッシュメモリ35に記憶され
た命令コードの無効化を行なう第1バス監視回路37を
設ける。第1バス監視回路37は、第1バス33のアク
セスが命令コードの書込みであった場合、独自にこの書
込みに関係する命令コードが命令キャッシュメモリ35
に記憶されているかを認識し、記憶されていた場合には
無効化を行なう。
Description
【0001】
【産業上の利用分野】本発明は、プロセッサに、第1バ
スを介して命令キャッシュメモリ及びデータキャッシュ
メモリが接続され、命令キャッシュメモリ及びデータキ
ャッシュメモリに、第2バスを介して主メモリが接続さ
れた計算機システムにおける命令キャッシュメモリの無
効化制御方法に関する。
スを介して命令キャッシュメモリ及びデータキャッシュ
メモリが接続され、命令キャッシュメモリ及びデータキ
ャッシュメモリに、第2バスを介して主メモリが接続さ
れた計算機システムにおける命令キャッシュメモリの無
効化制御方法に関する。
【0002】
【従来の技術】プロセッサが主メモリをアクセスする頻
度を減少させるため、キャッシュメモリが利用される。
キャッシュメモリとしては、プロセッサが参照して実行
するための命令コードのキャッシュを行なう命令キャッ
シュメモリと、プロセッサが主メモリへと書込むデータ
や主メモリから読み出したデータのキャッシュを行なう
データキャッシュメモリを挙げることができる。ここで
は、これら2つのキャッシュメモリを備えた計算機シス
テムについて話を進める。
度を減少させるため、キャッシュメモリが利用される。
キャッシュメモリとしては、プロセッサが参照して実行
するための命令コードのキャッシュを行なう命令キャッ
シュメモリと、プロセッサが主メモリへと書込むデータ
や主メモリから読み出したデータのキャッシュを行なう
データキャッシュメモリを挙げることができる。ここで
は、これら2つのキャッシュメモリを備えた計算機シス
テムについて話を進める。
【0003】図2に、従来の計算機システムの概念図を
示す。図に示した計算機システム1には、プロセッサ1
1、主メモリ12、第1バス13、第2バス14、命令
キャッシュメモリ15、データキャッシュメモリ16が
設けられている。プロセッサ11は、主メモリ12(命
令キャッシュメモリ15)に記憶された命令コードを参
照して所定の演算処理を実行するものである。主メモリ
12は、プロセッサ11の参照する命令コードやプロセ
ッサ11の演算結果等を記憶するRAM等から構成され
るものである。
示す。図に示した計算機システム1には、プロセッサ1
1、主メモリ12、第1バス13、第2バス14、命令
キャッシュメモリ15、データキャッシュメモリ16が
設けられている。プロセッサ11は、主メモリ12(命
令キャッシュメモリ15)に記憶された命令コードを参
照して所定の演算処理を実行するものである。主メモリ
12は、プロセッサ11の参照する命令コードやプロセ
ッサ11の演算結果等を記憶するRAM等から構成され
るものである。
【0004】第1バス13は、プロセッサ11と、命令
キャッシュメモリ15及びデータキャッシュメモリ16
の間の命令コード及びデータの転送を行なうためのシス
テムバスである。第2バス14は、主メモリ12と命令
キャッシュメモリ15及びデータキャッシュメモリ16
の間の命令コード及びデータの転送を行なうためのシス
テムバスである。
キャッシュメモリ15及びデータキャッシュメモリ16
の間の命令コード及びデータの転送を行なうためのシス
テムバスである。第2バス14は、主メモリ12と命令
キャッシュメモリ15及びデータキャッシュメモリ16
の間の命令コード及びデータの転送を行なうためのシス
テムバスである。
【0005】命令キャッシュメモリ15は、プロセッサ
11が参照する主メモリ12上の命令コードの記憶(キ
ャッシュ)を行なうため、高速度のアクセスが可能な記
憶装置及びキャッシュの制御を行なう制御機構から構成
されるものである。データキャッシュメモリ16は、プ
ロセッサ11が主メモリ12へと書込むデータの記憶
(キャッシュ)、及びプロセッサ11が主メモリ12か
ら読み出したデータのキャッシュを行なう命令キャッシ
ュメモリ15同様の記憶装置及びキャッシュの制御を行
なう制御機構から構成されるものである。
11が参照する主メモリ12上の命令コードの記憶(キ
ャッシュ)を行なうため、高速度のアクセスが可能な記
憶装置及びキャッシュの制御を行なう制御機構から構成
されるものである。データキャッシュメモリ16は、プ
ロセッサ11が主メモリ12へと書込むデータの記憶
(キャッシュ)、及びプロセッサ11が主メモリ12か
ら読み出したデータのキャッシュを行なう命令キャッシ
ュメモリ15同様の記憶装置及びキャッシュの制御を行
なう制御機構から構成されるものである。
【0006】以上の構成の計算機システム1において、
プロセッサ11は、命令コードをフェッチする場合に
は、命令キャッシュメモリ15をアクセスする。命令キ
ャッシュメモリ15において、キャッシュヒットする
と、第1バス13を介して命令キャッシュメモリ15に
記憶された所望の命令コードがプロセッサ11に向けて
転送される。キャッシュミスヒットすると、命令キャッ
シュメモリ15は、第2バス14を介して主メモリ12
をアクセスし、先にプロセッサ11から要求された命令
コードを読み出す。そして、読み出した命令コードを第
1バス13を介してプロセッサ11に転送すると共に、
命令キャッシュメモリ15へのキャッシュを行なう。
プロセッサ11は、命令コードをフェッチする場合に
は、命令キャッシュメモリ15をアクセスする。命令キ
ャッシュメモリ15において、キャッシュヒットする
と、第1バス13を介して命令キャッシュメモリ15に
記憶された所望の命令コードがプロセッサ11に向けて
転送される。キャッシュミスヒットすると、命令キャッ
シュメモリ15は、第2バス14を介して主メモリ12
をアクセスし、先にプロセッサ11から要求された命令
コードを読み出す。そして、読み出した命令コードを第
1バス13を介してプロセッサ11に転送すると共に、
命令キャッシュメモリ15へのキャッシュを行なう。
【0007】さて、プロセッサ11の制御により、主メ
モリ12に記憶された命令コード(例えばパラメータ)
の書換えを行なう場合がある。例えば、命令キャッシュ
メモリ15にアドレスA1の命令コードBがキャッシュ
されているものとする。この命令コードBは、主メモリ
12上のアドレスA1にも記憶されていることになる。
その後、プロセッサ11が主メモリ12に記憶された命
令コードBを、命令コードbに書換えると、命令キャッ
シュメモリ15にキャッシュされた命令コードの内容
と、主メモリ12に記憶された命令コードの内容が不一
致になる。この不一致の状態を放置すると、プロセッサ
11は、書換え前の古い命令コード、即ち命令コードB
を参照することになる。このように命令コードの内容が
不一致のまま放置される事態を回避するため、従来は次
に説明するような方法により対策が取られていた。
モリ12に記憶された命令コード(例えばパラメータ)
の書換えを行なう場合がある。例えば、命令キャッシュ
メモリ15にアドレスA1の命令コードBがキャッシュ
されているものとする。この命令コードBは、主メモリ
12上のアドレスA1にも記憶されていることになる。
その後、プロセッサ11が主メモリ12に記憶された命
令コードBを、命令コードbに書換えると、命令キャッ
シュメモリ15にキャッシュされた命令コードの内容
と、主メモリ12に記憶された命令コードの内容が不一
致になる。この不一致の状態を放置すると、プロセッサ
11は、書換え前の古い命令コード、即ち命令コードB
を参照することになる。このように命令コードの内容が
不一致のまま放置される事態を回避するため、従来は次
に説明するような方法により対策が取られていた。
【0008】まず第1に、プロセッサ11が命令コード
Bの書換え(主メモリ12への命令コードの書込み)を
実施した場合、同時に命令キャッシュメモリ15に対し
てパージ命令を実行する。このパージ命令を実行するこ
とにより、命令キャッシュメモリ15は、キャッシュし
た全ての命令コードを廃棄する。これにより、プロセッ
サ11が命令キャッシュメモリ15に対して命令コード
のフェッチを行なおうとしても、キャッシュミスヒット
となり、主メモリ12からの読み出しが実施される。
Bの書換え(主メモリ12への命令コードの書込み)を
実施した場合、同時に命令キャッシュメモリ15に対し
てパージ命令を実行する。このパージ命令を実行するこ
とにより、命令キャッシュメモリ15は、キャッシュし
た全ての命令コードを廃棄する。これにより、プロセッ
サ11が命令キャッシュメモリ15に対して命令コード
のフェッチを行なおうとしても、キャッシュミスヒット
となり、主メモリ12からの読み出しが実施される。
【0009】第2に、命令キャッシュメモリ15に第2
バス14のアクセスを監視する第2バス監視回路17を
用意する。この第2バス監視回路17は、第2バス14
のアクセスを監視し、命令キャッシュメモリ15にキャ
ッシュされた命令コードに係る主メモリ12の領域に新
たな命令コードの書込み(書換え)が実施された場合
に、命令キャッシュメモリ15にキャッシュされた書換
え前の命令コードの無効化をプロセッサ11に依頼する
ものである。
バス14のアクセスを監視する第2バス監視回路17を
用意する。この第2バス監視回路17は、第2バス14
のアクセスを監視し、命令キャッシュメモリ15にキャ
ッシュされた命令コードに係る主メモリ12の領域に新
たな命令コードの書込み(書換え)が実施された場合
に、命令キャッシュメモリ15にキャッシュされた書換
え前の命令コードの無効化をプロセッサ11に依頼する
ものである。
【0010】ここで、図3を参照しながら第2バス監視
回路17に係る動作説明を行なう。図3は、従来の方法
に係るフローチャートである。プロセッサ11は、主メ
モリ12の命令コードBを命令コードbに書換える場
合、第1バス13をアクセスし(ステップS1)、第1
バス13を介してデータキャッシュメモリ16に命令コ
ードbを書込む(ステップS2)。その後、データキャ
ッシュメモリ16は、命令コードbを第2バス14を介
し主メモリ12のアドレスA1に書込む(ステップS
3)。
回路17に係る動作説明を行なう。図3は、従来の方法
に係るフローチャートである。プロセッサ11は、主メ
モリ12の命令コードBを命令コードbに書換える場
合、第1バス13をアクセスし(ステップS1)、第1
バス13を介してデータキャッシュメモリ16に命令コ
ードbを書込む(ステップS2)。その後、データキャ
ッシュメモリ16は、命令コードbを第2バス14を介
し主メモリ12のアドレスA1に書込む(ステップS
3)。
【0011】第2バス監視回路17は、第2バス14に
命令コードbを書込むアクセス(命令コードBから命令
コードbへの書換え)が発生したことを認識すると、命
令キャッシュメモリ15にキャッシュされた命令コード
のアドレスを検索し、第2バス14のアクセスと一致す
るアドレスの命令コードの存在(無効化対象のアクセス
であること)を認識する(ステップS4)。
命令コードbを書込むアクセス(命令コードBから命令
コードbへの書換え)が発生したことを認識すると、命
令キャッシュメモリ15にキャッシュされた命令コード
のアドレスを検索し、第2バス14のアクセスと一致す
るアドレスの命令コードの存在(無効化対象のアクセス
であること)を認識する(ステップS4)。
【0012】無効化対象のアクセスの場合、第2バス監
視回路17は、プロセッサ11に対して認識した命令キ
ャッシュメモリ15上の命令コードの無効化を依頼する
(ステップS5)。依頼を受けたプロセッサ11は、命
令キャッシュメモリ15に対して特定の命令コード(命
令コードB)の無効化を指示することにより、命令キャ
ッシュメモリ15において命令コードBの無効化が実施
される(ステップS6)。
視回路17は、プロセッサ11に対して認識した命令キ
ャッシュメモリ15上の命令コードの無効化を依頼する
(ステップS5)。依頼を受けたプロセッサ11は、命
令キャッシュメモリ15に対して特定の命令コード(命
令コードB)の無効化を指示することにより、命令キャ
ッシュメモリ15において命令コードBの無効化が実施
される(ステップS6)。
【0013】その後、プロセッサ11は、主メモリ12
のアドレスA1に係る命令コードのフェッチを命令キャ
ッシュメモリ15に対して実施すると(ステップS
7)、命令キャッシュメモリ15においてキャッシュミ
スヒットとなり(ステップS8)、主メモリ12から命
令コードbの読み出しが実施される(ステップS9)。
のアドレスA1に係る命令コードのフェッチを命令キャ
ッシュメモリ15に対して実施すると(ステップS
7)、命令キャッシュメモリ15においてキャッシュミ
スヒットとなり(ステップS8)、主メモリ12から命
令コードbの読み出しが実施される(ステップS9)。
【0014】
【発明が解決しようとする課題】さて、従来の第1の方
法の場合、命令コードの書換えが発生する度に、命令キ
ャッシュメモリ15のパージを実施するために、命令キ
ャッシュメモリ15の効果が著しく損なわれてしまい、
計算機システム1の性能を低下させてしまうといった問
題が生じていた。これは、プロセッサ11による書換え
に関係の無い命令コードについても、主メモリ12から
の読み出しを実施する必要が生じ、命令キャッシュメモ
リ15のキャッシュヒット率が落ちてしまうからであ
る。
法の場合、命令コードの書換えが発生する度に、命令キ
ャッシュメモリ15のパージを実施するために、命令キ
ャッシュメモリ15の効果が著しく損なわれてしまい、
計算機システム1の性能を低下させてしまうといった問
題が生じていた。これは、プロセッサ11による書換え
に関係の無い命令コードについても、主メモリ12から
の読み出しを実施する必要が生じ、命令キャッシュメモ
リ15のキャッシュヒット率が落ちてしまうからであ
る。
【0015】また、従来の第2の方法の場合、データキ
ャッシュメモリ16が主メモリ12への命令コードの書
込みを実施する迄、命令キャッシュメモリ15が命令コ
ードの書換えを認識することができない。このため、デ
ータキャッシュメモリ16が主メモリ12へ命令コード
bを書込む前に、プロセッサ11が命令キャッシュメモ
リ15に対して命令コードBをフェッチしてしまう恐れ
がある。このような事態を回避するため、プロセッサ1
1は、命令コードbをデータキャッシュメモリ16に書
込んだ後、一定の時間、この場合、図3のステップS1
〜S6の実施が完了する6ステップに要する時間、命令
キャッシュメモリ15に対して命令のフェッチを実施し
ないといった待ち合わせ時間を設定する必要がある。こ
の待ち合わせ時間のために、プロセッサ11による処理
効率が落ちてしまうといった問題が生じていた。
ャッシュメモリ16が主メモリ12への命令コードの書
込みを実施する迄、命令キャッシュメモリ15が命令コ
ードの書換えを認識することができない。このため、デ
ータキャッシュメモリ16が主メモリ12へ命令コード
bを書込む前に、プロセッサ11が命令キャッシュメモ
リ15に対して命令コードBをフェッチしてしまう恐れ
がある。このような事態を回避するため、プロセッサ1
1は、命令コードbをデータキャッシュメモリ16に書
込んだ後、一定の時間、この場合、図3のステップS1
〜S6の実施が完了する6ステップに要する時間、命令
キャッシュメモリ15に対して命令のフェッチを実施し
ないといった待ち合わせ時間を設定する必要がある。こ
の待ち合わせ時間のために、プロセッサ11による処理
効率が落ちてしまうといった問題が生じていた。
【0016】本発明は以上の点に着目してなされたもの
で、命令キャッシュメモリの有効利用及びプロセッサの
処理効率の低下を回避することのできる命令キャッシュ
メモリの無効化制御方法を提供することを目的とする。
で、命令キャッシュメモリの有効利用及びプロセッサの
処理効率の低下を回避することのできる命令キャッシュ
メモリの無効化制御方法を提供することを目的とする。
【0017】
【課題を解決するための手段】本発明の命令キャッシュ
メモリの無効化制御方法は、プロセッサに第1バスを介
して命令キャッシュメモリ及びデータキャッシュメモリ
が接続され、前記命令キャッシュメモリ及び前記データ
キャッシュメモリに第2バスを介して主メモリが接続さ
れ、前記主メモリに記憶された命令コードの変更に伴
い、前記命令キャッシュメモリに記憶された命令コード
を無効化する場合において、前記第1バス上の前記デー
タキャッシュメモリへの前記命令コードの書込みを監視
し、当該監視結果が前記命令キャッシュメモリに記憶さ
れた前記命令コードが格納されていた前記主メモリ上へ
の書込みの場合、前記データキャッシュメモリと前記主
メモリへの前記命令コードの書込みの実行と並行して、
前記命令キャッシュメモリに記憶された命令コードの無
効化を実行するものである。
メモリの無効化制御方法は、プロセッサに第1バスを介
して命令キャッシュメモリ及びデータキャッシュメモリ
が接続され、前記命令キャッシュメモリ及び前記データ
キャッシュメモリに第2バスを介して主メモリが接続さ
れ、前記主メモリに記憶された命令コードの変更に伴
い、前記命令キャッシュメモリに記憶された命令コード
を無効化する場合において、前記第1バス上の前記デー
タキャッシュメモリへの前記命令コードの書込みを監視
し、当該監視結果が前記命令キャッシュメモリに記憶さ
れた前記命令コードが格納されていた前記主メモリ上へ
の書込みの場合、前記データキャッシュメモリと前記主
メモリへの前記命令コードの書込みの実行と並行して、
前記命令キャッシュメモリに記憶された命令コードの無
効化を実行するものである。
【0018】
【作用】この方法は、命令キャッシュメモリに第1バス
のアクセス状況及び命令キャッシュメモリに記憶された
命令コードの無効化を行なう第1バス監視回路を設け
る。第1バス監視回路は、第1バスのアクセスが命令コ
ードの書込みであった場合、独自にこの書込みに関係す
る命令コードが命令キャッシュメモリに記憶されている
かを認識し、記憶されていた場合には無効化を行なう。
のアクセス状況及び命令キャッシュメモリに記憶された
命令コードの無効化を行なう第1バス監視回路を設け
る。第1バス監視回路は、第1バスのアクセスが命令コ
ードの書込みであった場合、独自にこの書込みに関係す
る命令コードが命令キャッシュメモリに記憶されている
かを認識し、記憶されていた場合には無効化を行なう。
【0019】
【実施例】図1に、本発明に係る計算機システムの概念
図を示す。図に示した計算機システム2には、プロセッ
サ31、主メモリ32、第1バス33、第2バス34、
命令キャッシュメモリ35、データキャッシュメモリ3
6が設けられている。プロセッサ31は、主メモリ32
(命令キャッシュメモリ35)に記憶された命令コード
を参照して所定の演算処理を実行するものである。主メ
モリ32は、プロセッサ31の参照する命令コードやプ
ロセッサ31の演算結果等を記憶するRAM等から構成
されるものである。
図を示す。図に示した計算機システム2には、プロセッ
サ31、主メモリ32、第1バス33、第2バス34、
命令キャッシュメモリ35、データキャッシュメモリ3
6が設けられている。プロセッサ31は、主メモリ32
(命令キャッシュメモリ35)に記憶された命令コード
を参照して所定の演算処理を実行するものである。主メ
モリ32は、プロセッサ31の参照する命令コードやプ
ロセッサ31の演算結果等を記憶するRAM等から構成
されるものである。
【0020】第1バス33は、プロセッサ31と、命令
キャッシュメモリ35及びデータキャッシュメモリ36
の間の命令コード及びデータの転送を行なうためのシス
テムバスであり、アドレス信号線33a、書込み信号線
33b、そしてアクセス識別信号線33cから構成され
ている。
キャッシュメモリ35及びデータキャッシュメモリ36
の間の命令コード及びデータの転送を行なうためのシス
テムバスであり、アドレス信号線33a、書込み信号線
33b、そしてアクセス識別信号線33cから構成され
ている。
【0021】アドレス信号線33aは、主メモリ32に
対する書込みアドレスもしくは読み出しアドレス(A)
を出力する信号線である。書込み信号線33bは、主メ
モリ32(データキャッシュメモリ36)の読み出し
(内容0)と、書込み(内容1)を識別する書込み信号
(W)を出力する信号線である。アクセス識別信号線3
3cは、第1バス33を介してアクセスされる内容が命
令コード(内容1)なのかデータ(内容0)なのかを識
別するアクセス識別信号(I/D)を出力する信号線で
ある。
対する書込みアドレスもしくは読み出しアドレス(A)
を出力する信号線である。書込み信号線33bは、主メ
モリ32(データキャッシュメモリ36)の読み出し
(内容0)と、書込み(内容1)を識別する書込み信号
(W)を出力する信号線である。アクセス識別信号線3
3cは、第1バス33を介してアクセスされる内容が命
令コード(内容1)なのかデータ(内容0)なのかを識
別するアクセス識別信号(I/D)を出力する信号線で
ある。
【0022】第2バス34は、主メモリ32と命令キャ
ッシュメモリ35、及びデータキャッシュメモリ36の
間の命令コード及びデータの転送を行なうためのシステ
ムバスである。
ッシュメモリ35、及びデータキャッシュメモリ36の
間の命令コード及びデータの転送を行なうためのシステ
ムバスである。
【0023】命令キャッシュメモリ35は、プロセッサ
31が参照する主メモリ32上の命令コードのキャッシ
ュを行なうため、高速度のアクセスが可能な記憶装置及
びキャッシュの制御を行なう制御機構から構成されるも
のである。この命令キャッシュメモリ35には、第1バ
ス監視回路37が設けられている。
31が参照する主メモリ32上の命令コードのキャッシ
ュを行なうため、高速度のアクセスが可能な記憶装置及
びキャッシュの制御を行なう制御機構から構成されるも
のである。この命令キャッシュメモリ35には、第1バ
ス監視回路37が設けられている。
【0024】この第1バス監視回路37は、第1バス3
3のアクセスを監視し、命令キャッシュメモリ35にキ
ャッシュされた命令コードを新たに書換えた場合に、命
令キャッシュメモリ35にキャッシュされた書換える前
の命令コードの無効化を行なうものである。
3のアクセスを監視し、命令キャッシュメモリ35にキ
ャッシュされた命令コードを新たに書換えた場合に、命
令キャッシュメモリ35にキャッシュされた書換える前
の命令コードの無効化を行なうものである。
【0025】データキャッシュメモリ36は、プロセッ
サ31が主メモリ32へと書込むデータのキャッシュ、
及びプロセッサ31が主メモリ32から読み出したデー
タのキャッシュを行なう命令キャッシュメモリ35同様
の記憶装置及びキャッシュの制御を行なう制御機構から
構成されるものである。
サ31が主メモリ32へと書込むデータのキャッシュ、
及びプロセッサ31が主メモリ32から読み出したデー
タのキャッシュを行なう命令キャッシュメモリ35同様
の記憶装置及びキャッシュの制御を行なう制御機構から
構成されるものである。
【0026】以上の構成の計算機システム2において、
プロセッサ31は、命令コードをフェッチする場合に
は、命令キャッシュメモリ35をアクセスする。命令キ
ャッシュメモリ35において、キャッシュヒットする
と、第1バス33を介して命令キャッシュメモリ35に
記憶された所望の命令コードがプロセッサ31に向けて
転送される。キャッシュミスヒットすると、命令キャッ
シュメモリ35は、第2バス34を介して主メモリ32
をアクセスし、先にプロセッサ31から要求された命令
コードを読み出す。そして、読み出した命令コードを第
1バス33を介してプロセッサ31に転送すると共に、
命令キャッシュメモリ35へのキャッシュを行なう。
プロセッサ31は、命令コードをフェッチする場合に
は、命令キャッシュメモリ35をアクセスする。命令キ
ャッシュメモリ35において、キャッシュヒットする
と、第1バス33を介して命令キャッシュメモリ35に
記憶された所望の命令コードがプロセッサ31に向けて
転送される。キャッシュミスヒットすると、命令キャッ
シュメモリ35は、第2バス34を介して主メモリ32
をアクセスし、先にプロセッサ31から要求された命令
コードを読み出す。そして、読み出した命令コードを第
1バス33を介してプロセッサ31に転送すると共に、
命令キャッシュメモリ35へのキャッシュを行なう。
【0027】さて、先に図2において説明したように、
命令キャッシュメモリ35に命令コードBがキャッシュ
された状態で、プロセッサ31の制御により、主メモリ
32に記憶された命令コード(例えばパラメータ)Bを
命令コードbに書換えた場合の動作、即ち本発明の命令
キャッシュメモリの無効化制御方法の説明を図4を参照
しながら説明する。
命令キャッシュメモリ35に命令コードBがキャッシュ
された状態で、プロセッサ31の制御により、主メモリ
32に記憶された命令コード(例えばパラメータ)Bを
命令コードbに書換えた場合の動作、即ち本発明の命令
キャッシュメモリの無効化制御方法の説明を図4を参照
しながら説明する。
【0028】図4は、本発明に係るフローチャートであ
る。プロセッサ31が主メモリ32の命令コードBを命
令コードbに書換える場合、即ち命令コードbを主メモ
リ32のアドレスA1に書込む場合、まず初めにプロセ
ッサ31が第1バス33を介してデータキャッシュメモ
リ36に命令コードbを書込む(ステップS11)。そ
の後、データキャッシュメモリ36は、命令コードbを
第2バス34を介し主メモリ32のアドレスA1に書込
み(ステップS12(S12a))、更に主メモリへの
書込みを行なう(ステップS13(S13a))。
る。プロセッサ31が主メモリ32の命令コードBを命
令コードbに書換える場合、即ち命令コードbを主メモ
リ32のアドレスA1に書込む場合、まず初めにプロセ
ッサ31が第1バス33を介してデータキャッシュメモ
リ36に命令コードbを書込む(ステップS11)。そ
の後、データキャッシュメモリ36は、命令コードbを
第2バス34を介し主メモリ32のアドレスA1に書込
み(ステップS12(S12a))、更に主メモリへの
書込みを行なう(ステップS13(S13a))。
【0029】一方、ステップS12,S13では、第1
バス監視回路37における処理が並行して実施される。
即ち、第1バス監視回路37は、書込み信号線33b及
びアクセス識別信号線33cが共に有効(内容1)に設
定されたのを認識し、アドレス信号線33aの内容と命
令キャッシュメモリ35にキャッシュされた命令コード
のアドレスとを照合し、無効化対象であるアクセスの認
識を行なう(ステップS12b)。更に第1バス監視回
路37は、ステップS12bにおいて認識された命令コ
ードの無効化を実施する(ステップS13b)。
バス監視回路37における処理が並行して実施される。
即ち、第1バス監視回路37は、書込み信号線33b及
びアクセス識別信号線33cが共に有効(内容1)に設
定されたのを認識し、アドレス信号線33aの内容と命
令キャッシュメモリ35にキャッシュされた命令コード
のアドレスとを照合し、無効化対象であるアクセスの認
識を行なう(ステップS12b)。更に第1バス監視回
路37は、ステップS12bにおいて認識された命令コ
ードの無効化を実施する(ステップS13b)。
【0030】その後、プロセッサ31は、主メモリ32
のアドレスA1に係る命令コードのフェッチを命令キャ
ッシュメモリ35に対して実施すると(ステップS1
4)、命令キャッシュメモリ35においてキャッシュミ
スヒットとなり(ステップS15)、主メモリ32から
命令コードbの読み出しが実施される(ステップS1
6)。この場合、プロセッサ31に設定する待ち合わせ
時間は、ステップS11〜S13の実行に必要な3ステ
ップ分の時間となる。
のアドレスA1に係る命令コードのフェッチを命令キャ
ッシュメモリ35に対して実施すると(ステップS1
4)、命令キャッシュメモリ35においてキャッシュミ
スヒットとなり(ステップS15)、主メモリ32から
命令コードbの読み出しが実施される(ステップS1
6)。この場合、プロセッサ31に設定する待ち合わせ
時間は、ステップS11〜S13の実行に必要な3ステ
ップ分の時間となる。
【0031】
【発明の効果】以上説明したように、第1バス監視回路
において、第1バスの監視及び監視結果に基づいて、デ
ータキャッシュメモリ及び主メモリへの命令コードの書
込みと並行して命令キャッシュメモリ上の無効化すべき
命令データの認識及び無効化を実行するため、命令キャ
ッシュメモリに対する命令のフェッチを見合わせる待ち
合わせ時間を必要最小限に留めることができる。また、
命令キャッシュメモリのパージを実施する必要がないた
め、命令キャッシュメモリの効果を損なうことが無くな
る。
において、第1バスの監視及び監視結果に基づいて、デ
ータキャッシュメモリ及び主メモリへの命令コードの書
込みと並行して命令キャッシュメモリ上の無効化すべき
命令データの認識及び無効化を実行するため、命令キャ
ッシュメモリに対する命令のフェッチを見合わせる待ち
合わせ時間を必要最小限に留めることができる。また、
命令キャッシュメモリのパージを実施する必要がないた
め、命令キャッシュメモリの効果を損なうことが無くな
る。
【図1】本発明に係る計算機システムの概念図である。
【図2】従来の計算機システムの概念図である。
【図3】従来の方法に係るフローチャートである。
【図4】本発明に係るフローチャートである。
31 プロセッサ 32 主メモリ 33 第1バス 34 第2バス 35 命令キャッシュメモリ 36 データキャッシュメモリ 37 第1バス監視回路
Claims (1)
- 【特許請求の範囲】 【請求項1】 プロセッサに第1バスを介して命令キャ
ッシュメモリ及びデータキャッシュメモリが接続され、 前記命令キャッシュメモリ及び前記データキャッシュメ
モリに第2バスを介して主メモリが接続され、 前記主メモリに記憶された命令コードの変更に伴い、前
記命令キャッシュメモリに記憶された命令コードを無効
化する場合において、 前記第1バス上の前記データキャッシュメモリへの前記
命令コードの書込みを監視し、 当該監視結果が前記命令キャッシュメモリに記憶された
前記命令コードが格納されていた前記主メモリ上への書
込みの場合、 前記データキャッシュメモリと前記主メモリへの前記命
令コードの書込みの実行と並行して、前記命令キャッシ
ュメモリに記憶された命令コードの無効化を実行するこ
とを特徴とする命令キャッシュメモリの無効化制御方
法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3207573A JPH0528043A (ja) | 1991-07-24 | 1991-07-24 | 命令キヤツシユメモリの無効化制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3207573A JPH0528043A (ja) | 1991-07-24 | 1991-07-24 | 命令キヤツシユメモリの無効化制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0528043A true JPH0528043A (ja) | 1993-02-05 |
Family
ID=16541993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3207573A Pending JPH0528043A (ja) | 1991-07-24 | 1991-07-24 | 命令キヤツシユメモリの無効化制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0528043A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6119865A (en) * | 1998-11-12 | 2000-09-19 | Oki Electric Industry Co., Ltd. | Accommodation container and accommodating method |
-
1991
- 1991-07-24 JP JP3207573A patent/JPH0528043A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6119865A (en) * | 1998-11-12 | 2000-09-19 | Oki Electric Industry Co., Ltd. | Accommodation container and accommodating method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3587591B2 (ja) | キャッシュ・ミスを制御する方法およびその計算機システム | |
US8352646B2 (en) | Direct access to cache memory | |
JPH06168119A (ja) | データ先読み制御装置 | |
US6735675B2 (en) | Method and apparatus for altering data length to zero to maintain cache coherency | |
JPH04230549A (ja) | 多重レベル・キャッシュ | |
JP3733604B2 (ja) | キャッシュメモリ | |
JPH0528043A (ja) | 命令キヤツシユメモリの無効化制御方法 | |
US6078971A (en) | Input/output buffer and method for invalidating transferred data in direct memory access transfer | |
KR20040047398A (ko) | 캐쉬 메모리를 이용한 데이터 억세스 방법 | |
JPH06243037A (ja) | データ先読み装置 | |
JPH08263374A (ja) | キャッシュ制御方法およびそれを用いたマルチプロセッサシステム | |
JP2976980B2 (ja) | キャッシュ制御方式 | |
JP3081635B2 (ja) | キャッシュメモリの無効化処理装置および無効化制御方法 | |
JP3219196B2 (ja) | キャッシュデータアクセス方法及び装置 | |
JPH10207773A (ja) | バス接続装置 | |
JP3145479B2 (ja) | マルチプロセッサシステムとそのキャッシュメモリ制御方法および装置 | |
JP2791319B2 (ja) | データ処理装置 | |
JPH0237446A (ja) | キャッシュ制御方式 | |
JP2923273B2 (ja) | データ処理システム | |
JP2507544B2 (ja) | 記憶制御装置 | |
JP2000259495A (ja) | キャッシュメモリ制御方法及びマルチプロセッサシステム | |
JP2001344152A (ja) | キャッシュメモリ装置 | |
JPH04264641A (ja) | キャッシュメモリ方式 | |
JPS63189943A (ja) | 分岐予測制御方式 | |
JPH04353948A (ja) | キャッシュメモリおよびキャッシュメモリシステム |