(57)【要約】  3次元(3D)集積回路のための知的財産(IP)ブロック設計方法は、複数のティアを有する3Dブロックになるように1つまたは複数の回路構成要素を有する少なくとも1つの2次元(2D)ブロックを重畳することを備える場合があり、重畳された2Dブロック内の1つまたは複数の回路構成要素は、3Dブロック内の複数のティア間に分布する場合がある。さらに、1つまたは複数のピンは、3Dブロック内の複数のティアにわたって複製される場合があり、1つまたは複数の複製されたピンは、3Dブロック内部に配置された1つまたは複数のブロック内シリコン貫通ビア(TSV)を使用して互いに接続される場合がある。
2018511928.tif 000002
【特許請求の範囲】
【請求項１】
集積回路を設計するための方法であって、
複数のティアを有する3次元(3D)ブロックになるように1つまたは複数の回路構成要素を有する2次元(2D)ブロックを重畳するステップであって、前記重畳された2Dブロック内の前記1つまたは複数の回路構成要素は、前記3Dブロック内の前記複数のティア間に分布する、ステップと、
前記3Dブロック内の前記複数のティアにわたって1つまたは複数のピンを複製するステップと、
前記3Dブロック内部に配置された1つまたは複数のブロック内シリコン貫通ビア(TSV)を使用して前記1つまたは複数の複製されたピンを接続するステップと
を備える、方法。
【請求項２】
1つまたは複数の他のブロックに関連するティア配置に応じて、前記集積回路内の前記1つまたは複数の他のブロックを、前記複製されたピンのうちの1つに接続するステップ
をさらに備える、請求項1に記載の方法。
【請求項３】
前記3Dブロックおよび前記1つまたは複数の他のブロックを、前記集積回路に関連するフルチップデザインに詰め込むように3Dフロアプランニングを実行するステップ
をさらに備える、請求項2に記載の方法。
【請求項４】
前記フルチップデザイン内の総ワイヤ長および専有面積を最小化するために前記3Dブロック内の前記複数のティアにわたって複製するのに前記1つまたは複数のピンを選択するステップ
をさらに備える、請求項3に記載の方法。
【請求項５】
前記1つまたは複数のブロック内TSVが、前記1つまたは複数の複製されたピンの間の垂直接続を提供する、請求項1に記載の方法。
【請求項６】
前記2Dブロックおよび前記3Dブロックが、知的財産(IP)ブロックを備える、請求項1に記載の方法。
【請求項７】
前記3Dブロックになるように前記2Dブロックを重畳するステップが、
前記複数のティアになるように前記2Dブロックを区分化することと、
前記3Dブロック内の前記複数のティア間に前記重畳された2Dブロック内の前記1つまたは複数の回路構成要素を分布させ、かつ前記3Dブロック内の前記複数のティア間に分布する前記1つまたは複数の回路構成要素を相互接続するために、前記2Dブロック内の前記1つまたは複数の回路構成要素に関連する配置およびルーティングを再実装することと
をさらに備える、請求項1に記載の方法。
【請求項８】
前記再実装された配置および前記再実装されたルーティングに応じて前記3Dブロック内の前記複数のティアにわたって利用可能な共有空間を決定するステップと、
前記3Dブロック内の前記複数のティアにわたって利用可能な前記共有空間に応じて前記1つまたは複数の複製されたピンを配置するステップと
をさらに備える、請求項7に記載の方法。
【請求項９】
複数のティアと、
前記複数のティアにわたって分布する1つまたは複数の回路構成要素と、
前記複数のティアにわたって複製される1つまたは複数のピンと
を備える、3次元(3D)知的財産ブロック。
【請求項１０】
前記3D知的財産ブロック内部に配置された1つまたは複数のシリコン貫通ビアであって、前記複数のティアにわたって複製される前記1つまたは複数のピンを接続する、1つまたは複数のシリコン貫通ビア
をさらに備える、請求項9に記載の3D知的財産ブロック。
【請求項１１】
前記1つまたは複数のシリコン貫通ビアが、前記1つまたは複数の複製されたピンの間の垂直接続を提供する、請求項10に記載の3D知的財産ブロック。
【請求項１２】
前記複数のティアにわたって複製される前記1つまたは複数のピンが、前記3D知的財産ブロックを含む3D集積回路内の総ワイヤ長および専有面積を最小化するために選択される、請求項9に記載の3D知的財産ブロック。
【請求項１３】
前記3D知的財産ブロックが、前記3D知的財産ブロック内の前記複数のティア間に前記1つまたは複数の回路構成要素を分布させかつ相互接続するために、前記複数のティアに重畳されかつ再実装された2次元(2D)知的財産ブロックを備える、請求項9に記載の3D知的財産ブロック。
【請求項１４】
前記1つまたは複数の複製されたピンが、前記複数のティアにわたって利用可能な共有空間に応じて前記3D知的財産ブロック内に配置される、請求項9に記載の3D知的財産ブロック。
【請求項１５】
複数のティアにわたって分布する1つまたは複数の回路構成要素と、前記複数のティアにわたって複製される1つまたは複数のピンとを有する少なくとも1つの3Dブロックと、
前記複数のティアのうちの1つの上に配置された少なくとも1つの追加のブロックであって、前記少なくとも1つの追加のブロックが配置される前記少なくとも1つのティアに応じて前記少なくとも1つの3Dブロック内の前記複製されたピンのうちの1つに接続される、少なくとも1つの追加のブロックと
を備える、3次元(3D)集積回路。
【請求項１６】
前記少なくとも1つの3Dブロックが、前記少なくとも1つの3Dブロック内の前記複数のティアにわたって複製される前記1つまたは複数のピンを接続する1つまたは複数のブロック内シリコン貫通ビアをさらに備える、請求項15に記載の3D集積回路。
【請求項１７】
前記少なくとも1つの3Dブロック内の前記複数のティアにわたって複製される前記1つまたは複数のピンが、前記3D集積回路に関連する総ワイヤ長および専有面積を最小化するために選択される、請求項15に記載の3D集積回路。
【請求項１８】
前記少なくとも1つの3Dブロックが、前記複数のティア間に前記1つまたは複数の回路構成要素を分布させかつ相互接続するために、前記複数のティアに重畳されかつ再実装された2次元(2D)ブロックを備える、請求項15に記載の3D集積回路。
【請求項１９】
前記1つまたは複数の複製されたピンが、前記複数のティアにわたって利用可能な共有空間に応じて前記少なくとも1つの3Dブロック内に配置される、請求項15に記載の3D集積回路。
【請求項２０】
前記3Dブロックまたは前記少なくとも1つの追加のブロックのうちの少なくとも1つが、知的財産(IP)ブロックを備える、請求項15に記載の3D集積回路。
【請求項２１】
前記少なくとも1つの追加のブロックが、2次元(2D)ブロックまたは第2の3Dブロックのうちの1つまたは複数を備える、請求項15に記載の3D集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、集積回路に関し、詳細には、低電力および高性能のアプリケーションのための3次元集積回路設計に使用される知的財産(IP)ブロックを形成することに関する。
【背景技術】
【０００２】
電子設計オートメーションでは、集積回路(IC)フロアプランは、ICに関連する主要な機能ブロックの暫定的配置を概略的に表す。現代の電子設計プロセスでは、フロアプランは、通常、チップ設計への階層的アプローチの初期段階であるフロアプランニング段階の間に形成される。フロアプランニングは、たとえば、オフチップ接続のためのボンディングパッドの場所を含む、設計における幾何学的制約のうちのいくつかを考慮する。さらに、電子設計では、知的財産(IP)ブロック(またはIPコア)は、特定の団体の知的財産と見なされる再使用可能な論理ユニット、セル、またはチップレイアウトのデザインを指す。したがって、IPブロックは、デザイン中に存在する知的財産(たとえば、特許、ソースコード、著作権、営業秘密、ノウハウなど)の使用許可を与え、かつ/またはその知的財産を所有する団体によるICデザイン内の構成ブロックとして使用される場合がある。一般に、フルチップ3次元(3D)ICデザインの品質全体を改善するために2D IPブロックと組み合わせた3D IPブロックを使用する様々な利点が存在する場合がある。
【０００３】
たとえば、3D半導体デバイス(または積層ICデバイス)は、垂直に積層され、それにより2つ以上の従来型配置の半導体デバイスよりも空間を占有しない、2つ以上の半導体デバイスを含むことができる。積層ICデバイスは、単一のデバイスとして挙動するように垂直に相互接続されたシリコンウエハおよび/またはICを積層することによって構成される単一の集積回路である。従来、積層半導体デバイスは、そのデバイスの周辺において、かつ/またはそのデバイスの領域にわたって入力/出力(I/O)ポートを使用して互いに配線される。I/Oポートは、アセンブリの長さおよび幅をわずかに増加させる。いくつかの新規の3Dスタックでは、シリコン貫通積層(TSS:Through Silicon Stacking)と呼ばれる技法は、積層ICデバイスが実質的な機能を小さい専有面積に詰め込むことができるように、半導体デバイスの本体を通る垂直接続を形成することによってエッジ配線と完全にまたは部分的に置き換えるためにシリコン貫通ビア(TSV)を使用する。しかしながら、デバイスのスケール調整と相互接続性能とのミスマッチは、指数関数的に増大し、さらに増大し続けることが予想される。デバイスと相互接続性能とのミスマッチの指数関数的な増大により、チップ領域および電力消費量を増加させる、大域的な相互接続の大量のバッファリングなどの技法を設計者が使用することを強いられてきた。
【０００４】
したがって、2Dブロックを3Dスタックになるように組み立てることに焦点を置く現在の3D方法は、適用可能である場合でも、ブロック内の3D ICを活用することなく、またさらなる改善を棚上げにして、ブロック間のネットを低減するのを助けるにすぎない。他方、「ブロック重畳(block folding)」と呼ばれる技法は、既存の2D IPブロックから開始するが、3D IPブロックを形成し、それにより最終的な3D IPレイアウトを構成するために、ティアの区分化を実行し、同じ専有面積の下ですべてのティアの配置およびルーティングをやり直すことができる。しかしながら、ブロック重畳を利用する既存の技法は、重畳された3D IPブロック内のI/Oピンを配置する方法に取り組まないが、I/Oピンを配置する方法は、ワイヤ長、面積、およびブロック間の接続に使用されるTSVの数に関して、最終的な3D ICデザインの品質に大きい影響を及ぼす場合がある。
【発明の概要】
【課題を解決するための手段】
【０００５】
以下は、本明細書で開示する1つまたは複数の態様および/または実施形態に関する簡略化された概要を提示する。したがって、以下の概要は、すべての企図される態様および/または実施形態に関する包括的な概観と見なされるべきではなく、また、以下の概要は、すべての企図される態様および/または実施形態に関する主要または重要な要素を識別するか、任意の特定の態様および/または実施形態に関連付けられた範囲を定めるものと見なされるべきでもない。したがって、以下の概要は、以下で提示する詳細な説明に先立って、本明細書で開示する1つまたは複数の態様および/または実施形態に関するいくつかの概念を簡略化された形で提示するという唯一の目的を有する。
【０００６】
様々な例示的な態様によれば、3次元(3D)集積回路のための知的財産(IP)ブロック設計方法は、複数のティアを有する3Dブロックになるように1つまたは複数の回路構成要素を有する少なくとも1つの2次元(2D)ブロックを重畳することを備える場合があり、重畳された2Dブロック内の1つまたは複数の回路構成要素は、3Dブロック内の複数のティア間に分布する場合がある。さらに、1つまたは複数のピンは、3Dブロック内の複数のティアにわたって複製される場合があり、1つまたは複数の複製されたピンは、(たとえば、複製されたピン間の垂直接続を提供するために)3Dブロック内部に配置された1つまたは複数のブロック内シリコン貫通ビア(TSV)を使用して互いに接続される場合がある。さらに、様々な実施形態では、3D集積回路内の1つまたは複数の他のブロックは各々、それと関連するティア配置に応じて複製されたピンのうちの1つに接続される場合があり、3Dブロックおよび1つまたは複数の他のブロックは、次いで、集積回路に関連する最終的なフルチップデザインに詰め込まれる場合があり、フルチップデザイン内の総ワイヤ長および専有面積を最小化するために、および/または3Dブロック内の複数のティアにわたって利用可能な共有空間に従って、3Dブロック内の複数のティアにわたって複製される1つまたは複数のピンが選択される場合がある。
【０００７】
様々な例示的な態様によれば、3D知的財産ブロックは、複数のティアと、複数のティアにわたって分布する1つまたは複数の回路構成要素と、複数のティアにわたって複製される1つまたは複数のピンとを備える場合がある。たとえば、様々な実施形態では、3D知的財産ブロックは、3D知的財産ブロック内の複数のティア間に1つまたは複数の回路構成要素を分布させ相互接続するために、複数のティアに重畳され再実装された2D知的財産ブロックを備える場合がある。さらに、様々な実施形態では、3D知的財産ブロックは、複数のティアにわたって複製された1つまたは複数のピンを接続し、1つまたは複数の複製されたピン間の垂直接続を提供するために、3Dブロック内部に配置される1つまたは複数のシリコン貫通ビアを備える場合がある。
【０００８】
様々な例示的な態様によれば、3D集積回路は、複数のティアにわたって分布する1つまたは複数の回路構成要素と複数のティアにわたって複製される1つまたは複数のピンとを有する少なくとも1つの3Dブロックと、複数のティアのうちの1つの上に配置された少なくとも1つの追加のブロックであって、少なくとも1つの追加のブロックが配置される少なくとも1つのティアに応じて少なくとも1つの3Dブロック内の複製されたピンのうちの1つに接続される、少なくとも1つの追加のブロックとを備える。たとえば、様々な実施形態では、少なくとも1つの3Dブロックは、複数のティア間に1つまたは複数の回路構成要素を分布させ相互接続するために、複数のティアに重畳され再実装された2Dブロックを備える場合がある。さらに、様々な実施形態では、少なくとも1つの3Dブロックは、1つまたは複数の複製されたピンを接続する1つまたは複数のブロック内シリコン貫通ビアをさらに備える場合があり、これらの複製されたピンは、3D集積回路に関連する総ワイヤ長および専有面積を最小化するために選択される場合がある。
【０００９】
本明細書で開示する様々な態様および/または実施形態に関連付けられた他の目的および利点は、添付の図面および詳細な説明に基づいて、当業者に明らかになるであろう。
【００１０】
以下の詳細な説明を参照しながら、本開示を限定するためではなく単に例示するために提示される添付の図面とともに検討すれば、本開示の態様およびその付随する利点の多くがよりよく理解されるようになるので、それらに関するより完全な了解が容易に得られるであろう。
【図面の簡単な説明】
【００１１】
【図１】様々な態様による、1つまたは複数の3次元(3D)ブロックと組み合わせた1つまたは複数の2次元(2D)ブロックを実装する、例示的なマルチティア3D集積回路(IC)フロアプランを示す図である。
【図２】様々な態様による、マルチティア3D ICレイアウト全体に関連する電力、性能、および他の設計品質の目標に応じて、後に最終的なマルチティア3D ICレイアウトに詰め込むことができる、1つまたは複数の既存の2Dブロックおよび/または3Dブロックを重畳する例示的な方法を示す図である。
【図３】様々な態様による、フルチップマルチティア3D ICデザインに関連する品質を改善するために1つまたは複数の2Dブロックと1つまたは複数の3Dブロックとを組み合わせる、マルチティア3D ICレイアウトを自動的にフロアプランするための例示的な方法を示す図である。
【図４】様々な態様による、1つまたは複数の2Dブロックを1つまたは複数の3Dブロックと組み合わせる、マルチティア3D IC内のピン割当てを行うための例示的な方法を示す図である。
【図５】様々な態様による、既存の2Dブロックを重畳することから形成されたマルチティア3Dブロック内のピン割当てを複製するための例示的な方法を示す図である。
【図６】様々な態様による、既存の2Dブロックを重畳することから形成される場合がある、複製されたピンを有する例示的なマルチティア3Dブロックを示す図である。
【図７Ａ】様々な態様による、複製されたピンを有する例示的な3Dロードストアユニット(LSU)を示す図である。
【図７Ｂ】様々な態様による、複製されたピンを有する例示的な3Dロードストアユニット(LSU)を示す図である。
【図７Ｃ】様々な態様による、複製されたピンを有する例示的な3Dロードストアユニット(LSU)を示す図である。
【発明を実施するための形態】
【００１２】
特定の例示的な実施形態を対象とする例を示すために、以下の説明および関連する図面において様々な態様が開示される。代替的実施形態は、この開示を読むと当業者には明らかであり、本開示の範囲または趣旨を逸脱することなく構築され、実践されてもよい。加えて、本明細書で開示される態様および実施形態の関連する詳細を不明瞭にしないように、よく知られている要素は詳細には説明せず、または省略される場合がある。
【００１３】
「例示的」という語は、本明細書では「例、事例、または例示としての役割を果たすこと」を意味するために使用される。「例示的」として本明細書で説明するいかなる実施形態も、他の実施形態よりも好ましい、または有利であると必ずしも解釈されるべきでない。同様に、「実施形態」という用語は、すべての実施形態が、論じられる特徴、利点、または動作モードを含むことを必要としない。
【００１４】
本明細書で使用する専門用語は、特定の実施形態について説明するにすぎず、本明細書で開示する任意の実施形態を限定すると解釈されるべきではない。本明細書で使用する単数形"a"、"an"、および"the"は、文脈が別段に明確に示さない限り、複数形も含むものとする。本明細書で使用するとき、「備える(comprises)」、「備えている(comprising)」、「含む(includes)」、および/または「含んでいる(including)」という用語は、述べられた特徴、整数、ステップ、動作、要素、および/または構成要素の存在を明示するが、1つまたは複数の他の特徴、整数、ステップ、動作、要素、構成要素、および/またはそれらのグループの存在または追加を排除するものではないことがさらに理解されよう。
【００１５】
さらに、多くの態様について、たとえば、コンピュータデバイスの要素によって実行されるべき一連のアクションに関して説明する。本明細書で説明する様々なアクションは、特定の回路(たとえば、特定用途向け集積回路(ASIC))によって、1つもしくは複数のプロセッサによって実行されるプログラム命令によって、または両方の組合せによって実行することができることが認識されよう。加えて、本明細書で説明するこれらの一連のアクションは、実行されると、関連するプロセッサに本明細書で説明する機能を実行させる、対応するコンピュータ命令のセットを記憶した任意の形態のコンピュータ可読記憶媒体内で完全に具現化されるものと見なすことができる。したがって、本開示の様々な態様は、特許請求される主題の範囲内にすべて入ることが企図されているいくつかの異なる形態で具現化される場合がある。加えて、本明細書に記載される態様および/または実施形態ごとに、任意のそのような態様および/または実施形態の対応する形式は、たとえば、記載されるアクションを実行する「ように構成される論理」として本明細書に記載される場合がある。
【００１６】
様々な実施形態によれば、図1は、1つまたは複数の3次元(3D)ブロックと組み合わせた1つまたは複数の2次元(2D)ブロックを実装する、例示的なマルチティア3D集積回路(IC)フロアプラン110を示す。より詳細には、マルチティア3D ICフロアプラン110全体は、フロアプラン110が、第1のティア112と、第2のティア114と、第1のティア112と第2のティア114とにまたがる3Dブロック130とを含むという点で、3Dである。さらに、図1に示すように、3D ICフロアプラン110内の残りのブロック120a、120b、120c、120d、120eは、2Dで実装され、第1のティア112および第2のティア114の中に分布する(すなわち、2Dブロック120a、120bは第1のティア112内に実装されるが、2Dブロック120c、120d、120eは第2のティア114内に実装される)。さらに、図1の矢印132は、(たとえば、少なくとも第1のティア112と第2のティア114との間で)マルチティア3D IC110内の通信経路を提供する場合がある、1つまたは複数のビア(たとえば、シリコン貫通ビア(TSV))を有するビアネットワークを表す場合がある。様々な実施形態では、図1に示すマルチティア3D ICフロアプラン110は、最終的なマルチティア3D ICレイアウト110を構成するために1つもしくは複数の既存の2Dブロックおよび/または1つもしくは複数の既存の3Dブロックを重畳することができる適切な方法に従って構成される場合がある。
【００１７】
たとえば、様々な実施形態によれば、図2は、マルチティア3D ICレイアウト(たとえば、図1に示す3D ICレイアウト110)全体に関連する電力、性能、および他の設計品質の目標に応じて、後に最終的なマルチティア3D ICレイアウトに共に詰め込むことができる、1つまたは複数の既存の2Dブロックおよび/または3Dブロックを重畳する場合がある例示的な方法200を示す。一般に、図2に示す方法200は個別のブロックに対して適用される場合があり、次いで、複数のブロック(図2に示す方法200に従って重畳される任意の個別のブロックを含む)を最終的なマルチティア3D ICデザインに詰め込むために3Dフロアプランニングを実行することができる。
【００１８】
様々な実施形態では、本明細書でさらに詳細に説明するように、図2に示す方法200は、一般に、3D ICデザイン全体に関連する全体的設計品質目標(たとえば、個別のブロックが、区分化されてマルチティア3Dブロックに重畳された後、マルチティア3D IC全体に関連する電力および性能のエンベロープを改善するかどうか)に対して次に評価することができる複数の対応物に、既存の個別の2Dブロックおよび/または既存の個別の3Dブロックを、再び特徴付けるか、またはそうでなければ再実装する場合がある。たとえば、複数のティアにわたって重畳される際にいくつかの個別のブロックがより十分に実行する場合があるので、図2に示す方法200は、一般に、重畳されたブロックが重畳前に存在していた構成ブロックをしのぐ場合、最終的なマルチティア3D ICデザインのために個別のブロックをさらに拡張し再実装するために、個別のブロック上でティアの区分化を実行し、同じ専有面積の下ですべてのティアの配置およびルーティングを再実装する場合がある。
【００１９】
様々な実施形態では、方法200は、210において特定の個別のブロックに対応する初期ネットリストで開始する場合があり、個別のブロックの初期ネットリストは、1つもしくは複数の既存の2Dブロックおよび/または1つもしくは複数の既存の3Dブロック(たとえば、汎用ゲートまたはプロセス固有の標準セルとして実装される論理関数に対応するブール代数表現)を含む場合がある。さらに、3D ICレイアウト全体のコンテキストにおいて、個別のブロックは、0よりも大きくNよりも小さい初期ティアカウントを有する場合があり、ここで、Nは、3D ICレイアウト全体におけるティアの総数を表し、通常は(たとえば、4つの総ティアに)固定される。したがって、個別のブロックに関連する初期ティアカウントは、1とNとの間の範囲にある場合があり、1つのティアを占有する個別のブロックは2Dブロックと見なされる場合があり、2つ以上のティアを占有する個別のブロックは3Dブロックである場合がある。したがって、220において、個別のブロックに関する重畳を試みるために、個別のブロックに関連する初期ティアカウントは増加される場合がある。たとえば、3D ICレイアウト全体がN個の総ティアを有し、1つまたは複数のさらなるティアを追加することは極めてコストがかかり推奨されないので、個別のブロックに関連するティアカウントは、1とNとの間を変化することができる。したがって、220において、個別のブロックに関連する増加したティアカウントは、1よりも大きくN+1よりも小さい(すなわち、個別のブロックが複数のティアを占有するが、3D IC全体よりも多いティアを占有しないように、2以上、N以下である)場合がある。
【００２０】
様々な実施形態では、初期ネットリストに関連する個別のブロックは、次いで、230において、再実装される場合があり、個別のブロックを再実装することは、複数のティアにわたって初期ネットリストを区分化することと、同じ専有面積の下で各ティアにおける配置およびルーティングを再実装することと、1つまたは複数のビア(たとえば、高密度ティア間ビア)を挿入することとを含む場合がある。様々な実施形態では、区分化され再実装された(すなわち、重畳された)ブロックに関連する品質は、次いで、220において追加されたさらなるティアにわたって個別のブロックを重畳することが全体的3D IC設計品質を改善したかどうかを判定するために3D IC全体に関連する全体的設計品質目標に対して評価される場合がある。たとえば、設計品質目標は、3D IC全体に関連する、総シリコン面積、タイミング、および電力の加重和を備える場合があるが、他の適切な設計品質目標が240において評価される場合があることを当業者は了解されよう。さらに、区分化された(重畳された)ブロックが3D ICデザイン全体よりもはるかに小さい傾向があるので、精度を増大させるために240において全体的3D IC設計品質目標を評価するのに、レイアウト後のタイミング値、電力値、および面積値が使用される場合がある。
【００２１】
様々な実施形態では、250において、重畳された個別のブロックに関連する品質が全体的3D IC設計品質目標を満足しているかどうか(すなわち、追加のティアにわたって個別のブロックを重畳し再実装することが全体的3D IC設計品質を改善したかどうか)に関して判定が行われる場合がある。肯定の場合、260において、重畳された個別のブロックが、3D ICレイアウト全体のブロック集合に追加される場合があり、このブロック集合は、通常、最終的な3D ICに詰め込まれる複数の2Dブロックおよび/または3Dブロックを含む。しかしながら、250において重畳された個別のブロックに関連する品質が全体的3D IC設計品質目標を満足していないと判定したことに応答して、ステップ220および230において実行された重畳が、最終的な3D ICに詰め込むブロック集合に追加されない場合があり、その理由は、その重畳が全体的3D IC設計品質を改善しなかったからである。したがって、250において重畳された個別のブロックに関連する品質が不十分であると見なされる場合、ブロックを重畳することへの他のアプローチが、270において検討される場合がある。たとえば、あるオプションは、220においてより多くのティアを追加し、次いで、230において、より多くのティアを追加することが全体的3D IC設計品質を改善する重畳ブロックをもたらすかどうかを評価するために重畳を再び試みることになる場合がある(不十分な重畳ブロックがN個のティアを有していない場合、3D IC全体の総ティアカウントNを超えることなしには、さらなるティアを追加することができない)。代替的に、別のオプションは、230において、同じティアカウントで異なる区分化を試みることになる場合がある。さらに別の代替形態では、方法200は、個別のブロックを重畳することが全体的3D IC設計品質を改善しなかった場合、停止する場合があり、その場合、210において提供された初期ブロックデザインが最終的な3D ICに使用される場合があるが、その理由は、初期ブロックが、試みられた重畳ブロックよりも、全体的3D IC設計品質を満足していると見なされる場合があるからである。したがって、方法200は、一般に、個別のブロックが追加のティアにわたって重畳される際に全体的3D IC設計品質を改善するか否かに応じて3D ICレイアウト全体のブロック集合に個別のブロックを追加する場合があり、それにより、最終的な3D ICに最後に詰め込まれるブロック集合は、追加のティアにわたって個別のブロックを重畳するにせよ、または元のブロックを使用するにせよ、全体的3D IC設計品質目標に応じて最適化される場合がある。
【００２２】
様々な実施形態によれば、図3は、フルチップマルチティア3D ICデザインに関連する全体的品質を改善するために1つまたは複数の2Dブロックを1つまたは複数の3Dブロックと組み合わせる、マルチティア3D ICレイアウトをフロアプランするための例示的な方法300を示す。より詳細には、最終的なマルチティア3D ICレイアウトを構成するために、様々なブロック(たとえば、図2のブロック260において生じたブロック集合を含む)がマルチティア3Dスタック中にフロアプランされる場合があり、フロアプランされた各ブロックは、様々な数のティア、タイミング、電力、および領域専有面積を有する2Dおよび/または3Dの実装形態として開始する場合がある。目標は、領域専有面積、ワイヤ長、および遅延の加重和によって判定される場合があるが、特定の設計に応じて他の派生目的関数を検討することができる。出力は、(i)2Dまたは3Dにおいて各ブロックを実装する選択肢と、(ii)最終的なフルチップマルチティア3D ICデザインにおいて上記の目的関数を最小化する場合がある各ブロックの(x, y, z)座標とを備える場合がある。
【００２３】
様々な実施形態では、図3に示す方法300は、自動化3Dフロアプランニングエンジンを実装することができるシミュレーテッドアニーリングフレームワークに対応する場合があり、シミュレーテッドアニーリングは、金属を冷却する挙動に基づいた人工知能技法を指す。しかしながら、実際には、3Dフロアプランニングは、シミュレーテッドアニーリングを用いた自動フロアプランニングを使用するのではなく手動で実行される傾向がある。そのコンテキストでは、図3に示す方法300は、様々なまたは不可能な最適化問題の組合せに対する解を見つけるために自動化された方法で3Dフロアプランニングを実行する1つの例示的な技法を提供することができるが、複数の2Dブロックおよび/または3Dブロックを最終的な3D ICレイアウトに詰め込むのに使用される3Dフロアプランニング技法は、図3に示す方法300が本明細書で説明する様々な態様および実施形態に関して使用することができる1つの考えられる3Dフロアプランニングオプションだけを表すように手動で実行される場合があることを当業者は了解されよう。
【００２４】
たとえば、様々な実施形態では、図3に示す自動化されたフロアプランニング方法300は、大域的パラメータTを初期値T0に設定することを含む場合がある310において、初期解を特定することを備える場合がある。大域的パラメータTは一般に温度を指す場合があるが、Tは、必ずしも物理的温度に関連しない。代わりに、Tは、シミュレーテッドアニーリングベースの3Dフロアプランニングエンジンの前進を制御するのに使用される大域的パラメータを備える場合がある。様々な実施形態では、初期解は、320において摂動(perturb)し、次いで、サービス品質(QoS)パラメータが最高レベル未満かどうかを判定するために330において評価される場合がある。たとえば、様々な実施形態では、QoSパラメータは、様々な用途、ユーザ、もしくはデータフローに対する様々な優先順位レベルを提供するか、またはデータフローに対するある性能レベル(たとえば、必要なビットレート、遅延、ジッタ、パケット損失確率、ビットエラーレートなど)を保証する場合がある。様々な実施形態では、QoSパラメータがそれと関連する最高のレベル未満でないと330において判定したのに応答して、解は340においてTに比例する確率で受け入れられる場合があり、方法300は次いで360に進む場合がある。そうでない場合、QoSパラメータが最高のレベル未満であると330において判定したのに応答して、解は、360に進む前に350において受け入れられる場合がある。いずれの場合も、360において移動数が所与のTの最大移動数を超えるかどうかに関して判定が行われる場合があり、所与のTの最大移動数はMmaxに設定される場合がある。移動数がMmaxを超えないと360において判定したことに応答して、方法300は、解がさらに摂動する場合がある320に戻る場合がある。そうでない場合、移動数がMmaxを超えると360において判定したことに応答して、大域的パラメータTは、370において減じられる場合があり、ここでTの減じられた値がTmin(たとえば、停止「温度」)よりも小さいかどうかを判定するために380において評価が実行される場合がある。Tの減じられた値がTminよりも小さい、肯定の場合、方法300は停止する場合がある。そうでない場合、Tの減じられた値がTmin以上であると380において判定したことに応答して、方法300は、解がさらに摂動する場合がある320に戻る場合がある。
【００２５】
様々な実施形態によれば、図4は、1つまたは複数の2Dブロックを1つまたは複数の3Dブロックと組み合わせる、マルチティア3D IC内のピン割当てを行うための例示的な方法400を示す。より詳細には、個別のブロックに関連するネットリストが、個別のブロックがハードマクロであるかどうかを判定するために410において評価される場合がある。たとえば、あるハードマクロでは、論理構成要素ならびにそれらの構成要素間の物理的経路および配線パターンが指定される。したがって、410において個別のブロックがハードマクロであると判定したことに応答して、ピン割当ておよびブロック設計はすでになされており、その場合、方法400はその個別のブロックに関して適宜に停止する場合がある。他方、410において個別のブロックがハードマクロでないと判定したことに応答して、個別のブロックは、必要な論理構成要素の相互接続が指定されてきた場合があるが、物理的配線パターンが指定されていないことを意味する、ソフトマクロと見なされる場合がある。したがって、410において個別のブロックがソフトマクロである(すなわち、ハードマクロでない)と判定したことに応答して、ピンは、420において個別のブロックの各ティア上に割り当てられる場合がある。フロアプランの解およびブロック間接続がわかると、次に、マルチティア3D ICレイアウト内のピン配置を固定することができる。したがって、420において決定されたピン割当ておよび複数のティアにわたってブロックを区分化する解を使用して、3Dブロックが430において実装される場合があり、2D方法、3D方法、および/またはそれらの組合せを使用して、区分化の解を実現することができる。
【００２６】
一般に、上記でさらに詳細に説明したブロック重畳方法は、「モノリシック(monolithic)」として一般に知られている3D実装技術のアプリケーションを有する場合がある。モノリシック3D集積回路では、電子構成要素およびそれらの接続(たとえば、配線)は、単一の半導体ウエハ上の層内に連続的に構成され、その半導体ウエハは、次いで、3D ICになるようにダイシング(diced)される。最初に、後続の各層は、アライメントの必要性を除去するか、または大幅に低減し、それによってより大きい集積密度をもたらす場合がある、デバイスをまったく有しない。さらに、高密度ビアのネットワークは、モノリシック3D IC内のティア内およびティア間の通信経路を提供する場合がある。さらにまた、モノリシック3D集積技術を使用して構成されるデザインに使用することができる新規の3D知的財産(IP)ブロック(または3D IPコア)を構築するために、上記で説明したブロック重畳方法を使用することができる。したがって、事前設計された3D IPブロックを含む、より大きいデザインで使用される場合がある、再使用可能な論理ユニット、セルユニット、またはチップレイアウトユニットとして、新規の3D IPブロックを利用することができる。以下の説明では、上記で説明したブロック重畳方法は、既存の2D IPブロックから形成された重畳された3D IPブロック内の入力/出力(I/O)ピンを配置する方法に関する例示的な技法を提供するために拡張される。
【００２７】
様々な実施形態によれば、図5は、複数のティアを有する、重畳された3D IPブロック内のピン割当てを複製するための例示的な方法500を示す。より詳細には、510において、既存の2D IPブロックは、3D IPブロックになるように重畳される場合があり、既存の2D IPブロックを重畳することは、(たとえば、図1および図2に示す方法100、200に従って)複数のティアになるように2D IPブロックを区分化するステップと、同じ専有面積の下で各ティアの配置およびルーティングを再実装するステップとを備える場合がある。様々な実施形態では、520において、重畳された3D IPブロック内の特定のティア内に、1つまたは複数のピン配置が割り当てられる場合があり、これらのピン配置は、総ワイヤ長およびフルチップ専有面積を最小化するために重畳された3D IPブロック内の複数のティア間で共有される空間に応じて決定される。さらに、520では、1つまたは複数のピン(たとえば、1つのピン、いくつかのピン、またはすべてのピン)が選択され、各ティア内に複製され、それによって2つ以上のティアにおいて利用可能な複製されたピンを作製する場合があり、複製されたピンは、重畳された3D IPブロック内部に配置された1つまたは複数のブロック内シリコン貫通ビア(TSV)を使用して、または重畳された3D IPブロック内部の任意の他の適切な垂直ビアスタックを使用して垂直に接続される場合がある。したがって、530では、最終的なフルチップデザイン内の1つまたは複数の他の2Dブロックおよび/または3Dブロックは、それと関連するティア配置に応じていずれかの複製されたピンに接続する場合があり、そのティア配置は、ブロック間TSVを節約し、よりタイトなフルチップブロックレベルのフロアプランニングを可能にする場合がある。様々な実施形態では、540において、フルチップデザインに関連する最終的なマルチティア3Dレイアウトを形成するために3Dフロアプランニングが実行される場合があり、3Dフロアプランニングは、一般に、重畳された3D IPブロックおよび任意の2D IPブロックを詰め込むステップを備える場合がある。
【００２８】
様々な実施形態によれば、図6は、既存の2D IPブロックを重畳することから形成される場合がある、複製されたピンを有する例示的なマルチティア3D IPブロックを示し、複製されたピンは、図5に示し上記で説明した方法500を使用して形成される場合がある。より詳細には、様々な実施形態では、既存の2D IPブロック600は、頂部ティア600_topおよび底部ティア600_botを有する3D IPブロックになるように線605について区分化される場合があり、頂部ティア600_topおよび底部ティア600_botは各々、同じ専有面積の下で既存の2D IPブロック600に関連する配置およびルーティングを再実装する場合がある。さらに、既存の2D IPブロックは、位置640にI/Oピンを有する場合があり、I/Oピンは、3D IPブロックの頂部ティア600_topおよび底部ティア600_bot内のそれぞれの位置640_topおよび640_botに複製される場合がある。したがって、複製I/Oピンは、位置640_topおよび位置640_botにおいて利用可能であり、それによって頂部ティア600_topおよび底部ティア600_botにおいて利用可能な複製I/Oピンを作製する場合がある。重畳された3D IPブロックでは、位置640_topおよび640_botにおける複製I/Oピンは、重畳された3D IPブロック内部のブロック内TSV650を使用して垂直に接続される場合がある。したがって、最終的なフルチップデザイン内の他の2Dブロックおよび/または3Dブロックは、それと関連するティア配置に応じていずれかの位置600_topまたは600_botにおいて複製されたピンに接続する場合がある。たとえば、フルチップレイアウト内の頂部ティア600_topまたは高位のティア内の2Dブロックおよび/または3Dブロックは、位置600_topにおいてI/Oピンに接続する場合があるが、フルチップレイアウト内の底部ティア600_botまたは下位のティア内の2Dブロックおよび/または3Dブロックは、位置600_botにおいてI/Oピンに接続する場合がある。したがって、位置600_topおよび600_botにおいてI/Oピンを複製することにより、I/Oピンは、重畳された3D IPブロック内の2つ以上のティア内で利用可能になり、その結果、他のブロック(2Dおよび3D)は、I/Oピンに容易に接続することができ、ブロック内TSV650を使用して複製されたピンを垂直に接続することにより、ブロック間TSVが節約され、よりタイトなフルチップブロックレベルフロアプランが可能になる場合がある。
【００２９】
様々な実施形態によれば、図7A〜図7Cは、図6に示したデザインを有するマルチティア3D IPブロックを形成するために図5に示した方法500を使用して形成される場合がある、複製されたピンを有する例示的な3Dロードストアユニット(LSU)を示す。より詳細には、図7Aは、プロセッサコア(たとえば、8つのコアを有し、「サーバオンチップ(server on a chip)」アーキテクチャを提供するために単一のチップ上に主要なサーバ機能を統合するOpenSPARC T2マイクロプロセッサ内のコア)内の例示的な2D LSU700を示す。しかしながら、本明細書では例示のためだけにLSUおよびOpenSPARC T2アーキテクチャが使用され、重畳可能な2D IPブロックを有する任意の適切な集積回路内に、本明細書で説明する設計原理を適用することができることを、当業者は了解されよう。
【００３０】
図7Aに示すように、2D LSU700は、2D LSU700内の様々な位置に配置され適切なワイヤルーティングを介して相互接続される様々な能動要素710、720、730を含む。したがって、様々な実施形態では、2D LSU700は、少なくとも頂部ティア700_topおよび底部ティア700_botを含む、複数のティアを有する3D LSUになるように区分化される場合があり、頂部ティア700_topは、より小さい領域の専有面積の下で様々な能動要素710、720、730に関連する配置を再実装する場合があり、2D LSU700に関連する再実装されたルーティングは、頂部ティア700_topおよび底部ティア700_botにわたって分布する場合がある。したがって、マルチティア3D LSUになるように2D LSU700を重畳することによって、領域専有面積(約50%小型に)、ワイヤ長(約12%短く)、バッファ(約10%少なく)、および電力消費量(約7.5%少なく)に関して大幅な節約が達成される場合がある。さらに、図7Aに示すように、3D LSUは、頂部ティア700_topおよび底部ティア700_bot内で利用可能な一定の共有空間を有する場合があり、この共有空間は、TSVランディングパッドを配置するための適切な位置に相当する場合がある。
【００３１】
様々な実施形態では、図7Bに示すように、1つまたは複数のI/Oピン配置は、次いで、頂部ティア700_top内の様々な能動要素710、720、730への通信経路を提供するために決定される場合がある。特に、頂部ティア700_topは、一般に、回路構成要素が占有する可能性がある様々な部位を各々が有する様々な行を備える場合がある。したがって、I/Oピン配置は、様々な能動要素710、720、730への通信経路を提供するためにI/Oピンを配置することができる、空いた部位またはそうでなければ占有されていない部位を有する行のうちから選択される場合がある。たとえば、第1のI/Oピンおよび第2のI/Oピンは、能動要素710への通信経路を提供するために行742_topおよび744_top内のそれぞれの空いた部位に配置される場合があり、第3のI/Oピンは、能動要素730への通信経路を提供するために行746_top内の空いた部位に配置される場合があり、第4のI/Oピンは、能動要素720への通信経路を提供するために行748_top内の空いた部位に配置される場合がある。底部ティア700_botでは、頂部ティア700_top内のI/Oピンは、それぞれ、行742_bot、744_bot、746_bot、および748_botにおいて複製される場合があり、1つ、いくつか、またはすべてのI/Oピンが複製のために(たとえば、総ワイヤ長およびフルチップ専有面積を最小化しようとする設計目標に応じて)選択される場合があることを、当業者は了解されよう。いずれの場合でも、複製I/Oピンは、他の2Dブロックおよび/または3Dブロックがいずれかの複製I/Oピンを介して3D LSUに接続することができるように、ブロック内TSV(すなわち、重畳された3D LSUブロック内部に配置されたTSV)を使用して垂直に接続される。
【００３２】
したがって、図7Cは、最終的なフルチップレイアウトになるように重畳された3D LSUおよび1つまたは複数の他のブロックを詰め込むために3Dフロアプランニングが実行されると、図7Aおよび図7Bの重畳された3D LSUを実装する同じプロセッサコアと比較した、図7Aの2D LSU700を実装するプロセッサコアを示す。本明細書に示すように、重畳された3D LSUは、上述の領域専有面積、ワイヤ長、電力消費量、および他の最適値を実現するが、2D LSU700と同じ機能を提供し、上記にさらに詳細に説明したI/Oピン複製およびブロック内TSV設計原理を介して頂部ティア700_topまたは底部ティア700_botのいずれかにおけるブロックが、3D LSUに接続するのを容易に可能にする場合がある。
【００３３】
情報および信号は様々な異なる技術および技法のいずれかを使用して表される場合があることを当業者は了解されよう。たとえば、上記の説明全体にわたって参照される場合があるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光場もしくは光粒子、またはそれらの任意の組合せによって表されてもよい。
【００３４】
さらに、本明細書で開示する態様に関して説明する様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装される場合があることを当業者は了解されよう。ハードウェアとソフトウェアのこの互換性を明確に説明するために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについて、上記では概してそれらの機能に関して説明した。そのような機能性がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、特定の用途およびシステム全体に課せられる設計制約によって決まる。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装する場合があり、そのような実装の決定は、本開示の範囲から逸脱するものと解釈されるべきではない。
【００３５】
本明細書で開示する態様に関して説明する様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明する機能を実行するように設計されたそれらの任意の組合せを用いて実装または実行されてもよい。汎用プロセッサはマイクロプロセッサであってもよいが、代替では、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラまたは状態マシンであってもよい。プロセッサは、コンピューティングデバイスの組合せ(たとえば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成)として実装される場合もある。
【００３６】
本明細書で開示する態様に関して説明する方法、シーケンスおよび/またはアルゴリズムは、直接ハードウェアにおいて具現化されても、プロセッサによって実行されるソフトウェアモジュールにおいて具現化されても、またはその2つの組合せにおいて具現化されてもよい。ソフトウェアモジュールは、RAM、フラッシュメモリ、ROM、EPROM、EEPROM、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野で知られている任意の他の形態の記憶媒体内に存在してもよい。プロセッサが記憶媒体から情報を読み取ること、および記憶媒体に情報を書き込むことができるように、例示的な記憶媒体がプロセッサに結合される。代替として、記憶媒体は、プロセッサに一体化されてもよい。プロセッサおよび記憶媒体は、ASICに存在する場合がある。ASICは、IoTデバイス内に存在する場合がある。代替として、プロセッサおよび記憶媒体は、個別構成要素としてユーザ端末内に存在してもよい。
【００３７】
1つまたは複数の例示的な態様では、説明する機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装されてもよい。ソフトウェアにおいて実装される場合、機能は、1つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信される場合がある。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む、コンピュータ記憶媒体とコンピュータ通信媒体との両方を含む。記憶媒体は、コンピュータによってアクセスすることができる任意の利用可能な媒体であってもよい。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または命令もしくはデータ構造の形式の所望のプログラムコードを搬送もしくは記憶するために使用可能であり、コンピュータによってアクセス可能な任意の他の媒体を備える場合がある。また、あらゆる接続が正しくはコンピュータ可読媒体と呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用してウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は媒体の定義に含まれる。本明細書で使用するディスク(disk)およびディスク(disc)は、CD、レーザーディスク(登録商標)(disc)、光ディスク(disc)、DVD、フロッピーディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は通常、データを磁気的におよび/またはレーザーを用いて光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に同じく含まれるものとする。
【００３８】
上記の開示は本開示の例示的な態様を示すが、添付の特許請求の範囲によって定義される本開示の範囲から逸脱することなく、本明細書で様々な変更および修正を行うことができることに留意されたい。本明細書で説明する本開示の態様による方法クレームの機能、ステップおよび/またはアクションは、任意の特定の順序で実行される必要はない。さらに、本開示の要素は、単数形で説明または特許請求されている場合があり、単数形に限定することが明示的に述べられていない限り、複数形が企図される。
【符号の説明】
【００３９】
110  マルチティア3D ICフロアプラン、マルチティア3D ICレイアウト、マルチティア3D IC
112  第1のティア
114  第2のティア
120a〜120e  ブロック
130  3Dブロック
132  矢印
600  既存の2D IPブロック
605  線
600_top  頂部ティア
600_bot  底部ティア
640  位置
640_top  位置
640_bot  位置
650  ブロック内TSV
700  2Dロードストアユニット、2D LSU
700_top  頂部ティア
700_bot  底部ティア
710  能動要素
720  能動要素
730  能動要素
742_top  行
744_top  行
746_top  行
748_top  行
742_bot  行
744_bot  行
746_bot  行
748_bot  行
【図１】
2018511928.tif 000003
【図２】
2018511928.tif 000004
【図３】
2018511928.tif 000005
【図４】
2018511928.tif 000006
【図５】
2018511928.tif 000007
【図６】
2018511928.tif 000008
【図７Ａ】
2018511928.tif 000009
【図７Ｂ】
2018511928.tif 000010
【図７Ｃ】
2018511928.tif 000011
【手続補正書】
【提出日】平成29年8月10日(2017.8.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
集積回路を設計するための方法であって、
複数のティアを有する3次元(3D)ブロックになるように1つまたは複数の回路構成要素を有する2次元(2D)ブロックを重畳するステップであって、前記重畳された2Dブロック内の前記1つまたは複数の回路構成要素は、前記3Dブロック内の前記複数のティア間に分布する、ステップと、
前記3Dブロック内の前記複数のティアにわたって1つまたは複数の入出力(I/O)ピン位置を複製するステップと、
前記3Dブロック内部に配置された1つまたは複数のブロック内シリコン貫通ビア(TSV)を使用して前記1つまたは複数の複製されたI/Oピン位置を接続するステップと
を備える、方法。
【請求項２】
1つまたは複数の他のブロックに関連するティア配置に応じて、前記集積回路内の前記1つまたは複数の他のブロックを、前記複製されたI/Oピン位置のうちの1つに接続するステップ
をさらに備える、請求項1に記載の方法。
【請求項３】
前記3Dブロックおよび前記1つまたは複数の他のブロックを、前記集積回路に関連するフルチップデザインに詰め込むように3Dフロアプランニングを実行するステップ
をさらに備える、請求項2に記載の方法。
【請求項４】
前記フルチップデザイン内の総ワイヤ長および専有面積を最小化するために前記3Dブロック内の前記複数のティアにわたって複製するのに前記1つまたは複数のI/Oピン位置を選択するステップ
をさらに備える、請求項3に記載の方法。
【請求項５】
前記1つまたは複数のブロック内TSVが、前記1つまたは複数の複製されたI/Oピン位置の間の垂直接続を提供する、請求項1に記載の方法。
【請求項６】
前記2Dブロックおよび前記3Dブロックが、知的財産(IP)ブロックを備える、請求項1に記載の方法。
【請求項７】
前記3Dブロックになるように前記2Dブロックを重畳するステップが、
前記複数のティアになるように前記2Dブロックを区分化するステップと、
前記3Dブロック内の前記複数のティア間に前記重畳された2Dブロック内の前記1つまたは複数の回路構成要素を分布させ、かつ前記3Dブロック内の前記複数のティア間に分布する前記1つまたは複数の回路構成要素を相互接続するために、前記2Dブロック内の前記1つまたは複数の回路構成要素に関連する配置およびルーティングを再実装するステップと
をさらに備える、請求項1に記載の方法。
【請求項８】
前記再実装された配置および前記再実装されたルーティングに応じて前記3Dブロック内の前記複数のティアにわたって利用可能な共有空間を決定するステップと、
前記3Dブロック内の前記複数のティアにわたって利用可能な前記共有空間に応じて前記1つまたは複数の複製されたI/Oピン位置を配置するステップと
をさらに備える、請求項7に記載の方法。
【請求項９】
複数のティアと、
前記複数のティアにわたって分布する1つまたは複数の回路構成要素と、
前記複数のティアにわたって複製される1つまたは複数の入力/出力(I/O)ピン位置と
を備える、3次元(3D)知的財産ブロック。
【請求項１０】
前記3D知的財産ブロック内部に配置された1つまたは複数のシリコン貫通ビアであって、前記複数のティアにわたって複製される前記1つまたは複数のI/Oピン位置を接続する、1つまたは複数のシリコン貫通ビア
をさらに備える、請求項9に記載の3D知的財産ブロック。
【請求項１１】
前記1つまたは複数のシリコン貫通ビアが、前記1つまたは複数の複製されたI/Oピン位置の間の垂直接続を提供する、請求項10に記載の3D知的財産ブロック。
【請求項１２】
前記複数のティアにわたって複製される前記1つまたは複数のI/Oピン位置が、前記3D知的財産ブロックを含む3D集積回路内の総ワイヤ長および専有面積を最小化するために選択される、請求項9に記載の3D知的財産ブロック。
【請求項１３】
前記3D知的財産ブロックが、前記3D知的財産ブロック内の前記複数のティア間に前記1つまたは複数の回路構成要素を分布させかつ相互接続するために、前記複数のティアに重畳されかつ再実装された2次元(2D)知的財産ブロックを備える、請求項9に記載の3D知的財産ブロック。
【請求項１４】
前記1つまたは複数の複製されたI/Oピン位置が、前記複数のティアにわたって利用可能な共有空間に応じて前記3D知的財産ブロック内に配置される、請求項9に記載の3D知的財産ブロック。
【請求項１５】
複数のティアにわたって分布する1つまたは複数の回路構成要素と、前記複数のティアにわたって複製される1つまたは複数の入力/出力(I/O)ピン位置とを有する少なくとも1つの3Dブロックと、
前記複数のティアのうちの1つの上に配置された少なくとも1つの追加のブロックであって、前記少なくとも1つの追加のブロックが配置される前記複数のティアのうちの前記1つに応じて前記少なくとも1つの3Dブロック内の前記複製されたI/Oピン位置のうちの1つに接続される、少なくとも1つの追加のブロックと
を備える、3次元(3D)集積回路。
【請求項１６】
前記少なくとも1つの3Dブロックが、前記少なくとも1つの3Dブロック内の前記複数のティアにわたって複製される前記1つまたは複数のI/Oピン位置を接続する1つまたは複数のブロック内シリコン貫通ビアをさらに備える、請求項15に記載の3D集積回路。
【請求項１７】
前記少なくとも1つの3Dブロック内の前記複数のティアにわたって複製される前記1つまたは複数のI/Oピン位置が、前記3D集積回路に関連する総ワイヤ長および専有面積を最小化するために選択される、請求項15に記載の3D集積回路。
【請求項１８】
前記少なくとも1つの3Dブロックが、前記複数のティア間に前記1つまたは複数の回路構成要素を分布させかつ相互接続するために、前記複数のティアに重畳されかつ再実装された2次元(2D)ブロックを備える、請求項15に記載の3D集積回路。
【請求項１９】
前記1つまたは複数の複製されたI/Oピン位置が、前記複数のティアにわたって利用可能な共有空間に応じて前記少なくとも1つの3Dブロック内に配置される、請求項15に記載の3D集積回路。
【請求項２０】
前記3Dブロックまたは前記少なくとも1つの追加のブロックのうちの少なくとも1つが、知的財産(IP)ブロックを備える、請求項15に記載の3D集積回路。
【請求項２１】
前記少なくとも1つの追加のブロックが、2次元(2D)ブロックまたは第2の3Dブロックのうちの1つまたは複数を備える、請求項15に記載の3D集積回路。
【国際調査報告】
2018511928.tif 000012
2018511928.tif 000013
2018511928.tif 000014