JPH05307511A - プロトコル・シミュレーション装置 - Google Patents
プロトコル・シミュレーション装置Info
- Publication number
- JPH05307511A JPH05307511A JP4111538A JP11153892A JPH05307511A JP H05307511 A JPH05307511 A JP H05307511A JP 4111538 A JP4111538 A JP 4111538A JP 11153892 A JP11153892 A JP 11153892A JP H05307511 A JPH05307511 A JP H05307511A
- Authority
- JP
- Japan
- Prior art keywords
- protocol
- simulation
- state transition
- channel
- transition diagram
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
- Computer And Data Communications (AREA)
Abstract
(57)【要約】
【目的】 プロトコルの動的な検証を特別な実地環境あ
るいは模擬環境を要することなく自動的に行うことを目
的としている。 【構成】 通信プロトコルの動的な検証を行う上で必要
なシミュレーション環境をユーザからの入力を通じて設
定するシミュレーション環境設定部10と、設定された
シュミレーション環境上で通信プロトコルの動的な検証
を状態遷移図に基づいて実行するシュミレーション実行
部11と、現在のシュミレーション状況、すなわち現在
シミュレーション中のプロトコルの状態遷移図やシミュ
レーション環境、さらにはプロトコルエラーの発生箇所
およびエラー内容等をユーザに分かりやすく表示するた
めの制御を行う表示制御部12とを有する。
るいは模擬環境を要することなく自動的に行うことを目
的としている。 【構成】 通信プロトコルの動的な検証を行う上で必要
なシミュレーション環境をユーザからの入力を通じて設
定するシミュレーション環境設定部10と、設定された
シュミレーション環境上で通信プロトコルの動的な検証
を状態遷移図に基づいて実行するシュミレーション実行
部11と、現在のシュミレーション状況、すなわち現在
シミュレーション中のプロトコルの状態遷移図やシミュ
レーション環境、さらにはプロトコルエラーの発生箇所
およびエラー内容等をユーザに分かりやすく表示するた
めの制御を行う表示制御部12とを有する。
Description
【0001】
【産業上の利用分野】本発明は、通信ソフトウェア開発
において設計された通信プロトコルのシミュレーション
を行うプロトコル・シミュレーション装置に関する。
において設計された通信プロトコルのシミュレーション
を行うプロトコル・シミュレーション装置に関する。
【0002】
【従来の技術】従来、通信ソフトウェア開発におけるプ
ロトコル(通信システムの動作実態であるプロセス間の
通信手順)の検証では、デッドロックや受信不能状態等
の障害検出等についてはプロトコル記述の静的な解析に
より可能である。
ロトコル(通信システムの動作実態であるプロセス間の
通信手順)の検証では、デッドロックや受信不能状態等
の障害検出等についてはプロトコル記述の静的な解析に
より可能である。
【0003】しかしながら、プロセス内でのタスク処理
時間や、チャネルを通じて信号が送られてくる場合等、
伝送時間を考慮したプロトコルの動的な検証について
は、プロトコル設計およびコーディングの完了後、実シ
ステムあるいは模擬システムを構築して実地試験を行う
必要があり、時間的、労力的に多大なコストがこの動的
検証のために費やされていた。また、この場合、プロト
コルに誤りがあった場合にプロトコルを根本的に設計し
直さねばならないこともあり、これが一連のプロトコル
設計作業を複雑にしている要因の一つとなっていた。
時間や、チャネルを通じて信号が送られてくる場合等、
伝送時間を考慮したプロトコルの動的な検証について
は、プロトコル設計およびコーディングの完了後、実シ
ステムあるいは模擬システムを構築して実地試験を行う
必要があり、時間的、労力的に多大なコストがこの動的
検証のために費やされていた。また、この場合、プロト
コルに誤りがあった場合にプロトコルを根本的に設計し
直さねばならないこともあり、これが一連のプロトコル
設計作業を複雑にしている要因の一つとなっていた。
【0004】
【発明が解決しようとする課題】このように従来、通信
プロトコルの動的な検証つまり時間的な要素を組み込ん
だ検証には様々な障害が伴い、効率良くシミュレーショ
ンを行うことが困難とされていた。
プロトコルの動的な検証つまり時間的な要素を組み込ん
だ検証には様々な障害が伴い、効率良くシミュレーショ
ンを行うことが困難とされていた。
【0005】本発明はこのような課題を解決するための
もので、プロトコルの動的な検証を特別な実地環境ある
いは模擬環境を要することなく自動的に行うことがで
き、プロトコル検証作業の効率を大幅に向上させること
のできるプロトコル・シミュレーション装置の提供を目
的としている。
もので、プロトコルの動的な検証を特別な実地環境ある
いは模擬環境を要することなく自動的に行うことがで
き、プロトコル検証作業の効率を大幅に向上させること
のできるプロトコル・シミュレーション装置の提供を目
的としている。
【0006】
【課題を解決するための手段】本発明のプロトコル・シ
ミュレーション装置は上記した目的を達成するために、
プロセス間の通信手順を示す通信プロトコルの検証を行
うプロトコル・シミュレーション装置において、前記通
信プロトコルに関する各プロセスの状態遷移図を作成す
る状態遷移図作成手段と、少なくとも前記プロセス間の
チャネルの通信容量および前記チャネルの信号伝送時間
を含むシュミレーション環境を設定する設定手段と、前
記状態遷移図作成手段により作成された状態遷移図に基
づき、前記設定手段にて設定されたシュミレーション環
境上で前記通信プロトコルの動作をシュミレーション
し、かつシュミレーション中に発生するエラーを検出す
る検証手段と、前記検証手段の検証結果を表示する表示
手段とを有している。
ミュレーション装置は上記した目的を達成するために、
プロセス間の通信手順を示す通信プロトコルの検証を行
うプロトコル・シミュレーション装置において、前記通
信プロトコルに関する各プロセスの状態遷移図を作成す
る状態遷移図作成手段と、少なくとも前記プロセス間の
チャネルの通信容量および前記チャネルの信号伝送時間
を含むシュミレーション環境を設定する設定手段と、前
記状態遷移図作成手段により作成された状態遷移図に基
づき、前記設定手段にて設定されたシュミレーション環
境上で前記通信プロトコルの動作をシュミレーション
し、かつシュミレーション中に発生するエラーを検出す
る検証手段と、前記検証手段の検証結果を表示する表示
手段とを有している。
【0007】
【作用】本発明では、予め設定手段にて、例えばプロセ
ス間のチャネルの通信容量、チャネル間の信号の伝送時
間、プロセス上のタスク処理時間、タイムアウト時間等
のシュミレーション環境を設定しておく。検証手段はこ
のシュミレーション環境上で、通信プロトコルの動作を
状態遷移図に従ってシュミレーションし、シュミレーシ
ョン中に発生するエラー、例えば非実行遷移状態やチャ
ネルオーバーフロー等を検出し、その検証結果を表示手
段を通して表示する。
ス間のチャネルの通信容量、チャネル間の信号の伝送時
間、プロセス上のタスク処理時間、タイムアウト時間等
のシュミレーション環境を設定しておく。検証手段はこ
のシュミレーション環境上で、通信プロトコルの動作を
状態遷移図に従ってシュミレーションし、シュミレーシ
ョン中に発生するエラー、例えば非実行遷移状態やチャ
ネルオーバーフロー等を検出し、その検証結果を表示手
段を通して表示する。
【0008】したがって、本発明によれば、特別な実地
環境あるいは模擬環境を要することなく自動的にプロト
コルの動的な検証を行うことができ、プロトコル検証作
業の効率を大幅に向上させることができる。
環境あるいは模擬環境を要することなく自動的にプロト
コルの動的な検証を行うことができ、プロトコル検証作
業の効率を大幅に向上させることができる。
【0009】
【実施例】以下、本発明の実施例の詳細を図面に基づい
て説明する。
て説明する。
【0010】図1は本発明に係る一実施例のプロトコル
・シミュレーション装置のシステム構成を示す図であ
る。
・シミュレーション装置のシステム構成を示す図であ
る。
【0011】同図において、1は装置本体、2はキーボ
ード等の入力装置、3はCRT等の表示装置、4はフロ
ッピーディスク装置等の外部記憶装置(データベース)
である。また装置本体において、5はプロセス関連図の
作成をユーザからの入力を通じて行うプロセス関連図記
述部である。6は作成されたプロセス関連図に基づくプ
ロトコル設計つまりプロトコル記述の作成をユーザから
の入力を通じて行うプロトコル記述部である。7はプロ
トコル記述に基づく通信プロトコルの静的な検証を自動
的に行う静的プロトコル検証部である。8は設計された
プロトコルに対応する状態遷移図を自動合成する状態遷
移図作成部である。9は合成された状態遷移図からソー
スコードを自動生成するソースコード生成部である。ま
た10は通信プロトコルの動的な検証を行う上で必要な
シミュレーション環境をユーザからの入力を通じて設定
するシミュレーション環境設定部である。11は設定さ
れたシュミレーション環境上で通信プロトコルの動的な
検証を状態遷移図に基づいて実行するシュミレーション
実行部である。12は現在のシュミレーション状況、す
なわち現在シミュレーション中のプロトコルの状態遷移
図やシミュレーション環境、さらにはプロトコルエラー
の発生箇所およびエラー内容等をユーザに分かりやすく
表示するための制御を行う表示制御部である。
ード等の入力装置、3はCRT等の表示装置、4はフロ
ッピーディスク装置等の外部記憶装置(データベース)
である。また装置本体において、5はプロセス関連図の
作成をユーザからの入力を通じて行うプロセス関連図記
述部である。6は作成されたプロセス関連図に基づくプ
ロトコル設計つまりプロトコル記述の作成をユーザから
の入力を通じて行うプロトコル記述部である。7はプロ
トコル記述に基づく通信プロトコルの静的な検証を自動
的に行う静的プロトコル検証部である。8は設計された
プロトコルに対応する状態遷移図を自動合成する状態遷
移図作成部である。9は合成された状態遷移図からソー
スコードを自動生成するソースコード生成部である。ま
た10は通信プロトコルの動的な検証を行う上で必要な
シミュレーション環境をユーザからの入力を通じて設定
するシミュレーション環境設定部である。11は設定さ
れたシュミレーション環境上で通信プロトコルの動的な
検証を状態遷移図に基づいて実行するシュミレーション
実行部である。12は現在のシュミレーション状況、す
なわち現在シミュレーション中のプロトコルの状態遷移
図やシミュレーション環境、さらにはプロトコルエラー
の発生箇所およびエラー内容等をユーザに分かりやすく
表示するための制御を行う表示制御部である。
【0012】図2はプロセス関連図記述部5により記述
された通信システムのプロセス関連図の例を示してい
る。このプロセス関連図において、丸印がプロセス、プ
ロセス間に結ばれた矢印がチャネルを表している。
された通信システムのプロセス関連図の例を示してい
る。このプロセス関連図において、丸印がプロセス、プ
ロセス間に結ばれた矢印がチャネルを表している。
【0013】図3はこのプロセス関連図に対してシミュ
レーション環境設定部10で設定したシミュレーション
環境を示す図である。ここでシミュレーション環境とし
ては、チャネルの通信容量(capacity)、チャネル間の
信号伝送時間(timer) 、1タスク処理設定時間T(=0.
01s)等が設定される。
レーション環境設定部10で設定したシミュレーション
環境を示す図である。ここでシミュレーション環境とし
ては、チャネルの通信容量(capacity)、チャネル間の
信号伝送時間(timer) 、1タスク処理設定時間T(=0.
01s)等が設定される。
【0014】また、これらの環境設定内容と共にこのシ
ミュレーション環境画面には、シミュレーションの全体
タスク処理時間(Ta)が表示され、かつプロセス・マ
ネージャーPMとして個々のプロセスのタスク処理時間
(ptime)、イベントの待ち状態(wait) およびタイマー
時間(図示せず)とが表示されるようになっている。こ
れらの内容はシミュレーションの過程でシュミレーショ
ン実行部11によって更新される。
ミュレーション環境画面には、シミュレーションの全体
タスク処理時間(Ta)が表示され、かつプロセス・マ
ネージャーPMとして個々のプロセスのタスク処理時間
(ptime)、イベントの待ち状態(wait) およびタイマー
時間(図示せず)とが表示されるようになっている。こ
れらの内容はシミュレーションの過程でシュミレーショ
ン実行部11によって更新される。
【0015】図4および図5はそれぞれ状態遷移図作成
部8により自動合成されたプロセスP1およびP2の状
態遷移図の例を示している。これらの図において、楕円
形(例えばa)のシンボルがプロセスの状態、長方形
(例えばb)のシンボルがタスク処理をそれぞれ示して
いる。また図中例えばcの形状のシンボルが信号の受
信、例えばdの形状のシンボルが信号の送信をそれぞれ
示している。また送受信シンボルの中には「プロセス名
(信号名)」という形式でその内容が記述されており、
プロセス名が省略されているものは外部環境との通信を
意味する。なお、gの形状のシンボルは条件分岐状態を
示している。
部8により自動合成されたプロセスP1およびP2の状
態遷移図の例を示している。これらの図において、楕円
形(例えばa)のシンボルがプロセスの状態、長方形
(例えばb)のシンボルがタスク処理をそれぞれ示して
いる。また図中例えばcの形状のシンボルが信号の受
信、例えばdの形状のシンボルが信号の送信をそれぞれ
示している。また送受信シンボルの中には「プロセス名
(信号名)」という形式でその内容が記述されており、
プロセス名が省略されているものは外部環境との通信を
意味する。なお、gの形状のシンボルは条件分岐状態を
示している。
【0016】さらに、例えばbのタスク処理シンボルに
隣接して付加された“1T”は当該タスク処理に費やされ
る時間、例えば図4のeの受信シンボルに付加された
“T.O=20T ”はタイムアウト時間をそれぞれ示してお
り、これらタスク処理時間およびタイムアウト時間はシ
ミュレーション環境設定部10で設定される。
隣接して付加された“1T”は当該タスク処理に費やされ
る時間、例えば図4のeの受信シンボルに付加された
“T.O=20T ”はタイムアウト時間をそれぞれ示してお
り、これらタスク処理時間およびタイムアウト時間はシ
ミュレーション環境設定部10で設定される。
【0017】以上のシミュレーション環境および状態遷
移図はシミュレーション時に同時に表示される。
移図はシミュレーション時に同時に表示される。
【0018】次に本実施例のプロトコル・シミュレーシ
ョン装置の動作を説明する。
ョン装置の動作を説明する。
【0019】図6はシステム全体の処理手順を示すフロ
ーチャートである。まずシミュレーション実行部11
は、各プロセスの状態遷移図のシンボルを解釈しながら
シンボルに対応したイベント処理を実行する(ステップ
602)。但し、シミュレーション実行部11は、その
前に各プロセスのイベントの待ち状態を調べ(ステップ
601)、各プロセスのイベント待ち状態がすべて“初
期状態(IDLE)”あるいは“内部信号の受信待ち
(I)”でない場合に限ってこれを実行する。
ーチャートである。まずシミュレーション実行部11
は、各プロセスの状態遷移図のシンボルを解釈しながら
シンボルに対応したイベント処理を実行する(ステップ
602)。但し、シミュレーション実行部11は、その
前に各プロセスのイベントの待ち状態を調べ(ステップ
601)、各プロセスのイベント待ち状態がすべて“初
期状態(IDLE)”あるいは“内部信号の受信待ち
(I)”でない場合に限ってこれを実行する。
【0020】図7は各プロセスでのイベント処理の手順
を示すフローチャートである。各プロセスでのイベント
処理は、個々のプロセスのタスク処理時間(ptime)がシ
ミュレーションの全体タスク処理時間(Ta)と等しい
場合に実行される(ステップ701)。
を示すフローチャートである。各プロセスでのイベント
処理は、個々のプロセスのタスク処理時間(ptime)がシ
ミュレーションの全体タスク処理時間(Ta)と等しい
場合に実行される(ステップ701)。
【0021】まずイベントの種類を調べる(ステップ7
02)。ここで“外部信号の受信”または“内部条件判
断(状態遷移先の分岐)”のイベントを判定した場合、
シミュレーション実行部11はユーザに分岐可能なすべ
ての状態を表示して処理の選択を要求する(ステップ7
03)。この後、イベントを次に進め(ステップ70
4)、ステップ702に戻る。
02)。ここで“外部信号の受信”または“内部条件判
断(状態遷移先の分岐)”のイベントを判定した場合、
シミュレーション実行部11はユーザに分岐可能なすべ
ての状態を表示して処理の選択を要求する(ステップ7
03)。この後、イベントを次に進め(ステップ70
4)、ステップ702に戻る。
【0022】またステップ702にて“内部信号の受
信”のイベントを判定した場合、シミュレーション実行
部11は現在のFIFOキューの状態を調べ(ステップ
705)、FIFOキューに正しい信号が保持されてこ
とを判定すると、FIFOキューから当該信号を取り出
す(ステップ706)。そしてイベントの待ち状態を
“その他(else)”に設定する(ステップ707)。こ
の後、イベントを次に進め(ステップ708)、ステッ
プ701に戻る。また、FIFOキューが空であること
を判定すると、シミュレーション実行部11はイベント
の待ち状態を“内部信号の受信待ち(I)”に設定し
(ステップ709)、正常終了とする(ステップ71
0)。さらにFIFOキューに受信待ち信号とは異なる
信号が入っていることを判断すると、シミュレーション
実行部11は未定義受信状態であることをユーザに知ら
せ(ステップ711)、異常終了とする(ステップ71
2)。
信”のイベントを判定した場合、シミュレーション実行
部11は現在のFIFOキューの状態を調べ(ステップ
705)、FIFOキューに正しい信号が保持されてこ
とを判定すると、FIFOキューから当該信号を取り出
す(ステップ706)。そしてイベントの待ち状態を
“その他(else)”に設定する(ステップ707)。こ
の後、イベントを次に進め(ステップ708)、ステッ
プ701に戻る。また、FIFOキューが空であること
を判定すると、シミュレーション実行部11はイベント
の待ち状態を“内部信号の受信待ち(I)”に設定し
(ステップ709)、正常終了とする(ステップ71
0)。さらにFIFOキューに受信待ち信号とは異なる
信号が入っていることを判断すると、シミュレーション
実行部11は未定義受信状態であることをユーザに知ら
せ(ステップ711)、異常終了とする(ステップ71
2)。
【0023】またステップ702にて“外部・内部信号
の送信”のイベントを判定した場合、シミュレーション
実行部11は送信先のプロセスに接続しているチャネル
に当該信号を送り(ステップ713)、イベントを次に
進め(ステップ708)、ステップ701に戻る。
の送信”のイベントを判定した場合、シミュレーション
実行部11は送信先のプロセスに接続しているチャネル
に当該信号を送り(ステップ713)、イベントを次に
進め(ステップ708)、ステップ701に戻る。
【0024】ここで、チャネルに送信された信号は、図
8に示すように、シミュレーション環境設定において当
該チャネルに設定された信号伝送時間が経過するまでこ
のチャネルに格納され、設定時間の経過後(ステップ8
01)、チャネルから信号を取り出してFIFOキュー
に渡す(ステップ802)。
8に示すように、シミュレーション環境設定において当
該チャネルに設定された信号伝送時間が経過するまでこ
のチャネルに格納され、設定時間の経過後(ステップ8
01)、チャネルから信号を取り出してFIFOキュー
に渡す(ステップ802)。
【0025】またFIFOキューは、図9に示すよう
に、シミュレーション環境設定において設定されたチャ
ネルの通信容量までの数量の信号を受信可能であり、信
号の数が通信容量を越えた場合(ステップ901)、チ
ャネルオーバーフローが発生したものと見なしてこの旨
をユーザに知らせる(ステップ902)。
に、シミュレーション環境設定において設定されたチャ
ネルの通信容量までの数量の信号を受信可能であり、信
号の数が通信容量を越えた場合(ステップ901)、チ
ャネルオーバーフローが発生したものと見なしてこの旨
をユーザに知らせる(ステップ902)。
【0026】さらにステップ702で“タイマーのO
N”のイベントを判定した場合、シミュレーション実行
部11はプロセス・マネージャーPMのタイマー属性を
起動してタイマー設定を行い(ステップ714)、イベ
ントを次に進めた後(ステップ708)、ステップ70
1に戻る。
N”のイベントを判定した場合、シミュレーション実行
部11はプロセス・マネージャーPMのタイマー属性を
起動してタイマー設定を行い(ステップ714)、イベ
ントを次に進めた後(ステップ708)、ステップ70
1に戻る。
【0027】またさらにステップ702で“タイマーの
OFF”のイベントを判定した場合、シミュレーション
実行部11は前記のタイマー設定を解除し(ステップ7
15)、イベントを次に進めた後(ステップ708)、
ステップ701に戻る。
OFF”のイベントを判定した場合、シミュレーション
実行部11は前記のタイマー設定を解除し(ステップ7
15)、イベントを次に進めた後(ステップ708)、
ステップ701に戻る。
【0028】またステップ702で“タスクの処理”の
イベントを判定した場合、シミュレーション実行部11
はシミュレーション環境設定において設定されたタスク
処理時間を消費して、プロセス・マネージャーPMの管
理しているプロセスのタスク処理時間(ptime)をイベン
ト処理時間分進める(ステップ716)。そしてイベン
トを次に進め(ステップ717)、正常終了とする(ス
テップ718)。
イベントを判定した場合、シミュレーション実行部11
はシミュレーション環境設定において設定されたタスク
処理時間を消費して、プロセス・マネージャーPMの管
理しているプロセスのタスク処理時間(ptime)をイベン
ト処理時間分進める(ステップ716)。そしてイベン
トを次に進め(ステップ717)、正常終了とする(ス
テップ718)。
【0029】一方、図6のステップ601において、各
プロセスの全ての待ち状態が“内部信号の受信待ち
(I)”の場合は次のような処理を行う。
プロセスの全ての待ち状態が“内部信号の受信待ち
(I)”の場合は次のような処理を行う。
【0030】まず全てのチャネルとFIFOキューの状
態を調べると共にタイマー設定の有無を調べる(ステッ
プ604)。この結果、全てのチャネルとFIFOキュ
ーが空でしかもタイマーが未設定の場合は、デッドロッ
ク状態が発生しているものとしてユーザにこの旨を表示
する(ステップ605)。そして異常終了とする(ステ
ップ606)。
態を調べると共にタイマー設定の有無を調べる(ステッ
プ604)。この結果、全てのチャネルとFIFOキュ
ーが空でしかもタイマーが未設定の場合は、デッドロッ
ク状態が発生しているものとしてユーザにこの旨を表示
する(ステップ605)。そして異常終了とする(ステ
ップ606)。
【0031】またその他の場合、つまり全ての待ち状態
が“内部信号の受信待ち(I)”でしかもチャネルある
いはFIFOキューに一つでも信号が存在する場合、あ
るいは全てのチャネルとFIFOキューが空でもタイマ
ーが設定されている場合は、全体のタスク処理時間Ta
およびプロセスのタスク処理時間(ptime)をそれぞれ1
タスク処理設定時間更新し(ステップ607、60
8)、さらにタイマーが設定されているプロセスについ
てはそのタイマー時間も1タスク処理設定時間更新する
(ステップ609)。
が“内部信号の受信待ち(I)”でしかもチャネルある
いはFIFOキューに一つでも信号が存在する場合、あ
るいは全てのチャネルとFIFOキューが空でもタイマ
ーが設定されている場合は、全体のタスク処理時間Ta
およびプロセスのタスク処理時間(ptime)をそれぞれ1
タスク処理設定時間更新し(ステップ607、60
8)、さらにタイマーが設定されているプロセスについ
てはそのタイマー時間も1タスク処理設定時間更新する
(ステップ609)。
【0032】この後、タイマー時間とタイムアウト時間
とを比較して(ステップ610)、タイマー時間かタイ
ムアウト時間を越えている場合は、非実行状態遷移の可
能性をユーザに知らせる(ステップ611)。またタイ
マー時間かタイムアウト時間を越えていなければステッ
プ601に戻る。
とを比較して(ステップ610)、タイマー時間かタイ
ムアウト時間を越えている場合は、非実行状態遷移の可
能性をユーザに知らせる(ステップ611)。またタイ
マー時間かタイムアウト時間を越えていなければステッ
プ601に戻る。
【0033】以上の手順で各プロセスの状態遷移図に従
ってシミュレーションを実行し、各プロセスの状態が全
て“初期状態(IDLE)”になったことをステップ601
にて判定すると、シミュレーションを終了する(ステッ
プ612)。
ってシミュレーションを実行し、各プロセスの状態が全
て“初期状態(IDLE)”になったことをステップ601
にて判定すると、シミュレーションを終了する(ステッ
プ612)。
【0034】次にチャネルオーバーフロー発生に関する
動作について図10乃至図12を用いて説明する。図1
0はこの場合の表示例を示している。
動作について図10乃至図12を用いて説明する。図1
0はこの場合の表示例を示している。
【0035】チャネルオーバーフローは、前述したよう
に、チャネルに送信された信号の数がチャネルの通信容
量を越えることで検出される。図10の例はチャネルに
“2”の通信容量が設定された前提において、当該チャ
ネルに接続されたFIFOキューに既に2つの信号が保
持されているのにも関わらず、次の信号がチャネルから
FIFOキューに到達したため、チャネルオーバーフロ
ーとなった例である。図11はこのチャネルオーバーフ
ローを引き起こす原因となった状態遷移図を示してい
る。ここで、斜線により塗り潰されたシンボルが現在検
証中であることを示している。この状態遷移図では、プ
ロセスP2に“データを4Tの時間セーブする(save d
ata )”という処理が存在し、これに起因してチャネル
オーバーフローが発生している。これをさらに分かりや
すくしたものが図12である。この図から分かるよう
に、全体のタスク処理時間の“4T”の時刻で、チャネ
ルの通信容量を越えた3つ目の信号がFIFOキューに
到着してしまっている。
に、チャネルに送信された信号の数がチャネルの通信容
量を越えることで検出される。図10の例はチャネルに
“2”の通信容量が設定された前提において、当該チャ
ネルに接続されたFIFOキューに既に2つの信号が保
持されているのにも関わらず、次の信号がチャネルから
FIFOキューに到達したため、チャネルオーバーフロ
ーとなった例である。図11はこのチャネルオーバーフ
ローを引き起こす原因となった状態遷移図を示してい
る。ここで、斜線により塗り潰されたシンボルが現在検
証中であることを示している。この状態遷移図では、プ
ロセスP2に“データを4Tの時間セーブする(save d
ata )”という処理が存在し、これに起因してチャネル
オーバーフローが発生している。これをさらに分かりや
すくしたものが図12である。この図から分かるよう
に、全体のタスク処理時間の“4T”の時刻で、チャネ
ルの通信容量を越えた3つ目の信号がFIFOキューに
到着してしまっている。
【0036】次に非実行遷移状態発生の発生に関する動
作について図13乃至図15を用いて説明する。図13
はこの場合の表示例を示している。
作について図13乃至図15を用いて説明する。図13
はこの場合の表示例を示している。
【0037】非実行遷移状態の発生は、前述したよう
に、プロセスのタイマー時間が設定タイムアウト時間を
越えることで検出される。図14はこの非実行遷移状態
を引き起こす原因となる状態遷移図、図15はこの状態
遷移図に基づくプロセス間の処理手順を示している。こ
こで、プロセスP1には設定タイムアウト時間として
“4T”が定義されている。ところが、プロセスP1と
プロセスP2との間の各チャネルP12、P21の信号
伝送に“2T”、プロセスP2の処理に“1T”すなわ
ち合計“5T”の時間がかかることから、プロセスP1
では状態1においてタイムアウトとなり“+P2(ack)”や
“+P2(nck)”は実行されない。
に、プロセスのタイマー時間が設定タイムアウト時間を
越えることで検出される。図14はこの非実行遷移状態
を引き起こす原因となる状態遷移図、図15はこの状態
遷移図に基づくプロセス間の処理手順を示している。こ
こで、プロセスP1には設定タイムアウト時間として
“4T”が定義されている。ところが、プロセスP1と
プロセスP2との間の各チャネルP12、P21の信号
伝送に“2T”、プロセスP2の処理に“1T”すなわ
ち合計“5T”の時間がかかることから、プロセスP1
では状態1においてタイムアウトとなり“+P2(ack)”や
“+P2(nck)”は実行されない。
【0038】次にデッドロック状態発生に関する動作に
ついて図16乃至図18を用いて説明する。図16はこ
の場合の表示例を示している。
ついて図16乃至図18を用いて説明する。図16はこ
の場合の表示例を示している。
【0039】デッドロック状態の発生は、前述したよう
に、各プロセスが“内部信号の待ち状態“にあり、かつ
プロセス間のチャネルとFIFOキューが空でしかもタ
イマーが未設定の場合に判定される。図17はこのデッ
ドロック状態を引き起こす原因となる状態遷移図、図1
8はこの状態遷移図に基づくプロセス間の処理手順を示
している。この例では各プロセスP1、P2それぞれの
“状態1”にてデッドロック状態が起きている。
に、各プロセスが“内部信号の待ち状態“にあり、かつ
プロセス間のチャネルとFIFOキューが空でしかもタ
イマーが未設定の場合に判定される。図17はこのデッ
ドロック状態を引き起こす原因となる状態遷移図、図1
8はこの状態遷移図に基づくプロセス間の処理手順を示
している。この例では各プロセスP1、P2それぞれの
“状態1”にてデッドロック状態が起きている。
【0040】最後に未定義受信状態発生に関する動作に
ついて図19乃至図21を用いて説明する。図19はこ
の場合の表示例を示している。
ついて図19乃至図21を用いて説明する。図19はこ
の場合の表示例を示している。
【0041】未定義受信状態の発生は、前述したよう
に、FIFOキューに受信待ち信号とは異なる種類の信
号が入っている場合に判定される。図20はこの未定義
受信状態を引き起こす基となる状態遷移図、図21はこ
の状態遷移図に基づくプロセス間の処理手順を示してい
る。この例では、プロセスP1では“+P2(ack)”、プロ
セスP2では“+P1(ack)”の信号を受信待ちしているも
のの、それぞれ送られてきた信号は“-P1(call) ”“-P
2(call) ”であり、種類が異なるため、未定義受信状態
と判定される。
に、FIFOキューに受信待ち信号とは異なる種類の信
号が入っている場合に判定される。図20はこの未定義
受信状態を引き起こす基となる状態遷移図、図21はこ
の状態遷移図に基づくプロセス間の処理手順を示してい
る。この例では、プロセスP1では“+P2(ack)”、プロ
セスP2では“+P1(ack)”の信号を受信待ちしているも
のの、それぞれ送られてきた信号は“-P1(call) ”“-P
2(call) ”であり、種類が異なるため、未定義受信状態
と判定される。
【0042】したがって、本実施例のプロトコル・シミ
ュレーション装置によれば、プロトコル設計を行う環境
上でプロトコルの動作を確認しながらプロトコル設計を
行うことができる。この結果、特にプロトコル設計の重
要な問題の一つであるタイムアウト処理を含む場合のプ
ロトコルを正確に設計することができ、プロトコルの設
計・検証作業を効率良く行うことができる。
ュレーション装置によれば、プロトコル設計を行う環境
上でプロトコルの動作を確認しながらプロトコル設計を
行うことができる。この結果、特にプロトコル設計の重
要な問題の一つであるタイムアウト処理を含む場合のプ
ロトコルを正確に設計することができ、プロトコルの設
計・検証作業を効率良く行うことができる。
【0043】また本実施例によれば、特別な実地環境や
模擬環境を要することなく、プロトコルの動的な検証を
自動的にかつプロトコル設計者と対話的に進めることが
でき、通信システムの開発期間の大幅短縮、開発コスト
の低減化が達成される。
模擬環境を要することなく、プロトコルの動的な検証を
自動的にかつプロトコル設計者と対話的に進めることが
でき、通信システムの開発期間の大幅短縮、開発コスト
の低減化が達成される。
【0044】さらに本実施例によれば、チャネルオーバ
ーフロー状態、非実行遷移状態、デッドロック状態、未
定義受信状態等のエラー表示をユーザに分かりやすく表
示することができ、しかも現在検証中の状態遷移図も併
せて表示することで、エラー発生原因の解明も容易にな
ると言う利点を有している。
ーフロー状態、非実行遷移状態、デッドロック状態、未
定義受信状態等のエラー表示をユーザに分かりやすく表
示することができ、しかも現在検証中の状態遷移図も併
せて表示することで、エラー発生原因の解明も容易にな
ると言う利点を有している。
【0045】
【発明の効果】以上説明したように本発明のプロトコル
・シミュレーション装置によれば、特別な実地環境ある
いは模擬環境を要することなく、通信プロトコルの動的
なシミュレーションを自動的に行うことができ、プロト
コル検証作業の大幅な効率向上を図ることができる。
・シミュレーション装置によれば、特別な実地環境ある
いは模擬環境を要することなく、通信プロトコルの動的
なシミュレーションを自動的に行うことができ、プロト
コル検証作業の大幅な効率向上を図ることができる。
【図1】本発明に係る一実施例のプロトコル・シミュレ
ーション装置のシステム構成を示すブロック図である。
ーション装置のシステム構成を示すブロック図である。
【図2】プロセス関連図記述部により記述された通信シ
ステムのプロセス関連図の例を示す図である。
ステムのプロセス関連図の例を示す図である。
【図3】図2のプロセス関連図に対してシミュレーショ
ン環境設定部で設定したシミュレーション環境を示す図
である。
ン環境設定部で設定したシミュレーション環境を示す図
である。
【図4】状態遷移図作成部により合成されたプロセスP
1の状態遷移図の例を示す図である。
1の状態遷移図の例を示す図である。
【図5】状態遷移図作成部により合成されたプロセスP
2の状態遷移図の例を示す図である。
2の状態遷移図の例を示す図である。
【図6】図1のプロトコル・シミュレーション装置にお
けるシステム全体の処理手順を示すフローチャートであ
る。
けるシステム全体の処理手順を示すフローチャートであ
る。
【図7】図6における各プロセスでのイベント処理の手
順を示すフローチャートである。
順を示すフローチャートである。
【図8】チャネルの処理手順を示すフローチャートであ
る。
る。
【図9】FIFOキューの処理手順を示すフローチャー
トである。
トである。
【図10】チャネルオーバーフローが発生したときの検
証結果表示を示す図である。
証結果表示を示す図である。
【図11】図10のチャネルオーバーフローを引き起こ
す状態遷移図を示す図である。
す状態遷移図を示す図である。
【図12】図11の状態遷移図に基づくプロセス間の処
理手順を示す図である。
理手順を示す図である。
【図13】非実行遷移状態が発生したときの検証結果表
示を示す図である。
示を示す図である。
【図14】図13の非実行遷移状態を引き起こす状態遷
移図を示す図である。
移図を示す図である。
【図15】図14の状態遷移図に基づくプロセス間の処
理手順を示す図である。
理手順を示す図である。
【図16】デッドロック状態が発生したときの検証結果
表示を示す図である。
表示を示す図である。
【図17】図16のデッドロック状態を引き起こす状態
遷移図を示す図である。
遷移図を示す図である。
【図18】図17の状態遷移図に基づくプロセス間の処
理手順を示す図である。
理手順を示す図である。
【図19】未定義受信状態が発生したときの検証結果表
示を示す図である。
示を示す図である。
【図20】図19の未定義受信状態を引き起こす状態遷
移図を示す図である。
移図を示す図である。
【図21】図20の状態遷移図に基づくプロセス間の処
理手順を示す図である。
理手順を示す図である。
1…装置本体、2…入力装置、3…表示装置、4…外部
記憶装置、5…プロセス関連図記述部、6…プロトコル
記述部、7…静的プロトコル検証部、8…状態遷移図作
成部、9…ソースコード生成部、10…シミュレーショ
ン環境設定部、11…シュミレーション実行部、12…
表示制御部。
記憶装置、5…プロセス関連図記述部、6…プロトコル
記述部、7…静的プロトコル検証部、8…状態遷移図作
成部、9…ソースコード生成部、10…シミュレーショ
ン環境設定部、11…シュミレーション実行部、12…
表示制御部。
Claims (5)
- 【請求項1】 プロセス間の通信手順を示す通信プロト
コルの検証を行うプロトコル・シミュレーション装置に
おいて、 前記通信プロトコルに関する各プロセスの状態遷移図を
作成する状態遷移図作成手段と、 少なくとも前記プロセス間のチャネルの通信容量および
前記チャネルの信号伝送時間を含むシュミレーション環
境を設定する設定手段と、 前記状態遷移図作成手段により作成された状態遷移図に
基づき、前記設定手段にて設定されたシュミレーション
環境上で前記通信プロトコルの動作をシュミレーション
し、かつシュミレーション中に発生するエラーを検出す
る検証手段と、 前記検証手段の検証結果を表示する表示手段とを有する
ことを特徴とするプロトコル・シミュレーション装置。 - 【請求項2】 請求項1記載のプロトコル・シミュレー
ション装置において、 前記設定手段は、少なくとも前記プロセス間のチャネル
の通信容量、前記チャネルの信号伝送時間、前記プロセ
ス上のタスク処理時間、および前記プロセスを永続的な
待ち状態から保護するためのタイムアウト時間を含むシ
ュミレーション環境を設定することを特徴とするプロト
コル・シミュレーション装置。 - 【請求項3】 請求項1または2記載のプロトコル・シ
ミュレーション装置において、 前記状態遷移図は少なくともプロセス上の状態、信号受
信、信号送信およびタスク処理をそれぞれ固有のシンボ
ルを用いて表現して構成され、前記検証手段はこの状態
遷移図のシンボルを解釈しつつこのシンボルに対応する
イベントの処理を実行することによりシミュレーション
を実行することを特徴とするプロトコル・シミュレーシ
ョン装置。 - 【請求項4】 請求項2または3記載のプロトコル・シ
ミュレーション装置において、 前記検証手段は、前記状態遷移図に基づくタイマー設定
の発生を検出して起動されるタイマー手段を有し、この
タイマー手段のタイマー時間が前記シュミレーション環
境上で設定されたタイムアウト時間を越えたとき非実行
遷移状態としてエラーを判定することを特徴とするプロ
トコル・シミュレーション装置。 - 【請求項5】 請求項1乃至3記載のいずれかのプロト
コル・シミュレーション装置において、 前記検証手段は、前記チャネルに送信された信号の数が
前記チャネルの通信容量を越えたときチャネルオーバー
フローとしてエラーを判定することを特徴とするプロト
コル・シミュレーション装置。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4111538A JPH05307511A (ja) | 1992-04-30 | 1992-04-30 | プロトコル・シミュレーション装置 |
| GB9308627A GB2266608A (en) | 1992-04-30 | 1993-04-26 | Protocol simulation apparatus for dynamically verifying a communication protocol |
| FR9305138A FR2690803B1 (fr) | 1992-04-30 | 1993-04-30 | Appareil de simulation de protocole permettant de verifier dynamiquement un protocole de communication, et procede associe. |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4111538A JPH05307511A (ja) | 1992-04-30 | 1992-04-30 | プロトコル・シミュレーション装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05307511A true JPH05307511A (ja) | 1993-11-19 |
Family
ID=14563903
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4111538A Pending JPH05307511A (ja) | 1992-04-30 | 1992-04-30 | プロトコル・シミュレーション装置 |
Country Status (3)
| Country | Link |
|---|---|
| JP (1) | JPH05307511A (ja) |
| FR (1) | FR2690803B1 (ja) |
| GB (1) | GB2266608A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6467078B1 (en) | 1998-07-03 | 2002-10-15 | Nec Corporation | Program development system, method for developing programs and storage medium storing programs for development of programs |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| SE518408C2 (sv) | 1996-04-19 | 2002-10-08 | Kvaser Consultant Ab | Metod och anordning för framtagning av systemprotokoll för styr- och/eller kontrollutrustning |
| US7765093B2 (en) | 2005-09-19 | 2010-07-27 | Itt Manufacturing Enterprises, Inc. | Network modeling system and method of simulating network operation with configurable node models |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61208945A (ja) * | 1985-03-14 | 1986-09-17 | Kokusai Denshin Denwa Co Ltd <Kdd> | プロトコルの分割検証回路 |
| JPS62114358A (ja) * | 1985-11-14 | 1987-05-26 | Kokusai Denshin Denwa Co Ltd <Kdd> | 通信プロトコル合成方式 |
| JPS63286947A (ja) * | 1987-05-20 | 1988-11-24 | Hitachi Ltd | プロトコルの自動検証方式 |
| US5038307A (en) * | 1989-10-30 | 1991-08-06 | At&T Bell Laboratories | Measurement of performance of an extended finite state machine |
| JPH03178245A (ja) * | 1989-12-07 | 1991-08-02 | Nippon Telegr & Teleph Corp <Ntt> | プロトコル処理方式 |
| JPH03295339A (ja) * | 1990-04-13 | 1991-12-26 | Oki Electric Ind Co Ltd | プロトコル検証用試験方式 |
-
1992
- 1992-04-30 JP JP4111538A patent/JPH05307511A/ja active Pending
-
1993
- 1993-04-26 GB GB9308627A patent/GB2266608A/en not_active Withdrawn
- 1993-04-30 FR FR9305138A patent/FR2690803B1/fr not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6467078B1 (en) | 1998-07-03 | 2002-10-15 | Nec Corporation | Program development system, method for developing programs and storage medium storing programs for development of programs |
Also Published As
| Publication number | Publication date |
|---|---|
| GB9308627D0 (en) | 1993-06-09 |
| FR2690803B1 (fr) | 1996-03-15 |
| GB2266608A (en) | 1993-11-03 |
| FR2690803A1 (fr) | 1993-11-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0445942A2 (en) | Analytical development and verification of control-intensive systems | |
| CN110191021A (zh) | 一种协议测试方法、装置、电子设备及存储介质 | |
| CN109597653A (zh) | Bios与bmc命令交互的方法、bios及bmc | |
| CN114217900A (zh) | 一种远程控制方法、装置、系统、计算设备及存储介质 | |
| US20020052726A1 (en) | Performance simulation apparatus, performance simulation method, and recording medium containing performance simulation program | |
| US7099813B2 (en) | Simulating program instruction execution and hardware device operation | |
| JPH05307511A (ja) | プロトコル・シミュレーション装置 | |
| JPH1063535A (ja) | コンピュータシステムのモニタ装置及びモニタ方法 | |
| US20090094614A1 (en) | Direct synchronous input | |
| CN111708568B (zh) | 一种组件化开发解耦方法及终端 | |
| JP2828590B2 (ja) | マイクロプログラム検証方法 | |
| JP3463331B2 (ja) | メニュー選択方法 | |
| US20070198957A1 (en) | Circuit simulator and circuit simulation program storage medium | |
| JP5011221B2 (ja) | コントローラ開発ツールとそれを利用して開発したモータドライブシステムを有する機器 | |
| JP3196985B2 (ja) | データパス表示装置 | |
| JP2619487B2 (ja) | フアイル操作方式 | |
| JPH10161891A (ja) | タスク余裕度解析装置、タスク余裕度解析方法及びタスク余裕度解析プログラムを格納した記録媒体 | |
| CN108427577A (zh) | 一种通信方法、装置及系统 | |
| JP2002222217A (ja) | 3d−cadデータからビューワデータへのデータ変換装置 | |
| JP2000284988A (ja) | オブジェクト指向システム解析装置及び方法並びにオブジェクト指向システム解析用ソフトウェアを記録した記録媒体 | |
| CN115981270A (zh) | 车辆操作方法、装置和计算机设备 | |
| CN117112977A (zh) | 一种矩阵运算系统、方法、设备及介质 | |
| KR20030042240A (ko) | 엠엠아이 시스템의 대화형 프로그램에서 알람 처리방법 | |
| JPH05204865A (ja) | 複素数計算機能付き電子機器 | |
| JPS59178566A (ja) | ジヨブ実行待時間情報表示装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20030325 |