Patent US5949692A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5949692A Expired / Lapsed US ⏱️ 0.0 years remaining

Hierarchical scan architecture for design for test applications

Assignee: Synopsys Inc
•
Filing: 1996-08-28
•
Granted: 1999-09-07
•
Expires: 2016-08-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method for architecting design for test circuitry (e.g., scan architecting) within an integrated circuit design having subdesigns (e.g., modules). The novel system contains a default operational mode (no user specification) and an operational mode based on user specifications; within either mode, the system recognizes and allows definition of subdesign scan chains which can be linked together alone or with other scan elements to architect complex scan chains (e.g., top level scan chains). The system includes specification, analysis, synthesis and reporting processes which can be used in an IC design having a hierarchical structure including modules. The specification process accesses a design database and a script file and allows a user to define global scan properties (scan style, number of chains, etc.), properties of a particular scan chain (membership, name, etc.), test signals (scan-in, scan-out, scan-enable, etc.), complex elements used as part of a scan chain without requiring scan replacement, wires and latches forming connections between scan elements; this information is associated with the selected design database. Analysis reads the design database and performs architecting of scan chains based on inferred scan elements of the design and defined (e.g. specified) scan elements. During analysis, the logic within the design database is not altered and a script is generated for user modification/verification. Specification and analysis can be executed iteratively until the desired scan structures are planned. Synthesis then implements the desired DFT circuitry by altering the design database based on the scan chains planned by analysis.

Inventors

  • 👤 James Beausang
  • 👤 Chris Ellingham
  • 👤 Markus F. Robinson
  • 👤 Robert Walker

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 19:31
CPC Classifications
G; G01; G01R; G01R31/00; G01R31/28; G01R31/317; G01R31/3181; G01R31/3185; G01R31/318533; G01R31/318536; G01R31/31704

Claims Analysis

Total Claims: 28
Claim 1
Independent Claim 219 words
A method of inserting scan resources into an integrated circuit design, said integrated circuit design having one or more subdesign modules with existing scan chain segments located therein, said method comprising the steps of: a) receiving specification commands from a user or from a script file, said specification commands defining scan configurations indicating a manner in which scan chains are to be constructed and defining existing scan structures to be used in constructing said scan chains; b) annotating said design with information based on said specification commands; c) analyzing said specification commands and said design to generate a scan plan based on said design and based on said specification commands without altering logic within said design, said step c) further comprising the steps of: 1) constructing first scan structure by partially constructing scan chains within said scan plan according to said specification commands and said existing scan structures; 2) identifying second scan structure within said design not covered by said specification commands; and 3) completely constructing said scan chains within said scan plan based on said first and second scan structure of steps c1) and c2) to generate top level scan chains; and d) synthesizing said scan plan within said design by inserting scan resources into said design to realize said top level scan chains of said scan plan.
Claim 2
Independent Claim 219 words
A method of inserting scan resources into an integrated circuit design, said integrated circuit design having one or more subdesign modules with existing scan chain segments located therein, said method comprising the steps of: a) receiving specification commands from a user or from a script file, said specification commands defining scan configurations indicating a manner in which scan chains are to be constructed and defining existing scan structures to be used in constructing said scan chains; b) annotating said design with information based on said specification commands; c) analyzing said specification commands and said design to generate a scan plan based on said design and based on said specification commands without altering logic within said design, said step c) further comprising the steps of: 1) constructing first scan structure by partially constructing scan chains within said scan plan according to said specification commands and said existing scan structures; 2) identifying second scan structure within said design not covered by said specification commands; and 3) completely constructing said scan chains within said scan plan based on said first and second scan structure of steps c1) and c2) to generate top level scan chains; and d) synthesizing said scan plan within said design by inserting scan resources into said design to realize said top level scan chains of said scan plan.
Claim 3
Dependent Claim 33 words
A method as described in claim 1 wherein said step c) further comprises the step of generating a report of scan resources to be constructed within said design based on said scan plan.
Claim 4
Dependent Claim 22 words
A method as described in claim 2 further comprising the step of generating a report of existing scan resources within said design.
Claim 5
Dependent Claim 45 words
A method as described in claim 1 wherein said step c3) further comprises the steps of: integrating scan structure identified in step c2) within partially constructed scan chains of step c1); and constructing additional scan chains composed of said scan structure identified in step c2).
Claim 6
Dependent Claim 53 words
A method as described in claim 1 wherein said step a) further comprises the step of receiving a specification command defining a scan segment, said scan segment including a member list of sequentially coupled scan cells and access points to said member list, said access points including a scan in and scan out.
Claim 7
Dependent Claim 53 words
A method as described in claim 1 wherein said step a) further comprises the step of receiving a specification command defining a scan path, said scan path including a list of scan structures to be linked together by step c) and by step d) to form a scan chain of said scan structures.
Claim 8
Dependent Claim 78 words
A method as described in claim 1 wherein said step a) further comprises the step of receiving a specification command defining a scan configuration, said scan configuration including a number of said top level scan chain to be constructed by said step c) and by said step d) and further including an indication of whether or not clock domain mixing is allowed by said step c) and by said step d) in constructing said top level scan chains.
Claim 9
Independent Claim 238 words
A method of inserting scan resources into an integrated circuit design, said integrated circuit design having one or more subdesign modules with existing scan chain segments located therein, said method comprising the steps of: a) receiving specification commands from a user or from a generated script file, said specification commands defining scan configurations indicating a manner in which scan chains are to be constructed and defining existing scan structures to be used in constructing said scan chains; b) annotating said design with said specification commands; c) analyzing said specification commands and said design to generate a scan plan based on said design and based on said specification commands without altering logic within said design and reporting said scan plan in a script file accessible by said user for modification, said step c) further comprising the steps of: 1) partially constructing scan chains within said scan plan according to said specification commands and said existing scan structures; 2) identifying scan structure within said design not covered by said specification commands; 3) generating a number of balanced top level scan chains within said scan plan based on said scan structure identified in step c2), based on scan structure constructed in step c1), and based on said scan configurations of step a); d) synthesizing said scan plan within said design by inserting scan resources into said design to realize said number of balanced top level scan chains of said scan plan.
Claim 10
Independent Claim 238 words
A method of inserting scan resources into an integrated circuit design, said integrated circuit design having one or more subdesign modules with existing scan chain segments located therein, said method comprising the steps of: a) receiving specification commands from a user or from a generated script file, said specification commands defining scan configurations indicating a manner in which scan chains are to be constructed and defining existing scan structures to be used in constructing said scan chains; b) annotating said design with said specification commands; c) analyzing said specification commands and said design to generate a scan plan based on said design and based on said specification commands without altering logic within said design and reporting said scan plan in a script file accessible by said user for modification, said step c) further comprising the steps of: 1) partially constructing scan chains within said scan plan according to said specification commands and said existing scan structures; 2) identifying scan structure within said design not covered by said specification commands; 3) generating a number of balanced top level scan chains within said scan plan based on said scan structure identified in step c2), based on scan structure constructed in step c1), and based on said scan configurations of step a); d) synthesizing said scan plan within said design by inserting scan resources into said design to realize said number of balanced top level scan chains of said scan plan.
Claim 11
Dependent Claim 45 words
A method as described in claim 8 wherein said step c3) further comprises the steps of: integrating scan structure identified in step c2) within partially constructed scan chains of step c1); and constructing additional scan chains composed of said scan structure identified in step c2).
Claim 12
Dependent Claim 41 words
A method as described in claim 8 wherein said step d) further comprises the step of: performing scan insertion to insert scan resources into said design based on said scan plan to realize said number of balanced top level scan chains.
Claim 13
Dependent Claim 70 words
A method as described in claim 8 wherein said step a) further comprises the step of receiving a specification command defining a scan configuration, said scan configuration including said number of top level scan chains to be constructed by said step c) and by said step d) and further including an indication of whether or not clock domain mixing is allowed by said step c) and by said step d).
Claim 14
Dependent Claim 54 words
A method as described in claim 8 wherein said step a) further comprises the step of receiving a specification command defining a scan segment, said scan segment including a member list of sequentially coupled scan cells and access points to said member list, said access points including scan in and scan out access points.
Claim 15
Dependent Claim 49 words
A method as described in claim 12 wherein said step a) further comprises the step of receiving a specification command defining a scan path, said scan path including a list of scan structures to be linked together by step c) and by step d) to form a scan chain.
Claim 16
Dependent Claim 48 words
A method as described in claim 13 wherein said step c1) further comprises the step of partially constructing said scan chains, according to said specification commands that define scan paths, by linking together scan structures that are defined within said scan paths, said scan structures including scan segments.
Claim 17
Dependent Claim 71 words
A method as described in claim 8 wherein said step c2) further comprises the step of identifying an inferred segment within a subdesign module of said design, said inferred segment representing an existing scan chain within said subdesign module and wherein said step c3) comprises the step of integrating said inferred segment into one of said balanced top level scan chains without disturbing said existing scan chain within said subdesign module.
Claim 18
Dependent Claim 259 words
A computer system including a processor coupled to a bus and a computer readable memory unit coupled to said bus, said computer readable memory having a program for inserting scan structure into a integrated circuit design, said integrated circuit design having one or more subdesign modules with existing scan chain segments located therein, said program when executed on said processor causing said computer system to perform the steps of: a) receiving specification commands from a user or from a user originated script file, said specification commands defining scan configurations indicating a manner in which scan chains are to be constructed and defining existing scan structures to be used in constructing said scan chains; b) annotating said design with said specification commands; c) analyzing said specification commands and said design to generate a scan plan based on said design and based on said specification commands without altering logic within said design, said step c) further comprising the steps of: 1) partially constructing scan chains within said scan plan according to said specification commands and said existing scan structure; 2) identifying scan structure within said design not covered by said specification commands; 3) generating a number of balanced top level scan chains within said scan plan based on said scan structure identified in step c2), based on scan structure constructed in step c1), and based on said scan configurations of step a); d) synthesizing said scan plan within said design by inserting scan structure into said design to realize said number of balanced top level scan chains of said scan plan.
Claim 19
Dependent Claim 259 words
A computer system including a processor coupled to a bus and a computer readable memory unit coupled to said bus, said computer readable memory having a program for inserting scan structure into a integrated circuit design, said integrated circuit design having one or more subdesign modules with existing scan chain segments located therein, said program when executed on said processor causing said computer system to perform the steps of: a) receiving specification commands from a user or from a user originated script file, said specification commands defining scan configurations indicating a manner in which scan chains are to be constructed and defining existing scan structures to be used in constructing said scan chains; b) annotating said design with said specification commands; c) analyzing said specification commands and said design to generate a scan plan based on said design and based on said specification commands without altering logic within said design, said step c) further comprising the steps of: 1) partially constructing scan chains within said scan plan according to said specification commands and said existing scan structure; 2) identifying scan structure within said design not covered by said specification commands; 3) generating a number of balanced top level scan chains within said scan plan based on said scan structure identified in step c2), based on scan structure constructed in step c1), and based on said scan configurations of step a); d) synthesizing said scan plan within said design by inserting scan structure into said design to realize said number of balanced top level scan chains of said scan plan.
Claim 20
Dependent Claim 44 words
A computer system as described in claim 16 wherein said step d) further comprises the step of: performing scan insertion to insert scan structure into said design based on said scan plan in order to realize said number of balanced top level scan chains.
Claim 21
Dependent Claim 72 words
A computer system as described in claim 16 wherein said step a) further comprises the step of receiving a specification command defining a scan configuration, said scan configuration including said number of balanced top level scan chains to be constructed by said step c) and by said step d) and further including an indication of whether or not clock domain mixing is allowed by said step c) and by said step d).
Claim 22
Dependent Claim 57 words
A computer system as described in claim 16 wherein said step a) further comprises the step of receiving a specification command defining a scan segment, said scan segment including a member list of sequentially coupled scan cells and access points to said member list, said access points including scan in, scan out, and scan enable access points.
Claim 23
Dependent Claim 50 words
A computer system as described in claim 19 wherein said step a) further comprises the step of receiving a specification command defining a scan path, said scan path including a list of scan structures to be linked together by step c) and by step d) to form a scan chain.
Claim 24
Dependent Claim 49 words
A computer system as described in claim 20 wherein said step c1) further comprises the step of partially constructing said scan chains, according to said specification commands that define scan paths, by linking together scan structures that are defined within said scan paths, said scan structures including scan segments.
Claim 25
Dependent Claim 72 words
A computer system as described in claim 16 wherein said step c2) further comprises the step of identifying an inferred segment within a subdesign module of said design, said inferred segment representing an existing scan chain within said subdesign module and wherein said step c3) comprises the step of integrating said inferred segment into one of said balanced to level scan chains without disturbing said existing scan chain within said subdesign module.
Claim 26
Dependent Claim 31 words
A computer system as described in claim 16 wherein said step c) further comprises the step of generating a report of scan resources to be constructed based on said scan plan.
Claim 27
Dependent Claim 23 words
A computer system as described in claim 16 further comprising the step of generating a report of existing scan resources within said design.
Claim 28
Dependent Claim 50 words
A computer system as described in claim 16 wherein said step a) further comprises the step of receiving a specification command defining a scan path, said scan path including a list of scan structures to be linked together by step c) and by step d) to form a scan chain.

References Cited (Backward Citations)

US4947357A Cited
US5627842A Cited
US5497378A Cited
US5617430A Cited
US5717702A Cited
US5703789A Cited
US5638380A Cited
US5661733A Cited
US5696771A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-09-06 2003-03-08 2003-09-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-09-06 2007-03-08 2007-09-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-09-06 2011-03-08 2011-09-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag