Dynamically tracking data values in a configurable IC
First Claim
1. A method of dynamically tracking data values in an integrated circuit (IC) comprising configurable circuits for configurably performing a plurality of operations, the method comprising:
- while a first plurality of configurable circuits is performing a particular user design, receiving a user request for a data value being produced by a set of configurable circuits from the first plurality of configurable circuits for the particular user design; and
without modifying a configured set of operations of the first plurality of configurable circuits, dynamically configuring a second plurality of configurable circuits of said IC according to said received user request to monitor said data value while the first plurality of configurable circuits is performing the particular user design.
3 Assignments
0 Petitions
Accused Products
Abstract
Some embodiments provide a method of dynamically tracking data values in a configurable integrated circuit (IC). The method, during a run time of the configurable IC, receives a request for a data value and dynamically configures the configurable IC to monitor the data value. In some embodiments, the method, in dynamically configuring the configurable IC, dynamically configures a debug network of the configurable IC. In some such embodiments, the method, in dynamically configuring the configurable IC, further dynamically configures a set of configurable routing circuits of the configurable IC. In some embodiments the configuration is performed while the IC is implementing a user design circuit.
182 Citations
36 Claims
-
1. A method of dynamically tracking data values in an integrated circuit (IC) comprising configurable circuits for configurably performing a plurality of operations, the method comprising:
-
while a first plurality of configurable circuits is performing a particular user design, receiving a user request for a data value being produced by a set of configurable circuits from the first plurality of configurable circuits for the particular user design; and without modifying a configured set of operations of the first plurality of configurable circuits, dynamically configuring a second plurality of configurable circuits of said IC according to said received user request to monitor said data value while the first plurality of configurable circuits is performing the particular user design. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of dynamically tracking data values in a configurable integrated circuit (IC), the method comprising:
-
while a first plurality of configurable circuits of the configurable IC is performing a particular user design, receiving a request for a data value produced by a first set of configurable circuits; and dynamically configuring a second plurality of configurable circuits of said configurable IC to monitor said data value without making changes to the first plurality of configurable circuits, wherein said dynamic configuration is done in less than one hundred milliseconds. - View Dependent Claims (13, 14, 15)
-
-
16. A method of dynamically tracking data values in a configurable integrated circuit (IC), the method comprising:
-
while a first plurality of configurable circuits of the configurable IC is performing a particular user design, receiving a request for a data value produced by the first plurality of configurable circuits; and dynamically configuring a second plurality of configurable circuits of said configurable IC to monitor said data value while the first plurality of configurable circuits of the configurable IC is performing the particular user design, wherein said dynamic configuration is done in less than one minute. - View Dependent Claims (17, 18, 19)
-
-
20. A non-transitory machine readable medium storing a program that dynamically tracks data values in an integrated circuit (IC) comprising (i) a plurality of configurable circuits for configurably performing a plurality of operations and (ii) a debug network for monitoring said data values, said program executable by one or more processing units, the program comprising sets of instructions for:
-
monitoring a first data value produced by a first set of configurable circuits of the plurality of configurable circuits; receiving a request for monitoring a second data value while the first set of configurable circuits is performing a particular user-defined design, said second data value being produced by a second set of configurable circuits of the plurality of configurable circuits; and dynamically configuring, without interrupting operations of the particular user-defined design performed by the first and second sets of configurable circuits, said debug network to monitor said second data value according to the received request. - View Dependent Claims (21, 22, 23, 24)
-
-
25. A non-transitory machine readable medium storing a program for dynamically tracking data values in a configurable integrated circuit (IC), said program comprising sets of instructions for execution by an electronic component, the sets of instructions comprising:
-
receiving a request for a data value produced by the configurable IC while the configurable IC is performing a particular user design; and dynamically configuring, without interrupting operations of the particular user-defined design performed by the configurable IC, said configurable IC to monitor said data value, wherein said dynamic configuration is done in less than one second. - View Dependent Claims (26, 27)
-
-
28. A non-transitory machine readable medium storing a program for dynamically tracking data values in a configurable integrated circuit (IC), said program comprising sets of instructions for execution by an electronic component, the sets of instructions comprising:
-
receiving a request for a data value while a first plurality of configurable circuits of the configurable IC is performing a particular user design; and dynamically configuring a second plurality of configurable circuits of said configurable IC to monitor said data value without making changes to the first plurality of configurable circuits, wherein said dynamic configuration is done in less than one hundred millisecond. - View Dependent Claims (29, 30)
-
-
31. A method of dynamically tracking data values of circuit elements in an integrated circuit (IC) comprising first and second pluralities of configurable circuits for configurably performing a plurality of operations, the first plurality of configurable circuits comprising first and second sets of configurable circuits, the method comprising:
-
monitoring a first set of data values of the first set of configurable circuits while the first plurality of configurable circuits of said IC is performing a particular user design; receiving a selection of said second set of configurable circuits; and while the first plurality of configurable circuits is performing the particular user design, dynamically configuring the second plurality of configurable circuits to gather a second set of data values from said second set of configurable circuits without modifying a configured set of operations of said first plurality of configurable circuits. - View Dependent Claims (32, 33, 34, 35, 36)
-
Specification