JP2581214B2 - 論理シミュレータ - Google Patents
論理シミュレータInfo
- Publication number
- JP2581214B2 JP2581214B2 JP1131079A JP13107989A JP2581214B2 JP 2581214 B2 JP2581214 B2 JP 2581214B2 JP 1131079 A JP1131079 A JP 1131079A JP 13107989 A JP13107989 A JP 13107989A JP 2581214 B2 JP2581214 B2 JP 2581214B2
- Authority
- JP
- Japan
- Prior art keywords
- execution
- data
- memory
- storing
- simulation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Description
【発明の詳細な説明】 技術分野 本発明は論理シミュレータに関し、特に機能レベルの
論理シミュレーションを実行する論理シミュレータに関
する。
論理シミュレーションを実行する論理シミュレータに関
する。
従来技術 従来のこの種の論理シミュレータはソフトウェアにて
実現されており、その例がSasaki,et al,“A Mixed Lev
el Simulator for Large Digital System Logic Verifi
cation."17TH.DA Conf.pp626〜633(1980).に開示さ
れている。
実現されており、その例がSasaki,et al,“A Mixed Lev
el Simulator for Large Digital System Logic Verifi
cation."17TH.DA Conf.pp626〜633(1980).に開示さ
れている。
上述した従来の機能レベル論理シミュレータは、ソフ
トウェアにて実現されているために、シミュレーション
処理が各々の機能演算子のシーケンス処理となり、よっ
て実行時間がかかり、特に大規模回路のシミュレーショ
ンには時間が膨大となってしまうという欠点がある。
トウェアにて実現されているために、シミュレーション
処理が各々の機能演算子のシーケンス処理となり、よっ
て実行時間がかかり、特に大規模回路のシミュレーショ
ンには時間が膨大となってしまうという欠点がある。
発明の目的 本発明の目的は、機能レベルの論理シミュレーション
をハードウェア的に実現して実行速度を大幅に向上させ
ることが可能な論理シミュレータを提供することであ
る。
をハードウェア的に実現して実行速度を大幅に向上させ
ることが可能な論理シミュレータを提供することであ
る。
発明の構成 本発明による論理シミュレータは、論理シミュレーシ
ョン用の入力設定データ及びシミュレーション結果が格
納される第1の記憶手段と、機能演算子によって記述さ
れた被シミュレーションモデルが命令コードの形式で格
納される第2の記憶手段と、前記機能演算子を実行する
実行手段と、メモリやレジスタ等の旧状態のデータを保
存する第3の記憶手段と、これ等の各手段を制御するた
めのマイクロプログラムが格納される第4の記憶手段
と、前記第2の記憶手段内の命令コードに従って前記第
4の記憶手段内のマイクロプログラムを読出して前記第
1の記憶手段内の設定データや前記第3の記憶手段内の
保存データを参照しつつ前記実行手段の実行制御をなす
制御手段とを含むことを特徴とする。
ョン用の入力設定データ及びシミュレーション結果が格
納される第1の記憶手段と、機能演算子によって記述さ
れた被シミュレーションモデルが命令コードの形式で格
納される第2の記憶手段と、前記機能演算子を実行する
実行手段と、メモリやレジスタ等の旧状態のデータを保
存する第3の記憶手段と、これ等の各手段を制御するた
めのマイクロプログラムが格納される第4の記憶手段
と、前記第2の記憶手段内の命令コードに従って前記第
4の記憶手段内のマイクロプログラムを読出して前記第
1の記憶手段内の設定データや前記第3の記憶手段内の
保存データを参照しつつ前記実行手段の実行制御をなす
制御手段とを含むことを特徴とする。
実施例 次に、本発明の実施例について図面を参照して説明す
る。
る。
第1図は本発明の一実施例を示す構成図である。図に
おいて、10は論理シミュレーション用の入力設定データ
(パターン)及びシミュレーション結果が格納されるメ
モリ(CM)、20はマイクロプログラミングの実行ルーチ
ンが格納されたメモリ(CS)、30はメモリ素子やレジス
タ素子の様に旧状態データ保存用のメモリ(DM)、40は
機能演算子で記述された被シミュレーションモデルが命
令コード化された形で格納されたメモリ(IM)、50は機
能演算子を実行する演算回路、60はこれら全体を制御す
る制御回路である。
おいて、10は論理シミュレーション用の入力設定データ
(パターン)及びシミュレーション結果が格納されるメ
モリ(CM)、20はマイクロプログラミングの実行ルーチ
ンが格納されたメモリ(CS)、30はメモリ素子やレジス
タ素子の様に旧状態データ保存用のメモリ(DM)、40は
機能演算子で記述された被シミュレーションモデルが命
令コード化された形で格納されたメモリ(IM)、50は機
能演算子を実行する演算回路、60はこれら全体を制御す
る制御回路である。
100は各メモリや回路へのデータバス、200はアドレス
バス、300は制御信号線である。
バス、300は制御信号線である。
第2図は第1図における演算回路の一構成例である。
501は中間レジスタ(IMREG)、502は第2レジスタ(SDR
EG)、503はハードウェアスタック用のポインタ(STP
R)、504はスタック(STACK)、505はデータバスに接続
された第1レジスタ(FIREF)、506は単純な素子(AND,
OR等)の複数演算をデータフロー的に高速に実行する回
路(FOP)、507は素子の入力が多数で、出力が1つ(多
入力1出力AND等)を演算する回路(10P)、508は通常
の2つの異なる入力の演算回路(20P)、509は複数入力
から演算に必要なデータ部分を抽出するために、左、右
へシフトする回路(SFT)、510はマスク回路(MSK)で
ある。
501は中間レジスタ(IMREG)、502は第2レジスタ(SDR
EG)、503はハードウェアスタック用のポインタ(STP
R)、504はスタック(STACK)、505はデータバスに接続
された第1レジスタ(FIREF)、506は単純な素子(AND,
OR等)の複数演算をデータフロー的に高速に実行する回
路(FOP)、507は素子の入力が多数で、出力が1つ(多
入力1出力AND等)を演算する回路(10P)、508は通常
の2つの異なる入力の演算回路(20P)、509は複数入力
から演算に必要なデータ部分を抽出するために、左、右
へシフトする回路(SFT)、510はマスク回路(MSK)で
ある。
次に本発明の実施例の動作について説明する。先ず、
第3図の機能記述がI…D=A*B+Cを例にとって説
明する。上記演算式において“*”は論理AND、“+”
は論理ORを表わす。この式に対する演算は対応する命令
コードに示されている様に番号からという順序で行
われる。これは前もってこの様な順序でコード化され
て、第4図のシミュレータ内のデータの対応関係に示さ
れる様に、IM40内に格納されている。
第3図の機能記述がI…D=A*B+Cを例にとって説
明する。上記演算式において“*”は論理AND、“+”
は論理ORを表わす。この式に対する演算は対応する命令
コードに示されている様に番号からという順序で行
われる。これは前もってこの様な順序でコード化され
て、第4図のシミュレータ内のデータの対応関係に示さ
れる様に、IM40内に格納されている。
次にシミュレーション動作を第4図に示したシミュレ
ーション内のデータの対応関係を参照しながら説明す
る。シミュレーション実行が始まる前に、シミュレータ
内の各メモリには必要なデータが格納されているものと
する。本例では、CM10には記述IのIM開始アドレス、A,
B,Cの値が、IM40には前記の様に命令からが、CS20
にはシミュレーションに必要な実行開始、GET,AND,OR,E
XIT実行ルーチンがそれぞれ格納されている。
ーション内のデータの対応関係を参照しながら説明す
る。シミュレーション実行が始まる前に、シミュレータ
内の各メモリには必要なデータが格納されているものと
する。本例では、CM10には記述IのIM開始アドレス、A,
B,Cの値が、IM40には前記の様に命令からが、CS20
にはシミュレーションに必要な実行開始、GET,AND,OR,E
XIT実行ルーチンがそれぞれ格納されている。
シミュレーション実行順序は次の様である。
1)実行指令が制御回路にくると、CSの実行開始ルーチ
ンが働いて、CMから記述Iの開始アドレスを取出す。
ンが働いて、CMから記述Iの開始アドレスを取出す。
2)次に、この開始アドレスを元にIMを読み、命令コー
ドGET Aを読出す。(第3図でCS20からの点線は制御を
あらわす。以下同様) 3)次に、この命令コードを実行するCSのGET実行ルー
チンを読む。
ドGET Aを読出す。(第3図でCS20からの点線は制御を
あらわす。以下同様) 3)次に、この命令コードを実行するCSのGET実行ルー
チンを読む。
4)このGET実行ルーチンが動作することにより、CMか
ら演算回路のSTACK 504へAの値が読込まれる。
ら演算回路のSTACK 504へAの値が読込まれる。
5)IMのアドレスは制御回路60によって次アドレスへ移
行し、(2)から(4)と同様な手続きを経て、CMから
Bの値を演算回路50内のSTACK 504へ格納する。(第3
図STACK(1)参照) 6)IMの次の命令はANDなので、CSからのAND実行ルーチ
ンの制御に基づき、演算回路でA*Bを実行し、その結
果をSTACK 504へつむ。
行し、(2)から(4)と同様な手続きを経て、CMから
Bの値を演算回路50内のSTACK 504へ格納する。(第3
図STACK(1)参照) 6)IMの次の命令はANDなので、CSからのAND実行ルーチ
ンの制御に基づき、演算回路でA*Bを実行し、その結
果をSTACK 504へつむ。
7)IMの次の命令はGET Cなので(2)から(4)と同
様な手続きでCMからCの値をSTACK 504へつむ。(第3
図STACK(2)参照) 8)IMの次の命令はORなので、CSのOR実行ルーチンの制
御に基づき、演算回路でA*B+Cが実行され、STACK
へつまれる。
様な手続きでCMからCの値をSTACK 504へつむ。(第3
図STACK(2)参照) 8)IMの次の命令はORなので、CSのOR実行ルーチンの制
御に基づき、演算回路でA*B+Cが実行され、STACK
へつまれる。
9)IMの次の命令はEXITで、結果の出力(格納)命令な
ので実行結果A*B+CをCMの出力値エリアに格納す
る。
ので実行結果A*B+CをCMの出力値エリアに格納す
る。
演算回路でA*B+Cが実行される過程は、タイムチ
ャートの形で第5図に示されている。以上で機能記述I
に対する一連の動作は終了し、次の記述の実行を待つ態
勢となる。
ャートの形で第5図に示されている。以上で機能記述I
に対する一連の動作は終了し、次の記述の実行を待つ態
勢となる。
次に、旧状態保存用のメモリDMを使用する例について
説明する。第6図はメモリ読出しの機能記述例と、対応
する命令コードを示しており、第7図はそのときのシミ
ュレータ内のデータの対応関係を示している。
説明する。第6図はメモリ読出しの機能記述例と、対応
する命令コードを示しており、第7図はそのときのシミ
ュレータ内のデータの対応関係を示している。
機能記述IIはREの値を調べ、RE=“1"ならADRで示さ
れるアドレスから1ワード16ビットを読出す命令であ
る。メモリMは1024ワード×16ビットであり、読出され
た値はメモリMの出力となる。
れるアドレスから1ワード16ビットを読出す命令であ
る。メモリMは1024ワード×16ビットであり、読出され
た値はメモリMの出力となる。
CMには機能記述IIの開始アドレス(Adr)とメモリM
のDM内の開始アドレスとが前もって設定されている。
のDM内の開始アドレスとが前もって設定されている。
実行は次の様に行われる。
1)REの値がCMから読出され制御回路60のレジスタに設
定される。
定される。
2)次に、TRN1が読出され、REの値をチェックしてIMの
次のアドレスに飛ぶか、終了するかをチェックする。RE
が“1"なら次のIM内の命令GET ADRを、そうでない時は
出力EXITへ飛ぶ。
次のアドレスに飛ぶか、終了するかをチェックする。RE
が“1"なら次のIM内の命令GET ADRを、そうでない時は
出力EXITへ飛ぶ。
3)上記でREが“1"とすると、GETルーチンが実行さ
れ、CMのADRの値が制御回路60内のレジスタに設定され
る。
れ、CMのADRの値が制御回路60内のレジスタに設定され
る。
4)次にRAT命令が読出され、メモリの開始アドレスで
示される番地からADR番目の箇所のワード(第3図で斜
線部)の内容が読出され制御回路60内のレジスタに設定
される。
示される番地からADR番目の箇所のワード(第3図で斜
線部)の内容が読出され制御回路60内のレジスタに設定
される。
5)次にIMのEXIT命令が実行されて、制御回路60のレジ
スタ内の該当ADRのメモリ値がCMへ転送される。REが
“1"でない時は実行前の状態がそのまま返される。
スタ内の該当ADRのメモリ値がCMへ転送される。REが
“1"でない時は実行前の状態がそのまま返される。
以上で機能記述IIの一連の手続きが終了する。
発明の効果 以上説明した様に本発明によれば、入力設定データ及
び実行結果が格納される記憶手段と、シミュレーション
モデルが格納される記憶手段と、機能演実行手段と、マ
イクロルーチン格納手段と、旧状態のデータ保存様記憶
手段とを組合わせることにより、機能レベルの論理シミ
ュレーションをハードウェアで実現し、シミュレーショ
ン実行速度を高速化できるという効果がある。
び実行結果が格納される記憶手段と、シミュレーション
モデルが格納される記憶手段と、機能演実行手段と、マ
イクロルーチン格納手段と、旧状態のデータ保存様記憶
手段とを組合わせることにより、機能レベルの論理シミ
ュレーションをハードウェアで実現し、シミュレーショ
ン実行速度を高速化できるという効果がある。
第1図は本発明の実施例のブロック図、第2図は演算回
路の一例を示すブロック図、第3図は機能記述の例とそ
れに対応した命令コードを示す図、第4図は第3図の機
能記述の実行時におけるシミュレータ内のデータの対応
関係を示す図、第5図は第3図の機能記述の実行過程を
示すタイムチャート、第6図は機能記述の他の例とそれ
に対応した命令コードを示す図、第7図は第6図の機能
記述の実行時におけるシミュレータ内のデータの対応関
係を示す図である。 主要部分の符号の説明 10……入力データ設定用メモリ 20……マイクロルーチン用メモリ 30……データ保存用メモリ 40……被シミュレーションモデル命令コード用メモリ 50……演算回路、60……制御回路
路の一例を示すブロック図、第3図は機能記述の例とそ
れに対応した命令コードを示す図、第4図は第3図の機
能記述の実行時におけるシミュレータ内のデータの対応
関係を示す図、第5図は第3図の機能記述の実行過程を
示すタイムチャート、第6図は機能記述の他の例とそれ
に対応した命令コードを示す図、第7図は第6図の機能
記述の実行時におけるシミュレータ内のデータの対応関
係を示す図である。 主要部分の符号の説明 10……入力データ設定用メモリ 20……マイクロルーチン用メモリ 30……データ保存用メモリ 40……被シミュレーションモデル命令コード用メモリ 50……演算回路、60……制御回路
Claims (1)
- 【請求項1】論理シミュレーション用の入力設定データ
及びシミュレーション結果が格納される第1の記憶手段
と、機能演算子によって記述された被シミュレーション
モデルが命令コードの形式で格納される第2の記憶手段
と、前記機能演算子を実行する実行手段と、メモリやレ
ジスタ等の旧状態のデータを保存する第3の記憶手段
と、これ等の各手段を制御するためのマイクロプログラ
ムが格納される第4の記憶手段と、前記第2の記憶手段
内の命令コードに従って前記第4の記憶手段内のマイク
ロプログラムを読出して前記第1の記憶手段内の設定デ
ータや前記第3の記憶手段内の保存データを参照しつつ
前記実行手段の実行制御をなす制御手段とを含むことを
特徴とする論理シミュレータ。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1131079A JP2581214B2 (ja) | 1989-05-24 | 1989-05-24 | 論理シミュレータ |
US08/074,725 US5572708A (en) | 1989-02-28 | 1993-06-10 | Hardware simulator capable of dealing with a description of a functional level |
US08/432,260 US5689683A (en) | 1989-02-28 | 1995-05-01 | Hardware simulator capable of dealing with a description of a functional level |
US08/432,270 US6157904A (en) | 1989-02-28 | 1995-05-01 | Hardware simulator capable of dealing with a description of a functional level |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1131079A JP2581214B2 (ja) | 1989-05-24 | 1989-05-24 | 論理シミュレータ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02309428A JPH02309428A (ja) | 1990-12-25 |
JP2581214B2 true JP2581214B2 (ja) | 1997-02-12 |
Family
ID=15049498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1131079A Expired - Fee Related JP2581214B2 (ja) | 1989-02-28 | 1989-05-24 | 論理シミュレータ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2581214B2 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62219137A (ja) * | 1986-03-20 | 1987-09-26 | Fujitsu Ltd | 論理シミユレ−シヨン装置の処理方式 |
JPS63201839A (ja) * | 1987-02-18 | 1988-08-19 | Hitachi Ltd | 論理シミユレ−シヨン装置 |
-
1989
- 1989-05-24 JP JP1131079A patent/JP2581214B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH02309428A (ja) | 1990-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4787061A (en) | Dual delay mode pipelined logic simulator | |
US3659272A (en) | Digital computer with a program-trace facility | |
JPS60164848A (ja) | モデリング動作の方法 | |
JPH08320808A (ja) | エミュレーション方式 | |
US4525776A (en) | Arithmetic logic unit arranged for manipulating bits | |
JP2581214B2 (ja) | 論理シミュレータ | |
JP3212709B2 (ja) | ロジックシミュレーション装置 | |
US3290655A (en) | Program control for data processing machine | |
US3238508A (en) | Logical manipulator | |
JPS6049937B2 (ja) | マイクロプログラム制御のデ−タ処理装置 | |
JP2731047B2 (ja) | プログラムのオペランドチェック方式 | |
JP2824853B2 (ja) | パターンデータ書込み方式 | |
CN115374027A (zh) | 利用c程序指针及函数参数实现单片机任意io口线操作的方法 | |
JPS6042968B2 (ja) | 情報処理装置 | |
JPS6253857B2 (ja) | ||
JPS6015969B2 (ja) | マイクロ命令アドレス生成方式 | |
SU1524055A1 (ru) | Устройство дл контрол программ | |
JPS61290546A (ja) | マイクロプログラム制御装置のトレ−ス方式 | |
JPH0831054B2 (ja) | 履歴情報格納方式 | |
JPH0683986A (ja) | シングルチップ・マイクロコンピュータ | |
JPS6113612B2 (ja) | ||
JPH0792769B2 (ja) | 論理シミュレータ | |
JPH05233379A (ja) | 実行履歴記憶装置 | |
Pittman | Microcomputer design | |
JPS60247708A (ja) | プログラマブル・コントロ−ラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |