Den tradisjonelle designflyten i utviklingen av mikroelektronikk forutsetter at alle utviklingsaktivitetene er unnagjort pre-kjøretid, og at ferdiggenererte, udelelige konfigurasjonsfiler brukes for å konfigurere brikkene. De fleste systemer som benytter FPGA-teknologi i dag har derfor et begrenset utvalg forhåndsgenererte konfigurasjoner å velge mellom for å løse en oppgave. Ideen bak denne oppgaven er ønsket om å lage et rekonfigurerbart system der det er FPGA-en selv som står for rekonfigureringen uten noe behov for ekstern tilkobling eller manipulasjon. Dette for å drive den innovative utviklingen av dynamiske hardwaresystemer. Systemet er laget på en Suzakuplattform med en Spartan-3 XC3S1000 FPGA fra Xilinx. Det er utviklet to program, CLBRead og CLBWrite som kjøres på en microblazeprosessor. CLBRead kan lese en CLB-struktur med forskjellig størrelse, der en enkelt CLB er den minste oppdelingen, til fil. En CLB-struktur kan leses ut fra flash på FPGA-kortet, eller fra en bitstrømsfil på en PC. CLBWrite skriver en filstruktur generert av CLBRead til flashområdet der FPGA-konfigurasjonene ligger. Ved oppstart av FPGA-en vil det nye oppsettet konfigureres opp. Systemet som er utviklet gjør at FPGA-en kan rekonfigureres helt uten behov for ekstern tilkobling eller manipulasjon. Det er FPGA-en selv som gjør hele jobben. Forskjellige moduler kan lagres og lastes inn ved behov. Systemer er testet med to moduler, en OG-port og en ELLER-port, der disse kan byttes med hverandre og endringene kan måles med et digitalt multimeter.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:ntnu-10356 |
Date | January 2007 |
Creators | Gravdal, Fredrik |
Publisher | Norges teknisk-naturvitenskapelige universitet, Institutt for elektronikk og telekommunikasjon, Institutt for elektronikk og telekommunikasjon |
Source Sets | DiVA Archive at Upsalla University |
Language | Norwegian |
Detected Language | Norwegian |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0018 seconds