Detail předmětu

Microprocessors

FEKT-CMICAk. rok: 2017/2018

Předmět je zaměřen na základy logických obvodů a mikroprocesorových a embedded systémů. Studenti se seznámí s návrhem kombinačních a sekvenčních logických obvodů, principem činnosti mikroprocesorů, použitím mikrokontrolérů, paměťovými systémy a správou paměti. Ve cvičeních studenti získají praktické zkušenosti s programováním mikrokontrolérů v assembleru a jazyce C.

Jazyk výuky

angličtina

Počet kreditů

6

Garant předmětu

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

Absolvent předmětu by měl být schopen:
- navrovat kombinační logické obvody,
- navrhovat sekvenční logické obvody typu Mealy a Moore automat,
- navrhnot připojení externích pamětí k mirokontroléru,
- vytvořit softwarové vybavení pro mirokontrolér v assembleru a jazyce C,
- popsat hierarchii paměti a vysvětlit použití pamětí cache,
- vysvětlit rozdíl mezi mikroprocesorem, mikrokontrolérem, signálovým procesorem a signálovým kontrolérem,
- vysvětlit mechanismus segmentace, stránkování a virtualizace paměti.

Prerekvizity

Student by měl být schopen vytvořit jednoduchý program v jazyce C a vysvětlit funkci základních elektronických součástek.

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. Student vypracuje šest úloh.

Způsob a kritéria hodnocení

Počítačová cvičení jsou hodnocena max. 40 body, z toho 10 bodů za samostatné naprogramování zadaných úloh a 30 bodů za dva testy.
Závěrečná zkouška má písemnou část a je hodnocena max. 60 body.

Osnovy výuky

1. Logická funkce. Booleova agebra. Minimalizace logických funkcí. Realizace logických obvodů pomocí členů NAND a NOR.
2. Binární dekodér, multiplexor, demultiplexor, analogový multiplexor, prioritní kodér, číslicový komparátor, převodník kódu.
3. Klopné obvody: princip, RS, D, JK, T, master-slave klopné obvody. Sekvenční logické obvody: modelování pomocí konečného automatu, Huffmanův model, Mealyho a Moorův automat.
4. Datové registry, posuvné registry, synchronní a asynchronní čítače, děliče.
5. Von Neumannova koncepce počítače. Základní cyklus počítače. Blokové schéma počítače, ALU, řadič, registry, paměť, periferie. Mikroprocesor, mikrokontrolér, signálový procesor, signálový kontrolér.
6. Program, instrukce, instrukční soubor, typy instrukcí. Adresovací módy.
7. Strojový kód a assembler. Podprogramy, práce se zásobníkem. Rozdíl mezi podprogramem a makrem.
8. Obsluha periferií: aktivní čekání, přerušení, DMA. Přerušení. Činnost procesoru při obsluze přerušení. Maskovatelné, nemaskovatelné a pseudomaskovatelné přerušení. Reset.
9. Periferní subsystémy mikrokontrolérů: porty, jednotky generování hodinového signálu, hodiny reálného času, watchdog, časovače (funkce Imput Capture a Output Compare), PWM, A/D, D/A převodníky, SCI, SPI, IIC. Mikrokontroléry HCS08 firmy Freescale.
10. Von Neumannova, harvardská a modifikovaná harvardská architektura. Řetězení (pipelining). Superskalární architektura. Multiprocesorové systémy a procesorová pole.
11. Paměti: rozdělení, parametry. Princip a vlastnosti pamětí SRAM, DRAM, SDRAM, DDR RAM, ROM, EPROM, EEPROM, FLASH, FeRAM, MRAM.
12. Připojování pamětí ke sběrnicím. Hierarchie paměti, paměť cache.
13. Správa paměti. Adresový prostor. Logická a fyzická adresa. MMU. Bázový registr a registr pro limit. Stránkování a segmentace. Virtualizace paměti.

Učební cíle

Cílem předmětu je naučit studenty navrhovat jednoduché kombinační a sekvenční logické obvody, seznámit je s principy činnosti mikroprocesorových systémů, subsystémy mikrokontrolérů a základy tvorby softwarového vybavení pro embedded systémy.

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

Počítačová cvičení jsou povinná, řádně omluvené zmeškané počítačové cvičení lze po domluvě s vyučujícím nahradit.

Základní literatura

