Sunteți pe pagina 1din 28

SISTEME CU MICROPROCESOARE L1, L2, L3

L1_L2_L3. INTRODUCERE ÎN SISTEME CU MICROPROCESOARE


Descriere şi funcţionare - Hardware

 OBIECTIVE
1. Arhitectura standard a unui microprocesor;
2. Arhitectura internă a microprocesorului 8086, 80386 şi 80386EX;
3. Sistem cu microprocesor.

 MATERIALE NECESARE
Modul experimental Sistem cu Microprocesor 32 biţi - modul Z3EV

 ARHITECTURA STANDARD A UNUI MICROPROCESOR


Structura standard a unui microprocesor (Fig.1.1), conţine următoarele module
principale: Unitatea centrală de procesare, Memoria, Porturile Intrare/Ieşire,
Magistralele de comunicaţii.
n-biţi m-biţi
Magistrală Porturi intrare/ieşire I/O
Magistrală
externă externă
de date Memorie de instructiuni (ROM)
de adrese
Memorie de date (RAM)

Registre generale
Registrul I/O .. Registrul adrese
.
Mag. internă adrese m-biţi
Mag. internă date n-biţi

Registrul de Numărător de
Registrul indicatori instrucţiuni (IR) adrese (PC)
de condiţii
... OPCODE Adresă
operand
Unitatea
aritmetică
Decodificatorul
şi logică instrucţiunii (ID)
(ALU)

Registru Unitatea de comandă şi


acumulator control CPU TACT

Microprocesor

Fig.1.1. Structura standard a unui microprocesor 1


L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
1. Unitatea centrală de procesare (The Central Processing Unit CPU) - unitatea
Centrală de Calcul controlează operaţiunile microcomputerului şi este componentă a
microprocesorului. Ea preia instrucţiunile în format binar şi le transformă într-o serie
de acţiuni care sunt efectuate secvenţial.

2. Unitatea aritmetică şi logică (Arithmetic and Logic Unit ALU) - procesează


informaţia realizând operaţii aritmetice şi logice, fiind un circuit combinaţional,
prezintă două intrări şi o ieşire necesitând atât pentru cuvintele de intrare, cât şi pentru
cele de ieşire registre de memorare temporară.

3. Memoria (RAM şi EPROM) - memoria constă în general intr-o combinaţie de


memorie RAM şi EPROM. Memoria EPROM conţine codul binar al instrucţiunilor
care trebuie efectuate de microprocesor. Accesul la această memorie este, în general,
doar acces în citire. Memoria RAM conţine datele rezultate în timpul executării unui
program. Accesul la această memorie este un acces citire/scriere.

4. Porturi Intrare/Ieşire (Input/Output) - porturile Intrare/Ieşire permit sistemului


să schimbe date cu ”lumea exterioară”. Dispozitivele utilizate de către calculator
pentru a se conecta la dispozitive externe sunt numite porturi. Un port de intrare
permite citirea datelor de la tastatură sau de la un convertor A/D. Un port de ieşire
permite trimiterea datelor la dispozitivul de afişare, la un convertor D/A, etc.

5. Magistrale (de Adrese, de Date, de Control) - magistralele sunt formate din linii
paralele de semnal (8,16, 20,32, etc.) care permit comunicarea dintre microprocesor şi
alte componente din interiorul microcalculatorului.
5.a. Magistrala de adrese
Este utilizată de CPU pentru a indica adresa locaţiei de memorie care va fi citită sau
scrisă. Numărul locaţiilor de memorie care pot fi apelate de CPU depinde de numărul
liniilor de adresă (Tab.1.1).
Tab.1.1. Corespondenţă linie adresă – memorie apelabilă
Număr linii adresă Număr locaţii de memorie apelabile
16 64 KB
20 1 MB
24 16 MB
Magistrala de adrese este unidirecţională: preia semnale de la microprocesor şi le
trimite mai departe către memorie şi porturile I/O.
5.b. Magistrala de date
Este utilizată de CPU pentru a citi şi scrie date de la memorie şi porturile I/O.
Este formată din 8, 16, 32 linii în paralel.
Toate circuitele de memorie şi I/O sunt conectate la magistrala de date, dar doar un
singur circuit este activ la un moment dat.
Circuitele care nu depun (comunică) pe magistrala de date în momentul respectiv se
2
SISTEME CU MICROPROCESOARE L1, L2, L3
află în starea de aşteptare three-state.
Magistrala de date este bidirecţională: transferă date între componentele sistemului.
5.c. Magistrala de control
Contă dintr-un număr de linii de semnal, între 4 şi 12, şi permite microprocesorului să
indice memoriei şi dispozitivelor periferice operaţia curentă.
Semnale curente de control sunt: citirea memoriei, scrierea memoriei, citirea I/O,
scrierea I/O.
Magistrala de control este bidirecţională: preia şi transmite semnale de control şi stare
în/între sistem şi I/O.

 STRUCTURA INTERNĂ A MICROPROCESORULUI 8086


Microprocesorul 8086 reprezintă baza familiei x86, iar structura internă a acestuia este
un model simplificat sau similar pentru alte microprocesoare din clasă (Fig.1.2).

Interfaţă
Memorie


6
“Coadă” 5
pentru flux de 4
instrucţiuni 3
ES pe byte 2
CS 1
SS
DS
Control
IP
Sistem

AH AL
BH BL Unitate Aritmetică
CH CL Logică
DH DL
SP
BP
SI Flaguri Operanzi
DI

Fig.1.2. Structura microprocesorului 386


Schema bloc este împărţită în două zone funcţionale independente: EU (Execution
Unit), BIU (Bus Interface Unit)

1. EU (Execution Unit) – Unitatea de execuţie


Transformă instrucţiunile preluate de unitatea de interfaţare a magistralelor (BIU) într-

3
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
o serie de acţiuni şi le efectuează. Conţine următoarele module.
1.a. Control Sistem - ghidează şi controlează toate operaţiile interne.
1.b. Unitatea aritmetică/logică - realizează toate operaţiile aritmetice (adunare,
scădere, incrementare, decrementare, etc.) şi logice (AND, OR, XOR, etc.).
1.c. Registrul Flag1- conţine indicaţii despre rezultatele şi condiţiile executării
instrucţiunilor, precum şi pentru controlul operaţiilor Unităţii de execuţie (EU).
Registrul Flag are 9 flag-uri active din cei 16 biţi (Fig.1.3).
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
U U U U OF DF IF TF SF ZF U AF U PF U CF

Fig.1.3. Structura registrului FLAG pentru microprocesorul 80386


Unde:
U – Undefined – nedefinit;
OF – Overflow Flag;
DF – String Direction Flag;
IF – Interrupt Enable Flag;
TF – Single Step Trap Flag;
SF – Sign Flag – MSB of result;
ZF – Zero Flag – Set if result = 0;
AF – Auxiliary Carry Flag for BCD;
PF – Parity Flags – Set if result has even parity;
CF – Carry Flag – Set by carry out of MSB.
1.d. Registre care pot fi:
- Registre de uz general - sunt în număr de 8 registre pe 16 biţi, ce pot fi divizate
în registre pe 8 biţi (Fig.1.4).
Principalele registre de uz general sunt:
AX – Acumulatorul primar;
BX – Acumulator şi registru bază;
CX – Acumulator şi contor;
DX – Acumulator şi adresare I/O.
Fiecare din aceste registre poate fi apelat, printr-o metodă alternativă, ca un
cuplu de două registre de 8 biţi fiecare (un byte). Bitul cel mai din stânga din
cuplul de registre este definit ca MSB (Most Semnificativ Byte – cel mai
semnificativ), bitul cel mai din dreapta fiind LSB (Last Semnificativ Byte – cel
mai puţin semnificativ).
Registrul AX poate fi separat în două registre şi anume: AH - MSB şi AL - LSB.
Analog se poate proceda şi pentru registrele BX, CX şi DX. Respectiv BX în BH
şi BL, etc.
- Registre index - sunt în număr de două registre, ce sunt folosite pentru şiruri,

1 Pentru corelare cu restul termenilor vom păstra denumirea de Flag în loc de steag sau
indicator
4
SISTEME CU MICROPROCESOARE L1, L2, L3
fiecare având dimensiunea de 16 biţi. Acestea se numesc SI (Source Index) şi DI
(Destination Index) şi sunt frecvent utilizate pentru a căuta datele de tip string
(şir de caractere) în memorie. Aceştia pot fi utilizaţi şi ca registre de uz general
de 16 biţi.
- Registrul SP (Stack Pointer – indicator de stivă) - este utilizat pentru
implementarea unei stive hardware în memorie. El poate fi folosit împreună cu
registrul BP (Base Pointer) care este folosit ca registru de 16 biţi pentru uz
general.

AX
AH AL
BX
BH BL
CX
CH CL
DX
DH DL

SI
DI

SP
BP

Fig.1.4. Structura Registrelor


2. BIU (Bus Interface Unit) – Unitatea de interfaţare a magistralelor
Tratează adresele externe, preia instrucţiunile din memorie, scrie şi citeşte datele din
memorie sau de la dispozitivele externe I/O. Conţine următoarele module:
2.a. Queue – este folosită în cazul când unitatea de execuţie (EU) execută o
instrucţiune care nu are nevoie să folosească magistrala, atunci unitatea de
interfaţare a magistralelor (BIU) preia din memorie până la maxim 6 octeţi (bytes)
de instrucţiuni, pentru instrucţiunile următoare.
BIU memorează aceşti octeţi în registre stivă FIFO. Când EU este gata pentru
următoarea instrucţiune, octeţii sunt citiţi din registrele stivă.
Această tehnică de prelucrare paralelă, numită pipelining, permite executarea
instrucţiunilor într-un mod rapid.
2.b. Registre de segment - sunt registre speciale (CS, DS, SS, ES) conectate la
magistrala de adresare a memoriei externe. Tradiţional, microprocesoarele

5
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
prelucrează date din memoria externă utilizând un cuvânt de adresă de 16 biţi1, în
acest caz numărul maxim de adrese apelabile fiind 65536, sau 64K2. De exemplu
microprocesorul 8086 permite adresarea a 1024KB (1MB) de memorie ceea ce
necesită o adresare pe 20 biţi. Folosind adresarea pe 16 biţi şi utilizând metoda
memory address segmentation se obţine o adresare pe 20 biţi. Adresarea a 1MB de
memorie este necesară pentru a putea activa numere incluse în intervalul 0 ÷
1048576, respectiv 00000H ÷ FFFFFH, care de asemenea necesită 20 biţi. Setul
complet de 1048576 adrese diferite ocupă complet 1 MB. Din punctul de vedere al
utilizatorului blocul pentru adresarea memoriei se numeşte SEGMENTS (Fig.1.5).

Fig.1.5. Adresarea memoriei


Fiecare segment conţine până la 64KB de date, aceasta permiţând utilizarea
standard a 16 biţi de adresare într-un segment.
Un segment poate iniţia fiecare bloc de 16 biţi (denumit PARAGRAPH) în spaţiul
de adrese de 1MB, în care adresa de start a acestora este figurată pentru diferite
segmente de 64KB; în fiecare dintre aceştia cei patru biţi inferiori sunt 0 (Fig.1.6).
OBS. Este necesar să reţinem segmentele care nu sunt integral ocupate (64KB de
date reprezintă maximul de ocupare). Un segment poate conţine unul, o sută,
sau o mie de byte.
Adiţional, segmentele pot fi suprapuse (folosite împreună), astfel, un byte de

1 când adresa este de 16 biţi ca dimensiune


2 216=65535
6
SISTEME CU MICROPROCESOARE L1, L2, L3
date poate fi accesat de la mai mult decât o adresă a segmentului de început.

Fig.1.6. Structura memoriei – segment 16 biţi

Diagrama segmentelor utilizate de microprocesor pentru calcularea efectivă a


adresei se realizează ataşând la cei 16 biţi de adresă 4 biţi inferiori 0 (Fig.1.7).

16 biți adresă relativă

16 biți adresă segment

20 biţi adresă fizică

Fig.1.7. Calculul unei adrese fizice din memorie

La accesarea memoriei microprocesorul selectează unul din cele patru registre de


segment utilizate pentru iniţializarea adresei de segment (Fig.1.8).
Această valoare este deplasată1 cu patru biţi spre stânga şi adăugată la offset adress
(adresa relativă) pentru a forma ce 20 de biţi addresa fizică, constituind adresa
completă2, care este utilizată pentru accesarea memoriei.
Registrele segment prezintă următoarea semnificaţie:
 Registrul CS (Code Segment) - defineşte întotdeauna segmentul queue
curent, care conţine instrucţiunile care trebuie urmărite de către microprocesor
(program). Registrul pe 16 biţi IP indică instrucţiunea care va fi efectuată.

1 Deplasare pe bit.
2 psihical address
7
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
De fapt, când procesorul detectează instrucţiunile, el combină adresa
corespunzătoare găsită în registrul IP cu prima adresă de segment găsită în
registrul CS.
Segment cod
Segment date
Segment stivă
Extra segment

Fig.1.8. Registrele segment pentru adresarea memoriei


Registrele segment prezintă următoarea semnificaţie:
 Registrul CS (Code Segment) - defineşte întotdeauna segmentul queue
curent, care conţine instrucţiunile care trebuie urmărite de către microprocesor
(program). Registrul pe 16 biţi IP indică instrucţiunea care va fi efectuată.
De fapt, când procesorul detectează instrucţiunile, el combină adresa
corespunzătoare găsită în registrul IP cu prima adresă de segment găsită în
registrul CS.
 Registrul DS (Data Segment) - defineşte începutul segmentului de date, care
poate fi utilizat pentru memorarea datelor de uz general.
 Registrul SS (Stack Segment) - defineşte începutul segmentului stivă, şi este
utilizat pentru toate operaţiile cu stiva.
 Registrul ES (Extra Segment) - defineşte extra-segmentul, care poate fi
utilizat ca zonă secundară pentru memorarea datelor generale. Extra-segmentul
este de altfel utilizat pentru destinaţia operaţiunilor cu instrucţiuni pentru
lucrul cu şiruri de caractere.

64K cod

64K date
stări

0150H
4200H 64K stivă
CBUS
XCD0H comenzi
B000H
64K extra

Fig.1.9.A. Acces simultan al memoriei

8
SISTEME CU MICROPROCESOARE L1, L2, L3
Registrele segment permit programatorului să acceseze simultan 4 spaţii de adrese
diferite, fiecare putând conţine până la 64KB de date (Fig.1.9 A,B).
Registrele de segment sunt programate pentru a permite accesarea simultană a
maximului de memorie (Fig.1.9.A). Cu această configuraţie este posibil să avem
64KB de instrucţiuni, 64KB spaţiu stivă şi 2x64KB spaţiu date.
De exemplu un program de 8K cod aflat la adresa 2000H prezent în segmentul
queue face referire la 2K date la adresa 4000H în segmentul de date şi poate utiliza
256 octeţi din stivă la adresa 4800H (Fig.1.9.B).

8K cod

2K date

0150H 256 stivă


4200H
XCD0H
B000H

Fig.1.9.B. Acces simultan al memoriei – diagrama reală

OBS.Dacă cerinţele pentru memorarea datelor sunt minimale, un extra-segment


independent este inutil. Registrul ES este astfel programat la fel ca extra-
segmentul overlaps şi este identic cu segmentul de date.
2.c. Registrul IP (Instruction Pointer) - conţine adrese de 16 biţi, sau offset, pentru
următorul octet de cod intern din segmentul curent. Adresarea efectivă pe 20 biţi
este obţinută cu metoda descrisă anterior.

 EVOLUŢIA DE LA 8086 LA 80386


Microprocesorul următor lui 8086, lăsând deoparte microprocesorul 186, este
microprocesorul 286. Acesta este un upgrade la 16 biţi al microprocesorului 8086 care
dispune de circuite de management pentru memorie virtuală, circuite de protecţie şi de
posibilitatea de a adresa 16 MB de memorie. Este primul microprocesor din serie
proiectat pentru folosirea în mod multi-utilizator sau sistem multi-sarcină.
Microprocesorul 386 este un microprocesor pe 32 biţi cu magistrala de adrese pe 32
biţi. Unitatea ALU pe 32 biţi permite prelucrarea rapidă a datelor, prin adresarea pe 32
biţi a 4 GB de memorie. Este dedicat sistemelor operative multi-sarcină.
Microprocesorul 80386 este format din Unitatea centrală de procesare, Unitatea de

9
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
control a memoriei şi Unitatea de interfaţare a magistralelor. Unitatea centrală de
procesare este formată din Unitatea de execuţie şi Unitatea de instrucţiuni. Unitatea de
execuţie conţine 8 registre pe 32 biţi pentru uz general, împreună cu unitatea ALU.
Unitatea de instrucţiuni decodează codul instrucţiunilor şi le depune pe acestea în stiva
de aşteptare pentru folosirea imediată de către Unitatea de execuţie.
Unitatea de gestionare a memoriei (MMU) Constă într-o Unitate de segmentare şi o
Unitate de editare. Memoria este organizată în unul sau mai multe segmente, fiecare
putând fi crescut până la 4GB. Unitatea de segmentare dispune de patru nivele de
protecţie pentru izolarea şi protejarea aplicaţiilor între ele.
Unitatea de interfaţare furnizează semnalele de conectare ale microprocesorului cu
periferice externe: memorii, dispozitive, I/O, etc.
Microprocesorul 80386 are 2 moduri principale de funcţionare:
 Real Mode – Modul real: microprocesorul 386 este mai rapid decât
microprocesorul 8086, folosind extensia la 32 biţi;
 Protected Mode – Modul protejat: microprocesorul 386 dispune de un sistem
sofisticat de control al memoriei pentru a permite operaţiile multi-sarcină1

 MICROPROCESORUL 80386EX
