図面 (/)

技術 半導体設計支援装置、半導体設計支援方法及びプログラム

出願人 株式会社リコー
発明者 宇佐見淳
出願日 2017年8月31日 (3年3ヶ月経過) 出願番号 2017-167587
公開日 2019年3月22日 (1年9ヶ月経過) 公開番号 2019-046087
状態 未査定
技術分野 半導体集積回路 CAD ICの設計・製造(配線設計等) 電子回路の試験
主要キーワード ラッチ挿入 イタレーション回数 組み合わせ表 クロックゲート回路 配置回路 共通パス ラウンチャ シフト接続
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2019年3月22日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (19)

課題

スキャンテストモードにおいて、半導体プロセスの微細化が進んだ場合であっても、異クロック間のデータホールドタイミングエラー修正の作業及びバッファの追加を不要とし、テストパターンの追加を微量に留めて、故障検出率下げないようなスキャンテストを実行すること。

解決手段

半導体設計支援装置は、複数のクロックドメインに共通するスキャンクロックを使用するスキャンテストによる半導体集積回路タイミング解析結果に基づいて、スキャンテストのキャプチャサイクルにおいてホールドタイミングエラーが発生しないように前記スキャンクロックを前記クロックドメインに供給又は停止する制御を可能とする、非同期の前記クロックドメイン間の組み合わせを導出するテスト部と、前記組み合わせに基づいて、スキャンテスト時のホールドタイミングエラーを回避するスキャンテストパターンを生成する生成部とを有する。

概要

背景

半導体設計プロセスにおいて、非同期クロックドメイン間を、スキャンモードでは共通のスキャンクロックスキャンテストを実行できるように、スキャンクロックスキューを最少に抑えたクロックツリーを挿入し、故障検出率下げないスキャンテストを行う手法が既に知られている。

また、異クロック間縮退および遷移故障テストを容易に行う目的で、スキャンクロックに、キャプチャサイクル時に任意の遅延値を設定してスキャンテストを行う技術が開示されている(例えば特許文献1)。

概要

スキャンテストモードにおいて、半導体プロセスの微細化が進んだ場合であっても、異クロック間のデータホールドタイミングエラー修正の作業及びバッファの追加を不要とし、テストパターンの追加を微量に留めて、故障検出率を下げないようなスキャンテストを実行すること。半導体設計支援装置は、複数のクロックドメインに共通するスキャンクロックを使用するスキャンテストによる半導体集積回路タイミング解析結果に基づいて、スキャンテストのキャプチャサイクルにおいてホールドタイミングエラーが発生しないように前記スキャンクロックを前記クロックドメインに供給又は停止する制御を可能とする、非同期の前記クロックドメイン間の組み合わせを導出するテスト部と、前記組み合わせに基づいて、スキャンテスト時のホールドタイミングエラーを回避するスキャンテストパターンを生成する生成部とを有する。

目的

本発明は、上記の点に鑑みてなされたものであって、スキャンテストモードにおいて、半導体プロセスの微細化が進んだ場合であっても、異クロック間のデータパスにおけるホールドタイミングエラー修正の作業及びバッファの追加を不要とし、テストパターンの追加を微量に留めて、故障検出率を下げないようなスキャンテストを実行することを目的とする

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

複数のクロックドメインを含む半導体集積回路の設計を支援する半導体設計支援装置であって、前記複数のクロックドメインに共通するスキャンクロックを使用するスキャンテストによって前記半導体集積回路にタイミング解析を行い、前記タイミング解析の結果に基づいて、スキャンテストのキャプチャサイクルにおいてホールドタイミングエラーが発生しないように前記スキャンクロックを前記クロックドメインに供給又は停止する制御を可能とする、非同期の前記クロックドメイン間の組み合わせを導出するテスト部と、前記組み合わせに基づいて、スキャンテスト時のホールドタイミングエラーを回避するスキャンテストパターンを生成する生成部とを有する半導体設計支援装置。

請求項2

前記複数のクロックドメインのそれぞれに供給されるクロック信号線には遅延バッファを挿入し、前記スキャンクロックの信号線には遅延バッファを挿入しないで前記半導体集積回路のレイアウトを出力する配置部をさらに有する請求項1記載の半導体設計支援装置。

請求項3

前記配置部は、第1の半導体集積回路に、スキャンクロックの制御回路をさらに含ませた第2の半導体集積回路のレイアウトを出力し、前記テスト部は、前記第1の半導体集積回路に対するスキャンテストのタイミング解析の結果に基づいて、前記第2の半導体集積回路に対するスキャンテストに適用する制約を決定する請求項2記載の半導体設計支援装置。

請求項4

複数のクロックドメインを含む半導体集積回路の設計を支援する半導体設計支援装置が実行する半導体設計支援方法であって、前記複数のクロックドメインに共通するスキャンクロックを使用するスキャンテストによって前記半導体集積回路にタイミング解析を行い、前記タイミング解析の結果に基づいて、スキャンテストのキャプチャサイクルにおいてホールドタイミングエラーが発生しないように前記スキャンクロックを前記クロックドメインに供給又は停止する制御を可能とする、非同期の前記クロックドメイン間の組み合わせを導出するテスト手順と、前記組み合わせに基づいて、スキャンテスト時のホールドタイミングエラーを回避するスキャンテストパターンを生成する生成手順とを実行する半導体設計支援方法。

請求項5

前記複数のクロックドメインのそれぞれに供給されるクロックの信号線には遅延バッファを挿入し、前記スキャンクロックの信号線には遅延バッファを挿入しないで前記半導体集積回路のレイアウトを出力する配置手順をさらに実行する請求項4記載の半導体設計支援方法。

請求項6

前記配置手順は、第1の半導体集積回路に、スキャンクロックの制御回路をさらに含ませた第2の半導体集積回路のレイアウトを出力する手順を含み、前記テスト手順は、前記第1の半導体集積回路に対するスキャンテストのタイミング解析の結果に基づいて、前記第2の半導体集積回路に対するスキャンテストに適用する制約を決定する手順を含む請求項5記載の半導体設計支援方法。

請求項7

複数のクロックドメインを含む半導体集積回路の設計を支援する半導体設計支援装置が実行可能なプログラムであって、前記複数のクロックドメインに共通するスキャンクロックを使用するスキャンテストによって前記半導体集積回路にタイミング解析を行い、前記タイミング解析の結果に基づいて、スキャンテストのキャプチャサイクルにおいてホールドタイミングエラーが発生しないように前記スキャンクロックを前記クロックドメインに供給又は停止する制御を可能とする、非同期の前記クロックドメイン間の組み合わせを導出するテスト手順と、前記組み合わせに基づいて、スキャンテスト時のホールドタイミングエラーを回避するスキャンテストパターンを生成する生成手順とを前記半導体設計支援装置に実行させるプログラム。

請求項8

前記複数のクロックドメインのそれぞれに供給されるクロックの信号線には遅延バッファを挿入し、前記スキャンクロックの信号線には遅延バッファを挿入しないで前記半導体集積回路のレイアウトを出力する配置手順をさらに前記半導体設計支援装置に実行させる請求項7記載のプログラム。

請求項9

前記配置手順は、第1の半導体集積回路に、スキャンクロックの制御回路をさらに含ませた第2の半導体集積回路のレイアウトを出力する手順を含み、前記テスト手順は、前記第1の半導体集積回路に対するスキャンテストのタイミング解析の結果に基づいて、前記第2の半導体集積回路に対するスキャンテストに適用する制約を決定する手順を含む請求項8記載のプログラム。

技術分野

0001

本発明は、半導体設計支援装置半導体設計支援方法及びプログラムに関する。

背景技術

0002

半導体設計プロセスにおいて、非同期クロックドメイン間を、スキャンモードでは共通のスキャンクロックスキャンテストを実行できるように、スキャンクロックスキューを最少に抑えたクロックツリーを挿入し、故障検出率下げないスキャンテストを行う手法が既に知られている。

0003

また、異クロック間縮退および遷移故障テストを容易に行う目的で、スキャンクロックに、キャプチャサイクル時に任意の遅延値を設定してスキャンテストを行う技術が開示されている(例えば特許文献1)。

発明が解決しようとする課題

0004

しかしながら、従来のスキャンクロックの共通化によるスキャンテストを行う方法では、スキャンクロックスキューを最少に抑えたクロックツリーの形成が可能であっても、半導体プロセスの微細化が進んだ場合、オンチップばらつきがますます増大する。そのため送信側と受信側とで悲観的に検証した場合、異クロック間のデータパスにおけるホールドタイミングエラーが増加してしまい、タイミングエラーをなくすためのレイアウト修正工数バッファ追加の量、あるいはテストパターンが増大するという問題があった。

0005

本発明は、上記の点に鑑みてなされたものであって、スキャンテストモードにおいて、半導体プロセスの微細化が進んだ場合であっても、異クロック間のデータパスにおけるホールドタイミングエラー修正の作業及びバッファの追加を不要とし、テストパターンの追加を微量に留めて、故障検出率を下げないようなスキャンテストを実行することを目的とする。

課題を解決するための手段

0006

そこで上記課題を解決するため、半導体設計支援装置は、複数のクロックドメインを含む半導体集積回路の設計を支援し、前記複数のクロックドメインに共通するスキャンクロックを使用するスキャンテストによって前記半導体集積回路にタイミング解析を行い、前記タイミング解析の結果に基づいて、スキャンテストのキャプチャサイクルにおいてホールドタイミングエラーが発生しないように前記スキャンクロックを前記クロックドメインに供給又は停止する制御を可能とする、非同期の前記クロックドメイン間の組み合わせを導出するテスト部と、前記組み合わせに基づいて、スキャンテスト時のホールドタイミングエラーを回避するスキャンテストパターンを生成する生成部とを有する。

発明の効果

0007

スキャンテストモードにおいて、半導体プロセスの微細化が進んだ場合であっても、異クロック間のデータパスにおけるホールドタイミングエラー修正の作業及びバッファの追加を不要とし、テストパターンの追加を微量に留めて、故障検出率を下げないようなスキャンテストを実行することができる。

図面の簡単な説明

0008

