← Back to Patent Explorer
US5966306A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for verifying protocol conformance of an electrical interface

Assignee: Apple Inc
•
Filing: 1997-07-07
•
Granted: 1999-10-12
•
Expires: 2017-07-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and technique for verifying bus protocol in the design of integrated circuits. A correctness evaluator receives simulation results from a monitor file and prediction information generated from protocol templates. The correctness evaluator operates according to a "clean bus" theory that an error includes those events not specified by the circuit specification, including spurious transitions. Protocol templates define the elements within the circuit, and are provided to a prediction generator which creates a prediction file. The correctness evaluator compares a simulation monitor file to the prediction file, and outputs a pass or fail result. The present invention offers a flexible method to separate protocol-defined timing constraints from implementation-dependent timing constraints. The present invention allows input from a test program to tailor bus signal change predictions and verify that the test program performs as it is programmed to perform.

Inventors

  • 👤 Mark H. Nodine
  • 👤 Harold M. Martin
  • 👤 Anhtu Nguyen

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 20:22
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/22; G06F11/2205; G06F11/221; H; H04; H04L; H04L1/00; H04L1/24

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 266 words
A method for verifying conformance of a protocol for an electrical interface, the electrical interface having a plurality of signals, the method comprising the steps of: selecting a test to be performed; providing one of an electrical circuit having the electrical interface and a computer model of the electrical circuit having the electrical interface; applying electrical stimulus to the one of the electrical circuit and the computer model of the electrical circuit; providing a monitor to monitor the plurality of signals; detecting a transition of at least one of the plurality of signals; in response to said step of detecting, storing state and timing information of the at least one of the plurality of signals; storing a plurality of protocol constraints within a protocol template; deriving a prediction file from the test to be performed and the protocol template, the prediction file including the plurality of protocol constraints; comparing the state and timing information of the at least one of the plurality of signals to the plurality of protocol constraints; and in response to said step of comparing, determining if the one of the electrical circuit and the computer model of the electrical circuit conform to the protocol for the electrical interface, wherein the step of storing a plurality of protocol constraints within a protocol template further comprises the step of: representing the plurality of protocol constraints within a directed graph having a plurality of nodes, wherein each one of the plurality of nodes has a first attribute characterization of OPTIONAL/REQUIRED, and wherein at least one of the plurality of protocol constraints specifies a timing range.
Claim 2
Independent Claim 266 words
A method for verifying conformance of a protocol for an electrical interface, the electrical interface having a plurality of signals, the method comprising the steps of: selecting a test to be performed; providing one of an electrical circuit having the electrical interface and a computer model of the electrical circuit having the electrical interface; applying electrical stimulus to the one of the electrical circuit and the computer model of the electrical circuit; providing a monitor to monitor the plurality of signals; detecting a transition of at least one of the plurality of signals; in response to said step of detecting, storing state and timing information of the at least one of the plurality of signals; storing a plurality of protocol constraints within a protocol template; deriving a prediction file from the test to be performed and the protocol template, the prediction file including the plurality of protocol constraints; comparing the state and timing information of the at least one of the plurality of signals to the plurality of protocol constraints; and in response to said step of comparing, determining if the one of the electrical circuit and the computer model of the electrical circuit conform to the protocol for the electrical interface, wherein the step of storing a plurality of protocol constraints within a protocol template further comprises the step of: representing the plurality of protocol constraints within a directed graph having a plurality of nodes, wherein each one of the plurality of nodes has a first attribute characterization of OPTIONAL/REQUIRED, and wherein at least one of the plurality of protocol constraints specifies a timing range.
Claim 3
Dependent Claim 36 words
A method as in claim 1, further comprising the step of: determining a first agent required by the test to be performed; and extracting initialization information for the first agent from the test to be performed.
Claim 4
Dependent Claim 90 words
A method as in claim 1, further comprising the steps of: determining a first agent and a second agent required by the test to be performed; storing a first plurality of protocol constraints corresponding to the first agent within a first protocol template; storing a second plurality of protocol constraints corresponding to the second agent within a second protocol template; and deriving the prediction file from the test to be performed and the first and second protocol templates, the prediction file including the first and second plurality of protocol constraints.
Claim 5
Dependent Claim 22 words
A method as in claim 3, wherein the first plurality of protocol constraints and the second plurality of protocol constraints are identical.
Claim 6
Dependent Claim 41 words
A method as in claim 3, wherein the step of deriving the prediction file from the test to be performed and the first and second protocol templates further comprises the step of: ordering evaluation of the first and second protocol templates.
Claim 7
Dependent Claim 29 words
A method as in claim 5, wherein the step of ordering further comprises the step of: determining the ordering to be used based upon the test to be performed.
Claim 8
Dependent Claim 23 words
A method as in claim 1, wherein the plurality of protocol constraints is a subset of all protocol constraints required by the protocol.
Claim 9
Dependent Claim 34 words
A method as in claim 1, further comprising the step of: in response to said step of comparing, detecting that the transition of the at least one of the plurality of signals is spurious.
Claim 10
Dependent Claim 21 words
A method as in claim 1, wherein each one of the plurality of nodes has a second attribute characterization of AND/OR.
Claim 11
Dependent Claim 31 words
A method as in claim 9, further comprising the step of: specifying an evaluation order of successors for each one of the plurality of nodes that has an OR attribute characterization.
Claim 12
Dependent Claim 22 words
A method as in claim 9, wherein each one of the plurality of nodes has a third attribute characterization of SAMPLE ONLY/DRIVE.
Claim 13
Dependent Claim 35 words
A method as in claim 1, further comprising the steps of: evaluating a first node from the plurality of nodes, the first node having an evaluated condition; providing phase constraints corresponding to the evaluated condition.
Claim 14
Dependent Claim 45 words
A method as in claim 1, further comprising the step of: providing executable code corresponding to a first one of the plurality of nodes; and executing the executable code when a condition of the first one of the plurality of nodes evaluates to be true.
Claim 15
Dependent Claim 19 words
A method as in claim 13, wherein execution of the executable code provides status information regarding the electrical interface.
Claim 16
Dependent Claim 16 words
A method as in claim 14, wherein the status information indicates when a bus transaction starts.
Claim 17
Dependent Claim 17 words
A method as in claim 1, wherein the electrical interface is a bus on an integrated circuit.
Claim 18
Dependent Claim 21 words
A method as in claim 1, further comprising the step of: extracting all state information for a selected point in time.
Claim 19
Dependent Claim 20 words
A method as in claim 17, wherein the selected point in time is a selected phase of a clock signal.
Claim 20
Dependent Claim 19 words
A method as in claim 1, wherein the step of comparing further comprises determining test coverage for protocol conformity.
Claim 21
Dependent Claim 58 words
A method of manufacturing integrated circuits utilizing the method in claim 1 which further comprises: generating a transistor placement file from the computer model of the electrical circuit; creating a set of one or more lithographic masks from the transistor placement file; and fabricating a plurality of integrated circuits from the set of one or more lithographic masks.
Claim 22
Dependent Claim 27 words
A method as in claim 1, wherein the timing range is specified by a maximum value and a minimum value, and wherein the maximum value is infinite.
Claim 23
Dependent Claim 266 words
Computer readable medium containing computer software encoded in a machine readable format for verifying conformance of a protocol for an electrical interface, the electrical interface having a plurality of signals, said computer software comprising: a set of computer instructions for providing a computer model of an electrical circuit having the electrical; a set of computer instructions for applying electrical stimulus to the computer model of the electrical circuit; a set of computer instructions for providing a monitor to monitor the plurality of signals; a set of computer instructions for detecting a transition of at least one of the plurality of signals; a set of computer instructions for storing state and timing information of the at least one of the plurality of signals; a set of computer instructions for storing a plurality of protocol constraints within a protocol template, wherein the plurality of protocol constraints are represented within a directed graph having a plurality of nodes, wherein each one of the plurality of nodes has a first attribute characterization of OPTIONAL/REQUIRED, and wherein at least one of the plurality of protocol constraints specifies a timing range; a set of computer instructions for deriving a prediction file from a test to be performed and the protocol template, the prediction file including the plurality of protocol constraints; a set of computer instructions for comparing the state and timing information of the at least one of the plurality of signals to the plurality of protocol constraints; and a set of computer instructions for determining if the computer model of the electrical circuit conforms to the protocol for the electrical interface.
Claim 24
Dependent Claim 266 words
Computer readable medium containing computer software encoded in a machine readable format for verifying conformance of a protocol for an electrical interface, the electrical interface having a plurality of signals, said computer software comprising: a set of computer instructions for providing a computer model of an electrical circuit having the electrical; a set of computer instructions for applying electrical stimulus to the computer model of the electrical circuit; a set of computer instructions for providing a monitor to monitor the plurality of signals; a set of computer instructions for detecting a transition of at least one of the plurality of signals; a set of computer instructions for storing state and timing information of the at least one of the plurality of signals; a set of computer instructions for storing a plurality of protocol constraints within a protocol template, wherein the plurality of protocol constraints are represented within a directed graph having a plurality of nodes, wherein each one of the plurality of nodes has a first attribute characterization of OPTIONAL/REQUIRED, and wherein at least one of the plurality of protocol constraints specifies a timing range; a set of computer instructions for deriving a prediction file from a test to be performed and the protocol template, the prediction file including the plurality of protocol constraints; a set of computer instructions for comparing the state and timing information of the at least one of the plurality of signals to the plurality of protocol constraints; and a set of computer instructions for determining if the computer model of the electrical circuit conforms to the protocol for the electrical interface.
Claim 25
Dependent Claim 26 words
A method of manufacturing the computer readable medium in claim 22 which comprises: encoding the computer software in machine readable format on the computer readable medium.

References Cited (Backward Citations)

US4825438A Cited
US4764862A Cited
US5440697A Cited
US5566347A Cited
US5455911A Cited
US5590355A Cited
US5623499A Cited
US5758101A Cited
US5663076A Cited
US5699350A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag