Detail předmětu
Mikroprocesory
FEKT-BMICAk. rok: 2011/2012
Zobrazení čísel v počítači. Logické funkce Boolova algebra, kombinační a sekvenční logické obvody. Princip činnosti mikroprocesoru. Sdresovací módy. Podprogramm přerušení, práce se zásobníkem. Von Neumanova a harwardská koncepce počítače. Přesahování a řetězení. Superskalární architektura. Procesory CISC a RISC. Multiprocesorové systémy a procesorová pole. Mikrokontroléry firmy Freescale řady HCS12: Programátorský model. Adresovací módy. Instrukční soubor. Periferie: Porty, A/D převodník, časovací subsystém, SPI, SCI, IIC, PWM. Segmentace. Stránkování, virtualizace paměti, logická a fyzická adresa, MMU. Uživatelský a privilegovaný (supervisor) mód. Mikroprocesory Intel s IA32/IA32e architekturou: programátorský model, adresovací módy, reálný a chráněný režim, ochrana paměti, přepínání procesů, stránkovací jednotka u IA32/IA32e, přerušení. Embedded systémy.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Prerekvizity
Plánované vzdělávací činnosti a výukové metody
Způsob a kritéria hodnocení
Závěrečná zkouška je hodnocena max. 60ti body.
Osnovy výuky
2. Základní funkční bloky sestavené z kombinačních logických obvodů: binární dekodér, multiplexor, demultiplexor, prioritní kodér, číslicový komparátor, převodník kódu.
3. Klopné obvody princip, rozdělení. RS, D, JK, T, master-slave klopné obvody. Sekvenční logické obvody: modelování pomocí konečného automatu, Huffmanův model, Mealyho automat, Moorův automat.
4. Datové registry, posuvné registry, synchronní a asynchronní čítače, děliče. Sběrnice.
5. Von Neumannova koncepce pocítace. Základní cyklus počítače. Blokové schéma počítače, ALU, řadič, registry, paměť, periferie. Organizace paměti. Mikroprocesor, mikrokontrolér, signálový procesor, signálový kontrolér.
6. Program, instrukce, instrukční soubor, typy instrukcí, počet operandů v instrukci, architektura souboru instrukcí. Adresovací módy.
7. Strojový kód a assembler. Podprogramy, práce se zásobníkem. Rozdíl mezi podprogramem a makrem. Zásobník a jazyk C.
8. Obsluha periferií: aktivní čekání, přerušení, DMA. Synchronní a asynchronní 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, generování hodinového signálu (oscilátory, fázový závěs), hodiny reálného času, watchdog (COP), časovače (funkce Imput Capture a Output Compare), pulsní akumulátory, PWM, SPI, A/D, D/A převodníky.
10. Von Neumannova, harvardská a modifikovaná harvardská architektura. Řetězení (pipelining), problémy při řetězeném zpracování instrukcí. 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. Principy lokalit a hierarchie paměti, paměť cache.
13. Správa paměti. Systémy bez abstrakce paměti. Abstrakce - paměťový prostor. Bázový registr a registr pro limit. Stránkování a segmentace. Virtualizace paměti.
Učební cíle
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky
Prerekvizity a korekvizity
- povinná prerekvizita
Počítače a programování 1
Základní literatura
Pinker J., Poupa M. Císlicové systémy a jazyk VHDL. Praha: BEN, 2006. 349 s. ISBN 80-7300-198-5. (CS)
Zařazení předmětu ve studijních plánech
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
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
Vyučující / Lektor
Osnova
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.