複数のクロックドメインのスキャンクロック供給源を1本化した回路例を示す図である。
複数のスキャンクロックを有する回路のスキャンテストのタイミングを説明するための図である。
スキャンクロックを1本化した回路のスキャンテストのタイミングについて説明するための図である。
オンチップばらつき(OCV係数を考慮したホールドタイミング検証について説明するための図である。
本発明の実施の形態における半導体集積回路の例を示す図である。
本発明の実施の形態における半導体集積回路の設計フローについて説明するための図である。
本発明の実施の形態におけるSCAクロックを1本化したSCANテスト回路挿入後の半導体集積回路例を示す図である。
SCANクロックを1本化した半導体集積回路のCTS後の例を示す図である。
本発明の実施の形態における1本化されたSCANクロックにCTSをしない半導体集積回路の例を示す図である。
本発明の実施の形態におけるECOレイアウト後の半導体集積回路の例を示す図である。
本発明の実施の形態におけるSCANクロック制御回路の例を示す図である。
本発明の実施の形態におけるSCANクロックの制御組み合わせの例を示す図である。
本発明の実施の形態におけるSCANクロックの制御組み合わせについて説明するための図である。
本発明の実施の形態におけるSCANクロックの制御回路のタイミングを説明するための図である。
本発明の実施の形態におけるSCANクロックの制御組み合わせ数について説明するための図である。
本発明の実施の形態における複数のハードマクロを持つ半導体集積回路の例を示す図である。
本発明の実施の形態におけるSCANテストパターン圧縮機を1つにまとめた半導体集積回路の例を示す図である。
本発明の実施の形態における半導体設計支援装置の機能構成例を示す図である。

実施例

0009

以下、図面に基づいて本発明の実施の形態を説明する。

0010

図1は、複数のクロックドメインのスキャンクロック供給源を1本化した回路例を示す図である。本発明の実施の形態は、図1に示されるようなスキャンテスト回路を有する半導体集積回路の設計方法に関する。半導体集積回路における一般的なテストとして、SCAN/ATPG(Automatic Test Pattern Generator)テストが挙げられる。SCAN/ATPGテストとは、テストパターンを自動的に生成して、半導体集積回路に配置されたフリップフロップにテストパターンを外部から書き込み、半導体集積回路動作後に、フリップフロップから値を読み出して検証することをいう。当該フリップフロップを、スキャンフリップフロップともいう。なお、クロックドメインとは、ある特定のクロック入力により駆動される回路領域(部分回路)を指す。例えば、半導体集積回路内に複数の異なるクロックに基づいて動作するとき、それぞれのクロックで動作する部分回路は、それぞれの入力クロックに対応するクロックドメインであるという。

0011

チップレベルで複数のクロックドメインを有する回路において、一般的なスキャンテストを実行する場合、クロックドメイン数と同数のスキャンクロックを外部から供給する専用端子又は兼用端子を設ける必要がある。

0012

しかしながら、端子数の制限により専用端子を設けることができない場合、あるいは、既存の端子をスキャンテスト端子と兼用すると外部ACタイミングが悪化するので兼用できない場合は、図1に示されるように、複数のクロックドメインのスキャンクロック供給源を1本化、または共通化して数を少なくする方法がある。

0013

図1に示されるように、クロックドメインAに供給されるSCANクロックのレイテンシが8nsであり、クロックドメインBに供給されるSCANクロックのレイテンシが5nsである場合、SCANクロックに3nsのスキューが生じるため、スキュー調整を行う。詳細は後述する。

0014

図2は、複数のスキャンクロックを有する回路のスキャンテストのタイミングを説明するための図である。図2は、スキャンテストの動作タイミングを「SCANイネーブル」、「SCANクロックA」、「クロックドメインAのSCANFlipFlop」、「SCANクロックB」及び「クロックドメインBのSCANFlipFlop」の信号で示している。「SCANイネーブル」は、スキャン時、すなわちスキャンフリップフロップをシフトさせるときイネーブルとなる。「SCANクロックA」及び「SCANクロックB」は、スキャンフリップフロップに供給される動作クロックを示す。当該クロックにより、スキャンフリップフロップは、シフト又はキャプチャをおこなう。「クロックドメインAのSCANFlipFlop」及び「クロックドメインBのSCANFlipFlop」は、各クロックドメインに配置されたスキャンフリップフロップの出力信号を示す。また、シフト時には、SCANテストパターン入力及びSCANテスト結果の出力が並行して行われる。また、キャプチャ時には、テスト対象である回路からの出力をスキャンフリップフロップは受信する。

0015

スキャンテストのキャプチャサイクルにおいて、クロックドメインごとにスキャンクロックを有する場合は、図2に示される「クロック停止」のように、シフトサイクル後のキャプチャサイクルにおいて、送信(ローンチ)側のスキャンクロックを停止することができるため、クロックドメイン間のタイミングを気にすることなく安全にスキャンデータ送受信ができる。図2に示されるように、クロックドメインAからBに送信する場合、「SCANクロックA」を停止し、クロックドメインBからAに送信する場合、「SCANクロックB」を停止する。

0016

図3は、スキャンクロックを1本化した回路のスキャンテストのタイミングについて説明するための図である。スキャンクロックを1本化、あるいは共通化して数を少なくする場合は、クロックドメイン間の送受信クロックを個々に入力できないので、図1(B)の様なスキャンクロックのスキュー差をできるだけ小さくして、ホールドタイミングを満たすように遅延バッファディレイセル)挿入等の回路修正を行う。

0017

図1(B)においては、クロックドメインAに供給されるSCANクロックのレイテンシが8nsであり、クロックドメインBに供給されるSCANクロックのレイテンシが5nsである場合、SCANクロックに3nsのスキューが生じる。そこで例えば、SCANクロックAに対して+1nsの遅延バッファを挿入し、SCANクロックBに対して+4nsの遅延バッファを挿入して、各クロックドメインのスキャンフリップフロップまでのレイテンシを9nsに合わせるようにしてスキュー調整がおこなわれる。

0018

またスキュー調整しきれなかった場合でも図3に示される「注2」のように、キャプチャ時に、送信側からのデータ送信マルチサイクルにして安全に受信する等、故障検出率を下げないようにすることが重要である。

0019

図1(B)のように遅延バッファを挿入する方法は、スキャンクロックのスキュー差を最適にして、スキャンテストのためだけのバッファ(ディレイセル)追加を最小限に抑える対策が必要である。図3に示される「注2」のようにマルチサイクルとする方法は、スキャンテストのテストパターン数を最小限に抑える対策が必要である。

0020

また、図3に示される「注2」の手法においては、公知のブロードサイド方式やスキュードロード方式と呼ばれる技術が既に知られて広く普及しているが、ブロードサイド方式はクロック制御が比較的容易であるが、2個目パターンとして所望のベクトルを設定することが困難であることが多く、スキュードロード方式は、2個目のパターンとして所望のベクトルを設定することが容易であることが多いが完全ではなく、SCANイネーブル信号は多数のスキャンフリップフロップを駆動しなければならないため、実時間で1から0へ遷移させることは容易ではなく、サイクル時間の長い縮退故障検出においても注意が必要であり、双方ともテストパターンの増加が問題となる。

0021

これらの対策は現在、高機能・高速処理化が進んだ半導体集積回路の設計ツール(EDA(Electronic Design Automation)ツール)によって、許容範囲内品質、すなわち回路規模検出率を実現するように、設計工期・工数に抑えられてきた。

0022

例えば、CTS(Clock Tree Synthesis:クロックツリーを形成し挿入する)ツールを用いて、タイミング違反箇所が最も少なる様にスキュー調整したスキャンクロックを形成し挿入する。

0023

また例えば、ホールドタイミングFixツールを用いて、スキャンモード時のホールド違反がなくなるように、かつ、スキャンテストモード以外のタイミングに留意して、バッファ追加を行う。

0024

また例えば、SCANATPG(自動テストパターン生成)ツールを用いて、スキャンテストモードでのタイミングSTA(Static Timing Analysis:静的タイミング解析)結果から、ホールド違反を起こしているパスのテストパターンを、図3に示される「注2」のようにマルチサイクルとして生成する。

0025

図4は、オンチップばらつき(OCV)係数を考慮したホールドタイミング検証について説明するための図である。従来のスキャンクロックを1本化又は共通化して、スキャンテストを行う方法では、スキャンクロックスキューを最少に抑えたクロックツリーが形成できても、半導体プロセスの微細化が進んだ場合、オンチップばらつき(On Chip Variation : OCV)係数がますます増大していく。OCV係数とは、チップ内におけるパスの遅延のばらつきを示す。図4における悲観性は、送信側スキャンフリップフロップへのクロックパスは、クロックパス遅延からOCV係数分を減じて検証し、受信側スキャンフリップフロップへのクロックパスは、クロックパス遅延にOCV係数分を増やして検証することに対応する。

0026

例えば、図4に示されるように、送信側と受信側で悲観的に検証すると、たとえレイテンシを等しくして、スキューを0に抑えることが出来ても、送信側と受信側が入れ替わった場合にレイテンシの逆転現象が発生してホールドタイミングエラーを増加させてしまい、CTSのイタレーションホールド対策バッファ追加及びテストパターン追加の量が増大するという問題があった。

0027

図5は、本発明の実施の形態における半導体集積回路の例を示す図である。図5に示した半導体集積回路は、4つのハードマクロを持つ。図5から図15までの半導体集積回路に係る設計を、実施例1とする。

0028

ハードマクロAのクロックAの出力を、ランダムロジックエリア内の小規模なクロックドメインAに配置される複数のフリップフロップのクロック端子と接続する。

0029

ハードマクロBのクロックBの出力を、ランダムロジックエリア内の小規模なクロックドメインBに配置される複数のフリップフロップのクロック端子と接続する。なお、クロックドメインA及びクロックドメインB内の回路は、同じ論理回路で構成される。

0030

ハードマクロCのクロックCの出力を、ランダムロジックエリア内の2番目に大きなクロックドメインCに配置される複数のフリップフロップのクロック端子と接続する。

0031

ハードマクロDのクロックDの出力を、ランダムロジックエリア内の最も大きなクロックドメインDに配置される複数のフリップフロップのクロック端子と接続する。

0032

次に、図5に示した半導体集積回路を設計フローに従ってLSI化する処理手順について、図6に設計フローを示して説明する。

0033

図6は、本発明の実施の形態における半導体集積回路の設計フローについて説明するための図である。図6に示される設計フロー(1)から(6)について、それぞれ説明する。

0034

(1)DFT回路挿入
「DFT回路挿入」は、通常の設計処理であるが、後述する「SCANクロック制御回路の挿入」の背景として述べる。DFT(Design For Testability)とは、テスト容易化設計である。「DFT回路挿入」(S100)とは、ユーザ設計回路に対して「JTAG(Joint Test Action Group)回路挿入」(S101)、「メモリBIST(Build In Self-Test:自己診断テスト)回路挿入」(S102)、「SCANテスト回路挿入」(S103)、「その他のテスト回路挿入(At Speed Test:実動作テストのための制御回路挿入又はテスト信号の接続修正等)」(S104)の処理等、各種LSIテストの回路をDFTツールによって挿入する半導体集積回路設計の処理手順である。

0035

テップS103におけるSCAN回路挿入時には、非スキャンタイプのフリップフロップをスキャンタイプのフリップフロップに置き換えて、それらをチェーン状シリアル接続する処理、スキャンテストを制御する回路の挿入及びスキャンテストパターン圧縮回路の挿入等の処理を行う。

0036

図7は、本発明の実施の形態におけるSCANクロックを1本化したSCANテスト回路挿入後の半導体集積回路例を示す図である。図7に示されるように、非スキャンタイプのフリップフロップをスキャンタイプのフリップフロップに置き換えて、クロックドメインA、クロックドメインB、クロックドメインC及びクロックドメインDに配置される当該フリップフロップにそれぞれSCANイネーブル信号が接続される。また、各クロックドメインへのクロック信号は、クロック、SCANクロックが入力されるマルチプレクサの出力であり、SCANテストモード信号によって切り替えが可能である。

0037

