At give de studerende en komplet forståelse af designprocessen for digitale systemer. At gøre de studerende i stand til at udforske det omfattende designrum ved hjælp af model-evaluering. At give de studerende kendskab til teknikker og strategier rettet mod både laveffekt- og højhastigheds-design. At formidle en forståelse af kompromisløsninger og forskellige designmetodikker for forskellige teknologier såsom ASIC, FPGA og SoC.
Læringsmål:
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
Beskrive kombinatoriske og sekventielle digitale systemer og kunne liste deres egenskaber og karakteristika (tidsegenskaber, arealforbrug, effektforbrug).
Beskrive det digitale system design flow.
Beskrive og forklare teknikker til implementering af grundlæggende operationer såsom addering og multiplikation.
Illustrere de primære opgaver, der er involveret i designet af et digitalt system: simulering, logik syntese og place-and-route.
Anvende passende teknikker til design af højhastigheds-systemer og laveffekt-systemer.
Anvende metoder fra laveffekt- og højhastigheds-design på en specifik opgave (projekt).
Designe et digitalt system ud fra givne specifikationer og de lærte metoder (projekt).
Analysere det designede system, sammenligne resultater med et reference design og derudfra evaluere systemets performance (projekt).
Kursusindhold:
Overblik over digitale systemer: Kombinatorisk og sekventiel logik, timing og effektforbrug. Design-rutiner: Abstraktionsniveauer, design-rutiner for ASIC- og FPGA-løsninger. Designspecifikke opgaver: Simulation, syntese og udlægning. Højhastighedsdesign: Parallellisering, pipelining, tidslig omstrukturering og clock-schedulering. Laveffektsdesign: Højniveau-, RT-niveau- og port-niveau-teknikker. Datapath design: Addition, multiplikation, division. Rekonfigurerbare arkitekturer: Beregningselementer og forbindelsesnetværker. Studium af kendte tilfælde.