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

マイクロプロセッサ

Info

Publication number
JPH03119438A
JPH03119438A JP1257063A JP25706389A JPH03119438A JP H03119438 A JPH03119438 A JP H03119438A JP 1257063 A JP1257063 A JP 1257063A JP 25706389 A JP25706389 A JP 25706389A JP H03119438 A JPH03119438 A JP H03119438A
Authority
JP
Japan
Prior art keywords
break
address
logical
register
logical space
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
JP1257063A
Other languages
English (en)
Inventor
Akira Yokozawa
彰 横澤
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP1257063A priority Critical patent/JPH03119438A/ja
Publication of JPH03119438A publication Critical patent/JPH03119438A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Microcomputers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は情報処理装置、いわゆるマイクロプロセッサに
関するものであり、特に詳細には仮想記憶装置等の多重
論理空間を支援するメモリ管理装置(MMLJ)を有す
るマイクロプロセッサの組み込みデパック機能に関する
ものである。
(従来の技術) 近年、集積度の向上により集積回路等の素子は微細化さ
れ、多くの機能が1チツプ内に組み込まれるまでになっ
た。特に中央処理装置(CPLJ)として用いられるマ
イクロプロセッサ(MPU)内に、例えば仮想記憶処理
を支援するMMUやキャッシュメモリ(CACHE)等
の高機能ユニットが内蔵されている。このため、高機能
ユニット内部の状態を直接観測することができなくなる
という問題があった。
この問題を回避するため、高機能ユニット等の状態を観
測する機能(デバッグ支援機能)がMPU内に組み込ま
れている。代表的なデバッグ支援機能としてはデバッグ
割込み機能がある。この機能は、あらかじめ専用のレジ
スタ(ブレークアドレスレジスタ)にアドレスを格納し
ておき、そのアドレスの指すメモリ内に格納された命令
の実行やデータのアクセスをMPU自身が検知してデバ
ッグ割込みを発生させるものである(アドレスブレーク
処理)。
第5図は従来におけるブレークアドレスレジスタを内蔵
したM、PU500の構成図である。同図において、ブ
レークアドレスレジスタ(BAR)501は、ブレーク
を掛ける論理アドレス値が格納されたアドレスフィール
ド502とブレークの条件を設定するブレーク条件フィ
ールド503から構成されている。504はプログラム
カウンタ(PC)、505はオペランドアドレスバッフ
ァ(OAB)である。506はアドレスマツチ検出W 
(AMD) であり、PC504,0AB505および
BAR501の内容を比較する。507はプロセッサ状
態語を格納するレジスタ(PSW)である。PSW50
7内にはMPU500の動作を制御するための情報が格
納されている。
上記構成を有する従来のMPU500において、プログ
ラムカウンタ504、オペランドアドレスバッファ50
5は、プログラムの実行にしたがって更新される。そし
て、アドレスマツチ検出器53− 06が、プログラムカウンタ504、オペランドアドレ
スバッファ505の内容とブレークアドレスレジスタ5
01に設定されたアドレスとを比較する。アドレスおよ
び条件が一致すると、ブレーク検出信号をプロセッサの
シーケンス制御回路(図示せず)に送出する。シーケン
ス制御回路は、この信号を検出すると、デバッグ割り込
みとして定義される一連の処理に制御を移す。ただし、
このアドレスマツチ検出器506の動作は、プロセッサ
状[!507と呼ばれるマイクロプロセッサの動作を制
御するレジスタ内のデバッグモードビットによって有効
となったり、無効になったりする。
上記したメモリ管理装置を内蔵するマイクロプロセッサ
においては、ブレークアドレスを論理アドレスで指定し
ている。例えば、プロセス毎に異なる仮想空間を持つこ
とができる多重論理空間支援機能を持つマイクロプロセ
ッサにおいては、プロセスが切り替わると、同じ論理ア
ドレスが物理的にまったく異なるアドレスに対応するこ
とにな4− る。このため、従来方式のアドレスブレーク機能を用い
る際には、プロセスが切り替わる際に、ブレークアドレ
スレジスタの内容の切り替えを行う必要がある。
方、プロセスにかかわらず共通の論理アドレスにおいて
ブレークを掛けたい場合は、上述したプロセス毎にブレ
ークアドレスレジスタ、を切り替える方法をとると、プ
ロセスが切り替わる毎にそれぞれのプロセスが保持して
いるブレークアドレスの退避域を書き替え、かつ同一の
ブレークアドレスを全てのプロセス毎に設定する必要が
生じる。
また、従来のアドレスブレーク機能では、この機能を有
効にするか否かをプロセス毎のコンテキストに属したプ
ロセッサ状態語内のビットによって制御している。この
ため、あるプロセスをデバッグの対象とする際に、その
プロセスのプロセッサ状態語を変化させる必要がある。
また、−度デバッグ中の状態にされたプロセスが、誤っ
て自分のプロセッサ状態語を変化させて、デバッグ支援
機能を無効にした場合、本来ブレークが検出されるべぎ
条件になっても、ブレークが起こらない場合が発生覆る
(発明が解決しようと(る課題) 上記説明したように、従来のマイクロプロセッサの多重
論理空間を支援するシステムにおいては、プロセスが切
り替わる毎にブレークアドレスレジスタを書き換える必
要があり、その処理に時間がかかるという問題があった
また、全プロセスに共通したブレーク処理の場合におい
てもプロセスが切り替わる毎にブレークアドレスレジス
タの内容を書き換える必要があり、その分処理時間を多
く必要としていた。
さらに、誤ってプロセッサ状態語を変化させデバッグ支
援機能を無効にしてしまうという問題が生じていた。
そこで本発明は上記した問題に鑑みてなされたものであ
り、その目的とするところは、多重論理空間を支援覆る
システムにおいて、プロセスが切り替わってもブレーク
アドレスレジスタの内容を書き換える必要のない、処理
効率の高いマイクロプロセッサを提供することにある。
[発明の構成] (課題を解決するための手段) 本発明のマイクロプロセッサは、プロセス毎の論理空間
識別子を格納する論理空間識別子フィールドと論理アド
レスフィールドおよびブレーク条件フィールドとにより
構成されるブレークアドレスレジスタと、現在処理中の
プロセスの論理空間情報を格納する論理空間識別子レジ
スタと、前記ブレークアドレスレジスタおよび前記論理
空間識別子レジスタに接続されたアドレスマツチ検出器
とを有し、前記ブレークアドレスレジスタはプロセス毎
の情報を格納しており、該プロセス毎に前記論理空間識
別子レジスタの内容と前記論理空間識別子フィールドの
内容とを比較することにより該プロセスに係属する前記
ブレーク条件フィールドおよび論理アドレスフィールド
の検出を行うことを特徴としている。
(作用) 本発明のマイクロプロセッサは、現在処理中7− のプロセスの論理空間情報を格納する論理空間識別子レ
ジスタと、あらかじめプロセス毎の論理空間情報等を格
納したブレークアドレスレジスタとを有している。そし
て、プロセスが切り換わる毎に論理空間識別子レジスタ
とブレークアドレスレジスタとをアドレスマツチ検出器
により比較してプロセスのブレーク条件を検出する。従
って、従来のようにプロセスが切り換わる毎にブレーク
条件を読み込む必要はなく、プロセッサ全体のスルプツ
トが向上する。
(実施例) 以下、本発明の実施例について図面を参照して説明づ−
る。
第1図は、本発明の一実施例であるマイクロプロセッサ
100の構成図である。同図において、105はプロセ
ス毎の論理空間を区別するための論理空間識別子レジス
タ(LSID)、102はブレークアドレスレジスタ(
BAR)101内における論理空間識別子フィールド(
LSID)、108はアドレスマツチ検出器(AMD)
である。
8− このAMD108はプログラムカウンタ(PC)106
の値およびオペランドアドレスバッファ(OAB>10
7とアドレスフィールド103とを比較しかつLSID
105とLSID102との比較を行ないこれらのアド
レスが一致するか否かの検出を行なう。109はプロセ
ッサ状態語PSWである。
また、ブレーク条件フィールド(BCF)104内に論
理空間識別子の比較機能を無効にするフラグを右してい
る。このフラグを使用することにより従来のマイクロプ
ロセッサと同様の機能を持たせることができる。110
はグローバル状態語(GSW>であり、これを用いるこ
とによりプロセスコンテキストを越えたブレークアドレ
スレジスタの動作を設定することができる。
第2図は、論理空間と物理空間との対応を示した概念図
である。同図において多重論理空間は、論理アドレスの
値により、共有空間と個別空間とに分けられている。共
有空間は、システム中の全プロセスに共通の空間である
。一方、各プロセスは、それぞれ異なる個別中fJms
−1,LS−2゜・・・・・・、LS−9を持つ。図中
、論理空間と物理空間とを結ぶ矢印は、論理アドレスと
物理アドレスとの対応関係を示している。ここで、横長
の箱は、ページ(Pa(18)と呼ばれる記憶単位を示
しており、論理′アドレスと物理アドレスとの間のマツ
ピングはこのページ単位で行われる。
第311GSW110.PSWI 09およびBCFI
 04の構成図である。GSWl 10およびPSWl
 09内には、各々デバッグ支援機能ビットGDBおよ
びDBを有している。BCF104内にはグローバル指
定ビットGBPとローカルブレーク指定ビットLBP、
論理空間識別子の比較機能を制御するフラグ(ID)、
アクセスの大きさを示すアクセスサイズ(ASZ>、そ
して、各プロセスにおける実行、読み出しおよび書き込
みの状態を指示するアクセスモード(AMD)を有して
いる。PSWI 09はプロセスのコンテキストに含ま
れ、プロセス毎に切り替わるが、GSWl 10、BC
Fl 04はプロセスとは独立である。
第4図は上記したDBおよびGDBとLBPおよびGB
Pとのブレーク条件成立の関係を示した図であり、十は
、ブレーク条件成立を意味し、はブレーク条件が成立し
ないことを意味している。
つまり、ブレークの独立は、GDBとGBPの論理積お
よびDBとLBPの論理積の論理和に従う。
上記構成を有する本実施例のマイクロプロセッサ100
の動作について説明する。例えば、共有空間aで示され
るページ内のアドレスに対してブレークを掛ける。この
場合、2通りのブレークの掛は方がある。一つは、全プ
ロセスに共通のブレークを掛ける場合で、他方は特定の
プロセスのみでブレークを掛ける場合である。
全プロセッサに共通のブレークを掛けるには、ブレーク
条件フィールド(BCF>104内のビット(ID)を
操作して論理空間識別子フィールドLSIDを無効にし
、目的の論理アドレスのみをアドレスフィールド103
に設定する。一方、特定のプロセスに対するブレークを
掛けるには、ブレークアドレスレジスタ101内の論理
空間識11− 切子フイールド(LSID)102にそのプロセスに対
する論理空間識別子を設定し、目的の論理アドレスをア
ドレスフィールド103に設定ずればよい。
例えば、個別空間[S72のbで示されるページ内のア
ドレスに対してブレークを掛ける場合を考える。この場
合、従来のブレークアドレスレジスタでは、他の論理空
間に属する周じ論理アドレスとの区別ができないため、
プロセスが変わって異なる論理空間に移るときに、その
ブレークアドレスレジスタを無効にしなければならなか
った。
しかし、本実施例においては、このページbが属する論
理空間識別子、即ちLS−2をブレークアドレスレジス
タ101内の論理空間識別子フィールド(LSID)1
02に設定すればよい。従って、プロセスが切り変わっ
ても、そのブレークアドレスレジスタを更新する必要は
ないので、その分マイクロプロセッサ100の動作効率
が向上する。
次に、GSWll 0の動作および使用方法を説12− 明する。
まず、このGSWl 10を従来のアドレスブレーク機
能によるデバッグと同様に使用する場合には、PSWt
09内のDBビットと、BCFIO4内のLBPビット
のみを用いればよい。この場合、LBPビットは、従来
のブレークアドレス有効ビットとしての役割を持つ。
方、プロセスが自分でDBビットを変化させた場合であ
っても、それには影響されずにブレーク機能を成立させ
たい場合には、そのアドレスを設定するBCF104の
GBPビットを1にして、さらにGSWl 10中のG
DBビットを1にづる。
そうすれば、DBビットの値いかんによらず目的のプロ
セスに仕掛けたブレークが発生するようになる。
なお、本実施例においてはGDBビットをGSWllo
の中に含めたが、コンテキストとは独立なビットとして
PSWl 09内に実現してもよい。
[発明の効果] 以上説明したように、本発明のマイクロプロセッサはそ
の構成要素であるブレークアドレスレジスタにプロセス
毎の論理アドレスに対応した論理空間識別子フィールド
を、またこれとは別に論理空間識別子レジスタを新たに
設けた構成にした。
よって、従来のようにプロセスが切り換わる毎にブレー
クアドレスレジスタの内容を切り換える必要がなくなり
、高速に動作させることができ、マイクロプロセッサ全
体のスループッ1〜を向上させることができる。
特に、多重論理空間支援機能を利用するシステムソフト
ウェアの開発に有効となる。
【図面の簡単な説明】
第1図は本発明の一実施例を示1マイクロプロセッサの
構成図、 第2図は論理空間と物理空間との関係を示す概念図、 第3図はグローバル状態語(GSW) 、プロセッサ状
態語(PSW)およびブレーク条件フィールド(BCF
>の構成図、 第4図はブレーク条件成立の関係図、 第5図は従来におけるマイクロプロセッサの構成図であ
る。 101・・・ブレークアドレスレジスタ103・・・ア
ドレスフィールド 104・・・ブレークアドレスフィールド105・・・
LSID

Claims (3)

    【特許請求の範囲】
  1. (1)プロセス毎の論理空間識別子を格納する論理空間
    識別子フィールドと論理アドレスフィールドおよびブレ
    ーク条件フィールドとにより構成されるブレークアドレ
    スレジスタと、 現在処理中のプロセスの論理空間情報を格納する論理空
    間識別子レジスタと、 前記ブレークアドレスレジスタおよび前記論理空間識別
    子レジスタに接続されたアドレスマッチ検出器とを有し
    、 前記ブレークアドレスレジスタはプロセス毎の情報を格
    納しており、該プロセス毎に前記論理空間識別子レジス
    タの内容と前記論理空間識別子フィールドの内容とを比
    較することにより該プロセスに係属する前記ブレーク条
    件フィールドおよび論理アドレスフィールドの検出を行
    うこと を特徴とするマイクロプロセッサ。
  2. (2)前記アドレスマッチ検出器の動作を有効もしくは
    無効にするための情報を格納するプロセッサ状態語を有
    すること を特徴とする請求項1記載のマイクロプロセッサ。
  3. (3)前記プロセッサ状態語は、プロセスコンテキスト
    によらない最低一つのビットを有し、前記ブレーク条件
    フィールドは該ビットに対応するビットを有し、前記ア
    ドレスマッチ検出器の動作がこれら最低2つのビットの
    組み合わせにより制御されること を特徴とする請求項2記載のマイクロプロセッサ。
JP1257063A 1989-10-03 1989-10-03 マイクロプロセッサ Pending JPH03119438A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1257063A JPH03119438A (ja) 1989-10-03 1989-10-03 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1257063A JPH03119438A (ja) 1989-10-03 1989-10-03 マイクロプロセッサ

Publications (1)

Publication Number Publication Date
JPH03119438A true JPH03119438A (ja) 1991-05-21

Family

ID=17301227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1257063A Pending JPH03119438A (ja) 1989-10-03 1989-10-03 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH03119438A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0535527A (ja) * 1991-07-30 1993-02-12 Chubu Nippon Denki Software Kk データアクセス停止方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0535527A (ja) * 1991-07-30 1993-02-12 Chubu Nippon Denki Software Kk データアクセス停止方式

Similar Documents

Publication Publication Date Title
KR100341180B1 (ko) 가상어드레싱버퍼회로,및어드레스번역방법,시스템bios의셰도잉방법,실제메모리최적화방법,실제메모리이용방법,cpu제어시스템에서의에뮬레이팅방법및cpu요청리디렉트방법
US9218302B2 (en) Page table management
US5784625A (en) Method and apparatus for effecting a soft reset in a processor device without requiring a dedicated external pin
US20080270707A1 (en) Data processor
JPS58139400A (ja) デ−タの取出防止制御機構
US5161219A (en) Computer system with input/output cache
JP2021515308A (ja) デバイスをデバッグするときにメタデータにアクセスするための装置及び方法
JP4312952B2 (ja) メモリ属性パレット
JPH05257808A (ja) マイクロプロセッサ及びその動作変換方法
EP0864983A2 (en) Computer system including memory adress management circuit for protecting memory from illegal writing
JPH03119438A (ja) マイクロプロセッサ
JP3476402B2 (ja) アドレス変換装置及びアドレス変換方法
JP3525771B2 (ja) バス・スヌープ制御回路
JPH0784884A (ja) 仮想計算機システム
JP3293144B2 (ja) 周辺制御装置
JPS60129860A (ja) アドレス指定例外検出方式
JP2001209578A (ja) メモリ更新履歴管理方式
JPH02226447A (ja) コンピユータ・システムおよびその記憶装置アクセス方法
JPH039448A (ja) データ処理装置
JPH02287848A (ja) キャッシュメモリ制御方式
JPH04155454A (ja) 情報処理装置
JPH0157374B2 (ja)
JPH03113654A (ja) キャッシュメモリ内蔵集積回路装置
JPH01290052A (ja) キャッシュメモリ
JPH05101203A (ja) マイクロ・プロセツサ