図6に戻る。(2)レイアウト
「レイアウト」とは、半導体集積回路を構成するマクロセルを、プロセス(テクノロジ制約設計制約タイミング制約ユーザ指示の各ルールに従って、チップレイアウト上に配置し、それらを配線する処理である。本発明における「レイアウト」フローは、通常の設計処理であるが、後述する「SCANクロック制御回路の挿入」の背景として述べる。

0038

ステップS201の「フロアプラン:Floor Plan」において、チップレイアウト上で、主に電源形成(VDDGND配線)又は図5の左図に示したようなクリティカルなマクロセル(IOセルメモリセル、ハードマクロ、その他事前に配置を固定したいセル)とランダムロジック領域との配置を指定する。

0039

ステップS202の「配置・最適化:Place & PreCTSOpt(Preliminary CTS Optimize)」において、ランダムロジック領域のマクロセルを自動で配置し、後述する「クロックツリー挿入」前の配置回路に対して、セットアップタイミング最適化、及びクロックパスを除く未配線信号のスルーエラー修正を行う。

0040

図8は、SCANクロックを1本化した半導体集積回路のCTS後の例を示す図である。図8に示されるように、各クロックドメインにスキュー調整のためホールド対策バッファが配置されたクロックツリーが挿入され、SCANクロックについてもホールド対策バッファが配置されたSCANクロックツリーが挿入される。

0041

図6に戻る。ステップS203の「クロックツリー挿入:CTS(Clock Tree Synthesis)」において、従来は、図8に示されるように各クロックドメインのクロックスキューを最小に抑え、かつ最適なレイテンシのクロックツリーを形成して挿入する。すなわち、各クロックドメインのCTSを行った後、1本化したSCANクロックのCTSも行っていたが、広範囲に渡るSCANクロックスキューのスキュー調整は図4で説明したように悲観性が除去されるように共通パスを通りながら、遅延値(レイテンシ)が等しくなるようにバランスを取らなければならず、半導体プロセスの微細化に伴うOCVばらつき係数の増大、デザインの複雑化又は大規模化が増大すると、調整が困難になってきており、SCANテストモードでのホールドバッファ追加を余儀なくされてしまう問題があった。

0042

ステップS204の「CTS後最適化:PostCTSOpt(Post CTS Optimize)」において、「クロックツリー挿入」後の配置回路に対して、再度セットアップタイミング最適化及びクロックパスを除く未配線信号のスルーエラー修正を行う。

0043

ステップS205の「配線・最適化:Route & PostRouteOpt(Post Route Optimize)」において、未配線のすべての信号を実配線し、再度セットアップタイミング最適化クロックパスを除く実配線信号のスルーエラー修正を行う。

0044

ステップS206の「ホールドタイミングエラー修正:Fix Hold Timing」において、ホールドタイミングエラー箇所に対し、遅延バッファ(ディレイセル)を挿入する修正を行う。

0045

図9は、本発明の実施の形態における1本化されたSCANクロックにCTSをしない半導体集積回路の例を示す図である。図9に示されるように、1本化されたSCANクロックに対して、CTSは行われず、遅延バッファは挿入されない。

0046

図6に戻る。従来は、例えばノーマルモードではクロックドメイン毎にホールドタイミングエラー修正を行った後に、スキューを合わせたSCANクロックでもホールドタイミング調整を行っていたが、本発明の実施の形態においては、図9に示されるように、SCANクロックでのホールドタイミング調整は不要であるので、CTSに係る(イタレーション回数等の)工数削減と実行時間の短縮に効果があり、ホールドタイミングエラー修正時のSCANテストモードでの遅延バッファ挿入を不要にすることができる。

0047

(3)SCANATPG(レイアウト終了後)
ここでのSCANテストとは、縮退故障検出テスト(DC SCAN)を指す。他にSCAN手法を用いたテストには、遅延故障検出テスト(AC SCAN又はAt Speed SCANテストと呼ぶ)等がある。SCANテスト用のテストパターン自動生成をATPGという。

0048

ステップS301において、ATPGは、回路情報のうち、マクロセル接続情報ネットリスト)とテスト制約をロードして実行される。ステップS302において、通常のATPG実行か、SCANクロック遅延調整制御のATPGかで、処理を分岐する。通常のATPG実行の場合(S302のYes)、ステップS303に進む。SCANクロック遅延調整制御のATPGの場合(S302のNo)、ステップ」S603に進む。ステップS603以降については後述する。

0049

DFT回路挿入後又はレイアウト終了後の半導体集積回路のネットリストについては、通常のSCANATPGを実行して(S303)、故障検出率及び未検出故障個所等のレポートシミュレションテストベンチとSCANテストパターンを生成する(S304)。

0050

実施例1では、さらに本発明の実施の形態における第1の特徴であるSCANクロックの制御ファイルを読み込んで、SCANモード時のホールドタイミングを回避する最適なテストパターンを生成する機能を備える。当該機能については、(6)SCANATPG(SCANテストモードSTA後、またはECOレイアウト終了後)で後述する。

0051

(4)SCANテストモードのSTA(Static Timing Analysis:静的タイミング解析)
以下、本発明の実施の形態における実施例1の第2の特徴である、SCANクロック制御回路挿入と、第3の特徴であるSCANクロックの制御ファイル出力について説明する。初めに、レイアウト後に行うSTAについて、説明する。

0052

ステップS401において、遅延調整回路が挿入前である場合(S401のYes)、ステップS402に進む。遅延調整回路挿入後である場合(S401のNo)、ステップS410に進む。

0053

ステップS402において、レイアウト後の半導体集積回路の回路情報(マクロセル接続情報であるネットリストと遅延情報であるSDF(Standard Delay Format)又はSPEF(Standard Parasitic Exchange Format)等)をロードする。続いて、SCANテストモードのタイミング制約を与えて、STAを実行する(S403)。

0054

STAの結果から、ホールドタイミングエラーとなったパスに対して、送信(ラウンチャ)側のフリップフロップのSCANクロックを停止させて受信(キャプチャ)側のフリップフロップがホールドタイミングエラーを回避するための、以下の2種類のファイルを生成する(S404、S405)。

0055

生成される第1のファイルは、ATPGツールへロードさせるためのファイルである(S405)。第1のファイルは、SCANクロックを1本化した場合のホールドタイミングを満足しないパスにおける、送受信側双方のクロックドメインの組み合わせが定義されているファイルである。

0056

生成される第2のファイルは、レイアウトツールへ読み込ませるためのECO(Engineering Change Order)ファイルを生成する(S404)。第2のファイルは、SCANテストモードでホールドタイミングエラーがレポートされたクロックドメインに対して、SCANクロック制御回路を挿入するためのファイルである。

0057

最後に、通常のタイミングレポートに加え、第1のファイル及び第2のファイルに係るレポートも合わせて出力する(S406)。

0058

一方、ECOレイアウト(SCANクロック制御回路挿入に必要な回路修正)を行った後のSTA、すなわちステップS410以降について、以下説明する。

0059

ステップS410において、ECOレイアウト後の回路情報をロードする。続いて、SCANテストモードのタイミング制約に加え、キャプチャサイクル時にホールドタイミングエラーが発生するクロックドメイン、すなわちSCANクロック制御が必要なクロックドメインに対してはマルチサイクルパスあるいはホールド側だけFalseパス指定の制約を与えてSTA解析を行う(S411)。SCANシフト時のクロックドメイン間の境界に発生するホールドエラーは、既知の対策である、クロックドメイン間のSCANシフト接続箇所へのラッチ挿入で対策するので、SCANクロック制御回路を制御しない状態で、ホールドエラーがないことを確認するためである。最後に、タイミングレポートを出力する(S412)。タイミングレポートには、後述するSCANクロック制御の有無、すなわちラウンチャ側クロックの制御スイッチの状態も付加される。

0060

(5)ECOレイアウト
レイアウト後に実行したSCANモードのSTA時のステップS404において出力されたECOのファイルを、レイアウトにロードして(S501)、通常のECOレイアウトを行う(S502、S503)。ECOレイアウト後の半導体集積回路構成例を、図10に示す。

0061

図10は、本発明の実施の形態におけるECOレイアウト後の半導体集積回路の例を示す図である。図10において、ECOレイアウト後の半導体集積回路は、図9に示される半導体集積回路に対して、1本化されたSCANクロックと各クロックドメインとのMUX(マルチプレクサ)回路のSCANクロック入力側に、SCANクロックをON・OFFさせるゲート回路を挿入し、また当該ゲート回路を制御する図11に示す「SCANクロック制御回路」を、SCANクロックをON・OFFさせるゲート回路の近傍等に挿入する。

0062

SCANクロックゲート回路及びSCANクロック制御回路挿入は、SCANテストモード時にキャプチャサイクルでのキャプチャ側フリップフロップでホールドタイミングを起こしたパスのラウンチャ側フリップフロップのSCANクロックに対して行われる。ここで、どのキャプチャ側フリップフロップに対しても、ホールドエラーを起こさないラウンチャ側SCANクロックには、SCANクロックゲート回路及びSCANクロック制御回路挿入を行わない。図10中の入力信号「制御スイッチ(A)(B)(C)(D)」を生成するSCANクロック制御回路例を図11に示す。

0063

図11は、本発明の実施の形態におけるSCANクロック制御回路の例を示す図である。図11に示されるように、SCANクロック制御回路は、スキャンフリップフロップに、SCANイネーブル信号とSCANデータ出力信号のOR信号を制御スイッチに出力する回路を追加している。SCANクロック制御回路は、例えば、SCANシフトチェーンの最初に1つ挿入され、制御スイッチ信号をSCANクロックゲート回路に出力する。

0064

図6に戻る。(6)SCANATPG(SCANテストモードSTA後、またはECOレイアウト終了後)
SCANテストモードのSTA後、あるいはECOレイアウト後に、マクロセル接続情報(ネットリスト)とテスト制約に加え、ステップS405で生成されるSCANクロックの制御ファイルを読み込んで(S603)、SCANモード時のホールドタイミングを回避する最適なテストパターンを生成するATPGを実行し(S604)、実行結果をファイルに出力する(S605)機能を備える。

0065

図12は、本発明の実施の形態におけるSCANクロックの制御組み合わせの例を示す図である。図12は、図6に示されるステップS405で生成されるSCANクロックの制御ファイルについて説明するための図である。4つのクロックドメインのSCANクロックを1本化した場合の、制御スイッチ組み合わせとホールドエラーを回避できる送受信クロックの組み合わせ表を示す。組み合わせ表において、クロック「A」、「B」、「C」、「D」は、各クロックドメインに対応し、「受信側」はキャプチャ側フリップフロップを含み、「送信側」はラウンチャ側フリップフロップを含む。また、「スイッチ」は、図10に示されるSCANクロックゲート回路に入力される制御スイッチのON・OFFに対応する。

0066

組み合わせ表において、黒い丸は、送受信クロックが同じクロックドメインで、送受信のフリップフロップが別々に制御できないが、SCANテストモード以外のノーマルモードでホールドタイミングを満たしている(満たさなければならない)組み合わせの場合である(例えば、AとA、BとB、CとC、DとD)ことを示す。

0067

組み合わせ表において、白い丸は、送信側のクロックが停止、受信側のクロックが動作した場合の組み合わせであり、ホールドタイミングエラーが起こらない(回避できる)場合を示す。

0068

組み合わせ表において、三角は、送信側のクロックと受信側のクロック両方が動作した場合の組み合わせであり、ホールドタイミングエラーとなる場合と、スキューが合っていなくてもホールドタイミングを満たす場合、例えば、受信側のクロックが送信側より早い場合又はデータ送信時間が遅い場合等がある。

0069

組み合わせ表において、バツ(X)は、受信側のクロックが停止しているので、データ受信できない場合の組み合わせである。

0070

STAツールで生成し、ATPGに入力するSCANクロック制御ファイルには、ホールドタイミングエラーが発生するクロックドメインの組み合わせ、各組み合わせでの、総エラー数、及び各組み合わせでの各エラーパスのStart Point(送信側インスタンスピン)及びEnd Point(受信側インスタンスピン)が記載されている。

0071

