Architektura mikroprocesorů: hlavní typy, vývoj, výhody a nevýhody. Mikrokontroléry, funkčnost a architektonická řešení. Nevýhoda Princetonské architektury

Anotace: Účel přednášky: seznámení s architekturou mikroprocesorů, charakteristickými rysy mikroprocesorů různých typů architektur, fázemi vývoje architektury univerzálních mikroprocesorů, jakož i hlavními rysy architektury IA-32.

Základní pojmy a charakteristiky architektury mikroprocesorů

Mikroprocesor(MP) je softwarově řízené zařízení, které je určeno ke zpracování digitální informace a řízení procesu tohoto zpracování a je proveden ve formě jednoho nebo několika velkých integrované obvody(BIS).

Pojem velký integrovaný obvod v současné době není jasně definován. Dříve se věřilo, že tato třída by měla zahrnovat mikroobvody obsahující více než 1000 prvků na čipu. První mikroprocesory skutečně těmto parametrům vyhovují. Například 4bitová procesorová část mikroprocesorové sady K584, vyrobené na konci 70. let, obsahovala asi 1500 prvků. Nyní, kdy mikroprocesory obsahují desítky milionů tranzistorů a jejich počet neustále roste, pod LSI rozumíme funkčně komplexní integrovaný obvod.

Mikroprocesorový systém(MPS) je funkčně kompletní produkt skládající se z jednoho nebo více zařízení, jehož základem je mikroprocesor.

Mikroprocesor se vyznačuje velkým množstvím parametrů a vlastností, protože je to na jedné straně funkčně složité výpočetní zařízení a na druhé straně elektronické zařízení, produkt elektronického průmyslu. Jako prostředek výpočetní techniky se vyznačuje především svým architektura, tedy soubor vlastností softwaru a hardwaru poskytovaných uživateli. Patří sem instrukční systém, typy a formáty zpracovávaných dat, režimy adresování, počet a rozložení registrů, principy interakce s RAM a externími zařízeními (charakteristiky systému přerušení, přímý přístup do paměti atd.). Podle architektury se mikroprocesory dělí na několik typů (obr. 1.1).

Univerzální mikroprocesory jsou určeny k řešení problémů digitálního zpracování různých typů informací od inženýrských výpočtů až po práci s databázemi, nejsou vázány přísnými omezeními na dobu dokončení úkolu. Tato třída mikroprocesorů je nejznámější. Zahrnuje tak známé mikroprocesory, jako je řada Pentium MP od Intelu a MP rodiny Athlon od AMD.


Rýže. 1.1.

Charakteristika univerzálních mikroprocesorů:

  • bitová hloubka: je určena maximální bitovou kapacitou celočíselných dat zpracovaných v 1 hodinovém cyklu, to je ve skutečnosti bitová kapacita aritmeticko logická jednotka(ALU);
  • typy a formáty zpracovávaných dat;
  • příkazový systém, režimy adresování operandů;
  • kapacita přímo adresovatelné RAM: určena bitovou šířkou adresové sběrnice;
  • externí hodinová frekvence. U synchronizačního kmitočtu se obvykle uvádí jeho maximální možná hodnota, při které je zaručen provoz obvodu. U funkčně složitých obvodů, které obsahují mikroprocesory, se někdy uvádí i minimální možná synchronizační frekvence. Snížení frekvence pod tento limit může vést k poruše obvodu. Zároveň v těch MP aplikacích, kde není vyžadován vysoký výkon, je snížení synchronizační frekvence jednou z oblastí úspory energie. V řadě moderních mikroprocesorů se při snižování frekvence mění v< спящий режим >, ve kterém si zachovává svůj stav. Taktovací frekvence v rámci stejné architektury umožňuje porovnat výkon mikroprocesorů. Ale různá architektonická rozhodnutí ovlivňují výkon mnohem více než frekvenci;
  • výkon: určuje se pomocí speciálních testů a sada testů je vybrána tak, aby pokud možno pokrývala různé charakteristiky mikroarchitektury procesoru, které ovlivňují výkon.

Univerzální mikroprocesory se obvykle dělí na CISC- A RISC mikroprocesory. mikroprocesory CISC(Completed Instruction Set Computing - výpočty s kompletním systémem instrukcí) zahrnují celou klasickou sadu instrukcí s široce vyvinutými režimy adresování operandů. Právě do této třídy patří například mikroprocesory typu Pentium. Ve stejnou dobu RISC mikroprocesory(redukovaný instrukční set computing - výpočty s redukovaným instrukčním systémem) využívají, jak vyplývá z definice, redukovaný počet příkazů a režimů adresování. Zde bychom měli především vyzdvihnout mikroprocesory jako Alpha 21x64, Power PC. Počet instrukcí v instrukční sadě je nejzřetelnější, ale dnes to není ten nejdůležitější rozdíl v těchto směrech vývoje univerzálních mikroprocesorů. Při studiu vlastností jejich architektury zvážíme další rozdíly.

Jednočipové mikrokontroléry(OMK nebo jednoduše MK) jsou určeny pro použití v průmyslových a domácích automatizačních systémech. Jsou to velké integrované obvody, které zahrnují všechna zařízení nezbytná k implementaci minimálně konfigurovaného digitálního řídicího systému: procesor (obvykle celočíselný), paměť příkazů, datovou paměť, generátor hodin, programovatelná zařízení pro komunikaci s vnějším prostředím ( řadič přerušení, časovače-čítače, různé vstupní/výstupní porty), někdy analogově-digitální a digitálně-analogové převodníky atd. V některých zdrojích se tato třída mikroprocesorů nazývá jednočipové mikropočítače (SMC).

V současné době jsou dvě třetiny všech mikroprocesorových LSI vyrobených na světě MP této třídy a téměř dvě třetiny z nich mají bitovou kapacitu nepřesahující 16 bitů. Do třídy jednočipových mikrokontroléry V prvé řadě se jedná o mikroprocesory řady MCS-51 od Intelu a podobné mikroprocesory jiných výrobců, jejichž architektura se stala de facto standardem.

Charakteristické rysy architektury jednočipových mikrokontrolérů:

  • fyzické a logické oddělení paměti instrukcí a paměti dat (architektura Harvard), zatímco v klasické architektuře Neumann jsou programy a data sdíleny úložné zařízení a mají stejný přístupový mechanismus;
  • zjednodušený a úkolově orientovaný příkazový systém: MK zpravidla nemá nástroje pro zpracování dat s pohyblivou řádovou čárkou, ale zároveň příkazový systém obsahuje příkazy zaměřené na efektivní práci se senzory a akčními členy, např. příkazy pro zpracování bitových informací;
  • nejjednodušší režimy adresování operandů.

Hlavní vlastnosti mikrokontrolérů(jako příklad jsou uvedeny číselné hodnoty pro MK-51):

  1. Bitová velikost (8 bitů).
  2. Kapacita vnitřní paměti příkazů a paměti dat, možnosti a limity jejich rozšíření:
    • vnitřní paměť příkazů - 4 KB (průměrně je příkaz dlouhý 2 byty, takže do vnitřní paměti lze uložit program o délce cca 2000 příkazů); rozšiřitelné připojením externí paměti až na 64 KB;
    • datová paměť na čipu 128 bajtů (lze připojit externí paměť s celkovou kapacitou až 64 KB).
  3. Frekvence hodin:
    • externí frekvence 12 MHz;
    • frekvence strojního cyklu 1 MHz.
  4. Možnosti interakce s externími zařízeními: množství a účel I/O porty, charakteristika systému přerušení, softwarová podpora interakce s externími zařízeními.

Dostupnost a vlastnosti vestavby analogově-digitální převodníky(ADC) a digitálně-analogové převodníky (DAC) pro zjednodušení koordinace se senzory a akčními členy řídicího systému.

Dělené mikroprocesory(jiné názvy: mikroprogramovatelné a bitově modulární) jsou mikroprocesory určené pro stavbu specializovaných procesorů. Jsou to mikroprocesorové sekce o relativně malé kapacitě (od 2 do 16) s uživatelským přístupem do úrovně řízení mikroprogramu a prostředky pro kombinování několika sekcí.

Tato organizace umožňuje navrhnout procesor požadované kapacity a se specializovaným instrukčním systémem. Vzhledem k jejich nízké bitové kapacitě mohou být sekce mikroprocesorů sestaveny pomocí vysokorychlostních technologií. Kombinace všech těchto faktorů umožňuje vytvořit procesor, který je nejlépe orientován na danou třídu algoritmů, a to jak z hlediska instrukčního systému a režimů adresování, tak i datových formátů.

Jednou z prvních sad dělených mikroprocesorů byly MP LSI rodiny Intel 3000 U nás se vyráběly v rámci řad K589 a 585. Zpracovací prvky Tato řada byla dvoubitový mikroprocesor. Nejběžnější sadou dělených mikroprocesorů je Am2900, který je založen na 4bitových sekcích. U nás byla obdoba této stavebnice vyráběna v rámci řady K1804. Sada obsahovala následující BIS:

  • bit sekční ALU;
  • zrychlený přenosový blok;
  • bitová sekční ALU s hardwarovou podporou násobení;
  • typ mikroprogramových řídicích obvodů;
  • regulátor stavu a řazení;
  • prioritní řadič přerušení.

Hlavní nevýhodou mikroprocesorových systémů založených na dělených mikroprocesorových LSI je složitost navrhování, ladění a programování systémů na nich založených. Použití specializovaného příkazového systému vedlo k nekompatibilitě vyvíjeného softwaru pro různé mikroprocesory. Schopnost vytvořit specializovaný procesor, který je v mnoha ohledech optimální, vyžadovala práci kvalifikovaných vývojářů po dlouhou dobu. Rychlý rozvoj elektronických technologií však vedl k tomu, že při návrhu specializovaného procesoru byl vyvinut univerzální mikroprocesor, jehož možnosti pokryly hypotetický zisk z návrhu specializovaného zařízení. To vedlo k tomu, že v současnosti se tato třída mikroprocesorových LSI prakticky nepoužívá.

Digitální signálové procesory nebo digitální signálové procesory, jsou rychle se rozvíjející třídou mikroprocesorů určených k řešení digitálních problémů. zpracování signálu- zpracování zvukových signálů, obrázků, rozpoznávání vzorů atd. Zahrnují mnoho funkcí jednočipových mikrokontrolérů: Harvardská architektura, vestavěná příkazová a datová paměť, pokročilé možnosti pro práci s externími zařízeními. Zároveň obsahují vlastnosti univerzálních MP, zejména s architekturou RISC: pipeline organizace práce, software a hardware pro provádění operací s s plovoucí desetinnou čárkou,hardwarová podpora pro složité specializované výpočty, zejména násobení.

Jako elektronický produkt Mikroprocesor se vyznačuje řadou parametrů, z nichž nejdůležitější jsou následující:

  1. Požadavky na synchronizaci: maximální frekvence, stabilita.
  2. Počet a jmenovité hodnoty napájecích zdrojů, požadavky na jejich stabilitu. V současné době je tendence snižovat napájecí napětí, což snižuje odvod tepla obvodu a vede ke zvýšení frekvence jeho provozu. Jestliže první mikroprocesory pracovaly s napájecím napětím +-15V, nyní jednotlivé obvody využívají zdroje menší než 1V.
  3. Ztráta výkonu- jedná se o ztrátový výkon v koncovém stupni obvodu, který se mění v teplo a ohřívá výstupní tranzistory. Jinými slovy, charakterizuje rychlost uvolňování tepla LSI, která do značné míry určuje požadavky na design mikroprocesorový systém. Tato vlastnost je zvláště důležitá pro embedded MPS.
  4. Úrovně signálu logické nuly a logické jedničky, které jsou spojeny s jmenovitými hodnotami napájecích zdrojů.
  5. Typ pouzdra - umožňuje vyhodnotit vhodnost obvodu pro provoz v určitých podmínkách a také možnost použití nového LSI jako náhrady za stávající na desce.
  6. Okolní teplota, při které může obvod fungovat. Jsou zde dva rozsahy:
    • komerční (0 0 C ... +70 0 C);
    • prodloužená (-40 0 C ... +85 0 C).
  7. Imunita proti hluku- určuje schopnost obvodu plnit své funkce za přítomnosti rušení. Odolnost proti hluku se posuzuje podle intenzity rušení, při které narušení funkcí zařízení ještě nepřekračuje povolené limity. Čím silnější je rušení, při kterém zařízení zůstává v provozu, tím vyšší je jeho odolnost vůči rušení.
  8. Nosnost, neboli činitel výstupního větvení, je určen počtem obvodů stejné řady, jejichž vstupy lze připojit k výstupu daného obvodu, aniž by došlo k narušení jeho činnosti. Čím vyšší je zatížitelnost, tím širší jsou logické možnosti obvodu a tím méně takových mikroobvodů je potřeba k sestavení složitého výpočetního zařízení. Jak se však tento koeficient zvyšuje, odolnost proti hluku a výkon se zhoršují.
  9. Spolehlivost je schopnost obvodu udržet si úroveň kvality výkonu za specifikovaných podmínek po stanovenou dobu. Obvykle charakterizováno poruchovost(hodina-1) nebo střední doba mezi poruchami (hodina). V současné době tento parametr pro velké integrované obvody většinou výrobce neuvádí. Spolehlivost MP LSI může být posuzována podle nepřímých ukazatelů, například podle spolehlivosti produktu jako celku uváděného vývojáři počítačových technologií.
  10. Charakteristiky procesu. Hlavním ukazatelem je zde rozlišení procesu. Aktuálně je to 32 nm, tedy asi 30 tisíc čar na 1 mm. Pokročilejší technologický proces umožňuje vytvořit mikroprocesor s větší funkčností.


Rýže. 1.2.

Náklady na výrobu zařízení využívajících mikroprocesorové LSI jsou uvedeny na Obr. 1.2. Zde:

  1. náklady na výrobu LSI (čím větší stupeň integrace prvků na čipu, tím dražší je výroba obvodu);
  2. náklady na montáž a nastavení mikroprocesorový systém(se zvýšením funkčnosti MP bude k vytvoření MPS zapotřebí méně obvodů);
  3. celkové náklady mikroprocesorový systém, který se skládá z nákladů (1) a (2). Má určitou optimální hodnotu pro danou úroveň technologického rozvoje;
  4. přechod na novou technologii (optimální bude jiný počet prvků na čipu a sníží se celkové náklady na produkt).

V roce 1965 Gordon Moore formuloval hypotézu nyní známou jako<закон Мура>, podle kterého každých 1,5-2 let počet tranzistorů na jeden integrovaný obvod se zdvojnásobí. To je zajištěno neustálým zlepšováním technologických postupů výroby mikroobvodů.

Technologicky nejvyspělejší společnost Intel rozlišuje šest fází životního cyklu polovodičových technologií vytvořených a používaných v korporaci.

Nejranější fáze se odehrává mimo Intel – v univerzitních laboratořích a nezávislých výzkumných centrech, kde se hledají nové fyzikální principy a metody, které se mohou stát základem vědeckých a technologických základů pro nadcházející roky. Společnost financuje tento výzkum.

Ve druhé fázi výzkumní pracovníci společnosti Intel vybírají nejslibnější oblasti pro vývoj nových technologií. V tomto případě se obvykle zvažují 2-3 možnosti řešení.

Hlavním úkolem třetí etapy je kompletní hrubý vývoj nové technologie a demonstrace její proveditelnosti.

Poté začíná čtvrtá etapa, jejímž hlavním cílem je zajistit dosažení stanovených hodnot takových klíčových technických a ekonomických ukazatelů, jako je výtěžnost vhodných produktů, spolehlivost, cena a některé další. Dokončení etapy je potvrzeno uvedením první průmyslové šarže nových produktů.

Pátou etapou je průmyslový vývoj nových technologií. Tento problém není o nic méně složitý než vývoj samotné technologie, protože je extrémně obtížné přesně reprodukovat v reálných výrobních podmínkách to, co bylo získáno v laboratoři. Obvykle zde dochází ke zpožděním s načasováním uvedení nových produktů na trh, s dosažením plánovaných objemů dodávek a výrobních nákladů.

Poslední, šestou fází životního cyklu technologie (před opuštěním jejího používání) je vyspělost. Vyspělá technologie, která prochází určitými vylepšeními za účelem zvýšení produktivity zařízení a snížení výrobních nákladů, zajišťuje hlavní objemy výroby. Jak jsou zaváděny nové, pokročilejší technologie<старые>výroby se likvidují.

Ale ne hned: nejprve jsou převedeny na výrobu mikroobvodů s nižší rychlostí nebo s menším počtem tranzistorů, například periferních LSI.

Základní struktura mikroprocesorového systému má tvar

Úkol správy systému je přidělen CPU(CPU), ke kterému je připojen paměť A vstupní/výstupní systém prostřednictvím paměti a I/O kanálů. CPU čte instrukce z paměti, které tvoří program, a dekóduje je. V souladu s výsledkem dekódovacích instrukcí vyzvedává data z paměti a vstupních portů, zpracovává je a posílá zpět do paměti nebo na výstupní porty. K dispozici je také možnost I/O dat z paměti na externí zařízení a naopak, obcházení CPU. Tento mechanismus se nazývá přímý přístup do paměti(PDP). Každá součást mikroprocesorového systému má poměrně složitou vnitřní strukturu.

Z uživatelského hlediska je při výběru mikroprocesoru vhodné mít nějakou zobecněnou ucelenou charakteristiku schopností mikroprocesoru. Vývojář potřebuje rozumět a rozumět pouze těm součástem mikroprocesoru, které se jasně odrážejí v programech a musí být brány v úvahu při vývoji obvodů a programů pro fungování systému. Tyto vlastnosti jsou definovány konceptem architektury mikroprocesoru.

Architektura mikroprocesoru- toto je jeho logická organizace, zvažovaná z pohledu uživatele; určuje schopnosti mikroprocesoru pro hardwarovou a softwarovou implementaci funkcí nezbytných pro stavbu mikroprocesorového systému. Koncept architektury mikroprocesoru odráží:

Jeho struktura, tzn. sada komponent tvořících mikroprocesor a spojení mezi nimi; pro uživatele se stačí omezit na registrový model mikroprocesoru;

Způsoby prezentace a formáty dat;

Způsoby přístupu ke všem programově přístupným prvkům struktury (adresovací registry, permanentní a RAM buňky, externí zařízení);

Sada operací prováděných mikroprocesorem;

Charakteristika řídicích slov a signálů generovaných mikroprocesorem a dodávaných do něj zvenčí;

Reakce na vnější signály (systém zpracování přerušení atd.).

Na základě způsobu organizace paměťového prostoru mikroprocesorového systému se rozlišují dva hlavní typy architektur.

Organizace, která používá stejný paměťový prostor k ukládání programů a dat, se nazývá von Neumannova architektura(pojmenovaný po matematikovi, který navrhl kódovací programy ve formátu odpovídajícím formátu dat). Programy a data jsou uloženy v jediném prostoru a není zde žádný údaj o typu informace v paměťové buňce. Výhodou této architektury je jednodušší vnitřní struktura mikroprocesoru a menší počet řídicích signálů.

Organizace, ve které jsou programová paměť CSEG (Code Segment) a datová paměť DSEG (Data Segment) oddělené a mají své vlastní adresové prostory a způsoby, jak k nim přistupovat, se nazývá Harvardská architektura(pojmenovaný po laboratoři Harvardské univerzity, která jej navrhla). Tato architektura je složitější a vyžaduje další řídicí signály. Umožňuje však flexibilnější manipulaci s informacemi, implementaci kompaktně kódované sady strojových instrukcí a v některých případech i zrychlení činnosti mikroprocesoru. Zástupci této architektury jsou mikrokontroléry rodiny MCS-51 od Intelu.

V současné době se vyrábí mikroprocesory se smíšenou architekturou, ve kterých mají CSEG a DSEG jeden adresní prostor, ale různé mechanismy pro přístup k nim. Konkrétním příkladem je rodina mikroprocesorů 80x86 od Intelu.

Na fyzické úrovni mikroprocesor interaguje s pamětí a vstupním/výstupním systémem prostřednictvím jediné sady systémových sběrnic - vnitrosystémová páteř. Obecně se skládá z:

Datová sběrnice DB (Data Bus), prostřednictvím které dochází k výměně dat mezi CPU, pamětí a výbušným systémem;

Adresová sběrnice AB (Address Bus), používaná pro přenos adres paměťových buněk a BB portů, ke kterým se přistupuje;

Řídicí sběrnice CB (Control Bus), kterou jsou přenášeny řídicí signály, realizující cykly výměny informací a řízení provozu systému.

Stejná sada sběrnic se používá k organizaci kanálu DMA. Tento typ dálnice se nazývá demultiplex nebo třísběrnicový s oddělenými adresovými a datovými sběrnicemi.

V některých mikroprocesorech, aby se zmenšila šířka fyzické dálnice, zavádějí kombinovaná adresa-datová sběrnice AD (Address/Data Bus), přes kterou se přenášejí adresy i data. Fáze vysílání adresové informace je časově oddělena od fáze přenosu dat a je hradlována speciálním signálem ALE (Address Latch Enable), který je součástí CB. Tato dálnice se obvykle nazývá multiplex nebo dual-bus s kombinovanými adresovými a datovými sběrnicemi.

Fyzická výměna dat přes páteř se provádí ve slovech nebo bytech ve formě po sobě jdoucích kanálových volání. Během jednoho cyklu přístupu na dálnici mezi CPU, pamětí a systémem IW se přenese jedno slovo nebo byte. Existuje několik typických výměnných cyklů. Mezi nimi čtení paměti A záznam do paměti.

Cyklus čtení paměti přes demultiplexní dálnici.

Cyklus zápisu do paměti přes demultiplexní dálnici.

Cyklus čtení z paměti přes multiplexní sběrnici.

Cyklus zápisu do paměti přes multiplexní sběrnici.

Když je výbušný prostor izolován, přidávají se cykly čtecí port BB A Záznamy BB portu.

Cyklus čtení BB portu přes demultiplexní páteř

Cyklus záznamu do BB portu přes demultiplexní dálnici.

V případě architektury typu Harvard, kdy je oddělena programová a datová paměť, je také zaveden cyklus čtení paměti programu.

Cyklus pro čtení programové paměti přes demultiplexní dálnici.

V některých případech, když zařízení fungují na dálnici, jejichž rychlost je nižší než rychlost CPU, doba trvání RD, WR stroboskopů atd. může být nedostatečná pro správné provedení operace výměny na straně periferního modulu. Poté, aby bylo zajištěno spolehlivé dokončení páteřní operace, je do CB zaveden speciální signál READY. V každém cyklu přístupu ke kanálu, před koncem RD nebo WR stroboskopu, CPU kontroluje stav signálu READY. Pokud do tohoto okamžiku ještě nebylo resetováno, pak CPU prodlouží odpovídající stroboskop vložením tzv. Čekací cykly WS (Wait State). Maximální počet WS může, ale nemusí být omezen v závislosti na konkrétním modelu mikroprocesoru a jeho provozním režimu.

Smyčka čtení s čekacími smyčkami.

V normálním provozním režimu je na dálnici aktivní jediné zařízení, reprezentované CPU, které spouští všechny cykly výměny dat na dálnici. Mohou však nastat případy, kdy je na stejné sběrnici několik aktivních zařízení, která musí pracovat se stejným paměťovým blokem a výbušným blokem. Aby mohlo další aktivní zařízení přenášet data po sběrnici, musí být CPU na tuto dobu deaktivováno. Pro tyto účely většina moderních mikroprocesorů podporuje tzv. režimu "přímý přístup do paměti" (DAM). Pro implementaci tohoto režimu jsou do CB zavedeny další signály HOLD a HLDA. Když na vstup HOLD dorazí aktivní úroveň, mikroprocesor přeruší provádění svého programu, přepne výstupy všech svých sběrnic do vysokoimpedančního stavu a nastaví aktivní úroveň na výstupu HLDA, která by měla sloužit jako signál pro další aktivní zařízení, že může začít své výměnné cykly na dálnici. Když toto zařízení dokončí své komunikační cykly, resetuje signál HOLD, po kterém se CPU vrátí do normálního stavu a pokračuje ve vykonávání programu.

Dalším režimem provozu CPU, který vyžaduje, aby změnil normální tok provádění programu, je tzv. režimu „přerušuje“. Téměř všechny moderní mikroprocesory mají jeden nebo více tzv. externí vstupy přerušení INT0, INT1 atd., které přijímají signály indikující určité události v systému, na které musí CPU určitým způsobem reagovat. Když na některý z těchto vstupů dorazí aktivní úroveň signálu, mikroprocesor přeruší normální provádění programu, zapamatuje si adresu příkazu, při kterém přerušil práci, a přistoupí k provedení tzv. „rutina přerušení služby“ (ISR) napsaná v CSEG na konkrétní adrese. Adresa tohoto podprogramu je zapsána ve speciální paměťové buňce s názvem „ vektor přerušení" Každý jednotlivý zdroj přerušení má svůj vlastní vektor přerušení. Po provedení POP se po speciálním příkazu, který musí POP ukončit, procesor vrátí ke spuštění přerušeného programu na uložené adrese. Zdroje přerušení mohou být buď externí (tj. zaslané na jeden ze vstupů čipu, které se nazývají „vstupy požadavku přerušení“), nebo interní (tj. generované v procesoru za určitých podmínek). Protože Vzhledem k tomu, že současně může přijít několik různých požadavků na přerušení, existuje určitá disciplína, která určuje pořadí obsluhy jednotlivých přerušení. Tuto disciplínu zajišťuje „ arbitráž prioritního přerušení“, implementované buď uvnitř CPU nebo pomocí speciálního řadiče. V souladu s tímto systémem má každý zdroj přerušení svou vlastní specifikovanou prioritu (pevnou nebo proměnnou), která určuje pořadí, ve kterém je obsluhován. Když přijde několik požadavků na přerušení současně, je nejprve obslouženo přerušení s vyšší prioritou a poté to s nižší. Přerušení s vyšší prioritou může přerušit rutinu přerušení s nižší prioritou, která již probíhá, stejně jako přeruší hlavní program. V tomto případě tzv „vnořená přerušení“.

Kromě CSEG a DSEG mají téměř všechny moderní mikroprocesory speciálně přidělený malý datový prostor tzv soubor softwarově přístupných registrů RSEG (registrovat segment). Na rozdíl od CSEG a DSEG jsou registry RSEG umístěny uvnitř CPU v těsné blízkosti jeho ALU, což poskytuje rychlý fyzický přístup k informacím v nich uloženým. Obvykle ukládají mezivýsledky výpočtů, které CPU často používá. Oblast RSEG může být zcela izolována od datového prostoru DSEG, může se s ním překrývat a může být zcela podčástí DSEG. Vnitřní logická organizace RSEG je velmi různorodá a hraje důležitou roli v klasifikaci mikroprocesorových architektur.

Registry mikroprocesorů jsou funkčně heterogenní: některé se používají k ukládání dat nebo adresových informací, jiné se používají k řízení činnosti CPU. V souladu s tím lze všechny registry rozdělit na datové registry, ukazatele A speciálních rejstříků. Datové registry se podílejí na aritmetických a logických operacích jako zdroje operandů a cílů výsledků, adresní registry nebo ukazatele se používají k výpočtu adres dat a instrukcí umístěných v hlavní paměti. Speciální registry se používají k indikaci aktuálního stavu CPU a řízení provozu jeho komponent. Je možná architektura, ve které se používají stejné registry pro ukládání dat i informací o adrese. Takové registry se nazývají univerzální registry(RON). Způsoby použití toho či onoho typu registru určují specifické rysy architektury mikroprocesoru.

Mezi datovými registry se často rozlišuje jeden registr, tzv baterie A (Akumulátor), se kterým je spojena většina aritmetických a logických příkazů pro zpracování dat. To znamená, že aritmetické a logické instrukce používají obsah akumulátoru jako jeden ze svých operandů a ukládají do něj výsledek operace. Odkazuje se na něj implicitně pomocí operačního kódu. V tomto případě není potřeba alokovat speciální oblast v kódu instrukce pro adresy operandů a výsledků. Tento typ architektury mikroprocesoru se nazývá na baterie. Mezi nevýhody této architektury patří relativně nízký výkon, vysvětlovaný tím, že akumulátor je „úzké hrdlo“, do kterého je nutné před provedením operace nejprve zadat operand. Příkladem takové architektury je rodina mikrokontrolérů MCS-51 od Intelu.

Dalším příkladem organizace datových registrů je tzv. „pracovní registry“ R0, R1 atd. V tomto případě mohou být operandy a výsledky aritmetických a logických operací uloženy nikoli v jednom, ale ve více registrech, což rozšiřuje možnosti manipulace s daty. Na rozdíl od akumulátoru jsou pracovní registry adresovány explicitně v kódu instrukce. Tento typ architektury mikroprocesoru se nazývá rejstřík. Příkladem takové organizace je rodina mikroprocesorů 80x86 od Intelu. Řada mikroprocesorů navržených pro provoz v reálném čase nemá jeden, ale několik sad pracovních registrů. V každém okamžiku je k dispozici pouze jeden ze sad registrů, jejichž výběr se provádí zápisem odpovídající informace do konkrétního registru služeb. Příkladem takových zařízení jsou mikrokontroléry rodiny MCS-48 od Intelu.

Architektura, ve které je procesor schopen používat hlavní paměťové buňky jako adresy operandů a výsledků operace, se nazývá architektura „z paměti do paměti“. To eliminuje čas strávený kopírováním obsahu pracovních registrů při přechodu z jedné procedury do druhé. V tomto případě je však rychlý přístup k mezilehlým datům ztracen, protože nejsou uloženy v interních registrech, ale v DSEG. Řešením tohoto problému je umístit část DSEG na stejný čip jako CPU a použít tento interní segment RAM jako pracovní oblasti. Příkladem takové organizace jsou mikrokontroléry rodiny MCS-96 od Intelu.

Téměř všechny moderní mikroprocesory vyčleňují samostatnou paměťovou oblast pro tzv "stoh", používá se obecně k předávání parametrů procedurám a ukládání návratových adres z nich. Zásobník může být umístěn uvnitř nebo vně mikroprocesoru. Může zabírat část adresního prostoru DSEG nebo RSEG, nebo může být umístěn odděleně od nich. V druhém případě se mluví o tzv. „zásobník hardwaru“. Přenesení funkcí akumulátoru na vrchol zásobníku vede k tzv. „stack architektura“. Organizace zásobníku umožňuje používat bezadresné příkazy, jejichž kód má nejkratší délku. Bezadresné instrukce pracují s daty v horní části zásobníku a přímo pod ním. Když je provedena operace, zdrojové operandy se vyberou ze zásobníku a výsledek se přesune na vrchol zásobníku. Architektura zásobníku je vysoce výpočetně efektivní. Existuje speciální vysokoúrovňový jazyk FORTH, postavený na bázi bezadresných příkazů. Tato architektura se používá ve specializovaných vysoce výkonných procesorech a zejména v procesorech RISC.

