Sunteți pe pagina 1din 48

Universitatea din Craiova

Facultatea de Automatic, Calculatoare i Electronic


Catedra de Ingineria Calculatoarelor i Comunicaii

Arhitectura
Calculatoarelor

Concepte fundamentale
Structura unui calculator
Modul de funcionare

Ctlina Manca Dan Manca


catalina.mancas@yahoo.it dan.mancas@netdania.net
Calculatorul digital

Calculatoarele digitale sunt echipamemente complexe care


conin milioane de componente electronice elementare.

Un calculator digital reprezint un sistem ierarhic, format


din cteva subsisteme ce interacioneaz pn la
subsistemul cel mai de jos al componentelor electronice;
Avnd n vedere numrul foarte mare de entiti, numite la
ora actual calculator i proprietile foarte diferite ale
acestora, este practic imposibil s se formuleze o
definiie unic a acestei noiuni;
Potrivit diferitelor puncte de vedere se pot da diferite
definiii ale unui calculator numeric sau digital.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 2


Calculatorul digital. Definiii.
Definiia nr. 1:
Un calculator digital (numeric) este un sistem destinat
automatizrii calculelor informaiei discrete n conformitate
cu anumii algoritmi.
Definiia nr. 2:
Un calculator digital este o reuniune ntre ansamblul de
echipamente fizice care constituie HARDWARE-ul, ansamblul
de microprograme care constituie FIRMWARE-ul i ansamblul
de programe care constituie SOFTWARE-ul, ce permite
prelucrarea logic i aritmetic a informaiei discrete la o
vitez foarte mare (de ordinul milioanelor de operaii pe
secund) n conformitate cu algoritmii dai.
Definiia nr. 3:
Un calculator digital este un automat finit, deci un sistem cu
stare finit care prelucreaz cu o vitez foarte mare
informaia discret n conformitate cu algoritmii impui.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 3


Calculatorul digital. Caracteristici.
Din definiiile anterioare se pot desprinde cteva trsturi
comune specifice tuturor calculatoarelor:
Informaia este discret, datele sunt numerice;
Prelucrrile sunt complet automatizate;
Prelucrarea se face n conformitate cu algoritmii impui;
Viteza de prelucrare este foarte mare;
Natura prelucrrilor este aritmetic i logic.

Termenul de calculator digital sau numeric este foarte larg


de la microcalculatorele pe un singur cip la
supercalculatoare.
Diferenele ntre diferite calculatoare este dat de
mrime, pre de cost, performan, domeniul de
aplicabilitate i organizare.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 4


Studiul sistemelor de calcul
Studierea sistemelor de calcul se face pe 3
niveluri:
1. Arhitectura calculatoarelor se refer la atributele
unui sistem vzut de un programator, care au impact
direct asupra execuiei logice a unui program.
Arhitectura calculatorului se refer la comportamentul
unui sistem de calcul aa cum este vazut de un
programator, referindu-se la:
natura tipurilor de date;
operaiile executate;
organizarea memoriei;
setul de registre accesibile unui programator;
setul i formatul instruciunilor;
tehnicile de adresare;
mecanismele de I/O.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 5


Studiul sistemelor de calcul
2. Organizarea calculatoarelor se refer la unitile
operaionale i la interconectarea lor care realizeaz
specificaiile arhitecturale.
Atributele de organizare includ acele detalii Hardware
transparente pentru un programator, cum ar fi:
semnale de control;
detalierea structural a unor blocuri funcionale;
interfaa ntre calculator i periferice;
tehnologia de memorare;
frecvena de ceas etc.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 6


Studiul sistemelor de calcul
3. Implementarea calculatoarelor se refer la
Hardware, la structura fizic care include:
tehnici de proiectare logic;
aezarea pe circuite;
interconectarea fizic;
alimentarea;
metode de testare;
interfaa ntre semnale, etc.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 7


Principiul comenzii dup program
Modelul pe care se bazeaz majoritatea calculatoarelor
contemporane: John von Neumann;
Anterior: Principiul programului memorat sau
principiul comenzii dup program;
Structur: main cu program memorat;
Programul scris n cod main este memorat n memoria
calculatorului mpreun cu datele de prelucrat,
=> sunt posibile manipulri asupra programului n mod
asemntor cu prelucrarea datelor;
Conceptul de program memorat const n reprezentarea
algoritmilor necesari pentru rezolvarea unei probleme cu
ajutorul unei scheme logice care cuprinde dou tipuri de
operatori:
operatori de procesare;
operatori de secveniere.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 8


Principiul comenzii dup program
Operatorii de procesare specific modul de transformare a
datelor;
Operatorii de secveniere stabilesc succesiunea de execuie
a operatorilor de prelucrare;
Acest principiu poate fi implementat prin diferite scheme;
Cel mai rspndit model: principiul von Neumann de
comand dup program;
-> John von Neumann, 1945;
=> arhitectura von Neumann;
Trstura principal: proceduralitatea,
Orice problem trebuie prezentat calculatorului sub forma unei
secvene de operaii (program).

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 9


Principiile von Neumann
5 principii stau la baza definirii modelului von Neumann a
unui calculator numeric;
Scop: simplificarea proiectrii i implementrii unui
calculator;

1. Informaia n calculatorul digital este codificat binar:


- este reprezentat prin cifre binare numite bii (0 sau 1);
- n bii: un cuvnt:
n=8 bii => octetul sau byte;
n=16 bii => semicuvntul sau 2 bytes;
n=32 bii => cuvnt sau 4 bytes;
n=64 bii => dublucuvnt sau 8 bytes.

- un cuvnt: o dat -> cuvnt dat sau o comand ->


cuvnt de comand sau instruciune.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 10


Principiile von Neumann
2. Diferenierea ntre cuvntul dat i cuvntul instruciune
se face prin modul de utilizare (contextul de utilizare).

3. Cuvintele dat i comand sunt depuse n locaii de


memorie care se identific printr-un numr de locaie numit
adres.
0 1 (n-1) 0 1 (n-1)
0 0
1 1

cuvnt k Cuvnt nou
k

2m-1 2m-1

copie cuvnt Cuvnt nou

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 11


Principiile von Neumann
4. Algoritmul n execuie se reprezint sub forma unei succesiuni
de cuvinte de comand (instruciuni).
Instruciune: form general:
0 1.(L-1) 0 1.(k-1) 0 1(k-1)
OPCODE ADRESA1 ADRESAp

codul operaiei adresele operanzilor sau rezultatului operaiei


2 operaii 2 adrese diferite

5. Efectuarea calculelor corespunznd algoritmului problemei de


rezolvat este univoc determinat de execuia secvenial a
instruciunilor care constituie programul pentru algoritmul
implementat.
Prima instruciune executat dintr-un program corespunde adresei de
start a programului.
ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 12
Principiile von Neumann
Adresa urmtoarei instruciuni:
este determinat n mod automat de ctre CPU i specificat prin
adresa sa din memorie;
poate fi adresa secvenial urmtoare sau orice alt adres din
spaiul de adrese;
este determinat de un numrator de program (Program Counter
PC) pointer la adresa respectiv.

Definiie: Mulimea programelor acceptate de un calculator


se numete clasa funciilor realizabile de calculator;
Concluzie: proceduralitate;
Orice problem trebuie prezentat calculatorului ca o secven de
operaii, adic o secven de instruciuni.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 13


Structura de baz a unui calculator
n conformitate cu principiile Von Neumann;
Orice calculator numeric: un sistem format din mai multe
subsisteme sau uniti.
Acestea sunt organizate ntr-o structur general care este
aproape standardizat i corespunde modelului von Neumann.
Un calculator digital trebuie s conin 5 componente:
un mediu de intrare: care s asigure preluarea datelor sau
instruciunilor;
un mediu de memorare: n care se depoziteaz programul i
datele aferente;
un mediu de prelucrare: care asigur funciile de natur
aritmetic i logic pentru prelucrarea datelor;
un mediu de ieire: care s asigure extragerea rezultatelor ;
un mediu de control: capabil s interpreteze instruciunile extrase
din memorie i s controleze ntreg procesul de automatizare a
calculelor.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 14


Structura de baz a unui calculator
Structura fundamental a unui calculator digital
structura n 5 uniti:

1. Unitatea de Intrare (UI) Input Unit (IU);


2. Unitatea Logico-Aritmetic (ALU) Arithmetic and
Logic Unit;
3. Unitatea de Memorie (UM) Memory Unit (MU);
4. Unitatea de Ieire (UO) Output Unit (OU);
5. Unitatea de Control (UC) Control Unit (CU).

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 15


Structura de baz a unui calculator
Flux
Flux dede date
date

Flux
Flux dede date
date alternativ
alternativ
CPU = ALU + UC

Flux
Flux dede instruciuni
instructiuni Unitatea de
Comenzi
Linii desau linii de control
control Control
(UC)
Informatii
Linii de stare sau linii de stare
de stare

Unitatea
Unitatea de Unitatea de
Logico-
Intrare Iesire
Aritmetic
Date de (UI) (UO) Date de iesire
intrare si (ALU) sau rezultate
programe

Date
Instructiuni

DMA Unitatea de DMA


Memorie
(UM)

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 16


Funcionarea calculatorului digital
Datele i programele sunt introduse n calculator prin
intermediul UI;
Iniial: datele i programele erau transferate n UM prin
ALU;
CPU

Unitatea de Unitatea
Intrare Logico-Aritmetic
Date de
intrare i
(UI) (ALU)
programe

Unitatea de
Memorie
(UM)

DAR: transferul de date ctre UM este un proces lent ce


ngreuneaz activitatea CPU (ALU+UC);

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 17


Funcionarea calculatorului digital
Astzi: transferul se face prin DMA (Direct Memory
Access), astfel:
Unitatea de
Control
(UC)

Unitatea de Unitatea de
Intrare Ieire
Date de Date de
intrare i
(UI) DMA (UO) ieire i
programe rezultate

Unitatea de
Memorie
(UM)
ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 18
Funcionarea calculatorului digital
Datele de intrare i programele sunt introduse n
calculator prin intermediul UI;
UI informeaz DMA despre prezena datelor/programelor
la intrare;
DMA informeaz UC despre prezena datelor/programelor
la intrare;
UC d comand ctre DMA spre a iniia transferul de
date/programe;
DMA transmite comanda mai departe ctre UI;
UI pornete transferul datelor/programelor ctre DMA;
DMA nainteaz datele/programele ctre UM;
Analog transferul de date/rezultate UM-UO via DMA.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 19


Funcionarea calculatorului digital
Flux
Flux dede date
date
CPU = ALU + UC
Flux
Flux dede date
date alternativ
alternativ

Flux
Flux dede instruciuni
instructiuni Unitatea de
Control
Comenzi
Linii desau linii de control
control
(UC)
Informatii
Linii de stare sau linii de stare
de stare

Unitatea
Unitatea de Unitatea de
Logico-
Intrare Iesire
Aritmetic
Date de (UI) (UO) Date de iesire
intrare si (ALU) sau rezultate
programe

Date
Instructiuni

DMA Unitatea de DMA


Memorie
(UM)

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 20


Funcionarea calculatorului digital
Dup ce transferul de date/programe n UM a fost realizat,
UM notific UC;
UC transmite comanda ctre UM pentru a-i fi naintat
instruciunea n curs de completare;
UM transfer instruciunea la UC;
UC interpreteaz instruciunea (OPCODE + ADRESE) i:
Transmite comand la UM prin care cere ca operanzii
localizai la adresele specificate n corpul instruciunii s fie
transferai n ALU;
UM transfer operanzii n ALU;
UC d comand la ALU s efectueze operaia specificat n
OPCODE cu operanzii primii din UM;
Rezultatul operaiei este stocat n ALU, n registrul
Acumulator.
ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 21
Funcionarea calculatorului digital
Rezultatul din Acumulator (ALU) poate:
ramne n ALU spre a fi supus la o nou operaie iniiat de o
nou instruciune;
transferat i stocat n UM (drept rezultat al instruciunii
MOVE).
Rezultatul stocat n UM poate fi afiat de ctre UO prin
intermediul DMA;
Transferul de date/rezultate din UM ctre UO este realizat
ntr-un mod similar transferului UI-UM via DMA.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 22


Unitatea de intrare
CPU

Unitatea de
Control
(UC)

Unitatea
Unitatea de Unitatea de
Logico-
Intrare Iesire
Aritmetic
Date de (UI) (UO) Date de iesire
intrare si (ALU) sau rezultate
programe

Date
Instructiuni

DMA Unitatea de DMA


Memorie
(UM)

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 23


Unitatea de intrare
Face legtura dintre calculator i mediul exterior;
Permite introducerea datelor i programelor n calculator;
Dou moduri de funcionare:
Direct: prin intermediul tastaturii, mouse-ului, scanner-ului etc.;
mai simplu;
viteza de operare este mai mic.

Indirect: prin intermediul unui mediu intermediar prin care se


face citirea informaiilor: ex. cititoare de cartele, cititoare de band
perforat, de microfilme etc.;
proces: operator uman -> document ->
mediu intermediar -> cititor -> calculator;
rapid;
mult timp consumat la pregtirea datelor.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 24


Unitatea Logico-Aritmetic (ALU)
CPU

Unitatea de
Control
(UC)

Unitatea
Unitatea de Unitatea de
Logico-
Intrare Iesire
Aritmetic
Date de (UI) (UO) Date de iesire
intrare si (ALU) sau rezultate
programe

Date
Instructiuni

DMA Unitatea de DMA


Memorie
(UM)

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 25


Unitatea Logico-Aritmetic (ALU)
Parte component a Unitii Centrale de Procesare (CPU);

Singura unitate n care se genereaz informaie nou;


Prelucrrile sunt de natur logic i aritmetic;

Vitez ridicat;
Cea mai performant i cea mai productiv unitate din
calculator;

ALU este cel mai rapid, performant i productiv


bloc din calculator.

Criteriu de performan: # de adunri pe secund.


ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 26
Unitatea Logico-Aritmetic (ALU)
CPU

Unitatea de
Control
(UC)

Unitatea
Unitatea de Unitatea de
Logico-
Intrare Iesire
Aritmetic
Date de (UI) (UO) Date de iesire
intrare si (ALU) sau rezultate
programe

Date
Instructiuni

DMA Unitatea de DMA


Memorie
(UM)

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 27


Unitatea de Memorie (UM)
Stocheaz datele i programele;
3 funcii de baz:
1. Scriere (nregistrare sau Write);
2. Memorare (stocare sau conservare sau Store);
3. Citire (extragere sau Read).

Unitatea de memorie nu are rol de procesare (pstreaz


informaia fr s o altereze);
UM se caracterizeaz prin:
Capacitate: volumul de date ce sunt memorate (bii, bytes sau
cuvinte).
Uniti de msur: kilo(210), mega(220), giga(230), tera(240).
Timpul de acces: intervalul de timp ntre momentul cnd se d
comanda de citire i momentul n care data este disponibil.
Definete viteza de lucru a memoriei.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 28


Unitatea de Memorie (UM)
Caracteristicile unei memorii sunt:
Performana: timpul de acces, rata de transfer, etc.;
Tipul fizic (tehnologia de realizare): semiconductoare,
magnetic, optic, magneto-optic, etc.;
Unitatea de transfer: octetul, cuvntul, blocul;
Capacitatea: dimensiunea cuvntului, numrul de cuvinte;
Amplasarea: intern (principal), extern (secundar);
Modul de acces: secvenial, direct, aleator (random),
asociativ;
Organizarea;
Caracteristici fizice: volatil/nonvolatil, care se poate
sterge/ care nu se poate sterge, etc.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 29


Unitatea de Memorie (UM)
Memoria este organizat ca o structur ierarhic pe
nivele determinate de apropierea de CPU;
Principalele nivele ierarhice de memorie sunt:
memoria principal (memoria primar sau memoria
intern);
memoria secundar (memoria extern).

Aceste nivele se difereniaz prin:


tehnologia n care sunt fcute;
viteza de lucru;
capacitatea de memorare;
modul de administrare a funcionrii;
numrul de subnivele.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 30


Memoria principal (MP)
Memoria intern;

2 nivele:
Memoria superoperativ (MSO):
cea mai apropiat de procesor;
capacitate mic;
timp de acces foarte mic (de ordinul ns sau a zecilor de ns);
stocheaz instruciunile curente aflate n execuie, rezultatele
intermediare i datele aferente programului n execuie;
viteza de lucru este comparabil cu cea a CPU;
resurs scump a calculatorului;
n prezent CPU ncorporeaz MSO;
cea mai rspndit MSO este memoria CACHE.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 31


Memoria principal (MP)
Memoria operativ (MO):
conine programul (sau programele n cazul multiprogramrii)
care se execut i datele aferente;
capacitatea MO (de ordinul MB) este mai mare n comparaie cu
MSO;
timpul de acces este mai mare;
funcionarea MO se bazeaz pe tehnica accesului aleator
(Random Access Technique);
timpul necesar pentru accesarea oricrei locaii de memorie este
identic indiferent de adres;
n prezent este realizat folosind tehnologia semiconductoare
(memoriile RAM, SRAM, DRAM).

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 32


Memoria secundar (MS)
Memoria extern (nu face parte din CPU);
Unitatea central = CPU + MP;
MS este alctuit din dispozitive de stocare externe (HDD,
FDD, CD-ROM, DVD-ROM, etc);
Aceste tipuri de MS difer prin:
principiul de funionare;
mediul de stocare;
capacitate;
vitez de funcionare, etc.
Capacitate foarte mare (de ordinul MB, GB sau TB);
Timp de acces foarte mare (de ordinul s, ms) n
comparaie cu MP;
Destinat pentru stocarea de volume mari de programe i
date.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 33


Structura de baz a calculatorului(2)
Unitatea Centrala
Flux
Flux dede date
date

Flux CPU
Flux dede date
date alternativ
alternativ
Unitatea de
Control
Flux
Flux dede instruciuni
instructiuni
(UC)
Comenzi
Linii desau linii de control
control
Informatii
Linii de stare sau linii de stare
de stare
Unitatea
Unitatea de Unitatea de
Logico-
Intrare Iesire
Aritmetic
Date de (UI) (UO) Date de iesire
intrare si (ALU) sau rezultate
programe

Date
Instructiuni

Memorie
Superoperativa
(MSO)

Date

DMA Memorie DMA


Operativa
(MO)

MP
Date

Memorie
Secundara
(MS)

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 34


Structura de baz a calculatorului (1)
Flux
Flux dede date
date

Flux
Flux dede date
date alternativ
alternativ
CPU

Flux
Flux dede instruciuni
instructiuni Unitatea de
Comenzi
Linii desau linii de control
control Control
(UC)
Informatii
Linii de stare sau linii de stare
de stare

Unitatea
Unitatea de Unitatea de
Logico-
Intrare Iesire
Aritmetic
Date de (UI) (UO) Date de iesire
intrare si (ALU) sau rezultate
programe

Date
Instructiuni

DMA Unitatea de DMA


Memorie
(UM)

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 35


Unitatea de control (UC)
creierul calculatorului;
Rol de:
a superviza;
a monitoriza;
administra funcionarea tuturor unitilor din calculator,
inclusiv propria funcionare.
UC asigur automatizarea complet a procesului de calcul;
Parte component a CPU;
Alctuit din registre, numrtoare, divizoare de frecven,
decodificatoare, etc.;
Din punct de vedere conceptual UC-urile sunt de dou
feluri:
cablate;
microprogramate.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 36


Unitatea de control (UC)
UC stabilete funcia de baz curent determinat din
instruciunea curent aflat n execuie i din informaia de
stare primit de la subunitile implicate n execuie.
UC-ul implementeaz mecanismul fundamental de execuie
a unei instruciuni:
citete instruciunea curent din memorie (fie din MO, fie din
MSO);
o decodific (adic o interpreteaz) pentru a decide care este
funcia de executat, dup care;
activeaz semnalele de comand necesare pentru realizarea
funciei i apoi;
execut funcia.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 37


Structura de baz a calculatorului
Flux
Flux dede date
date

Flux
Flux dede date
date alternativ
alternativ
CPU

Flux
Flux dede instruciuni
instructiuni Unitatea de
Comenzi
Linii desau linii de control
control Control
(UC)
Informatii
Linii de stare sau linii de stare
de stare

Unitatea
Unitatea de Unitatea de
Logico-
Intrare Iesire
Aritmetic
Date de (UI) (UO) Date de iesire
intrare si (ALU) sau rezultate
programe

Date
Instructiuni

DMA Unitatea de DMA


Memorie
(UM)

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 38


Unitatea de ieire (UO)
Asigur comunicarea ntre calculator i mediul exterior;
Extragere rezultatele din calculator;
Dou moduri de lucru:
direct: prin intermediul display-ului sau monitorului,
imprimantei, plotter, etc.
indirect: atunci cnd se folosete un mediu intermediar cum
ar fi benzile de hrtie perforat, cartelele, etc. n acest caz se
vor folosi dispozitive specializate de tipul perforatoarelor de
cartele sau benzi, etc.
Unitile de intrare i de ieire se numesc global uniti de
I/O;
Ele constituie echipamentele periferice ale unui calculator;
Funcie de baz a unitilor I/O: comunicarea la distan
care include echipamente specializate pentru constituirea
de reele (modem, routere, bridge, etc).

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 39


Ciclul instruciune
Programul este stocat n memoria calculatorului;
Programul este format dintr-un set de instruciuni;
Aceste instruciuni sunt scrise n limbaj cod main, iar
programul se numete program n limbaj cod main.
Conform principiului von Neumann, programul este
executat secvenial, instruciune dup instruciune de
ctre CPU.
Definiie:

Ansamblul de operaii legate de realizarea unei


instruciuni se numete ciclu instruciune.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 40


Ciclul instruciune
Pentru execuia unei instruciuni trebuie realizate
urmtoarele faze:
Citirea instruciunii (FETCH) cod main din
memorie i tranferarea ei n CPU;
Executarea instruciunii (EXECUTE) de ctre
unitile funcionale ale calculatorului (n special de
ALU), adic generarea rezultatului.

Aceste faze se execut repetat n timpul rulrii unui


program;

O secven FETCH-EXECUTE pentru o instruciune


formeaz ciclul instruciune.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 41


Ciclul instruciune

FETCH EXECUTE

FETCH EXECUTE

FETCH EXECUTE

Ciclu Instruciune Ciclu Instruciune Ciclu Instruciune

Timp

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 42


Faza FETCH
Cuprinde urmtoarele subfaze:
1. CPU citete din memorie de la adresa specificat n registrul
numrtor de program PC instruciunea ce va fi executat i o
ncarc ntr-un registru din UC numit Registrul de
Instruciune (RI).

2. n UC instruciunea se mparte n dou cmpuri majore:


cmpul operaie (OPCODE), pe care l dirijeaz n
Registrul de Funcie (RF);
cmpul de adres (ADRESA), pe care l stocheaz n
Registrul de Adres (RA).

Instruciune:
0 1..(L-1) 0 1...(n-1)
OPCODE ADRESA

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 43


Faza FETCH
3. UC decodific OPCODE sau coninutul Registrului de Funcie;
=> interpretarea OPCODE de ctre UC;
4. UC incrementeaz numrtorul de program PC pentru a
specifica adresa urmtoarei instruciuni de executat;

Program Counter (PC) Instruction Pointer (IP)

Faza FETCH este obligatorie pentru orice instruciune, ea asigur


extragerea instruciunii curente din memorie i decodificare
acesteia;
Dup generarea adresei urmtoarei instruciuni faza FETCH se
ncheie i urmeaz faza EXECUTE.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 44


Faza EXECUTE
Faza EXECUTE este format din urmtoarele subfaze sau pai:
5. Folosind informaia din RA, UC trebuie s determine adresa
efectiv a operandului(sau ale operanzilor);
6. CPU citete data (datele) din memorie de la adresa (adresele)
calculat(e) ca adres(e) efectiv(e) i o (le) extrage ca fiind
operandul (operanzii).
=> FETCH DATA sau FETCH OPERAND.
Data este tranferat n ALU.
7. UC comand ALU s efectueze funcia sau operaia specificat
de OPCODE, prin procesarea operanzilor i determinarea
rezultatului.
=> faza de EXECUTE propriu-zis.
8. Rezultatul este memorat fie n memorie fie n registre speciale
ale CPU.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 45


Ciclul instruciune: faze i subfaze
FETCH
1
INSTRUCTION

Stocarea

Faza FETCH
2 instructiunii in RF
si RA

Decodificare
3
OPCODE

CICLUL INSTRUCTIUNE
Generare adresa
4 urmatoarei
instructiuni

Calculul adresei
5
operandului

Faza EXECUTE
6 FETCH DATA

EXECUTE
7
propriu-zis

Stocarea
8
rezultatului

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 46


Ciclul instruciune: faze i subfaze
Unele subfaze din ciclul instruciune pot lipsi pentru
anumite instruciuni.
Pentru instruciunile fr operanzi lipsesc paii 5 i 6. n
cazul instruciunilor cu operanzi multiplii paii 5 i 6 se
repet.
Pentru instruciunile de salt nu sunt necesari paii 4, 5, 8.
De asemenea n cazul instruciunilor de comparare,
rezultatul nu trebuie memorat, deci pasul 8 lipsete.
ntotdeauna faza FETCH este unic, n timp ce faza
EXECUTE prezint aspecte diverse, n funcie de
instruciunea concret ce trebuie executat. De aceea faza
EXECUTE poate fi realizat n diferite aranjamente ale
pailor si specifice clasei instruciune.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 47


Ciclul instruciune: faze i subfaze
Un calculator digital trebuie s parcurg mii, milioane sau
miliarde de ori de cicluri instruciune pentru a prelucra un
program.
Un ciclu instruciune se execut din punct de vederea al
unui CPU ntr-un ciclu main. Acest ciclu se msoar n
s sau ns.
Viteza de procesare se msoar n KHz, MHz sau GHz.
n cazul calculatoarelor moderne viteza se msoar n:
numrul instruciuni pe secund (IPS), => MIPS;
numrul de operaii n virgul mobil (FLOP), =>
KFLOP sau MFLOP.

ARHITECTURA CALCULATOARELOR - Concepte Fundamentale 48

S-ar putea să vă placă și