Microprocesorul cunoscut sub numele de 80386EX este o versiune particulară a
microprocesorului 80386 utilizând integral acelaşi nucleu, având multe periferice
simple integrate în structură (Tab.2.1). Această versiune se numeşte Embeded şi este
dedicată mediului industrial.
Microprocesoarele 8086, 80826, 80386, 80486 nu mai sunt folosite în calculatoarele
personale (fiind actual înlocuite de Pentium) şi nu sunt disponibile pentru cumpărare.
Continuă să fie disponibile versiunile industriale ca 80386EX.
Microprocesorul are magistrala de date pe 16 biţi şi magistrala de adrese pe 26 de biţi,
având nucleul perfect compatibil cu microprocesorul 386.
Principalele caracteristici sunt indicate în continuare:
 Caracteristici energetice nucleu:
- consum de energie redus;
- tensiune de alimentare 5V;
- frecvenţa maximă 25MHz;
 Sistem control sursă de alimentare:
- mod programare sursă;
- posibilitatea de oprire a tactului oricând;
 Arhitectura internă pe 32 biţi:
- tipuri de date pe 8,16 şi 32 biţi;
- 8 registre generale pe 32 biţi;
 Magistrală de date pe 16 biţi performantă:
- ciclul de magistrală pe 2 cicluri maşină;
- pipelining pentru adrese;

1 multi-task
10
SISTEME CU MICROPROCESOARE L1, L2, L3
 Unitate de control pentru memoria integrată:
- suport memorie virtuală;
- patru nivele de protecţie;
 Nivel mare de adresare a memoriei:
- 64 MB fizic;
- 64 Terabyte virtual;
- maximizare GB pe segment;
 Periferice integrate
Tab.1.2. Perifericele integrate în microprocesorul 386EX

Periferic Descriere
ICU Este formată din două controlere cu întreruperi programabile
Unitate de control a 82C59A configurate ca master/slave.
întreruperilor
TCU Conţine trei numărătoare independente pe 16 biţi, care numără
Unitate de control timer înapoi. Sunt echivalente funcţional cu 3 numărătoare 82C54.
SIO Conţine 2 unităţi asincrone UART, echivalente funcţional cu
I/O serial asincron NS16450. Fiecare canal conţine un generator baund-rate,
receiver, transmitter şi o unitate de control modem.
DMA Transferă date intern şi extern între orice combinaţie memorie-
Controler acces direct al I/O folosind adresarea spaţiului pe 26 de biţi. Este compatibil cu
memoriei controlerul 8237A.
SMM Furnizează un mecanism pentru managementul sistemului
Modul de control al folosind o combinaţie hardware şi software. Driver-ele de pe
sistemului linia externă SMI# pot genera întreruperi transparente pentru
sistem.
Unitatea de control a Pentru generarea semnalului de tact pentru microprocesor şi
generatorului de tact şi a perifericele interne este folosită o sursă externă. Controlul sursei
puterii de putere ne dă posibilitatea de a limita curentul consumat.
SSIO Furnizează un canal bidirecţional sincron de mare viteză. Constă
Unitatea sincronă serială dintr-un canal de transmisie, unul de recepţie şi unul de tact.
I/O
CSU O unitate programabilă pe 8 canale furnizează accesul la 8
Unitatea Chip Select unităţi externe. Fiecare canal poate opera pe 8 sau 16 biţi şi
poate genera până la 31 de stări de aşteptare.
RCU Oferă posibilitatea generării periodice a semnalului de refresh şi
Unitatea de control a adresei corespunzătoare. Este folosit pentru memoria dinamică
refresh-ului RAM.
Porturile paralele I/O Sunt furnizate 3 porturi programabile I/O. Pinii de ieşire ale
acestor porturi I/O sunt multiplexaţi de alte funcţii.
WDT Când este activă această unitate operează ca un timer pe 32 de
Unitatea Timer Watchdog biţi.
JTAG Unitatea simplifică testarea sistemului. Rezultatele sunt
Test-logic Unit compatibile cu standardul IEEE.
11
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
 SISTEM CU MICROPROCESOR
Noţiunea de sistem cu microprocesor se referă atât la microprocesor, ca element central
de prelucrare automată a informaţiei, cât şi la dispozitivele şi circuitelor electronice
absolut necesare funcţionării lui. Astfel de sisteme intră în componenţa foarte multor
tipuri de echipamente, începând cu calculatoare de uz general şi până la echipamente
industriale, medicale sau militare, bunuri de larg consum sau jucării sofisticate.
Indiferent de destinaţia şi rolul pe care îl are într-un astfel de echipament, se poate
spune că un sistem cu microprocesor primeşte informaţii din exterior, le prelucrează şi
furnizează înapoi rezultate (Fig.1.10).
Informaţiile pot avea diferite forme, de la apăsarea unei taste sau un clic de mouse şi
până la date introduse de senzori de temperatură, presiune, debit, deplasare, viteză,
acceleraţie etc., în general de elemente sensibile care vin în contact cu mediul exterior
şi care pot furniza informaţii despre acesta.
La rândul lor, rezultatele furnizate de sistemul cu microprocesor sunt prezentate într-un
format care fie se adresează operatorului uman, fiind afişate pe un ecran sau pe led-uri
ori acţionând un difuzor, fie sunt specifice elementelor de execuţie care intervin asupra
mediului exterior: deschiderea unui robinet, deplasarea unui robot etc.

Introducere Senzori şi
date: Codificatoare, traductoare
Tastatură, numărătoare, pentru mărimi
convertoare A/D

MEDIUL EXTERIOR
Mouse, fizice
Butoane
OPERATOR

Comenzi Stări
Nucleul
Mărimi Coduri Mărimi
electrice binare sistemului cu electrice
Microprocesor

Rezultate Rezultate

Afişare şi Elemente de
semnalizare: Decodificatoare, execuţie:
Ecran convertoare D/A, Rezistoare,
Led-uri amplificatoare Relele,
Difuzor Motoare

Fig.1.10. Structură hardware generală a unui sistem cu microprocesor

Pentru a putea reflecta starea mediului exterior sau pentru ca aceasta stare să devină
vizibilă la nivelul microprocesorului, informaţiile de la intrare trebuie adaptate la
formatul acceptat de către acesta: coduri binare. Adaptarea se realizează la două
niveluri:
 de către echipamente periferice de intrare (tastatură, mouse) şi senzori specializaţi
pentru mărimile fizice corespunzătoare, care transformă informaţia din exterior în
mărimi electrice;
12
SISTEME CU MICROPROCESOARE L1, L2, L3
 de către dispozitive electronice specializate (convertoare analognumerice,
numărătoare de impulsuri etc.), care transformă semnalele electrice în coduri
binare.
Pentru ca rezultatele furnizate de microprocesor, sub formă de coduri binare, să poată
interveni asupra mediului exterior sau să devină vizibile în acest mediu se utilizează de
asemenea două niveluri de transformare:
 codificare binară sau o conversie numeric analogică urmată de o amplificare a
puterii semnalului;
 transformare a semnalelor electrice în semnale luminoase (led-uri, afişoare cu
segmente luminoase), în căldură (rezistoare electrice) sau în cuplu mecanic
(motoare electrice) care să intervină asupra fluxurilor de informaţie, de energie şi
materiale din mediul exterior.
Dar nu numai intrările şi ieşirile unui sistem cu microprocesor trebuie transformate
pentru a fi compatibile cu microprocesorul, ci şi modul de prelucrare a intrărilor pentru
a genera ieşirile trebuie să fie compatibil cu un anumit tip de microprocesor pentru a
putea să fie folosit de către acesta (Fig.1.11). Relaţiile analitice între ieşiri şi intrări,
exprimate ca ecuaţii algebrice sau diferenţiale trebuie discretizate, convertite în relaţii
recursive şi trebuie ţinut cont de restricţii, de apariţia unor evenimente externe şi de
cunoştinţele euristice.
Relaţii analitice: Relaţii grafice: Relaţii grafice: Cod binar:
- ecuaţii de material - grafuri -C direct executabil
- ecuaţii de energie - scheme logice - Pascal de către
- cunoştinţe euristice - Basic microprocesor
- restricţii Relaţii grafice: - Fortran
- perturbaţii - pseudocod - Assembler

Fig.1.11. Etapele realizării programului pentru un sistem cu microprocesor


Toate acestea conduc la o reprezentare a relaţiilor intrare-ieşire într-o formă grafică
simplificată (grafuri, scheme logice) sau într-o formă textuală (pseudocod) care poate
fi apoi uşor de exprimat într-un program sursă scris într-un limbaj de nivel înalt (C,
Pascal, Basic, Fortran), apropiat de modul de gândire al omului, sau într-un limbaj mai
apropiat de cel al microprocesorului (limbaj de asamblare). Programul sursă trebuie
apoi translatat folosind diferite unelte de dezvoltare (compilatoare, asambloare,
editoare de legături) până la nivelul microprocesorului, într-un univers cu moduri de
reprezentare şi resurse restrânse şi cu un set limitat, în cod binar direct executabil de
către microprocesor.
Nucleul unui sistem cu microprocesor (Fig.1.1), este format din:
- microprocesor – ca unitate centrală de prelucrare (UCP);
- memorie – ca unitate de stocare temporară a informaţii;
- dispozitiv de I/O – ca unităţi de interfaţă cu exteriorul;
- logică auxiliară – pentru interconectarea de mai sus.

13
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
 MODUL CU MICROPROCESOR - Modulul Z3EV
Modulul de învăţare cu microprocesor pe 32 biţi1 este un sistem didactic cu
microprocesor, bazat pe procesorul Intel 80386EX, care acoperă toată problematica
apărută în timpul studierii sistemelor cu microprocesor (Fig.1.12).

Fig.1.12. Modul cu microprocesor 386EX –modul Z2EV

Utilizarea unui microprocesor din seria x86 Intel, creează un instrument adaptat multor
tipuri de aplicaţii. Acest modul conţine toate componentele tipice necesare studierii
unui astfel de sistem: microprocesor, memorie RAM şi EPROM, tastatură şi display cu
cristale lichide, interfaţă paralelă şi serială, intrări şi ieşiri analogice (Fig.1.13).

Fig.1.13. Poziţionarea blocurilor funcţionale sistemului 386EX –modul Z2EV

1 Platforma de laborator
14
SISTEME CU MICROPROCESOARE L1, L2, L3
Principalele caracteristici ale sistemului sunt:
- microprocesor 386EX la 2,21 MHz;
- memorie:
- 32KB EPROM - memorie sistem;
- 32KB EPROM - memorie utilizator;
- 32KB RAM static;
- tastatură hexazecimal/comenzi;
- afişaj LCD - o linie de afişare cu 16 caractere;
- interfaţă paralelă (8+8+4 linii I/O);
- interfaţă serială RS-232;
- intrări şi ieşiri analogice, 0-8V cu convertor pe 8 biţi;
- modul logic pentru probe;
- sursă de alimentare 5V;
- program de monitorizare înscris în memoria EPROM cu funcţiile:
- vizualizarea şi modificarea memoriei şi registrelor;
- execuţia continuă, sau pas cu pas, a programelor cu puncte de întrerupere;
- încărcarea programelor din calculator.

1. Modul Microprocesor 32 biţi – 32 Bit Microprocessor Unit


Acest modul conţine microprocesorul1 şi alte câteva componente necesare
funcţionării acestuia, un exemplu fiind generatorul de tact. El reprezintă nucleul
microcalculatorului, restul modulelor fiind elemente de execuţie aservite
acestuia (Fig.1.14).

Fig.1.14. Modul microprocesor 32 biţi

Modulul conţine următoarele componente:


 microprocesor Intel 386EX;
 generatorul de tact cu cuarţ la 4,43 MHz2. Generatorul de tact generează un

1 Circuitul integrat
2 Acest semnal de tact este trimis direct microprocesor-ului, dar divizat cu 2, obţinând astfel
15
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
semnal TTL, care constituie elementul motor al microprocesorului. Toate
evenimentele interne ale microprocesorului apar sincronizate cu acest semnal.
Fiecare instrucţiune executată de microprocesor durează un număr întreg de tacţi;
 decodorul de adrese pentru activarea memoriei şi dispozitivelor I/O. Sunt folosite
linii de decodare pentru circuitele de memorie – CHIP SELECT, şi un decodor
extern pentru circuitele I/O – I/O SELECT.
 magistrala de date – DATA BUS este o magistrală pe 16 biţi, la 386EX fiind pe 32
biţi intern şi 16 biţi extern1;
 magistrala de adrese – ADRESS BUS cu 26 de linii de adresă2;
 semnalele de stare – STATE SIGNALS.
Adresarea memoriei se poate face cu CHIP SELECT, utilizând specificaţiile respective
(Tab. 1.3):
Tab.1.3. Adresarea memoriei cu CHIP SELECT

MEM Adresă Adresă Dim. Wait


CS Circuit Ready
I/O start final dată states
UCS EPROM S3 MEM F8000 FFFFF 8 bit Intern 8
CS0 EPROM U4 MEM F0000 F7FFF 8 bit Intern 16
CS1 RAM M1 MEM 04000 07FFF 16 bit Intern 2
CS2 I/O devices I/O 00300 0037F 8 bit Intern 31
CS3 Liber
CS4 RAM M0 MEM 00000 03FFF 16 bit Intern 2
CS5 Liber
CS6 Liber

Selectarea dispozitivelor I/O se face cu I/O SELECT folosind specificaţiile respective


(Tab. 1.4):
Tab.1.4. Adresarea memoriei cu CHIP SELECT

Adrese Circuit
300 – 30F Convertor D/A
310 – 31F Interfaţă paralelă
320 – 32F Tastatură
330 – 33F Interfaţă serială

frecvenţa de lucru efectivă de 2,215 MHz


1 punctele de test D16-D31 repetă semnalele D0+D15
2 sistemul este utilizat, în mod real, de microprocesor cu 20 linii de adresă efective, punctele
A20-A31 nefiind utilizate
3 sistem
4 user-utilizator
16
SISTEME CU MICROPROCESOARE L1, L2, L3
340 – 34F Convertor A/D
350 – 35F Afişaj cristale lichide
360 – 36F Liber
370 – 37F Liber
În acest modul sunt disponibile două conectoare, fiind accesibile din exterior:
 Conector J4 – conţine liniile de întrerupere INT0, INT1, INT2 şi INT3, ale
unităţii de control a întreruperilor periferice integrată în microprocesorul
80386EX.
 Conector J3 – conţine liniile celor trei timere ale unităţii de control a
întreruperilor periferice integrată în microprocesorul 80386EX.

2. Modul Memorie – Memory Unit


Acest modul conţine memoria externă microprocesorului şi este folosit pentru
memorarea permanentă sau temporară1 a instrucţiunilor program, a datelor temporare,
etc (Fig. 1.15).

Fig.1.15. Modul Memorie


Unitatea de memorie conţine următoarele componente, cu adresele corespunzătoare,
sunt prezentate în tabelar (Tab. 1.5).
Tab.1.5. Componenţa şi structura memoriei

Memorie Circuit Adresă start Adresă final


EPROM sistem 32K IC5 F8000 FFFFF
Eprom User 32K IC6 F0000 F7FFF
RAM 32K IC7-8-9-10 00000 07FFF
Memoria EPROM este presetată pentru a opera cu microprocesorul cu transfer de date
pe 8 biţi.
Memoria RAM este presetată pentru a opera pe 16 biţi, totuşi, sunt folosite două
circuite de memorie – IC7, IC9 – pentru a forma cel mai puţin semnificativ bit, şi două
circuite de memorie – IC8, IC10 – pentru a forma cel mai puţin semnificativ bit.

1 Funcţie de tipul memoriei EPROM, ROM, RAM


17
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
La pornirea sistemului microprocesorul urmează instrucţiunile aflate în memoria
EPROM a sistemului, la adresa FFFF0, pornind programul monitor.
Memoria EPROM a sistemului este rezervată pentru memorarea programelor
dezvoltate de utilizator, care sunt permanent disponibile către sistem.
Memoria RAM conţine (Fig.1.16)
 zona vectorilor întrerupere;
 zona rezervată sistemului;
 zona utilizator.

RAM
Utilizator

RAM
Sistem

Vector
Întreruperi

Fig.1.16. Modul Memorie


3. Modul Alimentare – Power Supply Unit
Acest modul conţine sursa de alimentare a modulului (Fig. 1.17). Este presetat pentru o
singură sursă de alimentare de +5V. Tensiunile de +12V şi -12V, utilizate de I/O
serială şi I/O analogică, sunt preluate intern din zona dedicată convertoarelor DC/CD.

Fig.1.17. Modul Alimentare 5V

4. Modul Interfaţă serială RS 232 Intrare/Ieşire – Serial I/O Unit


Acest modul conţine circuitul 8250 care este o interfaţă serială asincronă.
Primeşte semnalul de tact 1.8432 MHz de la un oscilator extern şi gestionează toate
liniile interfeţei RS-232: TXD, RXD, CTS, RTS, DCD, DSR şi DTR.
Circuitele IC14 (1488) şi IC15 (1489) gestionează trimiterea semnalelor TTL (0-5V) la
ieşirea 8250 (-12V - +12V) conform standardului RS-232.
18
SISTEME CU MICROPROCESOARE L1, L2, L3
Conectorul de ieşire J2 este un conector compatibil IBM PC (Fig.1.18).

Fig.1.18. Modul Interfaţă serială RS32

5. Modul Interfata paralelă Intrare/Ieşire – Parallel I/O Unit


Acest modul conţine circuitul 8255 care este o interfaţă paralelă I/O (Fig.1.19).

Fig.1.19. Modul Interfaţă serială RS32

Acest modul utilizează două porturi pe 8 biţi – portul A şi portul B, şi patru linii I/O –
portul C (PC0 - PC3).
Una din liniile portului C este utilizată pentru comanda Buzzer-ului1.

6. Modul Analogic Intrare (CAN)/Ieşire (CNA) – Analog I/O Unit


Acest modul conţine un convertor A/D şi D/A pe 8 biţi.
Gestionează intrarea şi ieşirea semnalelor analogice cu nivelul 0-8 V.
Convertorul A/D este realizat cu circuitul IC17 – ADC0804, care este conectat direct la
magistrala de date de 8 biţi (D0-D7).
Convertorul D/A este realizat cu circuitul IC18 – 74374 care este un circuit de
memorare pentru semnalele venite de la magistrala D0-D7 a microprocesorului, şi

1 difuzor
19
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
IC19 – DAC0800 de la convertorul D/A (Fig.1.20).

Fig.1.20. Modul Analogic Intrare/Ieşire

7. Logic Probes Unit – Modul Tester logic


Acest modul conţine un tester logic cu LED-urile corespondente pentru vizualizare
(Fig.1.21).

Fig.1.21. Modul Analogic Intrare/Ieşire


În particular, aici sunt prezente:
 8 testere logice TTL (0-5V), denumite D0-D7, care corespund lED-urilor
D-0-D7, şi care pot fi conectate simultan cu ajutorul cablului dedicat cu 8
puncte de test;
 1 tester logic TTL, denumit DH echipat cu rezistenţă pull-up, având LED-ul
corespondent DH;
 1 tester logic TTL, denumit DL echipat cu rezistenţă pull-down, având
LED-ul corespondent DL;
20
SISTEME CU MICROPROCESOARE L1, L2, L3
 1 tester logic TTL, denumit DS echipat pentru semnale tranzitorii, având
LED-ul corespondent DS şi cu butonul de reset RES-DS.

8. Keyboard Unit – Modul Introducere date (Tastatură)


Acest modul conţine tastatura necesară introducerii comenzilor şi datelor necesare
sistemului.
Este compus din 20 de taste aranjate într-o matrice de 5 linii şi 4 coloane (Fig.1.22).

Fig.1.22. Modul Tastatură


Tasta RESET acţionează direct resetarea microprocesor-ului, celelalte taste putând fi
gestionate conform matricei următoare:
Tab.1.5. Componenţa şi structura Tastaturii

COL1 COL2 COL3 COL4


(32E) (32D) (32B) (327)
LIN1 Tasta Tasta Tasta Tasta
(D0) 17 18 19 Reset
LIN2 Tasta Tasta Tasta Tasta
(D1) 13 14 15 16
LIN3 Tasta Tasta Tasta Tasta
(D2) 9 10 11 12
LIN4 Tasta Tasta Tasta Tasta
(D3) 5 6 7 8
LIN5 Tasta Tasta Tasta Tasta
(D4) 1 2 3 4

Coloanele corespund adreselor I/O – 32E, 32D, 32B şi 327, liniile corespunzând
biţilor de pe magistrala de date – D0, D1, D2. D3, D4.

9. Display Unit – Modul Afişare


Acest modul permite vizualizarea datelor şi mesajelor înainte de a fi utilizate de

21
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
sistem1. Este un display LCD compus dintr-o linie cu 16 caractere şi este comandat de
un controler LSI intern (Fig.1.23).

Fig.1.23. Modul Afişaj


El recepţionează datele direct de la magistrala de date şi utilizează următoarele linii de
adresă:
Adresa (hexazecimal) Funcţia
350 Scriere de coduri
351 Scriere de date
352 Citirea stării
353 Citire de date

10. Modul Setare Mod de lucru


Acest modul conţine două microswitch-uri multiple DP1 şi DP2, care pot genera
defecte posibile ale sistemului.
În mod normal microswitch-urile TREBUIE sa fie în următoarele poziţii (Fig.1.24):
 DP1 – toate în poziţia OFF;
 DP2 – toate în poziţia ON.

Fig.1.24. Modul Setare

11. Interfaţă Serială/Paralelă (modul opţional extern) - Serial/Paralel Interface


Acest modul poate conţine una din interfeţele I/O ale sistemului – Serială sau Paralelă.

1 liniile de cod transmise sistemului de la tastatură


22
SISTEME CU MICROPROCESOARE L1, L2, L3
Interfaţa este aceeaşi interfaţă cu cea inclusă în sistem, numai că este construită
didactic, putând fi accesate toate semnalele aferente acestui tip de interfaţă (Fig.1.25).

Fig.1.25. Modul Interfaţă I/O extern

Este folosită pentru studiul particular al comunicaţiei prin intermediul portului I/O
serial, respectiv paralel, a microprocesorului.

12. Modul Alimentare (modul extern) – Power SupplyUnit


Acest modul permite alimentarea sistemului, precum şi a altor subsisteme externe
(Fig.1.26).

Fig.1.26. Modul Interfaţă I/O extern

În afara alimentării sistemului acest modul poate furniza următoarele tensiuni:


 S1 – sursă tensiune continuă 30V/4A;
 S2 – sursă tensiune alternativă 24V/4A;
23
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
 S3 – sursă tensiune continuă 5V/2A;
 S1 – sursă tensiune continuă dublă -12V/1A, +12V/2A;
 S1 – sursă tensiune continuă reglabilă 1,324V/1A;

 VERIFICARE CUNOŞTINŢE
Întrebare 1
Unde sunt stocate datele, create de microprocesor în timpul funcţionării lui?
1. Memoria EPROM
2. Memoria RAM
3. Porturi Intrare/Ieşire
4. Magistrale
Întrebare 2
Care din afirmaţiile următoare sunt corecte?
1. Magistrala de date este unidirecţională, iar magistrala de adrese este bidirecţională
2. Magistrala de date este folosită pentru transmiterea datelor conţinute în adrese
3. Magistrala de adrese este folosită pentru transmiterea adreselor necesare localizării
datelor
4. Este utilizată de CPU pentru a citi şi scrie date de la memorie şi porturile I/O
Întrebare 3
Care din următorii registre nu fac parte din registrei utilizaţi de EU (Execution Unit),
pentru microprocesorul 8086?
1. Registrul IP
2. Registrul SP
3. Registrul AX
4. Registrul SI
5. Registrul BP
Întrebare 4
Pe câţi biţi se face adresarea memoriei pentru microprocesorul 8086?
1. 8 biţi
2. 16 biţi
3. 20 biţi
4. 24 biţi
5. 32 biţi
Întrebare 5
În adresa de memorie specificată: 4AC2:6768, valoarea 4AC2 reprezintă?
1. Offset-ul
2. Registrul AX
3. Registrul segment
4. Acumulatorul
5. Adresa fizică
Întrebare 6
24
SISTEME CU MICROPROCESOARE L1, L2, L3
Numele AL reprezintă?
1. Registrul acumulator
2. Cei mai semnificativi 8 biţi ai registrului acumulator
3. Cei mai puţin semnificativi 8 biţi ai registrului acumulator
4. Registrul segment asociat cu acumulatorul
Întrebare 7
Care din următoarele adrese fizice de memorie nu pot fi adresa de start a unui
segment?
1. 0000H
2. 0001H
3. 0010H
4. 0100H
5. 1000H
Întrebare 8
Unitatea aritmetică/logică realizează:
1. Toate operaţiile de adunare, scădere, AND, OR, XOR, incrementare, decrementare,
etc.
2. Operaţiile de adunare, scădere, AND, OR, XOR
3. Toate operaţiile de adunare, scădere
4. Operaţiile logice pe bit
5. Toate operaţiile de adunare, scădere, AND, OR, XOR, incrementare, decrementare
şi gestionează magistrala de date.
Întrebare 9
Microprocesorul 8086:
1. Permite adresarea a 1024KB (1MB) de memorie
2. Foloseşte metoda memory address segmentation pentru managementul adreselor de
1MB
3. Conţine 4 registre speciale conectaţi la magistrala de adresare a memoriei externe
4. Este un microprocesor pe 8 biţi
5. Este un microprocesor pe 32 biţi
Întrebare 10
Începutul de stivă este definit de registrul:
1. CS
2. DS
3. SS
4. ES
5. AX
Întrebare 11
Microprocesorul 30386 este un microprocesor pe
1. 32 biţi
2. 16 biţi
3. 8 biţi

25
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
4. 20 biţi
5. 31 biţi (0-31)
Întrebare 12
Microprocesorul 80386 permite funcţionarea
1. În modul real folosind extensia la 32 biţi
2. În modul protejat folosind extensia la 32 biţi
3. În modul protejat pentru a permite operaţiile multi-sarcină
4. În mod real şi modul protejat simultan, acestea fiind identice
5. În modul real pentru a permite operaţiile multi-sarcină
Întrebare 13
Microprocesorul 80386EX
1. Este un microprocesor în versiune industrială
2. Este o versiune anterioară a microprocesorului 80386
3. Are magistrala de adrese pe 32 biţi
4. Are magistrala de adrese pe 20 biţi
5. Are magistrala de adrese pe 26 biţi
Întrebare 14
Microprocesorul 80386EX
1. Are dispozitive periferice integrate
2. Nu are dispozitive periferice integrate
3. Poate avea opţional dispozitive periferice integrate
4. Nu poate avea opţional dispozitive periferice integrate
Întrebare 15
Sistemul cu microprocesor
1. Poate primi informaţii diverse, de la apăsarea unei taste sau un clic de mouse şi
până la date introduse de senzori de temperatură, presiune, debit, deplasare,
viteză, acceleraţie etc., în general de elemente sensibile care vin în contact cu
mediul exterior şi care pot furniza informaţii despre acesta.
2. Primeşte informaţii din exterior, le prelucrează şi furnizează înapoi rezultate
3. Informaţiile primite trebuie să fie adaptate la codul numeric octal
4. Informaţiile primite trebuie să fie adaptate la codul numeric binar
5. Informaţiile primite trebuie să fie adaptate la codul numeric hexazecimal
Întrebare 16
Modulul cu microprocesor Z2EV conţine componentele
1. Microprocesor 386X la 2,21 MHz
2. Memorie RAM şi EPROM
3. Tastatură şi display tip 7 segmente
4. Interfaţă paralelă şi serială şi ieşiri digitale
5. Microprocesor 386EX la 2,21 MHz
Întrebare 17
Modulul cu microprocesor Z2EV are un program de monitorizare înscris în memoria
26
SISTEME CU MICROPROCESOARE L1, L2, L3
EPROM cu funcţiile:
1. Vizualizarea şi modificarea memoriei şi registrelor
2. Execuţia continuă, sau pas cu pas, a programelor cu puncte de întrerupere
3. Vizualizarea şi modificarea programelor
4. Are magistrala de adrese pe 20 biţi
5. Încărcarea programelor în calculator
Întrebare 18
Microprocesorul 80386EX
1. Are dispozitive periferice integrate
2. Nu are dispozitive periferice integrate
3. Poate avea opţional dispozitive periferice integrate
4. Nu poate avea opţional dispozitive periferice integrate
Întrebare 19
Modulul cu microprocesor Z2EV
1. Are o interfaţă I/O paralelă.
2. Are in interfaţă I/O serială RS 232 şi una paralelă (8+8+4 linii I/O)
3. Are o interfaţă I/O serială USB
4. Nu are interfeţe I/O încorporate
5. Are intrări şi ieşiri analogice, 0-8V cu convertor pe 32 biţi
Întrebare 20
Modulul cu microprocesor Z2EV
1. Are o tastatură hexazecimală încorporată
2. Are de o tastatură zecimală încorporată
3. Are de o tastatură binară încorporată
4. Nu are tastatură
5. Nu are tastatură încorporată dar i se poate ataşa
Întrebare 2
Interfaţa paralelă este pe?
1. 8 biţi
2. 12 biţi
3. 16 biţi
4. 32 biţi

Întrebare 3
Modulul tester logic este folosit pentru?
1. Vizualizarea diagramelor de semnal în diferite puncte de test ale microprocesorului
2. Verificarea tensiunilor de alimentare
3. Verificarea nivelelor logice TTL în diverse puncte ale microprocesorului
4. Vizualizarea evoluţiei în timp a semnalelor de comandă

Întrebare 4
Modulul de memorie conţine?
1. Numai memorie RAM
27
L1, L2, L3 Introducere în sisteme cu microprocesoare – Hardware
2. Numai memorie EPROM
3. Memorie RAM şi EPROM
4. Memorie LIFO
5. 64K pe 32 biţi memorie FIFO

Întrebare 5
Pentru resetarea microprocesorului este folosit?
1. Comutatorul special RESET MICROPROCESOR
2. Tasta numărul 4 din modulul tastatură
3. Tasta RESET din modulul tastatură
4. Tastele CTRL+ALT+DEL din modulul tastatură
5. Se poate reseta numai când este conectat la un calculator IBM PC

28

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