(57)【要約】【課題】複数のＣＰＵから構成されるシステムＬＳＩにおいて、デバッグ回路を削減しつつ効率的にデバッグを行う。【解決手段】システムＬＳＩ１７に接続されたホストＰＣ１５からのデバッグ対象選択要求に従い、ＣＰＵ１１〜１２の中からデバッグ対象ＣＰＵを選択するデバッグ対象選択手段１０９と、選択された１つのデバッグ対象ＣＰＵの内部イベント情報を出力するイベント情報出力手段１１０と、ホストＰＣ１５により設定された検出イベントを一時格納する検出イベント格納手段１０６と、イベント情報出力手段１１０から出力される内部イベント情報と検出イベント格納手段１０６に格納された検出イベントを比較して一致を検出するイベント比較手段１０５とを備え、イベント比較手段１０５はイベントの一致検出をホストＰＣ１５に通知する。【選択図】  図２
2006164185.tif 000002
【特許請求の範囲】
【請求項１】
複数のＣＰＵと各ＣＰＵにそれぞれ接続された複数の記憶手段とを備えたシステムＬＳＩに接続されたホストコンピュータとデバッグデータの送受信を行うデバッグ装置であって、
前記ホストコンピュータから送信されたデバッグ対象選択要求に従って各ＣＰＵの中からデバッグ対象ＣＰＵを選択し、かつデバッグ対象以外の非デバッグ対象ＣＰＵを停止させることが可能なデバッグ対象選択手段と、前記ホストコンピュータから送信されたデバッグデータに従って前記デバッグ対象ＣＰＵに対するデバッグを行い、デバッグ結果を前記ホストコンピュータに送信するデバッグ手段と、
を備えたデバッグ装置。
【請求項２】
前記デバッグ手段は、各ＣＰＵにそれぞれ接続され前記デバッグ対象ＣＰＵの内部イベント情報を出力する複数のイベント情報出力手段と、各ＣＰＵにそれぞれ接続されＣＰＵを識別するＣＰＵ識別子を出力する複数のＣＰＵ識別子出力手段と、前記ホストコンピュータにより設定された検出イベントを一時格納する検出イベント格納手段と、前記ホストコンピュータにより設定された検出イベントＣＰＵ識別子を格納する検出イベントＣＰＵ識別子格納手段と、前記ＣＰＵ識別子と前記検出イベントＣＰＵ識別子を比較して一致を検出する検出イベントＣＰＵ識別子比較手段と、前記検出イベントＣＰＵ識別子比較手段により一致が検出されたときのＣＰＵ識別子が示すＣＰＵの内部イベント情報と前記検出イベントを比較して一致を検出するイベント比較手段と、を備えた請求項１記載のデバッグ装置。
【請求項３】
前記デバッグ手段は、各ＣＰＵのすべてに接続され選択された１つのデバッグ対象ＣＰＵの内部イベント情報を出力するイベント情報出力手段と、前記ホストコンピュータにより設定された検出イベントを一時格納する検出イベント格納手段と、前記内部イベント情報と前記検出イベントとを比較して一致を検出するイベント比較手段と、を備えた請求項１記載のデバッグ装置。
【請求項４】
前記デバッグ手段は、前記ホストコンピュータにより設定された検出イベントが逐次的な複数の検出イベントである場合に、前記検出イベント格納手段の容量を超えた前記検出イベントを前記非デバッグ対象ＣＰＵに接続された記憶手段に実行順に格納する検出イベント群格納手段と、前記イベント比較手段により一致が検出されると前記非デバッグ対象ＣＰＵに接続された記憶手段に格納された検出イベント群から実行順の検出イベントを前記検出イベント格納手段に転送する検出イベント転送手段と、前記イベント比較手段による一致検出数をカウントし、前記ホストコンピュータにより設定された検出イベントがすべて検出された場合に前記ホストコンピュータにイベント検出完了を通知する検出イベントカウンタと、を備えた請求項３記載のデバッグ装置。
【請求項５】
前記デバッグ手段は、各ＣＰＵにそれぞれ接続され前記デバッグ対象ＣＰＵの内部イベント情報を出力する複数のイベント情報出力手段と、前記デバッグ対象ＣＰＵの内部動作トレースデータを格納するトレースメモリと、前記内部イベント情報から前記内部動作トレースデータを生成し、前記トレースメモリに前記ＣＰＵ単位の領域に区分して前記内部動作トレースデータを格納するトレースデータ格納手段と、前記トレースメモリに格納された内部動作トレースデータを前記ホストコンピュータに出力するトレースデータ出力手段と、前記トレースメモリの空き容量を管理するトレースメモリ管理手段と、前記トレースメモリの空き容量に応じて前記デバッグ対象ＣＰＵの一時停止と動作再開を制御するデバッグＣＰＵ制御手段と、を備えた請求項１記載のデバッグ装置。
【請求項６】
前記デバッグ手段は、各ＣＰＵのすべてに接続され選択された１つのデバッグ対象ＣＰＵの内部イベント情報を出力するイベント情報出力手段と、前記デバッグ対象ＣＰＵの内部動作トレースデータを格納するトレースメモリと、前記内部イベント情報から前記内部動作トレースデータを生成し、前記トレースメモリに前記ＣＰＵ単位で領域に区分して前記内部動作トレースデータを格納するトレースデータ格納手段と、前記トレースメモリに格納された内部動作トレースデータを前記ホストコンピュータに出力するトレースデータ出力手段と、前記トレースメモリの空き容量を管理するトレースメモリ管理手段と、前記トレースメモリの空き容量に応じて前記デバッグ対象ＣＰＵの一時停止と動作再開を制御するデバッグＣＰＵ制御手段と、を備えた請求項１記載のデバッグ装置。
【請求項７】
前記デバッグ手段は、前記内部動作トレースデータの格納先として前記トレースメモリに代えて前記非デバッグ対象ＣＰＵに接続された記憶手段を使用可能にするトレースデータ格納切り替え手段を備え、前記トレースメモリの空き容量に応じて、前記非デバッグ対象ＣＰＵを停止させ、前記内部動作トレースデータの格納先の前記トレースメモリから前記非デバッグ対象ＣＰＵに接続された記憶手段への切り替えを行う請求項６記載のデバッグ装置。
【請求項８】
前記非デバッグ対象ＣＰＵに接続された記憶手段に格納された前記内部動作トレースデータの圧縮を行うトレースデータ圧縮手段を前記非デバッグ対象ＣＰＵに備えた請求項７記載のデバッグ装置。
【請求項９】
複数のＣＰＵと各ＣＰＵにそれぞれ接続された複数の記憶手段を備えたシステムＬＳＩに接続されたホストコンピュータと各ＣＰＵの中から選択されたデバッグ対象ＣＰＵとの間でデバッグデータの送受信を行うデバッグ装置であって、
前記ホストコンピュータによって設定された前記デバッグ対象ＣＰＵの転送元アドレスを格納する転送元アドレス格納手段と、前記転送元アドレスが設定された前記デバッグ対象ＣＰＵのＣＰＵ識別子を格納する転送元ＣＰＵ識別子格納手段と、前記ホストコンピュータによって設定された前記デバッグ対象ＣＰＵの転送先アドレスを格納する転送先アドレス格納手段と、前記転送先アドレスが設定された前記デバッグ対象ＣＰＵのＣＰＵ識別子を格納する転送先ＣＰＵ識別子格納手段と、前記転送元アドレスおよび前記転送元ＣＰＵ識別子あるいは前記転送先アドレスおよび前記転送先ＣＰＵ識別子に従って、前記ホストコンピュータと前記ＣＰＵ識別子で示されるデバッグ対象ＣＰＵに接続された記憶手段との間でデータを転送するデバッグデータ転送手段と、を備えたデバッグ装置。
【請求項１０】
複数のＣＰＵと各ＣＰＵにそれぞれ接続された複数の記憶手段を備えたシステムＬＳＩに接続されたホストコンピュータとデバッグデータの送受信を行うデバッグ装置であって、
前記ホストコンピュータから送信されたデバッグ対象選択要求に従って各ＣＰＵの中からデバッグ対象ＣＰＵを選択し、かつデバッグ対象以外の非デバッグ対象ＣＰＵを停止させることが可能なデバッグ対象選択手段と、前記ホストコンピュータによって設定された前記デバッグ対象ＣＰＵの転送元アドレスを格納する転送元アドレス格納手段と、前記ホストコンピュータによって設定された前記デバッグ対象ＣＰＵの転送先アドレスを格納する転送先アドレス格納手段と、前記転送元アドレスあるいは前記転送先アドレスに従って前記ホストコンピュータと前記デバッグ対象ＣＰＵに接続された記憶手段との間でデータを転送するデバッグデータ転送手段と、を備えたデバッグ装置。
【請求項１１】
前記デバッグ対象ＣＰＵに接続された記憶手段と前記非デバッグ対象ＣＰＵに接続された記憶手段との間でデータを転送するデバッグデータＣＰＵ間転送手段を備えた請求項１０記載のデバッグ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数のＣＰＵから構成されるシステムＬＳＩにおけるテストプログラムのデバッグ装置に関する。
【背景技術】
【０００２】
従来、ＣＰＵを含むシステムＬＳＩにおいては、プログラムデバッグを効率良く行うために、ＣＰＵの動作トレースおよび制御を行うデバッグ回路を搭載しているものがある。  複数のＣＰＵから構成されるシステムＬＳＩにおいては、それぞれのＣＰＵにデバッグ回路を付属させ、それぞれのＣＰＵをデバッグするようにしている（例えば、特許文献１参照）。
【０００３】
特許文献１に記載されたデバッグ方法においては、バスを介して接続された複数のＣＰＵそれぞれにデバッグ回路が設けられ、一方のＣＰＵ側から他方のＣＰＵ側の起動や中断を指示したり、一方のＣＰＵ側のデバッガの起動や中断の指示を他方のＣＰＵ側から受けたりするＣＰＵ間通信を行うことを可能にしている。
【０００４】
また、一般に知られたデバッグ回路として、外部に接続されたホストコンピュータがあらかじめ設定したイベントを検出するイベント検出回路、ＣＰＵの内部動作状態をトレースしてトレースメモリに格納した後にホストコンピュータに転送するトレース回路、ホストコンピュータからＣＰＵのメモリにアクセスするためのダイレクトメモリアクセス回路などがある。
【特許文献１】特開平９−２４４９１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
複数のＣＰＵから構成されるシステムＬＳＩにおいて、従来の方法のようにすべてのＣＰＵにそれぞれデバッグ回路を設けると、ＣＰＵの数だけデバッグ回路が必要となる。特に、デバッグに必要なトレースメモリの面積は大きいため、これをＣＰＵの数だけ搭載すると全体の面積に大きな影響を与えることになる。
【０００６】
また複数のＣＰＵから構成されるシステムであっても、それぞれのＣＰＵが密に連携した動作をしない場合は、特許文献１のようにデバッグ回路を連携させてデバッグする必要が無いため、すべてのＣＰＵにそれぞれデバッグ回路を設けることは無駄である。
【０００７】
本発明は複数のＣＰＵから構成されるシステムＬＳＩにおいて、全体としてのデバッグ回路を削減しつつ、効率的にデバッグを行うことができるようにするデバッグ装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のデバッグ装置は、複数のＣＰＵと各ＣＰＵにそれぞれ接続された複数の記憶手段を備えたシステムＬＳＩに接続されたホストコンピュータとデバッグデータの送受信を行うデバッグ装置であって、前記ホストコンピュータから送信されたデバッグ対象選択要求に従って各ＣＰＵの中からデバッグ対象ＣＰＵを選択し、かつデバッグ対象以外の非デバッグ対象ＣＰＵを停止させることが可能なデバッグ対象選択手段と、前記ホストコンピュータから送信されたデバッグデータに従って前記デバッグ対象ＣＰＵに対するデバッグを行い、デバッグ結果を前記ホストコンピュータに送信するデバッグ手段とを備える。
【０００９】
上記構成によれば、複数のＣＰＵから構成されているシステムであっても、ホストコンピュータから選択したデバッグ対象ＣＰＵのみのデバッグを行うことができるため、すべてのＣＰＵにデバッグ回路を設けることなくデバッグが可能となり、デバッグ回路資源を削減することが可能となる。
【００１０】
本発明において、前記デバッグ手段は、各ＣＰＵにそれぞれ接続され前記デバッグ対象ＣＰＵの内部イベント情報を出力する複数のイベント情報出力手段と、各ＣＰＵにそれぞれ接続されＣＰＵを識別するＣＰＵ識別子を出力する複数のＣＰＵ識別子出力手段と、前記ホストコンピュータにより設定された検出イベントを一時格納する検出イベント格納手段と、前記ホストコンピュータにより設定された検出イベントＣＰＵ識別子を格納する検出イベントＣＰＵ識別子格納手段と、前記ＣＰＵ識別子と前記検出イベントＣＰＵ識別子を比較して一致を検出する検出イベントＣＰＵ識別子比較手段と、前記検出イベントＣＰＵ識別子比較手段により一致が検出されたときのＣＰＵ識別子が示すＣＰＵの内部イベント情報と前記検出イベントを比較して一致を検出するイベント比較手段とを備える。
【００１１】
上記構成によれば、ホストコンピュータによって選択された複数のデバッグ対象ＣＰＵはイベント情報とＣＰＵ識別子を出力し、ホストコンピュータは検出したいイベントと検出したいＣＰＵ識別子を設定することができるため、ホストコンピュータが設定したＣＰＵ識別子および検出イベントと、デバッグ対象ＣＰＵから出力されたＣＰＵ識別子および検出イベントを比較し、双方が一致することを確認することでイベント検出を行うことができ、イベント情報にＣＰＵ識別子が付加されているため、デバッグ対象ＣＰＵが複数であってもイベント検出回路を１つにすることが可能となる。
【００１２】
本発明において、前記デバッグ手段は、各ＣＰＵのすべてに接続され選択された１つのデバッグ対象ＣＰＵの内部イベント情報を出力するイベント情報出力手段と、前記ホストコンピュータにより設定された検出イベントを一時格納する検出イベント格納手段と、前記内部イベント情報と前記検出イベントとを比較して一致を検出するイベント比較手段と、を備えたものである。
【００１３】
上記構成によれば、デバッグ対象選択手段によって選択された１つのデバッグ対象ＣＰＵの内部イベント情報のみがイベント比較手段によって比較されるため、検出回路を１つにすることが可能となり、システムＬＳＩの面積を削減することができる。また、ＣＰＵを識別する情報を設定する必要がないため、設定時にホストコンピュータからの通信量を減らすことが可能となる。
【００１４】
本発明において、前記デバッグ手段は、前記ホストコンピュータにより設定された検出イベントが逐次的な複数の検出イベントである場合に、前記検出イベント格納手段の容量を超えた前記検出イベントを前記非デバッグ対象ＣＰＵに接続された記憶手段に実行順に格納する検出イベント群格納手段と、前記イベント比較手段により一致が検出されると前記非デバッグ対象ＣＰＵに接続された記憶手段に格納された検出イベント群から実行順の検出イベントを前記検出イベント格納手段に転送する検出イベント転送手段と、前記イベント比較手段による一致検出数をカウントし、前記ホストコンピュータにより設定された検出イベントがすべて検出された場合に前記ホストコンピュータにイベント検出完了を通知する検出イベントカウンタとを備える。
【００１５】
上記構成によれば、逐次的な複数のイベント検出を行う場合に、非デバッグ対象ＣＰＵの記憶手段に複数のイベント情報をあらかじめ格納しておくことで、イベント検出の度にホストコンピュータから検出したいイベント情報を転送する必要がなくなる。また、イベント検出の度に転送速度の遅いホストコンピュータからの転送を待つことがなくなるため、デバッグ効率を向上させることができる。さらに、検出イベントの格納先として、新たに記憶手段を追加するのではなく、非デバッグ対象ＣＰＵの記憶手段を用いることで、デバッグ回路を増加させずにデバッグ効率を向上させることができる。
【００１６】
本発明において、前記デバッグ手段は、各ＣＰＵにそれぞれ接続され前記デバッグ対象ＣＰＵの内部イベント情報を出力する複数のイベント情報出力手段と、前記デバッグ対象ＣＰＵの内部動作トレースデータを格納するトレースメモリと、前記内部イベント情報から前記内部動作トレースデータを生成し、前記トレースメモリに前記ＣＰＵ単位の領域に区分して前記内部動作トレースデータを格納するトレースデータ格納手段と、前記トレースメモリに格納された内部動作トレースデータを前記ホストコンピュータに出力するトレースデータ出力手段と、前記トレースメモリの空き容量を管理するトレースメモリ管理手段と、前記トレースメモリの空き容量に応じて前記デバッグ対象ＣＰＵの一時停止と動作再開を制御するデバッグＣＰＵ制御手段とを備える。
【００１７】
上記構成によれば、トレースメモリがデバッグ対象ＣＰＵごとに領域区分され、内部動作トレース情報をそれぞれのＣＰＵに対応する領域に格納することができ、トレースメモリの空き容量がなくなった場合はＣＰＵを停止させ、トレースメモリ内のトレースデータを領域ごとにホストコンピュータに転送することができるため、１つのトレースメモリであっても複数のＣＰＵのトレースを行うことが可能となり、トレースメモリを共有できるため、システムＬＳＩの面積を削減することができる。
【００１８】
本発明において、前記デバッグ手段は、前記ＣＰＵのすべてに接続され選択された１つの前記デバッグ対象ＣＰＵの内部イベント情報を出力するイベント情報出力手段と、前記デバッグ対象ＣＰＵの内部動作トレースデータを格納するトレースメモリと、前記内部イベント情報から前記内部動作トレースデータを生成し、前記トレースメモリに前記ＣＰＵ単位で領域に区分して前記内部動作トレースデータを格納するトレースデータ格納手段と、前記トレースメモリに格納された内部動作トレースデータを前記ホストコンピュータに出力するトレースデータ出力手段と、前記トレースメモリの空き容量を管理するトレースメモリ管理手段と、前記トレースメモリの空き容量に応じて前記デバッグ対象ＣＰＵの一時停止と動作再開を制御するデバッグＣＰＵ制御手段と、を備えたものである。
【００１９】
上記構成によれば、複数のＣＰＵが動作している場合であっても、デバッグ対象選択手段によって選択された１つのＣＰＵのトレース情報のみが出力され、トレースメモリに格納される。デバッグ対象のＣＰＵを選択することによって、複数のＣＰＵから構成されるシステムであっても１つのトレース回路でトレースすることが可能となり、システムＬＳＩの面積を削減することが可能となる。
【００２０】
本発明において、前記デバッグ手段は、前記内部動作トレースデータの格納先として前記トレースメモリに代えて前記非デバッグ対象ＣＰＵに接続された記憶手段を使用可能にするトレースデータ格納切り替え手段を備え、前記トレースメモリの空き容量に応じて、前記非デバッグ対象ＣＰＵを停止させ、前記内部動作トレースデータの格納先の前記トレースメモリから前記非デバッグ対象ＣＰＵに接続された記憶手段への切り替えを行う。
【００２１】
上記構成によれば、トレースメモリの空き容量がなくなった場合は、トレース情報の格納先として停止させた非デバッグ対象ＣＰＵの記憶手段を用いることができるため、トレース情報がトレースメモリ容量を超えた場合でも、ＣＰＵを停止させることなくデバッグを続行することが可能となり、新たにトレースメモリを追加することなくＣＰＵを停止させる頻度を減らすことができ、デバッグ効率を向上させることができる。
【００２２】
本発明において、前記非デバッグ対象ＣＰＵに接続された記憶手段に格納された前記内部動作トレースデータの圧縮を行うトレースデータ圧縮手段を前記非デバッグ対象ＣＰＵに備えたものである。
【００２３】
上記構成によれば、トレース情報の格納先として停止させた非デバッグ対象ＣＰＵの記憶手段を用いる際に、そこに格納されたトレースデータを圧縮することができるため、転送速度の遅いホストコンピュータへの転送量を削減することができる。
【００２４】
本発明のデバッグ装置は、複数のＣＰＵと各ＣＰＵにそれぞれ接続された複数の記憶手段を備えたシステムＬＳＩに接続されたホストコンピュータと各ＣＰＵの中から選択されたデバッグ対象ＣＰＵとの間でデバッグデータの送受信を行うデバッグ装置であって、前記ホストコンピュータによって設定された前記デバッグ対象ＣＰＵの転送元アドレスを格納する転送元アドレス格納手段と、前記転送元アドレスが設定された前記デバッグ対象ＣＰＵの識別子を格納する転送元ＣＰＵ識別子格納手段と、前記ホストコンピュータによって設定された前記デバッグ対象ＣＰＵの転送先アドレスを格納する転送先アドレス格納手段と、前記転送先アドレスが設定された前記デバッグ対象ＣＰＵの識別子を格納する転送先ＣＰＵ識別子格納手段と、前記転送元アドレスおよび前記転送元ＣＰＵ識別子あるいは前記転送先アドレスおよび前記転送先ＣＰＵ識別子に従って、前記ホストコンピュータと前記ＣＰＵ識別子で示されるデバッグ対象ＣＰＵに接続された記憶手段との間でデータを転送するデバッグデータ転送手段と、を備えたものである。
【００２５】
上記構成によれば、ＣＰＵとホストコンピュータ間でデータ転送を行う際に、ＣＰＵ識別子を用いてデータ転送先またはデータ転送元のＣＰＵを識別することができるため、１つのデバッグ装置であっても複数のデバッグ対象を選択してデータ転送を行うことが可能となり、デバッグ回路を共有化することでデバッグ回路を削減することができる。
【００２６】
本発明のデバッグ装置は、複数のＣＰＵと各ＣＰＵにそれぞれ接続された複数の記憶手段を備えたシステムＬＳＩに接続されたホストコンピュータとデバッグデータの送受信を行うデバッグ装置であって、前記ホストコンピュータから送信されたデバッグ対象選択要求に従って各ＣＰＵの中からデバッグ対象ＣＰＵを選択し、かつデバッグ対象以外の非デバッグ対象ＣＰＵを停止させることが可能なデバッグ対象選択手段と、前記ホストコンピュータによって設定された前記デバッグ対象ＣＰＵの転送元アドレスを格納する転送元アドレス格納手段と、前記ホストコンピュータによって設定された前記デバッグ対象ＣＰＵの転送先アドレスを格納する転送先アドレス格納手段と、前記転送元アドレスあるいは前記転送先アドレスに従って前記ホストコンピュータと前記デバッグ対象ＣＰＵに接続された記憶手段との間でデータを転送するデバッグデータ転送手段と、を備えたものである。
【００２７】
上記構成によれば、ホストコンピュータにより１つのデバッグ対象ＣＰＵを選択し、転送先アドレスまたは転送元アドレスを設定することにより、デバッグ対象ＣＰＵの記憶手段とホストコンピュータ間のデータ転送を行うことができるため、デバッグ回路を共有することができ、デバッグ回路を削減することができる。
【００２８】
本発明において、前記デバッグ対象ＣＰＵに接続された記憶手段と前記非デバッグ対象ＣＰＵに接続された記憶手段との間でデータを転送するデバッグデータＣＰＵ間転送手段を備えたものである。
【００２９】
上記構成によれば、デバッグ対象ＣＰＵを１つ選択し、非デバッグ対象ＣＰＵを停止させ、ホストコンピュータが転送元アドレスを設定した場合は、まずデバッグ対象ＣＰＵの記憶手段から非デバッグ対象ＣＰＵの記憶手段にデータを転送し、転送完了後に転送されたデータをホストコンピュータに転送することができる。また、ホストコンピュータが転送先アドレスを設定した場合は、まずホストコンピュータから非デバッグ対象ＣＰＵの記憶手段にデータを転送し、転送完了後に転送されたデータをデバッグ対象ＣＰＵに転送する。ＣＰＵの記憶手段間のデータ転送はＣＰＵとホストコンピュータ間のデータ転送に比べて高速であるため、デバッグ対象ＣＰＵのバス占有時間を短縮することができ、デバッグ効率を向上させることができる。
【発明の効果】
【００３０】
本発明によれば、複数のＣＰＵから構成されるシステムＬＳＩにおいて、複数のＣＰＵに対してデバッグ回路を共有化することができ、ホストコンピュータから選択したデバッグ対象ＣＰＵのみのデバッグを行うことができるため、デバッグ回路の面積を削減することが可能となる。特に、それぞれのＣＰＵが密に連携したデバッグをあまり必要としない場合に、デバッグ回路面積を削減するのに有効な手段となる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の複数のＣＰＵから構成されるシステムＬＳＩにおけるデバッグ装置の実施形態を図面を参照して説明する。
【００３２】
（実施の形態１）
図１は本発明の実施の形態１に係るデバッグ装置の構成図である。図１において、システムＬＳＩ１６は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、イベント情報出力手段１０１、１０２、ＣＰＵ識別子出力手段１０３、１０４、イベント比較手段１０５、検出イベント格納手段１０６、検出イベントＣＰＵ識別子格納手段１０７、イベント識別子比較手段１０８、デバッグ対象選択手段１０９から構成され、ホストコンピュータであるホストＰＣ１５に接続される。
【００３３】
記憶手段１３にはＣＰＵ１１が実行する命令や使用するデータが格納され、記憶手段１４にはＣＰＵ１２が実行する命令や使用するデータが格納される。ホストＰＣ１５はデバッグ対象選択手段１０９にデバッグ対象ＣＰＵを指示する。ここで、デバッグ対象としてＣＰＵ１１のみ、ＣＰＵ１２のみ、あるいはＣＰＵ１１およびＣＰＵ１２のいずれかを選択できるものとする。
【００３４】
デバッグ対象選択手段１０９によってＣＰＵ１１が選択された場合、ＣＰＵ１１は自身の動作情報をイベント情報出力手段１０１を通じてイベント比較手段１０５に出力し、ＣＰＵ１１を示すＣＰＵ識別子をイベントＣＰＵ識別子比較手段１０８に出力する。
【００３５】
同様に、デバッグ対象選択手段１０９によってＣＰＵ１２が選択された場合、ＣＰＵ１２は自身の動作情報をイベント情報出力手段１０２を通じてイベント比較手段１０５に出力し、ＣＰＵ１２を示すＣＰＵ識別子をイベントＣＰＵ識別子比較手段１０８に出力する。
【００３６】
ホストＰＣ１５は、検出イベント格納手段１０６に検出したいイベントを格納し、検出イベントＣＰＵ識別子格納手段１０７に検出したいイベントＣＰＵ識別子を格納する。
【００３７】
イベントＣＰＵ識別子比較手段１０８は、検出イベントＣＰＵ識別子格納手段１０７に格納された検出イベント識別子と、ＣＰＵ識別子出力手段１０３および１０４の出力結果を比較する。
【００３８】
比較した結果、検出イベントＣＰＵ識別子格納手段１０７に格納された検出イベント識別子とＣＰＵ識別子出力手段１０３の出力結果が一致した場合、イベント比較手段１０５は検出イベント格納手段１０８とイベント情報出力手段１０１の出力結果を比較し、比較結果をホストＰＣ１５に出力する。
【００３９】
同様に、検出イベントＣＰＵ識別子格納手段１０７に格納された検出イベント識別子とＣＰＵ識別子出力手段１０４の出力結果が一致した場合、イベント比較手段１０５は検出イベント格納手段１０８とイベント情報出力手段１０２の出力結果を比較し、比較結果をホストＰＣ１５に出力する。
【００４０】
以上のようにデバッグ装置を構成することで、ホストＰＣは検出したいイベントと検出したいＣＰＵ識別子を設定することができ、イベント情報出力の比較においてＣＰＵ識別子出力によりＣＰＵが識別されるため、１つのデバッグ資源で複数のＣＰＵを同時にデバッグすることが可能となり、システムＬＳＩ上のデバッグ資源の面積を削減することができる。
【００４１】
（実施の形態２）
図２は本発明の実施の形態２に係るデバッグ装置の構成図である。図２において、システムＬＳＩ１７は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、イベント情報出力手段１１０、デバッグ対象選択手段１０９、イベント比較手段１０５、検出イベント格納手段１０６から構成され、ホストＰＣ１５に接続される。
【００４２】
ホストＰＣ１５はデバッグ対象選択手段１０９にデバッグ対象ＣＰＵを指示する。デバッグ対象はＣＰＵ１１のみ、あるいはＣＰＵ１２のみであり、複数のＣＰＵを同時に選択することはできない。デバッグ対象選択手段１０９はイベント情報出力手段１１０にデバッグ対象のＣＰＵを通知する。
【００４３】
イベント情報出力手段１１０は、デバッグ対象がＣＰＵ１１であった場合はＣＰＵ１１の内部動作イベントをイベント比較手段１０５に出力し、デバッグ対象がＣＰＵ１２であった場合はＣＰＵ１２の内部動作イベントをイベント比較手段１０５に出力する。
【００４４】
ホストＰＣ１５は検出したいイベントを検出イベント格納手段１０６に格納しておく。  イベント比較手段１０５はイベント情報出力手段１１０から出力されたイベントと検出イベント格納手段１０６に格納されているイベントを比較し、一致したならばイベント検出をホストＰＣ１５に通知する。
【００４５】
以上のようにデバッグ装置を構成することで、複数のＣＰＵが搭載されているシステムＬＳＩにおいて、２つ以上のＣＰＵが同時に動作している状態で１つのＣＰＵを対象としてデバッグすることができ、デバッグ回路を共有化することが可能となる。実施の形態１では同時に複数のＣＰＵのデバッグを行うことができるのに対して、本実施の形態ではＣＰＵを１つずつしかデバッグを行えないが、ホストＰＣがＣＰＵ識別子を指定する必要がないため、ホストＰＣとのトラフィックを減らすことができる。
【００４６】
（実施の形態３）
図３は本発明の実施の形態３に係るデバッグ装置の構成図である。図３において、システムＬＳＩ１８は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、イベント情報出力手段１１０、検出イベント群格納手段１１１、検出イベントカウンタ１１３、デバッグ対象選択手段１０９、検出イベント格納手段１０６、イベント比較手段１０５、検出イベント転送手段１１２、イベント格納先切り替え手段１１４から構成され、ホストＰＣ１５に接続される。
【００４７】
ホストＰＣ１５はデバッグ対象選択手段１０９に対してデバッグ対象ＣＰＵを通知する。デバッグ対象としてはＣＰＵ１１のみ、あるいはＣＰＵ１２のみを選択することができる。また同時に排他的なデバッグを行うことを選択することができる。デバッグ対象としてＣＰＵ１１を選択して排他的なデバッグを行う場合はＣＰＵ１２を停止させ、ＣＰＵ１２を選択して排他的なデバッグを行う場合はＣＰＵ１１を停止させる。
【００４８】
イベント情報出力手段１１０は、デバッグ対象としてＣＰＵ１１が選択された場合はＣＰＵ１１の内部動作イベントをイベント比較手段１０５に出力し、デバッグ対象としてＣＰＵ１２が選択された場合はＣＰＵ１２の内部動作イベントをイベント比較手段１０５に出力する。
【００４９】
図４は本実施の形態におけるイベント検出の処理手順を示すフローチャートである。図４において、排他的なデバッグが選択された場合、ホストＰＣ１５は検出したいイベントを検出イベント群格納手段１１１によって、非デバッグ対象のＣＰＵの記憶手段に格納する。
【００５０】
検出したいイベントが複数の順序を持ったイベント群である場合、非デバッグ対象のＣＰＵの記憶手段にイベント群を格納し、イベント数を検出イベントカウンタ１１３に格納する。検出イベント転送手段１１２は非デバッグ対象のＣＰＵの記憶手段に格納された検出イベント群から最初の検出イベントを検出イベント格納手段１０６に転送し、検出イベントカウンタ１１３を１減じる。
【００５１】
イベント比較手段１０５はイベント情報出力手段１１０によって出力された内部動作イベントと検出イベント格納手段１０６に格納されたイベントを比較し、比較結果が一致した場合に、検出イベントカウンタ１１３の値が０であればイベント検出をホストＰＣ１５に通知する。
【００５２】
検出イベントカウンタ１１３の値が０でなければ、検出イベント転送手段１１２は非デバッグ対象のＣＰＵの記憶手段に格納された検出イベント群から次の検出イベントを検出イベント格納手段１０６に転送し、検出イベントカウンタ１１３を１減じる。
【００５３】
排他的なデバッグが選択されない場合、ホストＰＣ１５は検出したいイベント群のうち最初の検出イベントを検出イベント格納手段１０６に格納する。検出したいイベントが複数の順序をもったイベント群である場合は、検出イベント数から１減らした値を検出イベントカウンタ１１３に格納する。
【００５４】
イベント比較手段１０５はイベント情報出力手段１１０によって出力された内部動作イベントと検出イベント格納手段１０６に格納されたイベントを比較し、比較結果が一致した場合は、検出イベントカウンタ１１３の値が０であればイベント検出をホストＰＣ１５に通知する。検出イベントカウンタ１１３の値が０でなければ、ホストＰＣ１５は次の検出イベントを検出イベント格納手段１０６に格納し、検出イベントカウンタを１減じる。
【００５５】
以上のようにデバッグ装置を構成することで、複数のＣＰＵが搭載されているシステムＬＳＩにおいて、ＣＰＵ単体でデバッグを行う場合はデバッグ回路を共有して面積を削減することができ、さらに排他的な動作をデバッグする場合は、デバッグ対象でないＣＰＵを停止させ、その記憶手段を複数の検出イベント群の格納先として使用することで、検出イベント格納手段の容量が小さい場合であっても、イベントを検出する度にホストＰＣからの検出イベントの転送を待つことなくデバッグを行うことが可能となり、リアルタイム性が向上する。
【００５６】
（実施の形態４）
図５は本発明の実施の形態４に係るデバッグ装置の構成図である。図５において、システムＬＳＩ１９は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、それぞれのＣＰＵに接続されたイベント情報出力手段１０１、１０２、デバッグＣＰＵ制御手段１１８、デバッグ対象選択手段１０９、トレースデータ格納手段１１５、トレースメモリ１１６、トレースメモリ管理手段１１７、トレースデータ出力手段１１９から構成され、ホストＰＣ１５に接続される。
【００５７】
ホストＰＣ１５はデバッグ対象選択手段１０９に対してデバッグ対象ＣＰＵを通知する。デバッグ対象としては、ＣＰＵ１１のみ、ＣＰＵ１２のみ、あるいはＣＰＵ１１およびＣＰＵ１２のいずれかを選択することができる。
【００５８】
デバッグ対象選択手段１０９によってＣＰＵ１１が選択された場合は、ＣＰＵ１１はイベント情報出力手段１０１を通してＣＰＵ１１の動作情報をトレースデータ格納手段１１５に出力する。デバッグ対象選択手段１０９によってＣＰＵ１２が選択された場合は、ＣＰＵ１２はイベント情報出力手段１０２を通してトレースデータ格納手段１１５に出力する。
【００５９】
トレースデータ格納手段１１５は、トレースメモリ１１６をデバッグ対象のＣＰＵの数だけ分割し、それぞれのデバッグ対象のＣＰＵに対応した領域にそれぞれのトレースデータを格納する。
【００６０】
トレースデータ出力手段１１９はトレースメモリ１１６に格納されたトレースデータをホストＰＣ１５に出力する。トレースメモリ管理手段１１７はトレースメモリ１１６の空き容量を監視し、空き容量がなくなった場合はデバッグＣＰＵ制御手段１１８に通知してＣＰＵ１１、ＣＰＵ１２を停止させる。
【００６１】
以上のようにデバッグ装置を構成することで、１つのデバッグ資源で複数のＣＰＵを同時にデバッグすることが可能となり、回路面積を削減することができる。
【００６２】
（実施の形態５）
図６は本発明の実施の形態５に係るデバッグ装置の構成図である。図６において、システムＬＳＩ２０は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、イベント出力制御手段１１０、デバッグＣＰＵ制御手段１１８、デバッグ対象選択手段１０９、トレースデータ格納手段１１５、トレースメモリ１１６、トレースメモリ管理手段１１７、トレースデータ出力手段１１９から構成され、ホストＰＣ１５に接続される。
【００６３】
ホストＰＣ１５はデバッグ対象選択手段１０９に対してデバッグ対象ＣＰＵを通知する。デバッグ対象としてはＣＰＵ１１のみ、あるいはＣＰＵ１２のみを選択することができる。デバッグ対象選択手段１０９はイベント情報出力手段１１０にデバッグ対象のＣＰＵを通知する。
【００６４】
イベント情報出力手段１１０はデバッグ対象選択手段１０９によって通知されたデバッグ対象のＣＰＵの内部動作イベントをトレースデータ格納手段１１５に出力する。トレースデータ格納手段１１５はトレースメモリ１１６に内部動作イベントを格納する。
【００６５】
トレースメモリ管理手段１１７はトレースメモリ１１６の空き容量を監視し、空き容量がなくなるとデバッグＣＰＵ制御手段１１８に通知してＣＰＵを停止させる。トレースデータ出力手段１１９はトレースメモリ１１６に格納されたデータをホストＰＣ１５に出力する。
【００６６】
以上のようにデバッグ装置を構成することで、複数のＣＰＵが搭載されているシステムＬＳＩにおいて、２つ以上のＣＰＵが同時に動作している状態で１つのＣＰＵを対象としてデバッグすることができ、デバッグ回路を共有化することが可能となる。
【００６７】
（実施の形態６）
図７は本発明の実施の形態６に係るデバッグ装置の構成図である。図７において、システムＬＳＩ２１は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、イベント出力制御手段１１０、デバッグＣＰＵ制御手段１１８、デバッグ対象選択手段１０９、トレースデータ格納手段１１５、トレースデータ格納切り替え手段１２０、トレースメモリ１１６、トレースメモリ管理手段１１７、トレースデータ出力手段１１９、トレースデータ転送手段１２１、容量管理手段１２２から構成され、ホストＰＣ１５に接続される。
【００６８】
ホストＰＣ１５はデバッグ対象選択手段１０９に対してデバッグ対象ＣＰＵを通知する。デバッグ対象としてはＣＰＵ１１のみ、あるいはＣＰＵ１２のみが選択可能であり、また排他的なデバッグの実施を選択することができる。排他的なデバッグが選択されると、デバッグ対象選択手段１０９は非デバッグ対象ＣＰＵを停止させる。
【００６９】
図８は本実施の形態におけるトレースデータ処理のフローチャートである。図８において、排他的なデバッグを行う場合は、イベント情報出力手段１１０はデバッグ対象選択手段１０９によって通知されたデバッグ対象ＣＰＵの内部動作イベントをトレースデータ格納手段１１５に出力する。
【００７０】
トレースデータの格納先はトレースデータ格納切り替え手段１２０により非デバッグ対象ＣＰＵの記憶手段に変更される。非デバッグ対象ＣＰＵの記憶手段は容量管理手段１２２によって空き容量を監視され、空き容量がなくなった場合はデバッグＣＰＵ制御手段１１８に通知され、デバッグＣＰＵ制御手段１１８はＣＰＵの動作を停止させ、空き容量があれば動作を再開させる。
【００７１】
非デバッグ対象ＣＰＵの記憶手段に格納されたトレースデータはトレースデータ転送手段１２１によってトレースメモリ１１６に転送される。トレースメモリ１１６の空き容量はトレースメモリ管理手段１１７によって監視され、空き容量がなくなれば記憶手段からのトレースデータの転送は行われない。トレースメモリ１１６に格納されたトレースデータはトレースデータ出力手段１１９によってホストＰＣ１５に出力される。
【００７２】
排他的なデバッグを行わない場合は、イベント情報出力手段１１０はデバッグ対象選択手段１０９によって通知されたデバッグ対象ＣＰＵの内部動作イベントをトレースデータ格納手段１１５に出力する。トレースデータの格納先はトレースデータ格納切り替え手段１２０によりトレースメモリ１１６に設定される。
【００７３】
トレースメモリ１１６の空き容量はトレースメモリ管理手段１１７によって監視され、空き容量がなくなればデバッグＣＰＵ制御手段１１８に通知され、デバッグＣＰＵ制御手段１１８はＣＰＵを停止させ、空き容量があれば動作を再開させる。トレースメモリ１１６に格納されたトレースデータはトレースデータ出力手段１１９によってホストＰＣ１５に出力される。
【００７４】
以上のようにデバッグ装置を構成することで、複数のＣＰＵが搭載されているシステムＬＳＩにおいて、ＣＰＵ単体でのデバッグを行う場合に、デバッグ対象でないＣＰＵを停止させ、その記憶手段をトレースデータの格納先として使用することで、トレースメモリの容量が小さい場合であっても、より多くのデータを格納することができるため、トレースデータの格納ができなくなることによるＣＰＵの停止頻度が減り、デバッグ効率が向上する。
【００７５】
（実施の形態７）
図９は本発明の実施の形態７に係るデバッグ装置の構成図である。図９において、システムＬＳＩ２２は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、イベント出力制御手段１１０、デバッグＣＰＵ制御手段１１８、デバッグ対象選択手段１０９、トレースデータ格納手段１１５、トレースデータ格納切り替え手段１２０、トレースメモリ１１６、トレースメモリ管理手段１１７、トレースデータ出力手段１１９、トレースデータ転送手段１２１、容量管理手段１２２、プログラム転送手段１２３から構成され、ホストＰＣ１５に接続される。
【００７６】
ホストＰＣ１５はデバッグ対象選択手段１０９に対してデバッグ対象ＣＰＵを通知する。デバッグ対象としてはＣＰＵ１１のみ、あるいはＣＰＵ１２のみが選択可能であり、また排他的なデバッグの実施を選択することができる。排他的なデバッグが選択されると、デバッグ対象選択手段１０９は非デバッグ対象ＣＰＵを停止させる。
【００７７】
排他的なデバッグを行う場合は、プログラム転送手段１２３によってトレースメモリ圧縮プログラムを非デバッグ対象のＣＰＵの記憶手段に転送する。イベント情報出力手段１１０はデバッグ対象選択手段１０９によって通知されたデバッグ対象ＣＰＵの内部動作イベントをトレースデータ格納手段１１５に出力する。
【００７８】
トレースデータの格納先はトレースデータ格納切り替え手段１２０により非デバッグ対象ＣＰＵの記憶手段に変更される。非デバッグ対象ＣＰＵは記憶手段に転送されたトレースメモリ圧縮プログラムを用いて、記憶手段内のトレースデータを圧縮する。
【００７９】
非デバッグ対象ＣＰＵの記憶手段は容量管理手段１２２によって空き容量を監視され、空き容量がなくなった場合はデバッグＣＰＵ制御手段１１８に通知され、デバッグＣＰＵ制御手段１１８はＣＰＵの動作を停止させ、空き容量があれば動作を再開させる。
【００８０】
非デバッグ対象ＣＰＵの記憶手段に格納されたトレースデータはトレースデータ転送手段１２１によってトレースメモリ１１６に転送される。トレースメモリ１１６の空き容量はトレースメモリ管理手段１１７によって監視され、空き容量がなくなれば記憶手段からのトレースデータの転送は行われない。トレースメモリ１１６に格納されたトレースデータはトレースデータ出力手段１１９によってホストＰＣ１５に出力される。
【００８１】
排他的なデバッグを行わない場合は、イベント情報出力手段１１０はデバッグ対象選択手段１０９によって通知されたデバッグ対象ＣＰＵの内部動作イベントをトレースデータ格納手段１１５に出力する。トレースデータの格納先はトレースデータ格納切り替え手段１２０によってトレースメモリ１１６に設定される。
【００８２】
トレースメモリ１１６の空き容量はトレースメモリ管理手段１１７によって監視され、空き容量がなくなればデバッグＣＰＵ制御手段１１８に通知され、デバッグＣＰＵ制御手段１１８はＣＰＵを停止させ、空き容量があれば動作を再開させる。トレースメモリ１１６に格納されたトレースデータはトレースデータ出力手段１１９によってホストＰＣ１５に出力される。
【００８３】
以上のようにデバッグ装置を構成することで、複数のＣＰＵが搭載されているシステムＬＳＩにおいて、ＣＰＵ単体でのデバッグを行う場合に、デバッグ対象でないＣＰＵを停止させ、その記憶手段をトレースデータの格納先として使用することで、トレースメモリの容量が小さい場合であっても、より多くのデータを格納することができるため、トレースデータの格納ができなくなることによるＣＰＵの停止頻度が減り、デバッグ効率が向上する。またトレースデータの圧縮を行うことによってホストＰＣとの通信量を削減することができる。
【００８４】
（実施の形態８）
図１０は本発明の実施の形態８に係るデバッグ装置の構成図である。図１０において、システムＬＳＩ２３は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、転送先ＣＰＵ識別子格納手段１２４、転送元ＣＰＵ識別子格納手段１２５、転送先アドレス格納手段１２６、転送元アドレス格納手段１２７、デバッグデータ転送手段１２８から構成され、ホストＰＣ１５に接続される。
【００８５】
ホストＰＣ１５は転送先ＣＰＵ識別子格納手段１２４に転送先ＣＰＵを示すＣＰＵ識別子、転送先アドレス格納手段１２６に転送先のアドレス、転送元ＣＰＵ識別子格納手段１２５に転送元ＣＰＵを示すＣＰＵ識別子、転送元アドレス格納手段１２７に転送元のアドレスをそれぞれ格納する。
【００８６】
デバッグデータ転送手段１２８はホストＰＣ１５からの転送要求を受けて、転送元ＣＰＵ識別子格納手段１２５と転送元アドレス格納手段１２７の内容が示すＣＰＵの記憶手段からホストＰＣ１５へ、あるいはホストＰＣ１５から転送先ＣＰＵ識別子格納手段１２４と転送先アドレス格納手段１２６の内容が示すＣＰＵの記憶手段へデータを転送する。
【００８７】
以上のようにデバッグ装置を構成することで、複数のＣＰＵが搭載されているシステムＬＳＩにおいて、２つ以上のＣＰＵが同時に動作している状態で、同時に複数のＣＰＵのデバッグを行うことができ、デバッグ回路を共有できるためデバッグ回路の面積を削減することが可能となる。
【００８８】
（実施の形態９）
図１１は本発明の実施の形態９に係るデバッグ装置の構成図である。図１１において、システムＬＳＩ２４は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、デバッグ対象選択手段１０９、転送先アドレス格納手段１２６、転送元アドレス格納手段１２７、デバッグデータ転送手段１２８から構成され、ホストＰＣ１５に接続される。
【００８９】
ホストＰＣ１５はデバッグ対象のＣＰＵをデバッグ対象選択手段１０９に通知する。デバッグ対象としてはＣＰＵ１１のみ、あるいはＣＰＵ１２のみを設定することができる。  ホストＰＣは転送先アドレスを転送先アドレス格納手段１２６に、転送元アドレスを転送元アドレス格納手段１２７に格納する。
【００９０】
デバッグデータ転送手段１２８はホストＰＣ１５から転送要求を受けて、デバッグ対象選択手段１０９によって選択されたデバッグ対象ＣＰＵの記憶手段とホストＰＣ１５の間において、転送元アドレス格納手段１２７に格納された転送元アドレスからホストＰＣ１５へ、あるいはホストＰＣ１５から転送先アドレス格納手段１２６に格納された転送先アドレスへデータ転送を行う。
【００９１】
以上のようにデバッグ装置を構成することで、複数のＣＰＵが搭載されているシステムＬＳＩにおいて、２つ以上のＣＰＵが同時に動作している状態で、１つのＣＰＵを対象としてデバッグすることができる。
【００９２】
（実施の形態１０）
図１２は本発明の実施の形態１０に係るデバッグ装置の構成図である。図１２において、システムＬＳＩ２５は、複数のＣＰＵ１１、１２、それぞれのＣＰＵに接続された記憶手段１３、１４、デバッグデータＣＰＵ間転送手段１２９、転送先アドレス格納手段１２６、転送元アドレス格納手段１２７、デバッグデータ転送手段１２８、デバッグ対象選択手段１０９から構成され、ホストＰＣ１５に接続される。
【００９３】
ホストＰＣ１５はデバッグ対象選択手段１０９に対してデバッグ対象ＣＰＵを通知する。デバッグ対象としてＣＰＵ１のみ、あるいはＣＰＵ２のみを選択することができる。  また排他的なデバッグを選択することができる。
【００９４】
排他的なデバッグを行う場合は、デバッグ対象選択手段１０９は非デバッグ対象ＣＰＵを停止させる。ホストＰＣ１５は転送先アドレスを転送先アドレス格納手段１２６に、転送元アドレスを転送元アドレス格納手段１２７に格納する。
【００９５】
図１３は本実施の形態におけるデバッグデータ処理の処理手順を示すフローチャートである。図１３において、ホストＰＣ１５からデバッグ対象ＣＰＵの記憶手段へのデータ転送を行う場合は、一旦ホストＰＣからデバッグデータ転送手段１２８により非デバッグ対象の記憶手段にデータを転送しておく。デバッグデータＣＰＵ間転送手段１２９はホストＰＣ１５からの転送要求を受けて、非デバッグ対象ＣＰＵの記憶手段からデバッグ対象のＣＰＵの記憶手段へのデータ転送を行う。
【００９６】
デバッグ対象ＣＰＵの記憶手段からホストＰＣ１５へのデータ転送を行う場合は、デバッグデータＣＰＵ間転送手段１２９によりデバッグ対象ＣＰＵの記憶手段から非デバッグ対象ＣＰＵの記憶手段へ転送しておく。デバッグデータ転送手段１２８はホストＰＣ１５から転送要求を受けると、非デバッグ対象ＣＰＵの記憶手段に転送済みのデータをホストＰＣ１５に転送する。
【００９７】
排他的なデバッグを行わない場合は、ホストＰＣ１５は転送先アドレスを転送先アドレス格納手段１２６に、転送元アドレスを転送元アドレス格納手段１２７に格納する。デバッグデータ転送手段１２８はホストＰＣ１５から転送要求を受けて、デバッグ対象選択手段１０９によって選択されたデバッグ対象ＣＰＵの記憶手段とホストＰＣ１５の間において、転送元アドレス格納手段１２７に格納された転送元アドレスからホストＰＣ１５へ、あるいはホストＰＣ１５から転送先アドレス格納手段１２６に格納された転送先アドレスへデータ転送を行う。
【００９８】
以上のようにデバッグ装置を構成することで、複数のＣＰＵが搭載されているシステムＬＳＩにおいて、ＣＰＵ単体でのデバッグを行う場合に、デバッグ対象でないＣＰＵを停止させ、その記憶手段を転送データの一時格納先として使用することで、ホストＰＣとのデータ通信をリアルタイムに行う必要がなく、ＣＰＵの動作を待たせる頻度を減らすことが可能となる。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施の形態１に係るデバッグ装置の構成図。
【図２】本発明の実施の形態２に係るデバッグ装置の構成図。
【図３】本発明の実施の形態３に係るデバッグ装置の構成図。
【図４】本発明の実施の形態３におけるイベント検出の処理手順を示すフローチャート。
【図５】本発明の実施の形態４に係るデバッグ装置の構成図。
【図６】本発明の実施の形態５に係るデバッグ装置の構成図。
【図７】本発明の実施の形態６に係るデバッグ装置の構成図。
【図８】本発明の実施の形態６におけるトレースデータ処理の処理手順を示すフローチャート。
【図９】本発明の実施の形態７に係るデバッグ装置の構成図。
【図１０】本発明の実施の形態８に係るデバッグ装置の構成図。
【図１１】本発明の実施の形態９に係るデバッグ装置の構成図。
【図１２】本発明の実施の形態１０に係るデバッグ装置の構成図。
【図１３】本発明の実施の形態１０におけるデバッグデータ処理の処理手順を示すフローチャート。
【符号の説明】
【０１００】
１１、１２  ＣＰＵ
１３、１４  記憶手段
１５  ホストＰＣ
１６、１７、１８、１９、２０、２１、２２、２３、２４、２５  システムＬＳＩ
１０１、１０２、１１０  イベント情報出力手段
１０３、１０４  ＣＰＵ識別子出力手段
１０５  イベント比較手段
１０６  検出イベント格納手段
１０７  検出イベントＣＰＵ識別子格納手段
１０８  イベントＣＰＵ識別子比較手段
１０９  デバッグ対象選択手段
１１１  検出イベント群格納手段
１１２  検出イベント転送手段
１１３  検出イベントカウンタ
１１４  イベント格納先切り替え手段
１１５  トレースデータ格納手段
１１６  トレースメモリ
１１７  トレースメモリ管理手段
１１８  デバッグＣＰＵ制御手段
１１９  トレースデータ出力手段
１２０  トレースデータ格納切り替え手段
１２１  トレースデータ転送手段
１２２  容量管理手段
１２３  プログラム転送手段
１２４  転送先ＣＰＵ識別子格納手段
１２５  転送元ＣＰＵ識別子格納手段
１２６  転送先アドレス格納手段
１２７  転送元アドレス格納手段
１２８  デバッグデータ転送手段
１２９  デバッグデータＣＰＵ間転送手段
【図１】
2006164185.tif 000003
【図２】
2006164185.tif 000004
【図３】
2006164185.tif 000005
【図４】
2006164185.tif 000006
【図５】
2006164185.tif 000007
【図６】
2006164185.tif 000008
【図７】
2006164185.tif 000009
【図８】
2006164185.tif 000010
【図９】
2006164185.tif 000011
【図１０】
2006164185.tif 000012
【図１１】
2006164185.tif 000013
【図１２】
2006164185.tif 000014
【図１３】
2006164185.tif 000015