JPH06348463A - 入出力装置模擬部作成方法 - Google Patents

入出力装置模擬部作成方法

Info

Publication number
JPH06348463A
JPH06348463A JP5131842A JP13184293A JPH06348463A JP H06348463 A JPH06348463 A JP H06348463A JP 5131842 A JP5131842 A JP 5131842A JP 13184293 A JP13184293 A JP 13184293A JP H06348463 A JPH06348463 A JP H06348463A
Authority
JP
Japan
Prior art keywords
input
output device
output
device simulation
simulation part
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.)
Pending
Application number
JP5131842A
Other languages
English (en)
Inventor
Yoshima Ikeuchi
義真 池内
Kazuyuki Kondo
和之 近藤
Suketsugu Nagamatsu
祐嗣 永松
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.)
Hitachi Ltd
Hitachi KE Systems Ltd
Original Assignee
Hitachi Ltd
Hitachi Keiyo Engineering Co Ltd
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 Hitachi Ltd, Hitachi Keiyo Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP5131842A priority Critical patent/JPH06348463A/ja
Priority to US08/214,688 priority patent/US5557774A/en
Publication of JPH06348463A publication Critical patent/JPH06348463A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 入出力シミュレータにおける入出力装置模擬
部を容易かつ迅速に作成すること。 【構成】 入出力装置のハードウエア仕様を形式言語に
より記述したハードウエア記述情報1001から各種ハ
ードウエア構成を定義する定義テーブル1004〜10
07と内部接続解析テーブルを作成するとともに、入出
力装置ハードウエア仕様と入出力シミュレータとの間の
データ変換を行うインタフェースルーチンと入出力装置
とインタフェースルーチンの対応関係を指示するユーザ
からの情報1002によって外部入出力インターフェー
ス定義テーブル1011を作成する。これらの各種テー
ブルを用いて入出力装置模擬部のソースプログラム10
20を生成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、機器組込型マイクロコ
ンピュータ用ソフトウエアをターゲットマシンと異なる
汎用計算機でシミュレーションしてテスト/デバッグを
行うためのシミュレータの作成方法に係り、特に入出力
装置のシミュレーションを行う入出力シミュレータにお
ける入出力装置模擬部のソースプログラムの作成方法に
関する。
【0002】
【従来の技術】従来から入出力装置を模擬する入出力シ
ミュレータは公知である。例えば、入出力装置の制御動
作を模擬する入出力制御模擬部と、CPUとのバスライ
ン部の制御を模擬して入出力模擬部の実行を制御する入
出力モニタでシミュレータを構成することにより、実際
のコンピュータシステムと論理的等価にコンピュータの
ソフトウエアを実行するシミュレーション方式が、特開
昭62−274436号公報に開示されている。同公開
公報に開示されたシミュレーション方式は、シミュレー
ション・システムを、コマンド制御機能、命令実行機
能、割込み受け付け機能、並列動作機能、メモリ入出力
機能およびメモリ機能からなるCPUシミュレータと、
IOモニタ、IOモデル群、IOファイルからなるIO
シミュレータで構成したものである。そして、上記IO
モニタを、コマンド処理機能、IOモデル実行制御機
能、DMA制御機能、割込み制御機能、実時間管理機能
およびIOファイル入出力機能で構成し、個々の入出力
装置に対する制御動作を記述したIOモデル群および入
出力データを一括管理するIOファイルを制御するよう
にし、入出力命令により上記IOモデルを動作させるこ
とにより、メモリ機能とIOモデル間のDMA転送、I
OモデルからCPUへの割込み、プログラムとIOモデ
ルの並行動作などの実際のコンピュータ・システムと同
等の動作を実行可能としたものである。
【0003】また、例えば情報処理学会誌 VOL.3
3 NO.11 通巻333号に記載されているよう
に、最近、ハードウエア設計を支援するための言語とし
てハードウエア記述言語(Hardware Description La
nguage)を使用する動きが活発になってきている。ハー
ドウエア記述言語は、計算機ハードウエアの設計支援技
術などで使用される周知のものであり、その記述内容
は、機能や性能条件などを表現する仕様記述、構成要素
(レジスタ、加算器など)をどのように動作させるかを
表現する動作記述、構成要素(ゲートレベル〜ブロック
レベル)間の接続関係を表現する接続記述に分類され
る。(詳細については、電子情報通信学会編「電子情報
通信ハンドブック 第2分冊」 昭和63年3月30
日 オーム社発行 PP.1656−1659 に記載
されている。)
【0004】
【発明が解決しようとする課題】上記のような従来の入
出力シミュレータにおいては、シミュレータに汎用性を
持たせるために、シミュレーション対象システム(入出
力装置)が変わる毎に入出力シミュレータにおける入出
力装置模擬部を書き換えるようにしていた。しかし、入
出力装置模擬部を書き換えるためには、入出力シミュレ
ータ作成者にとって、そのハードウエアの仕様をよく理
解しておくことが必要不可欠であり、そのために多大の
手間がかかるなど、負担が極めて大きいという問題があ
った。本発明の目的は、上記の問題点を解消するため
に、従来論理設計や論理シミュレータ作成などに使用し
ていたハードウエア仕様記述言語により記述されたハー
ドウエア仕様情報を利用して入出力シミュレータにおけ
る入出力装置模擬部のプログラムを容易に作成する方法
を提供することにある。
【0005】
【課題を解決するための手段】本発明は、上記目的を達
成するために、入出力装置のハードウエア仕様を形式言
語で記述したハードウエア記述情報と、別途入力される
各入出力装置のハードウエア仕様と入出力シミュレータ
との間のデータ変換を行うインタフェースルーチンおよ
び入出力装置とインタフェースルーチンの対応関係を指
示する情報とによって入出力装置模擬部のソースプログ
ラムを作成するようにしている。
【0006】
【作用】上記の方法によると、ハードウエアの設計など
に使用するハードウエア記述によって入出力シミュレー
タの入出力装置模擬部のソースプログラムを作成できる
ので、新たな入出力装置を有するシステムのシミュレー
タを開発する場合に、シミュレータの作成者が該新たな
入出力装置のハードウエアの仕様を詳細に理解する必要
がなくなり、シミュレータの開発が容易となる。
【0007】
【実施例】以下、本発明の1実施例を図1〜図6を用い
て詳細に説明する。図1は、本発明の対象である入出力
シミュレータの入出力装置模擬部生成システムの機能構
成を示すブロック図であり、図2、3および4は、本発
明を入出力装置模擬部のソースプログラムの作成に適用
した場合の処理手順の1実施例を示すフローチャートで
ある。また、図5は本発明を適用する入出力シミュレー
タの構成を示すブロック図であり、図6は本発明を適用
した入出力装置模擬部生成システムを動作させる汎用計
算機の構成を示すブロック図である。図6において、6
005は外部記憶装置であり、本発明の入出力装置模擬
部生成システムのプログラムを格納する。6001はメ
モリであり、システムを実行する場合に外部記憶装置6
005より入出力装置模擬部生成システムのプログラム
を読み込む。6003はCPUであり、メモリ6001
に読み込んだ入出力装置模擬部生成システムのプログラ
ムを実行する。6004は入力装置であり、利用者の指
示が入力される。6002は表示装置であり、利用者へ
の確認事項などを表示する。
【0008】本発明を適用した入出力装置模擬部は図5
に示すような入出力シミュレータに適用できる。図5に
おいて、5001はMPUシミュレータであり、汎用計
算機内のメモリ5004に読み込んだ被テストプログラ
ム5007を実行するMPU(MicroProcesser Uni
t)の動作をシミュレーションするものである。5002
は入出力シミュレータであり、上記MPUシミュレータ
において被テストプログラム5007を実行シミュレー
ションした結果、MPUシミュレータが模擬する対象外
の周辺機器への入出力信号がある場合、その入出力信号
に対する周辺機器の動作をシミュレートするものであ
る。入出力シミュレータ5002は、入出力装置自体の
動作を模擬する入出力装置模擬部5006と、MPUシ
ミュレータからの入出力信号に対するバスの動作をシミ
ュレーションするとともに入出力装置模擬部の実行を制
御する入出力装置模擬部実行制御部5005とからな
る。本発明の入出力装置模擬部生成システムはこの入出
力シミュレータ5002中の入出力装置模擬部5006
のソースプログラムを生成するシステムである。
【0009】図7は、本実施例で入出力装置として模擬
する装置のハードウエア仕様の一例である。以下、この
入出力装置を例にして説明する。図7において、700
1は装置の最も外側の機能単位を表す枠である。この最
も外側の機能単位を表す枠をモジュールという。700
1のモジュール名を「モジュール1」とする。「モジュ
ール1」への入力線としては、「EIL1」(700
6)、「EIL2」(7007)、「EIL3」(70
08)があり、出力線としては、「EOL1」(701
5)、「EOL2」(7016)があり、これらは全て
ビット7からビット0までの8ビット線である。この入
出力装置は内部にレジスタを2つ持ち、それぞれレジス
タ名は「REG1」、「REG2」とする(700
5)。7002、7003、7004はこれ以上分割で
きない機能単位であり、このような単位をブロックとい
う。7002のブロック名を「ブロック1」、7003
のブロック名を「ブロック2」、7004のブロック名
を「ブロック3」とする。
【0010】次に、「モジュール1」(7001)の接
続関係を説明する。「モジュール1」(7001)の外
部からの入力線「EIL1」(7006)、「EIL
2」(7007)、「EIL3」(7008)は、「モ
ジュール1」の内部の線「IL1」(7009)、「I
L2」(7010)、「IL3」(7011)に接続さ
れている。これらの線は「ブロック1」(7002)の
入力端子「IT1」(7017)、「IT2」(701
8)、「ブロック2」(7003)の入力端子「IT
4」(7021)にそれぞれ接続されている。ここで、
「ブロック1」(7002)の入力端子「IT1」(7
017)はビット7からビット0からなる8ビット端子
であり、「IL1」(7009)のデータがそのまま入
力されるが、入力端子「IT2」(7018)、「IT
4」(7021)はビット7からビット4までの4ビッ
ト端子であるので「IT2」(7018)には「IL
2」(7010)のビット7からビット4までの4ビッ
トのデータ、「IT4」(7021)には「IL3」
(7011)のビット7からビット4までの4ビットの
データが入力される。さらに、「ブロック1」(700
2)の出力端子「OT1」(7019)と「ブロック
2」(7003)の入力端子「IT3」(7020)は
内部線「IL4」(7012)によって接続されてい
る。また、「ブロック3」(7004)の出力端子「O
T2」(7022)、「OT3」(7023)はビット
7からビット0までの8ビット端子で、それぞれ「モジ
ュール1」の内部線「IL5」(7013)、「IL
6」(7014)により「モジュール1」の外部出力線
「EOL1」(7015)、「EOL2」(7016)
に接続されている。
【0011】最小機能単位である各ブロックではそれぞ
れ予め決められた演算が行われる。「ブロック1」(7
002)は「IT1 & IT2 → OT1」(70
24)という演算を行う。これは、端子「IT1」(7
017)と端子「IT2」(7018)を各ビット毎に
論理積演算(AND)を行い、その結果を端子「OT
1」(7019)に入れるという操作を示している。同
様に、「ブロック2」(7003)で行う演算は「IT
3 | IT4 → REG1」と「IT3 &IT4
→ REG2」(7025)で「|」は論理和演算
(OR)を示しており、「ブロック3」(7004)で
行う演算は「REG1 → OT2」と「REG1 |
REG2 → OT3」(7026)である。
【0012】次に、図2、3および4のフローチャート
を用いて図1の各部の動作を説明する。先ず、利用者は
入力装置6004(図6)から、入出力シミュレーショ
ンとして模擬したい入出力装置7001(図7)のハー
ドウエア仕様1001を入力する(図2のステップ20
01)。このハードウエア仕様はハードウエア記述言語
により記述されたものとする。
【0013】次に、ハード仕様定義テーブル作成部10
03において、入力されたハードウエア記述を構文解析
(ステップ2002)/意味解析(ステップ2003)
し、必要な情報をモジュール接続定義テーブル1004
(ステップ2004)、ブロック接続定義テーブル10
05(ステップ2005)、レジスタ定義テーブル10
06(ステップ2006)、ブロック演算定義テーブル
1007(ステップ2007)にそれぞれ格納する。な
お、構文解析/意味解析については、「プログラミング
言語処理系」岩波講座ソフトウエア科学、佐々政孝著、
pp98〜pp306に説明がある。
【0014】モジュール接続定義テーブル1004に
は、図8に示すように、各モジュール(8002)につ
いて、外部線名(8003)と内部線名(8005)お
よびそれらの対応する有効ビット範囲(8004、80
06)、外部線のモジュールから見た入出力種別(80
07)を格納する。例えば、8008の行に示す内容
は、モジュール1に入力される外部線「EIL1」(7
006)のビット7からビット0はモジュール内部の線
「IL1」(7009)のビット7からビット0に対応
し、該外部線「EIL1」(7006)は、モジュール
1から見て入力になっているという意味を表している。
【0015】ブロック接続定義テーブル1005には、
図9に示すように、各ブロック(9002)について、
外部線名(9003)と内部端子名(9005)および
それらの対応する有効ビット範囲(9004、900
6)、端子のブロックから見た入出力種別(9007)
を格納する。例えば、9008の行に示す内容は、ブロ
ック1に入力される外部線「IL1」(7009)のビ
ット7からビット0はモジュール内部の端子「IT1」
(7017)のビット7からビット0に対応し、該外部
線「IL1」(7009)は、ブロック1から見て入力
になっているという意味を表している。
【0016】レジスタ定義テーブル1006には、図1
0に示すように、各モジュール(10002)につい
て、内部のレジスタ名(10003)とそのビット幅
(10004)を格納する。例えば、1006のテーブ
ルに示す内容は、モジュール1(7001)に定義され
るレジスタ(7005)はREG1とREG2であっ
て、それぞれビット7からビット0までのビットを持つ
ことを表している。
【0017】ブロック演算定義テーブル1007には、
図11に示すように、各ブロック(11002)につい
て、該ブロックが行う演算の式(11003)と、該演
算に使用する端子名/レジスタ名(11004)と、該
演算に使用する有効ビット範囲(11005)を格納し
ている。例えば、11006の行に示す内容は、ブロッ
ク1(7002)では、端子「IT1」(7017)、
「IT2」(7018)、「OT1」(7019)を使
用して「IT1 & IT2 → OT1」(702
4)という演算を行うことを表している。
【0018】次に、内部接続解析テーブル作成部100
8において、上記モジュール接続定義テーブル1004
と上記ブロック接続定義テーブル1005とから、モジ
ュールの外部線とブロックの端子との接続関係、ソース
プログラムに出力する際の名称とする共通名を格納した
内部接続解析テーブル1009を作成する。再び、図2
に戻って内部接続解析テーブル作成部1008における
処理の流れを詳細に説明する。まず、ブロック接続定義
テーブル1005に同名のブロック外部線があるかどう
かを調べる(ステップ2008)。同名のブロック外部
線があればこれらの行に示される端子は同じ線を使用す
る入力/出力端子の関係にあるので、それらの行の入出
力種別を取得し(ステップ2009)、入出力種別が
「入力」の行の端子を内部接続解析テーブル1009の
入力側に、入出力種別が「出力」の行の端子を内部接続
解析テーブル1009の出力側に登録する(ステップ2
010)。そして、出力側の端子名をそれらの端子のソ
ース出力用の共通名として登録する(ステップ201
1)。
【0019】例えば、図9のブロック接続定義テーブル
1005を例にすると、9009の行のブロック外部線
「IL4」(7012)は、同テーブル内の9010の
行のブロック外部線にもある。したがって、これらに接
続されている端子「OT1」(7019)、「IT3」
(7020)を内部接続解析テーブル1009の120
10の行に示したように登録する。すなわち、「OT
1」(7019)を出力側端子にして、ブロック名(1
2002)として「ブロック1」、端子名(1200
3)として「OT1」、有効ビット(12004)とし
て「7−0」を登録する。また、「IT3」(702
0)を入力側端子にして、ブロック名(12005)と
して「ブロック2」、端子名(12006)として「I
T3」、有効ビット(12007)として「7−0」を
登録する。そしてこれらの端子に共通の名前として出力
側の名前「OT1」を共通名(12008)として登録
する。この処理をブロック接続定義テーブルに同名の外
部線がなくなるまで繰り返す(図2のステップ2008
からステップ2011のループ)。
【0020】図2のステップ2008において、同名の
外部線がブロック接続定義テーブル1005になくなっ
たら、ブロック接続定義テーブル1005の残りの外部
線9003と同名の線が、モジュール接続定義テーブル
1004の内部線8005にあるかどうか調べる(ステ
ップ2012)。同名の線があれば、これらの行に示さ
れるモジュール外部線8003および端子9005は外
部入力線/出力線とその先のブロック端子の関係にある
ので、それぞれのテーブルのそれらの行の入出力種別を
取得し(ステップ2013)、入出力種別が「入力」の
行の端子/外部線を内部接続解析テーブルの入力側に、
入出力種別が「出力」の行の端子/外部線を内部接続解
析テーブルの出力側に登録する(ステップ2014)。
そして、入力側の端子/外部線名をそれらの端子/外部
線のソース出力用の共通名として登録する(ステップ2
015)。この操作をブロック接続定義テーブル100
5の残りの外部線全てについて繰り返す。
【0021】例えば、図9のブロック接続定義テーブル
1005を例にすると、9008の行のブロック外部線
「IL1」(7009)は、同テーブル内の他の行には
存在しない。したがって、次に、ステップ2012にお
いて、モジュール接続定義テーブル1004の内部線に
ついて同名の線をさがす。「IL1」は8008の行に
あるので、この線に接続されている端子「IT1」(7
017)とモジュール外部線「EIL1」(7006)
を内部接続解析テーブル1009の12009の行に示
したように登録する。すなわち、「EIL1」(700
6)を外部入力線にして、端子名(12003)として
「EIL1」、有効ビット(12004)として「7−
0」を登録する。また、「IT1」(7017)を入力
側端子にして、ブロック名(12005)として「ブロ
ック1」、端子名(12006)として「IT1」、有
効ビット(12007)として「7−0」を登録する
(ステップ2014)。そしてこれらの端子に共通の名
前として入力側の名前「EIL1」を共通名(1200
8)として登録する(ステップ2015)。これをブロ
ック接続定義テーブル1005の残りの外部線9003
と同名の線が、モジュール接続定義テーブル1004の
内部線8005がなくなるまで繰り返す(ステップ20
12からステップ2015のループ)。
【0022】ステップ2012において、ブロック接続
定義テーブル1005の残りの外部線9003と同名の
線が、モジュール接続定義テーブル1004の内部線8
005にあるかどうか調べた結果、ブロック接続定義テ
ーブル1005の残りの外部線9003と同名の線が、
モジュール接続定義テーブル1004の内部線8005
に存在しない場合は、図3の処理に進む。図3におい
て、利用者はユーザ情報として、入出力装置の実際のハ
ードウエア仕様と入出力シミュレータとのデータ変換を
行うインタフェースルーチンと、入出力装置の外部入出
力線との対応関係を図1におけるインタフェース指示1
002として入力する(ステップ2016)。本実施例
ではC言語で記述した入出力装置模擬部ソースプログラ
ムを生成する。したがって、インタフェースルーチンは
Cのルーチン(関数)とする。インタフェースルーチン
は入出力シミュレータ、模擬するMPUの種類等に依存
するので、利用者(ユーザ)が作成して入力する。な
お、インタフェースルーチンはMPUシミュレータから
ライブラリとして提供することもできる。
【0023】入出力装置模擬部生成システムは、図1の
外部入出力インターフェース定義テーブル作成部101
0において、上記入力された上記インタフェース指示1
002を構文解析/意味解析し(ステップ2017)、
内部に外部入出力インタフェース定義テーブル1011
を作成する(ステップ2018)。例えば、図13に示
したような、インタフェースルーチンの名称(1300
4)、対応するモジュール外部入出力線名(1300
2)、およびその対応有効ビット(13003)、入出
力種別(13005)からなる外部入出力インタフェー
ス定義テーブルを作成する。例えば、図13の1300
6の行に示す内容は、外部入力線「EIL1」(700
6)のビット7からビット0への入力はインタフェース
ルーチン「getAbus()」によって与えられるこ
とを示している。
【0024】次に、入出力装置模擬部ソースプログラム
生成部1012において入出力装置模擬部ソースプログ
ラム1020を生成する。本実施例において生成した入
出力装置模擬部ソースプログラム例を図14に示す。こ
のソースプログラムの生成の手順を、図1、図3、図4
および図14を用いて説明する。先ず、ヘッダ生成部1
013において、モジュール接続定義テーブル1004
からモジュール名(8002)を取得し、そのモジュー
ル名をルーチン(関数)名として、ルーチン(関数)の
ヘッダ部分14001、14002を生成する(ステッ
プ2019)。次に、レジスタ宣言生成部1014にお
いて、レジスタ定義テーブル1006からモジュール内
の全てのレジスタ名(10003)を取得し、それらを
変数名として整数型の宣言14003を出力する(ステ
ップ2020)。次に端子宣言生成部1015におい
て、内部接続解析テーブル1009から全ての共通名
(12008)を取得し、それらを変数名として整数型
の宣言14004を生成する(ステップ2021)。
【0025】次に入力インタフェース生成部1016に
おいて、外部入力インタフェース部分14006、14
007、14008を生成する。外部入出力インタフェ
ース定義テーブル1011(図13)の入出力種別13
005が「入力」である行があるかどうか調べる(ステ
ップ2022)。種別が「入力」の行があれば、その行
の線名13002を内部接続解析テーブル1009の出
力側端子/外部入力線の端子名/線名12003の欄で
検索し、それに対する共通名12008を取得する(ス
テップ2023)。取得した共通名12008にインタ
フェース関数10004の返す結果を代入する形の式を
出力する(ステップ2024)。外部入出力インタフェ
ース定義テーブル1011の入出力種別13005が
「入力」である行がなくなるまで、上記ステップ202
2、2023、2024のループを繰り返す。
【0026】ステップ2022で外部入出力インタフェ
ース定義テーブル1011の入出力種別13005が
「入力」である行がなくなったことが判定された場合
は、演算生成部1017の処理に移り、ブロック演算部
13009、13010、13011、13012、1
3013を生成する。すなわち、ブロック演算定義テー
ブル1007(図11)に演算式があるか否かを判定し
(ステップ2025)、演算式があった場合には、それ
ぞれの式で使用している端子名を取得し(ステップ20
26)、内部接続解析テーブル1009(図12)の端
子/線名の欄(12003、12006)で検索し、そ
の行の共通名を取得する(ステップ2027)。そし
て、演算式中の端子名を共通名に置き換え、代入文をC
言語の代入文として出力する(ステップ2028)。ブ
ロック演算定義テーブル1007に演算式がなくなるま
で上記ステップ2025〜2028のループを繰り返
す。
【0027】ステップ2025における判定の結果、未
処理の演算式がなくなった場合には、出力インタフェー
ス生成部1018の処理に移り、外部入力インタフェー
ス部分14014、14015を生成する(図4)。す
なわち、外部入出力インタフェーステーブル1011の
入出力種別13005が「出力」である行があるかどう
か調べる(ステップ2029)。「出力」である行があ
れば、その行の線名13002を内部接続解析テーブル
1009(図12)の入力側端子/外部出力線の端子名
/線名12006の欄で検索し、それに対する共通名1
2008を取得する(ステップ2030)。インタフェ
ースルーチン(関数)14004の引数に取得した共通
名12008を入れた形の式を出力する(ステップ20
31)。外部入出力インタフェーステーブル1011の
入出力種別13005が「出力」である行がなくなるま
で、上記ステップ2029、2030、2031からな
るループを繰り返す。外部入出力インタフェーステーブ
ル1011の入出力種別13005が「出力」である行
がなくなった場合には、フッタ生成部1019におい
て、関数のフッタ部分14016を生成する(ステップ
2032)。以上のようにして入出力装置模擬部ソース
プログラムが生成される。
【0028】この実施例によれば、入出力シミュレータ
の入出力装置模擬部ソースプログラムはその入出力装置
の設計において書かれたハードウエア仕様記述により生
成できる。これにより入出力シミュレータを適用するシ
ステムが変更された場合、シミュレータ作成者が入出力
装置のハードウエアを理解することなく迅速に新システ
ムに適用できる入出力シミュレータを作成することがで
きる。また、上述の実施例では、ハードウエア記述言語
で書かれたハード仕様記述情報を入力としたが、これが
表形式による形式的表表現で記述されたハードウエア仕
様や図形による形式的図表現で書かれたハードウエア仕
様であっても、そのハードウエア仕様が容易に認識でき
るならば一向に構わない。しかしながら、それぞれの表
現内容を認識するためには、上述の実施例における構文
解析の代わりに、表解析または図形解析にしなければな
らないことは当然である。
【0029】
【発明の効果】以上述べたように、本発明によれば、ハ
ードウエアの設計に使用するハードウエア記述を用いる
ことにより、簡単に入出力シミュレータの入出力装置模
擬部ソースプログラムを生成できるため、新システムを
開発するときの入出力シミュレータの開発が迅速にでき
る。これにより、従来よりも早期の時点において組込型
マイコン用ソフトウエアの入出力制御を含めた高度なテ
スト/デバッグが可能となり、組込型マイコン用ソフト
ウエアの生産性を上げることができる。
【図面の簡単な説明】
【図1】本発明システムの機能構成を示すブロック図
【図2】本発明の処理手順の1実施例を示すフローチャ
ートである。
【図3】本発明の処理手順の1実施例を示すフローチャ
ート(続き)である。
【図4】本発明の処理手順の1実施例を示すフローチャ
ート(続き)である。
【図5】本発明を適用するシミュレータの構成を示す図
である。
【図6】本発明システムを動作させる計算機の構成を示
す図である。
【図7】入出力装置のハードウエア構成の例を示す図で
ある。
【図8】モジュール接続定義テーブルの例を示す図であ
る。
【図9】ブロック接続定義テーブルの例を示す図であ
る。
【図10】レジスタ定義テーブルの例を示す図である。
【図11】ブロック演算定義テーブルの例を示す図であ
る。
【図12】内部接続解析テーブルの例を示す図である。
【図13】外部入出力インタフェース定義テーブルの例
を示す図である。
【図14】本発明システムにより生成した入出力装置模
擬部ソースプログラムの例を示す図である。
【符号の説明】
1001 ハード仕様記述 1002 インタフェース指示 1003ハード仕様定義テーブル作成部 1004 モジュール接続定義テーブル 1005 ブロック接続定義テーブル 1006 レジスタ定義テーブル 1007 ブロック演算定義テーブル 1008 内部接続解析テーブル作成部 1009 内部接続解析テーブル 1010 外部入出力インタフェース定義テーブル作成
部 1011 外部入出力インタフェース定義テーブル 1012 入出力装置模擬部ソースプログラム生成部 1020 入出力装置模擬部ソースファイル 5001 MPUシミュレータ 5002 入出力シミュレータ 5003 シミューレション実行部 5004 メモリ 5005 入出力装置模擬部実行制御機構 5006 入出力装置模擬部 5007 被テストプログラム 6001 メモリ 6002 表示装置 6003 CPU 6004 入力装置 6005 外部記憶装置
───────────────────────────────────────────────────── フロントページの続き (72)発明者 永松 祐嗣 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 入出力装置を模擬する入出力装置模擬部
    と、MPUと1つ以上の入出力装置を接続する信号線群
    を模擬する入出力装置模擬部実行制御機構とで構成され
    るとともに、MPUとメモリを模擬するMPUシミュレ
    ータと連動して動作する入出力シミュレータにおいて、
    上記各入出力装置のハードウエア仕様を形式言語で記述
    したハードウエア記述情報と、別途入力される各入出力
    装置のハードウエア仕様と入出力シミュレータとの間の
    データ変換を行うインタフェースルーチンおよび入出力
    装置と上記インタフェースルーチンの対応関係を指示す
    る情報とによって上記入出力装置模擬部のソースプログ
    ラムを作成することを特徴とする入出力装置模擬部作成
    方法。
  2. 【請求項2】 請求項1記載の入出力装置模擬部作成方
    法において、上記ハードウエア記述情報からハードウエ
    ア仕様を表す複数のハードウエア仕様定義テーブルを作
    成するとともに、上記インタフェースルーチンおよび上
    記入出力装置と上記インタフェースルーチンの対応関係
    を指示する情報から外部入出力インタフェース定義テー
    ブルを作成し、これらの複数のテーブルを参照すること
    によって上記入出力装置模擬部のソースプログラムを作
    成することを特徴とする入出力装置模擬部作成方法。
  3. 【請求項3】 請求項2記載の入出力装置模擬部作成方
    法において、上記ハードウエア仕様定義テーブルは、モ
    ジュール接続定義テーブル、ブロック接続定義テーブ
    ル、レジスタ定義テーブル、ブロック演算定義テーブ
    ル、内部接続解析テーブルからなることを特徴とする入
    出力装置模擬部作成方法。
  4. 【請求項4】 請求項1ないし3記載の入出力装置模擬
    部作成方法において、上記インタフェースルーチンは、
    接続されるMPUシミュレータ等によってライブラリと
    して提供されることを特徴とする入出力作成方法。
  5. 【請求項5】 請求項1ないし4記載の入出力装置模擬
    部作成方法であって、入出力装置のハードウエア仕様を
    形式的表表現により記述したハードウエア記述情報によ
    り入力することを特徴とした入出力装置模擬部作成方
    法。
  6. 【請求項6】 請求項1ないし4記載の入出力装置模擬
    部作成方法であって、入出力装置のハードウエア仕様を
    形式的図表現により記述したハードウエア記述情報によ
    り入力することを特徴とした入出力装置模擬部作成方
    法。
  7. 【請求項7】 請求項1ないし6記載の入出力装置模擬
    部作成方法であって、上記入出力装置模擬部は、模擬す
    る前記入出力装置と同等の外部インタフェースを持つこ
    とを特徴とする入出力模擬部作成方法。
