Væren maskinvareeksamen vil dekke konsepter, diagrammer, formler og applikasjoner relatert til emnene som er lært i løpet av første halvdel av semesteret, det vil si forelesninger frem til midtsemesteret. Eksamen kan dekke følgende emner og begreper:
1. Grunnleggende konsepter:
- Arkitektur av Væren-systemer.
- Blokkdiagrammer og grunnleggende funksjonalitet til Aries-brikker (f.eks. VCU, FADU, DMA, etc.).
2. VCU (Vector Computing Unit):
- VCU-struktur, inkludert vektoraritmetiske logiske enheter (VALUs) og vektorregisterfiler (VRFs).
- Vektoriseringsprinsipper, datapakking og utpakking.
- SIMD (Single Instruction, Multiple Data) operasjoner.
- VCU programmeringsmodell, inkludert vektorinstruksjoner og adresseringsmoduser.
3. FADU (Fleksibel aritmetikk og dataenhet):
- FADU-struktur og funksjonelle enheter (f.eks. ALUer, multiplikatorer, skiftere, etc.).
- Fastpunkt- og flyttalloperasjoner.
- Datatyper og formater, inkludert heltalls- og flyttallsrepresentasjoner.
4. DMA (direkte minnetilgang):
- DMA-oversikt og dens rolle i dataoverføring mellom minne og Aries-brikker.
- DMA-programmering, inkludert oppsett av DMA-kanaler, konfigurering av overføringsparametere og håndtering av avbrudd.
5. Avbrudd og unntak:
- Kilder til avbrudd og unntak (f.eks. VCU-overløp, FADU-unntak osv.).
- Avbruddshåndteringsmekanisme, inkludert avbruddsvektortabell og avbruddstjenesterutiner (ISR).
- Unntakstyper, årsaker og håndteringsmekanismer.
6. Tidtakere og sanntidsapplikasjoner:
- Oversikt over tidtakere tilgjengelig på Aries-maskinvare.
- Timerkonfigurasjon og programmering for å generere avbrudd med jevne mellomrom.
- Bruk av tidtakere for sanntidsapplikasjoner, som PWM (Pulse Width Modulation).
7. Minnehierarki og optimalisering:
- Oversikt over Værens minnehierarki (registre, lokalt minne, off-chip minne).
- Prinsipper for minneoptimalisering, som datalokalitet og cache-utnyttelse.
- Teknikker for å forbedre minneytelsen (f.eks. forhåndshenting, vektorinnlasting/lagringsinstruksjoner).
8. Feilsøkingsteknikker:
- Bruke feilsøkeren (f.eks. QEMU GDB) for å gå gjennom koden, inspisere minnet og angi bruddpunkter.
- Vanlige feilsøkingsstrategier for Aries-maskinvareutvikling.
9. Utviklingsmiljø og verktøy:
- Aries programvareutviklingsmiljø (IDE), inkludert verktøykjeder, kompilatorer og biblioteker.
- Bygge, laste og kjøre programmer på Aries-maskinvare.
10. Programmer og eksempler:
- Enkel vektorbehandling og beregningseksempler.
- Virkelige applikasjoner som bruker Aries-maskinvare, for eksempel bildebehandling, signalbehandling og maskinlæringsoppgaver.
Merk:De faktiske spørsmålene og emnene som dekkes i eksamen kan variere avhengig av den spesifikke kursplanen og instruktørens skjønn.