Sunteți pe pagina 1din 14

Unitatea de nvare nr.

1
Introducere n microcontrolere i microprocesoare Arhitectura general

Cuprins
Obiective
Evoluia microprocesoarelor INTEL n timp
Arthitetura microprocesorului
Baze de numeraie
Exerciii
Bibliografie
OBIECTIVELE unitii de nvare nr. 1

Principalele obiective ale Unitii de nvare nr. X sunt:


Studenii trebuie s cunoasc arhitectura unui microprocesor, s
cunoasc noiunile de scriere a informaiei n baza 2, i s
reueasc s realizeze operaii aritmetice n baza 2.

Evoluia microprocesoarelor INTEL n timp

Intel 4004 (anul 1971) realizat n tehnologie PMOS, comunicare pe 4 bii, frecvena de tact
de 740 kHz, viteza 60000 operaii memorie adresabil 4 Ko., set de instruciuni n numr de 45.
Intel 8008 (anul 1972), magistrale pe 8 bii, tehnologie PMOS; frecvena 800 kHz, viteza
30000 operaii/s, memorie adresabil 16 Koctei, set de 48 instruciuni.
INTEL 8080 (anul 1974), realizat n tehnologie NMOS, magistral pe 8 bii, capacitate de
adresare 64 Ko, frecven de tact 2,083 MHz, 200000 operaii/sec, set de 72 instruciuni. Cu acest
microprocesor s-a construit primul calculator personal comercial APPLE.
n 1978, apare INTEL 8086 care a deschis seria microprocesorului pe 16 bii, frecven de 4
sau 8 MHz, execut 330000 operaii/sec. Poate adresa fizic i virtual 1Mo cu o mrime a segmentului
de 64 Koctei. n 1978 Intel dezvolt microprocesor 8088 care este la fel ca 8086 la nivel de arhitectur
interne, fiind un hibrid perfect ntre 8 i 16 bii.
n 1982 apare INTEL 80286, un microprocesor realizat ntr-o tehnologie superioar fa de
predecesorul su 8086.Lucreaz la frecvene de 6,8,10,12 MHz sau 16 MHz, putnd s ating pn la
2,1 milioane de instruciuni/s. accesnd un spaiu de memorie real de pn la 16 Mo i un spaiu de
memorie virtual de pn la 1 Go. IBM a folosit acest microprocesor la realizarea IBM-PC AT n 1984,
utiliznd n principal viteza mrit a microprocesorului. Odat cu evoluia programelor,
microprocesorul 80286 a artat c este limitat acest lucru observndu-se la modul de programare
segmentat al familiei INTEL.
n 1985 a aprut microprocesorul 80386. Arhitectura este pe 32 bii att intern ct i extern
realizat pe tehnologia CMOS II, Noutatea introdus de acest microprocesor este tehnica pipe-line,
prelucrarea paralel i lucru la 16, 25, 33 MHz astfel c se pot prelucra 3-5 milioane de instruciuni/s la
25 MHz. S-a pstrat compatibilitatea cu produsele software pentru microprocesoarele 8086/8088 i
80286. 80386.
Microprocesorul 80486 nu este diferit de 80386, doar are o tehnologie superioar, 486 este mai
rapid i nglobeaz n structura sa circuite care n mod tradiional erau circuite suport exterioare cum ar
fi: coprocesorul matematic, controllerul pentru memoria cache. Lucreaz la frecvena de pn la
100MHz.
1993 PENTIUM- mrimea magistralei de date de 64 de bii, frecvene de lucru ntre 75 MHz
i 150 MHz.
1995 Procesorul Intel Pentium Pro, destinat aplicaiilor asistate de calculator, a calculelor
tiinifice.
1997 Intel Pentium II proiectat n special pt. prelucrare video i pentru Grafic, lucreaz la
frecvene de 400MHz. Uureaz schimbul de informaii multimedia, n special datorit setului de
instruciuni MMX.
1998 Intel Pentium II XEON construit n special pentru Servere pe care ruleaz aplicaii
mari consumatoare de resurse. Se pot realiza sisteme de calcul cu 2, 4, sau 8 microprocesoare.
1999 Intel Celeron - versiune mai slab a procesorului Pentium II destinat calculatoarelor
mai ieftine, oferind un raport bun pre/calitate
1999 Intel Pentium III - introduce un set de 70 de instruciuni.noi, lucreaz la frecvene de
500 700 MHz.
1999 Intel Pentium II Xeon versiunea pentru servere
2000 - Intel Pentium IV destinat crerii de fiiere video performante, graficii 3D
2000 Intel Xeon dedicat pentru servere
2001 Intel Itanium, primul procesor cu magistrala de adrese de 64 de bii, fiind destinat
numai serverelor
Ulterior au aprut microprocesoarele Intel Pentium II, Intel Pentium III, .a..
Familii de procesoare utilizate n telefonie mobile: INTEL, AMD, Transmeta, VIA

tiina microprocesoarelor are ca obiectiv prelucrarea unei probleme, exprimat n limbaj natural, ntr-
o funcie electronic care se execut pe un circuit
Cum este structurat arhitectura microprocesoarelor?
1.Bii i octet
Cum este reprezentat informaia din punct de vedere electric?
Care sunt operaiile la nivel de bit i octet?
2.Logica digital
Cum se construiesc circuitele de prelucrare a informaiei?
3. Microprocesor i Setul de Instruciuni
Cum este construit un procesor, scheme bloc?
Ce operaii trebuiesc implementate?
Programarea n limbaj de asamblare
Cum se utilizeaz instruciunile pentru implementarea algoritmilor?
Programarea modular
4.Intrri/ieiri, capcane, ntreruperi
Cum comunic procesorul cu dispozitivele externe?
5.Programarea

Microprocesoare. Noiuni de baz

Sistemele de calcul sunt utilizate in toate domeniile si de aceea intrebarile care vin sunt la ce sunt
ultilizate, cum sunt realizate si ce pot rezolva. Sistemele de calcul sunt regasite in toate domeniile si
pot fi clasificate in: scop general, scop particular, eembedded.
Un calculator general este puntea de legatura dintre aplicatie si dispozitivele utilizate. Calculatoarele
au evoluat in functie de aplicatii si de cerinte precum viteza, cost, interfatare, scalabilitate.
Obiectivul final este de a transforma o problem, exprimat n limbaj natural ntr-o execuie
electronic care ruleaz n jurul unui circuit - aceasta este tiina microprocesoarelor.
Microprocesoarele au evoluat foarte mult in ultimii ani datorita cerintelor pietei. Principalele motive
sunt timp de raspuns si algoritmi implementati.
Sunt doua nivele de descriere a problemei: nivelul program si nivelul circuite. Din nivelul program se
pot detalia: problema de rezolvat, algortimul si programul. Al doilea nivel are ca subnivele: arhitectura
setului de instruciuni, circuitele logice si dispozitivele.
Ce este microprocesorul?
CREIERUL sistemelor de calcul adica unitatea de prelucarare si control (Fig.1.1.).
Ce este arhitectura microprocesor?
Totalitatea atributelor unui microprocesor care sunt create pentru utilizator incluznd i setul de
instruciuni.
Microprocesorul lucreaz n binar 0 sau 1. Cea mai mic unitate de stocare a informaiei fiind bitul.
In memorie exist cuvinte binare de o mrime fixat de microprocesor.
Arhitectura unui microprocesor (Fig.1) conine ca elemente de baz unitatea central de comand i
control, memoria intern i dipozitivele de intrare ieire. Conexiunile dintre aceste blocuri sunt
realizate prin magistrale.

Unitatea centrala de
comanda si control
Memoria interna Dispozitive de
intrare/iesire

Fig.1 Arhitectura de baza a unui microprocesor

Resursele fizice ale unui microprocesor ndeplinesc urmtoarele funcii:


funcia de intrare-ieire
funcia de memorare
funcia de comand i control
funcia de prelucrare
Unitile sunt grupate n dou componente mari:
unitatea central de prelucrare i comand;
unitile de intrare-ieire (periferice).
unitatea central de prelucrare i comand
Blocuri componente - unitatea de comand i control, memoria intern i unitatea aritmetico-
logic
Funcii
urmrirea executrii unui program aplicativ
comanda celorlalte uniti funcionale
comunicarea direct cu utilizatorul
msurarea timpului
decizie
Tipuri de magistrale
Definiie: asigur transferul informaiei ntre blocurile componente ale microprocesorului
Magistrale interne
Magistrale externe
Magistrale de date (bidirecional)
Magistrale de adrese (unidirecional)
Magistrale de control (bidirecional)
Obs: Nu e obligatoriu ca magistralele s aib aceleai dimensiuni

