Detail předmětu

Programmable Logic Devices

FEKT-MPA-PLDAk. rok: 2023/2024

Studenti prohloubí své znalosti číslicové techniky, především s ohledem na implementaci digitálních systémů v obvodech FPGA, případně ASIC. V rámci přednášek získají přehled o současném stavu technologie těchto obvodů, používaných architektur, principu návrhu a použití základní bloků číslicové techniky (čítače, stavové automaty, paměťové struktury). V rámci počítačových cvičení se naučí pracovat s návrhovým systémem pro obvody FPGA/CPLD. To zahrnuje popis číslicového systému (VHDL, schéma, IP jádra), jeho implementace a verifikaci s využitím simulátoru. Po absolvování kurzu jsou studenti schopni navrhnout a s využitím jazyka VHDL nakonfigurovat jednoduchý systém s obvodem FPGA.

Jazyk výuky

angličtina

Počet kreditů

5

Nabízen zahraničním studentům

Všech fakult

Vstupní znalosti

Studenti musí znát základy impulzové a číslicové techniky: Booleova algebra, Karnaughovy mapy, pravdivostní tabulky, funkce základních hradel a klopných obvodů, princip a vlastnosti průchodu signálu aktivními a pasivními přenosovými články.

Pravidla hodnocení a ukončení předmětu

Studenti jsou hodnoceni průběžně během semestru za aktivní práci v počítačových cvičeních (36 b). Povinná závěrečná zkouška se skládá z písemné (16 b), praktické (33 b) a ústní části (15 b).
Vymezení kontrolované výuky a způsob jejího provádění stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Učební cíle

Cílem předmětu je naučit studenty základní principy práce s obvody FPGA, a to jak z hlediska jejich konfigurace (programování), tak jejich výběru a aplikace (začlenění do systému).
Absolvent předmětu: (a) dokáže vytvořit popis jednoduchého číslicového systému pomocí jazyka VHDL; (b) dokáže provést verifikaci číslicového systému s využitím jazyka VHDL; (c) je schopen vybrat vhodný typ stavového automatu pro konkrétní aplikaci a výběr zdůvodnit; (d) je schopen provést návrh a implementaci stavového automatu pomocí jazyka VHDL; (e) dokáže porovnat architektury různých obvodů PLD a vybrat vhodnou architekturu pro danou aplikaci; (f) je schopen stanovit požadavky na časové parametry designu a ověřit jejich splnění po jeho implementaci; (g) umí implementovat základní IP jádra, jako jsou paměti a jednoduché bloky pro číslicové zpracování signálů (FIR filtry); (h) dokáže do obvodu FPGA implementovat jednoduchý mikrokontrolér, naprogramovat jej a použít v cílové aplikaci; (i) je schopen stanovit požadavky na napájecí systém obvodu FPGA; (i) dokáže provést rozvahu a nalézt vhodné řešení signálové integrity.

Základní literatura

Lindh, L., Klevin, T.: Advanced HW/SW Embedded System for Designers, FPGA - System On Chip. Independently published, 2018, ISBN: 978-1731115812 (EN)
Wilson, P.: Design Recipes for FPGAs: Using Verilog and VHDL, 2nd Edition. Newnes, 2018, ISBN: 978-0080971292 (EN)

Elearning

Zařazení předmětu ve studijních plánech

  • Program MPAJ-TEC magisterský navazující 1 ročník, letní semestr, povinně volitelný
  • Program MPAD-MEL magisterský navazující 1 ročník, letní semestr, povinně volitelný
  • Program MPAD-CAN magisterský navazující 1 ročník, letní semestr, povinně volitelný
  • Program MPA-TEC magisterský navazující 1 ročník, letní semestr, povinně volitelný
  • Program MPA-MEL magisterský navazující 1 ročník, letní semestr, povinně volitelný
  • Program MPA-CAN magisterský navazující 1 ročník, letní semestr, povinně volitelný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Úvod do problematiky integrovaných číslicových obvodů, vznik a vývoj obvodů CPLD, FPGA.
2. Úvod do jazyka VHDL.
3. Základy číslicových systémů: hradla, klopné obvody, posuvné registry, čítače.
4. Teorie konečných stavových automatů, Moorův a Mealyho stavový automat.
5. Praktický návrh a aplikace konečných stavových automatů, mikrosekvencery.
6. Základní architektura obvodů FPGA a CPLD: logické buňky, propojovací struktura, vstupně/výstupní buňky.
7. Časové parametry číslicových obvodů, metastabilita, metody zvyšování pracovního kmitočtu.
8. Hodinové domény v obvodech FPGA, clock enabling, clock management, synchronní a asynchronní nulování.
9. Realizace paměťových struktur v FPGA, použití RAM, ROM, FIFO.
10. Číslicové zpracování signálů v FPGA, bloky pro podporu DSP operací.
11. Pokročilé bloky integrované v FPGA, HARD a SOFT IP jádra, implementace základních jader.
12. Procesory v FPGA, SoC, technologie výroby FPGA, konfigurace.
13. Integrita signálů, návrh plošných spojů a systému napájení pro FPGA, vliv radiace.

Cvičení na počítači

26 hod., povinná

Vyučující / Lektor

Osnova

1. Úvod do VHDL a návrhového systému ISE, constraints.
2. Základní příkazy, realizace kombinačních funkcí (dekodéry).
3. Použití hierarchického popisu, schéma.
4. Implementace sekvenčních systémů (čítače).
5. Stavové automaty, popis ve VHDL.
6. Strukturální popis, testbench, simulace.
7. LFSR čítač, časové parametry konstrukcí, spotřeba FPGA.
8. Použití IP jader.
9. Použití nástroje ChipScope.
10. Procesory v FPGA - PicoBlaze, základní princip použití.
11. Procesory v FPGA - PicoBlaze, vlastí periferie.
12. Procesory v FPGA - MicroBlaze.

Elearning