Claims Analysis
Total Claims: 48
Claim 1
Independent Claim
77 words
A method for automatic vector generation for observability-based statement coverage for a design of a circuit, comprising: providing a representation of said design; and automatically generating a vector sequence, based on said representation of said design, said vector sequence being generated by a computer so that every vector of the generated sequence is capable of propagating an error to an observable output defined by said design of said circuit, said vector sequence being generated by a computer.
Claim 2
Independent Claim
77 words
A method for automatic vector generation for observability-based statement coverage for a design of a circuit, comprising: providing a representation of said design; and automatically generating a vector sequence, based on said representation of said design, said vector sequence being generated by a computer so that every vector of the generated sequence is capable of propagating an error to an observable output defined by said design of said circuit, said vector sequence being generated by a computer.
Claim 3
Dependent Claim
67 words
The method for vector generation as set forth in claim 1 , further comprising a said step of simulating errors for said representation of said design using said vector sequence, comprising: modeling said errors as tags; and injecting said tags to determine whether perturbations in a value at a location will result in a perturbation in a value at said observable output for said generated vector sequence.
Claim 4
Dependent Claim
27 words
The method for vector generation as set forth in claim 2 , wherein said generating step includes using a hybrid linear programming and Boolean satisfiability (HSAT) procedure.
Claim 5
Dependent Claim
146 words
The method for vector generation as set forth in claim 3 , further comprising: said representation of said design being HDL code and including variable assignments; preparing a tag list, each tag corresponding to one of said variable assignments, each of said tags being initially uncovered; selecting an uncovered tag, said selected uncovered tag defining a set of transitive fanout variables and paths among said transitive fanout variables; marking said set of transitive fanout variables; attempting to generate said vector sequence covering said uncovered tag by: generating a set of constraints; setting up an HSAT problem using said set of constraints, and finding a solution to said HSAT problem by solving said set of constraints with said HSAT procedure, said solution defining said vector sequence covering said tag; and when said vector sequence covering said tag can be generated, identifying said tag as a covered tag.
Claim 6
Dependent Claim
56 words
The method for vector generation as set forth in claim 4 , further comprising, after said vector sequence is generated, performing said simulating of said vector sequence and said simulating of said errors with tag simulation using said vector sequence to detect, and to identify as covered, others of said tags covered by said vector sequence.
Claim 7
Dependent Claim
22 words
The method for vector generation as set forth in claim 4 , wherein said constraints include interacting linear constraints and Boolean constraints.
Claim 8
Dependent Claim
57 words
The method for vector generation as set forth in claim 4 , further comprising: after said step of preparing a tag list, randomly generating a plurality of vector sequences; performing said tag simulation using said plurality of randomly generated vector sequences; and identifying as covered ones of said tag list covered by said randomly generated vector sequences.
Claim 9
Dependent Claim
78 words
The method for vector generation as set forth in claim 4 , further comprising: said set of constraints being generated for only a limited number of said paths for said selected uncovered tag, thereby defining said HSAT problem as a limited HSAT problem; attempting to solve said limited HSAT problem; and when a solution to said limited HSAT problem cannot be found, generating said set of constraints for different ones of said paths for said selected uncovered tag.
Claim 10
Dependent Claim
31 words
The method for vector generation as set forth in claim 8 , further comprising selecting said limited number of said paths based on a respective length of each of said paths.
Claim 11
Dependent Claim
30 words
The method for vector generation as set forth in claim 4 , further comprising maximizing a magnitude for said selected tag at which said vector sequence covers the said tag.
Claim 12
Dependent Claim
41 words
The method for vector generation as set forth in claim 10 , wherein said step of maximizing said magnitude for said selected tag is performed by maximizing a difference between an upper bound and a lower bound of said tag magnitude.
Claim 13
Dependent Claim
52 words
The method for vector generation as set forth in claim 10 , wherein said step of maximizing said magnitude for said selected tag is performed by adding constraints to said HSAT problem forcing propagation of said tag only through operators that can propagate said tag independent of said respective tag magnitude thereof.
Claim 14
Dependent Claim
77 words
The method for vector generation as set forth in claim 10 , wherein said step of maximizing said magnitude for said selected tag is performed by making a determination, after said generation of said vector sequence, as to whether said vector sequence can propagate said selected tag independent of said respective tag magnitude, and, when said determination indicates that said vector sequence cannot propagate said selected tag independent of said respective tag magnitude, generating another vector sequence.
Claim 15
Dependent Claim
48 words
The method for vector generation as set forth in claim 4 , further comprising a step of identifying ones of said tags that cannot be propagated to an observable output, and wherein said step of generating vector sequences is not performed for said identified ones of said tags.
Claim 16
Dependent Claim
40 words
The method for vector generation as set forth in claim 4 , further comprising selecting ones of said tags for vector sequence generation in an order based on a respective minimum number of unrollings required for covering each said tag.
Claim 17
Dependent Claim
99 words
A computer system adapted to perform vector generation for observability-based statement coverage for a representation of a design of a circuit, comprising: a processor, and a memory including software instructions adapted to enable the computer system to perform the steps of: automatically generating a vector sequence, based on said representation of said design, said vector sequence being generated by a computer so that every vector of the generated sequence is capable of propagating an error to an observable output defined by said design of said circuit; and simulating errors for said representation of said design using said vector sequence.
Claim 18
Dependent Claim
99 words
A computer system adapted to perform vector generation for observability-based statement coverage for a representation of a design of a circuit, comprising: a processor, and a memory including software instructions adapted to enable the computer system to perform the steps of: automatically generating a vector sequence, based on said representation of said design, said vector sequence being generated by a computer so that every vector of the generated sequence is capable of propagating an error to an observable output defined by said design of said circuit; and simulating errors for said representation of said design using said vector sequence.
Claim 19
Dependent Claim
62 words
The computer system adapted to perform vector generation as set forth in claim 16 , wherein said software instructions, for said step of simulating errors, include: modeling said errors as tags; and injecting said tags to determine whether perturbations in a value at a location will result in a perturbation in a value of said observable output for said generated vector sequence.
Claim 20
Dependent Claim
34 words
The computer system adapted to perform vector generation as set forth in claim 17 , wherein said software instructions, for said generating step, include using a hybrid linear programming and Boolean satisfiability (HSAT) procedure.
Claim 21
Dependent Claim
154 words
The computer system adapted to perform vector generation as set forth in claim 18 , wherein said representation of said design is IIDL code including variable assignments, and wherein said software instructions further comprise: preparing a tag list, each tag corresponding to one of said variable assignments, each of said tags being initially uncovered; selecting an uncovered tag, said selected uncovered tag defining a set of transitive fanout variables and paths among said transitive fanout variables; marking said set of transitive fanout variables; attempting to generate said vector sequence covering said uncovered tag by: generating a set of constraints; setting up an HSAT problem using said set of constraints, and finding a solution to said HSAT problem by solving said set of constraints with said HSAT procedure, said solution defining said vector sequence covering said tag; and when said vector sequence covering said tag can be generated, identifying said tag as a covered tag.
Claim 22
Dependent Claim
62 words
The computer system adapted to perform vector generation as set forth in claim 19 , further comprising software instructions for, after said vector sequence is generated, performing said simulating of said vector sequence and said simulating of said errors with tag simulation using said vector sequence to detect, and to identify as covered, others of said tags covered by said vector sequence.
Claim 23
Dependent Claim
25 words
The computer system adapted to perform vector generation as set forth in claim 19 , wherein said constraints include interacting linear constraints and Boolean constraints.
Claim 24
Dependent Claim
63 words
The computer system adapted to perform vector generation as set forth in claim 19 , further comprising software instructions for: after said step of preparing a tag list, randomly generating a plurality of vector sequences; performing said tag simulation using said plurality of randomly generated vector sequences; and identifying as covered ones of said tag list covered by said randomly generated vector sequences.
Claim 25
Dependent Claim
84 words
The computer system adapted to perform vector generation as set forth in claim 19 , further comprising software instructions for: said set of constraints being generated for only a limited number of said paths for said selected uncovered tag, thereby defining said HSAT problem as a limited HSAT problem; attempting to solve said limited HSAT problem; and when a solution to said limited HSAT problem cannot be found, generating said set of constraints for different ones of said paths for said selected uncovered tag.
Claim 26
Dependent Claim
37 words
The computer system adapted to perform vector generation as set forth in claim 23 , further comprising software instructions for selecting said limited number of said paths based on a respective length of each of said paths.
Claim 27
Dependent Claim
36 words
The computer system adapted to perform vector generation as set forth in claim 19 , further comprising software instructions for maximizing a magnitude for said selected tag at which said vector sequence covers the said tag.
Claim 28
Dependent Claim
44 words
The computer system adapted to perform vector generation as set forth in claim 25 , wherein said step of maximizing said magnitude for said selected tag is performed by maximizing a difference between an upper bound and a lower bound of said tag magnitude.
Claim 29
Dependent Claim
55 words
The computer system adapted to perform vector generation as set forth in claim 25 , wherein said step of maximizing said magnitude for said selected tag is performed by adding constraints to said HSAT problem forcing propagation of said tag only through operators that can propagate said tag independent of said respective tag magnitude thereof.
Claim 30
Dependent Claim
80 words
The computer system adapted to perform vector generation as set forth in claim 25 , wherein said step of maximizing said magnitude for said selected tag is performed by making a determination, after said generation of said vector sequence, as to whether said vector sequence can propagate said selected tag independent of said respective tag magnitude, and, when said determination indicates that said vector sequence cannot propagate said selected tag independent of said respective tag magnitude, generating another vector sequence.
Claim 31
Dependent Claim
54 words
The computer system adapted to perform vector generation as set forth in claim 19 , further comprising software instructions for a step of identifying ones of said tags that cannot be propagated to an observable output, and wherein said step of generating vector sequences is not performed for said identified ones of said tags.
Claim 32
Dependent Claim
46 words
The computer system adapted to perform vector generation as set forth in claim 19 , further comprising software instructions for selecting ones of said tags for vector sequence generation in an order based on a respective minimum number of unrollings required for covering each said tag.
Claim 33
Dependent Claim
107 words
A computer program product for enabling a computer to perform vector generation for observability-based statement coverage for a representation of a design of a circuit, comprising: software instructions for enabling the computer to perform predetermined operations, and a computer readable medium bearing the software instructions; the predetermined operations including the steps of: automatically generating a vector sequence, based on said representation of said design, said vector sequence being generated by a computer so that every vector of the generated sequence is capable of propagating an error to an observable output defined by said design of said circuit; and simulating errors for said modified version of said representation.
Claim 34
Dependent Claim
107 words
A computer program product for enabling a computer to perform vector generation for observability-based statement coverage for a representation of a design of a circuit, comprising: software instructions for enabling the computer to perform predetermined operations, and a computer readable medium bearing the software instructions; the predetermined operations including the steps of: automatically generating a vector sequence, based on said representation of said design, said vector sequence being generated by a computer so that every vector of the generated sequence is capable of propagating an error to an observable output defined by said design of said circuit; and simulating errors for said modified version of said representation.
Claim 35
Dependent Claim
69 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 31 , wherein said predetermined operations, for said step of simulating errors, include: modeling said errors as tags; and injecting said tags to determine whether perturbations in a value at a location will result in a perturbation in a value of said observable output of said representation for said generated vector sequence.
Claim 36
Dependent Claim
38 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 32 , wherein said predetermined operations, for said generating step, include using a hybrid linear programming and Boolean satisfiability (HSAT) procedure.
Claim 37
Dependent Claim
159 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 33 , wherein said representation of said design is HDL code and includes variable assignments, and wherein said predetermined operations further comprise: preparing a tag list, each tag corresponding to one of said variable assignments, each of said tags being initially uncovered; selecting an uncovered tag, said selected uncovered tag defining a set of transitive fanout variables and paths among said transitive fanout variables; marking said set of transitive fanout variables; attempting to generate said vector sequence covering said uncovered tag by: generating a set of constraints; setting up an HSAT problem using said set of constraints, and finding a solution to said HSAT problem by solving said set of constraints with said HSAT procedure, said solution defining said vector sequence covering said tag; and when said vector sequence covering said tag can he generated, identifying said tag as a covered tag.
Claim 38
Dependent Claim
66 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 34 , wherein said predetermined operations include, after said vector sequence is generated, performing said simulating of said vector sequence and said simulating of said errors with tag simulation using said vector sequence to detect, and to identify as covered, others of said tags covered by said vector sequence.
Claim 39
Dependent Claim
29 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 34 , wherein said constraints include interacting linear constraints and Boolean constraints.
Claim 40
Dependent Claim
67 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 34 , wherein said predetermined operations include: after said step of preparing a tag list, randomly generating a plurality of vector sequences; performing said tag simulation using said plurality of randomly generated vector sequences; and identifying as covered ones of said tag list covered by said randomly generated vector sequences.
Claim 41
Dependent Claim
88 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 34 , wherein said predetermined operations include: said set of constraints being generated for only a limited number of said paths for said selected uncovered tag, thereby defining said HSAT problem as a limited HSAT problem; attempting to solve said limited HSAT problem; and when a solution to said limited HSAT problem cannot be found, generating said set of constraints for different ones of said paths for said selected uncovered tag.
Claim 42
Dependent Claim
41 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 38 , wherein said predetermined operations include selecting said limited number of said paths based on a respective length of each of said paths.
Claim 43
Dependent Claim
40 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 34 , wherein said predetermined operations include maximizing a magnitude for said selected tag at which said vector sequence covers the said tag.
Claim 44
Dependent Claim
48 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 40 , wherein said step of maximizing said magnitude for said selected tag is performed by maximizing a difference between an upper bound and a lower bound of said tag magnitude.
Claim 45
Dependent Claim
59 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 40 , wherein said step of maximizing said magnitude for said selected tag is performed by adding constraints to said HSAT problem forcing propagation of said tag only through operators that can propagate said tag independent of said respective tag magnitude thereof.
Claim 46
Dependent Claim
84 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 40 , wherein said step of maximizing said magnitude for said selected tag is performed by making a determination, after said generation of said vector sequence, as to whether said vector sequence can propagate said selected tag independent of said respective tag magnitude, and, when said determination indicates that said vector sequence cannot propagate said selected tag independent of said respective tag magnitude, generating another vector sequence.
Claim 47
Dependent Claim
58 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 34 , wherein said predetermined operations include a step of identifying ones of said tags that cannot be propagated to an observable output, and wherein said step of generating vector sequences is not performed for said identified ones of said tags.
Claim 48
Dependent Claim
50 words
The computer program product for enabling a computer to perform vector generation as set forth in claim 34 , wherein said predetermined operations include selecting ones of said tags for vector sequence generation in an order based on a respective minimum number of unrollings required for covering each said tag.