[go: up one dir, main page]

JPH05257808A - マイクロプロセッサ及びその動作変換方法 - Google Patents

マイクロプロセッサ及びその動作変換方法

Info

Publication number
JPH05257808A
JPH05257808A JP4329917A JP32991792A JPH05257808A JP H05257808 A JPH05257808 A JP H05257808A JP 4329917 A JP4329917 A JP 4329917A JP 32991792 A JP32991792 A JP 32991792A JP H05257808 A JPH05257808 A JP H05257808A
Authority
JP
Japan
Prior art keywords
mode
microprocessor
cache
contents
initial
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
Application number
JP4329917A
Other languages
English (en)
Inventor
Edward T Grochowski
エドワード・ティ・グロコウスキイ
Peter D Macwilliams
ピーター・ディ・マクウィリアムズ
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.)
Intel Corp
Original Assignee
Intel 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25163066&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH05257808(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Intel Corp filed Critical Intel Corp
Publication of JPH05257808A publication Critical patent/JPH05257808A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • 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/46Multiprogramming arrangements

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)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 選択されたメモリの内容を選択的に保持しな
がら、実モードと保護モードとの間で速くしかも効率的
に切り替えることのできるマイクロプロセッサを提供す
る。 【構成】 実モードと保護モードの少なくとも2つの動
作モードを有し、始動時に実モードに初期化されるマイ
クロプロセッサは、複数のレジスタと、内部キャッシュ
と、上記レジスタと内部キャッシュとに接続した制御装
置と、キャッシュの内容を保持しながら保護モードから
実モードに変換するマイクロコード装置と、マイクロプ
ロセッサに接続した外部電気的ピンを含み、上記保護モ
ード−実モードの変換をトリガする装置とから成ってい
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロプロセッサに
関し、更に詳しくは、1つ以上の動作モードを有しかつ
これらモードの1つのモード用に設計されたソフトウェ
アに適応するようモード間で切り替えるマイクロプロセ
ッサに関する。
【0002】
【従来の技術】マイクロプロセッサ技術は、過去10年
にわたって急速に進歩してきた。10年前進歩している
と考えられていたマイクロプロセッサも、いくつかの新
しい世代のマイクロプロセッサに次々に取って代わって
きている。新しい世代のマイクロプロセッサは、機能お
よび能力ともに非常に拡大され、動作速度もはるかに高
速になり、以前の世代のものより格段に優れている。新
しいマイクロプロセッサ用に書込まれたソフトウェア
は、新しい機能の多くを利用することができるが、以前
の世代のマイクロプロセッサ用に書込まれたそれほど複
雑でない比較的古いソフトウェアも、いまだに一般的に
使用されかつ市販されている。大抵のコンピュータ・ユ
ーザは、製造者が新しいモデルを開発するたびに以前の
ソフトウェアを捨てることを望んではいないし、実際
に、ある特定の目的で以前の動作方式を使用した場合有
利なことがある。したがって、マイクロプロセッサの設
計者は、代表的には、古いソフトウェアと互換性がある
ように新しいマイクロプロセッサを設計している。
【0003】以前のソフトウェアが新しいマイクロプロ
セッサで実行することができるようにするため、ある製
造者は、初期のマイクロプロセッサの動作特性を有する
モードの少なくとも1つを含むいくつかの使用可能なモ
ードを備えたマイクロプロセッサを設計している。たと
えば、インテル・コーポレーションは、何年も前に最初
の8086マイクロプロセッサを製造した。それ以来、
このマイクロプロセッサは、80286,80386,
80486と徐々に発展してきた。これら後期世代のマ
イクロプロセッサは、いくつかの使用可能な動作モード
を有している。8086用に書込まれたプログラムとの
互換性を得るため、後期世代は、優れた動作能力とは異
なるデータ構造を備えた新しいマイクロプロセッサの能
力を十分に利用することができる「保護」モードのよう
な別のモードで動作できるほか、8086マイクロプロ
セッサのデータ構造と動作特性を有する代表的には実モ
ードと呼ばれている「実アドレス」モードでも動作でき
る。
【0004】いくつかのタイプのソフトウェアでは、プ
ログラム実行中に動作モードを切り替えることは有効的
である。たとえば、保護モードと実モード間で切り替え
るプログラムの例として、メモリ管理プログラムがあ
る。メモリ管理プログラムは、実モードで動作を開始
し、その動作のいくつかのポイントで保護モードに切り
替えて、1メガバイトを超えるアドレスでデータをアク
セスし、データ・ブロックをコピーし、その後、さらに
処理するため実モードに戻る。
【0005】始動時、8086のレジスタおよびその結
果は、マイクロコードにより実モード構成に初期化され
る。初期化後、実モードに適したデータ構造にセット・
アップするソフトウェアが実行される。しかし、アプリ
ケーション・ソフトウェアが実モードの代りに保護モー
ドを使用した場合、そのソフトウェアは保護モードの能
力をイネーブルするフラッグをセットする。その後、プ
ログラムは保護モードに適したデータ構造にセット・ア
ップし、マイクロプロセッサを保護動作モードに切り替
える。80286の設計者は、保護モードから実モード
に切り替えることを望んでいる人がいるとは想像してい
なかった。したがって、この種の切り替えのための用意
は成されてはいなかった。言い換えると、80286の
アーキテクチャは、保護モードから実モードへの切り替
えをサポートしていなかった。
【0006】しかし、IBMのような80286を使用
しているコンピュータ製造者のいく人かは、保護モード
から実モードに切り替える能力を望んでおり、丁度始動
したかのように、マイクロプロセッサをリセットしかつ
再初期化するよう、リセット・ピンをアサートする別の
ディバイスを設けることにより切り替えを行なう方法を
開発してきた。しかし、リセット・ピンを単にアサート
する方法にはいくつかの問題がある。内部キャッシュと
内部浮動小数点装置のような装置を含んでいる8048
6のような後期マイクロプロセッサにおいては、リセッ
ト・ピンをアサートすることはキャッシュを再初期化す
ることでもあり、それによってキャッシュ・メモリの内
容は破壊されてしまう。さらに、浮動小数点レジスタの
内容は自己検査のないリセットにより保持されるが、
(8086,80286,80386では物理的に分離
されている)浮動小数点装置におけるレジスタの内容
は、自己検査を伴なうリセットにより再初期化される。
【0007】80486マイクロプロセッサにおいて最
初に導入された内部キャッシュ・メモリは、マイクロプ
ロセッサの動作の全モード、とりわけ実モード、仮想8
086モード、保護モードにおいて使用される。キャッ
シュは、主メモリからごく最近検索されたあるデータお
よび命令を記憶することによりデータおよび命令の処理
をスピード・アップするメモリをマイクロプロセッサ内
に含んでいる。キャッシュの目的は、頻繁に使用される
データおよび命令の検索時間および書込み時間を短縮す
ることである。キャッシイングは、2つの種類、すなわ
ちライト・スルー(write-through) またはライト・バッ
ク(write-back)に分けられる。ライト・バック・キャッ
シュは、一般に、マイクロプロセッサにおいてより優れ
た特性を有している。両方の種類は、それらからデータ
を読出すことにおいては同じように機能するが、それら
に書込む場合、ライト・スルー・キャッシイングは、キ
ャッシュと主メモリの両方を更新し、一方、ライト・バ
ック・キャッシイングでは、キャッシュの内容は、それ
らを主メモリに書込むことなく更新されることはない。
ライト・バック・キャッシイングでは、特定の動作が行
なわれた場合だけ、たとえばキャッシュが既に一杯にな
った後、新しいキャッシュ・ラインが割当てられる時だ
け、更新された結果が主メモリに書込まれる。したがっ
て、仮にライト・バック・キャッシュの内容が初期化さ
れたとしたら、更新されたデータは、メモリに書き戻さ
れるかまたはどこか他の場所に格納される場合を除いて
は失われてしまう。ライト・バック・キャッシイング
は、具現することはさらに困難であるが、キャッシュが
更新される度に主メモリへの書込みに不必要に費やされ
るマイクロプロセッサの時間を節約することができるの
で有効である。しかも、ライト・バック・キャッシイン
グは、バスでのトラフィックを最少にし、他の通信のた
めバスを空けておくことができる。
【0008】実モードにするためリセット・ピンがアサ
ートされる場合、特に、ライト・スルー・キャッシュよ
り速い特性を得るためにライト・バック・キャッシュが
マイクロプロセッサで実行された場合、問題が生じる。
フル・リセットにおいてキャッシュは再初期化され、既
に生じた様々な変更を含んでいるその全内容は失われ
る。もし、キャッシュがライト・バック形式で、これら
変更が主メモリに書込まれなかった場合、主メモリの内
容は誤ったデータを含むことになり、許容しがたい結果
となる。正しいデータでメモリを更新するため、キャッ
シュの内容がメモリに書込まれたならば、性能の著しい
低減が起きる。すなわち、全キャッシュの内容を書込む
のに、かなりの時間が費やされることになる。さらに、
再初期化されたキャッシュは頻繁に使用されるデータと
命令を含んでいるので、再初期化におけるキャッシュの
内容の消失により、動作速度はスローダウンする。キャ
ッシュの情報の全てが使用されるわけではないが、キャ
ッシュのかなりの部分が再び使用される可能性がある。
このキャッシュは、マイクロプロセッサの通常の動作に
おいてリファイルされる必要があり、その仕事には不必
要なかなりのマイクロプロセッサの時間を消費すること
になる。これら理由で、モード間で切り替えが行なわれ
る一方、キャッシュの内容をそのままにしておくことが
望まれている。
【0009】
【発明が解決しようとする課題】本発明の目的は、メモ
リに内容を書込む必要がなくライト・バック・キャッシ
ュの内容を保持しながら実モードと保護モードの間で速
くしかも正しく切り替えることのできるマイクロプロセ
ッサを提供することにある。さらに本発明の他の目的
は、別個の浮動小数点装置を用いているマイクロプロセ
ッサとの互換性のため、浮動小数点装置にレジスタの内
容を格納できるマイクロプロセッサを提供することにあ
る。
【0010】
【課題を解決するための手段】本発明は、始動時にマイ
クロプロセッサがセットされる初期モードと、始動後に
選択できる第2動作モードとを含んでいる2つまたはそ
れ以上の動作モードを有するマイクロプロセッサに適用
することができる。第2動作モードは、速度、効率およ
び動作能力において初期モードより優れている。本発明
によるマイクロプロセッサは、それほど高度ではない初
期の形式のマイクロプロセッサおよびこのマイクロプロ
セッサ用に書込まれたソフトウェアと互換性があり、し
かも高速に実行することができる。本発明は、マイクロ
プロセッサ内の選択されたメモリ素子の内容を選択的に
保持しながら、モード間で高速でしかも効率的に切り替
える能力を備えたマルチモード・マイクロプロセッサを
提供する。保持されるメモリ素子は、内部キャッシュと
浮動小数点レジスタを含んでいる。ここに示されたマイ
クロプロセッサは、制御装置を含んでいるマイクロプロ
セッサ・チップ・パッケージの外部に設けられたINI
Tピンを有している。制御装置は、マイクロプロセッサ
内のレジスタにおける複数のレジスタに接続している。
マイクロプロセッサ中のレジスタのいくつかを再初期化
する命令を発生する、マイクロプロセッサをアクセス可
能なマイクロコードが設けられているので、マイクロプ
ロセッサは、キャッシュと浮動小数点レジスタを含んで
いる内部メモリ素子の内容を選択的に保持しながら、実
モードのような初期動作モードに置かれる。
【0011】動作において、INITピンは、I/Oポ
ートのような多くの一般的なソースのいずれかから供給
される信号により作動される。INITピンの作動は、
続いて、マイクロコード・プログラムをアクセスする制
御装置を作動する。マイクロコード・プログラムを用い
て、制御装置は、キャッシュと浮動小数点レジスタの内
容を特別に保持しながら、マイクロプロセッサのレジス
タのうちの多くを選択的に再初期化する。前述したよう
に、本発明は、初期動作モードと、高レベルのファンク
ショナリティを有する第2動作モードの間で変換するマ
イクロプロセッサおよび方法を提供する。初期モード
は、たとえば、8086用に書込まれた古いソフトウェ
ア・パッケージを実行するインテル8086マイクロプ
ロセッサにおける実アドレス(実)モードである。第2
モードは、実モードより複雑なアーキテクチャと優れた
能力を有する、80486マイクロプロセッサの保護モ
ードのような高レベル・モードである。インテル・マイ
クロプロセッサに関連し、本発明は、コンピュータ製造
者と、インテル8086とその後継機種が用いている従
来のソフトウェアおよびハードウェア・システムとの互
換性を求めているユーザにとって有利である。特に、実
モードは、最初の8086に類似したアーキテクチャを
有するそれほど複雑ではない古いソフトウェアを作動す
ることを望んでいるユーザにとって有利である。また、
INITピンは、IBM PC/ATとの互換性に対し
て特に有効的である。ユーザにとって、信号をINIT
ピンに供給するということは、実モードでマイクロプロ
セッサを始動させるリセットである。しかし、通常のリ
セットとは異なり、キャッシュの内容はどんな方法でも
再初期化すなわち変更されない。
【0012】本発明は、「ライト・バック」キャッシュ
と一緒に使用した場合有利である。キャッシュが、主メ
モリに格納されなかった更新されたデータを含んでいる
ライト・バック・キャッシュである場合、本発明は、主
メモリに内容を書込むのに必要な時間のロスを避けるこ
とができ、高性能なマイクロプロセッサを実現すること
ができる。
【0013】実施例に示すように、再初期化される選択
されたレジスタは、制御レジスタ、フラグ・レジスタ、
命令ポインタ・レジスタ、セグメント・レジスタ、割込
み記述表レジスタ、デバッグ制御レジスタを含んでい
る。別の手段では、データ構造は、初期モードに適した
形式にセット・アップされる。モード切り替え動作の間
中、キャッシュの内容は変更されずそのままである。マ
イクロプロセッサは、モード切り替え動作において変化
されないままである浮動小数点レジスタを備えた浮動小
数点装置を含んでいる。これにより、マイクロプロセッ
サのフル・リセットにより一般には影響されない別個の
浮動小数点装置を用いているマイクロプロセッサとの互
換性が保たれる。
【0014】他の利点としては、初期化マイクロコード
を有するマイクロプロセッサにおいて、INITピンを
低コストでしかも簡単に実現することができる。初期化
マイクロコードは、ほとんど変更することなく部分的に
または全部を使用することができる。すなわち、完全に
新しいプログラムを書込む必要がない。初期化ルーチン
を呼び出すには比較的少量の追加コードが必要なだけ
で、またマイクロコードにおける追加空間の必要は最少
限で済む。したがって、INIT再初期化は、わずかな
追加で、リセット・ファームウェアを既に含んでいるマ
イクロプロセッサにおいて容易に実現することができ
る。なお、INIT再初期化は、マイクロプロセッサの
あるレジスタに対して強い影響を及ぼす高優先順位割込
みとして解釈することができる。本発明は、初期動作モ
ードに切り替えるための低コストで有効的な方法を提供
する。特に、本発明は、それらの命令を実行するのに初
期動作モードを使用する手持ちのソフトウエア・プログ
ラムを実行するのに有効的である。
【0015】
【実施例】以下、添付の図面に基いて、本発明の実施例
に関し説明する。図1において、複数の外部電気ピン1
2を有する一般的なマイクロプロセッサ・チップ・パッ
ケージ10を示している。各電気ピン12は、マイクロ
プロセッサ10の動作に関連した特定の機能を有してい
る。本発明の装置は、これら電気ピンの少なくとも1つ
を含んでいる。
【0016】本実施例のマイクロプロセッサ10は、実
アドレス(実)モードと保護モードを含んでいるいくつ
かのモードの1つで動作する。これらモードは、カリフ
ォルニア州サンタクララ市に所在するインテル・コーポ
レーションにより市販されているi486(商標)マイ
クロプロセッサのモードに対応している。i486マイ
クロプロセッサの内容は、たとえば、参考のため本明細
書に記載されている95052-8130カリフォルニア州サンタ
クララ私書箱58130 インテル文献販売で入手可能なi4
86マイクロプロセッサ・プログラマ用参考マニュアル
のような様々な刊行物において示されている。本実施例
では、実モードは、RESETピンが作動された時、始
動時またはフル・リセットの際、マイクロプロセッサが
初期化される初期モードである。保護モードは、実モー
ドより速度および動作能力において優れた特性を有して
いる。
【0017】図2は、制御装置16とレジスタ・ファイ
ル18との相互接続、および本発明によるINITピン
14を示したブロック図である。さらに、図2は、制御
装置16と、各キャッシュ・ラインのバリド/インバリ
ド・ビット23を含んでいるキャッシュ・ブロック22
と、浮動小数点レジスタ25を含んでいる浮動小数点装
置24との相互接続、およびRESETピン20を示し
ている。この制御装置16は、その動作に必要な場合に
はマイクロコード26をアクセスすることができる。代
表的には、マイクロコード26は、後述するように始動
動作および他の動作に必要なプログラミングを含んでい
る。一般には、マイクロコード26は、マイクロプロセ
ッサ10内のROM(読出し専用メモリ)に、または外
部ROMに設けられている。
【0018】制御装置16は、汎用レジスタ29、制御
レジスタ30、命令ポインタ・レジスタ32、セグメン
ト・レジスタ34、割込み記述表レジスタ36、デバッ
グ制御レジスタ38を含んでいるレジスタ・ファイル1
8に接続している。これらレジスタとその機能は、カリ
フォルニア州サンタクララ市に所在するインテル・コー
ポレーションにおいて市販されているi486マイクロ
プロセッサのものと類似している。本実施例において、
RESETピン20は、ハードウェア向けである。すな
わち、RESETがアサートされた時、ただちにそれぞ
れの適切なレジスタがクリヤされるように、ピン20は
適切な状態の素子に直結している。一方、INITピン
14は、マイクロプロセッサ10における動作を制御す
る制御装置16に直結している。アサートされた時、I
NITピン14は、それが識別された後、制御装置16
において高い優先順位の割込みを実行する。
【0019】図3は、本発明の方法による動作の流れを
示したフローチャートであり、マイクロプロセッサ10
の動作モードは、初期モード(本実施例では「実」モー
ド)に切り替えられる。最初に、オペレーション・ボッ
クス40において、電気信号が供給され、INITピン
14が作動される。電気信号は、IBM PC/ATに
おけるI/Oポートのような多くの一般的な装置のいず
れかにより供給することができ、また信号はディジタル
高信号またはディジタル低信号でもよい。次のオペレー
ション・ボックス42において、電気信号は、制御装置
16に供給される。動作シーケンスは、マイクロコード
26のプログラムを用いて制御回路16により開始さ
れ、制御される。レジスタ・ファイル18におけるレジ
スタは、オペレーション・ボックス44に示すようにそ
れらの初期状態にセットされる。本実施例では、レジス
タ・ファイル18における選択されたレジスタの初期状
態は図4に示されている。図4の表は、INITおよび
RESETの両方に関する特定のレジスタおよびそれら
の初期状態を16進法で示している。
【0020】図4の表では、レジスタ30,32,3
4,36,38に関するINIT再初期化状態は、RE
SET初期化状態に等しい。動作時に、INIT再初期
化プロセスは、RESET初期化のためにプログラムさ
れたマイクロコード26のいくつかをアクセスする。浮
動小数点レジスタ25に関する値は、浮動小数点レジス
タ25が特定の状態にセットされている、自己検査を伴
なうRESET初期化状態とは異なり、INITピン1
4に電気信号を供給する前の値に等しい値に保持され
る。さらに、キャッシュ22に関するINIT再初期化
においては、キャッシュ・ラインはバリドに保持され、
かつキャッシュ22の内容は、内容をインバリドにセッ
トするRESET初期化とは異なり、妨害されないでい
る。なおRESETの初期状態は、i486マイクロプ
ロセッサの初期状態と同じである。
【0021】図3のINIT再初期化プロセスのフロー
チャートにおいて、オペレーション・ボックス46は、
キャッシュ22の内容がバリドに保持されていることを
示し、かつオペレーション・ボックス48は、浮動小数
点レジスタ25の値もバリドに保持されていることを示
している。最後に、オペレーション・ボックス50にお
いて、データ構造は、実モードに適しているようにセッ
ト・アップされる。本実施例に示すように、INIT再
初期化は、マイクロプロセッサ10におけるあるレジス
タに強く影響する高優先順位割込みとして解釈すること
ができる。特に、シーケンスは、RESET初期化に関
し通常使用されるマイクロコードの全部ではないが、い
くつかをアクセスする。したがって、いくつかの付加制
御マイクロコード・プログラミングとともに、既に供給
されているRESETマイクロコードを用いて、INI
T再初期化を実行することができる。なお、本実施例で
はINIT再初期化は、高優先順位割込みとして作用す
るので、プロセッサはすぐにはそれを識別できない。す
なわち、それが制御装置16により識別される時とIN
ITピン14の作動との間にいくらかの時間が経過す
る。
【0022】本実施例において、キャッシュ22は、
「ライト・スルー」キャッシュではなく「ライト・バッ
ク」形のキャッシュである。本明細書の従来技術の欄に
おいて示したように、いずれの形式のキャッシュもデー
タの読出しにおいては同じように作用するが、書込み時
には、ライト・スルー形キャッシュは、キャッシュと主
メモリの両方を更新する。ライト・バック形キャッシュ
では、キャッシュの内容は、主メモリにそれらを書込む
ことなく更新されることはない。また、ライト・バック
・キャッシングでは、特定の動作が行なわれる時にだ
け、たとえば、キャッシュが既に一杯になった後に新し
いキャッシュ・ラインが割当てられる時にだけ、更新さ
れた結果が主メモリに書込まれる。
【0023】本実施例のキャッシュ22は、頻繁に使用
されるデータを記憶するデータ・キャッシュと、頻繁に
使用される命令を記憶する別個の命令キャッシュとを含
んでいる。本実施例では、両キャッシュの内容はバリド
に保持されている。いくつかの用途では、データ・キャ
ッシュの内容だけを保持すれば十分であり、また、別の
用途では、命令キャッシュの内容だけを保持すれば十分
である。さらに別の実施例では、キャッシュ22は、命
令およびデータ用の1つのキャッシュだけから成り、さ
らに別の実施例では、キャッシュ22は2つまたはそれ
以上のキャッシュから成る。なお、本発明は、本発明の
思想から離れることなく様々に改変し得ることは当業者
には明白であろう。
【0024】
【発明の効果】本発明のマルチモード・マイクロプロセ
ッサは、キャッシュおよび浮動小数点レジスタを含んで
いる、マイクロプロセッサ内の選択されたメモリ素子の
内容を選択的に保持しながら、高速でしかも効率的にモ
ード間で切り替えることができる。また、本発明のマイ
クロプロセッサは、あまり複雑でない初期のマイクロプ
ロセッサと、このマイクロプロセッサ用に書込まれたソ
フトウェアと互換性があり、その上、高速で実行するこ
とができる。
【図面の簡単な説明】
【図1】外面に取付けられた多くの電気ピンを有するマ
イクロプロセッサのチップ・パッケージを示している。
【図2】INITピンとRESETピンの接続の相違を
示しているとともにINITピンを含んでいる本発明に
よるマイクロプロセッサを示している。
【図3】本発明の方法を示したフローチャートである。
【図4】INIT再初期化の後に選択されたレジスタと
キャッシュの内容を示し、かつ始動またはRESET初
期化の後のこれらレジスタの内容とキャッシュの内容を
示した表である。
【符号の説明】
10 マイクロプロセッサ 12 電気ピン 14 INITピン 16 制御装置 18 レジスタ・ファイル 20 RESETピン 22 キャッシュ 23 バリド/インバリド・ビット・ブロック 24 浮動小数点装置 25 浮動小数点レジスタ 26 マイクロコード 29 汎用レジスタ 30 制御レジスタ 32 命令ポインタ・レジスタ 34 セグメント・レジスタ 36 割込み記述表レジスタ 38 デバッグ制御レジスタ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 初期モードおよび第2モードを含んでい
    る少なくとも2つの動作モードを有し、始動時に初期モ
    ードに初期化されるマイクロプロセッサにおいて、 複数のレジスタと、 内部キャッシュと、 上記レジスタと上記内部キャッシュとに接続した制御装
    置と、 キャッシュの内容を保持しながら第2モードから初期モ
    ードに変換するマイクロコード装置と、 上記マイクロプロセッサに接続した外部電気ピンを含ん
    でいる、第2−初期モード変換をトリガする装置と、 から成ることを特徴とするマイクロプロセッサ。
  2. 【請求項2】 実モードと、実モードより優れた能力を
    備えた保護モードとを有し、始動時に実モードに初期化
    されるマイクロプロセッサにおいて、 内部キャッシュと、 少なくとも1つの浮動小数点レジスタを含んでいる内部
    浮動小数点装置と、 キャッシュと浮動小数点レジスタの内容を変化すること
    なく、保護モードから実モードに変換する装置と、 キャッシュと浮動小数点レジスタの内容を変化すること
    なく、実モードから保護モードに変換する装置と、 から成ることを特徴とするマイクロプロセッサ。
  3. 【請求項3】 初期モードと第2モードを含んでいる少
    なくとも2つの動作モードを有し、始動時に初期モード
    に初期化され、かつ選択されたレジスタの内容を再初期
    化するマイクロプロセッサにおいて、 初期モードに対応する初期状態を有する複数のレジスタ
    と、 内部キャッシュと、 レジスタと内部キャッシュに接続し、かつキャッシュの
    内容を保持しながら、選択されたレジスタを初期状態に
    選択的に再初期化する制御装置と、 制御装置に接続した外部電気ピンを含み、かつ選択され
    たレジスタを再初期化する作動装置と、 から成ることを特徴とするマイクロプロセッサ。
  4. 【請求項4】 初期状態を有するレジスタと内部キャッ
    シュとを有し、初期モードと第2モードとを含んでいる
    少なくとも2つの動作モードを有し、かつ始動時に初期
    モードに初期化されるマイクロプロセッサにおける、第
    2モードから初期モードへの動作変換方法において、 (a) マイクロプロセッサに電気信号を供給する過程と、 (b) 選択されたレジスタの内容を初期化状態に再初期化
    する過程と、 (c) 上記マイクロプロセッサ内のキャッシュの内容を保
    持する過程と、 から成り、上記再初期化されたレジスタは、マイクロプ
    ロセッサが初期動作モードにあるように選択されること
    を特徴とする動作変換方法。
