Sunteți pe pagina 1din 18

CURS 1 Evoluţia calculatoarelor personale

Istoric

Dispozitivele de calcul au evoluat de-a lungul timpului parcurgâ nd mai multe etape.

Dispozitive de calcul simple


i) ABAC (numă ră tor)

ii) Între anii 1600 - , un matematician cunoscut , John Napier (1550 – 1617)
inventează un dispozitiv cu bastonaşe crismatice pe care sunt înscrise
produsele 1,2,3,...,9 ale cifrelor => Înmulţiri.

iii) Prin 1600 , E. Gunter (1581-1626) a construit ceea ce se numeşte scara


logaritmică – se putea realiza x a două numere prin adunarea a 2 segmente.
log(a x b) = log(a)+log(b)

iv) E.Wingate a perfectionat scara logaritmica si a creat rigla de calcul

Dispozitivele amintite necesitau operare exclusiv manuala . In 1642 ,


matematicianul Blaise Pascal (1623-1662) a inventat o masina de adunat mecanica ,
utilizata de tatal sau care era administrator financiar. Masina consta din 6 cilindri care
aveau reprezentate cifrele 0..9 pe cate o banda . La fiecare rotatie cu 1/10 din lungimea
cercului corespunzator se schimba cifra , iar fiecare 10 atins de un cilindru determina
trecerea automata pe cilindrul urmator a unei unitati de ordin superior. Astfel suma a 2
nr rezulta in urma rotatiilor succesive facute pt primul si al doilea nr.
Le Pan (1725) si Schilt (1851) au reusit sa realizeze o masina de adunat in care
cifrele se scriau cu clape . Vestitul matematician Gottfried von Leibnitz (1646-1716) a
construit masini de adunat(1694) si inmultit (1704) inventand un cilindru suplimentar
care permitea repetarea adunarilor in vederea efectuarii unei multimi ( antrenor).
Dizpoizitivele de calcul descrise de el pt efectuarea celor 4 operatii aritmetice au fost
utilizate pana in zilele noastre.
In 1820 , Thomas De Colmar a creat prima masina de + si x ce a intrat in cartea
economica.
Intre 1834-1854 , Charles B. de Sage a proiectat o masina care folosind rotite de
calcul zecimal urma sa execute o + intr-o secunda. Aceasta masina nu a fost complet
realizata .La realizare a contribuit si Ada Byron.
Cebsel (1821-1894 ) a construit o masina de + si x cu miscare continua care
semnala sonor miscarea manivelei. Viteza de lucru a acestor masini creste de la 10
operatii pe sec prin inlocuirea miscarii manuale a manivelei prin cu operatori electrici.
In 1920 spaniolul Torres Y Quevedo a prezentat o masina de + si x nr fiind introduse
prin clape.
CURS 2 Masini Analogice

In prima jumatate a secolului al XX-lea au fost inventate masini analogice care


transformau probleme matematice intr-una bazata pe marimi fizice( unghiuri ,
intensitatea curentului electric) pe baza unei analogii.

Un exemplu de transpunere a unei probleme numerice in termeni anlogici este


reducerea x a 2 nr la + a doua segmente folosind scara logaritmica.

Calculatoare electronice

La mijlocul sec al XX-lea apar primele calculatoare electronice (care pot fi si ele
numerice/digitale)capabile sa rezolve probleme complexe.
Orice calculator electronic trebuie sa fie capabil :
- sa memoreze informatii (date & programe)=> trebuie sa posede un dispozitiv
de memorare
- sa comande executia operatiilor => contine un dispozitiv de comanda si
executie; dispune de un dispozitiv aritmetico-logic

In scopul realizarii legaturii intre comp si exterior apar dispozitive de introducere –


extragere a datelor.
Primul calculator electric a fost construit in 1943 si s-a numit ENIAC ; folosea o
viteza de 32.000 op/sec ; era bazat pe tuburi electronice.
In 1947 John von Noriman stabilea principiile de baza pentru calculatoarele clasice.
Arhitectura Noriman ramane valabila pana astazi. La un moment dat unitatea
centrala(u.c.) a calculatorului executa o singura instructiune, ea fiind retinuta in
memoria de baza a calaculatorului.
G1 – 1943 – 1956
Principalele componente fizice ale acestor calculatoare erau tuburile electronice pt
circuitele logice si tamburul magnetic rotativ pentru memorie. Viteza de lucru era
cuprinsa intre 50 – 30.000 operatii/sec iar memoria interna de 2 kb. Programarea
acestor calculatoare era dificila folosindu-se limbajul masina.

ENIAC – 1943 – contine 18.000 tuburi electronice , 7.500 relee si 7.000.000


rezistente ; ocupa 14,5 m2 si cantarea 30t

