JPH02309428A - Logical simulator - Google Patents
Logical simulatorInfo
- Publication number
- JPH02309428A JPH02309428A JP1131079A JP13107989A JPH02309428A JP H02309428 A JPH02309428 A JP H02309428A JP 1131079 A JP1131079 A JP 1131079A JP 13107989 A JP13107989 A JP 13107989A JP H02309428 A JPH02309428 A JP H02309428A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- execution
- storage means
- simulation
- stored
- 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.)
- Granted
Links
- 238000004088 simulation Methods 0.000 claims abstract description 21
- 230000006870 function Effects 0.000 abstract description 13
- 238000000034 method Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 2
- 101150088456 TRN1 gene Proteins 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
Description
【発明の詳細な説明】
技術分野
本発明は論理シミュレータに関し、特に機能レベルの論
理シミュレーションを実行する論理シミュレータに関す
る。TECHNICAL FIELD The present invention relates to a logic simulator, and more particularly to a logic simulator that performs functional level logic simulation.
従来技術
従来のこの種の論理シミュレータはソフトウェアにて実
現されており、その例が5asak、I、et al、
−“A Mlxed Level Simulat
or [’or Large DigitalSyst
eIIILogic Verif’ic”ation、
”17TIr、DA Conr、ppf126〜633
(19110)、に開示されている。PRIOR ART Conventional logic simulators of this type are realized by software, and examples thereof include 5asak, I, et al.
-“A Mlxed Level Simulat
or ['or Large Digital Syst
eIIILogic Verif'ic”ation,
”17TIr, DA Conr, ppf126-633
(19110).
上述した従来の機能レベル論理シミュレータは、ソフト
ウェアにて実現されているために、シミュレーション処
理が各々の機能演算子のシーケンス処理となり、よって
実行時間がかかり、特に大規模回路のシミュレーション
には時間が膨大となってしまうという欠点がある。Since the conventional functional level logic simulators mentioned above are implemented using software, the simulation process involves sequential processing of each functional operator, which takes a long time to execute, and especially when simulating large-scale circuits, it takes an enormous amount of time. There is a drawback that it becomes .
発明の目的
本発明の目的は、機能レベルの論理シミュレーションを
ハードウェア的に実現して実行速度を大幅に向上させる
ことが可能な論理シミュレータを提供することである。OBJECTS OF THE INVENTION An object of the present invention is to provide a logic simulator that can implement functional level logic simulation in hardware and significantly improve execution speed.
発明の構成
本発明による論理シミュレータは、論理シミュレーショ
ン用の入力設定データ及びシミュレーション結果が格納
される第1の記憶手段と、機能演算子によって記述され
た被シミュレーションモデルが命令コードの形式で格納
される第2の記憶手段と、前記機能演算子を実行する実
行手段と、メモリやレジスタ等の旧状態のデータを保存
する第3の記憶手段と、これ等の各手段を制御するため
のマイクロプログラムが格納される第4の記憶手段と、
前記第2の記憶手段内の命令コードに従って前記第4の
記憶手段内のマイクロプログラムを読出して前記第1の
記憶手段内の設定データや前記第3の記憶手段内の保存
データを参照しつつ前記実行手段の実行制御をなす制御
手段とを含むことを特徴とする。Configuration of the Invention The logic simulator according to the present invention includes a first storage means in which input setting data for logic simulation and simulation results are stored, and a simulated model described by functional operators in the form of an instruction code. A second storage means, an execution means for executing the functional operator, a third storage means for saving old state data such as memory and registers, and a microprogram for controlling each of these means. a fourth storage means for storing;
The microprogram in the fourth storage means is read in accordance with the instruction code in the second storage means, and the setting data in the first storage means and the saved data in the third storage means are referred to. The method is characterized in that it includes a control means for controlling execution of the execution means.
実施例
次に、本発明の実施例について図面を参照して説明する
。Embodiments Next, embodiments of the present invention will be described with reference to the drawings.
第1図は本発明の一実施例を示す構成図である。FIG. 1 is a block diagram showing an embodiment of the present invention.
図において、10は論理シミュレーション用の入力設定
データ(パターン)及びシミュレーション結果が格納さ
れるメモリ(CM) 、20はマイクロプログラミング
の実行ルーチンが格納されたメモリ(CS) 、30は
メモリ素子やレジスタ素子の様に旧状態データ保存用の
メモリ(DM) 、40は機能演算子で記述された被シ
ミュレーションモデルが命令コードイヒされた形で格納
されたメモリ(IM)、50は機能演算子を実行する演
算回路、60はこれら全体を制御する制御回路である。In the figure, 10 is a memory (CM) in which input setting data (patterns) for logic simulation and simulation results are stored, 20 is a memory (CS) in which a microprogramming execution routine is stored, and 30 is a memory element or register element. 40 is a memory (DM) for storing old state data, 40 is a memory (IM) in which a simulated model described with a function operator is stored in the form of an instruction code, and 50 is an operation for executing the function operator. The circuit 60 is a control circuit that controls all of these.
100は各メモリや回路へのデータバス、200はアド
レスバス、300は制御信号線である。100 is a data bus to each memory and circuit, 200 is an address bus, and 300 is a control signal line.
第2図は第1図における演算回路の一構成例である。5
01は中間レジスタ(IMREG ) 、502は第2
レジスタ(SD1?BG)、503はハニドウエアスタ
ック用のポインタ(STPR) 、504はスタック(
5TACK)、505はデータバスに接続された第2レ
ジスタ(PII?EP)、506は単純な素子(AND
、OR等)の複数演算をデータフロー的に高速に実行す
る回路(FOP ) 、507は素子の人力が多数で、
出力が1つ(多大力1出力AND等)を演算する回路(
l0P)、508は通常の2つの異なる入力の演算回路
(20P)、509は複数入力から演算に必要なデータ
部分を抽出するために、左、右ヘシフトする回路(5F
T)、510はマスク回路(MSK>である。FIG. 2 shows an example of the configuration of the arithmetic circuit shown in FIG. 1. 5
01 is the intermediate register (IMREG), 502 is the second
Register (SD1?BG), 503 is a pointer for honeydware stack (STPR), 504 is a stack (
5TACK), 505 is the second register (PII?EP) connected to the data bus, and 506 is a simple element (AND
, OR, etc.) is a circuit (FOP) that executes multiple operations at high speed in terms of data flow.
A circuit that calculates one output (large-power single-output AND, etc.)
10P), 508 is a normal arithmetic circuit with two different inputs (20P), and 509 is a circuit that shifts left and right in order to extract the data part necessary for calculation from multiple inputs (5F).
T), 510 is a mask circuit (MSK>).
次に本発明の実施例の動作について説明する。Next, the operation of the embodiment of the present invention will be explained.
先ず、第3図の機能記述I・・・D−A*B+Cを例に
とって説明する。上記演算式において“*”は論理AN
D、 “十”は論理ORを表わす。この式に対する演
算は対応する命令コードに示されている様に番号■から
■という順序で行われる。これは前もってこの様な順序
でコード化されて、第4図のシミュレータ内のデータの
対応関係に示される様に、1M40内に格納されている
。First, the functional description I...D-A*B+C in FIG. 3 will be explained as an example. In the above calculation formula, "*" is a logical AN
D. “Ten” represents logical OR. Operations on this expression are performed in the order of numbers ``■'' to ``■'' as indicated by the corresponding instruction codes. This is coded in advance in this order and stored in 1M40, as shown in the correspondence of data in the simulator in FIG.
次にシミュレーション動作を第4図に示したシミュレー
ション内のデータの対応関係を参照しながら説明する。Next, the simulation operation will be explained with reference to the correspondence of data in the simulation shown in FIG.
シミュレーション実行が始まる前に、シミュレータ内の
各メモリには必要なデータが格納されているものとする
。本例では、CMloには記述Iの1M開始アドレス、
A、B、Cの値が、IM40には前記の様に命令■から
■が、CS 20にはシミュレーションに必要な実行開
始、GET、AND、OR,EXIT実行ルーチンがそ
れぞれ格納されている。It is assumed that necessary data is stored in each memory in the simulator before simulation execution begins. In this example, CMlo has the 1M starting address of description I,
The values of A, B, and C are stored in the IM 40 as described above, and the CS 20 stores the execution start, GET, AND, OR, and EXIT execution routines necessary for the simulation.
シミュレーション実行順序は次の様である。The simulation execution order is as follows.
1)実行指令が制御回路にくると、C8の実行−開始ル
ーチンが働いて、CMから記述Iの開始アドレスを取出
す。 ゛
2)次に、この開始アドレスを元にIMを読み、命令コ
ードGET Aを読出す。(第3図でC820からの
点線は制御をあられす。以下同様)3)次に、この命令
コードを実行するC8のGET実行ルーチンを読む。1) When an execution command comes to the control circuit, the execution-start routine of C8 is activated to retrieve the start address of description I from CM. 2) Next, read IM based on this start address and read out the instruction code GET A. (The dotted line from C820 in FIG. 3 indicates control. The same applies hereafter.) 3) Next, read the GET execution routine of C8 that executes this instruction code.
4)このGET実行ルーチンが動作することにより、C
Mから演算回路の5TACK 504へAの値が読込ま
れる。4) By operating this GET execution routine, C
The value of A is read from M to 5TACK 504 of the arithmetic circuit.
5)LMのアドレスは制御回路60によって次アドレス
へ移行し、(2)から(4)と同様な手続きを経て、C
MからBの値を演算回路50内の5TACK 504へ
格納する。(第3図5TACK(1’)参照)6)IM
の次の命令はANDなので、C8から、のAND実行ル
ーチンの制御に基づき、演算回路でA*Bを実行し、そ
の結果を5TACK 504へつむ。5) The LM address is moved to the next address by the control circuit 60, and through the same procedures as (2) to (4), the C
The values from M to B are stored in the 5TACK 504 in the arithmetic circuit 50. (See Figure 3 5TACK (1')) 6) IM
Since the next instruction is an AND, the arithmetic circuit executes A*B from C8 under the control of the AND execution routine, and the result is sent to 5TACK 504.
7)IMの次の命令はGET Cなので(2)から(
4)と同様な手続きでCMからCの値を5TACK 5
04へつむ。(第3図5TACK(2)参照)8)IM
(7)次の命令はORなノテ、C3(7)OR実行ルー
チンの制御に基づき、演算回路でA*B十〇が実行され
、5TACKへつまれる。7) The next command after IM is GET C, so from (2) (
5TACK the value of C from CM using the same procedure as in 4).
Moving on to 04. (See Figure 3, 5TACK (2)) 8) IM
(7) The next instruction is an OR note, C3. (7) Based on the control of the OR execution routine, A*B10 is executed in the arithmetic circuit, and the process goes to 5TACK.
9)IMの次の命令はEXITで、結果の出力(格納)
命令なので実行結果A*B+CをCMの出力値エリアに
格納す′る。9) The next command of IM is EXIT, which outputs (stores) the result.
Since it is an instruction, the execution result A*B+C is stored in the output value area of CM.
演算回路でA*B+Cが実行される過程は、タイムチャ
ートの形で第5図に示されている。以上で機能記述Iに
対する一連の動作は終了し、次の記述の実行を待つ態勢
となる。The process of executing A*B+C in the arithmetic circuit is shown in FIG. 5 in the form of a time chart. This completes the series of operations for function description I, and it is ready to wait for the next description to be executed.
次に、旧状態保存様のメモリDMを使用する例について
説明する。第6図はメモリ読出しの機能記述例と、対応
する命令コードを示しており、第7図はそのときのシミ
ュレータ内のデータの対応関係を示している。Next, an example of using a memory DM that preserves the old state will be described. FIG. 6 shows an example of a memory read function description and the corresponding instruction code, and FIG. 7 shows the correspondence of data in the simulator at that time.
機能記述■はREの値を調べ、RE−“1”ならADH
で示されるアドレスから1ワード16ビツトを読出す命
令である。メモリMは1024ワード×16ビツトであ
り、読出された値はメモリMの出力となる。Function description ■ checks the value of RE, and if RE-“1”, ADH
This is an instruction to read 1 word and 16 bits from the address indicated by . Memory M has 1024 words x 16 bits, and the read value becomes the output of memory M.
CMには機能記述Hの開始アドレス(Adr)とメモリ
MのDM内の゛開始アドレスとが前もって設定されてい
る。The start address (Adr) of the functional description H and the start address in the DM of the memory M are set in advance in the CM.
実行は次の様に行われる。Execution is performed as follows.
1)REの値がCMから読出され制御回路60のレジス
タに設定される。1) The value of RE is read from CM and set in the register of control circuit 60.
2)次に、TRN1が読出され、REの値をチェックし
てIMの次のアドレスに飛ぶか、終了するかをチェック
する。REが“1“なら次の1M内の命令GET A
DRを、そうでない時は出力EXITへ飛ぶ。2) Next, TRN1 is read and the value of RE is checked to check whether to jump to the next address of IM or end. If RE is “1”, get the next instruction within 1M A
DR, otherwise jump to output EXIT.
3)上記でREが“1“とすると、GETルーチンが実
行され、CMのADHの値が制御回路60内のレジスタ
に設定される。3) When RE is set to "1" in the above, the GET routine is executed and the value of ADH of CM is set in the register in the control circuit 60.
4)次にRAT命令が読出され、メモリの開始アドレス
で示される番地からADR番目の箇所のワード(第3図
で斜線部)の内容が読出され制御回路60゛内のレジス
タに設定される。4) Next, the RAT command is read, and the contents of the word at the ADR-th location (the shaded area in FIG. 3) from the address indicated by the start address of the memory are read and set in the register in the control circuit 60'.
5)次にIMのEXIT命令が実行されて、制御回路6
0のレジスタ内の該当ADRのメモリ値がCMへ転送さ
れる。REが“1”でない時は実行前の状態がそのまま
返される。5) Next, the IM EXIT command is executed and the control circuit 6
The memory value of the corresponding ADR in the register 0 is transferred to the CM. When RE is not "1", the state before execution is returned as is.
以上で機能記述Hの一連の手続きが終了する。This completes the series of procedures for function description H.
発明の詳細
な説明した様に本発明によれば、入力設定データ及び実
行結果が格納される記憶手段と、シミュレーションモデ
ルが格納される記憶手段と、機能演実行手段と、マイク
ロルーチン格納手段と、旧状態のデータ保存様記憶手段
とを組合わせることにより、機能レベルの論理シミュレ
ーションをハードウェアで実現し、シミュレーション実
行速度を高速化できるという効果がある。DETAILED DESCRIPTION OF THE INVENTION According to the present invention, as described in detail, the present invention includes a storage means for storing input setting data and execution results, a storage means for storing a simulation model, a function execution means, a microroutine storage means, By combining this method with a storage means for storing data in the old state, functional level logic simulation can be realized in hardware, and the simulation execution speed can be increased.
第1図は本発明の実施例のブロック図、第2図は演算回
路の一例を示すブロック図、第3図は機能記述の例とそ
れに対応した命令コードを示す図、第4図は第3図の機
能記述の実行時におけるシミュレータ内のデータの対応
関係を示す図、第5図は第3図の機能記述の実行過程を
示すタイムチャート、第6図は機能記述の他の例とそれ
に対応し −た命令コードを示す図、第7図は第6図の
機能記述の実行時におけるシミュレータ内のデータの対
応関係を示す図である。
主要部分の符号の説明
10・・・・・・入力データ設定用メモリ20・・・・
・・マイクロルーチン用メモリ30・・・・・・データ
保存用メモリ
40・・・・・・被シミュレーションモデル命令コード
用メモリFIG. 1 is a block diagram of an embodiment of the present invention, FIG. 2 is a block diagram showing an example of an arithmetic circuit, FIG. 3 is a diagram showing an example of a functional description and the corresponding instruction code, and FIG. Figure 5 is a time chart showing the execution process of the function description in Figure 3. Figure 6 is another example of the function description and its correspondence. FIG. 7 is a diagram showing the correspondence of data in the simulator when the functional description of FIG. 6 is executed. Explanation of symbols of main parts 10... Memory for input data setting 20...
...Memory for microroutine 30 ...Memory for data storage 40 ...Memory for simulated model instruction code
Claims (1)
ミュレーション結果が格納される第1の記憶手段と、機
能演算子によって記述された被シミュレーションモデル
が命令コードの形式で格納される第2の記憶手段と、前
記機能演算子を実行する実行手段と、メモリやレジスタ
等の旧状態のデータを保存する第3の記憶手段と、これ
等の各手段を制御するためのマイクロプログラムが格納
される第4の記憶手段と、前記第2の記憶手段内の命令
コードに従って前記第4の記憶手段内のマイクロプログ
ラムを読出して前記第1の記憶手段内の設定データや前
記第3の記憶手段内の保存データを参照しつつ前記実行
手段の実行制御をなす制御手段とを含むことを特徴とす
る論理シミュレータ。(1) a first storage means in which input setting data for logic simulation and simulation results are stored; a second storage means in which a simulated model described by functional operators is stored in the form of an instruction code; Execution means for executing the functional operator; third storage means for storing old state data such as memory and registers; and fourth storage for storing microprograms for controlling each of these means. reading the microprogram in the fourth storage means according to the instruction code in the second storage means and referring to the setting data in the first storage means and the saved data in the third storage means. and control means for controlling the execution of the execution means.
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1131079A JP2581214B2 (en) | 1989-05-24 | 1989-05-24 | Logic simulator |
| 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 (en) | 1989-05-24 | 1989-05-24 | Logic simulator |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02309428A true JPH02309428A (en) | 1990-12-25 |
| JP2581214B2 JP2581214B2 (en) | 1997-02-12 |
Family
ID=15049498
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1131079A Expired - Fee Related JP2581214B2 (en) | 1989-02-28 | 1989-05-24 | Logic simulator |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2581214B2 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62219137A (en) * | 1986-03-20 | 1987-09-26 | Fujitsu Ltd | Processing system for logical simulator |
| JPS63201839A (en) * | 1987-02-18 | 1988-08-19 | Hitachi Ltd | Logical simulation device |
-
1989
- 1989-05-24 JP JP1131079A patent/JP2581214B2/en not_active Expired - Fee Related
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62219137A (en) * | 1986-03-20 | 1987-09-26 | Fujitsu Ltd | Processing system for logical simulator |
| JPS63201839A (en) * | 1987-02-18 | 1988-08-19 | Hitachi Ltd | Logical simulation device |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2581214B2 (en) | 1997-02-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0533423B2 (en) | ||
| US3698007A (en) | Central processor unit having simulative interpretation capability | |
| JP2861962B2 (en) | Computer program simulation apparatus and method | |
| JPH02309428A (en) | Logical simulator | |
| Parasch et al. | Development and application of a designer oriented cyclic simulator | |
| JP2828590B2 (en) | Microprogram verification method | |
| JP2924080B2 (en) | Logic simulation support system | |
| JPS6334644A (en) | Simulator with functional level | |
| JPS6143347A (en) | Simulation method of vector instruction | |
| SU1182566A2 (en) | Device for controlling system for training operators of control systems | |
| JPH02227743A (en) | Logical simulator | |
| JP2632964B2 (en) | Test processing method of coaching device | |
| JPS60114909A (en) | logical operation device | |
| JPS61239345A (en) | I/o simulator | |
| JPH04333171A (en) | Device for simulation | |
| JPH05233748A (en) | Simulation method | |
| JPH0334071A (en) | Logic simulator | |
| Morris | A Simple Computer—MU0 | |
| JPH03266142A (en) | Software simulator | |
| JPH0769391B2 (en) | Logic circuit simulation device | |
| JPS6091455A (en) | Simulation system of logical circuit | |
| JPH05266124A (en) | Method for preparing circuit element library for logic circuit simulation | |
| JPH03245270A (en) | Logical simulation environment setting method | |
| Dagless et al. | A keyboard-oriented microprogram emulator and tester | |
| JPH02127734A (en) | Logical simulation system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |