Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
133 words
A method for generating a circuit design from a protocol specification, comprising the steps, performed by a data processing system of: receiving the protocol specification in a language with applicative semantics for specifying control flow and procedural semantics for specifying data flow; storing the protocol specification in a memory of the data processing system; receiving from a user an indication of a "style" parameter value; converting, when the style parameter value is "distributed", the protocol specification to a virtual circuit and then converting the virtual circuit to a first High-level Description Language (HDL) circuit design; and converting, when the style parameter value is "min-encoded", the protocol specification to a virtual circuit, then to a state transition graph, then to a second virtual circuit, and finally to a second High-level Description Language circuit design.
Claim 2
Independent Claim
133 words
A method for generating a circuit design from a protocol specification, comprising the steps, performed by a data processing system of: receiving the protocol specification in a language with applicative semantics for specifying control flow and procedural semantics for specifying data flow; storing the protocol specification in a memory of the data processing system; receiving from a user an indication of a "style" parameter value; converting, when the style parameter value is "distributed", the protocol specification to a virtual circuit and then converting the virtual circuit to a first High-level Description Language (HDL) circuit design; and converting, when the style parameter value is "min-encoded", the protocol specification to a virtual circuit, then to a state transition graph, then to a second virtual circuit, and finally to a second High-level Description Language circuit design.
Claim 3
Dependent Claim
56 words
The method of claim 1, wherein the step of receiving the protocol specification includes the step of: displaying a frame editor window of a graphical user interface; receiving the protocol specification from a user via the frame editor of the graphical user interface, the user graphically entering frames of the protocol specification via the frame editor.
Claim 4
Dependent Claim
56 words
The method of claim 1, wherein the step of receiving a style parameter value incudes the step of: displaying a synthesis window of a graphical user interface; receiving the style parameter value from the user via the synthesis window of the graphical user interface, the user graphically indicating the style parameter value via the synthesis window.
Claim 5
Dependent Claim
54 words
The method of claim 1, wherein the first converting step incudes the steps of: receiving from the user an indication of an "effort" parameter value via a graphical user interface; minimizing, when the effort parameter value is "high", the virtual circuit before converting the virtual circuit to the first High-level Description Language circuit design.
Claim 6
Dependent Claim
28 words
The method of claim 1, wherein the second converting step includes the step of: minimizing the state transition graph before it is converted to the second virtual circuit.
Claim 7
Dependent Claim
29 words
The method of claim 1, further comprising the step of synthesizing a low-level circuit design from a one of the first and the second High-level Description Language circuit designs.
Claim 8
Dependent Claim
90 words
The method of claim 1, further comprising the steps of: receiving, from the user via a graphical user interface, a signal initiating a simulation of the behavior of a one of the first or the second High-level Description Language circuit designs via the graphical user interface; receiving from the user, via the graphical user interface, an indication of a simulation command; sending the simulation command to a simulator software program; receiving from the simulator program a result of simulation; and displaying, via the graphical user interface, the result of simulation.
Claim 9
Dependent Claim
100 words
The method of claim 1, further comprising the steps of: receiving, from the user via a graphical user interface, a signal initiating an analysis of the first virtual circuit; receiving from the user, via the graphical user interface, an indication of an selected frame; graphically displaying the specified protocol with the selected frame highlighted; receiving from the user, via the graphical user interface, an analysis command; analyzing the virtual circuit in accordance with the analysis command to yield a set of analysis results; and graphically displaying the specified protocol with frames corresponding to the set of analysis result states highlighted.
Claim 10
Dependent Claim
57 words
The method of claim 1, wherein the first converting step includes the steps of: generating a linked protocol tree having a plurality of nodes; generating a plurality of debug signals, where the number of debug signals corresponds to the number of nodes in the linked protocol tree, where the debug signals are included in the circuit design.
Claim 11
Dependent Claim
41 words
The method of claim 9, further comprising the steps of: simulating the High-level Description Language circuit design in accordance with the debug signals; displaying a result of the simulating step via a graphical user interface in accordance with the debug signals.
Claim 12
Dependent Claim
55 words
The method of claim 1, wherein the first converting step includes the steps of: displaying a synthesis window of a graphical user interface; receiving a debug parameter value from the user via the synthesis window of the graphical user interface, the user graphically indicating whether debug signals should be generated during the first converting step.
Claim 13
Independent Claim
117 words
A method for inputting a protocol specification, comprising the steps, performed by a data processing system of: displaying a frame editor window of a graphical user interface on a display screen; receiving an indication from a user that a new frame is to be specified; displaying an empty new frame on the display screen; allowing the user to enter frames within the new frame via the graphical user interface in a language with applicative semantics for specifying control flow and procedural semantics for specifying data flow; allowing the user to cut and paste existing frames via the graphical user interface; and storing the entered frames and the cut and pasted frames in a frame definition data base.
Claim 14
Independent Claim
117 words
A method for inputting a protocol specification, comprising the steps, performed by a data processing system of: displaying a frame editor window of a graphical user interface on a display screen; receiving an indication from a user that a new frame is to be specified; displaying an empty new frame on the display screen; allowing the user to enter frames within the new frame via the graphical user interface in a language with applicative semantics for specifying control flow and procedural semantics for specifying data flow; allowing the user to cut and paste existing frames via the graphical user interface; and storing the entered frames and the cut and pasted frames in a frame definition data base.
Claim 15
Independent Claim
164 words
An apparatus for synthesizing an electrical circuit, comprising: a memory; a graphical user interface, receiving user input defining a protocol and displaying the user input as frames on a display screen and further storing the user input as a frame definition data base stored in the memory, wherein the user input is received in a language with applicative semantics for specifying control flow and procedural semantics for specifying data flow; a virtual circuit generator receiving the frame definition data base and generating a first virtual circuit representation stored in the memory; a state transition graph generator, receiving the first virtual circuit representation and generating a state transition graph stored in the memory; a state transition graph to virtual circuit converter, receiving the state transition graph and generating a second virtual circuit; and an HDL generator, for receiving a one of the first virtual circuit representation, second virtual circuit representation or state transition graph, and generating an HDL representation of the circuit to be synthesized.
Claim 16
Independent Claim
164 words
An apparatus for synthesizing an electrical circuit, comprising: a memory; a graphical user interface, receiving user input defining a protocol and displaying the user input as frames on a display screen and further storing the user input as a frame definition data base stored in the memory, wherein the user input is received in a language with applicative semantics for specifying control flow and procedural semantics for specifying data flow; a virtual circuit generator receiving the frame definition data base and generating a first virtual circuit representation stored in the memory; a state transition graph generator, receiving the first virtual circuit representation and generating a state transition graph stored in the memory; a state transition graph to virtual circuit converter, receiving the state transition graph and generating a second virtual circuit; and an HDL generator, for receiving a one of the first virtual circuit representation, second virtual circuit representation or state transition graph, and generating an HDL representation of the circuit to be synthesized.
Claim 17
Dependent Claim
35 words
The apparatus of claim 13, wherein the graphical user interface further includes portions of the interface that allow a user to browse at least one of: the protocol, frames, actions, variables, ports, expressions, and conditions.
Claim 18
Dependent Claim
35 words
The apparatus of claim 13, wherein the graphical user interface further includes portions of the interface that allow a user to edit at least one of: the protocol, frames, actions, variables, ports, expressions, and conditions.
Claim 19
Dependent Claim
38 words
The apparatus of claim 13, further including a frame editor interface that allows a user to input frames of at least one of the following types: sequence, hierarchy, alternative, optional, repetitions, qualified, low level, simultaneous, IF, and template.
Claim 20
Dependent Claim
44 words
The apparatus of claim 13, wherein the virtual circuit includes: an optimizer for the virtual circuit, receiving the first virtual circuit representation and generating an optimized virtual circuit representation, the optimizer operating in accordance with a user command received via the graphical user interface.
Claim 21
Dependent Claim
30 words
The apparatus of claim 13, wherein the STG to VC converter includes an STG minimizer that minimizes the state transition graph before it is converted to the second virtual circuit.
Claim 22
Dependent Claim
34 words
The apparatus of claim 13, further comprising: an STG to HDL converter that converts the state transition graph to a second HDL representation in accordance with user input received via the graphical user interface.
Claim 23
Dependent Claim
38 words
The apparatus of claim 13, further comprising a SIMPLUG interface for software controlling the graphical user interface, the SIMPLUG interface providing a standardized interface to the software so that a variety of simulator programs can simulate the HDL.