Servisní registry umístěné uvnitř mikroprocesoru jsou určeny pro různé funkce řízení jeho činnosti a indikaci stavu jeho součástí. Jejich složení a organizace závisí na konkrétní architektuře procesoru a liší se v každém konkrétním případě. Nejběžnější jsou registry speciálních funkcí "počítadlo programů" PC (počítadlo programů), "ukazatel zásobníku" SP (Stack Ukazatel) a "Stavové slovo programu" PSW (Stavové slovo programu). Čítač PC programů v libovolném okamžiku obsahuje adresu instrukce následující v CSEG za instrukcí, která se právě provádí. Ukazatel zásobníku SP ukládá aktuální adresu vrcholu zásobníku. Stavové slovo programu PSW obsahuje sadu aktuálních znaků výsledku operace. Každý výsledný atribut je spojen s jednobitovou příznakovou proměnnou odpovídající konkrétnímu bitu PSW. Mezi typické příznaky patří:

- CF(Carry Flag) - přenášení vlajky z nejvýznamnější číslice ALU. rovná se 1, pokud v důsledku provedení aritmetické operace nebo operace směny došlo k přenosu z nejvýznamnější číslice výsledku;

- ZF(Zero Flag) - příznak nuly. Rovná se 1, pokud je výsledek operace 0;

-SF(Sign Flag) - příznak výsledku. Duplikuje znaménkový bit výsledku operace;

- A.F.(Auxilinary Carry Flag) - přídavná vlajka pro přenášení. Rovná 1, pokud v důsledku provedení aritmetické operace nebo operace posunu byl výsledek převeden z nízké tetrády na vysokou tetrádu. Často se používá v aritmetice BCD;

- Z(Owerfow Flag) - příznak přetečení. Rovná se 1, pokud v důsledku provedení aritmetické operace bitová mřížka výsledku přetekla;

- PF(Parity Flag) - příznak parity. Rovná se 1, pokud je číslo 1 v důsledku operace liché a naopak.

- LI(Interrupt Flag) - příznak povolení přerušení. Označuje, zda jsou v systému povolena přerušení.

Specifické příznaky program používá k analýze výsledku předchozího příkazu a rozhodování o dalším průběhu programu. Speciální registry mohou zabírat část adresního prostoru DSEG nebo RSEG nebo mohou být umístěny odděleně od nich.

Adresové registry nebo ukazatele se používají k implementaci určitých metod adresování operandů používaných ve specifických instrukcích mikroprocesoru. Jejich konkrétní sada a funkce závisí na tom, jaké metody adresování jsou v daném modelu mikroprocesoru implementovány.

Pod způsob adresování se týká způsobu kódování adresy operandu nebo výsledku operace v kódu instrukce.

Obecně může být příkazový kód mikroprocesoru reprezentován následovně:

KOP AOP1 AOP2 ... AR

KOP - kód operace;

AOP1 - pole adresy prvního operandu;

AOP2 - pole adresy druhého operandu;

AR - pole adresy výsledku.

Přítomnost jednotlivých polí, kromě COP, je dána konkrétním příkazem a typem mikroprocesoru. Informace v polích AOP a AP jsou určeny konkrétní metodou adresování použitou v daném příkazu.

Nejběžnější metody adresování používané v moderních modelech mikroprocesorů jsou:

- Registrovat adresování. Operand je v registru. Adresa registru je součástí kódu operace. V příkazu není žádné pole adresy;

- Přímé adresování. Fyzická adresa operandu se nachází v odpovídajícím poli adresy.

- Přímé adresování. Okamžitá hodnota operandu se nachází v odpovídajícím poli adresy.

- Nepřímé adresování registru. Fyzická adresa operandu se nachází v registru nepřímých adres DP (Data Pointer). Adresa registru je součástí kódu operace. V příkazu není žádné pole adresy. DP může být RON nebo speciální registr adres;

- Nepřímé automatické zvýšení/automatické snížení adresování. Fyzická adresa operandu se nachází v registru nepřímých adres DP. Adresa registru je součástí kódu operace. V příkazu není žádné pole adresy. Po (nebo před) provedením operace se obsah DP automaticky zvýší/sníží tak, aby ukazoval na další prvek tabulky.

- Adresování podle základny s ofsetem. Základní adresa operandu se nachází v základním registru BP (Base Pointer). Adresa registru je součástí kódu operace. Offset adresy operandu vzhledem k základní adrese je umístěn v odpovídajícím poli adresy. BP může být RON nebo speciální registr adres;

- Indexové adresování. Základní adresa operandu se nachází v odpovídajícím poli adresy. Offset adresy operandu vzhledem k základní adrese je umístěn v indexovém registru X (Index). X může být RON nebo speciální registr adres;

- Adresování podle databáze s indexováním. Základní adresa operandu je umístěna v základním registru BP, offset adresy operandu vzhledem k základní adrese je umístěn v indexovém registru X. Registrační adresy jsou zahrnuty v operačním kódu. V příkazu není žádné pole adresy; X a BP mohou být RON nebo speciální adresní registry;

- Segmentové adresování. Veškerá paměť je rozdělena na segmenty určité velikosti. Adresa segmentu je uložena v segmentovém registru SR (Segment Register), posunutí adresy vzhledem k začátku segmentu se nachází v odpovídajícím poli adresy nebo v indexovém registru X. X může být RON nebo speciální registr adres;

V závislosti na tom, jaké způsoby adresování jsou implementovány v konkrétním procesoru, má určité registry adres. Složitější metody adresování vyžadují více času na výpočet adresy operandu. Jeden z moderních trendů ve vývoji architektury mikroprocesorů je založen na snížení počtu možných instrukcí a metod adresování, aby bylo zajištěno, že jakákoliv instrukce bude provedena v jednom strojovém cyklu. Takové procesory se nazývají RISC procesory (Reduced Instruction Set Computer). Konkrétním příkladem takového zařízení je mikroprocesor PowerPC od Motoroly.

V rámci výbušného systému lze rozlišit i řadu funkčně ucelených zařízení, která jsou navržena ve formě modulů napojených přímo na jednu páteř systému. V nejjednodušším případě se jedná o vyrovnávací registry adresované CPU - BB porty. Jsou nazývány složitější softwarově řízené BB subsystémy obsahující bloky portů periferní adaptéry. V případě, kdy jsou výbušné prostředky určeny k ovládání speciálních vnějších zařízení a provádění speciálních výbušných funkcí, jsou nazývány periferní ovladače. Uvažuje se o nejsložitějším z moderních prostředků výměny s externími výbušnými zařízeními BB koprocesory, které pracují podle vlastních programů uložených ve vlastní paměti a jsou v podstatě samostatnými mikroprocesorovými systémy. Příkladem takového systému je vektorový koprocesor ADMC-200 od Analog Devices, navržený pro propojení mikroprocesorového systému s ventilovým převodníkem, který řídí střídavý pohon. Zahrnuje několik kanálů ADC, vícekanálový PWM a výpočetní jednotku, která implementuje Park-Clarkovy vektorové transformace nezbytné pro implementaci algoritmu vektorového řízení pro synchronní a asynchronní střídavé motory. Bez ohledu na složitost konkrétního IC subsystému jsou však ze strany CPU všechny reprezentovány tou či onou sadou adresovatelných registrů, která je zpravidla součástí DSEG.

Bitová kapacita mikroprocesorového systému Obecně je přijímáno počítat počet bitů informací, které může jeho CPU zpracovat jednou instrukcí. Šířka mikroprocesoru je dána šířkou jeho ALU, vnitřních datových registrů a externí datové sběrnice. Dnes existují 8-, 16-, 32- a 64bitové mikroprocesory. Aby bylo možné zpracovávat informace s bitovou hloubkou větší, než má mikroprocesor, je nutné implementovat speciální výpočetní algoritmy se zvýšenou bitovou hloubkou. Tyto algoritmy vyžadují více času na provedení. Proto zvýšení bitové kapacity mikroprocesoru pro danou výpočetní bitovou kapacitu přímo souvisí se zvýšením výkonu systému.

V závislosti na formátu, ve kterém je procesor schopen přijímat a zpracovávat data, existují mikroprocesory s pevným bodem A mikroprocesory s plovoucí desetinnou čárkou. Pro danou přesnost výpočtu a bitovou hloubku rozsah čísel reprezentovatelných ve formátu s pohyblivou řádovou čárkou výrazně převyšuje rozsah čísel ve formátu s pevnou řádovou čárkou. Proto se pro zvýšení přesnosti výsledku používají výpočty s plovoucí desetinnou čárkou. Implementace takových algoritmů na procesory s pevnou čárkou s sebou nese velký výpočetní čas a v důsledku toho snížení výkonu systému. Procesory s pohyblivou řádovou čárkou jsou schopny provádět aritmetické operace na číslech s pohyblivou řádovou čárkou pomocí jediné instrukce. Proto provádějí takové výpočty mnohem rychleji než procesory s pevnou čárkou.

Existují mikroprocesory, jejichž architektura je přizpůsobena k provádění určitých typů výpočtů. Mezi tyto procesory patří tzv. “ digitální signálové procesory” DSP (Digital Signal Processor). Jejich architektura má funkce, které jim umožňují implementovat opakující se algoritmy zpracování dat s nejvyšším výkonem, které se používají v mnoha úlohách, které vyžadují jejich provádění v „reálném čase“, jako je kódování zvuku a videa, regulace, digitální filtrování, digitální komunikace atd. .p. Všechny tyto procesory jsou postaveny zpravidla podle Harvardské architektury. Moderní DSP mají samostatné adresové/datové sběrnice pro CSEG a DSEG, což jim umožňuje přístup k různým typům paměti a provádění více datových operací pomocí jediného příkazu. Hlavním rysem DSP je, že kromě běžné ALU, která je přítomna ve všech procesorech, mají několik dalších výpočetních zařízení. Mezi tato zařízení patří především tzv. „multiplikátor-akumulátor“ MAU (Multiple-Accumulator Unit), schopný vynásobit dvě vícemístná čísla jedním příkazem a sečíst výsledek dvoumístných čísel s výsledkem předchozího příkazu. Podobná operace „násobení-sčítání“ se používá ve všech rekurentních algoritmech. Přítomnost MAU v kombinaci s výše uvedenými vlastnostmi organizace procesorové sběrnice umožňuje DSP kompletně provést jeden krok rekurentního algoritmu v jednom příkazu a připravit počáteční data pro další krok. Dalším doplňkovým výpočetním zařízením je „multibitový posuvný registr“ S (Shifter), schopný provádět operace posuvu na číslech, jejichž šířka přesahuje šířku ALU. Společný provoz těchto výpočetních zařízení umožňuje dosáhnout výpočetního výkonu při provádění rekurentních algoritmů, který je nesrovnatelný s jinými procesory. Příklady moderních DSP zahrnují:

ADSP-21XX rodina od Analog Devices - 16bitové DSP s pevnou čárkou, výkon až 30 MIPS;

Skupina Texas Instruments TMS320C3X - 32bitové DSP s pohyblivou řádovou čárkou, výkon až 30 MIPS, 60 MFLOPS.

    • TMS320C240 od ​​Texas Instruments je 16bitový DSP s pevným bodem přizpůsobený pro aplikace řízení měničů, výkon až 20 MIPS, 12kanálový PWM na čipu, dva 8kanálové 10bitové ADC.

Zavedení

1.3 Přehled existujících typů architektur mikroprocesorů

2. Ovládací zařízení

3. Vlastnosti ovládání softwaru a firmwaru

4. Režimy adresování

Závěr


Proces lidské interakce s počítači probíhá již více než 40 let. Donedávna se tohoto procesu mohli účastnit pouze specialisté – inženýři, matematici – programátoři, operátoři. V posledních letech došlo v oblasti výpočetní techniky k dramatickým změnám. Díky vývoji a implementaci mikroprocesorů do struktury počítače se objevily malé, uživatelsky přívětivé osobní počítače. Situace se změnila, rolí uživatele může být nejen počítačový specialista, ale i jakákoliv osoba, ať už je to školák nebo žena v domácnosti, lékař nebo učitel, dělník nebo inženýr. Tento jev se často nazývá fenomén osobního počítače. V současnosti celosvětová flotila osobních počítačů přesahuje 20 milionů.

Proč k tomuto jevu došlo? Odpověď na tuto otázku lze nalézt, pokud jasně formulujeme, co je osobní počítač a jaké jsou jeho hlavní vlastnosti. Samotnou definici „osobního“ musíme správně vnímat, neznamená to, že počítač patří člověku jako osobní majetek. Definice „osobního“ vznikla proto, že člověk dostal možnost komunikovat s počítačem bez zprostředkování profesionálního programátora, samostatně, osobně. Není nutné znát speciální počítačový jazyk. Stávající software v počítači poskytne příznivou „přátelskou“ formu dialogu mezi uživatelem a počítačem.

V současnosti je jedním z nejoblíbenějších počítačů model IBM PC a jeho modernizovaná verze IBM PC XT, která je považována za základní model osobního počítače z hlediska architektury, softwaru a vnějšího designu.

Základem osobního počítače je systémová jednotka. Organizuje práci, zpracovává informace, provádí výpočty, zajišťuje komunikaci mezi člověkem a počítačem. Uživatel nemusí důkladně rozumět tomu, jak systémová jednotka funguje. To je pro specialisty. Musí ale vědět, z jakých funkčních bloků se počítač skládá. Nemáme jasnou představu o principu fungování vnitřních funkčních bloků objektů kolem nás - lednice, plynového sporáku, pračky, automobilu, ale musíme vědět, co je základem pro fungování těchto zařízení, jaké jsou schopnosti jejich bloků.

1. Obecná charakteristika architektury procesoru

1.1 Základní struktura mikroprocesorového systému

Úkolem správy systému je centrální procesorová jednotka (CPU), která je připojena k paměti a vstupně/výstupnímu systému prostřednictvím paměti a vstupně/výstupních kanálů. CPU čte instrukce z paměti, které tvoří program, a dekóduje je. Podle výsledku dekódovacích instrukcí načte data z paměti vstupních portů, zpracuje je a odešle zpět do paměti nebo výstupních portů. K dispozici je také možnost I/O dat z paměti na externí zařízení a naopak, obcházení CPU. Tento mechanismus se nazývá přímý přístup do paměti (DMA).

Z uživatelského hlediska je při výběru mikroprocesoru vhodné mít nějakou zobecněnou ucelenou charakteristiku schopností mikroprocesoru. Vývojář potřebuje rozumět a rozumět pouze těm součástem mikroprocesoru, které se jasně odrážejí v programech a musí být brány v úvahu při vývoji obvodů a programů pro fungování systému. Tyto vlastnosti jsou definovány konceptem architektury mikroprocesoru.

1.2 Koncepce architektury mikroprocesoru

Architektura typického výpočetního systému na bázi malých mikropočítačů je znázorněna na Obr. 1. Takový mikropočítač obsahuje všech 5 hlavních bloků digitálního stroje: zařízení pro vstup informací, řídicí jednotku (CU), aritmeticko-logickou jednotku (ALU) (je součástí mikroprocesoru), paměťová zařízení (SRAM) a informační výstupní zařízení.

Rýže. 1. Architektura typického mikroprocesoru.

Mikroprocesor koordinuje činnost všech zařízení digitálního systému pomocí řídicí sběrnice (CB). Kromě SHU je zde 16bitová adresová sběrnice (ABA), která slouží k výběru konkrétní paměťové buňky, vstupního portu nebo výstupního portu. 8bitová informační sběrnice nebo datová sběrnice (SD) provádí obousměrný přenos dat do az mikroprocesoru. Je důležité poznamenat, že MP může odesílat informace do paměti mikropočítače nebo do jednoho z výstupních portů, stejně jako přijímat informace z paměti nebo z jednoho ze vstupních portů.

Paměť pouze pro čtení (ROM) v mikropočítači obsahuje určitý program (v praxi program pro inicializaci počítače). Programy lze načíst do paměti RAM (Random Access Memory) a z externího paměťového zařízení (ERM). Jedná se o uživatelské programy.

Jako příklad ilustrující činnost mikropočítače zvažte postup, pro jehož implementaci musíte provést následující posloupnost základních operací:

1. Stiskněte klávesu s písmenem "A" na klávesnici.

2. Vložte písmeno „A“ do paměti mikropočítače.

3. Zobrazte na displeji písmeno „A“.

Jedná se o typický postup vstup-úložiště-výstup, jehož zvážení umožňuje vysvětlit principy použití některých zařízení obsažených v mikropočítači.

Na Obr. Obrázek 2 ukazuje podrobné schéma provádění procedury vstup-úložiště-výstup. Všimněte si, že instrukce jsou již načteny do prvních šesti paměťových míst. Uložený program obsahuje následující řetězec příkazů:

1. Zadejte data ze vstupního portu 1.

2. Uložte data do paměťového místa 200.

3. Odešlete data na výstupní port 10.

V tomto programu jsou pouze tři příkazy, i když na Obr. 2 se může zdát, že v paměti programu je uloženo šest instrukcí. Je to proto, že tým je obvykle rozdělen na části. První částí příkazu 1 ve výše uvedeném programu je příkaz pro zadávání dat. Druhá část příkazu 1 určuje, odkud mají být data zadávána (z portu 1). První část příkazu, která specifikuje konkrétní akci, se nazývá operační kód (OPC) a druhá část se nazývá operand. Operační kód a operand jsou umístěny v oddělených místech paměti programu. Na Obr. 2 COP je uložen v buňce 100 a kód operandu je uložen v buňce 101 (port 1); druhý uvádí, odkud by měly být informace převzaty.

V MP na Obr. 2 jsou zvýrazněny další dva nové bloky - registry: akumulátor a příkazový registr.


Rýže. 2. Schéma provádění procedury input-storage-output

Podívejme se na průchod příkazů a dat uvnitř mikropočítače pomocí očíslovaných kroužků na schématu. Připomeňme, že mikroprocesor je centrálním uzlem, který řídí pohyb všech dat a provádění operací.

Takže při provádění typické procedury vstup-úložiště-výstup v mikropočítači nastane následující sekvence akcí:

1. MP vydává adresu 100 na adresovou sběrnici. Přes řídicí sběrnici je odeslán signál, který nastaví paměť programu (konkrétní mikroobvod) do režimu čtení.

2. Paměť programu odešle první příkaz („Zadejte data“) po datové sběrnici a MP přijme tuto zakódovanou zprávu. Příkaz je umístěn v registru příkazů. MP dekóduje (interpretuje) přijatý příkaz a určí, že příkaz vyžaduje operand.

3. MP otázky adresu 101 až ShA; Velín slouží k převodu programové paměti do režimu čtení.

4. Operand „Z portu 1“ je odeslán z paměti programu na SD. Tento operand je umístěn v programové paměti v buňce 101. Kód operandu (obsahující adresu portu 1) je přenesen přes SD do MP a odeslán do příkazového registru. MP nyní dekóduje celý příkaz ("Zadejte data z portu 1").

5. MP pomocí SHA a SHU připojením ke vstupnímu zařízení otevře port 1. Digitální kód písmene „A“ se přenese do baterie uvnitř MP a uchová se každý programový příkaz se MP chová podle mikroprocedury vzorkování-dekódování-provádění.

6. MP přistupuje k buňce 102 přes ShA. Velín slouží k převodu programové paměti do režimu čtení.

7. Příkazový kód „Zapamatovat si data“ je odeslán do SD a odeslán do MP, kde je umístěn do příkazového registru.

8. MP dekóduje tuto instrukci a určí, že vyžaduje operand. MP přistupuje k paměťové buňce 103 a aktivuje vstup pro čtení programových paměťových čipů.

9. Kód zprávy „V paměťové buňce 200“ je odeslán z paměti programu na SD. MP vezme tento operand a umístí jej do registru instrukcí. Úplný příkaz "Uložit data do paměťového místa 200" je vybrán z paměti programu a dekódován.

10. Nyní začíná proces provádění příkazu. MP předá adresu 200 SHA a aktivuje vstup zápisu související s datovou pamětí.

11. MP předává informace uložené v baterii do datové paměti. Kód písmene "A" je přenášen přes SD a zapsán do buňky 200 této paměti. Druhý příkaz byl proveden. Proces ukládání do paměti nezničí obsah baterie. Stále obsahuje kód pro písmeno "A".

12. MP přistoupí k paměťové buňce 104, aby vybral další příkaz a přepne programovou paměť do režimu čtení.

13. Kód příkazu výstupu dat je odeslán přes SD do MP, který jej umístí do příkazového registru, dešifruje jej a určí, že je potřeba operand.

14. MP vydá adresu 105 SHA a nastaví paměť programu do režimu čtení.

15. Z programové paměti přes SD dorazí kód operandu „Na port 10“ do MP, který je pak umístěn do příkazového registru.

16. MP dešifruje celý příkaz „Output data to port 10“. Pomocí připojení ShA a ShU k výstupnímu zařízení MP otevře port 10 a odešle kód písmene „A“ (stále v baterii) přes ShD. Písmeno "A" se zobrazuje přes port 10 na obrazovce displeje.

Ve většině mikroprocesorových systémů (MPS) jsou informace přenášeny způsobem podobným tomu, který byl popsán výše. Nejvýraznější rozdíly jsou možné ve vstupních a výstupních blocích.

Ještě jednou zdůrazněme, že mikroprocesor je jádrem systému a řídí všechny operace. Jeho práce představuje sekvenční implementaci vzorkování-dešifrování-provádění mikroprocedur. Skutečný sled operací v MPS je však určen příkazy zaznamenanými v paměti programu.

V MPS tedy mikroprocesor vykonává následující funkce:

Načítání příkazů programu z hlavní paměti;

Dešifrování příkazů;

Provádění aritmetických, logických a jiných operací kódovaných v příkazech;

Řízení přenosu informací mezi registry a hlavní pamětí, mezi vstupními/výstupními zařízeními;

Zpracování signálů ze vstupních/výstupních zařízení, včetně implementace přerušení z těchto zařízení;

Řízení a koordinace práce hlavních složek MP.


Existuje několik přístupů ke klasifikaci mikroprocesorů podle typu architektury. Existují tedy MP s architekturou CISC (Complete Instruction Set Computer), která se vyznačuje úplnou sadou instrukcí, a architekturou RISC (Reduce Instruction Set Computer), která definuje systém s redukovanou sadou příkazů stejného formátu, prováděných v jeden MP hodinový cyklus.

Definováním bitové hloubky jako hlavní charakteristiky MP se rozlišují následující typy architektury MP:

S pevnou bitovou hloubkou a seznamem příkazů (jednočipové);

S rozšiřitelnou kapacitou (sekční) a mikroprogramovým ovládáním.

Analýzou adresových prostorů programů a dat je určen MP s von Neumannovou architekturou (programová paměť a datová paměť jsou ve stejném prostoru a neexistují žádné znaky označující typ informace v paměťové buňce) a MP s Architektura Harvardské laboratoře (paměť programu a datová paměť jsou oddělené, mají své vlastní adresní prostory a způsoby, jak k nim přistupovat).

Podívejme se podrobněji na hlavní typy architektonických řešení se zdůrazněním spojení s metodami adresování paměti.

1. Architektura registru je určena přítomností dostatečně velkého souboru registru uvnitř MP. Instrukce mohou přistupovat k operandům umístěným na jednom ze dvou paměťových médií: RAM nebo registry. Velikost registru je obvykle pevná a odpovídá velikosti slova fyzicky implementovaného v RAM. K jakémukoli registru lze přistupovat přímo, protože registry jsou reprezentovány jako pole úložných prvků - soubor registru. Typické je provádět aritmetické operace pouze v registru, přičemž instrukce obsahuje dva operandy (oba operandy v registru nebo jeden operand v registru a druhý v RAM).

K tomuto typu architektury patří mikroprocesor Zilog. Procesor Z80, duchovní dítě společnosti Zilog, měl kromě rozšířeného systému instrukcí, jednoho jmenovitého výkonu a schopnosti spouštět programy napsané pro i8080 architektonické přednosti.

Rýže. 3. Mikroprocesor Z80 od firmy Zilog.

Kromě hlavní sady RON byla v krystalu implementována druhá sada podobných registrů. To značně zjednodušilo práci při volání podprogramů nebo obslužných rutin přerušení, protože programátor pro ně mohl použít alternativní sadu registrů a vyhnout se ukládání obsahu RON hlavního programu na zásobník pomocí operací PUSH. Do instrukčního systému byla navíc zařazena řada speciálních instrukcí zaměřených na zpracování jednotlivých bitů a pro podporu dynamické regenerace paměti byl do obvodu procesoru zaveden příslušný hardware. Z80 byl použit ve strojích Sinclair ZX, Sinclair Spectrum, Tandy TRS80.

Poslední možností je architektura s adresováním přes akumulátory (menší sada příkazů).

Motorola MP měl řadu významných výhod. Za prvé, krystal MC6800 vyžadoval pro provoz jeden jmenovitý zdroj napájení a systém příkazů se ukázal pro programátora jako velmi transparentní. Architektura MP měla také řadu funkcí.

Obrázek 4. Mikroprocesor MC6800 od společnosti Motorola.

Mikroprocesor MC 6800 obsahoval dvě baterie a výsledek operace ALU bylo možné umístit do kterékoli z nich. Ale nejcennější vlastností struktury MC 6800 bylo automatické ukládání obsahu všech procesorových registrů na zásobníku při zpracování přerušení (Z80 k tomu vyžadoval několik PUSH příkazů). Procedura pro obnovu RON ze zásobníku byla provedena i hardwarově.

2. Architektura zásobníku umožňuje vytvořit paměťové pole s uspořádanou sekvencí záznamu a získávání informací.

Obecně platí, že příkazy jsou implicitně adresovány prvku zásobníku v horní části zásobníku nebo dvěma horním prvkům zásobníku.

3. Architektura MP orientovaná na RAM (typ z paměti do paměti) zajišťuje vysokou provozní rychlost a velkou informační kapacitu pracovních registrů a zásobníku, když jsou organizovány v RAM.

Tento typ architektury explicitně nedefinuje akumulátor, obecné registry nebo zásobník; Všechny instrukční operandy jsou adresovány do oblasti hlavní paměti.

Z hlediska důležitosti pro uživatele-programátora je architektura obecně chápána jako soubor následujících komponent a vlastností:

Bitová velikost adres a dat;

Skládání, názvy a účel registrů přístupných k softwaru;

Formáty a příkazové systémy;

Režimy adresování paměti;

Metody strojové reprezentace různých typů dat;

Struktury adresního prostoru;

Způsob adresování vnějších zařízení a prostředky pro provádění vstupně/výstupních operací;

Třídy přerušení, vlastnosti iniciace a zpracování přerušení.

2. Ovládací zařízení

Operační kódy programových příkazů, vnímané řídící částí mikroprocesoru, v ní dešifrované a převedené, poskytují informace o tom, jaké operace je třeba provést, kde se data nacházejí v paměti, kam má být výsledek odeslán a kam další je umístěn příkaz, který má být proveden.

Řídicí zařízení má dostatečné prostředky k tomu, aby po vnímání a interpretaci informací přijatých v příkazu zajistilo sepnutí (aktivaci) všech požadovaných funkčních částí stroje a také jim dodávalo data a vnímalo získané výsledky. Právě ovládání, tedy změna stavu binárních logických prvků na opačný, umožňuje prostřednictvím spínacích hradel provádět elementární logické a aritmetické operace a také přenášet požadované operandy do funkčních částí mikropočítače.

Řídicí zařízení v přísném sledu v rámci hodinových a cyklických časových intervalů činnosti mikroprocesoru (cyklus je minimální pracovní interval, během kterého se provádí jedna elementární akce; cyklus je časový interval, během kterého se provádí jedna operace stroje) provádí: příkaz výběr; jeho interpretace za účelem analýzy formátu, charakteristik služby a výpočtu adresy operandu (operandů); stanovení nomenklatury a časové posloupnosti všech funkčních řídicích signálů; generování řídicích impulsů a jejich přenos na řídicí sběrnice funkčních částí mikropočítače a ventilů mezi nimi; analýza výsledku operace a změna jejího stavu tak, aby se určilo umístění (adresa) dalšího příkazu.


Mikroprocesory používají dvě metody pro generování sady funkčních řídicích signálů: software a mikroprogram.

Provádění operací ve stroji spočívá v elementárních transformacích informací (přenos informací mezi uzly v blocích, posouvání informací v uzlech, logické bitové operace, kontrolní podmínky atd.) v logických prvcích, uzlech a blocích pod vlivem funkčních řídicích signálů. správy bloků (zařízení). Elementární transformace, které nelze rozložit na jednodušší, se provádějí během jednoho hodinového cyklu synchronizačních signálů a nazývají se mikrooperace.

V hardwarových (obvodových) řídicích zařízeních má každá operace svou vlastní sadu logických obvodů, které produkují určité funkční signály pro provádění mikrooperací v určitých okamžicích. Při tomto způsobu konstrukce řídicího zařízení je provádění mikrooperací dosaženo prostřednictvím vzájemně propojených logických obvodů, proto se počítač s hardwarovým řídicím zařízením nazývá počítač s pevnou řídicí logikou. Tento pojem označuje zafixování řídicího systému ve struktuře počítačových spojů a znamená praktickou nemožnost jakýchkoli změn v řídicím systému počítače po jeho výrobě.

Když je řídicí zařízení implementováno mikroprogramově, je do něj zavedena paměť, jejíž každý bit výstupního kódu určuje vzhled specifického funkčního řídicího signálu. Proto je každé mikrooperaci přiřazen vlastní informační kód – mikropříkaz. Sada mikropříkazů a sekvence jejich implementace zajistí provedení jakékoli složité operace. Soubor mikrooperací se nazývá mikroprogramy. Metoda řízení operací sekvenčním čtením a interpretací mikropříkazů z paměti (nejčastěji se používají vysokorychlostní programovatelné logické matice ve formě paměti mikroprogramu), stejně jako používání kódů mikropříkazů pro generování funkčních řídicích signálů, se nazývá mikroprogram, a mikropočítač s tímto způsobem řízení má mikroprogramovanou nebo uloženou (flexibilní) řídicí logiku.

Na mikroprogramy jsou kladeny požadavky na funkční úplnost a minimalismus. První požadavek je nezbytný pro zajištění schopnosti vyvíjet mikroprogramy pro jakékoli strojní operace a druhý souvisí s přáním snížit množství používaného vybavení. Zohlednění výkonnostního faktoru vede k rozšíření mikroprogramů, protože jejich komplikace umožňuje zkrátit dobu provádění programových příkazů.

Konverze informací se provádí v univerzální aritmeticko-logické jednotce mikroprocesoru. Obvykle je postaven na bázi kombinačních logických obvodů.

Pro urychlení provádění určitých operací jsou zavedeny další speciální ovládací jednotky (například cyklické řazení). Kromě toho jsou do mikroprocesorové sady (MPC) LSI zavedeny specializované operační jednotky aritmetických expandérů.

Operační možnosti mikroprocesoru lze rozšířit zvýšením počtu registrů. Pokud ve vyrovnávací paměti registru není přiřazení funkcí registru, pak je lze použít jak pro ukládání dat, tak pro ukládání adres. Takové mikroprocesorové registry se nazývají obecné registry (GPR). Jak se technologie vyvíjí, výroba 16, 32 nebo více registrů v mikroprocesoru byla skutečně provedena.

Princip mikroprogramového řízení (PMC) obecně zahrnuje následující položky:

1) jakákoli operace realizovaná zařízením je sledem elementárních akcí - mikrooperací;

2) pro řízení pořadí mikrooperací se používají logické podmínky;

3) proces provádění operací v zařízení je popsán ve formě algoritmu, prezentovaného z hlediska mikrooperací a logických podmínek, nazývaného mikroprogram;

4) firmware se používá jako forma znázornění funkce zařízení, na základě které se určuje struktura a pořadí činnosti zařízení v čase.

PMU poskytuje flexibilitu mikroprocesorového systému a umožňuje orientaci mikro- a minipočítačů orientovanou na problém.

4. Režimy adresování

Aby mohl počítač komunikovat s různými moduly, musí mít prostředky pro identifikaci externích paměťových buněk, vnitřních paměťových buněk, registrů MP a registrů vstupních/výstupních zařízení. Každá z paměťových buněk má tedy přiřazenu adresu, tzn. jednoznačná kombinace bitů. Počet bitů určuje počet buněk, které mají být identifikovány. Počítač má obvykle různé adresní prostory pro paměť a registry MP a někdy - samostatné adresní prostory pro registry vstupních/výstupních zařízení a vnitřní paměť. Paměť navíc ukládá jak data, tak instrukce. Proto bylo pro počítače vyvinuto mnoho způsobů přístupu k paměti, nazývaných adresovací režimy.

Režim adresování paměti je postup nebo schéma pro převod adresových informací operandu na jeho prováděcí adresu.

Všechny metody adresování paměti lze rozdělit na:

1) přímá, když je výkonná adresa převzata přímo z příkazu nebo vypočtena pomocí hodnoty uvedené v příkazu a obsahu libovolného registru (přímé adresování, registr, báze, index atd.);

2) nepřímé, které předpokládá, že příkaz obsahuje hodnotu nepřímé adresy, tzn. adresy paměťové buňky, ve které se nachází konečná prováděcí adresa (nepřímé adresování).

Každý mikropočítač implementuje pouze určité režimy adresování, jejichž použití je zpravidla dáno architekturou mikropočítače.

Závěr

Počet osobních počítačů jak ve světě, tak zejména v Rusku rychle roste; Trh s PC je nejslibnější a nejziskovější mezi ostatními výpočetními trhy. V Severní Americe a západní Evropě se procento domácností, které vlastní PC, blíží 30. Bezpochyby by se v dnešní době měl každý naučit a rozumět počítači nejen teoreticky, ale hlavně prakticky.

Analýza nových řešení pro konstrukci počítačové struktury ukazuje, že procesor, paměť, vstupní a výstupní zařízení tvoří základ každého počítače. Podívejme se na nejběžnější strukturální schéma, které je základem nejběžnějších modelů počítačů, zejména osobních.

Moderní počítač lze ve většině případů znázornit zjednodušeným blokovým schématem, kde jsou rozlišeny centrální a periferní části. Centrální část obsahuje procesor a vnitřní paměť, periferní část obsahuje vstupně/výstupní zařízení a externí paměť. Zjednodušený strukturní diagram je založen na principech konektivity, modularity a mikroprogramovatelnosti.

Člověk by neměl doufat, že rozvoj výpočetní techniky nějak radikálně změní naši existenci. Počítač není víc (ale ne méně) než jeden z mocných motorů pokroku (jako je energetika, metalurgie, chemie, strojírenství), který na svá „železná ramena“ přebírá tak důležitou funkci, jako je rutina zpracování informací. Tato rutina vždy a všude doprovází nejvyšší úlety lidského myšlení. Právě v této rutině se velmi často utápí odvážná rozhodnutí, která jsou pro počítač nedostupná. Proto je tak důležité „přenést“ rutinní operace do počítače, aby se člověk osvobodil pro jeho skutečný účel – kreativitu.

Budoucnost mikroprocesorové techniky je dnes spojena se dvěma novými směry – nanotechnologií a kvantovými výpočetními systémy. Tyto studie, dosud převážně teoretické, se týkají využití molekul a dokonce i subatomárních částic jako součástí logických obvodů: základem pro výpočty by neměly být elektrické obvody jako nyní, ale poloha jednotlivých atomů nebo směr rotace elektronů. Pokud vzniknou „mikroskopické“ počítače, v mnoha ohledech předčí moderní stroje.

Seznam použité literatury

1. Balashov E.P., Grigoriev V.L., Petrov G.A. Mikro- a minipočítače. – Petrohrad: Energoatomizdat, 2004.

2. Eremin E.A. Populární přednášky o počítačovém designu. – Petrohrad: BHV-Petersburg, 2003.

3. Ibrahim K.F. PC zařízení a nastavení / Per. z angličtiny – M.: Binom, 2004..

4. Kosarev V.P., Surkov E.M., Bakova I.V. Technické prostředky řídicích systémů. - M.: Nakladatelství "Finance a statistika", 2006.

5. Leontyev V.P. Nejnovější encyklopedie osobního počítače 2003. – M.: OLMA-PRESS, 2004.

6. Stallings W. Strukturální organizace a architektura počítačových systémů. – M.: Williams, 2002.

7. Wynn L. Roche. Bible pro upgrade vašeho osobního počítače. – M.: Tivali-Style, 2005.

8. Figurnov V.E. IBM PC pro uživatele, 6. vydání, revidováno a rozšířeno. – M.: INFRA-M, 1996.

Část 1 Architektura mikroprocesorových počítačů

Téma 1.1 Architektura mikroprocesoru

Plán:

1 Architektura mikroprocesoru. Klasifikace

Mikroprocesorová technologie (MPT) zahrnuje hardware a software používaný k sestavení různých mikroprocesorových systémů, zařízení a osobních mikropočítačů.

Mikroprocesorový systém (MPS) je funkčně kompletní produkt sestávající z jednoho nebo více zařízení, převážně na bázi mikroprocesoru: mikroprocesor a/nebo mikrokontrolér.

Mikroprocesorové zařízení (MPU) je funkčně a konstrukčně kompletní produkt sestávající z několika mikroobvodů, které obsahují mikroprocesor; je navržen tak, aby vykonával specifickou sadu funkcí: příjem, zpracování, přenos, konverzi informací a správu.

Mikroprocesor (MP) je softwarově řízené zařízení, které provádí proces digitálního zpracování a řízení informací a je postaveno zpravidla na jediném LSI.

Různé MP nebo MK jsou sjednoceny do rodin jak technologií „mikrokernel“, což je jádro procesoru, které interaguje s periferními zařízeními různých typů, tak principy vlastní otevřeným systémům: kompatibilita ( kompatibilita ), škálovatelnost (škálovatelnost ), přenosnost ( přenosnost ) a interakce s aplikací ( introperabilita).

Vyráběné mikroprocesory jsou rozděleny do samostatných tříd podle své architektury, struktury a funkčnosti. Hlavní směry vývoje mikroprocesorů jsou zvyšování jejich výkonu a rozšiřování funkčnosti, čehož je dosahováno jak zvyšováním úrovně mikroelektronické technologie používané pro výrobu mikroprocesorů, tak využíváním nových architektonických a konstrukčních možností jejich implementace.

Obrázek 1 ukazuje klasifikaci moderních mikroprocesorů podle funkčnosti.

Obrázek 1 - Klasifikace moderních mikroprocesorů podle funkčnosti

Univerzální mikroprocesory jsou navrženy tak, aby řešily širokou škálu problémů zpracování nejrůznějších informací. Jejich hlavní oblastí použití jsou osobní počítače, pracovní stanice, servery a další digitální systémy pro hromadné použití.

Specializované mikroprocesory jsou zaměřeny na řešení konkrétních problémů správy různých objektů. Obsahují další mikroobvody (rozhraní), které poskytují specializované aplikace. Mají speciální design, zvýšenou spolehlivost.

Mikrokontroléry jsou specializované mikroprocesory, které jsou zaměřeny na implementaci řídicích zařízení zabudovaných do nejrůznějších zařízení. Charakteristickým rysem struktury mikrokontrolérů je umístění vnitřní paměti a velké sady periferních zařízení na stejném čipu s centrálním procesorem.

Digitální signálové procesory (DSP) představují třídu specializovaných mikroprocesorů zaměřených na číslicové zpracování příchozích analogových signálů. Specifickým rysem algoritmů zpracování analogového signálu je potřeba postupně provádět řadu příkazů násobení-sčítání s akumulací mezivýsledku v registru akumulátoru. Proto je architektura DSP zaměřena na implementaci rychlého provádění operací tohoto druhu. Instrukční sada těchto procesorů obsahuje speciální instrukce MAC (Multiplikace s akumulací ), které tyto operace provádějí.

Architektura procesoru je komplex jeho hardwaru a softwaru poskytovaný uživateli. Tento obecný koncept zahrnuje soubor softwarově přístupných registrů a výkonných (provozních) zařízení, systém základních příkazů a metod adresování, objem a strukturu adresovatelné paměti, typy a způsoby zpracování přerušení.

Při popisu architektury a činnosti procesoru se obvykle používá jeho reprezentace ve formě sady softwarově přístupných registrů, které tvoří rejstřík nebo softwarový model. Tyto registry obsahují zpracovaná data (operandy) a řídicí informace. V souladu s tím model registru zahrnuje skupina registrů pro všeobecné použití, zaměstnanců pro ukládání operandů a skupiny servisní registry, poskytování kontroly nad prováděním programu a provozním režimem procesoru, organizace přístupu do paměti (ochrana paměti, organizace segmentů a stránek atd.).

Univerzální registry tvoří RRAM - vnitřní registrovou paměť procesoru. Složení a počet servisních registrů je určeno architekturou mikroprocesoru. Obvykle mezi ně patří:

Počítadlo programů PC (nebo CS + IP v architektuře mikroprocesorů Intel);

Stavový registr SR (nebo EFLAGS);

Řídicí registry režimu procesoruČR (kontrolní registr);

Registry, které implementují organizaci paměti segmentů a stránek;

Registry, které zajišťují ladění programu a testování procesoru.

Kromě toho různé modely mikroprocesorů obsahují řadu dalších specializovaných registrů.

Složení zařízení a bloků obsažených ve struktuře mikroprocesoru a implementované mechanismy jejich interakce jsou určeny funkčním účelem a rozsahem mikroprocesoru.

Architektura a struktura mikroprocesoru spolu úzce souvisí. Implementace určitých architektonických prvků vyžaduje zavedení potřebného hardwaru (zařízení a bloků) do struktury mikroprocesoru a zajištění vhodných mechanismů pro jejich společné fungování. V moderních mikroprocesorech jsou implementovány následující možnosti architektury.

CISC ( KomplexNávodSouborPočítač) - architektura je implementována v mnoha typech mikroprocesorů, které provádějí velkou sadu víceformátových instrukcí pomocí četných metod adresování. Provádějí více než 200 instrukcí různé složitosti, které se pohybují ve velikosti od 1 do 15 bajtů a poskytují více než 10 různých metod adresování. Taková široká škála prováděných příkazů a metod adresování umožňuje programátorovi implementovat nejúčinnější algoritmy pro řešení různých problémů.

RISC ( SníženáNávodSouborPočítač) - architektura se vyznačuje použitím omezené sady příkazů pevného formátu. Moderní RISC -procesory obvykle implementují asi 100 instrukcí, které mají pevný formát o délce 4 bajtů. Výrazně se také snižuje počet používaných metod adresování. Obvykle v RISC -procesory, všechny příkazy zpracování dat se provádějí pouze s registrem nebo přímou adresou.

VLIW ( VelmiVelkýNávodSlovo) - architektura se objevila poměrně nedávno - v 90. letech 20. století. Jeho zvláštností je použití velmi dlouhých příkazů (až 128 bitů a více), jejichž jednotlivá pole obsahují kódy umožňující provádění různých operací. Jeden příkaz tedy způsobí paralelní provádění několika operací v různých provozních zařízeních obsažených ve struktuře mikroprocesoru.

Kromě sady příkazů, které se mají provést, a metod adresování je důležitým architektonickým prvkem mikroprocesorů použitá možnost implementace paměti a organizace načítání příkazů a dat. Podle těchto charakteristik se liší procesory s architekturou Princeton a Harvard.

Princetonská architektura , která je často nazývána Von Neumannovou architekturou, se vyznačuje využitím sdílené paměti RAM pro ukládání programů, dat a také pro organizaci zásobníku. Pro přístup k této paměti slouží společná systémová sběrnice, přes kterou vstupují do procesoru příkazy i data. Tato architektura má řadu důležitých výhod. Přítomnost sdílené paměti umožňuje rychle přerozdělit její objem pro ukládání samostatných polí příkazů, dat a implementace zásobníku v závislosti na řešených úlohách.

Harvardská architektura vyznačující se fyzickým oddělením paměti instrukcí (programů) a paměti dat. Jeho původní verze také používala samostatný zásobník pro ukládání obsahu programového čítače, který poskytoval možnost spouštět vnořené podprogramy. Každá paměť je připojena k procesoru samostatnou sběrnicí, která umožňuje současné čtení a zápis dat při provádění aktuálního příkazu pro načtení a dekódování dalšího příkazu. Díky tomuto oddělení příkazových a datových toků a kombinaci jejich operací načítání je realizován vyšší výkon než při použití architektury Princeton.

Závěr:

Můžeme tedy dojít k závěru, že mikroprocesory jsou klasifikovány podle funkčních charakteristik, organizace architektur, organizace datové a programové paměti, sady spustitelných příkazů a metod adresování, stejně jako datové kapacity, adresování a řízení.

­ Bezpečnostní otázky:

1 Co je to mikroprocesor?

2 Jak jsou klasifikovány moderní mikroprocesory podle funkce?

3 Vyjmenujte možnosti pro architektury procesorů.

4 Vysvětlete funkce CISC architektury procesorů.

5 Vysvětlete vlastnosti architektury procesoru RISC.

Architektura mikroprocesoru

Režimy adresování

Aby mohl počítač komunikovat s různými moduly, musí mít prostředky pro identifikaci externích paměťových buněk, vnitřních paměťových buněk, registrů MP a registrů vstupních/výstupních zařízení. Každá z paměťových buněk má tedy přiřazenu adresu, tzn. jednoznačná kombinace bitů. Počet bitů určuje počet buněk, které mají být identifikovány. Počítač má obvykle různé adresní prostory pro paměť a registry MP a někdy - samostatné adresní prostory pro registry vstupních/výstupních zařízení a vnitřní paměť. Paměť navíc ukládá jak data, tak instrukce. Proto bylo pro počítače vyvinuto mnoho způsobů přístupu k paměti, nazývaných adresovací režimy.

Režim adresování paměti je postup nebo schéma pro převod adresových informací operandu na jeho prováděcí adresu.

Všechny metody adresování paměti lze rozdělit na:
1) přímá, když je výkonná adresa převzata přímo z příkazu nebo vypočtena pomocí hodnoty uvedené v příkazu a obsahu libovolného registru (přímé adresování, registr, báze, index atd.);
2) nepřímé, které předpokládá, že příkaz obsahuje hodnotu nepřímé adresy, tzn. adresy paměťové buňky, ve které se nachází konečná prováděcí adresa (nepřímé adresování).

Každý mikropočítač implementuje pouze určité režimy adresování, jejichž použití je zpravidla dáno architekturou mikropočítače.

Typy architektur

Existuje několik přístupů ke klasifikaci mikroprocesorů podle typu architektury. Existují tedy MP s architekturou CISC (Complete Instruction Set Computer), která se vyznačuje úplnou sadou instrukcí, a architekturou RISC (Reduce Instruction Set Computer), která definuje systém s redukovanou sadou příkazů stejného formátu, prováděných v jeden MP hodinový cyklus.

Definováním bitové hloubky jako hlavní charakteristiky MP se rozlišují následující typy architektury MP:
- s pevnou bitovou hloubkou a seznamem příkazů (jednočipové);
- s rozšiřitelnou kapacitou (sekční) a mikroprogramovým ovládáním.

Analýzou adresových prostorů programů a dat je určen MP s von Neumannovou architekturou (programová paměť a datová paměť jsou ve stejném prostoru a neexistují žádné znaky označující typ informace v paměťové buňce) a MP s Architektura Harvardské laboratoře (paměť programu a datová paměť jsou oddělené, mají své vlastní adresní prostory a způsoby, jak k nim přistupovat).

Podrobněji se podíváme na hlavní typy architektonických řešení, zdůrazníme souvislost s metodami adresování paměti.
1. Architektura registru je určena přítomností dostatečně velkého souboru registru uvnitř MP. Instrukce mohou přistupovat k operandům umístěným na jednom ze dvou paměťových médií: RAM nebo registry. Velikost registru je obvykle pevná a odpovídá velikosti slova fyzicky implementovaného v RAM. K jakémukoli registru lze přistupovat přímo, protože registry jsou reprezentovány jako pole úložných prvků - soubor registru. Typické je provádět aritmetické operace pouze v registru, přičemž instrukce obsahuje dva operandy (oba operandy v registru nebo jeden operand v registru a druhý v RAM).

K tomuto typu architektury patří mikroprocesor Zilog. Procesor Z80, duchovní dítě společnosti Zilog, měl kromě rozšířeného systému instrukcí, jednoho jmenovitého výkonu a schopnosti spouštět programy napsané pro i8080 architektonické přednosti.

Obrázek 2.5. Mikroprocesor Z80 od Zilog.

Kromě hlavní sady RON byla v krystalu implementována druhá sada podobných registrů. To značně zjednodušilo práci při volání podprogramů nebo obslužných rutin přerušení, protože programátor pro ně mohl použít alternativní sadu registrů a vyhnout se ukládání obsahu RON hlavního programu na zásobník pomocí operací PUSH. Do instrukčního systému byla navíc zařazena řada speciálních instrukcí zaměřených na zpracování jednotlivých bitů a pro podporu dynamické regenerace paměti byl do obvodu procesoru zaveden příslušný hardware. Z80 byl použit ve strojích Sinclair ZX, Sinclair Spectrum, Tandy TRS80.

Poslední možností je architektura s adresováním přes akumulátory (menší sada příkazů).

Motorola MP měl řadu významných výhod. Za prvé, krystal MC6800 vyžadoval pro provoz jeden jmenovitý zdroj napájení a systém příkazů se ukázal pro programátora jako velmi transparentní. Architektura MP měla také řadu funkcí.

Obrázek 2.6. Mikroprocesor MC6800 od Motoroly.

Mikroprocesor MC 6800 obsahoval dvě baterie a výsledek operace ALU bylo možné umístit do kterékoli z nich. Ale nejcennější vlastností struktury MC 6800 bylo automatické ukládání obsahu všech procesorových registrů na zásobníku při zpracování přerušení (Z80 k tomu vyžadoval několik PUSH příkazů). Procedura pro obnovu RON ze zásobníku byla provedena i hardwarově.

2. Architektura zásobníku umožňuje vytvořit paměťové pole s uspořádanou sekvencí záznamu a získávání informací.
Obecně platí, že příkazy jsou implicitně adresovány prvku zásobníku v horní části zásobníku nebo dvěma horním prvkům zásobníku.
3. Architektura MP orientovaná na RAM (typ z paměti do paměti) zajišťuje vysokou provozní rychlost a velkou informační kapacitu pracovních registrů a zásobníku, když jsou organizovány v RAM.
Tento typ architektury explicitně nedefinuje akumulátor, obecné registry nebo zásobník; Všechny instrukční operandy jsou adresovány do oblasti hlavní paměti.

Z hlediska důležitosti pro uživatele-programátora je architektura obecně chápána jako soubor následujících komponent a vlastností:
- bitová hloubka adres a dat;
- složení, názvy a účel softwarově přístupných registrů;
- formáty a příkazové systémy;
- režimy adresování paměti;
- metody strojové reprezentace dat různého typu;
- struktury adresního prostoru;
- způsob adresování vnějších zařízení a prostředky pro provádění vstupně/výstupních operací;
- třídy přerušení, vlastnosti iniciace a zpracování přerušení.




Nahoru