JPH07325126A - 順序回路テスト方法 - Google Patents

順序回路テスト方法

Info

Publication number
JPH07325126A
JPH07325126A JP7155534A JP15553495A JPH07325126A JP H07325126 A JPH07325126 A JP H07325126A JP 7155534 A JP7155534 A JP 7155534A JP 15553495 A JP15553495 A JP 15553495A JP H07325126 A JPH07325126 A JP H07325126A
Authority
JP
Japan
Prior art keywords
ram
fault
circuit
primary
value
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.)
Granted
Application number
JP7155534A
Other languages
English (en)
Other versions
JP3040328B2 (ja
Inventor
Vishwani D Agrawal
デオ アグラワル ビシュワニ
Tapan J Chakraborty
ジョチ チャクラボーティ タパン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
AT&T Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by American Telephone and Telegraph Co Inc, AT&T Corp filed Critical American Telephone and Telegraph Co Inc
Publication of JPH07325126A publication Critical patent/JPH07325126A/ja
Application granted granted Critical
Publication of JP3040328B2 publication Critical patent/JP3040328B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318392Generation of test inputs, e.g. test vectors, patterns or sequences for sequential circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/10Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns 
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【目的】 高いフォールトカバレージで、RAMを含む
順序回路をテストする。 【構成】 まず、回路に対して入力される少なくとも一
つのテストベクトルシーケンスが生成される。このテス
トベクトルは、入力された場合に、埋め込みRAMの前
段において故障を励起し、その故障の効果がRAMを通
じてその回路の主要出力のうちの少なくとも一つに伝播
されるように生成される。ベクトルシーケンスは、埋め
込みRAMの後段に位置するノードにおいて故障を励起
する論理値を埋め込みRAMを通じて伝播させ、その故
障の効果をその回路の主要出力のうちの少なくとも一つ
宛に伝播させる。回路出力に対して伝播させられた故障
の効果は(それが存在する場合には)、故障が存在しな
い条件下における回路応答を表す一群のリファレンス値
と比較される。回路出力に対して伝播させられた故障の
効果とリファレンス値との間の差異は、故障状態を表し
ている。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、少なくとも一つの埋め
込みRAMを有する順序回路のテスト技法に関する。
【0002】
【従来の技術】従来、一つあるいは複数個の、フリップ
フロップなどのシーケンシャル(順序)デバイスを有す
る回路は、その回路に対し、その主要入力から、単一あ
るいは複数個のテストベクトルシーケンスを供給し、そ
の回路の出力において応答を観測することによってテス
トされてきた。テストベクトルは、そのテストベクトル
がその回路に対して供給された場合に、注目している単
一あるいは複数個の選択されたノードにおいて(「0縮
退故障」あるいは「1縮退故障」などの)故障を励起す
るように生成される。例えば、選択されたノードに0縮
退故障が存在する場合には、テストベクトルシーケンス
は論理「1」をその選択されたノードに存在させる。こ
のようにして、0縮退故障は、その選択されたノードに
論理「1」ではなく論理「0」を出現させるように機能
する。
【0003】選択された各々のノードにおいて故障状態
を単に励起することは、一般にはテスト目的には不充分
である。なぜなら、選択された単一あるいは複数個のノ
ードにおける故障は回路の主要出力からは観測され得な
いからである。言い換えれば、選択されたノードにおい
て故障が励起されたとしても、順序回路の一次出力にお
ける信号は、その故障に応答して変化はしない。よっ
て、適切なテストのためには、テストベクトルシーケン
スが注目している各々のノードにおいて故障を励起しな
ければならず、かつ、故障の検出を可能にするために、
故障による効果を順序回路の主要出力のうちの一つに対
して伝播しなければならない。
【0004】
【発明が解決しようとする課題】上述された従来技術に
係るテスト技法は大多数の順序回路に関して効果的に機
能するが、単一あるいは複数個の埋め込みRAMを有す
る順序回路に関しては適切に機能しない。実際、従来技
術に係る技法は、埋め込みRAMを通じて、そのRAM
の後段に位置する故障を励起するために必要とされる論
理値を伝播させることができない。さらに、従来技術に
係る技法は、前段のノードにおける故障の効果を埋め込
みRAMを通じて順序回路の主要出力まで伝播させるこ
ともできない。従って、埋め込みRAMを有する大部分
の順序回路は、回路全体がその性質として純粋に順序的
であるように見えるようにする目的でテストの間だけ各
々のRAMをテスト対象からはずすことによってテスト
されている。この方法の欠点は、フォールトカバレージ
の度合(すなわち、検出されうる故障の割合)が低くな
りがちであることである。回路テストの間に埋め込みR
AMをテスト対象からはずすことは、検出されるために
は埋め込みRAMを通じて伝播されなければならない種
類の故障の検出を妨げる。
【0005】よって、高いフォールトカバレージを可能
にする、RAMを含む順序回路をテストする技法が求め
られている。
【0006】
【課題を解決するための手段】本発明の望ましい実施例
に従って、前述されている欠点を有さない、埋め込みR
AMを有する回路をテストするための方法が記述され
る。本発明に係るテスト方法においては、まず、回路に
対して適用される少なくとも一つのテストベクトルシー
ケンスが生成される。このテストベクトルは、適用され
た場合に、埋め込みRAMの前段において故障を励起
し、その故障の影響がRAMを通じてその回路の主要出
力のうちの少なくとも一つに対して伝播されるように生
成される。ベクトルシーケンスは、埋め込みRAMの後
段に位置するノードにおいて故障を励起する論理値を埋
め込みRAMを通じて伝播させ、その故障の効果をその
回路の主要出力のうちの少なくとも一つ宛に伝播させ
る。回路出力に対して伝播させられた故障の効果は(そ
れが存在する場合には)、故障が存在しない条件下にお
ける回路応答を表わす一群のリファレンス値と比較され
る。回路出力に対して伝播させられた故障の効果とリフ
ァレンス値との間の差異は、故障状態を表している。
【0007】
【実施例】
[一般的な回路記述]図1は、単一あるいは複数個の順
序(シーケンシャル)素子(例えばフリップフロップ)
12と、単一あるいは複数個の非順序論理素子14とか
ら構成されている順序回路10を示している。前記非順
序論理素子14は、回路の機能に依存して、AND、O
R、NAND、NORあるいはXORゲートもしくはコ
ンパレータである。さらに、図1に示されている順序回
路10は、データをストアするための少なくとも一つの
埋め込みランダムアクセスメモリ(RAM)16を有し
ている。図1においては単一のRAM16のみが示され
ているが、回路はこの種のRAMを複数個含み得る。
【0008】RAM16は、一組のアドレスラインA0
−An(ここで、nはゼロより大きい整数)、一組の入
力データラインD0−Dm(mはゼロより大きい整数)、
一組の出力ラインO0−Om、および読み出し/書き込み
(R/W)ラインを有している。論理「0」信号が読み
出し/書き込みラインR/W上に供給されると、RAM
16は書き込み動作を開始する。書き込み動作中、デー
タラインD0−Dm上のデータ値がRAM内のストレージ
セル(図示せず)列に書き込まれる。その列の最初のセ
ルの位置は、アドレスラインA0−An上のアドレス値に
よって与えられる。論理「1」信号が読み出し/書き込
みラインR/W上に供給されると、RAM16は読み出
し動作を開始する。読み出し動作中、アドレスラインA
0−An上のアドレス値の位置にその最初のセルが位置し
ているストレージセル列にストアされていたデータ値
が、出力ラインO0−Om上に出力される。出力ラインO
0−Om上に現れるデータ値は、次の読み出し動作が発生
するまではそのまま存在しつつける。
【0009】順序回路10の設計に依存して、RAM1
6は、RAMへの信号とRAMからの信号とのタイミン
グが同期していないように非同期で動作する場合があ
る。この種の非同期動作は、RAM16のアドレスライ
ンA0−An、および入力データラインD0−Dmに対し
て、信号が、順序素子12、非順序素子14、あるいは
順序回路10の単一あるいは複数個のプライマリ入力P
0−PIk(kは1以上の整数)などのいずれかから直
接供給されることによって実現される。同様に、RAM
16が非同期で動作している場合には、データ出力ライ
ンO0−Omの各々は、単一あるいは複数個の順序素子1
2、非順序素子14、あるいは順序回路10のプライマ
リ出力PO0−POj(jは1以上の整数)などに対して
直接接続されている。
【0010】RAM16への信号とRAM16からの信
号とが同期がとれている場合には、RAM16は非同期
ではなく同期動作を行なう。RAM16の同期動作を実
現するためには、(破線で示されている)一群のフリッ
プフロップ18の各々が、それぞれアドレスラインA0
−Anの各々とデータラインD0−Dmの各々のそれぞれ
前に配置される。さらに、フリップフロップ19が、R
AM16の読み出し/書き込みラインR/Wの前に配置
される。加えて、RAM16の同期動作のために、RA
M16の出力ラインO0−Omの各々の前に一群のフリッ
プフロップ20の各々が配置される。RAM16の同期
動作の間、フリップフロップ18、19および20は、
RAMとの間の信号の同期をとるために、単一のクロッ
ク(図示せず)からの共通のクロックパルスによって同
時にクロックがかけられる。フリップフロップ18およ
び20に対して同時にクロックがかけられた場合に発生
しうる競合条件を回避するために、(破線で示された)
遅延素子が、RAM16の出力ラインO0−Omの各々の
フリップフロップ20の各々の前にそれぞれ挿入され
る。あるいは、遅延素子22の必要性を回避するため
に、読み出し/書き込みフリップフロップ19に対して
フリップフロップ18および20とは別個にクロックが
かけられる。
【0011】従来、順序回路10のテストは、回路10
に対してプライマリ入力PI0−PIkからテストベクト
ルシーケンスを供給し、そのテストベクトルに応答して
生成された信号をプライマリ出力PO0−POjにおいて
観測することによって実行されてきた。プライマリ出力
における応答信号は、故障無しの条件に対応するリファ
レンス信号の組と比較される。回路10のプライマリ出
力PO0−POjにおいて実際に観測された信号とリファ
レンス信号との間に差異が存在する場合には、故障が存
在することになる。選択されたノードに故障を励起する
テストベクトルシーケンスを生成し、その値を順序回路
10のプライマリ出力PO0−POjのうちの一つに対し
て伝播させる方法は種々存在する。公知の技法の一つ
は、W. T. ChengらによるComputer誌第22巻第43−
49ページ(1989年4月)に掲載された"Gentest:
An Automated Test Generation System for Sequential
Circuits"に記述されているBACKアルゴリズムを用
いている。BACKアルゴリズムを用いてテストベクト
ルの生成を行なうために、目的とするノードと回路10
のプライマリ出力との間の伝播経路が設定される。伝播
経路が設定されると、故障値を経路中の最終ノードから
プライマリ出力に伝播させるために必要とされるテスト
シーケンス中の最終ベクトルが決定される。通常、ベク
トル値は、プライマリ出力から故障経路中の最終ノード
へ故障シーケンスを逆向きに計算することによって決定
される。その後、最後から2番目のノードから最終ノー
ドへ故障値を伝播させるために必要とされる、シーケン
ス中の最後から2番目のテストベクトルが決定される。
最終ベクトルと同様、最後から2番目のベクトルは、最
終ノードから最後から2番目のノードへ故障シーケンス
を逆向きに計算することによって決定される。このプロ
セスは、故障経路中でプライマリ入力から最初のノード
へ値を伝播させるために必要とされる、シーケンス中の
最初のテストベクトルが設定されるまで反復される。
【0012】テストの実効度は、発生しうる故障のうち
の検出されるものの割合によって測られる。明らかに、
プライマリ入力PI0−PIkにおいて回路10に印加さ
れるテストベクトルシーケンスが特定の故障を励起でき
ない、あるいはその効果をプライマリ回路出力へ伝播で
きない場合には、その故障は検出されないことになる。
与えられたテストベクトルシーケンスによって検出され
得る故障の割合は、故障シミュレーションとして知られ
ている技法によって見積もられ得る。ベクトルシーケン
スによって、選択されたノードにおいて特定の故障条件
(すなわち、1縮退故障もしくは0縮退故障)が検出さ
れるか否かを決定するために、その故障条件がシミュレ
ートされる。その後、テストベクトルが供給されてその
ベクトルシーケンスがシミュレートされた故障を励起し
てその効果をプライマリ回路出力へと伝播したか否かが
チェックされる。故障が励起されてその効果がプライマ
リ回路出力へ伝播された場合には、その故障はそのベク
トルシーケンスによって検出可能であることになる。
【0013】[テスト生成]単一あるいは複数個のテス
トベクトルシーケンスを供給することによって順序回路
10をテストする方法は、その回路が例えばRAM16
などのような埋め込みRAMを含む場合を除いて有効で
ある。従来技術においては、故障経路がRAM16を追
加している場合には、故障値は回路10のノードAとプ
ライマリ出力PO0−POjとの間で(破線で示された)
経路23に沿って伝播することはできなかった。本発明
は、この欠点を、故障を励起してその値をRAM16な
どの埋め込みRAMを介して伝播させるベクトルシーケ
ンスを生成する技法を提供することによって克服する。
一般的に述べれば、本発明に係る技法は、前述されたB
ACKアルゴリズムの利用を含んでいる。しかしなが
ら、埋め込みRAM16があたかも存在しないものであ
るかのように取り扱うのではなく、本発明に従って、故
障値をRAM16を介して前進させ、さらに、選択され
たノードを励起し、あるいはその故障値をプライマリ回
路出力へ伝播するために必要とされる量だけRAMを介
して故障シーケンスを逆向きに計算することによって、
テストベクトルが生成される。
【0014】本発明に係る方法に従ってテストベクトル
を生成する第一ステップは、注目している選択されたノ
ードと回路10のプライマリ出力との間の故障伝播経路
23を設定することである。故障伝播経路が設定される
場合には、3つの可能性が存在する: 1.故障伝播経路が埋め込みRAM16を通過しない場
合。 2.故障伝播経路が埋め込みRAM16を通過して、か
つ、注目しているノードがRAMの前段に位置する場
合。 3.故障伝播経路が埋め込みRAM16を通過して、か
つ、注目しているノードがRAMの後段に位置する場
合。 故障伝播経路23がRAM16を通過しない場合には、
故障値を注目しているノードから回路10のプライマリ
出力へ伝播させるために必要となるテストベクトルシー
ケンスは、BACKアルゴリズムあるいは同様の技法を
用いて従来技術に係る様式で生成される。以下、故障伝
播経路23がRAM16を介するものである場合を考え
る。このような状況においてテストを完遂するために
は、故障がRAMの前段に位置する場合は、故障の効果
をRAMを介して伝播させるために必要とされる値をテ
ストベクトルシーケンスがRAM16を介して伝播させ
なければならない。同様に、故障がRAM16の後段に
位置する場合には、ベクトルシーケンスはこの後段の故
障を励起しなければならない。本発明に従って、テスト
ベクトルは、RAM16に所定の読み出しあるいは書き
込み動作を実行させて、それによって、故障を励起する
ために必要とされる値を伝播させる目的あるいはその効
果をプライマリ回路出力PO0−POjへ伝播させる目的
に適した論理値がRAMの出力ラインO0−Om上に存在
させるように生成される。
【0015】まず、故障伝播経路23がRAM16を通
過しており、注目するノード(例えばノードA)がRA
Mの前段に位置するという可能性を考える。故障の効果
が回路10のプライマリ出力PO0−POjのうちの一つ
に伝播するためには、故障効果はRAM16を順方向に
伝播しなければならない。RAM16を介した故障効果
の順方向伝播は、RAM16に読み出しあるいは書き込
み動作(すなわちデータ転送動作)を実行させることに
よって実現される。このようにして、RAM16のデー
タラインD0−Dmのうちの一つに現れた故障効果は、そ
の後の時間間隔の間にRAM16の出力ラインO0−Om
上に現れることになる。読み出し動作あるいは書き込み
動作のいずれが実行されるかは、RAM16のR/Wラ
イン上の論理値に依存する。データ転送動作は、正常回
路および不良がありそうな回路の双方に関して実行され
る。
【0016】RAM16にデータの読み出しあるいは書
き込みを実行させることにより、最終的にデータライン
0−Dmのうちの一つに現れた故障効果がプライマリ回
路出力に対して伝播させられる。しかしながら、アドレ
スラインA0−An上の故障効果はここでは考慮されてい
ない。このため、本発明に係るテスト生成アルゴリズム
は、RAM16を介して伝播する故障効果がより重大な
結果をもたらすとはいえ、「完全な」アルゴリズムでは
ない。よって、埋め込みRAM16を経由しないで故障
値が回路10を伝播する経路が存在する場合には、その
経路がまず試みられなければならない。
【0017】次に、故障伝播経路がRAM16を経由し
ていて注目しているノードがRAM16の後段に位置す
る可能性を考える。このような状況下では、故障効果が
回路10のプライマリ出力へ到達するためには、故障が
まずRAM16を介して励起されなければならない。そ
の後、故障効果が回路10のプライマリ出力へ伝播させ
られる必要がある。注目しているノードを励起するため
には、故障がRAM16の出力ラインO0−Omからその
データラインD0−Dmへと逆方向にジャスティファイさ
れなければならない。
【0018】RAM16を介した逆方向故障ジャスティ
フィケーションは、以下の手続きによって実現される: 1.当該RAMの、故障値DあるいはDバー(NOT
D)がデータ入力D0−Dmのうちの対応するものから伝
播されることになる出力ラインを選択する。 2.現在の時間フレームにおいてアドレスライン値の中
に未知のものがある場合には、より制御しやすい値に依
存して、その値が論理「0」あるいは「1」に設定され
る。その直前の時間フレームにおいても同一のアドレス
設定が用いられる。 3.直前の時間フレームにおける書き込み動作の間にR
AMの対応するデータ入力を値DあるいはDバーに設定
する。 4.現在の時間フレームにおいて読み出し動作を、直前
の時間フレームにおいて書き込み動作を実現するために
必要とされる論理値をR/W制御ラインに設定する。 5.上記ステップ(2)−(4)の間にコンフリクトが
生じた場合には、次なる選択肢に移って同様の手続きを
行なう。選択肢がない場合には、その故障を考慮するこ
とを止める。 6.RAMのデータ入力において設定された全ての論理
値が、BACKアルゴリズムに係るジャスティフィケー
ション手続きを用いた逆方向故障効果伝播の間に、プラ
イマリ入力へ伝播される。
【0019】[故障yシミュレーションおよびメモリア
ロケーション]上述された方式で生成された各々のテス
トベクトルシーケンスを評価する目的で、複数個の故障
がシミュレートされ、シミュレートされた故障が検出さ
れ得るか否かを決定するためにテストベクトルシーケン
スが供給される。種々の故障シミュレーション技法が存
在するが、それらは当業者には公知である。一例とし
て、差分故障シミュレーション技法PROOFSが、T.
M.Niermanらによる"PROOFS: A Fast, Memory-Efficient
Sequential Circuit Fault Simulator"という表題の論
文(IEEE Transactions on CAD第11巻第198−20
7ページ(1992年2月))に記述されている。
【0020】故障シミュレーションを実行する際に、R
AM16内に故障らしい値を記録することは有用であ
る。残念ながら、回路10が大規模である場合には、数
多くの値が存在し、RAM16によってまかなわれるも
のより大きいストレージ容量を必要とする。例えば、各
々nビットアドレスを有し各々がyビット幅を有するz
個の埋め込みRAM16(ここで、zはゼロより大きい
整数)が存在する場合には、故障フリー条件下でストア
されることが可能なビット数は、2n×y×zによって
表される。回路がB個のフォールトを有する場合にRA
M16の値をストアするために必要とされるメモリの容
量は、B×2n×y×zによって表される。容易に理解
されるように、各々の埋め込みRAM16が中程度の容
量を有している場合(例えば2n×y×z=16Kバイ
ト)でかつ回路が20K個の起こりうるフォールトを有
している場合においても、20K個の起こりうる故障の
各々に対してRAM16の内容をストアするために必要
とされるストレージ容量は300Mバイトより大きくな
ってしまう。
【0021】本発明の他の側面に従って、メモリアロケ
ーションの問題を克服するために新しいメモリアロケー
ション方式が開発された。故障シミュレーションの間、
(RAM16の値を含む)ダイナミックリンクリストが
回路内の未検出故障の各々に関して生成される。故障が
各々の埋め込みRAM16を経由してシミュレーション
されるたびごとに、対応する正常値とは相異なった疑わ
しい値のみがストアされる。その後、この疑わしい値は
ダイナミックリンクストラクチャにストアされ、それに
よってストレージ容量に関する要求が低減される。なぜ
なら、RAM中に存在するすべての値がストアされるの
ではなく、疑わしい値のみがストアされるからである。
ストアされた記録には、埋め込みRAMの識別、アドレ
ス値、およびデータ値が含まれている。
【0022】故障シミュレーションの間に埋め込みRA
Mが読み出されると、データ記録(すなわち故障値)が
RAM中の特定のアドレスに存在する場合には、故障値
が読み出されて出力ラインO0−Om上に出力される。そ
れ以外の場合には、正常値が読み出される。故障が検出
されると、(RAMの識別、そのデータ値のアドレス、
およびデータ値を含む)ダイナミックリンク値が消去さ
れる。よって、ストアされているリンク値のみが未検出
の値に対する値であり、希望されている情報そのもので
ある。未検出の故障に関連するデータ値のみを(対応す
るRAMアドレスとRAMそのものの識別と共に)スト
アすることによって、必要とされるメモリ量が著しく低
減される。
【0023】RAM16のテスト 以上に記載されているように、本発明に係るテスト技法
は、テストベクトルを回路のプライマリ入力PI0−P
kに対して印加することによって回路10全体として
のテストを行なうことを指向したものである。しかしな
がら、ある場合には各々の埋め込みRAM16を個別に
テストすることが望ましい。各々のRAM16のテスト
は、通常、ストレージロケーションよりなる連続する列
の各々に既知の値よりなる第一ストリング(通常全て0
か全て1)を書き込むことによって実行される。その
後、連続する列の各々が読み出され、読み出された列の
内容が直前の書き込み動作の間に書き込まれたストリン
グと比較される。一致すれば欠陥がないことになる。こ
のプロセスは、相異なったデータストリング(全て0、
全て1、1つを除いて全て0で1の位置が順次変わった
もの、および1つを除いて全て1で0の位置が順次変わ
ったもの)に関して反復される。
【0024】過去においては、回路10中の埋め込みR
AM16のような埋め込みRAMのテストは、フルスキ
ャンテストとして知られている技法によって実行されて
きた。図2にしめされているように、RAM16のフル
スキャンテストは、アドレスラインA0−Anの各々、デ
ータラインD0−Dmの各々、読み出し/書き込みライン
R/W、および出力ラインO0−Omの各々にフリップフ
ロップ24が組み込まれていることを必要とする。フリ
ップフロップ24は互いに単一のスキャンチェーンに組
み合わせられていて、このフリップフロップチェーンを
介してスキャンベクトルシーケンスの各々がスキャンさ
れることを可能にしている。スキャンベクトルは、各々
のベクトルがフリップフロップチェーンを介してスキャ
ンされる場合に、所定のアドレスおよび所定のデータ値
がそれぞれアドレスラインA0−Anおよびデータライン
0−Dm上に存在し、一方所定の書き込み/読み出しビ
ットが書き込み/読み出しラインR/W上に存在するよ
うに選択される。R/W上の所定の読み出し/書き込み
ビットが”0”である場合には、データラインD 0−Dm
上にスキャンされたデータ値はアドレスラインA0−An
上にスキャンされたアドレスによって与えられるストレ
ージセル列に書き込まれる。同様に、R/W上にスキャ
ンされた読み出し/書き込みビットが”1”である場合
には、アドレスラインA0−An上にスキャンされたアド
レスにストアされていたデータ値が出力ラインO0−Om
上のフリップフロップ24にスキャンされる。
【0025】スキャンベクトルの値を適切に選択するこ
とによって、既知のデータパターンがRAM16内の連
続するストレージロケーション列の各々に書き込まれ
る。その後、RAMの連続する列の各々が読み出され、
読み出された値が、直前に書き込まれた値と比較される
ために、RAM16の出力ラインO0−Om上のフリップ
フロップ24にスキャンされる。既知のビットパターン
をRAM16に書き込み、RAMから直前に書き込まれ
たビットパターンを読み出すためにフリップフロップ2
4のチェーンを介してベクトルをスキャンするプロセス
は、複数個の相異なったビットパターンに関して反復さ
れる。
【0026】フルスキャンテストにはいくつかの問題点
がある。第一に、フルスキャンテストは、フリップフロ
ップ24を、アドレスラインA0−Anの各々、データラ
インD0−Dmの各々、出力ラインO0−Omの各々、およ
び読み出し/書き込みラインR/Wに挿入しなければな
らないために、比較的大きな回路上のオーバーヘッドを
有している。第二に、アドレスラインA0−Anの数、デ
ータラインD0−Dmの数、および出力ラインO0−Om
数に依存して、各々のスキャンベクトルをスキャンフリ
ップフロップ24のチェーンを介してスキャンするため
に必要となる時間が長大なものになる。
【0027】本発明の他の側面に従って、上述された問
題を負うことなく、RAM16などのような埋め込みR
AMの部分スキャンテストを実現する方法が提供され
る。図3において、RAM16の部分スキャンテスト
は、フリップフロップ24’をアドレスラインA0−An
の各々と読み出し/書き込みラインR/Wに挿入するこ
とによって実現される。図3のフリップフロップ24’
は、フルスキャンテストを実行するための図2のフリッ
プフロップ24と同様に、互いにチェーン接続されてい
る。しかしながら、図3におけるRAM16の部分スキ
ャンテストの間は、RAMに書き込まれるデータ値は、
フルスキャンテストの場合のようにスキャンフリップフ
ロップチェーンを介してスキャンすることによって導出
されるのではない。RAM16に書き込まれるデータ値
は、プライマリ入力PI0−PIkからの値をRAMのデ
ータラインD0−Dmへ伝播させることによって得られ
る。BACKアルゴリズム、あるいは同様のアルゴリズ
ムが、RAM16のデータラインD0−Dm上に希望する
データ値を実現するために、回路10のプライマリ入力
に必要とされる値を計算するために用いられる。
【0028】RAM16に書き込まれるデータ値がスキ
ャンベクトルから獲得されないのと同様に、部分スキャ
ンテストにおいてはRAM16の出力ラインO0−Om
の出力データは、フルスキャンテストの場合とは異なっ
てスキャンされない。RAM16の出力ラインO0−Om
上のデータは、適切に選択されたテストベクトルをプラ
イマリ回路入力PI0−PIkへ印加することによって、
回路10のプライマリ出力PO0−POjへ伝播させられ
る。RAM16の出力ラインO0−Om上の値を回路10
のプライマリ出力PO0−POjへ伝播させるために必要
とされるベクトルは、BACKアルゴリズムあるいは同
様のアルゴリズムを用いて設定される。
【0029】RAM16の部分スキャンテストはいくつ
かの利点を有している。第一に、スキャンフリップフロ
ップの数が低減される。第二に、スキャンフリップフロ
ップ24’よりなるチェーンが、通常、RAM16のデ
ータラインD0−Dm上および出力ラインO0−Om上にス
キャンフリップフロップを有さないという理由からより
短いものであるために、テスト時間が低減される。回路
10のプライマリ入力PI0−PIkにおいて必要とされ
る値をRAM16の読み出しおよび書き込みの間に伝播
させることに関してはある程度の遅延が生ずる。しかし
ながら、RAM16のデータラインD0−Dmおよび出力
ラインO0−Om上の値はアドレスラインA0−An上の値
よりも頻繁に変化することはないため、前記遅延は、フ
ルスキャンテストに関連して図2のスキャンフリップフ
ロップ24よりなるチェーンを介してスキャンベクトル
をスキャンすることに係る遅延よりも小さい。
【0030】以上、埋め込みRAMを有する順序回路1
0を、フォールトカバレージを増大させつつテストする
技法が記述されてきた。
【0031】以上の説明は、本発明の一実施例に関する
もので,この技術分野の当業者であれば、本発明の種々
の変形例が考え得るが、それらはいずれも本発明の技術
的範囲に包含される。
【0032】
【発明の効果】以上述べたごとく、本発明によれば、高
いフォールトカバレージを可能にする、RAMを含む順
序回路をテストする技法が提供される。
【図面の簡単な説明】
【図1】埋め込みRAMを含む順序回路の模式図であ
る。
【図2】フルスキャンテスト用にコンフィグレーション
された図1のRAMを示す模式図である。
【図3】本発明に従って部分スキャンテスト用にコンフ
ィグレーションされた図1の埋め込みRAMを示す模式
図である。
【符号の説明】
10 順序(シーケンシャル)回路 12 順序素子 14 非順序素子 16 埋め込みRAM 18 フリップフロップ 20 フリップフロップ 22 遅延素子 23 故障伝播経路 24 スキャンフリップフロップ 24´ スキャンフリップフロップ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 タパン ジョチ チャクラボーティ アメリカ合衆国、08619 ニュージャージ ー、マーサービル、モンタナ アベニュー 37

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 少なくとも一つの順序素子(12)およ
    び前記一つの順序素子(14)に対して少なくとも一つ
    のノードを含みプライマリ回路入力の組のうちの一つか
    ら埋め込みRAMを介してプライマリ回路出力の組のう
    ちの一つに対して延在する伝播経路(23)を介してリ
    ンクされている少なくとも一つの前記埋め込みRAM
    (16)を有する順序回路(10)をテストする方法に
    おいて、当該方法が、 ノードにおいて故障を励起し、かつその効果を前記ノー
    ドが前記RAMの前段に位置する場合には前記RAM
    (16)を介して前記プライマリ回路出力のうちの一つ
    に対して伝播させ、前記ノードが前記RAMの後段に位
    置する場合には前記故障を前記RAMを介して励起し、
    かつその効果を前記プライマリ出力のうちの前記一つに
    対して伝播させる目的で、前記回路(10)のプライマ
    リ入力(PI0−PIk)に対して供給される少なくとも
    一つのテストベクトルシーケンスを生成するステップ
    と、 前記回路にプライマリ出力において応答信号を生成させ
    る目的で前記テストベクトルシーケンスを前記プライマ
    リ入力に供給するステップと、 差異が存在するか否かを決定する目的で前記回路出力に
    おいて前記応答信号をリファレンス値の組と比較するス
    テップとからなることを特徴とする順序回路テスト方
    法。
  2. 【請求項2】 前記テストベクトルが、前記順序回路に
    供給された場合に、前記RAMの入力に存在する故障の
    効果を前記RAMの出力へ伝播させる目的で、前記RA
    M(16)にデータ転送動作を実行させるように生成さ
    れることを特徴とする請求項1の方法。
  3. 【請求項3】 前記テストベクトルが、前記RAMの後
    段に位置するノードを励起するために必要とされる所定
    の論理値を前記RAMを介して前記ノードを励起するた
    めに前記ノードへ伝達させる目的で、読み出しおよび書
    き込み動作からなる所定のシーケンスを前記RAMに実
    行させるように生成されることを特徴とする請求項第1
    の方法。
  4. 【請求項4】 前記テストベクトルが、 (a)前記RAMの入力から所定のデータ値が伝播され
    ることになる前記RAMの出力端子を選択するステップ
    と、 (b)現在の時間フレームおよび現在の時間フレームの
    直前の時間フレームの双方における前記元の値が未知で
    ある場合には、前記RAMの各々のアドレスライン上の
    各々の値を制御可能な値に保持するステップと、 (c)前記RAMへの前記入力値を現在の時間フレーム
    の直前の時間フレームにおける前記所定のデータ値に設
    定するステップと、 (d)現在の時間フレームの直前の時間フレームにおい
    て前記RAMに書き込み動作をさせ、現在の時間フレー
    ムにおいて前記RAMに読み出し動作をさせることによ
    って前記RAMの出力ラインに前記所定のデータ値を出
    現させるために、前記RAMの読み出し/書き込みライ
    ンに所定の論理値を供給するステップと、 (e)前記ステップ(b)−(d)の間になんらかの衝
    突が生じた場合には、その他の選択肢が存在すればその
    選択肢をたどり、その他の選択肢が存在しない場合には
    その故障の考慮を止めるステップとによって、前記RA
    M(16)を介して故障の効果の後方伝播を行なうこと
    によって生成されることを特徴とする請求項第3の方
    法。
  5. 【請求項5】 (a)前記テストベクトルによって検出
    される故障の組をシミュレートするステップと、 (b)前記テストベクトルによって検出されない故障に
    係る値を、前記埋め込みRAM(16)の各々におい
    て、前記故障関連値が各々のRAM内のどこに見い出さ
    れるかに係る情報および前記RAMの識別を行う情報と
    ともに、動的に記録するステップとをさらに有すること
    を特徴とする請求項第1の方法。
  6. 【請求項6】 前記埋め込みRAM(16)の各々が、
    各々互いに接続され、各々それぞれアドレスラインのう
    ちの一つおよび読み出し/書き込みラインに対して接続
    されたフリップフロップチェーンを介して少なくとも一
    つのスキャンベクトルをシフトすることによって、各々
    のRAMのアドレスラインの組の各々に対してアドレス
    値の組の個別の一つを順次供給し、かつ読み出し/書き
    込み値を前記RAMの読み出し/書き込みラインに順次
    供給するステップと、 前記RAMに書き込むために、前記順序回路の前記プラ
    イマリ入力からデータ値を前記RAMのデータ入力の組
    の各々へ伝播させるステップと、 前記RAMの出力の組の個々の出力に現れるデータ値の
    組の各々を前記プライマリ回路出力へ伝播させる目的
    で、前記順序回路のプライマリ入力からデータ値の第二
    の組の各々を伝播させるステップとによってそれ自体テ
    ストされることを特徴とする請求項第1の方法。
JP7155534A 1994-05-31 1995-05-31 順序回路テスト方法 Expired - Fee Related JP3040328B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US251550 1994-05-31
US08/251,550 US5499249A (en) 1994-05-31 1994-05-31 Method and apparatus for test generation and fault simulation for sequential circuits with embedded random access memories (RAMs)

Publications (2)

Publication Number Publication Date
JPH07325126A true JPH07325126A (ja) 1995-12-12
JP3040328B2 JP3040328B2 (ja) 2000-05-15

Family

ID=22952445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7155534A Expired - Fee Related JP3040328B2 (ja) 1994-05-31 1995-05-31 順序回路テスト方法

Country Status (4)

Country Link
US (1) US5499249A (ja)
JP (1) JP3040328B2 (ja)
KR (1) KR0183381B1 (ja)
TW (1) TW329477B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013521483A (ja) * 2010-03-04 2013-06-10 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 故障マスキング係数を定めるための逆方向解析の改善

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5828751A (en) 1996-04-08 1998-10-27 Walker Asset Management Limited Partnership Method and apparatus for secure measurement certification
US8092224B2 (en) * 1995-11-22 2012-01-10 James A. Jorasch Systems and methods for improved health care compliance
US7553234B2 (en) * 1995-11-22 2009-06-30 Walker Digital, Llc Method and apparatus for outputting a result of a game via a container
US6959387B2 (en) 1996-03-21 2005-10-25 Walker Digital, Llc Method and apparatus for verifying secure document timestamping
US5923763A (en) 1996-03-21 1999-07-13 Walker Asset Management Limited Partnership Method and apparatus for secure document timestamping
US5923835A (en) * 1997-06-23 1999-07-13 Sun Microsystems, Inc. Method for scan test of SRAM for microprocessors having full scan capability
US5881218A (en) * 1997-06-23 1999-03-09 Sun Microsystems, Inc. Apparatus for scan test of SRAM for microprocessors having full scan capability
KR100609148B1 (ko) * 1999-12-22 2006-08-04 한국전자통신연구원 진리치 비교를 통한 순차회로 생성방법
US8055509B1 (en) 2000-03-10 2011-11-08 Walker Digital, Llc Methods and apparatus for increasing and/or for monitoring a party's compliance with a schedule for taking medicines
US7246277B2 (en) * 2001-06-20 2007-07-17 Jeffrey Lukanc Test bus architecture for embedded RAM and method of operating same
US6957371B2 (en) * 2001-12-04 2005-10-18 Intellitech Corporation Method and apparatus for embedded built-in self-test (BIST) of electronic circuits and systems
US8051352B2 (en) 2006-04-27 2011-11-01 Mentor Graphics Corporation Timing-aware test generation and fault simulation
US7818626B1 (en) * 2007-01-12 2010-10-19 Oracle America, Inc. Memory error injector and associated methods
US20110191129A1 (en) * 2010-02-04 2011-08-04 Netzer Moriya Random Number Generator Generating Random Numbers According to an Arbitrary Probability Density Function

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4051352A (en) * 1976-06-30 1977-09-27 International Business Machines Corporation Level sensitive embedded array logic system
US4769817A (en) * 1986-01-31 1988-09-06 Zycad Corporation Concurrent fault simulation for logic designs
AU4347189A (en) * 1988-10-05 1990-05-01 Mentor Graphics Corporation Method of using electronically reconfigurable gate array logic and apparatus formed thereby

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013521483A (ja) * 2010-03-04 2013-06-10 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 故障マスキング係数を定めるための逆方向解析の改善

Also Published As

Publication number Publication date
KR0183381B1 (ko) 1999-04-15
TW329477B (en) 1998-04-11
KR950033513A (ko) 1995-12-26
US5499249A (en) 1996-03-12
JP3040328B2 (ja) 2000-05-15

Similar Documents

Publication Publication Date Title
US6829728B2 (en) Full-speed BIST controller for testing embedded synchronous memories
JP3040328B2 (ja) 順序回路テスト方法
US5479414A (en) Look ahead pattern generation and simulation including support for parallel fault simulation in LSSD/VLSI logic circuit testing
US4601032A (en) Test-generation system for digital circuits
US6205564B1 (en) Optimized built-in self-test method and apparatus for random access memories
US7574644B2 (en) Functional pattern logic diagnostic method
US7610527B2 (en) Test output compaction with improved blocking of unknown values
US6065145A (en) Method for testing path delay faults in sequential logic circuits
US7392449B2 (en) Method, apparatus, and computer program product for diagnosing a scan chain failure employing fuses coupled to the scan chain
US20050149804A1 (en) Device and method for testing integrated circuit
JPH09145800A (ja) テストパターン生成方式
JP2607029B2 (ja) 信号遷移伝搬検出方法
JP3811528B2 (ja) 多重ビットテスト用のメモリテストシステム
JP4752029B2 (ja) 半導体論理回路装置のテスト方法及びテストプログラム
US5590135A (en) Testing a sequential circuit
US20020188904A1 (en) Efficiency of fault simulation by logic backtracking
US5528604A (en) Test pattern generation for an electronic circuit using a transformed circuit description
US6327683B1 (en) Device scan testing
EP0535573B1 (en) Test sequence generation method
JP5158087B2 (ja) 半導体集積回路装置および半導体集積回路装置の試験方法
JPH05119122A (ja) スキヤン回路のテストパターン生成方法
JPH11174126A (ja) 論理回路の組込み自己検査パターン発生装置およびパタ ーン選定方法
US7047468B2 (en) Method and apparatus for low overhead circuit scan
US11768239B1 (en) Method and apparatus for timing-annotated scan-chain testing using parallel testbench
EP0139516B1 (en) Test generation system for digital circuits

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080303

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090303

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100303

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100303

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110303

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120303

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130303

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130303

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140303

Year of fee payment: 14

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees