(57)【要約】【課題】同時に複数のレジスタの変化をトレースする。【解決手段】ｎ個の加算器と、ｎ個の乗算器と、ｎ個の切替回路と、ｎ個のバッファ回路と、複数の記憶域を有する記憶回路と、を含み、ｉ番目の加算器は、１番目の制御線からｉ番目の制御線の値を加算したｉ番目の加算値を出力し、ｉ番目の乗算器は、ｉ番目の加算値とｉ番目の制御線の値とを乗算したｉ番目の乗算値を出力し、ｉ番目の切替回路は、ｉ番目の乗算値に対応したバッファ回路とｉ番目のデータ線とを導通状態にし、ｉ番目のバッファ回路は、ｉ番目のデータ線から供給されるデータを保持し、記憶回路の現在の記憶域のアドレスをｐとすると、ｉ番目のバッファ回路は、ｐ＋ｉ−１のアドレスの記憶域に接続され、ｎ個のバッファ回路に保持されたデータを同時に記憶回路に書き込んだ後、記憶回路の現在の記憶域のアドレスｐにｎ番目の加算器の加算値を加える。【選択図】図２
2008305051.tif 000002
【特許請求の範囲】
【請求項１】
ｎ本（ｎは２以上の自然数）のデータ線と、
前記ｎ本のデータ線の書き込みを制御するｎ本の制御線と、
ｎ個の加算器と、
ｎ個の乗算器と、
ｎ個の切替回路と、
ｎ個のバッファ回路と、
複数の記憶域を有する記憶回路と、
を含み、
ｉ番目（ｉは１以上ｎ以下のすべての自然数）の前記加算器は、１番目の前記制御線からｉ番目の前記制御線の値を加算したｉ番目の加算値を出力し、
ｉ番目の前記乗算器は、前記ｉ番目の加算値とｉ番目の前記制御線の値とを乗算したｉ番目の乗算値を出力し、
ｉ番目の前記切替回路は、前記ｉ番目の乗算値に対応した前記バッファ回路とｉ番目の前記データ線とを導通状態にし、
ｉ番目のバッファ回路は、ｉ番目の前記データ線から供給されるデータを保持し、
前記記憶回路の現在の前記記憶域のアドレスをｐとすると、
ｉ番目の前記バッファ回路は、ｐ＋ｉ−１のアドレスの前記記憶域に接続され、
前記ｎ個のバッファ回路に保持された前記データを同時に前記記憶回路に書き込んだ後、前記記憶回路の現在の前記記憶域のアドレスｐにｎ番目の前記加算器の加算値を加える、
ことを特徴とするトレース回路。
【請求項２】
請求項１に記載のトレース回路と、
ｎ個のレジスタと、
を含み、
ｉ番目の前記レジスタは、ｉ番目の前記制御線の値に基づきｉ番目の前記データ線から供給されるデータを記憶する、
ことを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路が持つレジスタの変化をトレースするトレース回路及びトレース回路を含む半導体集積回路に関するものであり、特に、半導体集積回路のソフトウェアデバッグ（プログラムデバッグ）またはハードウェアデバッグに関する。
【背景技術】
【０００２】
従来、ＣＰＵまたは所定の処理を実行する専用論理回路を内蔵する半導体集積回路（デバイス）では、デバイスが有するレジスタの状態をトレースすることにより、ソフトウェアデバッグ（プログラムデバッグ）またはハードウェアデバッグを行っている。しかしながら、従来のデバイスは、単一時間に１つのレジスタの状態変化しか記録することができなかった。
【０００３】
この問題を解決するために、例えば特許文献１には、トレース情報を記憶させるためのデバッグ専用バッファをデバイスに内蔵させ、ＣＰＵのトレース機能を用いてデバイスに対する制御手順をトレースする方法が記載されている。
【０００４】
【特許文献１】特開２０００−３３９１９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のトレース方法では、ＩＣＥ（In Circuit Emulator）などの外部装置が必要である上、プログラムトレース機能を追加することによってデバイス制御タイミングがずれるため、デバイス本来の動作タイミングを正確にトレースすることができなかった。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００７】
［適用例１］
ｎ本（ｎは２以上の自然数）のデータ線と、前記ｎ本のデータ線の書き込みを制御するｎ本の制御線と、ｎ個の加算器と、ｎ個の乗算器と、ｎ個の切替回路と、ｎ個のバッファ回路と、複数の記憶域を有する記憶回路と、を含み、ｉ番目（ｉは１以上ｎ以下のすべての自然数）の前記加算器は、１番目の前記制御線からｉ番目の前記制御線の値を加算したｉ番目の加算値を出力し、ｉ番目の前記乗算器は、前記ｉ番目の加算値とｉ番目の前記制御線の値とを乗算したｉ番目の乗算値を出力し、ｉ番目の前記切替回路は、前記ｉ番目の乗算値に対応した前記バッファ回路とｉ番目の前記データ線とを導通状態にし、ｉ番目のバッファ回路は、ｉ番目の前記データ線から供給されるデータを保持し、前記記憶回路の現在の前記記憶域のアドレスをｐとすると、ｉ番目の前記バッファ回路は、ｐ＋ｉ−１のアドレスの前記記憶域に接続され、前記ｎ個のバッファ回路に保持された前記データを同時に前記記憶回路に書き込んだ後、前記記憶回路の現在の前記記憶域のアドレスｐにｎ番目の前記加算器の加算値を加えることを特徴とするトレース回路。
【０００８】
この構成によれば、同時に複数のレジスタの変化をトレースすることができる。
【０００９】
［適用例２］
上記に記載のトレース回路と、ｎ個のレジスタと、を含み、ｉ番目の前記レジスタは、ｉ番目の前記制御線の値に基づきｉ番目の前記データ線から供給されるデータを記憶することを特徴とする半導体集積回路。
【００１０】
この構成によれば、ＩＣＥなどの外部装置を使わずに、トレース機能による制御タイミングのずれがなく、同時に複数のレジスタの変化をトレースすることができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明を具体化した実施形態について図面に従って説明する。
【００１２】
（第１実施形態）
＜半導体集積回路の構成＞
まず、第１実施形態に係る半導体集積回路の構成について、図１を参照して説明する。図１は、第１実施形態に係る半導体集積回路の構成を示すブロック図である。なお、本実施形態では、説明の簡略化のために３個（ｎ＝３）のレジスタを含む構成について説明する。
【００１３】
図１に示すように、半導体集積回路１は、外部のＣＰＵ１０１とのデータや信号のやり取りを行うＣＰＵインターフェース１０２と、内部コントローラ１０３と、外部コントローラ１０４と、トレース回路１００と、複数のレジスタＲＥＧ１〜ＲＥＧ３を含むレジスタ群１０５と、データ線１１１〜１１３と、制御線１２１〜１２３と、から構成されている。
【００１４】
レジスタＲＥＧ１は、ＣＰＵインターフェース１０２用のレジスタであり、データ線１１１と制御線１２１と接続されている。ＣＰＵインターフェース１０２は、データ線１１１及び制御線１２１を介してレジスタＲＥＧ１にデータ信号Ｄ１及び制御信号ＷＥ１を送信する。制御信号ＷＥ１がＨレベルの時に、データ信号Ｄ１がレジスタＲＥＧ１に書き込まれる。
【００１５】
レジスタＲＥＧ２は、内部コントローラ１０３用のレジスタであり、データ線１１２と制御線１２２と接続されている。内部コントローラ１０３は、データ線１１２及び制御線１２２を介してレジスタＲＥＧ２にデータ信号Ｄ２及び制御信号ＷＥ２を送信する。制御信号ＷＥ２がＨレベルの時に、データ信号Ｄ２がレジスタＲＥＧ２に書き込まれる。
【００１６】
レジスタＲＥＧ３は、外部コントローラ１０４用のレジスタであり、データ線１１３と制御線１２３と接続されている。外部コントローラ１０４は、データ線１１３及び制御線１２３を介してレジスタＲＥＧ３にデータ信号Ｄ３及び制御信号ＷＥ３を送信する。制御信号ＷＥ３がＨレベルの時に、データ信号Ｄ３がレジスタＲＥＧ３に書き込まれる。
【００１７】
さらに、データ線１１１〜１１３及び制御線１２１〜１２３は、トレース回路１００にも接続されている。トレース回路１００は、レジスタＲＥＧ１〜ＲＥＧ３の少なくとも１つに書き込みが行われる度に、制御信号ＷＥ１〜ＷＥ３を監視し、書き込みが行われたいずれかのレジスタＲＥＧ１〜ＲＥＧ３のデータ信号Ｄ１〜Ｄ３を順次記憶していく。トレース回路１００に記憶されたデータを解析することにより、書き込みが行われたレジスタ全てのデータをトレースすることができる。
【００１８】
＜トレース回路の構成＞
次に、トレース回路の構成について図２を参照して説明する。図２は、トレース回路の構成を示すブロック図である。
【００１９】
図２に示すように、トレース回路１００は、３個の加算器ＡＤ１〜ＡＤ３と、３個の乗算器ＭＰ１〜ＭＰ３と、３個の切替回路ＳＷ１〜ＳＷ３と、３個のバッファ回路ＢＵＦ１〜ＢＵＦ３と、複数の記憶域を有する記憶回路１１０と、から構成されている。
【００２０】
１番目の加算器ＡＤ１は、１番目の制御信号ＷＥ１の値（Ｈレベルならば１、Ｌレベルならば０）を加算し、１番目の加算値Ａ１を出力する。１番目の乗算器ＭＰ１は、１番目の加算値Ａ１と１番目の制御信号ＷＥ１の値を乗算し、１番目の乗算値Ｍ１を出力する。１番目の切替回路ＳＷ１は、１番目の乗算値Ｍ１が１の時、１番目のデータ線１１１と接続線１３１とを導通状態にし、１番目の乗算値Ｍ１が０の時、１番目のデータ線１１１と接続線１３１とを非導通状態にする。
【００２１】
２番目の加算器ＡＤ２は、１番目〜２番目の制御信号ＷＥ１〜ＷＥ２の値を加算し、２番目の加算値Ａ２を出力する。２番目の乗算器ＭＰ２は、２番目の加算値Ａ２と２番目の制御信号ＷＥ２の値を乗算し、２番目の乗算値Ｍ２を出力する。２番目の切替回路ＳＷ２は、２番目の乗算値Ｍ２が１の時、２番目のデータ線１１２と接続線１３１とを導通状態にし、２番目の乗算値Ｍ２が２の時、２番目のデータ線１１２と接続線１３２とを導通状態にし、２番目の乗算値Ｍ２が０の時、２番目のデータ線１１２と接続線１３１，１３２とを非導通状態にする。
【００２２】
３番目の加算器ＡＤ３は、１番目〜３番目の制御信号ＷＥ１〜ＷＥ３の値を加算し、３番目の加算値Ａ３を出力する。３番目の乗算器ＭＰ３は、３番目の加算値Ａ３と３番目の制御信号ＷＥ３の値を乗算し、３番目の乗算値Ｍ３を出力する。３番目の切替回路ＳＷ３は、３番目の乗算値Ｍ３が１の時、３番目のデータ線１１３と接続線１３１とを導通状態にし、３番目の乗算値Ｍ３が２の時、３番目のデータ線１１３と接続線１３２とを導通状態にし、３番目の乗算値Ｍ３が３の時、３番目のデータ線１１３と接続線１３３とを導通状態にし、３番目の乗算値Ｍ３が０の時、３番目のデータ線１１３と接続線１３１〜１３３とを非導通状態にする。
【００２３】
バッファ回路ＢＵＦ１は、接続線１３１と接続され、切替回路ＳＷ１〜ＳＷ３により導通状態になったデータ線１１１〜１１３からのデータ信号Ｄ１〜Ｄ３を保持する。バッファ回路ＢＵＦ２は、接続線１３２と接続され、切替回路ＳＷ２〜ＳＷ３により導通状態になったデータ線１１２〜１１３からのデータ信号Ｄ２〜Ｄ３を保持する。バッファ回路ＢＵＦ３は、接続線１３３と接続され、切替回路ＳＷ３により導通状態になったデータ線１１３からのデータ信号Ｄ３を保持する。
【００２４】
バッファ回路ＢＵＦ１は、記憶回路１１０の現在のアドレスＰに、バッファ回路ＢＵＦ２は、記憶回路１１０の現在のアドレスＰ＋１に、バッファ回路ＢＵＦ３は、記憶回路１１０の現在のアドレスＰ＋２に、各々同時に保持したデータを出力する。バッファ回路ＢＵＦ１〜ＢＵＦ３からデータの出力後、記憶回路１１０の現在のアドレスＰは、３番目の加算器ＡＤ３の加算値Ａ３の値だけインクリメントされる。
【００２５】
＜切替回路の構成＞
次に、切替回路の構成について図３を参照して説明する。図３は、切替回路の構成を示す回路図である。
【００２６】
図３に示すように、切替回路ＳＷ１は、ＡＮＤ回路ＡＮ１１と、インバータＩＮ１１と、トランスミッションゲートＴ１１と、から構成されている。ＡＮＤ回路ＡＮ１１の一方の入力端子には、１番目の乗算値Ｍ１の下位ビットＭ１［１］が入力され、ＡＮＤ回路ＡＮ１１の他方の入力端子には、１番目の乗算値Ｍ１の上位ビットＭ１［２］がインバータＩＮ１１を介して入力されている。また、ＡＮＤ回路ＡＮ１１の出力端子は、トランスミッションゲートＴ１１の制御端子に接続されている。トランスミッションゲートＴ１１は、データ線１１１と接続線１３１の間に接続されている。Ｍ１＝０の時、トランスミッションゲートＴ１１は、非導通状態となり、Ｍ１＝１の時、トランスミッションゲートＴ１１は、導通状態となる。
【００２７】
切替回路ＳＷ２は、ＡＮＤ回路ＡＮ２１，ＡＮ２２と、インバータＩＮ２１，ＩＮ２２と、トランスミッションゲートＴ２１，Ｔ２２と、から構成されている。ＡＮＤ回路ＡＮ２１の一方の入力端子には、２番目の乗算値Ｍ２の下位ビットＭ２［１］が入力され、ＡＮＤ回路ＡＮ２１の他方の入力端子には、２番目の乗算値Ｍ２の上位ビットＭ２［２］がインバータＩＮ２１を介して入力されている。また、ＡＮＤ回路ＡＮ２１の出力端子は、トランスミッションゲートＴ２１の制御端子に接続されている。トランスミッションゲートＴ２１は、データ線１１２と接続線１３１の間に接続されている。Ｍ２＝０の時、トランスミッションゲートＴ２１は、非導通状態となり、Ｍ２＝１の時、トランスミッションゲートＴ２１は、導通状態となる。ＡＮＤ回路ＡＮ２２の一方の入力端子には、２番目の乗算値Ｍ２の下位ビットＭ２［１］がインバータＩＮ２２を介して入力され、ＡＮＤ回路ＡＮ２２の他方の入力端子には、２番目の乗算値Ｍ２の上位ビットＭ２［２］が入力されている。また、ＡＮＤ回路ＡＮ２２の出力端子は、トランスミッションゲートＴ２２の制御端子に接続されている。トランスミッションゲートＴ２２は、データ線１１２と接続線１３２の間に接続されている。Ｍ２＝０，１の時、トランスミッションゲートＴ２２は、非導通状態となり、Ｍ２＝２の時、トランスミッションゲートＴ２２は、導通状態となる。
【００２８】
切替回路ＳＷ３は、ＡＮＤ回路ＡＮ３１，ＡＮ３２，ＡＮ３３と、インバータＩＮ３１，ＩＮ３２と、トランスミッションゲートＴ３１，Ｔ３２，Ｔ３３と、から構成されている。ＡＮＤ回路ＡＮ３１の一方の入力端子には、３番目の乗算値Ｍ３の下位ビットＭ３［１］が入力され、ＡＮＤ回路ＡＮ３１の他方の入力端子には、３番目の乗算値Ｍ３の上位ビットＭ３［２］がインバータＩＮ３１を介して入力されている。また、ＡＮＤ回路ＡＮ３１の出力端子は、トランスミッションゲートＴ３１の制御端子に接続されている。トランスミッションゲートＴ３１は、データ線１１３と接続線１３１の間に接続されている。Ｍ３＝０の時、トランスミッションゲートＴ３１は、非導通状態となり、Ｍ３＝１の時、トランスミッションゲートＴ３１は、導通状態となる。ＡＮＤ回路ＡＮ３２の一方の入力端子には、３番目の乗算値Ｍ３の下位ビットＭ３［１］がインバータＩＮ３２を介して入力され、ＡＮＤ回路ＡＮ３２の他方の入力端子には、３番目の乗算値Ｍ３の上位ビットＭ３［２］が入力されている。また、ＡＮＤ回路ＡＮ３２の出力端子は、トランスミッションゲートＴ３２の制御端子に接続されている。トランスミッションゲートＴ３２は、データ線１１３と接続線１３２の間に接続されている。Ｍ３＝０，１の時、トランスミッションゲートＴ３２は、非導通状態となり、Ｍ３＝２の時、トランスミッションゲートＴ３２は、導通状態となる。ＡＮＤ回路ＡＮ３３の一方の入力端子には、３番目の乗算値Ｍ３の下位ビットＭ３［１］が入力され、ＡＮＤ回路ＡＮ３３の他方の入力端子には、３番目の乗算値Ｍ３の上位ビットＭ３［２］が入力されている。また、ＡＮＤ回路ＡＮ３３の出力端子は、トランスミッションゲートＴ３３の制御端子に接続されている。トランスミッションゲートＴ３３は、データ線１１３と接続線１３３の間に接続されている。Ｍ３＝０，１，２の時、トランスミッションゲートＴ３３は、非導通状態となり、Ｍ３＝３の時、トランスミッションゲートＴ３３は、導通状態となる。
【００２９】
＜トレース回路の動作＞
次に、トレース回路の動作について図４を参照して説明する。図４は、トレース回路の動作を示すタイミング図である。
【００３０】
期間ｔ１において、制御信号ＷＥ１，ＷＥ３をＨレベル、制御信号ＷＥ２をＬレベルに設定し、データ信号Ｄ１としてデータ信号Ｄ１Ａ、データ信号Ｄ３としてデータ信号Ｄ３Ａを送信することにより、レジスタＲＥＧ１にデータ信号Ｄ１Ａが、レジスタＲＥＧ３にデータ信号Ｄ３Ａが、それぞれ書き込まれる。トレース回路１００は、加算器ＡＤ１の加算値Ａ１＝ＷＥ１＝１、乗算器ＭＰ１の乗算値Ｍ１＝Ａ１×ＷＥ１＝１、加算器ＡＤ２の加算値Ａ２＝ＷＥ１＋ＷＥ２＝１、乗算器ＭＰ２の乗算値Ｍ２＝Ａ２×ＷＥ２＝０、加算器ＡＤ３の加算値Ａ３＝ＷＥ１＋ＷＥ２＋ＷＥ３＝２、乗算器ＭＰ３の乗算値Ｍ３＝Ａ３×ＷＥ３＝２、となる。これらの値により、切替回路ＳＷ１は、データ線１１１と接続線１３１を導通状態にし、バッファ回路ＢＵＦ１にデータ信号Ｄ１Ａを書き込み、切替回路ＳＷ２は、非導通状態となり、切替回路ＳＷ３は、データ線１１３と接続線１３２を導通状態にし、バッファ回路ＢＵＦ２にデータ信号Ｄ３Ａを書き込む。
【００３１】
次に、期間ｔ２において、バッファ回路ＢＵＦ１が保持したデータ信号Ｄ１Ａが記憶回路１１０の現在のアドレスＰに書き込まれ、バッファ回路ＢＵＦ２が保持したデータ信号Ｄ３Ａが記憶回路１１０の現在のアドレスＰ＋１に書き込まれる。その後、記憶回路１１０の現在のアドレスＰに加算器ＡＤ３の加算値Ａ３＝２が加算され、アドレスＰ＋２が現在のアドレスとなる。
【００３２】
期間ｔ３において、制御信号ＷＥ１，ＷＥ３をＬレベル、制御信号ＷＥ２をＨレベルに設定し、データ信号Ｄ２としてデータ信号Ｄ２Ｂを送信することにより、レジスタＲＥＧ２にデータ信号Ｄ２Ｂが書き込まれる。トレース回路１００は、加算器ＡＤ１の加算値Ａ１＝ＷＥ１＝０、乗算器ＭＰ１の乗算値Ｍ１＝Ａ１×ＷＥ１＝０、加算器ＡＤ２の加算値Ａ２＝ＷＥ１＋ＷＥ２＝１、乗算器ＭＰ２の乗算値Ｍ２＝Ａ２×ＷＥ２＝１、加算器ＡＤ３の加算値Ａ３＝ＷＥ１＋ＷＥ２＋ＷＥ３＝１、乗算器ＭＰ３の乗算値Ｍ３＝Ａ３×ＷＥ３＝０、となる。これらの値により、切替回路ＳＷ１，ＳＷ３は、非導通状態となり、切替回路ＳＷ２は、データ線１１２と接続線１３１を導通状態にし、バッファ回路ＢＵＦ１にデータ信号Ｄ２Ｂを書き込む。
【００３３】
次に、期間ｔ４において、バッファ回路ＢＵＦ１が保持したデータ信号Ｄ２Ｂが記憶回路１１０の現在のアドレスＰ＋２に書き込まれる。その後、記憶回路１１０の現在のアドレスＰ＋２に加算器ＡＤ３の加算値Ａ３＝１が加算され、アドレスＰ＋３が現在のアドレスとなる。
【００３４】
期間ｔ５において、制御信号ＷＥ１，ＷＥ２をＬレベル、制御信号ＷＥ３をＨレベルに設定し、データ信号Ｄ３としてデータ信号Ｄ３Ｃを送信することにより、レジスタＲＥＧ３にデータ信号Ｄ３Ｃが書き込まれる。トレース回路１００は、加算器ＡＤ１の加算値Ａ１＝ＷＥ１＝０、乗算器ＭＰ１の乗算値Ｍ１＝Ａ１×ＷＥ１＝０、加算器ＡＤ２の加算値Ａ２＝ＷＥ１＋ＷＥ２＝０、乗算器ＭＰ２の乗算値Ｍ２＝Ａ２×ＷＥ２＝０、加算器ＡＤ３の加算値Ａ３＝ＷＥ１＋ＷＥ２＋ＷＥ３＝１、乗算器ＭＰ３の乗算値Ｍ３＝Ａ３×ＷＥ３＝１、となる。これらの値により、切替回路ＳＷ１，ＳＷ２は、非導通状態となり、切替回路ＳＷ３は、データ線１１３と接続線１３１を導通状態にし、バッファ回路ＢＵＦ１にデータ信号Ｄ３Ｃを書き込む。
【００３５】
次に、期間ｔ６において、バッファ回路ＢＵＦ１が保持したデータ信号Ｄ３Ｃが記憶回路１１０の現在のアドレスＰ＋３に書き込まれる。その後、記憶回路１１０の現在のアドレスＰ＋３に加算器ＡＤ３の加算値Ａ３＝１が加算され、アドレスＰ＋４が現在のアドレスとなる。
【００３６】
以上に述べた前記実施形態によれば、以下の効果が得られる。
【００３７】
本実施形態では、ＩＣＥなどの外部装置を使わずに、トレース機能による制御タイミングのずれがなく、同時に複数のレジスタの変化をトレースすることができ、デバッグ効率を向上させることができる。
【００３８】
以上、本発明の実施形態を説明したが、こうした実施の形態に何ら限定されるものではなく、趣旨を逸脱しない範囲内において様々な形態で実施し得ることができる。以下、変形例を挙げて説明する。
【００３９】
（変形例１）半導体集積回路の変形例１について説明する。前記第１実施形態では、制御信号ＷＥ１〜ＷＥ３をＨレベルの時に書き込みを行うように説明したが、反転制御信号を用い、Ｌレベルの時に書き込みを行うようにもできる。その場合、トレース回路１００の制御線１２１〜１２３と加算器ＡＤ１〜ＡＤ３の間にインバータを設ければよい。
【００４０】
（変形例２）半導体集積回路の変形例２について説明する。半導体集積回路１の例として、ＵＳＢコントローラなどの処理装置のデバッグや、ＣＰＵ内部で使われる汎用レジスタに対してトレース回路１００を実装することにより、ＣＰＵのデバッグにも使うことができる。また、ＳＲＡＭ、ＤＲＡＭなどの記憶デバイスのデバッグにも使うことができる。
【図面の簡単な説明】
【００４１】
【図１】第１実施形態に係る半導体集積回路の構成を示すブロック図。
【図２】トレース回路の構成を示すブロック図。
【図３】切替回路の構成を示す回路図。
【図４】トレース回路の動作を示すタイミング図。
【符号の説明】
【００４２】
１…半導体集積回路、１００…トレース回路、１０１…ＣＰＵ、１０２…ＣＰＵインターフェース、１０３…内部コントローラ、１０４…外部コントローラ、１０５…レジスタ群、１１０…記憶回路、１１１〜１１３…データ線、１２１〜１２３…制御線、１３１〜１３３…接続線。
【図１】
2008305051.tif 000003
【図２】
2008305051.tif 000004
【図３】
2008305051.tif 000005
【図４】
2008305051.tif 000006