Detail předmětu

Programmable Logic Devices

FEKT-NPLDAk. rok: 2019/2020

Studenti prohloubí své znalosti číslicové techniky, především s ohledem na implementaci digitálních systémů v obvodech PLD (FPGA a CPLD) a 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ů

6

Výsledky učení předmětu

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

Prerekvizity

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.

Plánované vzdělávací činnosti a výukové metody

Metody vyučování zahrnují přednášky a cvičení na počítači. Předmět využívá e-learning (Moodle). Předmět je orientován silně prakticky s důrazem na zvládnutí látky v počítačovém cvičení.

Způsob a kritéria hodnocení

Studenti jsou hodnoceni průběžně během semestru za aktivní práci v počítačových cvičeních. Povinná závěrečná zkouška se skládá z písemné, praktické a ústní části.

Osnovy výuky

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. 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

Učební cíle

Cílem předmětu je naučit studenty základní principy práce s moderními obvody PLD, především CPLD a FPGA, a to jak z hlediska jejich konfigurace (programování), tak jejich výběru a aplikace (začlenění do systému).

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Vymezení kontrolované výuky a způsob jejího provádění stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Základní literatura

WAKERLY, J.: Digital Design - principles and practices. 4-th Ed. Pearson Education LTD, Prentice Hall, 2005 (EN)

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

  • Program EEKR-MN magisterský navazující

    obor MN-TIT , 1 ročník, letní semestr, volitelný mimooborový
    obor MN-MEL , 1 ročník, letní semestr, volitelný mimooborový
    obor MN-SVE , 1 ročník, letní semestr, volitelný mimooborový
    obor MN-EST , 1 ročník, letní semestr, volitelný oborový

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

Přehled způsobů realizace číslicových systémů. Zápis logických funkcí, jejich realizace základními strukturami PROM, PAL, PLA
Obvody PLD 1. a 2. generace - přídavné prvky, módy a struktura makrobuňky obvodů GAL 16V8 a 20V8. Další typy obvodů PLD 2. generace. Značení obvodů PLD, parametry nejdůležitějších obvodů
Zvláštní varianty obvodů PLD (ZeroPower, obvody s nižším napájecím napětím atd.). Programování, programovací přístroje
Obvody PLD 3. generace (CPLD) a obvody FPGA - struktura, základní vlastnosti
Realizace složitých kombinačních logických funkcí - víceprůchodové a iterativní zapojení, sčítačka, komparátor
Vytváření asynchronních klopných obvodů RS a D ve struktuře PLD
Synchronní systémy v PLD: Použití klopných obvodů typu T a log.členů EX-OR. Vzájemná konverze různých typů klopných obvodů, emulace
Binární čítače jednosměrné, vratné a se zkráceným cyklem - způsoby popisu v HDL, počet termů
Čítače s kódem BCD, jejich implementace v obvodech PLD
Čítače s Grayovým kódem, zkracování jejich cyklu
Čítače LFSR - struktura, výhody a nevýhody, použití
Návrat čítačů do pracovního cyklu
Stavové automaty (SA): typ Moore a Mealy, jejich popis v jazyku HDL, kompilace - převod na zápis typu SOP
Zjednodušování SA - ekvivalentní stavy a jejich vyhledání. Kódování stavů v obvodech PLD a FPGA. Algoritmický popis SA
Časové parametry programovatelných obvodů, pipelining
Obvody FPGA - přídavné bloky: implementace I/O standardů, paměťové prvky, bloky pro syntézu kmitočtu a pro další zpracování hodinových signálů
Implementace procesorů, použití bloků duševního vlastnictví
Hraniční test, metastabilita

Cvičení na počítači

39 hod., povinná

Vyučující / Lektor

Osnova

Přehled obvodů PLD a návrhových systémů. Základy práce s návrhovými systémy, jazyky HDL
Jazyk ABEL: způsoby popisu kombinačních číslicových systémů - tvar SOP, složitější příkazy jako WHEN-THEN-ELSE, jejich kompilace. Příklad: prioritní enkodér
Synchronní systémy: způsoby popisu, příklady různých typů čítačů
Základy jazyka VHDL, behaviorální a strukturální popis, souběžné příkazy a procesy. Hierarchicky uspořádané konstrukce
Popis kombinačních obvodů v jazyku VHDL. Nežádoucí latch a jak předejít jeho vzniku
Behaviorální popis registrů řízených hranou. Čítače binární, dekadické, LFSR
Stavové automaty: grafická a textová forma stavového diagramu, příklad: detektory posloupností bitů. Grafické editory stavových diagramů, prostředek StateCAD
Simulace, syntéza a implementace konstrukcí (průběžně v celém cvičení)