今日の複雑で高度に集積されたASIC(Application Specific Integrated Circuit)またはSoC(System On Chip)は、例えばCPU(central processing units)、メモリ、高速トランシーバ、他のフルカスタムまたはセミカスタム仕様の機能ブロック等、非常に多くの再利用可能なIP(intellectual property、設計資産)を備えうる。これらのIPブロックは、例えば2層よりも多くの金属層およびビア層を含む可能性があるスタンダードセル技術またはゲートアレイ技術等のフルカスタム手法またはセミカスタム手法を用いて、それぞれ単独で設計および実装されうる。例えば、ASIC設計またはSoC設計において一般的に用いられる機能ブロックの1つとしてRAMブロックが挙げられる。RAMブロックはフルカスタム設計でもよいし、メタルプログラマブル設計でもよく、3層以上の金属層およびビア層を含む可能性がある。また、ASICやSoCが、設計の複雑度に応じて、5層より、または6層より多く、最大10層の金属層を含みうることも今日では非常に一般的である。
高度に集積されたASICまたはSoCを製造する際に通常用いられる周知の手法の1つとして、スタンダードセル技術が挙げられる。この技術においては、すべての層(活性層および相互接続層(interconnect layer))が完全にカスタマイズ可能なため、高度な柔軟性を実現可能である。その結果、スタンダードセル方式では、多くの場合、最適なダイサイズ、最高性能、および最も容易なIPの集積化が達成可能である。しかしながら、スタンダードセル技術においては、シリコンウエハにパターンを投射して集積回路を作製する際、各層ごとに異なるマスクを用いる必要があり、今日の最先端IC製作プロセスノード(例えば、45nm)においては、一マスクセットあたりのマスクの費用が100万ドルを容易に超えてしまう場合がある。よって、時間およびコストの観点から、スタンダードセル技術は多くのASICまたはSoCを実現するには不向きとなってきている。
スタンダードセル技術の欠点、特に、ASICまたはSoC製造に際してかかる高いマスク費用および長時間にわたる製造時間を克服するため、例えばゲートアレイ技術およびストラクチャードASIC技術等のメタルプログラマブル技術が提案されている。メタルプログラマブル技術においては、固定マスク層の一部が独立して設計されており、金属層またはビア層のみをカスタマイズしてASICまたはSoCを作製すればよく、製造時間の短縮およびマスク費用の削減を実現可能であるという利点がある。メタルプログラマブル技術においては、多数のベースセルが非プログラマブル層(例えば、固定領域)に存在し、ベースセルのカスタマイズは金属層またはビア層によってのみ行えばよい。さらに、メタルプログラマブル技術を用いたASICまたはSoCデバイスは、カスタマイズ不可の金属層をあらかじめ多層備えた多数のIPブロックを備えることができ、それらの金属層はIPブロック固有の固定的な(intrinsic)要素であるため、ASICまたはSoCへ集積した際にも改変されることがない。
図1Aは、従来のゲートアレイ技術を用いて集積回路100を製造する際に用いられうる例示的な積層体(stack of layers)を示す図である。固定領域200は、基板層201、拡散層202、およびゲート電極層203を備え、P型およびN型MOSトランジスタを形成することができる。固定領域200の各層はカスタマイズ不可または改変不可としてもよい。よって、利用可能なトランジスタまたはベースセルをあらかじめ規定して、ウエハ上に前もって製作しておいてもよく、その後、プログラマブル領域210に存在する各層をカスタマイズすることにより、前記トランジスタまたはベースセルをカスタマイズまたはプログラミング可能としている。従来のゲートアレイ技術においては、集積回路100を実装する際に固定領域200の各層は共通となるため、結果として、スタンダードセル技術と比較して層数を削減することが可能である。
図1Bは、従来のゲートアレイ技術を用いた2入力NAND回路の一例を示すレイアウト図である。最も一般的に用いられるゲートアレイベースセルは、2つのP型MOSトランジスタ21と2つのN型MOSトランジスタ22を含む。これらのトランジスタは、基板層201、拡散層202、およびゲート電極層203で形成することができるが、各層は図1Aの固定領域200の一部である。本図の設計では、プログラマブル領域210の一部であるコンタクト層205および金属層211を用いて、いくつかのP型MOSのノードとN型MOSのノードを接続し、NAND機能回路を作製している。
メタルオンリープログラマブル技術により実現可能な利点を維持しつつ、ダイサイズの小型化および高性能化による潜在的な利点を実現するため、メタルプログラマブル技術においては多くの試みがなされてきた。特許文献1〜特許文献5には、ゲート密度(例えば、ダイサイズ)を向上させるためのさまざまなゲートアレイベースセル構造、およびベースセル中のさまざまなサイズのトランジスタが開示されている。特許文献6には、ゲート密度を高めるための2種類の異なるベースセル、およびスタンダードセル技術およびゲートアレイ技術におけるグローバル配線と製品化までに要する時間の問題(time to market problems)を改善するカスタマイズ化のための金属層のレベルの引き上げが開示されている。特許文献7〜特許文献10には、FPGA(Field Programmable Gate Array)において一般的な、ルックアップテーブル(LUT)ベースセルを有する単一ビア層によってカスタマイズ可能なメタルプログラマブル集積回路が開示されている。これらの開示によれば、結果として単一マスクによりプログラマブルなICが製造可能であり、マスク費用を削減することができる。しかしながら、これらのデバイスは、従来のゲートアレイと比較して、例えばLUT等といったサイズがより大きいベースセルに依存しうる。加えて、スタンダードセル技術に相当する密度、電力、性能が得られるとは限らない。特許文献11および特許文献12には、マルチプレクサ、単純な組み合わせ論理回路、またはインバータ等を含む種々のベースセルにより、プログラマブルマスク層の層数を最小限に抑えることが開示されているが、これらのベースセルによっても、スタンダードセル技術と同等の密度、電力、性能は得られない。
以下に、本発明の十分な理解のため、多くの具体的な詳細を記載する。しかしながら、これらの具体的詳細の一部またはすべてがない場合でも、本発明が実施可能なことは当業者とって明らかであろう。他の例においては、本発明を不必要に曖昧にすることにならぬよう、周知の工程動作は詳細に記載していない。
図2は、本発明の一態様に係るカスタム高集積回路(IC)100の一例を示す図である。集積回路100は、1つ以上の中央処理装置(CPU)101を備え、前記CPUは、マイクロプロセッサ、マイクロコントローラ、状態機械、または他の適切な処理装置とすることができる。集積回路100は、また、多数の出入力装置(I/O)102を備え、IC100とシステム内の他の各ICとの間でデータまたは信号を送受信することもできる。IC100はまた、多数のメモリ103を備えていてもよく、メモリは、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、レジスタファイル、または他のタイプのメモリとすることができる。IC100は、さらに、本発明を具現化する集積回路105を備えていてもよく、また、図2に示すように、IC100をCPU101の一要素としてCPU101に含むこともできる。同様に、多数の集積回路105が、任意の機能回路ブロックまたはすべての機能回路ブロックに含まれていてもよい。さらに、図2に示す各機能回路ブロック(またはIP)は、スタンダードセル技術、フルカスタム技術、またはメタルプログラマブル技術等のさまざまな技術を用いて実現可能であり、これらの機能回路ブロックは、各機能ブロックの一部でありカスタマイズ不可でありうる固定的な(intrinsic)相互接続層を含んでいてもよい。例えば、メモリ103のうちの1つを、フルカスタムメモリ(RAM)としてもよく、メモリの一部でありカスタマイズ不可または改変不可とした多数のCMOSトランジスタおよび固定的な相互接続層で構成してもよい。メタル3層までの固定的な相互接続層を用いる多数の集積回路105およびメモリ103を含む集積回路100が作製される場合、集積回路105において妥当なルータビリティおよびダイサイズを達成するには、5層以上の金属層およびそれらのビア層が必要となりうる。この例においては、メモリは既にメタル3層までを有しているため、追加の層が少なくとも2層必要となりうる。また、各メモリ間で信号接続を行うには、追加の相互接続金属層およびそれらのビア層が少なくとも2層必要となりうる。例えば、メタル3層までを固定的な階層とするメモリをまたいでの信号接続またはルーティングは、特に、メタル4層、ビア4層、およびメタル5層を利用することにより行うことができる。本例においては、従来のゲートアレイを用いてカスタマイズを行うには、5層すべての金属層およびそれらのビア層が必要となりうる。しかしながら、本発明の一実施形態によれば、カスタマイズを行うにあたり、3つの金属層およびそれらのビア層のみを必要とするため、マスク費用の削減および製造時間の短縮という利点が実現可能となる。
図3は、IC100の製作にあたり用いることのできる一般的な積層体を示す図である。図3に示す一般的な積層体は、CMOS製造プロセスを余すところなく説明することを意図したものではないことは理解されよう。しかしながら、集積回路105を標準的なCMOS製造プロセスによって製造してもよい。いくつかの実施形態を、nウェルとp基板を用いたCMOSプロセスとの関連において説明するが、当業者であればこの概念が、三重ウェルCMOSまたはSOI(Silicon-On-Insulator)等、CMOS技術のすべての変形例に適用可能であることは容易に理解されよう。
ここで、図3を参照すると、基板201、拡散層202、およびゲート電極層203を用いて多数のPタイプおよびNタイプのMOSトランジスタが形成可能である。さらに、コンタクト層205、メタル1層211、ビア1層212、および追加の相互接続層を用いて、集積回路100を作製可能である。今日のCMOSプロセス技術においては、一般に、10層までの金属層およびビア層を用いてIC100を作製する。スタンダードセル技術においては、図3に示すすべての層がカスタマイズ可能であり、IC100の各層ごとに固有のパターンを含みうるため、固有のマスクセットを要する。
メタルプログラマブル技術においては、2つの異なる領域が複数の相互接続層(例えば、金属層およびビア層)を含みうる。領域のうちの1つは、固定(非プログラマブル)領域であってもよく、この領域内の各マスク層は固定されておりカスタマイズ不可でありうる。一方、第2の領域は、プログラマブル領域であってもよく、この領域内の各マスク層はカスタマイズ可能であり、特定の設計を有する集積回路の作製が可能となる。
図4に示すように、好適な実施形態によれば、プログラマブル領域内のマスク層のみを用いてトランジスタレベルでのカスタマイズを実現しつつも、プログラマブル領域に含まれるマスクの数を削減することが可能となる。固定領域の上に設けた可変プログラマブル領域を用いることにより、固定的な相互接続層を有しうる多数の機能ブロックまたは設計資産(IP)を有する集積回路を柔軟に実装することが可能となる。図4のシステムにおいては、プログラマブル領域の上に存在する相互接続層を固定する(別の固定領域)ことにより、存在するカスタマイズ層の数を削減しているが、別の固定領域は、配電および接地配線ネットワーク、クロックネットワーク、および、例えばシステムリセット、テストモード、テストイネーブル等のグローバル信号ネットワークに利用可能な追加のマスク層を含んでいてもよい。
図4は、本発明の種々の実施形態に係る集積回路100を製造する際に用いる積層体の一例を示す図である。図4の各実施形態においては、固定領域300内の層数を増加させ、プログラマブル層をより上位の相互接続層であるプログラマブル領域310へ移動可能としている。よって、IC100を新たに作製するにあたり必要なマスク数を削減することができる。IC100は、前述の、メタル3層までが固定的な相互接続層であるメモリ(RAM)の例のように、カスタマイズ不可である固定的な相互接続層を有する多数の集積回路105および機能ブロックを含んでいてもよい。
図4の例において、固定領域300は、従来のゲートアレイ技術の場合を示す図1Aの固定領域200に加え、コンタクト層205、メタル1層211、ビア1層212、メタル2層221を含む。種々の実施形態においては、特定の設計に応じて後から仕様・設定変更するため、メタル2層221までは前もって製作したIC100のウエハを保持することにより、固定層の数を増加しカスタマイズ可能な層の数を削減して、生産設備コストの削減および製造時間の短縮が可能となる。
図4において、IC100は、プログラマブル領域310の上に追加の固定領域320を備えることもでき、プログラマブル層の層数をさらに削減してもよい。追加の固定領域320は、ビア5層252、メタル6層261、および追加の相互接続層270を含んでいてもよく、固定領域320は、配電ネットワーク、クロックネットワーク、および、システムリセット、テストモード、テストイネーブル等のグローバル信号ネットワークに利用されうる。
図5A〜図5Eは、プログラマブル領域310内の1層以上を用いて集積回路105を作製する、種々の好適な実施形態を示す図である。回路105では、固定領域300内の層をあらかじめ決定および製作することもでき、それにより、マスク費用を削減し製造時間を短縮してもよい。
図5Aは、例示的なベースセル400を用いた一実施形態の回路図であり、ベースセルは、本例では、4つのMOSトランジスタを含む。その他の実施形態では、ベースセルは、6つ以上のMOSトランジスタを含んでもよい。ベースセルは、2つのP型MOSトランジスタおよび2つのN型MOSトランジスタを有する。MPLおよびMPRはP型トランジスタであり、左のP型トランジスタMPLおよび右のP型トランジスタMPRは共通のドレインノードPMを有し、互いに接続している。左のP型トランジスタMPLのソースノードをPLと表記し、右のP型トランジスタMPRのソースノードをPRと表記する。同様に、MNLおよびMNRはN型MOSトランジスタであり、左のN型トランジスタMNLおよび右のN型トランジスタMNRは共通のドレインノードNMを有する。左のN型トランジスタMNLのソースノードをNLと表記し、右のN型トランジスタMNRのソースノードをNRと表記する。P型トランジスタのボディノードであるPBおよびN型トランジスタのボディノードであるNBも図示されている。ボディノード、ソースノード、ドレインノード、およびゲートノードはすべてより上位レベル(例えば、メタル2層)へ昇格(promoted)されて、プログラマブル領域310内の層によりプログラム可能である。
図5Bは、図5Aの回路図と等価のベースセル400の例示的なレイアウト図である。MPLトランジスタおよびMNLトランジスタの各ゲートは、GLと表記されたゲート電極と接続される。同様に、MPRトランジスタおよびMNRトランジスタの各ゲートは、GRと表記されたゲート電極と接続される。図5Bにおいてもまた、ボディノード、ソースノード、ドレインノード、およびゲートノードはすべてより上位レベル(例えば、メタル2層)へ昇格(promoted)されて、プログラマブル領域310内の層によりプログラム可能である。
図5Cは、図5Bに図示したベースセル400の例示的なレイアウト図であり、固定領域300の一部でありうるコンタクト層205およびメタル1層211をさらに示す図である。従来のスタンダードセル技術およびゲートアレイ技術においては、コンタクト層205およびメタル1層211を用いて、トランジスタのさまざまなノードへの接続を行い、図1A〜1Bに示す所定の各機能を創出する。図5Cの実施形態においては、コンタクト層205およびメタル1層211は、主に、すべてのトランジスタのノードに上層のメタル2層221への伝導経路を提供するのに用いられる。
種々の実施形態において、ゲートノード用および拡散ノード用のメタル1配線は、おもに、ゲート電極方向(Y方向)と同方向(平行)に配置されることが多い。本図においては、ゲート電極層203はおもに垂直方向に延びており、ボディノード以外のすべてのトランジスタのノード用のメタル1配線は垂直方向を向いていてもよい。本発明のさらに別の実施形態においては、電源ノード(VCC)用のメタル1配線は、ゲート電極方向に直交していてもよく、P型トランジスタのボディノードへ接続する。接地ノード(VSS)用のメタル1配線もまた、ゲート電極方向に直交していてもよく、N型トランジスタのボディノードへ接続する。
図5Dは、図5Cに図示されるベースセル400の例示的なレイアウト図であり、固定領域300内のビア1層212およびメタル2層221をさらに示す図である。メタル2配線は、電源(VCC)配線および接地(VSS)配線を除いて、メタル1層と直交していてもよい。一実装形態においては、電源(VCC)配線および接地(VSS)メタル2配線をメタル1配線の上部に配置してビア1層212と接続し、通電容量を増加させる一方、ベースセル400をカスタマイズする際に、電源および接地接続の簡素化が容易になり、プログラマブル領域310を用いてさまざまな機能性を有するセルを作製する。
本発明のさらに別の実施形態では、ベースセル400に含まれる多数のメタル2層221の配線は、どのトランジスタのノードとも接続していなくてもよく、上位層との信号接続用のフィードスルーとして用いられてもよい。図5Dにおいて、メタル2配線411、412、および413はフィードスルー配線であり、上位の相互接続層においてさまざまなセル機能を実現しうるものであり、1つのベースセルから別の1つ以上のベースセルへの水平方向の信号接続を促進しうる。図5Dに示すように、図5Aに示したすべてのトランジスタのノードはメタル2層221へ昇格(promoted)し(すなわち利用可能または電気的にアクセス可能となり)、プログラマブル領域310内の層を用いて、異なる機能性を有するセルを作製する際に用いることができる。
図5Eは、図5Dのレイアウト図を簡略化した図であり、図5Aに示すすべてのトランジスタのノードから昇格した対応ノードを有するメタル2層のみを図示している。図5Eは、メタル3層231およびメタル5層251により使用されうる垂直トラック420、およびメタル4層241およびメタル6層261により使用されうる水平トラック430も図示しており、各トラックのピッチは、金属およびビアの間隔および幅の製造用設計規則に基づいて、対応する各層の最小金属ピッチとすることができる。
一実施形態によると、メタル2層221は好適な水平方向を有し、メタル3層231はそのメタル2層221の好適な方向に直交する好適な垂直方向を有しうる。同様に、メタル4層241は好適な水平方向を有し、メタル5層251はそのメタル4層241の好適な方向に直交し、かつメタル2層221の好適な方向と同じである好適な垂直方向を有しうる。
別の実施形態によると、メタル2配線の形状および長さは、メタル2配線411および412として図示されるように、おのおの異なっていてもよい。メタル2配線は、他層(例えばメタル3層、メタル5層)からの垂直配線により使用されうる、2本以上の垂直ルーティングトラック上にまたがっており、さまざまな機能回路を作製する際のレイアウトを単純化し、1つ以上の(例えば、その層の金属配線のない)空トラックを実現してゲート利用密度を高める。
本発明のさらに別の実施形態によると、電源VCC用および接地VSS用メタル2配線は、ベースセル400の他のメタル2配線と、同じまたは異なる幅を有していてもよいし、他のメタル2配線と、同じまたは異なる間隔(ピッチ)を有していてもよい。本実施形態により可能となりうる利点としては、電源および接地配線ネットワークを設計する際の柔軟性を促進できる点、プログラマブル領域310を用いて電源接続の頻度を減らし、より望ましいルータビリティおよびゲート利用が実現可能という点が挙げられる。
本発明のさらなる実施形態によると、ベースセル400は、プログラマブル領域310の層のみを利用して、インバータ回路、バッファ回路、NAND回路、NOR回路、フリップフロップ回路、ラッチ回路、マルチプレクサ回路、および他の機能回路等、多様な機能を果たすよう形成されてもよい。
図6Aは、本発明のある特定の実施形態による2入力NAND回路の例示的なレイアウト図であり、1つのベースセル400は、プログラマブル領域310のビア2層222およびメタル3層231のみを用いてNAND機能回路を作製している。ベースセル400のメタル2配線は、2つ以上の垂直トラック上にまたがっており、従来のゲートアレイと比較して、より単純にトランジスタのノードの接続を実現できるよう配列されていてもよい。その場合、占有される垂直金属トラックの数が減少する可能性があり、集積回路100の作製に利用可能な1つ以上の(同層金属配線のない)空垂直トラックが実現されうる。
図6Aの例を参照すると、NAND機能を作製するにあたり4本のうち3本のメタル3垂直トラックのみが利用されうる。よって、このデバイスでは、1本の(メタル3配線なしの)空メタル3垂直トラック510が集積回路100を構成する際に利用可能となりうる。この可能となりうる利点は、図6Bに図示されよう。図6Bでは2つの異なる2つの入力NAND回路が隣り合って設置されている。本例では、図6Aでは垂直トラック510である垂直トラック520にはメタル3配線がなく、集積回路100を構成する際の信号接続に利用可能である。
ここで図6Aを参照すると、いくつかの実施形態に係る、別の図示される利点は、A2ポート501用およびZNポート503用のメタル3配線は、ポートの垂直方向において(アクセス可能な)他のメタル3配線とは関係がないことである。よって、メタル3層を用いたこれらのポートへの接続可能性を実現し、集積回路100を実装する際、ルータビリティおよびゲート利用密度を高めることが可能となりうる。図6Aの実施形態の他の利点は、メタル3ポートA1、メタル3ポートA2、およびメタル3ポートA3は、多数の水平トラック上にまたがるため、信号接続を向上可能なことである。なぜなら、自動的信号ルータは、集積回路100を構成する際、複数の金属層およびビア層を用いて、ジョグまたは方向転換なしに、信号接続にとって最適な水平ルーティングトラックを選択することができるからである。例えば、ZNポート503は10本の水平ルーティングトラック上にまたがっており、自動信号ルータは、その中から最短かつ直線的な信号接続(例えばメタル4層)を、複数の金属層およびビア層を用いて、ジョグまたは方向転換なしで、選択しうる。
図6Cは、3つのベースセル400を用いて、インバータに接続されている4入力NANDにより作製可能な4入力AND回路を示すレイアウト図であり、後工程に利用可能な1本以上の空メタル3垂直トラックが存在しうることをさらに示している。垂直トラック521、522、および523は空でありメタル3配線を有していない。よって集積回路100に実装した際の信号接続を高めることが可能となる。本発明の各実施形態によると、2つ以上のベースセル400により実装可能な機能回路は、2本以上の空のメタル3垂直トラックを有する可能性があるため、より望ましいルータビリティおよびゲート利用が実現可能となる。
図7は、多数のベースセル400を有する別の例示的集積回路105を示す図である。例示的なICは、図5Eに示されるようなメタル2層のみを有する2×4配列のベースセル400を含む。一実施形態によると、多数のベースセル400は、電源(VCC)バスまたは接地(VSS)バスを共有するために、行方向に配列されていてもよく、それらは交互にX軸に対して対称(例えば、X軸に対して線対称)であってもよい。具体的な実施形態ではベースセル400は行方向に配列されうるが、他の実施形態ではベースセル400は列方向に配列されていてもよい。
本発明の他の実施形態は、機能ブロックをさらに容易にレイアウトするために1つ以上の異なるタイプのベースセル400を有していてもよい。図8Aおよび8Bは、図5Cに示された同じベースセル400を有しつつ、異なるメタル2配線パターンを有しうる例示的ベースセルを示す図である。
例えば、図8Aは、図5Eと同様のメタル2パターンを有する、第1タイプ(タイプA)のベースセル400であってもよい。図8Bは、図5Eとは異なるメタル2パターンを有する、第2タイプ(タイプB)のベースセル400であってもよく、1つ以上の異なるメタル2パターンが存在しうる。図8Bはそのような例で、第2タイプのベースセル400は、1本のメタル2配線702を含み、それは図8Aのメタル2配線701とは異なるものであってもよい。
図8Cは集積回路105の別の実施形態の図であり、集積回路105は、多数の第1タイプおよび第2タイプのベースセル400を含む。本図において、両方のタイプのベースセル400の2×4配列が含まれる。本実施形態においては、より長尺なメタル2配線703が実現可能であるという利点が得られるため、大規模なセル機能を作製する際により容易にレイアウトすることができ、接続可能なベースセル400を多く含むことができる。
図9は、さらに別の実施形態を示す図であり、この実施形態では、集積回路100は1層以上のプログラマブル層および1層以上の固定層またはそれらの任意の組み合わせを有する可変プログラマブル領域890を含む。固定領域800はすでに記載した構成と同様であってよいし、プログラマブル領域810を用いた集積回路105の作製に供するものであってもよい。しかしながら、種々の固定的な金属層を含む多数の機能ブロックを有する集積回路100を作製するためには、追加の相互接続層が必要となる場合もありうる。したがって、図9の実施形態においては、集積回路105の作製にあたり、より層数の多い固定領域800およびプログラマブル領域810を用いてもよい。また、集積回路100の相互接続要求に基づき追加のプログラマブル層および固定層を加えてもよく、プログラマブル相互接続層の層数をさらに最小限に削減してもよい。
当業者には、上記の記載は例示に過ぎず、いかなる場合も限定を意図したものではないことが理解されよう。開示した範囲内の内容を精査すれば、本発明のその他の実施形態も、当業者には容易に自明となるであろう。
以上、好適な実施形態を種々の変形例や変更例とともに参照して、本発明の具体的な利点について詳細に説明したが、本発明のより広範な局面において、さらなる実施形態、変更、および変形が可能であり、それらはすべて以下に記載の請求の範囲に示す本発明の精神および範囲により規定される。