Field-Programmable Gate Arrays (FPGAs) zijn programmeerbare digitale chips, die gebruikt worden om applicaties te versnellen.
Een FPGA-configuratie wordt gecompileerd door gespecialiseerde software. FPGA compilatie is opgedeeld in verschillende deelproblemen:synthese, packing, plaatsing en routering.
Zodra de configuratie gecompileerd is, kan de ontwerper controleren of de configuratie aan de applicatie-eisen voldoet.
Als de vereisten niet voldaan zijn, dan moet de beschrijving veranderen en er moet opnieuw gecompileerd worden. Dit langzame proces heet de FPGA-ontwerpcyclus .
Om dit proces te verkorten introduceren we nieuwe technieken voor packing, plaatsing en routering.
Tijdens het ontwikkelen van de nieuwe ontwerptools ontdekten we een ander belangrijk probleem: de kloof tussen commerciële and academische resultaten.
We willen andere onderzoekers bewust maken van de kloof en die proberen te verkleinen.
Een groot deel van het verschil is te verklaren door de geavanceerdere commerciële FPGA-architecturen, daarom hebben nieuwe architecturen gebouwd en getest.
De efficiëntie van FPGA-ontwerpen kan verhoogd worden
door gebruik te maken van de runtime-herconfigureerbaarheid van FPGA's. Een FPGA-configuratie kan gespecialiseerd worden voor de eisen van de applicatie. Gespecialiseerde configurations zijn sneller en kleiner.
We hebben nieuwe plaatsings- en routeringstechnieken ontworpen die bijdragen aan een automatische ontwerpmethode voor het produceren van geparametriseerde configuraties. | |