JPS61239335A - I/oシミユレ−タ - Google Patents
I/oシミユレ−タInfo
- Publication number
- JPS61239335A JPS61239335A JP60081049A JP8104985A JPS61239335A JP S61239335 A JPS61239335 A JP S61239335A JP 60081049 A JP60081049 A JP 60081049A JP 8104985 A JP8104985 A JP 8104985A JP S61239335 A JPS61239335 A JP S61239335A
- Authority
- JP
- Japan
- Prior art keywords
- program
- control
- section
- data
- time
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[産業上の利用分野]
この発明は、I/Oシミュレータに関し、特に実際の装
−置が現実に存在しな(でも、実際の装置が制御する動
作に近い状態でシ・ミュレーションをすることが可能な
I/Oシミュレータに関する。
−置が現実に存在しな(でも、実際の装置が制御する動
作に近い状態でシ・ミュレーションをすることが可能な
I/Oシミュレータに関する。
[従来の技術]
例えば、装置の制御をはじめとして、各種のプラントと
か、システムについてのプロセス等の制御を行うような
制御装置、特に、情報処理装置(計算機)にあっては、
プログラムにより特定の制御動作が実行される場合が多
く、それぞれの装置等に対して所定の制御を実現するた
めに、特定の制御処理プログラムを開発することが必要
とされる。
か、システムについてのプロセス等の制御を行うような
制御装置、特に、情報処理装置(計算機)にあっては、
プログラムにより特定の制御動作が実行される場合が多
く、それぞれの装置等に対して所定の制御を実現するた
めに、特定の制御処理プログラムを開発することが必要
とされる。
しかも、開発した処理プログラムの動作を現実に確認し
てそれをデパックする場合には、制御対象となる装置に
ついて、現実にそれが完成した状態にあることが必ヅで
ある。
てそれをデパックする場合には、制御対象となる装置に
ついて、現実にそれが完成した状態にあることが必ヅで
ある。
[解決しようとする問題点コ
ー・般に、このような制御装置等のハードウェアとソフ
トウェアとは、−1行的な開発が必要となるが、ソフト
ウェアのデパックは、制御対象となる装置及びそのプロ
グラムが走る制御装置のハードウェアの開発が完成する
までは、完全な動作チェックが行えないという欠点があ
る。
トウェアとは、−1行的な開発が必要となるが、ソフト
ウェアのデパックは、制御対象となる装置及びそのプロ
グラムが走る制御装置のハードウェアの開発が完成する
までは、完全な動作チェックが行えないという欠点があ
る。
その結果、装置やシステムの開発に多くの日程を必要と
するという問題点がある。
するという問題点がある。
また、このような場合のI/Oシミュレーションとして
、現在、大型計算機トで動作するプログラムデバソグ用
のI/Oシミュレータを使用することも行われるが、こ
のシミュレータにあっては、プログラムのロジック確認
は行えても、ハードウェアとの絡み合いがある部分は、
確認がほとんど行えないという問題点がある。さらにハ
ードウェアから発生する信号を1バイト単位で定義して
計算機上でシミュレートする方法もあるが、この方法に
あっても、その開発プログラムについての機能チェック
が限度であるという欠点がある。
、現在、大型計算機トで動作するプログラムデバソグ用
のI/Oシミュレータを使用することも行われるが、こ
のシミュレータにあっては、プログラムのロジック確認
は行えても、ハードウェアとの絡み合いがある部分は、
確認がほとんど行えないという問題点がある。さらにハ
ードウェアから発生する信号を1バイト単位で定義して
計算機上でシミュレートする方法もあるが、この方法に
あっても、その開発プログラムについての機能チェック
が限度であるという欠点がある。
しかも、前記のようなシミュレーションでは、異常状態
に対するプログラムの動作を確認する定型的な手段はな
(、ハードウェアの一部をショー)・又は断線する等の
処理を行わなければならないため、不特定に発生する異
常状態についてのシミュレーションができないという問
題点がある。
に対するプログラムの動作を確認する定型的な手段はな
(、ハードウェアの一部をショー)・又は断線する等の
処理を行わなければならないため、不特定に発生する異
常状態についてのシミュレーションができないという問
題点がある。
[発明の目的コ
この発明は、このような従来技術の問題点等にかんがみ
てなされたものであって、このような問題点等を解決す
るとともに、制御対象となる装置とか、そのプログラム
が走る制御装置等が完成していなくても、現実に近い状
態でこれら装置とは独S7.に制御プログラムのシミュ
レーションが可能なI/Oシミュレータを提供すること
を[1的とする。
てなされたものであって、このような問題点等を解決す
るとともに、制御対象となる装置とか、そのプログラム
が走る制御装置等が完成していなくても、現実に近い状
態でこれら装置とは独S7.に制御プログラムのシミュ
レーションが可能なI/Oシミュレータを提供すること
を[1的とする。
[問題点を解決する手段]
このような[−1的を達成するためのこの発明における
手段は、開発対象となるプログラムを演算処理装置を介
して実行するプログラム制御手段と、このプログラム制
御手段からのアクセスに応じて仮想的に設定された標準
的な入/出力装置を実現する第1のI/O制御手段と、
仮想的に設定され、 た所定の機能回路又は
特定の装置を実際の動作に対応する実時間動作で実現す
る第2のI/O制御手段と、実時間動作に関する時間情
報とを備えていて、所定の指令に応じて時間情報を参照
してこの所定の指令に対応する仮想的に設定された所定
の機能回路又は特定の装置について時間に関する処理を
して開発対象となるプログラムについてのI/Oシミュ
レーションを行うというものである。
手段は、開発対象となるプログラムを演算処理装置を介
して実行するプログラム制御手段と、このプログラム制
御手段からのアクセスに応じて仮想的に設定された標準
的な入/出力装置を実現する第1のI/O制御手段と、
仮想的に設定され、 た所定の機能回路又は
特定の装置を実際の動作に対応する実時間動作で実現す
る第2のI/O制御手段と、実時間動作に関する時間情
報とを備えていて、所定の指令に応じて時間情報を参照
してこの所定の指令に対応する仮想的に設定された所定
の機能回路又は特定の装置について時間に関する処理を
して開発対象となるプログラムについてのI/Oシミュ
レーションを行うというものである。
[作用コ
このように時間カウント手段を設けて、時間情報を含め
て仮想的に設定された所定の機能回路又は特定の装置を
実際の動作に対応する実時間でシミュレーションするこ
とにより、制御対象となる装置等の動作を疑似的に実現
できる。
て仮想的に設定された所定の機能回路又は特定の装置を
実際の動作に対応する実時間でシミュレーションするこ
とにより、制御対象となる装置等の動作を疑似的に実現
できる。
その結果、プログラムの開発を制御装置とか制御対象装
置のハードウェアの開発とは、独立して独自に杼え、し
かも現実の装置に近い状態で動作確認ができ、プログラ
ムのデバッグが行えるため、プログラムの開発、確認ま
でを装置の制作とを並行して独立に実施でき、装置開発
の日程を短縮することが可能となる。
置のハードウェアの開発とは、独立して独自に杼え、し
かも現実の装置に近い状態で動作確認ができ、プログラ
ムのデバッグが行えるため、プログラムの開発、確認ま
でを装置の制作とを並行して独立に実施でき、装置開発
の日程を短縮することが可能となる。
[実施例]
以下、この発明の一実施例について図面を用いて詳細に
説明する。
説明する。
第1図は、この発明のI/Oシミュレータを適用した計
算機システムのブロック図であり、第2図は、そのI/
Oシミュレータの機能構成図、第3図は、そのメモリに
記憶されている特殊I/O制御についてのデータテーブ
ルの説明図、第4図は、I/O制御部の動作の流れ図、
第5図は、I/Oシミュレータのプログラム制御部の動
作の流れ図である。
算機システムのブロック図であり、第2図は、そのI/
Oシミュレータの機能構成図、第3図は、そのメモリに
記憶されている特殊I/O制御についてのデータテーブ
ルの説明図、第4図は、I/O制御部の動作の流れ図、
第5図は、I/Oシミュレータのプログラム制御部の動
作の流れ図である。
図中、■は、演算処理装置(CPU)であって、2は、
そのメモリである。3は、サイクルカウンタ、4は、I
/O制御部、5は、インタフェース、6は、システムバ
ス、7は、ディスプレイ、8は、キーボード、そして9
は、外部記憶装置としての磁気ディスク記憶装置である
。演算処理装置1とメモリ2、サイクルカウンタ3、そ
してI/O制御部4とは、それぞれシステムバス6にて
相νfに接続されていて、これらの間でデータ転送が行
われる。そしてI/O制御部4とは、インタフェース5
を介してディスプレイ7、キーボード8、ディスク記憶
装置9との間でデータ交換を1−テうものである。
そのメモリである。3は、サイクルカウンタ、4は、I
/O制御部、5は、インタフェース、6は、システムバ
ス、7は、ディスプレイ、8は、キーボード、そして9
は、外部記憶装置としての磁気ディスク記憶装置である
。演算処理装置1とメモリ2、サイクルカウンタ3、そ
してI/O制御部4とは、それぞれシステムバス6にて
相νfに接続されていて、これらの間でデータ転送が行
われる。そしてI/O制御部4とは、インタフェース5
を介してディスプレイ7、キーボード8、ディスク記憶
装置9との間でデータ交換を1−テうものである。
ここで、メモリ2は、演算処理装置lとI/O制御部4
とから共通にアクセスされるものであって、メモリ2に
は、インクブリタブログラム記憶部2a、標準I/O制
御プログラム記憶部2b。
とから共通にアクセスされるものであって、メモリ2に
は、インクブリタブログラム記憶部2a、標準I/O制
御プログラム記憶部2b。
特殊I/O制御プログラム記憶部2c、I/O制御デー
タ記憶部2d、制御対象プログラム記憶部2 e Nそ
してその他データ記憶部2f等の領域が設けられていて
、I/O制御データ記憶部2Cには、第3図に見るよう
なその制御事象対応にサイクルカウンタ3のカウント値
(時間)が記憶されたデータテーブル20が複数設けら
れていて、制御内容(事象)に応じて選択されるもので
ある。
タ記憶部2d、制御対象プログラム記憶部2 e Nそ
してその他データ記憶部2f等の領域が設けられていて
、I/O制御データ記憶部2Cには、第3図に見るよう
なその制御事象対応にサイクルカウンタ3のカウント値
(時間)が記憶されたデータテーブル20が複数設けら
れていて、制御内容(事象)に応じて選択されるもので
ある。
このカウント値は、特殊I/O制御プログラムが起動さ
れて実時間動作で仮想的に設定された所定の機能回路又
は特定の装置が実現される場合の時間情報となる。
れて実時間動作で仮想的に設定された所定の機能回路又
は特定の装置が実現される場合の時間情報となる。
さて、インタプリタプログラム記憶部2aには、演算処
理装置1により開発機器に使用されるプログラム言語を
この計算機システム−Lの言語に変換し、I/O制御部
4とデータ交換をして開発プログラムの制御を実行し、
シミュレーションするためのプログラムが記憶されてい
る。
理装置1により開発機器に使用されるプログラム言語を
この計算機システム−Lの言語に変換し、I/O制御部
4とデータ交換をして開発プログラムの制御を実行し、
シミュレーションするためのプログラムが記憶されてい
る。
I/O制御部4は、インタプリタプログラムが起動して
演算処理装置1からアクセスが有った場合に、標準I/
O制御プログラム、特殊I/O制御プログラムのどちら
を起動するかを解釈判定するとともに、演算処理装置1
側への割り込み処理。
演算処理装置1からアクセスが有った場合に、標準I/
O制御プログラム、特殊I/O制御プログラムのどちら
を起動するかを解釈判定するとともに、演算処理装置1
側への割り込み処理。
演算処理装置1からの割り込み信号の受は付は処理等の
行う。
行う。
標準I/O制御プログラム記憶部2bには、この゛計算
機システムに接続された機器を利用して制御対象となる
標準的なI/O機器1例えばCRT。
機システムに接続された機器を利用して制御対象となる
標準的なI/O機器1例えばCRT。
端末装置、キーボード、フロ、ツピーディスク、ノX−
ドディスク等の標準的なI/O制御動作に必要な種々の
プログラムが記憶されていて、■/O制御部4の?Ft
l制御の下で、この計算機システムに接続されているI
/O機器を利用して仮想装置に接続゛されるべき前記仮
想のI/O機器を仮想装置として実現する役割を果たす
。
ドディスク等の標準的なI/O制御動作に必要な種々の
プログラムが記憶されていて、■/O制御部4の?Ft
l制御の下で、この計算機システムに接続されているI
/O機器を利用して仮想装置に接続゛されるべき前記仮
想のI/O機器を仮想装置として実現する役割を果たす
。
すなわち、標準I/OプログラムによりI/O制御部4
は、前記の各I/O機器の実際の動作と同様な動作をし
てデータを受は付け、結果データを演算処理装置1側に
送出する。具体的な標準I/Oとしては、動作が定型的
なもの。動作を行うパラメータが1回のアクセスで全て
渡されるもの。
は、前記の各I/O機器の実際の動作と同様な動作をし
てデータを受は付け、結果データを演算処理装置1側に
送出する。具体的な標準I/Oとしては、動作が定型的
なもの。動作を行うパラメータが1回のアクセスで全て
渡されるもの。
Iloをアクセスした命令サイクルでそのIloの動作
が完了して、制御対象プログラム側には影響を′j、え
ないもの等である。
が完了して、制御対象プログラム側には影響を′j、え
ないもの等である。
一方、特殊I/O制御プログラム記憶部2bには、その
シミュレーション対象となる仮想装置又はこの装置を実
現するための仮想の機能回路を実現するプログラムがシ
ミュレーション装置対応に記憶されている。そしてプロ
グラムに応じて装置対応又は機能回路対応にそのプログ
ラムを起動して、その装置又は機能回路を識別する言語
(又はコード)により対応するデータテーブル20をI
/O制御データ記憶部2cの中から検索して参照し、装
置の指定され事象対応又は機能回路の事象対応に動作状
態とか、その動作結果、その遅れ時間等のデータを得て
、実際の制御タイミングを含めた形での仮想装置を実現
する。
シミュレーション対象となる仮想装置又はこの装置を実
現するための仮想の機能回路を実現するプログラムがシ
ミュレーション装置対応に記憶されている。そしてプロ
グラムに応じて装置対応又は機能回路対応にそのプログ
ラムを起動して、その装置又は機能回路を識別する言語
(又はコード)により対応するデータテーブル20をI
/O制御データ記憶部2cの中から検索して参照し、装
置の指定され事象対応又は機能回路の事象対応に動作状
態とか、その動作結果、その遅れ時間等のデータを得て
、実際の制御タイミングを含めた形での仮想装置を実現
する。
この特殊I/O制御プログラム記憶部2bに記憶される
プログラム等の具体例としては、算術論理演算命令につ
いての処理プログラム、時間設定命令についての処理プ
ログラム、データのロード/ストア命令についての処理
プログラム、動作の分岐命令についての処理プログラム
、データ定義命令についての処理プログラム、信号発生
命令にっていの処理プログラム、内部状態を記録するス
テータスメモリ部等であり、これらのI/O処理プログ
ラムを組合わせることにより、例えば特定の検査装置と
か、回線制御とか、特定の駆動機構制御装置とかが実現
されるものである。従って、この特殊I/O制御プログ
ラムは1.E記のような各機能又は装置を実現するIl
oのインタプリタプログラム処理部とその各機能を個別
的に実現するIZo rtt位に定義されたI/O定義
プログラム群とに展開されていて、I/O定義プログラ
ムに従い動作タイミングが前記データテーブル20のカ
ウント値を参照して決定される。 なお、前記のデータ
テーブル20を用いることなく、時間タイミングを含め
た処理内容を各I/O定義プログラムの中に組み込んで
もよいことはもちろんであり、このような場合には、デ
ータデープル20は不要である。
プログラム等の具体例としては、算術論理演算命令につ
いての処理プログラム、時間設定命令についての処理プ
ログラム、データのロード/ストア命令についての処理
プログラム、動作の分岐命令についての処理プログラム
、データ定義命令についての処理プログラム、信号発生
命令にっていの処理プログラム、内部状態を記録するス
テータスメモリ部等であり、これらのI/O処理プログ
ラムを組合わせることにより、例えば特定の検査装置と
か、回線制御とか、特定の駆動機構制御装置とかが実現
されるものである。従って、この特殊I/O制御プログ
ラムは1.E記のような各機能又は装置を実現するIl
oのインタプリタプログラム処理部とその各機能を個別
的に実現するIZo rtt位に定義されたI/O定義
プログラム群とに展開されていて、I/O定義プログラ
ムに従い動作タイミングが前記データテーブル20のカ
ウント値を参照して決定される。 なお、前記のデータ
テーブル20を用いることなく、時間タイミングを含め
た処理内容を各I/O定義プログラムの中に組み込んで
もよいことはもちろんであり、このような場合には、デ
ータデープル20は不要である。
ここで、算術論理演算命令についての処理プログラムは
、カウンタとかALUなどの回路を実現するものであり
、時間設定命令についての処理プログラムは、遅延素子
とか装置の動作時間などのを実現する。データのロード
/ストア命令についてのプログラムは、ラッチ回路とか
DMA回路のように、インタプリタ側又は制御対象プロ
グラム側からのデータを入出力するデータの伝授、装置
とメモリ間のデータ転送動作を行う。また、動作の分岐
命令についての処理プログラムは、デーコーダやセレク
タに類似し、条件により動作を切り換えたり、指定デー
タより該当処理の選択を行ったりするものである。さら
にデータ定義命令についての処理プログラムは、装置上
で発生するデータについて論理を構成して発生させるも
のではなく、あらかじめデータとして記録しておき、装
置の動作データとして制御対象プログラム側(又はイン
タプリタ側)に渡すものである。信号発生命令にってい
の処理プログラムは、装置から制御対象プログラム(又
はインタプリタ側)に対して動作の終了等を伝えるため
に用いられるもので、割り込み信号の発生によりその装
置の動作の終了をプログラム制御側に伝えるものである
。
、カウンタとかALUなどの回路を実現するものであり
、時間設定命令についての処理プログラムは、遅延素子
とか装置の動作時間などのを実現する。データのロード
/ストア命令についてのプログラムは、ラッチ回路とか
DMA回路のように、インタプリタ側又は制御対象プロ
グラム側からのデータを入出力するデータの伝授、装置
とメモリ間のデータ転送動作を行う。また、動作の分岐
命令についての処理プログラムは、デーコーダやセレク
タに類似し、条件により動作を切り換えたり、指定デー
タより該当処理の選択を行ったりするものである。さら
にデータ定義命令についての処理プログラムは、装置上
で発生するデータについて論理を構成して発生させるも
のではなく、あらかじめデータとして記録しておき、装
置の動作データとして制御対象プログラム側(又はイン
タプリタ側)に渡すものである。信号発生命令にってい
の処理プログラムは、装置から制御対象プログラム(又
はインタプリタ側)に対して動作の終了等を伝えるため
に用いられるもので、割り込み信号の発生によりその装
置の動作の終了をプログラム制御側に伝えるものである
。
サイルカウンタ3は、演算処理装置1が命令を実行する
たびに演算処理装置1からのカウントアツプ信号により
その実行命令のマシンサイクルに対応してカウントアツ
プされるフリーランニングタイマであって、I/O制御
部4からその時間が参照される。
たびに演算処理装置1からのカウントアツプ信号により
その実行命令のマシンサイクルに対応してカウントアツ
プされるフリーランニングタイマであって、I/O制御
部4からその時間が参照される。
ところで、I/O制御部4は、標準I/O制御プログラ
ム処理を実行しているときには、インタプリタプログラ
ムの実行によって演算処理装置1からアクセスを受けて
、そのアクセスされるアドレスにより、実現すべきIl
oの種別を選択して、インタプリタプログラムが開発プ
ログラムを解釈して得たデータの転送を受けて、それぞ
れの標準的なl/O9例えばディスプレイとか、端末装
置の動作をこの計算機システムに現在接続されているI
/O機器を使用して仮想的に作り出し、データの生成と
かデータの入出力動作とかを実現する。
ム処理を実行しているときには、インタプリタプログラ
ムの実行によって演算処理装置1からアクセスを受けて
、そのアクセスされるアドレスにより、実現すべきIl
oの種別を選択して、インタプリタプログラムが開発プ
ログラムを解釈して得たデータの転送を受けて、それぞ
れの標準的なl/O9例えばディスプレイとか、端末装
置の動作をこの計算機システムに現在接続されているI
/O機器を使用して仮想的に作り出し、データの生成と
かデータの入出力動作とかを実現する。
次に、第2図に従って、その制御動作について説明する
。
。
さて、開発されたある制御対象プログラムは、磁気ディ
スク記憶装置9に記憶され、キーボード7からの所定の
キーの入力により、制御対象プログラム記憶部2eに転
送されて記憶される。また、I/O制御データ記憶部2
cには、シミュレーションの対象となる開発したプログ
ラムが制御することになる実際の装置についてその動作
時間を考慮した時間データと結果、そして次のシーケン
スに関するデータ(指令も含む)等が同様に転送されて
第3図に見るデータテーブル20の形で記憶されている
。
スク記憶装置9に記憶され、キーボード7からの所定の
キーの入力により、制御対象プログラム記憶部2eに転
送されて記憶される。また、I/O制御データ記憶部2
cには、シミュレーションの対象となる開発したプログ
ラムが制御することになる実際の装置についてその動作
時間を考慮した時間データと結果、そして次のシーケン
スに関するデータ(指令も含む)等が同様に転送されて
第3図に見るデータテーブル20の形で記憶されている
。
次に、この計算機システムが動作を開始すると、演算処
理装置1が動作してインタプリタプログラム記憶部2a
のプログラムが起動され、第2図に見るプログラム制御
部/Oとして機能する。そして前記制御対象プログラム
記憶部2eに記憶されたシミュレーションの対象となる
制御対象プログラムがプログラムメモリ部11としてプ
ログラム制御部/Oにより解釈されて、実行されて行く
。
理装置1が動作してインタプリタプログラム記憶部2a
のプログラムが起動され、第2図に見るプログラム制御
部/Oとして機能する。そして前記制御対象プログラム
記憶部2eに記憶されたシミュレーションの対象となる
制御対象プログラムがプログラムメモリ部11としてプ
ログラム制御部/Oにより解釈されて、実行されて行く
。
また、I/O制御部4は、対応する制御対象プログラム
が起動されたときには、1/Oi制御実行部12として
機能するものである。
が起動されたときには、1/Oi制御実行部12として
機能するものである。
さて、プログラム制御部/Oは、制御対象ブロダラムの
内容をプログラムメモリ11から読出し、この読出され
た内容を解釈して実行する。ここで実行の際に、プログ
ラム制御部IOは、メモリアクセスが発生した場合にこ
のメモリアクセスによりI/O処理として定義付けられ
ているアドレスであるか否かをチェックして、Iloと
して定義付けられているアドレスである場合には、その
データが読み出されて、I/O制御制御部12に制御が
移行する。
内容をプログラムメモリ11から読出し、この読出され
た内容を解釈して実行する。ここで実行の際に、プログ
ラム制御部IOは、メモリアクセスが発生した場合にこ
のメモリアクセスによりI/O処理として定義付けられ
ているアドレスであるか否かをチェックして、Iloと
して定義付けられているアドレスである場合には、その
データが読み出されて、I/O制御制御部12に制御が
移行する。
なお、以りのアドレスアクセスにより制御をIloに移
行させる場合は、メモリマ、ソプドI/Oの場合であり
、これは、I/OポートのアクセスによりI/Oアクセ
スと解釈してその制御を■/O制御制御部12に渡すよ
うにしてもよい。■/O制御制御部12では、プログラ
ム制御部/OからのI/Oアクセスに従って、そのアク
セスされて発生するデータから標9I/O制御であるか
、特殊I/O制御であるかを判定して、どちらのI/O
制御を起動して制御を開始するかを決定する。
行させる場合は、メモリマ、ソプドI/Oの場合であり
、これは、I/OポートのアクセスによりI/Oアクセ
スと解釈してその制御を■/O制御制御部12に渡すよ
うにしてもよい。■/O制御制御部12では、プログラ
ム制御部/OからのI/Oアクセスに従って、そのアク
セスされて発生するデータから標9I/O制御であるか
、特殊I/O制御であるかを判定して、どちらのI/O
制御を起動して制御を開始するかを決定する。
ここで、標準I/O制御プログラムと判定されて、これ
が選択され動作したときには、例えば、さらにアクセス
アドレスによりその動作を行うIloの種別を判定して
、例えばそれがCRTディスプレイに対応するIloを
指定するアドレスであるときには、Ilo側に渡される
データの内容とその旨をこの計算機システムに接続され
たCRTディスプレイに表示する。また、フロッピーデ
ィスクディスク装置のような場合には、この計算 2機
システムの磁気ディスク記憶装置9にフロッピーディス
ク装置と同様なフォーマットにおいて書き込み/読み出
しを行い、その旨のデータを書き込むものである。
が選択され動作したときには、例えば、さらにアクセス
アドレスによりその動作を行うIloの種別を判定して
、例えばそれがCRTディスプレイに対応するIloを
指定するアドレスであるときには、Ilo側に渡される
データの内容とその旨をこの計算機システムに接続され
たCRTディスプレイに表示する。また、フロッピーデ
ィスクディスク装置のような場合には、この計算 2機
システムの磁気ディスク記憶装置9にフロッピーディス
ク装置と同様なフォーマットにおいて書き込み/読み出
しを行い、その旨のデータを書き込むものである。
このようにして標準I/O制御プログラムにて実現され
る標準I/O制御プログラム部13においては、CRT
ディスプレイとか、キーボード。
る標準I/O制御プログラム部13においては、CRT
ディスプレイとか、キーボード。
フロッピーディスク装置、ハードディスク装置のシミュ
レーシヨンを行うものである。なお、この標準I/Oプ
ログラム部13は、この発明における第1のI/O制御
手段を構成する具体例の1つである。
レーシヨンを行うものである。なお、この標準I/Oプ
ログラム部13は、この発明における第1のI/O制御
手段を構成する具体例の1つである。
一方、特殊I/O制御プログラムは、Iloのインクプ
リタブログラム処理部として実現される特殊I/O制御
プログラム部14とそのI/O単位に定義されたI/O
定義プログラム群として実現されるI/O定義メモリ部
15とからなり、例えば特殊I/O制御プログラム部1
4は、そのアクセスアドレスによって、その動作を規定
す゛るI/O定義プログラムをI/O定義メモリ部15
の中から選択する。そして選択されたI / O定義プ
ログラムに従って、特定の動作についてインタブリット
して実行して行く。
リタブログラム処理部として実現される特殊I/O制御
プログラム部14とそのI/O単位に定義されたI/O
定義プログラム群として実現されるI/O定義メモリ部
15とからなり、例えば特殊I/O制御プログラム部1
4は、そのアクセスアドレスによって、その動作を規定
す゛るI/O定義プログラムをI/O定義メモリ部15
の中から選択する。そして選択されたI / O定義プ
ログラムに従って、特定の動作についてインタブリット
して実行して行く。
すなわち、特殊I/Oの制御プログラムの内容は、第4
図のステップ■に見るように、データAをプログラム制
御部/Oから受は取ったと仮定するとると、ステップ■
で例えば時間30μs後にステップ■にて割り込みを発
生する。そして次の動作として、ステップ■にて割り込
み発生後かを判定して、ステップ■にて、データBを出
力してプログラム制御部/O又は;til+御対象プロ
グラム11にデータBを渡す処理をする。
図のステップ■に見るように、データAをプログラム制
御部/Oから受は取ったと仮定するとると、ステップ■
で例えば時間30μs後にステップ■にて割り込みを発
生する。そして次の動作として、ステップ■にて割り込
み発生後かを判定して、ステップ■にて、データBを出
力してプログラム制御部/O又は;til+御対象プロ
グラム11にデータBを渡す処理をする。
この場合の第4図に見る30μsの値は、先のデータテ
ーブル20の、その事象に対応する時間値の欄に記憶さ
れている値に対応し、これが参照されることになる。な
お、この特殊I/Oプログラム部1とI/O定義メモリ
部15とは、この発明における第2のI/O制御手段を
構成する具体例の1つである。
ーブル20の、その事象に対応する時間値の欄に記憶さ
れている値に対応し、これが参照されることになる。な
お、この特殊I/Oプログラム部1とI/O定義メモリ
部15とは、この発明における第2のI/O制御手段を
構成する具体例の1つである。
一方、プログラム制御部lOの動作としては、プログラ
ム制御部/Oが特殊I/O制御プログラム部14を対象
としてI/O制御制御部12をアクセスした場合には、
プログラム制御部/Oは、サイクルカウンタ3を命令実
行のマシンサイクルに応じてカウントアツプする。そし
てプログラムメモリ部11に格納された制御対象プログ
ラムを解釈した結果として、第5図に見るように、メモ
リの特定アドレスをアクセスしてデータAを得て、ステ
ップ■aでI/O制御制御部12に対してデータAを出
力する。
ム制御部/Oが特殊I/O制御プログラム部14を対象
としてI/O制御制御部12をアクセスした場合には、
プログラム制御部/Oは、サイクルカウンタ3を命令実
行のマシンサイクルに応じてカウントアツプする。そし
てプログラムメモリ部11に格納された制御対象プログ
ラムを解釈した結果として、第5図に見るように、メモ
リの特定アドレスをアクセスしてデータAを得て、ステ
ップ■aでI/O制御制御部12に対してデータAを出
力する。
次に、ステップ■aにてI/O制御制御部12からの割
り込み信号待ちの、待ちループに入る。
り込み信号待ちの、待ちループに入る。
ここでI/O制御制御部12から割り込み信号を受は付
けると、ステップ■aにてデータ入カドしてI/O制御
制御部12からデータBを受は付けてプログラム制御部
/O介してプログラドメモリ部11の制御対象プログラ
ム側へと渡す。なお、この場合I/O制御制御部12か
ら直接データBを制御対象プログラム11に渡すように
してもよ、い。
けると、ステップ■aにてデータ入カドしてI/O制御
制御部12からデータBを受は付けてプログラム制御部
/O介してプログラドメモリ部11の制御対象プログラ
ム側へと渡す。なお、この場合I/O制御制御部12か
ら直接データBを制御対象プログラム11に渡すように
してもよ、い。
ところで、前記の30μsは、このサイクルカウンタ3
のカウント値をI/O制御制御部12が参照して決定さ
れ、プログラム制御部1o側がら所定の指令を受けたと
きにI/O制御制御部12が現在のサイクルカウンタ3
の値を得て、サイクルカウンタの値をサンプリング監視
して、その値が30μs経過したときに、I/O制御制
御部12がプログラム制御w、/O側に割り込み信号を
発生して所定のデータBを出力してプログラム制御部/
O側に動作が移されることになる。
のカウント値をI/O制御制御部12が参照して決定さ
れ、プログラム制御部1o側がら所定の指令を受けたと
きにI/O制御制御部12が現在のサイクルカウンタ3
の値を得て、サイクルカウンタの値をサンプリング監視
して、その値が30μs経過したときに、I/O制御制
御部12がプログラム制御w、/O側に割り込み信号を
発生して所定のデータBを出力してプログラム制御部/
O側に動作が移されることになる。
このようにしてI/O制御制御部12は、特殊I/O制
御プログラム部14のプログラム処理を実行していると
きに、仮想装置又は機能回路等のシミュレーション対象
となる装置の応答時間又は次の動作をする時間を前記デ
ータテーブル20のサイクルカウンタ3のカフラント値
の欄を参照して処理し、サイクルカウンタ3がこの値を
示すまで、待ち動作をして、実際のI/O動作等をスト
ップし、もって仮想装置又は機能回路等のデータの生成
とかデータの入/出力動作とかを現実の装置と対応した
実時間の動作として実現する。
御プログラム部14のプログラム処理を実行していると
きに、仮想装置又は機能回路等のシミュレーション対象
となる装置の応答時間又は次の動作をする時間を前記デ
ータテーブル20のサイクルカウンタ3のカフラント値
の欄を参照して処理し、サイクルカウンタ3がこの値を
示すまで、待ち動作をして、実際のI/O動作等をスト
ップし、もって仮想装置又は機能回路等のデータの生成
とかデータの入/出力動作とかを現実の装置と対応した
実時間の動作として実現する。
なお、特殊I/O制御プログラム部14のプログラム処
理を実行しているときには、マシンサイクルに応答して
各種のデータを生成し、標準的なI/O制御プログラム
部13に対してより高速なI/Oシミュレーションを実
現するものである。
理を実行しているときには、マシンサイクルに応答して
各種のデータを生成し、標準的なI/O制御プログラム
部13に対してより高速なI/Oシミュレーションを実
現するものである。
以−ヒ、説明してきたが、このように計算機システムを
利用して、開発プログラムを実行して、現実に近いタイ
ミングを含めた動作にてシミュレーションが可能であり
、特に、データテーブルのデータの内容と設定時間を変
えることにより、簡単にハードウェアの障害とか、特別
な動作状態を実現できる。
利用して、開発プログラムを実行して、現実に近いタイ
ミングを含めた動作にてシミュレーションが可能であり
、特に、データテーブルのデータの内容と設定時間を変
えることにより、簡単にハードウェアの障害とか、特別
な動作状態を実現できる。
その結果、この動作に応じて開発プログラムのデバッグ
ができ、制御装置をはじめ各種の装置とは独きyに制御
対象プログラムをほぼ完全な形態で完成させることがで
きる。しかもデバッグ用のプログラムとは切り離されて
いるので、デバッ’/−f’ログラムとは無関係に実施
可能である。
ができ、制御装置をはじめ各種の装置とは独きyに制御
対象プログラムをほぼ完全な形態で完成させることがで
きる。しかもデバッグ用のプログラムとは切り離されて
いるので、デバッ’/−f’ログラムとは無関係に実施
可能である。
さらに、このように特殊なI/O制御部を設けて現実の
装置を仮想的に実現できることから、現実に装置に発生
した障害を解析する場合に、その障害と同様な状態を四
環してその環境で装置とは独立にシミュレーションが可
能となるという利点が生じる。
装置を仮想的に実現できることから、現実に装置に発生
した障害を解析する場合に、その障害と同様な状態を四
環してその環境で装置とは独立にシミュレーションが可
能となるという利点が生じる。
ところで、実施例では、サラクルカウンタは、ハードウ
ェアとしてブロックで示しているが、これは、メモリ」
−に設定したソフトカウンタ、ソフトタイマとして実現
されてもよ(、また、I/O制御部も特別な処理装置に
よることなく、インクプリタ制御を実現する演算処理装
置がI/Oプログラムを起動するして、これを兼用する
ことで実現されてもよい。
ェアとしてブロックで示しているが、これは、メモリ」
−に設定したソフトカウンタ、ソフトタイマとして実現
されてもよ(、また、I/O制御部も特別な処理装置に
よることなく、インクプリタ制御を実現する演算処理装
置がI/Oプログラムを起動するして、これを兼用する
ことで実現されてもよい。
また、実施例にあっては、I/O制御側がサイクルカウ
ンタの値を参照してタイミング制御するようにしている
が、これは、プログラム制御側でサイクルカウンタを起
動して、I/O制御側がそのカウント時間を見るように
してもよいことはもちろんである。
ンタの値を参照してタイミング制御するようにしている
が、これは、プログラム制御側でサイクルカウンタを起
動して、I/O制御側がそのカウント時間を見るように
してもよいことはもちろんである。
なお、サイクルカウンタは、実施例のごとくマシンサイ
クルを単位にするものに限定されるものではなく、いわ
ゆる一般の時間をカウントする手段でよいことはもちろ
んである。
クルを単位にするものに限定されるものではなく、いわ
ゆる一般の時間をカウントする手段でよいことはもちろ
んである。
[発明の効果]
以上の説明から理解できるように、この発明にあっては
、開発対象となるプログラムを演算処理装置を介して実
行するプログラム制御手段と、このプログラム制御手段
からのアクセスに応じて仮想的に設定された標準的な人
/出力装置を実現する第1のI/O制御手段と、仮想的
に設定された所定の機能回路又は特定の装置を実際の動
作に対応する実時間動作で実現する第2のI/O制御子
段と、実時間動作に関する時間情報とを備えていて、所
定の指令に応じて時間情報を参照してこの所定の指令に
対応する仮想的に設定された所定の機能回路又は特定の
装置について時間に関する処理をして開発対象となるプ
ログラムについての工/Oシミュレーションを行うよう
にしているので、時間情報により動作タイミングを決定
でき、時間情報を含めて仮想的に設定された所定の機能
回路又は特定の装置を実際の動作に対応する実時間でン
ミュレーシaンすることができる。
、開発対象となるプログラムを演算処理装置を介して実
行するプログラム制御手段と、このプログラム制御手段
からのアクセスに応じて仮想的に設定された標準的な人
/出力装置を実現する第1のI/O制御手段と、仮想的
に設定された所定の機能回路又は特定の装置を実際の動
作に対応する実時間動作で実現する第2のI/O制御子
段と、実時間動作に関する時間情報とを備えていて、所
定の指令に応じて時間情報を参照してこの所定の指令に
対応する仮想的に設定された所定の機能回路又は特定の
装置について時間に関する処理をして開発対象となるプ
ログラムについての工/Oシミュレーションを行うよう
にしているので、時間情報により動作タイミングを決定
でき、時間情報を含めて仮想的に設定された所定の機能
回路又は特定の装置を実際の動作に対応する実時間でン
ミュレーシaンすることができる。
その結果、プログラムの開発を制御装置とか制御対象装
置のハードウェアの開発とは、独立して独自に行え、し
かも現実の装置に近い杖態で動作確認ができ、プログラ
ムのデバッグが行えるため、プログラムの開発、確認ま
での過程と装置の制作とを並行して実施でき、装置開発
の[」程を短縮することかり能となる。
置のハードウェアの開発とは、独立して独自に行え、し
かも現実の装置に近い杖態で動作確認ができ、プログラ
ムのデバッグが行えるため、プログラムの開発、確認ま
での過程と装置の制作とを並行して実施でき、装置開発
の[」程を短縮することかり能となる。
第1 図は、この発明のI/Oシミュレータの適用した
計算機システムのブロック図であり、第2図は、そのI
/Oシミュレータの機能構成図、第3図は、各制御動作
についてのメモリに記憶されている特定のI/O制御動
作についてのデータテーブルの説明図、第4図は、I/
O制御部の動作の流れ図、第5図は、■/Oシミュレー
タのプログラム制御部の動作の流れ図である。 ■・・・演算処理装置、2・・・メモリ、3・・・サイ
クルカウンタ、 2a・・・インタプリタプログラム記憶部、2b・・・
標準I/O制御プログラム記憶部、2c・・・特殊I/
O制御プログラム記憶部、2d・・・I/O制御データ
記憶部、 2e・・・制御対象プログラム記憶部、2f・・・その
他データ記憶部、 4・・・I/O制御部(M PU)、5・・・インタ
フェース、6・・・システムバス、7・・・ディスプレ
イ、8・・・キーボード、9・・・磁気ディスク記憶装
置、 /O・・・プログラム制御部、 11・・・制御対象プログラム、 12・・・I/O制御制御部、13・・・標準I/O;
閾御プログラム部、14・・・特殊I/O制御プログラ
ム部、20・・・データテーブル。
計算機システムのブロック図であり、第2図は、そのI
/Oシミュレータの機能構成図、第3図は、各制御動作
についてのメモリに記憶されている特定のI/O制御動
作についてのデータテーブルの説明図、第4図は、I/
O制御部の動作の流れ図、第5図は、■/Oシミュレー
タのプログラム制御部の動作の流れ図である。 ■・・・演算処理装置、2・・・メモリ、3・・・サイ
クルカウンタ、 2a・・・インタプリタプログラム記憶部、2b・・・
標準I/O制御プログラム記憶部、2c・・・特殊I/
O制御プログラム記憶部、2d・・・I/O制御データ
記憶部、 2e・・・制御対象プログラム記憶部、2f・・・その
他データ記憶部、 4・・・I/O制御部(M PU)、5・・・インタ
フェース、6・・・システムバス、7・・・ディスプレ
イ、8・・・キーボード、9・・・磁気ディスク記憶装
置、 /O・・・プログラム制御部、 11・・・制御対象プログラム、 12・・・I/O制御制御部、13・・・標準I/O;
閾御プログラム部、14・・・特殊I/O制御プログラ
ム部、20・・・データテーブル。
Claims (2)
- (1)開発対象となるプログラムを演算処理装置を介し
て実行するプログラム制御手段と、このプログラム制御
手段からのアクセスに応じて仮想的に設定された標準的
な入/出力装置を実現する第1のI/O制御手段と、仮
想的に設定された所定の機能回路又は特定の装置を実際
の動作に対応する実時間動作で実現する第2のI/O制
御手段と、前記実時間動作に関する時間情報とを備え、
前記所定の指令に応じて前記時間情報を参照してこの所
定の指令に対応する前記仮想的に設定された所定の機能
回路又は特定の装置について時間に関する処理をして前
記開発対象となるプログラムについてのI/Oシミュレ
ーションを行うことを特徴とするI/Oシミュレータ。 - (2)第2のI/O制御手段は、実際の動作に対応する
実時間動作で各機能回路を実現する機能単位で定義され
た複数の機能処理手段とこれら機能処理手段を組合わせ
て所定の仮想的に設定された機能ユニット又は特定の装
置を実現するインタプリタ処理手段とを有することを特
徴とする特許請求の範囲第1項記載のI/Oシミュレー
タ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60081049A JPS61239335A (ja) | 1985-04-16 | 1985-04-16 | I/oシミユレ−タ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60081049A JPS61239335A (ja) | 1985-04-16 | 1985-04-16 | I/oシミユレ−タ |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS61239335A true JPS61239335A (ja) | 1986-10-24 |
Family
ID=13735554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60081049A Pending JPS61239335A (ja) | 1985-04-16 | 1985-04-16 | I/oシミユレ−タ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS61239335A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01234945A (ja) * | 1988-03-16 | 1989-09-20 | Hitachi Micro Comput Eng Ltd | デバッグツール |
-
1985
- 1985-04-16 JP JP60081049A patent/JPS61239335A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01234945A (ja) * | 1988-03-16 | 1989-09-20 | Hitachi Micro Comput Eng Ltd | デバッグツール |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5978584A (en) | Debugging apparatus for debugging a program by changing hardware environments without changing program operation state | |
US20020144235A1 (en) | Debugging embedded systems | |
JP2845155B2 (ja) | シングルチップマイクロコンピュータのエミュレーションチップ | |
JPH06214819A (ja) | 情報処理装置及びこの装置の評価システムならびに評価方法 | |
JPS61239335A (ja) | I/oシミユレ−タ | |
JP2005353020A (ja) | コンピュータプログラムのシミュレーション方式 | |
JPS6349851A (ja) | シミユレ−シヨンシステム | |
JPS61239345A (ja) | I/oシミユレ−タ | |
JPS61239344A (ja) | I/oシミユレ−タ | |
JPH0696151A (ja) | ロジックシミュレーション装置 | |
JP2533489B2 (ja) | シミユレ−シヨン方式 | |
JPH08263130A (ja) | シミュレーション方式 | |
JP2808757B2 (ja) | デバッグ用マイクロプロセッサ | |
JPH0550016B2 (ja) | ||
JP2001209555A (ja) | 入出力エミュレーション装置、入出力装置のエミュレーション方法および入出力装置エミュレーションプログラムを記録した記録媒体 | |
JPH01307837A (ja) | Mpuシミュレーション方法及びmpuシミュレータ | |
JPH0219937A (ja) | 電子計算機システム | |
JPH0373011B2 (ja) | ||
JPS63126043A (ja) | 論理シミユレ−タ | |
JPH02308342A (ja) | シミュレート・デバッガの構築方法 | |
JP2581214B2 (ja) | 論理シミュレータ | |
JPH02284205A (ja) | Pcのシミュレーション方式 | |
JPH0352038A (ja) | デバッグ装置 | |
JPH04255038A (ja) | プロセッサのシミュレータによる入出力実行方法 | |
JPH08147191A (ja) | エミュレータおよびそれを用いたマイクロコンピュータ開発支援装置 |