JP6309358B2 - 遅延時間の計測方法および遅延時間計測装置 - Google Patents
遅延時間の計測方法および遅延時間計測装置 Download PDFInfo
- Publication number
- JP6309358B2 JP6309358B2 JP2014120117A JP2014120117A JP6309358B2 JP 6309358 B2 JP6309358 B2 JP 6309358B2 JP 2014120117 A JP2014120117 A JP 2014120117A JP 2014120117 A JP2014120117 A JP 2014120117A JP 6309358 B2 JP6309358 B2 JP 6309358B2
- Authority
- JP
- Japan
- Prior art keywords
- delay
- circuit
- signal
- delay time
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
Description
よって、高精度に且つ簡易、低コストで、回路の遅延時間を評価することは、半導体・回路の設計、テスト、評価、品質において重要である。
図14において、回路の遅延時間を測定したりテストする(故障の有無を調べる)ことを考える。遅延計測やテストを行う対象の順序回路01において、演算や論理機能を実現する組合せ回路02に対して、状態を保持(記憶)するフリップフロップ(FF)03がある。この構成では、通常、FF03には、外部から直接、値を設定したり、またFF03の値を直接取り出したりすることができないためにテストを困難にしている。また、FF03はクロック信号に同期して動作するため、順序回路01全体がクロック信号に同期して動作することとなり、組合せ回路02の遅延時間を計測することもできない。
しかしながら、組合せ回路02の遅延時間のテストを行う場合は、組合せ回路02に入力した信号と、出力された信号との遅延時間、すなわち、回路02への入力に対する回路02の出力までの時間を測定することでテスト(遅延時間の計測)が可能である。そのために、外部から、FF03への値の設定とその取り出しをできるようにし、テストの実行時のみ、順序回路を組合せ回路として動作できるようにしたものとして、スキャン設計された回路が知られている。
図15において、スキャン設計された回路01において、テスト対象回路02(より正確にはテスト対象経路)の遅延テスト(遅延故障を検出するテスト)を実施する場合、まずはじめにスキャンインフリップフロップ(スキャンインFF)03aにテスト用の入力値を設定した後にクロック(Launchクロック)を与えて、入力値をテスト対象回路02に印加する。その後、テスト対象回路02の出力値をCaptureクロックのタイミングでスキャンアウトFF03bで取り込む。なお、図15の等価回路の図では、信号の流れを理解しやすくするために、図14のFF03を、スキャンインFF03aとスキャンアウトFF03bとみなして図示している。
この時、スキャンアウトFF03bの値が期待値(正しい出力値)であれば、テスト対象回路02の遅延時間tpdは、クロック周期T(capture時刻〜launch時刻)より小さいので(tpd<T)、正常であると判断される。
図16はクロック信号の発生タイミングを可変にする回路の一例である。
図15に示す手法に類似する手法として、スキャンインFF03aへの供給クロック信号のlaunchクロックの発生タイミングを可変にして(captureのタイミングは一定)、テスト時のクロック周期を通常動作より早めてテストする手法もある。なお、この方法では、回路01全体のシステムクロックを可変にするのではなく、テスト時にlaunchクロックの発生タイミングだけを可変にする。
launchクロックの発生タイミングを可変にする方法としては、図16に示すように、マルチプレクサ011の入力側の一方に遅延時間Δtのバッファ(遅延素子)012を接続し、他方には何も接続しない構成の組を、直列に接続した可変クロック発生回路013を使用する方法が考えられる。この可変クロック発生回路013では、各マルチプレクサ011を制御して、クロック信号が通過するバッファ012の個数を設定することで、Δt刻みでクロックの発生タイミングを設定可能である。
なお、可変クロックの発生方法は、図16に例示した構成だけでなく、例えば、ODCS(on die clock shrink)などいくつかの方法が提案されている。
図16のようなlaunchクロックの発生タイミングを遅らせて遅延テストを行う場合、図15におけるスキャンインFF03aのクロック信号に可変クロック発生回路013の出力側が接続される。図15のテスト対象回路02において、テスト対象の経路Pに対して、launchクロックをn×Δt(nは正の整数)まで変化させた時は、図17Aに示すようにスキャンアウトFF03bの出力値は期待値であり(遅延テストをパス)、launchクロックを(n+1)×Δtまで変化させた時に、図17Bに示すようにスキャンアウトFF03bの値が期待値とは異なっていた(遅延テストをフェイル)とする。
T−(n+1)×Δt<tpd(P)<T−n×Δt …式(01)
したがって、経路Pのタイミングマージン(周期Tに対する遅延時間の余裕)は、n×Δtであることがわかる。
なお、このように、可変クロック発生回路を使用して、遅延テストを行う技術として、例えば、特許文献1(国際公開2011/115038号公報)が知られている。
図15〜図17に示す従来技術と類似する手法として、スキャンアウトFF03bへの供給クロック信号のcaptureクロックの発生タイミングを可変にして(launchクロックのタイミングは一定)、テスト時のクロック周期を通常動作よりも早めてテストする技術も存在する。
なお、captureクロックの発生タイミングを可変にする技術でも、図16、図17に示すlaunchクロックの発生タイミングを可変にする従来技術と、遅延時間(n×Δt)の計測の方法は同様である。
また、captureクロックの発生タイミングを可変にする技術としては、例えば、非特許文献1が知られている。
前述のlaunchクロックやcaptureクロックのタイミングを変化させる従来技術では、クロック信号の発生タイミングを変化させるので、クロック信号線上に付加回路を挿入する必要がある。このため、遅延テストを行っていない通常の動作時に、フリップフロップへのクロック信号の供給タイミングが遅延する等の悪影響を与え、クロック信号が安定してフリップフロップに供給されない恐れがある。したがって、フリップフロップの挙動が安定せず、回路全体が不安定になる恐れもある。特に、フリップフロップは、回路によっては、数千個の単位で設けられており、クロック信号が安定して供給されないと、問題が大きくなりやすく、好ましくない。
また、この方法はスキャン設計された集積回路だけを対象としており、非スキャン設計回路や集積回路以外の電気回路、電子回路、ボード回路などへの適用は困難である。
また、本発明は、回路の動作を安定させつつ遅延時間を計測することを第2の技術的課題とする。
入力されたデータに基づいてデータ処理を行う組合せ回路と、
前記組合せ回路の入力側に接続され、一定の周期信号として入力されるクロック信号に基づいてデータの取込みとその保持が可能な第1のフリップフロップであって、前記組合せ回路における遅延時間の測定を行う場合に、予め設定されたテスト用の信号が入力される前記第1のフリップフロップと、
前記組合せ回路の出力側に接続され、且つ、前記組合せ回路から出力された信号を遅延させる遅延部であって、前記遅延部における信号の遅延量を制御可能な前記遅延部と、
前記遅延部の出力側に接続され、前記クロック信号に基づいてデータの取込みと保持が可能な第2のフリップフロップであって、前記組合せ回路における遅延時間の測定を行う場合に、前記遅延部を通過したテスト用の信号が出力される前記第2のフリップフロップと、
前記第2のフリップフロップから出力された信号が、予め設定された期待値でなくなった場合の前記遅延時間に基づいて、前記組合せ回路の遅延時間を測定する測定手段と、
を備えたことを特徴とする。
組合せ回路の入力側に、一定の周期信号として入力されるクロック信号に基づいてデータの取り込みとその保持が可能な第1のフリップフロップを接続し、
前記組合せ回路の出力側に、前記組合せ回路から出力された信号を遅延させる遅延部を接続し、
前記遅延部の出力側に、前記クロック信号に基づいてデータの取り込みとその保持が可能な第2のフリップフロップを接続し、
前記第1のフリップフロップからテスト用の信号を入力して、
前記組合せ回路でデータ処理がされた後に、前記遅延部で遅延され、前記第2のフリップフロップから出力された信号が、予め設定された期待値でなくなった場合の前記遅延部における前記遅延量に基づいて、前記組合せ回路の遅延時間を測定する
ことを特徴とする。
なお、以下の図面を使用した説明において、理解の容易のために説明に必要な部材以外の図示は適宜省略されている。
図1において、本発明の実施例1の遅延時間計測装置1は、制御装置の一例としてのテスタ2を有する。テスタ2は、本体2aと、表示部の一例としてのディスプレイ2bと、テストヘッド11と、図示しない入力ボタン等と、を有する。テストヘッド11には、計測対象物の一例としてのシステムLSI基板12が装着されている。テスタ2の本体2aは、システムLSI基板12に電源を供給する電源装置や、システムLSI基板12に信号を入力する回路、システムLSI基板12からの出力信号を取得する測定装置、パルスを発生させるパルスジェネレータ、各信号の入力や出力のタイミングを生成するタイミング発生器、各種プログラムが記憶されたメモリや演算装置(CPU等)等を有する。
図2において、実施例1のシステムLSI基板12の内部には、複数の回路ブロックがあり,そのブロックは組合せ回路21を有している。各組合せ回路21は、入力されるデータに基づいてデータ処理を行うデータ処理部の一例としての回路本体21aと、データが入力される入力部の一例としての入力端子21b,21cと、データが出力される出力部の一例としての出力端子21d,21eとを有する。
入力端子の一方(21b)は、組合せ回路21への外部入力であり、出力端子の一方(21d)も、組合せ回路21の外部出力である。
なお、フリップフロップ31は、図2では、理解の容易のために1つのみを代表して示しているが、実際は、組合せ回路21の処理に応じてデータを保持する必要のある数だけ、フリップフロップ31が設けられている。すなわち、フリップフロップ31は複数設けられている。フリップフロップ31には、データを保持、更新する時期を制御するためのクロック信号が入力される。
遅延回路32の出力側は、切替素子の一例としてのマルチプレクサ33の一方の入力端子に入力されている。マルチプレクサ33の他方の入力端子には、テスタ2からテスト用の信号(スキャンイン、Cin)が入力可能に構成されている。また、マルチプレクサ33には、テスタ2から切り替え用の制御信号も入力可能に構成されている。
マルチプレクサ33の出力側は、フリップフロップ31の入力側に接続されている。また、実施例1のフリップフロップ31は、テスタ2に対してテスト用の信号(スキャンアウト、Cout)が出力可能に構成されている。
図2、図3において、図2の回路図において、マルチプレクサ33での切り替えをわかりやすくした等価回路が図3に示す回路図となる。すなわち、テスト用の信号(Cin)がマルチプレクサ33を通過して入力される状態のフリップフロップ31を第1のフリップフロップの一例としてのスキャンインFF31aとみなすことができ、遅延回路32を通過した信号(Dout)がマルチプレクサ33を通過して入力される状態のフリップフロップ31を第2のフリップフロップの一例としてのスキャンアウトFF31bとみなすことができる。
図4Aにおいて、実施例1の遅延回路32は、切替素子の一例としてのマルチプレクサ41を有する。マルチプレクサ41には、複数の入力部42が設けられている。実施例1のマルチプレクサ41は、入力信号が直接接続される入力部42−0や、遅延素子の一例としてのバッファ43が1つ挿入されてバッファ43を1つ通過した入力信号が入力される入力部42−1、バッファ42が2つ挿入された入力部42−2、…、バッファ43がn個(nは正の整数)挿入された入力部42−n、を有する。なお、実施例1では、各バッファ43は全て共通の構成をしており、1つのバッファ43を通過した信号は、遅延量の一例としての時間Δtだけ遅延するものが使用される。したがって、n個のバッファ43を通過した場合、遅延量(遅延時間)はn×Δtとなる。なお、整数nは、一例として、回路本体21aにおいて故障がない状況における最大の遅延時間に対応する値が設定されているが、測定したい遅延時間の範囲や許容される遅延時間の範囲等、設計や仕様に応じて適宜変更可能である。
なお、テスタ2から遅延回路32に入力される制御信号は、マルチプレクサ41に入力され、どの入力部42−0〜42−nから入力された信号を出力するかが制御される。
図2において、実施例1のテスタ2は、外部との信号の入出力および入出力信号レベルの調節等を行うI/O(入出力インターフェース)、必要な起動処理を行うためのプログラムおよびデータ等が記憶されたROM(リードオンリーメモリ)、必要なデータ及びプログラムを一時的に記憶するためのRAM(ランダムアクセスメモリ)、ROM等に記憶された起動プログラムに応じた処理を行うCPU(中央演算処理装置)ならびにクロック発振器等を有するコンピュータ装置により構成されており、前記ROM及びRAM等に記憶されたプログラムを実行することにより種々の機能を実現することができる。
前記本体2aには、基本動作を制御する基本ソフト、いわゆる、オペレーティングシステムOS、アプリケーションプログラムとしての遅延時間計測プログラムAP1、その他の図示しないソフトウェアが記憶されている。
本体2aは、システムLSI基板12のフリップフロップ31からの出力信号(スキャンアウト、Cout)等の信号出力要素からの出力信号が入力されている。
実施例1のテスタ2の本体2aは、下記の機能手段(プログラムモジュール)を有する。
C1:テスト信号入力手段
テスト信号入力手段C1は、組合せ回路21における遅延時間の測定を行う場合に、予め設定されたテスト用の信号の一例としてのスキャンインの信号(Cin)を入力する。すなわち、実施例1のテスト信号入力手段C1は、図3に示す等価回路において、スキャンインFF31aにスキャンイン信号Cinを入力する。実施例1のスキャンインの信号は、テスト対象の回路本体21aにおいて、一般には最も時間がかかる処理(経路Pの処理)、すなわち、時間的なマージン(余裕)が最も少なく、遅延時間が最も厳しい処理が行われる信号(テストパターン)が使用されるが、適切なテストパターンを入力することで任意の経路の遅延時間を計測できる。なお、実施例1では、テストパターンとして、従来公知の通常のスキャンテストで使用される遅延故障テスト用の入力値を使用しているが、これに限定されず、遅延時間計測用の専用の信号を使用することも可能である。なお、実施例1では、スキャンインの信号は、マルチプレクサ33の他方の入力端子に入力される。
切替制御手段C2は、マルチプレクサ33を介して、フリップフロップ31に入力される信号の切り替えを制御する。実施例1では、マルチプレクサ33は、通常時は、遅延回路32からの信号がフリップフロップ31に入力されるように設定されており、スキャンインの信号が入力される場合に、切替制御手段C2は、マルチプレクサ33からスキャンインの信号がフリップフロップ31に入力されるように切り替え、スキャンインの信号が入力されると、遅延回路32からの信号がフリップフロップ31に入力されるように切り替える。
遅延量制御手段C3は、遅延回路32のマルチプレクサ41を介して、遅延回路32に入力された信号に対する出力される信号の遅延量を制御する。実施例1では、マルチプレクサ41は、遅延テストが行われない通常時は、入力信号が直接接続される入力部42−0に接続されており、遅延テストが開始された場合、遅延量制御手段C3は、入力部42−1から、順に、挿入されたバッファ42が多い入力部42−2〜42−nに順次切り替える。なお、実施例1の遅延量制御手段C3は、スキャンインの信号が入力される度に入力部42−1〜42−nを1つずつ切り替える。
テストパス判定手段C4は、フリップフロップ31から出力された信号、すなわち、スキャンアウトFF31bから出力された信号(スキャンアウト信号Cout)に基づいて、遅延テストに合格したか否かを判定する。実施例1のテストパス判定手段C4は、スキャンアウトの信号が、予め設定された期待値の一例としての「1」である場合に、遅延テストに合格(パス)したと判定し、スキャンアウトの信号が「0」の場合に、遅延テストに不合格(フェイル)したと判定する。すなわち、クロック信号(capture)に応じて、スキャンアウトFFがデータを保持するタイミングにおける遅延回路32からの信号Doutが、「0」であるか「1」であるかを判定する。
遅延時間計測手段C5は、テストパス判定手段C4が遅延テストに不合格と判定された場合の遅延量に基づいて、回路本体21aの遅延時間を測定する。なお、実施例1の遅延時間計測手段C5は、テストパス判定手段C4が不合格と判定すると、遅延時間の計測処理を終了させて、テスト信号入力手段C1によるテスト信号の入力や遅延量制御手段C3による切り替え等を終了させる。なお、遅延量が用意されている最大の遅延量n×Δtでも遅延テストをパスした場合には、遅延時間を「n×Δt以上」として出力する。また、実施例1の遅延時間計測手段C5は、テストをフェイルした時の遅延量(m+1)×Δtと、フェイルする直前にパスした時の遅延量m×Δt(m≦n)と、クロック信号の周期Tと、スキャンインFF31aを信号が通過することに伴う遅延時間t1、遅延回路32のマルチプレクサ41を信号が通過することに伴う遅延時間をt2、スキャンアウトFF31bにおいてデータを取り込むために必要な時間(セットアップ時間)t3、に基づいて、遅延回路32の経路Pの遅延時間tpdを、以下の式(1)を使用して導出する。
T−(m+1)×Δt−t1−t2−t3<tpd<T−m×Δt−t1−t2−t3
…式(1)
すなわち、実施例1の遅延時間計測手段C5は、遅延回路32の遅延時間tpdの範囲を計測結果として、ディスプレイ2bに表示する。なお、遅延時間tpdの範囲を遅延時間の計測結果とする構成に限定されず、例えば、遅延時間tpdの範囲の中間値(=T−(m+1/2)×Δt−t1−t2−t3)を、遅延時間tpdとみなしたり、最初にフェイルした時間(=T−(m+1)×Δt−t1−t2−t3)を、遅延時間tpdとみなして、計測結果とすることも可能である。
次に、実施例1の遅延時間計測装置における制御の流れを流れ図、いわゆるフローチャートを使用して説明する。
図5は実施例1の遅延時間計測処理のフローチャートの説明図である。
図5のフローチャートの各ステップSTの処理は、テスタ2の本体2aに記憶されたプログラムに従って行われる。また、この処理はテスタ2の他の各種処理と並行して実行される。
図5に示すフローチャートは遅延時間計測プログラムAP1の起動により開始される。
ST2において、マルチプレクサ33をスキャンイン側に切り替える。そして、ST3に進む。
ST3において、次の処理(1),(2)を実行して、ST4に進む。
(1)スキャンインの信号をフリップフロップ31に入力する。
(2)マルチプレクサ33を遅延回路32側に切り替える。
ST4において、クロック信号をフリップフロップ31に印加し、ST5に進む。
ST6において、受信したスキャンアウトの信号に基づいて、遅延テストにパスしたか否かを判定する。イエス(Y)の場合、すなわち、テストをパスした場合はST7に進む。ノー(N)の場合、すなわち、テストをフェイルした場合はST9に進む。
ST7において、遅延素子の数mが、最大値n以上であるか否か、すなわち、m≧nであるか否かを判別する。ノー(N)の場合はST8に進み、イエス(Y)の場合はST9に進む。
ST8において、遅延量m×Δtのmを1加算する(m=m+1)。すなわち、マルチプレクサ41を制御して、テストをパスした場合よりもバッファ43が1つ多い側の入力部42−2〜42−nに切り替える。そして、ST2に戻る。
ST9において、テストをフェイルした場合の遅延量m×Δtまたは最大の遅延量n×Δtと、式(1)とに基づいて、遅延時間tpdの計測結果をディスプレイ2bに出力する。そして、遅延時間計測処理を終了する。
前記構成を備えた実施例1の遅延時間計測装置1では、遅延時間の計測が行われない通常の状況では、遅延回路32が、バッファ43の無い入力部42−0に接続されており、遅延のない状況で組合せ回路21での処理や、フリップフロップ31との間でのデータのやりとりが行われる。
図6において、遅延時間の計測が行われる場合、遅延時間の計測対象の組合せ回路21に対応するフリップフロップ31に対して、スキャンインの信号が入力される。フリップフロップ31には、クロック信号が入力されており、ある時刻tのクロックに同期して、フリップフロップ31(スキャンインFF31a)からテストパターンが組合せ回路21に入力される。
この時、クロック周期Tと、挿入された遅延量m×Δt、(m+1)×Δtから、未知数である計測対象経路Pの遅延時間tpd(P)は、以下の式(2),(3)で表すことができる。
tpd(P)+m×Δt<T …式(2)
tpd(P)+(m+1)×Δt>T …式(3)
式(2),式(3)から、以下の式(4)が得られる。
T−(m+1)×Δt<tpd(P)<T−m×Δt …式(4)
なお、入力信号Cinを変えることで、計測対象経路Pを変更することが可能である。よって、クロック周期Tと、挿入された遅延量m×Δt、(m+1)×Δtから任意の経路Pの遅延時間tpd(P)を求めることが可能である。したがって、実施例1では、バッファ43の1つ当たりの遅延量Δtの精度で遅延時間を計測できる。
図7において、実施例1の回路構成では、スキャンインFF31aにクロック信号が入ってからスキャンインFF31aの出力に信号が出力されるまでの伝搬時間が伝搬遅延t1として存在する。また、遅延回路32内のマルチプレクサ41においても伝搬遅延t2が存在する。よって、これらの伝搬遅延t1,t2を考慮すると、式(4)は、式(5)のように書き換えられる。
T−(m+1)×Δt−t1−t2<tpd(P)<T−m×Δt−t1−t2
…式(5)
なお、伝搬遅延t1,t2が十分に小さくて無視できる場合や、遅延時間tpdの測定で要求される精度によっては、式(4)を使用して遅延時間を演算することも可能である。また、遅延回路32の構成が実施例と異なり、マルチプレクサを使用しない場合は、t2=0となる場合もある。
また、図8に示すように、一般に、フリップフロップには、クロック信号が入る前にフリップフロップのデータ入力信号が安定している期間(セットアップ時間)t3と、データを確実に取り込むためにクロック信号が入った後もデータ入力信号が安定している期間(ホールド時間)t4が必要である。よって、スキャンアウトFF31bが、遅延回路32の出力信号Doutの値を取り込むためには、スキャンアウトFF31bのセットアップ時間t3よりも前に、データ信号が到着していなければならない。裏を返せば、スキャンアウトFF31bが遅延回路32の出力Doutを取り込んだのであれば、セットアップ時間t3よりも前に、スキャンアウトFF31bの入力側にデータ信号が到着している。よって、スキャンアウトFF31bのセットアップ時間t3を考慮した場合、式(5)は、前述の式(1)で表現される。
T−(m+1)×Δt−t1−t2−t3<tpd<T−m×Δt−t1−t2−t3
…式(1)
なお、セットアップ時間t3が、他の値(周期Tや遅延量Δt等)に比べて十分小さい場合等では、セットアップ時間t3を無視したり、t3=0とみなして計算することも可能である。
例えば、Δt>t3+t4の場合に、挿入された遅延量m′×Δtで、セットアップ時間t3より遅れてデータ信号が入力された場合、すなわち、信号変化がt3+t4の間に発生した場合を考える。この時、スキャンアウトFF31bが故障値を取り込んだ場合(テストをフェイルした場合)は、遅延計測が終了するので、求める遅延時間tpd(P)は、以下の式(6)となる。
T−m′×Δt−t1−t2−t3
<tpd(P)<T−(m′−1)×Δt−t1−t2−t3 …式(6)
T−(m′+1)×Δt−t1−t2−t3
<tpd(P)<T−m′×Δt−t1−t2−t3 …式(7)
よって、式(6)、式(7)のいずれの場合でも、Δtの精度で遅延時間tpd(P)を計測できる。なお、より精度が要求される場合には、遅延時間の計測を複数回行って、式(6)の発生回数と、式(7)の発生回数から、平均をとって遅延時間tpd(P)とすることも可能である。
T−k×Δt−t1−t2−t3
<tpd(P)<T−(k−1)×Δt−t1−t2−t3 …式(8)
ボード回路等の遅延時間の計測を行う場合には、ボード回路側に備わっていない各素子、すなわち、テストヘッド11側に、スキャンインFF31aと、遅延回路32、スキャンアウトFF31b、図示しないクロック信号の発生回路を設けておき、テストヘッド11にボード回路(図3の組合せ回路21のみに相当)を装着することで、図3の場合と同様にして、ボード回路の遅延時間を計測可能である。他にも、スキャンインFF31a、遅延回路32、スキャンアウトFF31b、クロック発生回路を統合したアダプタを作成しておき、ボード回路等の計測を行う場合には、テストヘッド11とボード回路との間にアダプタを装着してボード回路の遅延時間を計測し、スキャン設計回路の遅延時間の計測を行う場合にはアダプタを使用せずに遅延時間の計測を行うことも可能である。
よって、特許文献1、非特許文献1に記載の技術では、スキャン設計された回路が前提となっているが、実施例1では、スキャン設計されていない回路やフリップフロップを有しない回路といった多様な電気動作の回路の遅延時間を計測可能である。
図10は実施例2のタイミングチャートの説明図であり、図10Aは遅延素子が0個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図10Bは遅延素子がa個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャート、図10Cは遅延素子がb個の場合のクロック信号、組合せ回路への入力信号および出力信号のタイミングチャートである。
次に、本発明の実施例2の説明をするが、この実施例2の説明において、前記実施例1の構成要素に対応する構成要素には同一の符号を付して、その詳細な説明を省略する。
この実施例2は、下記の点で前記実施例1と相違しているが、他の点では前記実施例1と同様に構成されている。
また、図10において、実施例2の遅延時間計測装置1では、クロック信号として、デューティー比(1周期に対する「1」の時間の割合)が1/2のものが使用される。
また、実施例2の遅延時間計測手段C5は、第1観測FF52が設定されている場合に、遅延テストがパスからフェイルになった時の遅延量(m+1)×Δtに基づいて、前記式(1)を使用して遅延時間tpdを導出する。一方、遅延時間計測手段C5は、第2観測FF53が設定されている場合に、遅延テストがパスからフェイルになった時の遅延量(m+1)×Δtに基づいて、以下の式(9)を使用して遅延時間tpdを導出する。
T/2−(m+1)×Δt−t1−t2−t3
<tpd<T/2−m×Δt−t1−t2−t3 …式(9)
なお、時間t1〜t3は、実施例1で詳述したように、十分に小さい場合等では無視可能である。
よって、クロック周期1周期を使用して遅延計測を行う実施例1と異なり、実施例2では、デューティー比が1/2のクロック信号の立ち上がりまたは立ち下がり、すなわち、1/2周期を使用して遅延計測を行っている。
次に、実施例2の遅延時間計測装置における制御の流れを流れ図、いわゆるフローチャートを使用して説明する。
図11は実施例2の遅延時間計測処理のフローチャートの説明図である。
図11の遅延時間計測処理では、実施例1と同様にST1〜ST4を実行して、ST11に進む。
ST11において、第2観測FF53でスキャンアウト信号を受信する。そして、ST12に進む。
ST12において、受信したスキャンアウトの信号に基づいて、遅延テストにパスしたか否かを判定する。イエス(Y)の場合、すなわち、テストをパスした場合はST13に進む。ノー(N)の場合、すなわち、テストをフェイルした場合はST21に進む。
ST13において、遅延量m×Δtのnを1加算する(m=m+1)。すなわち、すなわち、マルチプレクサ41を制御して、テストをパスした場合よりもバッファ43が1つ多い側の入力部42−2〜42−nに切り替える。そして、ST14に進む。
ST15において、次の処理(1),(2)を実行して、ST16に進む。
(1)スキャンインの信号をフリップフロップ31に入力する。
(2)マルチプレクサ33を遅延回路32側に切り替える。
ST16において、クロック信号をフリップフロップ31に印加し、ST17に進む。
ST17において、第2観測FF53でスキャンアウト信号を受信する。そして、ST18に進む。
ST18において、受信したスキャンアウトの信号に基づいて、遅延テストにパスしたか否かを判定する。イエス(Y)の場合、すなわち、テストをパスした場合はST19に進む。ノー(N)の場合、すなわち、テストをフェイルした場合はST20に進む。
ST19において、m≧nであるか否かを判別する。イエス(Y)の場合はST20に進み、ノー(N)の場合はST13に戻る。
ST20において、式(9)に基づいて遅延時間tpdを計測して、ディスプレイ2bに表示する。そして、遅延時間計測処理を終了する。
ST22において、次の処理(1),(2)を実行して、ST23に進む。
(1)スキャンインの信号をフリップフロップ31に入力する。
(2)マルチプレクサ33を遅延回路32側に切り替える。
ST23において、クロック信号をフリップフロップ31に印加し、ST24に進む。
ST24において、第1観測FF52でスキャンアウト信号を受信する。そして、ST6に進む。
ST6において、受信したスキャンアウトの信号に基づいて、遅延テストにパスしたか否かを判定する。イエス(Y)の場合、すなわち、テストをパスした場合はST7に進む。ノー(N)の場合、すなわち、テストをフェイルした場合はST9に進む。
ST7において、m≧nであるか否かを判別する。ノー(N)の場合はST8に進み、イエス(Y)の場合はST9に進む。
ST8において、遅延量m×Δtのnを1加算する(m=m+1)。すなわち、すなわち、マルチプレクサ41を制御して、テストをパスした場合よりもバッファ43が1つ多い側の入力部42−2〜42−nに切り替える。そして、ST21に戻る。
ST9において、テストをフェイルした場合の遅延量m×Δtと、式(1)とに基づいて、遅延時間tpdの計測結果をディスプレイ2bに出力する。そして、遅延時間計測処理を終了する。
前記構成を備えた実施例2の遅延時間計測装置1では、デューティー比が1/2のクロック信号の立ち下がりでデータを取り込む第2観測FF53を有する。すなわち、第1観測FF52は、実施例1と同様に、クロック信号の1周期Tに対応するタイミングで遅延回路32からの信号を取り込むが、第2観測FF53は、クロック信号の半周期T/2に対応するタイミングで遅延回路32からの信号を取り込む。
また、実施例2の遅延時間計測装置1では、実施例1と同様に、スキャン設計された回路に限定されず、多様な電気動作をする任意の回路において、遅延時間を計測することが可能である。
(実施例2の変更例1)
実施例2の遅延時間計測装置1におけるスキャンアウトFF51とは異なる構成のスキャンアウトFF51′を有する。実施例2の変更例1のスキャンアウトFF51′では、第2観測FF53のように立ち下がりでデータを取り込むフリップフロップを使用することに替えて、図12Aに示すように、クロック信号を反転する反転素子61を介して、第1観測FF52と同一の立ち上がりでデータを取り込むフリップフロップを第2観測FF62として使用することで、実施例2と同様の機能を実現可能である。
なお、この場合、反転素子61でクロック信号を反転させるため、その分の遅延時間t5が発生する。したがって、第2観測FF62は、元のクロックの半周期T/2に対して、遅延時間t5だけ遅れてデータを取り込む。よって、図12Aに示す実施例2の変形例1では、式(9)に替えて以下の式(9a)を使用して遅延時間の計測を行うこととなる。
(T/2+t5)−(m+1)×Δt−t1−t2−t3
<tpd<(T/2+t5)−m×Δt−t1−t2−t3 …式(9a)
図12Bにおいて、実施例2の変更例2では、スキャンアウトFF51とは異なる構成のスキャンアウトFF51″を有する。実施例2の変更例2のスキャンアウトFF51″は、立ち上がりでデータを取り込むフリップフロップ66と、フリップフロップ66にクロック信号を入力する経路に配置された切替素子の一例としてのマルチプレクサ67とを有する。マルチプレクサ67は、一方の入力にクロック信号がそのまま入力され、他方の入力に反転素子68を介してクロック信号が反転して入力される。
よって、マルチプレクサ67で、クロック信号をそのままフリップフロップ66に入力した場合は、1周期Tに基づく遅延時間の計測が可能であり、クロック信号を反転して入力した場合は、半周期T/2に基づく遅延時間の計測が可能になる。よって、実施例2の変更例2も、実施例2と同様の機能を実現可能である。
なお、実施例2の変更例2では、半周期T/2での計測時に反転素子68での遅延時間t6が発生するとともに、1周期Tの場合と半周期T/2の場合の両方でマルチプレクサ67による遅延時間t7が発生する。よって、図12Bに示す実施例2の変形例2では、式(1)、式(9)に替えて以下の式(1b)、式(9b)を使用して遅延時間の計測を行うこととなる。
(T+t7)−(m+1)×Δt−t1−t2−t3
<tpd<(T+t7)−m×Δt−t1−t2−t3 …式(1b)
(T/2+t6+t7)−(m+1)×Δt−t1−t2−t3
<tpd<(T/2+t6+t7)−m×Δt−t1−t2−t3 …式(9b)
次に、図12Aに示す実施例2の変更例1の構成を使用して、本発明の効果を確かめる実験を行った。実験は、ブレッドボード上に組合せ回路やFF、遅延回路等のICを差したものを使用した。
フリップフロップ52,62として、株式会社東芝製のTC74HAPを使用した。
組合せ回路21として、株式会社東芝製のTC74HC04AP(インバータ)のチェーン回路(縦続接続回路)を作成した。組合せ回路21では、経路Bとして、インバータ12段のチェーン回路を作成し、経路Cとして、インバータ30段のチェーン回路を作成した。
テスト信号の入力値およびクロック信号は、ファンクションジェネレータから供給した。また、出力値はデジタルオシロスコープで観測した。電圧は5[V]で駆動し、クロック周期Tは200ns(5MHz)に設定した。
経路B,Cについて、各経路の実際の遅延時間を計測したところ、経路Bについては、実測遅延時間tpd(meas)が69.5nsであり、半周期(100ns)よりも短かった。また、経路Cについては、実測遅延時間tpd(meas)が141nsであり、半周期(100ns)よりも長かった。
経路Bは、遅延時間が1/2周期以内であるので、式(9a)を使用して遅延時間を計測した。また、経路Cは、遅延時間が1/2周期異常であるので、式(1)を使用して遅延時間を計測した。
図13Aに実験例で使用した伝搬遅延時間t1〜t3,t5、Δt等のパラメータ値を示す。また、図13Bに、バッファ43の個数と、遅延テストの結果を示す。なお、図13Bには、個々の挿入したバッファ43の遅延量Δtの実測値も示す。
図13Bの実験結果から、経路Bについて、式(9a)を使用して計算すると、以下の式(10)が得られた。
69.0[ns]<tpd(経路B)<76.5[ns] …式(10)
また、経路Cについて、図13Bの結果から、式(1)を使用して計算すると、以下の式(11)が得られた。
139.8[ns]<tpd(経路C)<147.3[ns] …式(11)
よって、経路Bについては、式(10)から実測値69.5nsが範囲内に含まれ、経路Cについても、式(11)から実測値141nsが範囲内に含まれることが確認できた。よって、実験例の構成で、遅延時間の計測が可能であることが確認された。
72.3[ns]<tpd(経路B)<79.8[ns] …式(10a)
143.1[ns]<tpd(経路C)<150.6[ns] …式(11a)
したがって、今回の実験例では、フリップフロップ52,62のセットアップ時間t3が3.3[ns]であり、遅延時間Δt=7.5[ns]に対して、比較的大きな値であることから、セットアップ時間t3を考慮しない式(10a)、式(11a)を用いた計算では、遅延時間が、真値(実測値)よりも大きく推定されている。裏を返せば、セットアップ時間t3が、遅延量Δtに対して十分に小さいフリップフロップを使用する場合には、セットアップ時間t3を考慮しなくても、遅延時間が計測できることもわかる。
T−(m+1)×(Δt+3σ)−t1−t2−t3
<tpd<T−m×(Δt−3σ)−t1−t2−t3 …式(1c)
T/2−(m+1)×(Δt+3σ)−t1−t2−t3
<tpd<T/2−m×(Δt−3σ)−t1−t2−t3 …式(9c)
なお、ここでは、遅延量Δtの標準偏差σに対して、±3σの範囲を考慮した。これは、一般に回路設計の分野ではばらつきを±3σの範囲で考慮しているためである。なお、「平均値±3σ」の範囲には、全データの99.7%が入る。
58.0[ns]<tpd(経路B)<83.8[ns] …式(10b)
119.5[ns]<tpd(経路C)<164.2[ns] …式(11b)
よって、実測値は、式(10b)、式(11b)の範囲に含まれるが、推定精度が下がった(推定範囲が広がった)。これは、実験で使用したΔtのばらつきが大きく、±3σを考慮すると、Δtの変動範囲は、2×Δtとなるためである。しかし、バッファ43を現実に製作する上で、このばらつきは排除できないが、実際の製品を製造する際には、実験例ほど大きな値にならない。よって、Δtのばらつきが十分に小さくなれば、式(1c)、式(9c)を使用しても、十分な推定精度が確保できることも期待できる。
以上、本発明の実施例を詳述したが、本発明は、前記実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内で、種々の変更を行うことが可能である。本発明の変更例(H01)〜(H03)を下記に例示する。
(H01)前記実施例1,2において、各式(1)、式(9)等において、回路の構成に応じて、バッファ43以外に伝搬遅延時間t1〜t7を考慮した式を示したが、これに限定されない。例えば、遅延回路等の構成上、信号の遅延を発生させる素子等を有する場合には、各式に対応する遅延時間の項を追加することも可能である。逆に、無視できる項は省略することも可能である。
(H03)前記実施例1,2において、組合せ回路21として、ボード回路や非スキャン設計の回路等、任意の回路に適用可能である。
21…組合せ回路、
21a…データ処理部、
21b,21c…入力部、
21d,21e…出力部、
31…フリップフロップ、
31a…第1のフリップフロップ、
31b,51,51′,51″…第2のフリップフロップ、
32…遅延部、
C5…測定手段、
m×Δt、(m+1)×Δt…遅延量、
tpd…遅延時間。
Claims (2)
- 入力されたデータに基づいてデータ処理を行う組合せ回路と、
前記組合せ回路の入力側に接続され、一定の周期信号として入力されるクロック信号に基づいてデータの取込みとその保持が可能な第1のフリップフロップであって、前記組合せ回路における遅延時間の測定を行う場合に、予め設定されたテスト用の信号が入力される前記第1のフリップフロップと、
前記組合せ回路の出力側に接続され、且つ、前記組合せ回路から出力された信号を遅延させる遅延部であって、前記遅延部における信号の遅延量を制御可能な前記遅延部と、
前記遅延部の出力側に接続され、前記クロック信号に基づいてデータの取込みと保持が可能な第2のフリップフロップであって、前記組合せ回路における遅延時間の測定を行う場合に、前記遅延部を通過したテスト用の信号が出力される前記第2のフリップフロップと、
前記第2のフリップフロップから出力された信号が、予め設定された期待値でなくなった場合の前記遅延時間に基づいて、前記組合せ回路の遅延時間を測定する測定手段と、
を備えたことを特徴とする遅延時間計測装置。 - 組合せ回路の入力側に、一定の周期信号として入力されるクロック信号に基づいてデータの取り込みとその保持が可能な第1のフリップフロップを接続し、
前記組合せ回路の出力側に、前記組合せ回路から出力された信号を遅延させる遅延部を接続し、
前記遅延部の出力側に、前記クロック信号に基づいてデータの取り込みとその保持が可能な第2のフリップフロップを接続し、
前記第1のフリップフロップからテスト用の信号を入力して、
前記組合せ回路でデータ処理がされた後に、前記遅延部で遅延され、前記第2のフリップフロップから出力された信号が、予め設定された期待値でなくなった場合の前記遅延部における前記遅延量に基づいて、前記組合せ回路の遅延時間を測定する
ことを特徴とする遅延時間の計測方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014120117A JP6309358B2 (ja) | 2014-06-11 | 2014-06-11 | 遅延時間の計測方法および遅延時間計測装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014120117A JP6309358B2 (ja) | 2014-06-11 | 2014-06-11 | 遅延時間の計測方法および遅延時間計測装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015232531A JP2015232531A (ja) | 2015-12-24 |
JP6309358B2 true JP6309358B2 (ja) | 2018-04-11 |
Family
ID=54934054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014120117A Active JP6309358B2 (ja) | 2014-06-11 | 2014-06-11 | 遅延時間の計測方法および遅延時間計測装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6309358B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9535119B2 (en) * | 2014-06-30 | 2017-01-03 | Intel Corporation | Duty cycle based timing margining for I/O AC timing |
KR102198916B1 (ko) * | 2019-12-16 | 2021-01-05 | 연세대학교 산학협력단 | 반도체 테스트를 위한 신호 지연 측정 장치 및 그를 이용한 테스트 장치 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04242180A (ja) * | 1991-01-17 | 1992-08-28 | Fujitsu Ltd | 集積回路のac特性測定装置 |
JPH1010179A (ja) * | 1996-06-27 | 1998-01-16 | Toshiba Corp | 遅延素子試験装置および試験機能を有する集積回路 |
JP3147039B2 (ja) * | 1997-05-16 | 2001-03-19 | 日本電気株式会社 | 集積回路 |
JP2005214732A (ja) * | 2004-01-28 | 2005-08-11 | Sony Corp | クリティカル・パス評価方法及び遅延状態計測回路、並びにlsi製造方法 |
JP2012255693A (ja) * | 2011-06-08 | 2012-12-27 | Renesas Electronics Corp | 半導体集積回路及びその制御方法 |
-
2014
- 2014-06-11 JP JP2014120117A patent/JP6309358B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015232531A (ja) | 2015-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230258719A1 (en) | Integrated circuit margin measurement for structural testing | |
US8553503B2 (en) | On-die signal timing measurement | |
JP4644205B2 (ja) | 試験装置、試験方法、および電子デバイス | |
US20080068099A1 (en) | Methods and apparatus for inline measurement of switching delay history effects in PD-SOI technology | |
Qian et al. | Distinguishing resistive small delay defects from random parameter variations | |
US9188640B1 (en) | Scan flip-flop circuit with LOS scan enable signal | |
JP2001242223A (ja) | 半導体集積回路及び半導体装置並びにそれに用いるスピード選別方法 | |
JP6309358B2 (ja) | 遅延時間の計測方法および遅延時間計測装置 | |
Sauer et al. | Early-life-failure detection using SAT-based ATPG | |
US8593196B2 (en) | Test circuit and methods for speed characterization | |
AKM et al. | On-chip detection of process shift and process spread for post-silicon diagnosis and model-hardware correlation | |
JP5124904B2 (ja) | 半導体試験方法及び半導体装置 | |
US8578227B2 (en) | Delay test device and system-on-chip having the same | |
US20060136853A1 (en) | Timing skew measurement system | |
JP2012255693A (ja) | 半導体集積回路及びその制御方法 | |
Yang et al. | Testing of small delay faults in a clock network | |
US20090128133A1 (en) | Duty Cycle Measurement Method and Apparatus for Various Signals Throughout an Integrated Circuit Device | |
JPH11101850A (ja) | Ic試験装置 | |
JP3633605B2 (ja) | 半導体装置及びにそれに用いるスピード選別方法 | |
JP2008064717A (ja) | 半導体集積回路における遅延測定回路 | |
US9110140B2 (en) | Scan circuit, semiconductor device, and method for testing semiconductor device | |
Murugan et al. | Launch Off Shift And Capture Power Reduction In Transition Fault Test Based On Design For Testability Methods | |
CN105593694B (zh) | 测试装置和可测试性异步电路 | |
JP2005003628A (ja) | Lsiテスト回路およびそのテスト方法 | |
JP5750829B2 (ja) | 半導体装置の試験方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170512 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180131 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180313 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180314 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6309358 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |