Mikropočítače


9.1. Základní architektura počítače

Z koncepčního hlediska je mikropočítač takové uspořádání logických obvodů umožňující provádění logických i aritmetických operací podle posloupnosti povelů (programu) nad programem určenými vstupními veličinami za účelem získání výstupních hodnot na programem určených výstupech. Architektura většiny dnešních mikropočítačů se zakládá na koncepci stanovené ve 40. letech Johanem von Neumannem, kdy program i data jsou uloženy v jedné operační paměti.

Architektura mikropočítačů se sice v detailech od sebe značně odlišuje, můžeme však u každého vysledovat následující bloky (subsystémy):

Operační paměť
uchovává vstupní a výstupní data a program
(posloupnost povelů - instrukcí) ve formě binárních čísel

Řadič
dekóduje postupně instrukce programu uložené v operační paměti a generuje signály zajišťující činnost ostatních bloků mikropočítače

Aritmeticko-logická
jednotka provádí aritmetické a logické operace podle (ALU) signálů řadiče nad řadičem určenými veličinami. Někdy je doplněna registry pro uložení mezivýsledků operace (RALU)

Vstupní a výstupní jednotka
zabezpečuje komunikaci mikropočítače vnějším (I/0) okolím pomocí přídavných zařízen umožňujících komunikaci s mikropočítačem, např.klávesnice, tiskárna apod.

Blok registr
- aritmeticko-logická jednotka (RALU) spolu s řadičem tvoří tzv. proces-or systému. Je-li obsažen v jednom nebo několika integrovaných obvodech velké integrace označujeme jej jako mikroprocesor ( m P).

../images/kap8a9/7_1.gif

Obr.9.1

Propojení bloků je provedeno pomocí systému sběrnic. Principielní propojení sběrnicemi je uvedeno na obr. 9.1. Adresová sběrnice je jednosměrná, slouží k adresování paměťového místa v operační paměti nebo vstupních a výstupních jednotek. Další datová sběrnice je obvykle obousměrná a slouží k přenosu dat mezi bloky. Třetí sběrnice je řídící, která slouží k přenosu povelů (signálů) z řadiče zajišťujících programem stanovenou činnost jednotlivých bloků. V následujících odstavcích probereme podrobněji principielní zapojení a činnost jednotlivých bloků.

9.2. Operační paměť

V současné době se převážně u mikropočítačových systémů používají polovodičové paměti. Polovodičové paměti můžeme zhruba rozdělit do dvou skupin:

a) Paměti, kde do libovolného místa určeného adresou můžeme buď zapsat data v binární formě nebo v paměti uložená data přečíst. Tyto paměti označujeme obvykle zkratkou RAM, což je zkratka anglického názvu "Random Access Memory".

b) Paměť s neměnným zápisem dat neboli paměti konstant. Z těchto pamětí během činnosti mikropočítače je možno pouze číst binární data. Označujeme je obvykle zkratkou ROM, což je zkratka anglického názvu "Read Only Memory".

Z hlediska závislosti uchování informace na napájecím napětí se u paměti typu RAM informace odpojením napájecího napětí ztrácí, zatím co u pamětí typu ROM zůstane zachována.

9.2.1. Paměti typu ROM

Paměti typu ROM jsou paměti konstant u kterých jsou data trvale uložena. Data jsou v nich uložena buď přímo výrobcem nebo u paměti typu PROM (Programable Read Only Memory) je možné například pomocí tavných spojek podle požadavků uživatele do jednotlivých míst paměti data v binární formě jednou pro vždy zapsat. V současné době existují paměti označované zkráceně EPROM, u kterých je možno speciálním technologickým postupem zapsaná data vymazat a zapsat nová. Rychle se též začínají uplatňovat tzv. EEPROM (E2PROM, Flash), tj. paměti, do nichž lze zapsat i vymazat data elektrickou cestou a přesto zůstanou zachována po vypnutí napájení. Známé aplikace jsou například Flash BIOS u základních desek osobních počítačů, rozšiřující karty do notebooků nahrazující diskovou paměť apod.

Paměti typu ROM jsou obvykle uspořádány v maticovém tvaru s organizací obvykle označovanou jako počet slov (bytů) x počet bitů ve slově. Principielní zapojení je na obr. 9.2. Vstupní slovo dekodéru typu 1/n tvoří adresu, pomocí které se určuje aktivní adresový vodič na kterém je při čtení napěťová úroveň log 1 .Pomocí diod v místě křižování adresových vodičů s bitovými vodiči se úroveň log 1 přenese na bitové vodiče. Kde není v místě křižování vodičů dioda, je na příslušném bitovém vodiči napětí log 0. Na příklad při aktivaci adresového vodiče A je na bitových vodičích paměti uvedené na obr. 9.2 binární slovo (010110101010). Jako příklad programovatelné paměti PROM uvedeme paměť s víceemitorovými bipolárními tranzistory. Je znázorněna na obr. 9.3. Výrobce dodává uživateli paměť, kde výstupní slovo je vytvořeno ze samých logických jedniček. Přetavením tavné spojky pomocí proudového impulsu může uživatel dosáhnout na požadovaném bitu logickou nulu. Na výstupech paměti jsou zesilovače umožňující získat potřebný logický zisk.

../images/kap8a9/7_2.gif

Obr.9.2.

../images/kap8a9/7_3.gif

Obr.9.3.

Příkladem elektricky programovatelné paměti s bipolárními tranzistory je např.typ MH 74 188 s organizací 32x8 bitů.

9.2.2. Paměti typu RAM

Paměti typu RAM jsou paměti, kdy do libovolného místa můžeme buď data v binární formě zapisovat nebo uložená data přečíst. Do paměti RAM můžeme zapisovat program,vstupní data, mezivýsledky apod.

../images/kap8a9/7_4.gif

Obr. 9.4

Příklad blokového schématu paměti typu RAM je na obr. 9.4. Jednotlivé paměťové buňky jsou obvykle uspořádány maticově, např. v organizaci N x M. Buňku, do které chceme provést zápis nebo čtení jejího obsahu, aktivujeme pomocí řádkových a sloupcových adresových vodičů buzených dekodéry 1/N a 1/M. Vstupní slova dekodérů pak tvoří adresu buňky. Vstupy a výstupy paměťových buněk jsou vedeny ke čtecím a zapisovacím zesilovačům. Pro zápis nebo čtení celého slova najednou se musí použít pro každý bit samostatné čtecí a zapisovací zesilovače. Čtení a zápis je řízen logickým obvodem ovládaným povely z řadiče.

Jako paměťová buňka by mohl být použit klopný obvod (sekvenční) typu D .Z důvodů dosažení velké integrace obvodů na jednom polovodičovém čipu se zapojení v buňce zjednodušuje, přičemž se používají jak tranzistory unipolární tak bipolární. Pro paměťové buňky byla vyvinuta celá řada zapojení a pro detailní studium jejich zapojení odkazujeme čtenáře na doplňkovou literaturu. Zde si pouze uvedeme jako příklad zapojení 8tranzistorové paměťové buňky s tranzistory MOS s kanálem P uvedené na obr. 9.5.

Paměťovou buňku tvoří bistabilní klopný obvod tvořený čtyřmi tranzistory. Napěťovou úroveň log 1 pro zapojení na obr. 9.5 předpokládejme (~ +16 V) a pro log 0 (~ 0 V). Předpokládejme, že tranzistor T1 je otevřen a tranzistor T2 zavřen. Pak na kolektoru tranzistoru T1 je napěťová úroveň log 1 (~ +16 V) a na kolektoru tranzistoru T2 je úroveň log 0 (~ 0 V). Tyto napěťové úrovně se přenesou na hradla (řídící elektrody) obou tranzistorů a stav zůstane zachován

pokud na kolektory tranzistorů T1 a T2 se nepřevede zvenčí opačné napětí. Buňka je přes adresovací tranzistory T5 až T8 připojena na datovou sběrnici (D a ../images/kap8a9/image23.gif).

../images/kap8a9/7_5.gif

Obr. 9.5

Adresovací tranzistory aktivujeme ustavením řádkového AN a sloupcového BM na napěťovou úroveň log 0 (~ 0 V). V případě, že adresovací tranzistory jsou otevřeny a na sběrnici D přivedeme úroveň log 0 a na ../images/kap8a9/image24.gif úroveň log 1, klopný obvod se překlopí.

Principielní zapojení čtecího a zapisovacího obvodu pro uvedenou paměťovou buňku je uveden na obr. 9.6.

../images/kap8a9/7_6.gif

Obr.9.6

Čtení se provádí pomocí diferenciálního zesilovače a zápis pomocí dvojice zesilovačů s bipolárními tranzistory, jejichž vstupy jsou ovládány povelem pro zápis (W). Je-li W na úrovni log 1 je vstup otevřen pro zápis dat. V opačném případě je vstup blokován a data uložená v buňce se mohou pomocí diferenciálního zesilovače pouze číst.

Snaha o zvýšení stupně integrace vedla vývojáře ke snaze o snížení počtu tranzistorů nutných k vytvoření jedné buňky a k její adresaci. Podstatného snížení počtu tranzistorů na buňku bylo dosaženo v tak zvaných dynamických pamětech, kde nositelem informace je parazitní kapacita mezi hradlem a emiterem unipolárního tranzistoru. Vlivem svodu se napětí na této kapacitě snižuje a je nutné je vždy po určité době (např. po 2 msec) obnovovat. Je však nutné mít na zřeteli, že rychlost dnešních mikropočítačů je taková, že mohou vykonat řádově desítky až stovky operací mezi dvěma obnovovacími cykly. Příklad paměťové buňky dynamické paměti je uveden na obr. 9.7. Na obr. 9.7 je naznačen jeden sloupec paměti. Nositelem informace je kapacita mezi hradlem a emitorem tranzistoru T1 .Tranzistory T2 a T3 slouží k připojení buňky ke čtecímu a zápisovému datovému vodiči. Postup obnovení informací v buňkách paměti si vysvětlíme pomocí čtecího a zapisovacího obvodu uvedeného rovněž na obr. 9.7. Všechny datové vodiče paměťových buněk ve sloupci jsou propojeny paralelně a připojeny k jednomu obvodu.

../images/kap8a9/7_7.gif

Obr.9.7

Při čtení se nejdříve aktivují datové vodiče přes tranzistory T6 a T7 signálu log 1 na vodič přednastavení. Zároveň se aktivuje řádkový adresový vodič čtení, čímž se otevře tranzistor T2 .Je-li v buňce zapsaná informace (bit) za úrovni log 1 je čtecí datový vodič přes tranzistory T1 a T2 uzemněn a je za něm úroveň log 0. V opačném případě, kdy informace je na úrovni log 0 je na čtecím datovém vodiči úroveň log 1. Informace na čtecím vodiči je tedy negována vzhledem k informaci zapsané v buňce.

Přivedeme-li na vodič obnovení log 1 otevře se tranzistor T5 a informace se přepíše na zápisový datový vodič negovaně, tj. na zápisovém vodiči je informace stejná jako v buňce. Jestliže současně aktivujeme i řádkový zapisovací adresový vodič buňky a otevřeme tranzistor T3, obnovíme informaci zapsanou v buňce. V zapojení uvedeném na obr. 9.6 se současně obnovuje informace zapsaná v buňkách v celé řádce. Je třeba podotknout, že čtení informace je nedestruktivní, tj. že se při čtení informace v buňce zachovává.

Vedle uvedených dynamických pamětí se používají paměti s postupným výběrem, které využívají dynamické posuvné registry. Nositelem informace u dynamického posuvného registru je opět parazitní kapacita mezi hradlem a emiterem unipolárního tranzistoru. Principielní schéma je na obr. 9.8. Posuv informace je řízen zpravidla dvoufázovými hodinovými impulsy Φ1 a, Φ2, které se nepřekrývají. Tzv. statické posuvné registry mají v buňce ještě další tranzistor, který je řízen impulsy Φ3. Tímto způsobem je zajištěna obnova informace i v případě, že neprobíhá posuv.

../images/kap8a9/7_8.gif

Obr.9.8


Další ... Jednočipové počítače