CIFA – 1956
MECIPT – 1961 (Poli Timisoara)
CETA – 1961 (Poli Timisoara)
DACICC – r – 1959 (Institutul de Calcul Cluj)

G2 – 1957 -1963

Principalele tehnologii hard erau reprezentate de tranzistoare si memorii pe ferite.


200.000 op/sec memorie interna de 32 kb
Imprimante rapide : FORTRAN , COBOL
In memoria calculatorului se pot afla mai multe programe (multi-programare desi la
un moment dat se executa o singura instructiune.
Calculatoare romanesti de generatia a doua
1 MECIPT 2 – 1968
2 CIFA
3 CETA 2
4 DACICC

G3 – 1964 -1971

Principala tehnologie hard – circuite integrate memoria interna – semiconductoare


– pe suport de memorie externa – disc magnetic – iar viteza de lucru creste pana la
5.000.000 op/sec.

IBM -360
FELIX – C256/1024(1971)

Generatia 3,5 (1971-1981)

 cresc performantele circuitelor integrate si se standardizeaza . Apar circuite de


integrare slaba SSI si integrare medie MSI .Ele echivalau cu 100 tranzistori pe
cip.
Creste viteza de lucru pana la 15.000.000 op/sec si memoria interna pana la 2 MB ,
iar acum apar Pascal si Lisp

Generatia 4 (1982-1989)

Apar circuite pe integrate pe scara larga (LSI) si foarte larga(VLSI). Echivalau cu


50.000 tranzistori pe cip. Memoria interna creste pana la 8 MB iar viteza de lucru
3x107 op/sec. Apar CD-uri (discuri optice) si programarea orientata obiect.
Generatiile 1-4 – reprezentau circuitele arhitecturilor clasice şi au fost construite
pentru a realiza operatii numerice (calcule matematice, alfa complecse).
CURS 3

Generatia V (1990-azi)

Generatia inteligentei artificiale , fiind in mare parte proiectul japonez de


cercetare pt noua generatie de calculatoare.
Principalele preocupari se suprapun in cea mai mare parte cu functiile noii
generatii de calculatoare care sunt prezentate mai jos.

Aceste calculatoare sunt bazate pe prelucrarea cunostiintelor in conditiile in care


aceste prelucrari devin preponderente in majoritatea domeniilor stiintifice.
D.p.d.v tehnic se folosesc dispozitive LISP 1.000.000 de tranzistoare pe cip. Astfel
viteza noilor calculatoare se situeaza 100 Lips – 1Glips
Apare programarea logica & functionala bazata pe implementarea unor
mecanisme de deductie , pornind de la axiome cunoscute , al carei reprezentant era
limbajul PROLOG . Functiile de baza ale noii generatii de calculatoare sunt : se
urmareste implementarea unor functii similare celor umane (auz , vaz) folosirea
limbajului prin mecanisme de exprimare a formelor prin imagini si studiul
limbajului natural .
(directie impusa a inteligentei artificiale)
Gestiunea cunostiintelor.

Cunostiintele trebuie sa poata fi memorate sub forma care sa permita accesul


optim la bazele de cunostiinte si intretinerea bazelor de cunostiinte , eliminarea
inconsistentelor , chiar invatarea de cunostiinte (carac a inteligentei artificiale).
Realizarea de inferente (deductii , predictii): acestor actiuni similare gandirii
umane li se poate atasa in mod cert atributul de inteligent.

Pb de i.a. se va rezolva uzual folosind bazele de cunostiinte asupra carora se


aplica regulile de deductie . Se folosesc metode si tehnici ce permit generarea
automata a unor programe si testarea corectitudinii programelor . Se pot astfel
obtine cunostiinte noi prin simularea unor situatii concrete necunoscute inca .
Aceste tipuri de probleme sunt foarte complexe si necesita instrumente de abordare
adecvata : programarea logica si functionala, metode de programare euristice
( furnizeaza solutii bune chiar de nu sunt optime) .
Un caz special de deductie e predictia . Predictia (prevederea unor solutii pe
baza unor cunostiinte date) se implementeaza folosind mecanisme ce incearca sa
simuleze functionarea creierului uman prin intermediul retelelor neuronale.
O alta tehnica inspirata din lumea biologica in i.a. o constau algoritmii generici
care au caracter de adaptare la context , similar cu adaptarea la mediu a populatiei
biologice.

Generatia a VI-a
Apare doar in literatura sub forma conceptului de calculatoarele viitorului
despre care se filozofeaza si despre care oamenii se intreaba daca se va putea obtine
in viitor prin atasarea unui ADN uman la un calculator neuronal.
CURS 4

NIVELE CONCEPTUALE

Un calculator este o masina care poate rezolva anumite probleme (la inceput
probleme de natura matematica) executand instructiuni . O secventa de instructiuni
care precizeaza cum se rezolva un task se numeste program.
Instructiunile de baza (adunarea a 2 nr, deplasarea unei date dintr-un registru in
memorie) formeaza un limbaj cod masina. Acest limbaj e propriu fiecarui tip de
calculator. Il vom nota cu L1
Programarea in limbaj L1 este greoaie. De aceea a fost creat un nou limbaj, L2 ,
mult mai apropiat de modul natural de gandire al omului. Limbajul L2 este asemanator
ca mod de gandire cu L1 dar are niste macrodefinitii sup;imentare. Acest lb se numeste
lb de asamblare a calculatorului. Lb de asamblare este inca dependent de masina pe
care se lucreaza.
OBS!!! Indiferent ce lb de programare utilizam in final calculatorul executa
instructiuni in lb L1 , cod masina.

Exista 2 posibilitati de executie intr-un lb a unui program X

1. Translatare (compilare) - se inlocuieste fiecare instructiune dintr-un program


scris intrun lb mai mare decat L1 cu ...
2. Interpretare – tehnica prin care fiecare instructiune din program scris intr-un
lb > L1 este analizata s executata instantaneu printr-o secv echivalenta de
instructiuni in limbaj L1.

L1 cod masina
L2 -> L1 -> executie;

Numim calculator care executa taskuri intr-un lb > L1 masina virtuala. Metoda se
poate extinde pt diferite lb si masini a i se poate defini un lb L3 care are l baza lb
L2 obtinand alte masini virtuale. In literatura de specialitate aceste calculatoare
se numesc generic nivele. Calculatoarele actuale constau in 7 nivele conceptuale.

NIVELUL 0 – nivelul logic digital; executa instructiuni cod masina in lb L1. Acest nivel
este realizat prin circuite logice la care elementul fundamental este logica.

NIVELUL 1 – nivelul microprogram – contine deja conceptul de program. Acest


program (microprogram) interpreteaza instructiuni de tip L1 si le executa. Fiecare
instructiune a nivelului 1 este executata de catre un microprogram.
SOFT-ul din HARD = FIRMWARE

NIVELUL 2- nivel de masina conventionala;prin nivelul 0 si 1 se pot defini si pt acelasi


tip de calculator. In general, compatibilitatea calculatorului, realizate de catre diferite
firme se asigura la nivelul 2, de aceea, acest nivel se numeste nivel de masina
conventionala.
Unele masini nu au nivel 1 (microprogram). In acest caz, instructiunile din
nivelul 2, sunt direct executate de masina logica digitala (componentele hardware ale
calculatorului).

CURS 5

NIVELUL 3 – este de fapt nivelul sistemelor de operare. Intre masinile de nivel 3,


realizate de diferite firme, exista in momentul de fata destule diferente. Ele contin
interpretarea si translatarea construite de programe de sisteme specializate in
implementarea masinilor virtuale.
Nivelele 0-3 servesc nivelelor urmatoare:

NIVELUL 4 – nivelul limbajului de asamblare – este destinat programarii de aplicatii.


Incepand cu nivelul 4 se utilizeaza cuvinte mnemonice pentru diferite notiuni cu care se
opereaza. Programele scrise pt nivelul 4 in lb de asamblare sunt translatate de un
program special numit asamblor si interpretator de nivelele 1,2,3.

NIVELUL 5 – consta din lb utilizate pentru scrierea programelor de aplicatie – se mai


numesc limbaje de nivel inalt. Programele scrise sunt translatate in limbje de nivelul 4
sau 3 de catre programe specializate numite compilatoare.

NIVELUL 6 – este destinat aplicatiilor specializate. Contine lb destinate unor domenii


foarte specializate (proiectare asistata de calculator, economie, administratie, grafica
etc.

1) TEMA DE REALIZARE
2) CONCEPTE -> CAD (Computer Aided Design) (AUTOCAD)-> LISP
3) PROTOTIP-> FEA (Analiza cu elemente finite)
4) LANSARE IN PRODUCTIE-> CAM (Computer Aided Manufactory)

Pentru fiecare nivel masina se defineste notiunea de arhitectura calucator ca


fiind setul tipurilor de date operatiile si facilitatile accesibile programatorului.
Notiunea de hardware – defineste circuitele electronice, memoria dispozitivelor
de I/O , deci masina de nivel 0. Executa programe de nivel 1.
Notiunea de software – multimea de algoritmi si reprezentarea lor in calculator,
deci pachetele de programe.
Notiunea de firmware – notiune intermediara care defineste componentele
software incorporate in hardware. Se utilizeaza pentru programe nemodificabile sau
care nu trebuie sa se piarda la deconectarea tensiunii de alimentare.

CURS 6 Reprezentarea informatiilor in calculator

Calculatoarele digitale prelucreaza informatii reprezentate prin 2 stari codificate


prin 0 respectiv 1. 0(0V) 1(1V) -> reprezentare binara. O astfel de codificare poate
reprezenta si o valoare logica de tip False pt 0 si True pt 1.

1CB – bit – vid - Aritmetica binara opereaza cu numere ir algebra booleana cu


valori logice.

Pt stocarea, prelucrarea si transmiterea informatiilorse utilizeaza diferite


codificari ce elimina erorile de reprezentare si permit corectia si detectia erorilor. Astfel
fiecare cifra zecimala a unui nr e reprezentata de codulsau binar. Acest tip de codificare
se numeste BCD.Exista coduri alfanumerice ce realizeaza o corespondenta liniara intre
multimea cuvintelor binare de o anumita lunigme.
1 byte = 8 biti
....
8 byte = 64 biti – lungimea maxima

In practica portile logice sunt din circuite integrate (cipuri). Un cip este o pastila
de siliciu de furma unui patrat cu latura de cativa mm si care din considerente mecanice
si tehnice e plasat intr-o capsula de plastic mai mare. Conexiunile pastilei de siliciu cu
alte circuite , cu sursele de tensiune si masa electrica se realizeaza prin pinii plasati pe
laturile de plastic ale capsulei.
In functie de nr de porti pe care le contin cipurile pot fi
- SSI (Small Scale Integrated) pana la 10 porti logice
- MSI (Medium Scale Integrated) pana la 100 porti logice
- LSI (Large Scale Integrated) pana la 100.000 porti logice
- VLSI (Very Large Scale Integrated) > 100.000 porti logice

Exista doua tipuri de circuite logice


1) combinationale – valoarea semnalelor de iesire depinde numai de starea
logica a semnalelor de intrare

2) Secventiale – la care iesire depinde de intrare si de starea curenta memorata


a circuitului; sunt circuite care au elemente de memorie deci circuite care-si
memoreaza starea.
CURS 7
STRUCTURA UNUI CALCULATOR

A fost definita pentru prima data de John Von Neumans – 1945 si consta din :
1) unitatea centrala (procesor P)
2) memoria interna (M)
3) 3 dispozitive de I/O

Intre componentele calculatorului informatiile circula pe linii de comunicare


specializate. Acele informatii contin : adrese de memorie – date – semnale de comanda.
Conform celor 3 categorii de informatii linile de comunicatie sunt grupate in
magistrale. In structura calculatorului exista 3 tipuri de magistrale: de adrese – de date
– de comenzi.

UCP (unitatea centrala de prelucrare) este compusa din urmatoarele parti:


1) unitatea aritmetico-logica (UAL)
2) registre generale
a) registru de instructiuni
b) registru de stare program
c) numaratorul de instructiuni – pastreaza adresa corecta a instructiunii
care se executa
3) unitatea de comanda

Setul de instructiuni

Activitatea generala a unui sistem de calcul consta in stocarea si prelucrarea


informatiilor. Intregul proces de tratare a informatiei din cadrul unui sistem de calcul
are loc conform unui algoritm de prelucrare. Acest algoritm este implementat prin setul
de instructiuni specifice unui limbaj de programare.
Instructiunile alcatuiesc un program. Prin transformari succesive (op de
compilare si link-editare) aceste instructiuni sunt aduse la nivelul unui set de comenzi
elementare instructiuni elementare.
Instructiunile cod masina formeaza setul de instructiuni al calculatorului.
Componenta calculatorului care realizeaza executarea instructiunii este UCP.Memoria
calc memoreaza setul de instructiuni ce urmeaza a fi executate.

O instructiune se executa in 2 faze:


1) faza de aducere – ea este adusa din memoria interna in UCP
2) faza de executie – in care instructiunea este executata in UCP
Fiecare faza este executata intr-un nr de impulsuri de tact 3GH 2-10 miu
In concluzie , pt a putea executa o instructiune UCP trebuie sa poata efectua
urmatoarele functii:
1. citirea si scrierea informatiilor din/in memoria interna
2. recunoasterea si executarea instructiunilor cod masina
3. transmitera de comenzi celorlalte componente ale calculatorului realizand
coordonarea functiilor acestora.

Recunoasterea formelor instructiunilor de executat


Rezultatul nr cuv de memorie utililizate pt executarea fiecarei tip de instructiuni
si semnificatia campurilor care alcatuiesc instructiunea

In general o instructiune cod masina contine urmatoarele campuri:


1. cod operator (+,0,*)
2. zona de adresa (adrese operand 1, adrese operand 2)

Pt reducerea lungimii instructiunilor cod masina s-au stabilit anumite conventii:


1. instructiunea poate opera cu cel mult 2 operanzi
2. adresa urmatoarei instructiuni ce trebeuie executata se citeste mereu dintr-un
registru specializat numit registru contor de adrese/

La executarea fiecarei instructiuni , registru contor de adrese este incrementat


cu instructiunea in curs de executie.
Intr-un program incarcat in memorie pentru a fi executata instructiunea
respectiva o gasim la adrese consecutive de memorie.
Pentru realizarea unei ramificatii executiei unui program se foloseste
instructiunea speciala de salt care modifica valoarea memoriei in registru. Contorul de
adrese incarcand in aceste valori, adresa noii instructiuni la care se efectueaza saltul.

CURS 9 Tipuri de instructiuni cod-masina

Se clasifica conform urmatoarelor caracteristici:

I
1. Instructiuni de transfer de date intre memorie, registrii su stive

2. Instructiuni aritmetice
Orice proces executa:
a) Operatii elementare cu nr reale respectiv operatii cu nr complexe
implemetate hardware (pot fi implementate si software)
b) Operatii logicesi de deplasare care lucreaza la nivel de bit. Aceste operatii
sunt folosite pentru determinarea bitilor de control din cuvintele de stare
sau pentru realizarea rapida a unor operatii aritmetice( x, / etc.)

3. Instructiuni de comp si de salt – genereaza continuarea executarii programului


la o alta adresa decat cea imediat urmatoare
4. Instructiuni de repetare – se folosesc pt executarea repetata a unei secvente de
instructiuni; utilizeaza o valoare contor ce memoreaza nr de cicluri ce trebuie
efectuate
1-secventiale

2-alternative if – then – else

3- repetitive -> do – while

5. Instructiuni de apel procedura in care pentru executarea unei proceduri se


memoreaza in stiva adresa de revenire utilizata dupa executarea procedurii
apelate

6. Instructiuni de intrare/iesire – se folosesc pentru transferul de date cu


dispozitivele periferice. Aceste instructiuni pot sa contina adresa unui dispozitiv
fizic sau adresa unui registru de interfata cu dispozitivul de intrare/iesire.

In cazul utilizarii unui registru de interfata e necesar ca in prealabil registrul


respectiv sa fie incarcat cu valoarea dorita.=> Marirea vitezei de lucru a transferului de
date.

II
Dupa modul de prezentare a operanzilor avem instructiuni :

1) „ . ” fixe
2) in „ , ” mobile
3) cu nr zecimale codificate binar (la PC)
4) pe siruri de caractere (nu exista la PC)
5) matriciale
6) ce opereaza la nivelul datelor tabelar (nu exista la PC)

Orice instructiune de calcul cuprinde cel putin setul standard de instructiuni


adica instructiunile „.”fixe.

III
Dupa forma , structura si lungimea instructiunii

1) cu format fix: instructiunile au aceeasi lungime si implica o structura simpla a


procesului si o utilizare ineficienta a memoriei.
2) cu format variabil, lungimea depinde de tipul de operand si de modul de
adresare.
IV
Dupa modul de adresare a operanzilor

1) fara nici o adresare; operanzii sunt cautati


2) rapid in stiva sistemului de calcul cu o singura adresare: codificarea operatiilor
unare
3) cu 2 adrese pt operatii binare in care una din adrese e un registru iar cealalta
adresa este o adresa de memorie

Tipuri de procesoare

Procesoarele sunt impartite de regula dupa setul de instructiuni astfel


- procesoare de tip CISC (Complex Instruction Set Computer) ...cu format variabil
ce permit un nr mare de moduri de adresare; executarea unei instructiuni se
face pe parcursul mai multor cicluri masina; sunt procesoare complexe ce
utilizeaza eficient memoria interna.
- RISC (Reduced Instruction Set Computer) -> sunt procesoare cu un set redus de
instructiuni la care majoritatea instructiunilor pot fi executate intr-un singur
ciclu masina. Instructiunile au o lungime fixa se foloseste un singur acces la
memorie, au un numar minim de moduri de adresare.

In comparatie cu un nr mare de registrii in care se depun operanzii, de obicei


instructiunile lucreaza cu operanzi in registrii, operatiile fiind elementare. Datorita
simplitatii operatiilor elementare pot fi construite unitati de prelucrare paralele =>
executarea simultana a mai multor instructiuni.
Cu aceste procesoare se implementeaza tehnica Pipeline de executie a
instructiunilor in care in fiecare frecventa de ceas se preia cate o instructiune la un
moment dat sunt un executie mai multe instructiuni din diverse stadii

CURS 10 Structura procesorului

Componentele functionala ale procesorului sunt:

1) Setul de registrii

Un registru este in esenta o memorie rapida (timp acces de ordinul


nanosecundelor) si de dimensiune mica (16 biti, 32 biti, 64 biti). Ca zona de
memorie registrii sunt utilizati fie pentru memorarea unui operand, fie pentru
memorarea adresei unui memorand. Registrii mai sunt folositi in transferul
datelor spre exteriorul calculatorului(porturi).
Exista un nr de registrii la dispozitia calculatorului care pot fi folositi prin
intermediul setului de instructiuni; alti registrii sunt folositi exclusiv de procesor
(utilizand nu are acces la ei). Astfel exista:
I dupa tipul de informatie care se vrea localizata:

1. Registrii segment de cod


2. Registrii segment de date
3. Registrii extrasegment (folositi pentru suplimentarea
segmentului de date)
4. Registrii segment de stiva (pentru localizarea stivei in
memoria interna)

II registrii de lucru cu memoria interna

1. Registru de adresare a memoriei ce contine adrese de locatie a


memoriei (va fi accesat la un moment dat). Orice operatie cu
memoria se realizeaza cu consultanta din acest registru.

2. Registru de date contine cuvintele de date sau intructiuni care


a fost citita din memoria interna sau care va fi scrisa in
memoria interna

3. Registru cumulator memoreaza operanzi si rezultate ale


operatiilor executate de UAL in sistemul de calcul

4. Registru de index – utilizat in cazul adreselor indexate precum


si a modului de adresare rezultate din acesta.

5. Registru control program – contine adresa instructiunii ce


urmeaza fi executata. Continutul lui se mareste cu lungimea
instructiunii executate sau se incarca cu adresa unei
instructiuni la care se face un salt.

6. Registru de instructiuni – contine in principal codul operatiei si


modul de adresare din instructiunea curenta

7. Registru indicator de stiva – contine adresa de referinta a


stivei.

8. Registru de stare - memoreaza cuv de stare a procesorului ce


reprezinta starea sistemului la un moment dat. Aici se
memoreaza informatiile privin procesul in curs de executie, iar
continutul registrului se memoreaza in memoria interna in
cazul intreruperii procesului pentru a fi reluat in cadrul
procesului de lucru.
UAL Unitatea Aritmetica si Logica

Are rolul de reliza toate operatiile aritmetice si logice de date; preia operatiile cu
care lucreaza din registrii specializati ai UCP. In general UAL primeste la intrare 2
operanzi si un cod de operatie si furnizeaza la iesire un rezultat si un set de informatii
suplimentare despre rezultat (indicator de conditie). Indicatorii pot fi testati cu
instrumente specializate determinand prelucrari diferite in program. Acesti indicatori
se reprezinta pe cate un bit ex: bitul de transport daca este pozitionat atunci cand apare
un transport la operatia de adunare etc.

UCC Unitatea de Comanda si Control

Contine logica de comanda pentru executia instructiunilor din registrii. Ea


determina secventa de operatii elementare ce trebuie executata de catre UCP. In cadrul
procesoarelor actuale frecventa ceasului este multiplicata in interiorul procesorului
acesta lucrand la viteze mai mari decat componentele externe.
Implementarea instructiunilor cod masina in logica de comanda a procesorului
se face fie prin circuite electronice cablate (tehnologie independenta de intensitatea
curentului electric) fie prin microprogramein care pentru fiecare cod de opertie se
defineste o secventa de microinstructiuni ce genereaza operatia elementara (arhitecturi
de minicalculator).

MAGISTRALELE

Reprezinta linii pasive care interconecteaza componentele functionale ale


sistemului in ederea schimbului de informatii dintre ele. Schimbul de informatii prin
intermediul magistralelor , utilizeaza transmisii in paralel. Adica magistrala e formata
din n linii pe care se transmit concomitent n biti. La un moment dat pe o magistrala se
poate face doar un transfer de date de un anumit tip.
In functie de natura, magistralele contin:
- linii de adrese pe care se transfera informatii de adrese
- magistralele comenzi contin linii de comenzi si de stocare
- magistralele de date contin linii de date

O anumita categorie de sisteme de calcul e cea ce foloseste o mgistrala unica


(abc).
In acest caz toate resursele sunt conectate la o magistrala. Dezavantajul este ca la un
moment dat se poate executa un singur transfer de un anumit tip. Avanatjul – sunt
ieftine.
Intr-un sistem de calcul cu magistrale multiple, o magistrala leaga o pereche de
unitati functionale ce trebuie sa comunice intre ele. O astfel de organizare de transfer a
informatiilor in paralel intrebuinteaza multe unitati pe magistrale diferite.
Dupa sensul de transfer a informatiilor magistralele pot fi:
1) unidirectionale: transferul se realizeaza intr-un singur sens (magistrala de
acces are ca destinatie registru de adrese)
2) bidirectionale: unde informatia poate fi vehiculata in ambele sensuri alternativ
(ex: magistrala de date

Magistralele in general se caracterizeaza prin:

- numarul de linii prin care se face transferul de informatii


- frecventele de ceas la care lucreaza (mult mai mici decat la procesor)
- rata de transfer a datelor
- arhitectura magistralei care defineste tipul de adaptor pe care le accepta si
implicit tipul de echipamente periferice, nr si natura extensiilor
La Pentium magistrala e de 64 biti cu peste 500MB/sec rata de transfer.

Exemple de magistrale

1) Magistrala I.S.A ( Industry Standard Arhitecture) prima magistrala industriala


standard
2) Magistrala VESA (Video Electronic Standard Association) realizata pentru
cresterea performantelor adaptoarelor video. Permite conectarea la periferice.
3) Magistrala PCI (Periferic Connection Interface) 32/64 biti cu rata de transfer de
500MB/sec. Echipamentele care se conecteaza la magistrala sunt de tipul master
sau slave.
Magistralele de tip master pot avea initiative de conectare iar cele de tip
slave pot doar raspunde la initiativa de conectare. Legarea unui
echipament la magistrala se realizeaza printr-un conector.

4) Porturi-seriale – cand datele se transmit bit cu bit


-paralele – datele se transmit cocomitent pe un nr de biti (8-16-32-64)
5) Adaptoarele – reprezinta circuite integrate care permit procesorului sa
comunice si sa conecteze echipamentele periferice – este posibil ca un adaptor sa
controleze mai multe dipspozitive periferice de acelasi fel, caz in care
adaptoarele au si rolul de adresare a dispozitivelor conectate ex: adaptorul
SCANZY

CURS 11 Sisteme de calcul cu procesoare rapide

Necesitatea cresterii de prelucrari a unui sistem de calcul a dus la ideea


prelucrarii in paralel a instructiuniilor unui program in executie. Pentru a fi posibil
acest lucru a fost necesara modificarea structurii procesorului.
Au rezultat urmatoarele variante de procesoare:

1) sistem de calcul cu procesor vectorial : acestea sunt


sisteme de calcul multiprocesor. Sistemele de procesoare care partajeaza
o memorie interna comunica. Procesoarele sunt independente unele de
altele, fiecare ruland un program.
2) sistem de calcul cu procesoare care au unitati de calcul
multiple.
Obs : Trebuie sa existe un analizor care sa distribuie instructiunea spre executia
unitatii de calcul (artimetici specializate)

3) Un alt mod de organizare a procesorului este structura numita Pipe-


Line(Comunicarea in linie). In acest caz, fiecare etapa de executie a unor
instructiuni se realizeaza pe o alta unitate. De ex: unitatea de citire a
instructiuniilor din memoria interna se face in registrul din memoria
interna, se face in registru de date etc. Fiecare unitate foloseste informatii
furnizate de unitatea anterioara şi pregateste date pentru unitatea
functionala care ii succede la un moment dat un astfel de sistem poate
executa in paralel mai multe instructiuni fiecare fiind in alt stadiu de
executie.

4) Un alt caz de constructie a unui procesor este procesorul dedicat pe


operatii in general de intrare-iesire: procesoare grafice, procesoare care
gestioneaza intrarile-iesirele etc. Acest tip de procesor nu face parte din
unitatea centrala a sistemului de calcul.

5) Procesorul Bit-Slice acest tip de procesor a fost implementat pe vremea


cand procesoarele performante erau scumpe. S-a optat atunci cand
alipirea mai multor procesoare de dim şi performante reduse pentru a
realiza un procesor puternic. De ex: pentru realizarea unui procesor de
16 biti se alipeau 4 procesoare de cate 4 biti fiecare. Fiecare procesor de 4
biti avea propriul set de instructiuni, diferite unul de altul. Prin
constructie, accesul la acest set de instructiuni s-a facut prin
microprograme.

Memoria Calculatorului

Intr-un sistem de calcul memoria reprezinta o componenta fundamentala,


distincta care realizeaza pastrarea informatiilor. Informatia memorata e formata din
programele şi datele necesare utilizarii sistemului de calcul. Memoria se interpune intre
celelalte componente functionale. Astfel informatiile preluate in calculator prin
intermediul unitatiilor de intrare sunt stocate mai intai in memorie de unde sunt
preluate de celelalte unitati ale sistemului de calcul.
D.p.d.v fizic memoria este alcatuita din elemente (celule) care se pot gasi in 2
stari (0 sau 1).
Putem defini memoria ca pe o succesiune de dispozitive logice elementare
capabile sa retina fiecare o valoare binara, adica un bit (cifra binara)
Prin constructia sistemului de calcul, accesul la informatiile din memorie se
poate realiza la nivel de biti, numit locatie de memorie. Locatia de memorie este o
unitate adresabila a memoriei, fiecare locatie din memorie fiind caracterizata unic prin:
- adresa lui in memorie
- cantitatea de informatie care este memorata (size)
CURS 12 Caracteristicile memoriei

a) cuvinte de memorie – reprezinta nr de octeti de informatie care pot fi


cititi/scrisi intr-o singura operatie de transfer cu memoria. Transferul cu
memoria este operatia prin care de la o adresa de memorie sunt
transferati spre registrii procesorului sau viceversa un nr de biti. Unitatea
de transfer cu memoria este cuvantul de memorie.

b) lungimea cuvantului de memorie – este o caracteristica constructiva a


unui sistem de calcul. El reprezinta unul din criteriile de grupare al
computerului: 8, 16, 32, 64 biti.

c) capacitatea memoriei – nr max de octeti pe care memoria ii poate stoca


(octet=byte) ex: 256 kb, 512 kb,1 GB ...

d) timpul de acces la memorie – orice acces la memorie este precedat de


furnizarea de catre procesor a adresei de memorie unde se pot face
operatiile de citire/scriere. Timpul de acces la memorie rerpezinta
intervalul scurs intre momentul furnizarii adresei de catre furnizori şi
momentul obtinerii informatiei. (ca ordin de marime o μsec.).
Cand memoria e prea lenta in comparatie cu viteza de lucru a
procesorului pe durata accesului la o memorie apare timpul de accesare
procesor. Noile tehnologii de realizare a memoriei utilizeaza o cadere a
timpului de acces a.i. timpul de asteptare a procesorului -> 0

e) ciclul de memorie – reprezinta timpul minim necesar intre 2 accesari


succesive la memorie. Ciclul de memorie este mai mare decat timpul de
acces dar il cuprinde pe acesta.
f) rata de transfer – viteza de transfer reprezinta numarull de unitati de
informatie transferata in unitatea de timp ( se masoara in multiplii de
octeti pe secunda). Viteza de transfer poate fi imbunatatita daca
accesarea unei adrese de memorie e urmata nu de citirea unui singur
cuvant ci de citirea mai multor cuvinte.
g) restul memoriei – pretul memoriei raportat la capacitatea de memorie

Clasificarea memoriei

Memoriile pot fi clasificate astfel:

1) dupa tipul de acces:


a) cu acces direct / aleator RAM – in acest caz timpul de acces la orice loc
de memorie e acelasi. El nu depinde de adresa locatiei de memorie ci
numai de caracteristicile de constructie ale memoriei. Timpul de acces
al memoriei este similar vitezei de lucru al procesorului
b) poztional – in care sunt necesare optiunile de pozitionare care preced
accesul la memorie. In acest caz timpul de acces depinde de adresa
locatiei de memorie.

2) dupa posibilitatiile conservarii informatiilor la intreruperea tensiunii de


alimentare:
a) volatile – la care informatiile se pierd la intrerupere (ex: cea bazata pe
semiconductoare) RAM
b) nevolatile

3) dupa tehnologia de realizare:


a) memorii uperite - in care informatiile sunt memorate pe baza sensului
campului magnetic produs in jurul unor inele de ferite. Acest tip de memorie
nu e volatila dar e distructiva.
La citirea informatiilor şi scrierea ei şi rescrierea ei respectiv stergerea şi
rescrierea ei in memorie. Aceste operatii pot fi executate in bune conditii
doar in anumite limite de temperatura (climatizare)

b) memoria unui semiconductor – informatia este memorata utilizand


circuite electronice care permit sau nu trecerea curentului electric. Aceste
memorii sunt volatile şi daca nu se doreste sa se piarda informatiile la
deconectare e nevoie de o baterie de alimentare.

4) dupa operatiile care pot fi executate:


a) memorii cu citire/scriere permit atat scrierea cat şi citirea
informatiilor de memorie ex: RAM
b) memorii permanente (memoria ROM) care permite in principiu doar
citirea informatiilor din memorie. Desi e realizata cu semiconductori
aceste memorii sunt nevolatile iar informatia e scrisa o singura data şi
nu poate fi suprascrisa prin metode obisnuite.

Sunt folosite pentru memorarea sigura şi ieftina a unor secvente de


program frecvent utilizate in sistemele de calcul. Aceste memorii sunt
ceva mai lente decat cele RAM. In consecinta e utilizat transferul
informatiilor din memoria ROM in RAM
1) PROMPT – memorii programabile de utilizator care nu contin
informatii scrise din fabricatie.
2) EPROM – memorii programabile de utilizator care pot fi strese
şi rescrise cu alte informatii de un numar limitat de ori.

Registrele de memorie – reprezinta dispozitivele de memorare


cele mai rapide, dar şi cele mai scumpe (timp de acces -10μsec) vizavis de
1μsec la memoria anterioara. Din acest motiv cu acest tip de memorie
este echipat chiar procesorul calculatorului.
Registrele de memorie pot fi inexplicite, la care utilizatorul nu are
acces sau explicite la care acces, le poate utiliza in programe.

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