Přehled registrů Střední odborná škola Otrokovice Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Miloš Zatloukal Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Charakteristika DUM 2 Název školy a adresaStřední odborná škola Otrokovice, tř. T. Bati 1266, Otrokovice Číslo projektuCZ.1.07/1.5.00/ /2 AutorIng. Miloš Zatloukal Označení DUM VY_32_INOVACE_SOSOTR-PE-CT/1-EL-5/13 Název DUMPřehled registrů Stupeň a typ vzděláváníStředoškolské vzdělávání Kód oboru RVP26-41-L/52 Obor vzděláváníProvozní elektrotechnika Vyučovací předmětČíslicová technika Druh učebního materiáluVýukový materiál Cílová skupinaŽák, 15 – 16 let Anotace Výukový materiál je určený k seznámení žáků se základní vnitřní strukturou mikropočítače – s jeho architekturou Vybavení, pomůckyDataprojektor Klíčová slova Procesor, řadič, ALU, registr, operand, dekodér, čítač, příznak, střadač, zápisník, banka, zásobník, FIFO, LIFO, ukazatel Datum
Obsah tématu Registr – definice, parametry Druhy registrů - systémové - datové - střadačové - zápisníkové - paměť RWM - zásobník - registry podsystémů mikropočítače Přehled registrů
Registr Jde o samostatně adresovatelnou část paměti, umístěnou na čipu mikroprocesoru nebo jednočipového mikropočítače. Jaké jsou parametry registru? - typ – zařazení do skupiny - šířka – počet bitů - druh adresování – bajtové, bitové - jeho adresa Příklad: registr P1 (Intel 8051) - skupina registrů podsystémů mikropočítače – registry vstupů a výstupů (porty) - 8 bitový -adresování symbolické - bajtové: P1 - bitové P1.0 až P1.7 - adresa - symbolická: P1 - číselná:90H
Systémové registry Mají přesně definovanou funkci (jsou spojeny s nějakou hardwarovou funkcí) Patří k nim: - Instrukční registr - Dekodér instrukce - Čítač instrukcí - Registr příznaků
Instrukční registr - obsahuje aktuální instrukci (její číselný kód) - přečtení instrukce z paměti programu zajistí řadič - na něj pak navazuje dekodér instrukce Dekodér instrukce - rozpozná přesně instrukci - provede dekódování (převod číselného kódu) na řídicích signály pro řadič - pak dále pracuje podle informací v instrukci obsažené (řídí načtení vstupních hodnot a uložení výsledků do paměti) - dekodér dále řídí činnost ALU (provedení operace požadované instrukcí) Čítač instrukcí – programový čítač – Program Counter (PC) - jde o jakýsi ukazatel řádku v programu – počítadlo - slouží k automatickému adresování instrukcí programu - po vykonání běžné instrukce se jeho obsah zvětší automaticky o jedničku – tím číselně označuje adresu následující instrukce programu (běžné jednobajtové adresování) - u delších instrukcí se obsah čítače zvětší o 2, 3, 4 (podle počtu bajtů instrukce)
Čítač instrukcí – pokračování - obsah může být změněn skokově – jak? - instrukcemi skoků - nepodmíněné (skok vždy) - podmíněné (skok na určenou adresu nastane až po splnění podmínky) - příkazem pro spuštění podprogramu (jeho tzv. volání) - vždy je nutné zajistit návrat do aktuálního místa v programu Registr příznaků ( příznakový registr – Flag Register – F) Co je příznak (flag)? - informační bit, který svojí hodnotou signalizuje výsledek nějaké operace - Flag – praporek je odvozen od signalizačního praporku (např. atletika, stadion, rozhodčí – rekord, přešlap…) - příznakové bity jsou na výstupu ALU - jejich význam se může lišit v závislosti na typu procesoru - mnohé z nich jsou univerzální
Registr příznaků – pokračování - příznakové bity se sdružují do společného registru příznaků (říká se mu stavový – Status) - může tvořit spolu s obsahem střadače tzv. stavové slovo programu (PSW – Program Status Word) - příznakové bity - mohou vyjadřovat výsledek poslední operace, která na ně měla vliv (uložený údaj) - mohou odrážet aktuální stav obsahu střadače (pak se neustále mění a nejsou dlouhodobě pamatovány) - jsou automaticky nastavovány (nula nebo 1) hardwarově - existuje i možnost programové změny obsahu příznaku (instrukcí – tedy softwarově).
Příklady příznaků : C (CY) – CARRY – přenos - mění stav při aritmetických operacích, porovnáních, posunech a rotacích - nastaví se při přenosu z nejvyššího řádu(tj. z 8. do 9. bitu) AC – AUXILIARY CARRY – pomocný přenos - používá se při práci se čtyřbitovými čísly – např. v BCD kódu - nastaví se v případě přenosu ze 4. bitu do 5. (číslováno od 1) Z – ZERO – příznak nuly - používá se např. u cyklů se snižováním počítadla - nastaví se, je-li výsledek ve střadači nulový P – PARITY – parita - nastaví se do takového stavu (0 nebo 1) aby svojí hodnotou doplnil počet jedniček ve střadači v závislosti na požadavku, aby byl počet sudý či lichý
Příklady příznaků – pokračování: OV – OVERFLOW – přetečení - nastaví se při přenosu z předposledního (7.) do 8. bitu (výsledek je v intervalu 128 až 255, 8. bit může být znaménkový a je pak přepsán) - při zakázaných operacích – např. při dělení nulou
Složení procesoru z hlediska systémových registrů Obr. 1
Ukládání dat Data určená ke zpracování nebo ukládaná jako mezivýsledky nebo konečné výsledky výpočtů se ukládají do pamětí (registrů). Datové registry se dělí na: Střadačové registry Střadač = akumulátor (také pracovní registr – W – Work) - bývají v procesoru jeden nebo dva (např. u Intel 8051 jde o registr A (hlavní) a B (pomocný) - nepoužívají se pro dlouhodobé uložení dat - jsou nejvíc používány při aritmetických a logických operacích - jejich obsah je nejčastějším operandem (číslem pro výpočty) - nejčastěji se do nich ukládá výsledek
Zápisníkové registry - sdruženy do skupin – sad registrů (registrová banka) - aktuálně se pracuje pouze s jednou sadou (např. celkově ze 4) - slouží pro uchovávání mezivýsledků operací - jejich počet je omezen (zabírají významně místo na čipu) - k jejich obsahu je rychlejší přístup než k vnější datové paměti - jednoduše se pracuje s jejich obsahem - jde o univerzální registry Paměť dat typu RWM (Read Write Memory – paměť pro čtení a zápis) - do ní se ukládají rozsáhlejší nebo méně používaná data (čísla – operandy pro aritmetické a logické operace)
Zásobník – Stack - jde o paměť se zvláštním přístupem (jde o postupný (sekvenční) přístup k obsahu této paměti Použití zásobníku: - k dočasnému uložení obsahu důležitých registrů (např. střadače, registru příznaků… jejichž obsah by se během různých operací přepsal) - k uložení návratových adres při volání podprogramů (včetně těch pro obsluhu přerušení)
Umístění zásobníku: a) v běžné paměti dat - přístup k němu je přes registr nazvaný ukazatel zásobníku (Stack pointer – SP) - číslo v ukazateli zásobníku určuje místo vrcholu zásobníku - při ukládání do zásobníku se číslo v jeho ukazateli zvýší o jedničku - při výběru informace ze zásobníku se zase sníží b) v registrovém bloku - v procesoru jsou pro něj vyhrazeny speciální registry (určené pouze pro uchování obsahu čítače instrukcí a jeho pozdější obnovu) - počet těchto registrů bývá mezi 2 a 8 - není tedy možné pracovat s přímo daty uloženými v zásobníku
Typy zásobníků podle pořadí vkládání a vybírání obsahu: a) FIFO (First Input First Output) - co jako první vstoupí dovnitř, to jako první vyjde ven (číslo umístěné jako první v pořadí, bude také jako první získáno nazpět, vyňato, přesunuto pryč) - tato paměť se ale jako zásobník běžně nepoužívá b) LIFO (Last Input First Output) - co jako poslední vstoupí dovnitř, to jako první vyjde ven (číslo umístěné jako poslední v pořadí, bude naopak jako první získáno nazpět (vyňato, přesunuto pryč) - tato paměť se je pro zásobník nejčastěji používána
Paměť typu LIFO a FIFO – porovnání Obr. 2
Registry podsystémů mikropočítače zahrnují řídicí a pomocné registry pro složitější celky jednočipového mikropočítače. Registry mohou být také označovány zkratkou SFR (speciální funkční registry) K těmto celkům patří např. -čítač/časovač (Counter / Timer) -přerušovací podsystém (Interrupt System) -registry vstupů a výstupů (porty – brány) -regisry sériové komunikace -hlídací obvod typu Watchdog (WDT) -časový obvod – RTC – (Real Time Clock)
Kontrolní otázky 2. Jako pomyslné pravítko – ukazovátko v programu slouží: a)Čítač/časovač b)Čítač instrukcí c)Časovač typu WDT 1. Instrukce je v programu pro procesor zapsána jako: a)Zkratka z 1 až 4 písmen b)Kombinace písmene (písmen) a dvojkového čísla c)Dvojkové n-bitové číslo 3. Informační bit, který slouží jako indikátor typu Platí – neplatí se nazývá: a)Příznak b)Návěstí c)Ukazatel zásobníku
Kontrolní otázky – správné odpovědí červeně 2. Jako pomyslné pravítko – ukazovátko v programu slouží: a)Čítač/časovač b)Čítač instrukcí c)Časovač typu WDT 1. Instrukce je v programu pro procesor zapsána jako: a)Zkratka z 1 až 4 písmen b)Kombinace písmene (písmen) a dvojkového čísla c)Dvojkové n-bitové číslo 3. Informační bit, který slouží jako indikátor typu Platí – neplatí se nazývá: a)Příznak b)Návěstí c)Ukazatel zásobníku
Seznam obrázků: Obr. 1: vlastní, Složení procesoru z hlediska systémových registrů Obr. 2: vlastní, Paměť typu LIFO a FIFO - porovnání
Seznam použité literatury: [1] Matoušek, D.: „Číslicová technika“, BEN, Praha, 2001, ISBN [2] Blatný, J., Krištoufek, K., Pokorný, Z., Kolenička, J.: „Číslicové počítače“, SNTL, Praha, 1982 [3] Kesl, J.: „Elektronika III – Číslicová technika“, BEN, Praha, 2003, ISBN X
Děkuji za pozornost