(57)【特許請求の範囲】
【請求項１】
プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、
該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、
該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、
前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、
を具備しており、
前記バッファ監視回路は事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除する集積回路装置。
【請求項２】
プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、
該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、
該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、
前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、
を具備しており、
前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量と前記トレースバッファから出力されるトレース情報の容量とから前記トレースバッファの使用量を算出し、前記バッファ監視回路により前記中央処理装置のデータ処理が一時停止させられた後に事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除する集積回路装置。
【請求項３】
前記トレースバッファが、
パラレルに入力されるトレース情報をシリアルに変換するデータ変換回路と、
シリアルに変換されたトレース情報を順次記憶する直列に接続された複数のシフトレジスタと、
を具備している請求項１または２に記載の集積回路装置。
【請求項４】
前記バッファ監視回路が前記トレースバッファの使用量として前記シフトレジスタの使用段数を算出する請求項３記載の集積回路装置。
【請求項５】
プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、
一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、
事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことを特徴とする集積回路装置の動作制御方法。
【請求項６】
プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、
前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、
一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、
事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことを特徴とする集積回路装置の動作制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、少なくとも中央処理装置とトレースバッファとを具備した集積回路装置、その動作制御方法に関する。
【０００２】
【従来の技術】
従来、各種のデータ処理に集積回路装置が利用されている。このような集積回路装置は、例えば、ＣＰＵ(Ｃentral  Ｐrocessing  Ｕnit)コアなどの中央処理装置を具備しており、この中央処理装置がプログラムを読み取ってデータ処理を実行する。
【０００３】
このような集積回路装置の開発過程などにおいては、その内部動作を検査することが実施されており、その手法の一つとして中央処理装置の処理動作のトレースがある。その場合、ユーザが所望するプログラムであるユーザプログラムが格納された外部メモリを集積回路装置の外部バスに接続し、この集積回路装置のデバッグＩ／Ｆ(Ｉnterface)にＩＣＥ(Ｉn−Ｃircuit  Ｅmulator)システム等のデバッグ装置を接続する。
【０００４】
そして、中央処理装置にユーザプログラムを読み取らせてデータ処理を実行させ、このデータ処理に対応して中央処理装置が出力するトレース情報をデバッグ装置により取得する。このトレース情報は中央処理装置の実行履歴を示すので、これを調査すればユーザプログラムに対応した中央処理装置のデータ処理の動作内容を検査することができる。
【０００５】
なお、上述のような集積回路装置を実際に使用する場合には、トレース情報を外部出力する必要はないので、トレース情報はデバッグ専用のデバッグＩ／Ｆから出力される。このデバッグＩ／Ｆも通常使用には無用なデバイスなので必要最小限の構造に形成されており、トレース情報は一つのシリアルポートからシリアル出力される。
【０００６】
【発明が解決しようとする課題】
上述のように従来の集積回路装置にデバッグ装置を接続することにより、ユーザプログラムに対応してデータ処理を実行する中央処理装置からトレース情報を取得して動作内容を検査することが可能である。
【０００７】
しかし、上述のようにトレース情報は集積回路装置の一つのシリアルポートからシリアル出力されるので、集積回路装置の内部で中央処理装置がトレース情報を出力する速度が、集積回路装置からデバッグ装置にトレース情報がシリアル転送される速度より高速であると、デバッグ装置が取得できるトレース情報が欠落することになる。特に、中央処理装置がトレース情報を出力する速度が均一でない場合、その速度がシリアルポートからデバッグ装置にトレース情報を転送する速度の限界を瞬間的に超過しやすく、デバッグ装置が取得できるトレース情報が欠落しやすい。
【０００８】
本発明は上述のような課題に鑑みてなされたものであり、中央処理装置が出力するトレース情報を欠落させることなくデバッグ装置に供給できる集積回路装置、その動作制御方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
本発明の一の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量から前記トレースバッファの使用量を算出する。
【００１０】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報をトレースバッファで一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このようにトレース情報を一時保持するトレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路が中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報はトレースバッファにより全部が確実に一時保持される。さらに、中央処理装置からトレースバッファにトレース情報が入力されると、その容量からバッファ監視回路によりトレースバッファの使用量が算出されるので、トレースバッファの使用量がトレース情報の入力の容量から算出される。
【００１１】
本発明の他の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路は事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除する。
【００１２】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報をトレースバッファで一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このようにトレース情報を一時保持するトレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路が中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報はトレースバッファにより全部が確実に一時保持される。さらに、バッファ監視回路は、中央処理装置の一時停止を事前に設定された所定の時間が経過すると解除する。トレースバッファは一時保持したトレース情報を均一な速度で順次出力するので、中央処理装置が一時停止した状態から所定の時間が経過すると、トレースバッファは使用量が所定の容量まで低下してトレース情報を一時保持できる状態となる。
【００１３】
本発明の他の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量から前記トレースバッファの使用量を算出し、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除する。
【００１４】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報をトレースバッファで一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このようにトレース情報を一時保持するトレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路が中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報はトレースバッファにより全部が確実に一時保持される。さらに、中央処理装置からトレースバッファにトレース情報が入力されると、その容量からバッファ監視回路によりトレースバッファの使用量が算出されるので、トレースバッファの使用量がトレース情報の入力の容量から算出される。しかも、バッファ監視回路は、中央処理装置の一時停止を事前に設定された所定の時間が経過すると解除する。トレースバッファは一時保持したトレース情報を均一な速度で順次出力するので、中央処理装置が一時停止した状態から所定の時間が経過すると、トレースバッファは使用量が所定の容量まで低下してトレース情報を一時保持できる状態となる。
【００１５】
上述のような集積回路装置における他の発明としては、前記トレースバッファが、パラレルに入力されるトレース情報をシリアルに変換するデータ変換回路と、シリアルに変換されたトレース情報を順次記憶する直列に接続された複数のシフトレジスタと、を具備している。
【００１６】
従って、トレースバッファにパラレルに入力されるトレース情報がデータ変換回路によりシリアルに変換され、このシリアルに変換されたトレース情報が直列に接続された複数のシフトレジスタにより順次記憶されるので、中央処理装置からパラレルに出力されるトレース情報がトレースバッファにより無駄なく記憶される。
【００１７】
上述のような集積回路装置における他の発明としては、前記バッファ監視回路が前記トレースバッファの使用量として前記シフトレジスタの使用段数を算出する。
【００１８】
従って、トレースバッファは直列に接続された複数のシフトレジスタによりトレース情報を順次記憶し、このシフトレジスタの使用段数をトレースバッファの使用量としてバッファ監視回路が算出するので、例えば、五段のシフトレジスタの四段が使用されるとバッファ監視回路により中央処理装置のデータ処理が一時停止される。
【００１９】
本発明の他の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるようにした。
【００２０】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報を一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このように一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報は全部が確実に一時保持される。
【００２１】
本発明の他の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにした。
【００２２】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報を一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このように一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報は全部が確実に一時保持される。
【００２３】
本発明の他の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにした。
【００２４】
従って、中央処理装置がデータ処理に対応して出力するトレース情報がシリアルポートからシリアルに出力されるので、このシリアルポートにデバッグ装置を接続すればトレース情報を取得することができる。上述のように中央処理装置のトレース情報をシリアルポートから出力するとき、このトレース情報を一時保持するので、中央処理装置のトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができる。このように一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理を一時停止させるので、中央処理装置が出力するトレース情報は全部が確実に一時保持される。
【００２５】
【発明の実施の形態】
本発明の実施の一形態を図１および図２を参照して以下に説明する。なお、図１は本実施の形態の集積回路装置の内部構造を示す模式的なブロック図であり、図２は内部トレーサを示すブロック図である。
【００２６】
本実施の形態の集積回路装置であるマイクロプロセッサ１００は、図１に示すように、各種のデータ処理を実行する中央処理装置としてＣＰＵコア１を具備しており、このＣＰＵコア１の所定の出力端子には、パラレルバス２によりトレースバッファ３が接続されている。このトレースバッファ３の入力端子には、バッファ監視回路４が接続されており、このバッファ監視回路４は、ＣＰＵコア１の所定の制御端子に接続されている。
【００２７】
ＣＰＵコア１は、プログラムに対応した各種のデータ処理を実行し、この実行履歴を示すトレース情報を出力する。トレースバッファ３は、ＣＰＵコア１がパラレルに出力するトレース情報を一時保持し、バッファ監視回路４は、トレースバッファ３の使用量が事前に設定された許容値を超過すると、ＣＰＵコア１のデータ処理を一時停止させ、このＣＰＵコア１の一時停止を事前に設定された所定の時間が経過すると解除する。
【００２８】
トレースバッファ３の出力端子には、シリアルバス５によりデバッグＩ／Ｆ（図示せず）の一個の接続端子であるシリアルポート６が接続されており、このシリアルポート６には、別体のデバッグ装置２００のトレースメモリ１１がシリアルコネクタ１２により着脱自在に接続される。
【００２９】
シリアルポート６は、トレースバッファ３で一時保持されたトレース情報をシリアルに外部出力し、デバッグ装置２００は、マイクロプロセッサ１００がシリアルに外部出力するトレース情報を取得してトレースメモリ１１に保存する。
【００３０】
トレースバッファ３は、図２に示すように、入力コントロールブロック２１、データ変換回路であるローテート回路２２、シフトレジスタ２３〜２７、等を具備している。パラレルバス２には、入力コントロールブロック２１を介してローテート回路２２が接続されており、このローテート回路２２には、直列に順次接続されたシフトレジスタ２３〜２６が接続されており、その最後のシフトレジスタ２６が、シフトレジスタ２７を介してシリアルバス１１に接続されている。
【００３１】
バッファ監視回路４は、バッファポインタカウンタ３１、ローテート指示ブロック３２、信号生成ブロック３３、段数監視ブロック３４、等を具備している。バッファポインタカウンタ３１は、入力コントロールブロック２１に接続されており、このバッファポインタカウンタ３１に、ローテート指示ブロック３２と信号生成ブロック３３と段数監視ブロック３４とが接続されている。
【００３２】
ローテート指示ブロック３２がローテート回路２２に接続されており、信号生成ブロック３３がシフトレジスタ２３〜２６に接続されており、段数監視ブロック３４がＣＰＵコア１の制御端子に接続されている。
【００３３】
トレースバッファ３の入力コントロールブロック２１は、パラレルバス２からパラレルに入力されるトレース情報の容量を検出し、バッファ監視回路４のバッファポインタカウンタ３１は、検出されたトレース情報の容量からトレースバッファ３の使用量としてシフトレジスタ２３〜２６の使用段数を算出する。
【００３４】
ローテート指示ブロック３２は、上述のように算出された使用段数からローテートの指示データを出力し、ローテート回路２２は、指示データに対応してパラレルなトレース情報をシリアルに変換する。信号生成ブロック３３は、上述のように算出された使用段数からシフトレジスタ２３〜２６のシフト／ロード信号を生成し、直列に接続された四段のシフトレジスタ２３〜２６は、シリアルに変換されたトレース情報をシフト／ロード信号に対応して順次記憶する。
【００３５】
段数監視ブロック３４は、例えば、シフトレジスタ２３〜２６の使用段数の許容値として“二段”が事前に設定されており、上述のように算出されたシフトレジスタ２３〜２６の使用段数が許容値である“二段”を超過すると、ＣＰＵコア１にデバッグ用のデータ処理を一時停止させる割込信号“ＢＲＫＩＮＴ”を出力する。
【００３６】
この段数監視ブロック３４は、例えば、内部クロックを具備しており、上述のように割込信号“ＢＲＫＩＮＴ”の出力を開始してから事前に設定された所定の時間が経過すると、割込信号“ＢＲＫＩＮＴ”の出力を中止してＣＰＵコア１の一時停止を解除する。
【００３７】
上述のような構成において、本実施の形態のマイクロプロセッサ１００は、例えば、ユーザプログラムが格納された別体の外部メモリ（図示せず）を接続することにより、この外部メモリからＣＰＵコア１によりユーザプログラムを読み取って各種のデータ処理を実行することができる。
【００３８】
さらに、マイクロプロセッサ１００のシリアルポート６にデバッグ装置２００のシリアルコネクタ１１を接続することにより、マイクロプロセッサ１００のＣＰＵコア１がデータ処理に対応して出力するトレース情報をデバッグ装置２００で取得し、マイクロプロセッサ１００の内部動作を検査することもできる。
【００３９】
そして、本実施の形態のマイクロプロセッサ１００は、上述のようにトレース情報を外部出力するとき、ＣＰＵコア１がデータ処理に対応して出力するトレース情報を、トレースバッファ３で一時保持してからシリアルポート６から外部出力する。このため、ＣＰＵコア１がトレース情報を高速かつ不規則に出力しても、シリアルポート６からはトレース情報を均一な速度で出力することができるので、デバッグ装置２００はトレース情報を欠落なく取得することができる。
【００４０】
特に、トレースバッファ３は、ＣＰＵコア１がパラレルに出力するトレース情報をシリアルに変換し、直列に接続された複数のシフトレジスタ２３〜２６で順次記憶する。このため、トレースバッファ３はパラレルに入力されるトレース情報を無駄なく記憶してシリアルに出力することができ、回路規模を無用に増加させることなく多量のトレース情報を一時保持することができる。なお、このような構造のトレースバッファ３は、特願平９−４５３４６号に詳述されている。
【００４１】
しかも、本実施の形態のマイクロプロセッサ１００では、上述のようにトレース情報を一時保持するトレースバッファ３の使用量が事前に設定された許容値を超過すると、バッファ監視回路４がＣＰＵコア１のデータ処理を一時停止させる。このため、ＣＰＵコア１が出力するトレース情報の全部がトレースバッファ３により確実に一時保持することができ、デバッグ装置２００はトレース情報を欠落なく確実に取得することができる。
【００４２】
なお、トレースバッファ３は一時保持したトレース情報を均一な速度でシリアルポート６から外部出力するので、トレースバッファ３の使用量は入力されるトレース情報の容量から算出することができる。そこで、本実施の形態のマイクロプロセッサ１００では、バッファ監視回路４が、ＣＰＵコア１からトレースバッファ３に入力されるトレース情報の容量からトレースバッファ３の使用量を算出することにより、トレースバッファ３の使用量を実際には監視することなく、簡単な構造で略正確に算出することを可能としている。
【００４３】
特に、バッファ監視回路４は、トレースバッファ３の使用量としてシフトレジスタの使用段数を算出するので、ここでは四段のシフトレジスタの二段が使用されるとＣＰＵコア１のデータ処理を一時停止することができ、ＣＰＵコア１が出力するトレース情報の全部をトレースバッファ３により確実に一時保持することができる。
【００４４】
さらに、バッファ監視回路４は、ＣＰＵコア１のデータ処理を一時停止させてから、事前に設定された所定の時間が経過するとＣＰＵコア１の一時停止を解除する。つまり、トレースバッファ３は一時保持したトレース情報を均一な速度で順次出力するので、ＣＰＵコア１が一時停止した状態から所定の時間が経過すると、トレースバッファ３は使用量が所定の容量まで低下してトレース情報を一時保持できる状態となる。
【００４５】
そこで、このトレースバッファ３の状態に対応したタイミングでバッファ監視回路４はＣＰＵコア１の一時停止を解除するので、バッファ監視回路４は、ＣＰＵコア１のデータ処理を簡単な構造で適正なタイミングに再開させることができる。
【００４６】
【発明の効果】
本発明は以上説明したように構成されているので、以下に記載するような効果を奏する。
【００４７】
請求項１記載の発明の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量から前記トレースバッファの使用量を算出することにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、トレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路により中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができ、トレースバッファの使用量を実際には監視することなく簡単な構造で略正確に算出することができる。
【００４８】
請求項２記載の発明の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路は事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除することにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、トレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路により中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができ、トレースバッファの使用量を実際には監視しなくとも中央処理装置のデータ処理を簡単な構造で適正なタイミングに再開させることができる。
【００４９】
請求項３記載の発明の集積回路装置は、プログラムに対応した各種のデータ処理を実行して実行履歴を示すトレース情報を出力する中央処理装置と、該中央処理装置が出力するトレース情報を一時保持するトレースバッファと、該トレースバッファに一時保持されたトレース情報をシリアルに外部出力するシリアルポートと、前記トレースバッファの使用量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるバッファ監視回路と、を具備しており、前記バッファ監視回路が前記中央処理装置から前記トレースバッファに入力されるトレース情報の容量から前記トレースバッファの使用量を算出し、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除することにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、トレースバッファの使用量が事前に設定された許容値を超過すると、バッファ監視回路により中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができ、トレースバッファの使用量を実際には監視することなく簡単な構造で略正確に算出することができ、トレースバッファの使用量を実際には監視しなくとも中央処理装置のデータ処理を簡単な構造で適正なタイミングに再開させることができる。
【００５０】
請求項４記載の発明は、請求項１ないし３の何れか一項に記載の集積回路装置であって、前記トレースバッファが、パラレルに入力されるトレース情報をシリアルに変換するデータ変換回路と、シリアルに変換されたトレース情報を順次記憶する直列に接続された複数のシフトレジスタと、を具備していることにより、
トレースバッファにパラレルに入力されるトレース情報がデータ変換回路によりシリアルに変換され、このシリアルに変換されたトレース情報が直列に接続された複数のシフトレジスタにより順次記憶されるので、中央処理装置からパラレルに出力されるトレース情報がトレースバッファにより無駄なく記憶される。
【００５１】
請求項５記載の発明は、請求項４記載の集積回路装置であって、前記バッファ監視回路が前記トレースバッファの使用量として前記シフトレジスタの使用段数を算出することにより、
複数のシフトレジスタにより一時保持するトレースバッファの欠落を簡単な構造で確実に防止することができる。
【００５２】
請求項６記載の発明の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させるようにしたことにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができる。
【００５３】
請求項７記載の発明の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を欠落なく取得することができる。
【００５４】
請求項８記載の発明の集積回路装置の動作制御方法は、プログラムに対応した各種のデータ処理を実行する中央処理装置が出力する実行履歴を示すトレース情報をシリアルポートからシリアルに外部出力する集積回路装置の動作制御方法において、
前記中央処理装置が出力するトレース情報を一時保持してから外部出力し、前記中央処理装置が出力するトレース情報の容量から前記一時保持の容量を算出し、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると前記中央処理装置のデータ処理を一時停止させ、事前に設定された所定の時間が経過すると前記中央処理装置の一時停止を解除するようにしたことにより、
中央処理装置がトレース情報を出力する速度が均一でなくとも、トレース情報をシリアルポートから均一な速度で出力することができ、一時保持されるトレース情報の容量が事前に設定された許容値を超過すると中央処理装置のデータ処理が一時停止されるので、シリアルポートからトレース情報を確実に欠落なく取得することができる。
【図面の簡単な説明】
【図１】本発明の実施の一形態の集積回路装置であるマイクロプロセッサおよびデバッグ装置を示す模式的なブロック図である。
【図２】マイクロプロセッサのトレースバッファおよびバッファ監視回路を示すブロック図である。
【符号の説明】
１    中央処理装置であるＣＰＵコア
３    トレースバッファ
４    バッファ監視回路
６    シリアルポート
２２    データ変換回路であるローテート回路
２３〜２６    シフトレジスタ
３４    段数監視ブロック
１００    集積回路装置であるマイクロプロセッサ
２００    デバッグ装置
【図１】
0003542463.tif 000002
【図２】
0003542463.tif 000003