JP6518648B2 - 境界のない階層型インターコネクトのためのネットワークアーキテクチャ - Google Patents

境界のない階層型インターコネクトのためのネットワークアーキテクチャ Download PDF

Info

Publication number
JP6518648B2
JP6518648B2 JP2016503086A JP2016503086A JP6518648B2 JP 6518648 B2 JP6518648 B2 JP 6518648B2 JP 2016503086 A JP2016503086 A JP 2016503086A JP 2016503086 A JP2016503086 A JP 2016503086A JP 6518648 B2 JP6518648 B2 JP 6518648B2
Authority
JP
Japan
Prior art keywords
stage
switches
switch
network
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.)
Active
Application number
JP2016503086A
Other languages
English (en)
Other versions
JP2016512418A (ja
Inventor
ワン チェンチェン
ワン チェンチェン
マルコヴィッチ デジャン
マルコヴィッチ デジャン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of California
Original Assignee
University of California
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of California filed Critical University of California
Publication of JP2016512418A publication Critical patent/JP2016512418A/ja
Application granted granted Critical
Publication of JP6518648B2 publication Critical patent/JP6518648B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/347Physical level, e.g. placement or routing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • H03K19/17744Structural details of routing resources for input/output signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/18Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Architecture (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)
  • Multi Processors (AREA)

Description

本発明は、プロセッサ、ステートマシン、ゲートアレイ、プログラマブルゲートアレイ、フィールドプログラマブルゲートアレイ(field programmable gate arrays (FPGAs))、及びシステムオンチップ(system-on-chips (SOCs))を含む(が、これに限定されない)ロジック及び/又は計算回路素子に対するスイッチネットワーク又はアーキテクチャを生成するための技術及びその回路素子に関する。例えば、本発明は、FPGA回路素子内で用いることができ、より具体的には、境界のない基数ネットワークを生成するためのシステム及び方法に用いることができる。以下では、本発明及び/又は実施形態は、FPGA回路素子という面において述べられるが、そのような議論において、本発明及び/又は実施形態は、プロセッサ、ステートマシン、ゲートアレイ、プログラマブルゲートアレイ、及びSOCを含む(が、これに限定されない)ロジック及び/又は計算回路素子にも適用できる。簡潔にするために、開示する発明の各観点に関して、各ロジック及び/又は計算回路素子の全てについて別々の議論を行わないが、当業者にとってその応用性は、この開示に基づき明白である。
FPGAは、製造後に購入者や設計者が構成するように設計された集積回路である。FPGA構成は、ハードウェア記述言語(HDL)を用いて指定されるのが一般的である。現代のFPGAは、ロジックゲート及びランダムアクセスメモリ(RAM)ブロックの大きなリソースを有し、複雑なデジタル計算を実行する。FPGAは、「コンフィギュラブルロジックブロック(configurable logic blocks (CLB))」又は「ロジックアレイブロック(logic array blocks (LAB))」と呼ばれるプログラマブルロジック部品と、ブロック同士が互いに通信できる再構成可能なインターコネクトの階層を含むのが典型的である。ロジックブロックは、複雑な組合せ機能、又は単に、ANDとXORのようなシンプルなロジックゲートを実行するように構成される。ほとんどのFPGAでは、ロジックブロックは、シンプルなフリップフロップやより完全なメモリのブロックとなりうるメモリ構成要素も有する。
応用回路は、十分なリソースが利用可能であるという条件で、FPGAにマップ可能である。要求されるCLB/LAB及びI/Oの数は、設計から容易に決定される一方で、必要とされる配線トラックの数は、同量のロジックを用いた設計同士間でさえも大幅に変化する。例えば、クロスバースイッチでは、同じゲート総数のシストリックアレイよりも非常に多くの配線が要求されるのが典型的である。未使用の配線トラック(すなわち、ワイヤ)は、何の利益ももたらすことなくその部分のコストを増やす(及び性能を低下させる)ので、FPGA製造者は、過不足なくトラックを提供しようと試み、ルックアップテーブル(Lookup tables (LUTs))及びIOの見地に合う最も多くの設計を見つけ出すことができる。これは、レントの法則か既存の設計を用いた実験から導かれるような見積もりによって決定される。
一般的に、階層型ネットワークでは、情報は、繰り返し直接接続される様々な構成要素(例えば、CE、スイッチなど)間で、送信及び/又は受信される。典型的には、現代の階層型ネットワークは、2×2スイッチの2*log(Y)個のステージによって互いに通信するY演算素子(computing elements (CEs))を有するBenesネットワークに基づいている。Benesネットワークは、再編成可能で、非ブロックであり、CE間で輻輳のない通信をもたらす。ファットツリー(fat-tree)ネットワークは、各ステージで前後に通信を可能とすることで、2*log(Y)個からlog(Y)個にステージの数を低減できる。
2×2スイッチの5個のステージを有し、8個のCEを含むBenesネットワークを図1Aに示す。ネットワーク100は、8つのCE102を有し、それぞれ2個の入力110及び2個の出力104を有する。複数のCEは、より多くの入力及び出力ワイヤを加えることで単一のCEへと抽象化できる。例えば、CE7及びCE8は、4個の出力を有するブロック112を形成するように結合できる。同様に、CE7及びCE8は、4個の入力を有するブロック114を形成するように結合できる。この抽象化に従って、任意の単一配線Benesネットワークは、図1Bに示すとおり、二重配線Benesネットワークへと変換できる。ネットワーク150では、ステージごとのスイッチの数は、単一配線スイッチの代わりに二重配線スイッチを用いることで、ネットワーク100に比べて半分に低減できる。例えば、図1Aに示したスイッチ116及び118は、両方とも2個の入力及び2個の出力を有する単一配線スイッチである。しかしながら、図1Bの抽象化したスイッチ152は、4個の入力(2ペア)及び4個の出力(2ペア)を有する二重配線スイッチである。異なって構成されているが、ネットワーク100及びネットワーク150の機能は、同一である。4入力のCEは、より一般的にFPGAに適用されるので、以降の本記載は、二重配線スイッチを有する4入力のCEを用いて示される。しかし、本記載が、上記の議論と同様の抽象化技術を用いて、任意の数の入力及び出力を有する様々なCE、並びに任意の数のステージ及び入出力配線を有する様々なスイッチに適用可能であることは、当業者にとっては明白である。例として、5個のステージアートを有し、8個のCEを含むBenesネットワークを図1Cに示す。ネットワーク180は、5個のステージを有し、8個のCEを含み、各CEは、二重配線スイッチに利用する4入力、4出力を有する。
2×2スイッチの3状態を有し、8個のCEを備えるファットツリーネットワークを図2に示す。ネットワーク200は、スイッチの両側に4個の双方向ワイヤを有する2×2スイッチ202を含む。スイッチの両側に4個の双方向ワイヤ204を有するように描いているが、同様に、スイッチの各側に8個の一方向ワイヤ206(4入力、4出力)としても実装できる。
2×2スイッチの4個のステージを有する16個のCEの基数2ファットツリーネットワークを図3に示す。ネットワーク300は、クロス配線を有し、CEと様々なスイッチとの間の距離を計算できる。例えば、(クロス配線302のような)第1のステージのクロス配線は、Z=1(ステージに対応するZ)として2Z−1である、1の距離を有する。(クロス配線304のような)第2のステージのクロス配線は、Z=2として2Z−1である、2の距離を有する。(クロス配線306のような)第3のステージのクロス配線は、Z=3として2Z−1である、4の距離を有する。(クロス配線308のような)第4のステージのクロス配線は、Z=3として2Z−1である、8の距離を有する。さらに、基数境界は、境界の各クロス配線がファットツリーネットワークを実現する中で横断するように(点線で示すとおりに)定義される。例えば、CEとステージ1との間の配線では、クロス配線302は、基数境界310を横断する。同様に、ステージ1とステージ2との間のデータ送信では、クロス配線304は境界312を横断する。また、ステージ2とステージ3との間では、クロス配線306は、境界314を横断し、ステージ3とステージ4との間では、クロス配線308は、境界316を横断する。
発明の実施形態に従ったネットワークを生成する方法を含む(が、これに限定されない)境界のない階層型ネットワークを実装するためのシステム及び方法を開示する。1つの実施形態では、集積回路の階層型ネットワークは、前記階層型ネットワークが、M個の出力及びN個の入力を有する複数の演算素子と、スイッチのステージとして配置される複数のスイッチと、を備え、前記複数の演算素子は、配線により第1のステージのスイッチに接続され、前記第1のステージの前記スイッチは、配線により前記複数の演算素子と第2のステージのスイッチとに接続され、前記第2のステージの前記スイッチは、配線により前記第1のステージの前記スイッチに接続され、少なくともM+1個の隣接演算素子は、ステージ1のスイッチを通じて少なくとも2つの最近接演算素子に接続でき、全ての演算素子は、前記階層型ネットワーク内の他の全ての演算素子と接続できる。
単一又は二重配線2×2スイッチの3又は5個のステージを有する4又は8個の演算素子(computing elements (CEs))のBenesネットワークを、ブロック図形成において示す。 単一又は二重配線2×2スイッチの3又は5個のステージを有する4又は8個の演算素子(computing elements (CEs))のBenesネットワークを、ブロック図形成において示す。 単一又は二重配線2×2スイッチの3又は5個のステージを有する4又は8個の演算素子(computing elements (CEs))のBenesネットワークを、ブロック図形成において示す。 2×2スイッチの3個のステージを有する8個のCEのBenesネットワークに対するファットツリーネットワークを、ブロック図形成において示す。 2×2スイッチの4個のステージを有する16個のCEの基数2ファットツリーネットワークを、ブロック図形成において示す。 発明の実施形態に従った、基数2ネットワークの基数3の境界のないネットワークアーキテクチャへの例示的な変換を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、基数2ネットワークの基数3の境界のないネットワークアーキテクチャへの例示的な変換を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、基数2ネットワークの基数3の境界のないネットワークアーキテクチャへの例示的な変換を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、基数2ネットワークの基数3の境界のないネットワークアーキテクチャへの例示的な変換を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、基数2ネットワークの基数3の境界のないネットワークアーキテクチャへの例示的な変換を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、基数2ネットワークの基数3の境界のないネットワークアーキテクチャへの例示的な変換を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、基数2ネットワークの基数3の境界のないネットワークアーキテクチャへの例示的な変換を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、基数2ネットワークの基数3の境界のないネットワークアーキテクチャへの例示的な変換を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、境界のない基数3ネットワークの均一分散配線の例示的な実施形態を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、境界のない基数3ネットワークの均一分散配線の例示的な実施形態を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、境界のない基数3ネットワークの均一分散配線の例示的な実施形態を、ブロック図形成において、様々なステージで示す。 発明の実施形態に従った、第3のステージでプルーニングされたスイッチを有する例示的な境界のない基数3ネットワークを、ブロック図形成において示す。特に、この例示的な実施形態では、境界のない基数3ネットワークは、第3のステージと第4のステージとの間で短縮化したワイヤ長を有し、(プルーニングされていないネットワークに対して)50%に低減した第4のステージのスイッチを有する。 発明の実施形態に従った、第4のステージでプルーニングされたスイッチを有する例示的な境界のない基数3ネットワークを、ブロック図形成において示す。 発明の実施形態に従った、第4のステージと第5のステージとの間でワイヤ長が短縮化し、第5のステージのスイッチが50%に低減する、第4のステージでプルーニングされたスイッチを有する例示的な境界のない基数3ネットワークを、ブロック図形成において示す。 4×4スイッチの2個のステージを有する16個のCEの基数4ファットツリーネットワークを、ブロック図形成において示す。 4×4スイッチの2個のステージを有する16個のCEの基数4ファットツリーネットワークを、ブロック図形成において示す。 発明の実施形態に従った、第1のステージの基数5スイッチを使用した16個のCEの例示的な境界のない基数4ファットツリーネットワークを、ブロック図形成において示す。 発明の実施形態に従った、スイッチマトリックスマクロを使用した例示的な異種のマクロベースの設計を、ブロック図形成において示す。 発明の実施形態に従った、スイッチマトリックスマクロを使用した例示的な異種のマクロベースの設計を、ブロック図形成において示す。 発明の実施形態に従った、スイッチマトリックス(switch matrix (SM))マクロの16個のCE接続を表す例示的なFPGA設計を、ブロック図形成において示す。 発明の実施形態に従った、スイッチマトリックス(switch matrix (SM))マクロの16個のCE接続を表す例示的なFPGA設計を、ブロック図形成において示す。 発明の実施形態に従った、3つの主なタイプのCE素子を有する例示的なFPGA設計を、ブロック図形成において示す。 発明の実施形態に従った、3つの主なタイプのCE素子を有する例示的なFPGA設計を、ブロック図形成において示す。 発明の実施形態に従った、4個の階層に分割された例示的な物理設計フローを示す。 発明の実施形態に従った、最上位レベルのCE図及びSM図を有する例示的なFPGA設計を示す。 発明の実施形態に従った、最上位レベルのCE図及びSM図を有する例示的なFPGA設計を示す。 発明の実施形態に従った、FPGA設計の例示的な最上位レベルのインターコネクトアーキテクチャを示す。 発明の実施形態に従った、FPGA設計の例示的な最上位レベルのインターコネクトアーキテクチャを示す。 発明の実施形態に従った、FPGA設計の例示的な最上位レベルのインターコネクトアーキテクチャを示す。 未変換ネットワークの一部を示す。 未変換ネットワークの一部を示す。 未変換ネットワークの一部を示す。 未変換ネットワークの一部を示す。 1つ以上の実施形態に従った、(例えば、ここで記載した技術を用いた変換後の)例示的な境界のない階層型ネットワークを、ブロック図形成において示す。 1つ以上の実施形態に従った、(例えば、ここで記載した技術を用いた変換後の)例示的な境界のない階層型ネットワークを、ブロック図形成において示す。 1つ以上の実施形態に従った、(例えば、ここで記載した技術を用いた変換後の)例示的な境界のない階層型ネットワークを、ブロック図形成において示す。 1つ以上の実施形態に従った、(例えば、ここで記載した技術を用いた変換後の)例示的な境界のない階層型ネットワークを、ブロック図形成において示す。 1つ以上の実施形態に従った、(例えば、ここで記載した技術を用いた変換後の)例示的な境界のない階層型ネットワークを、ブロック図形成において示す。 1つ以上の実施形態に従った、(例えば、ここで記載した技術を用いた変換後の)例示的な境界のない階層型ネットワークを、ブロック図形成において示す。
以下の詳細な説明中では、添付した図面を参照する。これらの図面は、本発明の異なる観点を示し、適切な場合において、参照番号は、所定の参照を行うために利用される。明確に示したもの以外の構造、部品、及び/又は構成要素の様々な組合せが考えられ、これらは本発明の範囲内にあると理解される。
さらに、ここで記載及び図示する多くの発明がある。本発明は、任意の単一の観点やその実施形態にも限定されず、また、そのような観点及び/又は実施形態の任意の組合せ及び/又は置換にも限定されない。さらに、本発明の各観点及び/又はその実施形態は、単独で用いることができ、また、1つ以上の本発明の他の観点及び/又はその実施形態との組合せに用いることもできる。簡潔にするために、ある一定の置換及び組合せは、ここで別々に議論及び/又は図示しない。特に、「例示」としてここで記載する実施形態又は実装は、例えば、他の実施形態又は実装よりも好ましいか有利になるように解釈されるべきではなく、むしろ、少なくとも1つの実施形態は、例えば、本発明の「例示の」実施形態であることを反映又は指し示すものとする。
ここで図面を参照して、発明の実施形態に従ったネットワークを生成する方法を含む(が、これに限定されない)、境界のない階層型ネットワークを実装するためのシステム及び方法を示す。多くの実施形態では、階層型ネットワークは、M個の出力及びN個の入力を有する複数の演算素子(computing elements (CEs))を含み、各CEは、様々なステージに配置されたスイッチを用いてネットワーク内の他のCEと通信できる。いくつかの実施形態では、各CEは、様々なタイプの配線(例えば、単一、二重、一方向、及び/又は双方向)を通じて第1のステージのスイッチに接続される。様々な実施形態では、第1のステージのスイッチは、CE及び第2のステージのスイッチに接続される。第2のステージのスイッチは、第1のステージのスイッチに接続され、多くの場合、第3のステージのスイッチにも接続される。多くの実施形態では、境界のない階層型ネットワークは、少なくともM+1個の隣接CE(adjacent CE)を有し、これらは、ステージ1のスイッチを通じて少なくとも2つの最近接CEに接続可能である。
発明のいくつかの実施形態では、基数3の境界のないアーキテクチャを生成する方法は、階層型ネットワークのステージを選択するステップを含み、選択されたステージの先に存在する少なくとも1つの中央2×2配線トラックを同定するステップを含む。方法は、同定した少なくとも1つの中央2×2配線トラックを、選択されたステージよりも前の配線チャネルに移動させるステップをさらに含む。中央2×2配線トラックの同定及び移動を繰り返すことで、1つ以上のステージは、基数3の境界のないネットワークに変換できる。ある実施形態では、本発明は、上述した変換に起因する不均一分散配線を処理するステップをさらに含む。いくつかの実施形態では、不均一分散配線は、インターコネクト配線を再分配することにより、及び/又は、スイッチの数を低減することにより修正される。以下でさらに議論するように、境界のないスイッチネットワークを創出するための技術は、任意の特定レベルの階層、演算素子の数、又は個々のスイッチ容量に限定されない。
様々な実施形態では、マクロベースの設計実装は、以下に述べる技術を実行するために、FPGAの設計において利用される。多くの実施形態では、FPGA設計は、異種のインターコネクト及び演算素子を考慮してなされる。いくつかの実施形態では、階層型設計フローが利用される。さらなる実施形態では、最上位レベルのインターコネクトアーキテクチャが、設計プロセスにおいて可視化される。上述したとおり、発明の実施形態がFPGA回路素子という面においてよく述べられるが、発明の実施形態は、プロセッサ、ステートマシン、ゲートアレイ、プログラマブルゲートアレイ、及びSOCを含む(が、これに限定されない)、適用可能なロジック及び/又は計算回路素子を用いて解釈することもできる。簡潔にするために、開示する発明の各観点に関して、各ロジック及び/又は計算回路の全てについて別々の議論を行わないが、当業者にとってその応用性は、この開示に基づき明白である。
基数2ネットワークステージの境界のない基数3ネットワークへの変換
一般的に、ネットワークの異なるCEは、インターコネクトネットワークアーキテクチャを用いて、全体の計算、記憶、及び/又は通信機能に寄与する様々な機能を実行する。階層型ネットワークに対しては、互いに通信するために、信号が多くのステージを通過する必要があるので、1つ以上の基数境界を横断するCE同士間のローカル配線は、非効率である。例えば、図3では、CE8及びCE9は、最近接である(互いに隣接して位置する)が、互いに通信するために、信号は、ネットワーク階層の4個のステージを通過する必要がある。以下でさらに議論するように、基数2ネットワークは、ネットワークの各ステージを変換することで、境界のない基数3ネットワークに変換できる。同様に、より高次の基数ネットワークも、境界のない基数ネットワークに変換できる。基数ネットワークの1つ以上のステージを、境界のない基数ネットワーク及び境界のない基数ネットワーク実装の1つ以上のステージに生成又は変換するための、発明の様々な実施形態に従ったプロセスを、以下でさらに議論する。
バタフライ構造の同形変換による16個のCEのファットツリーネットワークを図4A及び4Bに示す。ネットワーク400は、16個のCEを有する。デモンストレーションのために、スイッチ401のCE13−16及びそれらの最初の2個のステージを、図4Bで明らかにして示す。CE15及び16について、クロス配線402、403、404、405の組は、1の距離を有するステージ1のスイッチ406、407を用いて、CE15とCE16との間の接続をもたらす。多くの実施形態では、そのようなクロス配線接続は、2個のスイッチ又はCEをつなぐ1組のワイヤ及びすぐ隣のステージのスイッチ又はCEを有する特定のステージのスイッチとして定義される。クロス配線の同様の組が、スイッチ408、409を用いて、CE13と14との間の接続に対して存在する(図示した例では、CEとステージ1のスイッチとの間の全てのクロス配線接続は、1の距離を有する)。しかしながら、クロス配線接続が、CEとスイッチ(又は、1つのステージのスイッチとすぐ隣のステージのスイッチ)との間で存在しないとき、いわゆる「ギャップ」が現れる。例えば、ギャップ410は、CE14及びCE15とスイッチ409、406との間に現れる。言い換えると、ギャップは、1組のスイッチの間又は1組のCE及びスイッチの間のクロス配線接続の欠如として定義される。ギャップの他の例を、参照411及び412によって指し示す。
多くの実施形態では、境界のない基数3変換は、より上位の階層(上流、すなわち、より後のステージ)から利用可能なクロス配線をサーチして、より下位の階層(下流)にこれらを移動させることで、より下位の階層でギャップを埋める。様々な実施形態では、410のようなギャップで始めて、サーチは上流に導かれ、適切な距離を有する1組のクロス配線(この例では、既存のステージ1のクロス配線は距離1を有するので、距離は1である)を見出す。そのようなクロス配線は上流にあり、ステージ1のスイッチ409、406及びステージ2のスイッチ413、418を接続する414、415、416、及び417(まとめて、「ネット」)として同定される。同定されたクロス配線は、下流にあるより下位の階層に対する距離基準を満たす、1の距離を有する。多くの実施形態では、これらのネットは、移動に備えるために現在のスイッチから切り離される。CEとステージ1との間のギャップを埋めるための距離基準を満たす他のクロス配線が、(図4A及び4Bに破線の円で印すとおり)同定される。そのようなクロス配線も、現在のスイッチから切り離され、より下位の階層に移動する。多くの実施形態では、クロス配線は、ステージ2と3との間のような他の階層に由来し、ギャップ412を埋めるために使用する419、420、421、及び422によって印される。基準を満たす他の組のクロス配線は、ステージ3と4との間に見出され、ギャップ411を埋めるために使用する423、424、425、及び426によって印される。多くの実施形態では、第1のステージ後の配線チャネルに対する中央2×2配線トラック(最短の配線トラック)は、下流に移動するために(図4A及び4Bに破線の円で示すとおり)同定される。
第1のステージを基数3の境界のないネットワークに変換するために、同定した中央2×2配線トラックを第1のステージ下の配線チャネルに移動させた後の、発明の実施形態に従ったファットツリーネットワークを図4Cに示す。多くの実施形態では、1のインターコネクト長を有する2×2配線トラックが同定される。図4Dの挿入図427に示すとおり、2×2クロス配線414、415、416、及び417は切り離され、前の位置から移動し、CE14、15がスイッチ409、406と接続するように再結合し、ギャップ410を埋める。同様に、2×2クロス配線419、420、421、及び422は切り離され、前の位置から移動し、ギャップ412を埋めるように再結合する。また、2×2クロス配線423、424、425、及び426は切り離され、前の位置から移動し、ギャップ411を埋めるように移動及び再結合する。
第2のステージと第3のステージとの間、及び、第3のステージと第4のステージとの間で同定される中央2×2配線トラックを有する、発明の実施形態に従ったファットツリーネットワークを図4Eに示す。上述したとおりにクロス配線を移動した後、ステージ1とステージ2との間に残存するクロス配線430、431、432、及び433は3の距離を有する。多くの実施形態では、3の距離を有するクロス配線は、(図4Eに破線の円で示すとおり)同定され、切り離されて下流に移動する。そのようなクロス配線は、444、445、446、及び447によって符号を付したとおり、ステージ2と3との間から由来し、また、448、449、450、及び451によって符号を付したとおり、さらなる上流から由来する。
第2のステージを基数3の境界のないネットワークに変換するために、同定した中央2×2配線トラックを第1のステージと第2のステージとの間の配線チャネルに移動させた後の、発明の実施形態に従ったファットツリーネットワークを図4Fに示す。いくつかの実施形態では、3のインターコネクト長を有する2×2配線トラックが、上述のとおり、同定される。2×2クロス配線444、445、446、及び447は、切り離され、(前の位置から移動し、)ギャップ452を埋めるよう再結合する。同様に、2×2クロス配線448、449、450、及び451は、切り離され、(前の位置から移動し、)ギャップ453を埋めるよう再結合する。
第3のステージと第4のステージとの間で同定される中央2×2配線トラックを有する、発明の実施形態に従ったファットツリーネットワークを図4Gに示す。多くの実施形態では、ステージ2とステージ3との間のクロス配線は、符号460、461、462、及び463によって同定されるとおり、5の距離を有するか、または、符号464、465、466、及び467によって同定されるとおり、7の距離を有する。いくつかの実施形態では、(円で示す)5及び7の距離を有するクロス配線は、上流で同定され、切り離されて下流に移動する。図示したとおり、5の距離を有するクロス配線は、上流で468、469、470、及び471を有する。7の距離を有するクロス配線は、472、473、474、及び475を有する。
第3のステージを基数3の境界のないネットワークに変換するために、同定した中央2×2配線トラックを第2のステージと第3のステージとの間の配線チャネルに移動させた後の、発明の実施形態に従ったファットツリーネットワークを図4Hに示す。2×2クロス配線468、469、470、471、472、473、474、及び475は、上述したとおり、切り離され、前の位置から移動し、ギャップ476を埋めるよう再結合する。
基数2ネットワークの境界のない基数3ネットワークへの所定の変換について、図4A−Hで上述したが、段階を踏んだ上述の変換は、最上位の任意の階層に続く。あるいは、変換は、任意の階層で停止し、従来の基数2ネットワークとして残存するより上位の階層を保持する。さらに、図4A−Hは、基数3の境界のないアーキテクチャへの変換を示すが、同様の技術は、任意の数のCEに関して、より高次の基数に対し用いることができる。基数6アーキテクチャは、基数4ネットワークへの拡張として使用され、基数12アーキテクチャは、基数8ネットワークへの拡張として使用される、などである。さらに、チャネルごとの配線の所定数(すなわち、2×2配線トラック)について、図4A−Hで上述したが、所定の応用の要求に適した、チャネルの配線の任意の組合せを、発明の実施形態に従って利用できる。
上述したとおり、様々な実施形態において、ここで記載した技術は、本発明のスイッチネットワーク又はアーキテクチャを生成するために、ここで記載した1つ以上の機能又は操作を実行、遂行、及び/又は評価するよう(適切にプログラムされた)1つ以上のプロセッサを用いて実装できる。
再分配インターコネクト配線による規則的な配線パターン形成
従来のネットワークを境界のないネットワークに(例えば、基数2を境界のない基数3ネットワークに)変換する時、システム及び/又はネットワークは、不均一分散配線パターンを有する(すなわち、いくつかのスイッチは、他のスイッチよりも多くの配線を接続する必要がある)。第1のステージ上のワイヤが50%にまで低減したので、不均一分散配線が生じる。これらの事情のもと、インターコネクト配線を再分配することで、規則的な(均一分散)配線システムを形成するのが好適である。
発明の実施形態に従った、インターコネクト配線を再分配することで形成した境界のない基数3ネットワークを、図5A−Cに示す。図5Bの挿入図501は、再分配に対して未だ修正していないネットワークのセクションを示す(図4Hも参照のこと)。符号502及び504の基数境界を見ると、境界のないネットワークへの変換は、504のような新たな基数境界を創出する。多くの実施形態では、クロス配線は、(506、508、510、512のように)3の距離を有するが、基数境界を横断するために、2の距離(2Z−1、Zはステージに対応し、ここではZ=2である)のみを必要とする。そのようなクロス配線は、図5Bの挿入図503に示すとおり、2の距離に短縮化される。ここで、クロス配線(「ネット」)518、520、522、及び524(短縮化して、スイッチ514及び516から切り離す前の先の506、508、510、及び512)のクラスタは、スイッチ526及び528に接続され、一方で、他端は、スイッチ530及び532に接続したままである。
挿入図503では、クロス配線は、スイッチ526、528、530、及び532に接続する518、520、522、及び524のようにペアになるが、いくつかのスイッチは、スイッチ514、534と516、536との間のようなギャップを有する。様々な実施形態では、クロス配線ペアは、単一のクロス配線に分けることができ、1つの組の単一のクロス配線は、挿入図505に示すとおり、隣接するネイバリングスイッチに移動する。挿入図505では、(挿入図503の)正式にペアとなるクロス配線518、520、522、及び524は、スイッチ514、534及び516、536を接続するよう、単一のクロス配線(538、540、542、544)に分割でき、クロス配線540及び544は、スイッチ526、528、530、及び532に接続したままである。
いくつかの実施形態では、同様の変換が、他の様々なステージに対して適用できる。図5Cの挿入図507は、未だ修正していないネットワークのセクションを示す(図4Hも参照のこと)。基数境界は、点線550によって符号を付される。この階層に対して、クロス配線の距離は、Z=4である2Z−1により定義されるとおり、8である。この時、ネットは、スイッチ552、554、556、558、560、562、564、及び566から切り離され、8の距離に短縮化され、挿入図509に示すとおり、スイッチ568、570、572、574、576、578、580、及び582に接続される。クロス配線ペアは、単一のクロス配線に分けられ、1つの組のクロス配線は、挿入図511に示すとおり(図5Aも参照のこと)、隣接する組のネイバリングスイッチに移動する。
様々な実施形態では、代替の方法が、クロス配線ペアを分け、そのブランチの1つを移動するように使用される。図5Cの挿入図509に示すとおり、スイッチ590、592、594、及び596は、(データが、他のブランチと同一の方向に進行するような垂直な軸に沿って)水平に配線をミラーリングすることによって移動でき、挿入図513に示すとおり、隣接する組のネイバリングスイッチに移動する。図5Cの挿入図513に示すとおり、多くの実施形態では、そのような方法により、560、562、564、566、576、578、580、及び582のようなスイッチは、任意のクロス配線接続にもはや接続できないので、プルーニングされ、ステージ4及びより高次のステージのスイッチの数を50%に低減する(図7も参照のこと)。
スイッチの数のプルーニングによる規則的な配線パターン形成
上述したとおり、基数2を境界のない基数3ネットワークに変換することで、不均一分散配線を招く。規則的な配線パターンを形成するために、ある階層上で用いられるスイッチの数を低減するためのプルーニングプロセスを実装することが好適である。
第3と第4のステージとの間のインターコネクトに対するワイヤ長を短縮化し、第4のステージのスイッチを50%に低減する、第3のステージでプルーニングされたスイッチを有する、発明の実施形態に従った境界のない基数3ネットワークを図6に示す。多くの実施形態では、第3のステージのスイッチは、ワイヤを二重ワイヤに変えることでプルーニングされ、第3のステージのスイッチの数を半分に低減する。いくつかの実施形態では、残存する第3のステージのスイッチが集中し、第3と第4のステージとの間のワイヤに対するインターコネクト長を短縮化して、第4のステージのスイッチの数を半分に低減する。ネットワーク600は、上述の様々な技術を用いる境界のないネットワークへの変換を示す。ステージ1と2との間のクロス配線ペアは、上述した再分配方法を利用して、単一のクロス配線(例えば、602、604、606、及び608)に分けられる。ステージ2と3との間のクロス配線に対しても、同様の技術が適用できる。さらに、上述したとおりに短縮化する方法は、610、612、614、616、及び618、620、622、624のようなクロス配線ペアに適用でき、ステージ3及びより高次のステージのスイッチの数を50%に低減する。プルー二ングにより、626及び628のようなステージ3と4との間のクロス配線は、基数境界630を横断するよう、4の距離のみを必要とするので、クロス配線は、短縮化され、4の距離で実装される。
発明の実施形態に従った、第4のステージでプルーニングされたスイッチを有する境界のない基数3ネットワークを図7に示す。多くの実施形態では、第4のステージのスイッチは、ワイヤの移動によってプルーニングされ、第4のステージのスイッチの数を半分に低減する。いくつかの実施形態では、第4のステージのスイッチは、ネットワークの半分にあり、より上位の階層のワイヤ長を低減する。ネットワーク700は、上述の様々な技術を用いた、境界のないネットワークへの変換を示す。ステージ1と2との間のクロス配線ペアは、上述した再分配方法を利用して、単一のクロス配線(例えば、702、704、706、及び708)に分けられる。ステージ2と3との間のクロス配線に対しても、同様の技術が適用でき、単一のクロス配線710、712、714、及び716になる。ステージ3と4との間のクロス配線に対して、上述した方法が適用でき、ステージ4及びより高次のステージのスイッチの数を50%に低減する。
第4のステージと第5のステージとの間のインターコネクトに対するワイヤ長を短縮化し、ステージ5のスイッチを50%に低減する、第4のステージでプルーニングされたスイッチを有する、発明の実施形態に従った境界のない基数3ネットワークを図8に示す。多くの実施形態では、16個のCEネットワークは、そのローカルネットワークの半分のみを占有する第4のステージのスイッチを各々有するので、第4と第5のステージとの間のインターコネクトに対するワイヤ長を低減し、ステージ5のスイッチの数を半分に低減する。ネットワーク800では、図7のネットワーク700は、802として抽象化され、804として(水平な軸に沿って)垂直にコピー及びミラーリングされる。構造802及び804は、ステージ4及び5のスイッチ並びに806、808、810、及び812のようなクロス配線ペアを通じて接続される。プルーニングにより、806、808、810、及び812のようなステージ4と5との間のクロス配線は、基数境界814を横断するよう、8の距離をカバーして実装されるので、クロス配線は、8の距離で実装される。
プルーニングによって規則的な配線パターンを形成するための所定の技術について、図5−8で上述したが、インターコネクト配線の再分配及び異なる階層の様々なステージに適用されるスイッチの数のプルーニングを含む、所定の応用の要求に適した任意の様々な技術を、発明の実施形態に従って利用できる。
境界のない基数4ネットワーク
上述したとおり、境界のないネットワークを創出するための技術は、任意の特定レベルの階層、演算素子の数、又は個々のスイッチ容量に限定されない。
4×4スイッチの2個のステージを有する16個のCEの基数4ファットツリーネットワークを図9Aに示す。CE及びスイッチは、ネットワーク900内で明確にするために符号が付されている。同形変換は、CE及びスイッチを並べ替えることで、このネットワーク上で実行できるが、任意のネットを切り離して再結合せず、図9Bに示すとおりの変換となる。ネットワーク920は、900と機能的に同等である。第1のステージの全てのクロス配線は、922、924、及び926の符号をそれぞれ付したとおり、1、2、又は3の距離を有する。他の全ての階層からの、1、2、又は3の距離を有するクロス配線は、クロス配線928、930、932、934、936、938、940、942、944、946、948、及び950のように同定される。この例では、選択されたクロス配線は、1又は3の距離のみを有し、2の距離を有さない。上述した基数2の方法論に従うと、これらのクロス配線は、移動に備えて、現在のスイッチから切り離される。
発明の実施形態に従った、第1のステージの基数5スイッチを用いた16個のCEの境界のない基数4ファットツリーネットワークを図10に示す。いくつかの実施形態では、境界のないネットワーク1000は、1、2、又は3のインターコネクト距離を有する第1のステージと第2のステージとの間のワイヤを同定することによって構築される。多くの実施形態では、同定されたワイヤは、第1のステージを境界のないネットワークに変換するために、第1のステージ下で移動する。上述した基数2の方法論に従うと、例示のクロス配線928、930、932、934、936、938、940、942、944、946、948、及び950は、下流から移動し、CEとステージ1のスイッチとの間を再接続し、図10に示すとおりの境界のない基数4ファットツリーネットワークとなる。
マクロベースの設計実装
マクロベースの設計方法論は、発明の様々な実装に対して採用される。大きなFPGAをより小さく、同等のマクロへと分割することにより、FPGAは、より容易に構築される。しかしながら、最適化されたインターコネクトアーキテクチャは、様々なサイズ及び形状のマクロになるのが典型的である。多くの実施形態では、異種のマクロベースの設計が、実装のために利用される。
発明の実施形態に従った、異種のマクロベースの設計を図11Aに示す。多くの実施形態では、スイッチマトリックスの各「行」は、1つの大きなスイッチマトリックス(switch matrix (SM))マクロとして、まとめてグループ化され、そのような場合において、SMA1102及びSMB1104のような、2つのタイプのより大きなSMマクロが構築される。
発明の実施形態に従った、異種のマクロベースの設計用のSMマクロを図11Bに示す。多くの実施形態では、大きなSMマクロ構造(1102及び1104)は、図の単純化のためにマクロの内部ワイヤリング(1106及び1108)を取り除くように抽象化される。いくつかの実施形態では、入力/出力ワイヤは、マクロに対して示される。
マクロベースの設計実装のための所定の技術について、図11A−Bで上述したが、所定の応用の要求に適した、マクロベースの設計実装のための任意の様々な技術を、発明の実施形態に従って利用できる。
異種のインターコネクト及び演算素子を有するFPGA設計
FPGAは、異種のインターコネクト及びCEから成り立っている。マクロベースの設計を用いて、複数のSMマクロは、様々なCEをインターコネクトするために利用される。
発明の実施形態に従った、1つのSMマクロによって各々表わされる16個のCE接続を示すFPGA設計を図12Aに示す。
発明の実施形態に従った、様々な入力/出力接続を必要とする異種のCEを表すFPGA設計を図12Bに示す。多くの実施形態では、インターコネクトアーキテクチャは、CEの内部構造に依存しないので、FPGA設計は、典型的には、CEからSMまでのIOの数に整合することのみを必要とする。いくつかの実施形態では、CE及びSM設計の非干渉化は、より簡易な統合を可能にする。
異種のインターコネクト及びCEを有するFPGA設計のための所定の技術について、図12A−Bで上述したが、任意の大きな数のCEを有するシステムを含んだ、所定の応用の要求に適した、異種のインターコネクト及びCEを有するFPGA設計のための任意の様々な技術を、発明の実施形態に従って利用できる。
FPGA設計の演算素子考察
FPGAは、様々なタイプ及び数のCEを有する。多くの実施形態では、FPGA設計は、4つの主なタイプのCEを有する。すなわち、高密度の再構成可能なロジックブロック(スライス(Slice)L)、シフトレジスタ及び分散メモリを有する高密度の再構成可能なロジックブロック(スライスM)、乗法のための高性能なデジタル信号プロセッサ(digital signal processor (DSP))及び他のデジタル信号操作(スライスDSP)、並びに読み出し・書き込みアクセス用の1つ以上のポートを含み、再構成可能であるとは限らないブロックメモリ(スライスBRAM)である。
SMマクロが、より大きなマクロを形成するためにCEと統合される、発明の実施形態に従ったFPGA設計を図13Aに示す。様々な実施形態では、I/Oの数により、スライスL1302は、6個のSMマクロを使用し、一方で、スライスM1304は、7個のSMマクロを使用する。スライスDSPは、大きな数のI/Oで大型となり、多くの実施形態では、スライスDSP1306は、11×3SMアレイのような33個のSMマクロを使用して実装され、スライスDSPコアの上下に分割される。
発明の実施形態に従った、スライスBRAMのFPGA設計を図13Bに示す。いくつかの実施形態では、各SMマクロは、手動で設計される。多くの実施形態では、スライスBRAM1308は、9×4アレイのような36個のSMマクロを使用する。様々な実施形態では、36KbBRAMは、約8個のSMマクロの幅を有し、BRAMは、2BRAMのIP及び9×8アレイのような72個のSMを用いて、二重BRAMマクロ1310として統合される。
CEの考察においてFPGA設計のための所定の技術について、図13A−Bで上述したが、所定の応用の要求に適した、FPGA設計のための任意の様々な技術を、発明の実施形態に従って利用できる。さらに、発明の実施形態に従った、任意の大きな数のCEを有するインターコネクトアーキテクチャにおいて、同様の技術を利用できる。
階層型設計フローを用いたFPGA設計の実装
設計フローは、集積回路の設計を実装する時に役立つ。発明の実施形態に従った物理設計フローを図14に示す。多くの実施形態では、物理設計フローは、4個の階層に分割できる。第1の階層1402では、SMマクロは、手動で設計される。第2の階層では、SMマクロは、CEと統合され、コンフィギュラブルロジックブロック(Configurable Logic Block (CLB))として参照できる1つの大きなマクロ1404になる。第3の階層では、異種のCLBは、タイル1406に統合される。第4の階層では、9個のタイルが、最上位レベルのチップ1408に統合される。
階層型設計フローを用いたFPGA設計の実装のための所定の技術について、図14で上述したが、所定の応用の要求に適した、FPGA設計を実装するための任意の様々な技術を、発明の実施形態に従って利用できる。
FPGA設計における最上位レベルのインターコネクトアーキテクチャ
典型的には、FPGAは、異種のSMマクロとの異種のCEの統合である。発明の実施形態に従ったFPGA設計の最上位レベルのCE図を図15Aに示す。多くの実施形態では、チップ1500は、9個の長方形タイルに分割でき、8個のタイルは、スライスL、M、DSP、及びBRAMの組合せを含み、1つのタイルは、(64−8kFFT及び16−coreUDSPとしてここで示した)所定のCE1502を含む。
発明の実施形態に従ったFPGA設計の最上位レベルのSM図を図15Bに示す。ここで、レベル14の1502、レベル13の1504、レベル12の1506、レベル11の1508、及びレベル10の1510のように、(14個のうちの)上位5個のインターコネクト階層のみを、簡素化のために示す。
発明の実施形態に従ったFPGA設計の最上位レベルのインターコネクトアーキテクチャを図16A−Cに示す。多くの実施形態では、図16Aに示すとおり、最上位レベルのインターコネクトアーキテクチャ1600は、20480個のSMマクロ1600を有し、7個の異種設計に分割され、(各ボックス1602によって示すとおりに)さらに分けられる。図16Bに示すとおり、異種設計1602は、512個のより小さなSMマクロ1606を有し、各SMマクロは、様々なCEをさらに有する。1つの可能なSMマクロの例を図16Cに1606で示す。
FPGA設計において最上位レベルのインターコネクトアーキテクチャを用いるための所定の技術について、図15A−B及び16で上述したが、所定の応用の要求に適した、FPGA設計における最上位レベルのインターコネクトアーキテクチャを用いるための任意の様々な技術を、発明の実施形態に従って利用できる。
境界のない階層型ネットワークの特性
境界のない階層型ネットワークは、M個の出力及びN個の入力を有する複数のCEを含み、各CEは、先に上述したとおりの変換に基づきステージに配置したスイッチを用いて、他のCEと通信できる。多くの実施形態では、多くの異なる方法で、境界のない階層型ネットワークにたどり着ける。さらに、CEについて、(特異な構成要素として)従来の意味で上述したが、様々な実施形態では、CE自身が、境界のないネットワークとなることが可能である。
発明の実施形態に従った未変換ネットワークを図17A−Cに示す。図17Aでは、ネットワーク1700は、1組のステージ1のスイッチ用いてデータを転送するための双方向ワイヤを利用した(代わりに、一方向ワイヤも利用できる)6個のCEを有する。多くの実施形態では、CE及びスイッチは、M個の出力及びN個の入力を有する。例えば、ネットワーク1700では、各CEは、(CE1に対して1701、1702で同定される)2個の出力(M=2)を有し、データを上流に送信する(各ステージの1つのスイッチは、2個の入力を有し、CEから送信されたデータを受信する)。同様に、ネットワーク1700では、各CEは、(CE1に対して1703及び1704で同定される)2個の入力(N=2)を有し、下流に向かって、ステージ1のスイッチからのデータを受信する。さらに、ネットワーク1700の各CEは、ブランチごとに特定の数の配線(W)を有するように記述でき、ブランチごとの配線の数は、出力又は入力の定義に影響しない。発明の実施形態に従った、ブランチごとに2個の配線(W=2)を有するネットワークの例を図17Bに示す。ネットワーク1710は、各ブランチ(1711、1712、1713、及び1714)が2つの配線(すなわち、二重ワイヤ)を有するように構築される。多くの実施形態では、各ブランチは、異なる値のWを有する。配線の数は、ここでは2であるが、1701の各CEは、2個の出力(M=2)及び2個の入力(N=2)をなおも有する。ブランチごとに1個の配線(W=1)を有するが、1個の出力ブランチ(M=1)及び2個の入力ブランチ(N=2)のみを有する、発明の実施形態に従ったネットワークの例を、ネットワーク1720として図17Cに示す。ブランチごとに1個の配線(W=1)を有するが、4個の出力ブランチ(M=4)及び4個の入力ブランチ(N=4)を有する、発明の実施形態に従ったネットワークの例を、ネットワーク1730として図17Dに示す。
いくつかの実施形態では、ボックスは、M+1個のCE(及びM+1個の対応するスイッチ)のサイズを有するように定義される。未変換ネットワークでは、サイズM+1個の任意のボックスは、ステージ1のスイッチを使用して互いに直接通信できない、少なくとも2つの最近接CE(直接隣接するCE)を有する。例えば、1700ネットワークでは、ボックス1705は、CE1、CE2、及びCE3を有するように描かれ、CE2の1706及びCE3の1707は、ステージ1のスイッチを使用して互いに直接通信できない。同様に、ネットワーク1710では、ボックス1715は、CE2、3、及び4を有し、CE2の1716は、ステージ1のスイッチを使用してCE3の1717と直接通信できない。さらなる例は、ネットワーク1720を有し、ボックス1721は、CE3、4、及び5を有し、CE4の1722は、ステージ1のスイッチを使用してCE5の1723と直接通信できない。さらに、ネットワーク1730は、CE1、2、3、4、及び5を有するボックス1731を定義でき、CE4の1732及びCE5の1733は、ステージ1のスイッチを使用して互いに直接通信できない。
それに対して、上述したとおりの変換方法を利用した境界のないネットワークでは、ボックスは、ボックスの各CEがステージの1つのスイッチを通じて最近接CEと通信できるように定義される。発明の実施形態に従った、境界のないネットワークを図18A−Dに示す。多くの実施形態では、様々なCEは、1つ以上の変換により付加的な入力及び/又は出力を有する。他のCE、特に、(ネットワーク1840の)1841及び1842、(ネットワーク1850の)1851及び1852、(ネットワーク1860の)1861及び1862、(ネットワーク1870の)1876、1877、1878、及び1879のようなネットワークの端付近のCEは、同数の入力及び出力を維持する(すなわち、ブランチは追加されない)のが典型的である。上述したとおり、変換したネットワークは、ボックスの定義を可能とし、ボックスの全てのCEは、ステージの1つのスイッチを通じて任意の最近接CEと通信できる。例えば、ネットワーク1840では、ボックス1843は、CE1、2、3、及び4を有し、各CEは、ステージ1のスイッチを通じて最近接CEと直接通信できる。同様に、ネットワーク1850では、ボックス1853は、CE2、3、4、及び5を有し、各CEは、ステージ1のスイッチを通じて最近接CEと直接通信できる。また、ネットワーク1860では、ボックス1863は、CE3、4、5、及び6を有するよう定義され、各CEは、ステージ1のスイッチを通じて最近接CEと直接通信できる。さらに、ネットワーク1870では、ボックス1871は、CE1、2、3、4、5、及び6を有するよう定義され、各CEは、ステージ1のスイッチを通じて最近接CEと通信できる。
さらに、入力及び/又は出力が3個よりも大きい(ネットワーク1870のような)ネットワークでは、いくつかのネット(1872、1873)は必須であり、これによってCE4及びCE5を5個の入力を有するように変換する。しかし、1874及び1875のようないくつかのネットは任意であり、5個の入力及び出力に変換する選択肢をCE3及びCE6に与える。
多くの実施形態では、同一のネットワークは、他の全ての階層型ステージに適用できる。図19A−Bは、ステージ1とステージ2との間の階層型ネットワークの一部を示す。従来の未変換ネットワークは、1980の符号を付して、左に示され、各ステージの1つのスイッチは、2個の出力(M=2)及び2個の入力(N=2)を有し、二重ワイヤ(W=2)を使用する。変換ネットワークは、1990の符号を付して、右に示される。この図では、ステージ1及びステージ2のスイッチを同一のSMマクロ内で直接接続する、1991の符号を付したローカル配線は二重ワイヤ(W=2)を有し、一方で、ステージ2のスイッチに同一のSMマクロ外で接続する、1992及び1993の符号を付したブランチは単一ワイヤ(W=1)を有する。このアプローチにより、ワイヤ総数を増大させずに、スイッチの基数Rが増大する(Rは、N又はMのうち大きい方であり、この例では、Rは、2から3に増大する)。境界のない階層型ネットワークの所定の特性について、図17−19Bで上述したが、境界のない階層型ネットワークの任意の様々な特性は、発明の実施形態に従って、所定の応用の要求に適したとおりに定義できる。
さらに、ここで記載及び/又は図示した独創的なネットワーク又はアーキテクチャを生成及び/又はインスタンス生成するために用いるスイッチ及びマルチプレクサは、現在知られているか、今後開発される任意のタイプのスイッチ及びマルチプレクサを用いて実装される。例えば、1つの実施形態では、従来タイプのスイッチ及びマルチプレクサは、独創的なネットワーク又はアーキテクチャを実装するために用いられる。他の実施形態では、参照によってここで全体に盛り込まれる、2013年3月15日に出願した、「FPGAインターコネクトにおける細粒度型パワーゲーティング」というタイトルの米国特許仮出願シリアル番号61/791,243に記載及び図示された1つ以上のスイッチ及びマルチプレクサを用いる。例えば、1つの実施形態では、ここで記載及び/又は図示した独創的なネットワーク又はアーキテクチャは、独創的なネットワーク又はアーキテクチャを形成するために、米国特許仮出願番号61/791,243(243米国特許仮出願)に記載及び図示された1つ以上の独創的なスイッチ及びマルチプレクサ(そのようなスイッチ及びマルチプレクサと一体となった制御信号及びバッファを含む)を有する。特に、243米国特許仮出願で記載及び図示されたスイッチ及びマルチプレクサの全ての置換及び組合せは、ネットワーク又はアーキテクチャを生成及びインスタンス生成するために用いられる。すなわち、ここで図示したスイッチ及びマルチプレクサブロックは、従来のスイッチ及びマルチプレクサ、並びに/又は、243米国特許仮出願に記載及び図示された独創的なスイッチ及びマルチプレクサ、並びに/又は、未だ開発されていないスイッチ及びマルチプレクサの代表であり、そのような全ての組合せは、本発明の範囲内にあるものとする。
上述したとおり、ここで記載した技術は、本発明のスイッチネットワーク又はアーキテクチャを生成するために、ここで記載した1つ以上の機能又は操作を実行、遂行、及び/又は評価するよう(適切にプログラムされた)1つ以上のプロセッサを用いて実装できる。
特に、ここで開示した様々な回路及び回路素子は、コンピュータ支援設計ツールを用いて記述でき、例えば、動作、レジスタ転送、ロジック部品、トランジスタ、レイアウトジオメトリ、及び/又は他の特徴に関する、様々なコンピュータ可読媒体で具現化されるデータ及び/又は命令として表現される(又は、代表される)点にさらに注意すべきである。そのような回路表現が実装されるファイルと他のオブジェクトのフォーマットは、C、ヴェリログ、及びHLDLのような動作言語をサポートするフォーマット、RTLのようなレジスタレベルの記述言語をサポートするフォーマット、並びにGDSII、GDSIII、GDSIV、CIF、MEBES及び任意の他の適切なフォーマットと言語のようなジオメトリ記述言語をサポートするフォーマットを含むが、これに限定されない。そのようにフォーマットされたデータ及び/又は命令が具現化されるコンピュータ可読媒体は、様々な形態(例えば、光学、磁気、又は半導体ストレージ媒体)の不揮発性ストレージ媒体、及び、そのようにフォーマットされたデータ及び/又は命令を、無線、光学、若しくは有線信号送信媒体、又はこれらの任意の組合せを通じて転送するために用いる搬送波を含むが、これに限定されない。そのようにフォーマットされたデータ及び/又は命令の搬送波による転送例は、1つ以上のデータ転送プロトコル(例えば、HTTP、FTP、SMTP、など)による、インターネット及び/又は他のコンピュータネットワークにわたった転送(アップロード、ダウンロード、Eメール、など)を含むが、これに限定されない。本発明は、ここで述べた回路素子の表現、及び/又はこれにより実装される技術も対象とし、これ自体、本発明の範囲内にあるものとする。
実際、1つ以上のコンピュータ可読媒体によるコンピュータシステム内で受信するとき、上記の回路のそのようなデータ及び/又は命令に基づく表現は、ネットリスト生成プログラム、配置配線プログラムなどを限度なく含む、1つ以上の他のコンピュータプログラムの実行と合わせて、コンピュータシステム内で処理エンティティ(例えば、1つ以上のプロセッサ)により処理され、そのような回路の物理的発現の表現又はイメージを生成する。その後で、そのような表現又はイメージは、例えば、デバイス製造工程で回路の様々な部品を形成するために使用する1つ以上のマスクの生成を可能とすることにより、デバイス製造に使用される。
さらに、ここで開示した様々な回路及び回路素子、並びに技術は、コンピュータ支援設計、シミュレーション、及び/又はテストツールを用いて、シミュレーション及び命令に基づくシミュレーション表現により表される。ここで実装した独創的なプロセス又は技術を含み、及び/又は、そのような独創的なネットワーク又はアーキテクチャ並びにロジック及び/又は計算回路素子による、ロジック及び/又は計算回路素子のための独創的なネットワークのシミュレーションは、コンピュータシステムによって実行され、そのような回路素子の特徴及び操作、並びにこれによって実装される技術が、コンピュータシステムによりシミュレーション、模倣、複製、分析、及び/又は予測される。本発明は、独創的なネットワークのそのようなシミュレーション及びテスト、並びに/又は、ロジック及び/又は計算回路素子のためのアーキテクチャ、並びに/又は、ここで実装した独創的な技術、並びに/又は、そのようなネットワーク、ロジック回路素子、及び/又は計算回路素子によって実装される技術も対象とし、それ自体、本発明の範囲内にあるものとする。そのようなシミュレーション及び/又はテストツールに対応するコンピュータ可読媒体及びデータもまた、本発明の範囲内にあるものとする。
本発明について、ある所定の観点で述べたが、多くの付加的な修正及びバリエーションは、当業者にとっては明白であろう。従って、本発明は、本発明の範囲及び精神から離れることなく明確に記載される場合を除いても、実施可能であると理解すべきである。従って、本発明の実施形態は、全ての点において、例示的であり、限定的ではないと考えるべきである。すなわち、発明の範囲は、例示した実施形態によってではなく、添付した請求項及びその同等物によって決定されるべきである。
特に、請求項において、「集積回路」という言葉は、プロセッサ、ステートマシン、ゲートアレイ、プログラマブルゲートアレイ、フィールドプログラマブルゲートアレイ、及びシステムオンチップを含む(が、これに限定されない)集積ロジック及び/若しくは計算回路、又は、本発明の1つ以上の階層型ネットワークを用いた任意の他の集積回路、及び/若しくは、本発明の1つ以上の方法に従って設計/製造される任意の他の集積回路を意味する。

Claims (19)

  1. 集積回路の階層型ネットワークであって、前記階層型ネットワークは、
    M個の出力及びN個の入力を有する複数の演算素子と、
    スイッチのステージとして配置される複数のスイッチと、を備え、
    前記複数の演算素子は、配線により第1のステージのスイッチに接続され、
    前記第1のステージの前記スイッチは、配線により前記複数の演算素子と第2のステージのスイッチとに接続され、前記第2のステージの前記スイッチは、配線により前記第1のステージの前記スイッチに接続され、
    少なくともM+1個の隣接演算素子の各々は、前記第1のステージ1つのスイッチを通じて少なくとも2つの隣接演算素子に直接接続
    全ての演算素子は、前記階層型ネットワーク内の他の全ての演算素子と接続するように構成可能である
    集積回路の階層型ネットワーク。
  2. 複数の演算素子はM個の出力を有し、複数の演算素子はM+1個の出力を有し、前記第1のステージの複数のスイッチはM個の入力を有し、前記第1のステージの複数のスイッチはM+1個の入力を有する、
    請求項1に記載の集積回路のための階層型ネットワーク。
  3. 少なくとも2M−1個の演算素子はM個の出力を有し、前記第1のステージの少なくとも2M−1のスイッチはM個の入力を有する、
    請求項2に記載の集積回路のための階層型ネットワーク。
  4. M−1個の演算素子はM個の出力を有し、残りの前記演算素子はM+1個の出力を有する、
    請求項3に記載の集積回路のための階層型ネットワーク。
  5. 前記第1のステージの少なくとも2M−1のスイッチはM−1個の出力を有し、前記第2のステージの少なくとも2M−1のスイッチはM−1個の入力を有する、
    請求項2に記載の集積回路のための階層型ネットワーク。
  6. 前記第2のステージの少なくとも2のスイッチはM−1個の出力を有し、第3のステージののスイッチはM−1個の入力を有する、
    請求項2に記載の集積回路のための階層型ネットワーク。
  7. 前記第2のステージののスイッチはM−1個の出力を有し、前記第2のステージの残りのスイッチはM個の出力を有する、
    請求項に記載の集積回路のための階層型ネットワーク。
  8. 前記配線は、双方向二重配線である、
    請求項1に記載の集積回路のための階層型ネットワーク。
  9. 集積回路の階層型ネットワークであって、前記階層型ネットワークは、
    少なくともM個の出力及びN個の入力を有する複数の演算素子と、
    スイッチのステージとして配置される複数のスイッチと、を備え、
    前記複数の演算素子は、配線により第1のステージのスイッチに接続され、
    前記第1のステージの前記スイッチは、配線により前記複数の演算素子と第2のステージのスイッチとに接続され、前記第2のステージの前記スイッチは、配線により前記第1のステージの前記スイッチに接続され、
    複数の演算素子はM個の出力を有し、複数の演算素子はM+1個の出力を有し、前記第1のステージの複数のスイッチはM個の入力を有し、前記第1のステージの複数のスイッチはM+1個の入力を有し、
    全ての演算素子は、前記階層型ネットワーク内の他の全ての演算素子と接続するように構成可能である
    集積回路の階層型ネットワーク。
  10. 集積回路のための階層型ネットワークの演算素子間でデータを送信するための方法であって、前記方法は、
    前記階層型ネットワーク内で、演算素子から第1のステージのスイッチにデータを送信するステップを含み、前記階層型ネットワークは、
    M個の出力及びN個の入力を有する複数の演算素子と、
    スイッチのステージとして配置される複数のスイッチと、を有し、
    前記複数の演算素子は、配線により前記第1のステージのスイッチに接続され、
    前記第1のステージの前記スイッチは、配線により前記複数の演算素子と第2のステージのスイッチとに接続され、前記第2のステージの前記スイッチは、配線により前記第1のステージの前記スイッチに接続され、
    前記第1のステージのスイッチから他の演算素子にデータを送信し、少なくともM+1個の隣接演算素子の各々は、前記第1のステージの1つのスイッチを通じて少なくとも2つの隣接演算素子にデータを送信するように構成可能である
    集積回路のための階層型ネットワークの演算素子間でデータを送信するための方法。
  11. 複数の演算素子はM個の出力を有し、複数の演算素子はM+1個の出力を有し、前記第1のステージの複数のスイッチはM個の入力を有し、前記第1のステージの複数のスイッチはM+1個の入力を有する、
    請求項10に記載の方法。
  12. 少なくとも2M−1個の演算素子はM個の出力を有し、前記第1のステージの少なくとも2M−1のスイッチはM個の入力を有する、
    請求項11に記載の方法。
  13. M−1個の演算素子はM個の出力を有し、残りの前記演算素子はM+1個の出力を有する、
    請求項12に記載の方法。
  14. 前記第1のステージの少なくとも2M−1のスイッチはM−1個の出力を有し、前記第2のステージの少なくとも2M−1のスイッチはM−1個の入力を有する、
    請求項11に記載の方法。
  15. 前記第2のステージの少なくとも2のスイッチはM−1個の出力を有し、第3のステージののスイッチはM−1個の入力を有する、
    請求項11に記載の方法。
  16. 前記第2のステージののスイッチはM−1個の出力を有し、前記第2のステージの残りのスイッチはM個の出力を有する、
    請求項15に記載の方法。
  17. 前記配線は、双方向二重配線である、
    請求項10に記載の方法。
  18. 集積回路の階層型ネットワークであって、前記階層型ネットワークは、
    M個の出力及びN個の入力を有する複数の演算素子と、
    スイッチのステージとして配置される複数のスイッチと、を備え、
    前記複数の演算素子は、配線により第1のステージのスイッチに接続され、
    前記第1のステージの前記スイッチは、配線により前記複数の演算素子と第2のステージのスイッチとに接続され、前記第2のステージの前記スイッチは、配線により前記第1のステージの前記スイッチに接続され、
    M−1個の演算素子はM個の出力を有し、残りの前記演算素子はM+1個の出力を有し、前記第1のステージのM−1のスイッチはM個の入力を有し、残りの前記スイッチはM+1個の入力を有し、
    前記第1のステージのM−1のスイッチはM−1個の出力を有し、前記第1のステージの残りのスイッチはM個の出力を有し、前記第2のステージのM−1のスイッチはM−1個の入力を有し、前記第2のステージの残りのスイッチはM個の入力を有し、
    前記第2のステージののスイッチはM−1個の出力を有し、前記第2のステージの残りのスイッチはM個の出力を有し、
    全ての演算素子は、前記階層型ネットワーク内の他の全ての演算素子と接続するように構成可能である
    集積回路の階層型ネットワーク。
  19. M個の出力及びN個の入力を有する複数の演算素子と、
    スイッチのステージとして配置される複数のスイッチと、を備え、
    前記複数の演算素子は、配線により第1のステージのスイッチに接続され、
    前記第1のステージの前記スイッチは、配線により前記複数の演算素子と第2のステージのスイッチとに接続され、前記第2のステージの前記スイッチは、配線により前記第1のステージの前記スイッチに接続され、
    少なくともM+1個の隣接演算素子の各々は、前記第1のステージの1つのスイッチを通じて少なくとも2つの隣接演算素子に直接接続
    全ての演算素子は、フィールドプログラマブルゲートアレイ内の他の全ての演算素子と接続するように構成可能である
    フィールドプログラマブルゲートアレイ。
JP2016503086A 2013-03-15 2014-03-14 境界のない階層型インターコネクトのためのネットワークアーキテクチャ Active JP6518648B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361786676P 2013-03-15 2013-03-15
US61/786,676 2013-03-15
PCT/US2014/029407 WO2014144832A1 (en) 2013-03-15 2014-03-14 Network architectures for boundary-less hierarchical interconnects

Publications (2)

Publication Number Publication Date
JP2016512418A JP2016512418A (ja) 2016-04-25
JP6518648B2 true JP6518648B2 (ja) 2019-05-22

Family

ID=51537811

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016503086A Active JP6518648B2 (ja) 2013-03-15 2014-03-14 境界のない階層型インターコネクトのためのネットワークアーキテクチャ

Country Status (6)

Country Link
US (1) US9817933B2 (ja)
EP (2) EP3480956B1 (ja)
JP (1) JP6518648B2 (ja)
KR (1) KR20150132246A (ja)
CN (1) CN105191140B (ja)
WO (1) WO2014144832A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105191140B (zh) 2013-03-15 2018-11-30 加利福尼亚大学董事会 无边界分级互连的网络架构
CN104904176B (zh) * 2013-11-08 2017-12-29 华为技术有限公司 数据分发方法和数据聚合方法及相关装置
EP3975429A1 (en) * 2015-02-22 2022-03-30 Flex Logix Technologies, Inc. Mixed-radix and/or mixed-mode switch matrix architecture and integrated circuit
CN104865732A (zh) * 2015-05-28 2015-08-26 京东方科技集团股份有限公司 彩膜基板及其制造方法、显示装置
US11178072B2 (en) * 2015-06-10 2021-11-16 Mobileye Vision Technologies Ltd. Image processor and methods for processing an image
WO2018053527A1 (en) * 2016-09-19 2018-03-22 The Regents Of The University Of California Selector switch
US10333508B2 (en) 2017-03-29 2019-06-25 International Business Machines Corporation Cross bar switch structure for highly congested environments
US10169511B2 (en) * 2017-03-29 2019-01-01 International Business Machines Corporation Method to synthesize a cross bar switch in a highly congested environment
WO2019116106A2 (en) * 2017-12-14 2019-06-20 Mobileye Vision Technologies Ltd. Image processor and methods for processing an image
US11632330B2 (en) 2018-01-31 2023-04-18 The Regents Of The University Of California Optimizing connectivity in reconfigurable networks
CN111124967A (zh) * 2019-11-20 2020-05-08 安徽中骄智能科技有限公司 基于高通量计算平台的可局部强化互连的扩展系统

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850564A (en) 1995-05-03 1998-12-15 Btr, Inc, Scalable multiple level tab oriented interconnect architecture
JPH09307428A (ja) 1996-05-14 1997-11-28 Hitachi Ltd 可変論理集積回路
US6289494B1 (en) * 1997-11-12 2001-09-11 Quickturn Design Systems, Inc. Optimized emulation and prototyping architecture
US6275064B1 (en) * 1997-12-22 2001-08-14 Vantis Corporation Symmetrical, extended and fast direct connections between variable grain blocks in FPGA integrated circuits
US6307852B1 (en) 1998-04-09 2001-10-23 Nortel Networks Limited Rotator switch data path structures
US6185220B1 (en) 1998-06-15 2001-02-06 Lucent Technologies, Inc. Grid layouts of switching and sorting networks
US7233167B1 (en) * 2000-03-06 2007-06-19 Actel Corporation Block symmetrization in a field programmable gate array
US6697957B1 (en) * 2000-05-11 2004-02-24 Quickturn Design Systems, Inc. Emulation circuit with a hold time algorithm, logic analyzer and shadow memory
US6693456B2 (en) 2000-08-04 2004-02-17 Leopard Logic Inc. Interconnection network for a field programmable gate array
US6868084B2 (en) 2001-09-27 2005-03-15 Teak Networks, Inc Strictly nonblocking multicast multi-stage networks
US20060165085A1 (en) 2001-09-27 2006-07-27 Venkat Konda Rearrangeably nonblocking multicast multi-stage networks
US6885669B2 (en) 2001-09-27 2005-04-26 Teak Networks, Inc. Rearrangeably nonblocking multicast multi-stage networks
US20070124565A1 (en) 2003-06-18 2007-05-31 Ambric, Inc. Reconfigurable processing array having hierarchical communication network
EP1489534A3 (en) * 2003-06-20 2005-08-17 Interuniversitair Microelektronica Centrum Vzw A resource activity aware system for determining a resource interconnection pattern within an essentially digital device
CA2548540A1 (en) 2003-09-06 2006-03-30 Teak Technologies, Inc. Rearrangeably nonblocking multicast multi-stage networks
US20060159078A1 (en) 2003-09-06 2006-07-20 Teak Technologies, Inc. Strictly nonblocking multicast linear-time multi-stage networks
CA2537982A1 (en) 2003-09-06 2005-03-24 Venkat Konda Strictly nonblocking multicast linear-time multi-stage networks
US7424010B2 (en) 2003-09-06 2008-09-09 Teak Technologies, Inc. Strictly nonblocking multicast multi-split linear-time multi-stage networks
US20060268691A1 (en) 2005-05-31 2006-11-30 International Business Machines Corporation Divide and conquer route generation technique for distributed selection of routes within a multi-path network
WO2008109756A1 (en) 2007-03-06 2008-09-12 Venkat Konda Fully connected generalized multi-stage networks
US8170040B2 (en) 2007-05-25 2012-05-01 Konda Technologies Inc. Fully connected generalized butterfly fat tree networks
US8363649B2 (en) 2007-05-25 2013-01-29 Konda Technologies Inc. Fully connected generalized multi-link multi-stage networks
US8269523B2 (en) 2007-05-25 2012-09-18 Konda Technologies Inc. VLSI layouts of fully connected generalized networks
US7924052B1 (en) 2008-01-30 2011-04-12 Actel Corporation Field programmable gate array architecture having Clos network-based input interconnect
CN101404491B (zh) * 2008-05-23 2012-03-28 雅格罗技(北京)科技有限公司 一种具有交叉链接的可编程互连网络的集成电路
US8898611B2 (en) 2009-10-16 2014-11-25 Konda Technologies Inc. VLSI layouts of fully connected generalized and pyramid networks with locality exploitation
US9529958B2 (en) 2014-10-24 2016-12-27 Konda Technologies Inc. VLSI layouts of fully connected generalized and pyramid networks with locality exploitation
US8098081B1 (en) * 2010-06-21 2012-01-17 Xilinx, Inc. Optimization of interconnection networks
US8665727B1 (en) * 2010-06-21 2014-03-04 Xilinx, Inc. Placement and routing for a multiplexer-based interconnection network
US9432298B1 (en) * 2011-12-09 2016-08-30 P4tents1, LLC System, method, and computer program product for improving memory systems
US8868894B2 (en) * 2011-05-06 2014-10-21 Xcelemor, Inc. Computing system with hardware scheduled reconfiguration mechanism and method of operation thereof
EP2708000B1 (en) * 2011-05-08 2020-03-25 The J. Scott Benson Living Trust Flexible radix switching network
US9509634B2 (en) 2013-07-15 2016-11-29 Konda Technologies Inc. Fast scheduling and optmization of multi-stage hierarchical networks
US9374322B2 (en) 2014-03-06 2016-06-21 Konda Technologies Inc. Optimization of multi-stage hierarchical networks for practical routing applications
WO2013036544A1 (en) * 2011-09-07 2013-03-14 Venkat Konda Optimization of multi-stage hierarchical networks for practical routing applications
JP5779053B2 (ja) 2011-09-09 2015-09-16 株式会社Nttドコモ 基地局、ネットワーク装置及び通信制御方法
CN105191140B (zh) 2013-03-15 2018-11-30 加利福尼亚大学董事会 无边界分级互连的网络架构
CN105164921B (zh) * 2013-03-15 2019-12-06 加利福尼亚大学董事会 Fpga互连中的细粒度功率门控
US9077338B1 (en) * 2014-05-20 2015-07-07 Altera Corporation Method and circuit for scalable cross point switching using 3-D die stacking
EP3975429A1 (en) * 2015-02-22 2022-03-30 Flex Logix Technologies, Inc. Mixed-radix and/or mixed-mode switch matrix architecture and integrated circuit

Also Published As

Publication number Publication date
US20160034625A1 (en) 2016-02-04
EP2974025A4 (en) 2017-02-15
EP3480956A3 (en) 2019-08-14
EP2974025A1 (en) 2016-01-20
CN105191140A (zh) 2015-12-23
EP3480956B1 (en) 2021-01-06
EP3480956A2 (en) 2019-05-08
JP2016512418A (ja) 2016-04-25
WO2014144832A1 (en) 2014-09-18
EP2974025B1 (en) 2018-10-31
KR20150132246A (ko) 2015-11-25
CN105191140B (zh) 2018-11-30
US9817933B2 (en) 2017-11-14

Similar Documents

Publication Publication Date Title
JP6518648B2 (ja) 境界のない階層型インターコネクトのためのネットワークアーキテクチャ
US10587269B2 (en) Integrated circuit including an array of logic tiles, each logic tile including a configurable switch interconnect network
US10719651B2 (en) Synthesizing topology for an interconnect network of a system-on-chip with intellectual property blocks
Passas et al. Crossbar NoCs are scalable beyond 100 nodes
KR101058468B1 (ko) 집적 회로용의 재구성 가능한 로직 패브릭과, 재구성 가능한 로직 패브릭을 구성하기 위한 시스템 및 방법
US11916551B2 (en) Process of routing tile-to-tile interconnects of an FPGA, and method of manufacturing an FPGA
Cakir et al. Modeling and design of high-radix on-chip crossbar switches
Turki et al. Signal multiplexing approach to improve inter-FPGA bandwidth of prototyping platform
Zhao et al. An automatic FPGA design and implementation framework
Chen et al. High-level modeling and synthesis for embedded FPGAs
Huang et al. Analysis and evaluation of a hybrid interconnect structure for FPGAs
US20180082720A1 (en) Pipelined interconnect circuitry having reset values holding capabilities
Wang Building efficient, reconfigurable hardware using hierarchical interconnects
JP4867708B2 (ja) 半導体集積回路の設計方法および設計装置
Lee et al. Efficient and low-cost metal revision techniques for post silicon repair
Wang et al. Uniform routing architecture for FPGA with embedded IP cores
Bhatia et al. Simple yet effective replication for FPGA partitioning
Cucchiara et al. Analysis of Design Methodology with Logic Cell Arrays
Prasad et al. VLSI DESIGN PROCESS FOR LOW POWER DESIGN METHODOLOGY USING RECONFIGURABLE FPGA

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180424

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181011

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190422

R150 Certificate of patent or registration of utility model

Ref document number: 6518648

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250