Vis enkel innførsel

dc.contributor.advisorHartmann, Mortennb_NO
dc.contributor.authorHeimstad, Gautenb_NO
dc.date.accessioned2014-12-19T13:35:40Z
dc.date.available2014-12-19T13:35:40Z
dc.date.created2010-09-11nb_NO
dc.date.issued2006nb_NO
dc.identifier350872nb_NO
dc.identifierntnudaim:1198nb_NO
dc.identifier.urihttp://hdl.handle.net/11250/252027
dc.description.abstractRekonfigurerbar maskinvare og FPGA er en teknologi som gjør det mulig å konstruere maskinvare som kan endre funksjon etter produksjon. En mulig applikasjon er å benytte FPGA som en koprosessor i en datamaskin hvor man kan legge beregningsintensive deler av applikasjonen i maskinvare for å øke ytelse. I denne rapporten undersøkes muligheten for bruk av FPGA til å øke ytelsen i datamaskiner hvor emulering utføres. Emulering er den sentrale delen av de fleste virtuelle maskiner, og i denne oppgaven undersøkes om det kraftige potensialet FPGA har, kan utnyttes ved å legge deler av en virtuell maskin i maskinvare. Formålet har vært å utnytte en FPGAs evne til å parallellisere oppgaver slik at oversettelsen av instruksjoner fra ett instruksjonsset til et annet, gir en ytelsesforbedring. Motivasjonen med dette studiet har vært å kunne bidra med mulige løsninger for å redusere kostnadene ved emulering av fremmede instruksjonssett. Ved å utvikle en plattform med teknologi der man kan kjøre flere forskjellige binærprogram nært opp mot, eller med bedre ytelse enn den originale arkitekturen, oppnår man bedre portabilitet. Gjennom en bakgrunnsutredning av teknologien FPGA, grunnprinsippene bak emulering og tidligere lignende prosjekter, blir tre mulige løsninger for bruk av FPGA foreslått for å forbedre ytelsen ved emulering: Off-chip binæroversettelse, off-chip tolkning og on-chip binæroversettelse. Fordeler og ulemper rundt disse tre løsningene blir vurdert og løsningen med off-chip binæroversettelse er valgt for simulering. Simuleringen blir beskrevet og implementert ved hjelp av SystemC. Resultatene av eksperimentene utført med simulatoren og den foreslåtte løsningen er presentert og viser at en ytelsesøkning er mulig i oppstartsfasen av emulering. Simulatoren har derimot begrensninger i forhold til en full implementasjon i maskinvare, og disse må taes i betraktning når resultatene vurderes. Resultatene blir diskutert i den avsluttende delen og konklusjonen legger vekt på at det er grunnlag for å oppnå en ytelsesøkning ved bruk av FPGA i binæroversettelse: Dette gjelder i en oppstartsfase opp til ca 2,5 mrd utførte prosessorsykler. Den foreslåtte løsningen har dårligere ytelse når simulert med kjøretid rekonfigurering enn ved en statisk konfigurasjon, noe som svekker motivasjon om implementering i maskivnare som er kjøretid rekonfigurerbar. I tillegg gir en for ofte initialisering av oversetting i FPGA (av for små datamengder) en dårligere ytelse enn forventet. Foreslåtte forbedringer bør derfor implementeres i et videre arbeid om deler av løsningen skal realiseres. Forbedringene innebærer bedre samarbeid mellom vanlig binæroversettelse og FPGA, bedre implementasjon av pipeline i FPGA, bedre branch-prediksjon, forbedring av rekonfigureringsalgoritmen og algoritmen for aktivisering av FPGA.nb_NO
dc.languagenornb_NO
dc.publisherInstitutt for datateknikk og informasjonsvitenskapnb_NO
dc.subjectntnudaimno_NO
dc.subjectMIT informatikkno_NO
dc.subjectKomplekse datasystemerno_NO
dc.titleEmulering i FPGA: Et studie av mulige løsninger for å øke ytelse ved emulering av fremmede instruksjonssett ved bruk av rekonfigurerbar maskinvare og FPGA.nb_NO
dc.title.alternativeEmulation on FPGA: A study of possible solutions on accelerating emulation of foreign instruction sets by supporting reconfigurable hardware and FPGAnb_NO
dc.typeMaster thesisnb_NO
dc.source.pagenumber99nb_NO
dc.contributor.departmentNorges teknisk-naturvitenskapelige universitet, Fakultet for informasjonsteknologi, matematikk og elektroteknikk, Institutt for datateknikk og informasjonsvitenskapnb_NO


Tilhørende fil(er)

Thumbnail
Thumbnail
Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel