JPS6113615B2 - - Google Patents
Info
- Publication number
- JPS6113615B2 JPS6113615B2 JP55065086A JP6508680A JPS6113615B2 JP S6113615 B2 JPS6113615 B2 JP S6113615B2 JP 55065086 A JP55065086 A JP 55065086A JP 6508680 A JP6508680 A JP 6508680A JP S6113615 B2 JPS6113615 B2 JP S6113615B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- program
- instruction
- debugging
- memory
- 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
Links
- 238000013519 translation Methods 0.000 claims description 25
- 238000012545 processing Methods 0.000 claims description 16
- 230000007246 mechanism Effects 0.000 claims description 15
- 238000003672 processing method Methods 0.000 claims description 6
- 238000000034 method Methods 0.000 description 29
- 235000010582 Pisum sativum Nutrition 0.000 description 25
- 240000004713 Pisum sativum Species 0.000 description 25
- 238000006243 chemical reaction Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 3
- 101100533228 Drosophila melanogaster Jon99Cii gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 101150106567 ser1 gene Proteins 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の詳細な説明】
本発明は、データ処理方式に関し、特にプログ
ラムのデバツクを仮想空間の拡張により実現する
データ処理方式に関するものである。
ラムのデバツクを仮想空間の拡張により実現する
データ処理方式に関するものである。
プログラムを実際に計算機にかけて誤りを発見
し訂正する、いわゆるデバツキングの方法として
は、コンソールを使つて1ステツプずつ追跡する
方法と、メモリ・ダンプやトレーサ・プログラム
で追跡して、その結果をプリント・アウトさせ、
机の上で検討するデスク・デバツキングの方法と
がある。
し訂正する、いわゆるデバツキングの方法として
は、コンソールを使つて1ステツプずつ追跡する
方法と、メモリ・ダンプやトレーサ・プログラム
で追跡して、その結果をプリント・アウトさせ、
机の上で検討するデスク・デバツキングの方法と
がある。
従来のデータ処理装置には、デバツク支援機能
が備えられており、例えば(1)命令ごとに割込みを
行う機能、(2)指定された命令アドレス実行時に割
込みを行う機能、(3)指定されたオペランド・アド
レス実行時に割込みを行う機能、(4)指定されたレ
ジスタの書換え時にに割込みを行う機能、あるい
は(5)分岐命令実行時に割込みを行う機能等があ
る。(1)命令ごとに割込みを行う場合には、第1図
に示すように、プログラムP1の走行する第1の
命令イが終ると、デバツグ用のプログラムD1に
割込み、デバツグ用プログラムD1では何の命令
を実行したか、レジスタは何を使用したか等のデ
ータをログ・アウトする。デバツグ用プログラム
D1の終了により第2の命令ロに戻り、第2の命
令ロを実行した後に再びデバツグ用プログラムD
1に割込む。このようにして、第3の命令ハ、第
4の命令ニ……が終るごとに割込みをかけてデバ
ツグを行う。このようにして、プログラムのトレ
ースをとる方法により一応はログ・アウトができ
るが、毎回割込みが発生し、そのためのソフトウ
エア・オーバヘツドが非常に大きくなり、実行速
度が1/100以下に低下して、デバツグ作業に多大
なコストがかかる。また、同じようにして、プロ
グラムがアクセスするデータに関する情報のログ
をとる場合にも、性能低下が著しい。
が備えられており、例えば(1)命令ごとに割込みを
行う機能、(2)指定された命令アドレス実行時に割
込みを行う機能、(3)指定されたオペランド・アド
レス実行時に割込みを行う機能、(4)指定されたレ
ジスタの書換え時にに割込みを行う機能、あるい
は(5)分岐命令実行時に割込みを行う機能等があ
る。(1)命令ごとに割込みを行う場合には、第1図
に示すように、プログラムP1の走行する第1の
命令イが終ると、デバツグ用のプログラムD1に
割込み、デバツグ用プログラムD1では何の命令
を実行したか、レジスタは何を使用したか等のデ
ータをログ・アウトする。デバツグ用プログラム
D1の終了により第2の命令ロに戻り、第2の命
令ロを実行した後に再びデバツグ用プログラムD
1に割込む。このようにして、第3の命令ハ、第
4の命令ニ……が終るごとに割込みをかけてデバ
ツグを行う。このようにして、プログラムのトレ
ースをとる方法により一応はログ・アウトができ
るが、毎回割込みが発生し、そのためのソフトウ
エア・オーバヘツドが非常に大きくなり、実行速
度が1/100以下に低下して、デバツグ作業に多大
なコストがかかる。また、同じようにして、プロ
グラムがアクセスするデータに関する情報のログ
をとる場合にも、性能低下が著しい。
次に、(2)命令アドレス実行時割込みを行う方法
は、ある程度メモリ内の障害アドレスが明らかに
なつたときに行うもので、第2図に示すように、
メモリ9内の障害アドレスAをレジスタ92に保
持しておき、このアドレスAがアドレス・レジス
タ91にセツトされたとき比較器93でこれを検
出し、割込みINTをかける。この場合、プログラ
ムP1が分岐したとき等のアドレスAで障害が生
じ易い。この方法で、障害アドレスの命令が実行
されるときに、障害情報をログ・アウトできる
が、プログラムおよびプログラムがアクセスする
データに関する情報をとる場合、同時には1つの
アドレスしか対象にできない。
は、ある程度メモリ内の障害アドレスが明らかに
なつたときに行うもので、第2図に示すように、
メモリ9内の障害アドレスAをレジスタ92に保
持しておき、このアドレスAがアドレス・レジス
タ91にセツトされたとき比較器93でこれを検
出し、割込みINTをかける。この場合、プログラ
ムP1が分岐したとき等のアドレスAで障害が生
じ易い。この方法で、障害アドレスの命令が実行
されるときに、障害情報をログ・アウトできる
が、プログラムおよびプログラムがアクセスする
データに関する情報をとる場合、同時には1つの
アドレスしか対象にできない。
また、(3)オペランド・アドレス実行時の割込み
においては、上記(2)の場合と全く同じ方法と欠点
がある。
においては、上記(2)の場合と全く同じ方法と欠点
がある。
次に、(4)レジスタ書換え時の割込みの方法は、
第3図に示すように、演算処理回路14で演算す
るため、必要に応じてメモリ9からのデータを特
定レジスタ11にセツトしたり、これと逆にレジ
スタ11の内容をメモリ9に書込んだときに、レ
ジスタ11の内容の破壊を検出して、割込みをか
け、デバツグ用プログラムを実行するものであ
る。
第3図に示すように、演算処理回路14で演算す
るため、必要に応じてメモリ9からのデータを特
定レジスタ11にセツトしたり、これと逆にレジ
スタ11の内容をメモリ9に書込んだときに、レ
ジスタ11の内容の破壊を検出して、割込みをか
け、デバツグ用プログラムを実行するものであ
る。
また、(5)分岐命令実行時の割込み方法は、第4
図に示すように、プログラムP1が走行中、分岐
した命令ハ,ヘのみを何らかの方法で表示し、そ
の命令ハ,ヘの実行時の情報をログ・アウトする
ものである。
図に示すように、プログラムP1が走行中、分岐
した命令ハ,ヘのみを何らかの方法で表示し、そ
の命令ハ,ヘの実行時の情報をログ・アウトする
ものである。
このように、デバツグ支援機能は計算機の技術
進歩に伴つて充実されてきているが、生産される
プログラムの量と複雑さが急増するにもかかわら
ず、これらの機能では不十分であるのが実状であ
る。
進歩に伴つて充実されてきているが、生産される
プログラムの量と複雑さが急増するにもかかわら
ず、これらの機能では不十分であるのが実状であ
る。
また、デバツグの1つの手段として、プログラ
ムのある箇所にデバツグ用の命令を故意に埋込む
方法が行われる。これは、コンパイラ等の高級言
語により行われるデバツグ手段であつて、その目
的は、(1)そこのデバツグに関する必要情報をダン
プしたい場合、および(2)そこで故意にプログラ
ム・ロジツクを操作し、異る動作をさせたい場合
である。すなわち、上記(1)の場合には、第5図に
示すように、プログラムP1の走行中、命令イ,
ロ,ハの次にC1の割込み命令を特別に埋込み、
プログラムP1がここまで到着したときに割込み
ダンプを行い。必要な情報をメモリに読込む。
ムのある箇所にデバツグ用の命令を故意に埋込む
方法が行われる。これは、コンパイラ等の高級言
語により行われるデバツグ手段であつて、その目
的は、(1)そこのデバツグに関する必要情報をダン
プしたい場合、および(2)そこで故意にプログラ
ム・ロジツクを操作し、異る動作をさせたい場合
である。すなわち、上記(1)の場合には、第5図に
示すように、プログラムP1の走行中、命令イ,
ロ,ハの次にC1の割込み命令を特別に埋込み、
プログラムP1がここまで到着したときに割込み
ダンプを行い。必要な情報をメモリに読込む。
また、上記(2)の場合には、プログラムP1の命
令ホと判断命令ヘの間に条件設定C2を埋込み、
めつたに向うことがない障害関係等の命令チの方
にプログラムP1を強制的に向わせ、デイレイル
(脱線)によりデバツグを行う。
令ホと判断命令ヘの間に条件設定C2を埋込み、
めつたに向うことがない障害関係等の命令チの方
にプログラムP1を強制的に向わせ、デイレイル
(脱線)によりデバツグを行う。
いずれの方法でも、ソース・プログラムP1に
対して余分な命令C1,C2を挿入するため、全
体のアドレスが狂つてしまう。また、これらの方
法の実行が、プログラム生産段階では可能であつ
ても、ユーザに渡つて実用に供されてからでは、
このようなロジツク操作がきわめて困難である。
対して余分な命令C1,C2を挿入するため、全
体のアドレスが狂つてしまう。また、これらの方
法の実行が、プログラム生産段階では可能であつ
ても、ユーザに渡つて実用に供されてからでは、
このようなロジツク操作がきわめて困難である。
一方、上記の欠点を除く一手段として、従来、
第6図に示すように、メモリ9にタグTGを付加
する方法が提案されている。すなわち、メモリ9
のワード(例えば32ビツト)に対して、1〜数ビ
ツトのタグTGを付し、これらのタグTGをデバツ
グ情報として、“1”のとき割込み、“3”のとき
デイレイル、“5”のときマーク等として使用す
る。
第6図に示すように、メモリ9にタグTGを付加
する方法が提案されている。すなわち、メモリ9
のワード(例えば32ビツト)に対して、1〜数ビ
ツトのタグTGを付し、これらのタグTGをデバツ
グ情報として、“1”のとき割込み、“3”のとき
デイレイル、“5”のときマーク等として使用す
る。
しかし、この方法では、メモリ9が物理的に大
きくなつてしまい、ハードウエア・コストが上昇
すること、およびあまりにも物理的な手段である
ために柔軟性に乏しいこと等の欠点がある。
きくなつてしまい、ハードウエア・コストが上昇
すること、およびあまりにも物理的な手段である
ために柔軟性に乏しいこと等の欠点がある。
本発明の目的は、これらの欠点を除去するた
め、メモリ・タグ手段と同等以上のデバツグ機能
を有するが、ハードウエア・コストの増加がな
く、かつ柔軟性に富むデータ処理方式を提供する
ことにある。
め、メモリ・タグ手段と同等以上のデバツグ機能
を有するが、ハードウエア・コストの増加がな
く、かつ柔軟性に富むデータ処理方式を提供する
ことにある。
本発明のデータ処理方式は、従来の仮想メモリ
方式における仮想空間を拡張して、プログラム実
行のための空間の他に、その空間と同時に処理さ
れるデバツグ用の空間を新しく設け、命令アドレ
スとオペランド・アドレスの他にデバツグ実行ア
ドレスをアドレス変換機構により実アドレスに変
換し、プログラム実行のためのメモリ・アクセ
ス、デバツグ等のためのメモリ・アクセスをそれ
ぞれ行うことを特徴としている。
方式における仮想空間を拡張して、プログラム実
行のための空間の他に、その空間と同時に処理さ
れるデバツグ用の空間を新しく設け、命令アドレ
スとオペランド・アドレスの他にデバツグ実行ア
ドレスをアドレス変換機構により実アドレスに変
換し、プログラム実行のためのメモリ・アクセ
ス、デバツグ等のためのメモリ・アクセスをそれ
ぞれ行うことを特徴としている。
以下、本発明の実施例を、図面により説明す
る。
る。
第7図は、本発明が適用されるアドレス変換機
構のブロツク図である。
構のブロツク図である。
外部記憶装置を備える計算機システムでは、プ
ログラムの実行に先立ち、外部記憶装置から主記
憶装置に対して該当するプログラムやデータをロ
ードする必要があるが、プログラムの動的再配置
を容易に、かつ効率的に実現するため仮想記憶空
間を設け、仮想記憶上のアドレスを論理アドレス
として取扱い、仮想記憶をサポートするオペレー
テイング・システムと一体になつて論理アドレス
を実アドレスに変換する方法が用いられている。
ログラムの実行に先立ち、外部記憶装置から主記
憶装置に対して該当するプログラムやデータをロ
ードする必要があるが、プログラムの動的再配置
を容易に、かつ効率的に実現するため仮想記憶空
間を設け、仮想記憶上のアドレスを論理アドレス
として取扱い、仮想記憶をサポートするオペレー
テイング・システムと一体になつて論理アドレス
を実アドレスに変換する方法が用いられている。
仮想空間を用いる計算機では、仮想空間上の情
報がページ単位に分割されており、通常、仮想空
間の1ページが実空間の1ページと1対1に対応
している。
報がページ単位に分割されており、通常、仮想空
間の1ページが実空間の1ページと1対1に対応
している。
先ず、主記憶装置の特定エリアに格納されてい
るPSW(プログラム状態語)が読出されたと
き、そPSWの特定制御ビツト(アドレス変換モ
ード・ビツト)が“1”のときアドレス変換機構
が有効となり、“0”のときにはアドレス変換は
行われない。
るPSW(プログラム状態語)が読出されたと
き、そPSWの特定制御ビツト(アドレス変換モ
ード・ビツト)が“1”のときアドレス変換機構
が有効となり、“0”のときにはアドレス変換は
行われない。
多重仮想記憶計算機では、複数個の仮想空間が
それぞれセグメント・テーブルSTを持ち、複数
個の仮想空間の中の1つを指定するために、第7
図に示すセグメント・ベース・レジスタSBRがセ
グメント・テーブルSTの先頭アドレスSTOを指
示する。
それぞれセグメント・テーブルSTを持ち、複数
個の仮想空間の中の1つを指定するために、第7
図に示すセグメント・ベース・レジスタSBRがセ
グメント・テーブルSTの先頭アドレスSTOを指
示する。
1つの仮想空間に対応して論理アドレスから実
アドレスを求めるため、セグメント・ベース・レ
ジスタSBRの内容(セグメント・テーブルSTの
先頭アドレス)と論理アドレス・レジスタLAR
のS(セグメント)フイールドとを演算器ALUO
に入力し、セグメント・テーブルSTの該当番地
を得て、その番地をアクセスすることによりベー
ジ・テーブル先頭アドレスPTOを読出す。次
に、そのページ・テーブル先頭アドレスPTOと
論理アドレス・レジスタLARのP(ページ)フ
イールドとを演算器ALU1に入力し、ページ・
テーブルPTの該当番地を得て、その番地をアク
セスすることにより実ページ・アドレスRPAを
読出す。
アドレスを求めるため、セグメント・ベース・レ
ジスタSBRの内容(セグメント・テーブルSTの
先頭アドレス)と論理アドレス・レジスタLAR
のS(セグメント)フイールドとを演算器ALUO
に入力し、セグメント・テーブルSTの該当番地
を得て、その番地をアクセスすることによりベー
ジ・テーブル先頭アドレスPTOを読出す。次
に、そのページ・テーブル先頭アドレスPTOと
論理アドレス・レジスタLARのP(ページ)フ
イールドとを演算器ALU1に入力し、ページ・
テーブルPTの該当番地を得て、その番地をアク
セスすることにより実ページ・アドレスRPAを
読出す。
なお、論理アドレス・レジスタLARのページ
内変位フイールドLは、そのまま実アドレス・レ
ジスタRARのバイト・アドレスBAとなる。
内変位フイールドLは、そのまま実アドレス・レ
ジスタRARのバイト・アドレスBAとなる。
本発明においては、このようなアドレス変換機
構を用い、かつ仮想アドレス空間の拡張を行う。
すなわち、基本的なアドレス空間であるプログラ
ム実行アドレス空間(以下PEASと記す)の他
に、拡張された空間としてデバツグ情報アドレス
空間(以下DIASと記す)を設ける。
構を用い、かつ仮想アドレス空間の拡張を行う。
すなわち、基本的なアドレス空間であるプログラ
ム実行アドレス空間(以下PEASと記す)の他
に、拡張された空間としてデバツグ情報アドレス
空間(以下DIASと記す)を設ける。
多重仮想記憶計算機のある論理アドレスが複数
個の仮想空間の中の1つだけに属しているのに対
して、DIASが新しく設けられた場合には、ある
論理アドレスは複数個の仮想空間の中の1つであ
るPEASに属していると同時にDIASにも属して
いる点で、単純な仮想メモリ方式とは異なる。
個の仮想空間の中の1つだけに属しているのに対
して、DIASが新しく設けられた場合には、ある
論理アドレスは複数個の仮想空間の中の1つであ
るPEASに属していると同時にDIASにも属して
いる点で、単純な仮想メモリ方式とは異なる。
第8図は、本発明の実施例を示す拡張されたア
ドレス変換機構の模式図である。
ドレス変換機構の模式図である。
前述のように、プログラムで示される論理アド
レスLAは、PEASと同時にDIASにも属し、この
DIASと実メモリ・アドレスPAとのマツピング
は、第8図に示す拡張されたアドレス変換機構に
よつて行われる。すなわち、第8図に示す論理ア
ドレス・レジスタLARの内容は、2つの意味を
有し、その1つはPEASに属してプログラム実行
のためのアドレスであり、他の1つはDIASに属
してデバツグ情報のためのアドレスである。
レスLAは、PEASと同時にDIASにも属し、この
DIASと実メモリ・アドレスPAとのマツピング
は、第8図に示す拡張されたアドレス変換機構に
よつて行われる。すなわち、第8図に示す論理ア
ドレス・レジスタLARの内容は、2つの意味を
有し、その1つはPEASに属してプログラム実行
のためのアドレスであり、他の1つはDIASに属
してデバツグ情報のためのアドレスである。
第8図に示す拡張されたアドレス変換機構は、
1つの論理アドレスLAから2つの実メモリ・ア
ドレスPAを発生させる機能を有する。発生され
る実メモリ・アドレスPAの1つは、従来より発
生されているプログラム実行アドレスPA0であ
り、他の1つはデバツグ情報の指示アドレスとし
ての実メモリ・アドレスPA1である。
1つの論理アドレスLAから2つの実メモリ・ア
ドレスPAを発生させる機能を有する。発生され
る実メモリ・アドレスPAの1つは、従来より発
生されているプログラム実行アドレスPA0であ
り、他の1つはデバツグ情報の指示アドレスとし
ての実メモリ・アドレスPA1である。
論理アドレスLAからプログラム実行アドレス
PA0を求める処理は、第7図で説明したよう
に、セグメント・ベース・レジスタSBR0、セグ
メント・テーブルST0、ページ・テーブルPT0
を用いて、従来のアドレス変換動作により行われ
る。
PA0を求める処理は、第7図で説明したよう
に、セグメント・ベース・レジスタSBR0、セグ
メント・テーブルST0、ページ・テーブルPT0
を用いて、従来のアドレス変換動作により行われ
る。
本発明においては、新しくセグメント・ベー
ス・レジスタSBR1、セグメント・テーブルST
1、およびページ・テーブルPT1を設け、これ
らを用いて論理アドレスLAからデバツグ実行ア
ドレスPA1への変換を行う。
ス・レジスタSBR1、セグメント・テーブルST
1、およびページ・テーブルPT1を設け、これ
らを用いて論理アドレスLAからデバツグ実行ア
ドレスPA1への変換を行う。
セグメント・ベース・レジスタSBR0は、通
常、処理装置内にレジスタとして設置され、一方
のセグメント・テーブルST0とページ・テーブ
ルPT0は主メモリMS上にテーブルとして定義さ
れる。第8図において新しく設けられたセグメン
ト・ベース・レジスタSBR1、セグメント・テー
ブルST1、およびページ・テーブルPT1も、同
じように、レジスタあるいは主メモリMS上に定
義されてよい。
常、処理装置内にレジスタとして設置され、一方
のセグメント・テーブルST0とページ・テーブ
ルPT0は主メモリMS上にテーブルとして定義さ
れる。第8図において新しく設けられたセグメン
ト・ベース・レジスタSBR1、セグメント・テー
ブルST1、およびページ・テーブルPT1も、同
じように、レジスタあるいは主メモリMS上に定
義されてよい。
第8図では、プログラム実行アドレスPA0へ
の変換と並行して、セグメント・ベース・レジス
タSBR1とセグメント・テーブルST1とペー
ジ・テーブルPT1とを用い、デバツグ実行アド
レスPA1に変換する。このアドレスPA1によ
り、主メモリMS上のアドレスPA0と異るエリア
をアクセスしてタグ情報を読出す。このタグ情報
を、デバツグ実行時に用いるのである。
の変換と並行して、セグメント・ベース・レジス
タSBR1とセグメント・テーブルST1とペー
ジ・テーブルPT1とを用い、デバツグ実行アド
レスPA1に変換する。このアドレスPA1によ
り、主メモリMS上のアドレスPA0と異るエリア
をアクセスしてタグ情報を読出す。このタグ情報
を、デバツグ実行時に用いるのである。
主メモリMS上には、プログラム命令を格納す
る領域PGの他に、デバツク用のタグを格納する
領域TGが必要となるが、プログラム走行中の必
要な命令にだけタグを付加すればよいため、第6
図に示すような全領域にタグTGを設ける方法に
比べてメモリ容量の増加が少い。
る領域PGの他に、デバツク用のタグを格納する
領域TGが必要となるが、プログラム走行中の必
要な命令にだけタグを付加すればよいため、第6
図に示すような全領域にタグTGを設ける方法に
比べてメモリ容量の増加が少い。
なお、PEASとDIASとを1対1で対応させる
方法、つまりPEASの1バイトに対してDIASの
1バイトを対応させる方法を用いるのが最も簡単
である。また、他の方法の例として、PEASの1
バイトに対して、DIASの1ビツトを対応させる
方法もあるが、アドレス空間の拡張という考えで
は両者は全く同じである。
方法、つまりPEASの1バイトに対してDIASの
1バイトを対応させる方法を用いるのが最も簡単
である。また、他の方法の例として、PEASの1
バイトに対して、DIASの1ビツトを対応させる
方法もあるが、アドレス空間の拡張という考えで
は両者は全く同じである。
アドレス変換機構として、第8図では、セグメ
ント・ベース・レジスタSBRを2個設ける方法を
示しているが、他にも種々の方法がある。
ント・ベース・レジスタSBRを2個設ける方法を
示しているが、他にも種々の方法がある。
第9図および第10図は、それぞれ本発明の他
の実施例を示すアドレス変換機構の説明図であ
る。
の実施例を示すアドレス変換機構の説明図であ
る。
第9図は、1つの論理アドレスLAから従来の
アドレス変換機構を殆んど変更することなく、2
つの実メモリ・アドレスPA0,PA1を発生する
方法を示す。この方法では、PEASとDIASを2
つの空間として分離することなく、PEASの中に
DIASを含ませる。すなわち、PEASを2つの分
割し、片側をPEASとして使用し、他側をDIAS
として使用する。
アドレス変換機構を殆んど変更することなく、2
つの実メモリ・アドレスPA0,PA1を発生する
方法を示す。この方法では、PEASとDIASを2
つの空間として分離することなく、PEASの中に
DIASを含ませる。すなわち、PEASを2つの分
割し、片側をPEASとして使用し、他側をDIAS
として使用する。
この方法では、セグメント・ベース・レジスタ
SBR、セグメント・テーブルSTおよびページ・
テーブルPTは各々1個ずつ設けられるだけであ
るから、第9図aに示すように、1つの論理アド
レスLAから2つのものS1,S2を発生させな
ければならない。
SBR、セグメント・テーブルSTおよびページ・
テーブルPTは各々1個ずつ設けられるだけであ
るから、第9図aに示すように、1つの論理アド
レスLAから2つのものS1,S2を発生させな
ければならない。
そこで、第9図bに示すように、論理アドレス
LAの最上位ビツトを、PEASのとき“0”、
DIASのとき“1”として切分ける。
LAの最上位ビツトを、PEASのとき“0”、
DIASのとき“1”として切分ける。
論理アドレスLAは、PEASが4096MB(=282)
のときに全アドレスを指定できるための32ビツト
長を有しており、第9図dに示すように、論理ア
ドレス空間LDを2分割して、プログラム格納領
域PGとタグ格納領域TGに使用する。例えば、第
9図cに示すように、論理アドレスLAの“000…
…011”および“100……011”から、それぞれ第
9図dに示すプログラム領域PGの1つを指定す
る実メモリ・アドレスと、タグ領域TGの1つを
指定する実メモリ・アドレスとを発生させること
ができる。
のときに全アドレスを指定できるための32ビツト
長を有しており、第9図dに示すように、論理ア
ドレス空間LDを2分割して、プログラム格納領
域PGとタグ格納領域TGに使用する。例えば、第
9図cに示すように、論理アドレスLAの“000…
…011”および“100……011”から、それぞれ第
9図dに示すプログラム領域PGの1つを指定す
る実メモリ・アドレスと、タグ領域TGの1つを
指定する実メモリ・アドレスとを発生させること
ができる。
次に、第10図は、3個以上のセグメント・ベ
ース・レジスタSBRを用いて、対応する複数のタ
グを取出せる実メモリ・アドレスPA1を発生さ
せる方法を示す。すなわち、3個以上のセグメン
ト・ベース・レジスタSBRを用いて、DIASを多
面作成する。第10図では、5個のセグメント・
ベース・レジスタSBR0〜4に対して、それぞれ
PEASの1バイトと、4個のDIASの各1バイト
を対応させている。このようにすれば、PEASの
1バイトに対して、DIASのビツト数を任意に選
択でき、柔軟性を持たせることができる。例え
ば、ページ単位に、DIASのサイズを可変にする
ことが可能である。
ース・レジスタSBRを用いて、対応する複数のタ
グを取出せる実メモリ・アドレスPA1を発生さ
せる方法を示す。すなわち、3個以上のセグメン
ト・ベース・レジスタSBRを用いて、DIASを多
面作成する。第10図では、5個のセグメント・
ベース・レジスタSBR0〜4に対して、それぞれ
PEASの1バイトと、4個のDIASの各1バイト
を対応させている。このようにすれば、PEASの
1バイトに対して、DIASのビツト数を任意に選
択でき、柔軟性を持たせることができる。例え
ば、ページ単位に、DIASのサイズを可変にする
ことが可能である。
この場合、PEASの1バイトに対し、DIASを
複数個選択しても、最終的にデバツグ実行アドレ
スPA1はすべて1個のプログラム実行アドレス
PA0に対応するものとなる。
複数個選択しても、最終的にデバツグ実行アドレ
スPA1はすべて1個のプログラム実行アドレス
PA0に対応するものとなる。
これらのアドレスPA1により読出されるタグ
TGは、例えば、この命令アドレスは誰が使つた
か、どのレジスタゆ使つたか等の各種デバツグ情
報となる。
TGは、例えば、この命令アドレスは誰が使つた
か、どのレジスタゆ使つたか等の各種デバツグ情
報となる。
デバツグ処理は、PEASでのプログラム実行と
同期して、DIASのPEASに対応したデータ(タ
グTG)を処理することにより実行される。DIAS
のアクセスは、PEASへのアクセスを契機にして
行われる。すなわち、PEASにおいて、命令フエ
ツチが行われると、それを契機としてその命令ア
ドレスに対応したDIASへのアクセスが行われ
る。オペランドも、全く同じようにして読出され
る。
同期して、DIASのPEASに対応したデータ(タ
グTG)を処理することにより実行される。DIAS
のアクセスは、PEASへのアクセスを契機にして
行われる。すなわち、PEASにおいて、命令フエ
ツチが行われると、それを契機としてその命令ア
ドレスに対応したDIASへのアクセスが行われ
る。オペランドも、全く同じようにして読出され
る。
DIASへの処理では、(1)DIASにマークを付す動
作と、(2)DIASの情報によりPEASでのプログラ
ム実行にトラツプ(わな)を発生する動作とが基
本となる。上記(1)では、プログラムの命令がフエ
ツチされたとき、その命令アドレスに対応するタ
グに対して“1”を書込むことにより、プログラ
ムの走行マツプを得る。走行マツプは、プログラ
ム実行後、他の解析プログラムによつて解析さ
れ、有効なデバツグ情報が得られることになる。
また、上記(2)では、デバツグ情報を調べたいプロ
グラム命令アドレスに対応したタグ情報に、例え
ば割込みマーク、割込み先のアドレス情報等を書
込んだり、ロジツク操作を行うことによつて、従
来実行されていた命令アドレス一致、オペラン
ド・アドレス一致、あるいは新しくデイレールを
実行することができる。
作と、(2)DIASの情報によりPEASでのプログラ
ム実行にトラツプ(わな)を発生する動作とが基
本となる。上記(1)では、プログラムの命令がフエ
ツチされたとき、その命令アドレスに対応するタ
グに対して“1”を書込むことにより、プログラ
ムの走行マツプを得る。走行マツプは、プログラ
ム実行後、他の解析プログラムによつて解析さ
れ、有効なデバツグ情報が得られることになる。
また、上記(2)では、デバツグ情報を調べたいプロ
グラム命令アドレスに対応したタグ情報に、例え
ば割込みマーク、割込み先のアドレス情報等を書
込んだり、ロジツク操作を行うことによつて、従
来実行されていた命令アドレス一致、オペラン
ド・アドレス一致、あるいは新しくデイレールを
実行することができる。
第11図は、本発明の実施例を示すデータ処理
装置のブロツク図である。
装置のブロツク図である。
第11図に示すように、本発明のデータ処理装
置は、共通制御部1、命令ユニツト2、演算ユニ
ツト3、デバツク制御ユニツト4、アドレス変換
部6,7、メモリ制御部8および主メモリ9等か
ら構成され、これらのうちのデバツク用のアドレ
ス変換部7以外は従来より設けられているか、あ
るいは従来の回路から分離独立して設けられたも
のである。すなわち、共通制御部1は中央処理装
置における各部に共通な制御回路を抜出したもの
で、デバツグ・モードを設定するためのシステ
ム・レジスタもこの中に含まれる。命令ユニツト
2は、プログラムの命令を読出してきて実行に移
すまでの準備を行う回路であり、演算ユニツト3
は命令ユニツト2で用意された命令を実行し、論
理演算動作を行う回路である。デバツグ制御ユニ
ツト4は、デバツグ実行アドレスを実アドレスに
アドレス変換するための指令を出したり、実アド
レスでタグに書込みを行つてデバツグを実行する
回路である。
置は、共通制御部1、命令ユニツト2、演算ユニ
ツト3、デバツク制御ユニツト4、アドレス変換
部6,7、メモリ制御部8および主メモリ9等か
ら構成され、これらのうちのデバツク用のアドレ
ス変換部7以外は従来より設けられているか、あ
るいは従来の回路から分離独立して設けられたも
のである。すなわち、共通制御部1は中央処理装
置における各部に共通な制御回路を抜出したもの
で、デバツグ・モードを設定するためのシステ
ム・レジスタもこの中に含まれる。命令ユニツト
2は、プログラムの命令を読出してきて実行に移
すまでの準備を行う回路であり、演算ユニツト3
は命令ユニツト2で用意された命令を実行し、論
理演算動作を行う回路である。デバツグ制御ユニ
ツト4は、デバツグ実行アドレスを実アドレスに
アドレス変換するための指令を出したり、実アド
レスでタグに書込みを行つてデバツグを実行する
回路である。
先ず、デバツグ・モードの設定が、プログラム
により行われる。すなわち、共通制御部1のシス
テム・レジスタの各モードに対応するビツトが、
プログラムにより“1”にセツトされ、保持され
ることによつてデバツグ・モードが設定される。
により行われる。すなわち、共通制御部1のシス
テム・レジスタの各モードに対応するビツトが、
プログラムにより“1”にセツトされ、保持され
ることによつてデバツグ・モードが設定される。
デバツグ・モードとしては、(1)実行した命令の
アドレスにマークを付すモード、(2)実行したオペ
ランドのアドレスにマークを付すモード、(3)フラ
グが付されたアドレスの命令を実行したときにト
ラツプを生じるモード、(4)フラグが付されたアド
レスをオペランドとして参照または変更したとき
に、トラツプを生じるモード、のいずれか1つ、
あるいはそれらの複数を指示できる。
アドレスにマークを付すモード、(2)実行したオペ
ランドのアドレスにマークを付すモード、(3)フラ
グが付されたアドレスの命令を実行したときにト
ラツプを生じるモード、(4)フラグが付されたアド
レスをオペランドとして参照または変更したとき
に、トラツプを生じるモード、のいずれか1つ、
あるいはそれらの複数を指示できる。
第11図においては、主メモリ9上に、命令ま
たはオペランドのアドレスLAを実メモリ上のア
ドレスPA0,PA1に変換するためのアドレス変
換テーブルATTを備えている。オペレーテイン
グ・システムは、アドレス変換テーブルATTを
作成した後、PSWのアドレス変換モード・ビツ
トが“1”になると、命令またはオペランドのア
ドレスLAを従来の変換方法により実アドレスPA
0に変換する。
たはオペランドのアドレスLAを実メモリ上のア
ドレスPA0,PA1に変換するためのアドレス変
換テーブルATTを備えている。オペレーテイン
グ・システムは、アドレス変換テーブルATTを
作成した後、PSWのアドレス変換モード・ビツ
トが“1”になると、命令またはオペランドのア
ドレスLAを従来の変換方法により実アドレスPA
0に変換する。
オペレーテイング・システムが、デバツグ実行
アドレスPA1に変換するためのアドレス変換テ
ーブルATTを作成する場合、PEASのプログラ
ムが実行され、必要に応じて主メモリ9上に割当
てられるとき、その割当てページに対応した
DIASのページも同じように主メモリ9上に割当
てられる。同じようにして、PEASのページが主
メモリ9上から消されたとき、DIASのページも
消されてもよい。
アドレスPA1に変換するためのアドレス変換テ
ーブルATTを作成する場合、PEASのプログラ
ムが実行され、必要に応じて主メモリ9上に割当
てられるとき、その割当てページに対応した
DIASのページも同じように主メモリ9上に割当
てられる。同じようにして、PEASのページが主
メモリ9上から消されたとき、DIASのページも
消されてもよい。
これらの動作は、すべてオペレーテイング・シ
ステムにより実行されるが、従来の仮想アドレス
空間方式のオペレーテイング・システムと基本的
には同一動作であるため、何ら問題は生じない。
特に、従来実用されている多重仮想アドレス空間
方式では、異る2つの空間がある一瞬でも同時に
存在しないのに対して、本発明ではPEASと
DIASが常に同時に存在し、同時に2つ以上の空
間で処理が並行して行われる点で差異があるが、
これは実際のハードウエア処理上の差異であつ
て、オペレーテイング・システムとしては従来の
機能をこの程度に拡張することはきわめて簡単で
ある。
ステムにより実行されるが、従来の仮想アドレス
空間方式のオペレーテイング・システムと基本的
には同一動作であるため、何ら問題は生じない。
特に、従来実用されている多重仮想アドレス空間
方式では、異る2つの空間がある一瞬でも同時に
存在しないのに対して、本発明ではPEASと
DIASが常に同時に存在し、同時に2つ以上の空
間で処理が並行して行われる点で差異があるが、
これは実際のハードウエア処理上の差異であつ
て、オペレーテイング・システムとしては従来の
機能をこの程度に拡張することはきわめて簡単で
ある。
デバツグ・モードが設定され、主メモリ9にア
ドレス変換テーブルATTが作成された後、プロ
グラムがデバツグ動作と並行に実行される。
ドレス変換テーブルATTが作成された後、プロ
グラムがデバツグ動作と並行に実行される。
プログラムの実行は、先ず命令アドレスの発生
で開始される。命令ユニツト2においては、読出
すべき命令のアドレスが発生されると、その命令
アドレスはアドレス・レジスタ5に送られる。
で開始される。命令ユニツト2においては、読出
すべき命令のアドレスが発生されると、その命令
アドレスはアドレス・レジスタ5に送られる。
この命令アドレスは、論理アドレスLAのた
め、アドレス変換部6により実アドレスPA0に
変換されてメモリ制御部8に転送される。アドレ
ス変換部6は、主メモリ9上のアドレス変換テー
ブルATTを索引して、第7図で説明したような
処理により実アドレスPA0を得る。
め、アドレス変換部6により実アドレスPA0に
変換されてメモリ制御部8に転送される。アドレ
ス変換部6は、主メモリ9上のアドレス変換テー
ブルATTを索引して、第7図で説明したような
処理により実アドレスPA0を得る。
メモリ制御部8は、命令アドレスにより主メモ
リ9からデータとして命令を読出し、データ・レ
ジスタ10にセツトした後、このデータを命令ユ
ニツト2に転送する。
リ9からデータとして命令を読出し、データ・レ
ジスタ10にセツトした後、このデータを命令ユ
ニツト2に転送する。
共通制御部1は、この動作の完了によつてデバ
ツグ制御部4に点線のルートで指令を出す。
ツグ制御部4に点線のルートで指令を出す。
デバツグ制御部4は、先に共通制御部1から送
られているデバツグ・モードにより動作を行う。
られているデバツグ・モードにより動作を行う。
デバツグ・モード(1)(実行した命令のアドレス
にマークを付すモード)の場合、アドレス・レジ
スタ5に先の命令アドレス(論理アドレス)が保
持されているので、そのアドレスを用いてアドレ
ス変換部7に変換指令を出し、実アドレスPA1
を求めると同時に、データ・レジスタ10にマー
ク・ビツトを立てる。そして、求められた実アド
レスPA1で主メモリ9をアクセスし、データ・
レジスタ10の内容、つまりマークをタグ領域に
書込む。
にマークを付すモード)の場合、アドレス・レジ
スタ5に先の命令アドレス(論理アドレス)が保
持されているので、そのアドレスを用いてアドレ
ス変換部7に変換指令を出し、実アドレスPA1
を求めると同時に、データ・レジスタ10にマー
ク・ビツトを立てる。そして、求められた実アド
レスPA1で主メモリ9をアクセスし、データ・
レジスタ10の内容、つまりマークをタグ領域に
書込む。
これにより、命令アドレスにマークが付された
ことになる。実行されるすべての命令アドレスに
対応するタグに対し、マークを付すことにより、
プログラムの走行マツプが得られる。
ことになる。実行されるすべての命令アドレスに
対応するタグに対し、マークを付すことにより、
プログラムの走行マツプが得られる。
なお、アドレス変換部7は、主メモリ9上のア
ドレス変換テーブル(論理アドレスLAから実ア
ドレスPA1への変換用)を用いて変換するが、
その処理は第8図に示す方法で実行し、そのとき
アドレス変換部7内に存在するセグメント・ベー
ス・レジスタSER1を使用する。
ドレス変換テーブル(論理アドレスLAから実ア
ドレスPA1への変換用)を用いて変換するが、
その処理は第8図に示す方法で実行し、そのとき
アドレス変換部7内に存在するセグメント・ベー
ス・レジスタSER1を使用する。
次に、デバツグ・モード3(フラグの付された
アドレスの命令を実行したときにトラツプを生じ
るモード)の場合、前述のデバツグ・モード1と
同じようにして実メモリ・アドレスPA1を求
め、このアドレスで主メモリ9からデータをデー
タ・レジスタ10に読出す。
アドレスの命令を実行したときにトラツプを生じ
るモード)の場合、前述のデバツグ・モード1と
同じようにして実メモリ・アドレスPA1を求
め、このアドレスで主メモリ9からデータをデー
タ・レジスタ10に読出す。
デバツグ制御部4は、主メモリ9から読出され
たデータをデータ・レジスタ10から取込み、デ
ータ中のフラグの有無を調べる。もし、フラグが
“0”のときには、何もすることなく、フラグが
“1”のときには、デバツグ制御部4内のトラツ
プ・フリツプ・フロツプをオンにし、この命令が
終了したときに共通制御部1によつて命令完了形
の割込みを発生させる。割込みが起ると、旧
PSWは主メモリ9の特定領域に格納され、他の
特定領域から新PSWが読出される。
たデータをデータ・レジスタ10から取込み、デ
ータ中のフラグの有無を調べる。もし、フラグが
“0”のときには、何もすることなく、フラグが
“1”のときには、デバツグ制御部4内のトラツ
プ・フリツプ・フロツプをオンにし、この命令が
終了したときに共通制御部1によつて命令完了形
の割込みを発生させる。割込みが起ると、旧
PSWは主メモリ9の特定領域に格納され、他の
特定領域から新PSWが読出される。
デバツグ制御部4の動作と並行して、命令ユニ
ツト2では、命令の解読が行われ、続いてオペラ
ンド・アドレスが発生される。一般に、オペラン
ド・アドレスは、一般にベース修飾、インデツク
ス修飾がなされるが、これも従来と同じ方法で行
われる。
ツト2では、命令の解読が行われ、続いてオペラ
ンド・アドレスが発生される。一般に、オペラン
ド・アドレスは、一般にベース修飾、インデツク
ス修飾がなされるが、これも従来と同じ方法で行
われる。
オペランド・アドレスが求められ、かつデバツ
グ制御部4の動作が終了すると、命令ユニツト2
はオペランド・アドレスをアドレス・レジスタ5
にセツトし、アドレス変換部6により実アドレス
を求める。
グ制御部4の動作が終了すると、命令ユニツト2
はオペランド・アドレスをアドレス・レジスタ5
にセツトし、アドレス変換部6により実アドレス
を求める。
命令がメモリ読出し(あるいはメモリ書込み)
を指示している場合には、その実アドレスにより
主メモリ9をアクセスし、読出し(あるいは書込
み)を行う。読出しのときは、読出されたデータ
は、データ・レジスタ10にセツトされ、続いて
演算ユニツト3に送られて、そこで演算が行われ
る。
を指示している場合には、その実アドレスにより
主メモリ9をアクセスし、読出し(あるいは書込
み)を行う。読出しのときは、読出されたデータ
は、データ・レジスタ10にセツトされ、続いて
演算ユニツト3に送られて、そこで演算が行われ
る。
命令ユニツト2のメモリ・アクセス動作が終了
すると、共通制御部1を介してデバツグ制御部4
にデバツグ動作指示が送出される。
すると、共通制御部1を介してデバツグ制御部4
にデバツグ動作指示が送出される。
デバツグ・モード2(実行したオペランドのア
ドレスにマークするモード)の場合、デバツグ・
モード1と同じようにして、オペランド・アドレ
スに対してDIAS上にマークが付される。
ドレスにマークするモード)の場合、デバツグ・
モード1と同じようにして、オペランド・アドレ
スに対してDIAS上にマークが付される。
次に、デバツグ・モード4(フラグの付された
アドレスをオペランドとして参照または変更した
とき、トラツプを生じるモード)の場合、参照の
ための読出しフラグが付されるときと、変更のた
めの書込みフラグが付されるときがある。デバツ
グ・モード3の場合と同じようにして実メモリ・
アドレスPA1を求め、このアドレスにより主メ
モリ9からデータを読出し、デバツグ制御部4に
送つてフラグの有無を調べる。もし、読出しフラ
グが“1”で、オペランド読出しのとき、割込み
が発生する。また、書込みフラグが“1”で、オ
ペランド書込みのときにも、割込みが発生する。
アドレスをオペランドとして参照または変更した
とき、トラツプを生じるモード)の場合、参照の
ための読出しフラグが付されるときと、変更のた
めの書込みフラグが付されるときがある。デバツ
グ・モード3の場合と同じようにして実メモリ・
アドレスPA1を求め、このアドレスにより主メ
モリ9からデータを読出し、デバツグ制御部4に
送つてフラグの有無を調べる。もし、読出しフラ
グが“1”で、オペランド読出しのとき、割込み
が発生する。また、書込みフラグが“1”で、オ
ペランド書込みのときにも、割込みが発生する。
割込みは、命令終了時に完了形の割込みが発生
し、かつ他の割込みとの区別のために、デバツグ
割込みの種類と発生アドレスがプログラムに報告
される。すなわち、従来、割込みコードはデバツ
グ割込みとして1種類しかないが、本発明では、
種々のトラツプが存在するため、どこのトラツプ
であるかを報告するため、主メモリ9上の旧
PSWとは異る特定領域に種類ごとの割込みコー
ドを格納する。
し、かつ他の割込みとの区別のために、デバツグ
割込みの種類と発生アドレスがプログラムに報告
される。すなわち、従来、割込みコードはデバツ
グ割込みとして1種類しかないが、本発明では、
種々のトラツプが存在するため、どこのトラツプ
であるかを報告するため、主メモリ9上の旧
PSWとは異る特定領域に種類ごとの割込みコー
ドを格納する。
また、デバツグ割込みの原因アドレス、つまり
フラグの付されたアドレスは、従来の処理方式で
は単一の原因しかないため、報告されることがな
いが、本発明では、原因アドレスとしてアドレ
ス・レジスタ5の内容をデバツグ制御部4が取込
み、内蔵メモリに記憶することにより報告が可能
となる。
フラグの付されたアドレスは、従来の処理方式で
は単一の原因しかないため、報告されることがな
いが、本発明では、原因アドレスとしてアドレ
ス・レジスタ5の内容をデバツグ制御部4が取込
み、内蔵メモリに記憶することにより報告が可能
となる。
以上説明したように、本発明によれば、ハード
ウエア・コストを増加することなく、メモリ・タ
グ手段と同等以上のデバツグ機能を持たせ、かつ
柔軟性を有するデバツグ情報の処理が可能とな
る。
ウエア・コストを増加することなく、メモリ・タ
グ手段と同等以上のデバツグ機能を持たせ、かつ
柔軟性を有するデバツグ情報の処理が可能とな
る。
第1図、第2図、第3図および第4図はそれぞ
れ従来のデータ処理装置におけるデバツク支援機
能の説明図、第5図、第6図はそれぞれ従来のデ
バツグ手段の一例を示す説明図、第7図は本発明
が適用されるアドレス変換機構のブロツク図、第
8図は本発明の実施例を示す拡張されたアドレス
変換機構の模式図、第9図、第10図はそれぞれ
本発明の他の実施例を示すアドレス変換機構の説
明図、第11図は本発明の実施例を示すデータ処
理装置のブロツク図である。 1…共通制御部、2…命令ユニツト、3…演算
ユニツト、4…デバツグ制御ユニツト、5…アド
レス・レジスタ、6,7…アドレス変換部、8…
メモリ制御部、9…主メモリ、10…データ・レ
ジスタ、LA…論理アドレス、PG…プログラム実
行アドレス領域、TG…タグ領域、PEAS…プロ
グラム実行アドレス空間、DIAS…デバツグ情報
アドレス空間、SBR…セグメント・ベース・レジ
スタ、LAR…論理アドレス・レジスタ、ST…セ
グメント・テーブル、PT…ページ・テーブル、
PA0,PA1…実メモリ・アドレス。
れ従来のデータ処理装置におけるデバツク支援機
能の説明図、第5図、第6図はそれぞれ従来のデ
バツグ手段の一例を示す説明図、第7図は本発明
が適用されるアドレス変換機構のブロツク図、第
8図は本発明の実施例を示す拡張されたアドレス
変換機構の模式図、第9図、第10図はそれぞれ
本発明の他の実施例を示すアドレス変換機構の説
明図、第11図は本発明の実施例を示すデータ処
理装置のブロツク図である。 1…共通制御部、2…命令ユニツト、3…演算
ユニツト、4…デバツグ制御ユニツト、5…アド
レス・レジスタ、6,7…アドレス変換部、8…
メモリ制御部、9…主メモリ、10…データ・レ
ジスタ、LA…論理アドレス、PG…プログラム実
行アドレス領域、TG…タグ領域、PEAS…プロ
グラム実行アドレス空間、DIAS…デバツグ情報
アドレス空間、SBR…セグメント・ベース・レジ
スタ、LAR…論理アドレス・レジスタ、ST…セ
グメント・テーブル、PT…ページ・テーブル、
PA0,PA1…実メモリ・アドレス。
Claims (1)
- 1 プログラムにより仮想アドレス空間に属する
命令アドレスおよびオペランド・アドレスを発生
し、該アドレスをアドレス変換機構により実アド
レスに変換するデータ処理装置において、プログ
ラム実行アドレス空間の他に、1個以上のデバツ
グ情報アドレス空間を設け、上記両空間のいずれ
にも属する単一のアドレスを上記アドレス変換機
構を用いて2個以上の実アドレスに変換し、プロ
グラム実行のため、およびデバツク等のために、
それぞれメモリをアクセスすることを特徴とする
データ処理方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6508680A JPS56162156A (en) | 1980-05-16 | 1980-05-16 | Data processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6508680A JPS56162156A (en) | 1980-05-16 | 1980-05-16 | Data processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS56162156A JPS56162156A (en) | 1981-12-12 |
JPS6113615B2 true JPS6113615B2 (ja) | 1986-04-14 |
Family
ID=13276769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6508680A Granted JPS56162156A (en) | 1980-05-16 | 1980-05-16 | Data processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS56162156A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02116822U (ja) * | 1989-03-03 | 1990-09-19 | ||
JPH046574Y2 (ja) * | 1987-12-28 | 1992-02-24 | ||
JPH08280427A (ja) * | 1995-04-12 | 1996-10-29 | Sakuseshia:Kk | ピアス用キャッチの製造方法 |
-
1980
- 1980-05-16 JP JP6508680A patent/JPS56162156A/ja active Granted
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH046574Y2 (ja) * | 1987-12-28 | 1992-02-24 | ||
JPH02116822U (ja) * | 1989-03-03 | 1990-09-19 | ||
JPH08280427A (ja) * | 1995-04-12 | 1996-10-29 | Sakuseshia:Kk | ピアス用キャッチの製造方法 |
Also Published As
Publication number | Publication date |
---|---|
JPS56162156A (en) | 1981-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7533246B2 (en) | Application program execution enhancing instruction set generation for coprocessor and code conversion with marking for function call translation | |
US5668969A (en) | Address selective emulation routine pointer address mapping system | |
US4951195A (en) | Condition code graph analysis for simulating a CPU processor | |
US4794522A (en) | Method for detecting modified object code in an emulator | |
US11768757B2 (en) | Kernel debugging system and method | |
JP2001504957A (ja) | 先進のプロセッサにおけるメモリ・データ・エリアシング方法および装置 | |
KR950033859A (ko) | 부동 소숫점 유니트에서의 다이나믹 레지스터 관리 장치 및 방법 | |
US6529862B1 (en) | Method and apparatus for dynamic management of translated code blocks in dynamic object code translation | |
US7240334B1 (en) | Methods, systems, and computer program products for deferred computer program tracing | |
US6516295B1 (en) | Method and apparatus for emulating self-modifying code | |
CN111433742A (zh) | 多保护标签设置指令 | |
JP5318197B2 (ja) | ホストデータ処理装置内におけるデバイスエミュレーションのサポート | |
CN110431536B (zh) | 实现整个数据结构上的断点 | |
US7043717B2 (en) | Debugging apparatus and method | |
US20070156386A1 (en) | Linearization of page based memory for increased performance in a software emulated central processing unit | |
US6457171B1 (en) | Storage structure for dynamic management of translated code blocks in dynamic object code translation | |
KR102658600B1 (ko) | 디바이스를 디버깅할 때 메타데이터에 액세스하기 위한 장치 및 방법 | |
JP2001519955A (ja) | 先進のプロセッサのための変換メモリ保護装置 | |
JPS6113615B2 (ja) | ||
JP2021512405A (ja) | メモリ・アクセスにおける保護タグ・チェックの制御 | |
JP2001519954A (ja) | 一時的にターゲット・プロセッサの状態を保持する装置を備えたホスト・マイクロプロセッサ | |
CN112470134B (zh) | 数据处理装置和数据处理方法 | |
US20050289541A1 (en) | Virtual machine control structure decoder | |
JPS6058487B2 (ja) | デ−タ処理装置 | |
JP3461185B2 (ja) | ロードモジュールへのソースコード行番号登録方法および装置 |