したがって、本発明の実施の形態におけるATPGは、クロックドメイン間の故障テストパターンを生成するとき、SCANクロック制御方法を、図12に示される組み合わせから得ることができる。また、SCANクロック制御方法の効率向上を、各々の組み合わせが持つ総エラー数に基づいて判定することができる。また、SCANクロックを制御しない(制御スイッチが全ONの)場合の1サイクルキャプチャーテストで検出できないパスを、Start Point/End Pointのリストから判定できる。

0072

そのため、本発明の実施の形態におけるATPGは、上記情報及び判定に基づいて、テストパターン数の増加を抑制しつつ、最適なテストパターンを生成する。

0073

図13は、本発明の実施の形態におけるSCANクロックの制御組み合わせについて説明するための図である。図13は、図12のSCANクロックの制御組み合わせの動作概念図を示す。

0074

図13(A)において、SCANクロックAのみがONになっている。このとき、送信側受信側共にAの場合、ホールドタイミングを満足する。送信側がB、C、Dであり、受信側がAの場合、ホールドタイミングエラーが回避できる。B、C、Dは、SCANクロックが停止されているため、受信側となることはできない。

0075

図13(B)において、SCANクロックB、C、DがONになっている。このとき、送信側受信側共にB、C、Dの場合、ホールドタイミングを満足する。送信側がAであり、受信側がB、C、Dの場合、ホールドタイミングエラーが回避できる。Aは、SCANクロックが停止されているため、受信側となることはできない。

0076

図14は、本発明の実施の形態におけるSCANクロックの制御回路のタイミングを説明するための図である。図14は、図11に示されるSCANクロック制御回路によって制御スイッチがON・OFFされる場合のタイミングチャートを示す。

0077

図14に示される「シフト(最終)」のシフトサイクル時に、SCANクロック制御回路のフリップフロップにセットされた値と、SCANイネーブルとの組み合わせとにより、キャプチャサイクル時にのみ、制御スイッチのON/OFFを切り替えることができる。制御スイッチの切り替えにより、図10に示されるSCANクロックゲート回路が動作し、SCANクロックをON/OFFすることができる。

0078

図14に示される「制御スイッチ(A)」は、1度目のキャプチャ時は、「シフトでONをセット」されているため、SCANクロックAは停止されない。2度目のキャプチャ時は、「シフトでOFFをセット」されているため、SCANクロックAは停止される。3度目のキャプチャ時は、「シフトでONをセット」されているため、SCANクロックAは停止されない。

0079

図14に示される「制御スイッチ(B)」は、1度目のキャプチャ時は、「シフトでONをセット」されているため、SCANクロックBは停止されない。2度目のキャプチャ時は、「シフトでONをセット」されているため、SCANクロックBは停止されない。3度目のキャプチャ時は、「シフトでOFFをセット」されているため、SCANクロックBは停止される。

0080

図15は、本発明の実施の形態におけるSCANクロックの制御組み合わせ数について説明するための図である。本発明の実施の形態におけるATPGが、考慮するSCANクロックの制御組み合わせ数について、以下説明する。

0081

クロックドメインが4つである場合、クロックドメインA、B、C、Dのフリップフロップが、すべてのクロックドメインのフリップフロップと送受信するとした場合、SCANクロックの制御方法は全部で、16通りある。このうち、制御スイッチを全OFFする場合を除外すると、15通りとなる。

0082

クロックドメインが5つである場合、クロックドメインA、B、C、D、Eのフリップフロップが、すべてのクロックドメインのフリップフロップと送受信するとした場合、SCANクロックの制御方法は全部で、32通りある。このうち、制御スイッチを全部Fする場合を除外すると、31通りとなる。

0083

上記のように、SCANクロック制御の最大の組み合わせ数は、2のべき乗−1で求められる。すなわち、
有効な組み合わせ総数=2n−1
n:SCANクロックを1本化したクロックドメインの数
全くテストできないクロック全OFFの組み合わせのひとつを引いている。

0084

また、図15に示されるクロックドメインの数がnのとき、SCANクロックをONにする数をkとした場合の、SCANクロックの制御方法の組み合わせ数について、以下の式で求められる。
組み合わせ数=nCk
n:SCANクロックを1本化したクロックドメインの数
k:n個の制御スイッチをONする数
上述のように、通常のスキャンテストにおいては、全てのSCANクロックのスキューをできるだけ合わせ、さらにクロックドメイン同士のキャプチャサイクルでの送受信の際にはホールドタイミングを満足するように、遅延バッファ挿入を行うと、全てのクロックドメイン間のテストをキャプチャ1サイクルでテストできる1パターンが生成可能であるが、現実的には先述のように問題がある。

0085

一方、本発明の実施の形態における実施例1では、ATPGによってテストパターン増加を抑制して最適化されたテストパターンを生成し、さらに異なるクロックドメイン間でのキャプチャサイクルの送受信の際にはホールドタイミングエラーを回避するようにSCANクロック制御を行うため、SCANクロックに対するスキュー調整と遅延バッファ挿入が不要になる。

0086

また、ブロードサイド方式又はスキュードロード方式等のマルチキャプチャーサイクルを用いずに、複数のSCANクロックを用いた場合のケースと同様の高い検出率のテストパターンを最適なサイクル数で短時間に導き出すことができる。

0087

上述のようなSCANクロックON/OFFと当該SCANクロックの制御において、ホールドタイミングエラーを回避するように、段階的に制御スイッチ切り替え形態を変更すれば、複数のクロックドメインのSCANクロックを1本化した場合のスキュー差やOCV係数増大による悲観性マージン不足を来すことがなく、SCANテストモードにおけるホールドタイミングを満足させるための遅延バッファ追加の作業が不要になる等、効率的な開発工数を実現することができる。また、このような追加の遅延バッファが不要なホールドタイミングエラーの回避方法によれば、開発コスト(期間短縮)とデバイスコスト(チップサイズ縮小)を抑制でき、回路規模の低減による半導体集積回路の品質向上(歩留り消費電力又はテストコスト)に寄与することができる。