Patterson, D., Hennessy, J. Computer Organization and Design, 5th Edition. Morgan Kaufmann, 2013. ISBN 9780124077263.

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

  • Program EEKR-BC bakalářský

    obor BC-AMT , 2. ročník, letní semestr, povinný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Matematická logika, logická funkce, Booleova agebra. Vyjádření logické funkce pomocí tabulky, algebraického výrazu, Karnaughovy mapy, zjednodušování logických funkcí. Rozdělení logických obvodů.
2. Kombinační logické obvody (spínače, přepínače, dekodéry, multiplexory, demultiplexory). Sekvenční logické obvody: klopné obvody.
3. Sekvenční logické obvody: Huffmanův model automatu, Mealyho automat, Moorův automat.
Registry, čítače, děliče, posuvné registry.
3. Paměti. Blokové schéma počítače, CPU - ALU, řadič, registry. Mikroprocesor, mikropočítač, mikrokontrolér, signálový procesor. Popis činnosti mikroprocesoru. Hodinový cyklus, fáze, strojový cyklus a instrukční cyklus.
4. Adresovací módy. Podprogramy, přerušení, práce se zásobníkem. Von Neumannova, harvardská a modifikovaná harvardská architektura mikroprocesorů. Přesahování (overlapping), řetězení (pipelining), problémy při řetězeném zpracování instrukcí.
5. Mikrokontroléry Motorola řady HCS12: Programátorský model, adresovací módy. Operační módy a paměťové mapy.
6. HCS12: Přerušovací systém. Porty, jednotka MEBI funkce Key Wake up, jednotka PIM. Jednotka CRG (oscilátory, fázový závěs, hodiny reálného času (RTI), watchdog (COP)).
7. HCS12: A/D převodník. Časovací subsystém: funkce input capture, funkce output compare, pulsní akumulátory.
8. HCS12: Sériový asynchronní komunikační kanál SCI. Sériový synchronní komunikační kanál SPI. Mudul PWM. Úsporné režimy WAIT a STOP.
9. Připojování vnějších prvků jako paměti, A/D a D/A převodníky, displeje, klávesnice k mikrokontrolérům.
10. Segmentace, stránkování a virtualizace paměťového prostoru. Architektura procesorů Intel IA32 (I386): Programátorský model registry ALU. Adresovací módy. Adresování paměti a I/O zařízení.
11. IA32: Tvorba fyzické adresy v reálném módu. I386 chráněný režim: Procesy a úrovně oprávnění. Selektory a deskriptory, tabulky deskriptorů GDT, LDT. Zpřístupnění datového segmentu.
12. IA32: Předání řízení do instrukčního segmentu, brány. Přepínání procesů. Přerušení v reálném a v chráněném režimu. Stránkovácí jednotka.
13. Architektura procesorů Intel P6. MMX, SSE, SSE2, SSE3 instrukce. Nové trendy ve vývoji procesorů Intel. Embedded systémy.

Cvičení na počítači

39 hod., povinná

Vyučující / Lektor

Osnova

1. Číselné soustavy, převody mezi dekadickou, binární a hexadecimální číselnou soustavou. Sečítání a odečítání binárních čísel, první a druhý doplněk. Násobení a dělení binárních čísel.
2. Vyjádření čísel s pohyblivou řádovou čárkou dle standardu IEEE-754. Zjednodušování logických funkcí, návrh binární sčítačky.
3. Návrh sekvenčních logických obvodů.
4. Jazyk symbolických adres mikrokontrolérů HCS12. Program v jazyce symbolických adres pro součet a rozdíl dvou 16-ti a 32-ti bitových čísel.
5. Program v jazyce symbolických adres pro přesun pole čísel. Program v jazyce symbolických adres pro setřídění pole čísel.
6.Program v jazyce symbolických adres pro násobení dvou 16-ti bitových čísel pomocí instrukce MUL. Program v jazyce symbolických adres pro násobení dvou 16-ti bitových čísel pomocí posuvů.
7. Program v jazyce symbolických adres - práce se zásobníkem.
8. Program v jazyce C - práce s binárními I/O prorty.
9. Program v jazyce C demonstrující využití funkce Real Time Interupt u HCS12.
10. Program v jazyce C demonstrující využití sériového komunikačního rozhraní (SCI) u HCS12.
11. Program v jazyce C demonstrujícího použití A/D převodníku mikrokontrolérů řady HCS12.
12. Program v jazyce C demonstrující využití funkce Output Compare a Input Capture časovacího systému HCS12.
13. Zápočtový test.