JPS63307543A - デバッグ装置 - Google Patents

デバッグ装置

Info

Publication number
JPS63307543A
JPS63307543A JP62142388A JP14238887A JPS63307543A JP S63307543 A JPS63307543 A JP S63307543A JP 62142388 A JP62142388 A JP 62142388A JP 14238887 A JP14238887 A JP 14238887A JP S63307543 A JPS63307543 A JP S63307543A
Authority
JP
Japan
Prior art keywords
error check
debug
program
check code
instruction
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
JP62142388A
Other languages
English (en)
Inventor
Kazuo Sakakawa
坂川 和男
Satoshi Nojima
聡 野島
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP62142388A priority Critical patent/JPS63307543A/ja
Publication of JPS63307543A publication Critical patent/JPS63307543A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概  要〕 プログラムのエラーチェックを行なうためのエラーチェ
ックコードを通常動作のプログラムロード時に発生させ
てメモリに記憶させておき、各プログラム命令実行時に
該メモリ上の対応するエラーチェックコードによりエラ
ーチェックを行なうファームウェア制御などを行なうC
PU装置において、デバッグ動作時には上記エラーチェ
ックを禁止し、前記メモリに予め各プログラムに対応す
るデバッグ指示コードを記憶させた後、その内容を読み
出しながらプログラムのトレースを行なう手段を有する
ことにより、デバッグ時のトレース制御を本来はエラー
チェックコード格納用のメモリを用いて実現してハード
ウェアの縮小を可能にし、各プログラムのステップに対
してきめ絹かいデバッグ指定を行なうことのできるデバ
ッグ装置である。
〔産業上の利用分野〕
本発明は、ファームウェア制御などを行なうCPU装置
におけるデバッグ装置に係り、特にエラーチェックコー
ド記憶用メモリを利用してハードウェアの縮小を実現し
各プログラム命令毎に細かいデバッグ指定を行なうこと
のできるデバッグ装置に関する。
〔従来の技術〕
LSI技術の進展により、所定の情報処理装置を実現す
るために、専用のプロセッサをゲートアレイのLSIで
構成し、マイクロプログラムで最適なファームウェア制
御を行なうことにより実現することが可能となってきて
いる。この場合、開発段階においてファームウェア(マ
イクロプログラム)のデバッグを行なうことが不可欠で
あるが、プロセッサのアーキテクチャがかなり特殊であ
ることが多いため、市販のロジックアナライザを用いた
ファームウェアのデバッグは不可能である。
そのため何らかのデバッグ用ツールを装置自身に予め実
現しておく必要がある。このようなデバッグツールに要
求される条件としては、次のようなものがある。
■ 装置全体のハードウェア量に対して、十分無視しう
る物量で実現できること。
■ ファームウェアのデバッグはタイミング関係を保存
して行なう必要がある場合が多いが、ツールとしてはフ
ァームウェアの走行ステップに対してできる限り影響を
与えないこと。
■ 最低限ファームウェアの動作ステップ順序がトレー
スできる機能を有すること。
このような要求に対して、以下に示すような外付は型の
市販のトレーサに関する従来例が用いられている。第1
の従来例は、ファームウェアのブランチ文(分岐)の発
生したアドレスを順次トレースメモリに格納してゆく方
式である。第2の従来例は、何らかの手段によりファー
ムウェアの所定のアドレスにおいて、その走行を停止す
る方式である。第3の従来例は、ファームウェアプログ
ラムの格納されているメモリアドレスに対し、所定の比
較用アドレスを保持するメモリと該アドレスとプログラ
ムのアドレスとを比較する回路をハ−ドウエアによって
実現し、両方のアドレスが一致した時点でファームウェ
アの走行停止又はトレースを実行する方式である。
〔発明が解決しようとする問題点〕
しかし上記各従来例のうち、まず、第1の従来例におい
ては、必要のないブランチ文もトレースしてしまうこと
を避けることができず、第2の従来例においては、ファ
ームウェアの走行が停止しうてしまうことが起こり、ま
た、第3の従来例においては、ハードウェア量の制限に
より指定する比較アドレスを1点又は2点程度しか保持
することができず、能率の良いデバッグを行なえないと
いう問題点を有していた。上記問題点に加え、プロセッ
サによってはトレーサとインターフェイスが合わず、接
続すること自体が不可能である場合があった。
本発明は上記問題点を解決するために、通常動作時のエ
ラーチェックコードを格納するためのメモリをデバッグ
動作時には各プログラム命令に対応したデバッグ指示コ
ードのメモリとして用い、デバッグ動作時にはエラーチ
ェックを行なわずに該メモリから読み出したデバッグ指
示コードに従ってプログラムのトレースを行なうことに
より、ハードウェアを縮小し、かつ各プログラムのステ
ップに対して細かいデバッグ指定を行なうことのできる
デバッグ装置を提供することを目的とする。
〔問題点を解決するための手段〕
本発明は上記問題点を解決するために、第1図に示すブ
ロック図を有する。すなわち、プログラム処理手段1に
は切換え手段3を介してエラーチェックコード記憶手段
2が接続され、同手段2はまた、切換え手段3によって
トレース制御手段4とも接続される。また、プログラム
処理手段lのバスはトレース制御手段4へ人力している
−ここで、プログラム処理手段1は、例えばゲートアレ
イのLSIによって構成されるプロセッサと、マイクロ
プログラムを格納するPROM、及び起動時にPROM
内のマイクロプログラムをロードしてプロセッサのファ
ームウェア制御を実現するRAM、同RAMへのマイク
ロプログラムのロード時に各命令に対応してエラーチェ
ックコードを発生し、切換え手段3を介してエラーチェ
ックコード記憶手段2へ格納するエラーチェックコード
発生回路、及び実行時にマイクロプログラムをRAMか
らプロセッサヘフェソチする場合にエラーチェックコー
ド記憶手段2内の各命令に対応するエラーチェックコー
ドを切換え手段3を介して読み出してエラーチェックを
行なうエラーチェック回路などを内蔵している。
次に、エラーチェックコード記憶手段2は、通常動作時
には各マイクロプログラム命令に対応して例えば数ビッ
トのエラーチェックコードを記憶するが、デバッグ動作
時には上記数ビットの一部又は全部を用いて、各マイク
ロプログラム命令に対応するデバッグ指示コードを記憶
する。
これに応じて、切換え手段3はデバッグ動作時には外部
から上記デバッグ指示コードをエラーチェックコード記
憶手段2に書き込む機能を有する。
そしてトレース制御手段4は、デバッグ動作時の各マイ
クロプログラム命令の実行動作毎に、エラーチェックコ
ード記憶手段2に予め記憶されている対応するデバッグ
指示コードを切換え手vi3を介して読み出し、それに
従ってプログラム処理1段1から入力しているバスのう
ちアドレスバス又はデータバスの内容を選択的にトレー
スし、例えばRAMなどに格納してゆく。この時のトレ
ース動作は、例えば上記各デバッグ指示コードに対応し
てアドレスバス又はデータバスの内容を読み込むような
ゲート回路を構成することにより実現される。
〔作   用〕
上記構成において、通常動作時にはプログラノ、処理手
段1は、エラーチェックコード記憶手段2から切換え手
段3を介して、各プログラム命令に対応するエラーチェ
ックコードを読み出してエラーチェック動作を行なう。
これに対して、デバッグ動作開始時には切換え手段3は
プログラム処理手段lに対してエラーチェック動作を禁
止し、エラーチェックコード記憶手段2に各プログラム
命令に対応したデバッグ指示コードを書き込、t、′こ
とを可能にする。これにより、開発者は同手段3を介し
て前記記憶手段2に各プログラム命令と対応するデバッ
グ指示コードを書き込んでデバッグ動作を行なう。デバ
ッグ動作が始まり、プログラム処理手段1がプログラム
の処理を開始すると、トレース制御手段4が切換え手段
3を介してエラーチェックコード記憶手段2から各命令
毎のデバッグ指示コードを読み出し、それに従ってプロ
グラム処理手段1から入力するバスの内容をトレースす
る。
以上の動作により、各プログラム命令毎に細かいデバッ
グ指示が実現でき、また、デバッグのためのハードウェ
アの規模も、エラーチェックコード記憶手段2を着用し
ているため小さくて済む。
〔実  施  例〕
以下、本発明の実施例につき説明を行なう。
第2図は、本発明の実施例の構成図である。プロセッサ
5はアドレス線20,21.22によって、各々FRO
M7、プログラムRAM6、及びECCメモリ8をアク
セスできる。FROM7はプロセッサ5を動作させるマ
イクロプログラムを記憶するプログラマブルなROMで
あり、同ROM内のマイクロプログラムは起動時にプロ
グラムRAM6にロードされる。これと同時に、各マイ
クロプログラム命令に対応するエラーチェックコード(
E CC)がECC発生回路9で発生され、ゲート16
を介し°ζECCメモリ8に記憶される。
起動後、通常動作時にはプログラムRAM6に記憶され
ζいるマイクロプログラムとECCメモリ8に記憶され
ている対応するエラーチェックコードが順次エラー検出
・訂正回路10に読み出され、ここでマイクロプログラ
ムのエラー検出及び訂正−が行なわれた後、プロセッサ
5で実行される。
次に、制御信号27はデバ・7グ動作時においてゲート
回路16.17を閉じ、また、エラー検出・訂正回路1
0に対してエラー検出・訂正動作を禁止し、プログラム
RAM6からのマイクロプログラムをそのままプロセッ
サ5に出力させる。デバッグ指示コード書き込み回路1
1は、デバッグ動作時に開発者が特には図示しないコン
ソールなどからアドレスバス18、及びデータバス19
を介して、デバッグ指示コードをECCメモリ8に書き
込むための回路である。トレース制御回路12は、デバ
ッグ動作時にECCメモリ8からバス28を介して出力
されるデバッグ指示コードに従って、アドレスバス18
又はデータバス19の内容を選択的にバス29を介して
トレースメモリ14へ記憶させる。この時のアドレスは
アドレス線23で制御され、書き込み指示は制御線25
を介して行なわれる。トレースメモリ14の内容は、ト
レースメモリ読み出し回路15によって、バス30を介
して読み出すことができる。この時のアドレス指定はア
ドレス線24で制御され、読み出し指示は制御線26を
介して行なわれる。なお、トレースメモリ14とトレー
スメモリ読み出し回路15を含む破線部13は、外付け
の形式にしてもよい。
次に第3図は、トレース制御回路の構成図である。EC
Cメモリ8 (第2図)からのバス28は、BO〜B5
の6ビツトで構成され、BO及びB1は各々フリップフ
ロップ33のセット端子S2及びリセット端子Rに入力
する。フリップフロップ33の出力Qは、ゲート回路3
1及び32の各アンド回路36−1〜36−8、及び3
7−1〜37−8の第1の入力端子に入力する。バス2
8の82は、ゲート回路31の各アンド回路36−1〜
36−8の第2の入力端子に入力する。同じ(B3は、
ゲート回路32の各アンド回路37−1〜37−8の第
2の入力端子に入力する。B4゜B5は未使用である。
そして、アドレスバス18の8本の信号線は、各々ゲー
ト回路31の各アンド回路36−1〜36−8の第3の
入力端子に入−力する。同様にデータバス19は、各々
ゲート回路32の各アンド回路37−1〜37−8の第
3の入力端子に入力する。ゲート回路31の各アンド回
路36−1〜36−8の8本の出力信号線、及びゲート
回路32の各アンド回路37−1〜37−8の8本の出
力信号線は、バス29としてトレースメモリ14(第2
図)に出力される。次に、プロセッサ5(第2図)と共
通のクロック38は、フリップフロップ33のクロック
端子CLKに入力し、また、アンド回路35の第1の入
力端子からカウンタ34の計数入力端子Aに入力して計
数を行なわせる。アンド回路35はフリップフロップ3
3の出力Qがハイレベルの時にオンとなる。
カウンタ34はデバッグ開始時に特には図示しない手段
により生成されるリセット信号39がリセット入力端子
Rに入力することによりリセットされる。カウンタ34
の8ビツトの出力23は、アドレス線23 (第2図)
としてトレースメモリ14のアドレスを順次決定する。
次に、第2図及び第3図の実施例の動作につき説明を行
なう。まず、プロセッサ5はある処理を行なうための専
用プロセッサであり、→イクロプログラムを用いたファ
ームウェア制御により所定の動作を行なう。
始めに、第2図の実施例の通常動作時の動作につき説明
を行なう。通常動作モードは、特には図示しないディッ
プスイッチなどにより制御信号27を介して、ゲート1
6.17をオンにし、エラー検出・訂正回路10にエラ
ー検出・訂正動作を指示することにより措定する。装置
が起動すると、プロセッサ5はアドレス線20及び21
によりPROM?内のマイクロプログラムをプログラム
RAM6にロードする。ここで、PROM7からマイク
ロプログラムをプロセンサ5に直接ロードしないのは、
RAMを用いた方がアクセススピードが速いためである
。この時同時に、ECC発生回路9において各マイクロ
プログラム命令に対応するエラーチェックコードが発生
され、ゲート16を介してECCメモリ8に書き込まれ
る。次に、マイクロプログラムのロードが終了すると、
プロセッサ5はプログラムRAM6及びECCメモリ8
に対してアドレス線21.22により指定したアドレス
のマイクロプログラム及びそれに対応するエラーチェッ
クコードをゲート17を介して読み出し、エラー検出・
訂正回路lOに入力させる。
同回路10に入力したマイクロプログラムは、対応する
エラーチェックコードによりエラー検出・訂正が行われ
た後、プロセッサ5に入力して実行される。
次に、デバッグ時の動作につき説明を行なう。
デバッグモードの指定は、通常モード時と同じ制御線2
7によりゲート16.17を閉じ、エラー検出・訂正回
路lOに対してエラー検出・訂正動作を禁止し、プログ
ラムRAM6からのマイクロプログラムをそのままプロ
セッサ5への入力を可能にすることにより行なう。装置
が起動すると前記の場合と同様にPROM7のマイクロ
プログラムがプログラムRAM6にロードされる。しか
し、ゲート16は閉じているため、ECCメモリ8には
エラーチェックコードは入力しない。デバッグ時にはE
CCメモリ8はデバ・7グ指示コードの格納に用いられ
る。そのために、開発者は特には図示しないコンソール
から、アドレスバス18、データバス19、及びデバッ
グ指示コード書き込み回路11を介して、各マイクロプ
ログラムに対応するデバッグ指示コードをECCメモリ
8に書き込むことができる。
第4図に、1マイクロ命令あたりのデバッグ指示コード
のビット割当てを示す。ここでマイクロプログラムは2
バイト構成で、前記エラーチェックコードは1ビット誤
り訂正2ビット誤り検出を行なうための6ビ・ノド構成
となっている。従って、第4図に示すようにECCメモ
リ8内の各データはBO〜B5の6ビツトずつあるが、
デバッグ指示コードとしては、そのうちのBOビットを
“l”にすることによりトレース開始を指示し、同様に
B1でトレース停止を指示し、B2でアドレストレース
指示、B3でデータバストレース指示を行い、B4.B
5は未使用とする。
今、あるマイクロプログラムのステップでBO−に1”
が立つと、第3図のトレース制御回路12のフリップフ
ロップ33がセントされ、その出力Qが“1”となり、
ゲート回路31及び32の各アンド回路36−1〜36
−8、及び37−1〜37−8に入力し、また制御線2
5によりトレースメモリ14(第2図)が書き込み可能
となる。
それ以後のステップで、例えばB2に“1″が立つと、
第3図のゲート回路31のアンド回路36−1〜36−
8がオンになり、そのステップのアドレスバス18の内
容をバス29からトレースメモリ14(第2図)に書き
込む。この時、カウンタ34がインクリメントされ、ア
ドレス線23を介してトレースメモリ14のアドレスが
決定される。また、例えばB3が“1”となると、第3
図のゲート回路32のアンド回路37−1〜37−8が
オンとなり、そのステップのデータバス19の内容をバ
ス29からトレースメモリ14に書き込む。同メモリの
アドレス指定は前記と同様である。そして、例えばB1
に“1”が立つと、第3図のフリップフロ7プ33がリ
セットされトレースを終了する。
以上のように、本発明ではECCメモリ8のRAMをデ
バッグ時に各マイクロ命令に対応するデバッグ指示デー
タの記憶に使用しており、デバッグツールとしてのハー
ド部分を大幅に縮小することができる。また、デバッグ
指示コード書き込み回路11を介して、デバッグ途中で
もその内容をダイナミックに変更し、デバッグを進める
ことが可能である。
なお、前記したように第2図の破線部13のトレースメ
モリ14とトレースメモリ読み出し回路15を外付けに
すれば、装置のハードをさらに縮小できる。
〔発明の効果〕
本発明によれば、デバッグ時のトレースアドレスの指定
、トレース開始/停止、アドレス/データの区別などの
トレース制御を、本来エラーチェックコード記憶用のメ
モリを用いて実現することができるため、デバッグツー
ルを加えたことによるハードウェアの増加を最少にとど
めることができ、かつ、各プログラムステップに対し、
きめ細かくデバッグ指定を行なうことが可能となる。
【図面の簡単な説明】
第1図は、本発明のブロック図、 第2図は、本発明の実施例の構成図、 第3図は、トレース制御回路の構成図、第4図は、デバ
ッグ指示コードのビット割当ての説明図である。 1・・・プログラム処理手段、 2・・・エラーチェックコード記憶手段、3・・・切換
え手段、 4・・・トレース制御手段。 特許出願人   富士通株式会社 本発閂 のフ゛口・・ツク図 第1図 トレース制イ即回路め構へ図 第3図 千ノ<ツケ指示コードのピット別当ての説朗図第4図

Claims (1)

  1. 【特許請求の範囲】 1)エラーチェックコード記憶手段に記憶させたエラー
    チェックコードを用いてプログラムのエラーチェックを
    行ないプログラム処理手段でプログラムを実行するCP
    U装置において、 通常動作時におけるエラーチェックコードとデバッグ動
    作時におけるデバッグ指示コードとを切換えて前記エラ
    ーチェックコード記憶手段に記憶させ、通常動作時にお
    けるプログラムのエラーチェック動作を禁止する切換え
    手段と、 デバッグ動作時に前記エラーチェックコード記憶手段に
    予め記憶させたデバッグ指示コードに従ってプログラム
    のトレース動作を行なうトレース制御手段とを有するこ
    とを特徴とするデバッグ装置。 2)前記CPU装置はファームウェア処理手段と、該手
    段を制御するマイクロプログラムを格納するプログラマ
    ブルROMと、起動時に該ROM内のプログラムをロー
    ドして記憶するプログラムRAMと、 該動作時にロードされる各マイクロプログラム命令に対
    応するエラーチェックコードを発生し前記切換え手段を
    介して前記エラーチェックコード記憶手段に格納するエ
    ラーチェックコード発生手段と、 通常動作時に前記プログラムRAMに記憶された各マイ
    クロプログラムに対して前記エラーチェックコード記憶
    手段に記憶された該各マイクロプログラムに対応するエ
    ラーチェックコードに従ってエラーチェックを行ない前
    記ファームウェア処理手段に出力するエラーチェック手
    段とを有することを特徴とする特許請求の範囲第1項記
    載のデバッグ装置。 3)前記切換え手段はデバッグ動作時に前記プログラム
    RAMに記憶された各マイクロプログラム命令に対応す
    るデバッグ指示コードを前記エラーチェックコード記憶
    手段に書き込むデバッグ指示コード書き込み手段を有す
    ることを特徴とする特許請求の範囲第2項記載のデバッ
    グ装置。 4)前記トレース制御手段はデバッグ動作時の前記プロ
    グラムRAMに記憶されている各マイクロプログラム命
    令の実行動作毎に前記エラーチェックコード記憶手段に
    記憶されている前記各マイクロプログラムに対応するデ
    バッグ指示コードに従って前記ファームウェア処理手段
    上のアドレスバス又はデータバスの内容を選択的にトレ
    ースすることを特徴とする特許請求の範囲第2項記載の
    デバッグ装置。 5)前記トレース制御手段はデバッグ動作によってトレ
    ースした前記アドレスバス又はデータバスの内容を記憶
    するトレース記憶手段と、 該手段の内容を必要に応じて読み出すトレース読み出し
    手段とを有することを特徴とする特許請求の範囲第4項
    記載のデバッグ装置。
JP62142388A 1987-06-09 1987-06-09 デバッグ装置 Pending JPS63307543A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62142388A JPS63307543A (ja) 1987-06-09 1987-06-09 デバッグ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62142388A JPS63307543A (ja) 1987-06-09 1987-06-09 デバッグ装置

Publications (1)

Publication Number Publication Date
JPS63307543A true JPS63307543A (ja) 1988-12-15

Family

ID=15314203

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62142388A Pending JPS63307543A (ja) 1987-06-09 1987-06-09 デバッグ装置

Country Status (1)

Country Link
JP (1) JPS63307543A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100425690B1 (ko) * 2001-12-29 2004-04-01 엘지전자 주식회사 조건부 메모리 억세스 회로
JP2012194707A (ja) * 2011-03-15 2012-10-11 Fujitsu Ltd 情報処理装置、及び携帯端末装置並びに該情報処理装置におけるログ出力の制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100425690B1 (ko) * 2001-12-29 2004-04-01 엘지전자 주식회사 조건부 메모리 억세스 회로
JP2012194707A (ja) * 2011-03-15 2012-10-11 Fujitsu Ltd 情報処理装置、及び携帯端末装置並びに該情報処理装置におけるログ出力の制御方法

Similar Documents

Publication Publication Date Title
US3751649A (en) Memory system exerciser
US5263168A (en) Circuitry for automatically entering and terminating an initialization mode in a data processing system in response to a control signal
JPS63301339A (ja) コンピュ−タ装置
US4870562A (en) Microcomputer capable of accessing internal memory at a desired variable access time
JPS63133238A (ja) デジタルデータ処理システム
JPH04271445A (ja) メモリ・テスト装置
US5361348A (en) Debug circuit of a signal processor
JPS61182160A (ja) デ−タ処理装置
JPS63307543A (ja) デバッグ装置
JPS6410854B2 (ja)
JPH1011315A (ja) インサーキットエミュレータ装置およびインサーキットエミュレーション方法
KR100557918B1 (ko) 조인트 테스트 액세스 그룹을 이용한 오류수정장치
JPS59103158A (ja) デイジタル信号処理プログラムデバツグ方式
JPS6230453B2 (ja)
JPH0256644A (ja) マイクロプロセッサ用デバッグ装置
JPH0324640A (ja) 情報処理装置のデバッグ方式
JPS59153247A (ja) デバツグ装置
JPH10312307A (ja) コンピュータシステムに適用するエミュレータ
JPH0315948A (ja) アドレスバス試験方式
JPH0526967A (ja) Ic試験装置の制御装置
JPS6288040A (ja) マイクロプログラム制御装置
JPH0793177A (ja) エミュレーションチップ及びインサーキットエミュレー タ
JPS6393045A (ja) マイクロプログラム制御装置
JPS5936853A (ja) 演算処理装置
JPH04367902A (ja) プログラマブルコントローラ