DFTフットプリントの削減:コンシューマー向けSoCのケース

目次

DFTフットプリントの削減:コンシューマー向けSoCのケース

今日、1つのチップ上に複数のIPを配置することは、システム・オン・チップASICの仕様要件を満たす上で最も重要な役割を果たしている。ほとんどの場合、これらの異なるIPは異なるクロック・ドメインを持ちます。

このシナリオでは、スキャンI/Oポートの制限があるため、精巧な設計ではスキャンチェーンのバランスを取るためにマルチクロックドメインの使用が不可欠になっています。主にDFTでは、同じチェーンに異なるクロックが混在することは避けますが、I/Oポートに制約がある場合は、1つのチェーンに2つの異なるクロックで駆動されるスキャン・フロップをつなぎ合わせる必要があります。しかし、このようなシナリオは、ホールド違反や、クロック・ドメイン間の故障をカバーするための遷移遅延故障のパターン生成といった課題を招くことになる。

ケーススタディのダウンロード

ネットワーク用高速ギガビット・イーサネット・コントローラのテスト容易化設計

今すぐダウンロード

本稿では、複数のクロック・ドメインを持つSoCデバイスのためのロックアップ・ラッチと遅延テストのコンセプトを紹介する。高価なテスト装置を避けるため、SoCには高速オンチップ・クロック生成回路が実装されている。また、ATEでクロッキングを行う場合、高速クロックジェネレータが必要となる。通常、このような高速クロック・ジェネレーターは低価格のATEでは利用できない。

DFTの課題

次に、マルチクロック・ドメイン設計におけるDFTの課題について説明しよう。同じスキャン・チェーンでクロックを混在させると、次のようなことが起こります:

  • ホールド違反
  • 移行遅延中のカバレッジ低下-ATPG(自動テストパターン生成器)

この2つの課題を簡単に理解しよう:

1) ホールド時間違反

ホールド・タイム:クロック・エッジ到着後、データが安定していなければならない最小の時間を「ホールド・タイム」と呼ぶ。つまり、クロック・エッジ到着後、データが正しく取り込まれるように、ある程度の時間データが安定している必要がある。これに違反すると、誤ったデータがラッチされる可能性があり、これをホールド違反という。

現在のクロックエッジで捕捉されるべきデータは他のフリップフロップによって前のクロックエッジで立ち上げられたことが分かっており、現在のクロックエッジで立ち上げられたデータは次のクロックエッジで捕捉されなければならない。ホールド タイムは、現在のクロック エッジで立ち上げられたデータが現在のクロック エッジでキャプチャされないようにし、前のクロック エッジで立ち上げられたデータがキャプチャされ、現在のエッジで立ち上げられたデータによって妨害されないようにします。ホールド・タイムは、デザインの現在の状態が乱されないようにする。

2) トランジションディレイ時のカバレッジ低下-ATPG(自動テストパターンジェネレーター)

SoCデバイスは複数の機能クロックドメインを実装している。アットスピード・テストでは、すべてのクロック・ドメインをそれぞれの機能速度でテストしなければならない。このような場合、マルチクロックドメイン遅延テストのために、テストは1つのクロックドメインで次々に行われることが解決策となる。

一般的に、このようなクロック・ドメイン間のロジックは未テストのままとなり、パターン数の増加やカバレッジの低下というペナルティが生じます。テスト中に高いフォルト・カバレッジを達成することは、複数のクロック・ドメインを持つ設計におけるDFTの最大の課題の1つです。

DFTの課題を解決するアプローチ

1) ホールド違反の克服

ホールド違反を克服するために、以下のシナリオを考えてみよう:

すべてのスキャン・セルが同時にクロック・エッジを受信すれば、タイミング違反は発生しない。しかし、クロック・ドメインのレイテンシが原因で異なるクロック・ドメインが使用されると、ホールド違反が発生する可能性がある。

2つの異なるクロックで駆動される2つのスキャン・フロップの例を考えてみよう。

図1:2つの異なるクロックで駆動されるフロップ
図1:2つの異なるクロックで駆動されるフロップ

FF2のCLK2波形が遅延すると、FF2が前サイクルのデータではなく現サイクルのデータを誤って取り込むホールド違反が発生する可能性がある。図2は、リーディング・エッジ・スキャン・セルにおけるこのホールド違反を示している。

 図2:2つの異なるクロックでフロップを駆動した場合の波形
図2:2つの異なるクロックでフロップを駆動した場合の波形

ロックアップ・ラッチは、スキューされたクロック・エッジを使ってデータを取り込むスキャン・セルのホールド違反を防ぐ。これは、2つのスキャン・セルの間に挿入され、前のスキャン・セルのクロックの反転によってクロックされるラッチ・セルである。図3は、同じ2つのスキャン・セルにロックアップ・ラッチを追加したものである。

図3:ロックアップ・ラッチの挿入
図3:ロックアップ・ラッチの挿入

ロックアップ・ラッチ・セルは、現在のサイクルのスキャン・データがキャプチャされる間、前のサイクルのスキャン・データを保持することで動作し、出力データの遷移をソース・クロックの次のエッジまで効果的に遅らせる。図4は、この例のロックアップ・タイミングの動作を示している。

図4:ロックアップ・ラッチを挿入した波形
図4:ロックアップ・ラッチを挿入した波形

2) トランジションディレイ時のカバレッジ低下-ATPG(自動テストパターンジェネレーター)

この問題を解決するのが「同期OCC」テクニックだ。さらに深く掘り下げてみよう。

同期オンチップ・クロック生成技術は、テスト・ベクタ数を減らし、テスト品質を向上させることを意図している。同期OCC は、OCC を通過する各同期 ク ロ ッ ク ド メ イ ン間で ク ロ ッ ク パルスを生成す る こ と がで き( ド メ イ ンご と に1 パルス) 、 ク ロ ッ ク ド メ イ ン間の故障を カ バーで き ます。OCC シフ ト チェーンのビ ッ ト 値は、 各 ク ロ ッ ク ド メ イ ンの タ ーゲ ッ ト ク ロ ッ ク パルス( 発進お よ びキ ャ プチ ャ) を生成す る ために使用 さ れます。

下の図5は、同期OCCが遷移遅延故障モデルのパターンを生成するために2つの異なるクロックを同期させるシナリオを示している。

図5:同期OCCの役割
図5:同期OCCの役割

launch_en[1:0]は capture_en[1:0]と同様に2つの異なる OCC からの発射ビットを示す。shiftenに定数1の値を加えることで、発射ビットと捕獲ビットに基づいたパルス整形回路から発射パルスと捕獲パルスを得ることができる。

DFTツール - DAeRT : Dft自動実行・報告ツール

DAeRTは、ASICデザインのテスト容易性を〜100%達成することを可能にします。IJTAG/JTAG、MBIST、スキャン、ATPG、パターン・バリデーション、テスト・タイミング解析、ポストSiバリデーションに始まる様々なDFT手法をサポートしています。

もっと知る

シンクOCCの仕組み

基本的に、Sync OCCは、図6に示すように、キャプチャ動作中に2つの異なるクロック・ドメインから発進パルスとキャプチャ・パルスを生成するために使用される。

図6:同期OCCの構造
図6:同期OCCの構造

詳しく見てみよう:

  • TDF_MODE と DFT_MODE に値 1 を適用する。これで clk_sel は SCAN_EN に依存するようになります。つまり、SCAN_EN=1(シフト動作)の場合はSCAN_CLKが選択され、SCAN_EN=0(キャプチャ動作)の場合はfunc_clkが選択されます。
  • ここで、SCAN_EN=0でキャプチャ動作を行うと考える。SCAN_CLKの2クロック後に同期回路が駆動される。
  • ここで Launch_pulse_en[0]と Capture_pulse_en[0]は OCC-1 に関連し、Launch_pulse_en[1]と Capture_pulse_en[1]は OCC-2 に関連する。
  • 同期回路は、波形整形回路の出力が2機能クロック・サイクルの間1となるようにLaunch_pulse_en[0]とCapture_pulse_en[1]に1を生成する。
  • SCAN_EN=0、TDF_MODE=1、DFT_MODE=1であるため、OCC_clk_outputには発射パルスと捕獲パルスが出力される。

図7の波形をご確認ください。

図7:同期OCCによる波形
図7:同期OCCによる波形

ATPGセットアップ

1.同期 OCC の書き込みクロッキング手順

71 個の OCC を持つデザインを考える。この場合、OCCシフト・チェーンには142(71*2)個のフリップフロップが含まれる。この場合のクロッキング手順は次のようになる:

同期OCCの書き込みクロック手順

この例では、CLKIRは142ビットである。これを1に設定することで、それぞれのOCCから発進パルスと捕捉パルスを得ることができる。

CLKIRシーケンスに基づき、E_OCCから発射パルスを、C_OCCから捕獲パルスを得ることができる。

2.TMAXスクリプトに以下のコマンドを追加する。

TMAXスクリプトに以下のコマンドを追加する。

結論

異なるクロック・ドメインで機能する複数のIPを持つ次世代ASIC SoCでは、オンチップ・クロック生成回路が重要な役割を果たす。本稿で説明する手法は、最小限のパターン数でフォールト・カバレッジを向上させるのに役立つ。また、起動とキャプチャパルス間の1サイクル遅延を確認できるため、オンホールド違反のチェックにも役立ちます。

DFTのエンゲージメントモデルで次世代SoCを構築する

連絡先

著者紹介

ラメッシュ・デヴァーニ、マヤンク・カパディヤ、ピユシュ・チャニヤラ、クシャリー・ドゥダガラ

提供先デザイン&リユース・ドットコム

もっと見る

専門家に相談 する

ニュースレターの購読
ニュースレター
最新情報をお届けします!ニュースレターにご登録いただき、最新のテクノロジーとイノベーションの動向をご確認ください。

レポートダウンロード

サンプルレポートのダウンロード

カタログダウンロード

今すぐ会話を始めよう

自動車ソリューションのエキスパートによる30分間のコンサルテーションをご予約ください。

今すぐ会話を始めよう

バッテリー管理ソリューションのエキスパートによる30分のコンサルテーションをご予約ください。

今すぐ会話を始めよう

産業・エネルギーソリューションのエキスパートによる30分間のコンサルテーションをご予約ください。

今すぐ会話を始めよう

自動車業界のエキスパートによる30分間のコンサルテーションをご予約ください。

今すぐ会話を始めよう

専門家による30分間のコンサルテーションをご予約ください。

以下の詳細をご記入の上、サンプルレポートをご請求ください。

リファレンス・デザイン

私たちの仕事

イノベーション

変身する。

スケール

パートナーシップ

デバイス・パートナーシップ
デジタル・パートナーシップ
質の高いパートナーシップ
シリコン・パートナーシップ

会社概要

製品とIP

プライバシーポリシー

当社のウェブサイトは、お客様の利便性を向上させ、当社のサイトを改善するために、お客様のデバイスにクッキーを配置します。当社が使用するクッキーとその無効化方法については、こちらをご覧ください。クッキーとトラッキング技術は、マーケティング目的で使用されることがあります。

同意する」をクリックすると、お客様のデバイスにクッキーが配置されること、および当社がトラッキング技術を使用することに同意したことになります。クッキーおよびトラッキング技術の無効化に関する詳細および手順については、以下の「続きを読む」をクリックしてください。Cookieおよびトラッキング技術の受け入れは任意ですが、これらを無効にするとウェブサイトが正しく機能しなくなったり、特定の広告がお客様にとって適切でなくなる可能性があります。
当社はお客様のプライバシーを尊重します。プライバシーポリシーをお読みください。