You are on page 1of 3

Procesor - ide o fyzicky jedinú súčiastku, ktorú tvorí kremíková doštička

obsahujúca na malej ploche(niekoľko cm2) milióny tranzistorov.


Tieto na základe režimu spínania a vypínania riadia ostatné komponenty systému.
Jeho časti:
radič-číta inštrukcie programu a riadi ostatné obvody CPU alebo komunikuje s
komponentami
ALU-vykonáva matematické a logické operácie
registre-sú pamäťové miesta na krátkodobé uloženie práce spracovávaných údajov
matematický koprocesor-určený bol na zrýchlenie výpočtov, realizuje len výpočty s
pohyblivou desatinnou čiarkou,
od verzie CPU 80486 implementovaný ako súčasť CPU
CACHE pamäť-je rýchla vyrovnávacia pamäť, malej kapacity, ktorá slúži na zrýchlenie
toku údajov medzi CPU a operačnou pamäťou, resp. inými časťami PC.
CPU často žiada z RAM viac ráz za sebou tie isté údaje a tým sa umiestnia do
rýchlej cache,
čím sa znižuje čas potrebný ich získanie. Môže byť súčasťou CPU alebo aj nie (L1,
L2, L3).
L1 – najrýchlejšia pamäť s najmenšou kapacitou
L2 – je pomalšia ako L1, veľkosť väčšia
L3 – najväčšia, ale najpomalšia pamäť
taktovacia frekvencia – reprezentuje výkon a frekvenciu, udáva koľkokrát je CPU
schopný za sek. zmeniť svoj stav,
uvedená v GHz dnes, vždy je takmer násobkom frekvencie základnej dosky FSB
multiplikátor.
šírka slova – určená počtom bitov, ktoré je schopný CPU spracovať v rámci jednej
inštrukcie,
môže nadobúdať hodnoty 8, 16, 32, 64 – vyjadruje šírku vnútornej zbernice CPU.
Inštrukcia je príkaz pre PCU, ktorý určuje, aká operácia sa má vykonať a s ktorými
údajmi
(vykonávajú sa postupne za sebou tak, ako sú uložené v pamäti). Pre každú
inštrukciu existuje jej strojový kód –
jednoznačne priradené binárne číslo, ktoré je možné uložiť do pamäte.
Charakteristiky procesora –
– šírka dátovej zbernice (rozmer vonkajšej zbernice)–
zabezpečuje prenos údajov určených na komunikáciu CPU s okolím, udáva s v bitoch
(8, 16, 32, 64)
– čím je väčšia, tým viac údajov možno preniesť na 1 takt.
veľkosť adresovateľnej pamäte – udáva veľkosť operačnej pamäte, ktorú CPU je
schopný adresovať, závisí od šírky adresnej zbernice,
platí 2šírku zbernice CISC a RISC
úlohou CPU je vykonávanie programu, ktorý pozostáva z
postupnosti príkazov uložených v pamäti. Každý príkaz je
zložený z jednoduchších častí – inštrukcií. CPU príkazy
prečíta, dekóduje, vykoná, prípadne výsledok zapíše -
inštrukčný cyklus. Elementárne operácie, ktoré je schopný
CPU vykonať za 1 takt – mikroinštrukcie.
Prvé CPU – snažia sa mať na každý príkaz jednu inštrukciu – CISC (kompletná
inštrukčná sada), zoznam inštrukcií je uložený priamo v CPU, ktorý sa stará ako o
preklad, tak aj vykonanie.
Staršie CPU – realizácia jednej inštrukcie počas 1 taktu
platnosť končí u CPU 80486.
CPU 80586 – zvýšenie počtu inštrukčných kanálov na 2 takty – spracuje 2 inštrukcie
naraz v 1 takte.
Príklad 1: Postupnosť A = 10, B = 20, C = A + B
Príkaz A = 10 pôjde 1 kanálom, príkaz B = 20 po 2 kanály
Príklad 2: Postupnosť A = 10, B = A + 5
Druhý príkaz nemožno vykonať, kým nie je ukončený prvý
príkaz, čiže CPU je nútený čakať, celý výpočet ide cez
jeden kanál.
Spomínaný inštrukčný cyklus sa delí na strojové cykly,
pričom jeden strojový cyklus znamená jeden prístup do
pamäti. Strojový cyklus sa potom ďalej delí na strojové
takty.
Strojový cyklus – u pôvodných Intelov CPU 8051 sa skladá zo 6 stavov označovaných
ako S1 - S6. Každý stav je zložený z
dvoch periód, označovaných ako fáza P1 a P2. Teda strojový cyklus sa skladá z 12
periód oscilátora.
Výpočet doby strojového cyklu
Pro danú frekvenciu oscilátora f = 12 MHz (čo je štandardná frekvencia -
taktovacia),
sa dĺžka strojového cyklu vypočíta ako doba 12 periód oscilátora:
t(SC) = 12·T
pre f = 12 MHz je T = 1/12·106
SC = 12·T = 12/12·106 = 10-6 = 1 µs.
Pro frekvenciu oscilátora 12 MHz trvá jeden strojový cyklus dobu 1 µs.
Pre pravidelne sa opakujúcu postupnosť jednoduchých krokov výpočtu môžeme výhodne
využiť posuvný register
(shift register). V jednoduchom zapojení s časovačom sa budú v časových cykloch
(taktoch) striedať obsahy
4-bitového registra v poradí 1000, 0100, 0010, 0001.
- RISC (architektúra s obmedzenou sadou inštrukcií)- vychádza z predpokladu,
že na vykonanie cca 80%
operácií programu postačuje cca 20% inštrukcií. Procesor má zabudované len
základné inštrukcie, ktoré sú jednoduchšie a ľahšie,
preto sú rýchlejšie vykonateľné (bez mikroinštrukcií, ktoré sa používajú pri
procesoroch CISC).
Časové členenie spracovania inštrukcie
Celý inštrukčný cyklus delíme na niekoľko štádií, cez ktoré prebieha každé
spracovanie inštrukcie.
Typické členenie musí obsahovať prečítanie inštrukcie z pamäte, jej dekódovanie a
dekódovanie argumentov operácie,
vykonanie požadovanej operácie a uloženie výsledku.
Jednoduché inštrukcie procesora RISC ale aj CISC vyžadujú stále rovnakú postupnosť
operácií:
#1. prečítanie inštrukcie – procesor teda v tomto štádiu prečíta obsah operačnej
pamäte z adresy,
uloženej v PC a prečítaný operačný kód inštrukcie uloží do dekódovacej jednotky,
upraví tiež hodnotu PC (zväčší počítadlo o 1,
aby ukazovalo už na nasledujúcu inštrukciu).
2. dekódovanie - v štádiu dekódovania inštrukcie je dekódovaný operačný kód a podľa
neho je vybratá príslušná postupnosť mikroinštrukcií
(riadiacich slov).
Prvé dve štádiá budú rovnaké pre každý inštrukčný cyklus. Ďalší priebeh už závisí
od typu inštrukcie.

3. realizácia inštrukcie – tu je potrebné vyhľadať v pamäti podľa použitých


adresovacích režimov všetky argumenty operácie.
Adresovacie režimy sú známe z operačného kódu a operandy sa nachádzajú za operačným
kódom. Pre ich prečítanie použijeme opäť počítadlo PC
(a jeho hodnotu priebežne po použití zvyšujeme).
#4. zavedenie operandov z registrov – vykoná sa vlastná operácia, zakódovaná v
inštrukcii.
Trvanie štádia závisí od zložitosti operácie. V niektorých prípadoch môže byť
vynechané (napr. pre inštrukciu NOP),
niekedy však môže trvať aj niekoľko desiatok strojových cyklov (napr. pri násobení)
5. uloženie výsledkov do registra, pamäte - štádium zápisu výsledkov operácie
závisí od adresovacieho režimu uloženia výsledku.
Opäť sú operácie, ktoré výsledok uložiť nepotrebujú (resp. výsledok v štádiu
vykonania bol uložený v správnom výstupnom univerzálnom registri.
Rozdelenie inštrukčného cyklu na štádiá a ich počet je špecifický pre konkrétny
model procesora. Po ukončení
jedného inštrukčného cyklu začína ďalší štádiom čítania inštrukcie. Starším
riešením boli sekvenčné (nezreťazené) logické obvody,
ktoré spracovávali inštrukcie pomaly.
Jednotlivé stĺpce vyznačujú takty procesora. V riadkoch sú uvedené inštrukcie
príslušnej fázy spracovania. (PF, D1, D2, EX, WB).
Možnosťou, ako zvýšiť výkon procesora je používanie zreťazenia inštrukcií -
(pipelining). Prvýkrát u procesorov 80486.
Spracúvaná inštrukcia sa rozloží na niekoľko fáz, ktoré využívajú rôzne nezávislé
časti procesora.
Celý proces pripomína pásovú výrobu, kde do jednotlivých fáz vstupuje jeden výrobok
za druhým.
Rozdiel medzi klasickým a pipeline (zreťazeným) spracovaním inštrukcií je ten, že
pri klasickom sa prvá inštrukcia
spracuje počas piatich taktov. Ďalšia inštrukcia sa spracuje až počas taktov T6 –
T10. Pri zreťazenom spracovaní sa dve
inštrukcie spracujú počas taktov T1 – T6, čo je približne o polovicu kratší čas.

Procesor s jedným procesorom sa nazýva skalárny procesor. Procesor s viacerými


kanálmi pre spracovanie sa nazýva superskalárny procesor.
Vďaka technike, že sa štádiá zreťazenia rozdelia na viacero kanálov (fronty), je
možné, aby procesor počas jedného taktu dokázal spracovať
viac ako jednu inštrukciu.

You might also like