Show simple item record

dc.contributor.advisorTufte, Gunnarnb_NO
dc.contributor.authorAamodt, Kjetilnb_NO
dc.date.accessioned2014-12-19T13:34:48Z
dc.date.available2014-12-19T13:34:48Z
dc.date.created2010-09-10nb_NO
dc.date.issued2005nb_NO
dc.identifier350272nb_NO
dc.identifierntnudaim:980nb_NO
dc.identifier.urihttp://hdl.handle.net/11250/251672
dc.description.abstractUtvikling av maskinvare foregår tradisjonelt med en topp-ned designstrategi. I fremtiden kan oppgavene som skal løses bli for kompliserte for denne utviklingsmetoden. En tilnærming som er foreslått er å benytte inspirasjon fra naturen og utvikle det som kalles for bio-inspirert-maskinvare. Utvikling av evolusjonær maskinvare (EHW) betyr at elektronikk utvikles med grunnlag i evolusjonære algoritmer. Kort beskrevet går metoden ut på at det genereres tilfeldige individer, individene evalueres ut fra egnethet og nye individer dannes. Etindivid er her en representasjon av en krets som forsøker å løse en gitt oppgave. Det blir ofte benyttet en FPGA som plattform for utvikling av EHW. Det har vist seg at denne type krets har egenskaper som er godt egnet, men også egenskaper som kan gjøre det vanskelig å komme frem til gode resultater. Datamaskingruppa ved NTNU har foreslått en virtuell FPGA som enkelt lar seg implementere i en kommersielt tilgjengelig brikke. Denne plattformen blir kalt en SBlock-matrise. Mange av ulempene ved en vanlig FPGA er løst her. En SBlock-matrise kan betraktes som en to-dimensjonal cellulær automat som styres av ett sett regler. Ved siden av matrisen og regelsettet består SBlock-konseptet av en algoritme for utvikling av en organisme. Utviklngen er inspirert av naturen der en enkelt celle utvikles til en multicellær organisme. Algoritmen opererer på to nivåer. Tilstandene for hver enkelt SBlock kan endres og typen til hver blokk kan endres. Begge disse endringene avhenger av naboblokkenes egenskaper. Alle endringer i matrisen skjer i diskrete tidsintervaller. Systemet som har blitt utvidet i denne oppgaven har som formål å være plattform for eksperimentering med SBlock-konseptet. Utgangspunktet for oppgaven var et system delvis skrevet i VHDL og delvis i C. Systemet kan kjøre begge de omtalte nivåene i algoritmen. Utvidelsene som er gjort har hatt som formål å øke effektiviteten for systemet. Tidligere måtte all data som skulle prosesseres transporteres ut av systemet. Etter at utvidelsene er gjort blir data lagret under kjøring slik at evaluering kan gjøres internt. Datamengden som må leses ut har dermed avtatt. Det er gjort tre utvidelser av systemet. En utvidelse innbefatter lagring av informasjon for hver tilstandsendring i matrisen. Det har blitt implementert mulighet for å evaluere tilstandsdata med en funksjon, kalt fitnessfunksjon. Det har også blitt implementert minne for lagring av hvilken regel i utviklingsprosessen som har forårsaket endring av typen til en SBlock under kjøring. Resultatene fra kjøring av systemet viser at de tre utvidelsene har vært vellykket. For mange typer eksperimenter vil effektiviteten være økt. Dette gjelder eksperimenter hvor data ikke lenger må transporteres ut av systemet for evaluering, men kan evalueres internt med de nye funksjonene. Dersom data generert under kjøring ikke skal benyttes medfører endringene noe økt tidsforbruk i forhold til hva som oppnåes med det gamle systemet. Overvåkning av regelsettet gjør det lettere å holde kontroll med utviklingen.nb_NO
dc.languagenornb_NO
dc.publisherInstitutt for datateknikk og informasjonsvitenskapnb_NO
dc.subjectntnudaimno_NO
dc.subjectSIF2 datateknikkno_NO
dc.subjectProgram- og informasjonssystemerno_NO
dc.titleKunstig utvikling: Utvidelse av FPGA-basert SBlock-plattformnb_NO
dc.title.alternativeArtificial Development: Extension of the SBlock Platform in FPGA-technologynb_NO
dc.typeMaster thesisnb_NO
dc.source.pagenumber108nb_NO
dc.contributor.departmentNorges teknisk-naturvitenskapelige universitet, Fakultet for informasjonsteknologi, matematikk og elektroteknikk, Institutt for datateknikk og informasjonsvitenskapnb_NO


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record