(57)【要約】【課題】デバッグ処理用プログラムの内容を用途に応じて容易に変更可能にし、低コストでデバッグ処理を実行可能にする。【解決手段】デバッグあるいは性能測定を行うプログラムは外部端末装置３から通信I/F2を介して携帯端末装置1のRAM30に転送され、格納される。携帯端末装置1のCPU11はRAM30からこのプログラムを読み出し、その目的に応じた設定をデバッグモジュール12に対して行うと共にデバッグモジュール12の動作制御を開始する。性能測定では、前記プログラムがカウンタ値を定期的にデバッグモジュール12のカウンタレジスタから読み出して外部端末装置3へ転送する。デバッグでは、デバッグモジュール12の内部メモリ123に保存されたレジスタ情報・実行履歴情報を読み出して外部端末装置3へ転送する。外部端末装置3はデバッグモジュール12から転送された性能測定情報やデバッグ情報を処理する。【選択図】図１
2008282189.tif 000002
【特許請求の範囲】
【請求項１】
装置に実装された各種制御プログラムを格納するＲＯＭと、該ＲＯＭに格納された各種制御プログラムを実行するＣＰＵおよび該ＣＰＵにより実行制御されるデバッグモジュールを備えたオンチップデバッグ機能付きマイクロプロセッサと、前記ＣＰＵが前記ＲＯＭに格納された各種制御プログラムを実行する際に作業領域として使用するＲＡＭを備えている情報処理装置と、該情報処理装置に実装された前記制御プログラムのデバッグあるいは性能測定を行う機能を有する外部端末装置と、前記マイクロプロセッサと接続されて前記外部端末装置との間のインタフェース機能を有する通信Ｉ／Ｆとによって構成され、前記ＣＰＵに、前記外部端末装置から前記通信Ｉ／Ｆを介して転送されたデバッグ処理用プログラムを前記ＲＡＭの所定領域に格納する処理、および該ＲＡＭから読み出した前記デバッグ処理用プログラムに従って前記デバッグモジュールを制御して前記外部端末装置から指定されたデバッグあるいは性能評価のためのデータを取得して前記外部端末装置へ送信する処理を実行させる手段を備えていることを特徴とするデバッグシステム。
【請求項２】
前記デバッグモジュールは、前記マイクロプロセッサ内の任意のハードウェアモジュールのバスアクセスを監視しそのアクセス数をカウントするカウンタ部と、前記マイクロプロセッサ内の任意のハードウェアイベントを監視するイベント制御部と、前記イベント発生時のレジスタ内容またはメモリ内容および前記イベントまでの実行履歴を保存する内部メモリを備えていることを特徴とする請求項１に記載のデバッグシステム。
【請求項３】
前記情報処理装置は、携帯端末装置であることを特徴とする請求項１または２に記載のデバッグシステム。
【請求項４】
実装された各種制御プログラムを格納するＲＯＭと、該ＲＯＭに格納された各種制御プログラムを実行するＣＰＵおよび該ＣＰＵにより実行制御されるデバッグモジュールを備えたオンチップデバッグ機能付きマイクロプロセッサと、前記ＣＰＵが前記ＲＯＭに格納された各種制御プログラムを実行する際に作業領域として使用するＲＡＭと、前記ＣＰＵに、外部端末装置から通信Ｉ／Ｆを介して転送されたデバッグ処理用プログラムを前記ＲＡＭの所定領域に格納する処理、および該ＲＡＭから読み出した前記デバッグ処理用プログラムに従って前記デバッグモジュールを制御することにより前記外部端末装置から指定されたデバッグあるいは性能評価のためのデータを取得して前記外部端末装置へ送信する処理を実行させる手段を備えていることを特徴とする情報処理装置。
【請求項５】
前記デバッグモジュールは、前記マイクロプロセッサ内の任意のハードウェアモジュールのバスアクセスを監視しそのアクセス数をカウントするカウンタ部と、前記マイクロプロセッサ内の任意のハードウェアイベントを監視するイベント制御部と、前記イベント発生時のレジスタ内容またはメモリ内容および前記イベントまでの実行履歴を保存する内部メモリを備えていることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記情報処理装置は、携帯端末装置であることを特徴とする請求項４または５に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御プログラムによって各種動作制御が実行される携帯端末装置等の情報処理装置に関し、特に装置内蔵の制御プログラムのデバッグあるいは性能測定技術に関する。
【背景技術】
【０００２】
携帯電話機等の携帯端末装置の開発段階におけるデバッグ評価ではＩＣＥ（In- Circuit Emulator）が使用されるが、通常、ＩＣＥを使用してデバッグを行う場合には、携帯端末装置内のＣＰＵを取り除いてＩＣＥと接続可能な評価用チップを作製し、目的の制御対象である機器にこの評価用チップを搭載した状態でＩＣＥと接続して、デバッグのための各種処理を実行している。
【０００３】
しかし、ＩＣＥを用いてデバッグを行うためには特別に評価用チップを作製する必要があり、また、性能測定を行う場合、搭載されるソフトウェアに測定用コードを組み込む必要があるため効率的ではない。さらに、制御用電子装置が組み込まれてしまった装置の形態になると、ＩＣＥを接続することができないため不具合解析に支障がでてくる。一方で、ＭＰＵの高周波数化および装置機能（ソフトウェア）の高機能化・複雑化が進む中で、装置要件として性能を確保することが重要となってきている。
【０００４】
このような問題を解消する手段として、デバッグツールから入力されたデバッグコマンドを実行するためのオンチップデバッグ機能を有する内部デバッグモジュールを内蔵するマイクロコンピュータを備え、デバッグ時に、該マイクロコンピュータ内のデバッグ処理用プログラム格納ＲＯＭに格納されているデバッグ用プログラムを実行することによって所望のデバッグを行う技術が提案されている（例えば特許文献１、２等参照）。
【０００５】
【特許文献１】特開２００６−２３５６９５号公報
【特許文献２】特開２００６−２６８７２７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記特許文献に記載のデバッグシステムによれば、ホストコンピュータからの指令に応じて、マイクロコンピュータ内部に組み込まれたデバッグ用プログラムを実行させることにより、ＩＣＥを用いることなくデバッグが可能となるが、上記特許文献に記載のデバッグシステムでは、デバッグ処理用プログラムをＲＯＭとして内蔵する構成となっているために、用途（例えば実行結果情報取得やバス性能測定など）によってデバッグ処理の内容を変更することが困難である。
【０００７】
ＲＯＭに予め処理の内容に応じた各種デバッグ用プログラムを格納しておくことにより、ＣＰＵが各種のデバッグを実行できるようにすることは可能であるが、デバッグ用プログラムを格納するための専用メモリ容量を大きくする必要があり、その分コストが増加するという問題が生ずる。
【０００８】
本発明は、上記問題点に鑑み、デバッグ処理用プログラムの内容を用途に応じて容易に変更可能にし、比較的低コストで各種デバッグを実行可能にする手段を提供することにある。
【課題を解決するための手段】
【０００９】
本発明のデバッグシステムは、装置に実装された各種制御プログラムを格納するＲＯＭと、該ＲＯＭに格納された各種制御プログラムを実行するＣＰＵおよび該ＣＰＵにより実行制御されるデバッグモジュールを備えたオンチップデバッグ機能付きマイクロプロセッサと、前記ＣＰＵが前記ＲＯＭに格納された各種制御プログラムを実行する際に作業領域として使用するＲＡＭを備えている情報処理装置と、該情報処理装置に実装された前記制御プログラムのデバッグあるいは性能測定を行う機能を有する外部端末装置と、前記マイクロプロセッサと接続されて前記外部端末装置との間のインタフェース機能を有する通信Ｉ／Ｆとによって構成され、前記ＣＰＵに、前記外部端末装置から前記通信Ｉ／Ｆを介して転送されたデバッグ処理用プログラムを前記ＲＡＭの所定領域に格納する処理と、該ＲＡＭから前記デバッグ処理用プログラムを読み出して実行することにより前記デバッグモジュールを制御して前記外部端末装置から指定されたデバッグあるいは性能評価のためのデータを取得して前記外部端末装置へ送信する処理を実行させる手段を備えていることを特徴としている。
【００１０】
また本発明の情報処理装置は、実装された各種制御プログラムを格納するＲＯＭと、該ＲＯＭに格納された各種制御プログラムを実行するＣＰＵおよび該ＣＰＵにより実行制御されるデバッグモジュールを備えたオンチップデバッグ機能付きマイクロプロセッサと、前記ＣＰＵが前記ＲＯＭに格納された各種制御プログラムを実行する際に作業領域として使用するＲＡＭと、前記ＣＰＵに、外部端末装置から通信Ｉ／Ｆを介して転送されたデバッグ処理用プログラムを前記ＲＡＭの所定領域に格納する処理、および該ＲＡＭから読み出した前記デバッグ処理用プログラムに従って前記デバッグモジュールを制御することにより前記外部端末装置から指定されたデバッグあるいは性能評価のためのデータを取得して前記外部端末装置へ送信する処理を実行させる手段を備えていることを特徴としている。
【００１１】
本発明の情報処理装置は、好適には携帯電話機等の携帯端末装置として実現可能である。
【発明の効果】
【００１２】
本発明によれば、携帯端末装置等の情報処理装置に対して、ＩＣＥを使用することなくデバッグが可能となり、また装置要件として重要性を増してきている性能面での評価が装置の形態で、搭載されるソフトウェアに変更を加えることなく行うことが可能となる。
【００１３】
さらに本発明では、デバッグ処理用プログラムを外部端末装置から転送して実行させる形態としているので、デバッグ処理用プログラムの内容を用途（たとえば実行結果取得やバス性能測定など）に応じて容易に変更することができる。
【００１４】
また本発明は、デバッグ機能をオンチップ化したＭＰＵを搭載した情報処理装置において、装置（商品）レベルでの性能測定やデバッグ評価に対して容易に適用可能である。
【発明を実施するための最良の形態】
【００１５】
図１は、本発明を携帯端末装置に適用した実施例を示すブロック構成図である。
【００１６】
図１において、本実施例の携帯端末装置１は、オンチップデバッグ機能を備えたマイクロプロセッサ（ＭＰＵ）１０と、該携帯端末装置１に搭載されたソフトウェアが格納されているＲＯＭ２０と、該ＲＯＭ２０に格納されたソフトウェアをマイクロプロセッサ１０が実行する際に作業領域として使用するとともに、外部（ＰＣ）端末装置３からダウンロードされてマイクロプロセッサ１０により実行されるデバッグ用あるいは性能測定用のプログラムが格納されるＲＡＭ３０を備えている。
【００１７】
マイクロプロセッサ１０は、ＲＯＭ２０に格納されているソフトウェア（制御プログラム）を実行するとともに、ＲＡＭ３０に格納されたデバッグ用あるいは性能測定用のプログラムを実行するＣＰＵ１１と、ＣＰＵ１１がデバッグ用あるいは性能測定用のプログラムを実行する際にＣＰＵ１１により制御されて、ＭＰＵ１０内の任意のハードウェアモジュールのバスアクセスを監視しそのアクセス数をカウントする機能、ＯＳの任意のプロセスを監視しその実行時間をカウントする機能、ＭＰＵの任意のハードウェアイベントを監視しそのイベント発生時のレジスタ内容やメモリ内容およびイベントまでの実行履歴を保存する機能を有するデバッグモジュール１２を備えている。
【００１８】
そのためデバッグモジュール１２には、ＭＰＵ１０内の任意のハードウェアモジュールのバスアクセスを監視しそのアクセス数をカウントするカウンタ部１２１と、ＭＰＵ１０の任意のハードウェアイベントを監視するイベント制御部１２２と、イベント発生時のレジスタ内容やメモリ内容およびイベントまでの実行履歴を保存する内部メモリ１２３を備えている。
【００１９】
デバッグ用あるいは性能測定用のプログラムは、携帯端末装置側のシステムが起動した状態であれば、外部端末装置の通信機能（ＵＳＢなど）を用いて、外部端末装置３から通信インタフェース（Ｉ／Ｆ）２を介して適宜携帯端末装置１に転送することができる。外部端末装置３は、デバッグ用あるいは性能測定用のプログラムを携帯端末装置１へ転送し、該プログラムに従って実行された結果の情報をデバッグモジュールから受信して処理する。
【００２０】
次に、図１を参照して本実施例の動作について説明する。
【００２１】
まず、外部端末装置３からデバッグあるいは性能測定を行うためのプログラムが通信インタフェース（Ｉ／Ｆ）２を介して携帯端末装置１に転送され、携帯端末装置１内のＲＡＭ３０に格納される。携帯端末装置１のＣＰＵ１１は、ＲＡＭ３０からこのプログラムを読み出し、プログラムの目的に応じた設定をデバッグモジュール１２に対して行い、プログラムに従ってデバッグモジュール１２の動作制御を開始する。
【００２２】
性能測定では、前記プログラムがカウンタ値を定期的にデバッグモジュール１２のカウンタレジスタから読み出し、通信Ｉ／Ｆ２を介して外部端末装置３へ転送する。デバッグモジュール１２は、メモリ(フラッシュＲＯＭやＲＡＭ)へのアクセス累積カウンタ（カウンタ部）１２１を有しており、この累積カウンタを定期的(一定周期)で読み出すと、一定周期単位でメモリにどれだけのアクセスを行っているかがわかるため、どれだけのアクセス性能があるかを測定することができる。
【００２３】
また、デバッグでは、デバッグモジュール１２の内部メモリ１２３に保存されたレジスタ情報・実行履歴情報を読み出し、通信Ｉ／Ｆ２を介して外部端末装置３へ転送する。外部端末装置３では、デバッグモジュール１２から転送された性能測定情報やデバッグ情報を処理する。
【００２４】
このように本実施例では、ＭＰＵ１０がもつデバッグモジュール１２の機能を用い、外部端末装置３から転送され実行されるプログラムによりデバッグあるいは性能測定を行うことができる構成になっているため、評価ボードだけでなく装置の形態となってもＩＣＥを使用することなく、さらに装置に搭載されたソフトウェアに変更を加えることなく、デバッグ作業・性能検証作業を実施することができる。
【００２５】
即ち本実施例では、目的（デバッグあるいは性能測定）に応じた作業を実施するソフトウェアモジュールを外部端末装置３から携帯端末装置１のＲＡＭに転送して格納し、携帯端末装置１のＯＳの機能を使ってそのソフトウェアモジュールが起動される。ＯＳの機能は、通信Ｉ／Ｆ２を介してリモート接続された外部端末装置３から操作することができるので、動的にソフトウェアモジュールを起動させることができ、既に搭載されているソフトウェアに変更を加える必要はない。
【００２６】
また、デバッグモジュール１２の機能として、メモリ(フラッシュＲＯＭ、ＲＡＭ)アクセスのカウント機能、任意のイベント(割込み)にトラップをかける機能およびイベントまでの実行履歴の保存機能を備えることにより、外部（ＰＣ）端末から転送されるプログラムによって、デバッグあるいは性能測定ができるので、用途に応じて外部（ＰＣ）端末から転送されるプログラムを容易に変更すことができ、またリアルタイムに、装置からデバッグ情報や性能測定情報を取得することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施例を示すブロック構成図である。
【符号の説明】
【００２８】
１  携帯端末装置
２  通信Ｉ／Ｆ
３  外部端末装置
１０  マイクロプロセッサ（ＭＰＵ）
１１  ＣＰＵ
１２  デバッグモジュール
１３  内部バス
２０  ＲＯＭ
３０  ＲＡＭ
４０  外部バス
１２１  カウンタ部
１２２  イベント制御部
１２３  内部メモリ
【図１】
2008282189.tif 000003