(57)【要約】【課題】  コストアップを回避しつつ、リアルタイムトレースを実行可能とする。【解決手段】  ＩＣチップ１は、ＣＰＵ１１およびメモリーコントローラー１３を内蔵し、ＣＰＵ１１がトレースデータをメモリーコントローラー１３へ出力し、メモリーコントローラー１３がトレースデータを、ＩＣチップ１に着脱可能なＤＲＡＭ２の所定の記憶領域２１に書き込む。そして、読み出し回路３は、ＤＲＡＭ２のその記憶領域２１からトレースデータを読み出し、デバッグ装置４は、読み出し回路３により読み出されたトレースデータに基づいて、ＣＰＵ１１のリアルタイムトレースを行う。【選択図】図１
2016091277.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサーおよびメモリーコントローラーを内蔵し、前記プロセッサーがトレースデータを前記メモリーコントローラーへ出力し、前記メモリーコントローラーが前記トレースデータを、前記ＩＣチップに着脱可能なメモリーの所定の記憶領域に書き込むＩＣチップと、
前記メモリーの所定の記憶領域から前記トレースデータを読み出す読み出し回路と、
前記読み出し回路により読み出された前記トレースデータに基づいて、前記プロセッサーのリアルタイムトレースを行うデバッグ装置と、
を備えることを特徴とするトレースシステム。
【請求項２】
前記メモリーは、ＤＲＡＭであり、
前記読み出し回路は、前記メモリーのリフレッシュ動作の直前または直後に前記トレースデータの読み出しを行うこと、
を特徴とする請求項１記載のトレースシステム。
【請求項３】
前記読み出し回路は、ＦＩＦＯの順番で前記トレースデータを読み出すことを特徴とする請求項１または請求項２記載のトレースシステム。
【請求項４】
プロセッサーと、
メモリーコントローラーとを備え、
前記プロセッサーは、トレースデータを前記メモリーコントローラーへ出力し、
前記メモリーコントローラーは、前記トレースデータを、前記ＩＣチップに着脱可能なメモリーにおける、デバック装置へトレースデータを読み出す読み出し回路による読み出しが可能な所定の記憶領域に書き込むこと、
を特徴とするＩＣチップ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トレースシステムおよびＩＣチップに関するものである。
【背景技術】
【０００２】
プロセッサーを内蔵したシステムＬＳＩ（Large Scale Integrated circuit）などのＩＣ（Integrated Circuit）チップをデバックする際に、インサーキットエミュレーター（ＩＣＥ：In-Circuit Emulator）を使用してトレースおよびデバッグを行うことがある（例えば特許文献１参照）。
【０００３】
インサーキットエミュレーターを使用する場合、一般的に、インサーキットエミュレーターとＩＣチップとの接続およびデータ転送には、ＪＴＡＧ（Joint Test Action Group）インターフェイスや専用インターフェイスなどが使用される（例えば特許文献２参照）。
【０００４】
図２は、トレースシステムの一例を示すブロック図である。図２に示すように、ＩＣチップ１０１では、ＣＰＵ（Central Processing Unit）１１１がシステムバス１１２に接続されており、システムバス１１２に、外部のＤＲＡＭ（Dynamic Random Access Memory）１０２のメモリーコントローラー１１３、および外部接続用のペリフェラルインターフェイス１１４が接続されている。
【０００５】
さらに、図２に示すシステムでは、ＩＣチップ１０１に、トレースに必要なトレースデータ（ＣＰＵ１１１で実行される各ステップでの命令、データ値、データアドレス、プログラムカウンターなどのレジスターの値などの情報）を転送するためのデバッグインターフェイス１１５が内蔵されており、そのデバッグインターフェイス１１５に、インサーキットエミュレーターなどのデバッグ装置１０３が接続され、ＣＰＵ１１１は、トレースデータをデバッグインターフェイス１１５に出力し、デバッグインターフェイス１１５は、そのトレースデータをデバッグ装置１０３に出力する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平８−６９２０号公報
【特許文献２】特開２０１０−２３１８１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、ＪＴＡＧインターフェイスでは、データの転送速度が比較的遅いため、リアルタイムでのトレースが困難である場合がある。また、図２に示すようにして専用インターフェイスを使用してリアルタイムトレースを行う場合、インサーキットエミュレーターとの接続のために、多くのピンをＩＣチップに設けることになるため、ＩＣチップのコストが増大してしまう。
【０００８】
本発明は、上記の問題に鑑みてなされたものであり、コストアップを回避しつつ、リアルタイムトレースを実行可能なトレースシステムおよびＩＣチップを得ることを目的とする。
【課題を解決するための手段】
【０００９】
本発明に係るトレースシステムは、プロセッサーおよびメモリーコントローラーを内蔵し、前記プロセッサーがトレースデータを前記メモリーコントローラーへ出力し、前記メモリーコントローラーが前記トレースデータを、前記ＩＣチップに着脱可能なメモリーの所定の記憶領域に書き込むＩＣチップと、前記メモリーの所定の記憶領域から前記トレースデータを読み出す読み出し回路と、前記読み出し回路により読み出された前記トレースデータに基づいて、前記プロセッサーのリアルタイムトレースを行うデバッグ装置とを備える。
【００１０】
本発明に係るＩＣチップは、プロセッサーと、メモリーコントローラーとを備える。そして、前記プロセッサーは、トレースデータを前記メモリーコントローラーへ出力し、前記メモリーコントローラーは、前記トレースデータを、前記ＩＣチップに着脱可能なメモリーにおける、デバック装置へトレースデータを読み出す読み出し回路による読み出しが可能な所定の記憶領域に書き込む。
【発明の効果】
【００１１】
本発明によれば、コストアップを回避しつつ、リアルタイムトレースを実行可能なトレースシステムおよびＩＣチップを得ることができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、本発明の実施の形態に係るトレースシステムの構成を示すブロック図である。
【図２】図２は、トレースシステムの一例を示すブロック図である。
【発明を実施するための形態】
【００１３】
以下、図に基づいて本発明の実施の形態を説明する。
【００１４】
図１は、本発明の実施の形態に係るトレースシステムの構成を示すブロック図である。
図１に示すトレースシステムは、ＩＣ（Integrated Circuit）チップ１、ＤＲＡＭ２、読み出し回路３、およびデバッグ装置４を備える。
【００１５】
ＩＣチップ１は、ＣＰＵ１１と、システムバス１２でＣＰＵ１１に接続されたメモリーコントローラー１３と、システムバス１２でＣＰＵ１１に接続されたペリフェラルインターフェイス１４とを備える。
【００１６】
ＣＰＵ１１は、プログラムに記述された動作（ペリフェラルインターフェイス１４に対するデータ入出力、ＤＲＡＭ２を使用したデータ処理など）を実行するプロセッサーである。デバッグ時、ＣＰＵ１１は、プログラムの実行中に、システムバス１２を介して、トレースデータをメモリーコントローラー１３へ出力する。メモリーコントローラー１３は、ＤＲＡＭ２用のメモリーコントローラーであって、そのトレースデータを、外部のＤＲＡＭ２の所定の記憶領域２１に書き込む。ペリフェラルインターフェイス１４は、周辺デバイスを接続されその周辺デバイスとデータ通信するための回路である。
【００１７】
例えば、ＣＰＵ１１は、トレースデータをパケット化して、メモリーコントローラー１３へ送信し、その際、パケットに、トレースデータを示す識別子を付加しておき、メモリーコントローラー１３は、その識別子を有するパケットを受け付けると、パケットからトレースデータを抽出し、所定の記憶領域２１をリングバッファーとして使用して、順番にトレースデータを書き込んでいく。
【００１８】
なお、ＣＰＵ１１は、デバッグ時、最も良好な静的タイミングを得られるハードウェアデバイスを使用して、通常動作より高速に動作させる。
【００１９】
なお、ＤＲＡＭ２は、ソケットなどにより、ＩＣチップ１に対して着脱可能となっており、デバッグ時には、読み出し回路３が直接接続されたデバッグ専用のＤＲＡＭがＤＲＡＭ２として使用される。また、ＤＲＡＭ２は、ＤＩＭＭ（Dual Inline Memory Module）のＤＲＡＭである。
【００２０】
読み出し回路３は、ＤＲＡＭ２の所定の記憶領域２１からトレースデータを読み出す。この実施の形態では、読み出し回路３は、ＤＲＡＭ２のリフレッシュ動作の直前または直後にトレースデータの読み出しを行う。リフレッシュ動作時はＣＰＵ１１からＤＲＡＭ２へのアクセスがないため、リフレッシュ動作の直前または直後にトレースデータの読み出しを行うことで、トレースデータの読み出しがＣＰＵ１１からのＤＲＡＭ２へのアクセスに影響を与えにくい。
【００２１】
なお、リフレッシュ動作のタイミングは、メモリーコントローラー１３からＤＲＡＭ２への制御信号を検出して特定される。つまり、読み出し回路３は、メモリーコントローラー１３からＤＲＡＭ２への制御信号を検出して、トレースデータの読み出しタイミングを特定している。
【００２２】
また、この実施の形態では、読み出し回路３は、ＦＩＦＯ（First-In First-Out）の順番でトレースデータを読み出す。
【００２３】
また、この実施の形態では、読み出し回路３は、メモリーコントローラー１３との間で排他制御を行い、メモリーコントローラー１３がＤＲＡＭ２にアクセスしていない期間に、トレースデータの読み出しを行う。
【００２４】
デバッグ装置４は、読み出し回路３により読み出されたトレースデータに基づいて、ＣＰＵ１１のリアルタイムトレースを行うインサーキットエミュレーターである。
【００２５】
次に、本実施の形態のトレースシステムの動作について説明する。
【００２６】
デバッグ時において、ＣＰＵ１１が、所定のプログラムを実行すると、随時、トレースデータをメモリーコントローラー１３に出力する。メモリーコントローラー１３は、トレースデータを受け付けると、ただちにＤＲＡＭ２の所定の記憶領域２１にそのトレースデータを書き込んでいく。
【００２７】
他方、読み出し回路３は、ＦＩＦＯの順でＤＲＡＭ２のその記憶領域２１からトレースデータを読み出し、デバッグ装置４へ出力していく。デバッグ装置４は、順次入力されるトレースデータに基づいてリアルタイムトレースを行う。
【００２８】
以上のように、上記実施の形態によれば、ＩＣチップ１は、ＣＰＵ１１およびメモリーコントローラー１３を内蔵し、ＣＰＵ１１がトレースデータをメモリーコントローラー１３へ出力し、メモリーコントローラー１３がトレースデータを、ＩＣチップ１に着脱可能なＤＲＡＭ２の所定の記憶領域２１に書き込む。そして、読み出し回路３は、ＤＲＡＭ２のその記憶領域２１からトレースデータを読み出し、デバッグ装置４は、読み出し回路３により読み出されたトレースデータに基づいて、ＣＰＵ１１のリアルタイムトレースを行う。
【００２９】
これにより、デバッグ用のピンを別途設ける必要なく、帯域の広いメモリー用のバスを使用してトレースデータの転送を行うので、コストアップを回避しつつ、リアルタイムトレースが実行可能となる。
【００３０】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【産業上の利用可能性】
【００３１】
本発明は、例えば、システムＬＳＩのデバッグに適用可能である。
【符号の説明】
【００３２】
１  ＩＣチップ
３  読み出し回路
４  デバッグ装置
１１  ＣＰＵ（プロセッサーの一例）
１３  メモリーコントローラー
【図１】
2016091277.tif 000003
【図２】
2016091277.tif 000004