JP5131842A 1993-03-22 1993-06-02 入出力装置模擬部作成方法 Pending JPH06348463A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP5131842A JPH06348463A (ja) 1993-06-02 1993-06-02 入出力装置模擬部作成方法
US08/214,688 US5557774A (en) 1993-03-22 1994-03-17 Method for making test environmental programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5131842A JPH06348463A (ja) 1993-06-02 1993-06-02 入出力装置模擬部作成方法

Publications (1)

Publication Number Publication Date
JPH06348463A true JPH06348463A (ja) 1994-12-22

Family

ID=15067381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5131842A Pending JPH06348463A (ja) 1993-03-22 1993-06-02 入出力装置模擬部作成方法

Country Status (1)

Country Link
JP (1) JPH06348463A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009193181A (ja) * 2008-02-13 2009-08-27 Meidensha Corp ソフトウェアの開発支援システム、支援方法およびこの方法のプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009193181A (ja) * 2008-02-13 2009-08-27 Meidensha Corp ソフトウェアの開発支援システム、支援方法およびこの方法のプログラム

Similar Documents

Publication Publication Date Title
US5557774A (en) Method for making test environmental programs
JP3027009B2 (ja) 設計取り込みシステム
US6226776B1 (en) System for converting hardware designs in high-level programming language to hardware implementations
EP1966689B1 (en) Non-graphical model dependencies in graphical modeling environments
US9612806B2 (en) Verification of computer-executable code generated from a model
US8869103B2 (en) Using intermediate representations to verify computer-executable code generated from a model
US8046735B1 (en) Transforming graphical objects in a graphical modeling environment
US7523023B1 (en) Automatic generation of component interfaces for computational hardware implementations generated from a block diagram model
US8141011B1 (en) Hardware description language code generation from a state diagram
JPH11513512A (ja) ディジタル信号プロセッサの製造方法
US7974823B1 (en) Test postcondition items for automated analysis and test generation
US7680632B1 (en) Test precondition items for automated analysis and test generation
JP2007510223A (ja) ダイアグラミング環境言語のための単純化データ信号サポート
US20060136863A1 (en) Applying coding standards in graphical programming environments
JPH04288680A (ja) よりハイレベルのビヘイビア指向のデスクリプションから回路又は装置の構造上のデスクリプションを生成する方法
WO1990011569A1 (en) Computer-aided engineering
JPH08202545A (ja) ターゲット言語コードを生成するためのオブジェクト指向システム及びその方法
US20040205700A1 (en) Apparatus and method for real-time caution and warning and system health management
Grimm et al. From Lustre to graphical models and SCCharts
JP2004139597A (ja) モデリング環境の外からダイナミックシステムモデルの内部信号にアクセスするための方法
Van Tassel Femto-VHDL: The Semantics of a Subset of VHDL and its Embedding in the HOL Proof Assistant
Gauthier et al. HDLRuby: A Ruby extension for hardware description and its translation to synthesizable Verilog HDL
Lor Automatic Synthesis of SARA Design Models From System
JPH06348463A (ja) 入出力装置模擬部作成方法
Chu et al. Three decades of HDLs. I. CDL through TI-HDL