200 likes | 315 Views
Avanserte byggeblokker (Maxfield kap.13 og 17). Kap 13: Embedded prosessorer (prosessorkjerner) Kap 17: Virtuelle komponenter (Intellectual Properties - IPs). Innhold:. Organisering av kretskort. Organisering av FPGA. Prosessorkjerner (Kap. 4). Hva er det?
E N D
Avanserte byggeblokker (Maxfield kap.13 og 17) • Kap 13: Embedded prosessorer (prosessorkjerner) • Kap 17: Virtuelle komponenter (Intellectual Properties - IPs) Innhold: INF3430 - H13
Organisering av kretskort INF3430 - H13
Organisering av FPGA INF3430 - H13
Prosessorkjerner (Kap. 4) • Hva er det? • Prosessorer som inngår i selve FPGAen • Hvorfor? • De fleste design trenger en prosessor og en kan slippe å ha en ekstern prosessor. • Hvilke typer finnes? • Myke kjerner • Programmerbar logikk i FPGA brukes til å realisere en prosessor på FPGA sammen med annen funksjonalitet. • Harde kjerner • Prosessor er implementert fysisk i FPGA ved produksjon av kretsen. INF3430 - H13
Prosessorkjerner til Xilinx FPGA • Power PC (hard prosessorkjerne i “eldre” FPGA’er) • ARM (hard prosessorkjerne i ZYNC serien) • MicroBlaze (myk prosessorkjerne, oblig 4) • PicoBlaze (myk svært enkel mikrokontrollerkjerne) INF3430 - H13
Integrering av harde kjerner på FPGA INF3430 - H13
Virtex-II Pro FPGA Power PC prosessor INF3430 - H13
Harde enheter i Virtex-II Pro INF3430 - H13
Noen spørsmål • Gir det raskest ytelse å ha program liggende i minne inne på FPGAen (Block-RAM) ellers på eksternt minne? • Internt minne på FPGA raskest • Hvordan kan en relativt treg intern prosessor gi henimot like god ytelse som en rask ekstern prosessor/PC. • Raskere minnegrensesnitt og bedre sammensying av logikk og prosessor • Hvorfor er det ønskelig med System-On-Chip? • Pris, størrelse, effektforbruk,… INF3430 - H13
Myke prosessorkjerner • Fordeler: • Tar med kjerne kun dersom en har behov for den. • Antallet kjerner er fleksibelt. • Kan enkelt flyttes over til nye generasjoner av FPGAer i framtida. • Enklere grensesnitt mot logikken i FPGAen. • Ulemper: • Er tregere og enklere enn harde kjerner. • Ikke så plasseffektivt som hard kjerne INF3430 - H13
MicroBlaze INF3430 - H13
Maskinvare versus programvare • Maskinvare: • Tidskritiske deler. • Programvare: • Mindre tidskritiske/tidskrevende deler. • Det som normalt ville blitt utført på en ekstern prosessor. INF3430 - H13
Hastighetsøkning av eksisterende kode INF3430 - H13
Design med prosessor på FPGA INF3430 - H13
Kap 17: Virtuelle komponenter (Intellectual Properties - IPs) • Det er nesten praktisk umulig i dagens store FPGA å designe alt fra grunnen av. • Løsning: Bruke allerede ferdigutviklede moduler • Disse kalles Intellectual Properties(IP). • Typer: • Laget internt i bedrift • Tilgjengelige fra FPGA produsent • Tredje-parts leverandører • Det er nesten alltid billigere å kjøpe enn å lage selv (du koster ca. 900 kroner timen for bedriften ….) • Viktig å være sikker på at vi kjøper noe som dekker kravene våre. Overraskende tidkrevende å bruke innkjøpte moduler ….. INF3430 - H13
Måter å integrere IP’er på Ikke-kryptert kildekode LUT/CLB net list LUT/CLB net list INF3430 - H13
Ikke-kryptert kildekode • Fordeler: • IP’ens implementasjonsdetaljer er tilgjengelig • Kan endre kildekoden. • Kan lett flyttes mellom FPGA-familier/FPGA-produsenter. • Ulemper: • Dyrt fra FPGA-produsenter (siden FPGA produsenter ønsker å holde kildekoden for seg selv) • Mindre effektiv implementering i forhold til en forhåndsrutet IP. INF3430 - H13
IP kjernegeneratorer • Brukes for å lage/editere IP’er. • Sørger for mest mulig effektiv IP med hensyn på ressursutnyttelse og ytelse. • Les dokumentasjonen til de genererte IP’ene nøye! INF3430 - H13
”Gratis” IP-moduler Maskinvareutviklernes motstykke til gratis programvareutveksling. INF3430 - H13
Oppsummering • Hva heter den myke prosessorkjernen til Xilinx? • MicroBlaze • Hva er en IP og hvem lager de? • Ferdigutviklede blokker som kalles Intellectual Properties • Lages av egen bedrift, FPGA produsent eller tredje-parts leverandører • Hvilken form finnes IP’er på? • Kildekodenivå eller LUT/CLB-nivå INF3430 - H13