JPS633344B2 - - Google Patents

Info

Publication number
JPS633344B2
JPS633344B2 JP8021083A JP8021083A JPS633344B2 JP S633344 B2 JPS633344 B2 JP S633344B2 JP 8021083 A JP8021083 A JP 8021083A JP 8021083 A JP8021083 A JP 8021083A JP S633344 B2 JPS633344 B2 JP S633344B2
Authority
JP
Japan
Prior art keywords
output
memory
value
processor
input
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
Application number
JP8021083A
Other languages
English (en)
Other versions
JPS58222355A (ja
Inventor
Kurisutofua Gurafu Mashuu
Buryuusutaa Hichikotsuku Shinia Robaato
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS58222355A publication Critical patent/JPS58222355A/ja
Publication of JPS633344B2 publication Critical patent/JPS633344B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

Description

【発明の詳細な説明】
〔技術分野〕 本発明は論理をゲート・レベルでシミユレート
する専用の論理シミユレーシヨン機械に係る。 〔発明の背景〕 論理設計の分野では、超LSIの発達によつて価
格性能比や信頼性が向上しているが、それに伴つ
て、故障診断が難しくなるという問題が生じてき
ている。故障診断が難しければ設計ミスをなくす
ほかはなく、この点で論理設計の検証
(verification)が注目されだした。 検証手段としてはシミユレーシヨンが有効であ
るが、それには幾つかの欠点がある。例えば、従
来のシミユレーシヨン技術では誤りが存在してい
るということだけしか示せず(誤りがないという
ことを積極的に確かめられない)、計算機を使用
してもかなりの時間がかかる。しかし、シミユレ
ーシヨンのコストが飛躍的に減少し且つ計算機の
速度及び記憶容量が1桁以上増大すれば、様相は
一変する。プロセツサ全体のシミユレーシヨンが
可能なため、内容のあるソフトウエア・テストの
実行によつて、より厳正な検証を行うことができ
る。標準プロセツサ設計に組込まれている論理の
テストも可能である。故障をシミユレートすれ
ば、種種のテスト或いは検証をより経済的に行え
る。 〔従来技術〕 本発明は、米国特許第4306286号明細書に記載
されている論理シミユレーシヨン機械(以下
「LSM」と略称)の改良に係るものであるから、
ここで該米国特許のLSMについて少し詳しく説
明しておく。なお、この〔従来技術〕の項におい
ては、特にことわらない限り、単に「LSM」と
いえば前記米国特許のLSMを意味するものとす
る。 このLSMは多種の論理をゲート・レベルでシ
ミユレートする専用の計算機であつて、複数の並
列プロセツサと1台の制御プロセツサとで構成さ
れる。LSMのシミユレーシヨン速度は、これま
でのソフトウエアによる論理シミユレータに比べ
て格段に速い。前記米国特許明細書に記載されて
いる実施例は1ゲート分の遅延をシミユレートす
る31台のプロセツサを含んでいる。 LSMは汎用計算機ではないから、コンパイル
や入出力制御などを行う計算機に接続される周辺
装置として使用されねばならない。LSMを使用
するシステムは、当該LSMの他にホスト計算機
(例えばIBMシステム/370)及びローカル計算
機(例えばIBMシリーズ/1モデル5)を含む。
ローカル計算機はLSMとホスト計算機の間のイ
ンターフエースとして働く。これら2台の計算機
の制御のもとに、LSMにデータ及び命令がロー
ドされ、LSMの結果が分析される。 ホスト計算機の機能には、ユーザー・インター
フエース制御、指令解析、EXEC命令の実行、結
果の表示、LSMコード及び入力テスト・シーケ
ンスのコンパイル、フアイルの記憶及び管理、ロ
ーカル計算機との通信などが含まれ、ローカル計
算機の機能には、LSMの制御、ホスト計算機と
の通信、大容量記憶アレイ(制御記憶装置、主記
憶装置など)のシミユレーシヨン、入力テスト・
シーケンスの印加、テスト結果の補獲、故障シミ
ユレーシヨン・モードにおける論理故障の挿入/
除去などが含まれる。 LSMとホスト計算機の間で転送される情報が
ローカル計算機によつて解釈されることはない。
ホスト計算機は、LSMが直接使用し得る形の情
報をコンパイルによつて作成する。この情報は途
中で変更されることなくローカル計算機を通つて
LSMへ送られる。 ホスト計算機及びローカル計算機は、プログラ
ムによつて制御される普通の汎用計算機であつ
て、それらの役割を1台の計算機で果すことも可
能である。LSMへのデータ及び命令のロード、
並びにLSMからの結果の分析は手操作でも行え
る。 LSMの概略を第1図に示す。図示のLSMは31
台の基本プロセツサ1〜31(2〜30は省略)
を含んでいるが、その台数は31でなくてもよい。
基本プロセツサ1〜31はプロセツサ間スイツチ
33を介して32番目のプロセツサである制御プロ
セツサ32に接続される。LSMの計算機構であ
つて、論理設計の個々のゲートをシミユレートす
る基本プロセツサ1〜31は並列にランするの
で、その数を増やしてもシミユレーシヨン速度が
落ちることはない。 LSMの全体的な制御及び入出力機構は制御プ
ロセツサ32によつて与えられる。制御プロセツ
サ32は、ローカル計算機(図示せず)からの入
出力指令に応答して、基本プロセツサの起動及び
停止、命令及びデータのロード、ローカル計算機
と基本プロセツサとの間のデータ転送などを実行
し、またシミユレーシヨン中に生じた事象に応答
してローカル計算機に割込みをかける。割込みの
原因となる事象には、シミユレーシヨン終了、ロ
ーカル計算機内部でのアレイ・シミユレーシヨン
の要求、及びユーザー定義区切り点の生起が含ま
れる。 LSMには1個のプロセツサ間スイツチ33が
存在する。それは基本プロセツサ1〜31の相互
間及びそれらと制御プロセツサ32との間の通信
段となる。その主たる目的は、シミユレートされ
た論理信号を、それを発生した基本プロセツサか
らそれを使用する基本プロセツサへ伝えることで
ある。 次に、基本プロセツサ1〜31、プロセツサ間
スイツチ33、制御プロセツサ32について個々
に説明する。 基本プロセツサ1〜31の各々はLSMの計算
部門であつて、論理に含まれる個々のゲートをシ
ミユレートする。シミユレーシヨン結果は基本プ
ロセツサ相互間で伝達される。 基本プロセツサが取扱う各データは3種類の論
理信号値、即ち、「論理0」、「論理1」、「未定義」
を有する。「未定義」は信号が論理0であつても
論理1であつてもよいことを意味する。3つの値
は、次のようにデータ当り2ビツトを使用してコ
ード化される。 ビツト0 ビツト1 値 0 0 論理0 1 0 論理1 0 1 未定義 1 1 未定義 「未定義」を表わすビツトの組合わせは最初に
基本プロセツサへロードされてよく、また基本プ
ロセツサがそのいずれかをシミユレーシヨン結果
として発生することもある。 上表から明らかなように、ビツトが“1”であ
れば未定義になるから、ビツトは未定義ビツトと
呼ばれる。また、ビツト0は論理0と論理1とを
区別するから、論理値ビツトと呼ばれる。 “00”を論理0として使用し、“10”を論理1
として使用することは約束に過ぎず、その逆であ
つてもよい。しかし、“01”及び“11”によつて
未定義値を表わすのは単なる約束ではなく、基本
プロセツサのハードウエアがそのように構成され
ている。 第1図に示されるように、各々の基本プロセツ
サ(例えばプロセツサ1)は複数の内部メモリ及
びそれらを接続する論理ユニツト34を有する。
これらメモリのうちの現信号値メモリ35及び次
信号値メモリ36は同一のメモリである。 メモリ35及び36はいずれも1024の記憶位置
を含み、その各々に1つの信号を保持する。 現信号値メモリ35にあるデータは、シミユレ
ーシヨンで現に存在している論理信号値である。
論理ユニツト34はこれらの値を更新し、その結
果を次信号値メモリ36におく。 すべての信号値を更新するプロセスは大サイク
ルと呼ばれる。シミユレーシヨンは大サイクル単
位で進行する。大サイクルの各々は単一ゲート遅
延に対応する。LSMは各大サイクルの終りに停
止することがあるが、もし停止しなければ、前の
次信号値メモリが今度は現信号値メモリとして指
定され、次の大サイクルが実行される。即ち、メ
モリ35及び36は大サイクル毎に交互に現信号
値メモリ及び次信号値メモリとして使用される。 基本プロセツサは内部メモリとしてメモリ35
及び36の他に命令メモリ202を有する。論理
ユニツト34は更新された論理信号値を計算する
場合に命令メモリ202を使用する。命令メモリ
202は1024の記憶位置を有し、各記憶位置は単
一の1出力5入力ゲートに対応するLSM命令を
含む。 各LSM命令は1つの機能コード・フイールド
(OPコード・フイールドとも呼ばれる)及び5つ
のアドレス・フイールドを含む。機能コードは実
行されるべき論理機能(AND、NOR、XORな
ど)を指定する。アドレス・フイールドはゲート
に対する入力接続を指定する。 大サイクルを実行するに当つて、論理ユニツト
34は命令メモリ202をアドレス順にアクセス
し、各命令を実行して、現信号値メモリ35(又
は36)からの5個の指定された値について指定
された論理機能を実行する。各命令の実行結果
は、当該命令のアドレスを用いて次信号値メモリ
36(又は35)に書き込まれる。かくて、命令
メモリ202のアドレスXにおける命令(ゲート
を表わす)はその結果(ゲートの出力を表わす)
を次信号値メモリ36のアドレスXに置き、それ
より1ゲート遅延分だけ早いゲート出力は現信号
値メモリ35のアドレスXに存在する。 論理ユニツト34による命令の各実行は小サイ
クルと呼ばれる。 命令は任意の順序で実行され得る。即ち、命令
メモリ202における各命令の配置は任意であ
る。その理由は、更新された値が別個のメモリに
置かれ、ブランチ命令、テスト命令等が存在しな
いからである。これは後に説明するように基本プ
ロセツサ間で通信を行うに当つて重大な結果をも
たらす。 命令は機能コード・フイールド及びアドレス・
イールドの外に、ドツト論理の実現及び6以上の
入力を有するゲートのシミユレーシヨンに使用さ
れる幾つかのフイールドを含む。これらのフイー
ルドが使用されるとき、命令実行の順序はもはや
全く任意であるとは云えない。これらのフイール
ドについては後に説明する。 次に、4個のNANDゲートを含む第2図の回
路を例に取りあげて、基本プロセツサの動作を説
明する。 第2図において、各ゲートの出力側に示されて
いる数字は、そのゲートを表わす命令の命令メモ
リ202におけるアドレスである。それらは、シ
ミユレートされたゲート出力を保持する現信号値
メモリ及び次信号値メモリのアドレスでもある。
入力はアドレス5及び6から来るものとする。な
お、第2図中の「LH」及び「HL」は本発明に
関するものであるから、ここでは説明しない。 シミユレーシヨンに必要なメモリ202の内容
の一例を下記く表1に示す。
【表】 各命令のアドレス・フイールドA3〜A5は本例
では使用されないのでブランクのままである。 次の表2は、0及び1の入力値並びに残りの末
定義値(*で示す)から最初のサイクルが始まる
4つの大サイクルにおける現信号値メモリの内容
を示す。未定義値が徐々になくなつているが、こ
れは論理値がゲートを伝搬する様子を示してい
る。ここで注意すべきは、ゲート2の出力がサイ
クル2で完全に定義されることである。何故なら
ば、0の入力を有するNANDゲートは他の入力
が何であつても1の出力を有するからである。
【表】 シミユレーシヨンのために論理ユニツト34で
実行される大サイクル当りの命令の数が最大命令
数である1024より少なくてよければ、その分だけ
大サイクルが短くなり、従つてシミユレーシヨン
速度が速くなる。 大サイクルの長さは後に詳細に説明する小サイ
クル計数レジスタによつて制御される。このレジ
スタはLSM全体に対して1つだけが設けられ、
すべての基本プロセツサにおける大サイクルの長
さを制御する。大サイクルの長さを制御するため
小サイクル計数レジスタを使用することは、基本
プロセツサの数を増すことによつてシミユレーシ
ヨン速度を速めることができるという効果を有す
る。 LSM命令で指定される論理機能は、基本プロ
セツサの他のメモリ(第1図の機能メモリ37)
の内容によつて定義される。 シミユレーシヨンの間に基本プロセツサで使用
される個々の論理機能は、機能メモリ37の1つ
の記憶位置の内容によつて定義される。各命令の
機能コード(OPコード)は、その機能を定義す
る機能メモリ37のアドレスである。 機能メモリ37は1024の記憶位置を有する。各
記憶位置は64ビツトから成り、各ビツトは6入力
スイツチング機能を表わす真理値表の各エントリ
に対応する。後に説明するように、6番目の入力
は入力数が6以上のゲートをシミユレートすると
きに使用される。機能メモリ中の値は0及び1で
ある。未定義値は、未定義入力値に応答して論理
ユニツトから発生される。例えば、AND機能へ
の全入力が1つを除いて未定義であると仮定す
る。もし1つの定義された入力が1であれば、出
力は未定数である。もしその定義された入力が0
であれば、出力は定義され、0に等しい。 各命令の機能コードは機能メモリ37の記憶位
置を任意に選択するので、命令メモリ202及び
機能メモリ37の記憶位置の間には1対1の対応
関係がなくともよい。更に、機能メモリ37は命
令メモリ202及び信号値メモリ35,36と同
じ数の記憶位置を有する必要はない。しかし、命
令メモリ202中の命令のアドレスとその結果が
記憶されるアドレスとの間には、1対1の対応関
係がなければならない。6以上の入力を有するゲ
ート(拡張された機能)は、基本プロセツサの論
理ユニツト34の内部にある機構を使用してシミ
ユレートされる。関連する内部機構の概略を第3
図に示す。 論理ユニツト34に含まれる機能評価エレメン
ト50は或る機能(真理値表)を論理値へ適用し
た結果の値を出力する。命令実行の各小サイクル
で、機能評価エレメント50の出力はLU累算器
51(「LU」は論理ユニツトを表わす。以下同
じ)に記憶される。機能評価エレメント50への
6番目の入力は、前の命令の結果(LU累算器5
1の内容)又は各命令中の即値データ・フイール
ドの内容である。その選択は各命令の即値選択フ
ラグによつて決定される。このフラグが0であれ
ば累算器51の内容が選択され、1であれば即値
データ・フイールドが選択される。第3図の
「X」を記入したボツクス52はこの入力選択を
示す。 入力数が5以下のゲートは、“1”の即値選択
フラグを有する単一命令によつて表わされる。使
用される機能の定義は、6番目の入力を無視する
ものであるか、又は結果に影響を及ぼさない値を
とらせるものでなければならない。例えば、論理
0の即値データは、6入力OR機能の定義を使用
して5入力ORゲートをシミユレートすることを
可能にする。 入力数が6以上のゲートは2又はそれ以上の連
続する命令によつて表わされなければならない。
2番目から最後の命令までは、すべて6番目の入
力として先行命令の結果(LU累算器51の内容)
を使用する。先行命令の結果は次信号値メモリに
記憶されるが、シミユレートされる機械の要素に
対応しない。 例えば、15入力のNORゲートがシミユレート
されるものと仮定する。その入力が記憶位置101
〜115から来るものと仮定すれば、命令シーケン
スは次の表3のようになる。
【表】 この表の最初の命令はその6番目の入力として
論理0の即値データを選択する。他の2つの命令
は6番目の入力として前の命令の実行結果を使用
するので、それらの即値データ・フイールドは無
視される。表3の例では、最後の命令の実行結果
が15入力のNOR機能の出力となる。 このようにして入力数が6以上の機能を計算す
る命令のシーケンス中には、他の命令を挿入して
はならない。何故ならばそれはLU累算器51の
内容を破壊することになるからである。 拡張された機能をシミユレートするこの方法
は、ごく普通の論理機能例えばAND、OR、
NAND、NOR、XORなどへの機能分解に対応
する。例えば、上記の15入力NOR機能は次のよ
うに分解されている。 NOR(A、B、C、D、E、F、…)= NOR(OR(A、B、C、D、E)、F、…) もつと一般的な機能については、必要な機能分
解を見出すのは困難である。そのような一般的な
機能は、論理を利用した直截な方法でシミユレー
トすることができる。 ゲート出力を直接接続することによりハードウ
エアで実現されるドツト論理(配線論理或いは結
線論理ともいう)は、第4図に示したように、ド
ツト論理回路53及びドツト累算器54を追加す
ることによつてシミユレートされ得る。これらの
エレメントは各命令中にある3つのフラグ(保管
フラグ、ドツト選択フラグ、ドツト機能フラグ)
によつて制御される。 保管フラグが1であれば、その命令の実行結果
を表わす論理ユニツト34の出力がドツト累算器
54に書込まれる。保管フラグが0の命令の場合
には、ドツト累算器54の内容は変更されない。 ドツト選択フラグが1であれば、ドツト累算器
54の現在の内容と現命令の実行結果(LU累算
器51の内容)とがドツト論理回路53で組合わ
される(AND又はOR)。ドツト論理回路53か
らの論理ユニツト出力は次信号値メモリに書込ま
れる。保管フラグを用いることによつて、この論
理ユニツト出力をドツト累算器54に保管するこ
ともできる。ドツト選択フラグが0であれば、
LU累算器51の内容が直接次信号値メモリに書
込まれる。 ドツト機能フラグは、1であればドツトAND
機能を選択し、0であればドツトOR機能を選択
する。ただし、論理0が“10”によつて表わされ
且つ論理1が“00”によつて表わされるのであれ
ば、この選択は逆になる。ドツト機能は、ドツト
選択フラグが1の場合にのみ遂行される。 コレクタ・ドツト(ドツトOR)の例を第5図
に示す。各NANDゲートのところに示される数
字30、31、32はそのゲートを表わす命令を記憶し
ている命令メモリのアドレスである。入力のとこ
ろに示される数字101、102などは入力データのア
ドレスであり、出力のところに示される数字32は
最終結果が書込まれる次信号値メモリのアドレス
である。 次の表4は第5図のドツト論理をシミユレート
するための命令を示す。使用されない入力(アド
レス・フイールドA3〜A5)はブランクのままで
あり、即値選択フラグ及び即値データ・フイール
ドは、この例に関係がないので除かれている。
【表】 表4の最初の命令はその結果を保管する。ドツ
ト選択フラグが0のため、ドツト機能フラグは無
視される。2番目の命令はその結果と最初の命令
の保管されていた結果とをAND結合し、それを
保管する。3番目の命令もその結果と保管されて
いた結果とをAND結合する。保管フラグが0の
ため、その出力は最終的な論理ユニツト出力にな
り、保管されない。 ドツト累算器54の内容を変更するものでない
限り、表4の命令シーケンス中に他の命令を挿入
することができる。これは、入力数が6以上のゲ
ートの間におけるドツト論理のシミユレーシヨン
を可能にする。 LSMのドツト論理機構は、入力数が6以上の
ゲートをシミユレートする場合にも使用できる。
これは複雑な機能を持つたゲートをシミユレート
するのに特に有用である。何故ならば、「和の積」
又は「積の和」形式への機能分解がシミユレーシ
ヨンの基礎になり得るからである。個々の命令は
機能分解の第1レベル(いくつかの和又は積)を
計算し、ドツト論理は第2レベル(ゲートの最終
出力を表わす単一の積又は和)を計算する。 前に、命令メモリ中の命令の順序は重要ではな
いと述べた。これは、LU累算器51及びドツト
累算器54を使用する命令のシーケンスについて
は明らかに該当しない。しかし、固定したシーケ
ンスは論理のほんの少数をシミユレートするため
にのみ必要とされ、全体としてのシーケンスは命
令メモリ中の任意の場所に置くことができる。 第1図のプロセツサ間スイツチ33の主たる機
能は、命令を実行した基本プロセツサからその実
行結果を他の基本プロセツサへ転送することであ
る。 プロセツサ間スイツチ33はすべての基本プロ
セツサ1〜31と制御プロセツサ32とを接続す
る。 プロセツサ間通信には基本プロセツサ内の他の
メモリが使用される。スイツチ33を介してプロ
セツサ間で通信を行う場合のメモリの機能を次に
説明する。 第1図に示されるように、各々の基本プロセツ
サは更に2つのメモリ38,39を有する。これ
らは前に説明した現信号値メモリ35及び次信号
値メモリ36と類似したものである。メモリ35
及び36と同じように、メモリ38及び39は2
つの役割りを交互に果す。1つは現信号入力メモ
リとしての役割りであり、他の1つは次信号入力
メモリとしての役割りである。 メモリ35及び36と同じように、メモリ38
及び39は論理信号値を記憶する。これらメモリ
は共に1024の記憶位置を有し、各記憶位置は1つ
の信号値を記憶する。 現信号入力メモリ38にあるデータはシミユレ
ーシヨンにおいて現に存在している論理信号値で
あり、それらは他の基本プロセツサによつて発生
されたものである。データは基本プロセツサ命令
中のアドレス源フラグを用いて選択される。命令
中の各アドレスは、関連したアドレス源フラグを
有する。それが0であれば、アドレスは現信号値
メモリ35中のデータを参照し、それが1であれ
ば、アドレスは現信号入力メモリ38中のデータ
を参照する。 大サイクルの過程で、更新された値はプロセツ
サ間スイツチ33を介して次信号入力メモリ39
に置かれる。そして、各大サイクルの終りに、前
の次信号入力メモリは現信号入力メモリとして指
定される。 各基本プロセツサのスイツチ選択メモリ40は
1024の記憶位置を有し、各記憶位置は基本プロセ
ツサのアドレスを含む。プロセツサ間スイツチ3
3は、更新された論理信号値を次信号値メモリ3
6に置くため、次のようにスイツチ選択メモリ4
0を使用する。 各命令の結果(基本プロセツサの次信号値メモ
リ36に記憶された値)は、各プロセツサにより
常にプロセツサ間スイツチ33へ送られる。更
に、すべての基本プロセツサの大サイクル(命令
実行)は同期されている。即ち、すべての基本プ
ロセツサはそのK番目の命令を同時に実行する。
かくて、すべてのプロセツサの結果は、現信号値
メモリ35及び次信号値メモリ36におけるアド
レス順序に従つて同時にプロセツサ間スイツチ3
3へ送られる。 スイツチ選択メモリ40及び次信号入力メモリ
39は、命令の実行と同期してアドレス順に歩進
される。各小サイクルにおいて、スイツチ33は
スイツチ選択メモリ40の現記憶位置の内容によ
つてアドレスされた基本プロセツサの現出力を各
基本プロセツサへ送る。この出力は次信号入力メ
モリ39の現記憶位置に置かれる。かくて、もし
或る基本プロセツサのスイツチ選択メモリ40が
記憶位置Zに値Qを有すれば、その基本プロセツ
サは基本プロセツサQのZ番目の出力を受取る。
その出力は次信号入力メモリ39の記憶位置Zに
置かれる。 次の表5および表6は、プロセツサ命令が表6
に掲げるようなものと仮定して、第6図に示すよ
うな回路で必要な通信を行うためのスイツチ選択
メモリ40及び命令メモリ202の内容を示すも
のである。表6に示される数字は第6図のゲート
および信号線に対応する命令乃至データの記憶位
置(アドレス)である。使用されない部分は命令
から除かれている。
【表】
〔従来技術の問題点〕
前記米国特許のLSMは広範囲の論理機能を正
確にシミユレートできるが、その反面次のような
欠点がある。即ち、シミユレートされる論理機能
毎に一定の単位遅延を与えなければならない。こ
の単位遅延は固定されており、信号の低レベルか
ら高レベルへの立上り遷移及び高レベルから低レ
ベルへの降下遷移について同じである。 〔発明の目的〕 本発明の目的は、シミユレートされる種々の論
理機能についての遅延が可変であるLSMを提供
することにある。 〔発明の概要〕 前記米国特許のLSM(以下、「公知LSM」とい
う)と同じく、本発明に係るLSM(以下、「本
LSM」という)も基本プロセツサ、制御プロセ
ツサ及びこれらのプロセツサも相互接続するプロ
セツサ間スイツチから成つている。 公知LSMの場合と同じく、基本プロセツサは
各論理機能の予定出力を計算する。この予定出力
には一定遅延が含まれている。本発明によれば、
シミユレートされる論理機能に固有の遅延時間を
設定する手段が各基本プロセツサに設けられ、そ
れに応じて予定出力が遅延される。遅延時間は、
シミユレートされた論理機能の出力に低レベルか
ら高レベルへの立上り遷移が生じるか、高レベル
から低レベルへの降下遷移が生じるかに従つて選
ばれる。 後述の実施例においては、基本プロセツサは種
種の論理機能を連続する作業サイクルでシミユレ
ートする。公知LSMとは異なり、この作業サイ
クルの長さは固定されておらず、可変である。各
基本プロセツサでのシミユレーシヨンは同時に進
行する。各基本プロセツサは、シミユレートされ
ている各論理機能に関する次の論理演算までの最
短時間(これを最小作業スペースと呼ぶ)を決定
する。次いで、各基本プロセツサで決定された最
小作業スペース値のうちどれが最小かが調べられ
る。このようにして決定された最小値は「大域最
小作業スペース値」と呼ばれる。この大域最小作
業スペース値は、すべての基本プロセツサ及び制
御プロセツサで同時に進行するシミユレーシヨン
の時間に関係している。 もう少し具体的に説明すると、シミユレートさ
れている各論理機能に関する次の論理演算までの
時間として、最初は特定の遅延時間(立上り遷移
又は降下遷移の遅延時間)が設定される。それに
続く最初の作業サイクルにおいては、設定された
遅延時間から大域最小作業スペース値が減算さ
れ、その結果が保管される。次の作業サイクルで
は、保管されていた減算結果から新しい大域最小
作業スペース値が減算される。このプロセスは、
シミユレートされた論理機能の予定出力中の遷移
が実際に伝搬されるまで、即ち、予定出力の新し
い値が計算されてからそれが最終出力値として実
際に出力されるまで、繰返される。 各プロセツサで最小作業スペース値を計算する
ため、特別のラツチ(WSラツチ)が各プロセツ
サに設けられる。このラツチは各作業サイクルの
開始時に最大値(全1状態)へ初期設定され、そ
の内容と上述の減算結果とが小サイクル毎に、即
ち、シミユレートされる論理機能毎に比較され
る。減算結果の方が小さければ、そのときの減算
結果がラツチに書込まれる。従つて、複数の小サ
イクルから成る作業サイクルの終了時には、当該
プロセツサにおける最小作業スペース値がラツチ
に保持されている。 各プロセツサのうちラツチに保持されている最
小作業スペース値のうちでどれが最小かを決める
ため、特別のカウンタ(DRカウンタ)が使用さ
れる。このカウンタは全0状態へ初期設定された
後、連続的に増分され、その内容とすべてのラツ
チの内容とが比較される。すべてのプロセツサの
うちで最初にカウンタ及びラツチの内容が一致し
たプロセツサの最小作業スペース値が大域最小作
業スペース値として使用される。 本発明の特定の態様によれば、シミユレートさ
れている論理機能の遅延時間よりも短い持続時間
を持つたグリツチが予定出力中に存在しているか
否かを検出する手段が設けられる。ここでいう
「グリツチ」とは、論理機能への2以上の入力信
号の状態が続けて急速に変化したために生じる短
時間の望ましくない出力のことを意味する。例え
ば、2入力NANDゲートにおいて一方の入力が
高レベルから低レベルへ変化した直後に他方の入
力が低レベルから高レベルへ変化すると、短時間
ではあるが、NANDゲートから0状態の出力が
発生される。論理機能を正確にシミユレートする
ためには、その立上り遷移又は降下遷移の遅延時
間よりも短いグリツチは抑圧する必要がある。こ
のようなグリツチは、現作業サイクル及び先行作
業サイクルにおける予定出力を比較することによ
り検出される。もしそれらが異なつていれば予定
出力中に遷移が生じている。そのとき、前に生じ
た遷移が論理機能の遅延時間のためにまだ伝搬さ
れていない(実際に出力されていない)ことがわ
かると、新たに検出された遷移はこの遅延時間よ
りも短いグリツチによるものであると判断され、
その伝搬が禁止される。 〔実施例の説明〕 LSMの基本的構成は〔従来技術〕の項で説明
したものと同じであるから、以下では、主として
本発明による改良部分について詳述することにす
る。 まず、単一のNANDゲートを複数のサイクル
にわたつてシミユレートした結果を示す第14図
を参照する。第14図には、NANDゲートへの
入力信号X及びYと、それに対する公知LSMの
出力Z(U)及び本LSMの出力Z(N)とが示さ
れている。公知LSMは単位遅延シミユレータで
あつて、一定の単位遅延以外の遅延をシミユレー
トできず、入力信号X及びYが単位時間(公知
LSMにおける1つの大サイクルに対応)の間論
理1状態にあるため、論理0状態のグリツチがサ
イクル13あたりで伝搬される。 このようなグリツチを実際に伝搬させるために
は、NANDゲートの遅延時間はグリツチのパル
ス幅以下でなければならない。NANDゲートの
遅延時間の方が長い場合には、LSMからのシミ
ユレートされた出力はこのようなグリツチを含ま
ない方がよい。 第14図中の出力Z(N)は、グリツチが除か
れている例である。ここでは、シミユレートされ
ているNANDゲートの降下遷移についての遅延
時間が2つの大サイクル分の時間に等しく、立上
り遷移についての遅延時間が3つの大サイクル分
の時間に等しいものと仮定する。その場合、
NANDゲートのシミユレーシヨン結果としては
Z(U)よりもZ(N)の方が正確である。本
LSMはまさにZ(N)も出力として発生する。 基本プロセツサの改良 次に第16A図及び第16B図を参照しなが
ら、基本プロセツサの改良について説明する。 本LSMにおいては、スイツチ212並びにA、
AIN、B及びBINのメモリ機構211が拡張さ
れる。スイツチ212及びメモリ機構211の基
本的な動作及びアドレス方式は公知LSMにおけ
るものと同じであるが、拡張部分の内容は本
LSM独自のものである。 Aメモリ及びBメモリの拡張部分からの出力は
ラツチ350へ印加される。ラツチ350は値
OD(n)、SD(n)、SS(n)及びWS(n)を保持す
る。OD(n)は、先行作業サイクルにおける論理
ユニツト(基本プロセツサを意味する)からの出
力である旧データの現在値を表わす。なお以下で
も同様であるが「n」は「現在」を意味するもの
とする。SD(n)は保管データ信号であつて、ま
だ伝搬されていないが遷移が現われるはずのシミ
ユレートされた論理出力LUINの変更状態を表示
するのに使用される。例えば、シミユレートされ
たNANDゲートへ印加されるとその出力を変更
し得るが、NANDゲートの遅延時間のためにそ
の出力においてまだ変更が生じていないような入
力信号が考えられる。このような入力信号はSD
(n)として保管され、当該NANDゲートの表示
された遅延時間が経過した後でのみ伝搬される。 SS(n)は状況ビツトである。これが1状態に
設定されていると、SD(n)とOD(n)が等しく
ないこと、即ち、出力信号中の遷移が計算された
が、シミユレートされた遅延のためにまだ出力へ
伝搬されていないことを示す。 WS(n)は複数のビツトから成り、「作業スペ
ース」の長さを表示する。この長さは、現サイク
ルから、予定の変化がプロセツサの出力信号中に
生じるまでの時間として定義される。WS(n)
はSS(n)=1の場合にのみ意味を持つ。 本LSMでは命令メモリ202も拡張される。
これは、シミユレートされている各装置につい
て、低レベルから高レベルへの(LH)立上り遷
移及び高レベルから低レベルへの(HL)降下遷
移のための遅延時間値を記憶するためである。以
下、各々の遅延時間値を単に「LH」及び「HL」
で表わすことにする。 例えば第2図の回路を本LSMによつてシミユ
レートする場合、各NANDゲートのLH値及び
HL値を図示のように異なつたものにすることが
できる。これらのLH値及びHL値は命令メモリ
202の各アドレス位置に書込まれ、従つてその
内容は前記の表1とは異なり、次の表7のように
なる。
【表】 第2図と比べてみればわかるように、命令メモ
リ202に書込まれているLH値及びHL値は実
際の遅延値より1単位だけ小さい。この単位遅延
は本LSMで許される最小値であり、また公知
LSMにおける単位遅延に相当する。 命令メモリ202の拡張部分の内容はラツチ3
51へ読出される。ラツチ351へ読出された
LH値HLは、ラツチ350中のWS(n)と共に
マルチ・プレクサ352へ供給される。どの信号
がマルチプレクサ352を通過するかは、ラツチ
350中のSD(n)及びSS(n)の値によつて決ま
る。SS(n)=1であれば、マルチプレクサ352
はSD(n)の状態とは無関係にWS(n)を出力す
る。しかしSS(n)=0であれば、マルチプレクサ
352はSD(n)の値に応じてLH値又はHL値を
出力する。その場合、SD(n)=0で低レベルから
高レベルへの遷移が生じることを示していると
LH値が選択され、さもなければHL値が選択さ
れる。 LU第2ステツプ機構224の出力LUINは、
本発明によりLU出力レジスタ226の入力部に
設けられているマルチプレクサ369の一方の入
力へ供給される。マルチプレクサ369の他方の
入力には、旧データ信号OD(n)が供給される。
マルチプレクサ369は新サイクル状況ビツトSS
(n+1)によつて制御される。 出力LUINが本当に正しいとき、単位遅延以外
の遅延(非単位遅延)のため或いはグリツチの存
在のためにLUINが変更されないときには、マル
チプレクサ369はLUINを通過させ、さもなけ
ればOD(n)を通過させる。例えば、或るNAND
ゲートの出力が1から0に変化することを論理ユ
ニツトが決定しても、第16A図及び第16B図
の回路において、ゲートの非単位遅延のために新
しい出力信号がまだ伝搬されていないことが決定
されると、OD(n)=1の出力信号がマルチプレ
クサ369を通過する。 各作業サイクル(公知LSMにおける大サイク
ルとは異なる)の開始時に、すべての基本プロセ
ツサ1〜31の間で最小の作業スペース値が最小
作業スペース値カウンタ(以下、「DRカウンタ」
という)374に設定される。DRカウンタ37
4の出力は非零回路372で検査され、DRレジ
スタ366へ供給される。これの詳細については
第17図のところで説明する。 状況ビツトSS(n)が1状態にあれば、マルチ
プレクサ352の出力からDRレジスタ366の
内容が減算される。SS(n)=1のときにマルチプ
レクサ352が出力するのはWS(n)である。 上述の減算を実行するため、DRレジスタ36
6からの出力は反転器367で反転された後、
ANDゲート配列368を通つて加算器361の
一方の入力へ供給される。ANDゲート配列36
8は複数のANDゲートから成り、その各ANDゲ
ートの一方の入力は反転器367の対応する出力
ビツトを受取り、他方の入力はSS(n)を共通に
受取る。従つてSS(n)=1であれば、ANDゲー
ト配列368はDRレジスタ366にある値の補
数(反転値)を出力する。SS(n)=0であれば、
ANDゲート配列368から出力されるビツトは
すべて0である。これは初期設定時又は遅延時間
の開始時にLH値又はHL値がマルチプレクサ3
52を通過する場合に対応している。その場合、
ANDゲート配列368からの全出力ビツトの他
に、桁上げビツトCINとして印加されるSS(n)も
0であるから、加算器361は単にLH値又は
HL値を通過させるだけである。 SS(n)=1で、DRレジスタ366の反転値及
びWS(n)が加算器361へ供給されると、CIN
=SS(n)=1であるから、2の補数の減算が実行
されることになる。加算器361の出力はラツチ
362−1、362−2及び362−3で再同期
され、次の作業サイクルのための作業スペース値
WS(n+1)として使用される。WS(n+1)
はスイツチ212の状態に応じて、Aメモリ又は
Bメモリへ書戻される。 ラツチ362−3からのWS(n+1)はORゲ
ート363にも供給される。ORゲート363の
出力WSOは、次の作業サイクルのための作業ス
ペースの長さが0でなければ1になり、さもなけ
れば0になる。 XORゲート357は、先行作業サイクル(n
−1)から現作業サイクル(n)へ移る際に、計
算された出力における遷移の存在を検出するため
に設けられている。この検出は、論理ユニツト出
力LU INと、ラツチ353−1〜353−4で
再同期される保管データ信号SD(n)との排他的
論理和(XOR)をとることにより遂行される。
従つて、XORゲート357の出力は、LUINの
値と再同期されたSD(n)の値とが異なつている
場合にのみ1状態になる。 グリツチの存在はNANDゲート358で検出
される。前述のように、グリツチの幅がシミユレ
ートされている装置の遅延時間(具体的には、
LH値及びHL値のうちの選択されたもの)より
短ければ、グリツチはプロセツサからの出力信号
として伝搬してはならず、抑圧する必要がある。
このようなグリツチは、XORゲート357及び
ラツチ353−4の出力が共に1の場合に検出さ
れる。第16A図の例では、グリツチの存在が0
状態の出力GDによつて表示されるようになつて
いるが、これは回路の他の部分との関連で決めら
れたことに過ぎない。 XORゲート357の出力及びラツチ353−
4からの再同期されたSS(n)はORゲート359
にも供給される。ORゲート359は、再同期さ
れたSS(n)の値又はXORゲート357の出力値
が1のとき、即ち、シミユレートされた出力にお
ける変化が現サイクル(n)又は先行サイクル
(n−1)で検出されたときに、次の作業サイク
ルにおける作業スペース値WS(n+1)を減ら
すための信号SOを発生する。 次の作業サイクルのための新しい状況ビツトSS
(n+1)は、ORゲート359及び363並び
にNANDゲート358の出力を受取るANDゲー
ト364から発生される。ANDゲート364は
次の3つの条件がすべて満たされている場合にの
み1状態のSS(n+1)を発生する。 (1) ORゲート363の出力WSOが1で、次の作
業サイクルのための作業スペースの長さが0で
ないことを示している。 (2) 現状況ビツトSS(n)が1であるか、又は次
の作業サイクルで遷移が生じることをXORゲ
ート357が検出した。 (3) グリツチがない。 次の作業サイクルのための信号値SS(n+1)
(ANDゲート364の出力)、SD(n+1)(LU
INと同じ)及びOD(n+1)(マルチプレクサ3
69の出力)は、ラツチ362−3からの新しい
作業スペース値WS(n+1)と共に、現在選択
されているAメモリ又はBメモリへスイツチ21
2を介して書戻される。 WS(n+1)を与える加算器361の出力は、
当該基本プロセツサのための最小作業スペース値
を決定し、且つ最終的にすべての基本プロセツサ
1〜31のDRカウンタ374へロードさせる。
LSM全体での最小作業スペース値(大域最小作
業スペース値)を決定する回路要素(第16B
図)にも供給される。前述のように、DRカウン
タ374は作業サイクルの開始時に、すべての基
本プロセツサ1〜31の間での最小作業スペース
値をロードされる。どの基本プロセツサが次の作
業サイクルのための最小作業スペース値を有して
いるかは、各基本プロセツサに設けられるマルチ
プレクサ373−1及び373−2、WSラツチ
376−1及び376−2、比較器379−1及
び379−2並びにNANDゲート378−1及
び378−2と、プロセツサ間スイツチ33の一
部であるORゲート381とを含む回路網によつ
て決定される。ORゲート381の機能は配線論
理によつて実現してもよい。 第16B図において参照番号373、376、
378及び379を付されている回路要素のう
ち、添字「−1」を有するものは現サイクル
(n)に関し、添字「−2」を有するものは次サ
イクル(n+1)に関連している。動作自体は同
じであるから、以下では特に混乱を生じない限
り、添字「−1」及び「−2」を省略することに
する。なお、加算器361の出力を再同期するた
めのラツチを示す参照番号375の添字「−1」、
「−2」及び「−3」はサイクルとは無関係であ
る。 加算器361の出力は、再同期用のラツチ37
5−1の他に、マルチプレクサ373の一方の入
力及びWSラツチ376へ供給される。作業サイ
クルの最初の相(以下、「相I」という)におい
ては、モード選択信号が1状態にあるため、マル
チプレクサ373は加算器361の出力を比較器
379の入力Aへ通過させる。WSラツチ376
は、最初はホスト計算機からの初期設定信号によ
つて全1状態に設定される。WSラツチ376の
内容は比較器379の入力Bへ供給される。かく
して、加算器361の出力は、各作業サイクルの
相Iの間、連続的にWSラツチ376の内容と比
較される。もし加算器361の出力がWSラツチ
376の内容より小さければ(A<B)、比較器
379は線382へ出力を発生してWSラツチ3
76を付勢し、その結果361のそのときの出力
値がWSラツチ376に書込まれる。本例では、
WSラツチ376はNANDゲート378からの0
状態の出力によつて付勢されるものとする。線3
82が1状態にならなければ、WSラツチ376
は元の値を保つから、作業サイクルの相Iの終了
時にWSラツチ376に残つているのは、当該基
本プロセツサの作業サイクルの間に見出された最
小作業スペース値である。 作業サイクルのデータ計算相である相Iが終了
すると、相に移り、モード選択信号が0状態に
設定される。相においては、DRカウンタ37
4の出力がマルチプレクサ373を通過して、比
較器379の入力Aへ供給される。全0状態へリ
セツトされていたDRカウンタ374は各々の基
本プロセツサにおいて同時に増分される。いずれ
かの基本プロセツサの比較器379で、DRカウ
ンタ374の値がWSラツチ376に保持されて
いる値に達したこと(A=B)を検出すると、線
383に一致信号が発生される。この一致信号を
最初に発生した基本プロセツサが、すべての基本
プロセツサの間で最小の作業スペース値を有する
基本プロセツサである。 各基本プロセツサの比較器379からの一致出
力はすべてプロセツサ間スイツチ33のORゲー
ト381へ供給される。ORゲート381の出力
は、DRロード信号として各基本プロセツサの
ORゲート377へ共通に供給される。ORゲー
ト377の出力が1状態になると、DRカウンタ
374の動作が停止される。DRレジスタ366
は、DRロード信号に応答して、DRカウンタ3
74の停止時の値を受取る。 DRカウンタ374の値はすべての基本プロセ
ツサにおいて同じであるから、LSM全体として
1つのDRカウンタ374を使用するようにして
もよい。 DRカウンタ374とDRレジスタ366の間
に設けられている非零回路372の構成例を第1
7図に示す。DRカウンタ374の各出力線は
NORゲート392へ接続される。そのうち最下
位の出力線はORゲート391の一方の入力にも
接続される。ORゲート391の他方の入力は
NORゲート392の出力を受取る。もしDRカウ
ンタ374からの出力信号がすべて0状態にあれ
ば、NORゲート392から1状態の出力信号が
発生され、ORゲート391を通つて最下位の出
力線へ供給される。従つて、DRゲート信号によ
つてDRカウンタ374からDRレジスタ366
へロードされる値が全0状態になることは決して
ない。これが非零回路372の働きである。 制御プロセツサの改良 次に第18A図〜第18D図を参照しながら、
本発明による制御プロセツサ32の改良について
説明する。 本LSMにおいては、第7C図に示されていた
出力アドレスに関する回路が第18A図〜第18
C図の回路で置き換えられ、入力アドレスに関す
る回路が第18D図の回路で置き換えられてい
る。 制御プロセツサ32の改良のうち第18A図の
部分は、基本プロセツサの改良に係る部分(第1
6A図及び第16B図)と大体同じである。ただ
し、制御プロセツサ32では、シミユレートされ
た出力の計算及び伝搬が行われることはない。 第18A図において、バツクアツプ・データ・
メモリ412は、第19図に示したような主入力
信号を次の表8のような形で記憶する。
【表】 第19図に示した3つの主入力信号PI1、PI2
びPI3は数字80、81及び82によつて各々識別され
る。これらの主入力信号の状態は遷移の「ポツプ
アツプ・スタツク」(表8)に記憶される。例え
ば、表8に示すポツプアツプ・スタツクの一番上
のエントリは、最初に主入力信号PI3(82)が1状
態へ遷移し且つ10単位時間の間その状態にとどま
ることを示している。次のエントリは遷移シーケ
ンスにおける次の遷移に対応しており、主入力信
号PI1(80)が0状態へ遷移し且つ17単位時間の間
その状態にとどまることを示している。以下のエ
ントリも同様である。なお、表8中の「100+」
は、システムが定常状態に達するまでの間(不定
期間)、対応する主入力信号が表示された状態に
とどまることを表わす。 バツクアツプ・データ・メモリ412はアドレ
ス・カウンタ436によつてアドレスされる。ア
ドレス・カウンタ436は、NANDゲート41
3の出力へ発生されたパルスが遅延回路435の
出力に現われる度に増分される。NANDゲート
413の出力はマルチプレクサ414の切替えも
制御する。 NANDゲート413の一方の入力へ供給され
る信号PRZは第18C図の回路で発生される。
第18C図に示されているORゲート460−1
〜460−32は、第11A図に示されているレ
ジスタ296の対応するセクシヨン1〜32のア
ドレス信号を受取る。例えばセクシヨンiのアド
レス信号が00000であれば、プロセツサiが制御
プロセツサ32を指定している。ORゲート46
0−1〜460−32の出力は共通のNANDゲ
ート461へ供給される。このNANDゲート4
61の出力がPRZである。第18C図から明ら
かなように、PRZが1状態になるのは、いずれ
かのセクシヨンのアドレス信号が全0状態にある
場合だけであり、その他の場合はPRZ=0にな
る。言い換えれば、PRZは、少なくとも1台の
プロセツサが制御プロセツサ32からの主入力デ
ータをアクセスしている場合にだけ1状態にな
る。 バツクアツプ・データ・メモリ412から読出
されたデータは、マルチプレクサ414の“0”
例の入力へ供給される。マルチプレクサ414の
“1”側の入力にはラツチ423−5の出力が供
給される。マルチプレクサ414の出力はAデー
タ・メモリ415及びBデータ・メモリ416の
入力ポートに接続されている。基本的には、これ
らのメモリ415及び416の動作は基本プロセ
ツサ1〜31のAメモリ及びBメモリの動作と同
じであつて、読出し及び書込みが作業サイクル毎
に交互に実行される。ただし制御プロセツサ32
においては、単一データ・ビツトD(n)及び作
業スペース値WS(n)だけを記憶しておけばよ
い。これらはAデータ・メモリ415又はBデー
タ・メモリ416からレジスタ417へ読出され
る。レジスタ417へ読出されたデータ・ビツト
D(n)は、再同期用ラツチ419−1〜419
−5を通つてプロセツサ間スイツチ33へ送れ
る。 作業スペース値WS(n)はレジスタ417か
ら加算器418の一方の入力へ供給される。加算
器418の他方の入力には大域作業スペース値
GWS(n)が供給される。制御プロセツサ32の
ための最小作業スペース値を決定する回路は基本
プロセツサのものと同じであるから、詳細につい
ては省略する。 第18C図のNANDゲート461からの信号
PRZは加算器418の桁上げ入力CINとして用い
られる。これは2の補数の減算を行うためであ
る。PRZ=1で、或るプロセツサが制御プロセ
ツサ32から主入力データを読出していることを
示していると、現作業スペース値WS(n)から
大域最小作業スベース値GWS(n)が減算され
る。これに対してPRZ=0であれば、Aデー
タ・メモリ415又はBデータ・メモリ416か
らレジスタ417へ読出された作業スペース値
WS(n)はそのまま加算器418を通過する。 加算器418の出力は、ラツチ423−1〜4
23−5で再同期された後、マルチプレクサ41
4の“1”側の入力へ供給され、更にNORゲー
ト424にも供給される。NORゲート424は、
加算器418から出力されてきた次の作業サイク
ルのための作業スペース値WS(n+1)が全0
のときにのみ1状態の出力を発生する。 従つて、WS(n+1)が全0で且つPRZ=1
であればNANDゲート413の出力が0になり、
それによりマルチプレクサ414の“0”側の入
力が選択されて、バツクアツプ・データ・メモリ
412から読出されたデータがAデータ・メモリ
415及びBデータ・メモリ416の方へ送られ
る。これは、主入力データが最初に或るプロセツ
サへ供給される作業サイクルに対応しており、非
単位遅延のシミユレーシヨンの開始時にLH値又
はHL値が加算器361を通過していた基本プロ
セツサの場合と似ている。 上記以外の場合はNANDゲート413の出力
が1になるため、ラツチ423−5から出力され
てきたWS(n+1)がマルチプレクサ414を
通過する。これは、論理シミユレーシヨンの時系
列を進めることに相当する。 第18D図は制御プロセツサ32の入力アドレ
ス部分(第7C図)の改良を示している。第7C
図の入力アドレス部分と異なつているのは、A
INメモリ442のアドレス手段として、レジス
タ238とA INメモリ442の間にANDゲー
ト441及びアドレス・カウンタ440を設けた
ことである。ANDゲート441はレジスタ23
8中のマスク部分及びP−2ゲート・パルスによ
つて条件付けられ、アドレス・カウンタ440を
クロツクする。 シミユレーシヨンの例 最後に第15図を参照しながら、本LSMによ
るシミユレーシヨンの例を説明する。 第15図は第2図の回路における信号1〜6の
状態を示したもので、それによれば第1主入力で
ある信号5はずつと1状態に保たれ、第2主入力
である信号6は時刻T=0のところで0状態から
1状態へ遷移する。T=0以前においては、信号
6は、第2図の回路が定常状態に達するに充分長
い時間の間、0状態に保たれている。 種々の信号、DRカウンタ374(第16B
図)、WSラツチ376−1及び376−2の各
値は表9のように変化する。
【表】
【表】
【表】 作業サイクル1(T=−2)での初期設定にお
いては、OD(n)、SD(n)及びWS(n)の値は、
最初の小サイクル1〜4(シミユレートされた出
力信号1〜4に対応)の間未定である。次の小サ
イクル5では、主入力としてWS(n)が30に設
定される。これは、第2図の回路への入力信号5
が30単位時間(定常状態へ達するに充分な長さで
ある)の間1状態にあることを意味する。最後の
小サイクル6では、WS(n)が2に設定される。
これも主入力として供給される。WS(n)=2
は、T=−2からT=0(信号6が1状態へ遷移
する)までの2単位時間に対応している。新しい
作業スペース値WS(n+1)の計算は小サイク
ル5及び6で実行される。その際、小サイクル5
はWS(n+1)=30−1=29を計算し、小サイク
ル6はWS(n+1)=2−1=1を計算する。こ
の計算のため、大域作業スペース値は1に初期設
定されている。DRカウンタ374は1に初期設
定され、WSラツチ376−1及び376−2は
全1状態(表9では「A1」で表わされている)
に初期設定される。小サイクル5及び6は主入力
に関係するため制御プロセツサ32で実行される
ので、表9において、小サイクル5及び6の行に
示されているWSラツチ376−1の値「29」及
び「1」は、実際には制御プロセツサ32中の対
応するWSラツチ431−1の値である。従つ
て、小サイクル5及び6におけるWS(n)など
も、基本プロセツサではなく制御プロセツサに関
するものである。小サイクル1〜4におけるSS
(n)=0は、LU INとLU OUTが等しいことを
示している。 次の作業サイクル2(T=0)においては、前
の作業サイクル1で得られた値OD(n+1)、SD
(n+1)、SS(n+1)及びWS(n+1)が各々
OD(n)、SD(n)、SS(n)及びWS(n)として使
用される。制御プロセツサ32のWSラツチ43
1−1に残つている値「1」は大域最小作業スペ
ース値として使用され、従つてDRカウンタに設
定される。作業サイクル2の各小サイクルにおい
て、WS(n+1)はシミユレートされている
種々の論理ゲートの遅延時間に等しくなる。例え
ば、小サイクル1でシミユレートされるのは、第
2図の回路おいて入力信号5及び6を受取つて出
力信号1を発生するNANDゲートである。その
シミユレートされた出力は高レベルから低レベル
へ遷移するものと予想される。第2図の回路では
HL=3であるが、一方のデータ・メモリから読
出され、加算器361を通つて他方のデータ・メ
モリへ書戻されるHL値は2である(HL=3に
は基本プロセツサの組込み遅延(1単位)が含ま
れているため)。小サイクル1〜4の間はSS(n)
=0であるから、HL値に対する減算は実行され
ない。制御プロセツサ32は小サイクル5及び6
において、前の作業スペース値である29及び1
から各々1を減算する。このとき基本プロセツサ
が制御プロセツサから主入力データを読出してい
るから、加算器418の桁上げ入力CINとなる信
号PRZは1である。 小サイクル6においてWSラツチ431−1の
内容が0になるため、制御プロセツサ及び基本プ
ロセツサに設けられている非零回路が働き、各々
のDRレジスタへロードされる大域最小作業スペ
ース値を1にする。 次の作業サイクル3(T=1)においては、前
の作業サイクル2で得られたWS(n+1)がWS
(n)として使用される。まだSS(n)=0である
から、基本プロセツサではこれらの値は減らされ
ない。しかし制御プロセツサでは、小サイル5で
WS(n)の値28が減らされて27になり、更
に小サイクル6で信号6が1状態にとどまつてい
る時間を表わす新しい値30(定常状態へ達するに
充分な長さである)が読出される。基本プロセツ
サのWSラツチ376−2は、作業サイクル3の
間ずつと値2を保持している。 次の作業サイクル4(T=3)においては、小
サイクル1及び3でSS(n)=1が計算され、従つ
てそのときのWS(n)の値から大域最小作業ス
ペース値2が減算される。小サイクル1ではWS
(n+1)=0になるため非零回路372が働い
て、次の作業サイクルのための大域最小作業スペ
ース値を1に強制する。 制御プロセツサは小サイクル5及び6でWS
(n)の減算を続けるが、この減算動作は以下の
作業サイクルにおける基本プロセツサの動作に影
響を及ぼさないので、表9中の作業サイクル5以
降は小サイクル5及び6を省略してある。 作業サイクル5(T=4)においては、小サイ
クル3でSD(n)=0、SS(n)=1及びLU IN=
1になるため、グリツチが検出され(NANDゲ
ート358の出力が0になる)、それに伴つてSS
(n+1)が0にされる。その結果、次の作業サ
イクル6の小サイクル3ではSS(n)=0になるか
ら、WS(n)の減算は行われず、その代りに適
切な遅延時間値(LH又はHL)が読出されて、
マルチプレクサ352及び361を通過し、WS
(n+1)として使用される。また作業サイクル
5の小サイクル3でSS(n+1)=0になると、
LU INがLU OUTとして伝播される。 上述のプロセスは作業サイクル9まで続き、T
=17で定常状態に達して、シミユレートされたす
べての論理ゲート出力の正しい値が決定される。 第16A図の例では、LSMからホスト計算機
へ出力されるのは各基本プロセツサからのLU
OUT、CD及びSS(n+1)であるが、DRカウン
タの内容を出力することも可能である。その一例
を第18B図に示す。第18B図のDRカウンタ
出力回路はアドレス・カウンタ450、遅延回路
451及びDRスタツク・メモリ452から成つ
ている。アドレス・カウンタ450は、ホスト計
算機からの初期設定信号によつて全0状態へリセ
ツトされ、プロセツサ間スイツチ33に設けられ
たORゲート381(第16B図)からのDRロ
ード信号によつて増分される。DRロード信号は
また遅延回路451で遅延された後、書込みスト
ローブ信号としてDRスタツフ・メモリ452へ
供給される。DRスタツフ・メモリ452は、書
込みストローブ信号を受取ると、そのときのアド
レス・カウンタ450の内容によつて指定される
記憶位置にDRカウンタの内容を書込む。かくし
て、作業サイクル毎のDRカウンタの内容をホス
ト計算機へ読出すことができる。 本LSMにおいては、CL−1、CL−2、P−
1、P−2などのタイミング信号を適切な時刻に
発生させるため、第13D図の回路も少し修正さ
れる。前述のように、作業サイクルに相が挿入
されているので、これらの信号の開始時刻を遅ら
せる必要があるからである。そのためには、線2
46上の起動パルス及び上述のDRロード信号に
よつて条件付けられるANDゲート(図示せず)
をORゲート248の入力例に接続しておけばよ
い。
【図面の簡単な説明】
第1図は従来のLSMの概略を示すブロツク図、
第2図はLSMによつてシミユレートされる論理
回路の一例を示す回路図、第3図及び第4図は第
1図のLSMにおいて6以上の入力を有するゲー
トをシミユレートするための内部構成を示すブロ
ツク図、第5図はコレクタ・ドツトを有する論理
回路の一例を示す回路図、第6図はプロセツサ間
通信を説明するためのブロツク図、第7図は第7
A図、第7B図、第7C図及び第7D図のつなが
りを示すブロツク図、第7A図、第7B図、第7
C図及び第7D図は第1図のLSMの詳細を示す
ブロツク図、第8図は各種制御パルスの波形図、
第9図は第9A図及び第9B図のつながりを示す
ブロツク図、第9A図及び第9B図はA、AIN、
B及びB INの各メモリの詳細を示すブロツク
図、第10図は制御プロセツサ32のAメモリ及
びA INメモリを示すブロツク図、第11図は
第11A図及び第11B図のつながりを示すブロ
ツク図、第11A図及び第11B図はプロセツサ
間スイツチ33の詳細を示すブロツク図、第12
図は第12A図及び第12B図のつながりを示す
ブロツク図、第12A図及び第12B図は第7B
図の論理ユニツトの詳細を示すブロツク図、第1
3図は事象論理回路241の詳細を示す回路図、
第14図は従来のLSM及び本発明に係るLSMの
出力の比較を示す波形図、第15図は本発明に係
るLSMの動作を説明するための波形図、第16
A図及び第16B図は本発明による基本プロセツ
サの改良部分を示すブロツク図、第17図は非零
回路372の詳細を示す回路図、第18A図、第
18B図、及び第18C図及び第18D図は本発
明による制御プロセツサの改良部分を示すブロツ
ク図、第19図は基本プロセツサへの主入力信号
の一例を示す波形図である。

Claims (1)

  1. 【特許請求の範囲】 1 各論理機能について並列に予定出力値を計算
    する複数のプロセツサを含む論理シミユレーシヨ
    ン機械にして、 シミユレートされる論理機能に固有の遅延時間
    を設定する手段を各プロセツサに設け、前記予定
    出力値を該手段によつて設定された遅延時間分だ
    け遅らせて出力するようにしたことを特徴とする
    論理シミユレーシヨン機械。
JP58080210A 1982-06-11 1983-05-10 論理シミユレ−シヨン機械 Granted JPS58222355A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/387,408 US4656580A (en) 1982-06-11 1982-06-11 Logic simulation machine
US387408 1995-02-13

Publications (2)

Publication Number Publication Date
JPS58222355A JPS58222355A (ja) 1983-12-24
JPS633344B2 true JPS633344B2 (ja) 1988-01-22

Family

ID=23529743

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58080210A Granted JPS58222355A (ja) 1982-06-11 1983-05-10 論理シミユレ−シヨン機械

Country Status (4)

Country Link
US (1) US4656580A (ja)
EP (1) EP0096176B1 (ja)
JP (1) JPS58222355A (ja)
DE (1) DE3380603D1 (ja)

Families Citing this family (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1985002033A1 (en) * 1983-11-03 1985-05-09 Prime Computer, Inc. Digital system simulation method and apparatus
US4594677A (en) * 1983-11-09 1986-06-10 International Business Machines Corporation System for detecting and diagnosing noise caused by simultaneous current switching
JPS6142040A (ja) * 1984-08-03 1986-02-28 Nec Corp 論理シミユレ−タ
JPS6165336A (ja) * 1984-09-07 1986-04-03 Hitachi Ltd 高速演算方式
JPS61102569A (ja) * 1984-10-26 1986-05-21 Hitachi Ltd 高速論理シミユレ−シヨン装置
JPS62182939A (ja) * 1986-02-07 1987-08-11 Hitachi Ltd 情報処理装置の論理シミユレ−シヨン方法
US4862347A (en) * 1986-04-22 1989-08-29 International Business Machine Corporation System for simulating memory arrays in a logic simulation machine
US5126966A (en) * 1986-06-25 1992-06-30 Ikos Systems, Inc. High speed logic simulation system with stimulus engine using independent event channels selectively driven by independent stimulus programs
US4787061A (en) * 1986-06-25 1988-11-22 Ikos Systems, Inc. Dual delay mode pipelined logic simulator
US4787062A (en) * 1986-06-26 1988-11-22 Ikos Systems, Inc. Glitch detection by forcing the output of a simulated logic device to an undefined state
JPS63204441A (ja) * 1987-02-20 1988-08-24 Fujitsu Ltd 論理シミユレ−シヨン専用プロセツサの処理方式
US5093920A (en) * 1987-06-25 1992-03-03 At&T Bell Laboratories Programmable processing elements interconnected by a communication network including field operation unit for performing field operations
US4872125A (en) * 1987-06-26 1989-10-03 Daisy Systems Corporation Multiple processor accelerator for logic simulation
US4873656A (en) * 1987-06-26 1989-10-10 Daisy Systems Corporation Multiple processor accelerator for logic simulation
US5452231A (en) * 1988-10-05 1995-09-19 Quickturn Design Systems, Inc. Hierarchically connected reconfigurable logic assembly
US5329470A (en) * 1988-12-02 1994-07-12 Quickturn Systems, Inc. Reconfigurable hardware emulation system
US5109353A (en) * 1988-12-02 1992-04-28 Quickturn Systems, Incorporated Apparatus for emulation of electronic hardware system
US5572708A (en) * 1989-02-28 1996-11-05 Nec Corporation Hardware simulator capable of dealing with a description of a functional level
US5369593A (en) * 1989-05-31 1994-11-29 Synopsys Inc. System for and method of connecting a hardware modeling element to a hardware modeling system
US5353243A (en) * 1989-05-31 1994-10-04 Synopsys Inc. Hardware modeling system and method of use
US5091872A (en) * 1989-06-23 1992-02-25 At&T Bell Laboratories Apparatus and method for performing spike analysis in a logic simulator
US5247650A (en) * 1989-08-30 1993-09-21 Industrial Technology Institute System for combining originally software incompatible control, kinematic, and discrete event simulation systems into a single integrated simulation system
KR0158887B1 (ko) * 1990-01-12 1999-02-18 이노우에 키요시 논리 모의실험기
US5327361A (en) * 1990-03-30 1994-07-05 International Business Machines Corporation Events trace gatherer for a logic simulation machine
JPH05205005A (ja) * 1990-03-30 1993-08-13 Internatl Business Mach Corp <Ibm> ロジック・シミュレーション・マシン用ホスト・インタフェース
US5247651A (en) * 1990-04-17 1993-09-21 At&T Bell Laboratories Interactive computer program specification and simulation system
US5237514A (en) * 1990-12-21 1993-08-17 International Business Machines Corporation Minimizing path delay in a machine by compensation of timing through selective placement and partitioning
US5500808A (en) * 1991-01-24 1996-03-19 Synopsys, Inc. Apparatus and method for estimating time delays using unmapped combinational logic networks
US5442772A (en) * 1991-03-29 1995-08-15 International Business Machines Corporation Common breakpoint in virtual time logic simulation for parallel processors
JP2680947B2 (ja) * 1991-09-12 1997-11-19 三菱電機株式会社 テストタイミングプログラム自動生成装置
EP0598149B1 (en) * 1992-11-12 2000-01-19 Fujitsu Limited Hardware logic simulator
US5452239A (en) * 1993-01-29 1995-09-19 Quickturn Design Systems, Inc. Method of removing gated clocks from the clock nets of a netlist for timing sensitive implementation of the netlist in a hardware emulation system
JPH076142A (ja) * 1993-04-20 1995-01-10 Mitsubishi Electric Corp マルチエージェント協調システム及びその方法
JP3144950B2 (ja) * 1993-04-28 2001-03-12 富士通株式会社 論理シミュレーション方式
US5596505A (en) * 1993-07-23 1997-01-21 Vlsi Technology, Inc. Estimation of pin-to-pin timing for compiled blocks
US5680583A (en) * 1994-02-16 1997-10-21 Arkos Design, Inc. Method and apparatus for a trace buffer in an emulation system
US5495419A (en) * 1994-04-19 1996-02-27 Lsi Logic Corporation Integrated circuit physical design automation system utilizing optimization process decomposition and parallel processing
US5557533A (en) * 1994-04-19 1996-09-17 Lsi Logic Corporation Cell placement alteration apparatus for integrated circuit chip physical design automation system
US6155725A (en) * 1994-04-19 2000-12-05 Lsi Logic Corporation Cell placement representation and transposition for integrated circuit physical design automation system
US5875117A (en) * 1994-04-19 1999-02-23 Lsi Logic Corporation Simultaneous placement and routing (SPAR) method for integrated circuit physical design automation system
US5963975A (en) * 1994-04-19 1999-10-05 Lsi Logic Corporation Single chip integrated circuit distributed shared memory (DSM) and communications nodes
US5815403A (en) * 1994-04-19 1998-09-29 Lsi Logic Corporation Fail-safe distributive processing method for producing a highest fitness cell placement for an integrated circuit chip
US6493658B1 (en) 1994-04-19 2002-12-10 Lsi Logic Corporation Optimization processing for integrated circuit physical design automation system using optimally switched fitness improvement algorithms
US5914887A (en) * 1994-04-19 1999-06-22 Lsi Logic Corporation Congestion based cost factor computing apparatus for integrated circuit physical design automation system
US5920712A (en) * 1994-05-13 1999-07-06 Quickturn Design Systems, Inc. Emulation system having multiple emulator clock cycles per emulated clock cycle
GB9413127D0 (en) * 1994-06-30 1994-08-24 Philips Electronics Uk Ltd Data processing apparatus
US5838908A (en) * 1994-11-14 1998-11-17 Texas Instruments Incorporated Device for having processors each having interface for transferring delivery units specifying direction and distance and operable to emulate plurality of field programmable gate arrays
US5615127A (en) * 1994-11-30 1997-03-25 International Business Machines Corporation Parallel execution of a complex task partitioned into a plurality of entities
US5649164A (en) * 1994-12-30 1997-07-15 International Business Machines Corporation Sets and holds in virtual time logic simulation for parallel processors
US6058252A (en) * 1995-01-19 2000-05-02 Synopsys, Inc. System and method for generating effective layout constraints for a circuit design or the like
US5546562A (en) * 1995-02-28 1996-08-13 Patel; Chandresh Method and apparatus to emulate VLSI circuits within a logic simulator
US5632028A (en) * 1995-03-03 1997-05-20 Hal Computer Systems, Inc. Hardware support for fast software emulation of unimplemented instructions
US5923865A (en) * 1995-06-28 1999-07-13 Quickturn Design Systems, Inc. Emulation system having multiple emulated clock cycles per emulator clock cycle and improved signal routing
US5819065A (en) * 1995-06-28 1998-10-06 Quickturn Design Systems, Inc. System and method for emulating memory
US5868575A (en) * 1996-05-20 1999-02-09 Kuczewski; Robert M. Cooperative/interactive learning system for logic instruction
US5822564A (en) * 1996-06-03 1998-10-13 Quickturn Design Systems, Inc. Checkpointing in an emulation system
US5691910A (en) * 1996-06-10 1997-11-25 Lsi Logic Corporation Generic gate level model for characterization of glitch power in logic cells
US5872718A (en) * 1996-06-28 1999-02-16 Lsi Logic Corporation Advanced modular cell placement system
US5867398A (en) * 1996-06-28 1999-02-02 Lsi Logic Corporation Advanced modular cell placement system with density driven capacity penalty system
US5812740A (en) * 1996-06-28 1998-09-22 Lsi Logic Corporation Advanced modular cell placement system with neighborhood system driven optimization
US5831863A (en) * 1996-06-28 1998-11-03 Lsi Logic Corporation Advanced modular cell placement system with wire length driven affinity system
US6085032A (en) * 1996-06-28 2000-07-04 Lsi Logic Corporation Advanced modular cell placement system with sinusoidal optimization
US5808899A (en) * 1996-06-28 1998-09-15 Lsi Logic Corporation Advanced modular cell placement system with cell placement crystallization
US5870311A (en) * 1996-06-28 1999-02-09 Lsi Logic Corporation Advanced modular cell placement system with fast procedure for finding a levelizing cut point
US5963455A (en) * 1996-06-28 1999-10-05 Lsi Logic Corporation Advanced modular cell placement system with functional sieve optimization technique
US5835381A (en) * 1996-06-28 1998-11-10 Lsi Logic Corporation Advanced modular cell placement system with minimizing maximal cut driven affinity system
US5914888A (en) * 1996-06-28 1999-06-22 Lsi Logic Corporation Advanced modular cell placement system with coarse overflow remover
US5844811A (en) * 1996-06-28 1998-12-01 Lsi Logic Corporation Advanced modular cell placement system with universal affinity driven discrete placement optimization
US6030110A (en) * 1996-06-28 2000-02-29 Lsi Logic Corporation Advanced modular cell placement system with median control and increase in resolution
US5870312A (en) * 1996-06-28 1999-02-09 Lsi Logic Corporation Advanced modular cell placement system with dispersion-driven levelizing system
US6026223A (en) * 1996-06-28 2000-02-15 Scepanovic; Ranko Advanced modular cell placement system with overlap remover with minimal noise
US6067409A (en) * 1996-06-28 2000-05-23 Lsi Logic Corporation Advanced modular cell placement system
US5892688A (en) * 1996-06-28 1999-04-06 Lsi Logic Corporation Advanced modular cell placement system with iterative one dimensional preplacement optimization
US5886904A (en) * 1996-09-23 1999-03-23 Quickturn Design Systems, Inc. Latch optimization in hardware logic emulation systems
US5841967A (en) * 1996-10-17 1998-11-24 Quickturn Design Systems, Inc. Method and apparatus for design verification using emulation and simulation
US5980093A (en) * 1996-12-04 1999-11-09 Lsi Logic Corporation Integrated circuit layout routing using multiprocessing
US6141636A (en) * 1997-03-31 2000-10-31 Quickturn Design Systems, Inc. Logic analysis subsystem in a time-sliced emulator
US6321366B1 (en) 1997-05-02 2001-11-20 Axis Systems, Inc. Timing-insensitive glitch-free logic system and method
US6134516A (en) * 1997-05-02 2000-10-17 Axis Systems, Inc. Simulation server system and method
US6389379B1 (en) 1997-05-02 2002-05-14 Axis Systems, Inc. Converification system and method
US6026230A (en) * 1997-05-02 2000-02-15 Axis Systems, Inc. Memory simulation system and method
US6009256A (en) * 1997-05-02 1999-12-28 Axis Systems, Inc. Simulation/emulation system and method
US6421251B1 (en) 1997-05-02 2002-07-16 Axis Systems Inc Array board interconnect system and method
US5960191A (en) * 1997-05-30 1999-09-28 Quickturn Design Systems, Inc. Emulation system with time-multiplexed interconnect
US5970240A (en) * 1997-06-25 1999-10-19 Quickturn Design Systems, Inc. Method and apparatus for configurable memory emulation
US6141631A (en) * 1998-03-25 2000-10-31 Lsi Logic Corporation Pulse rejection circuit model program and technique in VHDL
US6618698B1 (en) * 1999-08-12 2003-09-09 Quickturn Design Systems, Inc. Clustered processors in an emulation engine
US6647349B1 (en) * 2000-03-31 2003-11-11 Intel Corporation Apparatus, method and system for counting logic events, determining logic event histograms and for identifying a logic event in a logic environment
US20020133325A1 (en) * 2001-02-09 2002-09-19 Hoare Raymond R. Discrete event simulator
US7260794B2 (en) * 2002-12-20 2007-08-21 Quickturn Design Systems, Inc. Logic multiprocessor for FPGA implementation
US7231336B2 (en) * 2003-08-25 2007-06-12 Legend Design Technology, Inc. Glitch and metastability checks using signal characteristics
US7684971B1 (en) * 2004-03-30 2010-03-23 Virtutech Ab Method and system for improving simulation performance
US7738398B2 (en) * 2004-06-01 2010-06-15 Quickturn Design Systems, Inc. System and method for configuring communication systems
US20070113219A1 (en) * 2005-11-17 2007-05-17 Microsoft Corporation Representing simulation values of variable in sharpley limited time and space
US7555424B2 (en) 2006-03-16 2009-06-30 Quickturn Design Systems, Inc. Method and apparatus for rewinding emulated memory circuits
DE102008051401B4 (de) * 2008-10-11 2010-08-05 Festo Ag & Co. Kg Trainings- und Simulationsgerät für elektrische Funktionsabläufe in elektrischen, elektromechanischen und elektrofluidischen Anlagen
US8166431B1 (en) * 2009-08-20 2012-04-24 Xilinx, Inc. Reducing startup time of an embedded system that includes an integrated circuit
US8595683B1 (en) 2012-04-12 2013-11-26 Cadence Design Systems, Inc. Generating user clocks for a prototyping environment
RU2685980C1 (ru) * 2018-08-24 2019-04-23 Негосударственная автономная некоммерческая организация высшего образования "Институт мировых цивилизаций" Устройство для моделирования графика работы сотрудников учреждения

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3308285A (en) * 1963-04-19 1967-03-07 Rca Corp Logic networks for realizing associative logic functions
US3278732A (en) * 1963-10-29 1966-10-11 Ibm High speed multiplier circuit
GB1101851A (en) * 1965-01-20 1968-01-31 Ncr Co Generalized logic circuitry
US3381117A (en) * 1965-08-02 1968-04-30 Ibm Minimal pin multipurpose logic circuits
US3458240A (en) * 1965-12-28 1969-07-29 Sperry Rand Corp Function generator for producing the possible boolean functions of eta independent variables
US3544973A (en) * 1968-03-13 1970-12-01 Westinghouse Electric Corp Variable structure computer
US3614745A (en) * 1969-09-15 1971-10-19 Ibm Apparatus and method in a multiple operand stream computing system for identifying the specification of multitasks situations and controlling the execution thereof
DE2106257A1 (de) * 1971-02-10 1972-08-24 Philips Patentverwaltung Computer-Lehrspiel
US3810114A (en) * 1971-12-29 1974-05-07 Tokyo Shibaura Electric Co Data processing system
US4087794A (en) * 1973-01-02 1978-05-02 International Business Machines Corporation Multi-level storage hierarchy emulation monitor
US3913070A (en) * 1973-02-20 1975-10-14 Memorex Corp Multi-processor data processing system
DE2321200C3 (de) * 1973-04-26 1984-01-26 Siemens AG, 1000 Berlin und 8000 München Schaltungsanordnung zur Durchführung logischer, durch Boolesche Gleichungen dargestellter Verknüpfungen
US3944985A (en) * 1973-10-19 1976-03-16 Texas Instruments Incorporated Workspace addressing system
FR2258113A5 (ja) * 1973-11-30 1975-08-08 Honeywell Bull Soc Ind
GB1474385A (en) * 1973-12-14 1977-05-25 Int Computers Ltd Multiprocessor data processing systems
US4050058A (en) * 1973-12-26 1977-09-20 Xerox Corporation Microprocessor with parallel operation
US4065808A (en) * 1975-01-25 1977-12-27 U.S. Philips Corporation Network computer system
JPS51117833A (en) * 1975-04-09 1976-10-16 Hitachi Ltd Group control system
US4015246A (en) * 1975-04-14 1977-03-29 The Charles Stark Draper Laboratory, Inc. Synchronous fault tolerant multi-processor system
SE7505552L (sv) * 1975-05-14 1976-11-15 Ellemtel Utvecklings Ab Sett och anordning att efter varandra avverka databehandlingsinstruktioner i funktionsenheter hos en datamaskin
US4079455A (en) * 1976-12-13 1978-03-14 Rca Corporation Microprocessor architecture
US4306286A (en) * 1979-06-29 1981-12-15 International Business Machines Corporation Logic simulation machine

Also Published As

Publication number Publication date
EP0096176A3 (en) 1986-02-05
EP0096176A2 (en) 1983-12-21
JPS58222355A (ja) 1983-12-24
EP0096176B1 (en) 1989-09-20
DE3380603D1 (en) 1989-10-26
US4656580A (en) 1987-04-07

Similar Documents

Publication Publication Date Title
JPS633344B2 (ja)
US4306286A (en) Logic simulation machine
US5594741A (en) Method for control of random test vector generation
US4787062A (en) Glitch detection by forcing the output of a simulated logic device to an undefined state
US5384720A (en) Logic circuit simulator and logic simulation method having reduced number of simulation events
US7769577B2 (en) Hardware accelerator with a single partition for latches and combinational logic
US8947954B2 (en) Random access memory for use in an emulation environment
JPH05257710A (ja) 内部実行パラメータを与えるためのシステムおよびプロセッサによって実行されるべき命令を検証するための配列
JPH04233040A (ja) コンピュータプログラム実行シミュレーションシステム
JPS6141017B2 (ja)
US7062735B2 (en) Clock edge value calculation in hardware simulation
US11106846B1 (en) Systems and methods for emulation data array compaction
US7130784B2 (en) Logic simulation
JP2001256048A (ja) データ処理装置のシミュレーション
US6789242B1 (en) Method and system for integrated circuit design and diagnosis
US7246053B2 (en) Method for transforming behavioral architectural and verification specifications into cycle-based compliant specifications
US11048843B1 (en) Dynamic netlist modification of compacted data arrays in an emulation system
Döhmen et al. Translating VHDL into functional symbolic finite-state models
Hassoun et al. Experiments in the iterative application of resynthesis and retiming
JP3048969B2 (ja) サイクルベースシミュレータ
EP0450837A2 (en) Logic simulation
US10133835B1 (en) System and method for computationally optimized characterization of complex logic cells
Szygenda et al. Implemented techniques for handling spikes in an assignable delay simulator
KR20050061268A (ko) 대용량메모리와 컴파일 회피를 이용한 하드웨어기반검증의 성능 향상 장치 및 이를 이용한 설계 검증 방법
EP0483965A2 (en) Logic simulation