JPH03116231A - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH03116231A
JPH03116231A JP2161623A JP16162390A JPH03116231A JP H03116231 A JPH03116231 A JP H03116231A JP 2161623 A JP2161623 A JP 2161623A JP 16162390 A JP16162390 A JP 16162390A JP H03116231 A JPH03116231 A JP H03116231A
Authority
JP
Japan
Prior art keywords
instruction
cache bypass
request
data
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.)
Granted
Application number
JP2161623A
Other languages
English (en)
Other versions
JP2679363B2 (ja
Inventor
Hitoshi Yamahata
山畑 均
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 Corp
Original Assignee
NEC Corp
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 Corp filed Critical NEC Corp
Publication of JPH03116231A publication Critical patent/JPH03116231A/ja
Application granted granted Critical
Publication of JP2679363B2 publication Critical patent/JP2679363B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30047Prefetch instructions; cache control instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Advance Control (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマイクロプロセッサに関し、特にキャッシュメ
モリユニットを備えた情報処理装置に好適なマイクロプ
ロセッサに関スる。
〔従来の技術〕
よく知られているように、情報処理スピードを向上させ
る一手段としてキャッシュメモリユニットは多用されて
いる。しかしながら、マイクロプロセッサからアクセス
要求のあったデータをすべてキャッシュメモリユニ、ト
に取り込むことはかえって処理効率を悪くすることにな
る。例えば、周辺I10装置は通常マイクロプロセッサ
からのデータアクセスバスサイクルをもとにしてその状
態制御が起動されるので、そのようなデータをキャッシ
ュメモリユニットにストアさせる必要はない。また、一
連のデータをメモリと周辺工/○装置間あるいはメモリ
の二つの領域間において転送するストリング命令におい
ては、キャッシュメモリユニットの容量が小さいと、同
ユニットの内容がストリングデータで満たされてしまい
、スタック上のデータのように性能向上に有効なデータ
が消失することになる。
したがって、そのようなデータはキャッシュメモリユニ
ットに取り込まれることなく同ユニットをバイパスさせ
る必要がある。この目的のために、キャッシュメモリユ
ニットはキャッシュバイパス制御端子を有し同端子がア
クティブレベルでのデータアクセスバスサイクルでは非
活性状態となり、データをバイパスするように構成され
ている。
〔発明が解決しようとする課題〕
マイクロプロセッサはデータアクセスバスサイクルを起
動するとともにこのアクセスがどのような種類のもので
あるかを示すバスステータス信号も発生する。したがっ
て、バスステータス信号をデ゛コードすることによりキ
ャッシュメモリユニットのキャッシュバイパス制御端子
のレベルを制御することができる。
しかしながらバスステータス信号によって現わせ得る情
報の種類は制限されており、このため最近の高性能マイ
クロプロセッサを用いた情報処理装置に適したきめ細か
いキャッシュバイパス制御を行なうことはできない。特
に、特権命令における特権レジスタへの値設定のための
メモリリードアクセスやタスク切替え命令におけるタス
クコンテキストデータアクセスでは、転送命令や演算命
令のような通常命令によるバスサイクルと区別がつかず
、このため、情報レジスタの値更新やタスクコンテキス
トデータアクセスのひん度が少ないにもかかわらず、こ
れらのデータはキャッシュメモリユニットに取り込まれ
てしまうことになる。
したがって、本発明の目的は、きめ細いキャッシュバイ
パス制御を行なうための手段を設けたマイクロプロセッ
サを提供することにある。
本発明の他の目的は、キャッシュバイパス信号発生手段
を内蔵し、キャッシュメモリコントローラのキャッシュ
バイパス制御端子のレベル制御のための余分な回路をシ
ステムから削除することができるマイクロプロセッサを
提供することにある。
〔課題を解決するための手段〕
本発明によるマイクロプロセッサは、実行スべき命令を
デコードするとともに命令オペランドのためのデータア
クセス要求を発行する命令デコード部と、このアクセス
要求に応答してデータバスサイクルを起動するバス制御
部と、デコード部からのデフード情報にもとづき命令を
実行するとともにバス制御部との間でデータをやり取り
する命令実行部とを備え、さらに命令デコード部にアク
セスすべきデータが所定の種類のときにキャッシュバイ
パス要求を発行する手段を設け、かかるキャッシュバイ
パス要求に応答してバス制御部はバスサイクルの起動に
同期してキャッシュバイパス指令信号を発生するように
構成したことを特徴とする。
バス制御部からのキャッシュバイパス指令信号はキャッ
シュメモリユニットキャッシュバイパス制御端子に供給
され、この結果、同ユニットは当該指令信号に同期して
起動されたバスサイクルにおけるアクセスデータに対し
てはキャッシュ動作を行なわない。
本発明の実施例においては、命令デコード部内に設けた
キャッシュバイパス要求発行手段は、実行すべき命令の
種類を示す情報を受け、当該情報が周辺I10装置に対
するデータの入出力命令。
ストリング命令、特権命令、タスク切替え命令およびマ
イクロプロセッサ構成のシステムにおけるプロセッサ間
周期のためのセマフォデータ操作命令を示すとき、キャ
ッシュバイパス要求を発行する。好ましくは、キャッシ
ュバイパス要求発行手段はさらにオペランド番号を示す
情報も受け、これによって実行すべき命令が上記5つの
命令であってもオペランド番号(種類)、すなわちデー
タアクセス要求が第1オペランドか第2オペランドかに
応じてキャッシュバイパス要求を発行するかどうか、さ
らに制御することができる。好ましい実施例においては
、命令実行部にもキャッシュバイパス要求発行手段が設
けられており、同手段は割込み処理および例外処理にお
けるベクタ情報の読み込みのためのデータアクセス要求
時にキャッシュバイパス要求を発行する。
かくして、アクセスすべきデータに応じてきめ細かいキ
ャッシュバイパスが可能となる。しかも、マイクロプロ
セッサ自身がキャッシュバイパス指令信号を発生するの
で、システム全体の構成も簡素化される。
〔実施例〕
次に、本発明について図面を参照して説明する。
第1図は本発明の第一の実施例によるマイクロプロセッ
サ100のブロック図である。第1図において、命令デ
コード部101はバス制御部103から命令バス(II
E)104を通して送られる命令をデコードし命令オペ
ランドアクセス要求信号(QAR)105を用いてバス
制御部103に対し命令オペランドのアクセス要求を行
うとともに、デコード済命令情報106を命令実行部1
02へ送る。命令実行部102はデコード済命令情報1
06をもとに命令を実行し、内部データバス(IDE)
107を通してバス制御部103との間で命令オペラン
ドをやりとりする。また命令実行部102は割込み要求
信号(INT)116にともなう処理や命令実行時に生
じた例外処理時に実行用データアクセス要求信号(ED
AR)108を用いてバス制御部103に対しデータの
アクセス要求を行う。バス制御部103は命令オペラン
ドアクセス要求信号105および実行用データアクセス
要求信号108に応じてシステムアドレスバス(SAB
)109.システムデータバス(SDR)110.シス
テム制御バス(SCB)111g動し、バスアクセスを
行う。間接アドレッシングによるオペランドアクセス要
求では、バス制御部103はその間接値を得るためのバ
スサイクルを起動し、それによって得た間接値をバス(
IDD) l 15を介して命令デコード部101に転
送する。システムアドレス、データおよびコントロール
バス(SAB、SDB、5OB)109゜110.11
4には、図示しないがキャッシュメモリユニット、メイ
ンメモリおよび周辺I10装置が接続され、情報処理シ
ステムが構築されます。
命令デコード部101は信号105によってアクセスす
べきオペランドデータがキャッシュすべきものでないと
きはキャッシュバイパス要求信号(QCBRQ)12を
バス制御部103に与える。
命令実行部102もまた信号108によってアクセスす
べき実行データがキャッシュすべきものでないときはキ
ャッシュバイパス要求信号(ECBRQ)113をバス
制御部103に供給する。バス制御部103は信号10
5又は105によるデータアクセス要求ととも信号11
2又は113によるキャッシュバイパス要求を受けると
、当該データアクセスのためのバスサイクルに同期して
キャッシュバイパス信号(C!BYP)114をアクテ
ィブレベル(本実施例)ではロウレベルにする。この信
号114はキャッシュメモリユニットのキャッシュバイ
パス制御端子に供給されており、その結果、アクセス要
求のあったデータに対するキャッシュ動作を禁止する。
命令デコーダ101は命令デコード時に、命令コードと
オペランドの種類や組合せに応じて、命令オペランドア
クセス要求信号105とともに命令オペランドキャッシ
ュバイパス信号112をアクティブにする。そのための
命令デコーダ101の内部構成が第2図に示されている
。命令バス104によってバス制御部103から送られ
てきた命令は、命令キュー201に蓄えられ命令アライ
ナ202によって1命令ごとに命令コード203゜アド
レッシングフィールド204.ディスブレースメント2
05に分割されて、それぞれ命令コードレジスタ206
.アドレッシングフィールドレジスタ207.ディスプ
レースメントレジスタ208に設定される。バス115
からの間接値はレジスタ217にストアされる。命令コ
ードデコーダ209は命令フードレジスタ206内の命
令コードをデコードし、アドレシングフィールドデコー
ダ210はアドレッシングフィールドレジスタ207内
のアドレッシングフィールドをデコードする。デコーダ
209,210からのデコード結果をもとにして、命令
実行情報生成部211はデコード済命令情報106を作
る。命令オペランドアクセス制御部212においてはそ
れぞれのデコーダ209,210からのデコード結果と
ディスプレースメントレジスタ208内のディスプレー
スメント値および/又はレジスタ217からの間接値と
により命令オペランドアクセス要求信号105を生成す
る。上記の各レジスタ、デコーダ、ユニットは命令デコ
ードシーケンスコントローラ220からのシーケンス(
f4i221によって制御される。
信号105によって要求されるオペランドデータをキャ
ッシュバイパスさせるかどうかを示す信号112はキャ
ッシュバイパス検出器213によって制御される。この
検出器213には、命令コードデコーダ209から実行
すべき命令の種類を示す情報214が供給される。本実
施例では、キャッシュバイパスが好ましいオペランドデ
ータを要求する命令として、周辺I10装置に対する入
力および出力命令、ストリング操作命令、特権命令、タ
スク切替操作命令ならびにセマフォデータ操作命令を設
定している。これらの命令には数ビットの識別コードが
それぞれ割り当てられており、デコードされた命令に対
応する識別コードが命令指示情報214として検出器2
13に供給される。転送命令や演算命令等のキャッシュ
すべきオペランドデータを要求する命令(以下、一般命
令という)がデコードされると、一般命令であることを
示すコードが検出器213に供給される。
検出器213にはさらにシーケンスコントローラ220
からオペランド番号(又は種類)を示す情報215が供
給されている。この情報215によってキャッシュバイ
パス検出器215は命令オペランドアクセス制御部21
2が要求するオペランドか第1オペランド(通常ソース
オペランド)か第2オペランド(ディステネーションオ
ペランド)かを知ることができる。したがって、キャッ
シュバイパスが好ましいオペランドを要求する命令であ
−ってもソースオペランドかディステネーションオペラ
ンドかによってキャッシュバイパス信号1120レベル
を制御することができる。オペランドアドレッシングに
は間接アドレシングがあり、そのような間接値はしばし
ば用いられる。
そこで、アドレシングフィールドデコーダ210からの
デコード情報のうち、間接アドレッシングを示す情報2
16がキャッシュバイパス検出器213にさらに供給さ
れている。この結果、信号105によるアクセス要求が
間接アドレッシング実行のための間接値リード要求の場
合は、検出器213は他の情報214,215にかかわ
らずキャッシュバイパス要求信号112をインアクティ
ブとする。
かくして、キャッシュバイパス検出器213は情報21
4,215および216に応答して下の第1表に依って
キャッシュバイパス要求信号112のレベルを制御する
第 1 表 すなわち、命令オペランドキャッシュバイパス信号11
2がアクティブハイ(H)レベルになる(キャッシュバ
イパスが行なわれる)ときは、周辺I10装置から入力
を行う入力命令がデコードされた場合のソースオペラン
ドの命令オペランドアクセス要求と、出力命令がデコー
ドされた場合のディスティネーションオペランドの命令
オペランドアクセス要求である。入力命令におけるディ
ステネーションオペランドデータと出力命令におけるソ
ースオペランドデータはこれらを用いた処理がその後実
行され得るのでキャッシュさせた方が有利であり、それ
故信号112はインアクティブ(L)レベルとされる。
また、ストリング、特権、タスク切替およびセマフォデ
ータ操作の各命令においては、第1および第2オペラン
ド要求の両方ともキャッシュバイパス要求信号112は
アクティブレベルとなる。第1表には示していないが、
間接アドレッシングにおける間接値リードのための要求
については信号112はインアクティブレベルとなる。
なお、検出器213は情報214−216を入力とする
PLAおよび/又はランダムロジックで構成できる。
かくして、デコードされた命令の種類およびオペランド
の種類に応じたきめ細いキャッシュノ・イパス制御が実
行される。
第3図に命令実行部102の内部構成を示す。
図では本発明と関連する部分のみ示している。本命令実
行部102はマイクロプログラム制御方式を用いている
。命令デコーダ101からのデコード済命令情報106
のうち実行すべき命令に対応する一連のマイクロフログ
ラムの先頭番地情報106′はセレクタ301を介して
マイクロアドレスレジスタ302にロートサレ、マイク
ロプログラムメモリ (マイクロROM)304からマ
イクロ命令が読み出される。読み出されたマイクロ命令
はマイクロ命令レジスタ305にラッチされる。オペコ
ードはオペコードデコーダ306でデコードされて実行
制御情報3061が発生される。
マイクロ命令の他のフィールドはフィールドデコーダ3
07でデコードされ対応する制御情報3071が発生さ
れる。割込み要求1例外処理要求2分岐処理要求がない
限り、レジスタ302の内容はインクリメンタ303で
1つインクリメントされセレクタ301を介してレジス
タ302に再ロードされる。その結果、次のマイクロ命
令がマイクロROM304から読み出され実行される。
これらレジスタ、デコーダ等の制御は命令実行シーケン
スコントローラ309からのシーケンス情報3091お
よびセレクタ制御情報3092 ニよって行なわれる。
一方、割込み要求信号(INT)116が発生されたり
、命令実行での例外発生にともなう例外処理要求(EX
PI)117が発行されると、シーケンスコントローラ
309はセレクタ制御情報3092によりセレクタ30
1が定数発生部310を選択するように制御する。この
定数発生部310は割込み要求および例外発生に対する
処理を起動するためのマイクロプログラムの先頭アドレ
ス情報を発生する。かくして、かかる処理のための一連
のマイクロプログラムが起動される。
このマイクロプログラムの中で割込み1例外処理のため
のベクタ情報をメモリから読み出すマイクロ命令がレジ
スタ305にロードされる。この命令のオペコードは、
残りのフィールドがベクタ情報の読み込みのためのアク
セス情報として用いられることを示しているので、デコ
ーダ306はレジスタロード信号3062を発生し、そ
の結果、残りのフィールドが実行用データアクセス要求
レジスタ308にロードされる。このフィールドはさら
にキャッシュバイパス要求信号113に対応するビット
を有し、当該ビットは“1”にセットされている。した
がって、信号108による実行用データアクセス要求と
ともキャッシュバイパス要求信号113がアクティブレ
ベルとなる。
バス制御部103では命令オペランドキャッシュバイパ
ス信号112や実行用データキャッシュバイパス信号1
13によってキャッシュバイパスアクセスが指定される
とキャッシュバイパス端子(CBYP)114をアクテ
ィブとしてバスサイクルを起動することにより外部キャ
ッシュ装置に対しキャッシュバイパスアクセスを伝える
第4図(a)に通常のリードバスサイクルの例を、同図
(b)にキャッシュバイパス端子114によるキャッシ
ュバイパスリードサイクルの例を示す。
以上のとおり、本実施例によるマイクロプロセッサはア
クセスすべきデータに応じてきめ細かいキャッシュバイ
パス制御を実行でき、しかもフロセッサ自身がキャッシ
ュバイパス要求信号を発生するので、システム全体の構
成も簡素化される。
第5図に本発明の第2の実施例を示す。第1図と同−機
能部は同じ番号で示してその説明を省略する。本実施例
のマイクロプロセッサはアドレス変換機構を内蔵してお
り、アドレス変換部601と、この内部にTLB (T
ranslation Look as−ide Bu
ffer) 602を有し、ベージングによる仮想記憶
管理方式を用いる。
第6図は、第5図のマイクロプロセッサにおいて、仮想
アドレスから実アドレスへの変換方式を説明した図であ
る。第6図のように32ビット長の仮想アドレス701
は上位ビット側から2ビツトのセクションID702.
10ビツトのエリアID703.8ビツトのページID
704.12ビツトのページ内オフセット705に分け
られる。
仮想アドレスから実アドレスへの変換は、まづ始めにセ
クションID702によりプロセッサ内のエリア・テー
ブル・レジスタ706から対応するレジスタが選択され
る。次にエリア・テーブル・レジスタ内のエリア・テー
ブル・ベース・アドレス707で指定されるエリア・テ
ーブル708の中からエリアID703で指定されるエ
リア・テーブル・エントリ(ATE)709が選択され
る。次にATE内のページ・テーブル・ベース・アドレ
スγ10で指定されるページ・テーブル711の中から
ページID704で指定されるページ・テーブル・エン
トリ(PTE)712が選択される。最後にPTE内の
実ページ番号713で指定されたページ714の中から
ページ内オフセット705の分を加えたものが変換され
た実アドレスとなる。ひとたび仮想アドレスから実アド
レスへの変換が行われると、変換結果はTLB715に
蓄えられる。すなわち、仮想アドレス701の上位20
ビツトがTLBエントリの連想部716に、変換結果の
実ページ番号713と保護情報などの仮想記憶管理情報
がデータ部717に設定されTLBエントリが有効にな
る。
再び同一仮想アドレス701の変換が行われると、仮想
アドレス701の上位20ビツト718がTLB715
内の各有効エントリの連想部716と比較される。比較
の結果が一致するとデータ部717から実ページ番号7
13が読み出されて、ページ内オフセット705と合わ
せて直ちに実アドレスを得る。
第7図はページ・テーブル・エントリ712の内容を示
した図である。ページ・テーブル・エントリ712は実
ページ番号RPN713.キャッシュバイパスビット8
01.モディファイビット802、有効ビット803と
その他の仮想記憶管理情報とから成り立っている。有効
ビット803はページ・テーブル・エン)す712が有
効か否かを示し、モディファイビット802はこのペー
ジ・テーブル・エントリ712で指定されるページに対
して書き込みが行われたか否かを示す。モディファイビ
ット802はオペレーティング・システムが仮想記憶管
理を行うために使用される。
キャッシュバイパスビット801はこのページ・テーブ
ル・エン)す712で指定されるページに対するアクセ
スをキャッシュバイパスさせるか否かを示す。
第8図はTLB715の内容を示した図である。
TLB715内のエントリは連想部716とデータ部7
17とからなる。連想部716は仮想アドレス7・1の
上位20ビツト718とTLBエントリの有効ビット9
01とからなる。データ部71γは実ページ番号713
とTLB内キャッシュバイパスビット902とモディフ
ァイビット903の他仮想記憶管理情報からなる。
プロセッサがページ・テーブル・エントリ712のキャ
ッシュバイパスビット801によってキャッシュバイパ
スアクセスが指定されている領域に対してアクセスを行
う場合について説明する。
命令デコード部101にって作られた命令オペランドア
クセス要求信号105にはオペランドのアドレス、アク
セスの種類などの情報が含まれている。このうちオペラ
ンドのアドレスはアドレス変換部601によって第6図
に示したとおり仮想アドレスから実アドレスへ変換され
る。このときページテーブルエントリ712が参照され
るが、参照されたページテーブルエントリのキャッシュ
バイパスビット801の値は変換された仮想−実アドレ
ス対がTLB602内に新たなエントリとして登録され
るときに同時にTLB内キャッシュバイパスビット90
2として登録されるとともに第9図に示すページバイパ
スフリップフロップ1001にラッチされる。ページバ
イパスフリップフロップ1001の値は命令オペランド
キャッシュバイパス信号112の実行用データキャッシ
ュバイパス信号113とともにORアゲ−1002によ
り論理和されてデータキャッシュバイパス信号604と
してバス制御部103へ送られる。仮想アドレスを変換
して得られた実アドレスは他のアクセス情報と合せてバ
スアクセス情報sO:1してバス制御部103へ送られ
る。
アドレス変換時にTLBが使用される場合にはTLBの
対応するエントリから読み出されたTLB内キャッシュ
バイパスビット902がページバイパスフリップフロッ
プ1001にラッチされて使用される。
このように、本実施例ではページテーブルにキャッシュ
バイパス指定を行うことにより命令やオペランドの種類
とは独立に、特定のメモリ空間に対するキャッシュバイ
パスアクセスを指定することができる。
なお、第1および第2の実施例において、割込み処理や
例外処理に必要なベクタ情報は比較的少ないので、命令
実行部102かものキャッシュバイパス要求信号108
は削除してもよい。また、各実施例に示したマイクロプ
ロセッサに内部キャッシュユニットを内蔵することもで
き、この場合キャッシュバイパス信号114は外部キャ
ッシュユニットとともに内部キャッシュユニットにも共
通に供給される。
〔発明の効果〕
以上のとおり、本発明によれば、少なくとも命令デコー
ド部にキャッジ−バイパス検出手段を設けたことにより
、アクセスすべきデータに応じてきめ細いキャッシュバ
イパス制御を可能とするマイクロプロセッサが提供され
る。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示すブロック図、第2
図は第1図の命令デコード部の構成を示すブロック図、
第3図は第1図の命令実行部の構成を示すブロック図、
第4図(a)、 (b)はそれぞh通常のリードバスサ
イクルおよびキャッシュバイパスリードサイクルを示す
タイミングチャート、第5図は本発明の第2の実施例を
示すブロック図、第6図は第5図のアドレス変換部によ
って実行される仮想アドレスから実アドレスの変換を示
す動作図、第7図は第6図に示したページテーブルエン
トリの内容を示すデータフォーマット、第8図は第7図
のTLBの内容を示すデータフォーマット、第9図は第
6図に示したキャッシュバイパス信号604の発生回路
図である。

Claims (5)

    【特許請求の範囲】
  1. (1)実行すべき命令をデコードするとともに命令オペ
    ランドのためのデータアクセス要求を発行する命令デコ
    ード部と、前記データアクセス要求に応答してデータア
    クセスバスサイクルを起動するバス制御部と、前記命令
    デコード部からのデコード情報にもとづき命令を実行し
    前記バス制御部との間でデータの転送を行なう命令実行
    部とを備え、前記命令デコード部にアクセスすべきデー
    タの所定の種類のときにキャッシュバイパス要求を発行
    する手段を設け、前記バス制御部は前記キャッシュバイ
    パス要求に応答してデータアクセスバスサイクルの起動
    に同期してキャッシュバイパス指令信号を発生すること
    を特徴とするマイクロプロセッサ。
  2. (2)前記キャッシュバイパス要求発行手段はデコード
    された命令の種類を示す第1の情報とアクセスすべきオ
    ペランドの種類を示す第2の情報とを受け、これら第1
    および第2の情報をもとに前記キャッシュバイパス要求
    を発行することを特徴とする請求項1のマイクロプロセ
    ッサ。
  3. (3)前記キャッシュバイパス要求発行手段はアドレシ
    ング方式を示す第3の情報をさらに受け、間接アドレッ
    シングのための間接値を読み込むアクセス要求に対して
    は前記第1および第2の情報にかかわらずキャッシュバ
    イパス要求を発行しないことを特徴とする請求項2のマ
    イクロプロセッサ。
  4. (4)前記命令実行部は所定の処理の実行のためのデー
    タアクセス要求を前記バス制御部に発行する手段と当該
    アクセス要求とともにキャッシュバイパス要求を発行す
    る手段とを有することを特徴とする請求項1、2又は3
    のマイクロプロセッサ。
  5. (5)前記命令デコード部からのデータアクセス要求が
    伴なう仮想アドレスを実アドレスに変換するアドレス変
    換部をさらに備え、このアドレス変換部に変換された実
    アドレスが所定のメモリ領域にあるときにキャッシュバ
    イパス要求を発生する手段を設けたことを特徴とする請
    求項1、2、3、又は4のマイクロプロセッサ。
JP2161623A 1989-06-20 1990-06-20 マイクロプロセッサ Expired - Lifetime JP2679363B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP15858489 1989-06-20
JP1-158584 1989-06-20

Publications (2)

Publication Number Publication Date
JPH03116231A true JPH03116231A (ja) 1991-05-17
JP2679363B2 JP2679363B2 (ja) 1997-11-19

Family

ID=15674885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2161623A Expired - Lifetime JP2679363B2 (ja) 1989-06-20 1990-06-20 マイクロプロセッサ

Country Status (3)

Country Link
US (1) US5247639A (ja)
EP (1) EP0405318A3 (ja)
JP (1) JP2679363B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008530656A (ja) * 2005-02-07 2008-08-07 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド データ転送中にキャッシュへのアクセスを制限するシステムおよびその方法
JP2012512449A (ja) * 2008-12-16 2012-05-31 インターナショナル・ビジネス・マシーンズ・コーポレーション 演算データ構造

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5386547A (en) * 1992-01-21 1995-01-31 Digital Equipment Corporation System and method for exclusive two-level caching
US5423016A (en) * 1992-02-24 1995-06-06 Unisys Corporation Block buffer for instruction/operand caches
JP3226055B2 (ja) * 1992-09-16 2001-11-05 松下電器産業株式会社 情報処理装置
JP3442118B2 (ja) * 1993-11-19 2003-09-02 富士通株式会社 バッファ回路
US5566318A (en) * 1994-08-02 1996-10-15 Ramtron International Corporation Circuit with a single address register that augments a memory controller by enabling cache reads and page-mode writes
US5729713A (en) * 1995-03-27 1998-03-17 Texas Instruments Incorporated Data processing with first level cache bypassing after a data transfer becomes excessively long
US5860155A (en) * 1995-11-16 1999-01-12 Utek Semiconductor Corporation Instruction decoding mechanism for reducing execution time by earlier detection and replacement of indirect addresses with direct addresses
US5724533A (en) * 1995-11-17 1998-03-03 Unisys Corporation High performance instruction data path
US5745728A (en) * 1995-12-13 1998-04-28 International Business Machines Corporation Process or renders repeat operation instructions non-cacheable
US6378023B1 (en) 1996-02-14 2002-04-23 Advanced Micro Devices, Inc. Interrupt descriptor cache for a microprocessor
US6021470A (en) * 1997-03-17 2000-02-01 Oracle Corporation Method and apparatus for selective data caching implemented with noncacheable and cacheable data for improved cache performance in a computer networking system
US6094708A (en) * 1997-05-06 2000-07-25 Cisco Technology, Inc. Secondary cache write-through blocking mechanism
US6128703A (en) * 1997-09-05 2000-10-03 Integrated Device Technology, Inc. Method and apparatus for memory prefetch operation of volatile non-coherent data
US6052743A (en) * 1997-11-12 2000-04-18 National Instruments Corporation Buffer object for performing buffered data transfers in a data acquisition system
US6115385A (en) 1998-03-11 2000-09-05 Cisco Technology, Inc. Method and system for subnetting in a switched IP network
GB2335764B (en) * 1998-03-27 2002-10-09 Motorola Ltd Circuit and method of controlling cache memory
US6393493B1 (en) * 1998-04-20 2002-05-21 National Instruments Corporation System and method for optimizing serial USB device reads using virtual FIFO techniques
US6785274B2 (en) 1998-10-07 2004-08-31 Cisco Technology, Inc. Efficient network multicast switching apparatus and methods
US6272599B1 (en) * 1998-10-30 2001-08-07 Lucent Technologies Inc. Cache structure and method for improving worst case execution time
US6397300B1 (en) * 1999-06-25 2002-05-28 International Business Machines Corporation High performance store instruction management via imprecise local cache update mechanism
US6463507B1 (en) 1999-06-25 2002-10-08 International Business Machines Corporation Layered local cache with lower level cache updating upper and lower level cache directories
US6418513B1 (en) 1999-06-25 2002-07-09 International Business Machines Corporation Queue-less and state-less layered local data cache mechanism
US6446166B1 (en) 1999-06-25 2002-09-03 International Business Machines Corporation Method for upper level cache victim selection management by a lower level cache
US6405285B1 (en) 1999-06-25 2002-06-11 International Business Machines Corporation Layered local cache mechanism with split register load bus and cache load bus
US6385694B1 (en) 1999-06-25 2002-05-07 International Business Machines Corporation High performance load instruction management via system bus with explicit register load and/or cache reload protocols
US6434667B1 (en) 1999-06-25 2002-08-13 International Business Machines Corporation Layered local cache with imprecise reload mechanism
US6665747B1 (en) * 1999-10-22 2003-12-16 Sun Microsystems, Inc. Method and apparatus for interfacing with a secondary storage system
KR100769557B1 (ko) * 1999-11-24 2007-10-23 엔엑스피 비 브이 데이터 처리 시스템 및 데이터 처리 유닛
US6397301B1 (en) * 1999-12-29 2002-05-28 Intel Corporation Preventing access to secure area of a cache
EP1275046B1 (en) * 2000-04-12 2010-10-06 DSP Group Switzerland AG Data processing circuit with a cache memory and apparatus containing such a circuit
US6850980B1 (en) * 2000-06-16 2005-02-01 Cisco Technology, Inc. Content routing service protocol
US6901485B2 (en) 2001-06-21 2005-05-31 International Business Machines Corporation Memory directory management in a multi-node computer system
US6760817B2 (en) 2001-06-21 2004-07-06 International Business Machines Corporation Method and system for prefetching utilizing memory initiated prefetch write operations
US6754782B2 (en) 2001-06-21 2004-06-22 International Business Machines Corporation Decentralized global coherency management in a multi-node computer system
US6658538B2 (en) * 2001-06-21 2003-12-02 International Business Machines Corporation Non-uniform memory access (NUMA) data processing system having a page table including node-specific data storage and coherency control
US6615322B2 (en) 2001-06-21 2003-09-02 International Business Machines Corporation Two-stage request protocol for accessing remote memory data in a NUMA data processing system
US6760809B2 (en) 2001-06-21 2004-07-06 International Business Machines Corporation Non-uniform memory access (NUMA) data processing system having remote memory cache incorporated within system memory
US6711652B2 (en) 2001-06-21 2004-03-23 International Business Machines Corporation Non-uniform memory access (NUMA) data processing system that provides precise notification of remote deallocation of modified data
US6654857B2 (en) 2001-06-21 2003-11-25 International Business Machines Corporation Non-uniform memory access (NUMA) computer system having distributed global coherency management
US6842803B2 (en) * 2001-07-09 2005-01-11 Advanced Micro Devices, Inc. Computer system with privileged-mode modem driver
US7464311B2 (en) * 2002-08-05 2008-12-09 Mitsubishi Denki Kabushiki Kaisha Apparatus and method for device selective scans in data streaming test environment for a processing unit having multiple cores
US8307194B1 (en) 2003-08-18 2012-11-06 Cray Inc. Relaxed memory consistency model
US7743223B2 (en) 2003-08-18 2010-06-22 Cray Inc. Decoupling of write address from its associated write data in a store to a shared memory in a multiprocessor system
US7519771B1 (en) * 2003-08-18 2009-04-14 Cray Inc. System and method for processing memory instructions using a forced order queue
US7543133B1 (en) 2003-08-18 2009-06-02 Cray Inc. Latency tolerant distributed shared memory multiprocessor computer
US7421565B1 (en) 2003-08-18 2008-09-02 Cray Inc. Method and apparatus for indirectly addressed vector load-add -store across multi-processors
US8356127B2 (en) * 2004-12-09 2013-01-15 Rambus Inc. Memory interface with workload adaptive encode/decode
US9152823B2 (en) * 2005-04-22 2015-10-06 Storagecraft Technology Corporation Systems, methods, and computer readable media for computer data protection
US8909871B2 (en) * 2006-08-03 2014-12-09 International Business Machines Corporation Data processing system and method for reducing cache pollution by write stream memory access patterns
US8606998B2 (en) 2006-08-24 2013-12-10 Advanced Micro Devices, Inc. System and method for instruction-based cache allocation policies
US8683139B2 (en) 2006-10-31 2014-03-25 Hewlett-Packard Development Company, L.P. Cache and method for cache bypass functionality
JP2009093559A (ja) * 2007-10-11 2009-04-30 Nec Corp プロセッサ、情報処理装置、プロセッサのキャッシュ制御方法
US8108617B2 (en) * 2008-02-08 2012-01-31 International Business Machines Corporation Method to bypass cache levels in a cache coherent system
US9075719B2 (en) * 2012-02-10 2015-07-07 Hitachi, Ltd. Computer system and storage system
JP6155723B2 (ja) * 2013-03-18 2017-07-05 富士通株式会社 レーダ装置及びプログラム
US9568986B2 (en) * 2013-09-25 2017-02-14 International Business Machines Corporation System-wide power conservation using memory cache
US20150205724A1 (en) * 2014-01-20 2015-07-23 Honeywell International Inc. System and method of cache partitioning for processors with limited cached memory pools

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54151330A (en) * 1978-05-20 1979-11-28 Nec Corp Information processor
JPS5848289A (ja) * 1981-09-17 1983-03-22 Fuji Electric Co Ltd バツフアメモリ制御方式
JPS6159554A (ja) * 1984-08-31 1986-03-27 Hitachi Ltd キャッシュメモリを有するデータ処理装置
JPS62274349A (ja) * 1986-05-22 1987-11-28 Mitsubishi Electric Corp デ−タ処理システム
JPH0198046A (ja) * 1987-10-09 1989-04-17 Nec Corp キャッシュメモリ制御用集積回路

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4075686A (en) * 1976-12-30 1978-02-21 Honeywell Information Systems Inc. Input/output cache system including bypass capability
US4942518A (en) * 1984-06-20 1990-07-17 Convex Computer Corporation Cache store bypass for computer
JPS62102344A (ja) * 1985-10-29 1987-05-12 Fujitsu Ltd バツフア・メモリ制御方式
US4959777A (en) * 1987-07-27 1990-09-25 Motorola Computer X Write-shared cache circuit for multiprocessor system
JP2617974B2 (ja) * 1988-03-08 1997-06-11 富士通株式会社 データ処理装置
US4905141A (en) * 1988-10-25 1990-02-27 International Business Machines Corporation Partitioned cache memory with partition look-aside table (PLAT) for early partition assignment identification

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54151330A (en) * 1978-05-20 1979-11-28 Nec Corp Information processor
JPS5848289A (ja) * 1981-09-17 1983-03-22 Fuji Electric Co Ltd バツフアメモリ制御方式
JPS6159554A (ja) * 1984-08-31 1986-03-27 Hitachi Ltd キャッシュメモリを有するデータ処理装置
JPS62274349A (ja) * 1986-05-22 1987-11-28 Mitsubishi Electric Corp デ−タ処理システム
JPH0198046A (ja) * 1987-10-09 1989-04-17 Nec Corp キャッシュメモリ制御用集積回路

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008530656A (ja) * 2005-02-07 2008-08-07 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド データ転送中にキャッシュへのアクセスを制限するシステムおよびその方法
JP2012512449A (ja) * 2008-12-16 2012-05-31 インターナショナル・ビジネス・マシーンズ・コーポレーション 演算データ構造

Also Published As

Publication number Publication date
JP2679363B2 (ja) 1997-11-19
EP0405318A2 (en) 1991-01-02
US5247639A (en) 1993-09-21
EP0405318A3 (en) 1991-11-27

Similar Documents

Publication Publication Date Title
JPH03116231A (ja) マイクロプロセッサ
KR100271947B1 (ko) 프로세서의 명령어 집합간의 변환 방법 및 장치
JP3285644B2 (ja) キャッシュメモリを有するデータプロセッサ
US5367705A (en) In-register data manipulation using data shift in reduced instruction set processor
US4695950A (en) Fast two-level dynamic address translation method and means
JP4531890B2 (ja) 原子的更新処理を実行する方法
US5249286A (en) Selectively locking memory locations within a microprocessor's on-chip cache
US5475827A (en) Dynamic look-aside table for multiple size pages
EP0381323B1 (en) Method and apparatus for increasing the data storage rate of a computer system
JPH02190930A (ja) ソフトウエア命令実行装置
JPH0578050B2 (ja)
JPH04109336A (ja) データ処理装置
JPH06231043A (ja) 仮想記憶システムにおけるデータ転送装置及びその方法
JPH0128415B2 (ja)
JPH02227768A (ja) データ処理システム
WO2000036504A1 (en) Processor emulation instruction counter virtual memory address translation
JPH044618B2 (ja)
US5333287A (en) System for executing microinstruction routines by using hardware to calculate initialization parameters required therefore based upon processor status and control parameters
KR100373576B1 (ko) 변환 장치의 엔트리를 무효로 하는 시스템 및 방법
JPH0380336A (ja) 二重オペレーティングシステム計算機の動作強化装置のmバイト命令ワードcpuの動作強化装置及びレジスタ指向型アーキテクチュアcpuの動作強化装置
EP0374526A2 (en) Op branching for starting micro-routines
JP2001265651A (ja) データ処理装置
JP2535086B2 (ja) リング削減ロジック装置
JP2696578B2 (ja) データ処理装置
CA1250666A (en) Central processing unit for a digital computer