Vous êtes sur la page 1sur 23

4.

PRINCIPIILE DE BAZ ALE UNEI ARHITECTURI TIPICE RISC

Caracteristici definitorii RISC

1. Unitatea de control este realizat prin logic de tip cablat


cablat

2. Instruc
Instruciunile se desf
desfoar ntr-
ntr-o singur stare

3. Numrul de instruc
instruciuni este mic (sub 128)

4. Dimensiunea este fix pentru formatul tuturor instruc


instruciunilor (uzual, de dimensiunea
operanzilor tipici)

5. Instruc
Instruciunilor au format uniform (nu mai mult de 4 tipuri de formate)

6. Numrul de moduri de adresare este mic (sub 4)

7. Exist un numr mare de registre generale,


generale, atribute
atribute de arhitectur (cel pu
puin 32)

8. Accesul memoriei se face numai cu instruc


instruciuni de transferuri simple de date ntre
(instruciuni tip LOAD
registre i memorie (instruc LOAD i STORE
STORE); opera
operaiile de prelucrarea
datelor folosesc numai registrele microprocesorului

Arhitectura microprocesoarelor Cap.4 1


Corneliu BURILEANU
4.1. Setul de registre

a) Set de registre simplu

b) Mai multe seturi de registre logice


(unic set de registre fizice
fizice)

Arhitectura microprocesoarelor Cap.4 2


Corneliu BURILEANU
c) Seturi de registre logice par
parial suprapuse (unic set de
registre fizice
fizice)

d) Mai multe seturi de registre


logice pentru multiprocesare
(mai multe seturi de registre
fizice)

Arhitectura microprocesoarelor Cap.4 3


Corneliu BURILEANU
Registrele microprocesoarelor Berkeley RISC I i II
II

a) Registrele disponibile pentru o procedur

Arhitectura microprocesoarelor Cap.4 4


Corneliu BURILEANU
b) Registrele fizice i registrele logice

Arhitectura microprocesoarelor Cap.4 5


Corneliu BURILEANU
Translatarea
Translatarea ntre registrele logice i cele fizice pentru familia Berkeley RISC :

R0 A0 B0 C0 ... H0

.
R9 A9 B9 C9 ... H9

R10 A10 H26

R15 A15 H31

R26 A26 B10

R31 A31 B15

etc.

Arhitectura microprocesoarelor Cap.4 6


Corneliu BURILEANU
Avantajele unui set mare de registre generale

1. Mrirea vitezei de procesare prin minimizarea accesului n memorie a operanzilor i/sau


rezultatelor

2. Realizarea structurilor de date de tip stiv


stiv sau coad hard
hard (n interiorul
microprocesorului)
3. Transferul parametrilor ntre programele apelante i cele apelate direct n interiorul
microprocesorului
4. Deservirea cererilor de ntrerupere i multiprocesarea pot fi realizate direct n interiorul
microprocesorului

5. Mrirea factorului de uniformitate


uniformitate a cipului (numr
(numr total de circuite / numr
numr de tipuri
de circuite: registre, UAL, numrtoare
numrtoare etc.)
etc.)

Arhitectura microprocesoarelor Cap.4 7


Corneliu BURILEANU
4.2. Setul de instruciuni i tehnicile de adresare

Tipuri de instruc
instruciuni RISC

Instruciuni pentru acces n memorie: LOAD / STORE


- Instruc

LOAD r, mem;
mem; r mem
STORE mem,
mem, r;
r; mem r

- Instruc
Instruciuni aritmetico-
aritmetico-logice

d s1 s 2

- Salturi propriu-
propriu-zise i apeluri de subprograme

- Instruc
Instruciuni de control al microprocesorului

Arhitectura microprocesoarelor Cap.4 8


Corneliu BURILEANU
Tipuri de moduri de adresare pentru RISC

- n registru: AF = rn

- direct (absolut
(absolut)) - de regul ntr-
ntr-o AF=adr
AF=adr
por
poriune a hr
hrii memoriei:

- indirect prin registru:


registru: AF = (r
(rn)

- relativ la baz,
baz, direct
direct:: AF = (r
(rn) + adr

- relativ la baz cu registru index:


index: AF = (r
(ri) + (r
(rj)

- relativ (la PC):


PC):
AF = (PC) + disp

Arhitectura microprocesoarelor Cap.4 9


Corneliu BURILEANU
4.3. Unitatea de control al microprocesorului
a) Formatul unei instruc
instruciuni pentru microprocesoarele Intel i386/i486/Pentium
i386/i486/Pentium
(ntre 1 i 15 octe
octei)
b) Formatul unei instruc
instruciuni pentru microprocesorul RISC Intel i860
(4 octe
octei, indiferent de instruc
instruciune)

Arhitectura microprocesoarelor Cap.4 10


Corneliu BURILEANU
A multiply instruction:

1 0 0 1 * multiplicand (d)
0 1 0 1 multiplier (m)
-----------------------------
1 0 0 1
0 0 0 0
1 0 0 1
0 0 0 0
----------------------------------------------------------------
0 0 1 0 1 1 0 1 result (r)

Arhitectura microprocesoarelor Cap.4 11


Corneliu BURILEANU
a) For a CISC microprocessor:
microprocessor:

