TSEA85 · 6 hp · Avancerad nivå (A1F) · Datateknik, Elektroteknik
Hårdvarudesign för acceleration av maskininlärning
Ges · nästa start HT 2026
100 %
klarade senaste ordinarie tillfället
LAB1 · 11 dec 2025 · 19 studenter
100 %
klarade de ordinarie tillfällena, alla tillfällen de senaste 5 åren
LAB1 · 19 studenter
Modulen rapporterar bara godkända resultat, så andelen godkända visar inte hur många som inte klarade den.
Ingår i 4 program
Inlämning eller laboration
LAB1 Laborationer
- G
Ordinarie tillfällen
100 % godkända · 19 studenter
- 100 %19
Senare tillfällen
Inga tillfällen med minst 5 studenter.
Övriga moment
Deltentor, inlämningar och laborationer. De ingår inte i siffrorna överst.
Inlämning eller laboration
PRA1 Miniprojekt
- G
Ordinarie tillfällen
100 % godkända · 17 studenter
- 100 %17
Senare tillfällen
Inga tillfällen med minst 5 studenter.
Visa små tillfällen (1)
Tillfällen med färre än 5 studenter, ofta tillgodoräknanden eller specialtillfällen. De ingår inte i någon siffra på sidan.
- 100 %2
Om kursen
Mål
Kursen syftar till att ge praktisk erfarenhet av design av en avancerad maskininlärningsaccelerator med hjälp av omkonfigurerbar hårdvara med fokus på prestanda, felsökning, minne och interaktion mellan hårdvara och mjukvara. Efter avslutad kurs ska studenten kunna:
- Designa och integrera hårdvaruacceleratorer för maskininlärningsapplikationer.
- Använd högnivåspråk C/C++ för system-på-chip-design.
- Integrera ett system-på-chip av IP-block för att lösa ett specifikt problem.
- Felsöka och uppskatta acceleratorns prestanda via simulering.
- Implementera designen i ett FPGA-kort, testa funktionalitet med hjälp av testbänkar, mät prestanda och analysera prestandaflaskhalsar.
Innehåll
I den här kursen kommer vi att utforska arkitekturen och funktionerna hos moderna FPGA (Field Programable Gate Arrays) tillsammans med deras tillämpning för maskininlärning och artificiell intelligens hårdvaruacceleration. FPGA är en form av omkonfigurerbar hårdvara där den underliggande logiken anpassar sig för att passa det algoritmiska problemet och de kan uppnå högre prestanda och bättre energieffektivitet än alternativ CPU/GPU-hårdvara i vissa applikationer. Vi kommer att fokusera på arkitekturen för system-on-chip-enheter som kombinerar en processor och FPGA-tyg i samma chip, såsom Xilinx/AMD Zynq och Versal-familjerna. Medan Zynq-familjen kännetecknas av närvaron av programmerbar logik och bearbetningssystem i samma enhet, lägger Versal-familjen till så kallade intelligenta motorer som en 2-dimensionell uppsättning av VLIW (Very Long Instruction Word) programmerbara processorer. Detta gör dessa enheter till en mycket skalbar och heterogen plattform som kräver betydande tekniska mjukvaru- och hårdvarukunskaper. Vi kommer att lära oss hur man använder C-baserad högnivåsyntes för att ersätta traditionell Verilog/VHDL RTL-design för att skapa snabba och effektiva hårdvaruacceleratorer för neurala nätverksoperatörer inom maskininlärning och artificiell intelligens. Kursen kommer att behandla olika hårdvaruoptimeringsstrategier och hur C-baserade pragmor används för att styra utdata som genereras av högnivåsyntes. I labben kommer VITIS HLS- och VIVADO-synthesis och implementeringsverktygen inriktas på en SoC Zynq FPGA som också inkluderar ett ARM-baserat bearbetningssystem. ARM-processorn fungerar som en värd och skickar och samlar in resultat från hårdvaruacceleratorn. Kursen kräver förkunskaper om datorarkitektur, digital design och C/C++-baserad programmering. Vissa tidigare erfarenheter av Python skulle vara användbara. C/C++ används som designspråk för acceleratorn med hjälp av toppmoderna högnivåsynteskompilatorer. Acceleratorn exporteras sedan som ett IP-block i VHDL/Verilog och integreras med andra komponenter inklusive ARM-processorn för att bilda ett fungerande system-på-chip. Inledande simuleringar följt av FPGA-implementering används för att verifiera korrekt funktionalitet och den erhållna accelerationsnivån.
- Examinator
- Oscar Gustafsson
- Schemalagd tid
- 42 h
- Huvudområde
- Datateknik, Elektroteknik