JP4329917A 1991-11-19 1992-11-17 マイクロプロセッサ及びその動作変換方法 Pending JPH05257808A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US79458491A 1991-11-19 1991-11-19
US794,584 1991-11-19

Publications (1)

Publication Number Publication Date
JPH05257808A true JPH05257808A (ja) 1993-10-08

Family

ID=25163066

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4329917A Pending JPH05257808A (ja) 1991-11-19 1992-11-17 マイクロプロセッサ及びその動作変換方法

Country Status (7)

Country Link
US (1) US5555423A (ja)
JP (1) JPH05257808A (ja)
KR (1) KR100261527B1 (ja)
CN (1) CN1040156C (ja)
DE (1) DE4238099C2 (ja)
GB (1) GB2261753B (ja)
HK (1) HK1006754A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282645B1 (en) 1994-02-28 2001-08-28 Kabushiki Kaisha Toshiba Computer system for reading/writing system configuration using I/O instruction

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2102883A1 (en) * 1993-02-26 1994-08-27 James W. Arendt System and method for lazy loading of shared libraries
US5898232A (en) * 1995-11-08 1999-04-27 Advanced Micro Devices, Inc. Input/output section of an integrated circuit having separate power down capability
US5860125A (en) * 1995-11-08 1999-01-12 Advanced Micro Devices, Inc. Integrated circuit including a real time clock, configuration RAM, and memory controller in a core section which receives an asynchronous partial reset and an asynchronous master reset
AU1406997A (en) * 1995-12-15 1997-07-14 Intel Corporation Instruction encoding techniques for microcontroller architecture
US5784625A (en) * 1996-03-19 1998-07-21 Vlsi Technology, Inc. Method and apparatus for effecting a soft reset in a processor device without requiring a dedicated external pin
KR100465636B1 (ko) * 1997-09-30 2005-04-06 주식회사 하이닉스반도체 디램의 리프레쉬 제어회로
WO2001050251A1 (en) * 1999-12-31 2001-07-12 Intel Corporation External microcode
US6857065B2 (en) * 2001-07-05 2005-02-15 International Business Machines Corporation System and method for system initializating a data processing system by selecting parameters from one of a user-defined input, a serial non-volatile memory and a parallel non-volatile memory
US20050076277A1 (en) * 2003-10-02 2005-04-07 Erwin Thalmann Test apparatus with static storage device and test method
US7389455B2 (en) * 2005-05-16 2008-06-17 Texas Instruments Incorporated Register file initialization to prevent unknown outputs during test
GB2550903B (en) * 2016-05-27 2019-06-12 Arm Ip Ltd Context data control

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57174755A (en) * 1981-04-21 1982-10-27 Toshiba Corp 1-chip microprocessor
US4435068A (en) * 1981-05-29 1984-03-06 Savin Corporation Apparatus for electrophotography
US4458310A (en) * 1981-10-02 1984-07-03 At&T Bell Laboratories Cache memory using a lowest priority replacement circuit
US4677548A (en) * 1984-09-26 1987-06-30 Honeywell Information Systems Inc. LSI microprocessor chip with backward pin compatibility and forward expandable functionality
US4779187A (en) * 1985-04-10 1988-10-18 Microsoft Corporation Method and operating system for executing programs in a multi-mode microprocessor
US4829472A (en) * 1986-10-20 1989-05-09 Microlytics, Inc. Spelling check module
US4958302A (en) * 1987-08-18 1990-09-18 Hewlett-Packard Company Graphics frame buffer with pixel serializing group rotator
GB8801472D0 (en) * 1988-01-22 1988-02-24 Int Computers Ltd Dynamic random-access memory
JP2533612B2 (ja) * 1988-05-16 1996-09-11 富士通株式会社 メモリのデ―タ保護方式
US5088026A (en) * 1990-02-09 1992-02-11 International Business Machines Corporation Method for managing a data cache using virtual external storage addresses as arguments

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282645B1 (en) 1994-02-28 2001-08-28 Kabushiki Kaisha Toshiba Computer system for reading/writing system configuration using I/O instruction

Also Published As

Publication number Publication date
GB2261753A (en) 1993-05-26
US5555423A (en) 1996-09-10
GB9217947D0 (en) 1992-10-07
GB2261753B (en) 1995-07-12
DE4238099C2 (de) 1998-06-10
KR100261527B1 (ko) 2000-07-15
CN1040156C (zh) 1998-10-07
KR930010732A (ko) 1993-06-23
DE4238099A1 (ja) 1993-05-27
HK1006754A1 (en) 1999-03-12
CN1072521A (zh) 1993-05-26

Similar Documents

Publication Publication Date Title
US6813522B1 (en) Method of sharing memory in a multi-processor system including a cloning of code and data
US10318407B2 (en) Allocating a debug instruction set based on the current operating state in a multi-instruction-set data processing apparatus
JP4434482B2 (ja) 仮想モードでのシステム管理モードサービスを実行する方法及び装置
US6219783B1 (en) Method and apparatus for executing a flush RS instruction to synchronize a register stack with instructions executed by a processor
US5095526A (en) Microprocessor with improved interrupt response with interrupt data saving dependent upon processor status
US6219774B1 (en) Address translation with/bypassing intermediate segmentation translation to accommodate two different instruction set architecture
US6230259B1 (en) Transparent extended state save
US6314513B1 (en) Method and apparatus for transferring data between a register stack and a memory resource
US20050091652A1 (en) Processor-architecture for facilitating a virtual machine monitor
US5940858A (en) Cache circuit with programmable sizing and method of operation
EP1805629B1 (en) System and method for virtualization of processor resources
US7590774B2 (en) Method and system for efficient context swapping
JPH09505922A (ja) 多数のマイクロ制御器の演算を実行するマイクロ制御器システム
US6115777A (en) LOADRS instruction and asynchronous context switch
WO2007002408A2 (en) Computer processor pipeline with shadow registers for context switching, and method
JP4226085B2 (ja) マイクロプロセッサ及びマルチプロセッサシステム
US5187791A (en) Microprocessor with improved interrupt response with data saving dependent upon processor status using status flag
JPH05257808A (ja) マイクロプロセッサ及びその動作変換方法
US5946718A (en) Shadow translation look-aside buffer and method of operation
JP2001022639A (ja) メモリエイリアシング装置及びその方法
JPH04242848A (ja) 走行モード別キャッシュメモリ制御方式
US6065114A (en) Cover instruction and asynchronous backing store switch
US5842012A (en) Efficient soft reset in a personal computer
US5970509A (en) Hit determination circuit for selecting a data set based on miss determinations in other data sets and method of operation
US20230161650A1 (en) Method and apparatus for inter-process communication, and computer storage medium