Sunteți pe pagina 1din 22

1. Explicai schema structurat a microprocesorului Pentium.

Pentium are 2 benzi de asamblare: u pipeline, care execut orice instruciune i v pipeline, care
poate executa doar instruciuni simple n virgul mobil. Reguli complicate determin dac
instruciunile sunt compatibile, astfel nct s poat fi executate paralel. Pentium folosete 2 memorii
cache de 8 kB, pentru cele mai frecvente coduri i date. Astfel se elimin necesitatea de a accesa
permanent memoria calculatorului. De asemenea microprocesorul are un buffer pentru decodificarea
anticipat a instruciunilor. Astfel sunt sesizate eventualele salturi nainte ca instruciunea s fie
trimise n banda de asamblare. Transmiterea din memoria cache se efectueaza pe o magistrala de 256
bii, ceea ce permite aducerea unor secvene de instruciuni cu o vitez mai mare dect viteza de
procesare. Pentium utilizeaz predicia salturilor (BTB), care stocheaz informaia despre ultimele
256 de salturi. Registrele generale sunt de 32 bii, dar magistralele sunt de 128 i 256 de bii pentru a
mri viteza transferurilor interne. Magistrala extern a fost extins la 64 de bii. Procesorul dispune
de tehnologia TLB (Translation Lookaside Buffer), care translateaz adresa liniar n fizic. Pentium
dispune i de un controler avansat de ntreruperi (APIC advanced programmable interrupt con.)

2. Explicai mecanismul prediciei adreselor salturilor (BTB).

Mecanismul prediciei salturilor este un concept ntilnit la majoritatea arhitecturilor performante de


calculatoare i a microprocesoarelor de vitez ridicat. Acest concept permite procesoarelor permite
decodificarea instruciunilor de dup cele de salt pentru a nu goli calea de date n banda de
asamblare la execuia instruciunilor de salt. Unitatea de extragere i decodificare a instruciunilor
utilizeaz un algoritm de predicie optimizat pentru anticiparea direciei fluxului de instruciuni prin
nivele multiple de salturi, apeluri la proceduri i reveniri din proceduri.

3. Explicai analiza dinamic a fluxului de date

Analiza dinamic a fluxului de date implic analiza n timp real a fluxului datelor prin procesor
pentru a determina dependena datelor i a registrelor i pentru a detecta posibilitatea execuiei
instruciunilor ntr-o ordine diferit de cea specificat n program. Unitatea de expediere i execuie
a instruciunilor poate monitoriza simultan mai multe instruciuni i poate executa aceste instruciuni
ntr-o ordine n care se optimizeaz utilizarea unitilor multiple de execuie ale micro arhitecturii,
meninnd n acelai timp integritatea datelor asupra crora se opereaz. Aceast ordine de execuie
asigur ocuparea unitilor de execuie chiar i atunci cnd apar dependene ntre datele
instrunciunilor.

4. Explicai execuia speculativ

Execuia speculativ se refer la posibilitatea de a executa instruciuni aflate naintea instruciunii


adresate de contorul de program i de a furniza rezultatele n ordinea irului iniial de instruciuni.
Pentru ca execuia speculativ s fie posibil, microarhitectura familiei de procesoare P6 separ
expedierea i execuia instruciunilor de producerea rezultatelor. Unitatea de expediere i execuie a
instruciunilor utilizeaz analiza fluxului de date pentru a executa toate instruciunile din rezervorul
de instruciuni i de memora rezultatele n registre temporare. Unitatea de retragere a instruciunilor
caut apoi instruciunile care au fost executate i dac se gsesc de acestea, unitatea de retragere
depune rezultatele n memorie sau n registrele microarhitecturii i le retrage din coada de
instruciuni.
5. Explicai tehnologia Hyper-threading.
n microprocesor a fost implementat tehnologia Hyper-threading, ce permite execuia a
dou fluxuri de instruciuni de un singur nucleu fizic. Sistemul de operare, ce susine tehnologia
Hyper-threading, determin existena a dou procesoare logice (Logical procesor). Fizic, fiecrui
procesor logic i sunt alocate setul su de regitri i un controler de ntreruperi (APIC), iar restul
componentelor ale procesorului sunt utilizate n comun. Potrivit Intel, utilizarea acestei tehnologii,
majoreaz viteza de execuie cu 15-30%.

Urmtoarele elemente structurale implementate:

adoptarea unei arhitecturi Hyper Pipeline cu 20 de segmente de procesare a instruciunilor


(dublu fa de varianta P6), fapt ce a majorat frecvena procesorului de la 1,4 Ghz (3,2
Ghz n Pentium 4 Extreme Edition);
a fost extins memoria cache L2 - 512 KB i L3 pn la 2B (Pentium 4 Extreme Edition),
iar transferurile ntre memoriile cache au ajuns la o rat de transfer de 48 GB/s;
a fost introdus o memorie cache pentru microinstruciuni, volum 12000 microinstruciuni;
setul de instruciuni SSE2 a fost extins prin adugarea a 144 instruciuni SIMD noi i
extinderea limii datelor prelucrate la 128 bii (16 octei prelucrai n paralel);
a fost majorat rata de transfer ntre microprocesor i controlerul memoriei la 3,2 GB/s (La
P6 maximum 1,06 GB/s).
proces tehnologic utilizat de 130 nm.

6. Explicai Tehnologia Macro Fusion

Tehnologia Macro Fusion const n fuziunea a dou instruciuni x86 (i cteva microinstruciuni x86
Fusion) ntr-una singur. Unele perechi de instruciuni (de exemplu compararea i de salt
condiionat) la decodificare pot fi fuzionate i utilizate ulterior ca o singur microinstruciune. Fr
utilizarea tehnologiei Macro Fusion, procesorul (cu 4 UE) poate decodifica pn la 4 instruciuni.
Macro Fusion permite fuzionarea a dou dintre ele. Astfel, microprocesorul poate decodifica 5
instruciuni.

7. Explicai Tehnologia Turbo Boost

Tehnologia Turbo Boost permite automat ca nucleele procesorului s poat funciona cu o frecven
mai nalt dect cea nominal, doar dac procesorul lucreaz n cadrul limitelor de putere, curent i
temperatur, conform TDP (Thermal Design Power).

8. Descriei modelul program IA-32.


Registre de uz general 36 32
Spatiul 2 -1(2 -1)
31 15 0
de
ax
eax adresare
ah al
i 486/ Pentium
bx
ebx Pentium PRO/II/III/IV
bh bl
cx Stiva
ecx ss:esp
ch cl
dx
edx 0
dh dl

cs
ebp bp
ss
Registre de
esi si
ds segment
edi di es
esp sp fs
gs
Registrele coprocesorului st(7)-st(0)
79 63 0
Registre de stare si control
st(0) mmx0
st(1) mmx1 Registrul de fanioane
st(2) mmx2 eflags flags
st(3) mmx3 31 15 0
Registrul indicator de instructiuni
st(4) mmx4
st(5) mmx5 eip ip
st(6) mmx6 31 15 0
st(7) mmx7
Registrele extensiilor MMX Registre de sistem
(mmx7-mm0)
(Pentium MMX/II-IV)

127

0
xmm0
xmm1
xmm2
xmm3
xmm4
xmm5
xmm6
xmm7
Registrele
e
x
t
e
n
s
ii
l
o
r
M
M
X

i
n

v
i
r
g
u
l
a

m
o
b
il
a
(
P
e
n
ti
u
m

I
I
I
/
I
V
)

Figura 5.1 Modelul program


IA-32

Tabelul 5.1

RF Fanionul reluare 16 Se folosete la prelucrarea ntreruperilor provenite de la


(Resume Flag) registrul de reglare

VM Fanionul 17 Indicatorul funcionrii microprocesorului n mod virtual


modului virtual 8086:
8086 (Virtual
1 microprocesorul funcioneaz n modul virtual 8086
8086 Mode)
AC Fanionul 18 Destinat controlului alinierii la adresarea memoriei
alinierii

(Alignment
Check)
VIF Fanionul 19 n modul virtual este analogic fanionului if. Fanionul vif se
folosete mpreun cu fanionul vip. A fost introdus n
ntreruperii
Pentium.
Virtuale

VIP Fanionul 20 Se seteaz n 1 pentru indicarea ntreruperii amnate. Se


folosete n modul V mpreun cu fanionul vif. Introdus la
ntreruperii
Pentium.
Virtuale
amnate
ID Fanionul 21 Indic susinerea instruciunii cpuid.
identificrii
(IDentification

?9. Descriei modelul program AMDx86-64 (Intel EM64T).


Operanzii folosii de microprocesoare opereaz cu date de diferite tipuri:

Numere ntregi (cu sau fr semn) mrime de Byte, cuvnt (16 bii), cuvnt dublu (DWord, 32
bii), cuvnt din 4 Byte (QWord, 64 bii), cuvnt din10 Byte (TB, 80 bii) i cuvnt din 16
Byte (DQWord, 128 bii);
Bii, cmpuri de bii, iruri de bii;
Numere n virgul mobil (FP) mrime 32, 64, 80 bii.
Posibilitatea de a folosi operanzi lungi (64 i 128 bii) a aprut n microprocesoarele cu extensiile
MMX i XMM. Maximal de rapid microprocesorul proceseaz datele ce se afl n regitrii si
interni. Componena regitrilor la care au acces aplicaiile este prezentat n figura 5.2.

Notaiile regitrilor pe 64 bii ncep cu litera R.

Microprocesoarele includ un set de regitri de sistem ce nu sunt folosite de aplicaii (n figur nu


sunt prezentai). La ei se refer regitrii de adrese de sistem, regitrii de control, regitrii pentru
reglri i testri. Un ir din aceti regitri sunt specifici (Model-Specific Registers, MSR), ce sunt
destinate controlului reglrilor, monitorizrii productivitii, controlului efectuat de microprocesor,
gestionarea memoriei cache .a. Componena lor difer la diferite microprocesoare, accesul este
privilegiat.
Registre de uz general Registrele blocului FPU/MMX
63 31 15 0 79 63 0 127 Registrele blocului XMM 0
RAX eax ah ax al st(0) mmx0 xmm0
RBX ebx bh bx bl st(1) mmx1 xmm1
RCX ecx ch cx cl st(2) mmx2 xmm2
RDX edx dh dx dl st(3) mmx3 xmm3
RBP ebp bp st(4) mmx4 xmm4
RSI esi si st(5) mmx5 xmm5
RDI edi di st(6) mmx6 xmm6
RSP esp sp st(7) mmx7 xmm7
R8 15 0
xmm8
R9 cs xmm9
R10 xmm10
ss
R11 Registre de xmm11
R12 ds segment xmm12
R13 xmm13
R14 es
xmm14
R15 fs xmm15

gs

63 31 15 0
RFLAGS eflags flags Registrul de fanioane Registre de sistem
RIP eip ip Registrul idicator de instruciuni 8086/x86-64

Figura 5.2 Regitrii microprocesoarelor 86-64

10. Definii modurile de funcionare a microprocesoarele pe 32 bii.


Microprocesoarele pe 32 bii pot funciona n unul din urmtoarele moduri:

Modul de adresare real (real address mode), sau modul real (real mode), compatibil cu modul
8086. n acest mod este posibil adresarea pn la 1 MByte de memorie fizic.
Modul virtual protejat de adresare (protected virtual address mode), sau modul protejat
(protected mode). n acest mod microprocesorul conecteaz mecanismele de segmentare i
paginare. Mecanismul segmentrii permite accesarea la un spaiu de memorie virtual pn la
64 TByte. Practic este folosit numai mecanismul paginrii care asigur accesul fiecrei sarcini
(task) la 4 GByte memorie virtual. Implicit, adresele i operanzii sunt pe 32 bii. n modul
protejat microprocesorul poate executa instruciuni, inaccesibile n modul real, un ir de
instruciuni de transfer a controlului, prelucrare a ntreruperilor sunt executate n mod diferit
de modul real.
Modul virtual 8086 (Virtual 8086 Mode, V86) este un mod deosebit al modului protejat, n
care microprocesorul funcioneaz ca 8086 (adresele i datele pe 16 bii). Pe un microprocesor,
n acest mod, pot fi executate n paralel cteva sarcini cu resurse izolate. Totodat adresarea
spaiului fizic de memorie este gestionat de mecanismele de segmentare i paginare.
ncercrile de a executa instruciuni nepermise, ieirea dup limitele spaiului de memorie i a
spaiului de intrare/ieire permis sunt controlate de sistemul de protecie. Mai efectiv este
modul virtual extins 8086 (Enhanced Virtual 8086 Mode, EV86) n care virtualizarea
ntreruperilor este optimizat.
n modul de gestiune a sistemului (System Management Mode, SMM) microprocesorul acceseaz
un spaiu de memorie izolat de alte moduri. Acest mod este folosit n scopuri de control i reglare.
De exemplu, invizibil sunt executate funciile de control asupra alimentrii, se emuleaz
adresrile la dispozitive inexistente (emularea tastaturii i mouse-lui PS/2 pentru usb
11.Definii modurile de funcionare a microprocesoarele pe 64 bii.
Pentru microprocesoarele 86-64 modurile enunate sunt grupate i grupa are denumire legacy
mode, dar a mai fost introdus un nou mod long mode cu dou submoduri:

Modul pe 64 bii (64-bit mode) acest mod susine adresarea virtual pe 64 bii i extensiile
registrelor pe 64 bii. n acest mod este folosit numai modelul plat de memorie (un segment
comun pentru cod, date i stiv). Implicit adresa este pe 64 bii, a operanzilor 32 bii, dar cu
prefixul (REX) pot fi definii operanzi pe 64 bii. A fost introdus un nou mod de adresare
relativ la indicatorul de instruciuni. Acest mod este folosit de sistemele de operare (SO) pe 64
bii la lansarea aplicaiilor pe 64 bii este setat de SO pentru segmentul de cod a unei sarcini;
Modul de compatibilitate (compatibility mode) permite SO s execute aplicaii pe 32 i 16 bii.

12.Explicai structura i destinaia blocului FPU (coprocesor) din modelul program al


microprocesoarelor x86-64.

Registrele blocului FPU sunt destinai executrii operaiilor aritmetice, calcului principalelor funcii
matematice (trigonometrice, exponente, logaritmi) .a. n diferite generaii de microprocesoare acest
bloc era numit FPU (Floating Point Unit- unitatea de prelucrare n virgul mobil) , NPX (Numeric
Processor extension extensie numeric a procesorului) sau coprocesor. Coprocesorul prelucreaz 7
tipuri de date: numere ntregi pe 16, 32, 64 bii; numere n virgul mobil pe 32, 64, 80 bii (format
FP) i 18 numere n cod binar-zecimal (BCD). Aplicarea coprocesorului accelereaz considerabil
viteza de calcul.

Registre de uz general Registrele blocului FPU/MMX


63 31 15 0 79 63 0 127 Registrele blocului XMM 0
RAX eax ah ax al st(0) mmx0 xmm0
RBX ebx bh bx bl st(1) mmx1 xmm1
RCX ecx ch cx cl st(2) mmx2 xmm2
RDX edx dh dx dl st(3) mmx3 xmm3
RBP ebp bp st(4) mmx4 xmm4
RSI esi si st(5) mmx5 xmm5
RDI edi di st(6) mmx6 xmm6

RSP esp sp st(7) mmx7 xmm7


R8 15 0
xmm8
R9 cs xmm9
R10 xmm10
ss
R11 Registre de xmm11
R12 ds segment xmm12
R13 xmm13
R14 es
xmm14

R15 fs xmm15

gs

63 31 15 0
RFLAGS eflags flags Registrul de fanioane Registre de sistem
RIP eip ip Registrul idicator de instruciuni 8086/x86-64

13. Explicai structura i destinaia blocului MMX din modelul program al


microprocesoarelor x86-64.
Tehnologia MMX este orientat aplicaiilor multimedia, grafica 2D/3D i comunicaiilor. Avantajul
principal al MMX const n prelucrarea concomitent a unui ir de date cu o instruciune conform
tehnologiei SIMD (Single Instruction Multiple Data). Tehnologia MMX prelucreaz noi tipuri de
date mpachetate n registre pe 64 bii: 8 Byte, 4 cuvinte, 2 cuvinte duble, cuvnt pe 64 bii. Aceste
date sunt prelucrate n registrele MMX0-MMX7, care reprezint 64 bii inferiori ai registrelor FPU
pe 80 bii.
14.Explicai structura i destinaia blocului XMM i extensiilor SSE din modelul program al
microprocesoarelor x86-64.
Extensiile SSE (Streaming SIMD Extensions) sunt destinate accelerrii prelucrrii fluxurilor
mari de date n virgul mobil (FP). Extensiile fluxurilor de date sunt realizate pe baza registrelor
blocului XMM (8 registre pe 128 bii la microprocesoarele pe 32 bii, 16 - la microprocesoarele x86-
64).

Registrele XMM prelucreaz urmtoarele tipuri de date:

4 numere n virgul mobil cu precizie unitar (32 bii);


2 numere n virgul mobil cu precizie dubl (64 bii);
Numere ntregi: 16 Byte, 8 cuvinte, 4 cuvinte duble sau 2 cuvinte pe 64bii (numai n SSE2) n
procesoarele Pentium III este aplicat setul SSE, n Pentium 4 SSE2 destinat pentru
prelucrarea datelor n grafica 3D, codificarea/decodificarea video, cifrarea datelor. Apoi a fost
aplicat i extensia SSE3, iar n procesaorele moderne i SSE4.2. Blocul XMM i seturile SSE1,
SSE2, SSE3 sunt aplicate i n microprocesoarele AMD

15. Definii noiunea "adresarea segmentat".


Exist deci dou modaliti principial diferite de a trata memoria:
n-
- Adresarea liniar, care presupune accesul n memorie n mod continuu de la adresa 0 la adresa 2
1
, unde "n" este numrul de bii ai unei adrese (sau, fizic, numrul de linii ai magistralei de adrese).

- Adresarea segmentat, n care memoria este divizat logic n poriuni numite segmente, n
interiorul crora adresarea este liniar. Orice localizare n memorie se face relativ la baza
segmentului iar fixarea fizic a bazei unui segment este transparent utilizatorului. Am prezentat
deja, pentru 8086, mecanismul segmentelor de dimesiune fix, noiunea de adres logic precum i
translatarea ei n adres fizic.

16. Explicai conceptul de memorie virtual.


Conceptul de memorie virtual se bazeaz pe ideea separrii memoriei logice a utilizatorului de cea
fizic i extinderea memoriei logice prin stocare imaginii sale pe hard disc. Fiecare program la
execuie, nu este obligatoriu s fie stocat ntreg n memoria RAM, ci doar o secven de cod i date,
executate la un moment dat. Apare, n mod firesc, ideea de a extinde spaiul de memorie logic, care
poate fi realizat cu mult mai mare dect memoria fizic. Acesta este principiul de baz al organizrii
memoriei virtuale.

17. Explicai conceptul "multitasking".


Un alt concept este acela de multiprocesare (concuren, multiprogramare, "multitasking") care se
refer la capacitatea calculatorului de a executa mai multe procese ("task-uri") simultan aceasta se
realizeaz prin comutarea, secvenial, de la o secven de instruciuni a unui proces (task) la alt
secven aparinnd altui proces i aa mai departe, apoi se comut din nou la prima secven etc.
Tot acest mecanism este transparent utilizatorului care are impresia desfaurrii simultane a mai
multor procese (aceasta poate nsemna, eventual, mai muli utilizatori, sau un singur utilizator care
are nevoie de mai multe procese simultan). Ideea nu trebuie s surprind: este firesc ca ntr-un
sistem cu o memorie virtual de mari dimensiuni (la Pentium ajunge la 64TB), organizat logic ntr-
o multitudine de segmente, s fie loc pentru mai multe procese.

18. Menionai trei aspecte ale mecanismului proteciei.


Controlul informaiei (coduri sau diverse tipuri de date);
Izolarea utilizatorilor unul fa de altul (protecia "inter-task");
Izolarea software-ului de sistem de cel de aplicaii (protecia "intra-task").

19. Explicai procedeul "swapping tasks".


Segmentarea memoriei i multiprocesarea ncurajeaz un procedeu de a rula procese ce au nevoie
de resurse importante de memorie, n memorii fizice cu mult mai reduse. Acest deziderat se
realizeaz prin procedeul denumit interschimbarea locului proceselor ("swapping tasks"), care
const n trimiterea provizorie n memorie a proceselor (sau a unor pri componente dintr-un
proces) din memoria intern n cea extern, dac acel proces (sau acea parte din el) nu este n
execuie la un moment dat. Schimbarea locului ntre memoria intern i cea extern se poate face de
cte ori este necesar pentru a menine continuu n memoria intern doar strictul necesar bunei
desfaurri a unei aciuni.

20. Structura adresei virtuale pentru PentiumIV.


Adresa virtual pentru pentium IV, ca i adresa logic, are pentru utilizator dou pri
componente:

adresa efectiv (sau offsetul dresei virtuale);


selectorul, care nlocuiete adresa segment.
Adresa efectiv este adresa n interiorul segmentului i utilizatorul trebuie s o conceap ca fiind
relativ la baza unui segment predefinit. Adresa efectiv este precizat de modul de adresare aferent
instruciunii care o utilizeaz.

Selectorul se afl, ca i n cazul adreselor logice, tot ntr-un registru segment. Noutatea const n
faptul c definirea segmentului asociat unui selector nu se mai face direct (ca n cazul
microprocesorului Intel 8086) ci prin mecanismul adresrii indirecte.

Microprocesorul are urmtoarele particulariti:

- Adresa virtual este o adres pe 48 de bii:


AV adr48

- Adresa efectiv este o adres pe 32 bii:


AE adr32
32
Aceasta impune dimensiunea maxim a unui segment la 2 B = 4 GB.

21.Explicai schema generrii adresei fizice n microprocesoarele pe 32 bii, n mod protejat.


n mod protejat adresa de baz se ncarc din descriptor, ce se afl ntr-un tabel de descriptori,
selectat de selectorul ce se afl n registrul de segment utilizat. Adresa fizic este format dup
translatarea adresei lineare cu ajutorul unitii de paginare. Adresa se plaseaz pe magistrala extern
a procesorului. Cnd unitatea de paginare este deconectat adresa fizic coincide cu cea linear.
Unitatea de paginare activat translateaz adresa linear n cea fizic ce localizeaz pagini de 4
KByte (2 sau 4 MB). Unitate de paginare poate fi activat numai n modul protejat.

22.Explicai schema generrii adresei fizice n microprocesoarele cu extensii pe 64 bii, n mod


pe 64 bii.
n modul pe 64 bii segmentarea nu se folosete : aplicaiile opereaz cu adrese virtuale lineare. Din
registrele de segment procesorul utilizeaz numai registrele CS, FS i GS. n descriptorul indicat de
CS sunt utilizate numai atributele: indicatorul modului pe 64 bii, implicit mrimea operandului i
nivelul de privilegii.

n microprocesoarele cu extensii pe 64 bii, adresa linear este limitat la 48 bii, iar adresa fizic
pn la 52 bii.

23.Explicai structura descriptorului (Pentium) (fig).


Descriptorul constituie elementul de baz n definirea infomiaiilor legate de segmentarea i
gestionarea memoriei virtuale precum i de mecanismul proteciilor proceselor. Descriptorii sunt
folosii pentru o coeren maxim n descrierea celor mai diferite entiti informaionale. Astfel,
exist urmtoarcle tipuri de descriptori: a) Descriptorii segmentelor care permit identificarea
segmentelor uzuale de lucru (de programe i/sau de date).

b) Descriptorii speciali de control care sunt, la rndul lor, de mai multe feluri: 1)
Descriptorii segmentelor de sistem, segmente care sunt folosite de microprocesor n
mecanismul gestionrii memoriei.
2) Descriptorii "segmentelor de stare a proceselor" prin care se poate implementa
mecanismul multiprocesrii.

