JP3439353B2 - ソフトウェア・シミュレータシステム及びプログラムを記録した記録媒体 - Google Patents

ソフトウェア・シミュレータシステム及びプログラムを記録した記録媒体

Info

Publication number
JP3439353B2
JP3439353B2 JP29713898A JP29713898A JP3439353B2 JP 3439353 B2 JP3439353 B2 JP 3439353B2 JP 29713898 A JP29713898 A JP 29713898A JP 29713898 A JP29713898 A JP 29713898A JP 3439353 B2 JP3439353 B2 JP 3439353B2
Authority
JP
Japan
Prior art keywords
function
simulation
support tool
design support
undefined
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.)
Expired - Fee Related
Application number
JP29713898A
Other languages
English (en)
Other versions
JP2000123063A (ja
Inventor
忍 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Electronics Corp
Original Assignee
NEC Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP29713898A priority Critical patent/JP3439353B2/ja
Publication of JP2000123063A publication Critical patent/JP2000123063A/ja
Application granted granted Critical
Publication of JP3439353B2 publication Critical patent/JP3439353B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、集積回路の設計支
援ツールを起動し、その結果を取得可能なソフトウェア
・シミュレータシステム及びプログラムを記した記
媒体に関する。
【0002】
【従来の技術】従来のソフトウェア・シミュレータシス
テムは、図3に示すように、設計支援ツール110と、
アプリケーション・プログラム120と、アプリケーシ
ョン・プログラム120をコンパイル、リンクして得ら
れるロード・モジュール130と、設計支援ツール11
0の生成するソースコード140と、ソフトウェア・シ
ミュレータ160とから構成されている。
【0003】ソフトウェア・シミュレータ160は、ロ
ード手段101と、プログラムメモリ部102と、シミ
ュレーション実行手段103と、内部情報修正手段10
7と、スタブジャンプ手段108と、スタブメモリ部1
010とにより構成される。
【0004】上記各部は、それぞれ概略以下に示すよう
に動作する。内部情報修正手段107は、シミュレーシ
ョン実行中にレジスタ値や端子値、メモリ内容などを書
き換える。スタブジャンプ手段108は、イベント成立
時に予めスタブメモリ部1010にダウンロード、また
はオンライン・アセンブルで書き込んでおいたユーザ・
プログラム領域にジャンプする。
【0005】上記のような構成を有する従来のソフトウ
ェア・シミュレータシステムは次のように動作する。即
ち、アプリケーション・プログラムのシミュレーション
中に、機能が未定義の関数が呼び出されても、その関数
に処理は移すが、内部の処理が未定義なので処理は行わ
ず、呼び出し元に戻ってきた。
【0006】また、シミュレーション中に関数機能を記
述し、シミュレーションを行いたい場合には、シミュレ
ーション中に内部情報修正手段107でレジスタ値や端
子値などを書き換えたり、スタブジャンプ手段108の
スタブ機能を利用していた。
【0007】また、シミュレーションとは別に、エディ
タや設計支援ツールを使用して設計を行い、アプリケー
ション・プログラムをロードし直してシミュレーション
を行っていた。
【0008】
【発明が解決しようとする課題】しかしながら、上記の
従来技術には、以下のような問題点があった。第1の問
題点は、レジスタ値や端子値を書き換えても、その情報
が残らないということである。その理由は、シミュレー
ション中にレジスタ値や端子値を書き換えても、その情
報を残す手段をシミュレータが持たないためである。
【0009】第2の問題点は、アプリケーション・プロ
グラムの設計に時間がかかるということである。その理
由は、シミュレーション中に不具合が見つかってもアプ
リケーション・プログラムを修正する機能がないので、
後戻り工数が多くなるためである。
【0010】本発明は、上記の問題を解決するために成
されたもので、シミュレーション中にレジスタ値や端子
値を書き換えても、その情報を残すことができると共
に、アプリケーション・プログラムの設計効率を上げる
と共に、機能が未定義の関数を検出して設計支援ツール
に記述できるようにすることを目的としている。
【0011】
【課題を解決するための手段】前記課題を解決するため
に、請求項1記載の発明は、回路設計を支援する設計支
援ツール手段と、アプリケーション・プログラムのシミ
ュレーションを実行する実行手段と、実行手段により実
行された前記シミュレーション中に機能が未定義の関数
が呼び出されたことを検出する検出手段と、検出手段に
よる検出に基づいて設計支援ツール手段を自動的に起動
する起動手段と、使用者が前記設計支援ツール手段を使
用して設計された前記検出手段により検出された未定義
の関数の関数機能を前記設計支援ツール手段の状態遷移
表に記述する機能記述手段と、機能記述手段により記述
された関数機能のシミュレーションを実行し、仕様通り
に動作するか否かを検証する検証手段と、検証手段によ
るシミュレーション結果を実行手段により実行するシミ
ュレーションに反映させる反映手段と、を有することを
特徴とする。
【0012】請求項2記載の発明は、請求項1記載の発
明において、検出手段による検出に基づいて設計支援ツ
ール手段を起動するか否かを選択する選択手段を有する
ことを特徴とする。
【0013】請求項3記載の発明は、請求項1記載の発
明において、機能記述手段により状態遷移表に記述され
た未定義の関数機能のソースコードを生成する生成手段
を有することを特徴とする。
【0014】請求項4記載の発明は、アプリケーション
・プログラムのシミュレーションを実行する実行処理
と、シミュレーション中に機能が未定義の関数が呼び出
されたことを検出する検出処理と、検出処理による検出
に基づいて設計支援ツールを自動的に起動する起動処理
と、使用者が前記設計支援ツールを使用して設計された
前記検出処理により検出された未定義の関数の関数機能
前記設計支援ツールの状態遷移表に記述する記述処理
と、記述処理により記述された未定義の関数機能のシミ
ュレーションを実行し、仕様通りに動作するか否かを検
証する検証処理と、検証処理によるシミュレーション結
果をアプリケーション・プログラムのシミュレーション
に反映させる反映処理と、を実行するためのプログラム
を記録したことを特徴とする。
【0015】請求項5記載の発明は、請求項4記載の発
明において、検出処理による検出に基づいて設計支援ツ
ールを起動するか否かを選択する選択処理を実行するた
めのプログラムを記憶したことを特徴とする。
【0016】請求項6記載の発明は、請求項4記載の発
明において、記述処理により状態遷移表に記述された未
定義の関数機能のソースコードを生成する生成処理を実
行するためのプログラムを記憶したことを特徴とする。
【0017】
【発明の実施の形態】次に、添付図面に基づいて本発明
のソフトウェア・シュミレータシステム及びプログラム
を記した記媒体の実施形態を詳細に説明する。以下
に説明する本発明の各実施形態は、アプリケーション・
プログラムのシミュレーション中に機能が未定義の関数
を検出し、自動的に設計支援ツールを起動することがで
き、また、設計支援ツール上でのシミュレーション結果
をプログラムのシミュレーションに反映し、シミュレー
ションを続けることができる構成を提供するものであ
る。
【0018】〈第1の実施形態〉図1は、本発明の第1
の実施形態によるソフトウェア・シミュレータシステム
を示す構成図である。図1において、ソフトウェア・シ
ミュレータ100を用いてのアプリケーション・プログ
ラム120のシミュレーション中に機能が未定義の関数
が呼び出されたことを検出する機能未定義関数検出手段
104と、自動的に設計支援ツールを起動する設計支援
ツール起動手段105と、設計支援ツール110上での
機能シミュレーション結果をソフトウェア・シミュレー
タ100のアプリケーション・プログラム120のシミ
ュレーションに反映する機能シミュレーション結果反映
手段106とが設けられている。
【0019】本実施形態により、起動された設計支援ツ
ール110を使用して、シミュレーション中に関数機能
を記述することができる。また、記述した機能は設計支
援ツール110の機能によってソースコード140とし
て生成されるので、後からプログラムの設計に利用する
ことができる。このようにして、アプリケーション・プ
ログラム120のシミュレーション中におけるアプリケ
ーション・プログラムの未定義部分の設計を可能にす
る。
【0020】図1について、構成及び動作をさらに詳細
に説明する。本実施形態のシステム構成は、ソフトウェ
ア・シミュレータ100と、設計支援ツール110と、
アプリケーション・プログラム120と、アプリケーシ
ョン・プログラム120をコンパイル、リンクして得ら
れるロード・モジュール130と、設計支援ツール11
0の生成するソースコード140から構成されている。
【0021】ソフトウェア・シミュレータ100は、ロ
ード手段101と、プログラムメモリ部102と、シミ
ュレーション実行手段103と、機能未定義関数検出手
段104と、設計支援ツール起動手段105と、機能シ
ミュレーション結果反映手段106とにより構成され
る。
【0022】上記各部は、それぞれ以下に示すように動
作する。ロード手段101は、ロード・モジュール13
0をプログラムメモリ部102に記録する。シミュレー
ション実行手段103は、プログラムメモリ部102か
らプログラム情報を読み出して解析し、1インストラク
ションずつシミュレーションを実行する。機能未定義関
数検出手段104は、シミュレーション実行中に機能が
未定義の関数が実行されると、実行を中断する。
【0023】設計支援ツール起動手段105は、機能未
定義関数検出手段104で機能が未定義の関数を検出す
ると、自動的に設計支援ツール110を起動する。機能
シミュレーション結果反映手段106は、設計支援ツー
ル110での機能シミュレーションの結果を、設計支援
ツール110の起動以前に行っていたシミュレーション
に反映する。
【0024】設計支援ツール110は、機能記述手段1
11と、機能シミュレーション実行手段112と、ソー
スコード生成手段113とにより構成される。
【0025】機能記述手段111は、状態遷移表を用い
てアプリケーション・プログラムの機能を記述する。機
能シミュレーション実行手段112は、機能記述手段1
11で記述した機能の振る舞いを状態の遷移によりシミ
ュレーションし、機能仕様通りに動作するかを検証す
る。ソースコード生成手段113は、機能記述手段11
1を用いて状態遷移表に記述された機能記述を高級プロ
グラム言語であるC言語やC++言語のソースコードに
変換する。
【0026】次に、本実施形態の全体の動作について詳
細に説明する。まず、アプリケーション・プログラム1
20をコンパイラ及びリンクを用いてロード・モジュー
ル130に変換する。次に、ロード・モジュール130
をロード手段101でプログラムメモリ部102にロー
ドする。
【0027】次に、シミュレーション実行手段103に
より、プログラムメモリ部102のアプリケーション・
プログラムのシミュレーションを実行する。このシミュ
レーション中に、機能未定義関数検出手段104で機能
が未定義の関数が呼び出されたことを検出すると、設計
支援ツール起動手段105は、設計支援ツール110を
起動する。そして機能記述手段111は、設計支援ツー
ル110の状態遷移表に未定義の関数機能を記述する。
さらに、機能シミュレーション実行手段112を用い
て、記述した機能の振る舞いをシミュレートし、機能仕
様通りに動作するか否かを検証する。
【0028】検証が終わったら、ソースコード生成手段
113を用いて状態遷移表に記述した機能のソースコー
ド140を生成する。最後に、機能シミュレーション実
行手段112による機能シミュレーション結果を、ソフ
トウェア・シミュレータ100の機能シミュレーション
結果反映手段106を用いて、設計支援ツール110の
起動前に行っていたソフトウェア・シミュレータ100
のシミュレーションに反映させる。
【0029】その後、シミュレーション実行手段103
により、ソフトウェア・シミュレータ100のシミュレ
ーションを続ける。ソースコード140は、後からアプ
リケーション・プログラム120の機能が未定義の関数
の設計に利用することができる。
【0030】〈第2の実施形態〉図2は、本発明の第2
の実施形態によるソフトウェア・シミュレータシステム
を示す構成図である。なお、図2において図1と対応す
る部分には同一番号を付して重複する説明は省略するも
のである。図2においては、ソフトウェア・シミュレー
タ150が、図1のソフトウェア・シミュレータ100
の構成に起動選択手段109を加えた点で異なってい
る。
【0031】起動選択手段109は、設計支援ツール1
10を起動するかしないかを選択する。本実施形態で
は、起動選択手段109は、機能未定義関数検出手段1
04で検出された関数について設計支援ツール110を
起動するかしないかを確認する。
【0032】次に、本実施形態の全体の動作について説
明する。シミュレーション実行中に、機能未定義関数検
出手段104で機能が未定義の関数を検出すると、起動
選択手段109が設計支援ツール110を起動するかし
ないかを確認する。起動することが確認されると、設計
支援ツール起動手段105に処理を移す。起動しないこ
とが確認されると、シミュレーション実行手段103に
処理を移し、シミュレーションを続ける。
【0033】本実施形態によれば、機能が未定義の関数
が検出されたときに、すぐに設計支援ツール110を起
動して関数を設計するか、あるいは、その関数について
は未定義のままでシミュレーションを続けるかを選択す
ることができる。
【0034】なお、上記の各実施形態を実現するための
コンピュータシステムにおける上述した動作を制御する
ための処理を実行するプログラムを記した記媒体
は、本発明による記媒体を構成する。この記媒体と
しては、半導体メモリ、光ディスク、光磁気ディスク、
磁気記録媒体等を用いることができる。
【0035】
【発明の効果】以上の説明より明らかなように、本発明
のソフトウェア・シュミレータシステム及びプログラム
を記した記媒体によれば、プログラム設計効率を向
上させることができる。その理由は、機能が未定義の関
数を検出して自動的に設計支援ツールを起動し、アプリ
ケーション・プログラムの未完成部分を設計することが
できるためである。
【0036】また、本発明のソフトウェア・シュミレー
タシステム及びプログラムを記した記媒体によれ
ば、関数の設計中に未定義部分の機能を含めたアプリケ
ーション・プログラム全体の検証を行うことができる。
その理由は、設計支援ツールの機能シミュレーション機
能を利用して、設計中の機能を状態遷移シミュレーショ
ンレベルで検証して動作確認し、そのシミュレーション
結果をソースコードに落とすことにより、後のコーディ
ング、デバッグに反映することができるためである。
【図面の簡単な説明】
【図1】本発明の第1の実施形態によるソフトウェア・
シミュレーションシステムを示す構成図である。
【図2】本発明の第2の実施形態によるソフトウェア・
シミュレーションシステムを示す構成図である。
【図3】従来のソフトウェア・シミュレーションシステ
ムを示す構成図である。
【符号の説明】
100、150 ソフトウェア・シミュレータ 101 ロード手段 102 プログラムメモリ部 103 シミュレーション実行手段 104 機能未定義関数検出手段 105 設計支援ツール起動手段 106 機能シミュレーション結果反映手段 109 起動選択手段 110 設計支援ツール 111 機能記述手段 112 機能シミュレーション実行手段 113 ソースコード生成手段 120 アプリケーション・プログラム 130 ロード・モジュール 140 ソースコード
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平11−143709(JP,A) 特開 平8−95823(JP,A) 特開 平5−31344(JP,A) 特開 平1−36344(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 17/50,11/28

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】 回路設計を支援する設計支援ツール手段
    と、 アプリケーション・プログラムのシミュレーションを実
    行する実行手段と、 該実行手段により実行された前記シミュレーション中に
    機能が未定義の関数が呼び出されたことを検出する検出
    手段と、 該検出手段による検出に基づいて前記設計支援ツール手
    段を自動的に起動する起動手段と、使用者が前記設計支援ツール手段を使用して設計された
    前記検出手段により検出された前記未定義の関数の関数
    機能を前記設計支援ツール手段の状態遷移表に記述する
    機能記述手段と、 該機能記述手段により記述された前記関数機能のシミュ
    レーションを実行し、仕様通りに動作するか否かを検証
    する検証手段と、 該検証手段によるシミュレーション結果を前記実行手段
    により実行するシミュレーションに反映させる反映手段
    と、 を有することを特徴とするソフトウェア・シミュレータ
    システム。
  2. 【請求項2】 前記検出手段による検出に基づいて前記
    設計支援ツール手段を起動するか否かを選択する選択手
    段を有することを特徴とする請求項1記載のソフトウェ
    ア・シミュレータシステム。
  3. 【請求項3】 前記機能記述手段により前記状態遷移表
    に記述された前記未定義の関数機能のソースコードを生
    成する生成手段を有することを特徴とする請求項1記載
    のソフトウェア・シミュレータシステム。
  4. 【請求項4】 アプリケーション・プログラムのシミュ
    レーションを実行する実行処理と、 前記シミュレーション中に機能が未定義の関数が呼び出
    されたことを検出する検出処理と、 該検出処理による検出に基づいて設計支援ツールを自動
    的に起動する起動処理と、使用者が前記設計支援ツールを使用して設計された 前記
    検出処理により検出された前記未定義の関数の関数機能
    を前記設計支援ツールの状態遷移表に記述する記述処理
    と、 該記述処理により記述された前記未定義の関数機能のシ
    ミュレーションを実行し、仕様通りに動作するか否かを
    検証する検証処理と、 該検証処理によるシミュレーション結果を前記アプリケ
    ーション・プログラムのシミュレーションに反映させる
    反映処理と、 を実行するためのプログラムを記録したことを特徴とす
    るプログラムを記録した記録媒体。
  5. 【請求項5】 前記検出処理による検出に基づいて前記
    設計支援ツールを起動するか否かを選択する選択処理を
    実行するためのプログラムを記録したことを特徴とする
    請求項4記載のプログラムを記録した記録媒体。
  6. 【請求項6】 前記記述処理により前記状態遷移表に記
    述された前記未定義の関数機能のソースコードを生成す
    る生成処理を実行するためのプログラムを記録したこと
    を特徴とする請求項4記載のプログラムを記録した記録
    媒体。
JP29713898A 1998-10-19 1998-10-19 ソフトウェア・シミュレータシステム及びプログラムを記録した記録媒体 Expired - Fee Related JP3439353B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29713898A JP3439353B2 (ja) 1998-10-19 1998-10-19 ソフトウェア・シミュレータシステム及びプログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29713898A JP3439353B2 (ja) 1998-10-19 1998-10-19 ソフトウェア・シミュレータシステム及びプログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2000123063A JP2000123063A (ja) 2000-04-28
JP3439353B2 true JP3439353B2 (ja) 2003-08-25

Family

ID=17842709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29713898A Expired - Fee Related JP3439353B2 (ja) 1998-10-19 1998-10-19 ソフトウェア・シミュレータシステム及びプログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3439353B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4540861B2 (ja) * 2001-01-18 2010-09-08 株式会社図研 プリント基板におけるバイパスコンデンサ配置配線設計支援システムおよびプログラム
CN100462953C (zh) 2004-03-19 2009-02-18 Nxp股份有限公司 Pci express开关的pci express端点与下游端口的模拟电路
JP5440252B2 (ja) * 2009-07-24 2014-03-12 株式会社リコー 情報処理装置、外部装置、情報処理システム、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
JP2000123063A (ja) 2000-04-28

Similar Documents

Publication Publication Date Title
CN110851168B (zh) 数据处理方法及其装置、计算机可读存储介质
CN115878095A (zh) 一种基于逻辑编排的低代码开发方法、装置、设备及介质
JP3439353B2 (ja) ソフトウェア・シミュレータシステム及びプログラムを記録した記録媒体
CN111984524A (zh) 故障注入方法、故障模拟方法、故障注入装置及存储介质
US6728951B1 (en) System and method for performing automated incremental compilation of computer programs
KR0125605B1 (ko) 프로그램의 아키덱쳐 변환방법 및 장치와 그 방법 및 장치를 사용하여 프로그램의 동작을 검증하는 방법 및 장치
KR100615450B1 (ko) 임베디드 시스템의 툴체인 구성 및 실행 방법, 그리고 이를이용한 이동 단말 장치
JPH10320212A (ja) キャッシュ向け最適化方法
JP3604936B2 (ja) 最適化方法,最適化装置及び記録媒体
JP3152205B2 (ja) 論理シミュレーション装置及びその方法並びにその制御プログラムを記録した記録媒体
JP2005174045A (ja) ソースプログラム変換装置、ソースプログラム変換方法、ソースプログラム変換プログラム、および、プログラム記録媒体
EP0901074A2 (en) Real-time operating system with task execution controlling functions for allowing easy understanding of how actions are linked among tasks
CN114564230B (zh) 鸿蒙系统的一键上传实现方法、装置、电子设备及介质
KR100656928B1 (ko) 임베디드 시스템의 툴체인 실행 방법
CN114296700B (zh) 一种dsp工程移植方法
JP3492207B2 (ja) 組み込みソフトウェアの動的解析方法
KR100320076B1 (ko) 소프트웨어 재사용을 위한 온라인 함수 관리 방법
JP2005301415A (ja) コンパイル方式、シミュレータ、エミュレータおよびプログラム開発支援システム
JP3210203B2 (ja) プログラム試験方法及びsqlシミュレータ
CN117573151A (zh) 一种在risc-v dsp芯片的闪存中烧录数据的方法、芯片
CN115688659A (zh) 一种基于数字模拟电路混合仿真的验证方法及相关产品
JP2002189613A (ja) ソフトウェア開発支援装置、ソフトウェア開発支援方法及びソフトウェア開発支援プログラムを記録したコンピュータ読み取り可能な記録媒体
CN115756476A (zh) Android系统自动刷机方法、装置、电子设备及存储介质
JPH07319711A (ja) 情報処理システム
KR100293932B1 (ko) 소프트웨어 코드인 이미지의 후처리 방법

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010213

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080613

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090613

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100613

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100613

Year of fee payment: 7

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100613

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100613

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees