Sunteți pe pagina 1din 8

Competene T.I.C.

curs 7

Unitatea central de procesare (UCP)sau microprocesorul

Imaginea unei plci de baz www.howstuffworks.com

Unitatea central de procesare (UCP) sau procesorul supervizeaz aproape orice


aciune n calculator:
1. citete din memorie pe rnd fiecare instruciune a programului, n ordinea de
execuie, o decodific (de exemplu, adunare), citete din memorie datele pe care
instruciunea trebuie s le prelucreze (termenii adunrii), efectueaz operaia
indicat de instruciune(cu ajutorul unitatii aritmetico-logice), scrie rezultatul n
memorie i trece la instruciunea urmtoare care poate fi i din alt program, dac
programul curent s-a terminat sau se ntrerupe; n acest din urm caz, informaiile
curente din procesor sunt salvate ntr-o stiv, pentru a putea fi restaurate la
reluarea programului ntrerupt. Cei trei actori implicai n acest proces,
microprocesorul, memoria i magistrala de memorie acioneaz la diferite viteze,
de aceea, cu ct una dintre componente are o vitez de acionare mai mare, cu att
va contribui mai mult la scurtarea timpului de execuie a unui program.
Procesorul este implicat i n alte tipuri de aciuni, cum sunt
2. furnizarea tactului de ctre orologiul central i
3. emiterea semnalelor de control pentru execuia instruciunilor.
Fiecare procesor (CPU) contine un ceas intern care produce si trimite semnale
electrice pe magistrala de control pentru a sincroniza operatiile sistemului.
Ceasul intern este un cristal de cuartz care vibreaz la aplicarea unei tensiuni electrice;
Semnalele alterneaz valori 0 si 1 cu o anumita frecven. Acest curent alternativ se
numete semnalul de ceas. Frecvena cu care se alterneaz aceste valori se numeste ciclu
de ceas sau perioada ceasului (clock cycle).
Frecvena ceasului este exprimat n cicluri/secund = Hertz (Hz) i este o msur a
performanei procesorului.
1/8

Competene T.I.C.

curs 7

Valoarea frecvenei este de ordinul milioanelor ntr-un PC, de aceea se msoar n


MHz
Frecventa de ceas - numarul de cicluri de ceas pe secunda.
O perioad de ceas este cel mai mic element de timp al procesorului.
Exemplu: Ceasul unui procesor la 300 de Mhz ticaie de exact 300.000.000 ori pe
secunda. Un ciclu de ceas al unui astfel de procesor are o durata de 1 / 300.000.000
secunde.
Ciclu de ceas - cea mai mica unitate de timp sesizabila de catre un procesor.
Cycles per Instruction (CPI) fiecare instructiune dureaza un anumit numar de cicluri
de ceas
Exemplu: instructiunea MOV dureaza intre 2 si 14 cicluri de ceas in functie de
natura operanzilor.
un procesor ruland la 800 Mhz executa o aceeasi instructiune mai repede decat
unul ruland la 300 Mhz durata ciclului de ceas fiind mai scurta.
Viteza actuala a unui sistem de calcul se msoar n:
 MIPS Milioane de instruciuni (intregi) pe secund;
 MFLOPS Milioane de instruciuni in virgul flotant pe secund.
Procesor
Frecventa
MIPS
de ceas
Intel Pentium Pro
200 Mhz
541
AMD Athlon
1.2 Ghz
3.561
Ultra SPARC Niagara 2
1.4 Ghz
22.400
Intel Polaris Prototype
5.6 Ghz
1.800.000
(80 nuclee)
Microprocesoare produc mai multe firme, printre care cea mai cunoscut este Intel;
alte firme productoare de microprocesoare sunt AMD, Cyrix, Motorola etc.

Imagini de la fabricarea cip-urilor www.howstuffworks.com.

2/8

Competene T.I.C.

curs 7

Microprocesor Motorola Dragonball


pentru calculatorul handheld Palm Pilot M100. www.howstuffworks.com

Un factor hotrtor n viteza de prelucrare a oricrui calculator l constituie performana


microprocesorului care este dat de urmtoarele caracteristici:
1. viteza de execuie a instruciunilor programelor,
2. memoria intern pe care o poate adresa direct
3. memoria cache integrat.
1. Viteza de execuie este dependent de lungimea cuvntului de memorie i viteza
ceasului.

lungimea cuvntului este determinat de capacitatea regitrilor


microprocesorului, capacitate corelat cu numrul de linii al magistralei
de date: 8, 16, 32, 64 bii.

frecvena ceasului (la primele microprocesoare, era de circa 4MHz, iar


acum a trecut de 3000 de MHz)
2. Memoria intern care o poate adresa direct este determinat de capacitatea
registrului de adrese, dependent de lungimea cuvntului i corelat cu numrul de linii al
magistralei de date; de exemplu, 32 linii de adres pot accesa 232 adrese de memorie (4 G
de RAM), iar 36 linii de adres pot accesa 236 (64 G de RAM) adrese de memorie.
3. Memoria cache integrat pe cipul microprocesorului (cacheL1) interpune un bloc de
memorie rapid SRAM ntre microprocesor i DRAM n care sunt pstrate datele i
instruciunile pe care microprocesorul le va solicita n momentele imediat urmtoare;
efectul acestei interpuneri conduce de cele mai multe ori la eliminarea timpului de
ateptare de ctre microprocesor, a ncrcrii datelor sau instruciunilor programelor din
memoria intern DRAM.
Limbajul main.
Fiecare program, indiferent de limbajul n care a fost scris de ctre programator, ajunge
s fie executat de (micro)procesor numai dup ce a fost tradus (compilat) n singurul
limbaj pe care l tie procesorul (i deci calculatorul): limbajul su main. Dac dm
spre execuie la dou calculatoare, unul cu procesor Intel i cellalt cu procesor
Motorola, un acelai program scris n C++, de fapt fiecare procesor va executa
programul dat ca pe un ir de instruciuni n propriul su limbaj-main; aadar, n
momentul execuiei, un acelai program va arta diferit n calculatoare cu procesoare
diferite.
3/8

Competene T.I.C.

curs 7

Limbajul-main conine cteva zeci de instruciuni elementare, cele mai simple


ce pot fi executate de procesor. Execuia unei singure instruciuni scris ntr-un limbaj
evoluat (C++, de exemplu) const de fapt din execuia unui ir de astfel de instruciuni
elementare.
O instruciune n limbaj-main poate indica procesorului:
- s execute, prin intermediul Unitii Aritmetice i Logice, o operaie aritmetic sau
boolean asupra unei reprezentri de numr ntreg sau fracionar sau asupra unei
valori de adevr;
- s transfere un ir de bii dintr-o zon a memoriei n alta;
- s modifice ordinea de execuie a instruciunilor memorate, eventual dup verificarea
unei condiii logice.
Acestea sunt operaiile la nivelul limbajului main. Ele sunt acei atomi din care este
alctuit calculul, aa cum l vede procesorul. Felul n care sunt proiectate instruciunile
limbajului-main din punctul de vedere al circuitelor care le execut i al structurii
irurilor de bii pe care le prelucreaz constituie elementul fundamental de definire i
de proiectare a unui anumit procesor.
Pornind de la aceste fundamente diferite, diverse procesoare ajung s execute n
mod identic un acelai program, indiferent dac este scris n C++, Java sau Pascal.
De ce au fost inventate aceste noi limbaje, care constituie un nivel suplimentar
fa de limbajul-main? Descris n instruciuni ale limbajului-main, rezolvarea unei
probleme poate fi dus la capt de procesor, dar este foarte greu de neles pentru om.
Calculatoarele pot fi programate n limbaj-main de foarte puini specialiti, i n prezent
este utilizat doar la programarea unor microprocesoare pentru automatele simple.
Un prim pas n drumul calculatorului spre larga utilizare de azi l-a constituit tocmai
creterea numrului celor care l puteau programa: au aprut limbaje mai apropiate de
modul n care omul i reprezint rezolvarea unei probleme; astfel de limbaje (primul a
fost Fortran, n 1954) se numesc limbaje evoluate. Pentru ca, aa cum aminteam,
procesoare diferite s execute la fel un acelai program scris ntr-un limbaj evoluat este
nevoie n primul rnd ca fiecare calculator s posede, n software-ul su, un compilator1
pentru limbajul evoluat i, n al doilea rnd, este nevoie ca reprezentrile datelor s fie
standardizate pentru toate calculatoarele. Condiia de standardizare ine de arhitectura
calculatoarelor: reprezentrile interne ale datelor elementare (numere i caractere) fac
parte din arhitectura procesorului. Alegerea unei reprezentri nseamn deciderea
procedurii (standardului) de codificare / decodificare a datelor, inclusiv opiunea privind
lungimile pe care se reprezint acestea. Spre exemplu, literele se pot reprezenta n toate
calculatoarele folosind codul ASCII, care asociaz unei litere un ir de opt bii: litera A
se reprezint n ASCII ca 01000001.
Limbajele de programare

Un compilator este scris pentru un anume limbaj evoluat i pentru un anume procesor. El traduce
programe din acel limbaj evoluat n limbajul-main al procesorului respectiv.

4/8

Competene T.I.C.

curs 7

Cronologic, limbajul n cod main, a fost primul limbaj de programare utilizat.


Pornindu-se de la descrierea semantic a algoritmului, programul cuprinde un sir finit de
instruciuni, redactate sub forma unor secvene cu caractere binare
Astzi, o mare parte din etapele necesare n programarea n limbajul main au fost
transferate calculatorului, prin crearea unor tipuri de limbaje de programare. Aceste
limbaje sunt recunoscute de calculator care este utilat cu anumite programe n acest sens,
denumite compilatoare, care le transform n limbaj main.
Din punct de vedere semiotic, majoritatea specialitilor susin c unele dintre
limbajele de programare sunt mai apropiate de cele logice, pe cnd altele mai apropiate
de cele naturale.
In ultimii 40 de ani, au fost realizate un numr impresionat de limbaje de
programare printre care putem enumera:

ALGOL (ALGOrithmic Language), aprut n 1958, orientat pe calcule tehnicotiinifice, din care a aprut ulterior Limbajul PASCAL. un limbaj algoritmic, n
care se dau o serie de reguli de formare a construciilor corecte, a fost folosit n
universiti;
PASCAL, un limbaj creat n 1971, de tip structural (fiecare prelucrare este
considerat ca un bloc, iar blocurile pot fi nchise, ncapsulate unele n altele).
Acest limbaj creat n Elveia a avut o mare dezvoltare odat cu apariia
microcalculatoarelor;
FORTRAN (FORmula TRANslator) orientat pe calcule tehnico-tiinifice creat
n 1956;un limbaj universal, unul din cele mai folosite limbaje n anii 70. In acest
limbaj exist faciliti n realizarea ciclrilor;
COBOL (COmmon Business Oriented Language), orientat pe calcule
economice, care manipuleaz un volum mare de date,creat n 1960
BASIC (Beginners All-purpose Symbolic Instruction Code), creat n 1975 este
un limbaj interactiv i care poate fi folosit pe microcalculatoare i chiar pe
calculatoare de buzunar. A fost creat n SUA i permite utilizarea lui de ctre
nespecialiti n informatic.
LISP (LISt Processing language), creat n 1960 i orientat pe prelucrri pe baz
de liste. Este primul limbaj neprocedural care st la baza inteligentei artificiale i
a sistemelor expert.
PROLOG limbaj folosit pentru programe expert din diferite domenii: medicin
( pentru diagnostic i recomandri tratament), geologie, procese tehnologice, etc.;
C a fost creat n 1971 de ctre firma Bell-Telephone pentru a permite realizarea
sistemului de operare Unix. Este un limbaj foarte performant care posed
conceptele limbajelor structurale de nivel nalt i n plus i permit accesul la
hardware.
C++ limbaj orientat pe obiecte ce asigura stocarea datelor din realitate,
instrumente de programare i de modelare a unor situaii din lumea reala
JAVA este un limbaj modern, orientat spre obiecte i este utilizat pentru
paginile Web, fiind bine protejat mpotriva viruilor.
5/8

Competene T.I.C.

curs 7

Evoluia microprocesoarelor.
Intel 4004 a reprezentat prima realizare a unui ntreg procesor prin integrare pe
un singur cip (chip);
Intel 8008 a fost primul microprocesor folosit ca unitate central de procesare
ntr-un calculator.
Din punctul de vedere al succesului comercial al microprocesoarelor, capul de
serie a fost pentru Intel 8080 din 1974 un microprocesor pe 8 bii, cu frecven a
ceasului de 2 MHz i care integra 6000 de tranzistoare pe un singur cip.
Procesorul 80286 din 1982 lucra pe 16 bii i avea aproape 150000 de tranzistori,
la o frecven de 6 MHz.
Pentium, lansat n 1993, ajunsese la 3 milioane de tranzistoare i la frecvena de
60 MHz; procesorul lucra cu date pe 32 sau 64 de bii. Dup Pentium II (1997) i
Pentium III (1999), n anul 2000 a aprut Pentium IV, avnd 42 de milioane de tranzistori
i o frecven de 1500 MHz.
Un indicator al vitezei de lucru a unui procesor este cte milioane de operaii
pe secund se estimeaz c poate executa. Cum operaiile efectuate variaz mult de la
un program la altul, iar tipuri diferite de operaii au timpi diferii de execuie, msura
aceasta nu este exact i depinde de aplicaiile pentru care este folosit calculatorul. Cu
caracter orientativ i n scopul comparrii performanelor relative, se afirm c 8080
efectua 640000 de operaii pe secund, 80286 ajunsese la 1 milion, primul Pentium la 100
de milioane, iar Pentium IV la aproape 1700 de milioane (spre comparaie, primele
calculatoare, realizate nainte de 1950, puteau efectua maximum 5000 de operaii pe
secund).
Dac lum n considerare i frecvena ceasului, observm c numrul estimat de operaii
pe secund a crescut mai repede dect aceasta: de exemplu, primul Pentium putea efectua
de 100 de ori mai multe operaii dect 80286, neavnd ns dect o frecven de 10 ori
mai mare. Viteza de lucru a unui calculator se refer la frecvena ceasului, exprimat de
obicei n perioade (cicluri) pe secund.
Duratele de execuie diferite a instruciunilor (exprimate doar n perioade de ceas)
fac irelevant compararea sistemelor doar pe baza frecvenei ceasului (conteaz foarte
mult i eficiena). Pentru a putea compara adecvat puterea procesoarelor, Intel a dezvoltat
o serie de teste de evaluare a performanelor pentru cipurile sale, ca instrument de
etalonare. Aceast etalonare se numete ICOMP (Intel COmparative Microprocesor
Performance).
Creterea suplimentar se explic nu prin tehnologie, ci prin ideile noi de
arhitectur a calculatoarelor: pipeline i paralelism.
Funcionarea paralel este de obicei asociat unor arhitecturi RISC (Reduced
Instruction Set Computer calculator cu mulime redus de instruciuni). Ca i la
CISC(Complex Instruction Set Computer calculator cu mulime complex de
instruciuni)., este vorba de numrul instruciunilor din limbajul main. n arhitectura
RISC, orice instruciune-main CISC neinclus n limbajul-main RISC se simuleaz
printr-o secven de instruciuni RISC. Pstrnd puine instruciuni (cele mai frecvent
folosite), arhitecturile RISC sunt considerate ca dnd procesoare mai rapide n acest fel,
ntr-un singur ciclu al ceasului ajung s se efectueze dou instruciuni, fa de o
instruciune la 15 cicluri ale ceasului, la procesorul 8088. De altfel, fa de comparaia
6/8

Competene T.I.C.

curs 7

80286 Pentium I, n interiorul familiei Pentium diferena dintre raportul frecvenelor i


cel al numrului de instruciuni pe secund s-a redus i chiar inversat, ilustrnd relativa
stagnare din punctul de vedere al ideilor de arhitectur.

Pentium.
Anunat n 1992 i lansat n 1993, tipul de microprocesor Pentium este nc cel mai recent
descendent al familiei Intel. Pstrnd compatibilitatea cu cele patru generaii anterioare
de microprocesoare, inclusiv cu 8088, Pentium introduce ideea de procesare paralel:
avnd dou ci identice de procesare a datelor, el poate executa simultan dou intruciuni
(pairing). Numit de Intel arhitectur superscalar, acest mod de execuie ilustreaz
pentru prima dat funcionarea paralel la un procesor CISC Simplificnd, putem
imagina un procesor Pentium ca integrnd pe un singur cip dou procesoare 486. Pentru a
putea folosi ntreaga putere oferit de Pentium, poate fi nevoie ca ordinea instruciunilor
s fie modificat (compilatoare cu optimizarea codului), din cauza execuiei n etape
distincte a fiecrei instruciuni (pipeline).
Ajuns astzi la o frecven a ceasului de peste 3GHz (trei miliarde de tacturi pe
secund), magistrala de comunicare a datelor avnd peste 500 MHz, Pentium n versiunea
IV reprezint un important avans tehnologic zeci de milioane de tranzistori pe un cip
Name

Date

Transistors

Microns

Clock speed

Data width

MIPS

Pentium 4 "Prescott"

2004

125,000,000

0.09

3.6 GHz

32 bits
64-bit bus

~7,000

. Iat cteva idei de arhitectur ce cresc performanele procesorului Pentium:


- tehnica pipeline (execuia etapizat i intercalat a instruciunilor);
- memoria imediat (cache memory), caracterizat prin
o includerea n cipul-procesor
o amnarea scrierii n memoria principal pn la un moment de ncrcare
mai mic
- un nivel suplimentar de memorie ce evit ntrzierile n caz de eec la accesul
memoriei imediate)
- coprocesorul ncorporat (idee aprut la ultimele versiuni de procesoare 486.
Primelor microprocesoare pe 16 si 32 de biti li s-a asociat un coprocesor
matematic pentru calculele cu numere reale, numit respectiv 8087, 80287, 80387.
Incepnd cu microprocesorul 80486, coprocesorul matematic este integrat n
microprocesor.).
n ultimii civa ani au aprut ns doar mbuntiri strict tehnologice
Procesor Intel Core i7 4960X Extreme Edition 3.6GHz box

Tehnologie de
fabricatie
(nanometri):

32

7/8

Competene T.I.C.

curs 7

Mod de operare
(biti):

64

Numar nuclee

Frecventa

3,33 GHz

Cache level 1

6x 32 KB

Cache level 2

6x 256
KB

Cache level 3

12 MB

8/8

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