0088

すなわち、スキャンテストモードにおいて、半導体プロセスの微細化が進んだ場合であっても、異クロック間のデータホールドタイミングエラー修正の作業及びバッファの追加とを不要とし、テストパターンの追加を微量に留めて、故障検出率を下げないようなスキャンテストを実行することができる。

0089

図16は、本発明の実施の形態における複数のハードマクロを持つ半導体集積回路の例を示す図である。図16又は図17に示される半導体集積回路に係る設計を、実施例2とする。図16中の太枠で示される「Top」、「A」、「B」、「D」等は、DFT回路挿入時に挿入されたSCANテストパターン圧縮器である。

0090

半導体プロセスの微細化が進むと、アナログ回路PLL(phase locked loop)、AD/DAコンバータ(Analog Digital/Digital Analog Converter)、DDRSDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)、PCIExpress(登録商標)等)を持つハードマクロ、又は、ハードマクロ化されたIP(intellectual property、設計資産)を半導体集積回路に搭載するケースが増えてきた。

0091

これは工期短縮又は開発費用を抑える(過去の設計資産を流用したり、他社からIPを購入したりする)理由の他に、半導体プロセスの微細化が進んで大規模な半導体集積回路の開発が可能になるにつれて、EDAツールを実行させた時に使用するCPUの数や占有率、メモリの消費量、ツールの実行時間が増大し、設計環境圧迫しつつあるという問題が背景にある。

0092

よって、最近の大規模な半導体集積回路では、機能別に半導体集積回路を分割し、ハードマクロ化して、各々のハードマクロでDFT回路挿入、レイアウト、STA、ATPGを行う場合がある。

0093

しかしながら、デジタル回路を持ち、ATPGを個別に実施した殆どのハードマクロは、DFT回路挿入時にテストパターン圧縮器を設けている場合がある。

0094

これは、ハードマクロ内で、SCANクロックを1本化し、さらにチップトップのランダムロジックで1本化したSCANクロックと更に1本化した場合に、実施例1のような問題が生じるためで、しかもハードマクロは一旦レイアウトまで完了しているので、バッファ追加が出来ず、パターンを大量に追加しても検出率が中々上がらないという問題が背景にある。

0095

図17は、本発明の実施の形態におけるSCANテストパターン圧縮機を1つにまとめた半導体集積回路の例を示す図である。

0096

図17で示されるように、本発明の実施の形態における実施例2を用いると、内部のSCANクロックを個別に動作・停止させることができるため、チップ全体で1つのテストパターン圧縮器に集約することができる。したがって、各ハードマクロにおいてホールドバッファ追加とテストパターン圧縮器が不要になり、チップ全体で1つのテストパターン圧縮器によるテストが可能になるため、従来ハードマクロごとにパターン圧縮器を配置して、個別にATPGを実施していた不便さを解消し、更なる回路規模の削減とテストパターン又はテスト時間の削減が可能である。

0097

図18は、本発明の実施の形態における半導体設計支援装置の機能構成例を示す図である。図18に示されるように、半導体設計支援装置10は、表示部11、操作部12、DFT回路挿入部13、レイアウト部14、スキャンテスト部15及びテストパターン生成部16を有する。表示部11は、半導体設計支援装置10を使用するユーザに、設計情報を表示する。操作部12は、当該ユーザからの入出力受け付ける。DFT回路挿入部13は、図6に示されるDFT回路挿入に係る設計フローを実行する機能部である。レイアウト部14は、図6に示されるレイアウト及びECOレイアウトに係る設計フローを実行する機能部である。スキャンテスト部15は、図6に示されるSCANテスト及びSTAに係る設計フローを実行する機能部である。テストパターン生成部16は、図6に示されるSCANATPGに係る設計フローを実行する機能部である。

0098

半導体設計支援装置10のハードウェアは、汎用コンピュータにより構成されてもよいし、半導体集積回路の設計専用端末により構成されてもよい。なお、本発明の実施の形態において、上述したような半導体集積回路の設計は、半導体設計支援装置10にインストールされたプログラムによって実行されてもよい。

0099

なお、本発明の実施の形態において、スキャンテスト部15は、テスト部の一例である。テストパターン生成部16は、生成部の一例である。レイアウト部14は、配置部の一例である。

0100

以上、本発明の実施形態又は実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。

0101

10半導体設計支援装置
11 表示部
12 操作部
13DFT回路挿入部
14レイアウト部
15スキャンテスト部
16テストパターン生成部

先行技術

0102

特開2015−028424号公報

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

  • 濱脇久の「 デザイン提供システム」が 公開されました。( 2020/10/29)

    【課題】無名なデザイナーと有名なデザイナーとの仕事を受ける機会の格差を減少させることを可能するデザイン提供システムを提供する。【解決手段】デザイン提供システムは、顧客端末、デザイナー端末及び元請け施工... 詳細

  • 三菱重工業株式会社の「 遺伝的アルゴリズムを用いた複合材設計装置、複合材設計方法、及び複合材設計プログラム」が 公開されました。( 2020/10/29)

    【課題】自動的により適切な積層順を設計することのできる遺伝的アルゴリズムを用いた複合材設計装置、複合材設計方法、及び複合材設計プログラムを提供することを目的とする。【解決手段】遺伝的アルゴリズムを用い... 詳細

  • 富士電機株式会社の「 半導体装置」が 公開されました。( 2020/10/29)

    【課題】メイン半導体素子と同一の半導体基板に電流センス部を備えた半導体装置であって、寄生ダイオードの逆回復耐量を向上させることができる半導体装置を提供すること。【解決手段】電流センス部12の単位セルは... 詳細

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