JPS58153A - 配線径路決定方法 - Google Patents
配線径路決定方法Info
- Publication number
- JPS58153A JPS58153A JP57098632A JP9863282A JPS58153A JP S58153 A JPS58153 A JP S58153A JP 57098632 A JP57098632 A JP 57098632A JP 9863282 A JP9863282 A JP 9863282A JP S58153 A JPS58153 A JP S58153A
- Authority
- JP
- Japan
- Prior art keywords
- block
- cell
- spe
- array
- wiring
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Multi Processors (AREA)
- Internal Circuitry In Semiconductor Integrated Circuit Devices (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
技術分野
本発明は大規模集積回路(LSI)及び超大規模集積回
路(VLSI)の物理的設計の分野、特にチップ上に形
成された回路間の相互接続及び配線径路決定(wire
routing )に関するワより具体的には、セ
ルから構成されたLSI又はVLSI回路構造における
配線径路を決定するための装置が開示される。但しそれ
らのセルは論理ゲートとして機能する電子デバイスか□
ら成り、セルの群はフリップ・フロップ、シフトレジス
タ等トして機能するように相互接続される。本発明の装
置は、n個(nは整数)の同一の多ポート・プロセッサ
と通信する管理コ/トローラ?含み、1つのプロセッサ
は谷セルに専用に割り当てられ、各セル間の配線径路を
決定するっ各プロセッサは同時にその4つの隣接プロセ
ッサと通信し、セルの配列中の1点から次の点)のチャ
ネル径路?決定するっ但しチャネル径路は垂直及び水平
の径路を含むっ大局的なチャネル径路の決定に続いて、
配線径路に関する正催な垂直及び水平のトラックが割り
台てられ、でしてオーバーフロー・ルーティングが考慮
てれる。タイミング解析、配置、形状生成及び検査は、
適当な方式でその並列計算能カケ賢明に用いる事によっ
て行なう事ができる。
路(VLSI)の物理的設計の分野、特にチップ上に形
成された回路間の相互接続及び配線径路決定(wire
routing )に関するワより具体的には、セ
ルから構成されたLSI又はVLSI回路構造における
配線径路を決定するための装置が開示される。但しそれ
らのセルは論理ゲートとして機能する電子デバイスか□
ら成り、セルの群はフリップ・フロップ、シフトレジス
タ等トして機能するように相互接続される。本発明の装
置は、n個(nは整数)の同一の多ポート・プロセッサ
と通信する管理コ/トローラ?含み、1つのプロセッサ
は谷セルに専用に割り当てられ、各セル間の配線径路を
決定するっ各プロセッサは同時にその4つの隣接プロセ
ッサと通信し、セルの配列中の1点から次の点)のチャ
ネル径路?決定するっ但しチャネル径路は垂直及び水平
の径路を含むっ大局的なチャネル径路の決定に続いて、
配線径路に関する正催な垂直及び水平のトラックが割り
台てられ、でしてオーバーフロー・ルーティングが考慮
てれる。タイミング解析、配置、形状生成及び検査は、
適当な方式でその並列計算能カケ賢明に用いる事によっ
て行なう事ができる。
1000個以下のセルを有する全てのLS Ill造の
物理的設計において現行の方式は、長時間、高速計算機
全使用する必要があり、例えば20分から1時間のCP
U時間を要する。次世代のVLSIにおいて、1500
0〜150000の接続配線を持つ5000〜5ooo
o回路のマスク・スライス・チップの場合、2〜5時間
以上のCPU時間を要する。従って非専用システムの場
合少なくとも1日のターン・アラワンド時間がかかる可
能性がある。技術的変更により同じチップに付き数回配
線決定を繰り返さなければならない可能性を考慮すると
、この時間?大幅に減少させる事は非常に利益がある。
物理的設計において現行の方式は、長時間、高速計算機
全使用する必要があり、例えば20分から1時間のCP
U時間を要する。次世代のVLSIにおいて、1500
0〜150000の接続配線を持つ5000〜5ooo
o回路のマスク・スライス・チップの場合、2〜5時間
以上のCPU時間を要する。従って非専用システムの場
合少なくとも1日のターン・アラワンド時間がかかる可
能性がある。技術的変更により同じチップに付き数回配
線決定を繰り返さなければならない可能性を考慮すると
、この時間?大幅に減少させる事は非常に利益がある。
物理的設計に費やされる全時間及びシステム開発時間の
減少は、製造コストの低下及び他の市場的利益全生み出
す。より迅速な配線決定は、ターン・アラウンド時間の
減少によシ、より迅速々技術的変更の能力を提供する。
減少は、製造コストの低下及び他の市場的利益全生み出
す。より迅速な配線決定は、ターン・アラウンド時間の
減少によシ、より迅速々技術的変更の能力を提供する。
この高速配線と共に対話式設計能力により、全設計がよ
り短時間に完了する。
り短時間に完了する。
現在使用されている多くのLSIチップは、構成要素及
び配線のレイアクトに関して対称的な構造を持ち、それ
らのチップはゲート・アレイ又はマスク・スライス・チ
ップと呼ばれている。マスク・スライス・チップは、1
つの面の能動回路領域の配列及びこれらの能動領域の間
全直交する方向に走る別の面の配線チャネルから成る。
び配線のレイアクトに関して対称的な構造を持ち、それ
らのチップはゲート・アレイ又はマスク・スライス・チ
ップと呼ばれている。マスク・スライス・チップは、1
つの面の能動回路領域の配列及びこれらの能動領域の間
全直交する方向に走る別の面の配線チャネルから成る。
装置中の種°々の配線の適当な径路を決定する物理的設
計オートメーンヨン・システムの部分は配線演算(wi
ring operation)と呼ばれる。
計オートメーンヨン・システムの部分は配線演算(wi
ring operation)と呼ばれる。
配線演算に関与する機能の注意深い解析により、現在直
列に実行されている多くの演算が実際は同時に実行し得
る事が示される。従って演算の能率は、ホスト・マシン
が同時並行演算全実行できない事によって制限されてい
る。
列に実行されている多くの演算が実際は同時に実行し得
る事が示される。従って演算の能率は、ホスト・マシン
が同時並行演算全実行できない事によって制限されてい
る。
配線演算は、多数回反復されるいくつかのステップを含
み、これらの演算は必ず通常のCPUにおける非常に多
数の命令が関係している。これらの演算は頻繁に起きる
ので、もしこれらの特殊な演算がスピード・アップされ
るならば配線の速度が非常に改善できる。これらの状況
を考慮して、多くの演算を並列に実行できる特性を持つ
専用の高速計算機を用い、CPUの配線演算の能率?低
下させている反復的動作を、複数の処理要素の各々に実
現された特殊化されたノ・−ドウエアによって実行する
事によって、配線の計算が効率的計つ経済的に実行され
る。
み、これらの演算は必ず通常のCPUにおける非常に多
数の命令が関係している。これらの演算は頻繁に起きる
ので、もしこれらの特殊な演算がスピード・アップされ
るならば配線の速度が非常に改善できる。これらの状況
を考慮して、多くの演算を並列に実行できる特性を持つ
専用の高速計算機を用い、CPUの配線演算の能率?低
下させている反復的動作を、複数の処理要素の各々に実
現された特殊化されたノ・−ドウエアによって実行する
事によって、配線の計算が効率的計つ経済的に実行され
る。
本発明によるVLS I物理的設計装置は、マスク・ス
ライス・チップ・イメージに対応するn×nのマトリッ
クスの形に配列された複数のマイクロプロセッサ様の特
殊な処理要素(SPE)から構成されたアレイ構造″f
r:有する。升ツブの各セル毎にSPEが関連付けられ
、各SPEは、マスク・スライス・チップ上の隣接する
能動構成要素及びチャネル交差に対応する。各SpEは
論理及びメモリの両者全音み、従ってマイクロプロセッ
サ様の要素である。通常の汎用のマイクロプロセッサと
違って、各SPEは、反復的に実行される汎用計算機に
おける命令の系列に対応する特殊比された機能をそのノ
・−ドウエアに組み込まれている。
ライス・チップ・イメージに対応するn×nのマトリッ
クスの形に配列された複数のマイクロプロセッサ様の特
殊な処理要素(SPE)から構成されたアレイ構造″f
r:有する。升ツブの各セル毎にSPEが関連付けられ
、各SPEは、マスク・スライス・チップ上の隣接する
能動構成要素及びチャネル交差に対応する。各SpEは
論理及びメモリの両者全音み、従ってマイクロプロセッ
サ様の要素である。通常の汎用のマイクロプロセッサと
違って、各SPEは、反復的に実行される汎用計算機に
おける命令の系列に対応する特殊比された機能をそのノ
・−ドウエアに組み込まれている。
従ってSPEは最小限のマシン・サイクル、好マしくは
1マシン・サイクルで各命令系列を実行するように設計
できる。カスタム設計により、SPEは約100本のピ
ン金有し100ns以下のサイクル・タイムを持つ単一
のVL、SIチップとして反計する事ができる。各SP
Eは管理制御ユニットに加えて、その4つの隣接SPE
とだけ通信する。
1マシン・サイクルで各命令系列を実行するように設計
できる。カスタム設計により、SPEは約100本のピ
ン金有し100ns以下のサイクル・タイムを持つ単一
のVL、SIチップとして反計する事ができる。各SP
Eは管理制御ユニットに加えて、その4つの隣接SPE
とだけ通信する。
SPEの配列に対する管埋制御は階層的でも又大局的で
も良い。前者の場合、局所的なSP’Eの群が少数の配
列から成る制御要素の1要素と通信し、さらに制御要素
は相互間で及び高位の制′#J機構に通信する。大局的
な方式の場合、全てのSPEが直接中央のスーパバイザ
と通信し、スーパバイザが情報のローディング及びアン
ローディング並びにタスク削り当てを制御する。中央ス
ーパバイザは個々の要素又は要素の群をアドレスすると
同様に回報通信できなければならない。
も良い。前者の場合、局所的なSP’Eの群が少数の配
列から成る制御要素の1要素と通信し、さらに制御要素
は相互間で及び高位の制′#J機構に通信する。大局的
な方式の場合、全てのSPEが直接中央のスーパバイザ
と通信し、スーパバイザが情報のローディング及びアン
ローディング並びにタスク削り当てを制御する。中央ス
ーパバイザは個々の要素又は要素の群をアドレスすると
同様に回報通信できなければならない。
背景技術
標準的セルの集積回路に関するマス・パターンの製造に
関していくつかの技術が知られているが、以下に示す技
術はVLS Iのセル間の配線技術に係るものではない
。
関していくつかの技術が知られているが、以下に示す技
術はVLS Iのセル間の配線技術に係るものではない
。
米国特許第4093990号明細書は、標準的セルから
成る集積回路に関するマス・パターンの製造方法の1例
を示している。セルは最初に、群の間に出来るだけ少数
の接続しか存在しないように所定の数のセルの群に分け
られる。各群の場所的要求は等しい。
成る集積回路に関するマス・パターンの製造方法の1例
を示している。セルは最初に、群の間に出来るだけ少数
の接続しか存在しないように所定の数のセルの群に分け
られる。各群の場所的要求は等しい。
米国特許第3653070号明細書は、プリント回路技
術によって製造される論理回路に関するアート・ワーク
の製造方法を示している。このアート・ワークは、パッ
ケージ・ルーチン、配置ルーチン、径路ルーチン及び検
査ルーチンを実行するようにプログラムされたデータ処
理機械によって作成、される。
術によって製造される論理回路に関するアート・ワーク
の製造方法を示している。このアート・ワークは、パッ
ケージ・ルーチン、配置ルーチン、径路ルーチン及び検
査ルーチンを実行するようにプログラムされたデータ処
理機械によって作成、される。
以下の米国特許明細書及び防衛特許出願(Defens
ive Publication)は集積回路に関する
マ\ス・パターン等の種々の製造技術を示している。
ive Publication)は集積回路に関する
マ\ス・パターン等の種々の製造技術を示している。
米国特許第3567914号;第3575588号:第
3601590号;第3603771号;第36530
71号:第z、 6.53072号:第3654615
号:第5968478号;及び防衛特許第P940..
020号。
3601590号;第3603771号;第36530
71号:第z、 6.53072号:第3654615
号:第5968478号;及び防衛特許第P940..
020号。
波動方程式、画像処理の問題等を解くためにデータ・マ
トリックスに対して変換を行なうために矩形のディジタ
ル論理アレイを用いるための種々の技術が知られている
。しかしながら半導体構成要素の物理的設計及び配線径
路決定に関してアレイ処理を応用した例は知られていな
いつ米国特許第4215401号明細書は、中央プロセ
ッサの制御の下にデータ・マトリックスに対して順次の
変換演算を行なう、相互接続された複数の同一のセル’
に!する型のディジタル・アレイ・プロセッサを、より
具体的には独特な形式のセル購Fjy、及び処理セル間
の相互接続を開示しているうそのアレイ・プロセッサは
、嚇−命令多数データ・フロー(SIMD)マシンであ
って、順次シフトンジ、スタによってその4つの隣接セ
ルと通信し、従って同時アクセスを許をない。制御は、
vLS■設計に必要な個体本位の自律的なものではなく
、中央集権化されたものである。アレイ内の内部ノード
は独立に選択する事はできず、即ち独立なX/Y選択機
構は存在しない。従ってこのプロセッサのアレイ1dV
LsI又は物理的設計には有用ではない。
トリックスに対して変換を行なうために矩形のディジタ
ル論理アレイを用いるための種々の技術が知られている
。しかしながら半導体構成要素の物理的設計及び配線径
路決定に関してアレイ処理を応用した例は知られていな
いつ米国特許第4215401号明細書は、中央プロセ
ッサの制御の下にデータ・マトリックスに対して順次の
変換演算を行なう、相互接続された複数の同一のセル’
に!する型のディジタル・アレイ・プロセッサを、より
具体的には独特な形式のセル購Fjy、及び処理セル間
の相互接続を開示しているうそのアレイ・プロセッサは
、嚇−命令多数データ・フロー(SIMD)マシンであ
って、順次シフトンジ、スタによってその4つの隣接セ
ルと通信し、従って同時アクセスを許をない。制御は、
vLS■設計に必要な個体本位の自律的なものではなく
、中央集権化されたものである。アレイ内の内部ノード
は独立に選択する事はできず、即ち独立なX/Y選択機
構は存在しない。従ってこのプロセッサのアレイ1dV
LsI又は物理的設計には有用ではない。
米国特許第5979728号明細書は、通常の計算機の
周辺装置として動作可能なアレイ・プロセッサを示して
いるう各処理要素はピット・シリアル方式で組織され、
シングル°ビットのレジスタ及びビット・アドレス可能
な記憶装置を有し、アレイはマイクロプログラムされた
主制御ユニットによって鯖御される。従ってこの装置は
上記装置と同様のSIMDマシンである。この装置は、
与えられた時間に複数の列及び行孕選択するのではなく
、一時にアレイ中の1つの行及び1つの列を選択する。
周辺装置として動作可能なアレイ・プロセッサを示して
いるう各処理要素はピット・シリアル方式で組織され、
シングル°ビットのレジスタ及びビット・アドレス可能
な記憶装置を有し、アレイはマイクロプログラムされた
主制御ユニットによって鯖御される。従ってこの装置は
上記装置と同様のSIMDマシンである。この装置は、
与えられた時間に複数の列及び行孕選択するのではなく
、一時にアレイ中の1つの行及び1つの列を選択する。
SIMD処理装置はSOLOMON計算機(Slotn
ick他、Fall Joint Computer
Conference1962、p、 97 : Gr
egory他、IEEETransactions o
n Electronic Computers。
ick他、Fall Joint Computer
Conference1962、p、 97 : Gr
egory他、IEEETransactions o
n Electronic Computers。
I)ecember 1963、p、774)に説明さ
れて−いる。この装置は比較的単純な処理要素のアレイ
から成り、その各々はピント・シリアル方式の入力デー
タに灯して算術演算?行なうように構成される。この装
置の発達したものはILLIAC■計算機(Barne
s他、I EEE、 April 1972、p、3
69)である。
れて−いる。この装置は比較的単純な処理要素のアレイ
から成り、その各々はピント・シリアル方式の入力デー
タに灯して算術演算?行なうように構成される。この装
置の発達したものはILLIAC■計算機(Barne
s他、I EEE、 April 1972、p、3
69)である。
North−Holland Publishing
Company、 1979年刊のComputer−
Aided Design ofDigital E
lectronic C4rcuits and Sy
stems”の中の5tephan C,Hoffma
nによる” AutomaticGate A11oc
ation Placement and Routi
ng”と題する記事は、VLSI回路網のための自動的
ゲート割g当て、配置及び配線経路決定に関して用いら
れるアルゴリズムを示している。このアルゴリズムは1
度に1つのネッIf経路決定し、将来の経路の経路決定
可能性に対する現在の経路の結果全考慮しない。
Company、 1979年刊のComputer−
Aided Design ofDigital E
lectronic C4rcuits and Sy
stems”の中の5tephan C,Hoffma
nによる” AutomaticGate A11oc
ation Placement and Routi
ng”と題する記事は、VLSI回路網のための自動的
ゲート割g当て、配置及び配線経路決定に関して用いら
れるアルゴリズムを示している。このアルゴリズムは1
度に1つのネッIf経路決定し、将来の経路の経路決定
可能性に対する現在の経路の結果全考慮しない。
本発明によれば、セルから構成されるVLS I回路構
造における配線経路を決定する装置が示される。そこで
は複数のネットに関する複数の経路が同時に考慮され、
混雑評価を行なう事によって他の経路の経路決定可能性
(routability )を考慮した所定の経路
が得られる。これは、1つのプロセッサがVLS Iチ
ップの各セルに専用に割り当てられた、1司−のマルチ
・ポート・プロセッサの配列と通信する管理ユニットに
よって達成さレル。M I MDモードで動作する各プ
ロセッサUその4つの隣接プロセッサと同時に通信し、
混雑評価全同時に実行し且っVLS Iアレイの1点か
ら次の点へのチャネル経路を決定する。但しチャネル経
路決定は垂直及び水平な経路を含む。
造における配線経路を決定する装置が示される。そこで
は複数のネットに関する複数の経路が同時に考慮され、
混雑評価を行なう事によって他の経路の経路決定可能性
(routability )を考慮した所定の経路
が得られる。これは、1つのプロセッサがVLS Iチ
ップの各セルに専用に割り当てられた、1司−のマルチ
・ポート・プロセッサの配列と通信する管理ユニットに
よって達成さレル。M I MDモードで動作する各プ
ロセッサUその4つの隣接プロセッサと同時に通信し、
混雑評価全同時に実行し且っVLS Iアレイの1点か
ら次の点へのチャネル経路を決定する。但しチャネル経
路決定は垂直及び水平な経路を含む。
発明の開示
論理素子の配列から成る大規模集積回路構造の物理的設
計のための装置が示される。管理装置が同一のマルチポ
ート処理装置と通信し、そのような処理装置の1つは種
々の論理素子の間の配線経路を決定するために各論理素
子に専用的に割り当てられている。各処理装置はその4
つの隣接する処理装置と同時に通信し、配列中の1点か
ら他の点へのチャネル経路環?決定するために種々の計
算?行なう。但しチャネル経路は垂直及び水平な経路ケ
ゴむ。最適のチャネル経路の決定に続いて、垂直及び水
平の正確な経路が次に決定され、そしてオーバーフロー
・ルーティングが考慮される。
計のための装置が示される。管理装置が同一のマルチポ
ート処理装置と通信し、そのような処理装置の1つは種
々の論理素子の間の配線経路を決定するために各論理素
子に専用的に割り当てられている。各処理装置はその4
つの隣接する処理装置と同時に通信し、配列中の1点か
ら他の点へのチャネル経路環?決定するために種々の計
算?行なう。但しチャネル経路は垂直及び水平な経路ケ
ゴむ。最適のチャネル経路の決定に続いて、垂直及び水
平の正確な経路が次に決定され、そしてオーバーフロー
・ルーティングが考慮される。
発明ケ実施するための最良の形態
基板上に形成された論理装置の配列を相互接続するため
に用いられる、マルチポート・プロセッサの/ステム全
管理ユニットと共に示す。第1図全参照すると、nXn
の配列が示され、行と列との交点にある論理装置は論理
サービス端子(LST)と呼ばれる複数個の端子(例え
ば0.1.2.3と番号の付σれた4つの端子)を含む
。この論理装置及び配列中の他の論理装置はレジスタ、
フリップフロップ、及びNAND、0RNNOR等のゲ
ート回路でも良い。例えば図中の装置は6人力NAND
装置又1−1:4端子を有する何か他の装置でも良い。
に用いられる、マルチポート・プロセッサの/ステム全
管理ユニットと共に示す。第1図全参照すると、nXn
の配列が示され、行と列との交点にある論理装置は論理
サービス端子(LST)と呼ばれる複数個の端子(例え
ば0.1.2.3と番号の付σれた4つの端子)を含む
。この論理装置及び配列中の他の論理装置はレジスタ、
フリップフロップ、及びNAND、0RNNOR等のゲ
ート回路でも良い。例えば図中の装置は6人力NAND
装置又1−1:4端子を有する何か他の装置でも良い。
この端子の数は1例であって、ある論理装置は4以外の
端子?持つ事もある。例えばインバータの場合、4つの
端子のうち2つしか使われない。各論理装置に付随して
、順次の層に水平及び垂直の配線トラックが設けられる
。)LSTの直接上部には絶縁層が存在する。絶縁層の
上には、垂、直な配線が付着され得る。もし論理装置上
のLSTのいずれか?垂直配線に接続する必要があれば
、垂直なビン又はバイアを形成し、絶縁層を経て垂直配
線1LsTに接続する。垂直配線は0〜7の番号が付け
られているが、この番号は例であって垂直配線の数はこ
れよシも少なくても又多くても良い。この上にざらに他
の絶縁層が設けられ、この第2の絶縁層の上に水平配線
が付着される。
端子?持つ事もある。例えばインバータの場合、4つの
端子のうち2つしか使われない。各論理装置に付随して
、順次の層に水平及び垂直の配線トラックが設けられる
。)LSTの直接上部には絶縁層が存在する。絶縁層の
上には、垂、直な配線が付着され得る。もし論理装置上
のLSTのいずれか?垂直配線に接続する必要があれば
、垂直なビン又はバイアを形成し、絶縁層を経て垂直配
線1LsTに接続する。垂直配線は0〜7の番号が付け
られているが、この番号は例であって垂直配線の数はこ
れよシも少なくても又多くても良い。この上にざらに他
の絶縁層が設けられ、この第2の絶縁層の上に水平配線
が付着される。
次にこれらの水平配線は、水平配線と垂直配線との交点
に挿入されそれらの間の絶縁層?貫通するビンあるいは
バイアによって、垂直配線に接続される。これらの回路
製造技術は当分針で周知の事でアシ、本発明の本質は各
論理装置間の配線経路の決定にあるので、詳しくは説明
しない。4つの水平配線トラックA、3 c及びDが示
されているが、4・発明全実施する時それ以外の数の配
線トラックを用いる事もでさる。ここでチャネルとは、
配列中の論理装置に付随する複数の配線トラックケ意味
する。例えばトラックO〜7は第1図に示したチップの
垂直チャネル全購戎し、トラックA、BlC及びDは水
モチャネル全構成する。装置及びその隣りのチャネル交
点は4つの境界を持ち、そのような境界金有する格子領
域は配列のセルと呼ばれる。
に挿入されそれらの間の絶縁層?貫通するビンあるいは
バイアによって、垂直配線に接続される。これらの回路
製造技術は当分針で周知の事でアシ、本発明の本質は各
論理装置間の配線経路の決定にあるので、詳しくは説明
しない。4つの水平配線トラックA、3 c及びDが示
されているが、4・発明全実施する時それ以外の数の配
線トラックを用いる事もでさる。ここでチャネルとは、
配列中の論理装置に付随する複数の配線トラックケ意味
する。例えばトラックO〜7は第1図に示したチップの
垂直チャネル全購戎し、トラックA、BlC及びDは水
モチャネル全構成する。装置及びその隣りのチャネル交
点は4つの境界を持ち、そのような境界金有する格子領
域は配列のセルと呼ばれる。
以前に述べたように、セルは配列中の行及び列の位置に
よって識別される。そのような論理装置の各々に付さ、
専用多ボート処理装置(SPE)が存在する。SPEの
動作を説明すると、各SPLは制御装置とも呼ばれる管
理計算機と通信する。
よって識別される。そのような論理装置の各々に付さ、
専用多ボート処理装置(SPE)が存在する。SPEの
動作を説明すると、各SPLは制御装置とも呼ばれる管
理計算機と通信する。
制御装置は各SPEにそれが必要とする情報を与え、各
SPEが制御装置によって指定された機能を終えると、
制御装置はSPEから情報を受は取る。種々の論理サー
ビス端子(LST)i接続する配線経路tf S P
Eがいかにして決定するかは、後述する。
SPEが制御装置によって指定された機能を終えると、
制御装置はSPEから情報を受は取る。種々の論理サー
ビス端子(LST)i接続する配線経路tf S P
Eがいかにして決定するかは、後述する。
以前に示した通り、配列中の各セルは水平及び垂直のチ
ャネル並びにチャネルの各交点の能動回路素子から構成
される。各チャネルは特定の数の配線トラックを有し、
その上に各回路要素間において各LSTに至る信号配線
を決定しなければならない。各セルは隣のセルとの間に
4つの境界を有し、その境界により分割された格子領域
はセルと呼ばれる。1つのSPEは1つのそのようなセ
ル?表現する。
ャネル並びにチャネルの各交点の能動回路素子から構成
される。各チャネルは特定の数の配線トラックを有し、
その上に各回路要素間において各LSTに至る信号配線
を決定しなければならない。各セルは隣のセルとの間に
4つの境界を有し、その境界により分割された格子領域
はセルと呼ばれる。1つのSPEは1つのそのようなセ
ル?表現する。
そのようなチップの配線における最も重要な段階は、配
線すべき各ネットに関する大局的なチャネルの割り当て
である。ネットとは、配線接続によって電気的に共通に
でれるべき端子点と定義される。大局的配線は、所定の
配線がどの具体的なトラックに割り当てるかに無関係に
、利用可能なチャネル?経て全てのネットi経路決定す
る。大局的割り当ての主な拘束はチャネル容量、即ち各
セル境界における利用可能なトラック数でるる。
線すべき各ネットに関する大局的なチャネルの割り当て
である。ネットとは、配線接続によって電気的に共通に
でれるべき端子点と定義される。大局的配線は、所定の
配線がどの具体的なトラックに割り当てるかに無関係に
、利用可能なチャネル?経て全てのネットi経路決定す
る。大局的割り当ての主な拘束はチャネル容量、即ち各
セル境界における利用可能なトラック数でるる。
目標は、チャネル容量に反する事なく全配線長を最小化
するように全てのネットヲ経路決定する事である。さら
に、0Tq’eならば、次の正確なトラック割り当ての
過程を容易にするために、残りのチャネル容量fd大叱
する、即ちトラックの利用率を均等化するという付加的
目標が存在する。大局的配線ば、後述する非線型コスト
迷路走行法を用いて行なわれる。この大局的経路決定過
程は、最短到達OT能距離に迂回限界(d)を加えたも
のの範囲内で、ノース配線から772点への最良コスト
の経路を発見する。
するように全てのネットヲ経路決定する事である。さら
に、0Tq’eならば、次の正確なトラック割り当ての
過程を容易にするために、残りのチャネル容量fd大叱
する、即ちトラックの利用率を均等化するという付加的
目標が存在する。大局的配線ば、後述する非線型コスト
迷路走行法を用いて行なわれる。この大局的経路決定過
程は、最短到達OT能距離に迂回限界(d)を加えたも
のの範囲内で、ノース配線から772点への最良コスト
の経路を発見する。
製造技術の急速な進歩に、1辺が約6mm以下のチップ
上に数万個の直子回路金載せる事を現在可能にしている
。そして集積fヒのレベルは少なくとも近い将来におい
ては高くなり続ける事が予想σれる。しかしながら、こ
の洗練でれた技術とこの技術ヶ利用するために利用でさ
る道具との間にはギャップが存在している。物理的設計
とは、相互接続された論理ゲートによって表わされたデ
ィジタル・システムの設計を、そのシステムのための1
つのチップ又は1組のチップ全製造する時に使われるべ
き1組のマスクに関するパターンに変換する技術を言う
。物理的設計のための道具は、一般に、種々の変換のス
テップ?助けるソフトウェア・パッケージの形式を取る
。その3つの共通な別々の−といっても決して無関係で
はないが−ステップは分割、配置及び配線である。分割
とは、単一のチップが全体の設計全音み得ない時に、大
きな設計の一部を異なったチップに割り当てる工程の事
である、また配置工程では、チップの構成要素、普通は
ゲート全チップ内に配置する。
上に数万個の直子回路金載せる事を現在可能にしている
。そして集積fヒのレベルは少なくとも近い将来におい
ては高くなり続ける事が予想σれる。しかしながら、こ
の洗練でれた技術とこの技術ヶ利用するために利用でさ
る道具との間にはギャップが存在している。物理的設計
とは、相互接続された論理ゲートによって表わされたデ
ィジタル・システムの設計を、そのシステムのための1
つのチップ又は1組のチップ全製造する時に使われるべ
き1組のマスクに関するパターンに変換する技術を言う
。物理的設計のための道具は、一般に、種々の変換のス
テップ?助けるソフトウェア・パッケージの形式を取る
。その3つの共通な別々の−といっても決して無関係で
はないが−ステップは分割、配置及び配線である。分割
とは、単一のチップが全体の設計全音み得ない時に、大
きな設計の一部を異なったチップに割り当てる工程の事
である、また配置工程では、チップの構成要素、普通は
ゲート全チップ内に配置する。
しばしばそれらの構成要素が配置され得る位置は明確に
定まったスロットであって、それらにその構成要素を相
互接続するための配線即ち金属セグメントが通る事ので
きる領域によって互いに隔てられている。そのような構
造がスロットの矩形配列の形を収る時、それはゲート・
アレイ又はマスク・スライス・チップと呼ばれる。また
相互接続のために構成要素間の空間ケ割り当てるのに用
いられるアルゴリズムは配線パッケージに含まれる。
定まったスロットであって、それらにその構成要素を相
互接続するための配線即ち金属セグメントが通る事ので
きる領域によって互いに隔てられている。そのような構
造がスロットの矩形配列の形を収る時、それはゲート・
アレイ又はマスク・スライス・チップと呼ばれる。また
相互接続のために構成要素間の空間ケ割り当てるのに用
いられるアルゴリズムは配線パッケージに含まれる。
物理的設計の道具と進歩する技術との間のギャノブは、
分割、配置及び配線のためのアルゴリズムの性能がチッ
プ上の構成要素の数の線型関数ではなく、チップの複雑
での増大と共に次第に悪fヒするという事実によって生
じている。また速いアルゴリズムは一般に良好なレイア
ラトラ作製するのに成功する事が少ない。
分割、配置及び配線のためのアルゴリズムの性能がチッ
プ上の構成要素の数の線型関数ではなく、チップの複雑
での増大と共に次第に悪fヒするという事実によって生
じている。また速いアルゴリズムは一般に良好なレイア
ラトラ作製するのに成功する事が少ない。
配@化力を犠牲にする事なくアルゴリズムのスピード紫
改善する1つの方法は、そのアルゴリズムの実行に高速
の機械ケ使用する事である。既存のプログラム?より速
く実行するために新しい世代の高速汎用計−機を待つの
は容易である。しかしながら、ハードウェアが物理的設
計アルゴリズムの特別な性質のあるものケ利用している
機械?設訂する事は、より効率的である。この事孕、配
線工程?考察する事によって説明する。
改善する1つの方法は、そのアルゴリズムの実行に高速
の機械ケ使用する事である。既存のプログラム?より速
く実行するために新しい世代の高速汎用計−機を待つの
は容易である。しかしながら、ハードウェアが物理的設
計アルゴリズムの特別な性質のあるものケ利用している
機械?設訂する事は、より効率的である。この事孕、配
線工程?考察する事によって説明する。
nXnの大きさの2次元マ) IJラックス形に構成さ
れた計算機の配列紫考える。各計算機はプロセッサ メ
モリ・ユニット、隣接計算機(境界にある場合?除けば
4つ)の各々への1つのポート及び制御装置と呼ばれる
付加的計算機へのリンクから成る。またX選択線及びX
選択線は、制御装置が配列中の任意の所望のノード又は
ノードの部分集合にアクセスする事を可能にする。ざら
に各ノードの計算機のメモリは、nXHの大きざのマス
ク・スライス・チップ中の対応する回路セルについての
完全な情報を保持しているものと仮にする。このような
計算機の複合体は数年前は考えらnなかったでろろうが
、マイクロプロセッサの出現がそのような方式全今日で
は安価で実用的なものにしている。そのようなアーキテ
クチャが配線アルゴリズムの性能全大幅に改善できるし
くみは2つ存在する。第1に、各ノードに計算機の存在
する事は配線アルゴリズム中のパラレリズムン利用する
重金可能にする。第2に、頻繁に使われる機能9は各ノ
ードの計算機の処理要素中に特殊命令としてハードウェ
アr<できる。
れた計算機の配列紫考える。各計算機はプロセッサ メ
モリ・ユニット、隣接計算機(境界にある場合?除けば
4つ)の各々への1つのポート及び制御装置と呼ばれる
付加的計算機へのリンクから成る。またX選択線及びX
選択線は、制御装置が配列中の任意の所望のノード又は
ノードの部分集合にアクセスする事を可能にする。ざら
に各ノードの計算機のメモリは、nXHの大きざのマス
ク・スライス・チップ中の対応する回路セルについての
完全な情報を保持しているものと仮にする。このような
計算機の複合体は数年前は考えらnなかったでろろうが
、マイクロプロセッサの出現がそのような方式全今日で
は安価で実用的なものにしている。そのようなアーキテ
クチャが配線アルゴリズムの性能全大幅に改善できるし
くみは2つ存在する。第1に、各ノードに計算機の存在
する事は配線アルゴリズム中のパラレリズムン利用する
重金可能にする。第2に、頻繁に使われる機能9は各ノ
ードの計算機の処理要素中に特殊命令としてハードウェ
アr<できる。
例えば各々市販の8ビツトのマイクロプロセッサ、2キ
ロバイトのメモリそして隣シ及び制御装置との通信を可
能にする補助回路から構成される8×8の計算機の配列
が配線機能に使用できる。
ロバイトのメモリそして隣シ及び制御装置との通信を可
能にする補助回路から構成される8×8の計算機の配列
が配線機能に使用できる。
制(財)装置も8ビツトのマイクロプロセッサであって
、48キロバイトのメモリ、フロッピー及びハードのテ
ィスフ・ユニット、プリンタ、端末及び機構のホスト・
コンピュータ・システムへのリンフケ何する。次に配[
−実行する時のステップの詳細を述べる。8×8の配列
は、64個以上の゛構成要素金有するチップ?配線する
ようにプログラムする事ができる。
、48キロバイトのメモリ、フロッピー及びハードのテ
ィスフ・ユニット、プリンタ、端末及び機構のホスト・
コンピュータ・システムへのリンフケ何する。次に配[
−実行する時のステップの詳細を述べる。8×8の配列
は、64個以上の゛構成要素金有するチップ?配線する
ようにプログラムする事ができる。
大局的配線とは、チャネル内のトラック全具体的に割り
当てる事なくチップ内のチャネルに対して配@全割り当
てる配線の段階に対して与えられた名称でるる。チャネ
ル内でのトラックの割g当て汀、そ!J)後の正確な埋
め込みアルゴリズムによって実行される。大局的配線を
始める前に、各ノードば、4つの方向の各々において利
用可能なトラックの総数を計算する。またそのノードに
端子?有するネットのリストも与えられる(ネットとは
共に接続すべき2つ以上の端子の集合である)。
当てる事なくチップ内のチャネルに対して配@全割り当
てる配線の段階に対して与えられた名称でるる。チャネ
ル内でのトラックの割g当て汀、そ!J)後の正確な埋
め込みアルゴリズムによって実行される。大局的配線を
始める前に、各ノードば、4つの方向の各々において利
用可能なトラックの総数を計算する。またそのノードに
端子?有するネットのリストも与えられる(ネットとは
共に接続すべき2つ以上の端子の集合である)。
(a) 配線すべきネット毎に、それがそのノードに
端子全方する場合も有さない場合も、ノードはそれが各
方向においてそのネットのある接続の一員でろる見込み
を計算し、その方向における混雑評価に対して適当なコ
ストヲ付は加える。
端子全方する場合も有さない場合も、ノードはそれが各
方向においてそのネットのある接続の一員でろる見込み
を計算し、その方向における混雑評価に対して適当なコ
ストヲ付は加える。
混雑評価値はネットの端子ノードからそのノードまでの
距離の減少関数である。
距離の減少関数である。
(b) ステップ(、)が全てのネットについて完了
した後、以下概観するステップ(c)〜(g)が第1の
ネットに関して実行され、その後ネット毎に繰り返され
る。
した後、以下概観するステップ(c)〜(g)が第1の
ネットに関して実行され、その後ネット毎に繰り返され
る。
(c) 与えられたネットに関して、ノードは現在の
総計混雑評価値からそのネットに関する混雑評価の寄与
ヲサし引く。この動作は4つのポートの各々に付き行な
われるう (d) 不使用トラックの数及び各ポートにおける更
新された混雑評価に基づいて、ノードは4つのポートの
各々に付きポート・コストを計算する。このコストUそ
の方向においてトラックを占有する事に関するペナルテ
ィの表示である。
総計混雑評価値からそのネットに関する混雑評価の寄与
ヲサし引く。この動作は4つのポートの各々に付き行な
われるう (d) 不使用トラックの数及び各ポートにおける更
新された混雑評価に基づいて、ノードは4つのポートの
各々に付きポート・コストを計算する。このコストUそ
の方向においてトラックを占有する事に関するペナルテ
ィの表示である。
従ってトラックが1つしか残っていないポートを通る場
合のペナルティは多くのトラックが残ツテイル場合より
も重い。しかしこのペナルティだけがポート・コストと
して働く事はあり得ない。というのはそれは、例えその
ポートの使用?求めて競争するネットが僅がしか残って
いない場合でも、少ししがトラックの残っていないポー
トにペナルティを課すからである。未配線ネットの需要
はポートにおける混雑評価値で表わσれる。従って残存
混雑評価値と残存容量の関数がポート・コスト関数とし
てより良く働く。
合のペナルティは多くのトラックが残ツテイル場合より
も重い。しかしこのペナルティだけがポート・コストと
して働く事はあり得ない。というのはそれは、例えその
ポートの使用?求めて競争するネットが僅がしか残って
いない場合でも、少ししがトラックの残っていないポー
トにペナルティを課すからである。未配線ネットの需要
はポートにおける混雑評価値で表わσれる。従って残存
混雑評価値と残存容量の関数がポート・コスト関数とし
てより良く働く。
(e) 次に前方伝搬段階が来る。ネットの端子ノー
)”ノ1 ツh 7−ス、他の全てはシンクト呼ばれ
る。ンース駆 4つの方向の各々において、憐り一その
方向のポートに関するポート・コスト音速る。同時に全
ての他のノードはその隣りに任意の大きな数値を送る。
)”ノ1 ツh 7−ス、他の全てはシンクト呼ばれ
る。ンース駆 4つの方向の各々において、憐り一その
方向のポートに関するポート・コスト音速る。同時に全
ての他のノードはその隣りに任意の大きな数値を送る。
その後の各タイム・ステップにおいて、各ノードはその
ポートに到来した数値勿ピック・アップし、それらの最
小値を決定する。そしてこの最小値が到来した方向にポ
インタがセットされる。ボート毎にし一ドは、(d)で
計算されたポート・コストをその最小値に加算し、修正
した数値をその方向の隣接ノードに送る。1度ノードが
意味のある数値即ち上述の任意の犬さな値ではない数値
を送ると、そのノードは次のタイム・ステップではこの
任意に大きな値葡送るようになる。
ポートに到来した数値勿ピック・アップし、それらの最
小値を決定する。そしてこの最小値が到来した方向にポ
インタがセットされる。ボート毎にし一ドは、(d)で
計算されたポート・コストをその最小値に加算し、修正
した数値をその方向の隣接ノードに送る。1度ノードが
意味のある数値即ち上述の任意の犬さな値ではない数値
を送ると、そのノードは次のタイム・ステップではこの
任意に大きな値葡送るようになる。
(f) 6るシンクが意味のある値を受は取ると、そ
のシンクは制御装置に通報する事によって前方伝搬過程
を停止でせる。同時に2以上のシンクに到達する事が可
能なので、制御VC置はセルをポーリングするか又は他
の何らかの方式によって、最も小さな最小値を有するシ
ンク・セル全決定する。この後バックトレースが開始す
る。
のシンクは制御装置に通報する事によって前方伝搬過程
を停止でせる。同時に2以上のシンクに到達する事が可
能なので、制御VC置はセルをポーリングするか又は他
の何らかの方式によって、最も小さな最小値を有するシ
ンク・セル全決定する。この後バックトレースが開始す
る。
シンクはその記憶じているポインタの方向にある隣接ノ
ードにプロンプトする。次の各タイム・ステップにおい
て、その隣接ノードによってプロンプトされたノードは
前方伝搬段階の間に記憶された方向にろる他のノードを
プロンプトする。この過程はソースに到達するまで続く
。
ードにプロンプトする。次の各タイム・ステップにおい
て、その隣接ノードによってプロンプトされたノードは
前方伝搬段階の間に記憶された方向にろる他のノードを
プロンプトする。この過程はソースに到達するまで続く
。
プロンプトされたノードは適当・なポートのチャネル容
tk減らし、そのネットに対する入口点及び出口点?記
録する。
tk減らし、そのネットに対する入口点及び出口点?記
録する。
(g) 現在のネットに関して入ロ/出ロ点會記録し
た全てのノードは次の前方伝搬に関してソースになる。
た全てのノードは次の前方伝搬に関してソースになる。
接続されるべき状態に残された全てのネット端子はシン
クとして作用する。1つのネットに関する過程は、その
ネットに関してシンクが全く残らなくなった時に終了す
る。
クとして作用する。1つのネットに関する過程は、その
ネットに関してシンクが全く残らなくなった時に終了す
る。
これまでに述べた工程は、ソースと任意のシンクとの間
の最短の経路を決定し、もし2つ以上のものがあれば最
小のコスト?持つ経路を選択する。
の最短の経路を決定し、もし2つ以上のものがあれば最
小のコスト?持つ経路を選択する。
これはソースと最近接シンクとの間の直線距離に比例す
る時間で行なわれる。配置が良好な時、この距離はチッ
プ寸法の増加と共に非常に緩やかに増加する。事実、1
0000回路のチップの場合でさえもこの距離の妥当な
評価1l−1:5である。しかしながら配線すべきネッ
トの数はチップ寸法のほぼ線型関数であり、従って上述
の全工程に関する時間はほぼチップ寸法の線型関数であ
る事が結論される。
る時間で行なわれる。配置が良好な時、この距離はチッ
プ寸法の増加と共に非常に緩やかに増加する。事実、1
0000回路のチップの場合でさえもこの距離の妥当な
評価1l−1:5である。しかしながら配線すべきネッ
トの数はチップ寸法のほぼ線型関数であり、従って上述
の全工程に関する時間はほぼチップ寸法の線型関数であ
る事が結論される。
最短の経路が最小コストの経路にはならない場合が存在
する。ソースとシンクとの間の最短経路からの何らかの
ずれは迂回路と呼ばれる。配線町・能件の観点からは、
アルゴリズムが適当な迂回路を実行する時に、より良い
性能が得られる。この概念においては、初期に配置きれ
たネットは必ずしも最短経路に配置されない。むしろ、
将来のネットが阻害、されないように、それらは避ける
事が好ましい領域に到達すると迂回する事?許される。
する。ソースとシンクとの間の最短経路からの何らかの
ずれは迂回路と呼ばれる。配線町・能件の観点からは、
アルゴリズムが適当な迂回路を実行する時に、より良い
性能が得られる。この概念においては、初期に配置きれ
たネットは必ずしも最短経路に配置されない。むしろ、
将来のネットが阻害、されないように、それらは避ける
事が好ましい領域に到達すると迂回する事?許される。
これは、上述の手順に対して以下の修正?加える事によ
って達成される。
って達成される。
迂回路がdよりも長くない、最小コストの経路が望まれ
ると仮定する。前方伝搬段階の間、各ノードは、1つの
意味のめる数値を送った後に休止する(任意の大きな数
値を隣りに送る)代りに、今回はd+1個の意味のある
数値を送った後に休止する。(ポートにおける阻害はポ
ート・コスト自体を非常に高くする原因になり得る事に
注意つ゛その結果、もしどのシンクにも到達しなければ
、ネットは後に配線するために別に取って置かれる。
ると仮定する。前方伝搬段階の間、各ノードは、1つの
意味のめる数値を送った後に休止する(任意の大きな数
値を隣りに送る)代りに、今回はd+1個の意味のある
数値を送った後に休止する。(ポートにおける阻害はポ
ート・コスト自体を非常に高くする原因になり得る事に
注意つ゛その結果、もしどのシンクにも到達しなければ
、ネットは後に配線するために別に取って置かれる。
しかしながら、ノードが意味のある数値を送り始めると
、その後のりタイム・ステップのいずれにおいてもそれ
はより高い数値を送る事が不可能である。)各ノードは
、数値が到着したタイム・ステップに関してそれが最良
の数値を受は取った方向r表示するテーブルも保持して
いる。もし方向の選択が存在するならば、可能であれば
前のステップにおける方向が好ましい。(これは、同じ
最小総計コスト’に持つ異なった長さの経路があれば最
短の経路を得るのに役立つ。)パックトレース工程は、
最小コストのシンクが最近の活動タイム・ステップ例え
ばtに関して記憶でれていた方向のpJI 4mノード
ケプロンプトする事によって開始される。隣接ノード奮
プロンプトする時、それば数値t−1も隣接ノードに送
る。そして隣接ノードばそのテーブルを参照して、タイ
ム・ステップt−1に対して記憶されていた方向にある
隣接ノード葡、数値t−2と共に、プロンプトする。こ
の工程は、以前と同様に、シンクに到達するまで続く。
、その後のりタイム・ステップのいずれにおいてもそれ
はより高い数値を送る事が不可能である。)各ノードは
、数値が到着したタイム・ステップに関してそれが最良
の数値を受は取った方向r表示するテーブルも保持して
いる。もし方向の選択が存在するならば、可能であれば
前のステップにおける方向が好ましい。(これは、同じ
最小総計コスト’に持つ異なった長さの経路があれば最
短の経路を得るのに役立つ。)パックトレース工程は、
最小コストのシンクが最近の活動タイム・ステップ例え
ばtに関して記憶でれていた方向のpJI 4mノード
ケプロンプトする事によって開始される。隣接ノード奮
プロンプトする時、それば数値t−1も隣接ノードに送
る。そして隣接ノードばそのテーブルを参照して、タイ
ム・ステップt−1に対して記憶されていた方向にある
隣接ノード葡、数値t−2と共に、プロンプトする。こ
の工程は、以前と同様に、シンクに到達するまで続く。
上記手順に対して単純な修正を行なえば上記アルゴリズ
ムの時間的及び令聞的な複雑性?少し改善できる。しか
し記載を簡潔にするため、ここには記さない。また4方
向の各々に付き1つのテーブルを保持し、前方伝搬の間
に(バイアのコストも含む)最良のコスト及び各出口ポ
ートに関する最良の方向を計算する事によってターン(
バイアの使用)にペナルティを課す事もできる。アルゴ
リズムは、バイアのコスト全決定するためにセルにおい
て許される最小数のバイア及び最大数のバイアを使用し
ている。
ムの時間的及び令聞的な複雑性?少し改善できる。しか
し記載を簡潔にするため、ここには記さない。また4方
向の各々に付き1つのテーブルを保持し、前方伝搬の間
に(バイアのコストも含む)最良のコスト及び各出口ポ
ートに関する最良の方向を計算する事によってターン(
バイアの使用)にペナルティを課す事もできる。アルゴ
リズムは、バイアのコスト全決定するためにセルにおい
て許される最小数のバイア及び最大数のバイアを使用し
ている。
前述の機械?用いた小さな例に上記アルゴリズムを使用
すると、所要時間はリアルタイムが2秒以下でめった。
すると、所要時間はリアルタイムが2秒以下でめった。
迂回路限界d全0にセットした時、プログラムは全ての
ネツtf最小5tein6r 接続の形に接続した。
ネツtf最小5tein6r 接続の形に接続した。
迂回限界を増加させた時、ネットはより長い経路を取っ
たが、実行終了時に残ったチャネル容量はチップ全体に
わたって一様な拡がシを示した。これは、ネットが迂回
?許された時にそれらが将来のネットの配線をよシ容易
にするようなやり方で迂回を行なう事を立証している。
たが、実行終了時に残ったチャネル容量はチップ全体に
わたって一様な拡がシを示した。これは、ネットが迂回
?許された時にそれらが将来のネットの配線をよシ容易
にするようなやり方で迂回を行なう事を立証している。
この事は、大局的配線に引き続く正確な埋め込みの段階
にとってかなり役立つ事が判明している。
にとってかなり役立つ事が判明している。
また残りのネットが少ない事によりチャネル需要が減少
した時の終了時にはネットは最小5tetner長さで
配線された事も観察されている。
した時の終了時にはネットは最小5tetner長さで
配線された事も観察されている。
より大きなチップを配線する時に配線機械をより有用に
するために、小ざなノ・−ドウエアの修正を行なう事が
できる。即ち、北端のノードがその北隣りのノードとし
て南端のノードr有し、東端のノードがその東隣りのノ
ードとして西端のノードを有するように、計算機の配列
の端を巻き付けるような形に接続する事ができる。
するために、小ざなノ・−ドウエアの修正を行なう事が
できる。即ち、北端のノードがその北隣りのノードとし
て南端のノードr有し、東端のノードがその東隣りのノ
ードとして西端のノードを有するように、計算機の配列
の端を巻き付けるような形に接続する事ができる。
例えば8X8の計算機配列を用いて24X24の回路チ
ップの配線を試みる事のできる2つの基本的方法がある
。第1の方法でに、計算機配列の各ノードにおいて3×
3の大きさの回路配列が表現されるように、単に大きな
チップを大きな区画に分割する。折9たたみ(fold
ing )と呼ばれる第2の方法では、回路分割は24
X24の形に保たれる。しかしながら異なった時点では
チップの種々の8×8のフレームが物理的な8×8の大
きさの計算機配列によって処理される。明らかに前記の
巻き付は接続は、チップの任意の連続した8×8の部分
の各回路セルが配列中の別個のノード計算機によって表
現される@を可能にしている。
ップの配線を試みる事のできる2つの基本的方法がある
。第1の方法でに、計算機配列の各ノードにおいて3×
3の大きさの回路配列が表現されるように、単に大きな
チップを大きな区画に分割する。折9たたみ(fold
ing )と呼ばれる第2の方法では、回路分割は24
X24の形に保たれる。しかしながら異なった時点では
チップの種々の8×8のフレームが物理的な8×8の大
きさの計算機配列によって処理される。明らかに前記の
巻き付は接続は、チップの任意の連続した8×8の部分
の各回路セルが配列中の別個のノード計算機によって表
現される@を可能にしている。
この第2の方法は、配線工程の分解能全犠牲にする事な
くノード計算活動の分布において比較的高い局所性全利
用しているので、第1の方法よりもすぐれている。ノー
ド計算機は水平方向及び垂直方向の各8番目の回路セル
毎の回路データ會保持しなければならない。従って各ノ
ードにおけるメモリ容量の要求は増加するであろう。こ
こで説明した方法は厳密なアコーディオン型の折やたた
み法ではなく、よシ正確にはカット・アンド・スタック
法である。前者の方法は、実現可能でろって巻き付は接
続ハードウェアの必要性がないが、連続し之フレームに
関する方向を変える不便さがある。
くノード計算活動の分布において比較的高い局所性全利
用しているので、第1の方法よりもすぐれている。ノー
ド計算機は水平方向及び垂直方向の各8番目の回路セル
毎の回路データ會保持しなければならない。従って各ノ
ードにおけるメモリ容量の要求は増加するであろう。こ
こで説明した方法は厳密なアコーディオン型の折やたた
み法ではなく、よシ正確にはカット・アンド・スタック
法である。前者の方法は、実現可能でろって巻き付は接
続ハードウェアの必要性がないが、連続し之フレームに
関する方向を変える不便さがある。
折りたたみ法の広範な解析によれば、この方法は非常に
価格効率の良い方法である事が示されている。8×8の
配列の機械で24X24のチップに関する前方伝搬r行
なうのに要する時間は、24×24の配列の機械を用い
た場合の9倍ではなくて、約4倍でしかない。このファ
クターは迂回限界を10に増やすと、約8に悪化する。
価格効率の良い方法である事が示されている。8×8の
配列の機械で24X24のチップに関する前方伝搬r行
なうのに要する時間は、24×24の配列の機械を用い
た場合の9倍ではなくて、約4倍でしかない。このファ
クターは迂回限界を10に増やすと、約8に悪化する。
19×26の回路”x−にするチップに関するデータを
用いて、実験的機械に対していくつかの実験が行なわれ
た0293のネットに関する大局的配線工程の実行のた
めの実時間はd=oの場合の46秒からd二10の場合
の16[1秒まで増加した。またネットは大きなチップ
上であってもかなシ局所的になる傾向があるので、52
×52のノード計算機ケ有する機械は、全ての妥当な迂
回限界の場合大きなVLS Iチップに関して、任意に
大きな機械の2倍遅い以上に悪くはない。但しノード計
算機におけるメモリの必要性は、ノードで表現されるフ
レームの数と共に線型的に増大する事を銘記しなければ
ならない。
用いて、実験的機械に対していくつかの実験が行なわれ
た0293のネットに関する大局的配線工程の実行のた
めの実時間はd=oの場合の46秒からd二10の場合
の16[1秒まで増加した。またネットは大きなチップ
上であってもかなシ局所的になる傾向があるので、52
×52のノード計算機ケ有する機械は、全ての妥当な迂
回限界の場合大きなVLS Iチップに関して、任意に
大きな機械の2倍遅い以上に悪くはない。但しノード計
算機におけるメモリの必要性は、ノードで表現されるフ
レームの数と共に線型的に増大する事を銘記しなければ
ならない。
大局的配線の次に正確な埋め込み工程が続く。
この段階では、各ノードは大局的配線の段階でそれに割
り当てられたネットに正確なトラック?割り当てなけれ
ばならない。割り当てが調和の取れる(1つの回路セル
においてネットに割り当てられたトラックは、隣りの回
路セルにおいてそのネットに割り当てられたトラックと
同じでなければならない)ように、ノードは互いに通信
する必要がある。そのアルゴリズムは、チップの中上・
にある回路セルに関して完全な割り当てを行なう事から
始まる。セルの境界と交差するネットに割り当てられた
トラックは適当な隣りの処理要素に送られ、その処理要
素はその回路セルに関する割り当て上行なう時にこのデ
ータr用いる。この工程は、チップの隅にある回路セル
においてトラックが割シ当てられるまで、ダイヤモンド
形の波面の形で進行する。この工程の詳細はここでは説
明しないが、広範な予測により、1つのプロセッサによ
ってネットに割り当てられたトラックが隣りの未割り当
てのセルによって妥当に好まれるものになる事が保証さ
れる。反対方向の即ち隅のセルから中7シ・のセルへ向
う波面伝搬が、割り当ての衝突?調節するためにアルゴ
リズムの終了時に組み込まれ得る。
り当てられたネットに正確なトラック?割り当てなけれ
ばならない。割り当てが調和の取れる(1つの回路セル
においてネットに割り当てられたトラックは、隣りの回
路セルにおいてそのネットに割り当てられたトラックと
同じでなければならない)ように、ノードは互いに通信
する必要がある。そのアルゴリズムは、チップの中上・
にある回路セルに関して完全な割り当てを行なう事から
始まる。セルの境界と交差するネットに割り当てられた
トラックは適当な隣りの処理要素に送られ、その処理要
素はその回路セルに関する割り当て上行なう時にこのデ
ータr用いる。この工程は、チップの隅にある回路セル
においてトラックが割シ当てられるまで、ダイヤモンド
形の波面の形で進行する。この工程の詳細はここでは説
明しないが、広範な予測により、1つのプロセッサによ
ってネットに割り当てられたトラックが隣りの未割り当
てのセルによって妥当に好まれるものになる事が保証さ
れる。反対方向の即ち隅のセルから中7シ・のセルへ向
う波面伝搬が、割り当ての衝突?調節するためにアルゴ
リズムの終了時に組み込まれ得る。
第21gは本発明による′m哩的設計装置のブロック図
である。例えばIBM570計算機等の上位システム1
0が、マスク作成装置12に、及び直列I10バス・イ
ンタフェース16’i経てシステム・バス14に接続さ
れる。また印!11装置18を、システム・バス14か
ら入力を受は取るためにインタフェース16に接続して
もよい。制御プロセッサ20はバス14及びコンソール
22に接続される。また制御装置メモリ24も・(ス1
4に接続される。さらに直接アクセス記は装置(DAS
D )26がバス・アタ゛7す28を経てシステム・
ノ(ス14に接続でれる。制御プロセッサ20は、配列
I10プロセッサ34?Il−介して5PE32から成
るプロセンサ配列30と通信する。プロセッサ配列30
は、第1図に示したセルに等しい数の、又はその約数に
等しい数のnXnの5PE32の配列から構成てれ、第
2図のシステムと共にセルの配線経路決定?行なう。
である。例えばIBM570計算機等の上位システム1
0が、マスク作成装置12に、及び直列I10バス・イ
ンタフェース16’i経てシステム・バス14に接続さ
れる。また印!11装置18を、システム・バス14か
ら入力を受は取るためにインタフェース16に接続して
もよい。制御プロセッサ20はバス14及びコンソール
22に接続される。また制御装置メモリ24も・(ス1
4に接続される。さらに直接アクセス記は装置(DAS
D )26がバス・アタ゛7す28を経てシステム・
ノ(ス14に接続でれる。制御プロセッサ20は、配列
I10プロセッサ34?Il−介して5PE32から成
るプロセンサ配列30と通信する。プロセッサ配列30
は、第1図に示したセルに等しい数の、又はその約数に
等しい数のnXnの5PE32の配列から構成てれ、第
2図のシステムと共にセルの配線経路決定?行なう。
7 制御プロセッサ20とプロセッサ配列30との間の
全ての通信はメモ1ルマツビング技術によって行なわれ
る。即ち、制御装置20から配列30への通信は、制御
装置が特別なメモリ・アドレスに書込みを行ない、これ
が配列I10プロセッサろ4によって傍受され、さらに
最終的な宛先に送られる事によって行なわれる。同様に
配列50中の5PE32u、)・−ドクエアによるメツ
セージの適当な送付2生じさせるそれ自身の特別なメモ
リ・アドレスに香込みを行なう事によって制御装置20
と通信する。SPEからSPEへの通信は、後述の技術
を用いて実現される。
全ての通信はメモ1ルマツビング技術によって行なわれ
る。即ち、制御装置20から配列30への通信は、制御
装置が特別なメモリ・アドレスに書込みを行ない、これ
が配列I10プロセッサろ4によって傍受され、さらに
最終的な宛先に送られる事によって行なわれる。同様に
配列50中の5PE32u、)・−ドクエアによるメツ
セージの適当な送付2生じさせるそれ自身の特別なメモ
リ・アドレスに香込みを行なう事によって制御装置20
と通信する。SPEからSPEへの通信は、後述の技術
を用いて実現される。
プロセッサ配列30は5PEO行及び列から構成され、
各5PEuその4つの隣接spg、即ち北、南、東及び
西の隣接SPEと通信し、また特別なバス機構を通じて
制御装置20と通信する。
各5PEuその4つの隣接spg、即ち北、南、東及び
西の隣接SPEと通信し、また特別なバス機構を通じて
制御装置20と通信する。
本発明全実施する時、任意の数の行N及び列R1−用い
る事ができる。
る事ができる。
次に第361図及び第32図を参照する。これらの図は
、システム・バス・インタフェース動作のプロトコルを
処理する論理ハードウェアを一部に有する配列I10プ
ロセッサ64の詳細なブロック図である。プロセッサ3
4は、プロセッサ配列30ケ駆動し制御するために制御
装置20及び他の論理Hitからメモリ・マツプされる
特殊なレジスタr有する。
、システム・バス・インタフェース動作のプロトコルを
処理する論理ハードウェアを一部に有する配列I10プ
ロセッサ64の詳細なブロック図である。プロセッサ3
4は、プロセッサ配列30ケ駆動し制御するために制御
装置20及び他の論理Hitからメモリ・マツプされる
特殊なレジスタr有する。
制御装置20とプロセッサ配列30のS PE32との
間の全ての通@ハ、選択されたSPEとの間たけて転送
される。制御装置20は、X及びY即ち列及び行の各々
の選択ビット’xセントする事によって複数個又は所定
の1個のSPE2選択する。制御装置20はX選択レジ
スタ及びY選択レジスタのために2つのピット・ベクト
ルケ組み立てる。但し論理1はそのピント位置に対応す
る列あるいは行が選択きれる重音意味する。SPEは、
列選択信号及び行選択信号の両者が一致する場合に限っ
て、それ自身を選択されたものと考える。
間の全ての通@ハ、選択されたSPEとの間たけて転送
される。制御装置20は、X及びY即ち列及び行の各々
の選択ビット’xセントする事によって複数個又は所定
の1個のSPE2選択する。制御装置20はX選択レジ
スタ及びY選択レジスタのために2つのピット・ベクト
ルケ組み立てる。但し論理1はそのピント位置に対応す
る列あるいは行が選択きれる重音意味する。SPEは、
列選択信号及び行選択信号の両者が一致する場合に限っ
て、それ自身を選択されたものと考える。
従って制御装置20は、X選択レジスタ及びY選択レジ
スタであるメモリ・マツプでれた位置に書込みを行なう
事によって、2つのレジスタの内容の論理積に対応する
SPEの群?選択する事ができる。午列中のSPEは、
どのSPEの群に情報?伝送しあるいはどのSPEの群
から情報を受は取るかt決定できるのが制御装置だけで
あるという意味で、制御装置の完全な奴隷でろる。X−
Y一致選択の機構によって選択されないSPEは、デー
タ、制御又はアドレスであろうと、いかなる通信にも関
与できない。もし制御装置が全てのSP、Eとの通信、
例えば全てのSPEへの回報通信又はあらゆるSPEか
らの集信を望めば、制御装置は単にX及びY選択レジス
タの両者に全て1をセットする。
スタであるメモリ・マツプでれた位置に書込みを行なう
事によって、2つのレジスタの内容の論理積に対応する
SPEの群?選択する事ができる。午列中のSPEは、
どのSPEの群に情報?伝送しあるいはどのSPEの群
から情報を受は取るかt決定できるのが制御装置だけで
あるという意味で、制御装置の完全な奴隷でろる。X−
Y一致選択の機構によって選択されないSPEは、デー
タ、制御又はアドレスであろうと、いかなる通信にも関
与できない。もし制御装置が全てのSP、Eとの通信、
例えば全てのSPEへの回報通信又はあらゆるSPEか
らの集信を望めば、制御装置は単にX及びY選択レジス
タの両者に全て1をセットする。
配列■10プロセッサ34は、双方向アドレス、データ
及びシステム・バス・サービス信号を与えるために、シ
ステム・バス14に接続される。データ信号は、双方向
バス66からデータ・バス68に与えられ、そこからX
選択レジスタ40、Y選択レジスタ142及びデータ駆
動装置444に与えられる。またデータは、ORゲート
48.50及び52の各々を介して配列の列1〜列mか
らのXL心答を受は取るデータ・バス46からデータ・
バス56に与えられる。y7答は配列の行1〜行nから
各々ORゲート54.56及び58を介して与えられる
。全てのSPEからの配列データ゛・バスからのデータ
は、全SPEからORゲート61を経て与えられる。
及びシステム・バス・サービス信号を与えるために、シ
ステム・バス14に接続される。データ信号は、双方向
バス66からデータ・バス68に与えられ、そこからX
選択レジスタ40、Y選択レジスタ142及びデータ駆
動装置444に与えられる。またデータは、ORゲート
48.50及び52の各々を介して配列の列1〜列mか
らのXL心答を受は取るデータ・バス46からデータ・
バス56に与えられる。y7答は配列の行1〜行nから
各々ORゲート54.56及び58を介して与えられる
。全てのSPEからの配列データ゛・バスからのデータ
は、全SPEからORゲート61を経て与えられる。
アドレス信号は、システム・バス14からアドレス・バ
ス62へ与えられ、そこから配列I10制御論哩回路6
4及び駆動回路66に与えられる。
ス62へ与えられ、そこから配列I10制御論哩回路6
4及び駆動回路66に与えられる。
システム・バス及びメモリ・サービス信号ハシステム・
バス14からバス70をlIてシステム・バス・ 1ン
タフ工−ス論理回路68に与えられる。
バス14からバス70をlIてシステム・バス・ 1ン
タフ工−ス論理回路68に与えられる。
レジスタ40及び42に与えられた選択信号は駆動回路
72及び74を経て各々列選択信号及び゛行選択1ぎ号
として配列中のSPEに与えられる。
72及び74を経て各々列選択信号及び゛行選択1ぎ号
として配列中のSPEに与えられる。
捷だデータ信号は駆動回路44から配列のSPEに与え
られる。制御論理信号は、制御論理64からバス76を
経て駆動回路78に、配列中のSPEへの側脚信号とし
て与えられる。バス62上のアドレス信号は配列前の全
てのSPEをアドレスするために駆動回路66に与えら
れる。
られる。制御論理信号は、制御論理64からバス76を
経て駆動回路78に、配列中のSPEへの側脚信号とし
て与えられる。バス62上のアドレス信号は配列前の全
てのSPEをアドレスするために駆動回路66に与えら
れる。
アドレス・バス62の内容に依存して、種々の型の動作
がメモリ・マツプされた動作によって実行される。第1
に、これらの信号のある部分は配列中の各SPE中の実
際の記憶位置を構成する。
がメモリ・マツプされた動作によって実行される。第1
に、これらの信号のある部分は配列中の各SPE中の実
際の記憶位置を構成する。
ここで全SPEの局所メモリは同一にアドレスされ、ど
の局所メモリがアドレスされるかはX選択レジスタ40
及びY選択レジスタ42によって支配される。第2に、
これらのアドレス信号のある部分は、アドレスが特別な
メモリ・マツプされた位置であって、そのあるものがプ
ロセッサ34内にありあるものが個々のSPE内にある
事を意味する。
の局所メモリがアドレスされるかはX選択レジスタ40
及びY選択レジスタ42によって支配される。第2に、
これらのアドレス信号のある部分は、アドレスが特別な
メモリ・マツプされた位置であって、そのあるものがプ
ロセッサ34内にありあるものが個々のSPE内にある
事を意味する。
普通のシステム・バス・インタフェース論理68の管理
の下に配列I10制御論理64は、バス62上の到来し
たアドレス信号を解読してプロセッサ34内及び配列中
の種々のデータ制御信号路を制御する。アドレスの本質
的な位置及び対応する間通は後で詳細に示される。この
解読及び制御がいかにして行なわれるかは周知なので、
詳細には示さない。
の下に配列I10制御論理64は、バス62上の到来し
たアドレス信号を解読してプロセッサ34内及び配列中
の種々のデータ制御信号路を制御する。アドレスの本質
的な位置及び対応する間通は後で詳細に示される。この
解読及び制御がいかにして行なわれるかは周知なので、
詳細には示さない。
表1は配列I10制御論理64によって実行される論理
的機能を示す。
的機能を示す。
第4図は、第32図の駆動回路44.78及び66中の
個々のビットに関して用いられる駆動回路80の図であ
る。駆動回路80は入力線82上の1ぎ斜線上のピント
毎にビットKを受は取り、このビットは制御論理64か
らのエネーブル信号84に応答してゲートされ、出力線
86上めピントを与える。このビットは配列中の各SP
Eにファン・アウトされる。駆動回路80は、周知のよ
うに、駆動負荷を分担するために駆動回路のファン・ア
ウト・ツリーから構成する事ができる。
個々のビットに関して用いられる駆動回路80の図であ
る。駆動回路80は入力線82上の1ぎ斜線上のピント
毎にビットKを受は取り、このビットは制御論理64か
らのエネーブル信号84に応答してゲートされ、出力線
86上めピントを与える。このビットは配列中の各SP
Eにファン・アウトされる。駆動回路80は、周知のよ
うに、駆動負荷を分担するために駆動回路のファン・ア
ウト・ツリーから構成する事ができる。
第5図は、隣接SPE及び配列I10プロセッサへの及
びそれらからの制御人力及びデータ入力を含む5PE3
2を示す。ORを行なうデータ・バス88は駆動回路4
4及び60の出力に接続され、アドレス・バス90は駆
動回路66に接続され、制御バス92は駆動回路78に
接続され、そシテサービス・バス94はプロセッサ34
のORゲート62の入力に接続される。
びそれらからの制御人力及びデータ入力を含む5PE3
2を示す。ORを行なうデータ・バス88は駆動回路4
4及び60の出力に接続され、アドレス・バス90は駆
動回路66に接続され、制御バス92は駆動回路78に
接続され、そシテサービス・バス94はプロセッサ34
のORゲート62の入力に接続される。
各SPEはその隣りの、東西南北の隣接SPEと、SP
E毎に与えられた通信信号を用いて通信する。SPE毎
に、各信号線96にス)o−ブ・アウト信号が、各信号
線98にフラグ・イン信号が、各信号線100にス)o
−プ・イン信号が、各信号線102にフラグ・アウト信
号が、各信号線104に隣接データ・インが、そして各
信号線106に隣接データ・アウトが与えられる。X選
択信号及びX選択信号は各々列毎及び行毎に信号線10
8及び110から全てのSPEに与えられる。X選択信
号は信号線112から5PE32に、X選択信号は信号
線114に与えられる。X応答信号及びX応答信号は各
々SPEから信号線116及び118に与えられ、さら
に各々配列用のX及びY応答河号線120及び122に
与えられる。
E毎に与えられた通信信号を用いて通信する。SPE毎
に、各信号線96にス)o−ブ・アウト信号が、各信号
線98にフラグ・イン信号が、各信号線100にス)o
−プ・イン信号が、各信号線102にフラグ・アウト信
号が、各信号線104に隣接データ・インが、そして各
信号線106に隣接データ・アウトが与えられる。X選
択信号及びX選択信号は各々列毎及び行毎に信号線10
8及び110から全てのSPEに与えられる。X選択信
号は信号線112から5PE32に、X選択信号は信号
線114に与えられる。X応答信号及びX応答信号は各
々SPEから信号線116及び118に与えられ、さら
に各々配列用のX及びY応答河号線120及び122に
与えられる。
北、南、東及び西の隣接SPEへの隣接通信線は、配列
の北、南、東及び西の境界のSPEを除けば、全てのS
PEに付き同一である。それらの境界SPEは、配列の
反対側のセルを、配列の外側の方向の隣接セルと考える
。5PE32の詳細な機能的動作は第6.1図及び第6
.2図並びに流れ図に示される。
の北、南、東及び西の境界のSPEを除けば、全てのS
PEに付き同一である。それらの境界SPEは、配列の
反対側のセルを、配列の外側の方向の隣接セルと考える
。5PE32の詳細な機能的動作は第6.1図及び第6
.2図並びに流れ図に示される。
次に第6.1図及び第6.2図を参照する。これらは5
PE32の詳細なブロック図である。信号線92上の制
御ハス信号は制(財)バッファ126を経てSPE制(
財)論理回路124に与えられ、また制御バッファ12
6から匿号線128及び160を経て各々AINラッチ
162及びAOUTラッチ134に与えられる。X選択
信号112及びY選択恰号114も各々論理回路124
に入力として与えられる。バス90上のアドレス、・バ
ス信号は外部アドレス・バッファ136に与えられる。
PE32の詳細なブロック図である。信号線92上の制
御ハス信号は制(財)バッファ126を経てSPE制(
財)論理回路124に与えられ、また制御バッファ12
6から匿号線128及び160を経て各々AINラッチ
162及びAOUTラッチ134に与えられる。X選択
信号112及びY選択恰号114も各々論理回路124
に入力として与えられる。バス90上のアドレス、・バ
ス信号は外部アドレス・バッファ136に与えられる。
0Rf−夕・バス線88は、イン・レジスタ146、ア
ウト・レジスタ148、データ・イン・バッファ150
、及びデータ・アウト・バッファ152に接続するため
に各々バス138.140.142及び144に接続さ
れる。サービス・バス94はサービス・バッファ154
に接続され、さらにバス158を経てサービス・ワード
156に接続さね、る。サービス・ワード回路156は
ラッチ132及び134の他にサービス・ラッチ159
を含む。サービス・ワード156はバス161を経てS
PEデータ・バス160に接続される・。
ウト・レジスタ148、データ・イン・バッファ150
、及びデータ・アウト・バッファ152に接続するため
に各々バス138.140.142及び144に接続さ
れる。サービス・バス94はサービス・バッファ154
に接続され、さらにバス158を経てサービス・ワード
156に接続さね、る。サービス・ワード回路156は
ラッチ132及び134の他にサービス・ラッチ159
を含む。サービス・ワード156はバス161を経てS
PEデータ・バス160に接続される・。
各信号線100のストローブ・イン信号は化イン・フラ
グランチ162N、東イン・フラグ・ランチ162E、
南イン・フラグ・ラッチ162S及び西イン・フラグ・
ランチ162Wに各々接続される。これらのランチは各
信号線102にフラグ・アウト信号を出し、又これらの
信号は・くス168を経てフラグ・ノ(ソファ170に
も与えられる。各信号線98上の隣接フラグ・イン信号
も・くス168を経てフラグ・・(ソファ170に与え
られる。フラグ・バッファ170の出力はSPEデータ
・バス160に供給される。ストローブ・アウト信号は
SPE制御論理回路124から各信号線9乙に与えられ
る。各信号線104上の隣接データ・イン信号は化イン
・ラッチ172 N、東イン・ラッチ172E%南イン
・ランチ172S及び西イン・ランチ172Wに与えら
れる。これらのランチからの出力はSPEデータ・〕(
ス160に供給される。データ・・(ス160は隣接デ
ータ・アウト・バッファ180の入力に接続され、隣接
データ・アウト・バッファ180は隣接データ・アウト
1器号を各信号線106に与える。
グランチ162N、東イン・フラグ・ランチ162E、
南イン・フラグ・ラッチ162S及び西イン・フラグ・
ランチ162Wに各々接続される。これらのランチは各
信号線102にフラグ・アウト信号を出し、又これらの
信号は・くス168を経てフラグ・ノ(ソファ170に
も与えられる。各信号線98上の隣接フラグ・イン信号
も・くス168を経てフラグ・・(ソファ170に与え
られる。フラグ・バッファ170の出力はSPEデータ
・バス160に供給される。ストローブ・アウト信号は
SPE制御論理回路124から各信号線9乙に与えられ
る。各信号線104上の隣接データ・イン信号は化イン
・ラッチ172 N、東イン・ラッチ172E%南イン
・ランチ172S及び西イン・ランチ172Wに与えら
れる。これらのランチからの出力はSPEデータ・〕(
ス160に供給される。データ・・(ス160は隣接デ
ータ・アウト・バッファ180の入力に接続され、隣接
データ・アウト・バッファ180は隣接データ・アウト
1器号を各信号線106に与える。
S f) E制(財)論理回路124は双方向バス18
4を経てマイクロプロセッサ182に接続される。
4を経てマイクロプロセッサ182に接続される。
マイクロプロセッサ182は例えばザイログz80等の
市販のマイクロプロセッサでモ良イ。マイクロノロセッ
サ182はバス188tuてアドレス・バッファ186
にアドレスを与え、双方向ハス192を経てデータ・バ
ッファ190と7’−5全交換する。アドレス・バッフ
ァ18乙の出力は、局所メモリ196にも接続されだS
PEアドレス・バス194に接続される。局所メモリ1
96は例えばランダム・アクセス・メモリ(RAM)f
も良い。
市販のマイクロプロセッサでモ良イ。マイクロノロセッ
サ182はバス188tuてアドレス・バッファ186
にアドレスを与え、双方向ハス192を経てデータ・バ
ッファ190と7’−5全交換する。アドレス・バッフ
ァ18乙の出力は、局所メモリ196にも接続されだS
PEアドレス・バス194に接続される。局所メモリ1
96は例えばランダム・アクセス・メモリ(RAM)f
も良い。
アドレス・バス194はバス19Elc−dてバッファ
136の出力、及びバス200を経てSPE制(財)論
理回路124のアドレス入力にも接続される。局所メモ
リ196は双、方向バス202を経てSPEデータ・バ
ス160に接続される。レジスタ146.148及びバ
ッファ150.152も各々バス204.206.20
8及び210を経てデータ・バス160に接続される。
136の出力、及びバス200を経てSPE制(財)論
理回路124のアドレス入力にも接続される。局所メモ
リ196は双、方向バス202を経てSPEデータ・バ
ス160に接続される。レジスタ146.148及びバ
ッファ150.152も各々バス204.206.20
8及び210を経てデータ・バス160に接続される。
さらにランチ172N、172E、172S、172W
及びバッファ180もバス212.214.216.2
18及び220?経てデータ・バス160に接続される
。
及びバッファ180もバス212.214.216.2
18及び220?経てデータ・バス160に接続される
。
SPE制御論理124は、グローバルな制御装置20及
び隣接SPEに対して、5PE32内での王なデータ経
路指定機構として機能する。通信線92はバッファ12
6を経て、90はバッファ166を経て、88はI10
レジスタ146.148及びバッファ150.152を
経て、並びに94はバッファ154を経て全てSPE制
御論理124内のX−Y選択機構によってゲートされる
。
び隣接SPEに対して、5PE32内での王なデータ経
路指定機構として機能する。通信線92はバッファ12
6を経て、90はバッファ166を経て、88はI10
レジスタ146.148及びバッファ150.152を
経て、並びに94はバッファ154を経て全てSPE制
御論理124内のX−Y選択機構によってゲートされる
。
論理124内のX−Y選択機構は第7図に示されている
。ANDゲート222は、信号線114及び112から
各々X選択信号及びY選択信号を受は取り、一致を検出
すると、出力線224にエネーブル信号を与える。これ
は上述の5PE32の全てのグローバルなバッファ及び
レジスタに供給される。後述する全てのグローバルな通
信もこの選択機構によって支配される。
。ANDゲート222は、信号線114及び112から
各々X選択信号及びY選択信号を受は取り、一致を検出
すると、出力線224にエネーブル信号を与える。これ
は上述の5PE32の全てのグローバルなバッファ及び
レジスタに供給される。後述する全てのグローバルな通
信もこの選択機構によって支配される。
第61図及び第62図に戻る。信号線92上のi!11
砥信号の一部分であるリセット信号は、バッフ712
6i経てマイクロプロセッサj82e’Jセットする。
砥信号の一部分であるリセット信号は、バッフ712
6i経てマイクロプロセッサj82e’Jセットする。
マイクロプロセッサ182・fd局局所バス処理及び1
60のプロトコルを定める。従って制御装置20から配
列I10プロセンサ64を経由して来る制御信号線92
のあるものは、周知の方法でSPE制御論理124によ
って信号線184全経てマイクロプロセッサ182に経
路指定あるいは処理されるコマーシャルに特定された局
所バス処理に専用比される。これらの信号は例えば普通
、バス応答信号及びバス要求信号等を含む。
60のプロトコルを定める。従って制御装置20から配
列I10プロセンサ64を経由して来る制御信号線92
のあるものは、周知の方法でSPE制御論理124によ
って信号線184全経てマイクロプロセッサ182に経
路指定あるいは処理されるコマーシャルに特定された局
所バス処理に専用比される。これらの信号は例えば普通
、バス応答信号及びバス要求信号等を含む。
また制御信号線92は、割り込み、リセット等の普通の
マイクロプロセッサ制御コマンド信号線及びSPE局所
メモリ読取り、書込みコマンド信号線も含む。これらの
信号の機能はマイクロプロセッサ技術で良く知られてい
る。制御装置20によって配列I10プロセッサ34を
経て局所バスのグローバルな要求が即始されると、マイ
クロプロセッサ182は一時的に中断され、バス194
及び160は局所タスクに優先するグローバル・タスク
に与えられる。信号線92のうち2つの制御信号線部ち
128及び150は、グローバルなデータ・バス94を
経てI10レジスタの使用のためにプロトコル・ピット
のセントに専用に用いられる。信号線128はAIIN
ランチ132を論理1にセントし、信号線130はAO
UTラッチ164を論理りにリセットする。これらの動
作q1グローバルな制御装置20が前述のように5PE
I10レジスタを読取り又は書込む時に、配列I10プ
ロセッサ34によって全面的に制御される。
マイクロプロセッサ制御コマンド信号線及びSPE局所
メモリ読取り、書込みコマンド信号線も含む。これらの
信号の機能はマイクロプロセッサ技術で良く知られてい
る。制御装置20によって配列I10プロセッサ34を
経て局所バスのグローバルな要求が即始されると、マイ
クロプロセッサ182は一時的に中断され、バス194
及び160は局所タスクに優先するグローバル・タスク
に与えられる。信号線92のうち2つの制御信号線部ち
128及び150は、グローバルなデータ・バス94を
経てI10レジスタの使用のためにプロトコル・ピット
のセントに専用に用いられる。信号線128はAIIN
ランチ132を論理1にセントし、信号線130はAO
UTラッチ164を論理りにリセットする。これらの動
作q1グローバルな制御装置20が前述のように5PE
I10レジスタを読取り又は書込む時に、配列I10プ
ロセッサ34によって全面的に制御される。
他のグローバルな通信は制御装置20及びSPEデータ
によるDMA方式によって行なわれる。I10プロセッ
サカラのグローバルなコマントニ対する応答における5
PEj151J8論理124の動作を以下に示す。制御
論理124が局所バスに関するグローバルな要求を認識
する時、外部アドレス・バッファ136は、タスクの継
続する間の一時的な中断の後に、バス194にアドレス
を与える事を許される。次に、制御論理124は、バス
200によってバス194から受は取ったアドレスを解
読して、以下の表2に示すような適当なデータ経路決定
の動作を行なう。
によるDMA方式によって行なわれる。I10プロセッ
サカラのグローバルなコマントニ対する応答における5
PEj151J8論理124の動作を以下に示す。制御
論理124が局所バスに関するグローバルな要求を認識
する時、外部アドレス・バッファ136は、タスクの継
続する間の一時的な中断の後に、バス194にアドレス
を与える事を許される。次に、制御論理124は、バス
200によってバス194から受は取ったアドレスを解
読して、以下の表2に示すような適当なデータ経路決定
の動作を行なう。
SPEは北、南、東及び西の方向の各々においてデータ
・ポート104及び106を経て隣WSPEと通信する
。通信の保全性を保証するために、フラグ・ラッチ16
2(N、E、5XW)、信号線98上の隣接フラグ・イ
ン、信号線96上のストローブ・アウト信号、フラグ・
アウト102、及びストローブ・イン信号100が用い
られる。
・ポート104及び106を経て隣WSPEと通信する
。通信の保全性を保証するために、フラグ・ラッチ16
2(N、E、5XW)、信号線98上の隣接フラグ・イ
ン、信号線96上のストローブ・アウト信号、フラグ・
アウト102、及びストローブ・イン信号100が用い
られる。
これらの信号及びランチの使用並びに動作は後で説明す
る。
る。
以下、spg制御論理124のデータ経路決定を示す。
内部要求は、マイクロプロセッサ182からDMAの形
で種々のSPEランチ、レジスタ及びポート並びにSP
E局所メモリ196に与えられる。これらの要求の全て
は、マイクロプロセッサ182からバス184を経て制
御論理124によって処理される普通の局所バス・プロ
トコルによって優先される。以下の衣3は内部データ経
路決定のために制御論理124によって行なわれる動作
を示す。
で種々のSPEランチ、レジスタ及びポート並びにSP
E局所メモリ196に与えられる。これらの要求の全て
は、マイクロプロセッサ182からバス184を経て制
御論理124によって処理される普通の局所バス・プロ
トコルによって優先される。以下の衣3は内部データ経
路決定のために制御論理124によって行なわれる動作
を示す。
凶 坏 坏第8図は、メ
ール・ボックス・フラグ・プロトコル又は要求応答プロ
トコルとして知られている隣接SPEPE通溝機構す。
ール・ボックス・フラグ・プロトコル又は要求応答プロ
トコルとして知られている隣接SPEPE通溝機構す。
この機構は、データの転送時に受は取る側のプロセッサ
がデータを予期する事なく2つのプロセッサがデータを
転送する時にデータの保全性全保証するために関われる
多くの可能な方〆去の1つである。メール・ボックス・
フラグ機構は、第61図に示したAINランチ162及
びAOUTラッチ164に関するメール・ボックス機構
と同じ原理で動作する。第8図のユニットA及びBは、
南北の隣接SPEでも、東西の隣接SPEでも、又■1
0レジスメ146及び148(第61図)の通信が関係
している限りにおいてはSPE及び配列I10プロセッ
サ34を表わすものでも良い。二二ソ)AがユニットB
に送信する場合を考える事にする。
がデータを予期する事なく2つのプロセッサがデータを
転送する時にデータの保全性全保証するために関われる
多くの可能な方〆去の1つである。メール・ボックス・
フラグ機構は、第61図に示したAINランチ162及
びAOUTラッチ164に関するメール・ボックス機構
と同じ原理で動作する。第8図のユニットA及びBは、
南北の隣接SPEでも、東西の隣接SPEでも、又■1
0レジスメ146及び148(第61図)の通信が関係
している限りにおいてはSPE及び配列I10プロセッ
サ34を表わすものでも良い。二二ソ)AがユニットB
に送信する場合を考える事にする。
ユニットAはデータ・バス16G、送信バッファ180
及び制御論理回路124を含む。ユニットBは受信ラン
チ172、イン・フラグ・ラッチ162、制御論理回路
124及びデータ・バス160を含む。送信バッファ1
80と受信ランチ172との間の通信はバス216及び
104を経由する。
及び制御論理回路124を含む。ユニットBは受信ラン
チ172、イン・フラグ・ラッチ162、制御論理回路
124及びデータ・バス160を含む。送信バッファ1
80と受信ランチ172との間の通信はバス216及び
104を経由する。
メール・ボックス・フラグ機構の動作は以下のステップ
による。
による。
(1) データを二二ツ)Hに送る前に、ユニットA
はユニットBのイン・フラグ・ラッチ162を尋問する
事によって、以前にユニソ)Bに送られたデータが二二
ソ)Bによって読取られている事を確認する事ができる
。グローバルな読取りの場合はサービス・ワードを読取
る事によって、又隣接SPEの場合はフラグ・バッファ
170全読取る事によって、その確認が行なわれる。フ
ラグ・イン98のビット値が論理1である事が感知され
ると、それは隣接SPEが以前に送信されたデータを読
取っていない事を意味する。ユニン)Aはこのピントラ
、論理at感知するまで質関し続ける事ができる。もし
ユ 。
はユニットBのイン・フラグ・ラッチ162を尋問する
事によって、以前にユニソ)Bに送られたデータが二二
ソ)Bによって読取られている事を確認する事ができる
。グローバルな読取りの場合はサービス・ワードを読取
る事によって、又隣接SPEの場合はフラグ・バッファ
170全読取る事によって、その確認が行なわれる。フ
ラグ・イン98のビット値が論理1である事が感知され
ると、それは隣接SPEが以前に送信されたデータを読
取っていない事を意味する。ユニン)Aはこのピントラ
、論理at感知するまで質関し続ける事ができる。もし
ユ 。
ニラ)Aが以前に送信したデータについて注意を払わな
いか、又は充分な時間の経過によってユニットBが他の
データ・ワードを受は取る用意の出来ている手が雁かで
あれば、ステップ1全省略して以下のステップ2に直接
に進む。
いか、又は充分な時間の経過によってユニットBが他の
データ・ワードを受は取る用意の出来ている手が雁かで
あれば、ステップ1全省略して以下のステップ2に直接
に進む。
(2) ユニットAはデータ・バス160へのデータ
をエネーブルし、パンノア180Thエネーブルシ、同
時にユニソ)Bのノ・−ドウエアにおいて2つの事象を
直接制量するストローブ信号をユニノl−Bに送信する
。第1に、ストローブ信号はユニットBの受信ラッチ1
72をクロックし、送信されたデータをランチさせる。
をエネーブルし、パンノア180Thエネーブルシ、同
時にユニソ)Bのノ・−ドウエアにおいて2つの事象を
直接制量するストローブ信号をユニノl−Bに送信する
。第1に、ストローブ信号はユニットBの受信ラッチ1
72をクロックし、送信されたデータをランチさせる。
第2に、同時にユニットBのイン・フラグ・ラッチ16
2を論理1にセントする。これはデータ・ワードがユニ
ットAから二二ソ)Bに伝送された事を表わす。
2を論理1にセントする。これはデータ・ワードがユニ
ットAから二二ソ)Bに伝送された事を表わす。
(3) ある時間の後、ユニットBがユニン)Aから
のデータを予期又は必要とした時、及びユニットBがユ
ニットAからデータの送られたことを確認する事を望む
場合、ユニットBはそれ自身のイン・フラグ・ランチ1
62を質関し得る。
のデータを予期又は必要とした時、及びユニットBがユ
ニットAからデータの送られたことを確認する事を望む
場合、ユニットBはそれ自身のイン・フラグ・ランチ1
62を質関し得る。
この時ユニットBはその値が論理1になるまで、このラ
ンチを質関し続ける事ができる。もしユニットBが、何
らかの理由でユニットAからデータが伝送されたはずで
あるという事実を確信できれば、直接ステップ4に進む
事ができる。
ンチを質関し続ける事ができる。もしユニットBが、何
らかの理由でユニットAからデータが伝送されたはずで
あるという事実を確信できれば、直接ステップ4に進む
事ができる。
(4) ユニットBは読取るためにその受信ランチ1
72をバスにエネーブルし、同時にイン・フラグ・ラッ
チ162と論理0にリセフトする。
72をバスにエネーブルし、同時にイン・フラグ・ラッ
チ162と論理0にリセフトする。
これはユニットAからざらに清報を受は喉る用意の出来
ている事を表わす。
ている事を表わす。
第6.1図、第6.2図に戻る。SPE制御論理124
はSPE内部及び外部のデータの移動の経路決定を担当
しているが、制御論理124は配列■10プロセッサ3
4又はマイクロプロセッサ182のコマンドによってだ
けその動作を行なう。SPEにおける実際のデータの処
理及びデータ移動の指令はこのマイクロプロセンサ18
2によって実行される。即ちSPEによって実行される
計算及び機能は、SPE局所メモリ196に記憶された
種々の利用可能な命令及びデータを用いたプログラミン
グ手段によって、制御装置の管理の下に、他のSPEと
同時に並列に実行される。いくつかの特殊な命令例えば
同時4ポ一ト通信及び算術論理演算は市販のマイクロプ
ロセッサの標準的命令セントによってエミュレートされ
る。しかしながら、そのような特殊な命令セントにある
特殊な機能的・・−ドウエア論理の上で動作させる事の
実用性及びスピードの利点全考慮して、SPEに4ボー
ト的性質の特殊な・・−ドウエア命令の一部又は全てを
組み込んでも良い。もつともどのような命令セントが用
いられようとも、ディジタル・プロセッサのプログラミ
ング技術においては、機能的動作のフローが特定されれ
ばプログラムの作成は定型作業である。
はSPE内部及び外部のデータの移動の経路決定を担当
しているが、制御論理124は配列■10プロセッサ3
4又はマイクロプロセッサ182のコマンドによってだ
けその動作を行なう。SPEにおける実際のデータの処
理及びデータ移動の指令はこのマイクロプロセンサ18
2によって実行される。即ちSPEによって実行される
計算及び機能は、SPE局所メモリ196に記憶された
種々の利用可能な命令及びデータを用いたプログラミン
グ手段によって、制御装置の管理の下に、他のSPEと
同時に並列に実行される。いくつかの特殊な命令例えば
同時4ポ一ト通信及び算術論理演算は市販のマイクロプ
ロセッサの標準的命令セントによってエミュレートされ
る。しかしながら、そのような特殊な命令セントにある
特殊な機能的・・−ドウエア論理の上で動作させる事の
実用性及びスピードの利点全考慮して、SPEに4ボー
ト的性質の特殊な・・−ドウエア命令の一部又は全てを
組み込んでも良い。もつともどのような命令セントが用
いられようとも、ディジタル・プロセッサのプログラミ
ング技術においては、機能的動作のフローが特定されれ
ばプログラムの作成は定型作業である。
次に大局的配線経路決定に関する物理的設計工程の一般
的な説明を行なう。ここではシステムにとって本質的な
システム・レベルの一般的な作業を説明し、主なシステ
ム機能だけを説明する。システム割り込み処理、自動配
列再構成、時分割タスク、’SPEプログラム・オーバ
ーレイ機構等の機能は説明しない。
的な説明を行なう。ここではシステムにとって本質的な
システム・レベルの一般的な作業を説明し、主なシステ
ム機能だけを説明する。システム割り込み処理、自動配
列再構成、時分割タスク、’SPEプログラム・オーバ
ーレイ機構等の機能は説明しない。
システム・リセットは、第2図の制御プロセッサ20に
おいて、プロセッサ(5ROMの固定されたアドレスに
ジャンプさせる)・−ドウエア・スイッチによって行な
われる。ROMは、必要な制御装置及びSPE用のアプ
リケーション・プログラム’:DASDからネガティブ
・メモリ24及び196にロードするようにプログラム
されている。
おいて、プロセッサ(5ROMの固定されたアドレスに
ジャンプさせる)・−ドウエア・スイッチによって行な
われる。ROMは、必要な制御装置及びSPE用のアプ
リケーション・プログラム’:DASDからネガティブ
・メモリ24及び196にロードするようにプログラム
されている。
配列中の全ての動作は選択されたSPEだけに限定され
る。全てのSPEに同報通信するか、又は全配列を動作
させる場合は、第6.1図のX−Y選択レジスタ40及
び42が全て1のベクトルを含む。もし任意のX−Y部
分集合が何かの動作に関して望まれるならば、そのよう
な部分集合ベクトルは、さらに何らかの動作が起きる前
に制御装置によって分解され、X−Y選択レジスタ40
及び42に記憶される。
る。全てのSPEに同報通信するか、又は全配列を動作
させる場合は、第6.1図のX−Y選択レジスタ40及
び42が全て1のベクトルを含む。もし任意のX−Y部
分集合が何かの動作に関して望まれるならば、そのよう
な部分集合ベクトルは、さらに何らかの動作が起きる前
に制御装置によって分解され、X−Y選択レジスタ40
及び42に記憶される。
応答するSPEの決定は制御装置が、メモリ・マツプさ
れた特別な位置、X−Y応答線を読取る事によって為さ
れる。制御装置は最初に全配列のX応答を読取シ、配列
のどの列が応答しているかを見い出す。各々の応答して
いる列毎に、制御装置はその列及び全ての行?選択し、
その列の中の応答しているSPEの正確な位置と決定す
るためにY応答を読取る。i!11呻装、置は、応答し
ているSPEの位置を見い出すと、それに対してSPE
メモリ中のある値又はI10レジスタの読取り及びそれ
らに対する作業等の動作を行なう事ができる。
れた特別な位置、X−Y応答線を読取る事によって為さ
れる。制御装置は最初に全配列のX応答を読取シ、配列
のどの列が応答しているかを見い出す。各々の応答して
いる列毎に、制御装置はその列及び全ての行?選択し、
その列の中の応答しているSPEの正確な位置と決定す
るためにY応答を読取る。i!11呻装、置は、応答し
ているSPEの位置を見い出すと、それに対してSPE
メモリ中のある値又はI10レジスタの読取り及びそれ
らに対する作業等の動作を行なう事ができる。
SPEメモリのローディングは、制御装置がプログラム
又はデータをDASDから又は直接その主記憶から取り
出して前述のDMA機購によって同時に全てのSPEメ
モリにロードする事によって行なわれる。一般にデータ
及びプログラムの共通部分は、X−Y選択ベクトルの論
理積として選択OT能なSPEの任意の群に対してロー
ドできる。
又はデータをDASDから又は直接その主記憶から取り
出して前述のDMA機購によって同時に全てのSPEメ
モリにロードする事によって行なわれる。一般にデータ
及びプログラムの共通部分は、X−Y選択ベクトルの論
理積として選択OT能なSPEの任意の群に対してロー
ドできる。
SPEのI10レジスタを用いる゛通信は次の点で5P
F2メモリへのDMAと区別される。即ち、SPEメモ
リへのDMAはDMA動作のためにSPE局所バスを使
用する事によりSPE動作を中断させる。一方I10レ
ジスタはSPE局所パスを妨害する事なく用いる事がで
きる。SPEは、前述のAIN及びAOUTのフラグ機
構を通じて、制御装置によってI10レジスタに置かれ
た又はそこから読取られたデータ翳り扱いを通知される
。
F2メモリへのDMAと区別される。即ち、SPEメモ
リへのDMAはDMA動作のためにSPE局所バスを使
用する事によりSPE動作を中断させる。一方I10レ
ジスタはSPE局所パスを妨害する事なく用いる事がで
きる。SPEは、前述のAIN及びAOUTのフラグ機
構を通じて、制御装置によってI10レジスタに置かれ
た又はそこから読取られたデータ翳り扱いを通知される
。
制御装置は単に選択されたSPE r10レジスタを
読取り及び書込む事によってこれらのステータス・ピン
トをセットする。また前述のサービス・ワードの読取り
によってステータスを観察する事ができる。
読取り及び書込む事によってこれらのステータス・ピン
トをセットする。また前述のサービス・ワードの読取り
によってステータスを観察する事ができる。
SPEは、配列をリセットするために制御装置がデータ
を特別なりMAアドレスに書込む事によって起動される
。配列I10プロセッサはこのアドレスを解読し、選択
されたSPEのマイクロプロセッサをリセットするりセ
ント用の制御信号綴金付勢する。マイクロプロセッサが
リセットされると、マイクロプロセッサは記憶位#0を
実行させられ、記憶立置0の命令はSPE局所メモリ中
に記憶された種々のプログラムの開始点を含むジャンプ
・テーブルへ適当なインデックスを伴なうジャンプを引
き起こす。ジャンプ・テーブルへの適当なインデックス
は制御装置によってSPEメモリの固定された位置にD
MA転送するか、又は次の実行ンーケンスの開始を予期
したSPEによってそこに記憶される。
を特別なりMAアドレスに書込む事によって起動される
。配列I10プロセッサはこのアドレスを解読し、選択
されたSPEのマイクロプロセッサをリセットするりセ
ント用の制御信号綴金付勢する。マイクロプロセッサが
リセットされると、マイクロプロセッサは記憶位#0を
実行させられ、記憶立置0の命令はSPE局所メモリ中
に記憶された種々のプログラムの開始点を含むジャンプ
・テーブルへ適当なインデックスを伴なうジャンプを引
き起こす。ジャンプ・テーブルへの適当なインデックス
は制御装置によってSPEメモリの固定された位置にD
MA転送するか、又は次の実行ンーケンスの開始を予期
したSPEによってそこに記憶される。
配列内の通信は隣接するSPE間でデータを送置及び受
信する事によって実行される。送信受信が行なわれる機
構は以前に述べた。各SPEは境界状況が記憶きれる特
別な記憶位置を有する。従って各SPEはどの特定の方
向に隣接SPEが存在するか又はしないかという事実を
認識している。
信する事によって実行される。送信受信が行なわれる機
構は以前に述べた。各SPEは境界状況が記憶きれる特
別な記憶位置を有する。従って各SPEはどの特定の方
向に隣接SPEが存在するか又はしないかという事実を
認識している。
プログラム・フローチャートが隣接通信を指定するたび
に、SPEは送信又は受信の動作の前に最初に隣接SP
Eの存在を確認する。そして境界SPEは、フローチャ
ートの一般的な記述の例外として、単にその空白の方向
への送信あるいは受信のステップを省略する。
に、SPEは送信又は受信の動作の前に最初に隣接SP
Eの存在を確認する。そして境界SPEは、フローチャ
ートの一般的な記述の例外として、単にその空白の方向
への送信あるいは受信のステップを省略する。
同期rヒ磯溝は、SPEのサービス・ワードを全てのS
PEステータス(その最も重要なものはジョブ終了ステ
ータスである)の報告に用いる事によって達成される。
PEステータス(その最も重要なものはジョブ終了ステ
ータスである)の報告に用いる事によって達成される。
タスクを始める前に、全てのSPEは所定のビット位置
を、ビジー・ステータスを表わす論理1にセットできる
。与えられたタスクが終了すると、SPEはサービス・
ワードを読嘔り、ピントラ論理Oにリセットし、そして
サービス・ワードに戻して記憶する。サービス・ノ;ス
は、選択されたSPEの全てのサービス・ワードの論理
和ヲ取るORバスなので、選択されたSPEのどれかが
ビジーであればそのピントは論理1になり、選択された
SPEの全てがタスクを終えている時に限り論理0にな
る。従って制御装置は、次の副工程のために配列′f:
制aする前に全SPEの作業終了を決定する。
を、ビジー・ステータスを表わす論理1にセットできる
。与えられたタスクが終了すると、SPEはサービス・
ワードを読嘔り、ピントラ論理Oにリセットし、そして
サービス・ワードに戻して記憶する。サービス・ノ;ス
は、選択されたSPEの全てのサービス・ワードの論理
和ヲ取るORバスなので、選択されたSPEのどれかが
ビジーであればそのピントは論理1になり、選択された
SPEの全てがタスクを終えている時に限り論理0にな
る。従って制御装置は、次の副工程のために配列′f:
制aする前に全SPEの作業終了を決定する。
以下は本発明による物理的設計工程の例である。
論理設計が完了すると、第9図に示す物理的設計工程が
始まる。一般的なステップは次の通りである(第9図参
照)。
始まる。一般的なステップは次の通りである(第9図参
照)。
(1) ブロック226に示すように、論理ゲートを
チップ、カード、ボード等の物理的実装体に分割する。
チップ、カード、ボード等の物理的実装体に分割する。
(2) ブロック228に示すように、各実装体内で
部品を配置する。
部品を配置する。
(3) ブロック260に示すように、各実装体内の
論理素子の端子への配線経路決定を行なう。
論理素子の端子への配線経路決定を行なう。
(4) ブロック232に示すように、製造データを
生成する。
生成する。
配置及び配線はある応用においては組み合わされた工程
である可能性がある。物理的設計工程の最終出力は、第
2図の装#12に示すような′マスク作成装置又は他の
リングラフィ・システムによる製造工場における論理実
装体の実際の物理的実現のだめの入力として役立つ。
である可能性がある。物理的設計工程の最終出力は、第
2図の装#12に示すような′マスク作成装置又は他の
リングラフィ・システムによる製造工場における論理実
装体の実際の物理的実現のだめの入力として役立つ。
第9図の配線経路決定工程230は第10図に、より詳
細に示されている。この工程の前の部品の配置工程28
8はチップのどの位置にどの論理素子が置かれるか、及
びこれらの論理素子のどの端子が他の論理素子のどの端
子に接続されるかを決定する。次に論理サービス端子(
LST)間の最適のチャネル経路を決定するためにブロ
ック234に示すように大局的経路決定工程が行なわれ
る。
細に示されている。この工程の前の部品の配置工程28
8はチップのどの位置にどの論理素子が置かれるか、及
びこれらの論理素子のどの端子が他の論理素子のどの端
子に接続されるかを決定する。次に論理サービス端子(
LST)間の最適のチャネル経路を決定するためにブロ
ック234に示すように大局的経路決定工程が行なわれ
る。
これに続いて、選択されたチャネル内のトランクへの水
平及び垂直な配線の正確な埋め込みがブロック236に
示すように行なわれる。この決定の後、ブロック238
に示すようにオーバーフロー処理及び検査が行なわれ、
そして第9図のブロック232に戻る。1例として、マ
スク・スライス・チップ又はゲート・アレイ・チップと
して一般に知られているチップを用いて詳細な説明ヲ行
なう。
平及び垂直な配線の正確な埋め込みがブロック236に
示すように行なわれる。この決定の後、ブロック238
に示すようにオーバーフロー処理及び検査が行なわれ、
そして第9図のブロック232に戻る。1例として、マ
スク・スライス・チップ又はゲート・アレイ・チップと
して一般に知られているチップを用いて詳細な説明ヲ行
なう。
第11図に示されるマスタ・スライス・チップ240は
セル242の行及び列から構成される。
セル242の行及び列から構成される。
このセルを、水平方向の複数の配線トランク246から
成る水平チャネル244及び垂直方向の複数の配線トラ
ンク250から成る垂直チャネル248が通過している
。この水平及び垂直の配線チャネルは、絶縁層で隔てら
れた各配線面中に2ある。
成る水平チャネル244及び垂直方向の複数の配線トラ
ンク250から成る垂直チャネル248が通過している
。この水平及び垂直の配線チャネルは、絶縁層で隔てら
れた各配線面中に2ある。
能動論理素子は、さらに他の絶縁層で隔てられた、これ
ら2つの配線面の下側にある。
ら2つの配線面の下側にある。
第12図はセル242の詳細を示す。セルは論理装置2
5−2とそれに対応する水平及び垂直チャネル交点との
組み合せと解される。セルの4つの仮想的境界線はN、
E、S、Wポートと呼ばれる。
5−2とそれに対応する水平及び垂直チャネル交点との
組み合せと解される。セルの4つの仮想的境界線はN、
E、S、Wポートと呼ばれる。
各ボート上の利用可能な配線トランクの数はチャネル容
量と呼ばれる。各セル中の論理装置252は、AND、
OR,NAND、NOR,NOT。
量と呼ばれる。各セル中の論理装置252は、AND、
OR,NAND、NOR,NOT。
EX−OR、ランチ、等の基本的論理機能を実行するよ
うにパーンナライズされた能動半導体論理装置である。
うにパーンナライズされた能動半導体論理装置である。
その場所に配置された論理機能は論理装置がどのように
パーンナライズされるかを決定するが、これは配線経路
決定の工程には無関係である。しかしながら、論理装置
252にどの機能が割り当てられるかに依存して、垂直
配線トランク250に沿って論理サービス端子(LST
)254と呼ばれる位置が固定される。またあるLST
は水平トランク246に沿って配置しても良く、これは
同様に割り当てられた他のセルのLSTに接続しなけれ
ばならない。配線工程の他に、論理装置のバーソナリゼ
ーションのだめに水平及び垂直配線トラックの一部分ヲ
使用しても良い。
パーンナライズされるかを決定するが、これは配線経路
決定の工程には無関係である。しかしながら、論理装置
252にどの機能が割り当てられるかに依存して、垂直
配線トランク250に沿って論理サービス端子(LST
)254と呼ばれる位置が固定される。またあるLST
は水平トランク246に沿って配置しても良く、これは
同様に割り当てられた他のセルのLSTに接続しなけれ
ばならない。配線工程の他に、論理装置のバーソナリゼ
ーションのだめに水平及び垂直配線トラックの一部分ヲ
使用しても良い。
但しこれは影響を受けたトランクにおいて障害物になる
。従って化ポート及び南ポートのチャネル容量は同一で
はない可能性があり、また東方向及び西方向も同様であ
る。
。従って化ポート及び南ポートのチャネル容量は同一で
はない可能性があり、また東方向及び西方向も同様であ
る。
ネットとは、配置されたセルのLSTの集まりであって
、配線トランクに沿って設置された配線によって電気的
に共通に接続されるべきものを意味する。配線がその方
向全室えなければならない時、それは水平及び垂直の配
線トランクの交点256にプログラムされたバイアを用
いる事によって配線面を変える事によって行なわれる。
、配線トランクに沿って設置された配線によって電気的
に共通に接続されるべきものを意味する。配線がその方
向全室えなければならない時、それは水平及び垂直の配
線トランクの交点256にプログラムされたバイアを用
いる事によって配線面を変える事によって行なわれる。
チップ又はモジュール技術及び与えられた配置に依存し
て、全てのセル境界線のチャネル容量が固定される。チ
ップ入出力ビンは、ある指定された位置にある駆動器セ
ル及び受信器セルに接続される。普通これらのセルはチ
ップの周辺部にあるが、他の多くの構成も実用化されて
いる。
て、全てのセル境界線のチャネル容量が固定される。チ
ップ入出力ビンは、ある指定された位置にある駆動器セ
ル及び受信器セルに接続される。普通これらのセルはチ
ップの周辺部にあるが、他の多くの構成も実用化されて
いる。
また技術はセル内のバイアの配置も決定する。
その拘束は普通、トランクに沿って用いられるある隣接
バイアの禁止として表われる。この拘束がいかにして処
理されるかの詳細な解析はIBMJournal of
Re5earch and Development
。
バイアの禁止として表われる。この拘束がいかにして処
理されるかの詳細な解析はIBMJournal of
Re5earch and Development
。
July 1981号の1)−T、Lee 外によ
る論文″Number of Vias a C
ontrol Parameterfor Glob
al Wiring of High Density
Chips”に見い出す事ができる。上記文献の教え
る理論に従って、与えられたセル内でセルの水平及び垂
直チャネル容量の関数として2つの数VIAMIN及び
V I AMAXを決定する事ができる↓数VIAMI
Nは、技術的拘束を侵す事なくセル内に配置され得るバ
イアの最小の許された数を意味する。
る論文″Number of Vias a C
ontrol Parameterfor Glob
al Wiring of High Density
Chips”に見い出す事ができる。上記文献の教え
る理論に従って、与えられたセル内でセルの水平及び垂
直チャネル容量の関数として2つの数VIAMIN及び
V I AMAXを決定する事ができる↓数VIAMI
Nは、技術的拘束を侵す事なくセル内に配置され得るバ
イアの最小の許された数を意味する。
即ち、もしセル内にVIAMINよりも1つ少ない数の
バイアが配置されると、拘束を侵犯する事なく同じセル
内のどこかにもう1つ他の・くイアを付加する事が常に
出来る。数V IAMAXは、最も性別な配置の下でセ
ル内に割り当てる事のできるバイアの最大数を意味する
。即ちVIAMAXす、■の数のバイアはセルに割り当
てる事が可能である。即ちV I AMAX以下の屈曲
配線をセルを経て配線する事ができる。
バイアが配置されると、拘束を侵犯する事なく同じセル
内のどこかにもう1つ他の・くイアを付加する事が常に
出来る。数V IAMAXは、最も性別な配置の下でセ
ル内に割り当てる事のできるバイアの最大数を意味する
。即ちVIAMAXす、■の数のバイアはセルに割り当
てる事が可能である。即ちV I AMAX以下の屈曲
配線をセルを経て配線する事ができる。
第10図を参照すると、配線経路決定工程は配置及びチ
ップ構造のデータを用いて始められる。
ップ構造のデータを用いて始められる。
工8228によって与えられる配置データは、経路決定
されるべき各ネット毎に、(4)全てのLSTの数、(
B)各LSTのセル位置、及び(C)セル内の正確なL
STの物理的位置を与えるネット・リストである。チッ
プ構造データは、各セルの妨害状況及び全てのセルの全
ポートのチャネル容量に関する情報から成る。
されるべき各ネット毎に、(4)全てのLSTの数、(
B)各LSTのセル位置、及び(C)セル内の正確なL
STの物理的位置を与えるネット・リストである。チッ
プ構造データは、各セルの妨害状況及び全てのセルの全
ポートのチャネル容量に関する情報から成る。
配線経路決定工程250における最初の且つ最も重要な
主要ステップは大局的経路決定234と呼ば扛る。この
ステップにおいて、全てのネットの経路がセル分解能で
大局的に決定される。セル内での正確なLSTの位置、
経路の正確なトランク又はバイアの正確な位置はこのス
テップでは無視される。次にその後のステップ236で
、微細な分解能における詳細な技術的拘束を満足させな
がら、大局的に経路決定された配線セグメントがチャネ
ル内の正確なトランクに埋め込まれる。これまでの2段
階の手順からあふれ出だものとして配線セグメントが残
れば、オーバーフロー処理ステップ238が呼ばれる。
主要ステップは大局的経路決定234と呼ば扛る。この
ステップにおいて、全てのネットの経路がセル分解能で
大局的に決定される。セル内での正確なLSTの位置、
経路の正確なトランク又はバイアの正確な位置はこのス
テップでは無視される。次にその後のステップ236で
、微細な分解能における詳細な技術的拘束を満足させな
がら、大局的に経路決定された配線セグメントがチャネ
ル内の正確なトランクに埋め込まれる。これまでの2段
階の手順からあふれ出だものとして配線セグメントが残
れば、オーバーフロー処理ステップ238が呼ばれる。
現在の技術的慣行によれば、多くのオーバーフローは手
作業によって埋め込塘れており、チップの全開発時間に
長い遅れを生じさせている。本発明のねらいはオーバー
フローを減らし、且つ発生したオーバーフローを高速に
自動処理する事である。
作業によって埋め込塘れており、チップの全開発時間に
長い遅れを生じさせている。本発明のねらいはオーバー
フローを減らし、且つ発生したオーバーフローを高速に
自動処理する事である。
第10図のブロック234に示される大局的経路決定工
程を説明する流れ図、第13図を参照する。ネット・デ
ータ、チャネル容量及び迂回限界が流れ1図のブロック
260に対して与えられる。
程を説明する流れ図、第13図を参照する。ネット・デ
ータ、チャネル容量及び迂回限界が流れ1図のブロック
260に対して与えられる。
ブロック260において、配線経路によるトランクの予
期される使用により、チップの各セル境界線である各ボ
ートにおける混雑評価を行なうために第1のステップが
行なわれる。次に工程は、ブロック262.272及び
276に示すように一時に1ネツトヲ蛯路決定する。又
、ブロック262.272及び276に示すような単純
なネット処理順序の代わりに何らかの他の適当な手続き
により、配線すべきネットの順序を決定しても良い。
期される使用により、チップの各セル境界線である各ボ
ートにおける混雑評価を行なうために第1のステップが
行なわれる。次に工程は、ブロック262.272及び
276に示すように一時に1ネツトヲ蛯路決定する。又
、ブロック262.272及び276に示すような単純
なネット処理順序の代わりに何らかの他の適当な手続き
により、配線すべきネットの順序を決定しても良い。
ネットが経路決定される前に、そのネットの寄与による
混雑評価がブロック264に示すようにさし引かれ、そ
れによって、まだ経路決定されていないネットによる混
雑評価だけを反映するようにする。この更新された混雑
評価及びチャネル容量を用いて、各セル境界線毎にブロ
ック266に示すように交差に関するコス)(CO8T
)が決定される。またバイア・コストと呼ばれる、セル
中の配線を折り曲げる事に関するコストも、ブロック2
66の工程中に各セル毎に決定される。次にブロック2
68に示すように、プロセッサ配列ンステムを用いる事
によって、ネットを接続する最小コストの経路が決定さ
れる。もし配線工程が成功している事がブロック270
で判定されれば、プoツク272でネット数工が増計数
される。もしネット■の配線が不成功であれば、ブロッ
ク2フ4’t4−バーフローが記録され、ブロック27
2に移る。ブロック276では[全ネットが終了したか
?」という質問がなされる。もし答が否であればブロッ
ク264に戻り、これまでに示した処理?次のネットに
付き行なう。もし全ネットが処理済であれば、278に
示すように工程は外に出る。
混雑評価がブロック264に示すようにさし引かれ、そ
れによって、まだ経路決定されていないネットによる混
雑評価だけを反映するようにする。この更新された混雑
評価及びチャネル容量を用いて、各セル境界線毎にブロ
ック266に示すように交差に関するコス)(CO8T
)が決定される。またバイア・コストと呼ばれる、セル
中の配線を折り曲げる事に関するコストも、ブロック2
66の工程中に各セル毎に決定される。次にブロック2
68に示すように、プロセッサ配列ンステムを用いる事
によって、ネットを接続する最小コストの経路が決定さ
れる。もし配線工程が成功している事がブロック270
で判定されれば、プoツク272でネット数工が増計数
される。もしネット■の配線が不成功であれば、ブロッ
ク2フ4’t4−バーフローが記録され、ブロック27
2に移る。ブロック276では[全ネットが終了したか
?」という質問がなされる。もし答が否であればブロッ
ク264に戻り、これまでに示した処理?次のネットに
付き行なう。もし全ネットが処理済であれば、278に
示すように工程は外に出る。
第14図は第13図の混雑評価工程260の一般的な流
れを示す。ネット・データが280に示すように与えら
れ、ブロック282に示すように評価がゼロに初期値設
定される。与えられたネットの混雑評価はブロック28
6で行なわれる。ここでは2つの妥当な仮定がなされて
いる。第1に配線は最短の可能な経路を辿るのが最もあ
りそうな事であり、第2に2点間の接続はおそらく多数
のジグザグ経路は含まずむしろ高々2つの屈曲しか含f
ないであろうという事である。ブロック288に示すよ
うに、あらゆるセル境界において評価値が累算σれる。
れを示す。ネット・データが280に示すように与えら
れ、ブロック282に示すように評価がゼロに初期値設
定される。与えられたネットの混雑評価はブロック28
6で行なわれる。ここでは2つの妥当な仮定がなされて
いる。第1に配線は最短の可能な経路を辿るのが最もあ
りそうな事であり、第2に2点間の接続はおそらく多数
のジグザグ経路は含まずむしろ高々2つの屈曲しか含f
ないであろうという事である。ブロック288に示すよ
うに、あらゆるセル境界において評価値が累算σれる。
ブロック286と同じ副工程が、288(r減算で置き
換えて、第13図のブロック264で用いられる事に注
意されたい。ブロック290及び292は全ネットにわ
たる順序付け?制御する。もし全部のネットが終了すれ
ば、294に示すように工程は外へ出る。
換えて、第13図のブロック264で用いられる事に注
意されたい。ブロック290及び292は全ネットにわ
たる順序付け?制御する。もし全部のネットが終了すれ
ば、294に示すように工程は外へ出る。
第15図は、上述の2つの仮定が満足されるような、セ
ルA及びBの2点を接続する全ての配線経路を示す。境
界最小長方形296は、2点A及びBを含む最小の長方
形と定棧される。2点金接続する全ての最短経路は最小
長方形296の内部に存在しなければならない。図から
明らかなように、−与えられたセル境界7適過する配線
経路の数は最小長方形296内で変(ヒする。経路の数
は、2点A、Bからのセル距離が水平及び垂直チャネル
に沿って増加すると共に、1に減少する。長方形の中央
部分のセルは全部す1で表わされるように、いずれかの
方向に1つだけの経路を有する。
ルA及びBの2点を接続する全ての配線経路を示す。境
界最小長方形296は、2点A及びBを含む最小の長方
形と定棧される。2点金接続する全ての最短経路は最小
長方形296の内部に存在しなければならない。図から
明らかなように、−与えられたセル境界7適過する配線
経路の数は最小長方形296内で変(ヒする。経路の数
は、2点A、Bからのセル距離が水平及び垂直チャネル
に沿って増加すると共に、1に減少する。長方形の中央
部分のセルは全部す1で表わされるように、いずれかの
方向に1つだけの経路を有する。
第15図から明らかになった原理に従って、与えられた
ネットによる混雑評価が次のように行なわれる。但し以
下に示す方法同様に、多くの他の評価値を定式fヒし用
いる事もできる。
ネットによる混雑評価が次のように行なわれる。但し以
下に示す方法同様に、多くの他の評価値を定式fヒし用
いる事もできる。
第16図は、298に示すような与えられたネットの各
LST■に関する混雑評価への寄与のテンプレート・パ
ターン(T)である。与えられたネットの混雑評価寄与
は、迂回路のo′J能性を許し且つ最小長方形の内側を
強調して、決定される。
LST■に関する混雑評価への寄与のテンプレート・パ
ターン(T)である。与えられたネットの混雑評価寄与
は、迂回路のo′J能性を許し且つ最小長方形の内側を
強調して、決定される。
与えられたネットのLSTによる混雑評価値は、垂直な
場合が対称であるような、水平セル境界線交差に関して
示されている。セルから逃げるだめの水平パースを保存
するとして、これらの値の別の解釈を与える事ができる
。最小長方形の内側では、0値全持つセル境界に1の値
が割り当てられる。最小長方形の左右の辺の外側では、
全ての値は口になる。最小長方形の右又は左の辺のネッ
ト・ノード全部に関して、辺の値は4にされる。これは
町hヒな迂回経路に関する半分の強さである。
場合が対称であるような、水平セル境界線交差に関して
示されている。セルから逃げるだめの水平パースを保存
するとして、これらの値の別の解釈を与える事ができる
。最小長方形の内側では、0値全持つセル境界に1の値
が割り当てられる。最小長方形の左右の辺の外側では、
全ての値は口になる。最小長方形の右又は左の辺のネッ
ト・ノード全部に関して、辺の値は4にされる。これは
町hヒな迂回経路に関する半分の強さである。
5つのLSTネットに関して今述べたように計算された
混雑評価を与の例が第17図に示されている。LSTは
第16図のように■印で表わされ、最小長方形は太い線
で示されている。任意の数のLSTに関する混雑評価が
同様の方法で行なわれる。
混雑評価を与の例が第17図に示されている。LSTは
第16図のように■印で表わされ、最小長方形は太い線
で示されている。任意の数のLSTに関する混雑評価が
同様の方法で行なわれる。
第18図及び第19図は各々、セル境界における水平及
び垂直の混雑評価値の6次元的グラフである。垂直軸は
多くのネットにわたって合計された混雑評洒値に比例す
るように描かれている。このグラフは、第13図のブロ
ック260及び264の後に得られる混雑評価の値を表
わしている。
び垂直の混雑評価値の6次元的グラフである。垂直軸は
多くのネットにわたって合計された混雑評洒値に比例す
るように描かれている。このグラフは、第13図のブロ
ック260及び264の後に得られる混雑評価の値を表
わしている。
上述の説明に従って、第14図のブロック286を実行
するために制御装置及びSPEによって行なわれるステ
ップを第20図の流れ図に示す。
するために制御装置及びSPEによって行なわれるステ
ップを第20図の流れ図に示す。
各SPEは、特定のSPEメモリ・アドレス中にそれ自
身の水平セル位置(XID)及び垂直セル位置(YID
)のデータを有する。制御装置は各ネット毎にネツ)L
STの水平位置の最大及び最小(Xm i n、Xma
x )並びに垂直位置の最大及び最小(Ymi n、Y
max)のデータを有する。ざらにチップ中のセル位置
?表わす各SPEは、そのセル中にLST:有するネッ
トのリストをそのメモリに記憶している。
身の水平セル位置(XID)及び垂直セル位置(YID
)のデータを有する。制御装置は各ネット毎にネツ)L
STの水平位置の最大及び最小(Xm i n、Xma
x )並びに垂直位置の最大及び最小(Ymi n、Y
max)のデータを有する。ざらにチップ中のセル位置
?表わす各SPEは、そのセル中にLST:有するネッ
トのリストをそのメモリに記憶している。
次に、与えられたネットに付き水平混雑評価及び垂直混
雑評価の工程が連続して実行される。水平評価において
は、最初に第16図のテンプレート(T)が作られ、次
に最小長方形領域に依存して値が変更される。第20図
の流れ図は水平工程及び垂直工程が同様に且つ対称的な
方式で実行される事を示している。
雑評価の工程が連続して実行される。水平評価において
は、最初に第16図のテンプレート(T)が作られ、次
に最小長方形領域に依存して値が変更される。第20図
の流れ図は水平工程及び垂直工程が同様に且つ対称的な
方式で実行される事を示している。
第20.1図〜第203図は、所定のネットの混雑評価
を行なう時に制御装置及びSPE配列が論理的にどのよ
うに進むかを示す、物理的設計装置に関する流れ図であ
る。制御装置は論理ブロック602に入ると、上述のネ
ットのN E T I D 、Xm1n。
を行なう時に制御装置及びSPE配列が論理的にどのよ
うに進むかを示す、物理的設計装置に関する流れ図であ
る。制御装置は論理ブロック602に入ると、上述のネ
ットのN E T I D 、Xm1n。
Xmax、Ym i n、Ymaxi全部のSPEへ同
報通信する。ネット混雑評価値を加算するか又は減算す
るかの条件もこの時に同報通信される。
報通信する。ネット混雑評価値を加算するか又は減算す
るかの条件もこの時に同報通信される。
次に工程は論理ブロック304に准む。ここでは水平テ
ンプレート工程に関するジャンプ・アドレスのDMAが
開始される。次に工程はブロック606に進み、配列を
リセットししばらく待機する。
ンプレート工程に関するジャンプ・アドレスのDMAが
開始される。次に工程はブロック606に進み、配列を
リセットししばらく待機する。
このリセット信号は全部のSPEの論理ブロック640
を開始させる。304及び306で説明した論理機能は
適当なプログラムで配列を起動させる。30乙の待ち時
間はSPEがサービス・ワードのビジー・ピントをセン
トする時間を有するように充分に長く取られる。次にブ
ロック510及び314に示すようにサービス・ワード
のビジー・ビットが論理0になるまで、サービス・ワー
ドが質問される。この後、工程はブロック318に入り
、水平修正工程のために全部のSPEへDMAによって
ジャンプ・アドレスを同報通信する。
を開始させる。304及び306で説明した論理機能は
適当なプログラムで配列を起動させる。30乙の待ち時
間はSPEがサービス・ワードのビジー・ピントをセン
トする時間を有するように充分に長く取られる。次にブ
ロック510及び314に示すようにサービス・ワード
のビジー・ビットが論理0になるまで、サービス・ワー
ドが質問される。この後、工程はブロック318に入り
、水平修正工程のために全部のSPEへDMAによって
ジャンプ・アドレスを同報通信する。
次にブロック320で配列をリセットし待機する。
このリセット信号は322に示すように、全部のSPE
に論理ブロック662の実行全開始させる。
に論理ブロック662の実行全開始させる。
次に工程はブロック324に進み、ブロック524及び
328に示すようにビジー・ビットが0になるまで配列
の全部のSPEからサービス・ワードを読取り続ける。
328に示すようにビジー・ビットが0になるまで配列
の全部のSPEからサービス・ワードを読取り続ける。
この後、与えられたネットの垂直混雑評価に関して類似
のステップ系列604〜328が繰り返される。
のステップ系列604〜328が繰り返される。
304.606.510.618及び620に示す標準
的作業は配列のりセントとして以前に説明したものであ
る。
的作業は配列のりセントとして以前に説明したものであ
る。
制御装置の動作全要約すると、副工程304.506及
び610は水平混雑評価のためのテンプレート作成に関
する。副工程518.3207Jび324は以前説明し
た最小長方形に関する修正を行なう。
び610は水平混雑評価のためのテンプレート作成に関
する。副工程518.3207Jび324は以前説明し
た最小長方形に関する修正を行なう。
SPEはリセット論理ブロック306の作用により制御
装置によってリセットされるまで、638に示すように
待機モードにある。ブロック3゜6は水平テンプレート
工程金始めるために論理ブロック340i開始させる。
装置によってリセットされるまで、638に示すように
待機モードにある。ブロック3゜6は水平テンプレート
工程金始めるために論理ブロック340i開始させる。
次に工程はブロック342に進み、サービス・ワードの
ビジー・ビントラ論理1にセットする。次にブロック3
44に示すようにSPEは変数TEMPの値全0に初期
値設定し、LST隣と呼ばれる論理変数を論理〇に七ノ
i・する。この時SPEの動作はネットのLSTがセル
中にあるが否かに依存して異なったコース2敗る。ブロ
ック648及び350に示すように、もしセルがネット
のLSTを含めばSPEはその論理変数LsTを1にし
、もしセルがI、STi含寸なければ変数LSTを0に
セントする。
ビジー・ビントラ論理1にセットする。次にブロック3
44に示すようにSPEは変数TEMPの値全0に初期
値設定し、LST隣と呼ばれる論理変数を論理〇に七ノ
i・する。この時SPEの動作はネットのLSTがセル
中にあるが否かに依存して異なったコース2敗る。ブロ
ック648及び350に示すように、もしセルがネット
のLSTを含めばSPEはその論理変数LsTを1にし
、もしセルがI、STi含寸なければ変数LSTを0に
セントする。
そのLST値が1であるようなSPEだけが、ブロック
354に示すようにこの時8のTEMP値を割り当てら
れ、その隣シに適当な値を送信する。
354に示すようにこの時8のTEMP値を割り当てら
れ、その隣シに適当な値を送信する。
次に全部のSPEが、ブロック362で制御装置からり
セントされるまで、356.358及び560又は66
2及び334の動作を繰り返す。工程は全ての隣接セル
から読取りを行なうためにブロック656に進み、次に
ブロック358で「何らかの数値が受信されたか否か?
」の質問がなされる。もしこの質問に対する答が否であ
ればブロック366に進みビジー・ビットをオフにセッ
トし再びブロック556に戻る。従って5PEil″r
、、数値が受信されない限り、隣接セルから受信するた
めの試みを繰り返し、ビジー・ピンHaにリセットする
。しかしながら隣りから何らかの数値?受は取ると(3
58からのイエスの分岐)、SPEはプロンクロ52で
ビジー・ピント全1にセントし、ブロック364の動作
に進む。ブロック664が終了すると、工程はブロック
656に戻り、隣接セルからの数値金堂は喉る試み?繰
り返す。
セントされるまで、356.358及び560又は66
2及び334の動作を繰り返す。工程は全ての隣接セル
から読取りを行なうためにブロック656に進み、次に
ブロック358で「何らかの数値が受信されたか否か?
」の質問がなされる。もしこの質問に対する答が否であ
ればブロック366に進みビジー・ビットをオフにセッ
トし再びブロック556に戻る。従って5PEil″r
、、数値が受信されない限り、隣接セルから受信するた
めの試みを繰り返し、ビジー・ピンHaにリセットする
。しかしながら隣りから何らかの数値?受は取ると(3
58からのイエスの分岐)、SPEはプロンクロ52で
ビジー・ピント全1にセントし、ブロック364の動作
に進む。ブロック664が終了すると、工程はブロック
656に戻り、隣接セルからの数値金堂は喉る試み?繰
り返す。
ブロック660に示すようにどのSPEも隣、りから数
値を受は取らなくなるまでに、副工程654.556及
び334によってテンプレートが基本的に作成される。
値を受は取らなくなるまでに、副工程654.556及
び334によってテンプレートが基本的に作成される。
ブロック320における制御装置からの再プロンプティ
ングの時、各SPEはブロック662において修市工程
を開始する。変数TEMPとして計算された数値は各セ
ルの西ポートの混雑評価のためのものである。もしセル
が前述の最小長方形の左側境界の向う側にあれば、ブロ
ック374が数値tOに変更し、一方セルが境界LST
の隣りにあればブロック380がそれを4にセットする
。もしセルが最小長方形の上側にあれQま、ブロック3
84がそれInにセットし、もしセルが最小長方形の下
側又は右にあればブロック390がそれを0にセットす
る。ブロック400及び402は、境界の右側のセルが
LST’i含むか否かに依存して、数値を4又はDにセ
ントする。ブロック698は、もし数1直がOであれば
、最小長方形の内側において、内部の値を1にする。
ングの時、各SPEはブロック662において修市工程
を開始する。変数TEMPとして計算された数値は各セ
ルの西ポートの混雑評価のためのものである。もしセル
が前述の最小長方形の左側境界の向う側にあれば、ブロ
ック374が数値tOに変更し、一方セルが境界LST
の隣りにあればブロック380がそれを4にセットする
。もしセルが最小長方形の上側にあれQま、ブロック3
84がそれInにセットし、もしセルが最小長方形の下
側又は右にあればブロック390がそれを0にセットす
る。ブロック400及び402は、境界の右側のセルが
LST’i含むか否かに依存して、数値を4又はDにセ
ントする。ブロック698は、もし数1直がOであれば
、最小長方形の内側において、内部の値を1にする。
このようにしてTEMP値が変更された後、SPEは西
ポー1−混雑評価の総計に対してTEMP値を、ブロッ
ク406では加算又はブロック408では減算する。次
にそのTEMP値は西隣に転送され、そのTEMP値は
ブロック410に示すように与えられたネットからの東
ポート寄与とじて用いられる。次にブロック412にお
いて東隣から送られた数値を受は取り、東ポート混雑評
価値に対してその受信した数値をブロック416では加
算又はブロック418では減算する。次にブロック42
0で、ビジー・ピット?0にセントする。
ポー1−混雑評価の総計に対してTEMP値を、ブロッ
ク406では加算又はブロック408では減算する。次
にそのTEMP値は西隣に転送され、そのTEMP値は
ブロック410に示すように与えられたネットからの東
ポート寄与とじて用いられる。次にブロック412にお
いて東隣から送られた数値を受は取り、東ポート混雑評
価値に対してその受信した数値をブロック416では加
算又はブロック418では減算する。次にブロック42
0で、ビジー・ピット?0にセントする。
これは混雑評価の水平部分の完了を表わす。そしてSP
Eは422に示すように対称的な垂直工程又は他の工程
に関する制御装置からのプロンプティングを待つ。
Eは422に示すように対称的な垂直工程又は他の工程
に関する制御装置からのプロンプティングを待つ。
制御装置のブロック510.314.524.628及
びSPEのブロック342.660.362.364及
び422に示すように配列のSPEと共に制御装置によ
って実行される工程は以前に同期化機構と名付けたもの
である二 第16図に戻り、ブロック266の副工程をより詳細に
説明する。セル境界のポート・コストは、チャネル容量
及びそのポートの混雑評(HflFの関数として、次の
理論に従って計算される。これらのホード・コストは、
もしあればバイア・コスト即ち配線を経路上で曲げる事
のコストと共に経路に沿って累計された時、配線経路の
コスト?構成する。
びSPEのブロック342.660.362.364及
び422に示すように配列のSPEと共に制御装置によ
って実行される工程は以前に同期化機構と名付けたもの
である二 第16図に戻り、ブロック266の副工程をより詳細に
説明する。セル境界のポート・コストは、チャネル容量
及びそのポートの混雑評(HflFの関数として、次の
理論に従って計算される。これらのホード・コストは、
もしあればバイア・コスト即ち配線を経路上で曲げる事
のコストと共に経路に沿って累計された時、配線経路の
コスト?構成する。
ポート・コストの良好な実施例に関する背景理−輪はい
くつかの方針を取る。
くつかの方針を取る。
(a)チャネル容量が等しければ、ポート・コストはそ
のポートの混雑評価に比例すべきである。
のポートの混雑評価に比例すべきである。
(b) もしポートのチャネル容量が0であれば、コ
ストは無限大であるべきである。
ストは無限大であるべきである。
(c) 多数のトランクが利用oJ能な時、混雑評価
はコストに対して小心な影響しか与えるべきでない。
はコストに対して小心な影響しか与えるべきでない。
(a) ポート毎に同じ混雑評価が与えられた時、異
なったチャネル容量を有するポートに割g当てられたポ
ート・コストの意味は次のように説明する事ができる。
なったチャネル容量を有するポートに割g当てられたポ
ート・コストの意味は次のように説明する事ができる。
チャネル容量Cに関するポート・コストヲ、チャネル容
量C+1のポート・コストpのα倍であるとする(αは
1.2.6.4・・・・・・等〕。その容量がCである
ポートたけを通過する長さLの経路は、総コストがαP
Lである。一方1つトランクの数の多い(C+1トラツ
ク)ポートだけから成る経路は、長さがαLであっても
同じコストである。見方を変えると、もし迂回路がCト
ランクのポート全1回通る代わりにC+1トランクのポ
ートを通れば、(α−1)の長さの迂回経路の方が好ま
しいという重金αは意味している。従ってαの良好な選
択はチャネル容量の減少関数である。
量C+1のポート・コストpのα倍であるとする(αは
1.2.6.4・・・・・・等〕。その容量がCである
ポートたけを通過する長さLの経路は、総コストがαP
Lである。一方1つトランクの数の多い(C+1トラツ
ク)ポートだけから成る経路は、長さがαLであっても
同じコストである。見方を変えると、もし迂回路がCト
ランクのポート全1回通る代わりにC+1トランクのポ
ートを通れば、(α−1)の長さの迂回経路の方が好ま
しいという重金αは意味している。従ってαの良好な選
択はチャネル容量の減少関数である。
即ちトランクの数が小さければαは高い(実際トランク
が存在しなければα−ωである)。また多数のトラック
が利用可能ならばαは1に近づく。これは多数のトラン
クが利用可能な時は迂回する理由が存在しない事?意味
している。
が存在しなければα−ωである)。また多数のトラック
が利用可能ならばαは1に近づく。これは多数のトラン
クが利用可能な時は迂回する理由が存在しない事?意味
している。
チャネル容量の関数としてのαの望ましい傾向は第21
図に示しである。このαの望ましい傾向は多くの方式で
定量的に達成する事ができる。
図に示しである。このαの望ましい傾向は多くの方式で
定量的に達成する事ができる。
例えば、
(1) a 1四了
但し0≦βく1及びc>。
(e)需要が供給よりも高ければポート・コストは尚く
なければならず、供給が需要よりも高ければ非辞に小さ
くなければならない。CEの混雑評I(IlI値が与え
られれば、(CE÷16)が需要全近似するために用い
られる。
なければならず、供給が需要よりも高ければ非辞に小さ
くなければならない。CEの混雑評I(IlI値が与え
られれば、(CE÷16)が需要全近似するために用い
られる。
上、fei由により、ポート・コストPCの計算は次の
ような形?取る。
ような形?取る。
(1)C二〇ならば、pc−■
L2) ”5c即ち供給過剰の場合、6
CE
PC=CD+CEX2eXp((−−C)Xニー1)1
6 2 (3)c−!−〉C即ち需要過剰の場合、6 C=1に関して、PC=CD+4.5CEC=2に関し
て、PC=CD+4.5CEC≧6に関して、P C=
CD−t−0,5CE−fcE X2 e x p
(” )但し2 exp Aは2のA乗を意味する。
6 2 (3)c−!−〉C即ち需要過剰の場合、6 C=1に関して、PC=CD+4.5CEC=2に関し
て、PC=CD+4.5CEC≧6に関して、P C=
CD−t−0,5CE−fcE X2 e x p
(” )但し2 exp Aは2のA乗を意味する。
第22図はCE及びCの関数としてポート・コスト’2
図示したもの、第23′図は2変数の関数として垂直軸
方向にポート・コストヲ定性的に描いたものである。
図示したもの、第23′図は2変数の関数として垂直軸
方向にポート・コストヲ定性的に描いたものである。
他の項がポート・コストに加算されても良い。
この項はどこのセル境界を交差する場合でも固定値であ
る、直接距離コストの形ifつてもよく、又は内部セル
の複雑性のある測度を表わしてもよい このパラメータ
は上式中ではCDで表わされている。ポート・コストの
計算は制御装置にプロンプトされた時に配列中のあらゆ
るSPEにおいて行なわれる。この工程の正確な流れ図
は明白なので省略した。
る、直接距離コストの形ifつてもよく、又は内部セル
の複雑性のある測度を表わしてもよい このパラメータ
は上式中ではCDで表わされている。ポート・コストの
計算は制御装置にプロンプトされた時に配列中のあらゆ
るSPEにおいて行なわれる。この工程の正確な流れ図
は明白なので省略した。
セルのバイア・コストVCは、セル中で既に便IIIさ
れたバイアの数Vusedの関数として計算される。ま
た関数にセルの特定のパラメータVmax及びV mi
nも利用する。各セルあるいは対応する5PEf/J、
利?i11装置によってプロンプトされた時に次のよう
にバイア・コストヲ計Wする。
れたバイアの数Vusedの関数として計算される。ま
た関数にセルの特定のパラメータVmax及びV mi
nも利用する。各セルあるいは対応する5PEf/J、
利?i11装置によってプロンプトされた時に次のよう
にバイア・コストヲ計Wする。
(a) V u s e d< Vmi nの場合:
vcH殆んど0゜しかしタイ・プレーカーとして役立
つために小さな数1直が割り当てられても良い。この目
的のためK V C= Vused f用い得る。
vcH殆んど0゜しかしタイ・プレーカーとして役立
つために小さな数1直が割り当てられても良い。この目
的のためK V C= Vused f用い得る。
Q))、 V used =Vmaxの場合:vc=
c。
c。
(c) Vmin≦V used < V maxの
場合: V used==VmaxにおいてVCが無限
大になるような、V used の指数関数的に増大す
る関数。現在の実施例では無限大はM=(2exp16
)−1,=65535という最大の計算機ワード値と
して実現きれている。従ってこの場合のVCは次式の通
りに6土算される。
場合: V used==VmaxにおいてVCが無限
大になるような、V used の指数関数的に増大す
る関数。現在の実施例では無限大はM=(2exp16
)−1,=65535という最大の計算機ワード値と
して実現きれている。従ってこの場合のVCは次式の通
りに6土算される。
VC=max (Vused、 MX2 exp(−δ
X (Vmax−V u s e d但しδは2以下の
小さな定数である。
X (Vmax−V u s e d但しδは2以下の
小さな定数である。
再び第13図に戻り、主な処理工程268、即ちネソ)
Iの配線を以下詳細に説明する。最初に各SPEにおい
て次の数値が計算される。
Iの配線を以下詳細に説明する。最初に各SPEにおい
て次の数値が計算される。
(、) 配線すべきネット(ネットI)(b) 全
4ポートに関する現在のポート・コスト(c) セル
に関する現在のバイア その他にSPEはメモリ中に次の数値を含む。
4ポートに関する現在のポート・コスト(c) セル
に関する現在のバイア その他にSPEはメモリ中に次の数値を含む。
これらはセルに対応するか又は初期に記憶されたグロー
バルな定数等である。
バルな定数等である。
(d) 迂回限界(DLIM)
(e)全4ポートの現在のチャネル容量(f)4ポート
の現在の混雑評価 (g) セルに関するVmin、Vmax、Vuse
d及びD 第24図は第13図の大局的経路決定工程のブロック2
68のより詳細な流れ図である。前に述べたようにポー
ト・コスト及びバイア・コストは、ら与えられる。ソー
スとは工程において既に接続されたネット部分金言う。
の現在の混雑評価 (g) セルに関するVmin、Vmax、Vuse
d及びD 第24図は第13図の大局的経路決定工程のブロック2
68のより詳細な流れ図である。前に述べたようにポー
ト・コスト及びバイア・コストは、ら与えられる。ソー
スとは工程において既に接続されたネット部分金言う。
□次に、最初、普通ネットのLSTの1つが424に示
すように初期ソースに選択される。しばしば大局的配線
工程の前にネットの一部が既に部分的に経路決定されて
いる事がある。その場合はその部分的ネット全体がソー
スとして働く。任意のLSTi初期ソースとして選択す
る事ができるが、一般的な配線0T能性金高めるために
初期ソースの選択において異なった方式金剛いてもよい
。ネットの残りのLSTはシンクと考えられる。ブロッ
ク426において、経路コスト2伝搬ブせ、次にブロッ
ク428で伝搬が成功したか否かを決定する。もし不成
功ならば、線460のオーバーフロー出口が存在する。
すように初期ソースに選択される。しばしば大局的配線
工程の前にネットの一部が既に部分的に経路決定されて
いる事がある。その場合はその部分的ネット全体がソー
スとして働く。任意のLSTi初期ソースとして選択す
る事ができるが、一般的な配線0T能性金高めるために
初期ソースの選択において異なった方式金剛いてもよい
。ネットの残りのLSTはシンクと考えられる。ブロッ
ク426において、経路コスト2伝搬ブせ、次にブロッ
ク428で伝搬が成功したか否かを決定する。もし不成
功ならば、線460のオーバーフロー出口が存在する。
もし成功であれば、ブロック452で、到達したシンク
のどれがソースに接続てれるかを決定する。次にブロッ
ク454でバンク・トレースを開始し、ノ/りからソー
スへ更新全行なっていく。次に工程はブロック436に
進み、新しく接続された経路全体tノースに付は加える
。次にブロック4′68で、全てのLSTが接続された
かどうかが決定される。もし否であれば工程はブロック
426にループ・バンクする。もし全てのLSTが接続
されれば、第16図のブロック270へ移る。
のどれがソースに接続てれるかを決定する。次にブロッ
ク454でバンク・トレースを開始し、ノ/りからソー
スへ更新全行なっていく。次に工程はブロック436に
進み、新しく接続された経路全体tノースに付は加える
。次にブロック4′68で、全てのLSTが接続された
かどうかが決定される。もし否であれば工程はブロック
426にループ・バンクする。もし全てのLSTが接続
されれば、第16図のブロック270へ移る。
副工程426〜468を通過するたびに、既に接続され
たネット部分に付加的なLSTが接続されて、全てのL
STが接続される。ブロック426〜464は、ソース
全体からシンクLSTのいずれかへの最小コスト経路を
決定しLSTi経路で接続する。経路の長さは、ソース
からシンクへの最短到達可能距離の差迂回限界(DLI
M)内に制御される。LSTがソースに接続されると、
ブロック436に示すように新しく接続されたLSTi
含む部分経路全体が新たなソースとなり、ブロック42
6〜434の工程が、全てのLSTの接続されるまで反
復される。もしもそれ以上のLSTがソースから接続不
可能ならば、ブロック428で不幸なオーバーフロー状
態が生じ、線460においてオーバーフロー出口が必要
になる。
たネット部分に付加的なLSTが接続されて、全てのL
STが接続される。ブロック426〜464は、ソース
全体からシンクLSTのいずれかへの最小コスト経路を
決定しLSTi経路で接続する。経路の長さは、ソース
からシンクへの最短到達可能距離の差迂回限界(DLI
M)内に制御される。LSTがソースに接続されると、
ブロック436に示すように新しく接続されたLSTi
含む部分経路全体が新たなソースとなり、ブロック42
6〜434の工程が、全てのLSTの接続されるまで反
復される。もしもそれ以上のLSTがソースから接続不
可能ならば、ブロック428で不幸なオーバーフロー状
態が生じ、線460においてオーバーフロー出口が必要
になる。
これは別の方法で処理される。
種々の評価値やコスト全計算する方法、迂回限界の選択
(チップ寸法及びその複雑度に依存して、0から15程
度までの範囲にある)、配線されるネットの順序及び初
期ソースの選択、これら全てが全ネットの配線の成功に
寄与する。しかしながらこれらが一度決定されると、本
発明の機械は与えられた拘束の範囲内で迅速且つ効率的
に真の最良コストの経路全決定する。全ての実用的な目
的のために、従来技術の方法は、最良コストヲ有さない
かもしれないある可能な経路を見つけ出す事しかできな
かった。上記パラメータの採用は、主に配列における並
列処理のスピードによって可能になっている。従ってオ
ーバーフロー出口430は工程中の例外的な事象でなけ
ればならない。
(チップ寸法及びその複雑度に依存して、0から15程
度までの範囲にある)、配線されるネットの順序及び初
期ソースの選択、これら全てが全ネットの配線の成功に
寄与する。しかしながらこれらが一度決定されると、本
発明の機械は与えられた拘束の範囲内で迅速且つ効率的
に真の最良コストの経路全決定する。全ての実用的な目
的のために、従来技術の方法は、最良コストヲ有さない
かもしれないある可能な経路を見つけ出す事しかできな
かった。上記パラメータの採用は、主に配列における並
列処理のスピードによって可能になっている。従ってオ
ーバーフロー出口430は工程中の例外的な事象でなけ
ればならない。
第13図に示す副王程274はオーバーフロー状態を処
理するために用いられる。この状態を処理する1つの方
法はオーバーフローを記録し、図示されているように次
のネットに進む事である。
理するために用いられる。この状態を処理する1つの方
法はオーバーフローを記録し、図示されているように次
のネットに進む事である。
次に大局的配線全体が終了した時、オーバーフロー処理
用の別の工程を開始する事ができる。またその代りに、
副工程274をその場でのオーバーフロー処理側工程で
置き換える事も可能である。
用の別の工程を開始する事ができる。またその代りに、
副工程274をその場でのオーバーフロー処理側工程で
置き換える事も可能である。
この処理は以前に経路決定したネットのあるものを修正
し現在のネット経路決定?再試行してもよい。
し現在のネット経路決定?再試行してもよい。
制御装置は、全てのLST’i接続するために、普通ネ
ット中のLSTの総数よりも1回少ない回数、第24図
の副工程426〜466を実行する。
ット中のLSTの総数よりも1回少ない回数、第24図
の副工程426〜466を実行する。
第25図は制御装置に関する第24図の主要な副工程4
26(経路コストの伝搬)の流れ図である。この工程は
ブロック444で開始し、ブロック446に進んで最初
に伝搬初期値設定のために配列k ’J上セツトる。次
に工程は448及び450に示すようにビジー・ビット
がオフになるまで普通の方式で待機する。次にブロック
452で伝搬のために配列をリセツトする。そしてビジ
ー・ビットがオフになるまで普通の方式で待機Tる。
26(経路コストの伝搬)の流れ図である。この工程は
ブロック444で開始し、ブロック446に進んで最初
に伝搬初期値設定のために配列k ’J上セツトる。次
に工程は448及び450に示すようにビジー・ビット
がオフになるまで普通の方式で待機する。次にブロック
452で伝搬のために配列をリセツトする。そしてビジ
ー・ビットがオフになるまで普通の方式で待機Tる。
もしビジー・ビットがオフになれば、工程はブロック4
60に進み、エンド・フラグがオンがどうかを判定する
。もしエンド・フラグがオンであれば、工程は第15図
のブロック262に出る。もしエンド・フラグがオンで
なければ、工程はブロック464に進み活動フラグがオ
フかどうかを判是する。もし活動フラグがオフでなけれ
ば工程はブロック452に戻る。もし活動フラグがオフ
でめれば第13図のブロック274に行く。
60に進み、エンド・フラグがオンがどうかを判定する
。もしエンド・フラグがオンであれば、工程は第15図
のブロック262に出る。もしエンド・フラグがオンで
なければ、工程はブロック464に進み活動フラグがオ
フかどうかを判是する。もし活動フラグがオフでなけれ
ば工程はブロック452に戻る。もし活動フラグがオフ
でめれば第13図のブロック274に行く。
第261図、第262図、第266図及び第27図は配
列中のSPEに関する第24図の経路コスト伝搬副王程
426の流れ図である。ブロック472にお・いてSP
Eは伝16初期値設定のためにリセソトジれ、ブロック
474ではビジー・ビットがオンにセソトサれる。次に
ブロック476で伝搬初期値設定が行なわれ、伝搬ステ
ップ中で用いられる関連のある変数及びフラグがこのブ
ロックに示すようにセントされる。最初全ポートが、全
隣接S PEを読取り且つその内容を無視する事により
クリアされる(47.!5.1)。この操作によす全ポ
ートはポート・メールボンクス・フラグ機構ヲIJセン
トする事によって隣から情報を受は取る準備ができる。
列中のSPEに関する第24図の経路コスト伝搬副王程
426の流れ図である。ブロック472にお・いてSP
Eは伝16初期値設定のためにリセソトジれ、ブロック
474ではビジー・ビットがオンにセソトサれる。次に
ブロック476で伝搬初期値設定が行なわれ、伝搬ステ
ップ中で用いられる関連のある変数及びフラグがこのブ
ロックに示すようにセントされる。最初全ポートが、全
隣接S PEを読取り且つその内容を無視する事により
クリアされる(47.!5.1)。この操作によす全ポ
ートはポート・メールボンクス・フラグ機構ヲIJセン
トする事によって隣から情報を受は取る準備ができる。
ボート毎に長さがD=1+DLIMのフラグ値のスタッ
クが割り当てられ、スタック・ポインタによってインデ
ックスされる。有効なインデックス(l″X、0〜(D
’−1)である。スタックは、与えられた出力ボートに
関して、スタック・ポインタによって巡回的に指示され
た時間に最良のコストの経路?含む入力ポートがどれか
という情報を含む。
クが割り当てられ、スタック・ポインタによってインデ
ックスされる。有効なインデックス(l″X、0〜(D
’−1)である。スタックは、与えられた出力ボートに
関して、スタック・ポインタによって巡回的に指示され
た時間に最良のコストの経路?含む入力ポートがどれか
という情報を含む。
肩効な経路コストを最初に受は取ると、全てのSPEは
多くてD回の間、経路コストの伝搬に関与する。活動カ
ウンタ(47’6.2)Uその期間の後のSPEの関与
を停止させるために用いられる。
多くてD回の間、経路コストの伝搬に関与する。活動カ
ウンタ(47’6.2)Uその期間の後のSPEの関与
を停止させるために用いられる。
活動フラグ・ビット(476,5)は、SPEがまだ活
動伝搬期間内にある事を制御装置に示すために萌われる
サービス・ワード・ピントの1つである。エンド・フラ
グ(476,5)はサービス・ワードの他のビットであ
って、論理1にセントされた時に、ネットのLSTi有
するセル(シンク・セルのみ)が特定の活動肋間(D)
K於てどこかから経路コスト?受は取った事即ちソース
からシンクへの全ての経路が迂回限界内でトラバースざ
れた手金制御装置に表示する。/ツク・セルの使用に関
する最良値はM即ち無限大を表わす数に初KA値設定さ
れる。
動伝搬期間内にある事を制御装置に示すために萌われる
サービス・ワード・ピントの1つである。エンド・フラ
グ(476,5)はサービス・ワードの他のビットであ
って、論理1にセントされた時に、ネットのLSTi有
するセル(シンク・セルのみ)が特定の活動肋間(D)
K於てどこかから経路コスト?受は取った事即ちソース
からシンクへの全ての経路が迂回限界内でトラバースざ
れた手金制御装置に表示する。/ツク・セルの使用に関
する最良値はM即ち無限大を表わす数に初KA値設定さ
れる。
第25図に戻って、初期直設定446の後、制御装置は
ブロック452で伝搬をプロンプトする。
ブロック452で伝搬をプロンプトする。
伝搬のプロンプティングの各々は1セルのピンチで経路
を伸ばす。制鐸装#は、全てのSPEがこの1セル伝搬
を終えたか否か?検査し、さらにブロック460でエン
ド・フラグがオンか否かを検査する。エンド・フラグが
オンであれば、これは迂回限界内でソースから/ツクへ
の全経路がトラバースされた手金意味する。もしエンド
・フラグが丑だオンでなければ、ブロック464で制御
装#はまだ活動り伝搬サイクル中のSPEがあるか否か
を検査し、もしそうであればブロック452で配列に他
の伝搬サイクルをプロンプトする。しかしながら、もし
もどのSPEも活動期間内にないならば、オーバーフロ
ーが検出され、第16図のブロック274に示すような
適当な動作が行なわれる。伝搬工程452を通過する毎
に、配列はセルきざみに経路に付加される拳M長全処理
する。
を伸ばす。制鐸装#は、全てのSPEがこの1セル伝搬
を終えたか否か?検査し、さらにブロック460でエン
ド・フラグがオンか否かを検査する。エンド・フラグが
オンであれば、これは迂回限界内でソースから/ツクへ
の全経路がトラバースされた手金意味する。もしエンド
・フラグが丑だオンでなければ、ブロック464で制御
装#はまだ活動り伝搬サイクル中のSPEがあるか否か
を検査し、もしそうであればブロック452で配列に他
の伝搬サイクルをプロンプトする。しかしながら、もし
もどのSPEも活動期間内にないならば、オーバーフロ
ーが検出され、第16図のブロック274に示すような
適当な動作が行なわれる。伝搬工程452を通過する毎
に、配列はセルきざみに経路に付加される拳M長全処理
する。
SP、Eが伝搬初期値設定?終了した後、制御装置が伝
搬を再プロンプトし続ける回数だけ、実際の伝搬動作が
上述のようにブロック482から494金経て516又
は554まで反復される。その各々において、5PEf
lブロツク486で活動カウンタ匝がDに等しいかどう
かを検査する。もし活動カウンタ値がDであれば、ブロ
ック488に進み全ホートラクリアし、次にブロック4
90で活動フラグ全オフにセントする。次にブロック4
92に進み、ビジー・ビットをオフにセットし、494
に示すように待機する。もし活動カウンタ1直がDでな
ければ、SPEがソース・セルを表わしているか否かに
依存して工程は異なったコースを取る(ブロック496
)。ノース・セルSPEは第27図のブロック500に
進み、活動カウンタを増計数し活動フラグ全オンにセン
トする。これに続いて論理工程はブロック502に進み
全ホートラクリアし次にブロック504に進み全4ポー
トに関する経路コストに対して直接にポートコスト全学
に割り当てる事によって各ポートにijLで経路コスト
を計算し、次にこれを隣に送る。
搬を再プロンプトし続ける回数だけ、実際の伝搬動作が
上述のようにブロック482から494金経て516又
は554まで反復される。その各々において、5PEf
lブロツク486で活動カウンタ匝がDに等しいかどう
かを検査する。もし活動カウンタ値がDであれば、ブロ
ック488に進み全ホートラクリアし、次にブロック4
90で活動フラグ全オフにセントする。次にブロック4
92に進み、ビジー・ビットをオフにセットし、494
に示すように待機する。もし活動カウンタ1直がDでな
ければ、SPEがソース・セルを表わしているか否かに
依存して工程は異なったコースを取る(ブロック496
)。ノース・セルSPEは第27図のブロック500に
進み、活動カウンタを増計数し活動フラグ全オンにセン
トする。これに続いて論理工程はブロック502に進み
全ホートラクリアし次にブロック504に進み全4ポー
トに関する経路コストに対して直接にポートコスト全学
に割り当てる事によって各ポートにijLで経路コスト
を計算し、次にこれを隣に送る。
次にノース・セルSPEはビジー・フラグ全オフにセッ
トしく普通医の伝搬工程の通過?)待機する。経路コス
トが隣に「送信」される時5ブロツク506.510及
び512に示すように、実際の数値の送信は経路コスト
がM即ち無限大を表わす数値よりも小さい場合にしか起
きていない。この事情はり、下に承すように隣に経路コ
ストを「送fぎ」する全ての場合に当てはする。
トしく普通医の伝搬工程の通過?)待機する。経路コス
トが隣に「送信」される時5ブロツク506.510及
び512に示すように、実際の数値の送信は経路コスト
がM即ち無限大を表わす数値よりも小さい場合にしか起
きていない。この事情はり、下に承すように隣に経路コ
ストを「送fぎ」する全ての場合に当てはする。
第261図に戻る。もしSPEがソース・セルを表わさ
なければ、工程はブロック496から第262iのブロ
ック520に進み隣全部即ちN1E、S、Wから経路コ
ストヲ読取る。もし隣から何の数1直も送信されなけれ
ば5数値はMにセントされる。次に論理工程はブロック
522に進みM以外の何らかの数値が受信されたか否か
を判定する。もし有限値が受信されなかったならば、工
程は第263図のブロック548に進む。もし何らかの
有限の経路コストが受信されたならば、工程はブロック
526に進み活動フラグ全オンにセントし活動カウンタ
を増計数する。次に工程はブロック528において、シ
ンク・セルの場合はブロック568に、中間のセルの場
合はブロック5ろ2に分岐する。中間セルを表わfsP
Eは次にブロック532に示すように屈曲経路コスト?
計算する。屈曲経路コストは単にバイア・コストと受信
した経路コストとの和である。ブロック532中の■記
号で表わされた和動作については後述する。次にブロッ
ク534で各ポート毎に次の動作が行なわれる。
なければ、工程はブロック496から第262iのブロ
ック520に進み隣全部即ちN1E、S、Wから経路コ
ストヲ読取る。もし隣から何の数1直も送信されなけれ
ば5数値はMにセントされる。次に論理工程はブロック
522に進みM以外の何らかの数値が受信されたか否か
を判定する。もし有限値が受信されなかったならば、工
程は第263図のブロック548に進む。もし何らかの
有限の経路コストが受信されたならば、工程はブロック
526に進み活動フラグ全オンにセントし活動カウンタ
を増計数する。次に工程はブロック528において、シ
ンク・セルの場合はブロック568に、中間のセルの場
合はブロック5ろ2に分岐する。中間セルを表わfsP
Eは次にブロック532に示すように屈曲経路コスト?
計算する。屈曲経路コストは単にバイア・コストと受信
した経路コストとの和である。ブロック532中の■記
号で表わされた和動作については後述する。次にブロッ
ク534で各ポート毎に次の動作が行なわれる。
(1) 向い側のポートの経路コスト及び直交方向の
ポートに関する2つの屈曲経路コストのうち最小の経絡
コスト、例えば化ポートに関しては、(S、EE%WW
)の最小値の方向を見い出す。
ポートに関する2つの屈曲経路コストのうち最小の経絡
コスト、例えば化ポートに関しては、(S、EE%WW
)の最小値の方向を見い出す。
(2) スタック・ポインタによって指示されるスタ
ック中に最良の方向全記録する。
ック中に最良の方向全記録する。
(3)経路コストに対して出ポ1−ト・コストヲ加算す
る。
る。
(4)経路コストを隣に送る。
次に工程はブロック554から第266図のプロッタ5
48に進む。前に述べたよつに/ツク・セルSPEの動
作はブロック528からブロック538に分岐し、そこ
で活動カウンタの値がDにン・1して検査される。もし
活動カウンタがDに等しケレばブロック540において
エンド・フラグがオンにセントされる。次にシンク・セ
ルSPEはブロック542に進み、到来した経路コスト
の最良のものを見い出し、新しい最良の方向全記録する
。次に工程はブロック544に進み、ここで新しい最良
の値と以前に記憶されていた最良の値とが比較される。
48に進む。前に述べたよつに/ツク・セルSPEの動
作はブロック528からブロック538に分岐し、そこ
で活動カウンタの値がDにン・1して検査される。もし
活動カウンタがDに等しケレばブロック540において
エンド・フラグがオンにセントされる。次にシンク・セ
ルSPEはブロック542に進み、到来した経路コスト
の最良のものを見い出し、新しい最良の方向全記録する
。次に工程はブロック544に進み、ここで新しい最良
の値と以前に記憶されていた最良の値とが比較される。
もし以前の値が悪くなければ、工程は直接プロッタ54
8に進む。もし新しい最良1直の方が良ければ、I4は
ブロック546に進み最良値、最良インデックス及び最
良ポートを更新する。SPEの行なう最終の動作はプロ
ッタ548.550及び55′2に示すような、スタッ
ク・ポインタkDk法として増計数する事である。
8に進む。もし新しい最良1直の方が良ければ、I4は
ブロック546に進み最良値、最良インデックス及び最
良ポートを更新する。SPEの行なう最終の動作はプロ
ッタ548.550及び55′2に示すような、スタッ
ク・ポインタkDk法として増計数する事である。
次に工程はビジー・ピッH−オフにセントし待機する。
ブロック558.560及び562はプロッタ562を
より詳細に示したものであり、ブロック558では数値
が加算され、ブロック560では結果がMよりも大きい
か否かが判定され、もしMよシも大きければプロッタ5
62でMに戻される。
より詳細に示したものであり、ブロック558では数値
が加算され、ブロック560では結果がMよりも大きい
か否かが判定され、もしMよシも大きければプロッタ5
62でMに戻される。
この変型された加算は、無限大にいかなる数?加算して
も無限大が生じるため、無限大表示の変換によって生じ
る。
も無限大が生じるため、無限大表示の変換によって生じ
る。
ソース・セルを表わすSPEぽ、D回の通過の間、基本
的には適当なポート・コストをその隣に経路コストとし
て伝える。各通過において活動カウンタは増計数され、
それがDに到達する時、ブロック48乙に示すようにソ
ースSPEは伝搬に関与するのを停止し活動フラグを下
ろす。中間セルは、基本的には伝搬に関与するために隣
から最初の有効な経路コストが送られて来るまで待機す
る。中間セル及びシンク・セルを表わすSPEは各通過
毎にブロック548に示すようにそれらのスタッタ・ポ
イン、if増計数する。この変数は実際にはブロック5
48.550及び552の機構によって循環方式で増計
数される。非ソース・セルは、ブロック520及び52
2に示すように最初に隣から有効な経路コストを受は取
る事によって活動状態になると、活動フラグtオンにセ
ットし活動力ラン5を増計数する。活動力ランl値は、
ブロック48乙に示すように自己終端のために用いられ
、活動層Mはプロッタ490に示すよりにソース・セル
の場合と同様に用いられる。プロッタ540に示すよう
に/フタSPEのどれかが活動期間の終了?知らせるた
めにエンド・フラグ?上げると、これは全伝搬工程を終
了される。
的には適当なポート・コストをその隣に経路コストとし
て伝える。各通過において活動カウンタは増計数され、
それがDに到達する時、ブロック48乙に示すようにソ
ースSPEは伝搬に関与するのを停止し活動フラグを下
ろす。中間セルは、基本的には伝搬に関与するために隣
から最初の有効な経路コストが送られて来るまで待機す
る。中間セル及びシンク・セルを表わすSPEは各通過
毎にブロック548に示すようにそれらのスタッタ・ポ
イン、if増計数する。この変数は実際にはブロック5
48.550及び552の機構によって循環方式で増計
数される。非ソース・セルは、ブロック520及び52
2に示すように最初に隣から有効な経路コストを受は取
る事によって活動状態になると、活動フラグtオンにセ
ットし活動力ラン5を増計数する。活動力ランl値は、
ブロック48乙に示すように自己終端のために用いられ
、活動層Mはプロッタ490に示すよりにソース・セル
の場合と同様に用いられる。プロッタ540に示すよう
に/フタSPEのどれかが活動期間の終了?知らせるた
めにエンド・フラグ?上げると、これは全伝搬工程を終
了される。
これらの動作の性質から生じる2つの事実は、(1)セ
ル(Splがひとたび活動状態になると、それは0回1
曳過するまで(即ちブロック522からのイエス分岐ま
で)連続して活動状態を維持する。
ル(Splがひとたび活動状態になると、それは0回1
曳過するまで(即ちブロック522からのイエス分岐ま
で)連続して活動状態を維持する。
(2)Sl)Eのポートが受は取る最良の経路匝はd過
の数の非増加関数である。
の数の非増加関数である。
活動期間の間、中間セルはプロッタ532及び554に
示すようにざらに処理全行なう。ここで各々北、東、南
及び西から到来した経路コス)N、E、S、Wは、セル
内の屈曲の経路コス)NN。
示すようにざらに処理全行なう。ここで各々北、東、南
及び西から到来した経路コス)N、E、S、Wは、セル
内の屈曲の経路コス)NN。
EE、SS及びWW?得るためにバイア・コストVCに
加算される。プロッタ532内に示されている和のはブ
ロック558,560及び562に示すように実行され
る。即ち値が、無限大?表わすMi越えれば、それはM
に戻される。ブロック534において、出ポート毎にS
PEは最良の到来経時方向及びコストを決定し、スタッ
クにその方向を記録し、更新された経路コストf隣に送
る。
加算される。プロッタ532内に示されている和のはブ
ロック558,560及び562に示すように実行され
る。即ち値が、無限大?表わすMi越えれば、それはM
に戻される。ブロック534において、出ポート毎にS
PEは最良の到来経時方向及びコストを決定し、スタッ
クにその方向を記録し、更新された経路コストf隣に送
る。
但し隣に経路コストヲ送ると言う場合に、プロッタ50
8に示すように無限大Mよシも小ざい場合に限って経路
コストが実際に送られている事ff1E!解されたい。
8に示すように無限大Mよシも小ざい場合に限って経路
コストが実際に送られている事ff1E!解されたい。
北ポート?例に取ると、
(1)最良の経路コストは数値S、EE及びWWを比較
する事によって決定される。後者の2つは、北へ出るた
めにセル内で折れ曲らなければならない経路に関するコ
スト?表わす。
する事によって決定される。後者の2つは、北へ出るた
めにセル内で折れ曲らなければならない経路に関するコ
スト?表わす。
(2)勝った方向(この場合は、到来方向S、E又はW
)が現在のスタック・ポインlによって指示される北ボ
ートのフラグ・スタックに記録される。
)が現在のスタック・ポインlによって指示される北ボ
ートのフラグ・スタックに記録される。
(3) 次に北隣に対して到来経路コストとして与える
ために、この最良の経路コストに化ポート・コストが加
算される。
ために、この最良の経路コストに化ポート・コストが加
算される。
(4)次に更新された経路コストが北隣に送られる。
他の全てのボートに関して同機の動作が行なわれる。
活動期間中シンク・セルはブロック542,544反び
546に示′j@作を行なう。シンク・セルは到来する
経路コストN、E、S、Wの最良のもの?見い出し、プ
ロッタ542に示すよりに勝った方向全記録する。もし
新しい最良の経路コストが古い最良の直よりも艮ければ
、ブロック546に示すように最良値、最良ボート、最
良インデツクスは(新きれる。
546に示′j@作を行なう。シンク・セルは到来する
経路コストN、E、S、Wの最良のもの?見い出し、プ
ロッタ542に示すよりに勝った方向全記録する。もし
新しい最良の経路コストが古い最良の直よりも艮ければ
、ブロック546に示すように最良値、最良ボート、最
良インデツクスは(新きれる。
制御装置が伝搬のために配列をプロンプトする全回数は
、DLIMにソースとシンクとの間の到達oT能距離及
び1を加えたものである。
、DLIMにソースとシンクとの間の到達oT能距離及
び1を加えたものである。
第28.1図〜$288図は経路コストの伝搬?計算す
る時に敗られるステップの例?示す。セルAはソース・
セルであって、部分ネットとして描かれている。セルB
及びCはネットの2つの付加的なLSTである。ソース
からシンクへの到達町aヒ距離は、A’:Cに接続する
4セル・ピンチである。4+2+1 =7回のパスの全
部が第281図〜第28.8図に示されている。セルの
中の数はパスの開始時のセルの活動力ラン3?表わす。
る時に敗られるステップの例?示す。セルAはソース・
セルであって、部分ネットとして描かれている。セルB
及びCはネットの2つの付加的なLSTである。ソース
からシンクへの到達町aヒ距離は、A’:Cに接続する
4セル・ピンチである。4+2+1 =7回のパスの全
部が第281図〜第28.8図に示されている。セルの
中の数はパスの開始時のセルの活動力ラン3?表わす。
活動パターンはソースから開始し、波状に外側へ伝搬し
、第284図に示す6番目のパスによってD=3の厚で
t育するセルの活動帯?徐々に形成する。
、第284図に示す6番目のパスによってD=3の厚で
t育するセルの活動帯?徐々に形成する。
活動帯は、第28.8図に示すように最近接LST(C
)がD=5回活動するまで外方へ進行する。
)がD=5回活動するまで外方へ進行する。
そしてCの5PEuエンド・フラグ?上げ、経路コスト
伝搬過程?停止させる。
伝搬過程?停止させる。
上述のよりに、第3図に示す配列から配列I10プロセ
ッサを経て制御装置に至るORパス構造はil制御装置
−配列間の通信において有利に用いられている。特に全
SPEから配列にORされるサービス・ワードに制御装
置が次のもの?認識する事foT能にする。
ッサを経て制御装置に至るORパス構造はil制御装置
−配列間の通信において有利に用いられている。特に全
SPEから配列にORされるサービス・ワードに制御装
置が次のもの?認識する事foT能にする。
(a) ビジー・ビット:もしどこかのSPEがビジ
ーであればこれがオンになる。どのSPEもビジーでな
い時だけ、ビジー・ビットはオフになる。
ーであればこれがオンになる。どのSPEもビジーでな
い時だけ、ビジー・ビットはオフになる。
(b) 活動フラグ・ビット:どこかのSPEが有効
な伝搬フェーズに関与している限り、活動フラグ、ビッ
トがオンになる。
な伝搬フェーズに関与している限り、活動フラグ、ビッ
トがオンになる。
(c)エンド・フラグ:どこかのシンクにこのビットが
生じると、制御装置にコスト伝搬工程の停止が命ぜられ
る。
生じると、制御装置にコスト伝搬工程の停止が命ぜられ
る。
第24図に戻ると、プロッタ426に示される経路コス
ト伝搬フェーズが成功裏に終る時、制御装置は(停正時
に2つ以上のセルに到達した場合。
ト伝搬フェーズが成功裏に終る時、制御装置は(停正時
に2つ以上のセルに到達した場合。
例えば第281図〜第28.8図に示すようにB及びC
の両方に到達した場合)到達したシンク・セルのどちら
?ソースに接続すべきか?決定する工程462を開始す
る。
の両方に到達した場合)到達したシンク・セルのどちら
?ソースに接続すべきか?決定する工程462を開始す
る。
ソースに接続すべき候補シンク・セルは、最良値の中で
最も良いもの?含むシンクである。活動フラグがオンで
あるシンク・セルは、全てこの段階に関与し、制御装置
はそれら?ポーリングする事によってそのどれが候補か
r決定する。これは、到達されたシンク5PE(その活
動フラグはオンである)がXY応答線全上昇させ、次に
制m装置が応答している行と列を一時に1回選択し、最
小値?見い出すためにそれらの最良@?質関する事によ
って行なわれる。候補シンクがこのよりにして決定でれ
ると、制御装[は選ばれたSPEにその状態を知らせる
。
最も良いもの?含むシンクである。活動フラグがオンで
あるシンク・セルは、全てこの段階に関与し、制御装置
はそれら?ポーリングする事によってそのどれが候補か
r決定する。これは、到達されたシンク5PE(その活
動フラグはオンである)がXY応答線全上昇させ、次に
制m装置が応答している行と列を一時に1回選択し、最
小値?見い出すためにそれらの最良@?質関する事によ
って行なわれる。候補シンクがこのよりにして決定でれ
ると、制御装[は選ばれたSPEにその状態を知らせる
。
ブロック434に示すバンクトレース及び更新工程は、
選ばれた候補シンク?ソースに接続する。
選ばれた候補シンク?ソースに接続する。
制御装置は配列をプロンプトし、適当なフラグ?初期値
設定し、■10レジス5通信Fl&溝(即ちAINラッ
チのフラグ機構)を通じて候補シンクに情報全厚えて、
バッタトレースを初期値設定する。
設定し、■10レジス5通信Fl&溝(即ちAINラッ
チのフラグ機構)を通じて候補シンクに情報全厚えて、
バッタトレースを初期値設定する。
第291図及び第292図は、第291図を上に第29
2図を下につなげて見ると、配列中の各SPEプログラ
ムを表わす流れ図になる。利8装置はエンド・フラグの
上昇?検出する時・(ツタトレース工程を終了させる。
2図を下につなげて見ると、配列中の各SPEプログラ
ムを表わす流れ図になる。利8装置はエンド・フラグの
上昇?検出する時・(ツタトレース工程を終了させる。
サービス・ワード中の指定さrたビットである。エンド
・フラグは最初ダウン・レベルにあす、ソース・セルS
PEが)(ツクトレースの終了r1キ号するのに用いら
れる。
・フラグは最初ダウン・レベルにあす、ソース・セルS
PEが)(ツクトレースの終了r1キ号するのに用いら
れる。
バンクトレース・ルーチンに関する制御装置の動作は簡
明なので5その詳細な流れ図は示していない。
明なので5その詳細な流れ図は示していない。
バックトレースの過程において、経路上のセルは全て自
分自身tネットの一部として呂己録し、チャネル容量及
び、もしあれば使用した・(イア−の数を更新する。セ
ルがネットの一部として記録全行な9方式は、オン)I
Dに関係したgXI Tマスクの使用による。EXIT
マスク灯、各々のビットがN、E、S、Wの対応する方
向7表わす4ビツトの変叙である。ネットに関連するE
XITマスタぽ、そのネットがセルを通過しEXITマ
スクの1にセットされたピントに対応するポート全通っ
て接続される事?意味する。
分自身tネットの一部として呂己録し、チャネル容量及
び、もしあれば使用した・(イア−の数を更新する。セ
ルがネットの一部として記録全行な9方式は、オン)I
Dに関係したgXI Tマスクの使用による。EXIT
マスク灯、各々のビットがN、E、S、Wの対応する方
向7表わす4ビツトの変叙である。ネットに関連するE
XITマスタぽ、そのネットがセルを通過しEXITマ
スクの1にセットされたピントに対応するポート全通っ
て接続される事?意味する。
SPEは、ill N装置によってプロンプトされた時
、ブロック568で最初エンド・フラグを0にリセット
し全てのボートをクリアする。次にSPEは、与えられ
たSPEがどのセル?表わしているかに依存して特定の
動作全行なう。セル状態即ちソース、シンク、又は中間
のセルのどれであるかはブロック570で決定される。
、ブロック568で最初エンド・フラグを0にリセット
し全てのボートをクリアする。次にSPEは、与えられ
たSPEがどのセル?表わしているかに依存して特定の
動作全行なう。セル状態即ちソース、シンク、又は中間
のセルのどれであるかはブロック570で決定される。
次にシンク・セルSPEはそのセルが候補シンクか否か
が決定される。これはブロック572に示すよりにAI
Nピットが1になるまでサービス・ワードを読取る事に
よって行なわれる。AINピントがオンとして読取られ
ると、候補シンクSPEにおける工程はプロッタ576
に進む。制御装置は、セル?一意的に選択しそのセルの
■レジスタに任意のワードを送信する事によって候補シ
ンクのAINフラグ・ビットをセントする。AINフラ
グハSPEのブロック図に関して以前に示したようにセ
ント さ才1.る。
が決定される。これはブロック572に示すよりにAI
Nピットが1になるまでサービス・ワードを読取る事に
よって行なわれる。AINピントがオンとして読取られ
ると、候補シンクSPEにおける工程はプロッタ576
に進む。制御装置は、セル?一意的に選択しそのセルの
■レジスタに任意のワードを送信する事によって候補シ
ンクのAINフラグ・ビットをセントする。AINフラ
グハSPEのブロック図に関して以前に示したようにセ
ント さ才1.る。
次に候補シンク・セルのSPEは、ブロック576に示
すように最良方向?バンクトレースの方向(’DIRC
)に最良インデンクス?ス5ツク・ポインタにコピーす
る事によってバッタトレース茫開始する。バンクトレー
ス出ボートのチャネル容量はプロッタ578に示すより
にネットによるトラツタの1史用を示すために減計数さ
れる。ネットEXITマスタはプロッタ580にrr<
TようにDIRCに対応するピントをセントする事によ
って変更され、スタック・ポインタはブロック582に
示fよりに循環式に(即ちもし−1であればD−1にリ
セットする)減計数され1最後にスタック・ポイン3は
プロッタ584に示すようにDIRCによって指定され
た隣に送られる。
すように最良方向?バンクトレースの方向(’DIRC
)に最良インデンクス?ス5ツク・ポインタにコピーす
る事によってバッタトレース茫開始する。バンクトレー
ス出ボートのチャネル容量はプロッタ578に示すより
にネットによるトラツタの1史用を示すために減計数さ
れる。ネットEXITマスタはプロッタ580にrr<
TようにDIRCに対応するピントをセントする事によ
って変更され、スタック・ポインタはブロック582に
示fよりに循環式に(即ちもし−1であればD−1にリ
セットする)減計数され1最後にスタック・ポイン3は
プロッタ584に示すようにDIRCによって指定され
た隣に送られる。
中間S P Eにブロック588に示すように育効なデ
ータが渡されるまで隣り全部を読取る。もし数値が受信
されると、これはス5ツク・ポインl値であるが、SP
Eはブロック592に示すよりにその到来した方向を人
ポートとして記録する。
ータが渡されるまで隣り全部を読取る。もし数値が受信
されると、これはス5ツク・ポインl値であるが、SP
Eはブロック592に示すよりにその到来した方向を人
ポートとして記録する。
そしてブロック594に示すように受信した数値?その
スタック・ポインlとして割り当て、ブロック596に
示すように入ボート・チャネル容量r減計数する。バン
クトレースに関する出方向にブロック598に示すよう
にスタック・ポインタによって指示される入ポート・フ
ラグ・スタック中に記憶された方向をルック・アップす
る事によって決定され、次にブロック578〜584
カ以前に示したように実行される。ブロック580に示
すようにEXITマスクが記録されている時、入ボート
・ピント&びDIRCポート・ピントハ1にセントされ
る。
スタック・ポインlとして割り当て、ブロック596に
示すように入ボート・チャネル容量r減計数する。バン
クトレースに関する出方向にブロック598に示すよう
にスタック・ポインタによって指示される入ポート・フ
ラグ・スタック中に記憶された方向をルック・アップす
る事によって決定され、次にブロック578〜584
カ以前に示したように実行される。ブロック580に示
すようにEXITマスクが記録されている時、入ボート
・ピント&びDIRCポート・ピントハ1にセントされ
る。
ソース・セルの場合、ブロック602に示すよりに数値
が受信されるまで隣全部が読取られる。
が受信されるまで隣全部が読取られる。
もし数値が受信されると、工程はプロッタ606に進み
、数値の到来したポートを入ポートとして記録する。隣
から数値を受は収ったソース・セルは、プロッタ608
に示すように入ボートのチャネル容量を更新し、ブロッ
ク610に示すようにネットEXITマスクを記録し、
ブロック612でエンド・フラグを上げる。
、数値の到来したポートを入ポートとして記録する。隣
から数値を受は収ったソース・セルは、プロッタ608
に示すように入ボートのチャネル容量を更新し、ブロッ
ク610に示すようにネットEXITマスクを記録し、
ブロック612でエンド・フラグを上げる。
この動作は第24図のブロック464に示されるバック
トレース工程?終了させる。これまでに接続されたネッ
ト、即ちそのネットに関するEXITマスタが空でない
(「全部O」でない)セルは、接続すべきネットのLS
Tが残っている限り制御Hjtによって制御される伝搬
及びバッタトレース?反復するための新しいソースとな
る。これで与えられたネットの大局的配線に関する説明
を終える。
トレース工程?終了させる。これまでに接続されたネッ
ト、即ちそのネットに関するEXITマスタが空でない
(「全部O」でない)セルは、接続すべきネットのLS
Tが残っている限り制御Hjtによって制御される伝搬
及びバッタトレース?反復するための新しいソースとな
る。これで与えられたネットの大局的配線に関する説明
を終える。
プロセッサの配列及びここで説明したンステムオ利用す
る効率的な大局的配4工程を説明するために用いる事の
できる多くの有用な変型が存在している。例えば2以上
のネットに関する活動セルが互いに重なり合わない事が
知られている時は、2以上のネットi同時に配線する事
がoTfT目である。
る効率的な大局的配4工程を説明するために用いる事の
できる多くの有用な変型が存在している。例えば2以上
のネットに関する活動セルが互いに重なり合わない事が
知られている時は、2以上のネットi同時に配線する事
がoTfT目である。
また1つのネット全体チ一時に配線せずに、複数のネッ
トの種々の部分を、局所的な混雑測定に依存して、1ン
タリ一ブ方式で、1つのネットの1つの接沈の後に他の
ネットの他の接続fhなって配線してもよい。
トの種々の部分を、局所的な混雑測定に依存して、1ン
タリ一ブ方式で、1つのネットの1つの接沈の後に他の
ネットの他の接続fhなって配線してもよい。
上述の説明は、プロセッサ配列が水平及び垂直の寸法に
おいて、問題のチップと少なくとも同じ大きさである事
?仮定していた。配列寸法よりも大きな寸法の問題を取
り扱うためにSPEの特殊目的時分割を利用する有用な
方法を以下説明する。
おいて、問題のチップと少なくとも同じ大きさである事
?仮定していた。配列寸法よりも大きな寸法の問題を取
り扱うためにSPEの特殊目的時分割を利用する有用な
方法を以下説明する。
プロセッサ配列は実用的であるためには妥当な寸法を持
だなければならないが、小さな配列を用いて、与えられ
た機械よりもはるかに大きな寸法のチップを表現する機
械?大きなペナルティなしにエミュレートする事が原理
的には可能である。配列の寸法に無関係に、機械よりも
大きな寸法の問題のチップ?処理しなければならないが
、ここで説明する機構はこの目的に対する新規な解決を
与える。
だなければならないが、小さな配列を用いて、与えられ
た機械よりもはるかに大きな寸法のチップを表現する機
械?大きなペナルティなしにエミュレートする事が原理
的には可能である。配列の寸法に無関係に、機械よりも
大きな寸法の問題のチップ?処理しなければならないが
、ここで説明する機構はこの目的に対する新規な解決を
与える。
第11図に戻り、■及びNによって各々水平及び垂直の
次元のチップのセルの数を表記する。ざらにm及びnに
よって第2図のSPEのプロセッサ配列の列及び行の数
全表記する。第30図に関して、M = Q m +
r但し0<Q及び0≦r<m:並〈 びにN = S n + を但しas及びO≦tanと
する。チップは機械と同じ大きさの1行m列のセルから
成るフレームに概念的に分割される。従って水平方向に
は(Q+1)個のフレームが、垂直方向には(S+1)
個のフレームが存在し、最初のSXQフレームはフル・
サイズで、各次元の最後のフレームは各次元の残りのセ
ル1列及びthi収容するために部分サイズになってい
る。
次元のチップのセルの数を表記する。ざらにm及びnに
よって第2図のSPEのプロセッサ配列の列及び行の数
全表記する。第30図に関して、M = Q m +
r但し0<Q及び0≦r<m:並〈 びにN = S n + を但しas及びO≦tanと
する。チップは機械と同じ大きさの1行m列のセルから
成るフレームに概念的に分割される。従って水平方向に
は(Q+1)個のフレームが、垂直方向には(S+1)
個のフレームが存在し、最初のSXQフレームはフル・
サイズで、各次元の最後のフレームは各次元の残りのセ
ル1列及びthi収容するために部分サイズになってい
る。
第2図に示すよりな機械の配列の境界線はチップのセル
のフレームの境界線に対応する。境界セルの近傍の端部
周回接続はチップのフレーム境界における瞬接セル間の
通信ヲoT能にする。この場合機械の各SPEはチップ
の1つのセルだけではなく、チップ全体に規則的な間隔
で分布した(Q+1)x(S+1)個のセル?表わす。
のフレームの境界線に対応する。境界セルの近傍の端部
周回接続はチップのフレーム境界における瞬接セル間の
通信ヲoT能にする。この場合機械の各SPEはチップ
の1つのセルだけではなく、チップ全体に規則的な間隔
で分布した(Q+1)x(S+1)個のセル?表わす。
配列の端部周回隣接接続はフレーム概念の実現に敗って
絶対的に必要なものではない。フレームは両方の次元に
アコーディオン方式で折りたたまれているものと考える
事もできる。そのような方式の折りタタみの1つの欠点
は、交互のフレームのセル・4ンデツクスが反転し、従
ってこの方向の反転?考慮するために大きなプログラミ
ング・オーバーヘッドが必要な事である。もう1つの欠
点は、この構成の下では1方向の掃引動作を行な9時に
多フレーム分の掃引のパイプライン化が不可能な事であ
る。
絶対的に必要なものではない。フレームは両方の次元に
アコーディオン方式で折りたたまれているものと考える
事もできる。そのような方式の折りタタみの1つの欠点
は、交互のフレームのセル・4ンデツクスが反転し、従
ってこの方向の反転?考慮するために大きなプログラミ
ング・オーバーヘッドが必要な事である。もう1つの欠
点は、この構成の下では1方向の掃引動作を行な9時に
多フレーム分の掃引のパイプライン化が不可能な事であ
る。
概念的にはチップは、各々機械プロセッサ配列と同一の
大きさのフレームから成る配列上に重ね合わされたもの
と考えられる。このチップはフレーム配列の左辺及び底
辺に対して整列される。各フレームは次の範囲内にある
FIDと呼ばれるフレームID2有する。
大きさのフレームから成る配列上に重ね合わされたもの
と考えられる。このチップはフレーム配列の左辺及び底
辺に対して整列される。各フレームは次の範囲内にある
FIDと呼ばれるフレームID2有する。
O8F■D〈(S+1)×(Q+1)
フレームに関する(機械配列に関する)水平及び垂直の
セル座標は各々FXID及びFYIDと呼ばれる。チッ
プ・セル座標XID及びYIDからフレーム相対値への
変換は次のようにして行なわれる。
セル座標は各々FXID及びFYIDと呼ばれる。チッ
プ・セル座標XID及びYIDからフレーム相対値への
変換は次のようにして行なわれる。
YID XID
(1) F I D = (Q +1 ) X L
−J + L−Jn m (2) FXID=XID mod m(3)
FYID=YID mod n但しL−jは商を、x
mod yは剰余?、表わす。
−J + L−Jn m (2) FXID=XID mod m(3)
FYID=YID mod n但しL−jは商を、x
mod yは剰余?、表わす。
y
逆にX I I)及びYIDは次の関係式で表わされる
。
。
+4) XID=FXID+mXFID mod
(Q+1 )第30図Hチップ・フレーム、フレーム
ID。
(Q+1 )第30図Hチップ・フレーム、フレーム
ID。
F”XID、F’YID、XID及びYIDi示シテい
る。
る。
上記の除算の商及び剰余は、n、m及び(Q+1)が2
のべき乗の場合は、牟なるシフトという簡単なツータロ
プロセッサ動作になり得る。
のべき乗の場合は、牟なるシフトという簡単なツータロ
プロセッサ動作になり得る。
叱標がチップの観点からフレームの4点へいかにして変
換されるか?示したが、以前に開示した種々の工程の実
施例に対する修i′lEを以下説明する。
換されるか?示したが、以前に開示した種々の工程の実
施例に対する修i′lEを以下説明する。
各SPEはその局所メモリ(第6図の196)紫5 チ
ップの各フレームに等しく分割された領域支び共d領域
に割り振る。前述の迂回限界、ス5ツク・ポイン5.現
在のネソ)ID等の共通データ及びSPEプログラムは
この共通領域に存在する。セルID、混雑評価値、ネッ
ト・デー11ポート・コスト1バイア関連値等のセルに
特有なデータはメモリの対応するフレーム領域に記憶さ
れる。従って機械全体のメモリ要求は、例えプロセッサ
の数が少なくても、チップと同じ大きざのより大きな機
械と殆んど同じである。各5PEfiそれが表わす全て
のセルに関するデータ?保持するためにより大きなメモ
リ・スペース?必要とするだけである。
ップの各フレームに等しく分割された領域支び共d領域
に割り振る。前述の迂回限界、ス5ツク・ポイン5.現
在のネソ)ID等の共通データ及びSPEプログラムは
この共通領域に存在する。セルID、混雑評価値、ネッ
ト・デー11ポート・コスト1バイア関連値等のセルに
特有なデータはメモリの対応するフレーム領域に記憶さ
れる。従って機械全体のメモリ要求は、例えプロセッサ
の数が少なくても、チップと同じ大きざのより大きな機
械と殆んど同じである。各5PEfiそれが表わす全て
のセルに関するデータ?保持するためにより大きなメモ
リ・スペース?必要とするだけである。
従って制@装置及び隣接SjEは、データがフレームに
関して共通の性質を持つ場合以外は、データ転送の時に
どのフレームのデーlが送信されるのか全特定しなけれ
ばならない。またデータ?受1言する時、SPEはデー
5と共に受は叡ったフレーム番号に対応するメモリの適
当な区画にそのデータ?記憶する。
関して共通の性質を持つ場合以外は、データ転送の時に
どのフレームのデーlが送信されるのか全特定しなけれ
ばならない。またデータ?受1言する時、SPEはデー
5と共に受は叡ったフレーム番号に対応するメモリの適
当な区画にそのデータ?記憶する。
実際にセルと通信する之めに、制御装#は最初にセルI
D(XID、YID)kフレーム関連パラメータ(FI
D、FXID、FYID)に変換し、水平及び垂直の選
択器でFXID、FYIDを選択し、その後でデータ及
びフレーム番号FID茫SPEに伝送する。
D(XID、YID)kフレーム関連パラメータ(FI
D、FXID、FYID)に変換し、水平及び垂直の選
択器でFXID、FYIDを選択し、その後でデータ及
びフレーム番号FID茫SPEに伝送する。
セルが隣と通信する場合、隣がそのセルと同じフレーム
内にあればデータに付属するフレーム番号は同一である
。従ってフレームの境界にあってフレームの外側の隣と
通洒するSPEだけが受は敗った隣のフレーム番号を調
整する必要がある。
内にあればデータに付属するフレーム番号は同一である
。従ってフレームの境界にあってフレームの外側の隣と
通洒するSPEだけが受は敗った隣のフレーム番号を調
整する必要がある。
もしD≦に≦S&び02t≦QとしてSPE中のデータ
がフレーム番号F I D=k (Q+1 )+1であ
7l−Vf、、以下に与えるように隣のフレーム番号が
FID’ として計算される。
がフレーム番号F I D=k (Q+1 )+1であ
7l−Vf、、以下に与えるように隣のフレーム番号が
FID’ として計算される。
西: FXID≧1輿FID’=FIDFXID−11
計つ+21の時FID’ =F ID−IFXID二〇
且つ1=0の時FID’は存在しない(即ち西隣が存在
しない9 東:FXID<m−1の時FID’ =F’IDFXよ
り−m−1且つt<Qの時FID’ =FID +IF
XID−m−1且つt=Qの時FID’は存在しない北
: FYID<n−1尖F ID’ =F I DFY
ID=n−j且つk<Sの時FID’=FID+(Q+
1 、)FYID=n−1且つに=Sの31iFID’
は存在しない南:FYID 1の時FID’ =FI
DFYID=0且つに≧1の時F’ ID’−F ID
−(Q+1 )FYID=0且つに二〇の寺F I D
’は存在しない隣の存在についての上記の条件は前述の
活動セル領域の状態に付加される。
計つ+21の時FID’ =F ID−IFXID二〇
且つ1=0の時FID’は存在しない(即ち西隣が存在
しない9 東:FXID<m−1の時FID’ =F’IDFXよ
り−m−1且つt<Qの時FID’ =FID +IF
XID−m−1且つt=Qの時FID’は存在しない北
: FYID<n−1尖F ID’ =F I DFY
ID=n−j且つk<Sの時FID’=FID+(Q+
1 、)FYID=n−1且つに=Sの31iFID’
は存在しない南:FYID 1の時FID’ =FI
DFYID=0且つに≧1の時F’ ID’−F ID
−(Q+1 )FYID=0且つに二〇の寺F I D
’は存在しない隣の存在についての上記の条件は前述の
活動セル領域の状態に付加される。
フレームの概念?用いる時、以前に説明したンステムの
全てはフレーム化構造に適合するように変型される。プ
ログラムにおけるそれらの変換の多りハマイクロプロセ
ッサ・プログラミング技術における通常の知識を有する
者によって実行可能である。フレーム化によるノくフオ
ーマンスへの影響のあるもの及び非常に一般的な・(ラ
ダイムの良好な実施例を以下に開示する。
全てはフレーム化構造に適合するように変型される。プ
ログラムにおけるそれらの変換の多りハマイクロプロセ
ッサ・プログラミング技術における通常の知識を有する
者によって実行可能である。フレーム化によるノくフオ
ーマンスへの影響のあるもの及び非常に一般的な・(ラ
ダイムの良好な実施例を以下に開示する。
(・ラダイムA)セル遂次動作二大局的経路決定のバッ
クトレースのような一時に1つのセルに付き行なわれる
動作は重大な影響?受けない。そのパフォーマンスハ、
uす算のオーバーヘッド及び各データ転送に関するフレ
ームよりの伝送4除けばチップ・すづズの機械と同じで
ある。
クトレースのような一時に1つのセルに付き行なわれる
動作は重大な影響?受けない。そのパフォーマンスハ、
uす算のオーバーヘッド及び各データ転送に関するフレ
ームよりの伝送4除けばチップ・すづズの機械と同じで
ある。
(・ラタゴムB)水平(又は垂直)掃引動作:多くの場
合1例えば物理的設計工程中の第10図の1E罐な埋め
込みのブロック236において、b又は列の11jlH
に及びインデツクスの増加又は減少する順に計算?実行
する必要が生じる。第37図tri 7 /l/・す1
ズの機械に関するパラダイムの流れ図を示す。
合1例えば物理的設計工程中の第10図の1E罐な埋め
込みのブロック236において、b又は列の11jlH
に及びインデツクスの増加又は減少する順に計算?実行
する必要が生じる。第37図tri 7 /l/・す1
ズの機械に関するパラダイムの流れ図を示す。
ブロック616に示すように、左端のセルが計算?セテ
ない、結果2プロツタ618に示すように東隣に渡す。
ない、結果2プロツタ618に示すように東隣に渡す。
中間のセルはブロック620に示すように西から情報を
受は嘔り、ブロック622でこの情報に基いて計算が行
なわれる。
受は嘔り、ブロック622でこの情報に基いて計算が行
なわれる。
計算結果はブロック618に示すように東隣に渡される
。
。
右端のセルは、ブロック624に示すように西隣から清
報を受は取り、ブロック626に示すようにこの情報に
基いて計算が実行される。
報を受は取り、ブロック626に示すようにこの情報に
基いて計算が実行される。
計算が終了すると1ブロツク628に示Tように制御装
置に通知される。
置に通知される。
小さな大きさのフレームrヒ機械において、第31図に
示す全ての行の完全な並列処理は不可能である。しかし
ながらSPEは連続しtフレームの行をパイプライン方
式で処理する事ができる。第32.1図〜第32.3図
はその概念?説明するものである。左側において、M=
9’、N=6のチップに関するフル・サイズの機械の使
用中の5PEfl各時間ステップ毎に影r付けた。
示す全ての行の完全な並列処理は不可能である。しかし
ながらSPEは連続しtフレームの行をパイプライン方
式で処理する事ができる。第32.1図〜第32.3図
はその概念?説明するものである。左側において、M=
9’、N=6のチップに関するフル・サイズの機械の使
用中の5PEfl各時間ステップ毎に影r付けた。
フレ、ムの右側では、m−5列n=2行の小さ −
な機械がパイプライン比された掃引動作に用いられてい
る。ここでは機械の使用中のSPE及びチンプ上の対応
するセルに影を付けた。全部の図において、参考のため
フレームは太線で示した。一般にフル・サイズの機械に
関する全掃引時間はMであり、フレーム化された機械の
全掃引時間は漸近的に(M x N ) / (m X
n )で表わされる。明らかにこの型の動作に関する
パフォーマンスのペナルティはそう大きくはない。
な機械がパイプライン比された掃引動作に用いられてい
る。ここでは機械の使用中のSPE及びチンプ上の対応
するセルに影を付けた。全部の図において、参考のため
フレームは太線で示した。一般にフル・サイズの機械に
関する全掃引時間はMであり、フレーム化された機械の
全掃引時間は漸近的に(M x N ) / (m X
n )で表わされる。明らかにこの型の動作に関する
パフォーマンスのペナルティはそう大きくはない。
(・シタ工に〕 完全な並列動作:ポート・コスト計算
、バイア・コスト計算等はこのカテゴリーに属する。こ
の場合フル・す1ズの機械においてケでのセルのSPE
が完全に並列的に使用状態にある。より小さな機械は一
時に1フレームしか処理できず、処理に要する時間は、
フル・す4ズの機械の所要時間全1牟立とすれば2MN
/ m nである。
、バイア・コスト計算等はこのカテゴリーに属する。こ
の場合フル・す1ズの機械においてケでのセルのSPE
が完全に並列的に使用状態にある。より小さな機械は一
時に1フレームしか処理できず、処理に要する時間は、
フル・す4ズの機械の所要時間全1牟立とすれば2MN
/ m nである。
(バラタ゛1即) 大局的伝搬動作:以前に、フル・す
1ズの機械の活動性がソース・セルかう外向きρてダイ
ヤモンド状の波動の形で伝搬する事を示した。フレーム
に重ね合せると、これらの活動セルはより小さな機械の
SPEに多重に重なる。従って第24図のブロック42
6〜438に示すような付加的L 5T(i−接続する
各パスにおいて、それらの副工程はフレームに適合しな
ければならない。これは全ての到来する隣の経路コスト
が適当なフレームの部分に記憶される補助的作業スlツ
タ?用いる事によって行なわれる。一連の受信の後、S
PEは計算4行ない、全てのフレームの作業が実行され
るまで出力される経路コストをバッファする。その後、
新しいパス會始めるためにフレームIDと共に一連湾路
コストを隣に送る。明らかに、’SPEは作業スlツタ
中の全てのlスフ?処哩した後にのみビジー・フラグを
リセツトする。従って当然の事ながら、任意の時間にお
いて各SPEは異なったフレーム中のセルの伝搬f処F
IL、ているかもしれない。機械サイズが小さい(例え
ば8×8以下)時のパフォーマンス・ペナルティはかな
り高い。このペナルティハ機械サイズがチップ・サイズ
に向って増大すると共に次第に減少する。無限大の機械
?用いた無限大のチップに比較して、 32X52のプ
ロセンサ配列から成る機械は平均的に処理時間が2倍に
なる。
1ズの機械の活動性がソース・セルかう外向きρてダイ
ヤモンド状の波動の形で伝搬する事を示した。フレーム
に重ね合せると、これらの活動セルはより小さな機械の
SPEに多重に重なる。従って第24図のブロック42
6〜438に示すような付加的L 5T(i−接続する
各パスにおいて、それらの副工程はフレームに適合しな
ければならない。これは全ての到来する隣の経路コスト
が適当なフレームの部分に記憶される補助的作業スlツ
タ?用いる事によって行なわれる。一連の受信の後、S
PEは計算4行ない、全てのフレームの作業が実行され
るまで出力される経路コストをバッファする。その後、
新しいパス會始めるためにフレームIDと共に一連湾路
コストを隣に送る。明らかに、’SPEは作業スlツタ
中の全てのlスフ?処哩した後にのみビジー・フラグを
リセツトする。従って当然の事ながら、任意の時間にお
いて各SPEは異なったフレーム中のセルの伝搬f処F
IL、ているかもしれない。機械サイズが小さい(例え
ば8×8以下)時のパフォーマンス・ペナルティはかな
り高い。このペナルティハ機械サイズがチップ・サイズ
に向って増大すると共に次第に減少する。無限大の機械
?用いた無限大のチップに比較して、 32X52のプ
ロセンサ配列から成る機械は平均的に処理時間が2倍に
なる。
コ17)パフォーマンス・ペナルティの詳細な解析は他
の場所に記す。
の場所に記す。
本質的な事は、フレームfヒされた機械のsPEが衣わ
す異なったフレーム中の全てのセル?処理するために用
いられる作業スタックの概念である。
す異なったフレーム中の全てのセル?処理するために用
いられる作業スタックの概念である。
第28.1図〜第288図に示す列に戻り、例えば第3
3図に示すフレーム?仮定する。これらの図かられかる
よりに1ft5動セルのSPEに対する重なりは欠のよ
うに起きる。
3図に示すフレーム?仮定する。これらの図かられかる
よりに1ft5動セルのSPEに対する重なりは欠のよ
うに起きる。
Wl 1 1 4.5.8W
2 1 2 4.5%7,8W
3 1 2 1.4.5.7.
8W4 1 3 1.6.4.
5.7.8W5 1 4 1〜
8W6 1 4 o〜8W7 1
6 0〜3.5〜8.1゜合計
7 22 (*)これは最大の重なり数に対応する。
2 1 2 4.5%7,8W
3 1 2 1.4.5.7.
8W4 1 3 1.6.4.
5.7.8W5 1 4 1〜
8W6 1 4 o〜8W7 1
6 0〜3.5〜8.1゜合計
7 22 (*)これは最大の重なり数に対応する。
従って、第24図のブロック426の経路コスト伝搬に
関する第26.2図のプロッタ562及び534の論理
機a目の実行にSPEの計算時間が殆んど費やされるな
らば、5×5の機械は列の場合を接続するのに3倍以上
のペナルティ?こうむる。
関する第26.2図のプロッタ562及び534の論理
機a目の実行にSPEの計算時間が殆んど費やされるな
らば、5×5の機械は列の場合を接続するのに3倍以上
のペナルティ?こうむる。
(バラタイムE) 中心からの2次元掃引:第101図
の配線経路決定の微細トラック埋め込み工程236及び
物理設計の過程における他の多くの応用において2次元
掃引モードの計算が用いられる。第34図はSPEの観
点から見たこのバラタイムを説明している。
−。
の配線経路決定の微細トラック埋め込み工程236及び
物理設計の過程における他の多くの応用において2次元
掃引モードの計算が用いられる。第34図はSPEの観
点から見たこのバラタイムを説明している。
−。
中心セルSPEはそのタスクを計算し、計算結果?ブロ
ック634′&び636に示すように4つの隣接SPE
に送る。
ック634′&び636に示すように4つの隣接SPE
に送る。
チップの中心の行又は列に沿った他のセルを表わすS’
P E (ブロック640のYES分岐〕は中心方向
から数値?受は喉る(プロッタ642及び644)まで
待機し、受は取った数値に対して計算を行ない(ブロッ
ク646)、次にその結果をその外側の隣接SPEの3
3全部に送る。中央の行又は列に属さないセルを表わす
他のSPEに、その内側の隣接SPEの両者75=デー
タを送って来るの全待ち(プロッタ652.654)、
受は取ったデータに対して計算を行ない(プロッタ65
6)、その結果を外側の隣1isPEの両者に送る(ブ
ロック658)。
P E (ブロック640のYES分岐〕は中心方向
から数値?受は喉る(プロッタ642及び644)まで
待機し、受は取った数値に対して計算を行ない(ブロッ
ク646)、次にその結果をその外側の隣接SPEの3
3全部に送る。中央の行又は列に属さないセルを表わす
他のSPEに、その内側の隣接SPEの両者75=デー
タを送って来るの全待ち(プロッタ652.654)、
受は取ったデータに対して計算を行ない(プロッタ65
6)、その結果を外側の隣1isPEの両者に送る(ブ
ロック658)。
フル・サイズの機械では、処理活動(図の「計算する」
のプロッタ)に中心からダイヤモンド状の波動の形で伝
搬し54つの隅に到達する。
のプロッタ)に中心からダイヤモンド状の波動の形で伝
搬し54つの隅に到達する。
フレーム比哉械では5第65図及び第36図に示すよう
に処理は外向きにやや不規則な形で進行する。第65図
の左側は9×9のフル・サイズの機械を示し、第′55
図の右側は6×3の機械?用いる時のチップのフレーム
構造を示す。
に処理は外向きにやや不規則な形で進行する。第65図
の左側は9×9のフル・サイズの機械を示し、第′55
図の右側は6×3の機械?用いる時のチップのフレーム
構造を示す。
第56図は各時間ユニットにおいて動作する5×6の機
械の5PIIJ−示す。フル・サイズの機械は9時間ユ
ニットで処理を終え、6×5の機械に155時間ユニッ
ト処理全路える。この例から明らかなように、ノぐフオ
ーマンス時間ペナルティは、機械サイズが妥当であると
仮定すれば、チップ対機械のサイズの比よりもはるかに
小さい。
械の5PIIJ−示す。フル・サイズの機械は9時間ユ
ニットで処理を終え、6×5の機械に155時間ユニッ
ト処理全路える。この例から明らかなように、ノぐフオ
ーマンス時間ペナルティは、機械サイズが妥当であると
仮定すれば、チップ対機械のサイズの比よりもはるかに
小さい。
第35図及び第36図の例は、ある前もって定められた
規準によって作業ス5ツタの処理の順序がどのよりに影
響され得るか?説明している。この例の各SPEはチッ
プの中心により近いセルを最初に処理する。
規準によって作業ス5ツタの処理の順序がどのよりに影
響され得るか?説明している。この例の各SPEはチッ
プの中心により近いセルを最初に処理する。
典型的な配線経路決定システムに関して装置は効率的且
つ高速に機能する事?示して来た。速度の利点はより多
くの計算ができる余裕を生み、従って高品質の結果音生
じる。ここで例として示した機械は物理設計工程全体の
主要部についても非常に適している。よシ高度の並列ア
ルゴリズムの設計あるいは変型は、機械購造及び機械を
プログラムする原理が理解されれば、容易に行なう事が
できる。
つ高速に機能する事?示して来た。速度の利点はより多
くの計算ができる余裕を生み、従って高品質の結果音生
じる。ここで例として示した機械は物理設計工程全体の
主要部についても非常に適している。よシ高度の並列ア
ルゴリズムの設計あるいは変型は、機械購造及び機械を
プログラムする原理が理解されれば、容易に行なう事が
できる。
産業上の利用可能性
本発明の目的は物理設計装置?提供する事であ本発明の
他の目的はVLSI回路のための改良された配線経路決
定装置を提供する事である。
他の目的はVLSI回路のための改良された配線経路決
定装置を提供する事である。
本発明の一態様によれば、VLSI回路のための改良さ
れた大局的配線装置が与えられる。
れた大局的配線装置が与えられる。
本発明の他の態様によれば、最適の配線経路を決定する
ために混雑評価7行なう改良された大局的配線装置が与
えられる。
ために混雑評価7行なう改良された大局的配線装置が与
えられる。
本発明の他の態様によれば、能動回路領域の配列及びそ
れらの能動領域の間を直交して走る配線チャネル及び面
間接続のためのバイアより成るマスタ・クラ1ス・チッ
プから構成されたVLS I回路のための改良された大
局的配線装置が与えられる。
れらの能動領域の間を直交して走る配線チャネル及び面
間接続のためのバイアより成るマスタ・クラ1ス・チッ
プから構成されたVLS I回路のための改良された大
局的配線装置が与えられる。
本発明の他の態様によれば、チップ上の能動領域間のチ
ャネル配線経路を決定するために多ポート・プロセッサ
の配列と通信する主制御装#を用いi、VLSIマスタ
・クラ1ス・チップのための大局的配線装置が与えられ
る。
ャネル配線経路を決定するために多ポート・プロセッサ
の配列と通信する主制御装#を用いi、VLSIマスタ
・クラ1ス・チップのための大局的配線装置が与えられ
る。
本発明の他の態様によれば、チップ上の能動領域の数が
配列よりもはるかに大きい場合に、多ポート・プロセッ
サの配列がチップ上の能動領域間の配線経路決定をでき
るような、フレーム・マツピング技術?用いたVLS
Iマスタ・スライス・チップのための改良された大局的
配線装置が与えられる。
配列よりもはるかに大きい場合に、多ポート・プロセッ
サの配列がチップ上の能動領域間の配線経路決定をでき
るような、フレーム・マツピング技術?用いたVLS
Iマスタ・スライス・チップのための改良された大局的
配線装置が与えられる。
第1@ばnXnの論理装置の配列を有するマスタ・スラ
イス・チップの図、第2図は本発明による物理設計シス
テムのブロック図、第31図及び第32図は第2図の配
列I10プロセッサ34のブロック図、第4図は第6.
2図の駆動回路44.66、及び78のブロック図、第
5図は第2図の特殊処理要素(SPE)の図、第61図
及び第6゜2図は第2図及び第5図に示したSPEのブ
ロック図、第7図は第6.1図のsPE制両輪理124
の選択機構の図、第8図は2つのSPE間の通信に用い
られるメール・ボックス・フラグ機構のブロック図、第
9図は物理設計工程の流れ図、第10図は第9図のブロ
ック230の詳細な流れ図、第11図はマスタ・スライ
ス・チップの図、第12図は第11図のセル242の詳
細?示す図、第13図は第10図の大局的配線経路決定
工程の詳細な流れ1図、第14図は第16図の混雑評価
工程の詳細な流れ図、第15図はセルA及びBの2点全
接続する全ての最もらしい配線経路を示す図、第16図
は混雑評価を行なうためのネット中のノードXに関する
ルツクアヘソド・コストのテンプレート・パターンの図
、第17図は5つの論理サービス端子(LST)’i有
するネットに関する混雑評fitlir説明するテンプ
レート・パターンの図、第18図は各セル境界における
水平方向の混雑評価の6次元的グラフの図、第19図は
各セル境界における垂直方向の混雑評価の3次元的グラ
フの図、第20図は第20.1図、第20.2図及び第
203図の関係を示す図、第20,1図、第2o、2図
及び第203図は第2図の制御装置2o及び5PE32
が特定の配@経路に関して混雑評fin行な9方式を説
明する詳細な流れ図、第21図は混雑評価の導出を理解
するのに役立つ図、第22図は混雑評価におけるポート
・コストの理解に役立つ図、第23図はボート・コスト
¥説明する3次元的グラフの図、第24図は第13図の
ブロック268の詳細な流れ図、第25図は第24図の
ブロック426に関する制御装置の動作を示す流れ図1
第26図は第261図、第262図及び第265図の関
係を示す図、第26.1図、第262図及び第263図
は第24図のブロック426の詳細な流れ図、第27図
は第24図のブロック426に関する詳細な流れ図、第
281図乃至第788図は経路コストの伝搬、?説明す
る図、第291図及び第292図は第24図のブロック
4540機能を実行するためのSPE動作の流れ図、第
50図はチップとフレームとの関係を説明するマス!・
クラ1ス・チップの図、第31図iフル・サイズの物理
設計装置における行掃引動作に関するパラダイムに関す
る流れ図、第32.1図乃至第325図は連続したフレ
ームの行をパ1ブラ4ン方式で処理する方法を示す図、
第66図は第281図乃至第288図の工程で5PEK
対するセルの重なりがフレームrIl、機械においてど
のよつに生じるかt示す図、第34図はSPEの観点か
らパラダイムEを説明する詳細な流れ図1第65図及び
第36図はフル・サイズの機械及びフレーム化機械に関
して作業スタックの処理?説明する図である。 出a 人 インタi九ン叶ル・ビジネス・マンーンズ・
コーポレーション代理人 弁理士 岡 1)
次 生(外1名) 左端セ1し 中闇七し待機 右瑞セJし 持機 FIG、32.1
イス・チップの図、第2図は本発明による物理設計シス
テムのブロック図、第31図及び第32図は第2図の配
列I10プロセッサ34のブロック図、第4図は第6.
2図の駆動回路44.66、及び78のブロック図、第
5図は第2図の特殊処理要素(SPE)の図、第61図
及び第6゜2図は第2図及び第5図に示したSPEのブ
ロック図、第7図は第6.1図のsPE制両輪理124
の選択機構の図、第8図は2つのSPE間の通信に用い
られるメール・ボックス・フラグ機構のブロック図、第
9図は物理設計工程の流れ図、第10図は第9図のブロ
ック230の詳細な流れ図、第11図はマスタ・スライ
ス・チップの図、第12図は第11図のセル242の詳
細?示す図、第13図は第10図の大局的配線経路決定
工程の詳細な流れ1図、第14図は第16図の混雑評価
工程の詳細な流れ図、第15図はセルA及びBの2点全
接続する全ての最もらしい配線経路を示す図、第16図
は混雑評価を行なうためのネット中のノードXに関する
ルツクアヘソド・コストのテンプレート・パターンの図
、第17図は5つの論理サービス端子(LST)’i有
するネットに関する混雑評fitlir説明するテンプ
レート・パターンの図、第18図は各セル境界における
水平方向の混雑評価の6次元的グラフの図、第19図は
各セル境界における垂直方向の混雑評価の3次元的グラ
フの図、第20図は第20.1図、第20.2図及び第
203図の関係を示す図、第20,1図、第2o、2図
及び第203図は第2図の制御装置2o及び5PE32
が特定の配@経路に関して混雑評fin行な9方式を説
明する詳細な流れ図、第21図は混雑評価の導出を理解
するのに役立つ図、第22図は混雑評価におけるポート
・コストの理解に役立つ図、第23図はボート・コスト
¥説明する3次元的グラフの図、第24図は第13図の
ブロック268の詳細な流れ図、第25図は第24図の
ブロック426に関する制御装置の動作を示す流れ図1
第26図は第261図、第262図及び第265図の関
係を示す図、第26.1図、第262図及び第263図
は第24図のブロック426の詳細な流れ図、第27図
は第24図のブロック426に関する詳細な流れ図、第
281図乃至第788図は経路コストの伝搬、?説明す
る図、第291図及び第292図は第24図のブロック
4540機能を実行するためのSPE動作の流れ図、第
50図はチップとフレームとの関係を説明するマス!・
クラ1ス・チップの図、第31図iフル・サイズの物理
設計装置における行掃引動作に関するパラダイムに関す
る流れ図、第32.1図乃至第325図は連続したフレ
ームの行をパ1ブラ4ン方式で処理する方法を示す図、
第66図は第281図乃至第288図の工程で5PEK
対するセルの重なりがフレームrIl、機械においてど
のよつに生じるかt示す図、第34図はSPEの観点か
らパラダイムEを説明する詳細な流れ図1第65図及び
第36図はフル・サイズの機械及びフレーム化機械に関
して作業スタックの処理?説明する図である。 出a 人 インタi九ン叶ル・ビジネス・マンーンズ・
コーポレーション代理人 弁理士 岡 1)
次 生(外1名) 左端セ1し 中闇七し待機 右瑞セJし 持機 FIG、32.1
Claims (1)
- 【特許請求の範囲】 基板上に複数の装置が杉成烙れ、上記基板上に相互に直
交する水平及び垂直の複数の配線チャネルが形成きれ、
各チャネルに複数の配線トラックが形11i!され、上
記装置及びチャネルがセルを形成し、上記水平及び垂直
の配線チャネルの少なくとも1つに配線トラックに旧っ
て端子が配置された基板上の上記端子間の配線径路を決
定するための装置でろって、 配列体中の少なくとも4つの隣接する処理要素と通信す
るための少なくとも4つの入力/出力ポート及び制御人
力/出力ポート’c有する複数の処理要素の配列体と、 1つのセルのソース端子から他のセルのシンク端子への
配線径路?決定するために、上記配列体中の各処理要素
の制御人力/出力ボートに選択的にコマンドを与えるた
めの制御処理装置と、上記制御処理装置からのコマンド
に応答して、最初に上記1つのセルのソース端子から上
記他のセルのシンク端子への最良のチャネル径路を決定
し、次に上記最良のチャネルにおいて最良の配線トラッ
ク全決定する、上記処理要素中の手段とから成る 配線径路を決定するための装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/272,880 US4484292A (en) | 1981-06-12 | 1981-06-12 | High speed machine for the physical design of very large scale integrated circuits |
| US272880 | 1981-06-12 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS58153A true JPS58153A (ja) | 1983-01-05 |
| JPH0236067B2 JPH0236067B2 (ja) | 1990-08-15 |
Family
ID=23041675
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP57098632A Granted JPS58153A (ja) | 1981-06-12 | 1982-06-10 | 配線径路決定方法 |
| JP57134834A Granted JPS5875265A (ja) | 1981-06-12 | 1982-08-03 | 処理配列体 |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP57134834A Granted JPS5875265A (ja) | 1981-06-12 | 1982-08-03 | 処理配列体 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US4484292A (ja) |
| EP (1) | EP0067304B1 (ja) |
| JP (2) | JPS58153A (ja) |
| CA (1) | CA1166759A (ja) |
| DE (1) | DE3279427D1 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5875265A (ja) * | 1981-06-12 | 1983-05-06 | インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン | 処理配列体 |
Families Citing this family (99)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH077825B2 (ja) * | 1981-08-13 | 1995-01-30 | 富士通株式会社 | ゲートアレイの製造方法 |
| JPS58190036A (ja) * | 1982-04-23 | 1983-11-05 | Fujitsu Ltd | ゲ−ト・アレイ大規模集積回路装置 |
| JPS5961944A (ja) * | 1982-09-30 | 1984-04-09 | Fujitsu Ltd | マスタスライス集積回路の製造方法 |
| US4584653A (en) * | 1983-03-22 | 1986-04-22 | Fujitsu Limited | Method for manufacturing a gate array integrated circuit device |
| US4580228A (en) * | 1983-06-06 | 1986-04-01 | The United States Of America As Represented By The Secretary Of The Army | Automated design program for LSI and VLSI circuits |
| US4612618A (en) * | 1983-06-10 | 1986-09-16 | Rca Corporation | Hierarchical, computerized design of integrated circuits |
| US4593363A (en) * | 1983-08-12 | 1986-06-03 | International Business Machines Corporation | Simultaneous placement and wiring for VLSI chips |
| NL8303536A (nl) * | 1983-10-14 | 1985-05-01 | Philips Nv | Geintegreerde schakeling op grote schaal welke verdeeld is in isochrone gebieden, werkwijze voor het machinaal ontwerpen van zo een geintegreerde schakeling, en werkwijze voor het machinaal testen van zo een geintegreerde schakeling. |
| GB8328909D0 (en) * | 1983-10-28 | 1983-11-30 | Hutton G H | Manufacturing pattern-bearing article |
| JPS6124250A (ja) * | 1984-07-13 | 1986-02-01 | Nippon Gakki Seizo Kk | 半導体集積回路装置 |
| US5226171A (en) * | 1984-12-03 | 1993-07-06 | Cray Research, Inc. | Parallel vector processing system for individual and broadcast distribution of operands and control information |
| JPS61199166A (ja) * | 1985-03-01 | 1986-09-03 | Nec Corp | 配線経路探索装置 |
| US4701860A (en) * | 1985-03-07 | 1987-10-20 | Harris Corporation | Integrated circuit architecture formed of parametric macro-cells |
| JPS63278249A (ja) * | 1986-12-26 | 1988-11-15 | Toshiba Corp | 半導体集積回路装置の配線方法 |
| US4965739A (en) * | 1987-03-26 | 1990-10-23 | Vlsi Technology, Inc. | Machine process for routing interconnections from one module to another module and for positioning said two modules after said modules are interconnected |
| US4768154A (en) * | 1987-05-08 | 1988-08-30 | Telesis Systems Corporation | Computer aided printed circuit board wiring |
| US5182719A (en) * | 1988-06-09 | 1993-01-26 | Hitachi, Ltd. | Method of fabricating a second semiconductor integrated circuit device from a first semiconductor integrated circuit device |
| US4831725A (en) * | 1988-06-10 | 1989-05-23 | International Business Machines Corporation | Global wiring by removal of redundant paths |
| US5003487A (en) * | 1988-06-28 | 1991-03-26 | International Business Machines Corporation | Method and apparatus for performing timing correction transformations on a technology-independent logic model during logic synthesis |
| US5187784A (en) * | 1989-01-13 | 1993-02-16 | Vlsi Technology, Inc. | Integrated circuit placement method using netlist and predetermined ordering constraints to produce a human readable integrated circuit schematic diagram |
| JP2509755B2 (ja) * | 1990-11-22 | 1996-06-26 | 株式会社東芝 | 半導体集積回路製造方法 |
| JP3033203B2 (ja) * | 1991-01-25 | 2000-04-17 | 株式会社日立製作所 | 配線経路探索装置及び配線経路探索方法 |
| US5339253A (en) * | 1991-06-14 | 1994-08-16 | International Business Machines Corporation | Method and apparatus for making a skew-controlled signal distribution network |
| JP3172211B2 (ja) * | 1991-09-05 | 2001-06-04 | 富士通株式会社 | 回路合成システム |
| US5341310A (en) * | 1991-12-17 | 1994-08-23 | International Business Machines Corporation | Wiring layout design method and system for integrated circuits |
| JPH06196563A (ja) * | 1992-09-29 | 1994-07-15 | Internatl Business Mach Corp <Ibm> | Vlsiの配線設計に対するコンピュータ実施可能な過密領域配線方法 |
| CA2102855A1 (en) * | 1992-12-29 | 1994-06-30 | Albon E. Gilbert | Jumper cable selection and routing system |
| CN1058110C (zh) * | 1993-06-21 | 2000-11-01 | 松下电子工业株式会社 | 半导体集成电路的布图设计方法 |
| US5533148A (en) * | 1993-09-30 | 1996-07-02 | International Business Machines Corporation | Method for restructuring physical design images into hierarchical data models |
| US5818726A (en) * | 1994-04-18 | 1998-10-06 | Cadence Design Systems, Inc. | System and method for determining acceptable logic cell locations and generating a legal location structure |
| US6155725A (en) * | 1994-04-19 | 2000-12-05 | Lsi Logic Corporation | Cell placement representation and transposition for integrated circuit physical design automation system |
| US5914887A (en) * | 1994-04-19 | 1999-06-22 | Lsi Logic Corporation | Congestion based cost factor computing apparatus 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 |
| 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 |
| 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 |
| US5557533A (en) * | 1994-04-19 | 1996-09-17 | Lsi Logic Corporation | Cell placement alteration apparatus for integrated circuit chip physical design automation 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 |
| US5636129A (en) * | 1994-04-20 | 1997-06-03 | Her; One-Hsiow A. | Electrical routing through fixed sized module and variable sized channel grids |
| US5638288A (en) * | 1994-08-24 | 1997-06-10 | Lsi Logic Corporation | Separable cells having wiring channels for routing signals between surrounding cells |
| US5587923A (en) * | 1994-09-07 | 1996-12-24 | Lsi Logic Corporation | Method for estimating routability and congestion in a cell placement for integrated circuit chip |
| US5615127A (en) * | 1994-11-30 | 1997-03-25 | International Business Machines Corporation | Parallel execution of a complex task partitioned into a plurality of entities |
| US5798541A (en) * | 1994-12-02 | 1998-08-25 | Intel Corporation | Standard semiconductor cell with contoured cell boundary to increase device density |
| US5768146A (en) * | 1995-03-28 | 1998-06-16 | Intel Corporation | Method of cell contouring to increase device density |
| EP0791887B1 (en) * | 1996-02-21 | 2001-05-23 | Matsushita Electric Industrial Co., Ltd. | Flip-Chip layout input apparatus and method |
| US6226560B1 (en) * | 1996-03-04 | 2001-05-01 | International Business Machines Corporation | Method and apparatus for optimizing the path of a physical wire |
| US5914888A (en) * | 1996-06-28 | 1999-06-22 | Lsi Logic Corporation | Advanced modular cell placement system with coarse overflow remover |
| US5963455A (en) * | 1996-06-28 | 1999-10-05 | Lsi Logic Corporation | Advanced modular cell placement system with functional sieve optimization technique |
| US5872718A (en) * | 1996-06-28 | 1999-02-16 | Lsi Logic Corporation | Advanced modular cell placement system |
| 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 |
| US5867398A (en) * | 1996-06-28 | 1999-02-02 | Lsi Logic Corporation | Advanced modular cell placement system with density driven capacity penalty system |
| US5808899A (en) * | 1996-06-28 | 1998-09-15 | Lsi Logic Corporation | Advanced modular cell placement system with cell placement crystallization |
| US5870312A (en) * | 1996-06-28 | 1999-02-09 | Lsi Logic Corporation | Advanced modular cell placement system with dispersion-driven levelizing system |
| US5835381A (en) * | 1996-06-28 | 1998-11-10 | Lsi Logic Corporation | Advanced modular cell placement system with minimizing maximal cut driven affinity system |
| US5812740A (en) * | 1996-06-28 | 1998-09-22 | Lsi Logic Corporation | Advanced modular cell placement system with neighborhood system driven optimization |
| US6026223A (en) * | 1996-06-28 | 2000-02-15 | Scepanovic; Ranko | Advanced modular cell placement system with overlap remover with minimal noise |
| US5892688A (en) * | 1996-06-28 | 1999-04-06 | Lsi Logic Corporation | Advanced modular cell placement system with iterative one dimensional preplacement optimization |
| US5844811A (en) * | 1996-06-28 | 1998-12-01 | Lsi Logic Corporation | Advanced modular cell placement system with universal affinity driven discrete placement optimization |
| 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 |
| US6030110A (en) * | 1996-06-28 | 2000-02-29 | Lsi Logic Corporation | Advanced modular cell placement system with median control and increase in resolution |
| US6067409A (en) * | 1996-06-28 | 2000-05-23 | Lsi Logic Corporation | Advanced modular cell placement system |
| US5831980A (en) * | 1996-09-13 | 1998-11-03 | Lsi Logic Corporation | Shared memory fabric architecture for very high speed ATM switches |
| US5959993A (en) * | 1996-09-13 | 1999-09-28 | Lsi Logic Corporation | Scheduler design for ATM switches, and its implementation in a distributed shared memory architecture |
| US5980093A (en) * | 1996-12-04 | 1999-11-09 | Lsi Logic Corporation | Integrated circuit layout routing using multiprocessing |
| US5818730A (en) | 1996-12-05 | 1998-10-06 | Xilinx, Inc. | FPGA one turn routing structure and method using minimum diffusion area |
| US6031981A (en) * | 1996-12-19 | 2000-02-29 | Cirrus Logic, Inc. | Reconfigurable gate array cells for automatic engineering change order |
| US5828230A (en) * | 1997-01-09 | 1998-10-27 | Xilinx, Inc. | FPGA two turn routing structure with lane changing and minimum diffusion area |
| US6074429A (en) * | 1997-03-03 | 2000-06-13 | Motorola, Inc. | Optimizing combinational circuit layout through iterative restructuring |
| US6266802B1 (en) * | 1997-10-27 | 2001-07-24 | International Business Machines Corporation | Detailed grid point layout using a massively parallel logic including an emulator/simulator paradigm |
| US6230304B1 (en) | 1997-12-24 | 2001-05-08 | Magma Design Automation, Inc. | Method of designing a constraint-driven integrated circuit layout |
| US6077309A (en) * | 1998-01-07 | 2000-06-20 | Mentor Graphics Corporation | Method and apparatus for locating coordinated starting points for routing a differential pair of traces |
| JP3184796B2 (ja) * | 1998-03-19 | 2001-07-09 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | 配線設計装置およびその方法 |
| GB2337346B (en) * | 1998-05-15 | 2001-04-11 | Lsi Logic Corp | Integrated circuit routing |
| US6192508B1 (en) * | 1998-06-12 | 2001-02-20 | Monterey Design Systems | Method for logic optimization for improving timing and congestion during placement in integrated circuit design |
| US6263480B1 (en) * | 1998-12-30 | 2001-07-17 | International Business Machines Corporation | Efficient tracing of shorts in very large nets in hierarchical designs |
| US6519751B2 (en) * | 2000-03-31 | 2003-02-11 | Intel Corporation | Method and apparatus for accurate crosspoint allocation in VLSI area routing |
| US6415426B1 (en) | 2000-06-02 | 2002-07-02 | Incentia Design Systems, Inc. | Dynamic weighting and/or target zone analysis in timing driven placement of cells of an integrated circuit design |
| US6775808B1 (en) * | 2000-08-03 | 2004-08-10 | Monterey Design Systems, Inc. | Method and apparatus for generating sign-off prototypes for the design and fabrication of integrated circuits |
| US6763512B2 (en) * | 2001-04-06 | 2004-07-13 | Sun Microsystems, Inc. | Detailed method for routing connections using tile expansion techniques and associated methods for designing and manufacturing VLSI circuits |
| JP4429593B2 (ja) * | 2002-11-22 | 2010-03-10 | パナソニック株式会社 | 半導体装置のレイアウト検証方法 |
| US7415644B2 (en) * | 2004-10-22 | 2008-08-19 | International Business Machines Corporation | Self-repairing of microprocessor array structures |
| US8300798B1 (en) | 2006-04-03 | 2012-10-30 | Wai Wu | Intelligent communication routing system and method |
| US8045546B1 (en) * | 2008-07-08 | 2011-10-25 | Tilera Corporation | Configuring routing in mesh networks |
| JP5145167B2 (ja) * | 2008-08-20 | 2013-02-13 | ルネサスエレクトロニクス株式会社 | クロックドメインチェック方法及びクロックドメインチェック用プログラム並びに記録媒体 |
| US7971174B1 (en) * | 2008-09-18 | 2011-06-28 | Cadence Design Systems, Inc. | Congestion aware pin optimizer |
| US8464196B1 (en) * | 2012-03-28 | 2013-06-11 | Cadence Design Systems, Inc. | Method and system for routing optimally between terminals through intermediate vias in a circuit design |
| US9251299B1 (en) | 2013-06-28 | 2016-02-02 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for associating track patterns with rules for electronic designs |
| US8984465B1 (en) | 2013-06-28 | 2015-03-17 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for automatically assigning track patterns to regions for physical implementation of an electronic design |
| US9117052B1 (en) | 2012-04-12 | 2015-08-25 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for interactively implementing physical electronic designs with track patterns |
| US9003349B1 (en) | 2013-06-28 | 2015-04-07 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for implementing a physical electronic design with area-bounded tracks |
| US9213793B1 (en) | 2012-08-31 | 2015-12-15 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for implementing electronic designs using flexible routing tracks |
| US9075932B1 (en) | 2012-08-31 | 2015-07-07 | Candence Design Systems, Inc. | Methods and systems for routing an electronic design using spacetiles |
| US8935649B1 (en) | 2012-08-31 | 2015-01-13 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for routing an electronic design using spacetiles |
| US9104830B1 (en) | 2013-06-28 | 2015-08-11 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for assigning track patterns to regions of an electronic design |
| US9183343B1 (en) * | 2012-08-31 | 2015-11-10 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for implementing high current carrying interconnects in electronic designs |
| US9817941B2 (en) | 2012-12-04 | 2017-11-14 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for implementing high current carrying interconnects in electronic designs |
| US9165103B1 (en) | 2013-06-28 | 2015-10-20 | Cadence Design Systems, Inc. | Methods, systems, and articles of manufacture for tessellating and labeling routing space for routing electronic designs |
| CN113919275A (zh) | 2020-09-21 | 2022-01-11 | 台积电(南京)有限公司 | 用于优化集成电路的布局的方法 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5349971A (en) * | 1976-10-18 | 1978-05-06 | Nippon Telegr & Teleph Corp <Ntt> | Wiring route deciding device |
| JPS5756946A (en) * | 1980-09-22 | 1982-04-05 | Nippon Telegr & Teleph Corp <Ntt> | Logic wiring designing system |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3653072A (en) * | 1970-01-08 | 1972-03-28 | Texas Instruments Inc | Process for producing circuit artwork utilizing a data processing machine |
| US3684871A (en) * | 1970-10-30 | 1972-08-15 | Systonetics Inc | Network plotting system |
| US3979728A (en) * | 1973-04-13 | 1976-09-07 | International Computers Limited | Array processors |
| DE2445368A1 (de) * | 1974-09-23 | 1976-04-01 | Siemens Ag | Verfahren zur herstellung fuer maskenvorlagen fuer integrierte halbleiterschaltungen |
| US4065808A (en) * | 1975-01-25 | 1977-12-27 | U.S. Philips Corporation | Network computer system |
| US4484292A (en) * | 1981-06-12 | 1984-11-20 | International Business Machines Corporation | High speed machine for the physical design of very large scale integrated circuits |
-
1981
- 1981-06-12 US US06/272,880 patent/US4484292A/en not_active Expired - Lifetime
-
1982
- 1982-04-07 CA CA000400638A patent/CA1166759A/en not_active Expired
- 1982-05-06 DE DE8282103941T patent/DE3279427D1/de not_active Expired
- 1982-05-06 EP EP82103941A patent/EP0067304B1/en not_active Expired
- 1982-06-10 JP JP57098632A patent/JPS58153A/ja active Granted
- 1982-08-03 JP JP57134834A patent/JPS5875265A/ja active Granted
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5349971A (en) * | 1976-10-18 | 1978-05-06 | Nippon Telegr & Teleph Corp <Ntt> | Wiring route deciding device |
| JPS5756946A (en) * | 1980-09-22 | 1982-04-05 | Nippon Telegr & Teleph Corp <Ntt> | Logic wiring designing system |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5875265A (ja) * | 1981-06-12 | 1983-05-06 | インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン | 処理配列体 |
Also Published As
| Publication number | Publication date |
|---|---|
| US4484292A (en) | 1984-11-20 |
| CA1166759A (en) | 1984-05-01 |
| EP0067304A3 (en) | 1984-07-25 |
| EP0067304A2 (en) | 1982-12-22 |
| JPH0236068B2 (ja) | 1990-08-15 |
| JPH0236067B2 (ja) | 1990-08-15 |
| DE3279427D1 (en) | 1989-03-09 |
| EP0067304B1 (en) | 1989-02-01 |
| JPS5875265A (ja) | 1983-05-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0067304B1 (en) | Processing array and method for the physical design of very large scale integrated circuits | |
| US4593351A (en) | High speed machine for the physical design of very large scale integrated circuits | |
| US6493658B1 (en) | Optimization processing for integrated circuit physical design automation system using optimally switched fitness improvement algorithms | |
| US5745363A (en) | Optimization processing for integrated circuit physical design automation system using optimally switched cost function computations | |
| US6155725A (en) | Cell placement representation and transposition for integrated circuit physical design automation system | |
| US5640327A (en) | Apparatus and method for partitioning resources for interconnections | |
| US5875117A (en) | Simultaneous placement and routing (SPAR) method for integrated circuit physical design automation system | |
| US5914887A (en) | Congestion based cost factor computing apparatus for integrated circuit physical design automation system | |
| US5557533A (en) | Cell placement alteration apparatus for integrated circuit chip physical design automation system | |
| US5963975A (en) | Single chip integrated circuit distributed shared memory (DSM) and communications nodes | |
| US5870313A (en) | Optimization processing for integrated circuit physical design automation system using parallel moving windows | |
| US4593363A (en) | Simultaneous placement and wiring for VLSI chips | |
| US5815403A (en) | Fail-safe distributive processing method for producing a highest fitness cell placement for an integrated circuit chip | |
| US10831972B2 (en) | Capacity model for global routing | |
| JP2601586B2 (ja) | 配置要素の配置配線方法 | |
| Markov et al. | Optimization techniques for two-dimensional placement | |
| CN119067050A (zh) | 一种集成电路布局方法及装置、设备、介质 | |
| Hsu et al. | Multilayer global routing with via and wire capacity considerations | |
| US6243850B1 (en) | Allocation apparatus and method for determining cell allocation of semiconductor circuit | |
| Zhong et al. | Whitespace insertion for through-silicon via planning on 3-D SoCs | |
| JPH10135339A (ja) | 自動配置配線方法 | |
| Goto et al. | lambda, an integrated master-slice LSI CAD system | |
| JP2675022B2 (ja) | 半導体集積回路のレイアウト方法 | |
| CN121145787A (zh) | 基于启发式搜索的芯片中介层布线方法与装置 | |
| JáJá | Parallel algorithms for VLSI routing |