Inhaltsangabe:Abstract: Two evolutionary approaches of allocating tasks onto a Field-Programmable Gate Array (FPGA) are presented. Offline task arrangement: whenever a set of tasks has to be arranged onto an FPGA in practice, one is interested in arranging a maximum number of tasks which efficiently utilize the FPGA area. A genetic algorithm is proposed searching for an arrangement of tasks offline, i.e. before the tasks are physically placed onto the FPGA. Online task arrangement: FPGAs that allow partial reconfiguration at run-time can be shared among multiple independent tasks. When the sequence of tasks to be performed is unpredictable the FPGA controller needs to make allocation decisions online. Since online allocation suffers from fragmentation, tasks can end up waiting despite there being sufficient, albeit non-contiguous resources available to service them. The time to complete tasks is consequently longer and the utilization of the FPGA is lower than it could be. A genetic algorithm is proposed rearranging a subset of the tasks executing on the FPGA when doing so allows the next pending task to be processed sooner. In comparison with other heuristic approaches a genetic algorithm is described and evaluated which overcomes the NP-hard problems of identifying feasible rearrangements and scheduling the rearrangements when moving tasks are reloaded from off-chip. Inhaltsverzeichnis:Table of Contents: 1.Introduction7 2.Field Programmable Gate Arrays9 2.1Architecture of FPGAs9 2.2Dynamically Reconfigurable FPGAs10 2.3Comparison with Related Devices11 2.4Creation of an FPGA Model11 3.FPGA Task Arrangement Problem18 3.1Static Task Arrangement Problem18 3.1.1Static Task Management18 3.1.2Problem Formulation20 3.2Dynamic Task Arrangement Problem21 3.2.1Dynamic Task Management21 3.2.2Search for an Admissible Task Rearrangement22 3.2.3Rearrangement Scheduling24 3.2.4Buffer Restriction27 3.2.5Problem Formulation30 4.Arrangement Concepts31 4.1Shape Functions31 4.2Slicing Trees35 5.Genetic Algorithms41 5.1Introduction41 5.2The Functioning of Genetic Algorithms 43 5.3Main Components of Genetic Algorithms45 5.3.1Representation45 5.3.2Initialization46 5.3.3Evaluation47 5.3.4Stopping Condition47 5.3.5Reproduction47 5.3.6Selection48 5.3.7Genetic Operators49 6.Static Task Arrangement51 6.1Representation51 6.2Initialization52 6.2.1Random Pairing53 6.2.2Traversal of Flexible Slicing Trees53 6.3Evaluation56 6.4Genetic [...]



Zusammenfassung
Inhaltsangabe:Abstract:Two evolutionary approaches of allocating tasks onto a Field-Programmable Gate Array (FPGA) are presented.Offline task arrangement: whenever a set of tasks has to be arranged onto an FPGA in practice, one is interested in arranging a maximum number of tasks which efficiently utilize the FPGA area. A genetic algorithm is proposed searching for an arrangement of tasks offline, i.e. before the tasks are physically placed onto the FPGA.Online task arrangement: FPGAs that allow partial reconfiguration at run-time can be shared among multiple independent tasks. When the sequence of tasks to be performed is unpredictable the FPGA controller needs to make allocation decisions online. Since online allocation suffers from fragmentation, tasks can end up waiting despite there being sufficient, albeit non-contiguous resources available to service them. The time to complete tasks is consequently longer and the utilization of the FPGA is lower than it could be. A genetic algorithm is proposed rearranging a subset of the tasks executing on the FPGA when doing so allows the next pending task to be processed sooner. In comparison with other heuristic approaches a genetic algorithm is described and evaluated which overcomes the NP-hard problems of identifying feasible rearrangements and scheduling the rearrangements when moving tasks are reloaded from off-chip.Inhaltsverzeichnis:Table of Contents:1.Introduction72.Field Programmable Gate Arrays92.1Architecture of FPGAs92.2Dynamically Reconfigurable FPGAs102.3Comparison with Related Devices112.4Creation of an FPGA Model113.FPGA Task Arrangement Problem183.1Static Task Arrangement Problem183.1.1Static Task Management183.1.2Problem Formulation203.2Dynamic Task Arrangement Problem213.2.1Dynamic Task Management213.2.2Search for an Admissible Task Rearrangement223.2.3Rearrangement Scheduling243.2.4Buffer Restriction273.2.5Problem Formulation304.Arrangement Concepts314.1Shape Functions314.2Slicing Trees355.Genetic Algorithms415.1Introduction415.2The Functioning of Genetic Algorithms 435.3Main Components of Genetic Algorithms455.3.1Representation455.3.2Initialization465.3.3Evaluation475.3.4Stopping Condition475.3.5Reproduction475.3.6Selection485.3.7Genetic Operators496.Static Task Arrangement516.1Representation516.2Initialization526.2.1Random Pairing536.2.2Traversal of Flexible Slicing Trees536.3Evaluation566.4Genetic []
Titel
FPGA Task Arrangement with Genetic Algorithms
EAN
9783832422998
ISBN
978-3-8324-2299-8
Format
E-Book (pdf)
Hersteller
Herausgeber
Veröffentlichung
13.04.2000
Digitaler Kopierschutz
frei
Dateigrösse
1.43 MB
Anzahl Seiten
144
Jahr
2000
Untertitel
Englisch