JPS63155336A - デ−タ処理装置 - Google Patents

デ−タ処理装置

Info

Publication number
JPS63155336A
JPS63155336A JP61301306A JP30130686A JPS63155336A JP S63155336 A JPS63155336 A JP S63155336A JP 61301306 A JP61301306 A JP 61301306A JP 30130686 A JP30130686 A JP 30130686A JP S63155336 A JPS63155336 A JP S63155336A
Authority
JP
Japan
Prior art keywords
break
comparison
address
data
processing device
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
JP61301306A
Other languages
English (en)
Inventor
Susumu Narita
進 成田
Atsushi Hasegawa
淳 長谷川
Satoshi Masuda
増田 訓
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.)
Hitachi Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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 Hitachi Ltd, Hitachi Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP61301306A priority Critical patent/JPS63155336A/ja
Priority to EP87118757A priority patent/EP0271910A3/en
Publication of JPS63155336A publication Critical patent/JPS63155336A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマイクロプロセッサに係り、特にマイクロプロ
セッサのソフトウェアのデバッグやデータ検索に好適な
、ブレイク機能を有するマイクロプロセッサに関する。
〔従来の技術〕
従来、アドレスを用いたブレイク機能については、アイ
・イー・イー・イー、マイクロ、 1985年12月号
、第4頁から第22頁(IEEE Micro、Dec
1985、 p p 4^22)、イントロダクション
 トウ ザ N516000アーキテクチヤ、 198
