02203 Design af Digitale Systemer

2024/2025

Kursusinformation
Design of Digital Systems
Engelsk
5
Kandidat
Kurset udbydes som enkeltfag
Generel retningskompetence (MSc), Computer Science and Engineering
Retningsspecifikt kursus (MSc), Communication Technologies and System Design
Retningsspecifikt kursus (MSc), Computer Science and Engineering
Retningsspecifikt kursus (MSc), Electrical Engineering
Teknologisk specialisering (MSc), Communication Technologies and System Design
Teknologisk specialisering (MSc), Computer Science and Engineering
Teknologisk specialisering (MSc), Electrical Engineering
Tilvalgskursus (B Eng), Elektroteknologi
Tilvalgskursus (B Eng), IT-elektronik
E2B (tors 8-12)
Campus Lyngby
Forelæsninger, øvelser, og projektopgave.
13-uger
E2B
Skriftlig eksamen og bedømmelse af rapport(er)
Skriftlig eksamen og bedømmelse af individualiserede grupperapporter udarbejdet i løbet af semestret. Den endelige karakter gives på baggrund af en helhedsvurdering.
Skriftlig eksamen: 2 timer
Skriftlige hjælpemidler er tilladt
7-trins skala , ekstern censur
02139.­(02100/02102)/02132 , Grundlæggende kendskab til programmering og digitalelektronik herunder kendskab til VHDL (eller et andet hardwarebeskrivende sprog).
Luca Pezzarossa , Lyngby Campus, Bygning 322 , lpez@dtu.dk
01 Institut for Matematik og Computer Science
http://www.compute.dtu.dk/courses/02203
I studieplanlæggeren
Overordnede kursusmål
At sætte deltagerne i stand til på systematisk vis at konstruere større digitale kredsløb, f.eks. hardware acceleratorer, og at realisere disse i FPGA-teknologi ved anvendelse af gængse CAD-værktøjer (p.t. VHDL og XILINX Vivado).

At sætte deltagerne i stand til at analysere og optimere digitale kredsløb mht. hastighed og areal.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • Konstruere et digitalt kredsløb der udfører en given beregning, som et sekventielt kredsløb bestående af en tilstandsmaskine og en data-path.
  • På systematisk vis pipeline et givent kredsløb samt identificere fejl i et givent kredsløb som er forsøgt pipelinet.
  • Forklare parametrene throughput og latenstid, forklare den indbyrdes sammenhæng mellem disse parametre, og optimere hastigheden af et givent kredsløb.
  • Analysere den tidsmæssige korrekthed af et givet sekventielt kredsløb, herunder også kredsløb som rummer clock-skew.
  • Redegøre for den interne opbygning i en gængs FPGA komponent (p.t XILINX) og redegøre for, hvorledes dennes ressourcer bedst kan udnyttes ved realisering af et givent kredsløb.
  • Redegøre for hvorledes en given VHDL-beskrivelse af et ønsket kredsløb syntetiseres til hardware (dvs. en struktur af registre og kombinatorisk logik), og estimere størrelsen af dette kredsløb. Optimere kredsløbet ved at ændre VHDL koden.
  • Redegøre for fænomenet metastabilitet og beskrive hvorledes et kredsløb med flere klok-domæner skal designes for at det fungerer korrekt.
  • Skrive effektiv VHDL-kode på et passende højt abstraktionsniveau (RTL-niveau), hvorfra det ønskede kredsløb kan syntetiseres.
  • Udvikle og anvende testbenches til simulering og verifikation af et kredsløbs funktion.
  • Udvikle komplekse digitale kredsløb ved en trinvis forfining fra en specifikation til et hardwarenært niveau, hvorfra der kan syntetiseres en realisering.
  • Organisere og planlægge design af større kredsløb i en gruppe af studerende.
  • Dokumentere dette arbejde (design, implementering og test) i form af en teknisk rapport, som henvender sig til en udenforstående fagfælle, og som overholder sædvanlige krav til form og indhold/​abstraktionsniveau.
Kursusindhold
Kurset vedrører design af digitale systemer på RTL-niveau, VHDL sproget, syntese og FPGA teknologi. Kurset fokuserer på at skrive effektiv RTL-kode og på sammenhægen mellem koden og den hardware realisering som syntetiseres ud fra den.

Konstruktion af digitale systemer: Beregningskredsløb og tilstandsmaskiner. Pipelineteknikker. Fra algoritme til kredsløb. Kvantificering af hastighed (throughput og latenstid). Designsproget VHDL og simulering af kredsløb beskrevet dette sprog. Sammenhæng mellem VHDL kode og det tilsvarende syntetiserede kredsløb.
Introduktion til FPGA teknologi. Hardwaresyntese. Udviklingsmetode for design af digitale systemer (specifikation, trinvis forfining, simulering, syntese, implementering og endelig afprøvning).
Tidsmæssig analyse af sekventielle kredsløb herunder kredsløb som har clock-skew.

Sideløbende med forelæsningerne gennemføres en række øvelser, som dels giver deltagerne en dybere indsigt i forelæsningsstoffet, og dels gør deltagerne fortrolige med designsproget VHDL og de dertil hørende CAD værktøjer til design, simulering og syntese af digitale systemer. Til slut udføres en mindre selvstændigt designopgave.
Litteraturhenvisninger
Lærebog: Pong Chu, "RTL-Hardware Design Using VHDL - Coding for Efficiency, Portability, and Scalability," Wiley, 2006.
Bemærkninger
Vejledende placering: tidligt i kandidatuddannelsen, subsidiært med passende forudsætninger sidst i bachelor- eller diplomingeniørstudiet.
Sidst opdateret
02. maj, 2024