Memoria
Rol -Stocare a informaiei binare
Asemnarea cu lumea real Sertare adresa numrul sertarului, coninutul valoarea
memorat
Structur tabelar, este mprit n locaii care sunt apelate prin adrese
Dimensiunea adresei poate fi diferit de a coninutului de memorie
Performana memoriei este dat de dimensiunea locaiei i de capacitatea de memorare (8, 16,
32 bii)
Numrul de cifre binare coninute ntr-o locaie depinde de modul n care microprocesorul
organizeaz informaia n memorie; mrimea unei locaii va fi denumit formatul memoriei,
exprimat n numr de bii (de regul 8, 16, 32 sau 64 bii).
Adresa, reprezentnd numrul de ordine al locaiei, care permite identificarea sa n cadrul
secvenei de locaii (exist o coresponden biunivoc ntre fiecare locaie de memorie i adresa
sa).

Memoria intern - are rolul de a memora datele care sunt necesare efecturii unui ciclu de
prelucrare, rezultatele pariale sau finale ale procesului de prelucrare precum i programul
aplicativ pe baza cruia se prelucreaz datele.
Noiuni aferente:
- "Harta memoriei": totalitatea locaiilor de memorie pe care le poate adresa un microprocesor.
- "Pagini" i/sau "segmente": subdiviziuni logice ale hrii memoriei, ale cror dimensiuni, fixe sau
dinamice, sunt specifice modului n care un microprocesor anume organizeaz memoria.
Instruciunea: informaia codificat (binar) prin care se impune microprocesorului desfurarea
unei aciuni specifice.

Observaii:
Fiecare instruciune este asociat n mod biunivoc cu un ir de cifre binare; deoarece acestea
"codific" instruciunile, vor fi denumite coduri.
O instruciune reprezint cea mai simpl aciune, cu rezultat bine precizat, din activitatea unui
microcalculator a crui unitate central de prelucrare a informaiei este un microprocesor anume.
Un microprocesor concret poate "recunoate" i executa numai codurile corespunztoare
instruciunilor pentru care a fost construit; totalitatea instruciunilor pe care un microprocesor le poate
recunoate i executa alctuiete setul de instruciuni al microprocesorului respectiv.
niruirea instruciunilor n memoria de program nu este haotic ci sub form de programe,
noiune definit ca fiind o secven de coduri de instruciuni organizate n mod logic i coerent dup un
anumit algoritm, astfel nct ntregul microcalculator s execute o sarcin prestabilit. Noiunea de
"sarcin" (task) nu trebuie confundat cu cea de program: sarcina unui microcalculator corespunde
unei alocri dinamice a resurselor hardware i software; exist sarcini pentru a cror ndeplinire sunt
necesare mai multe programe.
Memoria nu are nici un control asupra semnificaiei informaiei pe care o conine.

Dispozitive de intrare/ieire
Rol realizeaz legatura cu exteriorul
Dispozitivele de intrare/ieire elementare porturi
Portul transmite informaia, stocat n memorie, sub form de semnal electric
- Exist o "hart a porturilor" care poate sau nu s fac parte din harta memoriei.
Singura deosebire esenial fa de locaiile de memorie este legtura fizic pe care porturile o
asigur cu exteriorul; pentru microprocesor, de multe ori, aceast legtur fizic este transparent i
nesemnificativ.

Clasificarea microporcesoarelor se poate realiza dup:


- tipul de memorie intern
- numrul de uniti centrale de prelucare
- dimensiunea magistralei de date
- sarcinile de execuie
- setul de instruciuni

Toat informaia care circul n sistemele de calcul este codificat/transformat n numere binare

ntr-un calculator este doar 0 binar i 1 binar


Curent 1 binar
Fr curent 0 binar
Octet = 8 bii
In memorie avem numai cuvinte binare de o mrime fixat de microprocesor
Baze de numeraie
Baza 10 format din cifre de la 0-9
Baza 5 format din cifre de la 0-4
Baza 16 format din cifre de la 0-9 i litere de la A-F reprezentnd numerele 10-15
Baza 2 format din cifrele 0 i 1 (utilizat n stocarea informaiei la microprocesoare)
Instruciunile sunt codificate n numere binare
Toat informaia care circul n sistemele de calcul este codificat/transformat n numere
binare
Stocarea informaiei n memorie
Bii cifre 0 i 1
Nibble grup de 4 bii
Octet grup de 8 bii
Cuvnt grup de 16 bii sau 2 octei
Cuvnt dublu grup de 32 bii sau 4 octei
Reprezentarea variabilelor n memorie
Caracter 2 octei
ntreg 4 octei
Float 4 octei
Boolean - 1 bit
Long 4 octei
Ko - 210 103 ;
Mo - 220 106 ;
Go - 230 109 ;
To - 240 1012
Biii cu semn sunt prelucrai ca toi ceilali
Scderea este un caz particular al adunrii, numerele negative sunt tratate ca numere de adunat

Reprezentarea numerelor n virgul fix


Se consider reprezentarea unui numr n baza 2 de numeraie cu un numr de cifre fixat naite de
virgul (n) i altul fixat dup virgul (m)
dn-1dn-2dn-3....d2d1d0d-1d-2...d-m (dac m=0 numrul este ntreg)
N=(00011010110)2 =(?)10
Reprezentarea numerelor cu semn
Exist trei moduri de reprezentare +/- N cu n bii
Se utilizeaz bitul cel mai din stnga pentru semn
(n=4, m=0) 00113 1011 -3
Complement fa de 1 se consider reprezentarea prii ntregi i inversm
biii
(n=4, m=0) 01004 1011 -4
Complement fa de 2 la fel ca mai sus numai ca nainte de inversare se
scade 1
(n=4, m=0) 01106 1010 -6

Reprezentarea n cele trei convenii


- Numerele pozitive se reprezint identic.
- n "marime si semn", numerele negative difer de cele pozitive numai prin bitul de semn.
- n "complement fa de 1", marimea numarului negativ se obine din reprezentarea precedenta prin
complementare bit cu bit; convenia pentru bitul de semn se pastreaz.
- n "complement fata de 2", marimea numarului negativ se obine din reprezentarea precedent prin
adunarea unei cifre binare 1 la lsb

Extinderea reperzentrii numerelor binare


Regulile de "extindere a numerelor cu semn, n complement fata de 2":
- Bitul de semn rmne pe poziia cea mai semnificativ
- Partea care reprezint marimea numrului va ocupa poziiile cele mai puin semnificative ale
numrului extins
- Restul poziiilor din numrul extins se completeaz cu cifre binare identice cu cea care reprezint
semnul (0 pentru numere pozitive i 1 pentru numere negative)

Reprezentarea ntregilor n "zecimal codificat binar" (ZCB)


- Reprezentarea "ZCB mpachetat" n care fiecare octet din memorie cuprinde cte doua cifre
zecimale, una pe nibble-ul mai putin semnificativ si cealalta pe nibble-ul superior. Plaja de numere
zecimale acoperita de o reprezentare cu 8 biti se micsoreaza de la 256 la 100 de numere: 0 99.
- Reprezentarea "ZCB nempachetat" n care fiecare octet cuprinde o singura cifra zecimala pe nibble-
ul mai putin semnificativ. Restul cifrelor binare se completeaza cu 0.

Reprezentarea numerelor cu zecimale "cu virgul mobil"; reprezentare normalizat


Dou entiti informaionale: "mantisa" M si "exponentul" EXP:
numar binar = M * 2 EXP
Un exemplu:
b31......b24b23.......................b0 ,
n care: - b31 b24 reprezint exponentul, avnd semnul n pozitia b31.
- b23 b0 reprezint mantisa cu semnul la b23.
Plaja numerelor reprezentabile n acest fel: M * 2 128

Reprezentarea datelor alfanumerice


Vom nelege prin "date alfanumerice" sau "caractere" oricare dintre semnele care pot fi tiparite de
la tastatura unui calculator
"Seturi de caractere": grupuri minime de simboluri considerate suficiente pentru a asigura o editare
ct mai complet a unui text.
Pentru fiecare caracter se va folosi o reprezentare binara, un cod, cu care caracterul (dintr-un set
prestabilit) este n relatie biunivoc
Standardul "ASCII" ( de la "American Standard Code for Information Interchange")

Convenii pentru notaii utilizate n carte

Neterminali

r un registru oarecare;
r8 un registru de 8 bii;
r16 un registru de 16 bii;
ri , rj registre individualizate, diferite;

mem o locaie de memorie oarecare (sau mai multe locaii succesive);


mem8 o locaie de memorie de un octet;
mem16 o locaie de memorie de 16 bii (pot fi dou locaii succesive dac formatul este
octetul);
mem32 o locaie de memorie de 32 de bii (pot fi patru locaii succesive dac formatul este
octetul);
memi o locaie de memorie individualizat (n scopul de a o deosebi de alte locaii de
memorie);

adr o adres oarecare;


adr8 o adres pe 8 bii;
adr16 o adres pe 16 bii;
adr24 o adres pe 24 de bii;
adri o adres individualizat (n scopul de a o deosebi de alte adrese);

(r) coninutul unui registru oarecare;


(ri, rj) coninutul a dou registre concatenate;
(r)l coninutul jumtii inferioare (mai puin semnificativ) a unui registru;
(r)h coninutul jumtii superioare (mai semnificativ) a unui registru;
((r)) coninutul unei locaii de memorie a crei adres se afl ntr-un registru (adresare
indirect);
(mem) coninutul unei locaii de memorie oarecare;
adrl jumtatea inferioar a unei adrese;
adrh jumtatea superioar a unei adrese;
data un operand oarecare;
data8 un operand de 8 bii;
data16 un operand de 16 bii;
disp8 un deplasament pe 8 bii;
disp16 un deplasament pe 16 bii;
port un port de intrare/ieire oarecare;

Terminali

R1, R2, A, AX, BP, A6, Dn, An nume de registre;


(R1) coninutul registrului R1;
(R1, R2) coninutul perechii de registre R1 i R2;
((R1)) coninutul locaiei de memorie a crei adres se afl n registrul
R1;
MEM, MEM1 nume de locaii de memorie;
ADR, ADRn nume de adrese;

Operatori
atribuire;
concatenare;
not complementare (negaie);
operaia logic SAU;
operaia logic I;
operaia logic SAU EXCLUSIV;
+ adunare;
- scdere;
nmulire;
DIV mprire ntre numere ntregi;
MOD restul mpririi ntre numere ntregi;

Alte simboluri:
[ ] ncadreaz elemente de sintax opionale;
| delimiteaz elemente de sintax alternative.

Aplicaii
Adunare complement fa de 1 (reine 1)

0110+1110=10100+1 0101 (6+(-1)=5)

0001+1101=1110 1110 (1+(-2)=-1)

Adunare complement fa de 2 (direct)

0110+1111=10101 (6+(-1)=5)

0001+1110=1111 (1+(-2)=-1)

1.Convertii urmtoarele numere n baza 10:


(a) 1101.01
(b) 111001.0011
(c) 101011.0101
(d) 111.0001
2.Convertii urmatoarele numere n baza 2:
(a) 234.5
(b) 12.3
(c) 7767.09
(d) 123.4
(e) 72.78
3. Convertii urmatoarele numere n baza 10:
(a) A3.3
(b) 129.C
(c) AC.DC
(d) FAB.3
(e) BB8.0D
4. Convertii urmatoarele numere n baza 2, 8 i 16:
(a) 23
(b) 109
(c) 123
(d) 99
(e) 178

ntrebri de verificare
Care sunt arhitecturile microprocesoarelor?
Care sunt asemanarile si deosebirile intre microcontroler si
microprocesor?
Care sunt bazele de numeratie folosite in tehnica de calcul?

De reinut
Cum este structurat arhitectura microprocesoarelor?
1.Bii i octet
Cum este reprezentat informaia din punct de vedere electric?
Care sunt operaiile la nivel de bit i octet?
2.Logica digital
Cum se construiesc circuitele de prelucrare a informaiei?
3. Microprocesor i Setul de Instruciuni
Cum este construit un procesor, scheme bloc?
Ce operaii trebuiesc implementate?
Programarea n limbaj de asamblare
Cum se utilizeaz instruciunile pentru implementarea algoritmilor?
Programarea modular
4.Intrri/ieiri, capcane, ntreruperi
Cum comunic procesorul cu dispozitivele externe?

Bibliografie

1. Burileanu C., Ionita M. Filotti M. Mmicroprocesoarele x86 o


abordare software , Ed. Albastra, 1999
2. Corneliu Burileanu, Arhitectura microprocesoarelor, Note de curs,
Bucureti
3. Andrew S. Tanenbaum Organizarea structurata a calculatoarelor
Editia a IVa, Ed.Agora, Tg. Mures, 1999.
4.