Method of hierarchical caching of configuration data having dataflow processors and modules having two-or multidimensional programmable cell structure (FPGAs, DPGAs , etc.)
First Claim
1. A method of caching commands in microprocessors having a two- or multidimensional configurable cell arrangement, comprising:
- combining a plurality of configurable cells to form a plurality of groups;
assigning a first cache unit to a first group;
connecting the first cache unit via a tree structure to a higher level cache unit having access to a command memory in which commands are stored;
combining commands to form command sequences;
caching the command sequences as a whole;
sending a request for a required command from the first cache unit to the higher level cache unit;
sending a first command sequence including the required command to the first cache unit if the higher level cache unit holds the first command sequence including the required command in the higher level cache unit'"'"'s local memory; and
sending the request for the required command from the higher level cache unit to a respective higher level cache unit if the higher level cache unit does not hold the first command sequence including the required command in the higher level cache unit'"'"'s local memory.
5 Assignments
0 Petitions
Accused Products
Abstract
A method of caching commands in microprocessors having a plurality of arithmetic units and in modules having a two- or multidimensional cell arrangement is provided. The method includes combining a plurality of cells and arithmetic units to form a plurality of groups, assigning a cache unit to a group, and connecting the cache unit to a higher level unit via a tree structure. The cache unit may send requests for required commands to the higher level cache unit, which may return a command sequence including the required command, if the higher level cache unit holds the first command sequence including the required command in the higher level cache unit'"'"'s local memory.
275 Citations
12 Claims
-
1. A method of caching commands in microprocessors having a two- or multidimensional configurable cell arrangement, comprising:
-
combining a plurality of configurable cells to form a plurality of groups;
assigning a first cache unit to a first group;
connecting the first cache unit via a tree structure to a higher level cache unit having access to a command memory in which commands are stored;
combining commands to form command sequences;
caching the command sequences as a whole;
sending a request for a required command from the first cache unit to the higher level cache unit;
sending a first command sequence including the required command to the first cache unit if the higher level cache unit holds the first command sequence including the required command in the higher level cache unit'"'"'s local memory; and
sending the request for the required command from the higher level cache unit to a respective higher level cache unit if the higher level cache unit does not hold the first command sequence including the required command in the higher level cache unit'"'"'s local memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
deleting a second command sequence as a whole.
-
-
3. The method according to claim 1, further comprising:
deleting a second command sequence held by the first cache unit if there is insufficient room in the local memory of the first cache unit for loading the first command sequence including the required command.
-
4. The method according to claim 1, further comprising:
triggering an action with a command in a command sequence, the action causing the deletion of a second command sequence in the first cache unit.
-
5. The method according to claim 1, further comprising:
triggering with a command in a command sequence the loading of a certain complete command sequence.
-
6. The method according to claims 1, further comprising:
triggering an action in a desired addressed cache unit by sending a command via a bus link to the desired addressed cache unit.
-
7. The method according to claim 1, further comprising:
breaking a program sequence into smaller subsequences.
-
8. The method according to claim 1, further comprising:
assigning statistics to a command sequence, the statistics providing information concerning the age of the command sequence.
-
9. The method according to claim 1, comprising:
assigning statistics to a command sequence, the statistics providing information concerning the frequency of the calls of the command sequence.
-
10. The method according to claim 1, further comprising:
assigning statistics to a command sequence, the statistics providing information concerning the length of the command sequence.
-
11. The method according to claim 1, further comprising:
-
evaluating statistics of each command sequence; and
removing the least significant command sequence.
-
-
12. The method according to claim 1, further comprising:
-
adjusting a delete routine in a programmable manner;
evaluating statistics of each command sequence; and
removing the least significant command sequence.
-
Specification