JP3542463B2 - 集積回路装置、その動作制御方法 - Google Patents
集積回路装置、その動作制御方法 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software 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
【発明の属する技術分野】
本発明は、少なくとも中央処理装置とトレースバッファとを具備した集積回路装置、その動作制御方法に関する。
【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記載の集積回路装置。
- プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、
一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、
事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことを特徴とする集積回路装置の動作制御方法。 - プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、
前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、
一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、
事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことを特徴とする集積回路装置の動作制御方法。
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)
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)
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 |
-
1997
- 1997-07-29 JP JP20340397A patent/JP3542463B2/ja not_active Expired - Fee Related
-
1998
- 1998-07-28 US US09/123,525 patent/US6421795B2/en not_active Expired - Fee Related
- 1998-07-29 DE DE19834191A patent/DE19834191C2/de not_active Expired - Fee Related
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 |