JPS6246352A - マイクロプロセツサの動作解析方法と装置 - Google Patents

マイクロプロセツサの動作解析方法と装置

Info

Publication number
JPS6246352A
JPS6246352A JP60186463A JP18646385A JPS6246352A JP S6246352 A JPS6246352 A JP S6246352A JP 60186463 A JP60186463 A JP 60186463A JP 18646385 A JP18646385 A JP 18646385A JP S6246352 A JPS6246352 A JP S6246352A
Authority
JP
Japan
Prior art keywords
address
signal
instruction
read
write address
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
JP60186463A
Other languages
English (en)
Inventor
Minoru Fukuda
実 福田
Noriyuki Matsushima
松島 紀之
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.)
Iwatsu Electric Co Ltd
Original Assignee
Iwatsu Electric Co Ltd
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 Iwatsu Electric Co Ltd filed Critical Iwatsu Electric Co Ltd
Priority to JP60186463A priority Critical patent/JPS6246352A/ja
Publication of JPS6246352A publication Critical patent/JPS6246352A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はマイクロプロセッサの動作を解析するための方
法および装置に関する。ざらに具体的には、マイクロプ
ロセッサのデバッグを行うためのエミュレータに関する
。とくに、ブリフェッチ動作をするマイクロプロセッサ
のハードウェアおよびソフトウェアのデバッグのために
使用されるエミュレータに関するものである。
[従来の技術]、11 ・・1゜ ?−107°t ′V”i:*G H@L b Gf 
6” K 9   f、10ブロセツナのハードウェア
およびソフトウェア     ttlのデバッグをす′
るためにエミュレータが用いられ     、:11: 10゛6・                    
    1.1このエミュレータは、デバッグされる被
測定マイクロプロセッサが接続されたアドレス・バス。
データ・バスおよびコントロール・バス(以下、バスと
いう。)の信号をエミュレータ本体部にある記憶装置に
記憶し、その記憶した内容を表示して動作解析を行なっ
ている。
、:(Dt<l(。、、211IIオ、イウ。ア。ヤツ
ヶ5ア   ;1□−夕やプログラムを被測定マイクロ
プロセッサに     :1′付属するメモリから読出
したり書込んだりする信号が伝送されており、その信号
の伝送される順序     )□にしたがって順次その
信号をエミュレータにとり込み、動作解析を行なってい
る。            、1しかし、被測定マイ
クロプロセッサが、プリフェッチ動作をする場合には、
被測定マイクロプロセッサが命令の読出しと、その命令
を実行したことによって生ずるメモリの読出しあるいは
書込みのサイクルとの間に、その次の命令の読出しサイ
クルが入る。
さらに命令の読出す番地が連続でないものの場合には、
ブリフェッチ動作のため(実行する必要のない命令の読
出しも行ってしまうから、これもバス上にあられれ、エ
ミュレータの本体部に送られていた。
ここで、ブリフェッチ動作とは、マイクロプロセッサが
、命令を読出しそのつぎにその命令を実行したことによ
って生ずるメモリの読出しあるいは書込み動作をすると
いうように、シリーズに動作をするのではなく、この命
令の実行をしている間に、つぎの命令を読出す動作を並
行して行うことをいう。
したがって、ブリフェッチ動作により、処理スピードが
上がる。とくに、16ビツトのマイクロプロセッサでは
、ブリフェッチ動作をすることができるものが多い。
[発明が解決しようとする問題点] このようなブリフェッチ動作をするマイクロブOf?ッ
+、□8□□7、ユ93.よ、R1’?= (7)Hm
 I−&    ・□”・その命令の実行により生じた
メモリの読出しあるいは書込みの間に、次の命令の読出
しが入るために、バスに伝送されるままの順序でバスの
状態を表示する従来のエミュレータ(おいては、命令の
読出しと、その命令の実行により生じたメモリの読出し
あるいは書込みの相互関係が把握しにくいものとなって
いた。
また、命令の読出す番地が連続でないものの場 ′合に
は、ブリフェッチ動作のために実行する必要のない命令
の読出しも行ってしまい、これもバス     j・上
にあられれエミュレータの本体部に送られるか    
 ′5゜ら・1ミ゛′−夕0本体部1は必要0ないデー
′、1′も含めて収集し、表示するために、ざらに動作
解析を困難にしていた。
[問題点を解決するための手段] 本発明はこのような問題点を解決するためになされたも
ので、被測定マイクロプロセッサがブリフェッチ動作を
する場合でも、命令の読出しとその実行により生じたメ
モリの読出しあるいは書込みの間に入った、次の命令の
読出しは、順序を入れ替えることによって、命令の読出
しとその実行により生じたメモリの読出しあるいは書込
みの次にもってくるようにした。
また、命令の読出す番地が連続でないものの場合には、
実行する必要のない命令の読出しがエミュレータの本体
部に送られることのないようにした。それを実現するた
めに2つの番地を有する記憶回路にバス上の信号を制御
信号によって書込みし、読出すようにした。
[作用] これによって、エミュレータの本体部には、命令の順序
にしたがって情報が送られ、実行する必要のない命令は
送られないから、エミュレータの本体部には、必要な情
報のみが命令の順序通りに表示されることとなり、迅速
で正確な動作解析が可能となった。
[実施例] 第1図は本発明の一実施例を示す構成図であり、これに
よって説明する。
第1図において、5は被測定システムに含まれる測定対
象である被測定マイクロプロセッサ、6I:は被測定マ
イクロプロセッサ5のアクセスによって実行すべき命令
や実行した結果生ずるデータを読出したり書込んだりす
るためのメモリである。
11は被測定マイクロプロセッサ5が接続された   
  ゛□アドレス・バス、データ・バスおよびコントロ
ール・バス(以下、バスという。)のアクセス信号およ
びデータ信号(以下、バスの内容という。)を取り出す
ための入力回路、12は被測定マイクロプロセッサ5が
メモリ6の読出しを行うとき、その読出しが、命令を読
出しているのか(これを、プログラム・リファレンスと
呼ぶ。)、その命令を実行した結果生じたデータのメモ
リ6からの読出しまたはメモリ6への書込み(これを、
データ・リファレンスと呼ぶ)なのかを区別して、プロ
     ・、1グラ6°す7 y Ii>2(D場合
1プ0グラ6°す7     、。
アクセス信号Pを出力するためのプログラム・リファレ
ンス分離回路、13はマイクロプロセッサ5が実行する
命令、たとえば3ワードからなる命令のうち第1ワード
目(オペコード)を検出し、検出の有無を出力するオペ
コード検出回路、14はマイクロプロセッサ5がメモリ
6から命令を読出すとき(プログラム・リファレンス)
、プログラム・リファレンス信号Pを受けると同時にそ
の命令の入った番地が前に読出した命令の入っていた番
地と連続するものであるか否かを検出する連続検出回路
、15Aはプログラム・リファレンス分離回路12から
のプログラム・リファレンス信号Pが出力された場合、
入力回路11から出力されるバスの内容のうち、オペコ
ードとオペランド(命令の第2ワード目以降)を一方の
番地に書込み、プログラム・リファレンス信号Pが出力
されない場合にはデータ信号を他方の番地に書込んで記
憶するための2つの番地を有する記憶回路、18Aはプ
ログラム・リファレンス信@Pとオペコード検出回路1
3の出力と連続検出回路14の出力を受けて、記憶回路
15Aの書込アドレスWAと読出アドレスRAを出力す
るための記憶制御回路、19は11〜14.T5A、1
8Aを含む本     1□)′′、1′ 発明に係わる動作解析装置を特徴づけるエミュレ   
  ]i::′ −タ・ユニット部である。20は被測定マイクロ   
  ”゛プロセッサ5の動作状態をトレースするために
、エミュレータ・ユニット部19の2次記憶回路1..
17から送られてくるバスの内容を表示することに  
   11・よって監視し、メモリ6に代えて内蔵する
メモリ1カ、よえ1.□□□い、%’e’)6(Dr’
M(D   I計バグを修正するための表示部を有する
エミュレータ本体部(参考資料:たとえば岩通技報1.
パーソナル エミュレータ5L−4802、発行所 岩
崎通信機株式会社、発行 昭和59年6月30日、Vo
l、23、No、1.11〜19頁)であり、    
[1エミユレータ・ユニット部19とともに一体とな 
    [i□14゜ って動作解析装置を構成している。         
  [1・(、; [11・ ここで、メモリ6の内部構成の一例は第5図に    
 (II示されるようになっている。各命令が、たとえ
ば、     l>13ワードカ、らなつ工いるおき1
.よ1ワード目がオ     パ・□。
[;、i 6°−1・ 2aci−ff3’7−Fill “、t
 < 7 ”、/ t’ t h          
f、)っている。多くの種類の命令(・・・・・・M−
1,M、       1M+1・・・・・・)の各オ
ペコードや各オペランドは図示された順序でメモリ6の
連続する各番地に格納されている。
第2図は被測定マイクロプロセッサ5がブリフェッチ動
作をし命−令が連続している場合の一例であり、読出し
命令がメモリ6から読出されそれが実行されるとき、マ
イクロプロセッサ5に接続されたバスの内容がどのよう
にしてエミュレータ・ユニット部19からエミュレータ
本体部20に送られるかを示している。
第2図(a)において、記憶回路15Aの入力は、被測
定マイクロプロセッサ5の接続されたバスの内容がその
まま入力回路11を介して送られてくるため、期間T1
において命令1の第1ワード目(オペコード)である“
′命令1のオベコードパと、期間T3に示した命令1の
第2ワード目以降(オペランド)である“命令1のオペ
ランド″との間に、ブリフェッチ動作によって、命令1
より以前に読出された命令を実行したために発生したメ
モリ6からの読出したデータ(またはメモリ6への書込
みデータ)である“前の命令によるメモ     ′□
1gel・ す・リード″が期間T2において挿入されている。  
   “″ざらに、期間T5において、命令1を実行し
ただめに生ずる“命令1によるメモリ・リード゛が被測
定マイクロプロセッサ5の接続されたバスにあ    
 ;、1゜られれる以前に、期間T4において、命令1
の次     )ゝ;ト・) に実行されるべき命令2のオペコードの読出し状態“命
令2のオペ1−ド″があられれる・期間T、i6におい
て、゛命令2のオペランド゛°があられれ     賢
・1″。
る。                       
  、、、;この第2図(a)に示した記憶回路15A
の八     ″“□も\ 力が、もしも、そのままの順序でエミュレータ本   
  □′i:1 ’(、II 体部20に送られ表示されるならば、それらは、   
   ;2゜ブリフェッチ動作のために、命令の順序通
りにな     I゛□っていないために、動作解析が
困難である。        、′ここで、第2図(a
)に示した順序を入れ替えて命令の順序通りに並べ替え
て、被測定マイクロ     □、。
プロセッサ5の接続されたバスの内容がエミュレータ本
体部20に:、m6fする様子を第2図(b)〜   
  。
(h)により説明する。
期間T1において、被測定マイクロプロセッサ5の接続
されたバスは、“命令1のオペコード”を読出す状態に
なっており、この命令1のオペコードは、入力回路11
を通して記憶回路15A、プログラム・リファレンス分
離回路12、オペコード検出回路13および連続検出回
路14に送られている。
プログラム・リファレンス分離回路12はオペコードま
たはオペランドを検出してプログラム・リファレンス信
号“P” (第2図(b))を出力し、または命令によ
るメモリ・リードを検出してデータ・リファレンスと判
断したときは、プログラム・リファレンス信号゛P”を
出力しないが(第2図(b)にはDと表示)、期間T1
は“命令1のオペコード”を読出す状態であるからプロ
グラム・リファレンス状態にあり、(b)に示すように
プログラム・リファレンス信号“P″を出力する。これ
によって“命令1のオペコード″は、すでに書込まれて
記憶回路15Aの内容となっている“前の命令のオペコ
ード゛′に替えて、記憶口(・ 路15Ak−書込まれる。             
    1lilオペコ一ド検出回路13はオペコード
を検出すると、その出力が“’H”(レベル)となり、
オペコードを検出しないときはその出力が“L”(レベ
ル)となる。期間T1においては、オペコード検出回路
13の出力は“H”となる(第2図(C))。
連続検出0路116令0人°1番地0連続性     
illを調べる回路で・10グラム°リファレンス信号
     、1“P”の存在下において命令の入ってい
たメモリ     −i′:・。
6における番地(第5図参照)が連続であるとき   
  1;、:は“連続″の信号を出力し・不連続のとき
は“不     シ・。
連続”の信号を出力し、データリファレンス(命   
  1・:il: 令8実”″′結1生Ut;:9−1(7)%f!J6′
”) (7)      Ill読出しまたはメモリ6
への書込み)のときには出     i″′l=、′:
5 力しない。したがって期間T1においては期間T   
   l。
1の前の期間には命令1の前の命令のオペランド   
  □(図示されてはいない)があるから、命令1のオ
     :、、[)□゛ ぺ1−ドとは連続しており(第5図参照)・連続   
  1.I:検出回路14の出力は(d)に示すように
“連続9m     +、:。
となる。
プログラム・リファレンス信号“P″が出力されている
ときには記憶制御回路18Aは記憶回路15Aへの書込
アドレスと読出アドレスを前回゛P″が出力された状態
から変更する。その結果T1の前の期間とは両アドレス
は入れ替り、書込アドレスは0番地となり、読出アドレ
スは1番地となるため(第2図(e))、記憶回路15
Aの入力は0番地に書込まれ(第2図(f))、1番地
に記憶されていた“前の命令のオペランド”(第2図(
g))が読出されて記憶回路15Aの出力となる(第2
図(h))。
同様にして、期間T2においては、プログラム・リファ
レンス分離回路12からはデータ・リファレンスが検出
されるため、プログラム・リファレンス信号“P″は出
力されず(第2図(b)には“D″と表示)、オペコー
ド検出回路13の出力はL゛′である。プログラム・リ
ファレンスではないために連続検出回路14の出力はな
い。データ・リファレンスが検出されたために、記憶制
御回路18Aはその出力である読出アドレスRAを変更
せず、書込アドレスWA@読出アドレスRA&1″′]
L;l′jl!IC!!16 (@2’$ (eゝゝ・
Z (D    、、!。
t−9・1′!“[lf′15A17)A”ゞ1”0−
1“#(7)    t:1sec、ha″t−+>−
t>−b” *1mtacw−n゛H・21同時に1番
地から読出されて、記憶回路15Aから出力される。
期間T3においても、同様にして、プログラム・リファ
レンス分離回路12からはプログラム・リファレンス信
号“P”が出力され、オペコード     !へ検出回
路13の出力は“し”であり、連続検出回     1
イ路14の出力は“連続パであり、プログラム・す1y
L/>14MN“2″“出”’;an−cri゛;bt
=a・8己     晴、1憶制御回路18Aは第2図
(e)に示すように書     II。
込アドレスWAと読出アドレスRAを前のプログラム・
リファレンスのときく期間T1)と反対の値1変ゞv6
・001・記憶0路1590人力     iliに印
加された“命令1のオペランド″が1番地に書込ま0・
期間T1′″′0番地1込−zat:’“命令    
 ′1.′1のオペコード″が読出されて記憶回路15
Aから出力される。
期間T4においては、プログラム・リファレンス分離回
路12からはプログラム・リファレンス信号“P″が出
力され、オペコード検出回路13の出力は“Httであ
り、連続検出回路14の出力は“連続゛′である。プロ
グラム・リファレンス信号“P″が出力されているため
に、記憶制御回路18Aは書込アドレスWAと読出アド
レスRAを前回のプログラム・リファレンス時(期間T
3)とは反対の値にしく第2図(e))、0番地には記
憶回路15Aに印加された“命令2のオペツードパを書
込み、期間T3で1番地に書込まれた゛命令1のオペラ
ンド″を読出し、記憶回路15Aの出力とする(第2図
(h))。
期間T5においては、プログラム・リファレンス分離回
路12からはデータ・リファレンスであるため、プログ
ラム・リファレンス信号“P″は出力されない。オペコ
ード検出回路13の出力は″“L fTであり、プログ
ラム・リファレンスではないために、連続検出回路14
の出力はない。プログラム・リファレンス信号“Pパは
出力されてい     [・0°゛b゛6゛i;t!f
f1u[]tlj18A°’imA7t’L/IW  
 、。
A(Drip@ ’az L/ T、 ram 7 t
’ L/ 2 RA hno CV    1;。
る。この結果、記憶回路15Aに印加された“命   
  1.1令1によるメモリ・リード゛は1番地に書込
まれ、     1′□同時に1番地から読出されて、
記憶回路15Aの出力となる。
期間T6においては、プログラム・リファレンス分離回
路12からはプログラム・リファレンス信号“P”が出
力ざる。オペコード検出回路13″1°゛“1″T″″
′・!1ull 14 (7)l)    li。
′a″1″″r′y′a・7’0″>Ao“) 7 ?
 L/> 2 ’r    1ぺあるために、記憶制御
回路18Aは書込アドレス     l1WA & @
m 7 t’ L/:l、RA 8@0 (7)7 D
 ’j7 A 、’)    l”i′□ 1゛ニ 7702時(期間T4)と(よ反対にしく第2図   
  tlj(e))、記憶回路15Aに印加された“命
令2のオペランド”を1番地に書込み・期間T4で01
.1番地に書込まれた“命令2のオペコード”を読出 
    1j11.1 し、記憶回路15Aの出力とする。         
   1・1以上の動作から明らかなように、第2図(
a )      11(4゜ と(h>を比較するならば、ブリフェッチ動作によって
(a)の期間T1において“命令1のオペコード″が“
前の命令によるメモリ・リード゛′の前に入っていたも
のが、第2図(h)の期間T3において“前の命令によ
るメモリ・リード゛′と順序を入れ替えて記憶回路15
Aの出力とされてエミュレータ本体部20に命令の順序
に従った信号が送られている。
。同様にして、第2図(a)の期間T4において“命令
1によるメモリ・リード゛の前に現われた“命令2のオ
ペコード″は(h)の期間T6において、15A記憶回
路の出力とされ、命令の順序通りに信号がエミュレータ
本体20に送られる。
エミュレータ本体部20における表示は、命令の読出し
から実行まで連続したものであるから動作解析が容易と
なる。
つぎに、第3図(a)は1ワードのジャンプ系の命令の
うちBRA(Branch  AlwaySの略、マイ
クロプロセッサのジャンプ系動作の内の1つ。参考文献
:モートローラ M68000 16/32−BIT 
 MICROPROCE      ’U′1、。
11・ 5SOR,Proqrammers  Refe   
  、。
rence  Manual  771  第4版、1
111・゛ 9844−E−・1°−7?fR’r”rゝ“*58n
 6jii    71゜合の被測定マイクロプロセッ
サ5の接続されたバ     −:、:′□。
スの内容の1例を示しており、ジャンプされた実   
  1・□i・1 行不要の命令を除いてエミュレータ本体部20に   
  ijl送られる様子を第3図(b)〜(h)に示す
もの     1[(である。           
            j:!;1 第3図において、ジャンプ命令とは、指定した    
 (、:メモリ6の番地へ飛べという命令であり、ジャ
ン     1″[・ニ ブ先命令とはジャンプ命令で指定したメモリ6の   
  ;:j・: 番地に格納された命令をいう。           
   ト□3□a ) kニー q jよう1、被測¥
、イ、。ア     1ニトロセッサ5の接続されたバ
スの内容が入力回路11を介して記憶回路15Aに入力
されており、期間T1においては“ジャンプ命令1のオ
ペコード°゛が、期間T2においては“前の命令による
メモリ     i’・リード”がある。期間T3には
、実際には“実     i;11・: 行されない命令2のオベコードパすなわち、ジャ   
  −。
ンプしで飛び越された実行不要の命令がメモリー6にお
いてジャンプ命令1の直後に書かれているために、プリ
フェッチ動作によって記憶回路15△の入力に印加され
ている。期間T4においては、“ジャンプ先命令3のオ
ペコード″が印加され、期間T5においては、そのジャ
ンプ先命令3のオペランドである“命令3のオペランド
゛が印加され、期間T6においては“命令4のオペコー
ド゛′が印加されている。
期間T1において、プログラム・リファレンス分離回路
12は“ジャンプ命令1のオペコード″が印加されてい
るから、第2図の場合と同様に、第3図(b)に示すよ
うにプログラム・リファレンス信号“P″を出力する。
オペコード検出回路13は期間T1において、オペコー
ドを検出すると、(C)に示すようにH99を出力する
。(a)の“′ジャンプ命令1のオペコードパは期間T
1の前の期間の図示されてはいない“前の命令のオペラ
ンド゛”((q)の期間T1を参照)とメモリ6におい
て格納された番地が連続であるため、連続検出回路14
は(d)に示すように“連続゛の信     11号を
出力する。プログラム・リファレンス信号′“P”が出
力されているときは、記憶制御回路18Aは、書込アド
レスWAおよび読出アドレスR[。
Aを前回のプログラム・リファレンス時とは反対   
  ;1・1 の値とし、記憶回路15Aの入力゛ジャンプ命令   
  11のオペコードパは0番地に書込まれ、1番地か
、1よ・・ゎ(7)* @ (7)オ、ウラ、・・5□
8.211:;1 回路15Aの出力とされる(第3図(h))。    
  111QfDT2 cabzxo“・7°″6°”
) 7 ? 17 ”、/   1.□ス分離回路12
からは、データ・リファレンスが     ・′:@ヵ
。わ。、ア。ツウA 、’) ’7 ?ウアユ143 
  ′1゛P″は出力されない。オペコード検出回路1
3     °1の出力′1“L″′ある・データ゛リ
ファレンスが     5゜検出されているために、連
続検出回路14の出力はなく、データ・リファレンスで
あるために、書込アドレスWAのみが反転して読出アド
レスと同     □、。。、1,1□15AO11f
t!!1カ。8−1“前の命令によるメモリ・リード″
が書込まれ出     ;1力される。
期間T3においては、プログラム・リファレンス分離回
路12からはプログラム・リファレンス信号゛P”が出
力され、オペコード検出回路13の出力はH”である。
ジャンプ命令1と実行されない命令2とはメモリ6にお
いて連続した番地に記憶されているから、連続検出回路
14の出力は“連続゛′である。プログラム・リファレ
ンスであるために、記憶制御回路18Aは、書込アドレ
スWAと読出アドレスRAを前回のプログラム・リファ
レンス時(期間T1)とは反対の値に変更しく第3図(
e))、記憶回路15Aに印加されている“実行されな
い命令2のオペコード°゛を1番地に書込み、期間T1
で0番地に書込まれた“ジャンプ命令1のオペコード”
を記憶回路15Aは出力する。
期間T4においては、プログラム・リファレンス分離回
路12からは、プログラム・リファレンス信号゛P″が
出力ざる。オペコード検出回路13の出力はH°′であ
る。ジャンプ先命令3は、メモリ6に記憶されている番
地が実行されない命令2の番地とは連続したものとなっ
ていないため     1::に、連続検出回路14は
“不連続′°を出力する。     j・1:: プログラム・リファレンス信号“p toを受けても、
それと同時に“不連続″が印加された記憶制御回路18
A“前の命令(期間T3G″印加された命    、]
、1・令、すなわち、“実行されない命令2のオペコー
ド”)を調べ、それがオペコードであった場合は、書込
アドレスWAと読出アドレスRAを変更しな    l
’、l・い。このため期間T3で1番地に書込まれた“
実””;! t’L%(/’′″’?s 2 (7):
t<°−H”t“tiHi6n”  1.・“ジャンプ
先命令3のオペコードパとなり、記憶    11回路
15Aの出力は、期間T3にひきつづいて     :
1“ジャンプ命令1のオペコード”を出力する。   
   :1“不連続”であっても、かりに前の命令(期
間     ]:3に印加された命令)がオペコードで
ない場合、     ;1あるいは“連続”な場合には
記憶制御回路1白Aは動作して、書込アドレスWAと読
出アドレスロケc、tゎ。ア。、j56.、ワア、ツユ
。お、よヮ、。  II□・1 値に変更される。
この動作によって“実行されない命令2のオペ]−ドは
記憶回路15Aの出力とはならない。
期間T5においては、プログラム・リファレンス分離回
路12からはプログラム・リファレンス信号“′P°゛
が出力さる。オペコード検出回路13の出力は“L”で
ある。“命令3のオペランド゛′は゛ジャンプ先命令3
のオペコードパとメモリ6における番地が連続であるか
ら(第5図参照)連続検出回路14は゛連続”を出力し
、プログラム・リファレンス信号“P”が出力されてい
るために記憶¥1i111回路18Aは、書込アドレス
WAと読出アドレスRAを前回のプログラム・リファレ
ンス時(期間T4)とは反対の値に変更し、0番地に“
命令3のオペランド″を書込み、1番地からは期間T4
において書込まれた“ジャンプ先命令3のオペコード″
を読出し出力する。
期間T6においては、プログラム・リファレンス分離回
路12からはプログラム・リファレンス信号“P′′が
出力される。オペコード検出回路13の出力は“H′′
である。命令4は命令3と連続しているから連続検出回
路14の出力は“連続°′である。期間T5と同様にし
て、入力された“命令4のオペコード” h< 1番地
に書込まれ、0番地からは期間T5で書込まれた“命令
3のオペランド″が出力される。
このようにして、被測定マイクロプロセッサ5の接続さ
れたバスにブリフェッチ動作におけるBRA動作によっ
て生じた“実行されない命令2のオペコード″は記憶回
路15Aの出力とはならずエミュレータ本体部20には
送られないから、動作解析が容易となる。
以上、第2図および第3図に示した動作を第4図のフロ
ーチャートにより、説明する。
記憶回路15Aの入力である被測定マイクロプロセッサ
5の接続されたバスの信号は、命令のオペコードまたは
オペランドであるプログラム・リファレンスか否かをプ
ログラム・リファレンス分離回路12が判断する(ST
EP91)。
プログラム・リファレンスであると判断されると(ST
EP91Y) 、プログラム・リファレンス信号Pがプ
ログラム・リファレンス分離回路12から出力される。
プログラム・リファレンスでない場合には(STEP9
1N>、データ・リファレンスと判断し、プログラム・
リファレンス信号Pはプログラム・リファレンス分離回
路12から出力されない。
プログラム・リファレンスと判断されると(STEP9
1Y)、プログラム・リファレンスが連続か否かを連続
検出回路14が判断しく5TEP92)、連続な6 (
STEP92Y)、m込7ドレスWAと読出アドレスR
Aの前回のプログラム・リファレンス時からの変更を記
憶制御回路18Aが行なう。(STEP95)。不連続
ならば(STEP92N)、前の命令がオペコードか否
かを判断しく5TEP94)、オペコードでないなら(
STEP94N)書込アドレスWAと読出アドレスRA
を前回プログラム・リファレンスを検出した時とは反対
の値に変更する(STEP95)。
前の命令を調べて、それがオペコードであったならば(
STEP94Y) 、書込アドレスWAおよび読出アド
レスRAは変更しない(STEP96)。
デー9°’J7yL、t″′1ffi“検出a h t
= s合11      :(STEP91響)、書込
アドレスWAのみを変更して読出アドレスRAと同じ値
とする(STEP93)・             
   :つぎに書込アドレスWAが示す記憶回路15A
      :、)。いヵ、ゎえい8゜い、8工、、9
□、   1し 、読出アドレスRAが示す記憶回路15Aの番地の内容
を読出し出力する(STEP98)。
8′!1”15A、?)”Jj”antt<)、(Dr
@G“6   :令の順序通りにエミュレータ本体部2
0へ送出される(STEP99)。
そこで次のバスの内容の分析に入り、以上に説    
 :明した動作がくり返される           
     :□ [発明の効果] 以上の説明から明らかなようにブリフェッチ動作によっ
てバス上の信号の順序が命令の順序通りF h < i
’ 6 、 * t;−・’Rh”f’*’)*@tf
i @ * hT°゛   [でも、不要な命令を排除
して、命令通りの順序に     1入れ替えてエミュ
レータ・ユニット部からエミュレータ本体部に信号を送
り表示するもので、不要な命令によって誤った処理作業
が開始されてしまうこともなくなり動作解析が容易とな
り、マイクロプロセッサのハードウェアおよびソフトウ
ェアの迅速なデバッグが可能となるので、本発明の効果
は極めて大きい。
【図面の簡単な説明】
第1図は本発明の装匠の構成を示すブロック図、第2図
および第3図は第1図に示した本装置の動作説明図、第
4図は本装置における信号の処理される手順を示すフロ
ーチャート、第5図はメモリ6の内部構成を示す図であ
る。 5・・・被測定マイクロプロセッサ 6・・・メモリ      11・・・入力回路12・
・・プログラム・リファレンス分離回路13・・・オペ
コード検出回路 14・・・連続検出回路  15A・・・記憶回路18
A・・・記憶制御回路 19・・・エミュレータ・ユニット部 20・・・エミュレータ本体部。

Claims (2)

    【特許請求の範囲】
  1. (1)被測定マイクロプロセッサの接続されたバスから
    、前記被測定マイクロプロセッサのアクセス対象となる
    メモリをアクセスするアクセス信号およびデータ信号で
    あるバス信号のうち、命令を書込んであるオペコードと
    オペランドのいずれかを検出するためのプログラム・リ
    ファレンスにより前記オペコードとオペランドのいずれ
    かを検出したときには、その検出されたオペコードとオ
    ペランドのいずれかを書込んである前記メモリにおける
    番地が、前記命令の前の命令を書込んである前記メモリ
    における番地に連続であるか否かを判断し、連続である
    場合には、書込みをすべき書込番地と、読出番地のいず
    れにも使用可能な2つの番地を有する記憶回路の書込番
    地と読出番地を、前にプログラム・リファレンスによっ
    てオペコードとオペランドのいずれかを検出したときの
    書込番地と読出番地を入れ替えたものに変更し、前記バ
    ス信号を前記変更後の書込番地に書込み、すでに書込ん
    である情報を前記変更後の読出番地から読出し、 前記プログラム・リファレンスによってオペコードとオ
    ペランドのいずれをも検出しなかったときには、前記記
    憶回路の書込番地を変更して読出番地と同じくし、この
    変更後の書込番地に前記バス信号を書込み、この書込番
    地と同じである読出番地からこの書込まれた情報を読出
    し、 前記連続であるか否かの判断において、不連続と判断し
    た場合には、前の命令がオペコードであったか、オペラ
    ンドであったかを調べ、オペコードであったなら、前記
    記憶回路における書込番地と読出番地を変更せずに、書
    込番地に書込みをし、読出番地からすでに書込まれてい
    る情報を読出し、前記前の命令がオペコードであったか
    オペランドであったかを調べた結果がオペランドであっ
    た場合には、前記記憶回路の書込番地と読出番地を変更
    して変更後の書込番地に印加されている前記バス信号を
    書込み、変更後の読出し番地からすでに書込まれた情報
    を読出すことを特徴とするマイクロプロセッサの動作解
    析方法。
  2. (2)被測定マイクロプロセッサの接続されたバスから
    、前記被測定マイクロプロセッサのアクセス対象となる
    メモリをアクセスするための命令を書込まれたオペコー
    ドとオペランドとデータ信号を含むバス信号をとり出す
    ための入力手段と、前記オペコードとオペランドのいず
    れかを検出したときにプログラム・リファレンス信号を
    出力するためのプログラム・リファレンス分離手段と、
    前記オペコードを検出するためのオペコード検出手段と
    、 前記命令を書込んである前記メモリにおける番地が、前
    記命令の前の命令を書込んである前記メモリにおける番
    地に連続しているか不連続であるかを検出し連続信号お
    よび不連続信号を出力するための連続検出手段と、 書込番地信号によって指示された書込番地に前記入力手
    段の出力を書込み、読出番地信号によって指示された読
    出番地に書込まれている情報を読出すための、前記書込
    番地および前記読出番地のいずれにも使用可能な2つの
    番地を有する記憶手段と、 前記プログラム・リファレンス信号と前記連続信号を受
    けた場合は前記書込番地および読出番地を前回のプログ
    ラム・リファレンスを検出したときとは反対に変更する
    ための前記書込番地信号および読出し番地信号を出力し
    、前記プログラム・リファレンス信号を受けない場合は
    、前記書込番地を変更して前記読出番地と同一とするた
    めの前記書込番地信号と読出番地信号を出力し、前記プ
    ログラム・リファレンス信号と前記不連続信号とを受け
    、前記オペコード検出手段が前の命令においてオペコー
    ドを検出していた場合は、前記書込番地と読出番地を変
    更しないための前記書込番地信号と読出番地信号を出力
    し、前記プログラム・リファレンス信号と前記不連続信
    号とを受け、前記オペコード検出手段が前の命令におい
    てオペコードを検出していなかった場合は前記書込番地
    と読出番地を前回のプログラム・リファレンスを検出し
    たときとは反対に変更するための前記書込番地信号と読
    出番地信号を出力する記憶制御手段とを含むエミュレー
    タ・ユニット部と、 前記エミュレータ・ユニット部に含まれた前記記憶手段
    の出力を受けて表示するためのエミュレータ本体部とを
    具備することを特徴とするマイクロプロセッサの動作解
    析装置。
JP60186463A 1985-08-24 1985-08-24 マイクロプロセツサの動作解析方法と装置 Pending JPS6246352A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60186463A JPS6246352A (ja) 1985-08-24 1985-08-24 マイクロプロセツサの動作解析方法と装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60186463A JPS6246352A (ja) 1985-08-24 1985-08-24 マイクロプロセツサの動作解析方法と装置

Publications (1)

Publication Number Publication Date
JPS6246352A true JPS6246352A (ja) 1987-02-28

Family

ID=16188907

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60186463A Pending JPS6246352A (ja) 1985-08-24 1985-08-24 マイクロプロセツサの動作解析方法と装置

Country Status (1)

Country Link
JP (1) JPS6246352A (ja)

Similar Documents

Publication Publication Date Title
US5751942A (en) Trace event detection during trace enable transitions
JPS6246352A (ja) マイクロプロセツサの動作解析方法と装置
JPS60159951A (ja) 情報処理装置におけるトレ−ス方式
JPH0444973B2 (ja)
JP2760228B2 (ja) キャッシュメモリを内蔵したマイクロプロセッサとそのトレースアナライザ
JPH0581087A (ja) プロセサのモニタ方式
JPH0283749A (ja) マイクロプロセッサの内部割込み制御方式
JPS6246350A (ja) マイクロプロセツサの動作解析方法と装置
JPS60262251A (ja) マイクロプロセツサ開発支援装置
GB2258063A (en) Monitoring execution of a computer program to provide profile analysis
JPS6246351A (ja) マイクロプロセツサの動作解析方法と装置
JPH02281341A (ja) デバッグ時のライトデータ確認方法
JP2022015197A (ja) デバッグ用インサーキットエミュレータ装置
JPH01253043A (ja) 入出力制御装置
JPS63282533A (ja) インサ−キット・エミュレ−タ
JPH04213125A (ja) プログラムデバッグ方法
JPS61123942A (ja) マイクロプロセツサ用デバツク装置
JPS605355A (ja) プログラムル−ト記録装置
JPS5850051A (ja) デバツグ時のプログラム実行トレ−ス方式
JPS61294555A (ja) プログラム暴走検出方法
JPS59202546A (ja) デバツグ装置
JPS58134338A (ja) デイジタル計算機の制御方式
JPS6170644A (ja) プログラムデバク方式
JPS59161747A (ja) プログラムアナライザ
JPS62109139A (ja) マイクロプロセツサの動作解析方法と装置