1 0 0 1 * multiplicand (d)
0 1 0 1 multiplier (m)
-----------------------------
1 0 0 1
0 0 0 0
1 0 0 1
0 0 0 0
----------------------------------------------------------------
0 0 1 0 1 1 0 1 result (r)

result 0
for i = 1 to 8 do
if multiplier(i) = 1
result result + multiplicand
end_if
multiplicand multiplicand * 2
end_for

Arhitectura microprocesoarelor Cap.4 12


Corneliu BURILEANU
result 0
for i = 1 to 8 do
if multiplier(i) = 1
result result + multiplicand
end_if
multiplicand multiplicand * 2
end_for

multiplier multiplicand result


0101 00001001 00000000 reset
0101 00001001 add
00010010 shift
0101 00100100 shift
0101 00101101 add
01001000 shift
0101 10010000 shift

Arhitectura microprocesoarelor Cap.4 13


Corneliu BURILEANU
Arhitectura microprocesoarelor Cap.4 14
Corneliu BURILEANU
b) For a RISC microprocessor:
microprocessor:

d4 d3 d2 d1
m4 m3 m2 m1
---------------------------------------------------------------
d4&m1 d3&m1 d2&m1 d1&m1
d4&m2 d3&m2 d2&m2 d1&m2
d4&m3 d3&m3 d2&m3 d1&m3
d4&m4 d3&m4 d2&m4 d1&m4
------------------------------------------------------------------------------------------------------------------------------
r7 r6 r5 r4 r3 r2 r1

Arhitectura microprocesoarelor Cap.4 15


Corneliu BURILEANU
Arhitectura microprocesoarelor Cap.4 16
Corneliu BURILEANU
Arhitectura microprocesoarelor Cap.4 17
Corneliu BURILEANU
Desf
Desfurarea n timp a instruc
instruciunilor pentru microprocesoarele RISC

Arhitectura microprocesoarelor Cap.4 18


Corneliu BURILEANU
4.4. Caracteristici RISC la nivelul software

Optimizarea translatrii
translatrii registrelor logice n registre fizice pentru microprocesoarele RISC
a) diagrama timpilor de utilizare a registrelor logice A, B, C, D, E, F

Arhitectura microprocesoarelor Cap.4 19


Corneliu BURILEANU
culorilor utilizat pentru alocarea registrelor fizice R1, R2, R3
b) Graful culorilor

Arhitectura microprocesoarelor Cap.4 20


Corneliu BURILEANU
Avantajele RISC

1. Realizarea fizic n structuri VLSI:


- minimizarea ariei cipului dedicat Unit
Unitii de control al microprocesorului (sub 10%);
- mrirea ariei cipului disponibil pentru registre generale;
generale;
- mrirea factorului de uniformitate
uniformitate a cipului (numr
(numr total de circuite / numr
numr de
tipuri de circuite: registre,
registre, UAL,
UAL, numrtoare
numrtoare etc.);
etc.);
- posibilitatea utilizrii altor tehnologii dect cea a siliciului (ex. GaAs).
GaAs).

2. Mrirea vitezei de procesare:


procesare:
- prin realizarea cablat a prelucrrii datelor i a unit
unitii de control a
microprocesorului;
microprocesorului;

- prin utilizarea unui numr mare de registre interne se reduce traficul


traficul cu memoria;
memoria;

- prin suprapunerea execu


execuiei instruc
instruciunilor.

Arhitectura microprocesoarelor Cap.4 21


Corneliu BURILEANU
3. Scderea costului i mrirea fiabilit
fiabilitii:

- timp mai mic pentru proiectarea unit


nitii de control;

- timpul global de proiectare i punere n fabrica


fabricaie este considerabil mai mic dect
pentru CISC;
CISC;

- probabilitate mai mic de a avea erori de proiectare i u


uurin
urin de corectare.
corectare.

4. Suport pentru limbajele de nivel nalt:

- realizarea compilatoarelor este mai simpl (numr


(numr mic de op
opiuni n alegerea
instruc
instruciunilor);
- cre
creterea eficien
eficienei prin utilizarea extensiv a opera
operaiilor de prelucrare n interiorul
microprocesorului;
- tehnica ferestrelor de registre
registre uureaz implementarea apelrii subrutinelor
(procedurilor).

Arhitectura microprocesoarelor Cap.4 22


Corneliu BURILEANU
Dezavantajele RISC

1. Numrul redus de instruc


instruciuni; rezult
rezult c programele RISC sunt mai lungi dect cele CISC (n
medie cu 30%).
2. Numrul mare de registre interne:
interne:
- timp de acces mai mare;
- utilizarea registrelor pointer
pointer pentru ferestre complic selec
selecia unui registru la decodare;
- spa
spaiu mare pe cip;
- tehnici complicate de gestionare a ferestrelor.

3. Unitatea de control a microprocesorului realizat cablat


cablat este mai pu
puin flexibil i mult
mai greu de modificat.

4. Formatul redus al instruc


instruciunilor face imposibil folosirea unor adrese complete mari (de
pild,
pild, adrese fizice sau logice de 32 bi
bii).

Arhitectura microprocesoarelor Cap.4 23


Corneliu BURILEANU