Course detail
Logical circuits and systems
FEKT-BPC-LOSAcad. year: 2023/2024
The course deals with the design and analysis of combinational and sequential circuits. It introduces students to the basics of VHDL, which they then use for simulation and testing of logical systems in solving assignments in laboratory exercises.
Language of instruction
Czech
Number of ECTS credits
7
Mode of study
Not applicable.
Guarantor
Entry knowledge
Students must have a knowledge of mathematics and electrical circuits at the level of the 1st year Bachelor studies. Work in the laboratory is conditioned by a valid qualification of a "trained worker" according to decree 50/1978 Coll. This qualification students must obtain before the start of teaching. Information on this qualification is given in the Dean's Directive Familiarization of students with safety regulations.
Rules for evaluation and completion of the course
Up to 40 points for the submission of elaborated theoretical preparations for laboratory tasks and a demonstration of the functional implementation of the practical jobs of each task on the laboratory equipment. The condition for granting the credit is the submission of the elaborated theoretical preparations and the implementation of mandatory practical assignments of all laboratory tasks.
Up to 60 points for the final written exam.
The content and forms of instruction in the evaluated course are specified by a regulation issued by the lecturer responsible for the course and updated for every academic year.
Up to 60 points for the final written exam.
The content and forms of instruction in the evaluated course are specified by a regulation issued by the lecturer responsible for the course and updated for every academic year.
Aims
To have basic knowledge of logic systems and their design, construction, testing and practical usage.
To acquaint students with basics of the VHDL language intended for hardware description.
To gain basic knowledge of methods for description, analysis and design of combinational and sequential logic circuits.
To use the VHDL language for simulation and testing of logic systems.
The absolvent has knowledge in the following areas:
- characteristics of basic logic circuits and systems,
- basics of VHDL language for hardware description,
- principles of analysis, design and implementation of combinational and sequential logic circuits,
- principles of designing, construction, testing and practical use logical systems.
The absolvent is able to:
- use a development environment for computer aided design of hardware using HDL languages,
- use VHDL language for modeling, simulation and synthesis of digital systems,
- implement basic logic systems for development kit containing a gate array.
To acquaint students with basics of the VHDL language intended for hardware description.
To gain basic knowledge of methods for description, analysis and design of combinational and sequential logic circuits.
To use the VHDL language for simulation and testing of logic systems.
The absolvent has knowledge in the following areas:
- characteristics of basic logic circuits and systems,
- basics of VHDL language for hardware description,
- principles of analysis, design and implementation of combinational and sequential logic circuits,
- principles of designing, construction, testing and practical use logical systems.
The absolvent is able to:
- use a development environment for computer aided design of hardware using HDL languages,
- use VHDL language for modeling, simulation and synthesis of digital systems,
- implement basic logic systems for development kit containing a gate array.
Study aids
Not applicable.
Prerequisites and corequisites
Not applicable.
Basic literature
KOLOUCH, J.: Programovatelné logické obvody - Přednášky [Skriptum FEKT VUT v Brně] Brno 2005 (CS)
Recommended reading
PINKER, J.; POUPA, M: Číslicové systémy a jazyk VHDL. 2006, ISBN 80-7300-198-5 (CS)
Elearning
eLearning: currently opened course
Classification of course in study plans
- Programme BPC-AMT Bachelor's 2 year of study, winter semester, compulsory
Type of course unit
Lecture
26 hod., optionally
Teacher / Lecturer
Syllabus
1. Organizace výuky, dvoustavové signály, rozdělení log. obvodů (komb., sekv.), matematická logika, logická funkce, booleova algebra, axiomy a pravidla booleovy algebry, úplně a neúplně zadaná funkce, pravdivostní tabulka, algebraické výrazy (term, minterm, maxterm), Součtový tvar UDNF, Součinový tvar UKNF, minimalizace log. funkcí (MDNF, MKNF), úprava na členy NAND a NOR, karnaughova mapa základ.
2. Karnaughovy mapy pro více proměnných, přechodné děje v kombinačních obvodech, dalších základní funkční bloky v komb. obvodů, varianty číslicové sčítačky, knihovna obvodů pro kombinační logiku.
3. Metoda minimalizace Quine-McCluskey, Programovatelné logické obvody, návrhové systémy pro programovatelné log. obvody, úvod do jazyka VHDL (základní konstrukce, ENTITY, PORT, ARCHITECTURE, identifikátory, literály, komentáře). Příklad jednoduchého kombinačního obvodu ve VHDL: (LIBRARY, USE, ALL, BEGIN, END, IS, OF, IN, OUT, INOUT, BUFFER), 9. úrovňová logika, styly jazyka VHDL (Behavioral, Dataflow, Structural), datové objekty, operátor pro přiřazení (odložené, bezprostřední).
4. Datové typy jazyka VHDL, operátory jazyka VHDL, souběžné příkazy, podmíněné přiřazení v jazyce VHDL: (ABS, ARRAY, CONSTANT, DOWNTO, TO, WHEN, ELSE, MOD, REM, RANGE, ROL, ROR, SLA, SLL, SRA, SIGNAL, SUBTYPE, TYPE, VARIABLE).
5. Datové objekty jazyka VHDL, atributy, konverze typů, fyzikální datový typ, datový typ záznam, příkaz alias, souběžné příkazy, výběrové přiřazení: (ALIAS, ATTRIBUTE, RECORD, SELECT, UNITS, WITH).
6. Další styly popisu těla architektury, hierarchické možnosti popisu architektury. Strukturální popis ve VHDL (COMPONENT, GENERIC, PORT MAP, GENERIC MAP). Opakované vkládání již definovaných entit. Rozdělení popisu na více souborů. Prostředky jazyka VHDL pro úsporný zápis kódu. Cyklus FOR v souvislosti s příkazy (FOR GENERATE, IF GENERATE). Úvod do simulace pomocí zkušebních jednotek.
7. Vnitřní schéma log. obvodů, sekvenční logické obvody, základní prvky a konstrukce sekvenčních obvodů, asynchronní a synchronní klopné obvody, hladinové a hranové klopné obvody.
8. Metastabilita v hladinových a hranových klopných obvodech, popis sekvenčních obvodů ve VHDL, VHDL jazykové konstrukce: (PROCESS, IF-ELSIF-ELSE, CASE-WHEN), funkce, definice uživatelských knihovních balíků, přímé vkládání entit.
9. Posuvné registry, LFSR - posuvné registry se zpětnou vazbou, binární čítače (asynchronní a synchronní), implementace sekvenčních obvodů pomocí konstrukcí jazyka VHDL, specializované čítače.
10. Čítače, vstup-výstupní buňka, třístavové signály, sběrnice, simulace kombinačních a sekvenčních obvodů v jazyku VHDL.
11. Konečné stavové automaty - teorie, Mooreho, Mealyho a autonomní konečný stavový automat, popisy konečných stavových automatů v jazyce VHDL.
12. Převody mezi Moore a Mealyho konečnými stavovými automaty, ekvivalence vnitřních stavů sekvenčních automatů, příklady převodů.
13. Konečné stavové automaty - dokončení, Mooreho, Mealyho a pipelined Mealyho konečný stavový automat, kódování vnitřních stavů konečných stavových automatů. Uzavření problematiky a informace o zkoušce kurzu.
2. Karnaughovy mapy pro více proměnných, přechodné děje v kombinačních obvodech, dalších základní funkční bloky v komb. obvodů, varianty číslicové sčítačky, knihovna obvodů pro kombinační logiku.
3. Metoda minimalizace Quine-McCluskey, Programovatelné logické obvody, návrhové systémy pro programovatelné log. obvody, úvod do jazyka VHDL (základní konstrukce, ENTITY, PORT, ARCHITECTURE, identifikátory, literály, komentáře). Příklad jednoduchého kombinačního obvodu ve VHDL: (LIBRARY, USE, ALL, BEGIN, END, IS, OF, IN, OUT, INOUT, BUFFER), 9. úrovňová logika, styly jazyka VHDL (Behavioral, Dataflow, Structural), datové objekty, operátor pro přiřazení (odložené, bezprostřední).
4. Datové typy jazyka VHDL, operátory jazyka VHDL, souběžné příkazy, podmíněné přiřazení v jazyce VHDL: (ABS, ARRAY, CONSTANT, DOWNTO, TO, WHEN, ELSE, MOD, REM, RANGE, ROL, ROR, SLA, SLL, SRA, SIGNAL, SUBTYPE, TYPE, VARIABLE).
5. Datové objekty jazyka VHDL, atributy, konverze typů, fyzikální datový typ, datový typ záznam, příkaz alias, souběžné příkazy, výběrové přiřazení: (ALIAS, ATTRIBUTE, RECORD, SELECT, UNITS, WITH).
6. Další styly popisu těla architektury, hierarchické možnosti popisu architektury. Strukturální popis ve VHDL (COMPONENT, GENERIC, PORT MAP, GENERIC MAP). Opakované vkládání již definovaných entit. Rozdělení popisu na více souborů. Prostředky jazyka VHDL pro úsporný zápis kódu. Cyklus FOR v souvislosti s příkazy (FOR GENERATE, IF GENERATE). Úvod do simulace pomocí zkušebních jednotek.
7. Vnitřní schéma log. obvodů, sekvenční logické obvody, základní prvky a konstrukce sekvenčních obvodů, asynchronní a synchronní klopné obvody, hladinové a hranové klopné obvody.
8. Metastabilita v hladinových a hranových klopných obvodech, popis sekvenčních obvodů ve VHDL, VHDL jazykové konstrukce: (PROCESS, IF-ELSIF-ELSE, CASE-WHEN), funkce, definice uživatelských knihovních balíků, přímé vkládání entit.
9. Posuvné registry, LFSR - posuvné registry se zpětnou vazbou, binární čítače (asynchronní a synchronní), implementace sekvenčních obvodů pomocí konstrukcí jazyka VHDL, specializované čítače.
10. Čítače, vstup-výstupní buňka, třístavové signály, sběrnice, simulace kombinačních a sekvenčních obvodů v jazyku VHDL.
11. Konečné stavové automaty - teorie, Mooreho, Mealyho a autonomní konečný stavový automat, popisy konečných stavových automatů v jazyce VHDL.
12. Převody mezi Moore a Mealyho konečnými stavovými automaty, ekvivalence vnitřních stavů sekvenčních automatů, příklady převodů.
13. Konečné stavové automaty - dokončení, Mooreho, Mealyho a pipelined Mealyho konečný stavový automat, kódování vnitřních stavů konečných stavových automatů. Uzavření problematiky a informace o zkoušce kurzu.
Laboratory exercise
39 hod., compulsory
Teacher / Lecturer
Syllabus
1.-2. Numerická cvičení s příklady pro návrh kombinačních obvodů.
3.-6. Laboratorní úlohy 1 – 4 (kombinační obvody, VHDL).
7.-8. Numerická cvičení s příklady pro návrh sekvenčních obvodů.
9.-12. Laboratorní úlohy 5 – 8 (sekvenční obvody, VHDL).
13. Rezerva, náhradní cvičení pro odevzdání laboratorních úloh.
3.-6. Laboratorní úlohy 1 – 4 (kombinační obvody, VHDL).
7.-8. Numerická cvičení s příklady pro návrh sekvenčních obvodů.
9.-12. Laboratorní úlohy 5 – 8 (sekvenční obvody, VHDL).
13. Rezerva, náhradní cvičení pro odevzdání laboratorních úloh.
Elearning
eLearning: currently opened course