(57)【要約】【課題】半導体集積回路の効率的かつ最適なレイアウト設計をおこなうことによって、半導体集積回路の故障検出率向上、品質向上、さらにはレイアウト設計の短期化を図ること。【解決手段】レイアウト８００は、クロック制御回路の出力端子２０３Ｓ（第１のセル）とＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４Ｅとが配線１１０１によって接続され、ＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４ＥとＦＦ回路２０６（故障検出用セル）のＤ入力端子とが配線１１０２によって接続されている。このようなレイアウト８００によれば、出力端子２０３Ｓ（第１のセル）から出力された信号は、配線１１０１およびＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４Ｅを経由し、ＦＦ回路２０６（故障検出用セル）に取り込まれるため、上記クロック制御回路および配線１１０１上の全区間において生じた故障を検出することができる。【選択図】図１１
2008004024.tif 000002
【特許請求の範囲】
【請求項１】
設計対象回路に関するレイアウト情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出させる検出工程と、
前記検出工程によって検出された故障検出用セルが、前記検出工程によって検出された第１および第２のセルとの間の信号路から分岐して接続されているか否かを判断させる判断工程と、
前記判断工程によって判断された判断結果に基づいて、前記信号路上の前記故障検出用セルへの分岐点から前記第２のセルまでの信号路長が短くなる前記信号路上の位置に、前記故障検出用セルへの接続点を決定させる決定工程と、
前記分岐点から前記故障検出用セルまでの信号路を、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路に配線修正させる配線修正工程と、
をコンピュータに実行させることを特徴とするレイアウト設計プログラム。
【請求項２】
設計対象回路に関する回路情報の入力を受け付けさせる入力工程と、
前記入力工程によって入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出させる検出工程と、
前記検出工程によって検出された第２のセルの入力端子を、前記検出工程によって検出された故障検出用セルへの接続点に決定させる決定工程と、
前記第１のセルから前記第２のセルまでの信号路と、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路とを配線させる配線工程と、
をコンピュータに実行させることを特徴とするレイアウト設計プログラム。
【請求項３】
請求項１または２に記載のレイアウト設計プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項４】
設計対象回路に関するレイアウト情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出する検出手段と、
前記検出手段によって検出された故障検出用セルが、前記検出手段によって検出された第１および第２のセルとの間の信号路から分岐して接続されているか否かを判断する判断手段と、
前記判断手段によって判断された判断結果に基づいて、前記信号路上の前記故障検出用セルへの分岐点から前記第２のセルまでの信号路長が短くなる前記信号路上の位置に、前記故障検出用セルへの接続点を決定する決定手段と、
前記分岐点から前記故障検出用セルまでの信号路を、前記決定手段によって決定された接続点から前記故障検出用セルまでの信号路に配線修正する配線修正手段と、
を備えることを特徴とするレイアウト設計装置。
【請求項５】
設計対象回路に関するレイアウト情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出する検出工程と、
前記検出工程によって検出された故障検出用セルが、前記検出工程によって検出された第１および第２のセルとの間の信号路から分岐して接続されているか否かを判断する判断工程と、
前記判断工程によって判断された判断結果に基づいて、前記信号路上の前記故障検出用セルへの分岐点から前記第２のセルまでの信号路長が短くなる前記信号路上の位置に、前記故障検出用セルへの接続点を決定する決定工程と、
前記分岐点から前記故障検出用セルまでの信号路を、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路に配線修正する配線修正工程と、
を含んだことを特徴とするレイアウト設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体集積回路をレイアウト設計するレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法に関する。
【背景技術】
【０００２】
従来より、たとえばＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）で記述された論理機能データに基づいてネットリストなどの回路情報を自動生成し、さらにこの回路情報に基づいて配置処理、配線処理および最適化処理などをおこなうことによって、半導体集積回路のレイアウトを自動生成することができるレイアウト設計装置などが開発されている。
【０００３】
そして、このようなレイアウト設計装置を、たとえばＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）やＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などの半導体集積回路のレイアウト設計に用いることにより、レイアウト設計期間の短期間化を図ることが可能とされている。
【０００４】
一方、たとえば半導体集積回路のレイアウト設計過程および製造過程において生じた縮退故障や遅延故障などの故障を検出するためのテスト方法として、回路内に配置されたＦＦ回路（フリップフロップ回路）から故障信号を検出するスキャンテストが一般的に用いられている。また、たとえば半導体集積回路の消費電力を低減するための手法としては、ゲーテッドクロック手法が多く用いられている。
【０００５】
しかしながら、たとえばクロック信号を制御する回路（クロック制御回路）から出力された信号が、上記クロック制御回路の出力信号路上に配置されたＦＦ回路のＣＬＫ（クロック）入力端子へ取り込まれるようなレイアウトの場合、上記クロック制御回路から出力された故障信号を上記ＦＦ回路から検出することができない。このような場合、たとえば上記出力信号路の分岐先に故障検出用のＦＦ回路を接続することによって、この故障検出用のＦＦ回路から上記故障信号を検出することが可能とされている（たとえば、下記特許文献１参照。）。
【０００６】
【特許文献１】特開昭５４−７６０４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記特許文献１に記載の従来技術にあっては、上記クロック制御回路の出力信号路上であり、かつＦＦ回路への分岐点以降において生じた故障を検出することができず、これに伴う半導体集積回路の故障検出率低下、品質低下、さらにはレイアウト修正に伴うレイアウト設計期間の長期間化が問題となっていた。
【０００８】
ここで、上述した従来技術によるレイアウトの一例について説明する。図１６および図１７は、従来技術によるレイアウトの一例を示す説明図である。図１６および図１７において、レイアウト１６００は、ＣＬＫ信号入力１６０１と、ＦＦ回路１６０２と、クロック制御回路１６０３と、ＧＣＢ（Ｇａｔｅｄ  Ｃｌｏｃｋ  Ｂｕｆｆｅｒ）回路１６０４と、ＦＦ回路１６０５,１６０６と、から構成されている。
【０００９】
図１６に示すレイアウト１６００において、ゲーテッドクロック回路を構成するクロック制御回路１６０３から出力された信号は、配線１６１０、および同じくゲーテッドクロック回路を構成するＧＣＢ回路１６０４を経由した後、ＦＦ回路１６０５のＣＬＫ（Ｃｌｏｃｋ）入力端子に取り込まれる。このため、この信号をレイアウト１６００（ＦＦ回路１６０５）の出力端子から検出することができない。そこでレイアウト１６００においては故障検出用のＦＦ回路１６０６を配置し、このＦＦ回路１６０６のＤ入力端子と配線１６１０上の接続点１６１０Ｃとを配線１６１１によって接続している。
【００１０】
これにより、クロック制御回路１６０３から出力された信号はＦＦ回路１６０６のＤ入力端子に取り込まれるため、ＦＦ回路１６０６の出力端子から、この信号を検出することが可能となる。しかしながら、このようなレイアウト１６００においては、配線１６１０上であり、かつ接続点１６１０Ｃ以降の区間（区間Ｓ１）において生じた故障はＦＦ回路１６０６に取り込まれないため、この区間Ｓ１において生じた故障を検出することができない。
【００１１】
一方、図１７に示すレイアウト１７００は、図１６に示したレイアウト１６００に対する最適化処理がおこなわれた結果、配線１６１０上の区間Ｓ１においてバッファ１７０１，１７０２，１７０３が配置されたものである。このようなレイアウト１７００においても同様に、区間Ｓ１およびバッファ１７０１，１７０２，１７０３において生じた故障を検出することができない。
【００１２】
この発明は、上述した従来技術による問題点を解消するため、半導体集積回路の効率的かつ最適なレイアウト設計をおこなうことによって、半導体集積回路の故障検出率向上、品質向上、さらにはレイアウト設計期間の短期間化を図ることができるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するため、第１の発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法は、設計対象回路に関するレイアウト情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出し、検出された故障検出用セルが、検出された第１および第２のセルとの間の信号路から分岐して接続されているか否かを判断し、判断された判断結果に基づいて、前記信号路上の前記故障検出用セルへの分岐点から前記第２のセルまでの信号路長が短くなる前記信号路上の位置に、前記故障検出用セルへの接続点を決定し、前記分岐点から前記故障検出用セルまでの信号路を、決定された接続点から前記故障検出用セルまでの信号路に配線修正することを特徴とする。
【００１４】
この発明によれば、第１のセルから接続点までの区間内の故障を検出することができる。
【００１５】
また、上記発明において、判断された判断結果に基づいて、前記分岐点から前記第２のセルまでの間に配置される第３のセルの出力端子から前記第２のセルの間に、前記故障検出用セルへの接続点を決定することとしてもよい。
【００１６】
この発明によれば、第１のセルから接続点までの区間内に配置されている第３のセルの故障を検出することができる。
【００１７】
また、上記発明において、判断された判断結果に基づいて、前記第２のセルの入力端子に前記接続点を決定することとしてもよい。
【００１８】
この発明によれば、第１のセルから第２のセルまでの全区間内の故障を検出することができる。
【００１９】
また、第２の発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法は、設計対象回路に関する回路情報の入力を受け付け、入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出し、検出された第１および第２のセル間に配置される第３のセルから前記第２のセルの入力端子までの間の位置を、検出された故障検出用セルへの接続点に決定し、前記第１のセルから前記第２のセルまでの信号路と、決定された接続点から前記故障検出用セルまでの信号路とを配線することを特徴とする。
【００２０】
この発明によれば、配線修正することなく、第１のセルから接続点までの区間内に配置されている第３のセルの故障を検出することができる。
【００２１】
また、上記発明において、前記第２のセルの入力端子を、前記故障検出用セルへの接続点に決定することとしてもよい。
【００２２】
この発明によれば、配線修正することなく、第１のセルから第２のセルまでの全区間内の故障を検出することができる。
【００２３】
さらに、第３の発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法は、設計対象回路に関する回路情報の入力を受け付け、入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出し、検出された第２のセルの入力端子を、検出された故障検出用セルへの接続点に決定し、前記第１のセルから前記第２のセルまでの信号路と、決定された接続点から前記故障検出用セルまでの信号路とを配線することを特徴とする。
【００２４】
この発明によれば、配線修正することなく、第１のセルから第２のセルまでの全区間内の故障を検出することができる。
【発明の効果】
【００２５】
本発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法によれば、半導体集積回路の効率的かつ最適なレイアウト設計をおこなうことによって、半導体集積回路の故障検出率向上、品質向上、さらにはレイアウト設計期間の短期間化を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００２６】
以下に添付図面を参照して、この発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法の好適な実施の形態を詳細に説明する。
【００２７】
（実施の形態）
（レイアウト設計装置のハードウェア構成）
まず、この発明の実施の形態にかかるレイアウト設計装置のハードウェア構成について説明する。図１は、この発明の実施の形態にかかるレイアウト設計装置のハードウェア構成を示すブロック図である。
【００２８】
図１において、レイアウト設計装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＨＤＤ（ハードディスクドライブ）１０４と、ＨＤ（ハードディスク）１０５と、ＦＤＤ（フレキシブルディスクドライブ）１０６と、着脱可能な記録媒体の一例としてのＦＤ（フレキシブルディスク）１０７と、ディスプレイ１０８と、Ｉ／Ｆ（インターフェース）１０９と、キーボード１１０と、マウス１１１と、スキャナ１１２と、プリンタ１１３と、を備えている。また、各構成部はバス１２０によってそれぞれ接続されている。
【００２９】
ここで、ＣＰＵ１０１は、レイアウト設計装置１００の全体の制御を司る。ＲＯＭ１０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１０３は、ＣＰＵ１０１のワークエリアとして使用される。ＨＤＤ１０４は、ＣＰＵ１０１の制御にしたがってＨＤ１０５に対するデータのリード／ライトを制御する。ＨＤ１０５は、ＨＤＤ１０４の制御で書き込まれたデータを記憶する。
【００３０】
ＦＤＤ１０６は、ＣＰＵ１０１の制御にしたがってＦＤ１０７に対するデータのリード／ライトを制御する。ＦＤ１０７は、ＦＤＤ１０６の制御で書き込まれたデータを記憶したり、ＦＤ１０７に記憶されたデータを読み取らせたりする。
【００３１】
また、着脱可能な記録媒体として、ＦＤ１０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ、ＤＶＤ（ＤｉｇｉｔａｌＶｅｒｓａｔｉｌｅＤｉｓｋ）、メモリーカードなどであってもよい。ディスプレイ１０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ１０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００３２】
Ｉ／Ｆ１０９は、通信回線を通じてインターネットなどのネットワーク１１４に接続され、このネットワーク１１４を介して他の装置に接続される。そして、Ｉ／Ｆ１０９は、ネットワーク１１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ１０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００３３】
キーボード１１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス１１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００３４】
スキャナ１１２は、画像を光学的に読み取り、レイアウト設計装置１００内に画像データを取り込む。なお、スキャナ１１２は、ＯＣＲ機能を持たせてもよい。また、プリンタ１１３は、画像データや文書データを印刷する。プリンタ１１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００３５】
（設計対象回路の一例）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００に用いられる設計対象回路の一例について説明する。図２は、この発明の実施の形態にかかるレイアウト設計装置１００に用いられる設計対象回路の一例を示す説明図である。
【００３６】
図２において、設計対象回路２００は、ＣＬＫ信号入力２０１と、インスタンス名「ＦＦ１」が付与されたＦＦ回路２０２と、ゲーテッドクロック回路を構成するクロック制御回路２０３と、同じくゲーテッドクロック回路を構成し、インスタンス名「ＧＣＢ１」が付与されたＧＣＢ回路２０４と、インスタンス名「ＦＦ２」が付与されたＦＦ回路２０５と、インスタンス名「ＦＦ＿ＯＢＳ１」が付与された故障検出用のＦＦ回路２０６と、から構成されている。
【００３７】
ここで、クロック制御回路２０３の出力端子２０３Ｓ（インスタンス名「ＥＮ＿ＳＲＣ１」）とＧＣＢ回路２０４のＥＮ入力端子２０４Ｅとが、信号路２１０によって接続されており、クロック制御回路２０３から出力された信号は、ＧＣＢ回路２０４を経由した後、ＦＦ回路２０５のＣＬＫ入力端子に取り込まれる。
【００３８】
このため、クロック制御回路２０３において生じた故障を、ＦＦ回路２０５の出力端子から出力された信号によって検出することができない。そこで、設計対象回路２００においては、故障検出用のＦＦ回路２０６が配置され、このＦＦ回路２０６と信号路２１０上の接続点２１０Ｃとを信号路２１１により接続することによって、クロック制御回路２０３において生じた故障を、故障検出用のＦＦ回路２０６の出力端子から出力された信号によって検出することが可能な構成となっている。
【００３９】
（レイアウト情報の一例）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００に用いられるレイアウト情報の一例について説明する。図３は、この発明の実施の形態にかかるレイアウト設計装置１００に用いられるレイアウト情報の一例を示す説明図である。図３に示すレイアウト情報３００は、所定の記録媒体に記録されているレイアウト情報３００に基づいて、セルの配置レイアウトおよび配線レイアウトが回路図によって示されたものである。このレイアウト情報３００は、レイアウト設計装置１００によるレイアウト修正処理において、レイアウト修正処理対象データとして用いることができる。
【００４０】
図３において、レイアウト情報３００は、ゲーテッドクロック回路を構成するクロック制御回路（図示省略）のインスタンス名「ＥＮ＿ＳＲＣ２」が付与された出力端子３０１Ｓと、同じくゲーテッドクロック回路を構成し、インスタンス名「ＧＣＢ２」が付与されたＧＣＢ回路３０２と、インスタンス名「ＦＦ＿ＯＢＳ２」が付与された故障検出用のＦＦ回路３０３と、から構成されている。
【００４１】
また、レイアウト情報３００においては、出力端子３０１ＳとＧＣＢ回路３０２のＥＮ入力端子３０２Ｅとが配線３１１によって接続され、配線３１１上の接続点３１１ＣとＦＦ回路３０３のＤ入力端子とが配線３１２によって接続されている。このレイアウト情報３００において、配線３１１上であり、かつ接続点３１１Ｃ以降の区間（区間Ｓ２）は、この区間において生じた故障を検出することができない区間である。
【００４２】
（組み合わせ情報の一例）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００に用いられる組み合わせ情報の一例について説明する。図４および図５は、この発明の実施の形態にかかるレイアウト設計装置１００に用いられる組み合わせ情報の一例を示す説明図である。
【００４３】
図４において、組み合わせ情報４００は、図２を用いて説明した設計対象回路２００から第１のセルとして検出されたクロック制御回路３０３の出力端子３０３Ｓのインスタンス名「ＥＮ＿ＳＲＣ１」と、同じく第２のセルとして検出されたＧＣＢ回路３０４のインスタンス名「ＧＣＢ１」と、同じく故障検出用セルとして抽出されたＦＦ回路３０６のインスタンス名「ＦＦ＿ＯＢＳ１」とを組み合わせたものである。
【００４４】
一方、図５における組み合わせ情報４００は、図３を用いて説明したレイアウト情報３００から第１のセルとして検出されたクロック制御回路３０１の出力端子３０１Ｓのインスタンス名「ＥＮ＿ＳＲＣ２」と、同じく第２のセルとして検出されたＧＣＢ回路３０２のインスタンス名「ＧＣＢ２」と、同じく故障検出用セルとして抽出されたＦＦ回路３０３のインスタンス名「ＦＦ＿ＯＢＳ２」とを組み合わせたものである。
【００４５】
ここで、組み合わせ情報４００は、上述したフォーマットに限らず、第１のセルと、第２のセルと、故障検出用セルとの組み合わせを判別することができる形式であれば、どのようなフォーマットによって記録されたものであってもよい。また、たとえば複数の組み合わせ情報４００が同一のファイルに記録されていてもよい。さらに、組み合わせ情報４００は、ファイルに記録されているものに限らず、データベースなどに記録されているものであってもよい。
【００４６】
（レイアウト設計装置の機能的構成）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００の機能的構成について説明する。図６は、この発明の実施の形態にかかるレイアウト設計装置１００の機能的構成を示すブロック図である。図６において、レイアウト設計装置１００は、入力部６０１と、検出部６０２と、判断部６０３と、決定部６０４と、配線／配置部６０５と、出力部６０６と、記憶部６１０と、から構成されている。
【００４７】
図６において、入力部６０１は、レイアウト生成処理対象データとして回路情報（ネットリスト）６００の入力を受け付ける。また、入力部６０１は、レイアウト修正処理対象データとしてレイアウト情報３００の入力を受け付ける。
【００４８】
具体的には、所定の記録媒体などから、図２に示したような設計対象回路２００のセルやセルの接続関係などが記述された回路情報（ネットリスト）６００、および図３に示したようなレイアウト情報３００の入力を受け付ける。この場合、回路情報（ネットリスト）６００およびレイアウト情報３００が記録された所定の記録媒体は、たとえば図１に示したＨＤ１０５、ＦＤ１０７など、入力部６０１によるデータの読み取り可能な記録媒体であればどのような形態のものであってもよい。
【００４９】
また、入力部６０１は、レイアウト設計装置１００外部の装置から図１に示したネットワーク１１４を介して送信された回路情報（ネットリスト）６００およびレイアウト情報３００の入力を受け付けるようにしてもよい。なお、入力部６０１は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによって制御されたＩ／Ｆ１０９によってその機能を実現する。
【００５０】
検出部６０２は、入力部６０１によって入力された回路情報（ネットリスト）６００およびレイアウト情報３００の中から、第１のセルと、当該第１のセルからの出力信号を取り込む第２のセルと、同じく第１のセルからの出力信号を取り込む故障検出用セルとを検出する。
【００５１】
具体的には、回路情報（ネットリスト）６００やレイアウト情報３００には、第１のセル、第２のセル、故障検出用セルの接続関係をあらわすデータが記述されているため、当該データを手がかりとして、第１のセルと、第２のセルと、故障検出用セルとを検出する。そして、図４および図５に示したような組み合わせ情報４００を生成し、この組み合わせ情報４００を記憶部６１０に記録する。
【００５２】
なお、検出部６０２は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによってその機能を実現する。
【００５３】
判断部６０３は、レイアウト情報３００を用いたレイアウト修正処理において、故障検出用セルが、第１のセルおよび第２のセルとの間の信号路（以下、「第１の信号路」という）から分岐された信号路（以下、「第２の信号路」という）によって接続されているか否かを判断する。具体的には、記憶部６１０に記録されている組み合わせ情報４００に基づいて、レイアウト情報３００の中から、第１のセル、第２のセル、故障検出用セル、第１の信号路および第２の信号路を特定する。そして、特定された第２の信号路が第１の信号路から分岐して接続されているか否かを判断する。
【００５４】
たとえば図３に示したレイアウト３００においては、図５に示した組み合わせ情報４００に基づいて第２の信号路として特定された配線３１２が、同じく第１の信号路として特定された配線３１１上の接続点３１１Ｃから分岐して接続されていると判断される。なお、判断部６０３は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによってその機能を実現する。
【００５５】
決定部６０４は、レイアウト情報３００を用いたレイアウト修正処理においては、判断部６０３によって判断された判断結果に基づいて、第２のセルの入力端子に故障検出用セルへの接続点を決定する。たとえば図３に示したレイアウト３００においては、ＧＣＢ回路３０２（第２のセル）のＥＮ入力端子３０２Ｅが、ＦＦ回路３０３（故障検出用セル）への接続点３１１Ｃとして新たに決定される。
【００５６】
ここで、決定部６０４は、第１の信号路上の故障検出用セルへの分岐点から第２のセルまでの信号路長が短くなる信号路上の位置に、故障検出用セルへの接続点を決定するようにしてもよい。この場合、図３に示したレイアウト３００においては、配線３１１上の接続点３１１ＣからＧＣＢ回路３０２（第２のセル）までの区間Ｓ２が短くなる配線３１１上の位置が、ＦＦ回路３０３（故障検出用セル）への接続点３１１Ｃとして新たに決定される。
【００５７】
一方、決定部６０４は、回路情報（ネットリスト）６００を用いたレイアウト生成処理においては、回路情報（ネットリスト）６００および記憶部６１０に記録されている組み合わせ情報４００に基づいて、第１のセル、第２のセル、故障検出用セルを特定し、特定された第２のセルの入力端子に故障検出用セルへの接続点を決定する。たとえば図２に示した設計対象回路２００においては、図４に示した組み合わせ情報４００に基づいて第２のセルとして特定されたＧＣＢ回路２０４のＥＮ入力端子２０４Ｅが、同じく故障検出用セルとして特定されたＦＦ２０６への接続点として決定される。
【００５８】
なお、決定部６０４は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによってその機能を実現する。
【００５９】
配線／配置部６０５は、回路情報（ネットリスト）６００を用いたレイアウト生成処理においては、（１）配置処理をおこなう。具体的には、回路情報（ネットリスト）６００に記録された各種セルを半導体集積回路のレイアウト上に配置する。
【００６０】
（２）そして、配線／配置部６０５は、配置最適化処理をおこなう。具体的には、タイミングやデザインルールなどの制約に基づき、各種セルが配置された半導体集積回路のレイアウト上にバッファなどを配置する。
【００６１】
（３）さらに、配線／配置部６０５は、配置修正処理をおこなう。具体的には、配置最適化処理がおこなわれた半導体集積回路のレイアウトに対し、配置最適化処理によって第１のセルと第２のセルの間に挿入されたバッファなどのセルを削除する。
【００６２】
（４）そのうえ、配線／配置部６０５は、配線処理をおこなう。具体的には、上記配置処理、配置最適化処理、および配置修正処理がおこなわれた半導体集積回路のレイアウトに対し、上記第１のセルと上記第２のセルとを第１の信号路によって接続し、決定部６０４によって決定された接続点と故障検出用セルとを第２の信号路によって接続する。
【００６３】
（５）さらに、配線／配置部６０５は、配線最適化処理をおこなう。具体的には、配線処理がおこなわれた半導体集積回路のレイアウトに対し、タイミングやデザインルールなどの制約に基づいてバッファなどを配置する。
【００６４】
一方、配線／配置部６０５は、レイアウト情報３００を用いたレイアウト修正処理においては、（１）配線修正処理をおこなう。具体的には、既に配置処理および配線処理がおこなわれている半導体集積回路のレイアウトに対し、一旦第２の信号路を削除したうえ、決定部６０４によって決定された接続点と故障検出用セルとを第２の信号路によって新たに接続する。
【００６５】
（２）そして、配線／配置部６０５は、配線最適化処理をおこなう。具体的には、配線修正処理がおこなわれた半導体集積回路のレイアウトに対し、タイミングやデザインルールなどの制約に基づいてバッファなどを配置する。なお、配線／配置部６０５は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによってその機能を実現する。
【００６６】
出力部６０６は、配線処理、配線修正処理および配線最適化処理がおこなわれた半導体集積回路のレイアウトに関するレイアウト情報３００を出力する。ここでレイアウト情報３００の出力とは、たとえば画面表示、プリントアウト、所定の記録媒体への保存などである。なお、出力部６０６は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによって制御されたディスプレイ１０８、プリンタ１１３などによってその機能を実現する。
【００６７】
記憶部６１０は、検出部６０２によって組み合わせ情報４００が記録され、この組み合わせ情報４００を記憶する。記憶部６１０に記録／記憶された組み合わせ情報４００は、たとえば判断部６０３および決定部６０４によって読み出され、判断部６０３による判断処理および決定部６０４による決定処理に利用される。なお、記憶部６１０は、具体的には、たとえば図１に示したＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７によってその機能を実現する。
【００６８】
（レイアウト設計装置１００によるレイアウト生成処理の手順）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００によるレイアウト生成処理の手順について説明する。図７は、この発明の実施の形態にかかるレイアウト設計装置１００によるレイアウト生成処理の手順の一例を示すフローチャートである。
【００６９】
まず、入力部６０１によって、回路情報（ネットリスト）６００の入力を受け付ける（ステップＳ７０１）。つぎに、検出部６０２によって、ステップＳ７０１で入力された回路情報（ネットリスト）６００の中から第１のセル、第２のセルおよび故障検出用セルを検出する（ステップＳ７０２）。そして、検出部６０２によって、検出された第１のセルと、第２のセルと、故障検出用セルとを組み合わせた組み合わせ情報４００を生成し（ステップＳ７０３）、この組み合わせ情報４００を記憶部６１０に記録する（ステップＳ７０４）。
【００７０】
つぎに、決定部６０４によって、第２のセルの入力端子に故障検出用セルへの接続点を決定する（ステップＳ７０５）。つぎに、配線／配置部６０５によって、配置処理をおこなう（ステップＳ７０６）。具体的には、回路情報（ネットリスト）６００に記録された各種セルを半導体集積回路のレイアウト上に配置する。なお、配置処理がおこなわれた後のレイアウトの状態の一例については図８を用いて後述する。
【００７１】
つぎに、配線／配置部６０５によって、配置最適化処理をおこなう（ステップＳ７０７）。具体的には、タイミングやデザインルールなどの制約に基づき、各種セルが配置された半導体集積回路のレイアウト上にバッファなどを配置する。なお、配置最適化処理がおこなわれた後のレイアウトの状態の一例については図９を用いて後述する。
【００７２】
つぎに、配線／配置部６０５によって、配置修正処理をおこなう（ステップＳ７０８）。具体的には、ステップＳ７０７で配置最適化処理がおこなわれた半導体集積回路のレイアウトに対し、配置最適化処理によって第１のセルと第２のセルの間に挿入されたバッファなどのセルを削除する。なお、配置修正処理がおこなわれた後のレイアウトの状態の一例については図１０を用いて後述する。
【００７３】
つぎに、配線／配置部６０５によって、配線処理をおこなう（ステップＳ７０９）。具体的には、配置処理（ステップＳ７０６）、配置最適化処理（ステップＳ７０７）、および配置修正処理（ステップＳ７０８）がおこなわれた半導体集積回路のレイアウトに対し、第１のセルと第２のセルとを第１の信号路によって接続し、決定部６０４によって決定された接続点と故障検出用セルとを第２の信号路によって接続する。なお、配線処理がおこなわれた後のレイアウトの状態の一例については図１１を用いて後述する。
【００７４】
つぎに、配線／配置部６０５によって、配線最適化処理をおこなう（ステップＳ７１０）。具体的には、配線処理（ステップＳ７０９）がおこなわれた半導体集積回路のレイアウトに対し、タイミングやデザインルールなどの制約に基づいてバッファなどを配置する。なお、配線最適化処理がおこなわれた後のレイアウトの状態の一例については図１２を用いて後述する。そして、出力部６０６によって、配線最適化処理（ステップＳ７１０）がおこなわれたレイアウトに関するレイアウト情報３００を出力して（ステップＳ７１１）、一連の処理を終了する。
【００７５】
（配置処理がおこなわれた後のレイアウトの状態の一例）
つぎに、配置処理がおこなわれた後のレイアウトの状態の一例について説明する。図８は、配置処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【００７６】
図８において、レイアウト８００は、配線／配置部６０５がおこなった配置処理によって生成された設計対象回路２００（図２参照）のレイアウトであり、このレイアウト８００を構成するセルとして、クロック制御回路２０３（図２参照）のインスタンス名「ＥＮ＿ＳＲＣ１」が付与された出力端子２０３Ｓ（第１のセル）と、インスタンス名「ＧＣＢ１」が付与されたＧＣＢ回路２０４（第２のセル）と、インスタンス名「ＦＦ回路＿ＯＢＳ１」が付与されたＦＦ回路２０６（故障検出用セル）とが配置されている。
【００７７】
また、出力端子２０３ＳとＧＣＢ回路２０４のＥＮ入力端子２０４Ｅとがネット８０１によって接続され、出力端子２０３ＳとＦＦ回路２０６のＤ入力端子とがネット８０２によって接続されている。なお、便宜上、レイアウト８００に配置された上記セル（出力端子２０３Ｓ、ＧＣＢ回路２０４およびＦＦ回路２０６）以外のセルについては図示を省略する。
【００７８】
（配置最適化処理がおこなわれた後のレイアウトの状態の一例）
つぎに、配置最適化処理がおこなわれた後のレイアウトの状態の一例について説明する。図９は、配置最適化処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【００７９】
図９において、レイアウト８００は、図８に示したレイアウト８００に対する配置最適化処理が配線／配置部６０５によっておこなわれた後のレイアウト８００の状態を示したものであり、出力端子２０３Ｓ（第１のセル）とＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４Ｅとを接続するネット８０１上においてバッファ９０１，９０２，９０３が配置され、出力端子２０３Ｓ（第１のセル）とＦＦ回路２０６（故障検出用セル）のＤ入力端子とを接続するネット８０２上においてバッファ９０４，９０５が配置されている。
【００８０】
（配置修正処理がおこなわれた後のレイアウトの状態の一例）
つぎに、配置修正処理がおこなわれた後のレイアウトの状態の一例について説明する。図１０は、配置修正処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【００８１】
図１０において、レイアウト８００は、図７に示したレイアウト８００に対する配置修正処理が配線／配置部６０５によっておこなわれた後のレイアウト８００の状態を示したものであり、図４を用いて説明した組み合わせ情報４００に基づいて、出力端子２０３Ｓ（第１のセル）とＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４Ｅとを接続するネット８０１上に配置されていたバッファ９０１，９０２，９０３と、出力端子２０３Ｓ（第１のセル）とＦＦ回路２０６（故障検出用セル）のＤ入力端子とを接続するネット８０２上に配置されていたバッファ９０４，９０５と、が削除されている。
【００８２】
このように、図７を用いて説明した手順によるレイアウト生成処理によれば、配置最適化処理によって組み合わせ情報４００を構成する各セル間を接続するネット上に対しバッファが挿入された場合、配置修正処理によって上記バッファが削除される。
【００８３】
（配線処理がおこなわれた後のレイアウトの状態の一例）
つぎに、配線処理がおこなわれた後のレイアウトの状態の一例について説明する。図１１は、配線処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【００８４】
図１１において、レイアウト８００は、図１０に示したレイアウト８００に対する配線処理が配線／配置部６０５によっておこなわれた後のレイアウト８００の状態を示したものであり、出力端子２０３Ｓ（第１のセル）とＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４Ｅとが配線１１０１によって接続され、ＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４ＥとＦＦ回路２０６（故障検出用セル）のＤ入力端子とが配線１１０２によって接続されている。
【００８５】
このように、図７を用いて説明した手順によるレイアウト生成処理によって生成されたレイアウト８００によれば、出力端子２０３Ｓ（第１のセル）から出力された信号は、配線１１０１およびＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４Ｅを経由し、ＦＦ回路２０６（故障検出用セル）に取り込まれるため、クロック制御回路２０３（図３参照）および配線１１０１上の全区間内の故障を検出することができる。
【００８６】
（配線最適化処理がおこなわれた後のレイアウトの状態の一例）
つぎに、配線最適化処理がおこなわれた後のレイアウトの状態の一例について説明する。図１２は、配線最適化処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【００８７】
図１２において、レイアウト８００は、図１１に示したレイアウト８００に対する配線最適化処理が配線／配置部６０５によっておこなわれた後のレイアウト８００の状態を示したものであり、出力端子２０３Ｓ（第１のセル）とＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４Ｅとを接続する配線１１０１上においてはバッファ１２０１，１２０２，１２０３が配置され、ＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４ＥとＦＦ回路２０６（故障検出用セル）のＤ入力端子とを接続する配線１１０２上においてはバッファ１２０４，１２０５が配置されている。
【００８８】
このように、図７を用いて説明した手順によるレイアウト生成処理によって生成されたレイアウト８００によれば、出力端子２０３Ｓ（第１のセル）およびバッファ１２０１，１２０２，１２０３から出力された信号は、配線１１０１およびＧＣＢ回路２０４（第２のセル）のＥＮ入力端子２０４Ｅを経由し、ＦＦ回路２０６（故障検出用セル）に取り込まれるため、クロック制御回路２０３（図３参照）、バッファ１２０１，１２０２，１２０３、および配線１１０１上の全区間内の故障を検出することができる。
【００８９】
（レイアウト設計装置１００によるレイアウト生成処理の手順）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００によるレイアウト修正処理の手順について説明する。図１３は、この発明の実施の形態にかかるレイアウト設計装置１００によるレイアウト修正処理の手順の一例を示すフローチャートである。
【００９０】
まず、入力部６０１によって、レイアウト情報３００の入力を受け付ける（ステップＳ１３０１）。つぎに、検出部６０２によって、ステップＳ１３０１で入力されたレイアウト情報３００の中から第１のセル、第２のセルおよび故障検出用セルを検出する（ステップＳ１３０２）。そして、検出部６０２によって、検出された第１のセルと、第２のセルと、故障検出用セルとを組み合わせた組み合わせ情報４００を生成し（ステップＳ１３０３）、この組み合わせ情報４００を記憶部６１０に記録する（ステップＳ１３０４）。
【００９１】
つぎに、判断部６０３によって、故障検出用セルが、第１の信号路から分岐された第２の信号路によって接続されているか否かを判断する（ステップＳ１３０５）。ステップＳ１３０５において、故障検出用セルが、第１の信号路から分岐された第２の信号路によって接続されていると判断した場合（ステップＳ１３０５：Ｙｅｓ）、決定部６０４によって、第２のセルの入力端子に故障検出用セルへの接続点を決定する（ステップＳ１３０６）。
【００９２】
そして、配線／配置部６０５によって、配線修正処理をおこなう（ステップＳ１３０７）。具体的には、既に配線処理がおこなわれている半導体集積回路のレイアウトに対し、一旦第２の信号路を削除したうえ、ステップＳ１３０６で決定された接続点と故障検出用セルとを第２の信号路によって新たに接続する。
【００９３】
一方、ステップＳ１３０５において、故障検出用セルが、第１の信号路から分岐された第２の信号路によって接続されていないと判断した場合（ステップＳ１３０５：Ｎｏ）、ステップＳ１３０６およびステップＳ１３０７を飛ばして、ステップＳ１３０８へ進む。なお、配線修正処理がおこなわれた後のレイアウト情報３００の一例については図１４を用いて後述する。
【００９４】
つぎに、配線／配置部６０５によって、配線最適化処理をおこなう（ステップＳ１３０８）。具体的には、半導体集積回路のレイアウトに対し、タイミングやデザインルールなどの制約に基づいてバッファなどを配置する。なお、配線最適化処理がおこなわれた後のレイアウトの状態の一例については図１５を用いて後述する。そして、配線最適化処理（ステップＳ１３０８）がおこなわれたレイアウトに関するレイアウト情報３００を出力して（ステップＳ１３０９）、一連の処理を終了する。
【００９５】
（配線修正処理がおこなわれた後のレイアウトの状態の一例）
つぎに、配線修正処理がおこなわれた後のレイアウトの状態の一例について説明する。図１４は、配線修正処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【００９６】
図１４において、レイアウト１４００は、図３に示したレイアウト情報３００に記録されている半導体集積回路のレイアウトに対する配線修正処理が配線／配置部６０５によっておこなわれた後のレイアウト１４００の状態を示したものであり、図５を用いて説明した組み合わせ情報４００に基づいて、配線３１１上（第１の配線）の接続点３１１ＣとＦＦ回路３０３（故障検出用セル）とを接続していた配線３１２（第２の配線）が削除されたうえ、ＧＣＢ回路３０２（第２のセル）のＥＮ入力端子３０２ＥとＦＦ回路３０３（故障検出用セル）のＤ入力端子とが配線１４０１（第２の配線）によって新たに接続されている。
【００９７】
このように、図１３を用いて説明した手順によるレイアウト修正処理によって生成されたレイアウト１４００によれば、出力端子３０１Ｓ（第１のセル）から出力された信号は、配線３１１（第１の配線）およびＧＣＢ回路３０２（第２のセル）のＥＮ入力端子３０２Ｅを経由し、ＦＦ回路３０３（故障検出用セル）に取り込まれるため、クロック制御回路３０１（図示省略）および配線３１１（第１の配線）上の全区間内の故障を検出することができる。
【００９８】
（配線最適化処理がおこなわれた後のレイアウト情報３００の一例）
つぎに、配線最適化処理がおこなわれた後のレイアウトの状態の一例について説明する。図１５は、配線最適化処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【００９９】
図１５において、レイアウト１４００は、図１４に示したレイアウト１４００に対する配線最適化処理が配線／配置部６０５によっておこなわれた後のレイアウト１４００の状態を示したものであり、出力端子３０１Ｓ（第１のセル）とＧＣＢ回路３０２（第２のセル）のＥＮ入力端子３０２Ｅとを接続する配線３１１（第１の配線）上においてはバッファ１５０１，１５０２，１５０３が配置され、ＧＣＢ回路３０２（第２のセル）のＥＮ入力端子３０２ＥとＦＦ回路３０３（故障検出用セル）のＤ入力端子とを接続する配線１４０１（第２の配線）上においてはバッファ１５０４，１５０５が配置されている。
【０１００】
このように、図１３を用いて説明した手順によるレイアウト生成処理によって生成されたレイアウト１４００によれば、出力端子３０１Ｓ（第１のセル）およびバッファ１５０１，１５０２，１５０３から出力された信号は、配線３１１（第１の配線）およびＧＣＢ回路３０２（第２のセル）のＥＮ入力端子３０２Ｅを経由し、ＦＦ回路３０３（故障検出用セル）に取り込まれるため、クロック制御回路３０１（図示省略）、バッファ１５０１，１５０２，１５０３、および配線３１１（第１の配線）上の全区間内の故障を検出することができる。
【０１０１】
以上説明したように、この発明の実施の形態にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法によれば、第１のセル、および第１のセルと第２のセルとを接続する信号路上において生じた故障を検出することができるレイアウトを生成することができる。このため、半導体集積回路の効率的かつ最適なレイアウト設計をおこなうことができる。この結果、半導体集積回路の故障検出率向上、品質向上、さらにはレイアウト設計期間の短期間化を図ることができる。
【０１０２】
なお、本実施の形態で説明したレイアウト設計方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション、ＣＡＤ等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【０１０３】
（付記１）設計対象回路に関するレイアウト情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出させる検出工程と、
前記検出工程によって検出された故障検出用セルが、前記検出工程によって検出された第１および第２のセルとの間の信号路から分岐して接続されているか否かを判断させる判断工程と、
前記判断工程によって判断された判断結果に基づいて、前記信号路上の前記故障検出用セルへの分岐点から前記第２のセルまでの信号路長が短くなる前記信号路上の位置に、前記故障検出用セルへの接続点を決定させる決定工程と、
前記分岐点から前記故障検出用セルまでの信号路を、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路に配線修正させる配線修正工程と、
をコンピュータに実行させることを特徴とするレイアウト設計プログラム。
【０１０４】
（付記２）前記決定工程は、
前記判断工程によって判断された判断結果に基づいて、前記分岐点から前記第２のセルまでの間に配置される第３のセルの出力端子から前記第２のセルの間に、前記故障検出用セルへの接続点を決定させることを特徴とする付記１に記載のレイアウト設計プログラム。
【０１０５】
（付記３）前記決定工程は、
前記判断工程によって判断された判断結果に基づいて、前記第２のセルの入力端子に前記接続点を決定させることを特徴とする付記１に記載のレイアウト設計プログラム。
【０１０６】
（付記４）設計対象回路に関する回路情報の入力を受け付けさせる入力工程と、
前記入力工程によって入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出させる検出工程と、
前記検出工程によって検出された第１および第２のセル間に配置される第３のセルから前記第２のセルの入力端子までの間の位置を、前記検出工程によって検出された故障検出用セルへの接続点に決定させる決定工程と、
前記第１のセルから前記第２のセルまでの信号路と、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路とを配線させる配線工程と、
をコンピュータに実行させることを特徴とするレイアウト設計プログラム。
【０１０７】
（付記５）前記決定工程は、
前記第２のセルの入力端子を、前記故障検出用セルへの接続点に決定させることを特徴とする付記４に記載のレイアウト設計プログラム。
【０１０８】
（付記６）設計対象回路に関する回路情報の入力を受け付けさせる入力工程と、
前記入力工程によって入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出させる検出工程と、
前記検出工程によって検出された第２のセルの入力端子を、前記検出工程によって検出された故障検出用セルへの接続点に決定させる決定工程と、
前記第１のセルから前記第２のセルまでの信号路と、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路とを配線させる配線工程と、
をコンピュータに実行させることを特徴とするレイアウト設計プログラム。
【０１０９】
（付記７）付記１〜６のいずれか一つに記載のレイアウト設計プログラムを記録したコンピュータ読み取り可能な記録媒体。
【０１１０】
（付記８）設計対象回路に関するレイアウト情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出する検出手段と、
前記検出手段によって検出された故障検出用セルが、前記検出手段によって検出された第１および第２のセルとの間の信号路から分岐して接続されているか否かを判断する判断手段と、
前記判断手段によって判断された判断結果に基づいて、前記信号路上の前記故障検出用セルへの分岐点から前記第２のセルまでの信号路長が短くなる前記信号路上の位置に、前記故障検出用セルへの接続点を決定する決定手段と、
前記分岐点から前記故障検出用セルまでの信号路を、前記決定手段によって決定された接続点から前記故障検出用セルまでの信号路に配線修正する配線修正手段と、
を備えることを特徴とするレイアウト設計装置。
【０１１１】
（付記９）設計対象回路に関する回路情報の入力を受け付ける入力手段と、
前記入力手段によって入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出する検出手段と、
前記検出手段によって検出された第１および第２のセル間に配置される第３のセルから前記第２のセルの入力端子までの間の位置を、前記検出手段によって検出された故障検出用セルへの接続点に決定する決定手段と、
前記第１のセルから前記第２のセルまでの信号路と、前記決定手段によって決定された接続点から前記故障検出用セルまでの信号路とを配線する配線手段と、
を備えることを特徴とするレイアウト設計装置。
【０１１２】
（付記１０）設計対象回路に関する回路情報の入力を受け付ける入力手段と、
前記入力手段によって入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出する検出手段と、
前記検出手段によって検出された第２のセルの入力端子を、前記検出手段によって検出された故障検出用セルへの接続点に決定する決定手段と、
前記第１のセルから前記第２のセルまでの信号路と、前記決定手段によって決定された接続点から前記故障検出用セルまでの信号路とを配線する配線手段と、
を備えることを特徴とするレイアウト設計装置。
【０１１３】
（付記１１）設計対象回路に関するレイアウト情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出する検出工程と、
前記検出工程によって検出された故障検出用セルが、前記検出工程によって検出された第１および第２のセルとの間の信号路から分岐して接続されているか否かを判断する判断工程と、
前記判断工程によって判断された判断結果に基づいて、前記信号路上の前記故障検出用セルへの分岐点から前記第２のセルまでの信号路長が短くなる前記信号路上の位置に、前記故障検出用セルへの接続点を決定する決定工程と、
前記分岐点から前記故障検出用セルまでの信号路を、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路に配線修正する配線修正工程と、
を含んだことを特徴とするレイアウト設計方法。
【０１１４】
（付記１２）設計対象回路に関する回路情報の入力を受け付ける入力工程と、
前記入力工程によって入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出する検出工程と、
前記検出工程によって検出された第１および第２のセル間に配置される第３のセルから前記第２のセルの入力端子までの間の位置を、前記検出工程によって検出された故障検出用セルへの接続点に決定する決定工程と、
前記第１のセルから前記第２のセルまでの信号路と、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路とを配線する配線工程と、
を含んだことを特徴とするレイアウト設計方法。
【０１１５】
（付記１３）設計対象回路に関する回路情報の入力を受け付ける入力工程と、
前記入力工程によって入力された回路情報の中から、前記設計対象回路内の第１のセルと当該第１のセルからの出力信号を取り込む第２のセルと前記出力信号を取り込む故障検出用セルとを検出する検出工程と、
前記検出工程によって検出された第２のセルの入力端子を、前記検出工程によって検出された故障検出用セルへの接続点に決定する決定工程と、
前記第１のセルから前記第２のセルまでの信号路と、前記決定工程によって決定された接続点から前記故障検出用セルまでの信号路とを配線する配線工程と、
を含んだことを特徴とするレイアウト設計方法。
【産業上の利用可能性】
【０１１６】
以上のように、本発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法は、半導体集積回路のレイアウト設計に有用であり、特に、高い故障検出精度が要求される半導体集積回路のレイアウト設計に適している。
【図面の簡単な説明】
【０１１７】
【図１】この発明の実施の形態にかかるレイアウト設計装置のハードウェア構成を示すブロック図である。
【図２】この発明の実施の形態にかかるレイアウト設計装置に用いられる設計対象回路の一例を示す説明図である。
【図３】この発明の実施の形態にかかるレイアウト設計装置に用いられるレイアウト情報の一例を示す説明図である。
【図４】この発明の実施の形態にかかるレイアウト設計装置に用いられる組み合わせ情報の一例を示す説明図である。
【図５】この発明の実施の形態にかかるレイアウト設計装置に用いられる組み合わせ情報の別の一例を示す説明図である。
【図６】この発明の実施の形態にかかるレイアウト設計装置の機能的構成を示すブロック図である。
【図７】この発明の実施の形態にかかるレイアウト設計装置によるレイアウト生成処理手順の一例を示すフローチャートである。
【図８】配置処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【図９】配置最適化処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【図１０】配置修正処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【図１１】配線処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【図１２】配線最適化処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【図１３】この発明の実施の形態にかかるレイアウト設計装置によるレイアウト修正処理の手順の一例を示すフローチャートである。
【図１４】配線修正処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【図１５】配線最適化処理がおこなわれた後のレイアウトの状態の一例を示す説明図である。
【図１６】従来技術によるレイアウトの一例を示す説明図である。
【図１７】従来技術によるレイアウトの一例を示す説明図である。
【符号の説明】
【０１１８】
１００  レイアウト設計装置
２００  設計対象回路
３００  レイアウト情報
４００  組み合わせ情報
６００  回路情報
６０１  入力部
６０２  検出部
６０３  判断部
６０４  決定部
６０５  配線／配置部
６０６  出力部
６１０  記憶部
【図１】
2008004024.tif 000003
【図２】
2008004024.tif 000004
【図３】
2008004024.tif 000005
【図４】
2008004024.tif 000006
【図５】
2008004024.tif 000007
【図６】
2008004024.tif 000008
【図７】
2008004024.tif 000009
【図８】
2008004024.tif 000010
【図９】
2008004024.tif 000011
【図１０】
2008004024.tif 000012
【図１１】
2008004024.tif 000013
【図１２】
2008004024.tif 000014
【図１３】
2008004024.tif 000015
【図１４】
2008004024.tif 000016
【図１５】
2008004024.tif 000017
【図１６】
2008004024.tif 000018
【図１７】
2008004024.tif 000019