(57)【特許請求の範囲】
【請求項１】
ディスプレイ画面を介してユーザと対話することで論理シミュレーションを行い、その結果を該ディスプレイ画面に表示する構成を採る対話型論理シミュレーションシステムにおいて、
前記ディスプレイ画面に表示すべきウィンドウの表示態様を管理するウィンドウ管理テーブルと、
該ウィンドウ管理テーブルにより設定されたウィンドウの内、指定した時刻のみの信号端子の信号値を表示するフリーフォーマット表示形式のウィンドウ内の表示態様を管理するフリーフォーマットウィンドウ管理テーブルと、
前記ウィンドウ管理テーブルにより設定されたウィンドウの内、論理シミュレーション結果情報の時系列表示形式となるストリーム表示形式のウィンドウ内の表示態様を管理するストリームウィンドウ管理テーブルと、
論理シミュレーション結果情報をなす信号端子毎の信号値の時系列データを管理する信号値管理テーブルと、
前記フリーフォーマットウィンドウ管理テーブルおよび前記信号値管理テーブルの管理データを参照して、フリーフォーマット表示形式の持つ信号端子の現表示時刻の信号値を特定することにより、現表示時刻におけるフリーフォーマット表示形式での論理シミュレーション結果情報を特定すると共に、前記ストリームウィンドウ管理テーブルおよび前記信号値管理テーブルの管理データを参照して、ストリーム表示形式の持つ信号端子の現表示時刻を含む信号値の時系列データを特定することで、現表示時刻を含むストリーム表示形式での論理シミュレーション結果情報を特定し、かつ、特定したフリーフォーマット表示形式での論理シミュレーション結果情報とストリーム表示形式での論理シミュレーション結果情報とを、前記ウィンドウ管理テーブルにて設定されたそれぞれのウィンドウにて表示するための結果表示制御手段とを具備したことを特徴とする対話型論理シミュレーションシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、論理回路のシミュレーションを行う技術に係り、特に、ディスプレイ画面を介してユーザと対話することで論理シミュレーションを行い、その結果をディスプレイ画面に表示する構成を採る論理シミュレーションシステムおよび入出力制御装置に関する。
【０００２】
近年、計算機システム等に実装する論理回路はますます高集積度化が進み、これに伴い、その設計した論理回路の動作確認や誤動作の解析を行うためのシミュレーションに要する時間が膨大なものになっている。大規模な回路を階層的に分割して設計する過程において、階層単位に論理シミュレーションを行い検証していくためには、上位階層の規模の大きい回路のシミュレーションの作業と同様に下位階層の規模の小さい回路のシミュレーションの作業をも容易で分かりやすいことが要求される。
【０００３】
【従来の技術】
従来の論理シミュレーションシステムでは、指定した時刻の論理シミュレーション結果情報をユーザ定義の表示形式に従って表示する「フリーフォーマット表示形式」の方法、又は、指定した信号端子の論理シミュレーション結果情報をシステム定義の表示形式に従って時刻の流れに沿った形で表示する「ストリーム表示形式」の方法が採用されている。
【０００４】
フリーフォーマット表示形式では、論理シミュレーション結果情報となる信号端子の信号値を一画面に多数表示できるという利点があるが、その反面、信号値の時間的な流れを把握できないので、論理回路の誤りを発見した時にその原因解析に時間を要するといった問題点がある。一方、ストリーム表示形式では、信号端子の信号値の時系列データを表示するようになっているので、論理回路の誤りを発見した時にその原因解析が容易になるという利点があるが、その反面、時系列データを表示することから一画面に表示可能な信号端子数が少なくなり、このために別画面表示を頻繁に行うことになり、ひいてはシミュレーションの作業に時間を要するといった問題点がある。このように、両者の表示形式はそれぞれ一長一短がある。
【０００５】
また、従来行われている論理シミュレーションの方法では、専用の制御言語によって論理シミュレーションの手順（例えば回路動作パターン等）を予め記述しておき、その記述された制御言語を翻訳した後にシミュレーションを実行し、その実行結果すなわち論理シミュレーション結果情報を解析することによって論理回路の動作確認を行っている。
【０００６】
この場合、論理回路設計の初期段階では設計誤りも比較的多いため、種々の回路動作パターンを予め記述しておくという手法よりも、むしろ、論理回路設計者が、ディスプレイ画面との対話を通して少しずつ回路の動作状態を見ながら次のシミュレーションの動作を思考していくといった手法の方が適していると考えられる。
【０００７】
【発明が解決しようとする課題】
上述したように従来技術では、制御言語によるシミュレーション手順の記述→制御言語の翻訳→シミュレーション実行→結果解析及び動作確認といった手法に基づいて論理シミュレーションが行われていた。
このため、論理回路の設計終了後すぐシミュレーションを開始してから動作確認までに多大な手間と時間を要するといった課題があった。
【０００８】
また、結果解析及び動作確認後、さらに次のシミュレーション手順を記述していくうえで、論理回路設計者にとっては、必ずしも使い勝手のよい手法ではなかった。
本発明は、かかる従来技術における課題に鑑み創作されたもので、ユーザに対し、論理シミュレーションに関する面倒な手順や操作を意識することなくシミュレーションの実行及び解析を容易に且つ効率的に行えるようにし、また次の段階のシミュレーション手順を考える場合にはその思考の中断を少なくして良好な操作性を与えることができる論理シミュレーションシステムおよび入出力制御装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記課題を解決するため、本発明に係る対話型論理シミュレーションシステムは、ディスプレイ画面を介してユーザと対話することで論理シミュレーションを行い、その結果を該ディスプレイ画面に表示する構成を採ることを前提として、前記ディスプレイ画面に表示すべきウィンドウの表示態様を管理するウィンドウ管理テーブルと、該ウィンドウ管理テーブルにより設定されたウィンドウの内、指定した時刻のみの信号端子の信号値を表示するフリーフォーマット表示形式のウィンドウ内の表示態様を管理するフリーフォーマットウィンドウ管理テーブルと、前記ウィンドウ管理テーブルにより設定されたウィンドウの内、論理シミュレーション結果情報の時系列表示形式となるストリーム表示形式のウィンドウ内の表示態様を管理するストリームウィンドウ管理テーブルと、論理シミュレーション結果情報をなす信号端子毎の信号値の時系列データを管理する信号値管理テーブルと、前記フリーフォーマットウィンドウ管理テーブルおよび前記信号値管理テーブルの管理データを参照して、フリーフォーマット表示形式の持つ信号端子の現表示時刻の信号値を特定することにより、現表示時刻におけるフリーフォーマット表示形式での論理シミュレーション結果情報を特定すると共に、前記ストリームウィンドウ管理テーブルおよび前記信号値管理テーブルの管理データを参照して、ストリーム表示形式の持つ信号端子の現表示時刻を含む信号値の時系列データを特定することで、現表示時刻を含むストリーム表示形式での論理シミュレーション結果情報を特定し、かつ、特定したフリーフォーマット表示形式での論理シミュレーション結果情報とストリーム表示形式での論理シミュレーション結果情報とを、前記ウィンドウ管理テーブルにて設定されたそれぞれのウィンドウにて表示するための結果表示制御手段とを具備したことを特徴とする。
【００１０】
さらに本発明にかかる論理シミュレーションシステムでは、論理シミュレーションの結果を画面に表示する論理シミュレーションシステムにおいて、前記論理シミュレーションの対象となる論理回路の信号端子に対応付けられた論理回路データ情報を管理する情報管理手段と、指定した時刻のみの前記信号端子の信号値を表示するフリーフォーマット表示形式による論理シミュレーション結果情報と指定した時刻を含む前記信号端子の信号値の時系列表示形式となるストリーム表示形式による論理シミュレーション結果情報をそれぞれ画面上に表示するための結果表示制御手段と、変更された信号値を前記論理回路データ情報の前記信号端子に設定する信号値設定手段とを具備することを特徴とする。
【００１１】
本発明にかかる入出力制御装置では、論理回路の信号端子に対応付けられた論理回路データ情報に基づいて論理シミュレーションを行う論理シミュレーション装置を制御し、前記論理シミュレーション装置の結果を画面に表示させる入出力制御装置において、指定した時刻のみの前記信号端子の信号値を状態値として表示するフリーフォーマット表示形式による論理シミュレーション結果情報と指定した時刻を含む前記信号端子の信号値の時系列表示形式となるストリーム表示形式による論理シミュレーション結果情報をそれぞれ画面上に表示するための結果表示制御手段と、変更された信号値を前記論理シミュレーション装置が管理する前記論理回路データ情報の前記信号端子に設定させる信号値設定手段とを具備することを特徴とする。
【００１２】
また、本発明の好適な実施態様においては、論理シミュレーション対象の回路内の複数のメモリセルを特定する論理アドレス空間を定義したデータを管理するメモリ管理テーブルを更に具備し、このメモリ管理テーブルを参照して、前記論理アドレス空間によって規定されるメモリ仮想空間イメージでメモリ内容をディスプレイ画面に表示するよう処理を行っている。
【００１３】
【作用】
上述した本発明の構成によれば、多数の信号端子の信号値を表示可能にするフリーフォーマット表示形式での論理シミュレーション結果情報と、信号端子の信号値の時間的な流れを把握可能にするストリーム表示形式での論理シミュレーション結果情報とを同一ディスプレイ画面上にマルチウィンドウの形態で同時に表示することを基本構成とし、またメモリ仮想空間イメージでメモリ内容をディスプレイ画面上に表示することを基本構成にして、メニューの選択による入力指示等を不要にし、フリーフォーマット表示上に直接書き込むことにより状態値を設定したり、ストリーム表示上の時刻部分を直接指示することによりシミュレーションを実行したり、メモリ内容表示上に直接書き込むことによりメモリ内容を書き換えたりする構成を採っている。
【００１４】
従って、ユーザは、論理シミュレーションに関する面倒な手順や操作を意識することなく、論理シミュレーションの実行とその解析を容易に且つ効率的に行うことができる。また、次の段階のシミュレーション手順を考える場合でも、その思考の中断を少なくして、効率的なシミュレーションの実行が可能となる。
なお、本発明の他の構成上の特徴及び作用の詳細については、添付図面を参照しつつ以下に記述される実施例を用いて説明する。
【００１５】
【発明の実施の形態】
図１には本発明に係る対話型論理シミュレーションシステムの一実施例の構成が示される。
図中、１は本発明に係る論理シミュレーションシステム、２は論理シミュレーションシステム１の備える端末を示し、該端末は、論理シミュレーション結果情報等を表示するディスプレイ３と、ユーザ又はオペレータが操作するキーボードやマウス等の入力装置４を備えている。
【００１６】
本実施例による論理シミュレーションシステム１は、入出力（Ｉ／Ｏ）制御手段１０と、論理回路データ（ＬＤ）情報管理手段１１と、論理シミュレーション手段１２と、結果表示制御手段１３と、コマンド解析手段１４と、ファクションキー制御手段１５と、ウィンドウ管理テーブル１６と、信号値管理テーブル１７と、フリーフォーマットウィンドウ（ＦＷ）管理テーブル１８と、ストリームウィンドウ（ＳＷ）管理テーブル１９と、時刻管理テーブル２０と、メモリ管理テーブル２１と、ファンクション管理テーブル２２と、ログ出力手段２３と、ウィンドウ設定手段２４と、状態値選択手段２５と、信号値設定手段２６と、属性変更手段２７と、メモリ内容表示手段２８と、メモリ内容設定手段２９と、シミュレーション実行手段３０と、時刻設定手段３１と、メモリ内容選択手段３２とを有している。以下、各構成要素について説明する。
【００１７】
入出力（Ｉ／Ｏ）制御手段１０は、端末２との間のインタフェース処理を実行する。また、論理回路データ（ＬＤ）情報管理手段１１は、論理シミュレーションの対象となる論理回路データ情報を管理する。但し、論理回路データ情報は実際には信号端子番号で記述されているので、ＬＤ情報管理手段１１は、この信号端子番号とユーザ定義の信号端子名との対応関係を管理することになる。また、論理シミュレーション手段１２は、ＬＤ情報管理手段１１の管理する論理回路の論理シミュレーション処理を実行し、その論理シミュレーション結果情報を信号値管理テーブル１７に登録すると共に、そのシミュレーション時刻を時刻管理テーブル２０に登録する。
【００１８】
結果表示制御手段１３は、ウィンドウ管理テーブル１６、信号値管理テーブル１７、フリーフォーマットウィンドウ管理テーブル１８、ストリームウィンドウ管理テーブル１９及び時刻管理テーブル２０の各管理データを用いて、論理シミュレーション結果情報を端末２のディスプレイ３に表示するよう制御を行う。
コマンド解析手段１４は、ユーザと対話することで、ユーザから与えられたコマンドを解析して命令管理テーブルを作成し、指示された命令へ制御を移す。また、ファクションキー制御手段１５は、ユーザと対話することで、端末２の入力装置４を介してユーザから指示されたファクションキーに設定されているコマンドをコマンド解析手段１４に転送する。
【００１９】
ウィンドウ管理テーブル１６は、端末２のディスプレイ３に表示すべき１つ又は複数のウィンドウの表示態様を管理する。また、信号値管理テーブル１７は、論理シミュレーション結果情報をなす信号端子毎の信号値の時系列データを管理する。また、フリーフォーマットウィンドウ（ＦＷ）管理テーブル１８は、ユーザ定義のフリーフォーマット表示形式の表示態様を管理する。また、ストリームウィンドウ（ＳＷ）管理テーブル１９は、論理シミュレーション結果情報の時系列表示形式となるシステム定義のストリーム表示形式の表示態様を管理する。また、時刻管理テーブル２０は、表示する論理シミュレーション時刻を管理すると共に、現表示時刻を管理する。また、メモリ管理テーブル２１は、後述するように論理アドレス空間の定義データを管理する。また、ファンクション管理テーブル２２は、端末２の入力装置４に備えられているファクションキーに設定されているコマンドデータを管理する。
【００２０】
ログ出力手段２３は、コマンド解析手段１４の解析結果に基づいて、エラーの無かったものを「ログ」として出力する。
ウィンドウ設定手段２４は、ユーザとの対話を通してコマンド解析手段１４の解析結果に基づき、端末２のディスプレイ３に表示すべき１つ又は複数のウィンドウ（フリーフォーマットウィンドウとストリームウィンドウ）を設定するための処理を行う。具体的には、例えば、ユーザが２種類のフリーフォーマットウィンドウを表示することを希望した場合には、ストリームウィンドウを表示することに加えて、デフォルトとして用意される２つのフリーフォーマットウィンドウ用のウィンドウ枠を設定し、ユーザとの対話を通して、この２つのウィンドウ枠のそれぞれにユーザの希望するフリーフォーマット表示形式を割り付ける。係る処理は、２種類以上のフリーフォーマットウィンドウを表示する時にも同様である。さらに、このウィンドウ設定手段２４は、ユーザとの対話を通して、フリーフォーマットウィンドウ用のウィンドウ枠の大きさや配置を変える機能をも有している。
【００２１】
状態値選択手段２５は、ユーザと対話することで、端末２のディスプレイ３に表示されているフリーフォーマット表示形式中の状態値を選択する。また、信号値設定手段２６は、コマンド解析手段１４の解析結果に基づいて、当該コマンドが信号値設定命令であると判断される時、その解析結果より得られた信号端子に値を設定する。また、属性変更手段２７は、コマンド解析手段１４の解析結果に基づいて、当該コマンドが属性変更命令であると判断される時、その解析結果より得られた信号端子の属性を変更することで、該当する素子又は回路の評価を行わないようにする。
【００２２】
メモリ内容表示手段２８は、コマンド解析手段１４の解析結果に基づいて、当該コマンドがメモリ内容表示命令であると判断される時、メモリ管理テーブル２１を参照して該当するメモリ内容を端末２のディスプレイ３に表示するよう制御を行う。また、メモリ内容設定手段２９は、コマンド解析手段１４の解析結果に基づいて、当該コマンドがメモリ内容設定命令であると判断される時、シミュレーション対象回路内のメモリ内容を書き換える。
【００２３】
シミュレーション実行手段３０は、コマンド解析手段１４の解析結果に基づいて、当該コマンドがシミュレーションを実行する命令であると判断される時、論理シミュレーション手段１２に制御を移し、指定された時刻における論理シミュレーションを実行する。また、時刻設定手段３１は、ユーザと対話することで、端末２のディスプレイ３に表示されるストリーム表示形式中の任意のシミュレーション時刻を設定し、シミュレーション実行手段３０を介して論理シミュレーション手段１２に制御を移し、その設定されたシミュレーション時刻まで論理シミュレーションを実行する。なお、設定されたシミュレーション時刻が現在時刻よりも前の時刻である場合には、その設定された過去の時刻でのシミュレーション結果をフリーフォーマット表示形式で表示するように処理がなされる。
【００２４】
メモリ内容選択手段３２は、ユーザと対話することで、端末２のディスプレイ３に表示されているメモリ内容のうちユーザの指定したメモリ内容を選択し、その選択したメモリ内容をメモリ内容設定手段２９に転送する。そして、その選択されたメモリ内容の値が元の表示値と異なる値である場合に、メモリ内容設定手段２９は、その選択されたメモリ内容を書き換えるよう処理を行う。
【００２５】
以下、論理シミュレーション結果情報の表示処理に用いられる各種管理テーブルについて、図２〜図５を参照しながら詳細に説明する。
図２はウィンドウ管理テーブル及びそれに関連した各テーブルを説明するための図である。
図中、（ａ）に示すウィンドウ管理テーブル１６は、端末２のディスプレイ３に表示されるウィンドウの持つ属性情報を管理するものであり、具体的には、ウィンドウ設定手段２４によって設定されたウィンドウがフリーフォーマットウィンドウなのか又はストリームウィンドウなのかを管理するウィンドウ種別エントリーと、設定されたウィンドウの表示位置を管理する表示位置エントリーと、設定されたウィンドウの表示態様データの展開位置を管理する管理テーブル位置エントリーと、以前に特定されたフリーフォーマットウィンドウの表示内容データの展開位置を管理する表示内容エントリーとを備えている。
【００２６】
また、（ｂ）に示すフリーフォーマットウィンドウ（ＦＷ）管理テーブル１８は、前述したようにユーザ定義のフリーフォーマット表示形式の表示態様データを管理するものであり、具体的には、どの表示位置にどの信号端子の信号値を表示させるかといった表示態様データを管理する。上述したウィンドウ管理テーブル１６は、ウィンドウ種別エントリーでフリーフォーマットウィンドウ種別を管理する時には、設定されたフリーフォーマット表示態様データを管理するこのフリーフォーマットウィンドウ管理テーブル１８の展開位置を管理する。
【００２７】
また、（ｃ）に示すストリームウィンドウ（ＳＷ）管理テーブル１９は、前述したようにシステム定義のストリーム表示形式の表示態様データを管理するものであり、具体的には、１行目にはどの信号端子の信号値を表示させ、２行目にはどの信号端子の信号値を表示させるかといった表示態様データを管理する。上述したウィンドウ管理テーブル１６は、ウィンドウ種別エントリーでストリームウィンドウ種別を管理する時には、設定されたストリーム表示態様データを管理するこのストリームウィンドウ管理テーブル１９の展開位置を管理する。
【００２８】
また、（ｄ）に示す信号値管理テーブル１７は、前述したように論理シミュレーション結果情報を管理するものであり、具体的には、信号端子毎の信号値の時系列データを信号端子毎に管理する。また、（ｅ）に示す時刻管理テーブル２０は、対象となる論理シミュレーションの表示時刻と、現表示時刻を示す論理シミュレーション表示時刻とを管理する。更に、（ｆ）は表示内容テーブルを示し、以前に特定されたフリーフォーマットウィンドウの表示内容データの再利用のために管理する。上述したウィンドウ管理テーブル１６は、表示内容エントリーでこの表示内容テーブルの展開位置を管理する。
【００２９】
上述したように、ウィンドウ管理テーブル１６は、端末２のディスプレイ３に表示すべき１つ又は複数のウィンドウの表示態様を管理しているが、設定された各ウィンドウ内の表示は、フリーフォーマット表示形式の場合にはフリーフォーマットウィンドウ（ＦＷ）管理テーブル１８及び信号値管理テーブル１７を参照することにより、またストリーム表示形式の場合にはストリームウィンドウ（ＳＷ）管理テーブル１９及び信号値管理テーブル１７を参照することにより、それぞれ行われる。また、シミュレーション時刻が経過するか、又は現時刻よりも以前の時刻を指定された場合には、時刻管理テーブル２０によって管理することにより、全てのウィンドウの表示シミュレーション時刻を同期させる。
【００３０】
フリーフォーマット表示形式のウィンドウ内に表示されている任意の状態値を指示された場合、フリーフォーマットウィンドウ（ＦＷ）管理テーブル１８を参照することで、指示された状態値に対応する信号端子を知ることができる。従って、ウィンドウ上の状態値が書き換えられた場合、その状態値を、指示された信号端子の回路情報（つまり論理回路データ情報管理手段１１によって管理されている回路情報）に設定することで、フリーフォーマット表示形式ウィンドウ上を書き換えて、信号値を設定することができる。
【００３１】
図３はメモリ管理テーブルを説明するための図である。
図中、（ａ）は論理シミュレーションの対象となる論理回路内の複数のメモリセル（ＲＡＭ）を特定するアドレス空間を規定したメモリ仮想空間イメージを示し、（ｂ）はそのメモリ仮想空間イメージを管理するメモリ管理テーブル２１の構成を示す。
【００３２】
このメモリ仮想空間イメージは、例えば、以下に記述するメモリ定義例によって定義される。
メモリ定義例
MEMORY MEMORY01 (  ('/RAM  SIG11', '/RAM  SIG12', …………,         '/RAM  SIG18' ), ('/RAM SIG21', '/RAM  SIG22', …………,         '/RAM  SIG28' ), ……………, ('/RAM SIG81', '/RAM  SIG82', …………, '/RAM  SIG88' )  )  SIZE (512K, 8) ;
このメモリ定義例において、'/RAM  SIG11', '/RAM  SIG12', ……等は、各メモリセル（ＲＡＭ）のモデルに対する信号名を表しており、図示の例では、６４ＫアドレスのＲＡＭを８×８個用いて８ビット幅の５１２Ｋアドレス空間を定義している。
【００３３】
図４はメモリのインタリーブを説明するための図である。
インタリーブ等でアドレスが不連続な場合、例えば、以下に記述するインタリーブ指定定義例のようにウェイ数を定義する。
インタリーブ指定定義例
MEMORY MEMORY01 (  ('/RAM  SIG11', '/RAM  SIG12', …………,         '/RAM  SIG18' ), ('/RAM SIG21', '/RAM  SIG22', …………,         '/RAM  SIG28' ), ……………, ('/RAM SIG81', '/RAM  SIG82', …………, '/RAM  SIG88' )  )  SIZE (512K, 8)  INTERLEAVE (8);
この例のようにウェイ数を８とした場合、図４に示すように１９ビット（０〜１８）のうち下位３ビット（０〜２）を上位に移動してアドレスを計算する。なお、図４において、ｍ＝１９は、ｌｏｇ（アドレス数）＝ｌｏｇ（５１２Ｋ）の計算によって求められ、ｎ＝３は、ｌｏｇ（ウェイ数）＝ｌｏｇ（８）の計算によって求められる。
【００３４】
このようにして定義されたウェイ数、アドレス数、信号名等は、図３（ｃ）に示すメモリ宣言管理テーブルによって管理される。そして、メモリ宣言管理テーブル内の補助テーブル位置エントリーによって展開される補助テーブルを介して記憶域をアクセスすることにより、上述したメモリ仮想空間を作り出すことができ、これによってメモリ内容表示が可能となる。
【００３５】
また、アドレスが或る変換規則に従って不連続な場合でも、メモリ宣言管理テーブルのウェイ数から、上述したようなインタリーブのアドレス計算を行うことでメモリ仮想空間を作り出すことができる。
さらに、メモリへの書き込みの場合は、メモリ内容の表示と同じようにして記憶域をアクセスすることにより、メモリ内容の書き換えを行うことができる。
【００３６】
図５はファンクション管理テーブル２２を説明するための図である。
ユーザとの対話を通して端末２の入力装置４よりファンクションキーが操作された場合、図示のファンクション管理テーブルを参照することで、実行すべきコマンド列が得られる。
図５において、（１）のコマンド文字列のようにコマンド（図示の例ではシミュレーションを実行する命令；ＳＩＭＬ）で始まっている場合には、当該コマンドはコマンド解析手段１４に引き渡され、それによってその命令の即時実行が処理される。また、（２）のコマンド文字列のように先頭に“Ｄ”がある場合には、そのコマンド文字列はコマンド入力域（後述する図７の（７）の領域）に表示される。
【００３７】
前述したように、本発明に係る論理シミュレーションシステムでは、フリーフォーマット表示形式で表される論理シミュレーション結果情報と、ストリーム表示形式で表される論理シミュレーション結果情報とを同一ディスプレイ画面上にマルチウィンドウを用いて同時に表示することを基本構成にしている。このうちストリーム表示形式の表示態様については、システム側で予め用意するものであるが、フリーフォーマット表示形式の表示態様については、ユーザが自由に定義することになる。
【００３８】
このフリーフォーマット表示形式の表示態様の設定処理は、主として、ウィンドウ管理テーブル１６（フリーフォーマットウィンドウ管理テーブル１８）及びウィンドウ設定手段２４によって制御される。つまり、ユーザに対し画面イメージでもって、どの表示位置にどの信号端子の信号値を表示させるかといった表示態様を指定させて、これを論理シミュレーションシステム１の内部データ形式に変換していくことで、１つ又は複数のフリーフォーマット表示形式（例えば、後述する図６〜図１０に示すウィンドウａ，ｂ）を設定していくことになる。
【００３９】
ここで、ストリーム表示形式とフリーフォーマット表示形式のいずれもが、複数の信号端子を１つのグループとして定義することを許しており、例えば、
GROUP  # GRP1 ('DATA0', 'DATA1', 'DATA2', 'DATA3');
というように４つの信号端子DATAi (i＝0,1,2,3)を「# GRP1」というグループ名で定義して、このグループ名を用いて、この４つの信号端子DATAi の信号値を２進数や１６進数で表示させるように指定させることも可能である。この指定に従って、例えば“００１１”という２進数でもって、この４つの信号端子DATAi の持つ信号値の表示が実現されることになり、また、例えば“３”という１６進数でもって、この４つの信号端子DATAi の持つ信号値の表示が実現されることになる。
【００４０】
次に、本実施例に係るシステムによる論理シミュレーション結果情報の表示処理例について、図６〜図１０を参照しながら説明する。
図６は、ディスプレイ３の画面上に２つのフリーフォーマット表示形式のウィンドウａ，ｂと１つのストリーム表示形式のウィンドウｃとが表示されている表示例を示す。
【００４１】
図中、（１）はユーザが自由に設定できる文字、（２）はユーザが設定した信号端子の状態値を示す。この状態値は、前述したように、１信号端子に対して１文字、或いは４信号端子をまとめて１文字（つまり１６進表示）で指示することが可能である。また、（３）はシミュレーション時刻、（４）は信号端子名、（５）は（４）の信号端子に対する状態値をシミュレーション時刻に沿って表示したものである。また、（６）は現シミュレーション時刻を示す。
【００４２】
図７は、上記３つのウィンドウａ，ｂ，ｃとコマンド入力域を表示した表示例を示す。
図中、（７）で指示される部分が、ユーザの入力操作に基づいて入力されたコマンド（文字列）を表示するためのコマンド入力域を示す。図示の例では、コマンド入力域（７）にＳＥＴＳ（信号端子に値を設定する命令）が表示され、 'ＳＩＧ１' という信号端子に '１' を設定する旨の指示が表示されている。
【００４３】
図８は、図７の表示例におけるウィンドウａ内の（８）の部分をポインティングデバイス等で指示することでその状態値を直接書き換えた表示例を示す。これは、上述したＳＥＴＳ（信号端子に値を設定する命令）と同じ機能であるが、図７のようにコマンド入力域（７）に長い文字列を入力することなく、容易に信号値を設定できる例を示している。
【００４４】
図９は、コマンド入力域（７）にＳＩＭＬ（シミュレーションを実行する命令）が表示されている表示例を示す。図示の例では、シミュレーション時刻をｔ１まで進める旨の指示が表示されている。
図１０は、図９の表示例におけるウィンドウｃ内の（９）の部分をポインティングデバイス等で指示することでシミュレーション時刻をｔ１まで進めた表示例を示す。これは、上述したＳＩＭＬ（シミュレーションを実行する命令）と同じ機能であるが、図９のようにコマンド入力域（７）に文字列を入力することなく、容易にシミュレーションの実行ができる例を示している。
【００４５】
図１１は、図３及び図４に関連して説明したメモリ仮想空間イメージの内容表示の一例を示す。
図示の例では、ワード長が１６Ｋで、ビット長が７２ビットの仮想空間イメージの内容が表示されている。図中、＊１，＊２，……，＊１６はそれぞれメッセージ表示欄又はデータ入力欄を表している。すなわち、＊１はメモリ名表示欄、＊２はワード長表示欄、＊３はビット長表示欄、＊４はインタリーブのウェイ数表示欄、＊５はベースアドレス表示・入力欄、＊６は表示先頭アドレス変位表示・入力欄、＊７はアドレス表現のモード（ＨＥＸ／ＤＥＣ）表示・入力欄、＊８は縦スクロール量表示・入力欄、＊９は横スクロール量表示・入力欄、＊１０は先頭表示コラム位置表示・入力欄、＊１１はテンプレート名入力欄、＊１２はコメント表示・入力欄、＊１３はフォーマット表示・入力欄、＊１４はアドレス表示欄、＊１５はデータ表示・入力欄、＊１６はコマンド入力欄を示す。
【００４６】
図１２は、メモリの内容書き換えの一例を示す。
図示の例では、ディスプレイ画面のコマンド入力域（７）にＳＥＴＭ（メモリの内容を書き換える命令）が表示され、これによって、ＭＥＭＯＲＹ０１と定義されたメモリ空間の０ワード目に‘０’を書き込んでいる。
図１３は、メモリの内容書き換えの他の例を示す。
【００４７】
図示の例は、図１１の表示例におけるアドレス表示欄＊１４のアドレス“０”に対応するデータを直接指定して書き換えた場合の表示例を示している。この例では、１箇所のみを指定して書き換えを行うようにしているが、もちろん、複数箇所を指定して同時に書き込むことも可能である。これは、前述のＳＥＴＭ（メモリの内容を書き換える命令）と同じ機能であるが、図１２のようにコマンド入力域（７）に文字列を入力することなく、容易にメモリ内容を書き換えることができる例を示している。
【００４８】
図１４には結果表示制御手段１３のプログラム構成の一例が示される。
同図に示すように、結果表示制御手段１３は、ウィンドウマネージャ８０と、該ウィンドウマネージャによって制御されるイベント処理プロセス８１と、それぞれイベント処理プロセス８１によって起動されるストリームウィンドウ表示プロセス８２、フリーフォーマットウィンドウ表示プロセス８３、時刻変更プロセス８４、コマンド処理プロセス８５、状態値変更プロセス８６、メモリ表示プロセス８７、メモリ書き込みプロセス８８及びファンクションキー処理プロセス８９とを備える。
【００４９】
図１５〜図２５には結果表示制御手段１３が備える各プロセスを規定したフローチャートが示される。以下、これらのフローチャートを参照しながら、本実施例に係る論理シミュレーション処理について詳細に説明する。
＜イベント処理プロセス８１……図１５参照＞
端末２からイベントが入力されると、先ずステップ１０１では、この入力イベントの受付処理を実行する。次のステップ１０２では、入力イベントがストリームウィンドウ（ＳＷ）表示プロセス８２の起動を指示するイベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはストリームウィンドウ表示プロセス８２を起動し、判定結果がＮを指示する場合にはステップ１０３に進む。ステップ１０３では、入力イベントがフリーフォーマットウィンドウ（ＦＷ）表示プロセス８３の起動を指示するイベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはフリーフォーマットウィンドウ表示プロセス８３を起動し、判定結果がＮを指示する場合にはステップ１０４に進む。
【００５０】
ステップ１０４では、入力イベントが時刻変更プロセス８４の起動を指示するイベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合には時刻変更プロセス８４を起動し、判定結果がＮを指示する場合にはステップ１０５に進む。ステップ１０５では、入力イベントがコマンド処理プロセス８５の起動を指示するイベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはコマンド処理プロセス８５を起動し、判定結果がＮを指示する場合にはステップ１０６に進む。ステップ１０６では、入力イベントが状態値変更プロセス８６の起動を指示するイベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合には状態値変更プロセス８６を起動し、判定結果がＮを指示する場合にはステップ１０７に進む。
【００５１】
ステップ１０７では、入力イベントがメモリ表示プロセス８７の起動を指示するイベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはメモリ表示プロセス８７を起動し、判定結果がＮを指示する場合にはステップ１０８に進む。ステップ１０８では、入力イベントがメモリ書き込みプロセス８８の起動を指示するイベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはメモリ書き込みプロセス８８を起動し、判定結果がＮを指示する場合にはステップ１０９に進む。
【００５２】
ステップ１０９では、入力イベントがファンクションキー処理プロセス８９の起動を指示するイベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはファンクションキー処理プロセス８９を起動し、判定結果がＮを指示する場合にはステップ１１０に進む。ステップ１１０では、入力イベントが処理終了を指示する終了イベントである（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはこのフローは「終了」となり、判定結果がＮを指示する場合にはステップ１０１に戻って上記処理を繰り返す。
【００５３】
このようにして、イベント処理プロセス８１は、図１５の処理フローを実行することで、入力イベントの指示するプロセスを起動していくよう処理する。
＜ストリームウィンドウ表示プロセス８２……図１６参照＞
イベント処理プロセス８１から起動されると、先ずステップ２０１では、時刻管理テーブル２０から現表示時刻を示す論理シミュレーション表示時刻を読み出す。次のステップ２０２では、この読み出した論理シミュレーション表示時刻を標準時刻として、ストリームウィンドウ表示データを作成する。すなわち、ストリームウィンドウ管理テーブル１９の指定するストリームウィンドウの表示形式に、読み出した論理シミュレーション表示時刻近傍の信号値管理テーブル１７の信号値時系列データを当てはめていくことで、ストリームウィンドウ表示データを作成する。
【００５４】
次のステップ２０３では、作成したストリームウィンドウ表示データをウィンドウ設定手段２４が設定したストリームウィンドウ（例えば図６〜図１０に示されるストリーム表示形式のウィンドウｃ）に表示していく。この時、ストリームウィンドウ表示プロセス８２は、現シミュレーション表示時刻部分（図６の（６）の部分）と当該シミュレーション表示時刻に対応付けられる信号値部分（図６の（５）の部分）については色を変えて表示していくことで、その旨を表示していくことになる。
【００５５】
＜フリーフォーマットウィンドウ表示プロセス８３……図１７参照＞
イベント処理プロセス８１から起動されると、先ずステップ３０１では、時刻管理テーブル２０から現表示時刻を示す論理シミュレーション表示時刻を読み出す。次のステップ３０２では、この読み出した論理シミュレーション表示時刻を標準時刻として、フリーフォーマットウィンドウ表示データを作成する。すなわち、フリーフォーマットウィンドウ管理テーブル１８の指定するフリーフォーマットウィンドウの表示形式に、読み出した論理シミュレーション表示時刻の信号値テーブル１７の信号値データを当てはめていくことで、フリーフォーマットウィンドウ表示データを作成する。
【００５６】
次のステップ３０３では、作成したフリーフォーマットウィンドウ表示データをウィンドウ設定手段２４が設定したフリーフォーマットウィンドウ（例えば図６〜図１０に示されるフリーフォーマット表示形式のウィンドウａ，ｂ）に表示していく。
以上の如く、ストリームウィンドウ表示プロセス８２及びフリーフォーマットウィンドウ表示プロセス８３の処理に従って、ストリーム表示形式に従う論理シミュレーション結果情報とフリーフォーマット表示形式に従う論理シミュレーション結果情報とが、端末２のディスプレイ３に同時に表示されることになる。
【００５７】
＜時刻変更プロセス８４……図１８参照＞
イベント処理プロセス８１から起動されると、先ずステップ４０１では、新たな論理シミュレーション表示時刻となる、指定された変更後の時刻を取得する。次のステップ４０２では、指定された時刻が現在の時刻より前である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ４０３に進み、判定結果がＮを指示する場合にはステップ４０４に進む。ステップ４０４では、指定された時刻まで論理シミュレーションを進める処理を行い、この後、ステップ４０３に進む。
【００５８】
ステップ４０３では、時刻管理テーブル２０の論理シミュレーション表示時刻を更新すると共に、処理すべきウィンドウ（すなわち表示中のウィンドウ）がストリーム表示形式である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ４０５に進み、判定結果がＮを指示する場合（つまり処理すべきウィンドウがフリーフォーマット表示形式である場合）にはステップ４０６に進む。ステップ４０６では、指定された新たな論理シミュレーション表示時刻の信号値を信号値管理テーブル１７から取得し、次のステップ４０７では、その取得した信号値を現在表示中の信号値と比較して違うところだけを色を変えて当該フリーフォーマットウィンドウに表示する。この後、このフローは「終了」となる。
【００５９】
一方、ステップ４０５では、指定された時刻が現在時刻より前である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ４０８に進み、判定結果がＮを指示する場合にはステップ４０９に進む。ステップ４０９では、更新前の論理シミュレーション表示時刻から指定された新たな論理シミュレーション表示時刻までの信号値を信号値管理テーブル１７から読み出して表示し、この後、ステップ４０８に進む。ステップ４０８では、指定された新たな論理シミュレーション表示時刻の表示部分の色を変えて表示する。この後、このフローは「終了」となる。
【００６０】
このようにして、時刻変更プロセス８４の処理に従って、論理シミュレーション表示時刻がユーザの指定するものに更新され、また、ストリームウィンドウ中の現シミュレーション表示時刻の表示部分が色を変えて表示されると共に、フリーフォーマットウィンドウ中の信号値表示の内の論理シミュレーション表示時刻の更新により変化する信号値部分が色を変えて表示されるようになる。
【００６１】
＜コマンド処理プロセス８５……図１９，図２０参照＞
イベント処理プロセス８１から起動されると、先ずステップ５０１では、コマンドがファイルから入力されたもの（Ｙ）か否（Ｎ）か、つまりユーザとの対話を通して入力されたものでないか否かを判定し、判定結果がＹを指示する場合にはステップ５０２に進み、判定結果がＮを指示する場合にはステップ５０４に進む。ステップ５０２ではファイルからのコマンド入力が終了していない（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ５０３に進み、判定結果がＮを指示する場合にはこのフローは「終了」となる。ステップ５０３では、１コマンド文字列をファイルから入力する。
【００６２】
次のステップ５０４では、入力されてくるコマンド文字列の解析を実行する。ステップ５０５では、この解析結果に基づいて文法上の間違いがある（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ５０６に進み、判定結果がＮを指示する場合にはステップ５０７に進む。ステップ５０６では、エラーメッセージを出力し、この後、このフローは「終了」となる。
【００６３】
一方、ステップ５０７では、入力されたコマンドがＳＥＴＳ（信号端子に値を設定する命令）である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ５０８に進み、判定結果がＮを指示する場合にはステップ５０９に進む。ステップ５０８では、指定された信号端子に値を設定し、この後、ステップ５１５に進む。
【００６４】
一方、ステップ５０９では、入力されたコマンドがＳＥＴＭ（メモリの内容を書き換える命令）である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ５１０に進み、判定結果がＮを指示する場合にはステップ５１１に進む。ステップ５１０では、指定されたメモリ仮想空間に値を設定し、この後、ステップ５１５に進む。
【００６５】
一方、ステップ５１１では、入力されたコマンドがＣＨＧＶ（信号端子の属性を変更する命令）である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ５１２に進み、判定結果がＮを指示する場合にはステップ５１３に進む。ステップ５１２では、指定された信号端子の属性を変更し、この後、ステップ５１５に進む。
【００６６】
一方、ステップ５１３では、入力されたコマンドがＳＩＭＬ（シミュレーションを実行する命令）である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ５１４に進み、判定結果がＮを指示する場合にはステップ５１５に進む。ステップ５１４では、指定された時刻まで論理シミュレーションを実行し、この後、ステップ５１５に進む。
【００６７】
ステップ５１５では、ファイルからコマンドが入力中である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ５０２に戻って上記処理を繰り返し、判定結果がＮを指示する場合にはこのフローは「終了」となる。
このようにして、コマンド処理プロセス８５の処理に従って、コマンドの指定条件を充足する時刻を論理シミュレーション表示時刻として、フリーフォーマット表示形式でのウィンドウ内の表示データ、ストリーム表示形式でのウィンドウ内の表示データ、及び、メモリ仮想空間イメージの内容表示データが更新されていく。
【００６８】
＜状態値変更プロセス８６……図２１＞
イベント処理プロセス８１から起動されると、先ずステップ６０１では、フリーフォーマット表示形式のウィンドウ内の指定された状態値の表示位置と書き換えられた値をウィンドウ管理テーブル１６及びフリーフォーマットウィンドウ管理テーブル１８と信号値管理テーブル１７から取得する。次のステップ６０２では、指定された表示位置は上記状態値の設定が可能である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ６０３に進み、判定結果がＮを指示する場合にはステップ６０５に進む。
【００６９】
ステップ６０３では、指定された表示位置に対応する信号端子をフリーフォーマットウィンドウ管理テーブル１８から取得し、次のステップ６０４では、その取得した信号端子に上記状態値を設定する。これによって、フリーフォーマットウィンドウ内の指定された表示位置における状態値が変更されて表示される。この後、このフローは「終了」となる。
【００７０】
一方、ステップ６０５では、エラーメッセージを出力し、この後、このフローは「終了」となる。
このようにして、状態値変更プロセス８６の処理に従って、フリーフォーマットウィンドウ上の表示位置の指定と書き換えるべき状態値の指定から、その表示位置に対応する信号端子が特定され、その信号端子の状態値が変更表示されるようになる。
【００７１】
＜メモリ表示プロセス８７……図２２＞
イベント処理プロセス８１から起動されると、先ずステップ７０１では、図３及び図４に関連して説明したようにメモリ管理テーブル２１を参照して仮想空間イメージを生成する。次のステップ７０２では、生成した仮想空間イメージを端末２のディスプレイ３に表示する（例えば図１１，図１３参照）。この後、このフローは「終了」となる。
【００７２】
＜メモリ書き込みプロセス８８……図２３，図２４＞
（１）  第１の例……図２３参照
イベント処理プロセス８１から起動されると、先ずステップ８０１では、ユーザとの対話を通してディスプレイ画面上に直接指定された位置と状態値を取得する。次のステップ８０２では、その取得した位置に基づいて、メモリ管理テーブル２１の記憶領域内のアクセスする領域（つまり、その取得した位置を指示するアドレスによって指定される記憶領域）を求める。次のステップ８０３では、その求められた領域に上記指定された状態値を設定する。これによって、ディスプレイ画面上に直接指定された位置に対応するメモリ内容が書き換えられる。この後、このフローは「終了」となる。
【００７３】
（２）  第２の例……図２４参照
イベント処理プロセス８１から起動されると、先ずステップ８５１では、入力されたコマンドがメモリ内容を書き換える命令（ＳＥＴＭ）であると判断された時に、メモリ管理テーブル２１よりアクセスする領域を求める。次のステップ８５２では、その求められた領域に、上記ＳＥＴＭによって指示される状態値を設定する。これによって、上記ＳＥＴＭに基づいてディスプレイ画面上に指定された位置に対応するメモリ内容が書き換えられる。この後、このフローは「終了」となる。
【００７４】
＜ファンクションキー処理プロセス８９……図２５＞
イベント処理プロセス８１から起動されると、先ずステップ９０１では、ユーザが操作したファンクションキーの番号を指示する情報をファンクション管理テーブル２２から取得する。次のステップ９０２では、その取得した番号情報に基づいて、その操作されたファンクションキーに特定のコマンドが設定されている（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ９０３に進み、判定結果がＮを指示する場合にはこのフローは「終了」となる。
【００７５】
ステップ９０３では、そのコマンドは即時実行されるべき命令である（Ｙ）か否（Ｎ）かを判定し、判定結果がＹを指示する場合にはステップ９０４に進み、判定結果がＮを指示する場合にはステップ９０５に進む。ステップ９０５では、指定されたコマンド文字列をコマンド入力域（図１９に示す表示画面上の（７）の部分）に表示し、この後、このフローは「終了」となる。
【００７６】
一方、ステップ９０４では、指定されたコマンド文字列を前述のコマンド処理プロセス（図１９，図２０参照）に引き渡すことで即時実行を行う。この後、このフローは「終了」となる。
以上説明したように、本実施例に係る論理シミュレーションシステムにおいては、結果表示制御手段１３は、ウィンドウ管理テーブル１６（フリーフォーマットウィンドウ管理テーブル１８）及び信号値管理テーブル１７の管理データを参照して、フリーフォーマット表示形式の持つ信号端子の現表示時刻の信号値を設定することで、現表示時刻におけるフリーフォーマット表示形式での論理シミュレーション結果情報を特定すると共に、ウィンドウ管理テーブル１６（ストリームウィンドウ管理テーブル１９）及び信号値管理テーブル１７の管理データを参照して、ストリーム表示形式の持つ信号端子の現表示時刻を含む信号値の時系列データを特定することで、現表示時刻を含むストリーム表示形式での論理シミュレーション結果情報を特定する。そして、特定したフリーフォーマット表示形式での論理シミュレーション結果情報とストリーム表示形式での論理シミュレーション結果情報とを、それぞれディスプレイ画面上の設定されたウィンドウ内に同時に表示する。
【００７７】
そして、コマンド解析手段１４は、ディスプレイ３を介してユーザと対話することで、入出力制御手段１０を介して入力されるコマンドを解析し、その結果、当該コマンドが信号端子への信号値設定の命令である場合には、信号値設定手段２６に制御を渡す。信号値設定手段２６は、論理回路データ情報管理手段１１に変更を通知することによって信号値の状態を変更する。なお、信号値の設定に際しては、２進表示或いは１６進表示によって、複数の信号端子にまとめて設定してもよい。
【００７８】
状態値選択手段２５は、ディスプレイ画面を介してユーザと対話することで、フリーフォーマット表示形式中の状態値を選択する。そして、この選択された状態値が元の表示値と異なる値であると判定した場合には、ウィンドウ管理テーブル１６を参照して、選択された状態値に対応する信号端子を、入力された値と共に、信号値設定手段２６に引き渡す。これを受けて信号値設定手段２６は、フリーフォーマット表示形式中の指示された状態値を直接変更する。
【００７９】
また、時刻設定手段３１は、ディスプレイ画面を介してユーザと対話することで、ストリーム表示形式中のシミュレーション時刻を選択する。そして、その選択したシミュレーション時刻が現時刻よりも先であると判定した場合には、シミュレーション実行手段３０に制御を移すことで、その選択したシミュレーション時刻までシミュレーションを進める。
【００８０】
一方、メモリ内容選択手段３２は、ディスプレイ画面を介してユーザと対話することで、ディスプレイ画面に表示されているメモリ内容のうちユーザが指示したメモリ内容を選択する。そして、その指示されたメモリ内容の値が元の表示値と異なる値であると判定した場合には、メモリ管理テーブル２１を参照し、メモリ内容設定手段２９に制御を移すことで、その指示されたメモリ内容の書き換えを行う。
【００８１】
このように、本実施例による論理シミュレーションシステムによれば、多数の信号端子の信号値を表示可能にするフリーフォーマット表示形式での論理シミュレーション結果情報と、信号端子の信号値の時間的な流れを把握可能にするストリーム表示形式での論理シミュレーション結果情報とを同一ディスプレイ画面上にマルチウィンドウの形態で同時に表示し、またメモリ仮想空間イメージの内容をディスプレイ画面上に表示することを基本構成にして、メニューの選択による入力指示等を不要にし、フリーフォーマット表示上に直接書き込むことにより状態値を設定したり、ストリーム表示上の時刻部分を直接指示することによりシミュレーションを実行したり、メモリ内容表示上に直接書き込むことによりメモリ内容を書き換えたりする構成を採っている。
【００８２】
従って、ユーザは、論理シミュレーションに関する面倒な手順や操作を意識することなく、論理シミュレーションの実行とその解析を容易に且つ効率的に行うことができる。
また、次の段階のシミュレーション手順を考える場合でも、その思考の中断を少なくして、効率的なシミュレーションの実行が可能となる。
【００８３】
なお、上述した実施例ではディスプレイ画面上の表示部分の色を変えることでユーザの注意を喚起する構成について説明したが、本発明はこれに限定されることなく、例えば、明るさを変えたり、或いはフリッカさせたりするような他の構成を採ることも可能である。
【００８４】
本発明は、さらに以下の実施態様を含む。
（付記１）  ディスプレイ画面を介してユーザと対話することで論理シミュレーションを行い、その結果を該ディスプレイ画面に表示する構成を採る対話型論理シミュレーションシステムにおいて、
前記ディスプレイ画面を介してユーザと対話することで、任意の表示範囲によって規定されたウィンドウの形態で論理シミュレーション結果情報の少なくとも１つの表示形式を設定する設定手段（２４）と、
該設定手段により設定されるフリーフォーマット表示形式の表示態様を管理する第１の管理テーブル（１６，１８）と、
論理シミュレーション結果情報の時系列表示形式となるストリーム表示形式の表示態様を管理する第２の管理テーブル（１６，１９）と、
論理シミュレーション結果情報をなす信号端子毎の信号値の時系列データを管理する第３の管理テーブル（１７）と、
前記第１，第２，第３の管理テーブルの管理データを用いて論理シミュレーション結果情報を特定し、該特定した論理シミュレーション結果情報を前記ディスプレイ画面に表示するよう処理を行う結果表示制御手段（１３）とを具備し、
指定した時刻のフリーフォーマット表示形式での論理シミュレーション結果情報と指定した信号端子のストリーム表示形式での論理シミュレーション結果情報とを、それぞれ前記ディスプレイ画面上の設定されたウィンドウに同時に表示するようにしたことを特徴とする対話型論理シミュレーションシステム。
【００８５】
（付記２）  付記１に記載の対話型論理シミュレーションシステムにおいて、
論理シミュレーションの対象となる論理回路の信号端子に対応付けられた論理回路データ情報を管理する手段（１１）と、
前記ディスプレイ画面との対話を通してユーザから与えられたコマンドを解析する手段（１４）と、
該解析結果に基づいて当該コマンドが信号端子への信号値設定を指示する命令（ＳＥＴＳ）である場合に、前記論理回路データ情報のうち指示された信号端子に対応する信号値の情報を変更することで信号値設定を行う手段（２６）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００８６】
（付記３）  付記２に記載の対話型論理シミュレーションシステムにおいて、
前記信号値設定を行う手段は、一信号端子名又は複数の信号端子をまとめたグループ名の指定によるコマンドに基づいて信号端子への信号値設定を行うことを特徴とする対話型論理シミュレーションシステム。
【００８７】
（付記４）  付記３に記載の対話型論理シミュレーションシステムにおいて、
前記結果表示制御手段は、前記信号端子への信号値設定がグループ名の指定によって行われる場合に、論理シミュレーション結果情報の信号値を１６進数又は２進数で表示することで複数の信号端子の信号値をまとめて表示するよう処理を行うことを特徴とする対話型論理シミュレーションシステム。
【００８８】
（付記５）  付記１に記載の対話型論理シミュレーションシステムにおいて、
論理シミュレーションの対象となる論理回路の信号端子に対応付けられた論理回路データ情報を管理する手段（１１）と、
前記ディスプレイ画面を介してユーザと対話することで、フリーフォーマット表示形式のウィンドウ内に表示されている状態値のうちユーザが指示した状態値を選択する手段（２５）と、
該選択された状態値が元の表示値と異なる値である場合に、前記第１の管理テーブルを参照して該選択された状態値に対応する信号端子を特定し、前記論理回路データ情報のうち前記特定された信号端子に対応する現時刻での状態値情報を変更する手段（２５，２６）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００８９】
（付記６）  付記１に記載の対話型論理シミュレーションシステムにおいて、
論理シミュレーションの対象となる論理回路の信号端子に対応付けられた論理回路データ情報を管理する手段（１１）と、
前記ディスプレイ画面との対話を通してユーザから与えられたコマンドを解析する手段（１４）と、
該解析結果に基づいて当該コマンドが属性変更を指示する命令である場合に、前記論理回路データ情報のうち指示された信号端子の属性情報を変更することで論理シミュレーション対象回路内の該当する素子又は回路の評価を行わないよう処理する手段（２７）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００９０】
（付記７）  付記１に記載の対話型論理シミュレーションシステムにおいて、
前記ディスプレイ画面との対話を通してユーザから与えられたコマンドを解析する手段（１４）と、
該解析結果に基づいて当該コマンドがシミュレーションを実行する命令（ＳＩＭＬ）である場合に、該命令によって指定された時刻における論理シミュレーションを実行する手段（３０，１２）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００９１】
（付記８）  付記１に記載の対話型論理シミュレーションシステムにおいて、
前記ディスプレイ画面を介してユーザと対話することで、該ディスプレイ画面に表示されるストリーム表示形式のウィンドウ内の任意のシミュレーション時刻を設定する手段（３１）と、
該設定されたシミュレーション時刻まで論理シミュレーションを実行する手段（３０，１２）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００９２】
（付記９）  付記８に記載の対話型論理シミュレーションシステムにおいて、
前記結果表示制御手段は、前記設定されたシミュレーション時刻が現在時刻よりも過去の時刻である場合に、その設定された過去の時刻での論理シミュレーション結果情報をフリーフォーマット表示形式で表示するよう処理を行うことを特徴とする対話型論理シミュレーションシステム。
【００９３】
（付記１０）  付記１に記載の対話型論理シミュレーションシステムにおいて、
ユーザが操作する入力装置（４）に備えられているファクションキーに設定されたコマンドデータを管理するファクション管理テーブル（２２）と、
前記ディスプレイ画面との対話を通してユーザから指示されたファクションキーに設定されているコマンドを前記ファクション管理テーブルから特定し、該特定したコマンドの内容に応じて、定義済みコマンドの即時実行の処理、又は前記ディスプレイ画面内の特定の表示領域への当該コマンドの表示処理を制御する手段（１５，１４）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００９４】
（付記１１）  付記１に記載の対話型論理シミュレーションシステムにおいて、
前記ディスプレイ画面との対話を通してユーザから与えられたコマンドを解析する手段（１４）と、
前記コマンドの解析結果に基づいてエラーの無かったものをログとして出力する手段（２３）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００９５】
（付記１２）  付記１に記載の対話型論理シミュレーションシステムにおいて、
論理シミュレーション対象の回路内の複数のメモリセル（ＲＡＭ）を特定する論理アドレス空間を定義したデータを管理するメモリ管理テーブル（２１）を更に具備し、
該メモリ管理テーブルを参照して、前記論理アドレス空間によって規定されるメモリ仮想空間イメージでメモリ内容を前記ディスプレイ画面に表示するよう処理を行うことを特徴とする対話型論理シミュレーションシステム。
【００９６】
（付記１３）  付記１２に記載の対話型論理シミュレーションシステムにおいて、
前記ディスプレイ画面との対話を通してユーザから与えられたコマンドを解析する手段（１４）と、
該解析結果に基づいて当該コマンドがメモリ内容表示を指示する命令である場合に、前記メモリ管理テーブルを参照して該当するメモリ内容を前記ディスプレイ画面に表示するよう処理を行う手段（２８，１３）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００９７】
（付記１４）  付記１２に記載の対話型論理シミュレーションシステムにおいて、
前記ディスプレイ画面との対話を通してユーザから与えられたコマンドを解析する手段（１４）と、
該解析結果に基づいて当該コマンドがメモリ内容設定命令（ＳＥＴＭ）である場合に、シミュレーション対象回路内のメモリセルのメモリ内容を書き換えるよう処理を行う手段（２９）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００９８】
（付記１５）  付記１２に記載の対話型論理シミュレーションシステムにおいて、
前記ディスプレイ画面を介してユーザと対話することで、前記ディスプレイ画面に表示されているメモリ内容のうちユーザの指定したメモリ内容を選択する手段（３２）と、
該選択されたメモリ内容の値が元の表示値と異なる値である場合に、前記メモリ管理テーブルを参照して該選択されたメモリ内容を書き換えるよう処理を行う手段（３２，２９）とを具備することを特徴とする対話型論理シミュレーションシステム。
【００９９】
（付記１６）  付記１２に記載の対話型論理シミュレーションシステムにおいて、
シミュレーション対象回路内の複数のメモリセルを特定するアドレスがインタリーブ等のために所定の変換規則に従って不連続に設定されている場合に、当該アドレス空間に対応したメモリ仮想空間イメージでメモリ内容を前記ディスプレイ画面に表示する際に、前記所定の変換規則に従ってデータを並び変えることで当該メモリ仮想空間上にデータを連続して表示するよう処理を行うことを特徴とする対話型論理シミュレーションシステム。
【０１００】
（付記１７）  付記１６に記載の対話型論理シミュレーションシステムにおいて、
ディスプレイ画面に表示されるメモリセル仮想空間上の任意のアドレス及びビットの値を書き換えた時に、付記１６のアドレス変換の逆変換によりシミュレーション対象回路内のメモリセルに対するアドレスを計算し、データを並び変えてメモリセルの内容を書き換えるようにしたことを特徴とする対話型論理シミュレーションシステム。
【０１０１】
【発明の効果】
以上説明したように本発明によれば、フリーフォーマット表示上に直接書き込むことによって状態値を設定したり、ストリーム表示上の時刻部分を指示することによりシミュレーション実行を行わせたり、メモリ内容表示上に直接書き込むことによってメモリ内容を書き換えたりすることができるので、ユーザは、シミュレーションに関する面倒な手順や操作を意識することなく、容易に且つ効率的にシミュレーションの実行及び解析を行うことができる。
【図面の簡単な説明】
【図１】本発明に係る対話型論理シミュレーションシステムの一実施例の構成を示すブロック図である。
【図２】図１におけるウィンドウ管理テーブル及びそれに関連した各テーブルの説明図である。
【図３】図１におけるメモリ管理テーブルの説明図である。
【図４】メモリのインタリーブの説明図である。
【図５】図１におけるファンクション管理テーブルの説明図である。
【図６】図１のシステムによる論理シミュレーション結果情報の表示処理の第１の例を示す図である。
【図７】図１のシステムによる論理シミュレーション結果情報の表示処理の第２の例を示す図である。
【図８】図１のシステムによる論理シミュレーション結果情報の表示処理の第３の例を示す図である。
【図９】図１のシステムによる論理シミュレーション結果情報の表示処理の第４の例を示す図である。
【図１０】図１のシステムによる論理シミュレーション結果情報の表示処理の第５の例を示す図である。
【図１１】図１のシステムによるメモリ仮想空間イメージの内容表示の一例を示す図である。
【図１２】メモリの内容書き換えの一例を示す図である。
【図１３】メモリの内容書き換えの他の例を示す図である。
【図１４】図１における結果表示制御手段のプログラム構成の一例を示すブロック図である。
【図１５】図１４に示すイベント処理プロセスの一例を示すフローチャートである。
【図１６】図１４に示すストリームウィンドウ表示プロセスの一例を示すフローチャートである。
【図１７】図１４に示すフリーフォーマットウィンドウ表示プロセスの一例を示すフローチャートである。
【図１８】図１４に示す時刻変更プロセスの一例を示すフローチャートである。
【図１９】図１４に示すコマンド処理プロセスの一例（その１）を示すフローチャートである。
【図２０】図１４に示すコマンド処理プロセスの一例（その２）を示すフローチャートである。
【図２１】図１４に示す状態値変更プロセスの一例を示すフローチャートである。
【図２２】図１４に示すメモリ表示プロセスの一例を示すフローチャートである。
【図２３】図１４に示すメモリ書き込みプロセスの第１の例を示すフローチャートである。
【図２４】図１４に示すメモリ書き込みプロセスの第２の例を示すフローチャートである。
【図２５】図１４に示すファンクションキー処理プロセスの一例を示すフローチャートである。
【符号の説明】
１…論理シミュレーションシステム
２…端末
３…ディスプレイ
４…入力装置（キーボード、マウス等）
１０…入出力（Ｉ／Ｏ）制御手段
１１…論理回路データ（ＬＤ）情報管理手段
１２…論理シミュレーション手段
１３…結果表示制御手段
１４…コマンド解析手段
１５…ファクションキー制御手段
１６…ウィンドウ管理テーブル
１７…信号値管理テーブル
１８…フリーフォーマットウィンドウ（ＦＷ）管理テーブル
１９…ストリームウィンドウ（ＳＷ）管理テーブル
２０…時刻管理テーブル
２１…メモリ管理テーブル
２２…ファンクション管理テーブル
２３…ログ出力手段
２４…ウィンドウ設定手段
２５…状態値選択手段
２６…信号値設定手段
２７…属性変更手段
２８…メモリ内容表示手段
２９…メモリ内容設定手段
３０…シミュレーション実行手段
３１…時刻設定手段
３２…メモリ内容選択手段
【図１】
0003729765.tif 000002
【図２】
0003729765.tif 000003
【図３】
0003729765.tif 000004
【図４】
0003729765.tif 000005
【図５】
0003729765.tif 000006
【図６】
0003729765.tif 000007
【図７】
0003729765.tif 000008
【図８】
0003729765.tif 000009
【図９】
0003729765.tif 000010
【図１０】
0003729765.tif 000011
【図１１】
0003729765.tif 000012
【図１２】
0003729765.tif 000013
【図１３】
0003729765.tif 000014
【図１４】
0003729765.tif 000015
【図１５】
0003729765.tif 000016
【図１６】
0003729765.tif 000017
【図１７】
0003729765.tif 000018
【図１８】
0003729765.tif 000019
【図１９】
0003729765.tif 000020
【図２０】
0003729765.tif 000021
【図２１】
0003729765.tif 000022
【図２２】
0003729765.tif 000023
【図２３】
0003729765.tif 000024
【図２４】
0003729765.tif 000025
【図２５】
0003729765.tif 000026