Claims Analysis
Total Claims: 25
Claim 1
Independent Claim
273 words
A method for generating a controller structure, comprising the steps of: inputting at least one behavioral specification comprising a list of statements; scheduling, allocating, and binding of the at least one behavioral specification to produce a component netlist, dividing the list of statements of the at least one behavioral specification resulting from said step of scheduling, allocating, and binding into at least one statement block; grouping the list of statements from each statement block into at least one cluster of statements for generating the controller structure that controls the component netlist that is being allocated by said step of scheduling, allocating, and binding; mapping each statement block into at least one control block; and mapping each cluster of statements into a control element, wherein the at least one control block and the control element cooperate to form the controller structure, wherein said controller structure comprises: a first finite state machine which serves as a first control element having at least one input and at least one output; a second finite state machine which serves as a second control element having at least one input and at least one output; and a merging logic circuit having a plurality of inputs and an output, wherein a first output of the first finite state machine is coupled to a first input of the plurality of inputs of the merging logic circuit and a first output of the second finite state machine is coupled to a second input of the plurality of inputs of the merging logic circuit, wherein the first and second finite state machines and the merging logic circuit cooperate to form a controller structure.
Claim 2
Independent Claim
273 words
A method for generating a controller structure, comprising the steps of: inputting at least one behavioral specification comprising a list of statements; scheduling, allocating, and binding of the at least one behavioral specification to produce a component netlist, dividing the list of statements of the at least one behavioral specification resulting from said step of scheduling, allocating, and binding into at least one statement block; grouping the list of statements from each statement block into at least one cluster of statements for generating the controller structure that controls the component netlist that is being allocated by said step of scheduling, allocating, and binding; mapping each statement block into at least one control block; and mapping each cluster of statements into a control element, wherein the at least one control block and the control element cooperate to form the controller structure, wherein said controller structure comprises: a first finite state machine which serves as a first control element having at least one input and at least one output; a second finite state machine which serves as a second control element having at least one input and at least one output; and a merging logic circuit having a plurality of inputs and an output, wherein a first output of the first finite state machine is coupled to a first input of the plurality of inputs of the merging logic circuit and a first output of the second finite state machine is coupled to a second input of the plurality of inputs of the merging logic circuit, wherein the first and second finite state machines and the merging logic circuit cooperate to form a controller structure.
Claim 3
Dependent Claim
37 words
The method of claim 1, wherein the step of scheduling, allocating, and binding of the at least one behavioral specification includes assigning a set of attributes describing a style of executing the at least one behavioral specification.
Claim 4
Dependent Claim
37 words
The method of claim 2, wherein assigning a set of attributes includes assigning a sequence point attribute, a clock attribute, a synchronization mode attribute, and a clock cycle attribute to each statement of the list of statements.
Claim 5
Dependent Claim
29 words
The method of claim 2, wherein assigning a set of attributes includes assigning a synchronization mode attribute and a clock attribute to each statement of the list of statements.
Claim 6
Dependent Claim
24 words
The method of claim 2, wherein assigning a set of attributes includes assigning a clock attribute to each statement of the list of statements.
Claim 7
Dependent Claim
46 words
The method of claim 2, wherein the step of grouping the list of statements from each statement block into at least one cluster of statements includes grouping the list of statements in accordance with a sequence point attribute, a clock attribute, and a synchronization mode attribute.
Claim 8
Dependent Claim
38 words
The method of claim 2, wherein the step of grouping the list of statements from each statement block into at least one cluster of statements includes grouping the list of statements in accordance with a sequence point attribute.
Claim 9
Dependent Claim
37 words
The method of claim 2, wherein the step of grouping the list of statements from each statement block into at least one cluster of statements includes grouping the list of statements in accordance with a clock attribute.
Claim 10
Dependent Claim
46 words
The method of claim 1, wherein the steps of mapping each statement block and each cluster of statements includes mapping each statement block of the at least one statement block using a control block template and mapping each cluster of statements using a control element template.
Claim 11
Dependent Claim
43 words
The method of claim 1, wherein the step of grouping the list of statements from each statement block into at least one cluster of statements includes forming the at least one cluster of statements to be controlled by a single finite state machine.
Claim 12
Dependent Claim
23 words
The method of claim 1, further including generating the controller structure capable of supporting single-thread execution, multiple-thread execution, and pipeline execution structures together.
Claim 13
Dependent Claim
15 words
The method of claim 1, further including generating the controller structure to support multiple clocks.
Claim 14
Dependent Claim
133 words
A controller structure template, comprising: a first finite state machine which serves as a first control element having at least one input and at least one output; a second finite state machine which serves as a second control element having at least one input and at least one output; and a merging logic circuit having a plurality of inputs and an output, wherein a first output of the first finite state machine is coupled to a first input of the plurality of inputs of the merging logic circuit and a first output of the second finite state machine is coupled to a second input of the plurality of inputs of the merging logic circuit, wherein the first and second finite state machines and the merging logic circuit cooperate to form a controller structure.
Claim 15
Dependent Claim
133 words
A controller structure template, comprising: a first finite state machine which serves as a first control element having at least one input and at least one output; a second finite state machine which serves as a second control element having at least one input and at least one output; and a merging logic circuit having a plurality of inputs and an output, wherein a first output of the first finite state machine is coupled to a first input of the plurality of inputs of the merging logic circuit and a first output of the second finite state machine is coupled to a second input of the plurality of inputs of the merging logic circuit, wherein the first and second finite state machines and the merging logic circuit cooperate to form a controller structure.
Claim 16
Dependent Claim
35 words
The controller structure template of claim 13, wherein the first finite state machine is coupled for receiving a first clock signal and the second finite state machine is coupled for receiving a second clock signal.
Claim 17
Dependent Claim
60 words
The controller structure template of claim 13, further including a done detection circuit having one input of the at least one input coupled to an output of the at least one output of the first finite state machine, and an output, wherein the done detection circuit indicates when control block containing at least the first finite state machine is complete.
Claim 18
Dependent Claim
22 words
The controller structure template of claim 13, wherein the merging logic circuit comprises a logical function circuit lacking additional data selection inputs.
Claim 19
Dependent Claim
24 words
The controller structure template of claim 16, wherein the logical function circuit comprises one of a logical AND function or a logical OR function.
Claim 20
Dependent Claim
30 words
The controller structure template of claim 13, further including a branching logic circuit, wherein the first control element is coupled to the merging logic circuit via the branching logic circuit.
Claim 21
Dependent Claim
28 words
The controller structure template of claim 18, further including a child block, wherein the child block is coupled to the controller structure template via the branching logic circuit.
Claim 22
Dependent Claim
69 words
A control element template for a controller structure, comprising: a sequence point circuit having at least one input and an output; and a finite state machine having at least one input and at least one output, the output of the sequence point circuit coupled to a first input of the finite state machine, wherein the sequence point circuit and the finite state machine cooperate to form the controller structure.
Claim 23
Dependent Claim
69 words
A control element template for a controller structure, comprising: a sequence point circuit having at least one input and an output; and a finite state machine having at least one input and at least one output, the output of the sequence point circuit coupled to a first input of the finite state machine, wherein the sequence point circuit and the finite state machine cooperate to form the controller structure.
Claim 24
Dependent Claim
29 words
The control element template of claim 20, wherein the output of the sequence point circuit is coupled to the first input of the finite state machine by a flip-flop.
Claim 25
Dependent Claim
63 words
The control element template of claim 20, further including a wait generation circuit having at least one input and at least one output, wherein a first output of the wait generation circuit is coupled to a second input of the finite state machine and a first output of the finite state machine is coupled to a first input of the wait generation circuit.