3)Descriptorii "porilor" (Gate) folosii n mai multe tipuri de aciuni:

protecia multi-nivel, multiprocesarea, rspunsul la cererile de


ntreruperi.

Cei 8B ai descriptorului au urmtoarele semnificaii:

Octeii 0, 1 i nibble-ul inferior ai octetului 6, conin 20 bii din


LIMITA segmentului selectat.
Octeii 2, 3, 4 i 7 conin 32 bii din BAZA (adresa fizic a bazei) segmentului selectat.
Octetul 5 i nibble-ul superior ai octetului 6, este cmpul ATRIBUTE, cu diverse informaii
despre segment pe care le vom detalia n continuare.
n ceea ce privete cmpul ATRIBUTE, notm urmtoarele semnificaii (ncepnd cu octetul 5);

Bitul 7, notat cu P, are rolul de a indica dac segmentul este "prezent" n memoria fizic (P =
1) sau nu (P = 0).
Biii 6 i 5 formeaz "Nivelul de privilegiu al descriptorului" (DPL) i este folosit n
mecanismul proteciei multi-nivel.
Bitul 4, notat cu S, este folosit, aa cum artam deja, pentru a distinge ntre segmentele
normale de lucru (S=1) sau segmentele speciale de sistem (S=0).
n acest ultim caz, configuraia nibble-ului inferior este 0010 (informaie prezentat succint cu
codificarea tip = 2) care indic faptul c descriptorul definete n spaiul adreselor globale o LDT.

Pentru segmentele obinuite, semnificaia biilor inferiori este:

Bitul 3, notat cu E, indic un segment executabil (E=1), adic un segment de program, sau un
segment pentru date (E = 0).
n funcie de aceast ultim clasificare, urmtorii trei bii au semnificaii diferite:

a) Pentru segmentele de program:

Bitul 2, notat cu C, este folosit de mecanismul proteciei multi-nivel pentru a introduce o


excepie n modul de acces al acestui tip de segment.
Bitul 1, notat cu R, indic, pentru R = 1 c segmentul poate fi i citit nu numai executat.
Bitul 0, notat cu A, semnific "accesat". Ne vom opri puin mai n detaliu asupra acestui bit,
deoarece microprocesoarele Intel l folosesc n cadrul unui procedeu cu o aplicabilitate mult mai
general. Procedeul poart numele de Strategia "LRU- Least Recently Used " ("cel mai puin
utilizat") i ajut sistemul de operare s decid ce segment este mai puin utilizat pentru a fi trimis n
memoria extern a calculatorului, n ateptare. Astfel A este setat ori de cte ori se face referire la
descriptorul care l conine; periodic A este resetat de sistemul de operare, orice resetare efectiv
incrementnd un contor. Segmentul al crui contor asociat este minim va fi ales ca "victim" pentru
a atepta n memoria extern.
b) Pentru segmentele de date:

Bitul 2, notat acum cu ED (prescurtarea de la "expanded down"), indic dac segmentul de


date este folosit ca stiv.
- pentru ED= 0 - segment de date;

- pentru ED=1 - stiv.

Bitul 1, notat acum cu W, indic, pentru W = 1, dac segmentul de date poate fi i "nscris"
nu numai citit.
Bitul 0, notat cu A, are aceeai semnificaie ca i pentru segmentele de program, fiind folosit
n cadrul "Strategiei LRU".
Se impun cteva observaii:

Dimensiunea adresei fizice a bazei segmentului indic o locaie n harta memoriei fizice de 4
GB.
20
Cmpul LIMITA indic o dimensiune maxim de 2 = l M cuante de informaie. Numai c
aceast cuant poate fi octetul sau pagina (n dimensiune fix de 4 kB).
Acest tip de organizare a memoriei este indicat de bitul 7 al octetului 6, bit notat cu G
("granularitate"). Pentru G = 1, Pentium folosete mecanismul paginrii. Se observ c n cazul
granularitii pe octet segmentele au maximum 1 MB, iar n cazul granularitii pe pagin,
segmentele ating dimensiunea maxim de 4 GB.

Ceilali trei bii din octetul 6 au urmtoarele semnificaii:

Bitul 6, notat cu D/B (D pentru date i B pentru coduri), indic pentru D/B = 1 c se lucreaz
cu operanzi pe 32 de bii, cu toate modurile de adresare care i sunt caracteristice. Pentru D/B
= 0, se lucreaz cu operanzi pe 16 bii i cu segmente de maximum 64 kB.
Bitul 5 este 0 pentru compatibilitate cu descendenii familiei Intel.
Bitul 4, notat cu AVL este la dispoziia utilizatorului ("disponibil").

24. Explicai mecanismul translatrii adresei virtuale (Pentium) pentru spaiile adreselor
globale (TI=0) (fig).
Mecanismul de translatare pornete de la cele dou entiti informaionale din adresa virtual
(selector i adresa efectiv):

Selectorul furnizeaz, la rndul su, urmtoarele informaii:


1)Prin intermediul lui TI se identific tipul de tabel.
2)Cmpul INDEX este multiplicat cu 8 (un descriptor are 8B) i se obine poziia relativ fa
de baza tabelei, identificndu-se astfel un descriptor din tabel.
Din descriptor se extrage:

a)Adresa fizic a bazei segmentului ("BAZA") pe 4 octei.

b) Dimensiunea segmentului vizat ("LIMITA") pe 20 de bii.

Adresa efectiv se adun la BAZA obinut indirect cu ajutorul selectorului (aa cum artam
mai sus) obinndu-se astfel adresa fizic (AF) a informaiei din segmentul vizat. Concomitent
se verific dac dimensiunea prestabilit a segmentului nu este depit:
AE LIMITA

Mecanismul translatrii adresei virtuale (TI=1) este dat n


Figura 6.6.

Stabilirea bazei tabelei de descriptori depinde de tipul de


tabel: n spaiul adreselor globale sau locale.

n spaiul adreselor globale, GDT are o modalitate mai


simpl de definire: fiind unic, baza i lungimea sa sunt stocate
ntr-un registru intern al microprocesorului: "Registrul tabelei de
descriptori globali" (GDTR). Accesul la acest registru este
asigurat de instruciuni privilegiate, astfel nct un utilizator
obinuit s nu poat avea acces la redefinirea acestei
tabele (reamintim c GDT este folosit de toate procesele, inclusiv de sistemul de operare).

25. Explicai mecanismul paginrii (folosind adresa liniar) aplicat la Pentium (fig).
Mecanismul paginrii (pagini pe 4K) are urmtoarele elemente eseniale:

Se utilizeaz dou nivele de adresare indirect cu memoria, astfel nct, pn s se ajung la


pagina propriu-zis, se face o referin ntr-un "director" din care se selecteaz o "tabel a
paginilor".
Toate obiectele din memorie implicate (directorul i tabelele) sunt tratate la rndul lor ca nite
pagini speciale; deci au toate mrimea fix de 4 kB. Se pstreaz astfel principiul coerenei
informaiei n memorie (ca i n cazul segmentelor).
Att directorul ct i tabelele de pagini au structur uniform fiind formate din 1 k "elemente"
de cte 4 octei. Senmificaia informaiei din aceste elemente va fi detaliat n cadrul acestui
subcapitol. Ne limitm s menionm acum c aici se gsete adresa bazei tabelei i respectiv a
paginii selectate.
Orice adres a bazei unei tabele sau a unei pagini este dat pe 20 de bii, acetia constituind
partea mai semnificativ a adresei fizice vizate. Toate blocurile n memorie sunt "aliniate" din
4 kB n 4 kB, deci, automat cei mai puin semnificativi 12 bii ai adreselor fizice ale bazelor
sunt 0.
Adresa fizic a bazei directorului se afl ntr-unul din registrele de control ale
microprocesorului CR3 (Page Directory Physical Base Address) (desigur i aici cei mai puin
semnificativi 12 bii ai adresei sunt 0).

26. Explicai mecanismul memoriei cache (TLB) (fig).


Problema timpului necesar pentru accesul ntr-o pagin din memorie se rezolv folosind
principiul general al memoriei asociative cache. Pentru a elimina strile suplimentare impuse de
mecanismul paginrii, unitatea care se ocup de aceasta conine o astfel de memorie, adresabil prin
coninut, denumit TLB ("translation lookaside buffer"). Principiul este prezentat n figura 6.10.

Memoria conine cele mai frecvent utilizate 32 de elemente din director i tabelele paginilor. De cte
ori este necesar accesul ntr-o pagin, se verific nti TLB. Dac aici se gsete elementul vizat
(ceea ce se numete "cache hit"), translatarea se face citind adresa corespunztoare din TLB, fr
timpii adiionali de calcul i cutare n tabele succesive. Reactualizarea TLB se face ori de cte ori
nu se gasete elementul cerut ("cache miss"). Evident TLB este complet rennoit cnd CR3 este
ncrcat cu o nou adres de baz a directotiilui. Intel ne asigur c n 98% dintre referinele n
memorie, mecanismul de translatare este nlocuit cu simpla citire a adresei din TLB.

27. Destinaia Chipset.


Chipset-ul const din 2 circuite, fiecare cu destinaie special, notate - puntea de nord (North bridge)
i puntea de sud (South bridge). Chipset-ul conine diferite controllere ce interconecteaz
componentele de pe placa de sistem. Pe placa de baz modern Intel QM77, puntea de nord este
incorporat n circuitul microprocesorului.

28.Explicai principiul de funcionare a controllerului DMA (fig).


Controllerul DMA (DMA-direct memory access, acces direct la memorie) este un dispozitiv ce
asigur accesul direct la RAM a perifericelor, neutiliznd registrii interni ai microprocesorului.

Cererea de acces este formulat pe un terminal specializat denumit, de regul, "BUSRQ"


(cerere de magistral). Are prioritatea maxim i rspunsul ateapt doar terminarea ciclului main
curent.

Microprocesorul "nghea" ntreaga activitate intern; magistralele sale trec n "impedan nalt"
iar controlul transferului de informaie este preluat de controllerul DMA. Acesta faciliteaz
transferul informaiei direct ntre memorie i echipamente periferice

29.Definii noiunea interfa.


Cuplarea echipamentelor periferice la un sistem de calcul presupune adaptarea semnalelor
specifice fiecrui echipament periferic la semnalele de pe magistral si reglarea fluxului de date de
intrare/iesire ntre calculator si periferic i aceste funcii sunt efectuate de interfee.
30. Destinaia tunelului n arhitectura HT.
Tunel (Tunnel) dispozitiv cu 2 interfee HT; ele pot forma un lan (daisy chain), organiznd o
magistral logic. Lanul de dispozitive se conecteaz la host (microprocesorul cu Host bridge), ce
asigur configurarea tuturor dispozitivelor i gestioneaz funcionarea HT.
31. Descriei tehnologia Hyper Transport (topologia, tunel, cave, structura magistralei HT).
Tehnologia (arhitectura) HyperTransport (HT) a fost proiectat ca alternativ arhitecturii bazate pe
magistrale i puni. Principala inovaie nlocuirea conectrii prin intermediul magistralelor a
dispozitivelor periferice prin conectarea punct-la-punct (point-to-point) ce presupune transferuri de
date concomitent n ambele direcii ntre 2 noduri (Prin aceast tehnologie se majoreaz considerabil
viteza de transfer a datelor.Puntea de baz (host bridge) asigur legtura cu nucleul sistemului
microprocesorul i memoria. Controllerele perifericelor, ce necesit rate nalte de transfer de date
sunt realizate n form de tuneluri HT (HT Tunnel).
Caracteristicile principale ale tunelului sunt:
Interfaa HyperTransport pe 16 bii (Side A) ofer o rat maximal de transfer (lime de
band) pn la 6,4 GB/s;
Interfaa HyperTransport pe 8 bii (Side B) ofer o rat maximal de transfer pn la 1,6
GB/s.

32. Magistrala PCI (Configurarea; comentai diagrama transferului de date pe magistrala


PCI).
Dispozitivul PCI poate fi multifuncional, adic const din mai multe funcii. Fiecrei funcii se
atribuie un spaiu de configurare de 256 bytes (Standardul PCI determin pentru fiecare slot spaiu
de configurare de pn la 256 registre (pe 8 bits), ce nu se refer la spaiul de memorie i nici la
spaiul de intrare/ieire). Accesul la acestea registre se petrece n faze speciale ale magistralei
Configuration Read i Configuration Write. Numrul funciei (function number), n tranzaciile de
configurare este transmis pe liniile AD[10:8] (liniile AD[0:7] adreseaz registrii din interiorul
dispozitivului PCI). Deci dispozitivul poate ncorpora pn la 8 funcii. La configurare se adreseaz
funcia cu numrul 0.

La o magistral PCI pot fi conectate cteva dispozitive fiecare cu numrul su (device number).
n sistem pot fi cteva magistrale PCI, fiecare cu numrul su (PCI bus number). Magistralele se
numeroteaz consecutiv.

33. Magistrala serial PCI Express (topologia, structura legturii punct la punct, data
stripping, protocolul).
Topologia unui sistem bazat pe magistrala PCI Express conine un comutator i mai multe
conexiuni punct la punct cu dispozitivele de I/E. Nivelul fizic are la baz o legtur punct la punct
format din dou canale de comunicaie simplex, unul pentru transmisie i unul pentru recepie.
Legtura fizic de baz (Figura 7.10) utilizeaz 4 conexiuni ntre dou dispozitive, semnalele
transmise fiind difereniale i avnd tensiuni reduse (LVDS - Low Voltage Differential Signaling).

Nivelul legturii de date adaug numere de secven i coduri CRC acestor pachete pentru a
asigura un transfer fiabil. Semnalul de ceas este codificat mpreun cu datele pentru a obine rate de
transfer ridicate.
Figura 7.10 Structura legturii puct la punct

34. Structura magistralei ATA (IDE).


Standardul ATA prevede opiunea de funcionare a sistemului cu dou uniti conectate n lan. Prima
unitate (unitatea 0) este numit master, iar unitatea a doua (unitatea 1) este numit slave. O unitate
poate fi desemnat fie ca master, fie ca slave, prin aezarea unui jumper sau comutarea unui
microntreruptor.

Cablul utilizat (Figura 7.13) pentru conectarea unitilor IDE este un cablu cu 40 de fire,
prevzut cu trei conectori.

De obicei, cablul pleac de la conectorul IDE ctre o unitate, i apoi n continuare spre a doua
unitate (dispunere n lan). La unul din capete cablul este legat fie la conectorul pentru interfaa IDE
de pe placa de baz, fie la o plac adaptoare pentru interfaa IDE, care este amplasat ntr-unul din
conectorii plcii de baz.

35. Structura magistralei SATA.


Magistrala const din 7 fire (figura 7.14), dintre care 4 sunt informaionale i 3 pentru conectare la
mas (Ground). O pereche de fire se folosete pentru transferuri, iar alta pentru recepia datelor.
Informaia se codific dup metoda NRZ (Non Return to Zero).

36. Caracterizai magistrala SCSI.


Interfaa SCSI (Small Computer System Interface) SCSI nu este o interfa de disc, ci o interfa la
nivelul sistemelor, format dintr-o magistral care accept mai multe echipamente. Unul din aceste
echipamente, adaptorul cu sistemul gazd, funcioneaz ca o punte ntre magistrala SCSI i
magistrala sistemului. Magistrala SCSI nu comunic direct cu echipamentele periferice, cum sunt
unitile de discuri, ci cu controllerul care este inclus n aceste uniti.

O singur magistral SCSI poate accepta pn la 8 sau 16 uniti fizice, numite uniti SCSI,
dintre care una este adaptorul SCSI. Unitile fizice pot fi uniti de discuri fixe, uniti de band,
uniti CD-ROM, scanere, imprimante. Majoritatea sistemelor pot accepta pn la patru adaptoare
SCSI la sistemul gazd, fiecare din acestea permind cuplarea a pn la apte echipamente
periferice, conectate n lan.

SCSI este o interfa destinat n special staiilor de lucru i serverelor cu performane ridicate.
La prima versiune a interfeei SCSI, frecvena de ceas a magistralei era de 5 MHz, iar rata maxim
de transfer era de 5 MB/s. La versiunile actuale ale acestei interfee, frecvena de ceas a magistralei
este de 80 MHz sau 160 MHz, iar ratele maxime de transfer sunt de 320 MB/s, respectiv 640 MB/s.

Pe lng aceste versiuni paralele ale interfeei SCSI, a fost elaborat i o versiune serial a interfeei.
Aceast interfa SCSI serial, numit Serial Attached SCSI, va nlocui treptat interfaa SCSI
paralel. Att tehnologia SCSI paralel, ct i cea serial, sunt promovate de organizaia SCSI Trade
Association. Exist dou tipuri principale de interfee electrice SCSI: normale i difereniale.

37. Caracterizai magistrala serial SCSI (SAS).


Serial Attached SCSI (SAS) reprezint versiunea serial a interfeei SCSI. Aceasta utilizeaz un
protocol serial punct la punct i setul standard de comenzi SCSI. Interfaa serial SAS ofer
compatibilitate cu unitile de discuri SATA de generaia a doua, care se pot conecta la plci de baz
SAS. Totui, unitile de discuri SAS nu se pot conecta la plci de baz SATA. Interfaa SAS este o
arhitectur punct la punct, cu fiecare echipament conectat direct la un port SCSI n loc de a fi
conectat la o magistral partajat. Interfaa SAS utilizeaz semnale difereniale, codificarea 8b/10b a
datelor i cifrarea datelor pentru reducerea interferenelor electromagnetice. Se pot combina pn la
patru porturi cu aceeai adres ntr-un port de lime mai mare, care permite transferuri de date cu
pn la 24 Gbii/s.

38. Definii noiunea hub (USB).


hub (usb) Cablul de comunicaie const din 4 fire: dou sunt de date si dou pentru alimentare (5V
si 0V). USB asigur schimbul de date ntre host-calculatorul i diferite echipamente periferice.
Distribuirea vitezei de transfer a magistralei ntre echipamentele periferice sunt planificate de HOST
i se realizeaz de el cu ajutorul indicatoarelor (token). Magistrala permite conectarea, configurarea,
folosirea i deconectarea dispozitivelor n timpul lucrului hostulu

Un hub reprezinta un multiplicator a conectoarelor.

Hub-urile asigur puncte de conectare suplimentarea dispozitivelor la magistral


39. Definii noiunea compound device.
(compound device...dispozitive care combina si imbina citeva functii si cabluri)
Ca dispozitive (Device) USB pot fi hub-uri (distribuitoare), funcii sau dispozitive ce mbin i hub-uri
i funcii (compound device, figura 7.17). Hub-urile asigur puncte de conectare suplimentare a
dispozitivelor la magistral. Funciile USB sunt nite sisteme, de exemplu mouse ce susine USB.
Dispozitive care combin cteva funcii, (compound device, figura mai jos) de exemplu, keyboard cu
trackball ncorporat.

Elementele principale ale unui sistem care utilizeaz magistrala USB sunt dispozitivele USB,
cablurile USB i programele de sistem. Dispozitivele de pe magistrala USB sunt conectate fizic la
calculatorul gazd utiliznd o topologie sub form de stea , dup cum se ilustreaz n Figura 7.17.

Figura 7.17 Topologia fizic

40. Topologia magistralei USB pe nivele.


Topologia magistralei pe nivele
Figura 7.18 Topologia magistralei pe nivele

Centrul magistralei USB este nsi host-controlerul, care este conectat cu hub de rdcin (root
hub), de regula, prin unul din dou porturi ale sale

41. Divizarea sistemului USB pe trei nivele.


Sistema USB se divizeaz pe trei nivele cu anumite reguli de interaciune. Dispozitivul USB
conine interfaa (USB Bus Interface), componentele logice (USB Logical Device) i funcia (function).
Hostul tot este divizat n trei pri - interfaa (USB Host Controller), de sistem (USB System) i soft-ul
dispozitivului (Client SW). Fiecare parte are o destinaie predefinit, interaciunile logice i reale ntre
nivele sunt prezentate n fig 7.21.

Figura 7.21 - Interaciunea componentelor USB

42. Definii noiunea Canal (Pipe) i endpoint la USB.


Fiecare dispozitiv USB conine un set de puncte finale (Endpoint), cu care host-controlerul realizeaz
schimb de informaie. Endpoint se caracterizeaz cu urmtorii parametri:

frecvena de acces la magistral;


limea de band a canalului;
numrul Endpoint
cerine la prelucrarea erorilor
mrimea maximal a pachetelor transferate
tipul transferului
direcia transferului (pentru transferul izocronic

Fiecare tranzacie, const din 3 pachete i ncepe n momentul n care controlerul USB transmite,
pe baza unei planificri, un pachet antet (Token) care descrie tipul tranzaciei, direcia acesteia,
adresa dispozitivului USB i numrul punctului terminal. Sursa tranzaciei transmite apoi un pachet
de date (Data) coninnd datele care trebuie transferate, sau poate indica faptul c nu are date de
transmis prin faptul c pachetul de date nu conine informaii utile. Destinaia rspunde, n general,
cu un pachet de confirmare (Handshake) indicnd dac transferul s-a efectuat cu succes sau dac
punctul terminal nu este disponibil. Succesiunea pachetelor n tranzacii este prezentat n fig. 7.32

Figura 7.32 - Succesiunea pachetelor

43. Magistrala USB (Funcii i hub-uri; trei nivele ale sistemului USB; modelul de transfer a
datelor; structura tranzaciilor din 3 pachete).
Arhitectura USB permite patru tipuri de transferuri de date: de control, de ntrerupere, de date
voluminoase i izocrone.

Transferuri pe magistrala USB

Fiecare transfer pe magistral este iniiat de Host controler. Controlerul formeaz cadre n care
sunt plasate transferurile ctre fiecare dispozitiv conectat la magistrala USB. Pentru sincronizarea
ntregului sistem USB, calculatorul gazd transmite cte un pachet SOF (Start-of-Frame) la fiecare
interval de timp corespunztor nceputului unui cadru sau micro-cadru. Un cadru reprezint un
interval de timp de 1 ms 0,0005 ms i este definit pentru magistrala USB cu viteza normal (12
Mbii/s). Un micro-cadru reprezint un interval de timp de 125 s 0,0625 s i este definit pentru
magistrala USB cu viteza ridicat (480 Mbii/s). Un pachet SOF const dintr-un cmp de
sincronizare, un cmp PID i un cmp de 11 bii reprezentnd numrul cadrului, dup cum se
ilustreaz . Dup pachetul SOF urmeaz transferul ctre primul dispozitiv conectat la magistrala
USB(pachetele IN/OUT, DATA, HANDSHAKE, ca pe fig. 7.33), apoi se petrece schimbul de date
cu dispozitivul doi(pachetele IN/OUT, DATA, HANDSHAKE), pn nu este apelat ultimul
dispozitiv conectat la magistral. Dispozitivele lente pot fi apelate i peste cteva cadre. n
urmtorul cadru interogarea dispozitivelor se repet.

n cazul magistralei USB cu viteza ridicat, numrul cadrului va fi acelai pentru opt pachete
SOF consecutive, pe durata unei perioade de 1 ms.

44. Magistrala USB (Funcii i hub-uri; tipurile de transfer a datelor; formatul


pachetelor; structura transferului de cadre pe magistrala USB).
Ca dispozitive (Device) USB pot fi hub-uri (distribuitoare), funcii sau dispozitive ce
mbin i hub-uri i funcii (compound device, figura 7.17). Hub-urile asigur puncte de
conectare suplimentare a dispozitivelor la magistral. Funciile USB sunt nite sisteme, de
exemplu mouse ce susine USB. Dispozitive care combin cteva funcii, (compound device,
figura mai jos) de exemplu, keyboard cu trackball ncorporat. O funcie este un dispozitiv USB
care poate transmite
i/sau recepiona date sau informaii de control pe magistral. Acest dispozitiv trebuie s
rspund la cererile de tranzacie transmise de calculatorul gazd. O funcie este implementat n
mod obinuit ca un periferic separat conectat printr-un cablu la un port al unui hub. Un singur
dispozitiv fizic poate conine ns funcii multiple. De exemplu, o tastatur i un trackball pot fi
combinate ntr-un singur dispozitiv fizic. n cadrul unui asemenea dispozitiv compus, funciile
individuale sunt ataate la un hub, iar acest hub intern este conectat la magistrala USB.

Fiecare funcie conine informaii de configuraie care descriu posibilitile sale i


resursele necesare. Aceste informaii sunt transmise calculatorului gazd ca rspuns la o
tranzacie de control. naintea utilizrii unei funcii, aceasta trebuie configurat de calculatorul
gazd. Aceast configurare presupune alocarea unei limi de band n cadrul magistralei USB i
selectarea opiunilor specifice de configuraie.