JPS60218138A - 事象駆動形アルゴリズムを実行するコンピユータ装置 - Google Patents
事象駆動形アルゴリズムを実行するコンピユータ装置Info
- Publication number
- JPS60218138A JPS60218138A JP60061026A JP6102685A JPS60218138A JP S60218138 A JPS60218138 A JP S60218138A JP 60061026 A JP60061026 A JP 60061026A JP 6102685 A JP6102685 A JP 6102685A JP S60218138 A JPS60218138 A JP S60218138A
- Authority
- JP
- Japan
- Prior art keywords
- computer
- bus
- memory
- processor
- processors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔利用分野〕
本発明は、事象駆動形アルゴリズムを実行するコンピュ
ータ装置に関する。
ータ装置に関する。
過去10年間、コンピュータによる設計は、電子回路の
設計等、多くの分野で一般に行なわれるようになってき
た。実際、今日では、検証(verif 1eatio
n)設計ツールなしで、大規模集積回路を開発すること
は困難で、おそらく経済的にも不可能であろう。
設計等、多くの分野で一般に行なわれるようになってき
た。実際、今日では、検証(verif 1eatio
n)設計ツールなしで、大規模集積回路を開発すること
は困難で、おそらく経済的にも不可能であろう。
たとえば、多数の素子を有する回路を“ブレッドボード
に組むこと°′は、膨大な作業であり、しかも回路を製
造前に検証しなかった場合、マスクに対してひんばんに
修正を行なわなければならず実際的ではない。
に組むこと°′は、膨大な作業であり、しかも回路を製
造前に検証しなかった場合、マスクに対してひんばんに
修正を行なわなければならず実際的ではない。
現在、システムをエミュレートするための多く7−
のワークステーションまたは他の装置がある。本発明は
、カリフォルニア州ブニーバルのディジー・システム・
コーボレー7ヨン製の商11rLoglcianJとい
う名で販売されているワークステーションの1つに関連
して使用される。この従来装置とこの装置が実行するア
ルゴリズムについては、第1図。
、カリフォルニア州ブニーバルのディジー・システム・
コーボレー7ヨン製の商11rLoglcianJとい
う名で販売されているワークステーションの1つに関連
して使用される。この従来装置とこの装置が実行するア
ルゴリズムについては、第1図。
第3図および第4図に関して説明される。一般に、本発
明は、専用コンピュータにおいて事象(event)駆
動形シミュレーションアルゴリズムを実行する。
明は、専用コンピュータにおいて事象(event)駆
動形シミュレーションアルゴリズムを実行する。
シミュレーションアルゴリズムを実行するだめの専用コ
ンピュータを開示した最近の従来例としては次のものが
挙げられる。
ンピュータを開示した最近の従来例としては次のものが
挙げられる。
(+) 1983年4月、集積回路及びシステムのコン
ピュータによる設計に関するI EEE誌のVo l
、 CAD−2,No−2,アブラモビシ(Abram
ovici)民地による「論理シミュレーションマシン
」と題する論文。本発明は、この論文において示された
アルゴリズムと同様のアルゴリズムを実行する。しかし
、本発明で使用しているパーティショニングは、この論
文におけるものとは実質的に異なっている。
ピュータによる設計に関するI EEE誌のVo l
、 CAD−2,No−2,アブラモビシ(Abram
ovici)民地による「論理シミュレーションマシン
」と題する論文。本発明は、この論文において示された
アルゴリズムと同様のアルゴリズムを実行する。しかし
、本発明で使用しているパーティショニングは、この論
文におけるものとは実質的に異なっている。
8−
(ii) 1982年11月、ZYCADコーポレーシ
ョンのマニュアルに示された「ZYCAD論理算出装置
」と題する論文。この装置もまた本発明とは異なるパー
ティショニングを使用している。さらに、この装置は、
コンピュータがマイクロコードプログラム可能であると
いう本発明におけるフレキンビリティを有していない。
ョンのマニュアルに示された「ZYCAD論理算出装置
」と題する論文。この装置もまた本発明とは異なるパー
ティショニングを使用している。さらに、この装置は、
コンピュータがマイクロコードプログラム可能であると
いう本発明におけるフレキンビリティを有していない。
(iiD 1983年12月15日、エレクトロニクス
(Electronics)誌の第147頁に示された
ハヮード(Howard)民地による「複雑なVSLI
論理装置を相互にシミュレートする並列処理」と題する
論文。この論文は、事象駆動形でない別のアルゴリズム
の実行について述べている。また、ここでは、本発明と
は異なるアーキテクチユア及びパーティショニングが使
用されている(なお、本出願人は、この論文を本発明の
従来技術であるとは思わないが、この論文の内容を使用
したコンピュータハ従来存在していると考える)。
(Electronics)誌の第147頁に示された
ハヮード(Howard)民地による「複雑なVSLI
論理装置を相互にシミュレートする並列処理」と題する
論文。この論文は、事象駆動形でない別のアルゴリズム
の実行について述べている。また、ここでは、本発明と
は異なるアーキテクチユア及びパーティショニングが使
用されている(なお、本出願人は、この論文を本発明の
従来技術であるとは思わないが、この論文の内容を使用
したコンピュータハ従来存在していると考える)。
本発明は、集積回路またはデイジタルクステム等のシス
テムをシミュレートする事象駆動形アルゴリズムを実行
するためのコンピュータに関する。
テムをシミュレートする事象駆動形アルゴリズムを実行
するためのコンピュータに関する。
このコンピュータは、第1.第2.第3プロセツサを有
し、本実施例ではこれらはほとんど同じものである。単
方向バスは、これらプロセッサのそれぞれを相互接続し
ている。たとえば、第1プロセツプは信号を第2プロセ
ツサに送シ、第2プロセツサは第3プロセツサに、第3
ブロセツブは第1プロセツサに信号を送る。第1プロセ
ツブは、所定のインターバルで、シミュレートされるシ
ステムの状態を記憶するだめの第1メモリを有している
。実際には、このメモリは、一般的回路の7ミユレー/
ヨンにおいて使用される“ファン アウト”表も記憶す
る。第2プロセンブのメモリは、システムの各素子の動
作特性の一部(たとえばゲートの真理値表)を記憶する
。第3プロセツサは、システムにおける変化が生じるで
あろうインターバルまたはこれら変化が生じているイン
ターバル(すなわち、あるゲートの出力が変化する時間
)を表わす情報を記憶し、さらに各ゲートに関する遅れ
を記憶する。情報は、これら3つのプロセッサを介して
パイプラインされ、これらプロセッサは、他方のプロセ
ッサから受信した信号に応じて、各メモリの内容で同時
に動作する。
し、本実施例ではこれらはほとんど同じものである。単
方向バスは、これらプロセッサのそれぞれを相互接続し
ている。たとえば、第1プロセツプは信号を第2プロセ
ツサに送シ、第2プロセツサは第3プロセツサに、第3
ブロセツブは第1プロセツサに信号を送る。第1プロセ
ツブは、所定のインターバルで、シミュレートされるシ
ステムの状態を記憶するだめの第1メモリを有している
。実際には、このメモリは、一般的回路の7ミユレー/
ヨンにおいて使用される“ファン アウト”表も記憶す
る。第2プロセンブのメモリは、システムの各素子の動
作特性の一部(たとえばゲートの真理値表)を記憶する
。第3プロセツサは、システムにおける変化が生じるで
あろうインターバルまたはこれら変化が生じているイン
ターバル(すなわち、あるゲートの出力が変化する時間
)を表わす情報を記憶し、さらに各ゲートに関する遅れ
を記憶する。情報は、これら3つのプロセッサを介して
パイプラインされ、これらプロセッサは、他方のプロセ
ッサから受信した信号に応じて、各メモリの内容で同時
に動作する。
本実施例においては、各プロセッサは、初期設定の際、
マイクロコードによりプログラムされる。
マイクロコードによりプログラムされる。
従って、コンピュータは、異なるシミュレーションに対
して最適化されるというフレキシビリティを有している
。
して最適化されるというフレキシビリティを有している
。
以下、添付の図面に基づいて、本発明の実施例について
説明する。
説明する。
シミュレーションアルゴリズムを実行する本発明ノコン
ピュータは、回路設計をシミュレートするのに判に有効
である。以下の説明において、ライン数等、多くの特定
な記載は、本発明の理解を助けるだめのものであり、本
発明はこれら記載に限定されないことは、当業者には明
白であろう。
ピュータは、回路設計をシミュレートするのに判に有効
である。以下の説明において、ライン数等、多くの特定
な記載は、本発明の理解を助けるだめのものであり、本
発明はこれら記載に限定されないことは、当業者には明
白であろう。
また、周知の回路及び構造については、本発明を不必要
に不明瞭なものとしないよう省略する。な11− お、本発明は回路シミュレーション用の判定のアルゴリ
ズムに関して述べられているが、“プレースメント及び
ルーチングパアルゴリズムのような他のアルゴリズムに
対しても使用できる。
に不明瞭なものとしないよう省略する。な11− お、本発明は回路シミュレーション用の判定のアルゴリ
ズムに関して述べられているが、“プレースメント及び
ルーチングパアルゴリズムのような他のアルゴリズムに
対しても使用できる。
従来のシミュレーションアルゴリズム センタリング本
発明を理解するために、先ず従来のシミュレーションア
ルゴリズムについて説明する。本発明は、この従来のア
ルゴリズムと同様のアルゴリズムを実行する。
発明を理解するために、先ず従来のシミュレーションア
ルゴリズムについて説明する。本発明は、この従来のア
ルゴリズムと同様のアルゴリズムを実行する。
第3図には、2つのANDゲート77.78が示されて
いる。ANDゲート77への入力はノード76.79で
、かつ訃のゲート78への入力はノード72.73であ
る。ゲート78の出力はラインすなわちノード74であ
る。説明上、ゲート77は20ユニツトの遅れを有し、
ゲート78は10ユニツトの遅れを有していると仮定す
る。
いる。ANDゲート77への入力はノード76.79で
、かつ訃のゲート78への入力はノード72.73であ
る。ゲート78の出力はラインすなわちノード74であ
る。説明上、ゲート77は20ユニツトの遅れを有し、
ゲート78は10ユニツトの遅れを有していると仮定す
る。
第4図のフローチャートで示したアルゴリズムは、第3
図の回路のような回路をシミュレートするのに使用され
るが、実際には、何百何千ものゲートを有するはるかに
複雑な回路をシミュレート12− する。
図の回路のような回路をシミュレートするのに使用され
るが、実際には、何百何千ものゲートを有するはるかに
複雑な回路をシミュレート12− する。
従来技術では、シミュレーションを開始する前に、シミ
ュレートされる回路を、先ず所定の方法で(ディジタル
的に)表示する。この表示では、各ノードの“ファンア
ウト°′(ゲートエントリ表として引用される場合があ
る)が示される。これは、全接続を基本的に示している
。たとえば、第3図においては、ゲート77の出力(ノ
ード72)はゲート78の一方の入力端子に接続してい
るが、このノードに接続した他のゲートがある場合、こ
れらが示される。同様に、ノード73,74,76゜7
9に関し、これらノードに接続した他のゲートも示され
る(第3図にはこのような接続は示されていない)。回
路表示は、各素子の動作特性も含んでいる。ゲート77
においては、記憶された特性は、両人力が高い(真理値
表で)場合ゲートの出力は高くなり、かつゲート77は
20ユニツトの遅れを有していることを衣わす。同様に
、ゲート78に関し、このゲートのエントリは、両方の
入力が高い場合出力は高くなりかつゲートが10ユニッ
トの遅れを有していることを表わす。また、全ノードの
状態は、後述するように記憶されかつ更新される。これ
は“ステートアレイ゛°トシて示されている。
ュレートされる回路を、先ず所定の方法で(ディジタル
的に)表示する。この表示では、各ノードの“ファンア
ウト°′(ゲートエントリ表として引用される場合があ
る)が示される。これは、全接続を基本的に示している
。たとえば、第3図においては、ゲート77の出力(ノ
ード72)はゲート78の一方の入力端子に接続してい
るが、このノードに接続した他のゲートがある場合、こ
れらが示される。同様に、ノード73,74,76゜7
9に関し、これらノードに接続した他のゲートも示され
る(第3図にはこのような接続は示されていない)。回
路表示は、各素子の動作特性も含んでいる。ゲート77
においては、記憶された特性は、両人力が高い(真理値
表で)場合ゲートの出力は高くなり、かつゲート77は
20ユニツトの遅れを有していることを衣わす。同様に
、ゲート78に関し、このゲートのエントリは、両方の
入力が高い場合出力は高くなりかつゲートが10ユニッ
トの遅れを有していることを表わす。また、全ノードの
状態は、後述するように記憶されかつ更新される。これ
は“ステートアレイ゛°トシて示されている。
シミュレーションは、とこでは“ユニット′°トして示
される時間(たとえば、n5ec)を表わす所定のイン
ターバルで進行スる。
される時間(たとえば、n5ec)を表わす所定のイン
ターバルで進行スる。
一般に、シミュレーションには、分析されるシステムを
生かすだめの初期状態すなわち初期入力がある。第3図
の回路において、時間1でライン79の電位は高くなり
、時間10でノード76の電位は高くなシ、かつ時間4
0でノード73の電位が高くなると仮定する。
生かすだめの初期状態すなわち初期入力がある。第3図
の回路において、時間1でライン79の電位は高くなり
、時間10でノード76の電位は高くなシ、かつ時間4
0でノード73の電位が高くなると仮定する。
第4図における、第1ステツプ80において、時間をO
から1にインクリメントする。ステップ81において、
時間1で発生する事象をメモリから読出す。時間1にお
いて、ノード79は高くなる(これはあらかじめ時間1
において記憶される)。
から1にインクリメントする。ステップ81において、
時間1で発生する事象をメモリから読出す。時間1にお
いて、ノード79は高くなる(これはあらかじめ時間1
において記憶される)。
ステップ82は、ステートアレイを更新し、ノード79
が現在高いことを表わす。ステップ83において、ノー
ド79の“ファンアウト°゛がリストされる。すなわち
、たとえばノード79が他のゲートの入力に接続されて
いるならば、これら他のゲートの入力が変化したという
ことがメモリに記憶される。ステップ84は、現在の時
点、すなわち時間1で他の事象があるかどうかを決定す
る。
が現在高いことを表わす。ステップ83において、ノー
ド79の“ファンアウト°゛がリストされる。すなわち
、たとえばノード79が他のゲートの入力に接続されて
いるならば、これら他のゲートの入力が変化したという
ことがメモリに記憶される。ステップ84は、現在の時
点、すなわち時間1で他の事象があるかどうかを決定す
る。
たとえば、第3図においてはこのような事象はなく、従
ってステップ85に進む。時間1において生じる他の事
象がある場合には、この時間で生じる全事象について考
察するまでステップ81〜84が繰返される。
ってステップ85に進む。時間1において生じる他の事
象がある場合には、この時間で生じる全事象について考
察するまでステップ81〜84が繰返される。
ステップ85において、入力が変化した各ゲートについ
て調べる。ゲートのこのリストは、上述したステップ8
3で得られる(なお、上述したアルゴリズムにおいて、
入力が変化したゲートタケが考察される。従って、アル
ゴリズムは“事象(’event)駆動形′°であると
言える)。たとえば、ゲート770入力が変化した場合
、ステップ86において、このゲートの出力が考察され
る。ライン76の電位は、まだ低いため、ゲートからの
変15− 化はない。従って、ステップ87の後、ステップ89に
進む。この時リストにはもうゲートはないので、ステッ
プ80に戻る。
て調べる。ゲートのこのリストは、上述したステップ8
3で得られる(なお、上述したアルゴリズムにおいて、
入力が変化したゲートタケが考察される。従って、アル
ゴリズムは“事象(’event)駆動形′°であると
言える)。たとえば、ゲート770入力が変化した場合
、ステップ86において、このゲートの出力が考察され
る。ライン76の電位は、まだ低いため、ゲートからの
変15− 化はない。従って、ステップ87の後、ステップ89に
進む。この時リストにはもうゲートはないので、ステッ
プ80に戻る。
ステップ80において、時間は、時間2にインクリメン
トされる。この時間においては待ち行列に入れられて待
機する新しい事象がないので、その時間において記憶さ
れた事象があるまで、時間はインクリメントされる。た
とえば、本実施例では、これは、ノード76の入力が上
昇する時間1゜において生じる。従って、ステップ81
は、時間10においてライン76の電位が上昇すること
を決定する(事象は“時間゛で記憶嘔れる)。ステップ
82において、ステートアレイは更新され、ノード76
が現在高いことを表す(あらがじめ、時間1vCおいて
、アレイは更新されノード79が高いことを表わしてい
る)。ステップ83においては、この場合ノード76′
はゲート77だけに接続しているので、ゲート77だけ
から成るファンアウトリストが準備でれる。ステップ8
4では、時間10において記憶された他の事象がないこ
と16− を決定し、次のステップ85に進む。ここでは、ステッ
プ83においてリストてれたゲートが一度に一つ選択さ
れる。たとえば、ゲート77が選択され、かつステップ
86においてその出力が、あらかじ応記憶された特性(
たとえば真理値表)から算出される。この場合ゲート7
7の両人カは高いので、その出力も高い。ステップ87
においては、出力が変化したので、ステップ88に進む
。
トされる。この時間においては待ち行列に入れられて待
機する新しい事象がないので、その時間において記憶さ
れた事象があるまで、時間はインクリメントされる。た
とえば、本実施例では、これは、ノード76の入力が上
昇する時間1゜において生じる。従って、ステップ81
は、時間10においてライン76の電位が上昇すること
を決定する(事象は“時間゛で記憶嘔れる)。ステップ
82において、ステートアレイは更新され、ノード76
が現在高いことを表す(あらがじめ、時間1vCおいて
、アレイは更新されノード79が高いことを表わしてい
る)。ステップ83においては、この場合ノード76′
はゲート77だけに接続しているので、ゲート77だけ
から成るファンアウトリストが準備でれる。ステップ8
4では、時間10において記憶された他の事象がないこ
と16− を決定し、次のステップ85に進む。ここでは、ステッ
プ83においてリストてれたゲートが一度に一つ選択さ
れる。たとえば、ゲート77が選択され、かつステップ
86においてその出力が、あらかじ応記憶された特性(
たとえば真理値表)から算出される。この場合ゲート7
7の両人カは高いので、その出力も高い。ステップ87
においては、出力が変化したので、ステップ88に進む
。
ゲート77は20ユニット時間の遅れを有し、従って、
その出力(ノード72)は、現在考慮されにおける電位
の上昇を表わす。リストには他のゲートはないので、ス
テップ80に戻る。
その出力(ノード72)は、現在考慮されにおける電位
の上昇を表わす。リストには他のゲートはないので、ス
テップ80に戻る。
時間10と時間29との間には事象は待ち行列に置かれ
ていない。時間30において、ステップ81で、ノード
72の電位は上昇する。ステートアレイは更新され、ノ
ード72が現在高く(ステップ82)かつこのノードに
接続1〜だゲート(本実施例ではゲート78だけ)のリ
ストが作られる 。
ていない。時間30において、ステップ81で、ノード
72の電位は上昇する。ステートアレイは更新され、ノ
ード72が現在高く(ステップ82)かつこのノードに
接続1〜だゲート(本実施例ではゲート78だけ)のリ
ストが作られる 。
ことを表示する。プロセスはステップ85,86゜87
に進み、ゲート78の出力に変化はなくかつリストには
もうゲートはないので、ステップ80に戻る。
に進み、ゲート78の出力に変化はなくかつリストには
もうゲートはないので、ステップ80に戻る。
時間40において、次の事象がスケジュールされる。こ
の時間、待ち行列は、ノード73の電位が上昇すること
を表わしている。ステートアレイは更新され、かつこの
場合ゲート78だけであるファンアウトリストが作られ
る(ステップ83)。
の時間、待ち行列は、ノード73の電位が上昇すること
を表わしている。ステートアレイは更新され、かつこの
場合ゲート78だけであるファンアウトリストが作られ
る(ステップ83)。
ステップ86において、ゲート78の出力が変化するか
を決定しかつステップ88において、事象が記憶されて
、時間50において(ゲート78に10ユニツトの遅れ
がめる)ゲート78の出力電位が上昇することを表示す
る。ここでステップ80へ戻る。
を決定しかつステップ88において、事象が記憶されて
、時間50において(ゲート78に10ユニツトの遅れ
がめる)ゲート78の出力電位が上昇することを表示す
る。ここでステップ80へ戻る。
時間50において、ステートアレイは更新され、ライン
74の電位が上昇することを表示する。第3図の回路で
初期状態において、ノード74に状態変化がいつ発生し
たかを知りたい場合、たとえばディスプレイまたはプリ
ンタにより知ることができる。
74の電位が上昇することを表示する。第3図の回路で
初期状態において、ノード74に状態変化がいつ発生し
たかを知りたい場合、たとえばディスプレイまたはプリ
ンタにより知ることができる。
実際には、第4図に示したステップは、極めて急速に行
なわれる。たとえば、80286マイクロプロセツプを
使用した場合、各秒ごとに上記何百何千ものステップが
行なわれる。そうでないと、非常に大きな回路ではシミ
ュレーションVCかなりの時間(たとえば何分もの時間
)を要してしまう。
なわれる。たとえば、80286マイクロプロセツプを
使用した場合、各秒ごとに上記何百何千ものステップが
行なわれる。そうでないと、非常に大きな回路ではシミ
ュレーションVCかなりの時間(たとえば何分もの時間
)を要してしまう。
本発明のコンピュータは、専用コンピュータにおいて、
第4図に示したアルゴリズムと同様のアルゴリズムを実
行し、汎用マイクロコンピュータによるよりも何倍も速
く7ミユレー/ヨンを行なうことができるものである。
第4図に示したアルゴリズムと同様のアルゴリズムを実
行し、汎用マイクロコンピュータによるよりも何倍も速
く7ミユレー/ヨンを行なうことができるものである。
従来の“ロジシャン゛′シミュレータ センタリング第
1図のライン25から上には、第4図のアルゴリズムを
実行する従来の論理シミュレータが水式れている。この
シミュレータは、“ロジゾヤン″という商標でディジー
・システム・コーポレーションによシ市販されているワ
ークステーションで動作する。一般に、このステー7ョ
ンは“マルチパス′°であるバス26を含んでいる。こ
のバスは、19− ディスクシステム30、マイクロプロセッサボード(C
PU)27 (部品番号8086または80286 )
。
1図のライン25から上には、第4図のアルゴリズムを
実行する従来の論理シミュレータが水式れている。この
シミュレータは、“ロジゾヤン″という商標でディジー
・システム・コーポレーションによシ市販されているワ
ークステーションで動作する。一般に、このステー7ョ
ンは“マルチパス′°であるバス26を含んでいる。こ
のバスは、19− ディスクシステム30、マイクロプロセッサボード(C
PU)27 (部品番号8086または80286 )
。
システムメモリ28.及びユーザインターフェイス用の
ビデオディスプレイ29に接続している。
ビデオディスプレイ29に接続している。
第4図のアルゴリズムは、CPU27により実施される
ソフトウェアにおいて実行される。
ソフトウェアにおいて実行される。
本発明では、第4図と同様のアルゴリズムは、ライン2
5の下に示したコンピュータにおいて実行される。ライ
ン25から上のシステムは、アルコリスムノ実行以外ハ
、シミュレーションマシンにより一般に実施式れる全機
能を行なうマスクコンピュータとして動作する。アルゴ
リズムの実行に関しては、本発明はスレーブコンピュー
タとして動作する。すなわち、その動作はマスクコンピ
ュータによシ指示でれる。
5の下に示したコンピュータにおいて実行される。ライ
ン25から上のシステムは、アルコリスムノ実行以外ハ
、シミュレーションマシンにより一般に実施式れる全機
能を行なうマスクコンピュータとして動作する。アルゴ
リズムの実行に関しては、本発明はスレーブコンピュー
タとして動作する。すなわち、その動作はマスクコンピ
ュータによシ指示でれる。
本発明装置の概要 −センタリング
第1図において、本発明のコンピュータは、3つのプロ
セスv39,40.41を有している。
セスv39,40.41を有している。
プロセッサ39,40.41は、双方向バス54゜56
.55により相互接続され、それぞれマルチ20− バス36からのデータ及びアドレスを受信する。
.55により相互接続され、それぞれマルチ20− バス36からのデータ及びアドレスを受信する。
標準16ビツトバスであるマルチパス36は、マスタイ
ンターフェイス34およびスレーブインターフェイス3
5を介してマスクコンピュータのマルチパス26に接続
されている。これらマルチパスとインターフェイス34
.35は、標準的な周知の回路を使用している。本実施
例では、マルチパス35.36は同期して作動される。
ンターフェイス34およびスレーブインターフェイス3
5を介してマスクコンピュータのマルチパス26に接続
されている。これらマルチパスとインターフェイス34
.35は、標準的な周知の回路を使用している。本実施
例では、マルチパス35.36は同期して作動される。
マルチパス36は、マルチパスインター7エイスユニツ
ト58を介して各プロセッサに接続されている。プロセ
ッサは、マルチパス36と接続している他、プロセッサ
間にリングを形成する単方向バスを介して相互に接続し
ている。第1プロセツサ39はバス50によシ第2プロ
センv40に接続し、第2プロセツサ40はバス51に
より第3プロセツサ41に接続し、第3プロセツサ41
はバス49により第1プロセツサ39に接続している。
ト58を介して各プロセッサに接続されている。プロセ
ッサは、マルチパス36と接続している他、プロセッサ
間にリングを形成する単方向バスを介して相互に接続し
ている。第1プロセツサ39はバス50によシ第2プロ
センv40に接続し、第2プロセツサ40はバス51に
より第3プロセツサ41に接続し、第3プロセツサ41
はバス49により第1プロセツサ39に接続している。
プロセラ+j39,40.41は、それぞれメモリ43
.45.46を含んでいる。各メモリは、それぞれ32
0に一24ピットワードを記憶する複数のメモリポート
を有している。これらメモリは普通のダイナミック−ラ
ンダム アクセス メモリから成っている。
.45.46を含んでいる。各メモリは、それぞれ32
0に一24ピットワードを記憶する複数のメモリポート
を有している。これらメモリは普通のダイナミック−ラ
ンダム アクセス メモリから成っている。
各プロセッサは本実施例においては等しいが、それぞれ
、初期設定において独判のマイクロコードがロードでれ
、従ってそれぞれ異なる機能を実施スル。プロセッサ3
9は“ステートユニット″(SU)として示はれている
。メモリ43は上述したステートアレイとファンアウト
表を記憶する。
、初期設定において独判のマイクロコードがロードでれ
、従ってそれぞれ異なる機能を実施スル。プロセッサ3
9は“ステートユニット″(SU)として示はれている
。メモリ43は上述したステートアレイとファンアウト
表を記憶する。
アクセス+j40は算出ユニット(EU)として示され
、かつそれのメモリ45は、ゲートの真理値表のような
、シミュレートでれるシステムの素子の動作判性を記憶
する。メモリ46を有するプロセッサ41すなわち待ち
行列ユニットすなわちキューユニツ) (QU)は、ア
ルゴリズムを駆動する事象やゲートの遅延時間等を記憶
する。
、かつそれのメモリ45は、ゲートの真理値表のような
、シミュレートでれるシステムの素子の動作判性を記憶
する。メモリ46を有するプロセッサ41すなわち待ち
行列ユニットすなわちキューユニツ) (QU)は、ア
ルゴリズムを駆動する事象やゲートの遅延時間等を記憶
する。
後述するように、各プロセッサは、バス49゜50.5
1によりそれらの間でパイプラインされる情報で同時に
動作する。本実施例では、プロセッサは、共通りロック
からの6.7mHzのクロックレートで動作する。
1によりそれらの間でパイプラインされる情報で同時に
動作する。本実施例では、プロセッサは、共通りロック
からの6.7mHzのクロックレートで動作する。
本発明のコンピュータにおいて使用式れるプロセッサの
説明上述したように、使用されている3つのプロセッサ
は同じものである。第2図に示すように、各プロセッサ
は内部バス60を有している。このバスハ、マルチパス
インターフェイスユニット58によりマルチパス36に
接続している。内部双方向24−ビットデータバスは、
先入れ先出しくFIFO)入力バッファ65に接続して
いる。このバッファは、他のプロセッサの一つからのデ
ータを受信する。たとえば、第1図のプロセッサ40の
場合、バッファ65はバス50に接続している。このプ
ロセッサは先入れ先出しバッファ66も含んでいる。こ
のバッファは内部データバス60を次のユニットに環状
に接続し、たとえばプロセン+j40め場合では、バス
51に接続している。バッファ66は256X24ピン
トの“エラスチック”′メモリ(第7a図、第7b図、
および第7c図参照)を含んでいる。このメモリは、次
のプロセッサへ送られるデータを一時記憶し、プロセッ
サ間での速度差を補償する。上述したように、プロセッ
サは共通りロックで動作するが、動作を完了するのに特
定のプロセッサが必要とする時間は、関連動作を完了す
るのに他のプロセッサが必要とする時間とは同じではな
い。
説明上述したように、使用されている3つのプロセッサ
は同じものである。第2図に示すように、各プロセッサ
は内部バス60を有している。このバスハ、マルチパス
インターフェイスユニット58によりマルチパス36に
接続している。内部双方向24−ビットデータバスは、
先入れ先出しくFIFO)入力バッファ65に接続して
いる。このバッファは、他のプロセッサの一つからのデ
ータを受信する。たとえば、第1図のプロセッサ40の
場合、バッファ65はバス50に接続している。このプ
ロセッサは先入れ先出しバッファ66も含んでいる。こ
のバッファは内部データバス60を次のユニットに環状
に接続し、たとえばプロセン+j40め場合では、バス
51に接続している。バッファ66は256X24ピン
トの“エラスチック”′メモリ(第7a図、第7b図、
および第7c図参照)を含んでいる。このメモリは、次
のプロセッサへ送られるデータを一時記憶し、プロセッ
サ間での速度差を補償する。上述したように、プロセッ
サは共通りロックで動作するが、動作を完了するのに特
定のプロセッサが必要とする時間は、関連動作を完了す
るのに他のプロセッサが必要とする時間とは同じではな
い。
メモリアドレスジェネレータおよびインターフェイス論
理のユニット67は、内部データバス60をプロセッサ
のメモリに接続している。このユニットは、第8a図及
び第8b図に詳細に示でれている。ユニット67はRA
M69からの(ランチ70を介した)マイクロコードと
、バス60のアドレスに基づいた24ピツトアドレスを
形成する。
理のユニット67は、内部データバス60をプロセッサ
のメモリに接続している。このユニットは、第8a図及
び第8b図に詳細に示でれている。ユニット67はRA
M69からの(ランチ70を介した)マイクロコードと
、バス60のアドレスに基づいた24ピツトアドレスを
形成する。
プロセッサの算術演算は、演算装置(ALU62)によ
り行なわれる。この24ピツトユニツトハ、関連制御装
置、ラッチ等を有する標準的な市販のTTL部品(74
8382)である。8×24ビツトの容量を有するレジ
スタファイル63も−tたバス60に接続している。こ
れは、読出し及び異なる場所への書込みが同時に行なえ
、かつ標準的な部品(74LS670 )を使用した普
通のファイルである。
り行なわれる。この24ピツトユニツトハ、関連制御装
置、ラッチ等を有する標準的な市販のTTL部品(74
8382)である。8×24ビツトの容量を有するレジ
スタファイル63も−tたバス60に接続している。こ
れは、読出し及び異なる場所への書込みが同時に行なえ
、かつ標準的な部品(74LS670 )を使用した普
通のファイルである。
各プロセッサは、そのマイクロコードにより制御される
。このマイクロコードハ、4KX36 ヒツトの容量を
有するRAM69に記憶されている。これは、初期設定
時にバス36を介してマスタコンピュータによりロード
される。マイクロコードアドレス及び飛越しくジャンプ
)論理ユニット68は、RAM69からのマイクロコー
ドインストラクションを選択するためのアドレスを形成
する12ビツトカウンタを含んでいる。このユニットは
、6.7mHzの共通りロック源から、カウンタをイン
クリメントするクロック信号を受信する。RAM69の
出力は、インストラクション デコーダ71とバス60
と接続したラッチ70に送られる(峙殊なインストラク
ションは、プロセッサ間を経て、カウンタを新しいアド
レスに飛越式せることかできるラッチ70に送られる)
。
。このマイクロコードハ、4KX36 ヒツトの容量を
有するRAM69に記憶されている。これは、初期設定
時にバス36を介してマスタコンピュータによりロード
される。マイクロコードアドレス及び飛越しくジャンプ
)論理ユニット68は、RAM69からのマイクロコー
ドインストラクションを選択するためのアドレスを形成
する12ビツトカウンタを含んでいる。このユニットは
、6.7mHzの共通りロック源から、カウンタをイン
クリメントするクロック信号を受信する。RAM69の
出力は、インストラクション デコーダ71とバス60
と接続したラッチ70に送られる(峙殊なインストラク
ションは、プロセッサ間を経て、カウンタを新しいアド
レスに飛越式せることかできるラッチ70に送られる)
。
インストラクションデコーダ71は、a レジスタファ
イル、バッファ、メモリアドレスジェネレータ等、プロ
セッサ中の種々のユニットに接続され、代表的にはデコ
ード化マイクロインストラクションで行なわれているよ
うに、これらユニットを制御する。デコーダ71は、第
6a図及び第6b図に示をれている。
イル、バッファ、メモリアドレスジェネレータ等、プロ
セッサ中の種々のユニットに接続され、代表的にはデコ
ード化マイクロインストラクションで行なわれているよ
うに、これらユニットを制御する。デコーダ71は、第
6a図及び第6b図に示をれている。
初期設定において、マイクロコードが第2図のRAM6
9にロードきれ(各プロセッサごとに異なる)、かつ各
プロセッサのメモリがプログラムでれる。第3図に示す
ように、回路シミュレーションのため、メモリ43はス
テートアレイ、すなわち種々のノードの状態及びファン
アウト表を記憶する。算出メモリユニット45は、各素
子、たとえばゲート77.78の物性及びそれらの真理
値表に関する粘性を得る。待ち行列ユニットメモリ46
は、スケジュールするのに必要な、初期事象を含む全事
象を得るとともに、“時間”に関しこれらを記憶する。
9にロードきれ(各プロセッサごとに異なる)、かつ各
プロセッサのメモリがプログラムでれる。第3図に示す
ように、回路シミュレーションのため、メモリ43はス
テートアレイ、すなわち種々のノードの状態及びファン
アウト表を記憶する。算出メモリユニット45は、各素
子、たとえばゲート77.78の物性及びそれらの真理
値表に関する粘性を得る。待ち行列ユニットメモリ46
は、スケジュールするのに必要な、初期事象を含む全事
象を得るとともに、“時間”に関しこれらを記憶する。
このメモリは、まだゲートの遅延を記憶する。諸プロセ
ッサのメモリは、/ミュレート芒れる回路に関するデー
タをマスクコンピュータから受信する。
ッサのメモリは、/ミュレート芒れる回路に関するデー
タをマスクコンピュータから受信する。
本発明のコンピュータは、第5図に示したアルゴリズム
を実行する。プロセッサ41、すなわち待ち行列ユニッ
トにより実施式れるステップは、第5図の見出しQUの
下に示されている。同様に、プロセラv39、すなわち
ステートユニットにより実姉されるステップは見出しS
UO下に示され、かつプロセラv40、すなわち算出ユ
ニットにより実施キれるステップは見出しEUO下に示
されている。
を実行する。プロセッサ41、すなわち待ち行列ユニッ
トにより実施式れるステップは、第5図の見出しQUの
下に示されている。同様に、プロセラv39、すなわち
ステートユニットにより実姉されるステップは見出しS
UO下に示され、かつプロセラv40、すなわち算出ユ
ニットにより実施キれるステップは見出しEUO下に示
されている。
時間にほぼ対応した所定の(時間)ユニットは、ステッ
プ94に示すように、待ち行列ユニットによりインクリ
メントされる。各折しい時間において、ステップ94は
スケジュールされる事象があるかどうかを決定し、もし
ある場合には、それらはステップ95に示すようにステ
ートユニットに(新しい状態のノードにより)送られる
。この伝送は第1図のバス49により行なわれる。ステ
ートユニットはステップ97により示されるように待ち
行列ユニットにより命令されるとおりにそのメモリを更
新する。特定の時間においてスケジュールされた全事象
は、待ち行列ユニットのメモリ27− から読出され、ステートアレイを更新するためステート
ユニットに送られる。第1図のメモリ43に示すような
ステートアレイは、メモリ46からの事象の読出しと同
時に更新される。
プ94に示すように、待ち行列ユニットによりインクリ
メントされる。各折しい時間において、ステップ94は
スケジュールされる事象があるかどうかを決定し、もし
ある場合には、それらはステップ95に示すようにステ
ートユニットに(新しい状態のノードにより)送られる
。この伝送は第1図のバス49により行なわれる。ステ
ートユニットはステップ97により示されるように待ち
行列ユニットにより命令されるとおりにそのメモリを更
新する。特定の時間においてスケジュールされた全事象
は、待ち行列ユニットのメモリ27− から読出され、ステートアレイを更新するためステート
ユニットに送られる。第1図のメモリ43に示すような
ステートアレイは、メモリ46からの事象の読出しと同
時に更新される。
ステップ98に示すように、各タイムインターバルにお
いて待ち行列ユニットのメモリを介して第2パスが行な
われる。ステップ98において、ステートユニットは、
変化が生じたノードを受ける。この第2パスにおいて、
ステートユニットはこれらノードに接続式れたゲートの
(ファンアウトリストをペースにした)リストを準備す
る。従って、ステートユニットは算出ユニットに、入力
が変化したゲートのリストと、そのゲートからの現在の
出力とその変化を送ることができる(ステップ99及び
100)。
いて待ち行列ユニットのメモリを介して第2パスが行な
われる。ステップ98において、ステートユニットは、
変化が生じたノードを受ける。この第2パスにおいて、
ステートユニットはこれらノードに接続式れたゲートの
(ファンアウトリストをペースにした)リストを準備す
る。従って、ステートユニットは算出ユニットに、入力
が変化したゲートのリストと、そのゲートからの現在の
出力とその変化を送ることができる(ステップ99及び
100)。
算出ユニットは、ステップ106,107に示すように
、たとえばゲート数、その新しい入力、及び現在の出力
を得、かつ出力変化が生じたかどうかを決定する。出力
変化が生じていた場合、ステップ108に示すように、
バス51を介して新しい出力28− は待ち行列ユニットのメモリに記憶される。メモリ46
からプロセラv41は、(各ゲートに関する遅れを記憶
しているので)この新しい出力がいつ生じるかを決定す
ることができる。なお、算出ユニットは、“時間″の観
念を有しておらず、入力が変化したゲートの出力を単に
算出する。
、たとえばゲート数、その新しい入力、及び現在の出力
を得、かつ出力変化が生じたかどうかを決定する。出力
変化が生じていた場合、ステップ108に示すように、
バス51を介して新しい出力28− は待ち行列ユニットのメモリに記憶される。メモリ46
からプロセラv41は、(各ゲートに関する遅れを記憶
しているので)この新しい出力がいつ生じるかを決定す
ることができる。なお、算出ユニットは、“時間″の観
念を有しておらず、入力が変化したゲートの出力を単に
算出する。
ステップ98に再び戻り、待ち行列ユニットが、変化し
たゲートに関連した情報をステートユニットに送ってか
ら、ステップ109に示すように、何らかのスケジュー
リングが必要であるかどうかを決定する(なお、パイプ
ライン処理のため、待ち行列ユニットは、一つのゲート
の情報をステートユニットに送り、かつ次にステップ1
09を実行する時に全く異なるゲートの情報を受信でき
る)。
たゲートに関連した情報をステートユニットに送ってか
ら、ステップ109に示すように、何らかのスケジュー
リングが必要であるかどうかを決定する(なお、パイプ
ライン処理のため、待ち行列ユニットは、一つのゲート
の情報をステートユニットに送り、かつ次にステップ1
09を実行する時に全く異なるゲートの情報を受信でき
る)。
コンプリーティング及びスケジューリング(ステップ1
10)の後、この時間においてさらに事象があるならば
(ステップ111)、ステップ98に戻る。また、この
タイムインターバルにおいてステートユニットへの転送
がもはやない場合には、ステップ109に戻り、算出ユ
ニットからの残りのデ−夕を受信する。必要とされるス
ケジューリングがもはやなく、かつ考察される時間にお
いてもう事象がない場合には、ステップ94に戻る。
10)の後、この時間においてさらに事象があるならば
(ステップ111)、ステップ98に戻る。また、この
タイムインターバルにおいてステートユニットへの転送
がもはやない場合には、ステップ109に戻り、算出ユ
ニットからの残りのデ−夕を受信する。必要とされるス
ケジューリングがもはやなく、かつ考察される時間にお
いてもう事象がない場合には、ステップ94に戻る。
実際には、ステップ94.95.96.97は非常に急
速に行なわれ、コンピュータの時間のほんの約10〜2
0%LJ4’lLない。シミュレーションに必要な時間
の大半は残りのステップにある。
速に行なわれ、コンピュータの時間のほんの約10〜2
0%LJ4’lLない。シミュレーションに必要な時間
の大半は残りのステップにある。
マイクロコード デコーダ
マイクロコード デコーダ(第2図のインストラクショ
ンデコーダ71)は、第2図のRAM69からのマイク
ロコード・インストラクションをデコードし、前述した
ようにプロセッサの一般制御を行なう。第2図のランチ
70からのマイクロコード・インストラクションは、第
6&図のライン122に送られる。このデコーダにより
、マイクロコード・インストラクションは、第2図の内
部データバス60用のデータを直接的に指定することが
できる。このデータバスは、第6b図の右手部分に示さ
れている。ライン122に入ってくるマイクロコード・
インストラクションは、バッファ116.117.11
8に直接的に送られるので、バス用のデータを直接的に
指定できる。
ンデコーダ71)は、第2図のRAM69からのマイク
ロコード・インストラクションをデコードし、前述した
ようにプロセッサの一般制御を行なう。第2図のランチ
70からのマイクロコード・インストラクションは、第
6&図のライン122に送られる。このデコーダにより
、マイクロコード・インストラクションは、第2図の内
部データバス60用のデータを直接的に指定することが
できる。このデータバスは、第6b図の右手部分に示さ
れている。ライン122に入ってくるマイクロコード・
インストラクションは、バッファ116.117.11
8に直接的に送られるので、バス用のデータを直接的に
指定できる。
一般に、各マイクロコード・インストラクションは、イ
ンストラクションの種類と、内部データバスにおけるソ
ース及び行き先を表わす全インストラクションの2つの
固定フィールドを表わす4−ピッ)OPコードを含んで
いる。第6a図の左上方に示した3−8ピツトデコーダ
113は、(ライン122における副信号である)ライ
ン124の信号からOPコードを決定する。デコーダ1
13は、ピン4,5において妥当信号を受信し、マイク
ロコード・インストラクションが妥当であるかどうかを
表示し、もし妥当でない々らばそれは実行されない(ピ
ン6は常に正電位に接続されている)。
ンストラクションの種類と、内部データバスにおけるソ
ース及び行き先を表わす全インストラクションの2つの
固定フィールドを表わす4−ピッ)OPコードを含んで
いる。第6a図の左上方に示した3−8ピツトデコーダ
113は、(ライン122における副信号である)ライ
ン124の信号からOPコードを決定する。デコーダ1
13は、ピン4,5において妥当信号を受信し、マイク
ロコード・インストラクションが妥当であるかどうかを
表示し、もし妥当でない々らばそれは実行されない(ピ
ン6は常に正電位に接続されている)。
インストラクションの種類は、第6a図の上方部分に示
すように、ライン25から開始するOPコードにより選
択でれる。たとえば、インストラクションの種類は、メ
モリ書込み、条件付き飛越し、メモリ読出し、呼び出し
、ALU等である。ライン126.127は判定のゼロ
ALU信号を供給し、ライン31− 128はパリティ・エラーをクリヤし、かつライン12
9は、初期設定において先入れ先出しバッファをクリヤ
する。
すように、ライン25から開始するOPコードにより選
択でれる。たとえば、インストラクションの種類は、メ
モリ書込み、条件付き飛越し、メモリ読出し、呼び出し
、ALU等である。ライン126.127は判定のゼロ
ALU信号を供給し、ライン31− 128はパリティ・エラーをクリヤし、かつライン12
9は、初期設定において先入れ先出しバッファをクリヤ
する。
PLA114は、各マイクロコード・インストラクショ
ンの行き先を決定し、デコーダ115はインストラクシ
ョンのソースを決定する。PLAl 14は、メモリ読
出し及び書込み信号(ピン5,6)、妥当信号(ピン7
)及びタイミング信号(ピン8)の他、ライン122か
らの入力信号を受信する。デコーダ115はライン13
0ニおいてレジスタファイルからのマイクロコード・イ
ンストラクションと、エネーブル・ソース信号(ピン6
)と、ピン5において妥当信号とを受信する。
ンの行き先を決定し、デコーダ115はインストラクシ
ョンのソースを決定する。PLAl 14は、メモリ読
出し及び書込み信号(ピン5,6)、妥当信号(ピン7
)及びタイミング信号(ピン8)の他、ライン122か
らの入力信号を受信する。デコーダ115はライン13
0ニおいてレジスタファイルからのマイクロコード・イ
ンストラクションと、エネーブル・ソース信号(ピン6
)と、ピン5において妥当信号とを受信する。
PLAl 14とデコーダ115からの出力は、第6a
図の下方部分に示されている。“D゛表示、行き先すな
わちデータが“捕獲″されるものであることを表わし、
”s”′表示はソース、すなわち“送り出す゛′データ
であることを表わしている。たとえば“SDP””は、
第2図のデータポート(マルチパス)36からデータを
送ることを光わしている。
図の下方部分に示されている。“D゛表示、行き先すな
わちデータが“捕獲″されるものであることを表わし、
”s”′表示はソース、すなわち“送り出す゛′データ
であることを表わしている。たとえば“SDP””は、
第2図のデータポート(マルチパス)36からデータを
送ることを光わしている。
32−
ライン133,134はファイルレジスタに接続し、ラ
イン135はビットラッチの飛越し制御論理用で、ライ
ン136はマイクロコードアドレスレジスタに接続し、
ライン137は飛越し論理用に使用される。
イン135はビットラッチの飛越し制御論理用で、ライ
ン136はマイクロコードアドレスレジスタに接続し、
ライン137は飛越し論理用に使用される。
第6b図の下方部分に示したラッテ120は、マスクコ
ンピュータにおいて使用されるマイクロプロセッサの割
込み信号を発生するビットアドレス可能ラッチである。
ンピュータにおいて使用されるマイクロプロセッサの割
込み信号を発生するビットアドレス可能ラッチである。
8つの割込みラインの1つは、ジャンパ137として示
されているジャンパで選択される。ラッテ120の出力
における他のフラッグ信号はマスクコンピュータの80
86プロセツブに関して使用され、かつラインFL3
、 FL4 、 FL5に接続している。
されているジャンパで選択される。ラッテ120の出力
における他のフラッグ信号はマスクコンピュータの80
86プロセツブに関して使用され、かつラインFL3
、 FL4 、 FL5に接続している。
バッファ119は、技術的にはマイクロコード論理装置
の一部ではない。これは、ライン138におけるパリテ
ィエラー、出力及び入カパツファのフル信号及び他のス
テータスフラッグ等の、内部バスVC接続した種々のス
テータスピントを含んでいる。
の一部ではない。これは、ライン138におけるパリテ
ィエラー、出力及び入カパツファのフル信号及び他のス
テータスフラッグ等の、内部バスVC接続した種々のス
テータスピントを含んでいる。
第1図に関して前述したように、各プロセッサは、環状
の他のプロセッサの1つにデータを供給する。また、各
プロセッサは、異なる機能を実行するので、全プロセッ
サがそれぞれの機能を実行するのに渋する時間は同じで
はない。他のプロセッサがデータの受信に対してレディ
ー状態と々る前に、その他のプロセッサに、プロセッサ
がデータを送るのを阻止するための何らかの補償が必要
である。また、前にも述べたように、第2図のバッファ
66のように、各プロセッサの出力バッファは、“エラ
スナック′°バッファ(すなわち、拡大可能メモリを有
するバッファ)である。このような各バッファは、最高
256の24−ビットワードを記憶する容量を有してい
る。従ってプロセッサは、データが準備される速度でデ
ータをバッファに送り、さらに、データは、受信するプ
ロセッサにより決定される速度で、バッファから移でれ
る。
の他のプロセッサの1つにデータを供給する。また、各
プロセッサは、異なる機能を実行するので、全プロセッ
サがそれぞれの機能を実行するのに渋する時間は同じで
はない。他のプロセッサがデータの受信に対してレディ
ー状態と々る前に、その他のプロセッサに、プロセッサ
がデータを送るのを阻止するための何らかの補償が必要
である。また、前にも述べたように、第2図のバッファ
66のように、各プロセッサの出力バッファは、“エラ
スナック′°バッファ(すなわち、拡大可能メモリを有
するバッファ)である。このような各バッファは、最高
256の24−ビットワードを記憶する容量を有してい
る。従ってプロセッサは、データが準備される速度でデ
ータをバッファに送り、さらに、データは、受信するプ
ロセッサにより決定される速度で、バッファから移でれ
る。
第7a図、第7b図、および第7C図において、プロセ
ッサからのデータは、第7C図の上方部分に示されてい
る内部バス60を介シてFIFOバッファに送られる。
ッサからのデータは、第7C図の上方部分に示されてい
る内部バス60を介シてFIFOバッファに送られる。
次のプロセッサへの出力データはライン51に送られる
。第7c図のバッファ140.141,142は、FI
FOバフ7アに入ってくるデータを、記憶する前にバッ
ファし壕だライン51に送るためこの記憶装置からのデ
ータをバッファする。
。第7c図のバッファ140.141,142は、FI
FOバフ7アに入ってくるデータを、記憶する前にバッ
ファし壕だライン51に送るためこの記憶装置からのデ
ータをバッファする。
FIFOバッファのデータは、6つのランダム−アクセ
スメモIJ (RAM) “テンプパ、たとえば第7b
図に示すようなRAM144,145,146,147
,148,149に記憶てれる。これらスタティックR
AMは4にピットの容量を有しているが、本実施例では
、各RAMの2つのアドレスラインはアースに接続して
いるので、RAMはIKRAMとして使用されている。
スメモIJ (RAM) “テンプパ、たとえば第7b
図に示すようなRAM144,145,146,147
,148,149に記憶てれる。これらスタティックR
AMは4にピットの容量を有しているが、本実施例では
、各RAMの2つのアドレスラインはアースに接続して
いるので、RAMはIKRAMとして使用されている。
各RAMは、使用される各8−ピットアドレスごとの入
力データをアクセスする。従って、各8−ピットアドレ
スに対して、24−ビット位置がアクセスきれる。
力データをアクセスする。従って、各8−ピットアドレ
スに対して、24−ビット位置がアクセスきれる。
2つのRAMポインタは、入力データ位置と出力データ
位置を識別するのに使用される。第7a図のカウンタ1
53.154は、RAMにアドレスを供給し、一方カウ
ンタ155.156は出力データに関するアドレスを供
給する。カウンタ153,154は、24−ビットワー
ドがメモリに送られるごとにインクリメントされ、同様
に、カウンタ155,156は各24−ピットワードが
メモリから読出されるたびにインクリメントされる。こ
れらカウンタは、ライン170における信号で初期設定
時にクリヤでれ、次のプロセッサへのデータの流れは、
ライン171の信号で制御され、RAMに関する読出し
一書込みコマンドは、ライン172で受信され、かつカ
ウンタのクロック信号はライン174で供給される。
位置を識別するのに使用される。第7a図のカウンタ1
53.154は、RAMにアドレスを供給し、一方カウ
ンタ155.156は出力データに関するアドレスを供
給する。カウンタ153,154は、24−ビットワー
ドがメモリに送られるごとにインクリメントされ、同様
に、カウンタ155,156は各24−ピットワードが
メモリから読出されるたびにインクリメントされる。こ
れらカウンタは、ライン170における信号で初期設定
時にクリヤでれ、次のプロセッサへのデータの流れは、
ライン171の信号で制御され、RAMに関する読出し
一書込みコマンドは、ライン172で受信され、かつカ
ウンタのクロック信号はライン174で供給される。
同時にデータを、RAM144−149へ書込んだり、
これらRAMから読出したりはできない。従って、カウ
ンタ153 、154またはカウンタ155,156の
いずれかの出力アドレスからの入力アドレスがRAMに
送られる。第7a図のマルチプレクサ150.151は
、RAMに接続するため入力ポインタまたは出力ポイン
タのいずれかを選択する。
これらRAMから読出したりはできない。従って、カウ
ンタ153 、154またはカウンタ155,156の
いずれかの出力アドレスからの入力アドレスがRAMに
送られる。第7a図のマルチプレクサ150.151は
、RAMに接続するため入力ポインタまたは出力ポイン
タのいずれかを選択する。
比較器158は、入力ポインタと出力ポインタを比較す
る。すなわち、比較器は、カウンタ153゜154の出
力におけるカウントと、カウンタ155゜156の出力
におけるカウントとを比較する。これらのアドレスが等
しい場合、データはRAMの同じ位置に送られかつ同じ
位置から読出されている。
る。すなわち、比較器は、カウンタ153゜154の出
力におけるカウントと、カウンタ155゜156の出力
におけるカウントとを比較する。これらのアドレスが等
しい場合、データはRAMの同じ位置に送られかつ同じ
位置から読出されている。
これは、バッファがいっばいであるか、または空である
かを意味している。このような状態が生じた場合、第7
a図および第7b図の下方部分に示すような論理回路1
60は、バッファがいっばいであるかまたは空であるか
を決定し、かつバッファがいっばいであるかまたは空で
あるかを表わす信号を発生する(第7c図の右下方部分
)。バッファが空の場合、データがバッファに書込まれ
ることがあっても、バッファからデータを読出すことは
阻止される。逆に、バッファがいっばいの場合、データ
がバッファから読出式れはしても、データをバッファに
書込むことは阻止てれる。
かを意味している。このような状態が生じた場合、第7
a図および第7b図の下方部分に示すような論理回路1
60は、バッファがいっばいであるかまたは空であるか
を決定し、かつバッファがいっばいであるかまたは空で
あるかを表わす信号を発生する(第7c図の右下方部分
)。バッファが空の場合、データがバッファに書込まれ
ることがあっても、バッファからデータを読出すことは
阻止される。逆に、バッファがいっばいの場合、データ
がバッファから読出式れはしても、データをバッファに
書込むことは阻止てれる。
メモリ アドレス ジェネレータ
各プロセッサは、第2図に示すようなメモリアドレスジ
ェネレータ及びインターフェイス論理ユニット67を含
んでいる。前に述べたように、マイクロコードとデータ
バスからの信号との組合せであるアドレスは、各プロセ
ッサのメモリに対して発生される。これは、後述するよ
うにアドレス発生を加速するので、豹に重要なことであ
る。アルゴリズムを実行するには、比較的多くのメモリ
アクセスを必要とするので、アドレスを発生する時間を
節約することは重要である。
ェネレータ及びインターフェイス論理ユニット67を含
んでいる。前に述べたように、マイクロコードとデータ
バスからの信号との組合せであるアドレスは、各プロセ
ッサのメモリに対して発生される。これは、後述するよ
うにアドレス発生を加速するので、豹に重要なことであ
る。アルゴリズムを実行するには、比較的多くのメモリ
アクセスを必要とするので、アドレスを発生する時間を
節約することは重要である。
各プロセッサのメモリは、いくつかのセクションに分割
嘔れている。マイクロコードは、一つのセクション(ベ
ースアドレス)を選択シ、一方データパスからの信号は
このセクション内でオフセットとして使用でれる。たと
えば、メモリのセクションがアドレス1000で開始し
、このセクション内の対象の判定位置が3である場合、
プロセッサは1000と3を加算し、メモリをアクセス
する前にアドレス1003を発生する。後述するように
、この加算は、マイクロコード ラインからの“100
0”と、データラインからの“3°゛を選択することに
より行なわれ、実際の加算を要することなく必要なアド
レスを供給する。
嘔れている。マイクロコードは、一つのセクション(ベ
ースアドレス)を選択シ、一方データパスからの信号は
このセクション内でオフセットとして使用でれる。たと
えば、メモリのセクションがアドレス1000で開始し
、このセクション内の対象の判定位置が3である場合、
プロセッサは1000と3を加算し、メモリをアクセス
する前にアドレス1003を発生する。後述するように
、この加算は、マイクロコード ラインからの“100
0”と、データラインからの“3°゛を選択することに
より行なわれ、実際の加算を要することなく必要なアド
レスを供給する。
第8a図および第8b図において、アドレスジェネレー
タは、データバス60に接続し、かつライン122でマ
イクロコードRAMからのマイクロコードインストラク
ションを受信する。メモリアドレス(AO〜A23)は
、ライン180に供給され、かつ通常の方法でメモリを
アクセスするためメモリに送られる。
タは、データバス60に接続し、かつライン122でマ
イクロコードRAMからのマイクロコードインストラク
ションを受信する。メモリアドレス(AO〜A23)は
、ライン180に供給され、かつ通常の方法でメモリを
アクセスするためメモリに送られる。
また、第8a図に示されている2つのゲートと、メモリ
アドレスのペースセクション用に使用される、第8b図
の左方向に示されている3番目のゲートの、3つのゲー
ト列がある。これらゲートの入力端子は、マイクロコー
ドRAMからのライン122とデータバス60に交互に
接続されている。
アドレスのペースセクション用に使用される、第8b図
の左方向に示されている3番目のゲートの、3つのゲー
ト列がある。これらゲートの入力端子は、マイクロコー
ドRAMからのライン122とデータバス60に交互に
接続されている。
マイクロコードRAMからの8つのラインは、PLAl
Bl、182に接続でれている。これらアレイからの出
力は、制御信号として3つのゲート列に接続している。
Bl、182に接続でれている。これらアレイからの出
力は、制御信号として3つのゲート列に接続している。
ゲートの出力は、アドレス信号AI2〜A2Bを発生す
る。マイクロコードインストラクションに応じて、アレ
イ181.182は、データバスからの39− ラインか、またはマイクロコードRAMのいずれかをア
ドレス八12〜A2Bのため選択することができる。
る。マイクロコードインストラクションに応じて、アレ
イ181.182は、データバスからの39− ラインか、またはマイクロコードRAMのいずれかをア
ドレス八12〜A2Bのため選択することができる。
データバス60からのライン(D4−011 )は、バ
ッファ183に直接的に接続している。このバッファの
出力は、一般に上述したようなオフセットであるアドレ
ス信号A、〜A□、を供給する。
ッファ183に直接的に接続している。このバッファの
出力は、一般に上述したようなオフセットであるアドレ
ス信号A、〜A□、を供給する。
アルゴリズムを有効に実行するには、メモリ内の構造、
すなわち隣接位置における関連データをグループ分けす
る必要がある。たとえば、各事象に関し、ゲート数、時
間、新しいゲート出力及びリンクが記憶される。ペース
アドレス及びオフセットは、構造を識別するのに使用さ
れる。すなわち4つのアドレスビットは構造内の素子を
識別するのに使用される。第8b図の右方向に示したゲ
ート列からのアドレスビットA。−A8は、構造内の素
子を選択する。これらアドレスビットは、PLA182
から制御されるマイクロコードであり、また、マイクロ
コードまたはデータバスのいずれかから選択可能である
。データラインDo 、 DI 、 D2 。
すなわち隣接位置における関連データをグループ分けす
る必要がある。たとえば、各事象に関し、ゲート数、時
間、新しいゲート出力及びリンクが記憶される。ペース
アドレス及びオフセットは、構造を識別するのに使用さ
れる。すなわち4つのアドレスビットは構造内の素子を
識別するのに使用される。第8b図の右方向に示したゲ
ート列からのアドレスビットA。−A8は、構造内の素
子を選択する。これらアドレスビットは、PLA182
から制御されるマイクロコードであり、また、マイクロ
コードまたはデータバスのいずれかから選択可能である
。データラインDo 、 DI 、 D2 。
4O−
D3 及びマイクロコード7 (/UCO,UCl 、
UC2゜UC3は、これらゲートに接続されている。
UC2゜UC3は、これらゲートに接続されている。
上述したようなアドレスビットの選択は、メモリをセク
ションへ及びセクションを構造ヘパ−ティジョンするの
にいくつかの制限を有してりる。
ションへ及びセクションを構造ヘパ−ティジョンするの
にいくつかの制限を有してりる。
たとえば、メモリセクションは、アドレス1001で開
始することができない。また、アドレスジェネレータに
より使用される選択プロセスにより真の加算を行なうこ
とができないため、オフセットをこのベースアドレスに
加算することができない。
始することができない。また、アドレスジェネレータに
より使用される選択プロセスにより真の加算を行なうこ
とができないため、オフセットをこのベースアドレスに
加算することができない。
しかし、メモリセクションは、アドレス1000で開始
し、かつたとえば249の4素子構造を有することがで
きる。従ってこのことは、得られる利点に較べれば大し
た制限ではない。
し、かつたとえば249の4素子構造を有することがで
きる。従ってこのことは、得られる利点に較べれば大し
た制限ではない。
以上のように、本発明は事象駆動形アルゴリズムを実行
するスレーブコンピュータに関している。
するスレーブコンピュータに関している。
このスレーブコンピュータにより実行されるプロセシン
グは、独將の方法でパーティション芒れ、かつ3つのプ
ロセッサにより実施され、アルゴリズムを有効に実行す
る。
グは、独將の方法でパーティション芒れ、かつ3つのプ
ロセッサにより実施され、アルゴリズムを有効に実行す
る。
第1図は本発明のコンピュータの全アーキテクチャ及び
本発明に関連して使用される従来のコンピュータを示し
たブロック図、第2図は本発明のコンピュータの一部と
して使用されるプロセッサの1つを示したブロック図、
第3図は従来のアルゴリズムを説明するための2つのゲ
ートの概要図、第4図は従来の事象駆動アルゴリズムを
説明するためのフローチャート図、第5図は本発明のコ
ンピュータにより履行される事象駆動アルゴリズムを説
明するだめのフローチャート図、第6a図および第6b
図は各プロセッサにおいて使用き八るマイクロコードデ
コーダの概要図、第7a図、第7b図、および第7C図
は各プロセッサにおいて使用てれる先入れ先出し出力バ
ッファの概要図、第8a図および第8b図は各プロセン
サにおいて使用されるメモリアドレスジェネレータの概
要図である。 26.36・・・・マルチパス、39,40 。 41・・・・プロセッサ、43,45.46・・・・メ
モリ、58・・・・マルチパス・インターフェイスユニ
ット、62・・・・ALU、63・・・・レジスタファ
イル、65・・・・FIFO人カバソファ、69・・・
・マイクロコー)” RAM、77 。 78・・・・ゲルト、113.115・・・・デコーダ
、114・・・・PLA、116,117,118・・
・・バッファ、140,141,142・・・・バッフ
ァ、144,145゜146.147,148,149
・・・・RAM、153,154,155゜156・・
・・カウンタ。 1’出願人 ディジー・システムズ・コーポレー/ヨン
代理人 山川政樹(Iジ・2名) 4勿δ6
本発明に関連して使用される従来のコンピュータを示し
たブロック図、第2図は本発明のコンピュータの一部と
して使用されるプロセッサの1つを示したブロック図、
第3図は従来のアルゴリズムを説明するための2つのゲ
ートの概要図、第4図は従来の事象駆動アルゴリズムを
説明するためのフローチャート図、第5図は本発明のコ
ンピュータにより履行される事象駆動アルゴリズムを説
明するだめのフローチャート図、第6a図および第6b
図は各プロセッサにおいて使用き八るマイクロコードデ
コーダの概要図、第7a図、第7b図、および第7C図
は各プロセッサにおいて使用てれる先入れ先出し出力バ
ッファの概要図、第8a図および第8b図は各プロセン
サにおいて使用されるメモリアドレスジェネレータの概
要図である。 26.36・・・・マルチパス、39,40 。 41・・・・プロセッサ、43,45.46・・・・メ
モリ、58・・・・マルチパス・インターフェイスユニ
ット、62・・・・ALU、63・・・・レジスタファ
イル、65・・・・FIFO人カバソファ、69・・・
・マイクロコー)” RAM、77 。 78・・・・ゲルト、113.115・・・・デコーダ
、114・・・・PLA、116,117,118・・
・・バッファ、140,141,142・・・・バッフ
ァ、144,145゜146.147,148,149
・・・・RAM、153,154,155゜156・・
・・カウンタ。 1’出願人 ディジー・システムズ・コーポレー/ヨン
代理人 山川政樹(Iジ・2名) 4勿δ6
Claims (1)
- 【特許請求の範囲】 (1)コンピュータ装置の全制御を行ないかつユーザ
インターフェイスを行なうマスク・コンピュータと;上
記マスク・コンピュータの制御のもとて事象駆動形アル
ゴリズムを実行し、かつ上記アルゴリズムの所定のステ
ップをそれぞれ実行する複数のプロセッサを含む、マイ
クロプログラム可能ナスレープ・コンピュータと;上記
マスク・コンピュータ及びスレーブ・コンピュータとの
間のインターフェイスを行なうインターフェイス装置と
から成り;上記事象駆動形アルゴリズムを有効に実行す
ることを性徴とする、事象駆動形アルゴリズムを実行す
るコンピュータ装置。 (2、特許請求の範囲第1項記載のコンピュータ装置に
おいて、マスク・コンピュータは第1バスを含ミ、スレ
ーブ・コンピュータは第2バスを含み、上記第1及び第
2バスはインク」7エイス装置を介して接続され、かつ
上記第2バスは複数のプロセッサのそれぞれに接続され
ていることを萄徴とするコンピュータ装置。 (3) 4+!i許請求の範囲第2項記載のコンピュー
タ装置において、複数のプロセッサは、単方向バスによ
り環状に相互接続てれていることを萄徴とするコンピュ
ータ装置。 (4)竹許請求の範囲第3項記載のコンピュータ装置に
おいて、各プロセッサは、データバス及びメモリと、上
記データバスとメモリとの間に接続でれたメモリアドレ
スジェネレータとを有し、上記ジェネレータによシ上記
データバスとマイクロコード記憶装置からの信号の組合
せであるアドレスが上記メそりに供給されることを性徴
とするコンピュータ装置。 (5)第1バスに接続されて、コンピュータ装置の全制
御を行ないかつユーザインターフェイスを行す’>マス
タ・コンピュータと;第2バスと;上記第1バスと第2
バスとの間を接続するインターフ □エイス装置と;上
記マスタ・コンピュータの制御のもとて事象駆動形アル
ゴリズムを実行し、上記第2バスにそれぞれ接続されか
つ上記アルゴリズムの所定のステップをそれぞれ実行す
る複数のプロセッサを含むスレーブ・コンピュータとか
う成り;上記アルゴリズムを有効に実行することを特徴
とする、事象駆動形アルゴリズムを実行するコンピュー
タ装置。 (6) 特許請求の範囲第5項記載のコンピュータ装置
において、各プロセッサはマイクロコード・インストラ
クションを記憶するマイクロコード記憶装置を含み、上
記記憶装置はマスク・コンピュータからプログラムをれ
ることを特徴とするコンピュータ装置。 (7)特許請求の範囲第6項記載のコンピュータ装置に
おいて、複数のプロセッサは、単方向バスを介して環状
に相互接続てれていることを特徴とするコンピュータ装
置。 (8)特許請求の範囲第7項記載のコンピュータ装置に
おいて、各プロセッサは、拡大可能なメモリを有する先
入れ先出しバッファを有することを特徴とするコンピュ
ータ装置。 (9)特許請求の範囲第5項または第8項記載のコンピ
ュータ装置において、各プロセッサは、メモリアドレス
ジェネレータを介して相互接続てれたデータバス及びメ
モリを有し、上記アドレスジェネレータはマイクロコー
ド記憶装置に接続され、かつ上記データバスとマイクロ
コード記憶装置とからの信号の組合せであるアドレスを
、マイクロコー ドインストラクションの関数として発
生することができることを特徴とするコンピュータ装置
。 (10)事象駆動形アルゴリズムの所定のステップをそ
れぞれ実行する複数のプロセッサから成り、上記プロセ
ッサのそれぞれは;データバスと;上記データバスに接
続てれた演算論理装置と;上記演算論理装置とデータバ
スに接続され、上記プロセッサの動作を制御するアイク
ロコード記憶装置及びデコーディング装置と;メモリと
;上記データバスと上記メモリとの間に接続でれ、かつ
上記マイクロコード記憶装置に接続され、さらに上記デ
3− 一タパスと上記マイクロコード記憶装置とからの信号の
組合せであるアドレスを、上記マイクロコード記憶装置
からのインストラクションに基づいて、上記メモリに供
給するメモリアドレスジェネレータとから成り;上記ア
ルゴリズムを有効に実行することを特徴とする、システ
ムをシミュレートする事象駆動形アルゴリズムを実行す
るコンピュータ。 (11) 特許請求の範囲第10項記載のコンピュータ
において、各プロセッサは、単一方向バスを介して環状
に相互接続式れていることを特徴とするコンピュータ。 (12、特許請求の範囲第11項記載のコンピュータに
おいて、各プロセッサは、他のプロセッサへの接続を行
表う、拡大可能なメモリを有する先入れ先出しバッファ
を含んでいることを特徴とするコンピュータ。 (13)第1.第2及び第3プロセンブを有し、上記第
2プロセツサは上記第1プロセツサからの信号を受信す
るよう接続され、上記第3プロセツサは4− 上記第2プロセツサからの信号を受信するよう接続され
、上記第1プロセツサは上記第3プロセツサからの信号
を受信するよう接続式れ;上記第1プロセツサは、複数
の所定のインターバルでシステムの素子の状態を記憶す
る第1メモリを有し;上記第2プロセツプは、事象に関
する上記システムの素子の動作特性を記憶する第2メモ
リを有し;上記第3プロセツサは変化が発生する上記イ
ンターバルごとに上記変化を表わす、上記システムの素
子への情報を記憶する第3メモリを有し;上記第1.第
2および第3プロセツサは、上記第2゜第3.第1プロ
セツサから受信した信号に応じて各メモリの内容で動作
するよう接続され;事象駆動形シミュレーションアルゴ
リズムを有効に実行することを特徴とする、システムを
シミュレートする事象駆動形アルゴリズムを実行するコ
ンピュータ。 (14)特許請求の範囲第13項記載のコンピュータに
おいて、第3メモリも、素子のある動作特性を記憶する
ことを特徴とするコンピュータ。 (15) M許請求の範囲第13項記載のコンピュータ
において、各プロセッサは:バスと;上記バスに接続さ
れた先入れ先出し入力バッファと;上記バスに接続され
た先入れ先出し出力バッファと;上記バスに接続された
演算論理装置と;上記バスに接続されマイクロコードイ
ンストラクションを記憶するマイクロコード記憶装置と
;上記マイクロコード記憶装置に接続され上記マイクロ
コード記憶装置からのインストラクションをデコードす
るデコーダ装置と;上記バスとメモリとの間に接続され
メモリアドレスを発生するアドレス発生装置とから成る
ことを特徴とするコンピュータ。 (16) %許請求の範囲第15項記載のコンピュータ
において、アドレス発生装置は、マイクロコード記憶装
置に接続され、上記記憶装置の制御のもとで動作し、バ
スからの信号とマイクロコード記憶装置からの信号との
組合せであるメモリアドレスを生じることを特徴とする
コンピュータ。 (17)特許請求の範囲第13項または第16項記載の
コンピュータにおいて、上記コンピュータの動作を制御
する制御コンピュータを有し、上記制御コンピュータは
ユーザにインターフェイスヲ与よる装置を有しているこ
とを特徴とするコンピュータ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/594,533 US4751637A (en) | 1984-03-28 | 1984-03-28 | Digital computer for implementing event driven simulation algorithm |
US594533 | 1990-10-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS60218138A true JPS60218138A (ja) | 1985-10-31 |
Family
ID=24379281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60061026A Pending JPS60218138A (ja) | 1984-03-28 | 1985-03-27 | 事象駆動形アルゴリズムを実行するコンピユータ装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US4751637A (ja) |
JP (1) | JPS60218138A (ja) |
CA (1) | CA1234630A (ja) |
DE (1) | DE3508640A1 (ja) |
FR (1) | FR2562288B1 (ja) |
GB (1) | GB2156550B (ja) |
IL (1) | IL74541A (ja) |
IT (1) | IT1208522B (ja) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61102569A (ja) * | 1984-10-26 | 1986-05-21 | Hitachi Ltd | 高速論理シミユレ−シヨン装置 |
US5239628A (en) * | 1985-11-13 | 1993-08-24 | Sony Corporation | System for asynchronously generating data block processing start signal upon the occurrence of processing end signal block start signal |
CA1283738C (en) * | 1985-11-13 | 1991-04-30 | Atsushi Hasebe | Data processor |
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 |
US4916647A (en) * | 1987-06-26 | 1990-04-10 | Daisy Systems Corporation | Hardwired pipeline processor for logic simulation |
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 |
US4901260A (en) * | 1987-10-28 | 1990-02-13 | American Telephone And Telegraph Company At&T Bell Laboratories | Bounded lag distributed discrete event simulation method and apparatus |
JP2583949B2 (ja) * | 1988-03-10 | 1997-02-19 | 松下電器産業株式会社 | 論理シミュレーション方法と論理シミュレーション装置 |
DE3808649A1 (de) * | 1988-03-15 | 1989-10-05 | Nixdorf Computer Ag | Steuereinrichtung fuer ein elektrisches bzw. elektromechanisches geraet |
GB8812849D0 (en) * | 1988-05-31 | 1988-07-06 | Int Computers Ltd | Logic simulator |
US5452231A (en) * | 1988-10-05 | 1995-09-19 | Quickturn Design Systems, Inc. | Hierarchically connected reconfigurable logic assembly |
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 |
US5081601A (en) * | 1989-09-22 | 1992-01-14 | Lsi Logic Corporation | System for combining independently clocked simulators |
DE3933958A1 (de) * | 1989-10-11 | 1991-04-18 | Dieter Dr Vetterkind | Prozess-modellrechner |
US5375074A (en) * | 1990-01-23 | 1994-12-20 | At&T Corp. | Unboundedly parallel simulations |
US5272651A (en) * | 1990-12-24 | 1993-12-21 | Vlsi Technology, Inc. | Circuit simulation system with wake-up latency |
US5500808A (en) * | 1991-01-24 | 1996-03-19 | Synopsys, Inc. | Apparatus and method for estimating time delays using unmapped combinational logic networks |
US5335191A (en) * | 1992-03-27 | 1994-08-02 | Cadence Design Systems, Inc. | Method and means for communication between simulation engine and component models in a circuit simulator |
JP2548880B2 (ja) * | 1992-04-23 | 1996-10-30 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 空間分割型確率シミュレーション・システムおよび物質エネルギー・システムをシミュレートする方法 |
US5745385A (en) * | 1994-04-25 | 1998-04-28 | International Business Machines Corproation | Method for stochastic and deterministic timebase control in stochastic simulations |
US5625579A (en) * | 1994-05-10 | 1997-04-29 | International Business Machines Corporation | Stochastic simulation method for processes containing equilibrium steps |
US5856933A (en) * | 1994-06-03 | 1999-01-05 | University Of South Florida | System and method for digital simulation of an electrical circuit |
GB2293900B (en) * | 1994-10-03 | 2000-01-19 | Univ Westminster | Data processing method and apparatus for parallel discrete event simulation |
US5615127A (en) * | 1994-11-30 | 1997-03-25 | International Business Machines Corporation | Parallel execution of a complex task partitioned into a plurality of entities |
US5805859A (en) * | 1995-06-07 | 1998-09-08 | Synopsys, Inc. | Digital simulator circuit modifier, network, and method |
US5826065A (en) * | 1997-01-13 | 1998-10-20 | International Business Machines Corporation | Software architecture for stochastic simulation of non-homogeneous systems |
GB0509738D0 (en) * | 2005-05-12 | 2005-06-22 | Cambridge Consultants | Processor and interface |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3701976A (en) * | 1970-07-13 | 1972-10-31 | Bell Telephone Labor Inc | Floating point arithmetic unit for a parallel processing computer |
US4123794A (en) * | 1974-02-15 | 1978-10-31 | Tokyo Shibaura Electric Co., Limited | Multi-computer system |
IT1118355B (it) * | 1979-02-15 | 1986-02-24 | Cselt Centro Studi Lab Telecom | Sistema di interconnessione tra processori |
AT361726B (de) * | 1979-02-19 | 1981-03-25 | Philips Nv | Datenverarbeitungsanlage mit mindestens zwei mikrocomputern |
US4306286A (en) * | 1979-06-29 | 1981-12-15 | International Business Machines Corporation | Logic simulation machine |
US4351025A (en) * | 1979-07-06 | 1982-09-21 | Hall Jr William B | Parallel digital computer architecture |
WO1981001066A1 (en) * | 1979-10-11 | 1981-04-16 | Nanodata Computer Corp | Data processing system |
FR2469751A1 (fr) * | 1979-11-07 | 1981-05-22 | Philips Data Syst | Processeur d'intercommunication du systeme utilise dans un systeme de traitement de donnees reparti |
US4335426A (en) * | 1980-03-10 | 1982-06-15 | International Business Machines Corporation | Remote processor initialization in a multi-station peer-to-peer intercommunication system |
US4365297A (en) * | 1980-12-29 | 1982-12-21 | Forney Engineering Company | Industrial control system with distributed computer implemented logic |
DE3112693A1 (de) * | 1981-03-31 | 1982-10-14 | Stollmann & Co, 2000 Hamburg | Modular aufgebautes dezentrales datenverarbeitungssystem |
US4468734A (en) * | 1982-03-26 | 1984-08-28 | International Business Machines Corporation | Method of purging erroneous signals from closed ring data communication networks capable of repeatedly circulating such signals |
US4527249A (en) * | 1982-10-22 | 1985-07-02 | Control Data Corporation | Simulator system for logic design validation |
-
1984
- 1984-03-28 US US06/594,533 patent/US4751637A/en not_active Expired - Lifetime
- 1984-11-22 GB GB08429500A patent/GB2156550B/en not_active Expired
-
1985
- 1985-03-08 IL IL74541A patent/IL74541A/xx unknown
- 1985-03-12 DE DE19853508640 patent/DE3508640A1/de not_active Withdrawn
- 1985-03-26 FR FR858504469A patent/FR2562288B1/fr not_active Expired - Lifetime
- 1985-03-27 JP JP60061026A patent/JPS60218138A/ja active Pending
- 1985-03-28 IT IT8520122A patent/IT1208522B/it active
- 1985-03-28 CA CA000477770A patent/CA1234630A/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
IL74541A0 (en) | 1985-06-30 |
CA1234630A (en) | 1988-03-29 |
IL74541A (en) | 1988-08-31 |
FR2562288B1 (fr) | 1990-09-14 |
GB2156550B (en) | 1988-01-27 |
GB2156550A (en) | 1985-10-09 |
IT1208522B (it) | 1989-07-10 |
US4751637A (en) | 1988-06-14 |
GB8429500D0 (en) | 1985-01-03 |
IT8520122A0 (it) | 1985-03-28 |
DE3508640A1 (de) | 1985-10-03 |
FR2562288A1 (fr) | 1985-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS60218138A (ja) | 事象駆動形アルゴリズムを実行するコンピユータ装置 | |
EP0021404B1 (en) | Computing system for the simulation of logic operations | |
JP2989518B2 (ja) | 多重プロセッサ・エミュレーション・システム | |
US5546562A (en) | Method and apparatus to emulate VLSI circuits within a logic simulator | |
US4016545A (en) | Plural memory controller apparatus | |
US4570217A (en) | Man machine interface | |
US4787061A (en) | Dual delay mode pipelined logic simulator | |
US5594741A (en) | Method for control of random test vector generation | |
US4486827A (en) | Microprocessor apparatus | |
US5721953A (en) | Interface for logic simulation using parallel bus for concurrent transfers and having FIFO buffers for sending data to receiving units when ready | |
EP0217922B1 (en) | An array for simulating computer functions for large computer systems | |
Agrawal et al. | MARS: A multiprocessor-based programmable accelerator | |
US4541045A (en) | Microprocessor architecture employing efficient operand and instruction addressing | |
US4584642A (en) | Logic simulation apparatus | |
US5923865A (en) | Emulation system having multiple emulated clock cycles per emulator clock cycle and improved signal routing | |
US7228513B2 (en) | Circuit operation verification device and method | |
US5034879A (en) | Programmable data path width in a programmable unit having plural levels of subinstruction sets | |
Agrawal et al. | Architecture and design of the MARS hardware accelerator | |
US4814983A (en) | Digital computer for implementing event driven simulation algorithm | |
US4975837A (en) | Programmable unit having plural levels of subinstruction sets where a portion of the lower level is embedded in the code stream of the upper level of the subinstruction sets | |
Shima | Solid state/computers: Demystifying microprocessor design: Big chips require artful compromises, as demonstrated by this design case history | |
JP2638613B2 (ja) | プログラマブル アクセラレータ及びその方法 | |
Bayliss et al. | The interface processor for the Intel VLSI 432 32-bit computer | |
Denneau et al. | Design and implementation of a software simulation engine | |
JPS61114341A (ja) | 処理システム |