JP3542463B2 - 集積回路装置、その動作制御方法 - Google Patents

集積回路装置、その動作制御方法 Download PDF

Info

Publication number
JP3542463B2
JP3542463B2 JP20340397A JP20340397A JP3542463B2 JP 3542463 B2 JP3542463 B2 JP 3542463B2 JP 20340397 A JP20340397 A JP 20340397A JP 20340397 A JP20340397 A JP 20340397A JP 3542463 B2 JP3542463 B2 JP 3542463B2
Authority
JP
Japan
Prior art keywords
processing unit
central processing
trace information
trace
buffer
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 - Fee Related
Application number
JP20340397A
Other languages
English (en)
Other versions
JPH1145194A (ja
Inventor
史晃 山下
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.)
NEC Electronics Corp
Original Assignee
NEC Electronics Corp
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 NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP20340397A priority Critical patent/JP3542463B2/ja
Priority to US09/123,525 priority patent/US6421795B2/en
Priority to DE19834191A priority patent/DE19834191C2/de
Publication of JPH1145194A publication Critical patent/JPH1145194A/ja
Application granted granted Critical
Publication of JP3542463B2 publication Critical patent/JP3542463B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/3636Software debugging by tracing the execution of the program
    • 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)
  • 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)

Description

【0001】
【発明の属する技術分野】
本発明は、少なくとも中央処理装置とトレースバッファとを具備した集積回路装置、その動作制御方法に関する。
【0002】
【従来の技術】
従来、各種のデータ処理に集積回路装置が利用されている。このような集積回路装置は、例えば、CPU(Central Processing Unit)コアなどの中央処理装置を具備しており、この中央処理装置がプログラムを読み取ってデータ処理を実行する。
【0003】
このような集積回路装置の開発過程などにおいては、その内部動作を検査することが実施されており、その手法の一つとして中央処理装置の処理動作のトレースがある。その場合、ユーザが所望するプログラムであるユーザプログラムが格納された外部メモリを集積回路装置の外部バスに接続し、この集積回路装置のデバッグI/F(Interface)にICE(In−Circuit Emulator)システム等のデバッグ装置を接続する。
【0004】
そして、中央処理装置にユーザプログラムを読み取らせてデータ処理を実行させ、このデータ処理に対応して中央処理装置が出力するトレース情報をデバッグ装置により取得する。このトレース情報は中央処理装置の実行履歴を示すので、これを調査すればユーザプログラムに対応した中央処理装置のデータ処理の動作内容を検査することができる。
【0005】
なお、上述のような集積回路装置を実際に使用する場合には、トレース情報を外部出力する必要はないので、トレース情報はデバッグ専用のデバッグI/Fから出力される。このデバッグI/Fも通常使用には無用なデバイスなので必要最小限の構造に形成されており、トレース情報は一つのシリアルポートからシリアル出力される。
【0006】
【発明が解決しようとする課題】
上述のように従来の集積回路装置にデバッグ装置を接続することにより、ユーザプログラムに対応してデータ処理を実行する中央処理装置からトレース情報を取得して動作内容を検査することが可能である。
【0007】
しかし、上述のようにトレース情報は集積回路装置の一つのシリアルポートからシリアル出力されるので、集積回路装置の内部で中央処理装置がトレース情報を出力する速度が、集積回路装置からデバッグ装置にトレース情報がシリアル転送される速度より高速であると、デバッグ装置が取得できるトレース情報が欠落することになる。特に、中央処理装置がトレース情報を出力する速度が均一でない場合、その速度がシリアルポートからデバッグ装置にトレース情報を転送する速度の限界を瞬間的に超過しやすく、デバッグ装置が取得できるトレース情報が欠落しやすい。
【0008】
本発明は上述のような課題に鑑みてなされたものであり、中央処理装置が出力するトレース情報を欠落させることなくデバッグ装置に供給できる集積回路装置、その動作制御方法を提供することを目的とする。
【0009】
【課題を解決するための手段】
本発明の一の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量から前記トレースバッファの使用量を算出する
【0010】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報をトレースバッファで一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このようにトレース情報を一時保持するトレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路が中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報はトレースバッファにより全部が確実に一時保持される。さらに、中央処理装置からトレースバッファにトレース情報が入力されると、その容量からバッファ監視回路によりトレースバッファの使用量が算出されるので、トレースバッファの使用量がトレース情報の入力の容量から算出される。
【0011】
本発明の他の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路は事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除する
【0012】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報をトレースバッファで一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このようにトレース情報を一時保持するトレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路が中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報はトレースバッファにより全部が確実に一時保持される。さらに、バッファ監視回路は、中央処理装置の一時停止を事前に設定された所定の時間が経過すると解除する。トレースバッファは一時保持したトレース情報を均一な速度で順次出力するので、中央処理装置が一時停止した状態から所定の時間が経過すると、トレースバッファは使用量が所定の容量まで低下してトレース情報を一時保持できる状態となる。
【0013】
本発明の他の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量から前記トレースバッファの使用量を算出し、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除する
【0014】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報をトレースバッファで一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このようにトレース情報を一時保持するトレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路が中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報はトレースバッファにより全部が確実に一時保持される。さらに、中央処理装置からトレースバッファにトレース情報が入力されると、その容量からバッファ監視回路によりトレースバッファの使用量が算出されるので、トレースバッファの使用量がトレース情報の入力の容量から算出される。しかも、バッファ監視回路は、中央処理装置の一時停止を事前に設定された所定の時間が経過すると解除する。トレースバッファは一時保持したトレース情報を均一な速度で順次出力するので、中央処理装置が一時停止した状態から所定の時間が経過すると、トレースバッファは使用量が所定の容量まで低下してトレース情報を一時保持できる状態となる。
【0015】
上述のような集積回路装置における他の発明としては、前記トレースバッファが、パラレルに入力されるトレース情報をシリアルに変換するデータ変換回路と、シリアルに変換されたトレース情報を順次記憶する直列に接続された複数のシフトレジスタと、を具備している。
【0016】
従って、トレースバッファにパラレルに入力されるトレース情報がデータ変換回路によりシリアルに変換され、このシリアルに変換されたトレース情報が直列に接続された複数のシフトレジスタにより順次記憶されるので、中央処理装置からパラレルに出力されるトレース情報がトレースバッファにより無駄なく記憶される。
【0017】
上述のような集積回路装置における他の発明としては、前記バッファ監視回路が前記トレースバッファの使用量として前記シフトレジスタの使用段数を算出する。
【0018】
従って、トレースバッファは直列に接続された複数のシフトレジスタによりトレース情報を順次記憶し、このシフトレジスタの使用段数をトレースバッファの使用量としてバッファ監視回路が算出するので、例えば、五段のシフトレジスタの四段が使用されるとバッファ監視回路により中央処理装置のデータ処理が一時停止される。
【0019】
本発明の他の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるようにした
【0020】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報を一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このように一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報は全部が確実に一時保持される。
【0021】
本発明のの集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにした。
【0022】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報を一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このように一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報は全部が確実に一時保持される。
【0023】
本発明の他の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにした。
【0024】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報を一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このように一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報は全部が確実に一時保持される。
【0025】
【発明の実施の形態】
本発明の実施の一形態を図1および図2を参照して以下に説明する。なお、図1は本実施の形態の集積回路装置の内部構造を示す模式的なブロック図であり、図2は内部トレーサを示すブロック図である。
【0026】
本実施の形態の集積回路装置であるマイクロプロセッサ100は、図1に示すように、各種のデータ処理を実行する中央処理装置としてCPUコア1を具備しており、このCPUコア1の所定の出力端子には、パラレルバス2によりトレースバッファ3が接続されている。このトレースバッファ3の入力端子には、バッファ監視回路4が接続されており、このバッファ監視回路4は、CPUコア1の所定の制御端子に接続されている。
【0027】
CPUコア1は、プログラムに対応した各種のデータ処理を実行し、この実行履歴を示すトレース情報を出力する。トレースバッファ3は、CPUコア1がパラレルに出力するトレース情報を一時保持し、バッファ監視回路4は、トレースバッファ3の使用量が事前に設定された許容値を超過すると、CPUコア1のデータ処理を一時停止させ、このCPUコア1の一時停止を事前に設定された所定の時間が経過すると解除する。
【0028】
トレースバッファ3の出力端子には、シリアルバス5によりデバッグI/F(図示せず)の一個の接続端子であるシリアルポート6が接続されており、このシリアルポート6には、別体のデバッグ装置200のトレースメモリ11がシリアルコネクタ12により着脱自在に接続される。
【0029】
シリアルポート6は、トレースバッファ3で一時保持されたトレース情報をシリアルに外部出力し、デバッグ装置200は、マイクロプロセッサ100がシリアルに外部出力するトレース情報を取得してトレースメモリ11に保存する。
【0030】
トレースバッファ3は、図2に示すように、入力コントロールブロック21、データ変換回路であるローテート回路22、シフトレジスタ23〜27、等を具備している。パラレルバス2には、入力コントロールブロック21を介してローテート回路22が接続されており、このローテート回路22には、直列に順次接続されたシフトレジスタ23〜26が接続されており、その最後のシフトレジスタ26が、シフトレジスタ27を介してシリアルバス11に接続されている。
【0031】
バッファ監視回路4は、バッファポインタカウンタ31、ローテート指示ブロック32、信号生成ブロック33、段数監視ブロック34、等を具備している。バッファポインタカウンタ31は、入力コントロールブロック21に接続されており、このバッファポインタカウンタ31に、ローテート指示ブロック32と信号生成ブロック33と段数監視ブロック34とが接続されている。
【0032】
ローテート指示ブロック32がローテート回路22に接続されており、信号生成ブロック33がシフトレジスタ23〜26に接続されており、段数監視ブロック34がCPUコア1の制御端子に接続されている。
【0033】
トレースバッファ3の入力コントロールブロック21は、パラレルバス2からパラレルに入力されるトレース情報の容量を検出し、バッファ監視回路4のバッファポインタカウンタ31は、検出されたトレース情報の容量からトレースバッファ3の使用量としてシフトレジスタ23〜26の使用段数を算出する。
【0034】
ローテート指示ブロック32は、上述のように算出された使用段数からローテートの指示データを出力し、ローテート回路22は、指示データに対応してパラレルなトレース情報をシリアルに変換する。信号生成ブロック33は、上述のように算出された使用段数からシフトレジスタ23〜26のシフト/ロード信号を生成し、直列に接続された四段のシフトレジスタ23〜26は、シリアルに変換されたトレース情報をシフト/ロード信号に対応して順次記憶する。
【0035】
段数監視ブロック34は、例えば、シフトレジスタ23〜26の使用段数の許容値として“二段”が事前に設定されており、上述のように算出されたシフトレジスタ23〜26の使用段数が許容値である“二段”を超過すると、CPUコア1にデバッグ用のデータ処理を一時停止させる割込信号“BRKINT”を出力する。
【0036】
この段数監視ブロック34は、例えば、内部クロックを具備しており、上述のように割込信号“BRKINT”の出力を開始してから事前に設定された所定の時間が経過すると、割込信号“BRKINT”の出力を中止してCPUコア1の一時停止を解除する。
【0037】
上述のような構成において、本実施の形態のマイクロプロセッサ100は、例えば、ユーザプログラムが格納された別体の外部メモリ(図示せず)を接続することにより、この外部メモリからCPUコア1によりユーザプログラムを読み取って各種のデータ処理を実行することができる。
【0038】
さらに、マイクロプロセッサ100のシリアルポート6にデバッグ装置200のシリアルコネクタ11を接続することにより、マイクロプロセッサ100のCPUコア1がデータ処理に対応して出力するトレース情報をデバッグ装置200で取得し、マイクロプロセッサ100の内部動作を検査することもできる。
【0039】
そして、本実施の形態のマイクロプロセッサ100は、上述のようにトレース情報を外部出力するとき、CPUコア1がデータ処理に対応して出力するトレース情報を、トレースバッファ3で一時保持してからシリアルポート6から外部出力する。このため、CPUコア1がトレース情報を高速かつ不規則に出力しても、シリアルポート6からはトレース情報を均一な速度で出力することができるので、デバッグ装置200はトレース情報を欠落なく取得することができる。
【0040】
特に、トレースバッファ3は、CPUコア1がパラレルに出力するトレース情報をシリアルに変換し、直列に接続された複数のシフトレジスタ23〜26で順次記憶する。このため、トレースバッファ3はパラレルに入力されるトレース情報を無駄なく記憶してシリアルに出力することができ、回路規模を無用に増加させることなく多量のトレース情報を一時保持することができる。なお、このような構造のトレースバッファ3は、特願平9−45346号に詳述されている。
【0041】
しかも、本実施の形態のマイクロプロセッサ100では、上述のようにトレース情報を一時保持するトレースバッファ3の使用量が事前に設定された許容値を超過すると、バッファ監視回路4がCPUコア1のデータ処理を一時停止させる。このため、CPUコア1が出力するトレース情報の全部がトレースバッファ3により確実に一時保持することができ、デバッグ装置200はトレース情報を欠落なく確実に取得することができる。
【0042】
なお、トレースバッファ3は一時保持したトレース情報を均一な速度でシリアルポート6から外部出力するので、トレースバッファ3の使用量は入力されるトレース情報の容量から算出することができる。そこで、本実施の形態のマイクロプロセッサ100では、バッファ監視回路4が、CPUコア1からトレースバッファ3に入力されるトレース情報の容量からトレースバッファ3の使用量を算出することにより、トレースバッファ3の使用量を実際には監視することなく、簡単な構造で略正確に算出することを可能としている。
【0043】
特に、バッファ監視回路4は、トレースバッファ3の使用量としてシフトレジスタの使用段数を算出するので、ここでは四段のシフトレジスタの二段が使用されるとCPUコア1のデータ処理を一時停止することができ、CPUコア1が出力するトレース情報の全部をトレースバッファ3により確実に一時保持することができる。
【0044】
さらに、バッファ監視回路4は、CPUコア1のデータ処理を一時停止させてから、事前に設定された所定の時間が経過するとCPUコア1の一時停止を解除する。つまり、トレースバッファ3は一時保持したトレース情報を均一な速度で順次出力するので、CPUコア1が一時停止した状態から所定の時間が経過すると、トレースバッファ3は使用量が所定の容量まで低下してトレース情報を一時保持できる状態となる。
【0045】
そこで、このトレースバッファ3の状態に対応したタイミングでバッファ監視回路4はCPUコア1の一時停止を解除するので、バッファ監視回路4は、CPUコア1のデータ処理を簡単な構造で適正なタイミングに再開させることができる。
【0046】
【発明の効果】
本発明は以上説明したように構成されているので、以下に記載するような効果を奏する。
【0047】
請求項1記載の発明の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量から前記トレースバッファの使用量を算出することにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、トレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路により中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができ、トレースバッファの使用量を実際には監視することなく簡単な構造で略正確に算出することができる
【0048】
請求項2記載の発明の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路は事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除することにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、トレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路により中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができ、トレースバッファの使用量を実際には監視しなくとも中央処理装置のデータ処理を簡単な構造で適正なタイミングに再開させることができる
【0049】
請求項3記載の発明集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量から前記トレースバッファの使用量を算出し、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除することにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、トレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路により中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができ、トレースバッファの使用量を実際には監視することなく簡単な構造で略正確に算出することができ、トレースバッファの使用量を実際には監視しなくとも中央処理装置のデータ処理を簡単な構造で適正なタイミングに再開させることができる
【0050】
請求項4記載の発明は、請求項1ないし3の何れか一項に記載の集積回路装置であって、前記トレースバッファが、パラレルに入力されるトレース情報をシリアルに変換するデータ変換回路と、シリアルに変換されたトレース情報を順次記憶する直列に接続された複数のシフトレジスタと、を具備していることにより、
トレースバッファにパラレルに入力されるトレース情報がデータ変換回路によりシリアルに変換され、このシリアルに変換されたトレース情報が直列に接続された複数のシフトレジスタにより順次記憶されるので、中央処理装置からパラレルに出力されるトレース情報がトレースバッファにより無駄なく記憶される。
【0051】
請求項5記載の発明は、請求項4記載の集積回路装置であって、前記バッファ監視回路が前記トレースバッファの使用量として前記シフトレジスタの使用段数を算出することにより、
複数のシフトレジスタにより一時保持するトレースバッファの欠落を簡単な構造で確実に防止することができる。
【0052】
請求項6記載の発明の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるようにしたことにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができる。
【0053】
請求項7記載の発明の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を欠落なく取得することができる。
【0054】
請求項8記載の発明の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態の集積回路装置であるマイクロプロセッサおよびデバッグ装置を示す模式的なブロック図である。
【図2】マイクロプロセッサのトレースバッファおよびバッファ監視回路を示すブロック図である。
【符号の説明】
1 中央処理装置であるCPUコア
3 トレースバッファ
4 バッファ監視回路
6 シリアルポート
22 データ変換回路であるローテート回路
23〜26 シフトレジスタ
34 段数監視ブロック
100 集積回路装置であるマイクロプロセッサ
200 デバッグ装置

Claims (6)

  1. プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、
    該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、
    該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、
    前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、
    を具備しており、
    前記バッファ監視回路は事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除する集積回路装置。
  2. プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、
    該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、
    該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、
    前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、
    を具備しており、
    前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量と前記トレースバッファから出力されるトレース情報の容量とから前記トレースバッファの使用量を算出し、前記バッファ監視回路により前記中央処理装置のデータ処理が一時停止させられた後に事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除する集積回路装置。
  3. 前記トレースバッファが、
    パラレルに入力されるトレース情報をシリアルに変換するデータ変換回路と、
    シリアルに変換されたトレース情報を順次記憶する直列に接続された複数のシフトレジスタと、
    を具備している請求項1または2に記載の集積回路装置。
  4. 前記バッファ監視回路が前記トレースバッファの使用量として前記シフトレジスタの使用段数を算出する請求項記載の集積回路装置。
  5. プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
    前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、
    一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、
    事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことを特徴とする集積回路装置の動作制御方法。
  6. プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
    前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、
    前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、
    一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、
    事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことを特徴とする集積回路装置の動作制御方法。
JP20340397A 1997-07-29 1997-07-29 集積回路装置、その動作制御方法 Expired - Fee Related JP3542463B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP20340397A JP3542463B2 (ja) 1997-07-29 1997-07-29 集積回路装置、その動作制御方法
US09/123,525 US6421795B2 (en) 1997-07-29 1998-07-28 Integrated circuit device and its control method
DE19834191A DE19834191C2 (de) 1997-07-29 1998-07-29 Integrierte Schaltungsvorrichtung und ihr Steuerverfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20340397A JP3542463B2 (ja) 1997-07-29 1997-07-29 集積回路装置、その動作制御方法

Publications (2)

Publication Number Publication Date
JPH1145194A JPH1145194A (ja) 1999-02-16
JP3542463B2 true JP3542463B2 (ja) 2004-07-14

Family

ID=16473486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20340397A Expired - Fee Related JP3542463B2 (ja) 1997-07-29 1997-07-29 集積回路装置、その動作制御方法

Country Status (3)

Country Link
US (1) US6421795B2 (ja)
JP (1) JP3542463B2 (ja)
DE (1) DE19834191C2 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754852B2 (en) * 2000-03-02 2004-06-22 Texas Instruments Incorporated Debug trigger builder
US6912673B1 (en) * 2001-02-02 2005-06-28 Cradle Technologies, Inc. Bus analyzer unit with programmable trace buffers
US6651111B2 (en) * 2001-02-16 2003-11-18 Microsoft Corporation System and method for managing a serial port
US6760867B2 (en) * 2001-03-08 2004-07-06 International Business Machines Corporation Guaranteed method and apparatus for capture of debug data
JP2002323995A (ja) * 2001-04-25 2002-11-08 Mitsubishi Electric Corp トレース回路
DE10132313A1 (de) * 2001-07-06 2003-01-23 Infineon Technologies Ag Programmgesteuerte Einheit
US6898736B2 (en) * 2001-10-31 2005-05-24 International Business Machines Corporation Dynamic sizing logic for dump list generation
US20040117690A1 (en) * 2002-12-13 2004-06-17 Andersson Anders J. Method and apparatus for using a hardware disk controller for storing processor execution trace information on a storage device
US7496818B1 (en) 2003-02-27 2009-02-24 Marvell International Ltd. Apparatus and method for testing and debugging an integrated circuit
US7216276B1 (en) 2003-02-27 2007-05-08 Marvell International Ltd. Apparatus and method for testing and debugging an integrated circuit
US7444571B1 (en) 2003-02-27 2008-10-28 Marvell International Ltd. Apparatus and method for testing and debugging an integrated circuit
US7565576B2 (en) * 2003-04-17 2009-07-21 Seagate Technology Llc Method and apparatus for obtaining trace data of a high speed embedded processor
GB0312886D0 (en) * 2003-06-05 2003-07-09 Ibm A method system and computer program product for tracing software methods
US7082481B2 (en) * 2003-11-25 2006-07-25 Atmel Corporation Serial peripheral interface (SPI) apparatus with write buffer for improving data throughput
US20050240727A1 (en) * 2004-04-23 2005-10-27 Shishir Shah Method and system for managing storage area networks
US7669190B2 (en) * 2004-05-18 2010-02-23 Qlogic, Corporation Method and system for efficiently recording processor events in host bus adapters
US7424348B2 (en) * 2004-06-28 2008-09-09 Micrel, Incorporated System and method for monitoring serially-connected devices
US8166217B2 (en) * 2004-06-28 2012-04-24 Marvell International Ltd. System and method for reading and writing data using storage controllers
US20060064531A1 (en) * 2004-09-23 2006-03-23 Alston Jerald K Method and system for optimizing data transfer in networks
US7496899B2 (en) * 2005-08-17 2009-02-24 Arm Limited Preventing loss of traced information in a data processing apparatus
US20080031279A1 (en) * 2006-08-03 2008-02-07 Takeshi Hatakeyama Network chip and network transmission/reception device
GB2459652B (en) * 2008-04-28 2010-09-22 Imagination Tech Ltd Controlling instruction scheduling based on the space in a trace buffer
US8639855B2 (en) * 2008-10-20 2014-01-28 International Business Machines Corporation Information collection and storage for single core chips to 'N core chips
JP5376509B2 (ja) 2009-03-16 2013-12-25 スパンション エルエルシー 実行履歴トレース方法
US8453122B2 (en) * 2009-11-10 2013-05-28 International Business Machines Corporation Symmetric multi-processor lock tracing
US9697040B2 (en) * 2014-03-26 2017-07-04 Intel Corporation Software replayer for transactional memory programs
US9842038B2 (en) * 2015-04-30 2017-12-12 Advantest Corporation Method and system for advanced fail data transfer mechanisms
JP7020991B2 (ja) * 2018-05-01 2022-02-16 株式会社東芝 信号制御回路
CN108509306A (zh) * 2018-05-22 2018-09-07 郑州云海信息技术有限公司 一种gpu仿真装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5917468B2 (ja) 1976-08-25 1984-04-21 株式会社日立製作所 プログラムカウンタ軌跡記憶装置
US4238834A (en) * 1978-03-06 1980-12-09 International Business Machines Corporation Apparatus for coordinating real time transfer of data from a processor to a magnetic media device
JPS60238944A (ja) 1984-05-14 1985-11-27 Mitsubishi Electric Corp トレ−ス用記憶装置
US4833655A (en) * 1985-06-28 1989-05-23 Wang Laboratories, Inc. FIFO memory with decreased fall-through delay
JPS63103103A (ja) 1986-10-10 1988-05-07 ローテツク・インダストリーズ・インコーポレイテツド コンクリート仕上機
JPS6429946A (en) 1987-07-24 1989-01-31 Nec Corp Data processor
JPS6454547A (en) 1987-08-25 1989-03-02 Nec Corp Information processor with program trace function
US5274811A (en) * 1989-06-19 1993-12-28 Digital Equipment Corporation Method for quickly acquiring and using very long traces of mixed system and user memory references
JPH03175541A (ja) 1989-12-04 1991-07-30 Fujitsu Ltd 連続トレース方式
JPH04294430A (ja) 1991-03-22 1992-10-19 Japan Electron Control Syst Co Ltd マイクロコンピュータのデータモニタ装置
JPH04350737A (ja) 1991-05-29 1992-12-04 Nec Corp マイクロコンピュータ
JPH0512157A (ja) * 1991-06-29 1993-01-22 Nec Corp シリアルデータ伝送装置
US5619681A (en) * 1992-11-23 1997-04-08 Zilog, Inc. Delayed FIFO status for serial shift emulation
CN1122226C (zh) * 1994-12-28 2003-09-24 株式会社东芝 微处理器与调试系统
JPH0945346A (ja) 1995-07-26 1997-02-14 Fuji Electric Co Ltd リン酸型燃料電池
DE19544723C2 (de) 1995-11-30 1999-11-11 Siemens Ag Prozessor-Analysesystem
JP3443720B2 (ja) * 1995-12-12 2003-09-08 株式会社日立製作所 エミュレータ
US5991899A (en) * 1997-03-21 1999-11-23 Samsung Electronics Co., Ltd. Method and apparatus for a real-time diagnostic tool using a non-intrusive trace technique
US6018809A (en) * 1997-03-28 2000-01-25 Emc Corp Apparatus and method for capturing information off a plurality of bi-directional communication buses
US6154857A (en) * 1997-04-08 2000-11-28 Advanced Micro Devices, Inc. Microprocessor-based device incorporating a cache for capturing software performance profiling data
US6148381A (en) * 1997-04-08 2000-11-14 Advanced Micro Devices, Inc. Single-port trace buffer architecture with overflow reduction
US6094729A (en) * 1997-04-08 2000-07-25 Advanced Micro Devices, Inc. Debug interface including a compact trace record storage
US5944841A (en) * 1997-04-15 1999-08-31 Advanced Micro Devices, Inc. Microprocessor with built-in instruction tracing capability
US6115760A (en) * 1998-08-24 2000-09-05 3Com Corporation Intelligent scaleable FIFO buffer circuit for interfacing between digital domains

Also Published As

Publication number Publication date
DE19834191C2 (de) 2002-01-03
DE19834191A1 (de) 1999-02-25
US6421795B2 (en) 2002-07-16
JPH1145194A (ja) 1999-02-16
US20020010882A1 (en) 2002-01-24

Similar Documents

Publication Publication Date Title
JP3542463B2 (ja) 集積回路装置、その動作制御方法
KR0168656B1 (ko) 데이터 처리 시스템
US6145123A (en) Trace on/off with breakpoint register
US8527812B2 (en) Information processing device
US7689867B2 (en) Multiprocessor breakpoint
US6687857B1 (en) Microcomputer which can execute a monitor program supplied from a debugging tool
JP2008523456A (ja) トレースコプロセッサを備えたデータ処理システム
JP3116901B2 (ja) プログラム検査方法、プログラム検査装置及びプログラム検査プログラムを記録した記録媒体
EP0062978A2 (en) Apparatus for assisting fault-finding in data processing systems
WO2001018651A1 (en) Thread-oriented debugging
JPS6383841A (ja) プログラムテスト可能な計算機中央処理装置
JP2016091277A (ja) トレースシステムおよびicチップ
JP4084912B2 (ja) マイクロプロセッサシステム
JPH0713806A (ja) マイクロプロセッサのバストレース装置
JPH05224999A (ja) 暴走処理装置
JPS62109140A (ja) プログラム処理装置のトレ−ス回路
JPH0261731A (ja) マイクロプロセッサ
JPS6454547A (en) Information processor with program trace function
JPH0333939A (ja) マイクロプロセッサ
JPS641041A (en) System for detecting trouble in early stage
JPH01116753A (ja) 1チップマイコンの周辺装置とのアクセス方法
JPS6344252A (ja) 電子計算機の異常動作監視装置
JPS63195781A (ja) デイジタル入力装置
JPS6125255A (ja) 簡易プロセストレ−サ
JPH0333940A (ja) 評価用マイクロプロセッサ

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040331

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080409

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090409

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100409

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees