Sunteți pe pagina 1din 53

FII 1

&I.6.

SCURT TRECERE N REVIST
A ORGANIZRII
CALCULATORULUI
FII 2
&I.6.1.

PROCESORUL
FII 3
ncrcarea
instruciunii
Decodificarea
instruciunii
ncrcarea
operanzilor
Executarea
operaiei
Scrierea
rezultatului
. . .
II ID OI IE R
Ciclu de execuie
Faze de execuie a instruciunii
Procesorul
Ciclu de execuie
Fetch (cutare i ncrcare)
Decodificare
Execuie operaie
Arhitectura von Neumann
Modelul programului memorat
Nici o deosebire la nivel fizic ntre datele de prelucrat i instruciunile care le
prelucreaz
Deosebirile apar la execuie
Instruciunile se execut secvenial
Procesorul
Pipelining: descompunerea n mai muli pai a
execuiei fiecrei instruciuni
Execuie simultan, pe pai, a mai multor instruciuni
succesive decalate
Crete numrul de instruciuni executate n unitatea de timp
Secvenial: 1 instr. n 5 tacte, 2 instr. n 10 tacte,, k n 5k
Pipeline: 1 instr. n 5 tacte, 2 n 6 tacte,, k n k+4 tacte
Cel mult k n k+4 tacte !
timp
1 2 3 4 5 6 7 8 9 10
I1 I2 I3 I4 I5 I6 ... S2:ID
I1 I2 I3 I4 I5 I6 ... S1:II
I1 I2 I3 I4 I5 I6 ... S3:OI
I1 I2 I3 I4 I5 I6 ... S4:IE
I1 I2 I3 I4 I5 I6 ...
S5:R
Stadiu
FII 5
Procesorul
Alt mod de a reprezenta execuia n pipeline:

timp
1 2 3 4 5 6 7 8 9 10
II ID OI IE R I1
I2
II ID OI IE R
I3 II ID OI IE R
I4 II ID OI IE R
I5
II ID OI IE R
Instruciune
FII 6
Procesorul - Arhitecturi RISC/CISC
Reduced Instruction Set Computer
Are instruciunimain simple
Instruciunile mai complicate se obin din cele simple ca
secvene
Operanzii n regitrii procesorului
nu n memorie
Proiectarea se simplific
d.e., instruciunile au lungimi fixe
Complex Instruction Set Computer
Folosete instruciuni-main complexe
Operanzii pot fi n regitrii procesorului sau n memorie
Lungimea instruciunilor nu este fix
De obicei se folosete microprogramarea
o instruciune n limbaj main devine un program scris
cu instruciuni i mai simple
abia acestea din urm sunt executate prin construcie
(cablate) i nu ca un program
FII 7
Procesorul
Implementarea CISC
Implementarea RISC
FII 8
Procesorul
Microprogramare: dac apar modificri la nivelul
ISA, acestea se pot implementa schimbnd doar
microprogramul (nu circuitele)
FII 9
&I.6.2.

MEMORIA
FII 10
Memoria
ir ordonat de octei (nivel logic)
Fiecare octet are un predecesor (cu excepia
primului) i un succesor (cu excepia ultimului)
Nivel fizic: matrice de matrici; piste concentrice
Adresa absolut a unui octet: numrul
su de ordine din ir
memorie adresabil la nivel de octet
fiecare octet are o adres unic
numerotarea ncepe de la 0
adresa absolut indic poziia fa de primul
octet din memorie
FII 11
Alte tipuri de adrese
Adresa relativ a unui octet: indic poziia sa
fa de un octet de referin, altul dect primul
octet din memorie
Adresa absolut a octetului de referin se numete adres
de baz
De regul, de la adresa de baz ncepe zona rezervat
programului / datelor din care face parte octetul indicat prin
adres relativ
Adres simbolic: identificator alfanumeric
(nume) ataat adresei relative a unui octet
Exemplu: numele variabilelor
Corespondena adrese simbolice adrese relative este
fcut de compilator, printr-o tabel
FII 12
Msuri ale performanei memoriei

Timpul de acces: timpul dintre cerere i
terminarea operaiei asupra cuvntului
solicitat

Ciclu: timpul minim dintre dou cereri
succesive
FII 13
Memoria principal este de tip DRAM
Dynamic Random Access Memory
Dinamic: necesit remprosptare periodic (refresh)
la fiecare 8 milisecunde (rar)
Adresele sunt constituite din 2 jumti
memoria ca matrice bidimensional
RAS (Row Access Strobe)
CAS (Column Access Strobe)
Pentru memoria cache se utilizeaz SRAM
Static Random Access Memory
Nu necesit refresh
6 tranzistori / bit fa de 1 tranzistor /bit;
Dimensiunea fizic crete de 10 ori
Adresele nu sunt divizate n cele dou jumti
Memorii DRAM i SRAM
FII 14
Spaiul adreselor de memorie
Element esenial al arhitecturii unui
calculator
Dimensiunea sa este strns legat de
capacitatea magistralei de adrese
La Pentium, capacitatea busului de adrese
este de 32 de bii
Spaiul de adrese 4GB (2
32
)
FII 15
Memoria adrese absolute
FFFFFFFF
FFFFFFFE
FFFFFFFD
00000000
00000001
00000002
0
1
2
2
32
-1
Adresa
(n hexa)
Adresa (n
zecimal)
FII 16
Memoria
Unitatea de memorie comunicare cu exteriorul
Adresare
Date
Semnale de control
Read
Write
Unitate de
memorie
Date
Adresa
Read
Write
FII 17
Ciclul citire memorie (Read)
activitatea procesorului
1. Aducerea adresei de citire pe busul de adrese
(MAR)
2. Emiterea semnalului de control citire memorie (UC)
3. Ateptare pn cnd memoria gsete data de citit
E nevoie de starea de ateptare (wait state) dac
memoria utilizat este nceat
4. Citirea datei de pe busul de date (MDR)
5. Inactivarea semnalului de control citire memorie
(UC)
Pentium: o citire necesit trei cicluri de ceas (tacte)
Clock 1: paii 1 i 2
Clock 2: pasul 3
Clock 3 : paii 4 i 5.
FII 18
Ciclul scriere memorie (Write)
activitatea procesorului
1. Aducerea adresei de scriere pe busul de adrese
2. Activarea semnalului de control scriere memorie
3. Aducerea datei de scris pe busul de date
4. Ateptare pn cnd memoria efectueaz scrierea
starea de ateptare (wait state) dac memoria
este nceat
5. Inactivarea semnalului de control scriere
memorie.
La Pentium, o scriere necesit trei cicluri de ceas
Clock 1: paii 1 i 2
Clock 2: pasul 3
Clock 3 : paii 4 i 5
FII 19
Ordinea octeilor
1 0 1 1 0 1 0 0 1 0 0 1 1 1 0 0 1 0 1 1 0 1 0 1 0 0 0 0 1 0 0 1
Bitul cel mai
semnificativ
Bitul cel mai
puin
semnificativ
a) date pe 32 de bii - reprezentare liniar
0 0 0 0 1 0 0 1
1 0 1 1 0 1 0 1
1 0 0 1 1 1 0 0
1 0 1 1 0 1 0 0
. . .
. . .
1000
1001
1002
1003
b) Ordinea little-endian
Adresa
1 0 1 1 0 1 0 0
1 0 0 1 1 1 0 0
1 0 1 1 0 1 0 1
0 0 0 0 1 0 0 1
. . .
. . .
1000
1001
1002
1003
c) Ordinea big-endian
Adresa
FII 20
Ordinea octeilor
Adresa de nceput a unei date memorate
pe un numr de octei egal cu un multiplu
de 4 nu depinde de little / big - endian
Exemplul anterior: 1000
Dar ordinea n care se citete (MSB etc. sau
LSB etc.), depinde de aceast convenie
Little-endian - folosit la Pentium
Big-endian - implicit folosit la PowerPC
Procesoarele moderne permit configurarea
FII 21
Probleme la proiectare
TIMP: Memorii ncete
Problema: diferen mare de vitez ntre procesor i
memorie
fcnd procesorul s atepte cea mai mare parte a timpului
Soluie: Memoria cache (Cache memory)
Se folosete o mic memorie rapid
Memoria nceat pare a fi devenit rapid
Are efect datorit legilor localizrii
SPAIU: Limitri de capacitate
Cantitate limitat de memorie fizic n unitatea de
memorie
Tehnici de refolosire a zonelor de memorie prin suprapunere
n timpul rulrii programului (folosirea dinamic a memoriei)
gestionate de programator
Memoria virtual
Automatizeaz gestionarea suprapunerilor
Aduce i alte ctiguri
FII 22
Folosirea memoriilor cache
Magistrala sistem
Prelucrarea
instruciunii
Aritmetica
ntreag
Aritmetica n
virgul mobil
Cache pt.
instruciuni
Cache pt.
date
Unitatea de interfa cu
magistrala
FII 23
Memoria virtual
Un program se poate memora n zone
necontigue
de unde se aduc n fiecare moment doar
instruciunile / datele necesare n acel
moment (pagini)
Devin posibile spaii logice de adrese
(virtuale) orict de mari
Permite multiprogramarea pe scar mai
mare.
FII 24
Comunicare n mecanismul de
memorie virtual
UCP
Cache
Memorie
principal
Translare
adrese
Adres
virtual
Adres
fizic
Eec
Date
Succes
Regitri
Cache
Memorie
principal
Frame
(fizic)
Disc
Pagin
(logic)
FII 25
Proiecia memoriei virtuale
pe memoria fizic
Cores-
pondena
Memoria virtual
Memoria fizic
FII 26
&I.6.3.

INTRRI - IEIRI
FII 27
Intrri ieiri (Input/Output)
Perifericele de intrare ieire (I/O devices) au
interfaa gestionat de cte un I/O controller


Gestioneaz detalii legate de operaiile de nivel
jos (periferic)
FII 28
Intrri - ieiri
Mai multe feluri de a vedea I/O
I/O Proiectat pe memorie (memory-mapped I/O)
Citirile / scrierile sunt vzute ca i cnd s-ar face din / n
memorie
Aceleai semnale de control ca pentru citire/scriere din/n
memorie
Aa fac cele mai multe procesoare
I/O izolate
Spaiul de adrese pentru locaiile I/O difer de cel al
memoriei
Semnale de control R/W diferite de ale memoriei
Pentium folosete I/O izolate
dar i I/O proiectate pe memorie
FII 29
Comunicare cu perifericele
Dispozitiv I/O
Controller I/O
Date
Stare
Comanda
Magistral de adrese
Magistral de date
Magistral de control
M
a
g
i
s
t
r
a
l
a

s
i
s
t
e
m

FII 30
Modaliti de transmitere date I/O
Intrri ieiri programate (programmed I/O)
Programul folosete o bucl busy-wait
Se aplic transferurilor pentru care se tie de la nceput
momentul cnd vor aprea
Acces direct la memorie (Direct Memory Access -
DMA)
Un controller special (DMA controller) efectueaz
transferurile
I/O gestionate prin ntreruperi (Interrupt-driven I/O)
ntreruperile sunt folosite pentru a iniia i / sau termina
transferuri de date
Tehnic extrem de eficient
Utilizat pentru transferuri despre care nu se tie de la nceput cnd
vor aprea
FII 31
Interconexiuni
Componentele unui sistem de calcul sunt
interconectate prin magistrale (bus-uri)
Bus: mai multe fire pentru comunicaii de date
La diverse niveluri, se folosesc mai multe bus-uri
Magistrale on-chip
Interconecteaz UAL i regitrii
Magistralele A, B, i C din exemplul de la finalul cursului anterior
Exist bus de date i bus de adrese pentru legturi cu memoria
cache din chip
Magistrale interne
PCI, AGP, PCMCIA
Magistrale externe
Seriale, paralele, USB, IEEE 1394 (FireWire)
Conectori, porturi
FII 32
&I.7.

O PERSPECTIV ISTORIC
FII 33
Pre-generaii
Difference engine a lui Charles Babbage
Generaia tuburilor cu vid
Anii 1940 - 1950
Generaia tranzistorilor
Aproximativ anii 1950 - 1960
Generaia circuitelor integrate
1960 - 1970
Generaia VLSI
De la mijlocul anilor 70
ULSI etc.
FII 34
Evoluia tehnologic
Densitatea tranzistorilor
Pn prin 1990, se dubla la fiecare 1824 luni
De atunci, dublare la fiecare 2 ani i jumtate
Densitatea memoriei
Pn n 1990, quadruplare la fiecare 3 ani
De atunci, la fiecare 5 ani
Capacitile diverselor tipuri de discuri
La 3.5
La 2.5
La 1.8 (e.g., periferice portabile USB)
FII 35
Evoluia tehnologic: integrare
FII 36
Evoluia tehnologic (memorie)
FII 37
Evoluia tehnologic (discuri)
FII 38
Submultipli;
scara binar a multiplilor
(sub)multiplu Zecimal Binar
p (pico) 10
-12
-
n (nano) 10
-9
-
(micro) 10
-6
-
m (mili) 10
-3
-
Unitatea 1 (=10
0)
1 (=2
0
)
K (kilo) (10
3
) 2
10
M (mega) (10
6
)

2
20

G (giga) (10
9
)

2
30
T (tera) (10
12
) 2
40
P (peta) (10
15
)

2
50
CIRCUITE COMBINAIONALE I
FUNCII BOOLEENE
Capitolul al-II-lea
FII 40
&II.1. INTRODUCERE
FII 41
Semnal analogic i
semnal digital
Semnal analogic
continuu
dac a luat valorile a i b, atunci a luat i toate valorile
din [a,b].
Semnal digital
are cteva niveluri valori distincte i stabile
discontinuu
nu ia alte valori ()
Indiferent de fenomenul fizic aflat la baz
Calculator: semnal digital cu 2 niveluri
0 i 1
Modem: comunicare digital analogic.
Conducerea proceselor industriale
Folosirea reelelor telefonice analogice
FII 42
Aplicaii ale circuitelor digitale
Calculatoare
CPU, memorie, bus, periferice,
Reele, comunicaii
telefoane, modemuri, routere
Bunuri diverse
automobile, audio-video, jucrii,
Echipament pentru (alte) activiti tiinifice
Testare, msurare etc.
Lumea calculului se extinde mult dincolo de PC.
embedded systems
definiii restrnse ale calculului
FII 43
Circuite
Combinaionale:



Secveniale:

o
1

O
m


I
1
I
n
parte
combina-
ional
memorie
INTRRI
IEIRI
STRI
I
1
I
n
O
1
O
m
INTRRI
IEIRI
FII 44
Metoda cutiei negre
Pentru un circuit combinaional a crui
structur / funcionare nu este cunoscut:
se aplic fiecare combinaie posibil de valori ale
intrrilor;
se observ valorile ieirilor pentru fiecare astfel de
combinaie
se obine astfel un tabel de adevr.
Cum unui tabel de adevr i corespunde o
funcie boolean, rezult c fiecrui circuit
combinaional i corespunde o funcie
boolean.
FII 45
De la circuite la funcii booleene
Circuit combinaional tabel de adevr






n fixat: partea de intrare e ntotdeauna aceeai
ntotdeauna aceeai coresponden pentru un
circuit (determinist)
I
1
. I
n
O
1
. O
m

0 0.0 0 ? ?.? ?
0 0.0 1 ? ?.? ?
. . . . . .
1 1.1 1 ? ?.? ?
FII 46
&II.2. FUNCII BOOLEENE
FII 47
Structura algebric
Mulimea nevid B
Mulimea de operaii binare { + , }
O operaie unar { }
B conine cel puin dou elemente,
a, b, a b.
nchidere: a + b este n B
a b este n B
este n B
a
FII 48
Funcii booleene
B = {0,1}
f : B
n
B
m

funcie: n variabile, m valori
circuit: n intrri, m ieiri
Exist astfel de funcii.
n=1, m=1 : 4 funcii unare cu o valoare.

n
m 2
) 2 (
x f
0
(x) = 0 f
1
(x) = x f
2
(x)= f
3
(x) = 1
0 0 0 1 1
1 0 1 0 1
x
FII 49
0 X and Y
X
Y
X or Y not Y
not X
1
X
Y
F
X xor Y
X nor Y
X = Y
X nand Y
Funcii booleene
de dou variabile
16 funcii booleene complet definite de 2
variabile i cu o valoare.


x y
F
0
F
1
F
2
F
3
F
4
F
5
F
6
F
7
F
8
F
9
F
10
F
11
F
12
F
13
F
14
F
15
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
FII 50
Axiome i teoreme
n algebra boolean
X
x x
Identitate 1. X + 0 = X 1D. X 1 = X
Constante 2. X + 1 = 1 2D. X 0 = 0
Idempoten 3. X + X = X 3D. X X = X
Involuie 4. = X
Complementaritate 5. X + = 1 5D. X = 0
Comutativitate 6. X + Y = Y + X
6D. X Y = Y X
Asociativitate 7. (X + Y) + Z = X + (Y + Z)
7D. (X Y) Z = X (Y Z)
Distributivitate 8. X (Y + Z) = (X Y) + (X Z)
8D. X + (Y Z) = (X + Y) (X + Z)
Unificare 9. X Y + X = X
9D. (X + Y) (X + ) = X
Absorbie 10. X + X Y = X
10D. X (X + Y) = X
11. (X + ) Y = X Y
11D. (X ) + Y = X + Y
Y Y
Y Y
FII 51
Legile lui De Morgan
12.

12D.


Dualitate
... ... Y X Y X
... ... Y X Y X
FII 52
Forme normale
Plecnd de la tabelul de adevr al unei funcii,
se pot obine dou expresii diferite pentru acea
funcie:
Forma normal disjunctiv
Pentru fiecare 1 din ultima coloan, se scrie un
termen ce conine doar conjuncii
Termenii se leag prin disjuncie
Fiecare termen conine fiecare variabil a funciei
negat, dac n linia acelui 1 variabila apare cu valoarea 0
nenegat pentru 1
Exemplu: F
9
(x,y)=xy + xy
Forma normal conjunctiv: dual
Exemplu: F
9
(x,y)= (x+y)(x+y)
FII 53
Operaiile calculatorului
la nivel logic elementar
Pentru calculatoarele actuale, operaiile
elementare la nivelul circuitelor de baz
sunt operaiile logicii booleene
care simuleaz i operaiile aritmetice
elementare n baza 2.
Un circuit combinaional poate fi vzut ca
implementnd o funcie boolean.

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