(57)【要約】【課題】設計期間の短縮化および設計者の労力軽減により設計作業の効率化を図ること。【解決手段】設計支援装置１０１は、テスト回路を含まないハードマクロセルを用いて生成されたユーザネットリスト６００を入力するユーザネットリスト入力部１８０１と、タイミング収束した物理情報にテスト端子を含むハードマクロセルおよびテスト回路を配置配線情報として埋め込んだフレームを用いてハードマクロセルを配置するハードマクロセル配置部１８０６と、フレームに埋め込まれたテスト回路の配置配線情報を用いてテスト回路を配置配線するテスト回路配置配線部１８１５と、配線で得られた配置配線情報９００のうち、テスト回路の配置配線情報を除いた配置配線情報を認識する論理構造ネットリスト認識部１８０８と、論理構造のネットリスト１０００を出力する論理構造ネットリスト出力部１８０９と、を備える。【選択図】        図１９
2005216012.tif 000002
【特許請求の範囲】
【請求項１】
タイミング収束した物理情報にテスト端子を持つハードマクロセルおよびテスト回路の配置配線情報が含まれているフレームを記憶するフレーム記憶手段と、
前記ハードマクロセルと同じ端子構成の物理情報を持ち、論理情報にはテスト端子を持たないハードマクロセルを用いて、テスト回路のないユーザネットリストを入力するユーザネットリスト入力手段と、
前記フレーム記憶手段によって記憶されたフレームを抽出するフレーム抽出手段と、
前記フレーム抽出手段によって抽出されたフレームに含まれているテスト回路の配置配線情報を元に、前記ユーザネットリスト入力手段によって入力されたユーザネットリストに含まれているハードマクロセルを配置するハードマクロセル配置手段と、
を備えることを特徴とする設計支援装置。
【請求項２】
前記フレーム抽出手段によって抽出されたフレームに含まれているテスト回路の配置配線情報を元にテスト回路を配置配線するテスト回路配置配線手段と、
前記ユーザネットリスト入力手段によって入力されたユーザネットリストに含まれているネットのみを配線するユーザネット配線手段と、
前記ハードマクロセル配置手段と、前記テスト回路配置配線手段と、前記ユーザネット配線手段とによって生成された配置配線情報から、前記テスト回路配置配線手段によって配置配線されたテスト回路の配置配線情報を除いた配置配線情報を認識するユーザ回路配置配線認識手段と、
前記ユーザ回路配置配線認識手段によって認識された配置配線情報をネットリストとして出力するネットリスト出力手段と、
を備えることを特徴とする請求項１に記載の設計支援装置。
【請求項３】
前記ハードマクロセル配置手段によって配置されたハードマクロセルの配置情報に基づいて、前記ユーザネットリスト入力手段によって入力されたハードマクロセルと、前記フレームに含まれるテスト回路との接続に関する接続情報を生成する接続情報生成手段と、
前記ユーザネットリスト入力手段によって入力されたユーザネットリストと、前記接続情報生成手段によって生成された接続情報とを用いて、前記ユーザネットリストをテスト合成することにより、テスト合成ネットリストを生成するテスト合成ネットリスト生成手段と、
前記テスト合成ネットリスト生成手段によって生成されたテスト合成ネットリストからテストパターンを生成するテストパターン生成手段と、
を備えることを特徴とする請求項１または２に記載の設計支援装置。
【請求項４】
タイミング収束した物理情報にテスト端子を持つハードマクロセルおよびテスト回路の配置配線情報が含まれているフレームを抽出するフレーム抽出工程と、
前記ハードマクロセルと同じ端子構成の物理情報を持ち、論理情報にはテスト端子を持たないハードマクロセルを用いて、テスト回路のないユーザネットリストを入力するユーザネットリスト入力工程と、
前記フレーム抽出工程によって抽出されたフレームに含まれているテスト回路の配置配線情報を元に、前記ユーザネットリスト入力工程によって入力されたユーザネットリストに含まれているハードマクロセルを配置するハードマクロセル配置工程と、
を含んだことを特徴とする設計支援方法。
【請求項５】
前記フレーム抽出工程によって抽出されたフレームに含まれているテスト回路の配置配線情報を元にテスト回路を配置配線するテスト回路配置配線工程と、
前記ユーザネットリスト入力工程によって入力されたユーザネットリストに含まれているネットのみを配線するユーザネット配線工程と、
前記ハードマクロセル配置工程と、前記テスト回路配置配線工程と、前記ユーザネット配線工程とによって生成された配置配線情報から、前記テスト回路配置配線工程によって配置配線されたテスト回路の配置配線情報を除いた配置配線情報を認識するユーザ回路配置配線認識工程と、
前記ユーザ回路配置配線認識工程によって認識された配置配線情報をネットリストとして出力するネットリスト出力工程と、
を含んだことを特徴とする請求項４に記載の設計支援方法。
【請求項６】
前記ハードマクロセル配置工程によって配置されたハードマクロセルの配置情報に基づいて、前記ユーザネットリスト入力工程によって入力されたハードマクロセルと、前記フレームに含まれるテスト回路との接続に関する接続情報を生成する接続情報生成工程と、
前記ユーザネットリスト入力工程によって入力されたユーザネットリストと、前記接続情報生成工程によって生成された接続情報とを用いて、前記ユーザネットリストをテスト合成することにより、テスト合成ネットリストを生成するテスト合成ネットリスト生成工程と、
前記テスト合成ネットリスト生成工程によって生成されたテスト合成ネットリストからテストパターンを生成するテストパターン生成工程と、
を含んだことを特徴とする請求項４または５に記載の設計支援方法。
【請求項７】
タイミング収束した物理情報にテスト端子を持つハードマクロセルおよびテスト回路の配置配線情報が含まれているフレームを抽出させるフレーム抽出工程と、
前記ハードマクロセルと同じ端子構成の物理情報を持ち、論理情報にはテスト端子を持たないハードマクロセルを用いて、テスト回路のないユーザネットリストを入力させるユーザネットリスト入力工程と、
前記フレーム抽出工程によって抽出されたフレームに含まれているテスト回路の配置配線情報を元に、前記ユーザネットリスト入力工程によって入力されたユーザネットリストに含まれているハードマクロセルを配置させるハードマクロセル配置工程と、
をコンピュータに実行させることを特徴とする設計支援プログラム。
【請求項８】
前記フレーム抽出工程によって抽出されたフレームに含まれているテスト回路の配置配線情報を元にテスト回路を配置配線させるテスト回路配置配線工程と、
前記ユーザネットリスト入力工程によって入力されたユーザネットリストに含まれているネットのみを配線させるユーザネット配線工程と、
前記ハードマクロセル配置工程と、前記テスト回路配置配線工程と、前記ユーザネット配線工程とによって生成された配置配線情報から、前記テスト回路配置配線工程によって配置配線されたテスト回路の配置配線情報を除いた配置配線情報を認識させるユーザ回路配置配線認識工程と、
前記ユーザ回路配置配線認識工程によって認識された配置配線情報をネットリストとして出力させるネットリスト出力工程と、
をコンピュータに実行させることを特徴とする請求項７に記載の設計支援プログラム。
【請求項９】
前記ハードマクロセル配置工程によって配置されたハードマクロセルの配置情報に基づいて、前記ユーザネットリスト入力工程によって入力されたハードマクロセルと、前記フレームに含まれるテスト回路との接続に関する接続情報を生成させる接続情報生成工程と、
前記ユーザネットリスト入力工程によって入力されたユーザネットリストと、前記接続情報生成工程によって生成された接続情報とを用いて、前記ユーザネットリストをテスト合成することにより、テスト合成ネットリストを生成させるテスト合成ネットリスト生成工程と、
前記テスト合成ネットリスト生成工程によって生成されたテスト合成ネットリストからテストパターンを生成させるテストパターン生成工程と、
をコンピュータに実行させることを特徴とする請求項７または８に記載の設計支援プログラム。
【請求項１０】
請求項７〜９のいずれか一つに記載の設計支援プログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＬＳＩの設計を支援する設計支援装置、設計支援方法、設計支援プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
ＬＳＩ設計では、従来から設計期間の短縮による作業効率化が要求されるとともに、システムを１つのチップ上に搭載することが要求されている。図２７は、従来の設計フローの一例を示す説明図である。図２７において、設計者は、ゲートレベルの論理回路をあらわすユーザネットリスト２７０１を作成する。また、設計者は、テスト合成をおこなうため、テスト回路とユーザネットリスト２７０１内のハードマクロとの接続関係を示すバウンダリスキャン情報、テスト時クロック接続情報、メモリ同時試験情報、内部スキャンチェーン情報、ＰＬＬ端子情報、テスト端子情報などのＩ／Ｆ（インターフェース）ファイル２７０２を作成する。
【０００３】
つぎに、このユーザネットリスト２７０１にＩ／Ｆファイル２７０２を取り込んでテスト回路を挿入することによりテスト合成をする（ステップＳ２７０１）。そして、テスト合成されたネットリスト２７０３をフレーム２７０４の配置配線領域情報を元にレイアウトをおこなう（ステップＳ２７０２）。図２８は、従来のフレームを示す説明図である。ここで、フレーム２８００とはＬＳＩのレイアウトでセルおよびネットを配置配線可能な領域を示した情報である。図２７において、レイアウトされたデータはＧＤＳとしてＬＳＩ開発の後工程へ出力され、ネットリスト２７０５としてユーザへ出力される。また、このネットリスト２７０５によってテストパターン２７０６が生成されるとともに（ステップＳ２７０３）、このネットリストを故障解析用ネットリストとしても利用できる。
【０００４】
さらに、上述した処理フローでは、テスト合成前、テスト合成後およびレイアウト後にネットリストのルールチェックＲ１〜Ｒ３をおこなっている。テスト合成前のルールチェックＲ１では、ユーザネットリスト２７０１がテスト合成ツールを用いてテスト合成（ステップＳ２７０１）を実行できるか否かをチェックする。また、テスト合成後のルールチェックＲ２では、テスト合成後のネットリスト２７０３の設定に誤りがないか否かをチェックする。さらに、レイアウト後のルールチェックＲ３では、テスト回路の論理が書き換えられていないかなど、テスト回路に影響がないか否かをチェックする。そして、ルールチェックＲ１〜Ｒ３でエラーが発生したときには、ルールチェックＲ１のエラーはユーザネットリスト２７０１を再設計、ルールチェックＲ２のエラーは再テスト合成、ルールチェックＲ３のエラーは再レイアウトが必要となる。
【０００５】
また、上述したレイアウト（ステップＳ２７０２）により、フレーム２８００上には複数のＲＡＭが展開される。図２９は、フレーム２８００上に複数のＲＡＭがレイアウトされた状態を示す説明図である。図２９において、ＲＡＭ２９０１は、ビット／ワード構成が２０×１０２４のコア２９１１を備え、ＲＡＭ２９０２は、ビット／ワード構成が４０×５１２のコア２９１２を備え、ＲＡＭ２９０３は、ビット／ワード構成が８０×２５６のコア２９１３を備えている。また、各ＲＡＭ２９０１〜２９０３の入力側には、コントローラ２９２１〜２９２３が設けられている。各ＲＡＭ２９０１〜２９０３のテストをおこなう場合、初期化信号ＭＤＩが入力されることによって、それぞれＲＡＭ２９０１〜２９０３のテストを実行する。ＲＡＭ２９０１〜２９０３からは、セレクタ２９３０を介して出力データＭＤＯが出力される。
【０００６】
さらに、上述したレイアウト（ステップＳ２７０２）により、フレーム２８００上に、ＬＳＩのＩ／Ｏ領域の構成に応じて、入力用、出力用、バス用、３−ＳＴＡＴＥ用、クロック用、入力／スキャンイン共用、出力／スキャンアウト共用などの各種ＢＳＲ（バウンダリスキャンレジスタ）を適宜準備して配線をおこなうことができる。
【０００７】
また、上述したレイアウト（ステップＳ２７０２）により、ＢＳＲセルを連続的に配置することによってバウンダリスキャンチェーンを形成することもできる。図３０は、ＢＳＲを連続的に配置することによって形成されたバウンダリスキャンチェーンを示す説明図である。図３０において、バウンダリスキャンチェーン３０００は、ＢＳＲを含む複数のＢＳＲセル３００１を連続的に配置することによって形成されたスキャンチェーンである。バウンダリスキャンチェーン３０００は、ＴＡＰコントローラ３０１０の近傍の箇所で切断されている。この切断により、バウンダリスキャンチェーン３０００の始点となるＢＳＲセル３００１Ｓと終点となるＢＳＲセル３００１Ｅとの間に切断領域３００５が形成される。そして、ＴＡＰコントローラ３０１０の制御信号線およびテスト信号線３０２０が切断領域３００５を通って配線される。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した処理フローによっておこなわれる設計では、テスト合成済みのネットリスト２７０３を用いてレイアウトをおこなっていた（ステップＳ２７０２）。したがって、テスト合成（ステップＳ２７０１）において、テスト合成後のレイアウトの内容を想定してテスト回路を挿入しなければならず、設計の効率が低下し、ＳＯＣ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ）の実現を阻害するという問題があった。
【０００９】
また、上述した処理フローでは、レイアウト（ステップＳ２７０２）前にテスト合成によってテスト回路を挿入することとしているが、論理設計時にテスト回路の挿入を考慮しない場合、あるいは考慮が足りない場合には、テスト回路挿入による付加回路のために、レイアウトにおけるタイミング収束を再度おこなう必要が生じ、工数増加によって設計期間の長期化を招くという問題があった。
【００１０】
また、ユーザネットリスト２７０１がタイミング収束している場合、テスト合成におけるテスト回路の挿入により、再度タイミング収束が必要となり、工数増加によって設計期間の長期化を招くという問題があった。さらに、テスト合成の条件が、実際の配置状況と大きく異なる場合、配線長の増加やこれに伴うテスト動作周波数の低下を招くという問題があった。
【００１１】
また、上述したテスト合成をおこなうためのＩ／Ｆファイル２７０２を設計者が作成する場合、入力ミスなどの人為的なミスにより、テスト合成を正確におこなうことができないという問題があった。さらに、テスト合成からテストパターンまでの工数が多くなり、設計期間の長期化を招くという問題があった。
【００１２】
また、上述した処理フローでは、ルールチェックを３回（Ｒ１〜Ｒ３）おこなっているため、処理フローの工数が増加して設計期間の長期化を招くという問題があった。また、ルールチェックでエラーが発生したときには、ルールチェックＲ１のエラーはユーザネットリストを再設計、ルールチェックＲ２のエラーは再テスト合成、ルールチェックＲ３のエラーは再レイアウトが必要となり、設計の長期化を招くという問題があった。
【００１３】
さらに、上述した処理フローでは、レイアウト（ステップＳ２７０２）前にテスト合成によってテスト回路を挿入することとしているが、テスト回路はシステムモードのタイミングに影響を与えるため、設計者はテスト回路が挿入されることを考慮してシステムモードを設計する必要があり、設計者の負担が大きいという問題があった。
【００１４】
また、上述した図２９に示したＲＡＭ２９０１〜２９０３では、互いに異なるビット／ワード構成のコア２９１１〜２９１３を使用しているが、ＲＡＭ２９０１〜２９０３のビット／ワード構成の相異は、同時試験組み合わせ上の制約となるため、試験の長期化を招くという問題があった。さらに、上述した処理フローでは、ユーザネットリスト２７０１に搭載されたＲＡＭやＰＬＬなどのマクロセル毎に、テストパターンを作成していたため、テストパターン生成に時間がかかり、設計期間の長期化を招くという問題があった。
【００１５】
また、上述のように、各種ＢＳＲを適宜準備して配線をおこなうと、設計の自由度が増加する反面、設計作業の時間が増大してしまうという問題があった。一方、タイミング調整済みのＴＡＰコントローラとＢＳＲとの間の制御信号配線情報をフレームに加えた場合、使用するＢＳＲの種類によっては制御端子の構成が異なるため、設計の自由度が低下するという問題があった。
【００１６】
さらに、図３０において、ＢＳＲセル３００１を連続配置したときに、バウンダリスキャンチェーン３０００の始点および終点を作るため、あるいはＴＡＰコントローラ３０１０の制御信号線を通すために、バウンダリスキャンチェーン３０００の連続配置領域を切断している。この場合、切断したとしてもバウンダリスキャンチェーン３０００の始点のＢＳＲセル３００１Ｓおよび終点のＢＳＲセル３００１Ｅは切断した位置に限定されてしまうため、バウンダリスキャンチェーン３０００の始点のＢＳＲセル３００１Ｓおよび終点のＢＳＲセル３００１Ｅと、ＴＡＰントローラ３０１０との配線性とを考慮すると、ＴＡＰコントローラ３０１０を、バウンダリスキャンチェーン３０００の切断領域３００５の近傍に配置しなければならないという制約が生じることとなる。
【００１７】
同様に、ＴＡＰコントローラ３０１０の端子も、バウンダリスキャンチェーン３０００の切断領域３００５の近傍に配置しなければならないという制約が生じることとなる。また、バウンダリスキャンチェーン３０００の切断領域３００５にＴＡＰコントローラ３０１０の制御信号線およびテスト信号線３０２０を配線するため、制御信号線およびテスト信号線３０２０が増加した場合に過密となり、配線できない場合がある。このように、バウンダリスキャンチェーン３０００の切断領域３００５およびその近傍において設計の自由度が低下するという問題があった。
【００１８】
この発明は、上述した従来技術による問題点を解消するため、設計期間の短縮化および設計者の労力軽減により設計作業の効率化を支援する設計支援装置、設計支援方法、設計支援プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上述した課題を解決し、目的を達成するため、この発明にかかる設計支援装置、設計支援方法、設計支援プログラムおよび記録媒体は、タイミング収束した物理情報にテスト端子を持つハードマクロセルおよびテスト回路の配置配線情報が含まれているフレームを記憶し、前記ハードマクロセルと同じ端子構成の物理情報を持ち、論理情報にはテスト端子を持たないハードマクロセルを用いて、テスト回路のないユーザネットリストを入力し、記憶されたフレームを抽出し、抽出されたフレームに含まれているテスト回路の配置配線情報を元に、入力されたユーザネットリストに含まれているハードマクロセルを配置することを特徴とする。
【００２０】
この発明によれば、物理情報にテスト端子を含むハードマクロとテスト回路とがフレーム上に設けられ、かつタイミング収束しているため、フレーム上のハードマクロセル内のテスト回路の配置配線情報にしたがって、入力したユーザネットリストのハードマクロセルを、テスト合成をおこなう前に配置することができる。
【００２１】
また、前記フレームのテスト回路の配置配線情報をもとに入力したユーザネットリストの前記ハードマクロセルと前記テスト回路とを配置配線し、入力された前記ユーザネットリストのユーザネットを配線した後に、配置配線情報から前記フレームのテスト回路の配置配線情報を除き、テスト回路を含まないネットリストを出力することとしてもよい。
【００２２】
この発明によれば、テスト合成時におけるテスト回路の挿入を考慮して設計する必要がなく、設計の自由度を減らすこともなく、設計工数の削減を図ることができる。また、ユーザに対しハードマクロセルのテスト端子の配線接続およびテスト回路を意識させることなく、ユーザが所望するネットリストを提供することができる。
【００２３】
また、入力されたユーザネットリストの前記ハードマクロセルを前記フレームの配置情報に基づいて配置し、前記フレームのテスト回路とハードマクロセルの配置配線情報から前記ハードマクロセルと前記フレームのテスト回路との接続に関する接続情報を生成し、生成された接続情報を元に、前記ユーザネットリストをテスト合成することにより、テスト合成ネットリストを生成し、生成されたテスト合成ネットリストのテストパターンを生成することとしてもよい。
【００２４】
この発明によれば、フレームのテスト回路とハードマクロセルの配置配線情報から接続に関する接続情報を自動生成することができる。また、ユーザネットの配線とは別個に並行してテストパターンを生成することができ、設計工数の削減を図ることができる。
【発明の効果】
【００２５】
本発明にかかる設計支援装置、設計支援方法、設計支援プログラムおよび記録媒体によれば、設計期間の短縮化および設計者の労力軽減により設計作業の効率化を図ることができるという効果を奏する。特に、あらかじめハードマクロセルにテスト回路やテスト端子が挿入され、かつタイミング収束されたハードマクロセルを用いているため、論理設計の工数を削減でき、設計期間の短縮化および設計作業の効率化を図ることができるという効果を奏する。また、テスト合成後のレイアウトの内容を想定してテスト回路を挿入する必要もなく、設計の自由度の向上を図ることができるという効果を奏する。
【００２６】
また、内部のテスト回路のタイミングを考慮したテスト端子を含まないハードマクロセルを用いて論理設計をおこなうため、ユーザネットリストを再度タイミング収束させる必要がなく、論理設計の工数削減による設計期間の短縮化を図ることができるという効果を奏する。さらに、テスト合成の条件が、実際の配置状況と大きく異なる場合であっても、配線長の増加やこれに伴うテスト動作周波数の低下を防止することができるという効果を奏する。
【００２７】
また、レイアウトの配置が終了した段階で生成されたインターフェースファイルを使用し、テスト合成からテストパターン生成までをレイアウトの配線処理と並行して処理ができるため、設計期間の短縮化を図ることができるという効果を奏する。また、あらかじめフレームライブラリを準備しておくことにより、ルールチェックの回数が減ることで、論理設計の工数を削減でき、設計期間の短縮化および設計作業の効率化を図ることができるという効果を奏する。
【００２８】
さらに、同一ビット／ワード構成の複数のＲＡＭのコアを使用することにより、ＲＡＭ自体のビット／ワード構成が異なっていても、同時試験およびテストパターンの再利用をおこなうことができ、テスト期間の短縮化を図ることができるという効果を奏する。
【００２９】
また、種類が異なるＢＳＲのテスト端子構成を同一構成とすることにより、テスト端子構成が同一であれば用途にかかわらずＢＳＲを配置することができるため、設計の自由度の向上および設計作業の効率化を図ることができるという効果を奏する。
【００３０】
さらに、ＢＳＲ領域において連続的に配置した複数のＢＳＲセルによって形成されるバウンダリスキャンチェーンにおける任意の２つのＢＳＲセルの間の配置領域に、２つのＢＳＲセルを接続するとともに、配置領域を通過する信号線を接続するバイパスセルを配置するようにしたことにより、ＴＡＰコントローラの配置やその信号線およびテスト信号線の配線の自由度の向上を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００３１】
（実施の形態）
以下に添付図面を参照して、この発明にかかる設計支援装置、設計支援方法、設計支援プログラムおよび記録媒体の好適な実施の形態を詳細に説明する。
【００３２】
（設計支援システムの概要）
まず、この発明の実施の形態にかかる設計支援システムの概略構成について説明する。図１は、この発明の実施の形態にかかる設計支援システム１００の概略構成を示す説明図である。図１において、設計支援システム１００は、ＬＳＩの設計支援をおこなう設計支援装置１０１と、設計支援装置１０１に対しＬＳＩの設計支援を要求・依頼する一または複数の情報端末装置１０２とが、インターネット、ＬＡＮ、ＷＡＮなどのネットワーク１０３を介して接続されており、相互に交信可能とされている。設計支援システム１００は、ユーザセルライブラリ１０４およびテストセルライブラリ１０５を備えている。ユーザセルライブラリ１０４およびテストセルライブラリ１０５については後述する。なお、情報端末装置１０２としてはパーソナル・コンピュータを用いることができる。
【００３３】
（設計支援装置および情報端末装置のハードウェア構成）
つぎに、この発明の実施の形態にかかる設計支援システム１００の設計支援装置１０１および情報端末装置１０２のハードウェア構成について説明する。図２は、この発明の実施の形態にかかる設計支援システム１００の設計支援装置１０１および情報端末装置１０２のハードウェア構成を示すブロック図である。
【００３４】
図２において、設計支援装置１０１および情報端末装置１０２はそれぞれ、ＣＰＵ２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、ＨＤＤ（ハードディスクドライブ）２０４と、ＨＤ（ハードディスク）２０５と、ＦＤＤ（フレキシブルディスクドライブ）２０６と、着脱可能な記録媒体の一例としてのＦＤ（フレキシブルディスク）２０７と、ディスプレイ２０８と、Ｉ／Ｆ（インターフェース）２０９と、キーボード２１０と、マウス２１１と、スキャナ２１２と、プリンタ２１３と、を備えている。また、各構成部はバス２００によってそれぞれ接続されている。
【００３５】
ここで、ＣＰＵ２０１は、設計支援装置１０１および情報端末装置１０２の全体の制御を司る。ＲＯＭ２０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される。ＨＤＤ２０４は、ＣＰＵ２０１の制御にしたがってＨＤ２０５に対するデータのリード／ライトを制御する。ＨＤ２０５は、ＨＤＤ２０４の制御で書き込まれたデータを記憶する。
【００３６】
ＦＤＤ２０６は、ＣＰＵ２０１の制御にしたがってＦＤ２０７に対するデータのリード／ライトを制御する。ＦＤ２０７は、ＦＤＤ２０６の制御で書き込まれたデータを記憶したり、ＦＤ２０７に記憶されたデータを設計支援装置１０１および情報端末装置１０２に読み取らせたりする。
【００３７】
また、着脱可能な記録媒体として、ＦＤ２０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、メモリーカードなどであってもよい。ディスプレイ２０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ２０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００３８】
Ｉ／Ｆ２０９は、通信回線を通じてインターネットなどのネットワーク１０３に接続され、このネットワーク１０３を介して他の装置に接続される。そして、Ｉ／Ｆ２０９は、ネットワーク１０３と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ２０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００３９】
キーボード２１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス２１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００４０】
スキャナ２１２は、画像を光学的に読み取り、設計支援装置１０１および情報端末装置１０２内に画像データを取り込む。なお、スキャナ２１２は、ＯＣＲ機能を持たせてもよい。また、プリンタ２１３は、画像データや文書データを印刷する。プリンタ２１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００４１】
つぎに、図１に示したユーザセルライブラリ１０４について説明する。図３は、ユーザセルライブラリ１０４に記憶されているハードマクロセルの内容を示す説明図である。図３において、ユーザセルライブラリ１０４には、ＰＬＬ、ＴＡＰコントローラ、フリップフロップ（以下「ＦＦ」）、ＲＡＭおよびバウンダリスキャンレジスタ（以下「ＢＳＲ」）などのハードマクロセルが記憶されている。ユーザセルライブラリ１０４は、論理情報３１０と物理情報３２０とを備える。ユーザセルライブラリ１０４では、物理情報３２０にはテスト時に使用するテスト端子を備えている。一方、論理情報３１０にはテスト端子が取り除かれた論理を備えている。ただし、論理情報３１０が持つテスト端子以外のタイミング情報、論理情報３１０が持つサイズ情報はすべて物理情報３２０と等しいものである。
【００４２】
まず、ＰＬＬについて説明する。ＰＬＬ３１１およびＰＬＬ３２１にはともにＰＬＬ−Ｂｉｓｔ回路またはＰＬＬ−Ｔｅｓｔ用制御回路などのテスト回路３３１が挿入されている。物理情報３２０ではＰＬＬ３２１はテスト端子３４１を有し、論理情報３１０ではテスト端子３４１がない。ＰＬＬ３１１およびＰＬＬ３２１はタイミング収束された状態でハードマクロ化されている。
【００４３】
ＦＦ３１２およびＦＦ３２２にも、テスト回路３３２が挿入されている。物理情報３２０ではＳｃａｎＥｎａｂｌｅ端子、ＳｃａｎＩｎ端子およびＳｃａｎＯｕｔ端子からなるテスト端子３４２があり、論理情報３１０ではテスト端子３４２がない。ＦＦ３１２およびＦＦ３２２はタイミング収束された状態でハードマクロ化されている。
【００４４】
ＲＡＭ３１３およびＲＡＭ３２３にも、ともにテスト回路（ＢＩＳＴ回路またはスキャン回路）３３３が挿入されている。物理情報３２０ではＲＡＭ３２３はテスト端子３４３を有し、論理情報３１０ではテスト端子３４３がない。ＲＡＭ３１３およびＲＡＭ３２３はタイミング収束された状態でハードマクロ化されている。
【００４５】
ＢＳＲ３１４およびＢＳＲ３２４にも、ともにテスト回路３３４が挿入されている。物理情報３２０ではＢＳＲ３２４はバウンダリスキャンチェーンを構成するためのテスト端子３４４を有し、論理情報３１０ではテスト端子３４４がない。ＢＳＲ３１４およびＢＳＲ３２４はタイミング収束された状態でハードマクロ化されている。また、論理情報３１０では、ＢＳＲ３１４はバッファとして参照することができる。
【００４６】
ＴＡＰコントローラ３１５およびＴＡＰコントローラ３２５は、各テスト回路３３１〜３３４を制御する。物理情報３２０ではＴＡＰコントローラ３２５は各テスト回路３３１〜３３４に接続するための、ＰＬＬ-Ｔｅｓｔ、ファンクションテスト、メモリテスト、バウンダリテストを制御するテスト端子３４５を有し、論理情報３１０ではテスト端子３４５がない。ＴＡＰコントローラ３１５およびＴＡＰコントローラ３２５はタイミング収束された状態でハードマクロ化されている。
【００４７】
つぎに、図１に示したテストセルライブラリ１０５について説明する。図４は、テストセルライブラリ１０５に記憶されているハードマクロセルの内容を示す説明図である。テストセルライブラリ１０５のハードマクロセルは同一の端子構成、同一のサイズ、同一のタイミングを論理情報４１０と物理情報４２０に持つ。テストセルライブラリ１０５に含まれるハードマクロセルには、そのハードマクロセルの持つ物理情報４２０と全く同じスペックおよび全く同じ端子構成を物理情報に持つユーザセルライブラリ１０４のハードマクロセルが対応して存在する。ただし、これらの対応するユーザセルライブラリ１０４とテストセルライブラリ１０５に存在するハードマクロセルは互いにハードマクロのセル名が異なる。
【００４８】
つぎに、この発明の実施の形態にかかる設計支援装置の処理フローについて説明する。図５は、この発明の実施の形態にかかる設計支援装置の処理フローを示す説明図である。図５において、ユーザネットリストデータベース５０１には、図１に示した情報端末装置１０２から送信されてきたユーザネットリストが記憶されている。また、フレームライブラリデータベース５０２には、タイミング収束したテストセルライブラリ、図４に示したハードマクロセルとテスト回路の配置配線情報とを含んだフレームが記憶されている。
【００４９】
そして、設計支援装置１０１によってＬＳＩの設計をおこなう場合、フレームライブラリデータベース５０２に記憶されているフレームの配置配線情報を元に、ユーザネットリストデータベース５０１に記憶されているユーザネットリストをレイアウトする（ステップＳ５０１）。このレイアウトは、フレームに、ユーザネットリストに含まれているハードマクロセルの配置のみをおこなう。
【００５０】
このレイアウト（ステップＳ５０１）の後、配置されたユーザネットリストのハードマクロセルの配置位置とフレームのテスト回路の配置配線情報Ｉ／Ｆ（インターフェース）ファイルを生成して、Ｉ／Ｆファイルデータベース５０３に記憶する。そして、ユーザネットリストデータベース５０１に記憶されているユーザネットリストとＩ／Ｆファイルデータベース５０３に記憶されているＩ／Ｆファイルとに基づいてテスト合成をおこなう（ステップＳ５０２）。テスト合成されたユーザネットリストはテスト合成ネットリストデータベース５０４に記憶される。そして、テスト合成ネットリストデータベース５０４に記憶されたネットリストからテストパターンを生成し（ステップＳ５０３）、テストパターンデータベース５０５に記憶する。
【００５１】
また、テスト合成（ステップＳ５０２）と並行して、ステップＳ５０１によってフレームの配置配線情報からハードマクロセルを配置した後に、フレーム上のテスト回路の配置配線情報にしたがってテスト回路を配置配線する（ステップＳ５０４）。続いて、テスト回路を配置配線した後にユーザネットリストデータベース５０１に記憶されているユーザネットリストのユーザネットを配線する（ステップＳ５０５）。このステップＳ５０５によって生成された配線接続情報のＧＤＳ（Ｇｒａｐｈｉｃ  Ｄａｔａ  Ｓｙｓｔｅｍの略、レイアウト図形データベースの標準フォーマット）データは、ＧＤＳデータベース５０６に記憶され、生成された故障解析用ネットリストは故障解析用ネットリストデータベース５０７、返却用ネットリストは返却用ネットリストデータベース５０８に記憶される。ＧＤＳデータ、故障解析用ネットリストおよび返却用ネットリストは、ユーザに送信される。
【００５２】
このように、ユーザセルライブラリ１０４の論理情報３１０を用いて作成されたユーザネットリストを入力した場合、上述したステップＳ５０１のレイアウトでは、図３に示したユーザセルライブラリ１０４の物理情報３２０を参照するため、ユーザネットリストのハードマクロセルは、テスト端子３４１〜３４５を備えたハードマクロセル３２１〜３２５として認識することができる。これにより、テスト端子のないユーザネットリストのハードマクロセルが入力された場合でも、テスト端子が現れた状態で配置配線をおこなうことができる。また、ユーザに返却する返却用ネットリストはユーザセルライブラリ１０４の論理情報３１０を用いて認識されるため、テスト回路３３１〜３３４、テスト端子３４１〜３４５およびテスト端子３４１〜３４５に接続される配線は、この返却用ネットリストデータベース５０８には出力されない。
【００５３】
また、故障解析用ネットリストには、レイアウトツールによって、物理情報上ではユーザセルライブラリ１０４と全く同一の端子構成およびスペックを持つテストセルライブラリ１０５のハードマクロセルに、ハードマクロセル名をスワップする。このスワップ処理については後述する。このスワップ後にネットリストを出力すると、テスト端子およびテスト回路を含んだネットリスト、すなわち、故障解析用ネットリストを出力することができる。
【００５４】
つぎに、図５に示した各データベース５０１〜５０５、５０７、５０８に記憶されているデータ内容について説明する。図６は、ユーザネットリストデータベース５０１に記憶されているユーザネットリスト６００の一例を示すブロック図である。このユーザネットリスト６００はユーザが独自に作成したものであり、上述したユーザセルライブラリ１０４の論理情報３１０を参照することによって作成されたネットリストである。図６において、各ＦＦ３１２（３１２ａ〜３１２ｄ）はクロック線６０１に接続されており、ＦＦ３１２（３１２ａ〜３１２ｄ）の出力はそれぞれアンド回路６０２ａ〜６０２ｄに入力される。上段のアンド回路６０２ｂの出力は、ＲＡＭ３１３のデータ入力端子ＤａｔａＩｎに入力され、下段のアンド回路６０２ｄの出力は、ＲＡＭ３１３のアドレス端子Ａｄｄｒｅｓｓに入力される。また、下段のアンド回路６０２ｄの出力は、各ＢＳＲ３１４に入力される。
【００５５】
つぎに、フレームライブラリデータベース５０２に記憶されているフレームの配置配線情報について説明する。図７は、フレームライブラリデータベース５０２に記憶されているフレームの配置配線情報の一例を示すブロック図、図８は図７に示したフレームの配置配線情報の部分拡大図である。このフレームは、テスト端子を持つハードマクロセルとテスト回路の配置配線情報とを持つ。このフレームの配置配線情報７００は上述したテストセルライブラリ１０５に基づいて作成されている。図７において、フレーム７０１は、ハードマクロセルが埋め込まれるチップ領域７０２とＩ／Ｏ領域７０３を備えている。チップ領域７０２とＩ／Ｏ領域７０３との間には、ＢＳＲ領域７０４が備えられている。
【００５６】
図７において、チップ領域７０２には、メモリテストコントローラ７１１、クロックバッファ７１２、スイッチボックス７１３、ＰＬＬ３２１、複数のＦＦ３２２、ＲＡＭ３２３、ＴＡＰコントローラ３２５が配線接続されて設けられている。スイッチボックス７１３は、レイアウト処理においてＰＬＬ３２１の出力をクロックツリーのソースにマッピングする。また、複数のＦＦ３２２は、配線接続されることによってスキャンチェーン７１４を構成する。ＲＡＭ配置領域７０５には、ＲＡＭ３２３が配置される。
【００５７】
また、図８において、スキャンチェーン７１４には、マクロテスト制御線８０１、スキャンデータ入力線８０２、スキャンイネーブル入力線８０３などのテスト配線とクロック線８０４とが接続されている。また、ＲＡＭ配置領域７０５には、マクロテスト制御線８０１、初期化信号線８０５およびクロック線８０４が入力線として接続されている。また、各ＲＡＭ配置領域７０５からの出力線はセレクタ８１１に接続され、このセレクタ８１１の出力線と上段のスキャンチェーン７１４の出力線はセレクタ８１２に接続されている。
【００５８】
また、図７および図８において、ＢＳＲ領域７０４には複数のＢＳＲ３２４がチップ領域の周縁に一列に配置されており、配線接続されることによってバウンダリスキャンチェーン７１５を構成する。また、具体的には、図８において、ＢＳＲ３２４は、ＴＡＰコントローラ３２５からの出力線が接続されている。なお、図８において、最上段のＢＳＲ領域７０４ａには、マクロテスト制御線８０１とセレクタ８１２からの出力線とＢＳＲ３２４ａの出力線に接続されるセレクタ８１３が配置されている。また、Ｉ／Ｏ領域７０３には、各ＢＳＲ３２４やセレクタ８１３に接続されるバッファ８１４が配置されている。
【００５９】
つぎに、図６に示したユーザネットリスト６００を図８に示したフレームの配置配線情報７００を元にレイアウトした後のネットリストについて説明する。図９は、図６に示したユーザネットリスト６００を図８に示したフレームの配置配線情報７００を元にレイアウトした後のネットリスト９００を示すブロック図である。図９中、一点鎖線によって示した構成が、ユーザネットリスト６００からフレーム７００を元に配置配線した情報である。
【００６０】
また、図６に示したユーザネットリスト６００において上段のアンド回路６０２ｂの出力側にはＲＡＭ３２３が配置されているので、図９においても上段のアンド回路６０２ｂの出力側にはＲＡＭ３２３が配置されている。ただし、この図９に示したＲＡＭ３２３は、ユーザセルライブラリ１０４の物理情報３２０を参照しているため、コントロール入力端子ｃｎｔｒｌ、マクロテスト入力端子ＭＤＩおよびマクロテスト出力端子ＭＤＯからなるテスト端子３４３を有するＲＡＭ３２３が配置されている。また、図９中、バッファ９０１は適宜挿入されたものである。さらに、図８に示したフレームの配置配線情報７００において、下段のＲＡＭ配置領域７０５には、ＲＡＭ３２３が配置されていない。この部分にはＲＡＭ３２３のかわりにバッファ９０２を配置している。
【００６１】
つぎに、図５に示した処理フローの返却用ネットリストデータベース５０８に記憶されたネットリストについて説明する。図１０は、図５に示した処理フローの返却用ネットリストデータベース５０８に記憶されたネットリストを示すブロック図である。この図１０に示したネットリスト１０００は、図９に示したネットリスト９００を、ユーザセルライブラリ１０４の論理情報３１０を参照することによって生成されたネットリストである。したがって、図１０において、図９において示されているセレクタ８１１〜８１３および各テスト配線８０１〜８０３、８０５などのテスト構造が除かれた状態で出力することができる。また、図９に示したＢＳＲ３２４もＢＳＲ３１４、すなわちバッファに置き換えられる。
【００６２】
つぎに、図５の処理フローのＩ／Ｆファイルデータベース５０３に記憶されるＩ／Ｆファイルについて説明する。図１１〜図１７は、図５の処理フローのＩ／Ｆファイルデータベース５０３に記憶されるＩ／Ｆファイルの記述例を示す説明図である。図１１には、バウンダリスキャンチェーンの接続情報を示すＩ／Ｆファイル１１００が記述されている。このＩ／Ｆファイル１１００には、具体的には、たとえば、ＢＳＲの接続順、ＢＳＲ名、入力端子名および出力端子名が含まれている。
【００６３】
図１２には、初期化信号線の接続情報を示すＩ／Ｆファイル１２００について記述されている。このＩ／Ｆファイル１２００には、具体的には、たとえば、接続先のＲＡＭインスタンス名およびそのＲＡＭの初期化信号入力端子名が含まれている。図１３には、結果処理信号線の接続情報を示すＩ／Ｆファイル１３００について記述されている。このＩ／Ｆファイル１３００には、具体的には、たとえば、接続されるＲＡＭインスタンス名およびそのＲＡＭの初期化信号出力端子名が含まれている。Ｉ／Ｆファイル１３００にあるビット値は、テストをおこなう場合、そのＲＡＭを選択するときに用いる値である。
【００６４】
図１４には、ＰＬＬのモニタ信号線の接続情報を示すＩ／Ｆファイル１４００が記述されている。このＩ／Ｆファイル１４００には、具体的には、たとえば、ビット値によってテスト時に選択されるＰＬＬインスタンス名が含まれている。図１５には、スキャンチェーンの接続情報を示すＩ／Ｆファイル１５００について記述されている。このＩ／Ｆファイル１５００には、具体的には、たとえば、スキャンチェーンを構成するセルのインスタンス名（たとえば、ＦＦのインスタンス名）、スキャンチェーンを構成するＦＦの接続順、スキャンデータの入力端子名およびスキャンデータの出力端子名が含まれている。図１６には、クロック線（スキャンクロック）の接続情報を示すＩ／Ｆファイル１６００について記述されている。このＩ／Ｆファイル１６００には、具体的には、たとえば、スキャンクロックによって駆動するセルのインスタンス名（たとえば、ＦＦのインスタンス名）およびそのクロック端子名が含まれている。
【００６５】
図１７には、チップ外部端子の接続情報を示すＩ／Ｆファイル１７００が記述されている。具体的には、たとえば、図１２に示したＩ／Ｆファイル１２００に記述されている初期化信号線が接続している外部入力端子名、図１３に示したＩ／Ｆファイル１３００に記述されている結果処理信号線が接続している外部出力端子名、図１５に示したＩ／Ｆファイル１５００に記述されているスキャンチェーンが接続している外部入力端子名および外部出力端子名、図１６に示したＩ／Ｆファイル１６００に記述されているクロック線（スキャンクロック）が接続している外部入力端子名が記述されている。
【００６６】
つぎに、図５に示した処理フローのテスト合成ネットリストデータベース５０４に記憶されたテスト合成ネットリストについて説明する。図１８は、図５に示した処理フローのテスト合成ネットリストデータベース５０４に記憶されたテスト合成ネットリストを示すブロック図である。このネットリスト１８００は、ユーザネットリスト６００と図１１〜図１７に示したＩ／Ｆファイル１１００〜１７００に基づいて、ユーザネットリスト６００をテスト合成したネットリストであり、図９に示したレイアウト後の配置配線情報９００と論理的に略同等である。論理的に等価であることからネットリスト１８００によって生成された論理テスト用パターン、ＲＡＭテスト用パターン、ＰＬＬテスト用パターンは、図９に示したレイアウト後の配置配線情報９００でも期待値と出力値で不一致は発生しない。
【００６７】
つぎに、図５に示した処理フローの故障解析用ネットリストデータベース５０７に記憶された故障解析用ネットリストについて説明する。この故障解析用ネットリストについては、テスト端子やテスト回路を出力する必要がある。故障解析用ネットリストは、レイアウトツールによって、ユーザセルライブラリ１０４上のハードマクロセル名から物理情報３２０上は端子構成およびスペックが同一なテストセルライブラリ１０５上で対応するハードマクロセル名にスワップしてからネットリストを出力することで生成することができる。
【００６８】
（設計支援装置の機能的構成）
つぎに、この発明の実施の形態にかかる設計支援装置の機能的構成について説明する。図１９は、この発明の実施の形態にかかる設計支援装置の機能的構成を示すブロック図である。図１９において、設計支援装置１０１は、ユーザネットリスト入力部１８０１と、フレーム抽出部１８０５と、ハードマクロセル配置部１８０６と、ユーザネット配線接続部１８０７と、論理構造ネットリスト認識部１８０８と、論理構造ネットリスト出力部１８０９と、接続情報生成部１８１１と、テスト合成ネットリスト生成部１８１２と、テストパターン生成部１８１３と、変換部１８１４と、テスト回路配置配線部１８１５とを備えている。
【００６９】
ユーザネットリスト入力部１８０１は、テスト回路３３１〜３３４およびテスト端子３４１〜３４５を含まないハードマクロセル、すなわち、ユーザセルライブラリ１０４の論理情報３２０に記憶されているハードマクロセル３１１〜３１５を用いて、ユーザによって生成されたユーザネットリスト６００を入力する。
【００７０】
このユーザネットリスト入力部１８０１は、受信部１８０２と、ユーザネットリストデータベース５０１と、ユーザネットリスト指定部１８０３と、ユーザネットリスト抽出部１８０４と、から構成されている。受信部１８０２は、ネットワーク１０３を介して情報端末装置１０２から送信されてくるユーザネットリスト６００を受信する。ユーザネットリスト指定部１８０３は、ユーザネットリストデータベース５０１に記憶されているユーザネットリストから、任意のユーザネットリスト６００を指定する。ユーザネットリスト抽出部１８０４は、ユーザネットリスト指定部１８０３によって指定された任意のユーザネットリスト６００を、ユーザネットリストデータベース５０１から抽出する。
【００７１】
フレーム抽出部１８０５は、ユーザネットリスト指定部１８０３から指定入力があった場合、フレームライブラリデータベース５０２からフレームの配置配線情報７００を抽出する。ハードマクロセル配置部１８０６は、フレーム抽出部１８０５によって抽出されたフレームの配置配線情報７００を元に、ユーザネットリスト抽出部１８０４によって抽出されたユーザネットリスト６００のハードマクロセルを配置する。このハードマクロセル配置部１８０６は、図５に示した処理フローのレイアウト（配置）（ステップＳ５０１）に相当する。
【００７２】
テスト回路配置配線部１８１５は、フレームの配置配線情報７００を元にテスト回路の配置配線をおこなう。このテスト回路配置配線部１８１５は図５に示した処理フローのレイアウト（テスト回路配置配線）（ステップＳ５０４）に相当する。また、ユーザネット配線接続部１８０７は、ユーザネットリスト６００に含まれているネットの配線おこなう。このユーザネット配線接続部１８０７は、図５に示した処理フローのレイアウト（ユーザネット配線）（ステップＳ５０５）に相当する。
【００７３】
論理構造ネットリスト認識部１８０８は、ユーザネット配線接続部１８０７によって得られた配置配線情報９００（図９を参照）のうち、フレームにあるテスト回路の配置配線情報を除いて論理構造ネットリスト１０００を認識する。具体的には、ユーザセルライブラリ１０４の物理情報３２０を用いてレイアウトした後の配置配線情報からフレーム上のテスト回路の配置配線情報７００中のテスト回路の配置配線情報を取り除き、ユーザセルライブラリ１０４の論理情報３１０を参照してネットリストを生成する。
【００７４】
論理構造ネットリスト出力部１８０９は、論理構造ネットリスト認識部１８０８によって認識された論理構造のネットリスト１０００を出力する。論理構造ネットリスト出力部１８０９は、返却用ネットリストデータベース５０８と、送信部１８１０と、から構成されている。返却用ネットリストデータベース５０８は、論理構造ネットリスト認識部１８０８によって認識された論理構造のネットリスト９００を、返却用ネットリストとして記憶する。
【００７５】
接続情報生成部１８１１は、フレーム上のテスト回路の配置配線情報７００とハードマクロセル配置部１８０６によってハードマクロセルを配置した結果から、ユーザネットリスト６００のハードマクロセルとフレーム上のテスト回路配置配線情報を接続するための接続情報を生成する。この生成された接続情報は、図１１〜図１７に示したＩ／Ｆファイル１１００〜１７００に相当する。
【００７６】
テスト合成ネットリスト生成部１８１２は、接続情報生成部１８１１によって生成された接続情報を用いて、ユーザネットリスト入力部１８０１によって入力されたユーザネットリスト６００をテスト合成することにより、テスト合成ネットリスト１８００を生成する。このテスト合成ネットリスト生成部１８１２は、図５に示した処理フローのテスト合成（ステップＳ５０２）に相当する。
【００７７】
テストパターン生成部１８１３は、テスト合成ネットリスト生成部１８１２によりユーザネットリスト６００をテスト合成することによって生成されたテスト合成ネットリスト１８００のテストパターンを生成する。具体的には、このテスト合成ネットリストの入出力経路をたどることによって、入力パターンおよび出力パターンからなるテストパターンを生成する。このテストパターン生成部１８１３は、図５に示した処理フローのテストパターン生成（ステップＳ５０３）に相当する。
【００７８】
変換部１８１４は、レイアウト処理後の配置配線情報９００で使われているユーザセルライブラリ１０４上のハードマクロセルのセル名をテストセルライブラリ１０５上で物理情報が全く同一の端子構成およびスペックを持つハードマクロセルのセル名に変換する。また、フレームのテスト回路の配置配線情報を含めてネットリストを出力するとレイアウト処理後の配置配線情報９００と同じ回路構成を持つ故障解析用ネットリストを出力することができる。
【００７９】
テストパターン生成部１８１３によって生成されたテストパターンを用いてテストとされたＬＳＩの期待値とＬＳＩからの出力値に不整合が発生した場合は、変換部１８１４で生成された故障解析用ネットリストを用いて故障箇所の解析をおこなう。故障箇所の解析では、ハードマクロセル内の内部ロジックの解析の対象とするためには、あらかじめハードマクロセルを展開した故障解析用ネットリストデータベース５０７に格納しておくことにより、チップのディレイ計算を実行することにより、ハードマクロセル内部の動作についても、ディレイ値を含めて解析することができる。
【００８０】
送信部１８１０は、返却用ネットリストデータベース５０８に記憶された返却用ネットリストと、テストパターンデータベース５０５に記憶されたテストパターンと、故障解析用ネットリストデータベース５０７に記憶された故障解析用ネットリストと、ＧＤＳデータベースに記憶されたＧＤＳデータとを、ユーザネットリスト６００を作成したユーザの情報端末装置１０２に送信する。
【００８１】
つぎに、上述した一部の機能構成とユーザセルライブラリ１０４およびテストセルライブラリ１０５との関係について説明する。図２０は、図１９に示した一部の機能構成とユーザセルライブラリ１０４およびテストセルライブラリ１０５との関係を示す説明図である。図１９において、ユーザネットリストデータベース５０１、ハードマクロセル配置部１８０６、ユーザネット配線接続部１８０７、論理構造ネットリスト認識部１８０８および返却用ネットリストデータベース５０８は、ユーザセルライブラリ１０４を参照している。
【００８２】
したがって、ユーザネットリストデータベース５０１、ハードマクロセル配置部１８０６、ユーザネット配線接続部１８０７、論理構造ネットリスト認識部１８０８および返却用ネットリストデータベース５０８は、論理情報３１０を参照する場合は、ハードマクロセルにテスト回路やテスト端子が含まれず、物理情報３２０を参照する場合は、ハードマクロセルにテスト回路やテスト端子が含まれている。また、変換部１８１４とテスト合成ネットリスト生成部１８１２は、ユーザセルライブラリ１０４とテストセルライブラリ１０５の両方のライブラリを参照している。
【００８３】
また、テスト合成ネットリストデータベース５０４およびフレームライブラリデータベース５０２は、テストセルライブリ１０５を参照している。また、故障解析用ネットリストデータベース５０７は、上述した変換部１８１４のスワップ処理によって、テストセルライブラリ１０５を参照する。したがって、テスト合成ネットリストデータベース５０４、フレームライブラリデータベース５０２および故障解析用ネットリストデータベース５０７は、論理情報４１０および物理情報４２０のいずれを参照する場合も、ハードマクロセルにはテスト回路やテスト端子が含まれている。
【００８４】
また、上述したユーザネットリスト入力部１８０１と、フレーム抽出部１８０５と、ハードマクロセル配置部１８０６と、ユーザネット配線接続部１８０７と、論理構造ネットリスト認識部１８０８と、論理構造ネットリスト出力部１８０９と、接続情報生成部１８１１と、テスト合成ネットリスト生成部１８１２と、テストパターン生成部１８１３と、変換部１８１４と、テスト回路配置配線部１８１５は、具体的には、たとえば、図２に示したＲＯＭ２０２、ＲＡＭ２０３、ＨＤ２０５、ＦＤ２０７などに記録されたプログラムをＣＰＵ２０１が実行することによって、またはＩ／Ｆ２０９によって、その機能を実現する。
【００８５】
また、上述したユーザセルライブラリ１０４、テストセルライブラリ１０５、ユーザネットリストデータベース５０１、フレームライブラリデータベース５０２、Ｉ／Ｆファイルデータベース５０３、テスト合成ネットリストデータベース５０４、テストパターンデータベース５０５、ＧＤＳデータベース５０６および故障解析用ネットリストデータベース５０７は、具体的には、たとえば、図２に示したＲＯＭ２０２、ＲＡＭ２０３、ＨＤ２０５、ＦＤ２０７などによって、その機能を実現する。
【００８６】
（設計支援装置の設計処理手順）
つぎに、この発明の実施の形態にかかる設計支援装置の設計処理手順について説明する。図２１は、この発明の実施の形態にかかる設計処理手順を示すフローチャートである。まず、ユーザネットリスト６００が指定された場合（ステップＳ２００１：Ｙｅｓ）、指定されたユーザネットリスト６００を抽出し（ステップＳ２００２）、フレームライブラリデータベース５０２からフレームの配置配線情報７００を抽出する（ステップＳ２００３）。そして、フレームの配置配線情報７００を元に、抽出したユーザネットリスト６００のレイアウトをおこなう（ステップＳ２００４）。
【００８７】
このあと、Ｉ／Ｆファイル１１００〜１７００を生成する（ステップＳ２００５）。そして、生成されたＩ／Ｆファイル１１００〜１７００を用いてユーザネットリスト６００をテスト合成する（ステップＳ２００６）。そして、このテスト合成によって生成されたテスト合成ネットリスト１８００からテストパターンを生成する（ステップＳ２００７）。
【００８８】
また、ステップＳ２００４のあと、テスト回路の配置配線をおこない（ステップＳ２００８）、ユーザネットリストのネットのみの配線をおこなう（ステップＳ２００９）。つぎに、この配線接続によって得られたネットリスト９００のうち、テスト回路を除いた論理構造のネットリスト１０００を認識する（ステップＳ２０１０）。そして、認識された論理構造のネットリスト１０００を、返却用ネットリストとして送信する（ステップＳ２０１１）。
【００８９】
さらに、ステップＳ２００９のあと、レイアウト処理後の配置配線情報９００のハードマクロセルのセル名を、ユーザセルライブラリ１０４上のセル名から、物理情報として全く同一の端子構成およびスペックを持つテストセルライブラリ１０５上のハードマクロセルのセル名に変換する（ステップＳ２０１２）。そして、変換処理によって得られた故障解析用ネットリストを出力する。
【００９０】
この設計支援処理手順によれば、ユーザに返却するネットリストの生成と、テストパターンの生成とを同時並行的に実行することができ、工数削減、設計期間の短縮化を図ることができる。
【００９１】
（ＲＡＭの同時試験）
つぎに、ＲＡＭの同時試験について説明する。テスト回路を含めてハードマクロ化されたＲＡＭ３２３には、ビットセレクト回路と、テスト回路３３３を構成する選択回路および比較回路と、コアとによって構成されている。一般的に、テスト合成ツールでは、コア名とコアに被せるべきテスト回路の種類を、図示しないデータベース、テスト合成の入力ファイルまたは実行オプションによって指定することができる。このデータベースを参照することにより、ユーザネットリスト６００のＲＡＭ３１４を、ビットセレクト回路、テスト回路３３３およびコアによって構成されるＲＡＭに置き換えることができる。
【００９２】
ここで、テスト回路を含めてハードマクロ化されたＲＡＭとＲＡＭテストに必要な周辺回路について説明する。図２２は、テスト回路を含めてハードマクロ化されたＲＡＭとＲＡＭテストに必要な周辺回路を示す説明図である。メモリ−ＢＩＳＴ（Ｂｕｉｌｔ  Ｉｎ  Ｓｅｌｆ  Ｔｅｓｔの略）コントローラ２１０１は、図示しない初期化信号により初期化され、ＴＡＰコントローラ３２５からのテスト開始信号がトリガとなり、ＲＡＭテストを開始する。そして、テスト実行時に、テスト実行信号と期待値パターンが各ＲＡＭに出力され続ける。テスト実行信号にはＲＡＭのテスト時にＲＡＭを制御するために必要なＲＡＭ入力データ、アドレスデータおよびライトイネーブルデータが含まれている。
【００９３】
つぎに、ＲＡＭ３２３について説明する。各ＲＡＭ３２３は、データを記憶するコア２１０２と、ビットセレクト回路２１０３と、選択回路２１０４および比較回路２１０５からなるテスト回路２１０６と、から構成されている。コア２１０２は、たとえばランダムアクセスメモリなどであり、ここでは５１２ワード×４０ビットで構成される。
【００９４】
ビットセレクト回路２１０３は、入力側ビットセレクト回路２１０７と出力側ビットセレクト回路２１０８とから構成されている。入力側ビットセレクト回路２１０７は、入力されてくるアドレスデータのワード数およびライトデータのビット数を、コア２１０２と同数のワード数およびビット数に変換する。また、出力側ビットセレクト回路２１０８は、コア２１０２から出力されるリードデータのビット数を、入力されてくるライトデータのビット数に変換する。また、上段のＲＡＭ３２３ａは、ビットセレクト回路２１０３により、ワード数２０４８、ビット数１０のハードマクロセルに設定されており、下段のＲＡＭ３２３ｂは、ビットセレクト回路２１０３により、ワード数１０２４、ビット数２０のハードマクロセルに設定されている。
【００９５】
選択回路２１０４は、ＴＡＰコントローラ３２５からのテスト開始信号と、メモリ−ビストコントローラ２１０１からのテスト実行信号とに基づいて、通常の使用モードとテストモードを選択する。比較回路２１０５は、レジスタ２１０９を有しており、メモリ−ＢＩＳＴコントローラ２１０１から出力されている期待値パターンと、コア２１０２から出力されている出力パターンを比較し、比較結果をレジスタに記憶していく。そして、テストモード時に記憶された比較結果を結果処理信号によりＬＳＩ外部へ出力する。また、通常の使用モードにおいては、コア２１０２に記憶されているデータを出力する。
【００９６】
つぎに、図２２に示したビットセレクト回路２１０３の一例について説明する。図２３は、図２２に示したビットセレクト回路２１０３の一例を示す説明図である。なお、ここでは、構成を簡単にするため、ＲＡＭ３２３は８ワード×２ビットの構成とし、ＲＡＭ３２３のコア２１０２は４ワード×４ビットの構成として説明する。
【００９７】
入力側ビットセレクト回路２１０７は、８ワード分のアドレスデータを入力する３個のアドレスデータ入力端子Ａｉｎ１〜Ａｉｎ３と、２ビット分のライトデータを入力する２個のライトデータ入力端子Ｄｉｎ１、Ｄｉｎ２とを備えている。また、選択回路２１０４に接続する端子として、アドレスデータ出力端子Ａｏｕｔ１、Ａｏｕｔ２、ライトデータ出力端子Ｄｏｕｔ１〜Ｄｏｕｔ４、マスク端子Ｍ１〜Ｍ４とを備えている。また、アドレスデータ入力端子Ａｉｎ３は、アドレスデータ線２２０１によって出力側ビットセレクト回路２１０８に接続されており、他の２個のアドレスデータ入力端子Ａｉｎ１、Ａｉｎ２はアドレスデータ出力端子Ａｏｕｔ１、Ａｏｕｔ２に接続される。
【００９８】
また、ライトデータ入力端子Ｄｉｎ１のライトデータ線２２０２は入力側ビットセレクト回路２１０７内で分岐しており、ライトデータ出力端子Ｄｏｕｔ１、Ｄｏｕｔ３から、図２２に示した選択回路２１０４を介してコア２１０２に接続される。同様に、ライトデータ入力端子Ｄｉｎ２のライトデータ線２２０３も入力側ビットセレクト回路２１０７内で分岐しており、ライトデータ出力端子Ｄｏｕｔ２、Ｄｏｕｔ４から、図２２に示した選択回路２１０４を介してコア２１０２に接続される。
【００９９】
また、アドレスデータ線２２０１も入力側ビットセレクト回路２１０７内で分岐しており、マスク端子Ｍ１〜Ｍ４に接続されている。このマスク端子Ｍ１〜Ｍ４により、ライトイネーブルがアクティブの時は指定されたアドレスにデータが書き込まれ、インアクティブの時は指定されたアドレスのデータが保持される。
【０１００】
出力側ビットセレクト回路２１０８は、図２２に示したコア２１０２および比較回路２１０５を介して接続される４個のコア出力端子Ｃ１〜Ｃ４と、２個のセレクタ２２０４、２２０５とを備えている。セレクタ２２０４は、２個のコア出力端子Ｃ２、Ｃ４と入力側ビットセレクト回路２１０７のアドレスデータ入力端子Ａｉｎ３とに接続されている。セレクタ２２０５は、セレクタ２２０４に接続されている。各セレクタ２２０４、２２０５はデータ出力端子Ｅ１、Ｅ２にそれぞれ接続される。これにより、この出力側ビットセレクト回路２１０８から、８ワード×２ビットのデータが出力される。
【０１０１】
このように、あらかじめ同一ビット／ワード構成のコア２１０２を埋め込み、ビットセレクト回路２１０３によって、各コア２１０２のビット／ワード構成をユーザの使用形態に合わせて変更可能な構成とする。テストモード時にはビットセレクト回路２１０４の設定を変更し、全メモリセル領域を使用する同一ビット／ワード構成をあつかうことで、ビット／ワード構成の違いを考慮することなく、任意のコア２１０２間で同時試験をおこなうことができ、テスト期間の短縮化を図ることができる。また、同時テストの適用範囲が拡がることで、テスト回路の共有化も効率的におこなうことができる。
【０１０２】
つぎに、同一テストパターンの生成について説明する。図２４は、同一テストパターンの原理を示す説明図である。図２４において、上述したテストパターン生成によって、３種類のテストパターンＴ１〜Ｔ３が生成されているものとする。ＲＡＭ２３０１〜２３０３は、互いにビット／ワード構成が異なるが、同一ビット／ワード構成のコア２３１１を用いているため、ＲＡＭ２３０１に使用したテストパターンＴ１を、ＲＡＭ２３０２、２３０３にも適用することができる。
【０１０３】
同様に、ＲＡＭ２３０４〜２３０６は、互いにビット／ワード構成が異なるが、同一ビット／ワード構成のコア２３１２を用いているため、ＲＡＭ２３０４に使用したテストパターンＴ２を、ＲＡＭ２３０５、２３０６にも適用することができる。さらに、ＰＬＬ２３２１、２３２２についても、同一タイプの内部回路を備えることにより、同一テストパターンＴ３を適用することができる。
【０１０４】
これによれば、ＲＡＭハードマクロにあらかじめ同一ビット／ワード構成のコアが埋め込まれている場合には、テストパターンを再利用することができ、テストパターンの生成数を削減することができ、テストパターン生成時間の短縮化を図ることができる。
【０１０５】
（同一テスト端子構成を揃えた種類の異なるＢＳＲ）
つぎに、テスト端子構成を揃えたＢＳＲをＢＳＲ領域に挿入する例について説明する。図２５は、テスト端子構成を揃えたＢＳＲをＢＳＲ領域に挿入する例を示す説明図である。図２５において、フレームのチップ領域には、図示しないＴＡＰコントローラからの制御信号線２５０１〜２５０８が埋め込まれている。また、フレーム上には、ＢＳＲを挿入可能なＢＳＲ配置領域２５００が設けられている。
【０１０６】
このＢＳＲ配置領域２５００には、テスト端子構成が同一であり種類が異なるＢＳＲを配置することができる。図２５では、一例として、ＢＳＲ配置領域２５００に、入力用ＢＳＲ２５１０とバス用ＢＳＲ２５２０のいずれのＢＳＲも配置することができる。具体的には、入力用ＢＳＲ２５１０およびバス用ＢＳＲ２５２０は、ともに、ＭＤ、ＭＤ１、ＭＤ２、ＭＤ３、ＳＤＲ、ＣＤＲ、ＵＤＲ、ＲＳＴのテスト端子を備えている。
【０１０７】
そして、入力用ＢＳＲ２５１０またはバス用ＢＳＲ２５２０をＢＳＲ配置領域２５００に配置した場合、ともに、テスト端子ＭＤは制御信号線２５０１に接続され、テスト端子ＭＤ１は制御信号線２５０２に接続され、テスト端子ＭＤ２は制御信号線２５０３に接続され、テスト端子ＭＤ３は制御信号線２５０４に接続され、テスト端子ＳＤＲは制御信号線２５０５に接続され、テスト端子ＣＤＲは制御信号線２５０６に接続され、テスト端子ＵＤＲは制御信号線２５０７に接続され、テスト端子ＲＳＴは制御信号線２５０８に接続される。
【０１０８】
これによれば、入力用ＢＳＲ２５１０に必要なテスト端子をＭＤ、ＳＤＲ、ＣＤＲ、ＵＤＲとし、バス用ＢＳＲ２５２０に必要なテスト端子をＭＤ、ＭＤ１、ＭＤ２、ＭＤ３、ＳＤＲ、ＣＤＲ、ＵＤＲ、ＲＳＴとした場合、入力用ＢＳＲ２５１０に不要なＭＤ１、ＭＤ２、ＭＤ３、ＳＤＲ、ＣＤＲ、ＵＤＲのテスト端子を、入力用ＢＳＲ２５１０に設けることにより、バス用ＢＳＲ２５２０のテスト端子構成と揃うこととなり、ＢＳＲの用途にかかわらず、いずれのＢＳＲもＢＳＲ配置領域２５００に配置することができる。これにより、設計の自由度の向上を図ることができる。
【０１０９】
また、図２５においては、入力用ＢＳＲ２５１０とバス用ＢＳＲ２５２０とのテスト端子構成を揃えることとしたが、さらに出力用ＢＳＲ、３−ＳＴＡＴＥ用ＢＳＲ、クロック用ＢＳＲ、ＢＳＲ未使用時に挿入するセルについても、入力用ＢＳＲ２５１０およびバス用ＢＳＲ２５２０と同一のテスト端子構成としてもよい。また、入力／スキャンイン共用ＢＳＲとスキャンインのときに挿入するセルとの間においても、テスト端子構成を揃えることとしてもよい。さらに、入力／スキャンアウト共用ＢＳＲとスキャンアウトのときに挿入するセルとの間においても、テスト端子構成を揃えることとしてもよい。
【０１１０】
（ＢＳＲ領域にバイパスセルが挿入されたバウンダリスキャンチェーン）
つぎに、ＢＳＲ領域にバイパスセルが挿入されたバウンダリスキャンチェーンについて説明する。図２６は、ＢＳＲ領域にバイパスセルが挿入されたバウンダリスキャンチェーンを示す説明図である。図２６において、バウンダリスキャンチェーン２６００は、ＢＳＲを含むＢＳＲセル２６０１とバイパスセル２６０２とから構成されている。バイパスセル２６０２は、一または複数のバッファを備えている。バッファ２６０３は隣接するＢＳＲセル２６０１やバイパスセル２６０２に接続され、また、制御信号線２６２０を介してＴＡＰコントローラ２６１０に接続される。
【０１１１】
このバイパスセル２６０２をバウンダリスキャンチェーン２６００内に挿入することにより、図３０に示したような切断領域３００５を形成されず、切断領域３００５にＴＡＰコントローラ３０１０の制御信号線およびテスト信号線３０２０が過密にならない。したがって、図２６に示したように、ＴＡＰコントローラ２６１０の制御信号線２６２０が、各バイパスセル２６０２に分散され、設計自由度の向上を図ることができる。
【０１１２】
以上説明したように、この実施の形態にかかる設計支援装置によれば、あらかじめハードマクロセルにテスト回路やテスト端子が挿入され、かつタイミング収束されたハードマクロセルを用いているため、論理設計の工数を削減でき、設計期間の短縮化および設計作業の効率化を図ることができる。また、テスト合成後のレイアウトの内容を想定してテスト回路を挿入する必要もなく、設計の自由度の向上を図ることができる。
【０１１３】
また、内部のテスト回路のタイミングを考慮したテスト端子を含まないハードマクロセルを用いて論理設計をおこなうため、ユーザネットリストを再度タイミング収束させる必要がなく、論理設計の工数削減による設計期間の短縮化を図ることができる。さらに、テスト合成の条件が、実際の配置状況と大きく異なる場合であっても、配線長の増加やこれに伴うテスト動作周波数の低下を防止することができる。
【０１１４】
また、レイアウトの配置が終了した段階で生成されたインターフェースファイルを使用し、テスト合成からテストパターン生成までをレイアウトの配線処理と並行して処理ができるため、設計期間の短縮化を図ることができる。また、あらかじめフレームライブラリを準備しておくことにより、ルールチェックの回数が減り、論理設計の工数を削減でき、設計期間の短縮化および設計作業の効率化を図ることができる。
【０１１５】
さらに、同一ビット／ワード構成の複数のＲＡＭのコアを使用することにより、ＲＡＭ自体のビット／ワード構成が異なっていても、同時試験およびテストパターンの再利用をおこなうことができ、テスト期間の短縮化を図ることができる。
【０１１６】
また、種類が異なるＢＳＲのテスト端子構成を同一構成とすることにより、テスト端子構成が同一であれば用途にかかわらずＢＳＲを配置することができるため、設計の自由度の向上および設計作業の効率化を図ることができる。
【０１１７】
さらに、複数のＢＳＲセルによって形成されるバウンダリスキャンチェーンにおける任意の２つのＢＳＲセルの間の配置領域に、２つのＢＳＲセルを接続するとともに、配置領域を通過する信号線を接続するバイパスセルを配置するようにしたことにより、ＴＡＰコントローラの配置やその信号線の配線の自由度の向上を図ることができる。
【０１１８】
なお、本実施の形態で説明した設計支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【０１１９】
（付記１）タイミング収束した物理情報にテスト端子を持つハードマクロセルおよびテスト回路の配置配線情報が含まれているフレームを記憶するフレーム記憶手段と、
前記ハードマクロセルと同じ端子構成の物理情報を持ち、論理情報にはテスト端子を持たないハードマクロセルを用いて、テスト回路のないユーザネットリストを入力するユーザネットリスト入力手段と、
前記フレーム記憶手段によって記憶されたフレームを抽出するフレーム抽出手段と、
前記フレーム抽出手段によって抽出されたフレームに含まれているテスト回路の配置配線情報を元に、前記ユーザネットリスト入力手段によって入力されたユーザネットリストに含まれているハードマクロセルを配置するハードマクロセル配置手段と、
を備えることを特徴とする設計支援装置。
【０１２０】
（付記２）前記フレーム抽出手段によって抽出されたフレームに含まれているテスト回路の配置配線情報を元にテスト回路を配置配線するテスト回路配置配線手段と、
前記ユーザネットリスト入力手段によって入力されたユーザネットリストに含まれているネットのみを配線するユーザネット配線手段と、
前記ハードマクロセル配置手段と、前記テスト回路配置配線手段と、前記ユーザネット配線手段とによって生成された配置配線情報から、前記テスト回路配置配線手段によって配置配線されたテスト回路の配置配線情報を除いた配置配線情報を認識するユーザ回路配置配線認識手段と、
前記ユーザ回路配置配線認識手段によって認識された配置配線情報をネットリストとして出力するネットリスト出力手段と、
を備えることを特徴とする付記１に記載の設計支援装置。
【０１２１】
（付記３）前記ハードマクロセル配置手段によって配置されたハードマクロセルの配置情報に基づいて、前記ユーザネットリスト入力手段によって入力されたハードマクロセルと、前記フレームに含まれるテスト回路との接続に関する接続情報を生成する接続情報生成手段と、
前記ユーザネットリスト入力手段によって入力されたユーザネットリストと、前記接続情報生成手段によって生成された接続情報とを用いて、前記ユーザネットリストをテスト合成することにより、テスト合成ネットリストを生成するテスト合成ネットリスト生成手段と、
前記テスト合成ネットリスト生成手段によって生成されたテスト合成ネットリストからテストパターンを生成するテストパターン生成手段と、
を備えることを特徴とする付記１または２に記載の設計支援装置。
【０１２２】
（付記４）前記ネットリスト出力手段は、
さらに、前記テストパターン生成手段によって生成されたテストパターンに基づいて、前記配線接続手段により配線接続されることによって得られたネットリストを故障解析用ネットリストとして出力することを特徴とする付記３に記載の設計支援装置。
【０１２３】
（付記５）前記フレームの配置情報に含まれるハードマクロセルにはビット／ワード構成が異なる複数の記憶素子が含まれており、
前記複数の記憶素子は、前記ビット／ワード構成を変更する変更手段を備えることを特徴とする付記１〜４のいずれか一つに記載の設計支援装置。
【０１２４】
（付記６）前記複数の記憶素子は、同一ビット／ワード構成のコアを備えることを特徴とする付記５に記載の設計支援装置。
【０１２５】
（付記７）所定のテスト端子を有する第１のバウンダリスキャンレジスタと、
前記所定のテスト端子を有し、前記第１のバウンダリスキャンレジスタと種類が異なる第２のバウンダリスキャンレジスタと、
前記所定のテスト端子に接続可能な信号線が配線されたフレームと、を備え、
前記フレーム上における前記信号線と接続可能な配置領域に、前記第１および第２のバウンダリスキャンレジスタのうちいずれか一方のバウンダリスキャンレジスタを配置するようにしたことを特徴とする設計支援装置。
【０１２６】
（付記８）複数のＢＳＲセルによって形成されるバウンダリスキャンチェーンにおける任意の２つのＢＳＲセルの間の配置領域に、当該２つのＢＳＲセルを接続するとともに、前記配置領域を通過する信号線を接続するバイパスセルを配置するようにしたことを特徴とする設計支援装置。
【０１２７】
（付記９）タイミング収束した物理情報にテスト端子を持つハードマクロセルおよびテスト回路の配置配線情報が含まれているフレームを抽出するフレーム抽出工程と、
前記ハードマクロセルと同じ端子構成の物理情報を持ち、論理情報にはテスト端子を持たないハードマクロセルを用いて、テスト回路のないユーザネットリストを入力するユーザネットリスト入力工程と、
前記フレーム抽出工程によって抽出されたフレームに含まれているテスト回路の配置配線情報を元に、前記ユーザネットリスト入力工程によって入力されたユーザネットリストに含まれているハードマクロセルを配置するハードマクロセル配置工程と、
を含んだことを特徴とする設計支援方法。
【０１２８】
（付記１０）前記フレーム抽出工程によって抽出されたフレームに含まれているテスト回路の配置配線情報を元にテスト回路を配置配線するテスト回路配置配線工程と、
前記ユーザネットリスト入力工程によって入力されたユーザネットリストに含まれているネットのみを配線するユーザネット配線工程と、
前記ハードマクロセル配置工程と、前記テスト回路配置配線工程と、前記ユーザネット配線工程とによって生成された配置配線情報から、前記テスト回路配置配線工程によって配置配線されたテスト回路の配置配線情報を除いた配置配線情報を認識するユーザ回路配置配線認識工程と、
前記ユーザ回路配置配線認識工程によって認識された配置配線情報をネットリストとして出力するネットリスト出力工程と、
を含んだことを特徴とする付記９に記載の設計支援方法。
【０１２９】
（付記１１）前記ハードマクロセル配置工程によって配置されたハードマクロセルの配置情報に基づいて、前記ユーザネットリスト入力工程によって入力されたハードマクロセルと、前記フレームに含まれるテスト回路との接続に関する接続情報を生成する接続情報生成工程と、
前記ユーザネットリスト入力工程によって入力されたユーザネットリストと、前記接続情報生成工程によって生成された接続情報とを用いて、前記ユーザネットリストをテスト合成することにより、テスト合成ネットリストを生成するテスト合成ネットリスト生成工程と、
前記テスト合成ネットリスト生成工程によって生成されたテスト合成ネットリストからテストパターンを生成するテストパターン生成工程と、
を含んだことを特徴とする付記９または１０に記載の設計支援方法。
【０１３０】
（付記１２）タイミング収束した物理情報にテスト端子を持つハードマクロセルおよびテスト回路の配置配線情報が含まれているフレームを抽出させるフレーム抽出工程と、
前記ハードマクロセルと同じ端子構成の物理情報を持ち、論理情報にはテスト端子を持たないハードマクロセルを用いて、テスト回路のないユーザネットリストを入力させるユーザネットリスト入力工程と、
前記フレーム抽出工程によって抽出されたフレームに含まれているテスト回路の配置配線情報を元に、前記ユーザネットリスト入力工程によって入力されたユーザネットリストに含まれているハードマクロセルを配置させるハードマクロセル配置工程と、
をコンピュータに実行させることを特徴とする設計支援プログラム。
【０１３１】
（付記１３）前記フレーム抽出工程によって抽出されたフレームに含まれているテスト回路の配置配線情報を元にテスト回路を配置配線させるテスト回路配置配線工程と、
前記ユーザネットリスト入力工程によって入力されたユーザネットリストに含まれているネットのみを配線させるユーザネット配線工程と、
前記ハードマクロセル配置工程と、前記テスト回路配置配線工程と、前記ユーザネット配線工程とによって生成された配置配線情報から、前記テスト回路配置配線工程によって配置配線されたテスト回路の配置配線情報を除いた配置配線情報を認識させるユーザ回路配置配線認識工程と、
前記ユーザ回路配置配線認識工程によって認識された配置配線情報をネットリストとして出力させるネットリスト出力工程と、
をコンピュータに実行させることを特徴とする付記１２に記載の設計支援プログラム。
【０１３２】
（付記１４）前記ハードマクロセル配置工程によって配置されたハードマクロセルの配置情報に基づいて、前記ユーザネットリスト入力工程によって入力されたハードマクロセルと、前記フレームに含まれるテスト回路との接続に関する接続情報を生成させる接続情報生成工程と、
前記ユーザネットリスト入力工程によって入力されたユーザネットリストと、前記接続情報生成工程によって生成された接続情報とを用いて、前記ユーザネットリストをテスト合成することにより、テスト合成ネットリストを生成させるテスト合成ネットリスト生成工程と、
前記テスト合成ネットリスト生成工程によって生成されたテスト合成ネットリストからテストパターンを生成させるテストパターン生成工程と、
をコンピュータに実行させることを特徴とする付記１２または１３に記載の設計支援プログラム。
【０１３３】
（付記１５）付記１２〜１４のいずれか一つに記載の設計支援プログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【産業上の利用可能性】
【０１３４】
以上のように、本発明にかかる設計支援装置、設計支援方法、設計支援プログラムおよび記録媒体は、ＬＳＩの論理設計に有用である。
【図面の簡単な説明】
【０１３５】
【図１】この発明の実施の形態にかかる設計支援システムの概略構成を示す説明図である。
【図２】この発明の実施の形態にかかる設計支援システムの設計支援装置および情報端末装置のハードウェア構成を示すブロック図である。
【図３】ユーザセルライブラリに記憶されているハードマクロセルの内容を示す説明図である。
【図４】テストセルライブラリに記憶されているハードマクロセルの内容を示す説明図である。
【図５】この発明の実施の形態にかかる設計支援装置の処理フローを示す説明図である。
【図６】ユーザネットリストデータベースに記憶されているユーザネットリストの一例を示すブロック図である。
【図７】フレームライブラリデータベースに記憶されているフレームの一例を示すブロック図である。
【図８】図７に示したフレームの部分拡大図である。
【図９】図６に示したユーザネットリストを図８に示したフレームの配置配線情報を元にレイアウトした後のネットリストを示すブロック図である。
【図１０】図５に示した処理フローの返却用ネットリストデータベースに記憶されたネットリストを示すブロック図である。
【図１１】図５の処理フローのＩ／Ｆファイルデータベースに記憶されるＩ／Ｆファイルの記述例を示す説明図（１）である。
【図１２】図５の処理フローのＩ／Ｆファイルデータベースに記憶されるＩ／Ｆファイルの記述例を示す説明図（２）である。
【図１３】図５の処理フローのＩ／Ｆファイルデータベースに記憶されるＩ／Ｆファイルの記述例を示す説明図（３）である。
【図１４】図５の処理フローのＩ／Ｆファイルデータベースに記憶されるＩ／Ｆファイルの記述例を示す説明図（４）である。
【図１５】図５の処理フローのＩ／Ｆファイルデータベースに記憶されるＩ／Ｆファイルの記述例を示す説明図（５）である。
【図１６】図５の処理フローのＩ／Ｆファイルデータベースに記憶されるＩ／Ｆファイルの記述例を示す説明図（６）である。
【図１７】図５の処理フローのＩ／Ｆファイルデータベースに記憶されるＩ／Ｆファイルの記述例を示す説明図（７）である。
【図１８】図５に示した処理フローのテスト合成ネットリストデータベースに記憶されたテスト合成ネットリストを示すブロック図である。
【図１９】この発明の実施の形態にかかる設計支援装置の機能的構成を示すブロック図である。
【図２０】図１９に示した一部の機能構成とユーザセルライブラリおよびテストセルライブラリとの関係を示す説明図である。
【図２１】この発明の実施の形態にかかる設計処理手順を示すフローチャートである。
【図２２】テスト回路を含めてハードマクロ化されたＲＡＭとＲＡＭテストに必要な周辺回路を示す説明図である。
【図２３】図２２に示したビットセレクト回路の一例を示す説明図である。
【図２４】同一テストパターンの原理を示す説明図である。
【図２５】テスト端子構成を揃えたＢＳＲをＢＳＲ領域に挿入する例を示す説明図である。
【図２６】ＢＳＲ領域にバイパスセルが挿入されたバウンダリスキャンチェーンを示す説明図である。
【図２７】従来の設計フローの一例を示す説明図である。
【図２８】従来のフレームを示す説明図である。
【図２９】従来のフレーム上に複数のＲＡＭがレイアウトされた状態を示す説明図である。
【図３０】ＢＳＲを連続的に配置することによって形成されたバウンダリスキャンチェーンを示す説明図である。
【符号の説明】
【０１３６】
１０１  設計支援装置
６００  ユーザネットリスト
７００  フレームの配置配線情報
１８０１  ユーザネットリスト入力部
１８０５  フレーム抽出部
１８０６  ハードマクロセル配置部
１８０７  ユーザネット配線接続部
１８０８  論理構造ネットリスト認識部
１８０９  論理構造ネットリスト出力部
１８１１  接続情報生成部
１８１２  テスト合成ネットリスト生成部
１８１３  テストパターン生成部
１８１５  テスト回路配置配線部
【図１】
2005216012.tif 000003
【図２】
2005216012.tif 000004
【図３】
2005216012.tif 000005
【図４】
2005216012.tif 000006
【図５】
2005216012.tif 000007
【図６】
2005216012.tif 000008
【図７】
2005216012.tif 000009
【図８】
2005216012.tif 000010
【図９】
2005216012.tif 000011
【図１０】
2005216012.tif 000012
【図１１】
2005216012.tif 000013
【図１２】
2005216012.tif 000014
【図１３】
2005216012.tif 000015
【図１４】
2005216012.tif 000016
【図１５】
2005216012.tif 000017
【図１６】
2005216012.tif 000018
【図１７】
2005216012.tif 000019
【図１８】
2005216012.tif 000020
【図１９】
2005216012.tif 000021
【図２０】
2005216012.tif 000022
【図２１】
2005216012.tif 000023
【図２２】
2005216012.tif 000024
【図２３】
2005216012.tif 000025
【図２４】
2005216012.tif 000026
【図２５】
2005216012.tif 000027
【図２６】
2005216012.tif 000028
【図２７】
2005216012.tif 000029
【図２８】
2005216012.tif 000030
【図２９】
2005216012.tif 000031
【図３０】
2005216012.tif 000032