- Stahuj zápisky z přednášek a ostatní studijní materiály
- Zapisuj si jen kvalitní vyučující (obsáhlá databáze referencí)
- Nastav si své předměty a buď stále v obraze
- Zapoj se svojí aktivitou do soutěže o ceny
- Založ si svůj profil, aby tě tví spolužáci mohli najít
- Najdi své přátele podle místa kde bydlíš nebo školy kterou studuješ
- Diskutuj ve skupinách o tématech, které tě zajímají
Studijní materiály
Zjednodušená ukázka:
Stáhnout celý tento materiálstavení mezi registry mívá tzv.
střadač neboli akumulátor. Pomocné registry slouží pro uchování stavových informací procesoru,
různých nastavení a podobně.
Řadič - (controller, control unit) je poměrně složitý blok logických obvodů. Mezi jeho nejdůležitější
bloky patří:
• Registr instrukcí, který uchovává operační kód instrukce po dobu jejího vykonávání.
• Dekodér instrukcí dekóduje operační kód a generuje řídící signály pro ostatní obvody procesoru i
pro vnější okolí (paměti, periferie, …).
• Čítač instrukcí (Program Counter, PC). Ukazuje na adresu v paměti prováděné instrukce resp. její
části (operační kód, operand, …). Jeho hodnota je nastavována signály z dekodéru instrukcí. Při
sekvenčního provádění programu je hodnota v čítači instrukcí postupně inkrementována. V případě
instrukcí větvení programu (skoky, volání podprogramu, návrat z podprogramu) nebo volání či
návratu z přerušení je programový čítač naplněn adresou cíle skoku, adresou začátku podprogramu,
návratovou adresou nebo adresou návratu z podprogramu (obvykle adresa instrukce následující za
instrukcí volání podprogramu). Při obsluze žádosti o přerušení je do programového čítače uložena
adresa začátku přerušovací rutiny obvykle dodaná řadičem přerušení.
Operační paměť počítače - slouží pro uložení kódu (instrukcí), proměnných a konstant jednoho či
více programů.
Periferní systém - nazývaný také vstupně-výstupní jednotky (V/V), je určen pro styk počítače s
vnějším okolím. V/V jednotky mohou být různého druhu podle typu počítače. Typickými V/V
jednotkami personálních počítačů jsou klávesnice, myš, videokarta, pevné disky, CDROM a DVD
mechaniky, síťové karty a zvukové karty. Naopak počítače pro řídící účely obsahují jednotky binárních
vstupů a výstupů, analogových vstupů a výstupů, časovače, jednotky pro zpracování signálů z
inkrementálních čidel, řadiče průmyslových sběrnic (RS485, Ethernet, CAN, Profibus), řadiče jedno
nebo více řádkových displejů.
BMIC – Mikroprocesory -12-
b) Funkce řadiče, obvodový a mikroprogramový řadič
Řadič je složitý sekvenční logický obvod, který řídí činnost všech jednotek počítače. Jeho vstupními
signály jsou tzv. stavové signály, které generují výkonné jednotky (ALU). Výstupem jsou řídící
signály. Řadič lze realizovat jako tzv. obvodový (klasický) nebo mikroprogramový.
Obvodový řadič se navrhuje jako klasický sekvenční logický obvod z vývojových diagramů
popisujících činnost procesoru při provádění instrukcí podle instrukčního cyklu.
Mikroprogramový řadič - je sekvenční logický obvod s kombinační částí realizovanou pamětí
mikroprogramu. Provedení instrukce je rozděleno na dílčí operace - tzv. mikrooperace. Příkazy k
provedení mikrooperací jsou zapisovány pomocí mikroinstrukcí. Mikroinstrukce tvoří mikroprogram,
který je uložen v paměti mikroprogramu. Mikroprogramování lze rozdělit na dva typy:
• Vertikální mikroprogramování. Používají se krátké mikroinstrukce (např. 16 bitů dlouhé)
obdobné instrukcím. Jedna mikroinstrukce je vykonána v několika taktech.
• Horizontální mikroprogramování. Používají se dlouhé mikroinstrukce (64 bitů a více) . V
mikroinstrukci jsou přímo určeny řídící signály, které má řadič generovat. Jedna mikroinstrukce je
vykonána pouze v jednom taktu. U toho
c) Procesory Von Neumanovy, harvardské a modifikované harvardské architektury
• Von Neumanova - paměť pro program a data je společná. Umožňuje modifikaci programu.
Lze volit mezi velkým programem a málo daty nebo mezi malým programem a hodně daty.
1. paměť, data i kód programu
2. paměˇprogramu (pouze instrukce)
3. paměť dat
4. paměť programu a dat
5. PM. data BUS
6. PM. adr. BUS
7. CPU + instruction CACHE
• Harvardská koncepce - paměť je rozdělena na paměť programu a paměť dat. Paměť
programu tak může být umístěna v pamětech ROM, EPROM, EEPROM, FLASH.
• Modifikovaná Harvadrská koncepce - podobná jako normální Harvardská koncepce, navíc
procesor má k dispozici speciální paměť pro program. Díky tomu může načítat instrukce a data
zároveň. Tato varianta se používá především u signálových procesorů, kde nutnost zpracovat
data v reálném čase.
d) Procesory RISC a CISC
• CISC – procerosy s komplexní instrukční sadou, osobní PC, instrukce uloženy v mikrokódu
(program v paměti procesoru), pomalejší než RISC ale jednodušší technologie
• RISC – procesory s redukovanou instrukční sadou, omezený soubor jednoduchých instrukcí,
proudové zpracování instrukcí (pipe-line), jen dvě instrukce load a store vetší množství
vnitřních registrů obvykle 32, většinou pracovní stanice
BMIC – Mikroprocesory -13-
8. Přesahování a řetězení, skokový a datový konflikt. Časová a prostorová lokalita odkazů, hierarchie
paměti.
a) Přesahování a řetězení, skokový a datový konflikt
přesahování (overlapping) – je předchůdcem pipeliningu, vykonávání některých instrukcí začalo
v době, kdy se ještě dokončovala předcházející. Typickým příkladem přesahování je předčítání
instrukcí, kdy se jedna instrukce provádí a zároveň se načítá a dekóduje následující instrukce.
řetězení (pipelining) – přesahování v procesu. Procesor je rozdělen na několik subprocesorů, které
jsou řazeny sériově a ty vykonávají určité instrukce programu typicky: 1. načtení, 2.dekódování, 3.
čtení operandu, 4. operace v ALU, 5. uložení výsledku. Proces se tím zrychlí.
skokový konflikt nastane, jestliže procesor narazí na instrukci větvení (skok, volání podprogramu)
nebo při obsluze přerušení, dojde ke skoku do obslužné rutiny. V okamžiku, kdy se instrukce větvení
začíná provádět, jednotlivé stupně lineárního řetězce obsahují rozpracované instrukce, které byly v
programu umístěny před instrukcí větvení. Tyto instrukce však již nebudou vykonány a musí být z
řetězce odstraněny. Řetězec musí být vyprázdněn a musí být znovu postupně naplněn instrukcemi z
lokality cíle skoku. Dojte tak ke snížení rychlosti průchodu instrukcí lineárním řetězcem
datový konflikt nastane, jestliže několik instrukcí v řetězci za sebou potřebuje pracovat se stejným
operandem. Např. instrukce chce pracovat s obsahem registru, jehož obsah je modifikován některou z
předcházejících instrukcí v lineárním řetězci. Instrukce pak musí počkat na dokončení předchozí
instrukce v řetězci a v registru bude nová hodnota.
b) Časová a prostorová lokalita odkazů, hierarchie paměti.
Časová lokalita (temporal locality) instrukcí: je-li použita nějaká instrukce, dá se očekávat, že tatáž
instrukce bude brzy použita znovu.
Prostorová lokalita (spatial locality) instrukcí: je-li použita nějaká instrukce, dá se očekávat, že brzy
bude použita instrukce uložená na blízké adrese.
Časová lokalita (temporal locality) dat: jsou-li použita nějaká data, dá se očekávat, že tatáž data
budou brzy použita znovu.
Prostorová lokalita (spatial locality) dat: jsou-li použita nějaká data, dá se očekávat, že brzy bude
použita data uložená na blízké adrese.
Princip časové a prostorové lokality odkazů platí pro data v daleko menší míře než pro instrukce.
Na základě zjištění zákonitostí o lokalitě odkazů bylo modifikováno schéma Von Neumannova
počítače doplněním o rychlé vyrovnávací paměti (cache) mezi procesor a hlavní paměť .
Hierarchií paměťového systému rozumíme několika úrovňové uspořádání pamětí různých kapacit a
rychlostí s cílem dosáhnout výhodného poměru výkonnosti a ceny. Cena paměti je přímo úměrná
kapacitě a přibližně nepřímo úměrná době přístupu.
Nejblíže k procesoru jsou jeho vnitřní registry, což je vlastně paměť na nejnižší úrovni. Registry jsou
realizovány klopnými obvody. Další úroveň je tvořena vyrovnávací pamětí (paměť cache). Jedná se o
kapacitně relativně malou (cca jednotky MB), ale rychlou a drahou statickou paměť RAM. Pomocí
paměťové sběrnice je umožněn přístup do třetí paměťové úrovně - hlavní (operační) paměti. V tomto
BMIC – Mikroprocesory -14-
uspořádání se již strojové cykly CPU nesynchronizují s cykly hlavní paměti, ale synchronizují se s
rychlou pamětí cache. Čtvrtá – nejvzdálenější je vnější paměť (disk). Má největší kapacitu (cca stovky
GB až jednotky TB), ale je nejpomalejší. Mezi hlavní a vnější paměť může být též umístěna
vyrovnávací paměť cache.
9. Adresovací módy, adresovací módy mikrokontrolérů řady HCS12, adresovací módy procesorů Intel
s architekturou IA32 (I386).
a) Adresovací módy mikrokontrolérů řady HCS12
P-PREBYTE
O-OPCODE
1. vnitřních registrů „inherent addr. (INH)“ (implicitní adresování) – operandy mohou být pouze
obsahy registrů, obvykle 1Bajtové instrujce (CLI, SEI) P,O
2. 0. řádu „immediate addr. (IMM)“ (bezprostřední adresování s přímým operandem) – P,O,Operand
3. 1. řádu
• přímé rozšířené „extendet adr.“ (EXT) P,O,Adresa
• přímé zkrácené „direct adr.“ (DIR) - umožňuje pouze prvních 256B, rychlejší P,O,Nižší byte
adresy
4. indexové „index adr.“ (INX), (INY) – obsahu indexového registru a offsetu, který je součástí
instrukce, pouze 8b, struktura typu pole P,O,Offset
5. relativní „relative adr.“ – pro konstrukce větvení podmíněné nebo nepodmíněné, programový čítač
– báze, hodnota (posun)- offset P,O,rel. adresa
b) Adresovací módy procesorů Intel s architekturou IA32 (I386)
Bezprostřední adresování (Immediate Addressing). Operand je uložen přímo v instrukci jako
konstanta.
Příklad: Instrukce MOV AL, 50 naplní registr AL číslem 50.
Přímé adresování (Direct Addressing). Efektivní adresa operandu je dána přímou adresou
(Displacement), jež je součástí instrukce.
Příklad: MOV AL, Adresa , kde Adresa je symbolicky zapsaná přímá adresa bytu, jehož obsah se uloží
do AL.
Nepřímé adresování (Indirect Addressing). Efektivní adresa je dána obsahem některého z registrů pro
všeobecné použití.
Příklad: MOV RAX, [R8]. Efektivní adresa operandu je uložena v 64 bitovém registru R8.
Bázová adresa. Efektivní adresa se získá sečtením přímé adresy umístěné v instrukci a jednoho z
bázových registrů (viz. tabulka):
Efektivní adresa = přímá adresa + báze.
Příklad: MOV AL, Adresa [EBP].
Indexové adresování. Efektivní adresa se získá sečtením přímé adresy umístěné v instrukci a jednoho
z indexových registrů (viz. tabulka):
Efektivní adresa = přímá adresa + (index * měřítko).
Příklad: MOV AL, Adresa [ESI*4].
BMIC – Mikroprocesory -15-
Adresace 16 bitová 32 bitová
Bázové registry BX, BP EAX, EBX, ECX, EDX, EBP, ESP, ESI, EDI
Indexové registry SI, DI EAX, EBX, ECX, EDX, EBP, ESI, EDI
Měřítko Žádné 1, 2, 4, 8
Bázovým registrem může být kterýkoli z všeobecných registrů (General Purpose Registers).
Indexovým registrem může být kterýkoli z všeobecných registrů kromě ESP.
Kombinace báze a indexu. Efektivní adresa je získána součtem hodnoty uložené v bázovém registrů a
hodnoty uložené v indexovém registru:
Efektivní adresa = báze + (index * měřítko).
Příklad: MOV AL, [EBX] [EDI*8].
Kombinace přímé adresy, báze a indexu. Efektivní adresa je dána součtem obsahu bázového
registru, indexového registru a přímé adresy (displacement):
Efektivní adresa = přímá adresa + báze + (index * měřítko).
Příklad: MOV AL, Adresa[EBP] [ESI*2].
Implicitní segmentový registr je vybrán podle použitého bázového registru:
• DS se použije ve spojení s EAX, EBX, ECX, EDS, ESI a EDI.
• SS se použije ve spojení s EBP, ESP.
10. Rozdíl mezi mikroprocesorem, mikrokontrolérem a signálovým procesorem. Programátorský model
mikrokontrolérů Motorola HCS12, periferie na čipu (porty, SPI, SCI, AD převodník, časovací
subsystém). Funkce input capture a output compare u časovacího subsystému HCS12 – princip, použití.
a) Rozdíl mezi mikroprocesorem, mikrokontrolérem a signálovým procesorem
Mikrorocesor - je malá elektronická součást skládající se z velkého množství (řádově milióny)
polovodičových součástí. Jeho rychlost zpracování je dána jednak frekvencí, tj. počtem operací za
jednotku času, a jednak relativně malým rozměrem na množství součástí, z čehož vyplývají krátké
vzdálenosti mezi výkonnými prvky a tím velmi rychlé předávání dat. Procesor je propojen s ostatními
části počítače sběrnicemi - rychlými datovými kanály. Procesor obsahuje několik výkonných
jednotek, specializovaných zejména na matematické operace různých tříd a na operace logické.
Mikrokontrolér – jde o mikroprocesor umístěný na jednom čipu společně s operační pamětí a
perifériemi. Obsahuje přídavné bloky, které jsou potřeba v průmyslu např. Větší počet
vstupů/výstupů, čítače a časovače, obvod seriové linky, A/D a D/A převodníky, hlídání výpadků
(watchdogy), generátor ší řkové modulace). často jednoúčelový
Signálový procesor – je speciální mikroprocesor, který slouží ke zpracování signálů v reálném čase.
Používají se DMA kanály, nepotřebují velkou paměť jako PC
BMIC – Mikroprocesory -16-
b) Programátorský model mikrokontrolérů Motorola HCS12, periferie na čipu (porty, SPI, SCI,
AD převodník, časovací subsystém)
Programátorský model mikrokontrolérů řady HCS12 je totožný s přecházejícími řadami HC12 i
HC11. Pouze stránkovací registr K se u typických zástupců řady HC11 nevyskytoval. Mikrokontoléry
řady HCS12 jsou typickými akumulátorově orientovanými procesory. Mají dva 8 bitové akumulátory
označené A, B. S touto dvojicí 8 bitových akumulátorů lze také pracovat jako s jedním 16 bitový
akumulátorem D. Pro indexové adresování slouží dva 16 bitové indexové registry IX a IY. Procesor
má dále 16 bitový programový čítač PC a ukazatel zásobníku SP. Pro práci paměťovým prostorem
větším než 64 KB je použit 5 bitový stránkovací registr K, který určuje číslo 16 KB stránky, jež bude
mapována do paměťové oblasti $8000 až $BFFF.
Význam jednotlivých bitů příznakového registru CCR je následující:
C (Carry) - bit se nastavuje na jedničku, jestliže došlo k přetečení nebo výpůjčce.
V (Overflow) - překročení rozsahu druhého doplňku.
Z (Zero) – příznak nulového výsledku. Nastavuje se na hodnotu 1, jsou-li všechny bity výsledku
nulové.
N (Negative) – příznak záporného výsledku operace v druhém doplňku.
I (Interrupt) – Pomocí bitu I se povoluje nebo zakazuje maskovatelné přerušení. Při I= 1 je přerušení
zakázáno, při I=0 je přerušení povoleno. Bit je ovládán instrukcemi CLI a SEI. CLI nuluje bit I a tím
povoluje přerušení, zatímco SEI nastavuje bit I a přerušení zakazuje.
H (Half Carry) – Je nastaven na 1, dojde-li k přenosu ze 3. do 4. bitu. Používá se pouze pro práci v
desítkové soustavě. Na základě vyhodnocení bitu I se provádí tzv. dekadická korekce.
X – povolení pseudomaskovatelného přerušení. Bit X lze nastavit na 0 pouze jednou. Tím se
odmaskuje pseudomaskovatelné přerušení. Bit X se opět nastaví na 1 až po resetu.
S - povolení přechodu do STOP módu pomocí instrukce STOP.
Porty
Jednotka PIM zahrnuje porty T, S, M, P, H, J. Nezahrnuje porty A, B, E, K, jež jsou součástí jádra
procesoru (používají se v rozšířených módech pro připojení vnějších pamětí).
S každým portem PIM je spojena sada řídících registrů, která umožňuje každý jednotlivý vývod
nastavit jako:
BMIC – Mikroprocesory -17-
• Buď binární vstup nebo výstup.
• Omezit výstupní proud dodávaný do zátěže. Používá se hlavně u bateriových zařízení, aby se
šetřily baterie.
• Povolit připojení vnitřních rezistorů ke vstupním vývodům. Lze také nastavit, zda rezistor
bude druhým koncem spojen s nulou napájecího napětí (pull-down) nebo s kladným pólem
napájecího napětí (pull-up).
• U portů konfigurovaných jako vstupní lze nastavit vyvolání přerušení při změně úrovně
signálu (hraně).
• Vývodů portu S a M lze též nastavit jako výstupy s otevřeným kolektorem nebo pro montážní
součin (wire-or).
SCI – sériový port, asynchronní – při přenosu neexistuje hodinový signál, full duplex, přijímač a
vysílač stejná přenosová rychlost, obsahuje posuvné registry, data přenášena ve formátu NRZ (bez
návratu k nule) 8 nebo 9 bitů
SPI – sériový periférní port,
master_jedno zařízení řídící
slave_ostatní
vodiče synchronizační – vytahování bitů z posuvného registru
výhoda: můžou běžet na vyšších frekvencích než SCI, ale potřebujeme další signál pro hodiny
použití: multiprocesorová komunikace obou převodníků, kodeky, atd.
A/D převodník
Blok obsahuje jeden 10 bitový A/D převodník pracující na principu převodu s postupnou aproximací
metodou vyrovnávání náboje. Lze též nastavit 8 bitovou přesnost převodu. Při 10 bitové přesnosti
můžeme dosáhnout doby jednoho převodu 7 µs.
Blok má 8 analogových vstupních kanálů, které jsou na vstup vlastního A/D převodníku připojeny přes
analogový multiplexor. Na výstupu analogového multiplexeru je vzorkovací obvod.
Pro dosažení požadované přesnosti, při vysoké rychlosti vzorkování je nabíjení kondensátoru
vzorkovacího obvodu rozděleno do dvou částí. V první části je kondensátor připojen ke vstupu přes
zesilovač se zesílením přibližně 1. Zesilovač má malý výstupní odpor a tudíž je schopen kondensátor
rychle nabít na přibližnou hodnotu vstupního signálu. Ve druhé fázi je kondensátor připojen ke vstupu
přímo bez zesilovače. Tím dojde k dobití kondensátoru na přesnou hodnotu.
Po spuštění vykoná blok A/D převodníku sekvenci převodů. Po ukončení sekvence je nastaven
příznakový bit SCF v registru ATDSTAT0 a je-li povoleno, vyvolá se přerušení. Každý dílčí převod
na 1 kanálu nastavuje také svůj individuální příznakový bit.
Počet převodů v sekvenci lze nastavit od 1 do 8. Převodník může pracovat v jednokanálovém nebo
vícekanálovém režimu - určuje bit MULT v registru ATDCTL5. V jednokanálovém režimu se všechny
převody v sekvenci provedou postupně na stejném kanále (stejném vstupu).
Převodník může pracovat v jednorázovém nebo kontinuálním režimu – určuje bit SCAN v registru
ATDCTL5. V jednorázovém režimu se po dokončení sekvence převodů převodník zastaví a novou
sekvenci je třeba opět spustit zápisem do registru v registru ATDCTL5. V kontinuální režimu se po
dokončení jedné sekvence okamžitě automaticky spustí nová sekvence.
BMIC – Mikroprocesory -18-
Výsledky převodů mohou být do výsledkových registrů ukládány buď jako čísla se znaménkem nebo
jako čísla bez znaménka. Pro čísla bez znaménka lze zvolit zarovnání doprava nebo doleva. Čísla se
znaménkem jsou representována pomocí 2. doplňku a mohou být ukládána pouze se zarovnáním
doleva.
Modul časovačů
obsahuje předdělič, 16-ti bitový volně běžící čítač, 8 16-ti bitových registrů, které mohou být nezávisle
konfigurovány buď pro funkci Input capture nebo Output compare. Dále obsahuje dva 16-ti bitové
pulsní akumulátory.
Základem časovacího systému je 16-ti bitov
Vloženo: 11.06.2009
Velikost: 701,41 kB
Komentáře
Tento materiál neobsahuje žádné komentáře.
Mohlo by tě zajímat:
Skupina předmětu BMIC - Mikroprocesory
Reference vyučujících předmětu BMIC - Mikroprocesory
Podobné materiály
- BRPV - Rádiové přijímače a vysílače - vypracovane okruhy ke zkousce
- BVEL - Výkonová elektronika - okruhy otazek
- BEL1 - Elektrotechnika 1 - Okruhy témat ke zkoušce 05
- BFY1 - Fyzika 1 - Okruhy na semestrálku
- BMVE - Měření v elektrotechnice - Okruhy otázek ke zkoušce 08
- BFY2 - Fyzika 2 - Tahák z vypracovaných otázek
- BSHE - Studiová a hudební elektronika - přehled otázek1
- BSHE - Studiová a hudební elektronika - přehled otázek2
- BEL2 - Elektrotechnika 2 - souhrnotazek1
- BEL2 - Elektrotechnika 2 - souhrnotazek
- BEL2 - Elektrotechnika 2 - souhrotazek3
- BEL2 - Elektrotechnika 2 - souhrnotazek4
- BEL2 - Elektrotechnika 2 - souhrnotazek5
- BEL2 - Elektrotechnika 2 - souhrnotazek6
- BVNP - Vysoké napětí a elektrické přístroje - Zadání otázek k půlsemstrálce
- BESO - Elektronické součástky - AKTUALNÍ SEZNAM OTÁZEK PRO ROK 2010
- BMVA - Měření v elektrotechnice - BMVA - soupiska testových otázek
- BPSM - Plošné spoje a povrchová montáž - Vypracovani otazek 2012
- BVEL - Výkonová elektronika - Vypracovani otazek 2012
- XAN4 - bakalářská angličtina 4 - Zápočtový test - 280 otázek
Copyright 2025 unium.cz


