(57)【要約】【課題】チップ資源を浪費することなく、消費電力を低減すること。【解決手段】半導体集積回路１００は、スキャンチェーン１４０と、スキャンチェーン１４０上に形成されたスキャンフリップフロップ１１０と、スキャンチェーン１４０上に形成されたダミーブロック１２０と、を備える。ダミーブロック１２０は、クロック信号ＣＬＫが入力されるクロック端子Ｄ４と、スキャンチェーン１４０に接続されたスキャン入力端子Ｄ２と、スキャンチェーン１４０に接続されたスキャン出力端子Ｄ５と、を有する。ダミーブロック１２０は、クロック信号ＣＬＫに依存すること無く、スキャン入力端子Ｄ２に入力される入力データに応じたデータをスキャン出力端子Ｄ５に出力する。【選択図】図１０
2009038072.tif 000002
【特許請求の範囲】
【請求項１】
スキャンチェーンと、
前記スキャンチェーン上に形成されたスキャンフリップフロップと、
前記スキャンチェーン上に形成されたダミーブロックと
を備え、
前記ダミーブロックは、
クロック信号が入力されるクロック端子と、
前記スキャンチェーンに接続されたスキャン入力端子と、
前記スキャンチェーンに接続されたスキャン出力端子と
を有し、
前記ダミーブロックは、前記クロック信号に依存すること無く、前記スキャン入力端子に入力される入力データに応じたデータを前記スキャン出力端子に出力する
半導体集積回路。
【請求項２】
請求項１に記載の半導体集積回路であって、
前記ダミーブロックは、前記スキャン入力端子と前記スキャン出力端子との間を接続するスルーパスを有する
半導体集積回路。
【請求項３】
請求項２に記載の半導体集積回路であって、
前記スルーパスは、前記スキャン入力端子と前記スキャン出力端子との間を接続する組み合わせ回路を含む
半導体集積回路。
【請求項４】
請求項１乃至３のいずれかに記載の半導体集積回路であって、
前記ダミーブロックは更に、前記クロック端子、前記スキャン入力端子、前記スキャン出力端子以外のブロック端子を有し、
前記ブロック端子は、前記ダミーブロック外の配線と接続されていない
半導体集積回路。
【請求項５】
請求項４に記載の半導体集積回路であって、
前記クロック端子及び前記ブロック端子は、前記ダミーブロック内において配線と接続されていない
半導体集積回路。
【請求項６】
請求項１乃至５のいずれかに記載の半導体集積回路であって、
前記スキャンフリップフロップは、
前記クロック信号が入力されるクロック端子と、
前記スキャンチェーンに接続されたスキャン入力端子と、
前記スキャンチェーンに接続されたスキャン出力端子と
を有し、
前記クロック端子、前記スキャン入力端子、及び前記スキャン出力端子間の位置関係は、前記ダミーブロックと前記スキャンフリップフロップとで同じである
半導体集積回路。
【請求項７】
請求項１乃至６のいずれかに記載の半導体集積回路であって、
前記スキャンフリップフロップは、前記クロック信号が入力されるクロック端子を有し、
前記クロック端子の入力容量は、前記ダミーブロックと前記スキャンフリップフロップとで同じである
半導体集積回路。
【請求項８】
請求項１乃至７のいずれかに記載の半導体集積回路であって、
前記ダミーブロックは、前記スキャンフリップフロップと同じサイズを有する
半導体集積回路。
【請求項９】
請求項１乃至８のいずれかに記載の半導体集積回路であって、
前記スキャンフリップフロップ及び前記ダミーブロックは、トランジスタが形成される下地層を有しており、
前記ダミーブロックは、少なくとも前記スキャンフリップフロップと同じトランジスタ構造を前記下地層に有する
半導体集積回路。
【請求項１０】
半導体集積回路の開発方法であって、
（Ａ）スキャンフリップフロップセルとダミーブロックセルを含むセル群を配置することと、
（Ｂ）前記スキャンフリップフロップセルと前記ダミーブロックセルに対して、クロックツリーシンセシスを実施することと、
（Ｃ）前記スキャンフリップフロップセルと前記ダミーブロックセルを含むスキャンチェーンが構築されるように、前記配置されたセル間の配線を行うことと、
を有し、
前記ダミーブロックセルは、
クロック信号が入力されるクロック端子と、
前記スキャンチェーンに接続されるスキャン入力端子と、
前記スキャンチェーンに接続されるスキャン出力端子と
を有し、
前記ダミーブロックセルは、前記クロック信号に依存すること無く、前記スキャン入力端子に入力される入力データに応じたデータを前記スキャン出力端子に出力する
半導体集積回路の開発方法。
【請求項１１】
請求項１０に記載の半導体集積回路の開発方法であって、
前記ダミーブロックセルは更に、前記クロック端子、前記スキャン入力端子、前記スキャン出力端子以外のブロック端子を有し、
前記（Ｃ）プロセスにおいて、前記ブロック端子は、前記ダミーブロックセル外の配線と接続されない
半導体集積回路の開発方法。
【請求項１２】
請求項１１に記載の半導体集積回路の開発方法であって、
前記クロック端子及び前記ブロック端子は、前記ダミーブロックセル内において配線と接続されていない
半導体集積回路の開発方法。
【請求項１３】
請求項１０乃至１２のいずれかに記載の半導体集積回路の開発方法であって、
前記ダミーブロックセルは、前記スキャンフリップフロップセルと同じサイズを有し、
前記スキャンフリップフロップセルは、
前記クロック信号が入力されるクロック端子と、
前記スキャンチェーンに接続されるスキャン入力端子と、
前記スキャンチェーンに接続されるスキャン出力端子と
を有し、
前記クロック端子、前記スキャン入力端子、及び前記スキャン出力端子間の位置関係は、前記ダミーブロックセルと前記スキャンフリップフロップセルとで同じであり、
前記開発方法は、更に、
（Ｄ）前記ダミーブロックセルを前記スキャンフリップフロップセルで置換すること
を有する
半導体集積回路の開発方法。
【請求項１４】
請求項１３に記載の半導体集積回路の開発方法であって、
前記クロック端子の入力容量は、前記ダミーブロックセルと前記スキャンフリップフロップセルとで同じであり、
前記（Ｄ）プロセスの後、クロックツリーシンセシスは再度実施されない
半導体集積回路の開発方法。
【請求項１５】
請求項１０乃至１４のいずれかに記載の半導体集積回路の開発方法であって、
前記スキャンフリップフロップセル及び前記ダミーブロックセルは、トランジスタが形成される下地層を有しており、
前記ダミーブロックセルは、少なくとも前記スキャンフリップフロップセルと同じトランジスタ構造を前記下地層に有しており、
前記開発方法は、更に、
（Ｅ）前記ダミーブロックセルが前記スキャンフリップフロップセルと同等の機能を持つように、前記下地層より上層の配線層における配線をつなぎ換えること
を有する
半導体集積回路の開発方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路及びその開発方法に関する。特に、本発明は、スキャンフリップフロップを備える半導体集積回路及びその開発方法に関する。
【背景技術】
【０００２】
半導体集積回路の製造後、製品中に遅延故障（delay fault）や縮退故障（stuck-at fault）が発生しているか否かを確認するためにテストを行なう必要がある。そのテスト時のテスタビリティを高めることができるテスト回路を、設計段階で予め組み込んでおく設計技術が知られている。そのような設計技術は、「テスト容易化設計（ＤＦＴ： Design For Testability）」と呼ばれている。
【０００３】
テスト容易化設計の一手法として、スキャン設計が知られている。スキャン設計によれば、設計回路内のフリップフロップの全て又は一部が、スキャンフリップフロップに置き換えられる。テスト時、それらスキャンフリップフロップは、あるスキャンチェーン（スキャンパス）を構成することができる。そのスキャンパスを通してテストパタンを入力及び出力することにより、スキャンテストが行なわれる。
【０００４】
また、半導体集積回路の開発途中あるいは開発終了後に、設計回路の機能修正を行う必要がでてくる場合がある。機能修正を短期間で実現するために、機能修正用のダミーセルを設計回路にあらかじめ配置しておく技術が知られている（例えば、特許文献１参照）。ダミーセルは、当初の設計回路には不要な予備的なセルであるが、機能修正が必要とされた場合には、その機能修正を実現するために使用される。
【０００５】
特許文献２には、スキャンフリップフロップセルに加えて、機能修正用の予備的なスキャンフリップフロップセルをあらかじめ配置しておく技術が記載されている。予備的なスキャンフリップフロップセルは、通常のスキャンフリップフロップセルと同じ機能を有しており、機能修正が必要とされた場合に設計回路に組み込まれる。この機能修正の段階で、予備的なスキャンフリップフロップセルにクロック配線を接続すると、クロック供給のバランスが崩れてしまう。そこで、当該関連技術によれば、通常のスキャンフリップフロップセルと予備的なスキャンフリップフロップセルの両方が、クロックツリーシンセシスの対象となる。そして、レイアウト段階において、クロックツリー回路が、通常のスキャンフリップフロップセルと予備的なスキャンフリップフロップセルの両方に接続される。その結果、タイミングが調整されたクロック信号が、クロックツリー回路を通して、通常のスキャンフリップフロップセルと予備的なスキャンフリップフロップセルの両方に供給される。
【０００６】
【特許文献１】特開２００５−３２２６９４号公報
【特許文献２】特開２００６−１２８６３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本願発明者は、次の点に着目した。上述の特許文献２に記載された技術によれば、クロック信号が、通常のスキャンフリップフロップだけでなく、予備的なスキャンフリップフロップにも供給される。そのため、製品チップの動作時、残っている予備的なスキャンフリップフロップもクロック信号に応答して動作してしまう。このことは、無駄な電力消費を意味する。
【０００８】
消費電力を低減するために、予備的なスキャンフリップフロップの前段にクロックゲーティング回路を別途設けることも考えられる。そのクロックゲーティング回路は、予備的なスキャンフリップフロップへのクロック供給を、制御信号に応答して停止させる。これにより、製品チップの動作時の無駄な電力消費を抑制することができる。しかしながら、別途設けられるクロックゲーティング回路はチップ資源を消費し、このことはチップ面積の増大を招く。
【課題を解決するための手段】
【０００９】
以下に、［発明を実施するための最良の形態］で使用される番号・符号を用いて、［課題を解決するための手段］を説明する。これらの番号・符号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］との対応関係を明らかにするために括弧付きで付加されたものである。ただし、それらの番号・符号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１０】
本発明の一実施の形態では、スキャンフリップフロップセル（１０）とダミーブロックセル（２０’）が用いられる。ダミーブロックセル（２０’）は、設計回路の機能修正が必要とされた場合に、スキャンフリップフロップセル（１０）で置換される予備的なセルである。そのダミーブロックセル（２０’）は、クロック信号（ＣＬＫ）が入力されるクロック端子（Ｄ４）と、スキャンチェーン（４０）に接続されるスキャン入力端子（Ｄ２）と、スキャンチェーン（４０）に接続されるスキャン出力端子（Ｄ５）と、を少なくとも有する。そのダミーブロックセル（２０’）は、クロック信号（ＣＬＫ）に依存すること無く、スキャン入力端子（Ｄ２）に入力される入力データに応じたデータをスキャン出力端子（Ｄ５）に出力するように構成される。
【００１１】
このようなダミーブロックセル（２０’）を用いた、半導体集積回路の開発方法は、次の通りである。まず、スキャンフリップフロップセル（１０）と上記ダミーブロックセル（２０’）を含むセル群が配置される。次に、それらスキャンフリップフロップセル（１０）とダミーブロックセル（２０’）に対して、クロックツリーシンセシスが実施される。その後、スキャンフリップフロップセル（１０）とダミーブロックセル（２０’）を含むスキャンチェーン（４０）が構築されるように、セル間の配線が行われる。設計回路の機能修正が必要な場合、ダミーブロックセル（２０’）は、スキャンフリップフロップセル（１０）で置換される。
【００１２】
このような開発方法の結果得られる半導体集積回路（１００）は、次のような特徴を有する。すなわち、半導体集積回路（１００）は、スキャンチェーン（１４０）と、スキャンチェーン（１４０）上に形成されたスキャンフリップフロップ（１１０）と、スキャンチェーン（１４０）上に形成されたダミーブロック（１２０）と、を備える。ダミーブロック（１２０）は、クロック信号（ＣＬＫ）が入力されるクロック端子（Ｄ４）と、スキャンチェーン（１４０）に接続されたスキャン入力端子（Ｄ２）と、スキャンチェーン（１４０）に接続されたスキャン出力端子（Ｄ５）と、を有する。ダミーブロック（１２０）は、クロック信号（ＣＬＫ）に依存すること無く、スキャン入力端子（Ｄ２）に入力される入力データに応じたデータをスキャン出力端子（Ｄ５）に出力する。
【００１３】
このように、製品チップ上に残っている予備的なダミーブロック（１２０）は、クロック信号（ＣＬＫ）を受け取るが、そのクロック信号（ＣＬＫ）に依存すること無く動作する。従って、通常のスキャンフリップフロップセルと同じ構成を有するダミーセルが用いられる場合と比較して、ダミーブロック（１２０）での消費電力は大幅に削減される。チップ全体での消費電力削減効果は、配置されるダミーブロック（１２０）の数にほぼ比例して増加する。従って、プロセスの微細化により回路規模が大きくなるにつれて、効果はより著しくなる。
【００１４】
更に、消費電力を低減するために、クロック供給を制御するクロックゲーティング回路を、ダミーブロック（１２０）の前段に別途設ける必要はない。このことは、チップ資源の浪費が防止され、チップ資源が有効に活用されることを意味する。また、チップ面積の増大が防止される。
【発明の効果】
【００１５】
本発明によれば、製品チップの消費電力が削減される。更に、ダミーブロックでの電力消費を低減するために、クロックゲーティング回路を別途設ける必要はない。従って、チップ資源が有効に活用され、また、チップ面積の増大が防止される。すなわち、チップ資源を浪費することなく、消費電力を低減することが可能となる。
【発明を実施するための最良の形態】
【００１６】
１．半導体集積回路の開発方法
１−１．概要
本発明の実施の形態では、テスト容易化設計（DFT: Design For Testability）に基づいた技術が提供される。そのために、スキャンテストを実現できるスキャンフリップフロップセル（以下、「スキャンＦＦセル」と参照される）が用いられる。
【００１７】
図１は、本実施の形態で用いられるスキャンＦＦセル１０の一例を概略的に示している。スキャンＦＦセル１０は、データ入力端子Ｔ１、スキャン入力端子Ｔ２、ＳＭＣ（Scan Mode Control）端子Ｔ３、クロック端子Ｔ４、スキャン出力端子Ｔ５、及びデータ出力端子Ｔ６を有している。データ入力端子Ｔ１及びデータ出力端子Ｔ６は、信号配線に接続される端子である。クロック端子Ｔ４は、クロック配線に接続される端子であり、そこにはクロック信号ＣＬＫが入力される。スキャン入力端子Ｔ２及びスキャン出力端子Ｔ５は、スキャンチェーン（スキャンパス）に接続される端子であり、スキャンテスト時に使用される。具体的には、スキャン入力端子Ｔ２は、スキャンチェーン上の前段のスキャンＦＦセル１０のスキャン出力端子Ｔ５に接続され、スキャン出力端子Ｔ５は、スキャンチェーン上の後段のスキャンＦＦセル１０のスキャン入力端子Ｔ２に接続される。ＳＭＣ端子Ｔ３は、通常モードとスキャンテストモードを切り換えるためのＳＭＣ信号が入力される端子である。通常モード時には、データ入力端子Ｔ１からの入力が選択され、スキャンテストモード時にはスキャン入力端子Ｔ２からの入力が選択される。スキャン出力端子Ｔ５とデータ出力端子Ｔ６は、共通であってもよいし、別々であってもよい。
【００１８】
また、スキャンＦＦセル１０は、選択回路１１とデータ保持部１２を有している。選択回路１１は、データ入力端子Ｔ１及びスキャン入力端子Ｔ２からデータを受け取り、ＳＭＣ端子Ｔ３からＳＭＣ信号を受け取る。ＳＭＣ信号が指定するモードに応じて、選択回路１１は、データ入力端子Ｔ１あるいはスキャン入力端子Ｔ２のいずれか一方からのデータを選択し、選択データをデータ保持部１２に出力する。データ保持部１２は、一般的なフリップフロップと同じ周知の構成を有しており、例えばラッチ回路とトランスファゲートから構成されている。データ保持部１２は、選択回路１１から選択データを受け取り、クロック端子Ｔ４からクロック信号ＣＬＫを受け取る。クロック信号ＣＬＫに基づいて、データ保持部１２は、選択データを保持し、また、保持データをスキャン出力端子Ｔ５及びデータ出力端子Ｔ６に出力する。
【００１９】
このように、端子Ｔ１〜Ｔ６の各々は、スキャンＦＦセル１０内部のいずれかの素子に内部配線を介してつながっている。また、スキャンＦＦセル１０は、クロック信号ＣＬＫに基づいて動作する。
【００２０】
一方で、半導体集積回路の開発途中あるいは開発終了後に、設計回路の機能修正を行う必要がでてくる場合がある。その機能修正を短期間で実現し、また、故障検出の品質を維持するために、上述のスキャンＦＦセル１０を容易に追加することができる技術が望まれる。そこで、本実施の形態では、回路設計の段階で、スキャンＦＦセル１０に対応する予備的なセルが予め配置される。後述されるように、その予備的なセルは、スキャンＦＦセル１０に類似しているが、フリップフロップの機能は有していない。その意味で、その予備的なセルは「ダミーブロックセル」と参照される。
【００２１】
後述されるように、本実施の形態に係るダミーブロックセルは、スキャンＦＦセル１０との“置換”が容易であるという特徴を有している。回路設計の段階では、スキャンＦＦセル１０との置換が容易なダミーブロックセルが予め配置される。そして、設計回路の機能修正が必要となった場合には、予め配置されているダミーブロックセルが、スキャンＦＦセル１０で置換される。これにより、スキャンＦＦセル１０を容易に追加し、機能修正を短期間で行うことが可能となる。
【００２２】
図２及び図３は、本実施の形態で用いられるダミーブロックセルの例を示している。図２には、ＤＦＴ処理前のダミーブロックセル２０の例が示されている。一方、図３には、ＤＦＴ処理後の、スキャンテストに適合したダミーブロックセル２０’の例が示されている。
【００２３】
図２及び図３において、端子Ｄ１〜Ｄ６は、スキャンＦＦセル１０の端子Ｔ１〜Ｔ６のそれぞれに対応している。ダミー入力端子Ｄ１及びダミー出力端子Ｄ６は、データ入力端子Ｔ１及びデータ出力端子Ｔ６のそれぞれに対応している。ダミークロック端子Ｄ４は、クロック配線に接続される端子であり、そこにはクロック信号ＣＬＫが入力される。スキャン入力端子Ｄ２及びスキャン出力端子Ｄ５は、スキャンチェーン（スキャンパス）に接続される端子であり、スキャンテスト時に使用される。具体的には、スキャンテスト時、スキャンパタン（テストパタン）は、スキャン入力端子Ｄ２に入力され、スキャン出力端子Ｄ５から出力される。ダミーＳＭＣ端子Ｄ３は、ＳＭＣ端子Ｔ３に対応している。
【００２４】
図２に示されるように、ＤＦＴ処理前のダミーブロックセル２０は、ダミー入力端子Ｄ１、ダミークロック端子Ｄ４、及びダミー出力端子Ｄ６を有している。あるいは、ダミーブロックセル２０は、ダミー入力端子Ｄ１とダミー出力端子Ｄ６を有していなくてもよい。
【００２５】
図３に示されるように、ＤＦＴ処理後のダミーブロックセル２０’は、ダミー入力端子Ｄ１、スキャン入力端子Ｄ２、ダミーＳＭＣ端子Ｄ３、ダミークロック端子Ｄ４、スキャン出力端子Ｄ５、及びダミー出力端子Ｄ６を有している。スキャン出力端子Ｄ５とダミー出力端子Ｄ６は、共通であってもよいし、別々であってもよい。
【００２６】
本実施の形態に係るダミーブロックセル２０’は、図１で示されたスキャンＦＦセル１０に類似しているが、フリップフロップの機能は有していない。その代わり、ダミーブロックセル２０’は、スキャン入力端子Ｄ２とスキャン出力端子Ｄ５との間を接続するスルーパス２１を有している。スルーパス２１では、クロック信号ＣＬＫに依存すること無くデータが転送される。スルーパス２１は、クロック信号ＣＬＫに依存せずに動作するバッファやインバータ等の組み合わせ回路２２を含んでいてもよい。図３で示された例では、組み合わせ回路２２（インバータあるいはバッファ）が、スキャン入力端子Ｄ２とスキャン出力端子Ｄ５との間に接続されている。
【００２７】
このような構成により、ダミーブロックセル２０’は、クロック信号ＣＬＫに依存すること無く、スキャン入力端子Ｄ２に入力されるデータに応じたデータをスキャン出力端子Ｄ５に出力する。つまり、ダミーブロックセル２０’は、クロック信号ＣＬＫが入力されるダミークロック端子Ｄ４を有しているが、そのクロック信号ＣＬＫに依存すること無く動作する。従って、通常のスキャンＦＦセル１０と同じ構成を有するダミーセルが用いられる場合と比較して、ダミーブロックセル２０’での消費電力は大幅に削減される。
【００２８】
また、ダミーブロックセル２０’の内部に設けられる内部配線は、スルーパス２１を構成する配線だけでも十分である。スキャン入力端子Ｄ２とスキャン出力端子Ｄ５以外の端子を、ダミーブロックセル２０’の内部の素子や配線と接続する必要はない。つまり、ダミー入力端子Ｄ１、ダミーＳＭＣ端子Ｄ３、ダミークロック端子Ｄ４等は、内部オープンであってもよい。この場合、スキャンＦＦセル１０と同じ構成を有するダミーセルが用いられる場合と比較して、ダミーブロックセル２０’内の配線禁止領域が圧倒的に少なくなり、配線性が向上する。
【００２９】
また、ダミーブロックセル２０’は、スキャンＦＦセル１０と同じサイズを有していると好適である。更に、ダミーブロックセル２０’における端子Ｄ１〜Ｄ６の相対位置は、スキャンＦＦセル１０における端子Ｔ１〜Ｔ６の相対位置と同じであると好適である。つまり、ダミーブロックセル２０’における端子Ｄ１〜Ｄ６間の位置関係は、スキャンＦＦセル１０における端子Ｔ１〜Ｔ６間の位置関係と同じであると好適である。これにより、ダミーブロックセル２０’をスキャンＦＦセル１０で容易に置換することが可能となる。更に、ダミーブロックセル２０’のダミークロック端子Ｄ４の入力容量は、スキャンＦＦセル１０のクロック端子Ｔ４の入力容量と同じであると好適である。この場合、ダミーブロックセル２０’がスキャンＦＦセル１０で置換された後、クロックツリーシンセシスを再度実施する必要がなくなる。
【００３０】
１−２．開発フロー
図４は、本実施の形態に係る半導体集積回路の開発方法の一例を示すフローチャートである。図４を参照して、上述のスキャンＦＦセル１０及びダミーブロックセル２０’を利用した開発方法の一例を説明する。
【００３１】
ステップＳ１：
まず、設計回路のネットリストが作成される。ネットリストは、設計回路に含まれるセル種やセル間の接続関係を示している。セルは例えば、ＮＡＮＤセル、インバータセル、フリップフロップセル等を含んでいる。更に、後の回路変更（特にフリップフロップセルの追加を伴う変更）に対応するため、図２で示されたダミーブロックセル２０（ＤＦＴ前）が設計回路の適当な箇所に挿入され、ネットリストが更新される。
【００３２】
ステップＳ２：
次に、ＤＦＴ処理が実施され、ネットリストが更新される。具体的には、ネットリスト上で、フリップフロップセルの少なくとも一部が、図１で示されたスキャンＦＦセル１０に置き換えられる。また、上述のダミーブロックセル２０も、図３で示されたダミーブロックセル２０’に置き換えられる。更に、ネットリスト上で、仮のスキャンチェーン（スキャンパス）が構築される。このとき、スキャンＦＦセル１０と共にダミーブロックセル２０’も、スキャンチェーンに組み込まれる。このようにして、ＤＦＴ処理後のネットリストが作成される。
【００３３】
つまりここでは、フリップフロップセルとダミーブロックセル２０とを、テストのためのスキャンパスを構成できるスキャンＦＦセル１０およびダミーブロックセル２０’に置き換え、スキャンパスを構成する処理を行う。なお、ステップＳ１で予めダミーブロックセル２０’を利用したり、ダミーブロックセルが少なくともスキャン入力端子、スキャン出力端子、クロック端子を備える構成としたものを利用した場合には、ここでのダミーブロックセルの置き換えを省略することが可能である。ダミーブロックセルが少なくともスキャン入力端子、スキャン出力端子、クロック端子を備えていればスキャンパス接続を構成できるからである。
【００３４】
ダミーブロックセル２０’の端子Ｄ１〜Ｄ６の接続先は、ネットリストで規定される。それら端子Ｄ１〜Ｄ６のネットリスト上での接続先は、例えば次の通りである。ダミークロック端子Ｄ４は、クロック配線に接続される。スキャン入力端子Ｄ２は、他のセルのスキャン出力端子（Ｔ５あるいはＤ５）に接続される。スキャン出力端子Ｄ５は、他のセルのスキャン入力端子（Ｔ２あるいはＤ２）に接続される。一方、ダミー入力端子Ｄ１やダミーＳＭＣ端子Ｄ３に関しては、接続先は存在しない。スキャン出力端子Ｄ５とダミー出力端子Ｄ６が別々の場合、ダミー出力端子Ｄ６に関しても接続先は存在しない。
【００３５】
本例で用いられるダミーブロックセル２０’は、次の特徴を有している。スキャン入力端子Ｄ２とスキャン出力端子Ｄ５との間は、スルーパス２１で接続されている。一方、スキャン入力端子Ｄ２とスキャン出力端子Ｄ５以外の端子は、ダミーブロックセル２０’の内部の素子や配線と接続されていない。つまり、ダミー入力端子Ｄ１、ダミーＳＭＣ端子Ｄ３、ダミークロック端子Ｄ４等は、内部オープンである。また、ダミーブロックセル２０’は、スキャンＦＦセル１０と同じサイズを有している。更に、ダミーブロックセル２０’のダミークロック端子Ｄ４の入力容量は、スキャンＦＦセル１０のクロック端子Ｔ４の入力容量と同じである。更に、ダミーブロックセル２０’における端子Ｄ１〜Ｄ６間の位置関係は、スキャンＦＦセル１０における端子Ｔ１〜Ｔ６間の位置関係と同じである。つまり、ダミーブロックセル２０’とスキャンＦＦセル１０とを重ねて配置した場合に、各々対応する端子が同じ位置にあるように（換言すれば重なるように）構成されている。なお、ダミーブロックセル２０’は少なくともスキャン入力端子、スキャン出力端子、クロック端子を備えていればよいので、これらのみしかもたない場合は、スキャン入力端子、スキャン出力端子、クロック端子が、スキャンＦＦセル１０のそれぞれ対応する端子に重なるように構成されていればよい。
【００３６】
ステップＳ３：
次に、ネットリストに従って、セル配置（cell placement）が実施される。このとき、上述のスキャンＦＦセル１０及びダミーブロックセル２０’を含むセル群が、セルライブラリから読み込まれ、レイアウト領域に配置される。セル配置において、ダミーブロックセル２０’は、スキャンＦＦセル１０と同等に扱われる。図５は、セル配置の一例を概略的に示している。図５において、スキャンＦＦセル１０ａ、１０ｂ、及びダミーブロックセル２０’が配置されている。また、論理回路３０ａ、３０ｂ、３０ｃ、３０ｄが配置されている。
【００３７】
ステップＳ４：
セル配置後、上述の仮のスキャンチェーンが最適化される。この処理は、一般に「スキャンリチェーン（scan rechain）」と呼ばれている。具体的には、配置情報をもとにスキャンＦＦセル１０およびダミーブロックセル２０’のスキャンチェーンの接続順を入れ替える処理が行われる。ここでも、ダミーブロックセル２０’は、スキャンＦＦセル１０と同等に扱われる。
【００３８】
ステップＳ５：
次に、クロックツリーシンセシス（CTS: Clock Tree Synthesis）が実施され、クロックタイミングが調整される。ＣＴＳは、クロックスキューが出来る限り少なくなるように、クロック信号を受けるスキャンＦＦセル等の順序回路にクロック信号を供給するクロック分配ネットワークを構成する。ここでも、ダミーブロックセル２０’は、スキャンＦＦセル１０と同等に扱われる。従って、スキャンＦＦセル１０だけでなくダミーブロックセル２０’も、ＣＴＳの対象となる。すなわち、ＣＴＳは、スキャンＦＦセル１０とダミーブロックセル２０’を少なくとも含むセル群に対して共通に実施される。その結果、スキャンＦＦセル１０とダミーブロックセル２０’とで、クロックスキューが無くなる（あるいは所望の値以下になる）。スキャンＦＦセル１０とダミーブロックセル２０’に対して、クロック信号ＣＬＫは同じ位相で供給されるようになる。
【００３９】
ステップＳ６：
次に、上述のネットリストとステップＳ４，Ｓ５の結果に基づいて、レイアウト領域に配置されているセル間の配線（routing）が実施される。ここでも、ダミーブロックセル２０’は、スキャンＦＦセル１０と同等に扱われる。図６は、既出の図５に対応する図であり、セル間配線の一例を概略的に示している。図６で示された例において、各セルの接続先は、例えば次の通りである。
【００４０】
スキャンＦＦセル１０ａのデータ入力端子Ｔ１は、論理回路３０ａの出力に接続される。スキャン入力端子Ｔ２は、他のセルのスキャン出力端子（Ｔ５あるいはＤ５）に接続される。ＳＭＣ端子Ｔ３は、ＳＭＣ配線に接続される。クロック端子Ｔ４は、クロック信号ＣＬＫが供給されるクロック配線（クロックツリー配線）に接続される。スキャン出力端子Ｔ５は、ダミーブロックセル２０’のスキャン入力端子Ｄ２に接続される。データ出力端子Ｔ６は、論理回路３０ｂの入力に接続される。
【００４１】
スキャンＦＦセル１０ｂのデータ入力端子Ｔ１は、論理回路３０ｃの出力に接続される。スキャン入力端子Ｔ２は、ダミーブロックセル２０’のスキャン出力端子Ｄ５に接続される。ＳＭＣ端子Ｔ３は、ＳＭＣ配線に接続される。クロック端子Ｔ４は、クロック配線に接続される。スキャン出力端子Ｔ５は、他のセルのスキャン入力端子（Ｔ２あるいはＤ２）に接続される。データ出力端子Ｔ６は、論理回路３０ｄの入力に接続される。
【００４２】
ダミーブロックセル２０’のダミークロック端子Ｄ４は、クロック信号ＣＬＫが供給されるクロック配線に接続される。スキャン入力端子Ｄ２は、スキャンＦＦセル１０ａのスキャン出力端子Ｔ５に接続される。スキャン出力端子Ｄ５は、スキャンＦＦセル１０ｂのスキャン入力端子Ｔ２に接続される。このように、スキャンＦＦセル１０だけでなくダミーブロックセル２０’を含むスキャンチェーン４０が構築される。つまり、スキャンＦＦセル１０と共にダミーブロックセル２０’も、スキャンチェーン４０に組み込まれる。
【００４３】
このように、各セルのスキャン入力端子（Ｔ２、Ｄ２）及びスキャン出力端子（Ｔ５、Ｄ５）はスキャンチェーン４０に接続され、また、各セルのクロック端子（Ｔ４、Ｄ４）はクロック配線に接続される。スキャンＦＦセル１０は、クロック配線から受け取ったクロック信号ＣＬＫに基づいて、通常のフリップフリップ動作を行う。一方、ダミーブロックセル２０’は、クロック信号ＣＬＫを受け取るが、そのクロック信号ＣＬＫに依存すること無く動作する。ダミーブロックセル２０’は、スキャン入力端子Ｄ２に入力されたデータを、スルーパス２１を通してスキャン出力端子Ｄ５に出力するだけである。従って、スキャンＦＦセル１０と同じ構成を有するダミーセルが用いられる場合と比較して、ダミーブロックセル２０’での消費電力は削減される。
【００４４】
また、ダミーブロックセル２０’に関して、スキャン入力端子Ｄ２とスキャン出力端子Ｄ５以外の端子は、ダミーブロックセル２０’の内部の素子や配線と接続されていない。従って、スキャンＦＦセル１０と同じ構成を有するダミーセルが用いられる場合と比較して、ダミーブロックセル２０’内の配線禁止領域が圧倒的に少なくなる。その結果、配線性（routing performance）が向上する。
【００４５】
更に、ダミークロック端子Ｄ４、スキャン入力端子Ｄ２、スキャン出力端子Ｄ５以外の端子（ブロック端子）は、入力オープンであってよい。つまり、ダミー入力端子Ｄ１やダミーＳＭＣ端子Ｄ３等を、ダミーブロックセル２０’外の配線と接続する必要はない。それは、それら端子（Ｄ１、Ｄ３等）が内部オープンであり、動作に使用されないからである。従って、スキャンＦＦセル１０と同じ構成を有するダミーセルが用いられる場合と比較して、配線処理の負担が軽減される。また、ダミーブロックセル２０’周辺での配線性が向上する。
【００４６】
配線処理の結果、設計回路のレイアウトを示すレイアウトデータが作成される。レイアウトデータが作成された後、レイアウト検証やタイミング検証が実施される。検証結果がフェイルの場合、セル配置や配線が再度実施される。
【００４７】
ステップＳ７：
また、ネットリストに基づいて、スキャンテストで用いられるスキャンパタン（テストパタン）が作成される。このとき、ダミーブロックセル２０’は、スキャンＦＦセル１０ではなく、スルーパス２１として扱われる。スキャンパタンは、例えば、ＡＴＰＧ（Automatic Test Pattern Generator）により作成される。スキャンパタンは、所望の故障検出率が得られるように作成される。
【００４８】
ステップＳ８：
レイアウトデータが完成した後、設計された半導体集積回路が製造される。具体的には、レイアウトデータに基づいて、設計回路のマスクデータが作成される。続いて、電子ビーム描画装置（ＥＢ描画装置）は、マスクデータに応じたレチクルを作成する。そのレチクルを用いたフォトリソグラフィ工程などを経て、半導体集積回路（半導体チップ）が製造される。
【００４９】
ここで、図７Ａ及び図７Ｂを参照して、「下地層」について説明する。図７Ａ及び図７Ｂにおいて、半導体基板５０上にトランジスタＴＲ１、ＴＲ２が形成されている。トランジスタＴＲ１、ＴＲ２の各々は、ゲート５５、ソース５６、ドレイン５７、及びゲート５５と半導体基板５０との間に形成されたゲート絶縁膜５８を有している。ここで、ゲート５５は、例えばポリシリコンなどで形成されている。また、トランジスタＴＲ１、ＴＲ２を覆うように層間絶縁膜５１が形成されている。コンタクト５２は、層間絶縁膜５１を貫通し、トランジスタの拡散層（ソース５６あるいはドレイン５７）につながるように形成されている。配線層には、コンタクト５２につながる配線５３が形成されている。更に、配線層が多層に形成されている。
【００５０】
下地層６０は、トランジスタが形成される層を少なくとも含んでいる。例えば図７Ａにおいて、下地層６０は、点線より下（ゲートポリシリコン５５から半導体基板５０への方向）の部分を含んでいる。あるいは、図７Ｂに示されるように、下地層６０は、更にいくつかの配線層を含んでいてもよい。一方、上地層７０は、下地層６０より上層の配線層から構成される。下地層６０が複数のトランジスタを有している場合、上地層７０における上層配線５４の接続関係を変更することによって、様々な機能を実現することができる。下地層６０の構造が同じであっても、上地層７０において上層配線５４をつなぎ換えることによって、異なる機能を実現することができる。
【００５１】
各セル内の下地層６０及び上地層７０の構造（レイアウト）は、各セルのキャラクタライズ時に決定されている。本実施の形態において、ダミーブロックセル２０’は、スキャンＦＦセル１０の機能を実現できるだけのトランジスタ構造（トランジスタの配置等）を、あらかじめ下地層６０に有していることが好適である。つまり、ダミーブロックセル２０’は、少なくともスキャンＦＦセル１０と同じトランジスタ構造（下地構造）を下地層６０に有していることが好適である。その場合、上地層７０の上層配線５４をつなぎ換えるだけで、ダミーブロックセル２０’にスキャンＦＦセル１０の機能を持たせることができる。このことは、後の第１−３節において詳しく説明される。
【００５２】
ステップＳ９：
半導体チップが製造された後、スキャンチェーンとステップＳ７で作成されたスキャンパタン（テストパタン）を用いることによりスキャンテストが実施される。スキャンテストの結果がフェイルであった場合、その半導体チップは不良品としてはじかれる。
【００５３】
１−３．設計変更
次に、設計変更（機能修正）における処理を説明する。設計変更は、半導体集積回路の開発途中あるいは開発終了後に発生し得る。設計変更の発生段階に依存して、処理は異なる。
【００５４】
ステップＳ１０：
まず、設計変更が製造段階（ステップＳ８）より前に発生した場合を考える。この場合、いわゆるＥＣＯ（Engineering Change Order）が実施される。ＥＣＯとは、セルの置換等、ネットリストの変更（すなわち回路変更）を伴うレイアウト変更処理のことである。
【００５５】
本実施の形態では、予め配置されているダミーブロックセル２０’が、必要に応じてスキャンＦＦセル１０で置換される。具体的には、ネットリスト内で、置換対象のダミーブロックセル２０’のブロック名（あるいはセル名）が、スキャンＦＦセル１０のブロック名に変更される。ブロック名は、各々のセルブロック（機能ブロック）に付与された名称である。このブロック名に対応してセルブロックのレイアウトデータ等のライブラリ情報が対応付けられる。また、新たなスキャンＦＦセル１０の端子の接続先が、ネットリストに追加される。このようにして、ネットリストが変更される。その後、処理は、ステップＳ６（配線段階）に戻る。ステップＳ６では、変更後のネットリストに従って、配線が実施される。そして、スキャンパタンが再度作成される（ステップＳ７）。
【００５６】
図８は、既出の図６に対応する図であり、セル置換の一例を概略的に示している。図８に示されるように、図６でのダミーブロックセル２０’が、新たなスキャンＦＦセル１０ｃによって置き換えられている。置換後のスキャンＦＦセル１０ｃのデータ入力端子Ｔ１は、例えば論理回路３０ｂの出力に接続される。データ出力端子Ｔ６は、例えば論理回路３０ｃの入力に接続される。ＳＭＣ端子Ｔ３は、ＳＭＣ配線に接続される。
【００５７】
本例では、ダミーブロックセル２０’は、スキャンＦＦセル１０と同じサイズを有しており、また、スキャンセルＦＦセル１０の端子（Ｔ１〜Ｔ６）と同種の端子（Ｄ１〜Ｄ６）を有している。従って、ネットリスト上のブロック名を変更するだけで、ダミーブロックセル２０’をスキャンＦＦセル１０に簡単に変更することが可能である。設計変更の段階で、セル配置（ステップＳ３）を再度実施する必要はない。
【００５８】
また、ダミーブロックセル２０’における端子Ｄ１〜Ｄ６間の位置関係は、スキャンＦＦセル１０における端子Ｔ１〜Ｔ６間の位置関係と同じである。従って、置換後のスキャンＦＦセル１０ｃに関して、スキャン入力端子Ｔ２、クロック端子Ｔ４、及びスキャン出力端子Ｔ５に既に接続されている配線に変更はない。つまり、スキャン入力端子Ｔ２、クロック端子Ｔ４、及びスキャン出力端子Ｔ５に対して、新たに配線をひきなおす必要はない。従って、設計変更段階での配線処理の負担が軽減される。
【００５９】
更に、置換後のスキャンＦＦセル１０ｃのクロック端子Ｔ４の入力容量は、ダミーブロックセル２０’のダミークロック端子Ｄ４の入力容量と同じである。また、上述の通り、スキャンＦＦセル１０ｃに関して、クロック端子Ｔ４に既に接続されている配線に変更はない。従って、セル置換はクロックタイミングに影響を与えず、セル置換前後でクロックスキューは変化しない。上述のステップＳ５において、ダミーブロックセル２０’に対して、ＣＴＳ処理は既に実施されている。つまり、ダミーブロックセル２０’と他のセルとの間でクロックタイミングは一致している。従って、置換後のスキャンＦＦセル１０ｃと他のセルとの間でもクロックタイミングは一致する。設計変更の段階で、ＣＴＳ（ステップＳ５）を再度実施する必要はない。
【００６０】
以上に説明されたように、本実施の形態によれば、ダミーブロックセル２０’をスキャンＦＦセル１０で簡単に置換することができる。つまり、スキャンＦＦセル１０を容易に追加し、機能修正を短期間で行うことが可能となる。機能修正の段階で、セル配置（ステップＳ３）やＣＴＳ（ステップＳ５）を再度実施する必要はない。従って、従来技術よりも設計ＴＡＴが短縮される。
【００６１】
ステップＳ２０：
次に、設計変更が製造段階（ステップＳ８）より後に発生した場合を考える。本例によれば、ダミーブロックセル２０’は、スキャンＦＦセル１０の機能を実現できるだけのトランジスタ構造を、あらかじめ下地層６０に有している（図７Ａ、図７Ｂ参照）。つまり、ダミーブロックセル２０’は、少なくともスキャンＦＦセル１０と同じトランジスタ構造を下地層６０に有している。従って、ダミーブロックセル２０’がスキャンＦＦセル１０と同等の機能を持つように、上地層７０における上層配線５４のつなぎ換えが行われる。これにより、スキャンＦＦセル１０を簡単に追加することができる。上述の通り、ＣＴＳ処理は既に実施されているため、追加されたスキャンＦＦセル１０と他のセルとの間でクロックタイミングは一致している。
【００６２】
その後、ステップＳ１０の場合と同様にネットリストが変更され、スキャンパタンが再度作成される（ステップＳ７）。作成されたスキャンパタンを用いることにより、スキャンテストが実施される（ステップＳ９）。
【００６３】
本例によれば、下地層６０の構造は変更されないため、機能修正に要する作業工程が大幅に短縮される。つまり、機能修正を短期間で行うことが可能となる。また、下地層６０の構造が変更されないため、機能修正が行われても下地層６０のマスクに変更は生じない。従って、機能修正にかかる費用が軽減される。
【００６４】
１−４．設計システム
本実施の形態に係る半導体集積回路の設計方法は、コンピュータシステムにより実現され得る。図９は、本実施の形態に係る設計システム８０の構成例を示すブロック図である。設計システム８０は、演算処理装置８１、記憶装置８２、入力装置８３、出力装置８４、及び設計プログラム９０を備えている。記憶装置８２としては、ＲＡＭはＨＤＤが例示される。入力装置８３としては、キーボードやマウスが例示される。出力装置８４としては、ディスプレイが例示される。
【００６５】
記憶装置８２には、ネットリストＮＥＴ、セルライブラリＬＩＢ、レイアウトデータＬＡＹ、スキャンパタンＰＡＴ等が格納される。
【００６６】
設計プログラム９０は、演算処理装置８１によって実行されるソフトウェアプログラムである。設計プログラム９０は、コンピュータ読み取り可能な記録媒体に記録されていてもよいし、記憶装置８２に格納されていてもよい。設計プログラム９０は、ＤＦＴツール９１、配置配線ツール９２、ＣＴＳツール９３、テストパタン作成ツール９４等を含んでいる。ＤＦＴツール９１は、ステップＳ２やステップＳ４の機能を提供する。配置配線ツール９２は、ステップＳ３やステップＳ６の機能を提供する。ＣＴＳツール９３は、ステップＳ５の機能を提供する。テストパタン作成ツール９４は、ステップＳ７の機能を提供する。
【００６７】
演算処理装置８１は、設計プログラム９０のそれぞれのツールを実行することにより、それぞれのデータ処理を実現する。各ツールは、必要なデータやファイルを記憶装置８２から読み出し、また、作成したデータやファイルを記憶装置８２に書き込む。これにより、上述の本実施の形態に係る処理が実現される。
【００６８】
２．半導体集積回路
図１０は、本実施の形態に係る半導体集積回路１００の一例を概略的に示している。半導体集積回路１００は、上述の開発手法の結果得られるものであり、次のような特徴を有している。
【００６９】
半導体集積回路１００は、スキャンフリップフロップ（以下、「スキャンＦＦ」と参照される）１１０、ダミーブロック１２０、論理回路１３０、及びスキャンチェーン１４０を備えている。スキャンＦＦ１１０は、スキャンＦＦセル１０に相当する回路であり、スキャンＦＦセル１０に対応した大きさを有している。ダミーブロック１２０は、置換されずに残ったダミーブロックセル２０’に相当する回路である。ダミーブロック１２０は、ダミーブロックセル２０’に対応した大きさを有している。スキャンＦＦ１１０及びダミーブロック１２０は、スキャンチェーン１４０上に形成されている。つまり、スキャンチェーン１４０上に、ダミーブロック１２０が残っている。
【００７０】
スキャンＦＦ１１０は、データ入力端子Ｔ１、スキャン入力端子Ｔ２、ＳＭＣ端子Ｔ３、クロック端子Ｔ４、スキャン出力端子Ｔ５、及びデータ出力端子Ｔ６を有している。一方、ダミーブロック１２０は、ダミー入力端子Ｄ１、スキャン入力端子Ｄ２、ダミーＳＭＣ端子Ｄ３、ダミークロック端子Ｄ４、スキャン出力端子Ｄ５、及びダミー出力端子Ｄ６を有している。
【００７１】
スキャンＦＦ１１０ａのデータ入力端子Ｔ１は、論理回路１３０ａの出力に接続されている。スキャン入力端子Ｔ２は、スキャンチェーン１４０に接続されている。ＳＭＣ端子Ｔ３は、ＳＭＣ配線に接続されている。クロック端子Ｔ４は、クロック信号ＣＬＫが供給されるクロック配線（クロックツリー配線）に接続されている。スキャン出力端子Ｔ５は、スキャンチェーン１４０に接続されている。データ出力端子Ｔ６は、論理回路１３０ｂの入力に接続されている。
【００７２】
スキャンＦＦ１１０ｂのデータ入力端子Ｔ１は、論理回路１３０ｃの出力に接続されている。スキャン入力端子Ｔ２は、スキャンチェーン１４０に接続されている。ＳＭＣ端子Ｔ３は、ＳＭＣ配線に接続されている。クロック端子Ｔ４は、クロック配線に接続されている。スキャン出力端子Ｔ５は、スキャンチェーン１４０に接続されている。データ出力端子Ｔ６は、論理回路１３０ｄの入力に接続されている。
【００７３】
ダミーブロック１２０のダミークロック端子Ｄ４は、クロック信号ＣＬＫが供給されるクロック配線に接続されている。スキャン入力端子Ｄ２は、スキャンチェーン１４０に接続されている。スキャン出力端子Ｄ５は、スキャンチェーン１４０に接続されている。その他の端子（ブロック端子）は、ダミーブロック１２０外の配線と接続されていない。つまり、ダミー入力端子Ｄ１やダミーＳＭＣ端子Ｄ３等は、入力オープンである。
【００７４】
また、ダミーブロック１２０内において、スキャン入力端子Ｄ２とスキャン出力端子Ｄ５との間は、スルーパス１２１で接続されている。スルーパス１２１では、クロック信号ＣＬＫに依存すること無くデータが転送される。スルーパス１２１は、バッファやインバータ等の組み合わせ回路１２２を含んでいてもよい。図１０で示された例では、組み合わせ回路１２２が、スキャン入力端子Ｄ２とスキャン出力端子Ｄ５との間に接続されている。一方、スキャン入力端子Ｄ２とスキャン出力端子Ｄ５以外の端子は、ダミーブロック１２０の内部の素子や配線と接続されていない。つまり、ダミー入力端子Ｄ１、ダミーＳＭＣ端子Ｄ３、ダミークロック端子Ｄ４等は、内部オープンである。
【００７５】
また、ダミーブロック１２０は、スキャンＦＦ１１０と同じサイズを有している。つまり、端子Ｄ１〜Ｄ６を含むダミーブロック１２０は、スキャンＦＦ１１０と同じ大きさの領域に形成されている。更に、ダミーブロック１２０における端子Ｄ１〜Ｄ６間の位置関係は、スキャンＦＦ１１０における端子Ｔ１〜Ｔ６間の位置関係と同じである。更に、ダミーブロック１２０のダミークロック端子Ｄ４の入力容量は、スキャンＦＦ１１０のクロック端子Ｔ４の入力容量と同じである。
【００７６】
また、スキャンＦＦ１１０及びダミーブロック１２０の各々は、下地層６０と上地層７０を有している（図７参照）。ダミーブロック１２０は、少なくともスキャンＦＦ１１０と同じトランジスタ構造（下地構造）を下地層６０に有している。
【００７７】
以上に説明された半導体集積回路１００において、スキャンＦＦ１１０は、クロック配線から受け取ったクロック信号ＣＬＫに基づいて、通常のフリップフリップ動作を行う。一方、ダミーブロック１２０は、クロック信号ＣＬＫを受け取るが、そのクロック信号ＣＬＫに依存すること無く動作する。ダミーブロック１２０は、スキャン入力端子Ｄ２に入力される入力データに応じたデータを、スルーパス１２１を通してスキャン出力端子Ｄ５に出力するだけである。従って、通常のスキャンＦＦと同じ構成を有するダミーブロックの場合と比較して、ダミーブロック１２０での消費電力は削減される。
【００７８】
また、ダミーブロック１２０での電力消費が低減されるため、クロック供給を制御するクロックゲーティング回路を、ダミーブロック１２０の前段に別途設ける必要はない。従って、チップ資源が有効に活用され、また、チップ面積の増大が防止される。すなわち、チップ資源を浪費することなく、消費電力を低減することが可能となる。
【００７９】
３．効果
本実施の形態で得られる効果の一部をまとめると、次の通りである。
【００８０】
（１）製品チップのスキャンチェーン１４０上に残っているダミーブロック１２０は、クロック信号ＣＬＫを受け取るが、そのクロック信号ＣＬＫに依存すること無く動作する。その結果、通常のスキャンＦＦと同じ構成を有するダミーブロックの場合と比較して、ダミーブロック１２０での消費電力は大幅に削減される。チップ全体での消費電力削減効果は、配置されるダミーブロック１２０の数にほぼ比例して増加する。従って、プロセスの微細化により回路規模が大きくなるにつれて、効果はより著しくなる。
【００８１】
（２）また、ダミーブロック１２０での電力消費が低減されるため、クロック供給を制御するクロックゲーティング回路を、ダミーブロック１２０の前段に別途設ける必要はない。従って、チップ資源が有効に活用され、また、チップ面積の増大が防止される。すなわち、チップ資源を浪費することなく、消費電力を低減することが可能となる。また、回路作成の負担が軽減される。
【００８２】
（３）開発段階の配線処理（ステップＳ６）において、配線性が向上するという効果も得られる。例えば、ダミーブロックセル２０’の一部の端子は、内部の素子や配線と接続されていない（内部オープン）。従って、スキャンＦＦセル１０と同じ構成を有するダミーセルが用いられる場合と比較して、ダミーブロックセル２０’内の配線禁止領域が圧倒的に少なくなる。その結果、配線性が向上する。また、ダミーブロックセル２０’の一部の端子は、外部の素子や配線と接続されない（入力オープン）。従って、配線処理の負担が軽減される。また、ダミーブロックセル２０’周辺での配線性が向上する。
【００８３】
（４）上述の通り、消費電力が削減され、且つ、配線性が向上するため、多数のダミーブロックセル２０’を設計回路に挿入することが可能である。言い換えれば、ダミーブロックセル２０’の挿入に関する制約が緩和される。従って、設計及び機能修正が容易になる。
【００８４】
（５）本実施の形態によれば、ダミーブロックセル２０’をスキャンＦＦセル１０で簡単に置換することができる。つまり、設計変更（機能修正）に要する時間を短縮することができる。
【００８５】
例えば、ダミーブロックセル２０’は、スキャンＦＦセル１０と同じサイズを有しており、また、スキャンセルＦＦセル１０の端子（Ｔ１〜Ｔ６）と同種の端子（Ｄ１〜Ｄ６）を有している。従って、ネットリスト上のブロック名を変更するだけで、ダミーブロックセル２０’をスキャンＦＦセル１０に簡単に変更することが可能である。設計変更の段階で、セル配置（ステップＳ３）を再度実施する必要はない。
【００８６】
また、ダミーブロックセル２０’における端子Ｄ１〜Ｄ６間の位置関係は、スキャンＦＦセル１０における端子Ｔ１〜Ｔ６間の位置関係と同じである。従って、置換後のスキャンＦＦセル１０の一部の端子に関しては、既に接続されている配線を使用することができる。その一部の端子に対して、新たに配線をひきなおす必要はない。従って、設計変更段階での配線処理の負担が軽減される。
【００８７】
更に、置換後のスキャンＦＦセル１０のクロック端子Ｔ４の入力容量は、ダミーブロックセル２０’のダミークロック端子Ｄ４の入力容量と同じである。また、クロック端子Ｔ４に接続される配線に変更はない。従って、セル置換はクロックタイミングに影響を与えず、セル置換前後でクロックスキューは変化しない。ＣＴＳ処理（ステップＳ５）により、ダミーブロックセル２０’と他のセルとの間でクロックタイミングは一致しているため、置換後のスキャンＦＦセル１０と他のセルとの間でもクロックタイミングは一致する。設計変更の段階で、ＣＴＳを再度実施する必要はない。
【００８８】
比較例として、一般的なバッファセルがダミーセルとして用いられる場合を考える。そのバッファセルの入力端子の入力容量は、通常のフリップフロップセルのクロック端子の入力容量と同じであるとする。しかしながら、そのバッファセルが通常のフリップフロップセルで置換されると、クロック信号が入力される端子の位置が変わる。従って、置換後のフリップフロップセルにつながるクロック配線を変更する必要がある。この処理は、クロックスキューに影響を及ぼす。従って、ＣＴＳを再度実施する必要がある。
【図面の簡単な説明】
【００８９】
【図１】図１は、スキャンフリップフロップセルの一例を示す概略図である。
【図２】図２は、ＤＦＴ処理前のダミーブロックセルの例を示す概略図である。
【図３】図３は、ＤＦＴ処理後のダミーブロックセルの例を示す概略図である。
【図４】図４は、本発明の実施の形態に係る半導体集積回路の開発方法を示すフローチャートである。
【図５】図５は、セル配置の一例を示す概略図である。
【図６】図６は、セル間配線の一例を示す概略図である。
【図７Ａ】図７Ａは、半導体集積回路の下地層を説明するための断面図である。
【図７Ｂ】図７Ｂは、半導体集積回路の下地層を説明するための断面図である。
【図８】図８は、スキャンフリップフロップセルによるダミーブロックセルの置き換えを示す概略図である。
【図９】図９は、本発明の実施の形態に係る半導体集積回路の設計システムの構成例を示すブロック図である。
【図１０】図１０は、本発明の実施の形態に係る半導体集積回路の構成例を示す回路図である。
【符号の説明】
【００９０】
１０    スキャンフリップフロップセル
１１    選択回路
１２    データ保持部
Ｔ１    データ入力端子
Ｔ２    スキャン入力端子
Ｔ３    ＳＭＣ端子
Ｔ４    クロック端子
Ｔ５    スキャン出力端子
Ｔ６    データ出力端子
２０，２０’    ダミーブロックセル
２１    スルーパス
２２    組み合わせ回路
Ｄ１    ダミー入力端子
Ｄ２    スキャン入力端子
Ｄ３    ダミーＳＭＣ端子
Ｄ４    ダミークロック端子
Ｄ５    スキャン出力端子
Ｄ６    ダミー出力端子
３０    論理回路
４０    スキャンチェーン
５０    半導体基板
５１    層間絶縁膜
５２    コンタクト
５３    配線
５４    上層配線
６０    下地層
７０    上地層
８０    設計システム
８１    演算処理装置
８２    記憶装置
８３    入力装置
８４    出力装置
９０    設計プログラム
９１    ＤＦＴツール
９２    配置配線ツール
９３    ＣＴＳツール
９４    テストパタン作成ツール
１００    半導体集積回路
１１０    スキャンフリップフロップ
１２０    ダミーブロック
１２１    スルーパス
１２２    組み合わせ回路
１３０    論理回路
１４０    スキャンチェーン
ＮＥＴ    ネットリスト
ＬＩＢ    セルライブラリ
ＬＡＹ    レイアウトデータ
ＰＡＴ    スキャンパタン
ＣＬＫ    クロック信号
【図１】
2009038072.tif 000003
【図２】
2009038072.tif 000004
【図３】
2009038072.tif 000005
【図４】
2009038072.tif 000006
【図５】
2009038072.tif 000007
【図６】
2009038072.tif 000008
【図７Ａ】
2009038072.tif 000009
【図７Ｂ】
2009038072.tif 000010
【図８】
2009038072.tif 000011
【図９】
2009038072.tif 000012
【図１０】
2009038072.tif 000013