JP2010500692A - 階層的プロセッサ構成によるマルチプロセッサアーキテクチャ - Google Patents
階層的プロセッサ構成によるマルチプロセッサアーキテクチャ Download PDFInfo
- Publication number
- JP2010500692A JP2010500692A JP2009524613A JP2009524613A JP2010500692A JP 2010500692 A JP2010500692 A JP 2010500692A JP 2009524613 A JP2009524613 A JP 2009524613A JP 2009524613 A JP2009524613 A JP 2009524613A JP 2010500692 A JP2010500692 A JP 2010500692A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- operations
- slave
- computing
- design
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5044—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Multi Processors (AREA)
Abstract
Description
本発明は、マスタコンピュータからの演算を、1つ以上の異なるタイプのスレーブコンピュータの中において分散させることを目的とする。本発明の種々の側面は、第1のタイプのスレーブコンピューティングユニットへの第1のタイプの演算の分散、および第2のタイプのスレーブコンピューティングユニットへの第2のタイプの演算の分散に適用することができる。
本発明の種々の実施形態は、実行用の複数のネットワーク化されたコンピューティングデバイスの中で演算を分散させるためのツールおよび方法に関する。したがって、本発明の理解をより容易にするために、複数の異なるスレーブコンピュータにリンクされたマスタコンピュータで構成されたネットワークに用いることができる、コンピューティングデバイスの一実施例を説明する。
当業者には明らかなように、本発明の種々の実施例は、それぞれがソフトウェア命令を実行することができる、複数のプログラム可能なコンピューティングデバイスを使用して実装される。その点を考慮して、まず、本発明の種々の実施形態が用いることができるタイプの、汎用のプログラム可能なコンピュータシステムの構成要素および演算を、図1を参照して説明する。
上述のように、本発明の種々の側面は、マルチプロセッサアーキテクチャを備えたコンピューティングシステムによる、演算セットの実行に関する。したがって、本発明の異なる実施形態は、様々な異なるタイプのソフトウェアアプリケーションとともに用いることができる。しかしながら、本発明のいくつかの実施形態は、マイクロ回路のようなマイクロデバイスを表す設計データをシミュレーション、検証、または修正するための演算を実行する、ソフトウェアアプリケーションを動作させるのに特に有用である。マイクロ回路デバイスの設計および作製には、「設計フロー」を通じて多くのステップを伴う。これらのステップは、マイクロ回路のタイプ、複雑度、設計チーム、およびマイクロ回路の製造者または製造工場に大きく依存する。いくつかのステップは、全ての設計フローに共通である。最初に、設計仕様が、一般的にハードウェア設計言語(HDL)で論理的にモデル化される。次いで、ソフトウェアおよびハードウェア「ツール」が、ソフトウェアシミュレータおよび/またはハードウェアエミュレータを動作させることによって、設計フローの種々の段階で設計を検証し、エラーを補正する。
gate=diff AND poly
この演算の結果は、拡散浸透層のポリゴンとポリシリコン層のポリゴンとの全ての交差点を識別する。同様に、p型トランジスタゲートは、拡散浸透層をn型材料でドープすることによって形成され、以下の導出演算によって識別される。
pgate=nwell AND gate
この演算の結果は、拡散浸透層内のポリゴンをn型材料でドープした、全てのトランジスタゲート(すなわち、拡散浸透層のポリゴンとポリシリコン層のポリゴンとの交差点)を識別する。
external metal<1
この演算の結果は、金属層の設計データ内の別のポリゴンに対して1ミクロンよりも近い、金属層の設計データ内の各ポリゴンを識別する。
external gate<1
この演算の結果は、別のゲートから1ミクロン未満に位置決めされたゲートを表す全てのゲートの設計データを識別する。しかしながら、このチェック演算は、描画層の設計データからゲートを識別する導出演算が実行されるまで、実行することができないものと理解されたい。
図3は、本発明の種々の実施形態による、階層的プロセッサのコンピューティングシステム301を示す図である。以下に詳述するように、この階層的プロセッサコンピューティングシステム301を用いて整数計算および浮動小数点数計算の両方を計算する、シミュレーションおよび検証ツールを効率的に実装することができる。図3に示されるように、階層的プロセッサのコンピューティングシステム301は、マスタコンピューティングモジュール303と、複数の上位のスレーブコンピューティングモジュール305A〜305αとを含む。階層的プロセッサコンピューティングシステム301は、またディスパッチャコンピューティングモジュール307と、複数の下位のスレーブコンピューティングモジュール309A〜309βとを含む。
以下、本発明の種々の実施形態による階層的プロセッサのコンピューティングシステム301の演算を図4A〜4Cおよび図5に示されたフローチャートを参照して説明する。最初に、ステップ401においてマスタコンピューティングモジュール303、および上位のスレーブコンピューティングモジュール305A〜305αのそれぞれは、階層的プロセッサのコンピューティングシステム301上で動作するターゲットソフトウェアアプリケーションのインスタンスを起動する。上述のように、本発明のいくつかの実施例を用いて、マイクロ回路設計を分析および修正するために、シミュレーションおよび検証ソフトウェアアプリケーションを動作させることができる。例えば、本発明のいくつかの実施形態を用いて、Mentor Graphics Corporation(Wilsonville、Oregon)から入手可能な、CALIBREマイクロ回路設計分析用のソフトウェアアプリケーションを動作させることができる。次に、ステップ403で、マスタコンピューティングモジュール303は、ディスパッチャコンピューティングモジュール307の演算を起動する。しかしながら、本発明のいくつかの代替の実施形態により、ディスパッチャコンピューティングモジュール307の演算は、ユーザによって手動で開始することもできる。次に、ステップ405で、ディスパッチャコンピューティングモジュール307は、下位のスレーブコンピューティングモジュール309A〜309βのそれぞれに、ターゲットソフトウェアアプリケーションのインスタンスを起動させる。
図3は、本発明の種々の実施形態に従って実装することができる、階層的プロセッサのコンピューティングシステムの一実施例を示しているが、様々な他のコンピューティングシステムを、本発明の代替の実施態様に従って実装できるものと理解されよう。例えば、図7は、第2のマスタコンピューティングモジュール703と、第2のセットの上位のスレーブコンピューティングモジュール705A−705αとを含む、コンピューティングシステム701を示す図である。本図に示されるように、第2のマスタコンピューティングモジュール703、および第2のセットの上位のスレーブコンピューティングモジュール705A〜705αは、ディスパッチャコンピューティングモジュール307、および下位のスレーブコンピューティングモジュール309A〜309βのユーザを共有する。このタイプ配列は、例えば、下位のスレーブコンピューティングモジュール309A〜309βの実装に使用されたプロセッサユニット201が、比較的高価である場合、および/または散発的に使用される場合、該ユニットが、2つ以上のセットのマスタコンピューティングモジュールおよび上位のスレーブコンピューティングモジュールの中で共有される場合に有用となり得る。
本発明は、添付の特許請求の範囲を用いて定義されているが、これらの請求項は、本発明が、本願明細書に記載された要素およびステップのあらゆる組み合わせ、または部分的な組み合わせを含むことを意図する場合があるという点においては例示的なものである。したがって、本発明を定義するための多数の代替的な組み合わせが存在し、それらは、本願明細書から、説明、請求項、および図面を含む1つ以上の要素を、種々の組み合わせで、または部分的な組み合わせで組み込んでいる。本願明細書に照らして、当業者は、本発明の代替の側面の組み合わせを、単独で、または本願明細書に定義された1つ以上の要素またはステップと組み合わせて、本発明を改良または変更したものとして、または本発明の一部として用いることができ、本願明細書に含まれる本発明の記述は、そのような改良および変更の全てを網羅することを意図したものであると理解されよう。
Claims (16)
- 演算実行の方法であって、
マスタプロセスで演算セットを受信することであって、第1の演算セットは、実行すべき1つ以上の演算を含む、ことと、
該演算セットを、該マスタプロセスから、第1のプロセッサタイプのプロセッサ上で実行する第1のスレーブプロセスへ転送することと、
該演算セット内の少なくとも1つの演算を、該第1のスレーブプロセスから、第2のプロセッサタイプのプロセッサ上で実行する第2のスレーブプロセスへ転送することと、
該少なくとも1つの演算を、該第2のスレーブプロセスによって実行して、演算結果を生成することと、
該演算結果を、該第2のスレーブプロセスから該第1のスレーブプロセスへ転送することと
を含む、演算実行の方法。 - 前記第1のプロセッサタイプのプロセッサは、第1のカテゴリの演算を実行するように最適化される、請求項1に記載の演算実行の方法。
- 前記第1のカテゴリの演算は、整数計算を含む、請求項2に記載の演算実行の方法。
- 前記第2のプロセッサタイプのプロセッサは、第2のカテゴリの演算を実行するように最適化される、請求項1に記載の演算実行の方法。
- 前記第2のカテゴリの演算は、浮動小数点数計算を含む、請求項4に記載の演算実行の方法。
- 前記演算セットは、第1の演算と、第2の演算とを含み、
該第1の演算を前記第2のスレーブプロセスへ転送することと、
前記演算結果を用いて、前記第1のスレーブプロセスによって該第2の演算を実行することと
をさらに含む、請求項1に記載の演算実行の方法。 - 前記第1の演算は、高速フーリエ変換を計算する命令を含む、請求項6に記載の演算実行の方法。
- 前記マスタプロセスで第2の演算セットを受信することであって、該第2の演算セットは、実行すべき1つ以上の第2の演算を含むことと、
該第2の演算セットを、該マスタプロセスから、前記第1のプロセッサタイプの第2のプロセッサ上で実行する第3のスレーブプロセスへ転送することと
をさらに含む、請求項1に記載の演算実行の方法。 - 前記第2の演算セット内の少なくとも1つの第2の演算を、前記第3のスレーブプロセスから、前記第2のプロセッサタイプの第2のプロセッサ上で実行する第4のスレーブプロセスへ転送することと、
該第4のスレーブプロセスによって該第2の演算を実行して第2の演算結果を生成することと
をさらに含む、請求項8に記載の演算実行の方法。 - 前記第2の演算セット内の少なくとも1つの第2の演算を、前記第3のスレーブプロセスから、前記第2のスレーブプロセスへ転送することと、
該第2のスレーブプロセスによって該第2の演算を実行して第2の演算結果を生成することと
をさらに含む、請求項8に記載の演算実行の方法。 - コンピューティングシステムであって、
第1のプロセッサタイプの複数の第1のスレーブプロセッサと、
該第1のプロセッサタイプとは異なる第2のプロセッサタイプの複数の第2のスレーブプロセッサであって、該第2のスレーブプロセッサのそれぞれは、第1のスレーブプロセッサによって提供される演算を実行するように構成される、複数の第2のスレーブプロセッサと、
演算を、実行用の該第1のスレーブプロセッサに分散するように構成されたマスタプロセスモジュールと
を備える、コンピューティングシステム。 - 前記第1のプロセッサタイプのプロセッサは、第1のカテゴリの演算を実行するように最適化される、請求項11に記載のコンピューティングシステム。
- 前記第1のカテゴリの演算は、整数計算を含む、請求項12に記載のコンピューティングシステム。
- 前記第2のプロセッサタイプのプロセッサは、第2のカテゴリの演算を実行するように最適化される、請求項11に記載のコンピューティングシステム。
- 前記第2のカテゴリの演算は、浮動小数点数計算を含む、請求項14に記載のコンピューティングシステム。
- 前記第2のタイプのプロセッサのそれぞれの利用可能性を監視し、
該第2のタイプのプロセッサのそれぞれの利用可能性を、前記第1のタイプのプロセッサに報告するように構成される、ディスパッチャモジュールをさらに備える、請求項11に記載のコンピューティングシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US82224706P | 2006-08-13 | 2006-08-13 | |
PCT/US2007/017347 WO2008021024A2 (en) | 2006-08-13 | 2007-08-03 | Multiprocessor architecture with hierarchical processor organization |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010500692A true JP2010500692A (ja) | 2010-01-07 |
Family
ID=39082534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009524613A Pending JP2010500692A (ja) | 2006-08-13 | 2007-08-03 | 階層的プロセッサ構成によるマルチプロセッサアーキテクチャ |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP2069958A2 (ja) |
JP (1) | JP2010500692A (ja) |
CN (1) | CN101523381A (ja) |
WO (1) | WO2008021024A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013130579A (ja) * | 2011-12-20 | 2013-07-04 | IFP Energies Nouvelles | 乗り物の汚染物質排出量を化学反応動力学と排出量との同時計算で予測するシステムおよび方法 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7003758B2 (en) | 2003-10-07 | 2006-02-21 | Brion Technologies, Inc. | System and method for lithography simulation |
JP5326308B2 (ja) | 2008-03-13 | 2013-10-30 | 日本電気株式会社 | コンピュータリンク方法及びシステム |
US8959522B2 (en) | 2012-01-30 | 2015-02-17 | International Business Machines Corporation | Full exploitation of parallel processors for data processing |
US9141631B2 (en) | 2012-04-16 | 2015-09-22 | International Business Machines Corporation | Table boundary detection in data blocks for compression |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06332981A (ja) * | 1993-04-29 | 1994-12-02 | Sgs Thomson Microelectron Sa | 集積回路の構成を決定するための方法および装置 |
JPH0749961A (ja) * | 1993-06-04 | 1995-02-21 | Sun Microsyst Inc | グラフィックアクセラレータの浮動小数点プロセッサ及びその浮動小数点機能を実行する方法 |
JPH08272075A (ja) * | 1995-03-06 | 1996-10-18 | Lsi Logic Corp | マクロセルライブラリ上での光学近接修正のためのシステム及び方法 |
JP2001249808A (ja) * | 1999-12-27 | 2001-09-14 | Fujitsu Ltd | 情報処理装置 |
JP2004145885A (ja) * | 2002-10-25 | 2004-05-20 | Mentor Graphics Corp | 遠隔コンピュータへのオペレーションの分散方法、装置、及び記憶媒体 |
JP2004520622A (ja) * | 2001-04-18 | 2004-07-08 | メンター・グラフィクス・コーポレーション | 分解能向上技術の適用に優先順位を付ける方法及び装置 |
JP2006155187A (ja) * | 2004-11-29 | 2006-06-15 | Sony Corp | 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム。 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2727540B1 (fr) * | 1994-11-30 | 1997-01-03 | Bull Sa | Outil d'aide a la repartition de la charge d'une application repartie |
-
2007
- 2007-08-03 WO PCT/US2007/017347 patent/WO2008021024A2/en active Application Filing
- 2007-08-03 EP EP07811051A patent/EP2069958A2/en not_active Withdrawn
- 2007-08-03 CN CNA2007800339413A patent/CN101523381A/zh active Pending
- 2007-08-03 JP JP2009524613A patent/JP2010500692A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06332981A (ja) * | 1993-04-29 | 1994-12-02 | Sgs Thomson Microelectron Sa | 集積回路の構成を決定するための方法および装置 |
JPH0749961A (ja) * | 1993-06-04 | 1995-02-21 | Sun Microsyst Inc | グラフィックアクセラレータの浮動小数点プロセッサ及びその浮動小数点機能を実行する方法 |
JPH08272075A (ja) * | 1995-03-06 | 1996-10-18 | Lsi Logic Corp | マクロセルライブラリ上での光学近接修正のためのシステム及び方法 |
JP2001249808A (ja) * | 1999-12-27 | 2001-09-14 | Fujitsu Ltd | 情報処理装置 |
JP2004520622A (ja) * | 2001-04-18 | 2004-07-08 | メンター・グラフィクス・コーポレーション | 分解能向上技術の適用に優先順位を付ける方法及び装置 |
JP2004145885A (ja) * | 2002-10-25 | 2004-05-20 | Mentor Graphics Corp | 遠隔コンピュータへのオペレーションの分散方法、装置、及び記憶媒体 |
JP2006155187A (ja) * | 2004-11-29 | 2006-06-15 | Sony Corp | 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム。 |
Non-Patent Citations (4)
Title |
---|
JPN5009011961; Sang Hoon Choi, et al.: 'Hierarchical Heterogeneous Multiprocessor System for Real-Time Motion Picture Coding' SPIE(Visual Communications and Image Processing '94) Vol:2308, 19940929, Pages:1777-1787, SPIE * |
JPN6012028856; D.B.Shu, J.G. Nash, C.C.Weems: 'A Multiple-level Heterogeneous Architecture for Image Understanding' Proceedings of the 10th International Conference on Pattern Recognition , 19900616, Pages:629-634, IEEE * |
JPN6012028857; Francois Charot, et al.: 'Toward Hardware Building Blocks for Software-Only Real-Time Video Processing : The MOVIE Approach' IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY Vol:9, No:6, 199909, Pages:882-894, IEEE * |
JPN7012002104; Colin Whitby-Strevens: 'The transputer' Proceedings of the 12th annual international symposium on Computer architecture (ISCA'85) , 1985, Pages:292-300, IEEE * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013130579A (ja) * | 2011-12-20 | 2013-07-04 | IFP Energies Nouvelles | 乗り物の汚染物質排出量を化学反応動力学と排出量との同時計算で予測するシステムおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2008021024A3 (en) | 2008-05-15 |
WO2008021024A2 (en) | 2008-02-21 |
CN101523381A (zh) | 2009-09-02 |
EP2069958A2 (en) | 2009-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7409656B1 (en) | Method and system for parallelizing computing operations | |
US20110016444A1 (en) | Collaborative Environment For Physical Verification Of Microdevice Designs | |
US20100185994A1 (en) | Topological Pattern Matching | |
US20100023914A1 (en) | Use Of Graphs To Decompose Layout Design Data | |
US20080168410A1 (en) | Properties In Electronic Design Automation | |
US8234599B2 (en) | Use of graphs to decompose layout design data | |
JP5496986B2 (ja) | 並列演算の分散方法及び装置 | |
US20140337810A1 (en) | Modular platform for integrated circuit design analysis and verification | |
US20130198703A1 (en) | Virtual Flat Traversal Of A Hierarchical Circuit Design | |
US20170242953A1 (en) | Preserving Hierarchy And Coloring Uniformity In Multi-Patterning Layout Design | |
JP2010500692A (ja) | 階層的プロセッサ構成によるマルチプロセッサアーキテクチャ | |
US9262574B2 (en) | Voltage-related analysis of layout design data | |
US20160224713A1 (en) | Protocol probes | |
US9047434B2 (en) | Clustering for processing of circuit design data | |
US20080140989A1 (en) | Multiprocessor Architecture With Hierarchical Processor Organization | |
US20130318487A1 (en) | Programmable Circuit Characteristics Analysis | |
US10908511B2 (en) | Systems and methods for patterning color assignment | |
US20120198394A1 (en) | Method For Improving Circuit Design Robustness | |
TW201935289A (zh) | 用於單元交換的方法 | |
US11449658B2 (en) | Methods of generating integrated circuit (IC) layout synthetic patterns and related computer program products | |
US20140040848A1 (en) | Controllable Turn-Around Time For Post Tape-Out Flow | |
US11062068B2 (en) | Electronic computer-aided design tool | |
US20130145340A1 (en) | Determination Of Uniform Colorability Of Layout Data For A Double Patterning Manufacturing Process | |
US20090070731A1 (en) | Distributed Mask Data Preparation | |
US11275884B2 (en) | Systems and methods for photolithographic design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100304 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110223 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120605 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120904 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120911 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121127 |