JPH048821B2 - - Google Patents

Info

Publication number
JPH048821B2
JPH048821B2 JP60179828A JP17982885A JPH048821B2 JP H048821 B2 JPH048821 B2 JP H048821B2 JP 60179828 A JP60179828 A JP 60179828A JP 17982885 A JP17982885 A JP 17982885A JP H048821 B2 JPH048821 B2 JP H048821B2
Authority
JP
Japan
Prior art keywords
instruction
loop
execution
cycle
signal
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 - Lifetime
Application number
JP60179828A
Other languages
English (en)
Other versions
JPS6263344A (ja
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 filed Critical
Priority to JP60179828A priority Critical patent/JPS6263344A/ja
Publication of JPS6263344A publication Critical patent/JPS6263344A/ja
Publication of JPH048821B2 publication Critical patent/JPH048821B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はマイクロプロセツサのループモード動
作中のループ命令実行回数を計数する装置に関す
る。
(従来の技術) 従来より、作成したプログラムのデバツグ等を
行うためのソフトウエア開発支援装置はよく知ら
れている。
(発明が解決しようとする問題点) このようなソフトウエア開発支援装置でデバツ
グする際、ループモードをトレースする場合があ
る。ところで、例えばモトローラ社製16ビツトマ
イクロプロセツサMC68010等では、ループモー
ドでは命令コードのフエツチ(プログラム参照に
よつて、命令コードをプロセツサ内部に取込む)
ことを行わずに、プロセツサ内部に既に取込んで
ある命令コードを規定の回数(これはプロセツサ
の内部状態によつて定まる)だけ繰返すようにな
つているものがある。その様なマイクロプロセツ
サでのループモードのトレースにおいては、トレ
ース状態を表示する表示画面には、命令の実行サ
イクルしか表示されず、特に繰返し回数が多い場
合等どのような命令を何回繰返し実行したのかが
判り難いという問題があつた。
また実行アドレスは次々と更新されて行くた
め、アドレスの管理だけではルーパブル命令
(loopable instruction:数種の命令がある。)の
繰返し回数を計数できないという問題があつた。
本発明の目的は、この様な点に鑑み、アドレス
バスやデータバスの情報をトレースする際に、ル
ープモード中の命令コードのフエツチが行なわれ
ないルーパブル命令の実行回数をカウントするこ
とのできるループ命令実行回数計数装置を提供す
ることにある。
(問題点を解決するための手段) この様な目的を達成するために本発明では、ル
ープモードでは命令コードのフエツチを行わずプ
ロセツサ内部に既に取込んである命令コードを規
定の回数だけ繰返すように構成されたマイクロプ
ロセツサから、フアンクシヨン・コードと1バ
ス・サイクルに1回出力されるクロツクとを受
け、このクロツクに同期してプログラム参照のサ
イクル及びデータ参照のサイクルを表わすパルス
信号を発生するパルス発生回路と、 前記マイクロプロセツサからのデクリメント・
ブランチ条件命令、デクリメント・ブランチ条件
命令の特定のデイスプレースメント値及びルーパ
ブル命令を前記パルス発生回路の出力に関連して
検出する命令コード・ラツチ・テコーダと、 デクリメント・ブランチ条件命令を検出する分
岐検出回路と、 前記命令コード・ラツチ・デコーダと分岐検出
回路との出力に関連してループモード実行サイク
ルを示すループ信号を発生するループ信号発生回
路と、 前記命令コード・ラツチ・デコーダからのルー
パブル命令と前記ループ信号発生回路からのルー
プ信号を判断してパルス発生回路から出力される
データ参照の実行バス・サイクルを示すパルスの
数を計数し記憶する実行サイクル記憶回路と、 前記ループ信号発生回路から与えられるループ
信号がアクテイブのとき、パルス発生回路から出
力されるデータ参照の実行バス・サイクルを示す
パルスの数を計数するバス・サイクル・カウンタ
と、 前記実行サイクル記憶回路と前記バス・サイク
ル・カウンタとの計数値が一致したときルーパブ
ル命令実行信号を発生する比較回路と、 を具備し、ループモードに入つたことを検知し
て、ループモード中に実行されているオペレーシ
ヨンが何の命令であるかを判断し、その命令(ル
ーパブル命令)の実行サイクル数を実行サイクル
記憶回路に記憶しておき、他方で計数したバス・
サイクル数がこの実行サイクル数に一致するごと
にルーパブル命令実行を示すパルスを比較回路よ
り得るように構成したことを特徴とする。
(実施例) 以下図面を用いて本発明を詳しく説明する。マ
イクロプロセツサとしてモトローラ社製の
MC68010型マイクロプロセツサを例にとつて説
明する。マイクロプロセツサは次のようなプログ
ラム(アセンブル表記)を実行した時ループモー
ドとなる。
LOOP MOVE,W (Aφ)+,(A1)+ DBEQ Dφ,LOOP ∫ この中で、MOVE.W(Aφ)+,(A1)+ は
ルーパブル命令である。DBEQ Dφ,LOOPは
DBcc(Decrement and Branch Condition
Code)命令の一つで、指定されたレジスタ(こ
の場合はDO)をデイクリメントし、条件コード
の内容{この場合、一致フラグ(EQ(equal)フ
ラグ)がセツトされていること}によつて、分岐
するという命令である。分岐先は、直前の命令
(ルーパブル命令)の位置でなければならない。
第1図は本発明に係るループ命令実行回数計数
装置の一実施例を示す構成図である。図におい
て、1はデータバス(D0〜D16の17ビツトで構成
されている)11上の命令コードをラツチしかつ
デコードする命令コード・ラツチ・デコーダであ
る。
2は命令コード・ラツチ・デコーダ1から出力
されるDBcc(分岐命令)とアドレス・バス(A0
〜A17の18ビツト構成)12上のアドレスとか
ら、分岐したことを検出する分岐検出回路であ
る。
3はパルス発生器で、マイクロプロセツサ(図
示せず)から1バスサイクルに1回出力されるク
ロツクと、プロセツサの状態を表わすフアン
クシヨン・コード(FC0〜FC2の3ビツト信号)
を受けて、プログラム参照時にはクロツク−
μclkを発生し、データ参照時には−を発生
するものである。
4はループ信号発生回路で、命令コード・ラツ
チ・デコーダ1と、分岐検出回路2と、パルス発
生器3の出力を参照して、ループ・モードに入つ
たことを知らせるループ信号を発生するものであ
る。
5は実行サイクル記憶回路で、ループモードに
入る前に1回ルーパブル命令を実行するが、その
際のデータ参照の実行バス・サイクルを数えて、
そのカウント数を記憶するものである。
6はバス・サイクル・カウンタで、ループ信号
によりループ・モード中であることを知り、ルー
プ・モード中のデータ参照の実行バス・サイクル
数を計数することができるものである。
7は比較回路で、実行サイクル記憶回路5で記
憶したカウント数と、バス・サイクル・カウンタ
6でカウントしたカウント数が一致した時ルーパ
ブル命令の1回分のオペレーシヨンが終了したこ
とを知らせる信号(ルーパブル命令実行信号)を
発生するものである。
このような構成における動作を第2図のタイム
チヤート参照して次に説明する。マイクロプロセ
ツサより与えられるは、第2図ロに示すよう
に、読出し、書込みの動作に同期して作られたパ
ルスで1バスサイクルに1回出力される。
パルス発生回路3は、フアンクシヨン・コード
FC0〜FC2をデコードし、クロツクに同期し
てプログラム参照のサイクル(このときFC1
FC0は“10”となつている)には−、デー
タ参照のサイクル(この場合FC1〜FC0は“01”
となつている)には−を発生する。
命令コード・ラツチ・デコーダ1は、データバ
ス11より与えられるDBcc命令を検出すると、
その実行サイクルの一つ前の−(第2図の
ハ)の立下がりから実行サイクルの第1サイクル
の−の立下がりまでの期間にDBcc信号を
出力する。分岐検出回路2は、命令コード・ラツ
チ・デコーダ1より出力されたDBcc信号を
DBcc命令の実行サイクル中保持しておき、実際
に分岐が発生した場合にその実行サイクルの第2
サイクルにおいてブランチ信号(BR信号と略
す)を出力する。
命令コード・ラツチ・デコーダ1は、更に
DBcc命令の実行サイクルの第1サイクルの−
μclkの立下がりから第2サイクルの立下がりまで
の期間ルーパブル信号を出力する。
ループ信号発生回路4では、命令コード・ラツ
チ・デコーダ1からのFFFC値(DBcc命令のデ
イスプレースメント値)、ルーパブル信号、分岐
検出回路2からBR信号をラツチし、これらの信
号の論理積を参照し、−の立上がりでセツ
トされ、その後2回目の−の立下がりでリ
セツトされるループ信号を発生する。
実行サイクル記憶回路5は、ループモード中に
実行されているオペレーシヨンが何の命令である
のかを判断し、ルーパブル命令であるときにその
命令の実行サイクル数を記憶しておく。すなわ
ち、命令コード・ラツチ・デコーダ1からのルー
パブル信号(第2図ト)が立つている間、パルス
発生回路3から到来する−(第2図のニ)
の回数を計数し記憶する。これによりルーパブル
命令の実行バス・サイクル数を記憶することがで
きる。そして、次にデータバス11上にFFFCが
出力されると−の計数を停止する。
他方、バス・サイクル・カウンタ6はループ信
号発生回路4から出力されるループ信号(第2図
のヌ)がアクテイブになると−の計数を開
始する。
実行サイクル記憶回路5での計数値と、バス・
サイクル・カウンタ6での計数値が一致すれば、
比較回路7はルーパブル命令実行信号をパルス出
力する。このパルスによりバス・サイクル・カウ
ンタ6がリセツトされ、再び初期値からの計数が
開始される。
ループ信号が落ちるとバス・サイクル・カウン
タ6及び比較回路7の動作は停止する。
このようにして比較回路7より出力されるルー
パブル命令実行信号のパルス出力を観測すれば、
ループモード中にルーパブル命令が何回実行され
たかを知ることができる。
(発明の効果) 以上説明したように、本発明によれば、
MC68010のようなマイクロプロセツサで、ルー
プモード中に命令フエツチを行わず命令実行シー
ケンスを繰返すサイクルにおいて、ルーパブル命
令を何回実行されたかを計数することができる。
そして、このような回路を使用すれば、ループ
モード・オペレーシヨンにおいて、ルーパブル命
令実行中に任意の回数の実行サイクルでプログラ
ムの実行を停止することも容易となり、マイクロ
プロセツサ・アナライザ等に好適に使用され得
る。
【図面の簡単な説明】
第1図は本発明に係る命令実行回数計数装置の
一実施例を示す構成図、第2図は動作を説明する
ためのタイムチヤートである。 1…命令コード・ラツチ・デコーダ、2…分岐
検出回路、3…パルス発生回路、4…ループ信号
発生回路、5…実行サイクル記憶回路、6…バ
ス・サイクル・カウンタ、7…比較回路。

Claims (1)

  1. 【特許請求の範囲】 1 ループモードでは命令コードのフエツチを行
    わずプロセツサ内部に既に取込んである命令コー
    ドを規定の回数だけ繰返すように構成されたマイ
    クロプロセツサから、フアンクシヨン・コードと
    1バス・サイクルに1回出力されるクロツクとを
    受け、このクロツクに同期してプログラム参照の
    サイクル及びデータ参照のサイクルを表わすパル
    ス信号を発生するパルス発生回路と、 前記マイクロプロセツサからのデクリメント・
    ブランチ条件命令、デクリメント・ブランチ条件
    命令の特定のデイスプレースメント値及びルーパ
    ブル命令を前記パルス発生回路の出力に関連して
    検出する命令コード・ラツチ・デコーダと、 デクリメント・ブランチ条件命令を検出する分
    岐検出回路と、 前記命令コード・ラツチ・デコーダと分岐検出
    回路との出力に関連してループモード実行サイク
    ルを示すループ信号を発生するループ信号発生回
    路と、 前記命令コード・ラツチ・デコーダからのルー
    パブル命令と前記ループ信号発生回路からのルー
    プ信号を判断してパルス発生回路から出力される
    データ参照の実行バス・サイクルを示すパルスの
    数を計数し記憶する実行サイクル記憶回路と、 前記ループ信号発生回路から与えられるループ
    信号がアクテイブのとき、パルス発生回路から出
    力されるデータ参照の実行バス・サイクルを示す
    パルスの数を計数するバス・サイクル・カウンタ
    と、 前記実行サイクル記憶回路と前記バス・サイク
    ル・カウンタとの計数値が一致したときルーパブ
    ル命令実行信号を発生する比較回路と、 を具備し、ループモードに入つたことを確認でき
    るループ信号をループ信号発生回路から得ると共
    に、ルーパブル命令の実行回数を確認できるルー
    パブル命令実行信号を比較回路から得ることがで
    るように構成したことを特徴とするループ命令実
    行回数計数装置。
JP60179828A 1985-08-15 1985-08-15 ル−プ命令実行回数計数装置 Granted JPS6263344A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60179828A JPS6263344A (ja) 1985-08-15 1985-08-15 ル−プ命令実行回数計数装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60179828A JPS6263344A (ja) 1985-08-15 1985-08-15 ル−プ命令実行回数計数装置

Publications (2)

Publication Number Publication Date
JPS6263344A JPS6263344A (ja) 1987-03-20
JPH048821B2 true JPH048821B2 (ja) 1992-02-18

Family

ID=16072602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60179828A Granted JPS6263344A (ja) 1985-08-15 1985-08-15 ル−プ命令実行回数計数装置

Country Status (1)

Country Link
JP (1) JPS6263344A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950929B2 (en) * 2001-05-24 2005-09-27 Samsung Electronics Co., Ltd. Loop instruction processing using loop buffer in a data processing device having a coprocessor

Also Published As

Publication number Publication date
JPS6263344A (ja) 1987-03-20

Similar Documents

Publication Publication Date Title
US5367550A (en) Break address detecting circuit
KR100233188B1 (ko) 프로그램 실행을 인터럽트하지 않고 스테이터스 데이터를 얻는 컴퓨터 시스템 및 방법
US20060242517A1 (en) Monitoring a data processor to detect abnormal operation
EP1125199B1 (en) Method of debugging a program thread
JP2806524B2 (ja) ベクトル演算命令発行制御方法
JPH048821B2 (ja)
JPS5840772B2 (ja) デ−タ比較一致表示方式
JP2775830B2 (ja) 命令頻度測定方式
JP3349911B2 (ja) マイクロプロセッサ及びその開発支援装置
JP3100013B2 (ja) プログラムデバッグ装置
CN118605909B (zh) 一种基于risc-v的硬件开发系统
JPH0234056B2 (ja)
JPH03113646A (ja) トレース回路
JP2563204B2 (ja) ダイナミックバスサイズ検出回路
JPH11102306A (ja) エミュレータ
JPH0528002A (ja) マイクロプロセツサ
JP2595718B2 (ja) インサーキットエミュレータ
JPH05143399A (ja) 解析器
JPH0357970A (ja) パルス入力装置
JP2001060162A (ja) インサーキットエミュレータ
JPH02202646A (ja) マイクロプログラム制御装置
US20050120348A1 (en) Method of determining information about the processes which run in a program-controlled unit during the execution of a program by the program-controlled unit
JP2001337847A (ja) プロセッサ回路
JP2001092692A (ja) 時間測定回路及び時間測定方法
JPS62109140A (ja) プログラム処理装置のトレ−ス回路