3年1月。
第31頁から第32頁(Introduction t
o TheN516QOO^rchitectare、
Jan、1983.p p 31−32)。
日経エレクトロニクス、 1986年3月24日号、第
199頁から第240頁にあげられている。
〔発明が解決しようとする問題点〕
キャッシュメモリをプロセッサ内に持つと、チップ内の
キャッシュに、求めるデータがある場合にはチップ外部
へアクセスを行なう必要がなくなる。そのため、キャッ
シュメモリへのアクセスはチップ外でとらえられず、従
来はエミュレータが外付は回路で実現していた機能を、
チップ内部にハードウェア化して持たせる必要が生じて
きた。
メモリ管理機構をチップ内に持った場合でも、論理アド
レスでブレイクをかけたい時には同じ問題が生じる。
上記従来技術は、各アドレスについて独立・並列にブレ
イクをかける機能を提供していた。しかしそれだけでは
、サブプログラムやループを持つプログラムのデバッグ
には機能が不足している。
例えばサブプログラムBを多数のサブプログラムがコー
ルしうるとする。サブプログラムAの中にもBをコール
しうる命令があるが、その呼び出し先は可変であり、B
をコールするものとは限らない。この時、AがBをコー
ルした時点でブレイクをかけようとしても、上記従来技
術では困難である。なぜならば、A中のコール命令はB
をコールするとは限らず、BはAにコールされるとは限
らないため、どちらのアドレスでブレイクをかけてもA
がBをコールしたときにブレイクしたとは言えないから
である。これを解決するためには、複数の比較結果をま
とめて組み合わせとして扱う必要がある。
本発明の目的は、上記のような欠点を除いてソフトウェ
アのデバッグをやり易くすると共に、同一のハードウェ
アをデータ検索にも使用できるようにし、高速なデータ
検索を可能とすることでハードウェアの利用効率を高め
ることにある。
〔問題点を解決するための手段〕
上記目的は、チップ内部に比較用のレジスタを複数用意
し、アクセスの際にアクセスするアドレスとそれらのレ
ジスタの内容を比較し、その結果の組み合わせが指定さ
れた条件を満たした時に。
その報告とブレイク起動指示を発する機能をハードウェ
アで用意してやることにより、達成される。
2つの異なるアドレスAt、A2があった時、まずA1
へのアクセスが生じ、その後しばらく間をおいてA2に
アクセスした場合にはブレイクが起こり、A1へのアク
セスなしでA2にアクセスしてもブレイクを起こさない
といった機能は、履歴を用いることで可能になる。
また、同様のハードウェアをデータ用に用意することで
、高速なデータ検索が可能になる。アドレス用とデータ
用のハードウェアは独立に持つことも可能であるが、セ
レクタを用いて一個のハードを共用することができる。
〔作用〕
ブレイクの対象がアドレスである場合、チップ内部の比
較用レジスタには、ブレイクポイントを示すアドレスが
設定される。アクセスが生じた時、アクセスするアドレ
スとこれらのレジスタ内の値が比較され、その結果はブ
レイクの制御回路に入力される。ブレイク制御回路は比
較結果を監視し。
この結果の組み合わせ及び比較結果の履歴を入力として
、指定された条件を満たしているか否か。
すなわちブレイクを起こすか否かを決定する。このよう
に、本発明ではブレイク制御回路が単独の比較結果また
は複数の比較結果の組み合わせまたは単独の比較結果と
その履歴または複数の比較結果とその履歴の組み合わせ
を入力としているため、複雑なブレイク条件の指定が可
能となる。
ブレイクの対象がデータである場合1本機能はデータ検
索に利用できる。すなわち本回路は一度に複数のデータ
との比較が実行可能であり、さらには上記のように組み
合わせや履歴を用いて制御することにより、複雑な条件
1例えば文字列のサーチやAからEまでの5文字といっ
た特定の範囲にある文字が入っているかの判断が、一度
の比較でできるようになる。
〔実施例〕
第1図に本発明の基本的な実施例の構成を示す。
n本のブレイクポイントレジスタBRPi  (i=0
.1,2.・・・n)には比較されるべきアドレスもし
くはデータの値が保持される。BRPiのそれぞれの値
の出力biと、aを入力とするn個の比較器CMPが並
ぶ。ここに入力aはアドレスADRもしくはデータDA
TAをアライナALNでアラインメントした結果のいず
れかであり、セレクタSELの出力である。ここにAL
Nは、種種のサイズのデータを入力とし、同一サイズの
形で出力する機能を持つ。アドレスまたはデータの一方
のみをとる構成でもかまわない、CAMPではa、bi
の値の比較を行ない、一致もしくは大小関係を示す信号
ciを出力とする。一致のみを検出するか、大小比較を
行なうかによってCMPのハード量は大きく異なるため
、n個のCMPのうちの幾つかのみに大小比較の機能を
設け、他のCMPは一致のみを検出するといった構成が
現実的である。
n個のCMPからの出力ciはブレイク制御回路BRC
NTに入力される。そして保持すべき履歴情報d2はF
BCNTに入力・保持される。そしてその保持された履
歴はBRCNTの入力(f)となる、またさらに、BR
CNTとFBCNTへの制御信号eo、elがある。B
RCNTはこれらの信号を入力とする状態機械(ステー
トマシン)であり、ランダムロジックもしくはPLAや
ROMで構成できる。BRCNTからの出力dOはブレ
イク指示信号、dlは指定された条件を満たしたことを
告げる報告信号である。制御信号eの内容によってはd
lがアサートされてもdoがアサートされない場合があ
る。
第2図はアドレスを比較する場合の一実施例の構成を示
している。BRPiにはアドレスが設定され、aを通し
てアドレスADRが各CM Pに入力される。各CMP
はaとbiを比較し、一致した時にGoまたはC1に1
を出力する。制御レジスタCR中の2ビツトd1は、こ
れらの比較結果を示している。ブレイク指示信号doは
dlと同じ<CR中にある。dOは、BRCNTへの制
御信号f及び制御信号BEO,BEI、DBよりなるe
oによって指定された条件を満たす入力G o 。
CIが入った時にアサートされる。ここにDBはブレイ
クを可能にする制御信号、BEOおよびBEIはブレイ
クを起こす条件を指定する信号、fはBRCNTにFB
CNTから与えられる履歴情報である。FBCNTの内
部状態は、これをクリアするための制御信号e1でクリ
アされる。第3図に、BEOとBEIで指定される条件
を示す。
BEO=1.BE1=1の時はシーケンシャル、ブレイ
クモードと呼ぶモードに設定される。シーケンシャル・
ブレイクモードにおいてBRPOの内容とADRの値が
一致すると、Goが′1′になり、FBCNT内のF/
Fの入力Sが′1′となって、F/Fの出力Fが′1′
になる。その後アドレスADHが何回か変化し、BRP
Iの内容と一致すると01が′1′になる。F/Fの出
力が11′でかつLlが11′の時、L4が11′にな
る。この時DB=1であればブレイク指示信号dOがア
サートされる。BRPOに何度ヒツトしても、またBR
POにヒツトする以前にBRPIにヒツトしてもブレイ
クは起こらない、過去にBRPOにヒツトしていた場合
に限り、BRPIにヒツトするとブレイクがおこる。B
EO,BEIで示される4つのモードの中で、このシー
ケンシャル・モードは唯一履歴を用いた条件となってい
る。
第4図はデータを比較する場合の一実施例の構成を示し
ている。BRPiにはデータが設定され、アライナを通
したデータaとの間で大小比較が行なわれる。QOはa
(bo、・gOはa > bo。
QOはa(bl、goはa、≧−b1を満たした時にそ
れぞれ11′になる。CCO,CCI、CC2はブレイ
ク条件を示す制御信号である。第5図はCCO,CCI
、CC2によって指定される条件を示している1例えば
BRPiが32ビツトレジスタであり、32ビツトで表
現可能な正整数O〜2δO(MSBは符号ビットする)
のうち、1000〜10000の範囲にある数の総数を
カウントする場合、次の様になる。
まずCCO,CCI、CC2の全てにOを入力し、CR
の値をクリアする。ここにCRはフラグとして実行制御
部に入力されており、この値によって条件分岐可能であ
るとする。続いてBRPOに値1000.BRPIに1
0000をセットし、さらにCCIを11′にする。後
は比較データDATAをALNを通じて入力し、一定の
演算時間経過後にCRをセットすれば、もし1000<
DATA<10000ならばCR=1となっている。そ
して実行部はこれを基にして、特定のレジスタの値を+
1し、総数をカウントする。ここでDATAはアライナ
を通して与えられるため、8゜16.32ビツトの各種
サイズのデータも一律に扱える。
〔発明の効果〕
本発明によれば、複雑な条件指定の下でブレイクを行な
うことが可能になる。例えばモジュール性の高いプログ
ラムのデバッグにおいて、特定のモジュール間のコール
をトラップすることが可能になる。また、2方向をこえ
る多方向への分岐についても、その分岐命令と複数の分
岐先命令のアドレスを用いて1分岐直後にトラップがで
きる。
このように、従来のブレイク機能では不可能であったト
ラップを可能とし、ソフトウェアのデバツト グ−強力なツールを提供する。
また、セレクタを1個追加することで、同一のハードウ
ェアをデータにも使用できるようにし、データの検索を
高速化できる。これは同時に、チップにかかるコストを
ほとんど増やさずに機能を強化できるというメリットが
ある。
【図面の簡単な説明】
第1図は本発明の構成図である。第2図はアドレスを入
力とした一実施例である。第3図は第2図の構成で選択
可能な4つのモードを示している。 第4図はデータを入力とした一実施例である。第5図は
第4図の構成で、各制御線によって指定される条件を示
している。 BRPi・・・ブレイクポイントレジスタ、ADR・・
・アドレス、ALN・・・アライナ、CMP・・・比較
器、DATA・・・データ、BRCNT・・・ブレイク
制御回路、SEL・・・セレクタ。 で・ 第  1  図 BRP、  フ゛Lイフf4シトしン°ヌタ  f−M
 テ゛−7AりRTkLス ′fJ 2 図 f)B  デバプ7フラク′ ■ 3 凹 罵 5 図

Claims (1)

  1. 【特許請求の範囲】 1、参照情報を保持する手段と前記参照情報に対応する
    情報と保持された参照情報とを比較する手段を有し、比
    較結果が所定の条件にあるときその旨の出力をする手段
    を有するデータ処理装置において、前記保持手段及び比
    較手段が夫々複数個備えられ、且、夫々の比較結果の組
    合せ条件を指定する手段を備え、組合せ条件が満足され
    たときその旨の出力をすることを特徴とするデータ処理
    装置。 2、特許請求の範囲第1項において、比較する参照情報
    がアドレスであるデータ処理装置。 3、特許請求の範囲第1項において、比較する参照情報
    がデータであるデータ処理装置。 4、特許請求の範囲第1項において、比較する参照情報
    がアドレスまたはデータであり、それらが選択可能なデ
    ータ処理装置。 5、特許請求の範囲第2項または第3項または第4項に
    おいて、該データ処理装置が一チツプ上にあるデータ処
    理装置。 6、特許請求の範囲第5項において、比較結果の履歴を
    保持する手段を有し、該比較結果の履歴と、比較結果の
    組み合わせが指定の条件を満足するとき出力をするデー
    タ処理装置。
JP61301306A 1986-12-19 1986-12-19 デ−タ処理装置 Pending JPS63155336A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP61301306A JPS63155336A (ja) 1986-12-19 1986-12-19 デ−タ処理装置
EP87118757A EP0271910A3 (en) 1986-12-19 1987-12-17 One-chip microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61301306A JPS63155336A (ja) 1986-12-19 1986-12-19 デ−タ処理装置

Publications (1)

Publication Number Publication Date
JPS63155336A true JPS63155336A (ja) 1988-06-28

Family

ID=17895256

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61301306A Pending JPS63155336A (ja) 1986-12-19 1986-12-19 デ−タ処理装置

Country Status (2)

Country Link
EP (1) EP0271910A3 (ja)
JP (1) JPS63155336A (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2505950B2 (ja) * 1991-05-13 1996-06-12 インターナショナル・ビジネス・マシーンズ・コーポレイション ハ―ドウェア支援ブレ―クポイント・システム
GB2288666B (en) * 1994-04-12 1997-06-25 Advanced Risc Mach Ltd Integrated circuit control
US5717851A (en) * 1994-08-15 1998-02-10 Motorola, Inc. Breakpoint detection circuit in a data processor and method therefor
EP0720093B1 (en) * 1994-12-28 2001-11-14 Kabushiki Kaisha Toshiba Microprocessor and debug system
JP2752592B2 (ja) * 1994-12-28 1998-05-18 日本ヒューレット・パッカード株式会社 マイクロプロセッサ、マイクロプロセッサ−デバッグツール間信号伝送方法及びトレース方法
JP3604697B2 (ja) * 1995-06-01 2004-12-22 富士通株式会社 プログラマブル命令トラップシステム及び方法
JPH09218801A (ja) * 1995-08-30 1997-08-19 Motorola Inc データプロセッサ
US5964893A (en) * 1995-08-30 1999-10-12 Motorola, Inc. Data processing system for performing a trace function and method therefor
GB9626412D0 (en) * 1996-12-19 1997-02-05 Sgs Thomson Microelectronics Diagnostic procedures in an integrated circuit device
GB9626401D0 (en) * 1996-12-19 1997-02-05 Sgs Thomson Microelectronics Diagnostic procedures in an integrated circuit device
GB9704068D0 (en) * 1997-02-27 1997-04-16 Sgs Thomson Microelectronics Trigger sequencing controller
US7010672B2 (en) * 2002-12-11 2006-03-07 Infineon Technologies Ag Digital processor with programmable breakpoint/watchpoint trigger generation circuit
EP2634700A1 (de) * 2012-02-28 2013-09-04 Siemens Aktiengesellschaft Verfahren und Entwicklungsumgebung zur Überwachung eines ablaufenden Programms

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4720778A (en) * 1985-01-31 1988-01-19 Hewlett Packard Company Software debugging analyzer

Also Published As

Publication number Publication date
EP0271910A2 (en) 1988-06-22
EP0271910A3 (en) 1989-10-25

Similar Documents

Publication Publication Date Title
EP0068163B1 (en) Instruction address stack in the data memory of an instruction-pipelined processor
US4591979A (en) Data-flow-type digital processing apparatus
US5408626A (en) One clock address pipelining in segmentation unit
EP0378830B1 (en) Method and apparatus for handling multiple condition codes as for a parallel pipeline computer
US4398244A (en) Interruptible microprogram sequencing unit and microprogrammed apparatus utilizing same
EP0149213B1 (en) Vector processor
US5742805A (en) Method and apparatus for a single history register based branch predictor in a superscalar microprocessor
JP2776132B2 (ja) オペランド内の情報のスタティックおよびダイナミック・マスキングを兼ね備えるデータ処理システム
US6112288A (en) Dynamic configurable system of parallel modules comprising chain of chips comprising parallel pipeline chain of processors with master controller feeding command and data
US4542456A (en) Method and apparatus for performing range checks
JP2840444B2 (ja) 算術パイプラインをオペレーティングする方法及びデータプロセッシング装置
US4541045A (en) Microprocessor architecture employing efficient operand and instruction addressing
JP3188467B2 (ja) 最小値・最大値検索装置
JPS63155336A (ja) デ−タ処理装置
US3675214A (en) Processor servicing external devices, real and simulated
US4618956A (en) Method of operating enhanced alu test hardware
US5410721A (en) System and method for incrementing a program counter
US5717909A (en) Code breakpoint decoder
US5699506A (en) Method and apparatus for fault testing a pipelined processor
JPH04215129A (ja) 連続指令実行方法及び装置
US5446909A (en) Binary multiplication implemented by existing hardware with minor modifications to sequentially designate bits of the operand
US3942156A (en) Indirect arithmetic control
US4742480A (en) Cycle counter/shifter for division
KR910000534B1 (ko) 단일칩 마이크로 프로세서
JPH02213938A (ja) 演算装置