IP Library Granted Patent US 8,067,960
Granted Patent B2
US 8,067,960 · App. 12/754,604 · Granted Nov 29, 2011

Runtime loading of configuration data in a configurable IC

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,067,960
App. No.
12/754,604
Granted
Nov 29, 2011
Kind
B2
Abstract

Some embodiments of the invention provide a configurable integrated circuit (IC) that has several configurable circuits for configurably performing different operations. During the operation of the IC, each particular configurable circuit performs a particular operation that is specified by a particular configuration data set for the particular configurable circuit. While the IC operates and a first set of configurable circuits performs a first set of operations, configuration data is loaded from the outside of the IC for configuring a second set of configurable circuits. In some embodiments, the configurable IC includes a configuration network for rapid loading configuration data in the IC from outside of the IC. In some of these embodiments, the configuration network is a pipelined network. Also, the IC of some embodiments includes a configuration controller for retrieving configuration data from outside of the IC, formulating configuration data sets, and routing the configuration data sets to the second set of configurable circuits over the configuration network.

Claims (33)

1. An integrated circuit (IC) comprising:

a tile arrangement comprising a plurality of tiles, each tile comprising a plurality of configurable circuits to configurably perform a set of operations based on a configuration data set; and

a configuration network to load configuration data sets into the tile arrangement to configure the configurable circuits, the configuration network comprising a plurality of storage elements to allow different configuration data sets to simultaneously traverse the tile arrangement for configuring sets of configurable circuits to perform first and second sets of operations,

said simultaneous traversal of different configuration data sets through the configuration network allowing the configuration network to load configuration data for a first set of configurable circuits of a first tile for performing the first set of operations while the IC operates and while a second set of configurable circuits of a second tile perform the second set of operations.

2. The IC of claim 1 , wherein the configuration data sets are loaded from a non-volatile memory outside of the IC.

3. The IC of claim 1 , wherein a first portion of said configuration network carries one configuration data set while a second portion of said configuration network carries another configuration data set.

4. The IC of claim 1 , wherein said configuration network loads configuration data sets in a pipelined fashion.

5. The IC of claim 4 , wherein the pipelined configuration network concurrently carries multiple configuration data sets for the plurality of configurable circuits.

6. The IC of claim 1 further comprising a configuration controller for:

(i) receiving configuration data from outside of the IC;

(ii) formatting the configuration data sets; and

(iii) routing said configuration data sets to at least one group of configurable circuits over the configuration network.

7. The IC of claim 1 further comprising a data routing network for routing data between the configurable circuits during operation of the IC.

8. The IC of claim 1 , wherein the second set of operations is based on configuration data that was previously loaded for the second tile by the configuration network.

9. The IC of claim 1 , wherein a plurality of storage elements allow different configuration data sets to simultaneously traverse said tile arrangement by dividing the configuration network into a plurality of segments and temporarily storing different configuration data sets traversing the configuration network.

10. A method of operating an integrated circuit (IC) having a plurality of configurable circuits and a configuration network, the method comprising:

configuring a set of configurable circuits to perform a first set of operations according to a first configuration data set; and

while the set of configurable circuits is performing the first set of operations, loading second and third configuration data sets into the configuration network for configuring the set of configurable circuits to perform second and third sets of operations such that the second and third configuration data sets simultaneously traverse the configuration network in a pipelined fashion.

11. The method of claim 10 , wherein the second and third sets of configuration data are loaded from outside of the IC.

12. The method of claim 10 , wherein a first portion of said configuration network carries the second configuration data set while a second portion of said configuration network carries the third configuration data set.

13. The method of claim 10 , wherein the configuration data sets are loaded from a non-volatile memory located outside of the IC.

14. The method of claim 10 , wherein the plurality of configurable circuits are in an arrangement of tiles, wherein the configuration data for configuring the configurable circuits in the arrangement of tiles is loaded from outside of the arrangement of tiles.

15. An electronic device comprising:

a memory for storing configuration data sets; and

an integrated circuit (IC) comprising:

a tile arrangement comprising a plurality of tiles, each tile comprising a plurality of configurable circuits to configurably perform a set of operations based on a configuration data set; and

a configuration network to load configuration data sets from the memory into the tile arrangement to configure the configurable circuits, the configuration network comprising a plurality of storage elements to allow different configuration data sets to simultaneously traverse the tile arrangement for configuring sets of configurable circuits to perform first and second sets of operations,

said simultaneous traversal of different configuration data sets through the configuration network allowing the configuration network to load configuration data for a first set of configurable circuits of a first tile for performing the first set of operations while the IC operates and while a second set of configurable circuits of a second tile performs the second set of operations.

16. The electronic device of claim 15 , wherein said IC further comprises a packet processor to retrieve packets stored in the memory and direct the first set of configurable circuits to process the packets from the configuration network.

17. The electronic device of claim 15 , wherein the configuration network comprises a configuration controller to retrieve configuration data.

18. The electronic device of claim 15 , wherein the memory is non-volatile memory located outside of the IC.

19. The electronic device of claim 15 , wherein the second set of operations is based on configuration data that was previously loaded for the second tile by the configuration network.

20. The electronic device of claim 15 , wherein a plurality of storage elements allow different configuration data sets to simultaneously traverse said tile arrangement by dividing the configuration network into a plurality of segments and temporarily storing different configuration data sets traversing the configuration network.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2022
From: INTEL CORPORATION
To: TAHOE RESEARCH, LTD.
Reel/Frame 061827/0686 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2022
From: ALTERA CORPORATION
To: INTEL CORPORATION
Reel/Frame 060778/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2015
From: TABULA (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
To: ALTERA CORPORATION
Reel/Frame 036050/0792 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 27, 2015
From: TABULA, INC.
To: TABULA (ASSIGNMENT FOR THE BENEFIT OF CREDITORS), LLC
Reel/Frame 035783/0055 →