JP5979709B2 - エミュレーション装置、エミュレーション方法、プログラム、および組み込み機器の開発支援システム - Google Patents
エミュレーション装置、エミュレーション方法、プログラム、および組み込み機器の開発支援システム Download PDFInfo
- Publication number
- JP5979709B2 JP5979709B2 JP2012081229A JP2012081229A JP5979709B2 JP 5979709 B2 JP5979709 B2 JP 5979709B2 JP 2012081229 A JP2012081229 A JP 2012081229A JP 2012081229 A JP2012081229 A JP 2012081229A JP 5979709 B2 JP5979709 B2 JP 5979709B2
- Authority
- JP
- Japan
- Prior art keywords
- embedded
- register
- pseudo
- peripheral device
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
開発環境においては、実際の組み込み機器の代わりに、専用のエミュレータを使用してソフトウェアの検証や試験(デバッグ)を行う。
ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するエミュレーション装置であって、
前記組み込みプログラムを記憶するプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置と、
前記組み込みプログラムを受け付けるプログラム受付手段と、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させる実行手段と、を備え、
前記組み込みプログラムは、前記ARMプロセッサと前記周辺装置を動作させる命令を含む実行形式のプログラムであり、
前記疑似デバイスレジスタ領域は、前記組み込みプログラムの各命令の実行時にアクセスすべき、前記周辺装置の動作を模擬する処理がそれぞれ割り当てられるレジスタビットを有し、
前記実行手段は、前記組み込みプログラムから順次前記命令を読み出し、各命令を、割り当てられた前記疑似デバイスレジスタの前記レジスタビットに変換し、当該レジスタビットにアクセスし、前記アクセスされた前記レジスタビットに応じた前記周辺装置の動作を疑似する処理を実行させる。
ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するコンピュータを用いたエミュレーション方法であって、
前記コンピュータは、前記組み込みプログラムを記憶する組み込みプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置を備え、
前記組み込みプログラムが、前記ARMプロセッサと前記周辺装置を動作させる命令を含む実行形式のプログラムであり、
前記疑似デバイスレジスタ領域が、前記組み込みプログラムの各命令の実行時にアクセスすべき、前記周辺装置の動作を模擬する処理がそれぞれ割り当てられるレジスタビットを有し、
前記コンピュータが、
前記組み込みプログラムを受け付け、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させ、
前記組み込みプログラムから順次前記命令を読み出し、各命令を、割り当てられた前記疑似デバイスレジスタの前記レジスタビットに変換し、当該レジスタビットにアクセスし、前記アクセスされた前記レジスタビットに応じた前記周辺装置の動作を疑似する処理を実行させる。
ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するエミュレーション装置を実現するコンピュータが実行するプログラムであって、
前記コンピュータは、前記組み込みプログラムを記憶する組み込みプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置を備え、
前記組み込みプログラムは、前記ARMプロセッサと前記周辺装置を動作させる命令を含む実行形式のプログラムであり、
前記疑似デバイスレジスタ領域は、前記組み込みプログラムの各命令の実行時にアクセスすべき、前記周辺装置の動作を模擬する処理がそれぞれ割り当てられるレジスタビットを有し、
前記コンピュータに、
前記組み込みプログラムを受け付ける手順、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させる手順、
前記組み込みプログラムから順次前記命令を読み出し、各命令を、割り当てられた前記疑似デバイスレジスタの前記レジスタビットに変換し、当該レジスタビットにアクセスし、前記アクセスされた前記レジスタビットに応じた前記周辺装置の動作を疑似する処理を実行させる手順を実行させるためのものである。
図1は、本発明の実施の形態に係るエミュレーション装置100の構成を示す機能ブロック図である。
本発明の実施の形態に係るエミュレーション装置100は、ARMプロセッサをPC等のコンピュータ上でエミュレーションし、開発対象のARMプロセッサの組み込み機器をPC上で疑似的に実現させる。開発対象の組み込み機器は、表示器、操作スイッチ、通信装置、またはセンサ等、様々な周辺ハードウェアを組み込むことが想定される。本発明の実施の形態に係るエミュレーション装置100は、ARMプロセッサ、メモリ、そして、各種周辺ハードウェアをソフトウェアで構築する。これにより、開発対象の各種組込み機器を、PC上でソフトウェアとして扱い、簡易に再現し、デバッグすることが可能になる。
また、各図において、本発明の本質に関わらない部分の構成については省略してあり、図示されていない。
また、エミュレーション装置100は、仮想サーバなどにより構成されてもよい。
併せて、エミュレーション対象の実機器の周辺ハードウェアを疑似化した、対応する疑似チップ14または疑似デバイス16を構成し、ARMプロセッサの組込み機器の動作をPC10上で再現して確認できるようにしている。
エミュレーション装置100の記憶装置110の疑似デバイスレジスタ領域114には、ARMプロセッサと周辺装置の動作を疑似する処理が割り当てられる。
ベクタ・テーブル領域22は、疑似ARM CPU12において、例外発生により分岐するときのプログラムのスタートアドレスを格納する。
なお、本実施形態では、この疑似チップ・レジスタを保持するチップを疑似チップ14(図3)と呼び、その他のデバイス(疑似デバイス16(図3)と呼称)と区別している。
そして、実行部106が、組み込みプログラムの命令を組み込みプログラム記憶領域112から読み出して順に実行することとなる(ステップS13)。
その際、実行部106は、命令を、その命令の実行時にアクセスすべき、周辺装置の動作を模擬する処理が割り当てられた疑似デバイスレジスタ領域114のレジスタビットに変換し、そのレジスタビットにアクセスする(ステップS15)。そして、実行部106は、アクセスされたレジスタビットに応じて、周辺装置(図3の疑似デバイス16または疑似チップ14)の動作を疑似する処理を実行して、組み込み機器の動作を再現する(ステップS17)。
なお、ステップS13およびステップS15は、組み込みプログラムの命令や割り込み発生毎に繰り返し行うことができる。
図6は、本発明の実施の形態に係るエミュレーション装置200の構成を示す機能ブロック図である。
本実施形態のエミュレーション装置200は、上記実施の形態とは、周辺装置の入出力を模擬し、周辺装置の動作を確認可能なユーザインタフェースを提供する点で相違する。
疑似デバイスレジスタ領域114に割り当てられた周辺装置(図3の疑似チップ14または疑似デバイス16)の動作を疑似する処理は、周辺装置(図3の疑似チップ14または疑似デバイス16)の操作または動作に対応する入力または出力を模擬する処理を含む。
入出力模擬部202は、周辺装置(図3の疑似チップ14または疑似デバイス16)の入力または出力の模擬結果を、周辺装置(図3の疑似チップ14または疑似デバイス16)の操作または動作として確認可能なユーザインタフェースを周辺装置(図3の疑似チップ14または疑似デバイス16)毎に提供する。
入出力模擬部202が、周辺装置(図3の疑似チップ14または疑似デバイス16)の構成に従って、ユーザインタフェースを組み合わせ、組み込み機器の各周辺装置(図3の疑似チップ14または疑似デバイス16)の入力または出力を模擬し、組み込み機器の周辺装置(図3の疑似チップ14または疑似デバイス16)の操作または動作を確認できるユーザインタフェースを提供する。
図7は、本実施形態のエミュレーション装置200の動作の一例を示すフローチャートである。
図7に示すように、本実施形態のエミュレーション装置200は、図5の上記実施形態のエミュレーション装置100のフローチャートと同様なステップS11〜ステップS17を有するとともに、さらに、ステップS21およびステップS23を有する。
なお、ステップS13、ステップS15、およびステップS21、ステップS23等は、命令や割り込み発生毎に繰り返し行うことができる。
また、入出力模擬部202は、上述したように、ユーザの操作を受け付けることで発生する割り込みに従い、組み込みプログラムが実行する命令に対しても、ステップS13、ステップS15、およびステップS21、ステップS23等の動作を行うことができる。
図8は、本発明の実施の形態に係るエミュレーション装置250の構成を示す機能ブロック図である。
本実施形態のエミュレーション装置250は、上記実施の形態とは、組み込み機器の搭載可能な予め複数種類の周辺装置を疑似デバイスレジスタ領域に割り当て、周辺装置を選択して組み込み機器をカスタマイズしてエミュレーションできる点で相違する。本実施形態のエミュレーション装置250は、図6の実施形態のエミュレーション装置200の構成に加え、さらに、構成受付部252を備える。なお、本実施形態のエミュレーション装置250は、図1の上記実施形態のエミュレーション装置100の構成に、さらに、構成受付部252を備えた構成としてもよい。
なお、図では、3つの周辺装置に対応する3つの疑似デバイスレジスタ領域114a、114b、および114cを示しているが、これに限定されるものではない。少なくとも1つの周辺装置に対応する疑似デバイスレジスタ領域114を含むことができる。また、本実施形態では、特に区別する必要がない場合、疑似デバイスレジスタ領域114と呼ぶものとする。
受け付けた周辺装置の構成に従って、実行部106が、該当する周辺装置の疑似デバイスレジスタ領域114を、組み込みプログラムの実行時に使用し、周辺装置の構成をカスタマイズした前記組み込み機器をエミュレーションする。
さらに、図10に示すように、本実施形態のエミュレーション装置250において、構成受付部252は、組み込み機器の構成を編集する編集画面290を表示し、編集画面290上で周辺装置の構成の編集を受け付けることができる。
すなわち、構成受付部252が受け付けた周辺装置の構成に従って、予め定義されている疑似デバイスレジスタ領域114の中から、選択された周辺装置に対応する疑似デバイスレジスタ領域114を使用して、実行部106が組み込み機器をエミュレーションすることができる。
ユーザは、周辺装置の構成を編集しながら、組み込み機器の構成をカスタマイズして、組み込み機器のエミュレーションを行うことができる。そして、カスタマイズした組み込み機器の周辺装置は、画面上にその入出力を模擬するユーザインタフェースを表示できるので、組み込み機器を疑似的に操作したり、動作させたりすることができる。
ARMプロセッサを利用した組み込みシステムの開発支援システムとして、効率よく低コストで組み込み機器のエミュレーションを実現できる。または、本発明は、組み込み機器の教育支援システムとして、操作性もよく、組み込み機器の開発技術の習得に大きく貢献でき得る。
上記説明した本発明の実施の形態に係るエミュレーション装置の実施例として、組み込み機器としてストップウォッチを例に、以下、図8〜図32を用いて説明する。
本実施例では、図8の上記実施形態のエミュレーション装置250を用いて、組み込み機器のストップウォッチ300をエミュレートするものとする。本実施例では、エミュレーション装置250は、図2で説明したコンピュータ10として、汎用のパーソナルコンピュータを用いる。
図11に示すように、ストップウォッチ300は、疑似ARM CPU12と、RAM(Random Access Memory)304と、割込みコントローラ306と、インターバル・タイマ308と、INPUTコントローラ310と、LCD(Liquid Crystal Display)コントローラ312と、LCD314と、を備える。図では、ストップウォッチ300の各構成要素は、バス316を介して接続される。
本実施例では、エミュレーションを操作し、その結果を表示するエミュレーション画面400と、エミュレーション対象のストップウォッチ300の状態を表示する組み込み機器操作画面410と、を画面表示できるものとする。画面構成や表示内容は、一例であり、これに限定されるものではない。たとえば、組み込み機器操作画面410では、ストップウォッチ外観図412として、実機を模擬した画像を表示しているが、外観は必ずしも必要ではなく、各種操作ボタンと表示器を模擬する画像が表示されればよい。
PC10の入力装置150を用いて、これらの各種操作ボタンに対応する画像を操作すると、操作を受け付け、ストップウォッチ300の動作をエミュレートすることができるようになっている。
疑似メモリ20のメモリ構成は、図4で説明したように、ベクタ・テーブル領域22と、デバイス領域24と、プログラム領域26と、を含む。
本実施例では、図4で示した疑似メモリ20の00000000H〜0000003FH番地の64バイト領域は、ベクタ・テーブル領域22として予約される。ベクタ・テーブル領域22は、疑似ARM CPU12における例外発生により分岐するときのプログラム・スタート・アドレスを格納する。
ベクタ・テーブルには、32ビットアドレスで設定する。
本実施例では、図4で示した疑似メモリ20の00010000H〜0001FFFFH番地の64Kバイト領域はデバイス領域24として予約されている。この領域にはチップ・レジスタが配置される。チップ・レジスタは、32ビット境界で整列され配置される。アクセスサイズ等の詳細は、図16〜図29を用いてチップ・レジスタ毎に後述する。
本実施例において、図4のデバイス領域24は、クロック制御レジスタは含まない。クロック周波数は、組み込み機器の初期設定により決定する。
疑似チップ14または疑似デバイス16は、エミュレーション装置250のPC10から疑似ARM CPU12に供給されるクロックを基準として、クロック分周して動作する。
(割込みコントローラ306)
割込みコントローラ306について、以下説明する。
<機能>
要求された割込みを保持し、疑似ARM CPU12への割り込み(IRQ)通知を行う。
割込みコントローラ306は、図4のデバイス領域24に、割込み要求フラグ・レジスタ、割込み要求フラグ・レジスタ、割込みイネーブル・フラグ・レジスタ、および割込みクリア・レジスタを含むチップレジスタとして割り当てられる。
割込み要求フラグは、割込み要求の状況を保持するフラグである。対応する割込み要求の発生あるいは命令によりセットされ、割込み要求の受付け時、RESET入力時、あるいは命令の実行によりクリアされる。
同時に複数の割込み要求がセットされている場合、ビット番号の小さい要求から受付けられる。
割込み要求フラグ・レジスタの詳細を図16に示す。
図16(a)は、割込み要求フラグ・レジスタの構成を示す。
図16(b)は、割込み要求フラグ・レジスタの属性を示す。
図16(c)は、割込み要求フラグ・レジスタの機能を示す。
割り込み要因フラグは、受付けた割り込み要因を保持するフラグである。割込み受付け時にセットされ、RESET入力時あるいは命令の実行によりクリアされる。割り込み要因がセットされていると以後の割込み受付けは抑制される。
割込み要因フラグ・レジスタの詳細を図17に示す。
図17(a)は、割込み要因フラグ・レジスタの構成を示す。
図17(b)は、割込み要因フラグ・レジスタの属性を示す。
図17(c)は、割込み要因フラグ・レジスタの機能を示す。
割込みイネーブル・フラグは、対応割込みの許可/禁止をプログラムから設定する。割込み許可する場合にセットし、禁止する場合にクリアする。
割込みイネーブル・フラグ・レジスタの詳細を図18に示す。
図18(a)は、割込みイネーブル・フラグ・レジスタの構成を示す。
図18(b)は、割込みイネーブル・フラグ・レジスタの属性を示す。
図18(c)は、割込みイネーブル・フラグ・レジスタの機能を示す。
割込み要因をプログラムからクリアするレジスタである。このレジスタに書込むことで現在の割込み要因および割り込み要求はクリアされる。
割込みクリア・レジスタの詳細を図19に示す。
図19(a)は、割込みクリア・レジスタの構成を示す。
図19(b)は、割込みクリア・レジスタの属性を示す。
図19(c)は、割込みクリア・レジスタの機能を示す。
割込みコントローラ306の動作を以下に示す。
(1) 割込み対応入力ポートおよびインターバル・タイマの割込み要求(内部ポート)を割込み要求フラグに反映。
割込みイネーブル・フラグがクリアされている要求はセットされない。
この処理で内部ポートは自動的にクリアされる(要求セットの有無は無関係)。
(2) 割込み要求フラグにセットされている要求がある場合疑似ARM CPU12に割り込みを通知。
割込み要求フラグはビット番号が小さい要求から処理する。
割込み許可フラグがクリアされている場合、当該要求は処理せず要求フラグをクリアする。
疑似ARM CPU12が割込みを受付けた場合は割込み要求フラグをクリアし、割込み要因フラグをセットする。
割込み要因フラグがセットされている場合は、疑似ARM CPU12に対する割込み通知は行われない。
ステータスレジスタ(CPSR)のIビットがセットされている場合は、割込み(IRQ)を受付けない。割込みを有効にするには、特権モードでIビットをクリアする。
疑似ARM CPU12のステータスレジスタと、ステータスフラグの構成を図20に示す。
図20(a)は、疑似ARM CPU12のステータスレジスタ構成を示す。
図20(b)は、疑似ARM CPU12のステータスフラグ構成を示す。
図20(c)は、疑似ARM CPU12のステータスフラグの説明を示す。
(1) R14_irq に次実行命令アドレス+4をセット
(2) SPSR_irq に現ステータスレジスタ(CPSR)をコピー
(3) ステータスレジスタ(CPSR) のCPUモードにIRQモードをセット
(4) ステータスレジスタ(CPSR) のTビットをクリア(ARM命令セット)
(5) ステータスレジスタ(CPSR) のIビットをセット(IRQ禁止)
(6) ステータスレジスタ(CPSR) の Aビットをセット(データアボート禁止)
(7) ベクタアドレス(0x00000018)へジャンプ
次の割込みを受付けるためには、割込みコントローラの割込み要因をクリアする必要がある。
割込み要因がセットされていると、次の割込みが抑制される。
割込み要因には、デジタル信号入力ポート(8点)およびインターバル・タイマの2種類がある。
インターバル・タイマ308について、以下説明する。
<機能>
設定した周期で割込み要求をセットする。
インターバル・タイマ308は、図4のデバイス領域24に、カウンタ・レジスタ、インターバル設定レジスタ、およびインターバル・タイマ制御レジスタを含むチップレジスタとして割り当てられる。
カウンタ・レジスタは、インターバル・タイマ308のカウント値を保持する16ビットのレジスタである。
カウンタ・レジスタの詳細を図21に示す。
図21(a)は、カウンタ・レジスタの構成を示す。
図21(b)は、カウンタ・レジスタの属性を示す。
図21(c)は、カウンタ・レジスタの機能を示す。
インターバル設定レジスタは、インターバル・タイマ308のインターバルを設定する16ビットのレジスタである。
インターバル設定レジスタの詳細を図22に示す。
図22(a)は、インターバル設定レジスタの構成を示す。
図22(b)は、インターバル設定レジスタの属性を示す。
図22(c)は、インターバル設定レジスタの機能を示す。
インターバル・タイマ制御レジスタは、インターバル・タイマ308のインターバル・タイマを制御する16ビットのレジスタである。
インターバル・タイマ制御レジスタの詳細を図23に示す。
図23(a)は、インターバル・タイマ制御レジスタの構成を示す。
図23(b)は、インターバル・タイマ制御レジスタの属性を示す。
図23(c)は、インターバル・タイマ制御レジスタの機能を示す。
インターバル・タイマ308の動作を以下に示す。
クロックでタイマをカウントアップし、設定インターバルと比較する。設定インターバルよりタイマが等しいか大きくなったら割込み要求をセットする。このときタイマは自動的に0に戻る。
タイマ動作制御ビットに0を設定するとカウントを一時停止する。
タイマ動作制御ビットに1を設定するとカウントを開始する。このときカウンタはクリアされない。
タイマ・クリアを1に設定すると、カウンタを0にクリアする。カウンタを0にクリアしたタイミングで、チップがレジスタ値を0に書き換える。したがって、タイマ・クリアが1のときはレジスタにWriteアクセスをしないようにする。
INPUTコントローラ310(デジタル信号入出力)について、以下説明する。
<機能>
入出力信号8点の状態を保持する。
入力あるいは出力を切り替えることができる。入力として使用する場合、割込みを有効に設定すると、割込みコントローラに割込み要求を出力する。
INPUTコントローラ310は、図4のデバイス領域24に、入出力ポート制御レジスタ、割込み制御レジスタ、入力ポート状態レジスタ、および出力ポート状態レジスタを含むチップレジスタとして割り当てられる。
入出力ポート制御レジスタは、入出力ポートの有効/無効を設定する16ビットのレジスタである。
入出力ポート制御レジスタの詳細を図24に示す。
図24(a)は、入出力ポート制御レジスタの構成を示す。
図24(b)は、入出力ポート制御レジスタの属性を示す。
図24(c)は、入出力ポート制御レジスタの機能を示す。
割込み制御レジスタは、入力ポートの割り込みモードを設定する16ビットのレジスタである。
出力ポートとして使用する場合は、設定は無視される。
割込み制御レジスタの詳細を図25に示す。
図25(a)は、割込み制御レジスタの構成を示す。
図25(b)は、割込み制御レジスタの属性を示す。
図25(c)は、割込み制御レジスタの機能を示す。
入力ポート状態レジスタは、入力ポートの状態を保持する16ビットのレジスタである。
入力ポート状態レジスタの詳細を図26に示す。
図26(a)は、入力ポート状態レジスタの構成を示す。
図26(b)は、入力ポート状態レジスタの属性を示す。
図26(c)は、入力ポート状態レジスタの機能を示す。
出力ポート設定レジスタは、出力ポートの状態を設定する16ビットのレジスタである。
出力ポート設定レジスタの詳細を図27に示す。
図27(a)は、出力ポート設定レジスタの構成を示す。
図27(b)は、出力ポート設定レジスタの属性を示す。
図27(c)は、出力ポート設定レジスタの機能を示す。
INPUTコントローラ310の動作を以下に示す。
入力として使用するポートは以下のように動作する。
システムクロックに同期して、外部入力ポートの状態を入力ポート状態レジスタに保持する。入力ポート制御レジスタで無効と設定されているポートの状態は常に0となる。
割込みが有効な場合、入力ポートの状態が変化したタイミング(立ち上がり、立ち下がり、あるいは両エッジ)で割込みコントローラに割込み要求を通知する。
出力として使用するポートは以下のように動作する。
システムクロックに同期して、出力ポート制御レジスタで有効(出力ポートとして使用する)と設定された出力ポート設定レジスタの設定値を外部ポートに出力する。
疑似デバイス16として、ストップウォッチ300は、上述したように、3つのスイッチを有する。しかし、これらのスイッチには、チップレジスタは割り当てない。スイッチが接続されるデジタル信号入力ポート(上記INPUTコントローラ310参照)を対応付ける。
<機能>
押している間のみON状態を保持するスイッチである。離すとOFF状態に戻る。
上述したとおり、スイッチ自体のデバイス領域24への割り当てはない。
デジタル信号入力ポートと接続して使用する。
ここでは、3つのスイッチを3つのデジタル信号入力ポートIN0〜IN3にそれぞれ接続する。
<動作>
たとえば、図26の入力ポート状態レジスタに、スイッチの状態を保持する。接続されているデジタル信号入力ポート経由で、プログラムからスイッチの状態を参照することができる。
LCDコントローラ312およびLCD314について、以下説明する。
<機能>
図12のLCD418の表示機能を提供する。
LCDコントローラ312およびLCD314は、図4のデバイス領域24に、LCD表示モードレジスタ、およびLCD表示データ・メモリレジスタを含むチップレジスタとして割り当てられる。
LCD表示モードレジスタは、LCDの表示モードを制御する16ビットのレジスタである。
LCD表示モードレジスタの詳細を図28に示す。
図28(a)は、LCD表示モードレジスタの構成を示す。
図28(b)は、LCD表示モードレジスタの属性を示す。
図28(c)は、LCD表示モードレジスタの機能を示す。
LCD表示データ・メモリレジスタは、LCDへ表示する内容を格納する16ビットのレジスタである。
LCD表示データ・メモリレジスタの詳細を図29に示す。
図29(a)は、LCD表示データ・メモリレジスタ(0〜127)の構成を示す。
図29(b)は、LCD表示データ・メモリレジスタの属性を示す。
図29(c)は、LCD表示データ・メモリレジスタの機能を示す。
表示データ・メモリレジスタとCOM信号/SEG信号の関係を、図30のLCD表示データ・メモリレジスタとCOM信号/SEG信号の関係に示す。COM信号は表示データ・メモリレジスタのビット(#0〜#15)に接続されている。表示データ・メモリレジスタ0〜127のビットにひとつでも‘1’が書き込まれていれば、対応するCOM信号が選択状態になる。SEG信号は表示データ・メモリレジスタ0〜127に接続されている。表示データ・メモリレジスタの#0〜#15にひとつでも‘1’が書き込まれていれば、対応するSEG信号が選択状態となる。
LCDコントローラ312およびLCD314の動作を以下に示す。
LCD表示モードレジスタのLCDPに1を設定し、LCD表示をONにし、LCDSおよびLCDCを表示領域に合わせて設定する。
設定が完了したら、表示データ・メモリレジスタの点灯したいビットに1を書き込む。
図31に、LCDパネルの例(8×15のLCDパネル)を示す。
図32に、ストップウォッチ300の基本動作シーケンスを示す。
<ループloop[常時]>
まず、アクターとして、オペレータ500(図中、「Operator」と示す)が、エミュレーション装置250を起動し、エミュレーションを開始する(ステップS100)と、ループ[常時]が開始される。
図12の疑似ARM CPU12のエミュレーション画面400において、ストップウォッチ300の処理を記載したロードモジュールをロードし疑似メモリ20上に命令を展開する。
疑似ARM CPU504が、疑似メモリ506上の命令をフェッチし、デコードする(ステップS110)。
疑似ARM CPU504が、疑似メモリ506に命令コードを要求し(ステップS111)、デコードした命令を実行し(ステップS120)、ロード/ストア命令であれば(ステップS113)、疑似メモリ506にアクセス(Read/Write)する(ステップS121)。
疑似メモリ506は、疑似チップ508へのアクセスであれば(ステップS115)、該当する疑似チップ508に通知する(ステップS123)。
クロック管理502は、イベント登録されている疑似チップ508にタイミングを通知する(ステップS200)。
疑似チップ508は、レジスタの内容を解釈して所定の動作(疑似メモリ506へのアクセス(Read/Write)(ステップS210)や疑似デバイス510への通知(ステップS220)など)を行う。
疑似デバイス510は、通知された指令内容を実行し、疑似デバイス508に応答を返す(ステップS221)。
疑似デバイス508は、イベント(応答時間)をクロック管理502に登録する(ステップS230)。
クロック管理502は、応答時間に達したことを疑似チップ508に通知する(ステップS300)。
疑似チップ508は、応答内容を解釈し疑似メモリ506にアクセス(Read/Write)する(ステップS310)。
図33に示すように、疑似デバイス16または疑似チップ14を、図10の編集画面290で選択し、編集することで、他の組み込み機器として動作させることができる。
たとえば、ここでは、LCD、ボリュームスピーカなどを選択することで、図33のミュージックプレーヤ350をエミュレーションすることが可能になる。
このように、組み込み機器の周辺装置として、疑似チップ14または疑似デバイス16を選択して組み込み機器の構成を編集することで、様々な組み込み機器のエミュレーションを行うことが可能になる。
このことにより、多種に亘る教育が可能であり、組込みシステム開発の理解に効果があると考えられる。
また、実機で動作させる前に、動作確認が可能になり、実機のハードウェアの不具合による動作不良と、ソフトウェアのバグによる動作不良を見極め易くなる。
(付記1)
ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するエミュレーション装置を実現するコンピュータが実行するプログラムであって、
前記コンピュータは、前記組み込みプログラムを記憶する組み込みプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置を備え、
前記コンピュータに、
前記組み込みプログラムを受け付ける手順、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させる手順を実行させるためのプログラム。
(付記2)
付記1に記載のプログラムにおいて、
前記記憶装置は、前記組み込み機器が組み込み可能な複数種類の周辺装置毎に、前記周辺装置の動作を疑似する処理をそれぞれ割り当てた複数の前記疑似デバイスレジスタ領域を有し、
前記コンピュータに、さらに、
エミュレーション対象の前記組み込み機器に組み込む周辺装置の構成を受け付ける手順、
受け付けた前記周辺装置の構成に従って、該当する前記周辺装置の前記疑似デバイスレジスタ領域を、前記組み込みプログラムの実行時に使用し、前記周辺装置の構成をカスタマイズした前記組み込み機器をエミュレーションする手順を実行させるためのプログラム。
(付記3)
付記1または2に記載のプログラムにおいて、
前記疑似デバイスレジスタ領域に割り当てられた前記周辺装置の動作を疑似する前記処理は、前記周辺装置の操作または動作に対応する入力または出力を模擬する処理を含み、
前記コンピュータに、
前記周辺装置の入力または出力を模擬する処理の結果に基づいて前記周辺装置の操作または動作を確認できるユーザインタフェースを前記周辺装置毎に提供する手順をさらに実行させ、
前記周辺装置の構成に従って、前記ユーザインタフェースを組み合わせ、前記組み込み機器の各前記周辺装置の入力または出力を模擬し、前記組み込み機器の前記周辺装置の操作または動作を確認できるユーザインタフェースを提供するプログラム。
(付記4)
ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するエミュレーション装置であって、
前記組み込みプログラムを記憶するプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置と、
前記組み込みプログラムを受け付けるプログラム受付手段と、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させる実行手段と、を備えるエミュレーション装置。
(付記5)
付記4に記載のエミュレーション装置において、
前記記憶装置は、前記組み込み機器に組み込み可能な複数種類の周辺装置毎に、前記周辺装置の動作を疑似する処理をそれぞれ割り当てた複数の前記疑似デバイスレジスタ領域を有し、
エミュレーション対象の前記組み込み機器に組み込む周辺装置の構成を受け付ける構成受付手段をさらに備え、
前記構成受付手段が受け付けた前記周辺装置の構成に従って、前記実行手段が、該当する前記周辺装置の前記疑似デバイスレジスタ領域を、前記組み込みプログラムの実行時に使用し、前記周辺装置の構成をカスタマイズした前記組み込み機器をエミュレーションするエミュレーション装置。
(付記6)
付記4または5に記載のエミュレーション装置において、
前記疑似デバイスレジスタ領域に割り当てられた前記周辺装置の動作を疑似する前記処理は、前記周辺装置の操作または動作に対応する入力または出力を模擬する処理を含み、
前記周辺装置の入力または出力を模擬する処理の結果に基づいて前記周辺装置の操作または動作を確認できるユーザインタフェースを前記周辺装置毎に提供する入出力模擬手段をさらに備え、
前記入出力模擬手段が、前記周辺装置の構成に従って、前記ユーザインタフェースを組み合わせ、前記組み込み機器の各前記周辺装置の入力または出力を模擬し、前記組み込み機器の前記周辺装置の操作または動作を確認できるユーザインタフェースを提供するエミュレーション装置。
(付記7)
付記4乃至6いずれか一項に記載のエミュレーション装置において、
パーソナルコンピュータ、サーバコンピュータ、またはタブレット端末を用いて実現されるエミュレーション装置。
(付記8)
付記4乃至7いずれか一項に記載のエミュレーション装置を用いた組み込み機器の開発支援システム。
(付記9)
ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するコンピュータを用いたエミュレーション方法であって、
前記コンピュータは、前記組み込みプログラムを記憶する組み込みプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置を備え、
前記コンピュータが、
前記組み込みプログラムを受け付け、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させるエミュレーション方法。
(付記10)
付記9に記載のエミュレーション方法において、
前記記憶装置は、前記組み込み機器に組み込み可能な複数種類の周辺装置毎に、前記周辺装置の動作を疑似する処理をそれぞれ割り当てた複数の前記疑似デバイスレジスタ領域を有し、
前記コンピュータが、さらに、
エミュレーション対象の前記組み込み機器に組み込む周辺装置の構成を受け付け、
受け付けた前記周辺装置の構成に従って、該当する前記周辺装置の前記疑似デバイスレジスタ領域を、前記組み込みプログラムの実行時に使用し、前記周辺装置の構成をカスタマイズした前記組み込み機器をエミュレーションするエミュレーション方法。
(付記11)
付記9または10に記載のエミュレーション方法において、
前記疑似デバイスレジスタ領域に割り当てられた前記周辺装置の動作を疑似する前記処理は、前記周辺装置の操作または動作に対応する入力または出力を模擬する処理を含み、
前記コンピュータが、
前記周辺装置の入力または出力を模擬する処理の結果に基づいて前記周辺装置の操作または動作を確認できるユーザインタフェースを前記周辺装置毎に提供し、
前記周辺装置の構成に従って、前記ユーザインタフェースを組み合わせ、前記組み込み機器の各前記周辺装置の入力または出力を模擬し、前記組み込み機器の前記周辺装置の操作または動作を確認できるユーザインタフェースを提供するエミュレーション方法。
10 コンピュータ(PC)
12 疑似ARM CPU
14 疑似チップ
16 疑似デバイス
20 疑似メモリ
22 ベクタ・テーブル領域
24 デバイス領域
26 プログラム領域
100 エミュレーション装置
102 プログラム受付部
106 実行部
110 記憶装置
112 組み込みプログラム記憶領域
114 疑似デバイスレジスタ領域
120 CPU
122 メモリ
124 ハードディスク
126 ネットワーク通信部
128 操作受付部
130 表示制御部
134 バス
150 入力装置
152 表示装置
200 エミュレーション装置
202 入出力模擬部
250 エミュレーション装置
252 構成受付部
260 周辺装置構成選択画面
262 周辺機器リスト
264 反転表示部
272 疑似デバイス確認画面
280 周辺装置画像
290 編集画面
300 ストップウォッチ
304 RAM
306 割込みコントローラ
308 インターバル・タイマ
310 INPUTコントローラ
312 LCDコントローラ
314 LCD
316 バス
350 ミュージックプレーヤ
400 エミュレーション画面
402 レジスタ状態欄
404 メモリ状態欄
406 CPU状態欄
410 組み込み機器操作画面
412 ストップウォッチ外観図
414 LAPボタン
416 スタート/ストップボタン
418 LCD
420 リセットボタン
422 モードボタン
500 オペレータ
502 クロック管理
504 疑似ARM CPU
506 疑似メモリ
508 疑似チップ
510 疑似デバイス
Claims (10)
- ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するエミュレーション装置であって、
前記組み込みプログラムを記憶するプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置と、
前記組み込みプログラムを受け付けるプログラム受付手段と、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させる実行手段と、を備え、
前記組み込みプログラムは、前記ARMプロセッサと前記周辺装置を動作させる命令を含む実行形式のプログラムであり、
前記疑似デバイスレジスタ領域は、前記組み込みプログラムの各命令の実行時にアクセスすべき、前記周辺装置の動作を模擬する処理がそれぞれ割り当てられるレジスタビットを有し、
前記実行手段は、前記組み込みプログラムから順次前記命令を読み出し、各命令を、割り当てられた前記疑似デバイスレジスタの前記レジスタビットに変換し、当該レジスタビットにアクセスし、前記アクセスされた前記レジスタビットに応じた前記周辺装置の動作を疑似する処理を実行させるエミュレーション装置。 - 請求項1に記載のエミュレーション装置において、
前記記憶装置は、前記組み込み機器に組み込み可能な複数種類の周辺装置毎に、前記周辺装置の動作を疑似する処理をそれぞれ割り当てた複数の前記疑似デバイスレジスタ領域を有し、
エミュレーション対象の前記組み込み機器に組み込む周辺装置の構成を受け付ける構成受付手段をさらに備え、
前記構成受付手段が受け付けた前記周辺装置の構成に従って、前記実行手段が、該当する前記周辺装置の前記疑似デバイスレジスタ領域を、前記組み込みプログラムの実行時に使用し、前記周辺装置の構成をカスタマイズした前記組み込み機器をエミュレーションするエミュレーション装置。 - 請求項1または2に記載のエミュレーション装置において、
前記疑似デバイスレジスタ領域に割り当てられた前記周辺装置の動作を疑似する前記処理は、前記周辺装置の操作または動作に対応する入力または出力を模擬する処理を含み、
前記周辺装置の入力または出力を模擬する処理の結果に基づいて前記周辺装置の操作または動作を確認できるユーザインタフェースを前記周辺装置毎に提供する入出力模擬手段をさらに備え、
前記入出力模擬手段が、前記周辺装置の構成に従って、前記ユーザインタフェースを組み合わせ、前記組み込み機器の各前記周辺装置の入力または出力を模擬し、前記組み込み機器の前記周辺装置の操作または動作を確認できるユーザインタフェースを提供するエミュレーション装置。 - 請求項1乃至3いずれか一項に記載のエミュレーション装置において、
パーソナルコンピュータ、サーバコンピュータ、またはタブレット端末を用いて実現されるエミュレーション装置。 - 請求項1乃至4いずれか一項に記載のエミュレーション装置を用いた組み込み機器の開発支援システム。
- ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するコンピュータを用いたエミュレーション方法であって、
前記コンピュータは、前記組み込みプログラムを記憶する組み込みプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置を備え、
前記組み込みプログラムが、前記ARMプロセッサと前記周辺装置を動作させる命令を含む実行形式のプログラムであり、
前記疑似デバイスレジスタ領域が、前記組み込みプログラムの各命令の実行時にアクセスすべき、前記周辺装置の動作を模擬する処理がそれぞれ割り当てられるレジスタビットを有し、
前記コンピュータが、
前記組み込みプログラムを受け付け、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させ、
前記組み込みプログラムから順次前記命令を読み出し、各命令を、割り当てられた前記疑似デバイスレジスタの前記レジスタビットに変換し、当該レジスタビットにアクセスし、前記アクセスされた前記レジスタビットに応じた前記周辺装置の動作を疑似する処理を実行させるエミュレーション方法。 - 請求項6に記載のエミュレーション方法において、
前記記憶装置は、前記組み込み機器に組み込み可能な複数種類の周辺装置毎に、前記周辺装置の動作を疑似する処理をそれぞれ割り当てた複数の前記疑似デバイスレジスタ領域を有し、
前記コンピュータが、さらに、
エミュレーション対象の前記組み込み機器に組み込む周辺装置の構成を受け付け、
受け付けた前記周辺装置の構成に従って、該当する前記周辺装置の前記疑似デバイスレジスタ領域を、前記組み込みプログラムの実行時に使用し、前記周辺装置の構成をカスタマイズした前記組み込み機器をエミュレーションするエミュレーション方法。 - 請求項6または7に記載のエミュレーション方法において、
前記疑似デバイスレジスタ領域に割り当てられた前記周辺装置の動作を疑似する前記処理は、前記周辺装置の操作または動作に対応する入力または出力を模擬する処理を含み、
前記コンピュータが、
前記周辺装置の入力または出力を模擬する処理の結果に基づいて前記周辺装置の操作または動作を確認できるユーザインタフェースを前記周辺装置毎に提供し、
前記周辺装置の構成に従って、前記ユーザインタフェースを組み合わせ、前記組み込み機器の各前記周辺装置の入力または出力を模擬し、前記組み込み機器の前記周辺装置の操作または動作を確認できるユーザインタフェースを提供するエミュレーション方法。 - ARMプロセッサと周辺装置が組み込まれ、組み込みプログラムによって動作する組み込み機器を模擬するエミュレーション装置を実現するコンピュータが実行するプログラムであって、
前記コンピュータは、前記組み込みプログラムを記憶する組み込みプログラム記憶領域、および前記ARMプロセッサと前記周辺装置の動作を疑似する処理を割り当てた疑似デバイスレジスタ領域を有する記憶装置を備え、
前記組み込みプログラムは、前記ARMプロセッサと前記周辺装置を動作させる命令を含む実行形式のプログラムであり、
前記疑似デバイスレジスタ領域は、前記組み込みプログラムの各命令の実行時にアクセスすべき、前記周辺装置の動作を模擬する処理がそれぞれ割り当てられるレジスタビットを有し、
前記コンピュータに、
前記組み込みプログラムを受け付ける手順、
前記組み込みプログラムの命令を前記プログラム記憶領域から読み出し、前記命令の実行時に実行すべき処理が割り当てられた前記疑似デバイスレジスタ領域にアクセスして、前記周辺装置の動作を疑似する処理を実行させる手順、
前記組み込みプログラムから順次前記命令を読み出し、各命令を、割り当てられた前記疑似デバイスレジスタの前記レジスタビットに変換し、当該レジスタビットにアクセスし、前記アクセスされた前記レジスタビットに応じた前記周辺装置の動作を疑似する処理を実行させる手順を実行させるためのプログラム。 - 請求項9に記載のプログラムにおいて、
前記記憶装置は、前記組み込み機器が組み込み可能な複数種類の周辺装置毎に、前記周辺装置の動作を疑似する処理をそれぞれ割り当てた複数の前記疑似デバイスレジスタ領域を有し、
前記コンピュータに、さらに、
エミュレーション対象の前記組み込み機器に組み込む周辺装置の構成を受け付ける手順、
受け付けた前記周辺装置の構成に従って、該当する前記周辺装置の前記疑似デバイスレジスタ領域を、前記組み込みプログラムの実行時に使用し、前記周辺装置の構成をカスタマイズした前記組み込み機器をエミュレーションする手順を実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012081229A JP5979709B2 (ja) | 2012-03-30 | 2012-03-30 | エミュレーション装置、エミュレーション方法、プログラム、および組み込み機器の開発支援システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012081229A JP5979709B2 (ja) | 2012-03-30 | 2012-03-30 | エミュレーション装置、エミュレーション方法、プログラム、および組み込み機器の開発支援システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013210882A JP2013210882A (ja) | 2013-10-10 |
JP5979709B2 true JP5979709B2 (ja) | 2016-08-31 |
Family
ID=49528639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012081229A Active JP5979709B2 (ja) | 2012-03-30 | 2012-03-30 | エミュレーション装置、エミュレーション方法、プログラム、および組み込み機器の開発支援システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5979709B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111025990B (zh) * | 2019-12-25 | 2021-08-03 | 山东浪潮科学研究院有限公司 | 一种基于risc-v的车载终端系统 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6446845A (en) * | 1987-08-18 | 1989-02-21 | Hitachi Ltd | Simulation system for microcomputer |
JPH03198132A (ja) * | 1989-12-27 | 1991-08-29 | Fujitsu Ltd | シミュレーション装置 |
JPH064351A (ja) * | 1992-06-24 | 1994-01-14 | Toshiba Corp | ビジュアル・シミュレーション装置 |
JP3129059B2 (ja) * | 1993-09-27 | 2001-01-29 | オムロン株式会社 | コンピュータ組み込み型商品の開発方法および装置 |
JPH11194960A (ja) * | 1997-12-26 | 1999-07-21 | Toshiba Corp | ソフトウェア試験装置 |
JPH11282693A (ja) * | 1998-03-30 | 1999-10-15 | Toshiba Corp | Mcuシミュレーション装置、そのシミュレーション方法及びそのシミュレーションプログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP2000099369A (ja) * | 1998-09-17 | 2000-04-07 | Matsushita Electric Ind Co Ltd | ビジュアルシミュレーション装置およびその方法とビジュアルシミュレーションプログラム記録媒体 |
JP2001216178A (ja) * | 2000-02-04 | 2001-08-10 | Seiko Epson Corp | シミュレーション装置およびシミュレーション方法ならびにシミュレーションプログラムを記憶した記憶媒体 |
US20020107678A1 (en) * | 2001-02-07 | 2002-08-08 | Chuan-Lin Wu | Virtual computer verification platform |
JP2007264694A (ja) * | 2006-03-27 | 2007-10-11 | Seiko Epson Corp | 入出力模擬プログラム、該プログラムを記録した記録媒体、入出力模擬装置および入出力模擬方法 |
-
2012
- 2012-03-30 JP JP2012081229A patent/JP5979709B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013210882A (ja) | 2013-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6915416B2 (en) | Apparatus and method for microcontroller debugging | |
CN101938566B (zh) | 一种可视化的终端调试方法和装置 | |
US9535817B2 (en) | Application development environment for portable electronic devices | |
CN101344899B (zh) | 一种片上系统的仿真测试方法及仿真测试系统 | |
KR100233188B1 (ko) | 프로그램 실행을 인터럽트하지 않고 스테이터스 데이터를 얻는 컴퓨터 시스템 및 방법 | |
JP2010015534A (ja) | マルチコアマイコンシステムのシミュレーション方法及びシミュレーション装置 | |
Black et al. | A full system x86 simulator for teaching computer organization | |
Lacamera | Embedded Systems Architecture: Explore architectural concepts, pragmatic design patterns, and best practices to produce robust systems | |
CN113360440B (zh) | 处理器通信控制方法及相关产品 | |
Ostrander | Android UI Fundamentals: Develop and Design | |
RU2012149584A (ru) | Устройство, способ, компьютерная программа и пользовательский интерфейс | |
JP5979709B2 (ja) | エミュレーション装置、エミュレーション方法、プログラム、および組み込み機器の開発支援システム | |
CN114385524A (zh) | 嵌入式固件仿真系统及其方法、装置和电子设备 | |
Kloboves et al. | FPGA-based SIC/XE processor and supporting toolchain | |
JP2005353020A (ja) | コンピュータプログラムのシミュレーション方式 | |
JP2002366378A (ja) | プログラムのデバッグ装置及びデバッグ方法、並びに記憶媒体 | |
CN112579169B (zh) | 处理器追踪流的生成方法及装置 | |
JP3270729B2 (ja) | 拡張命令セット・シミュレータ | |
JP2001216176A (ja) | デバッグ装置およびデバッグ方法ならびにデバッグプログラムを記憶した記憶媒体 | |
CN115291953A (zh) | 中央处理器的控制方法、装置、设备及存储介质 | |
Kosowska et al. | Implementing the Bus Protocol of a Microprocessor in a Software-Defined Computer | |
EP2385467A1 (en) | State display apparatus | |
Lacamera | Embedded Systems Architecture: Design and write software for embedded devices to build safe and connected systems | |
CN116974945A (zh) | 一种基于qemu仿真的硬件调试系统及调试方法 | |
JPS63271542A (ja) | Romデバツガ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150209 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151014 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160115 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160628 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160721 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5979709 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |