Emne - Maskinnær programmering - TDT4258
Maskinnær programmering
Om
Om emnet
Faglig innhold
Grunnleggende om innebygde systemer, egenskaper og designflyt.
Konstruksjon av maskinvare for innebygde systemer: prosessor eller mikrokontroller, hurtigminne, minne, busser, periferienheter.
Programvaredesign for innebygde systemer: lavnivå eller maskin-nær programmering i C og ARM-assembler, programmeringsteknikker for ressursbegrensede systemer, og moderne verktøy for programmering av innebygde systemer.
Introduksjon til kompilering og kodeoptimaliseringer, operativsystemer, og forbedret bærekraft gjennom energieffektivitet på ulike nivåer mellom maskinvare og applikasjon.
Læringsutbytte
Kunnskap:
- Studenten skal ha en grundig forståelse av maskinvare- og programvarekomponentene i et innebygd system.
- Studenten skal være kjent med de forskjellige lagene av teknologi mellom maskinvare og applikasjon og hvordan de samhandler for å utføre beregninger. Dette inkluderer hvordan maskinvare, systemprogramvare og applikasjonskompleksitet påvirker systemets energieffektivitet.
- Studenten skal ha en detaljert forståelse av programvareutvikling for innebygde systemer i C, både med og uten operativsystem, samt programmering i assembler. Studenten skal introduseres for muligheter og begrensninger ved bruk av generative AI-systemer for programmering.
Ferdigheter:
- Studenten skal kunne programmere innebygde enheter på ulike abstraksjonsnivåer, som assemblerprogrammering, «bare-metal» C-programmering og programmering med støtte fra operativsystem.
- Studenten skal få erfaring med å bruke generativ AI til programmering og testing, og kunne reflektere over dets muligheter og begrensninger.
Generell kompetanse:
- Studenten skal mestre programmering nært maskinvaren på ulike nivåer og i forskjellige kontekster.
Læringsformer og aktiviteter
Forelesninger i auditorium, selvstudium, laboratorieøvinger og diskusjoner i klassen.
Bruk av generativ AI i forbindelse med laboratorieøvinger vil være tillatt i den grad det følger gjeldende anbefalinger og regler ved NTNU, samt kravene spesifisert i lab-oppgavene. Det vil ikke være tillatt under eksamen.
Obligatoriske aktiviteter
- Arbeider
Mer om vurdering
Kurset inneholder flere obligatoriske aktiviteter (laboratorieøvinger). Studenten kan oppnå poeng i hver aktivitet og må oppnå et visst antall poeng totalt for å få gå opp til eksamen. Listen over aktiviteter vil bli kunngjort ved semesterstart.
Ved utsatt eksamen (kontinuasjonseksamen) kan eksamensformen endres fra skriftlig til muntlig. Utsatt eksamen avholdes i august.
Bruk av generativ AI vil ikke være tillatt på skriftlig eller muntlig eksamen.
Anbefalte forkunnskaper
TDT4160 Datamaskiner, eller tilsvarende.
Kursmateriell
Kursmateriell oppgis ved semesterstart.
Fagområder
- Teknologiske fag
Kontaktinformasjon
Eksamen
Eksamen
Ordinær eksamen - Høst 2025
Skriftlig skoleeksamen
Oppgitt rom kan endres og endelig plassering vil være klar senest 3 dager før eksamen. Du finner din romplassering på Studentweb.