Documente Academic
Documente Profesional
Documente Cultură
2
Sistemul cu microprocesor
Structura de baza
control
Memorie magistrala date/adrese
Memorare Memorare magistrala date
program date
secventele de datele numerice (de MICROPROCESOR
instructiuni ce intrare, rezultate
alcatuiesc programul intermediare sau finale) (CPU) Magistrale
- grupurile de interconexiuni cu functii similare, care leaga
diversele sectiuni al sistemului microprocesor
Interfete periferice
Culegere de informatii din exterior (marimi numerice, analogice,
Iesire Intrare semnalizari),
- prelucrari (diversi algoritmi de calcul si decizie),
- actionari spre exterior (prin comenzi numerice, analogice,
De la / la periferice
echipamente standard interfete specifice de conectare la un proces fizic semnalizari diverse, comunicand rezultatele operatiilor efectuate,
(tastatura, afisaj, etc.), controlat (traductoare, elemente de executie, etc.). etc.)
manipularea informatiilor
Receptioneaza (instructiuni pentru microprocesor, cat si
Programul, Transmite Informatie date transmise sau primite de la diferite
Memoreaza componente ale sistemului)
in memorie Analizeaza
Central
Central
Processing Unit Processing
(CPU) Unit (CPU)
Random
Access
Memory (RAM
Random Access Memory)
Memory (RAM
Memory)
The CPU can read the next computer instruction from the memory
After the CPU obtain the instruction, the CPU will execute the instruction.
The CPU perform arithmetic and logical operation,
Structura interna a unui sistem cu microprocesor
Exemplu
Compilare
Limbaj de asamblare
Asamblare
Cod maşină
Sisteme cu microprocesor
Sistem embedded
Aplicatii in timp real - au specific faptul ca echipamentul controleaza functionarea unui proces, calculele facandu-se in timpul controlarii acestei functionari.
Secventializarea operatiilor din sistem poate fi legata si conditionata de evenimentele exterioare (evolutia procesului condus, care trebuie sa fie sub controlul
sistemului numeric)
h (perioada
Program Principal Rutina Tratare Intrerupere h
(polling loop – background) (foreground) esantionare)
Refacere context
RETURN
Bit:
– unitate elementara de informatie
– poate avea valoarea logica “0” sau “1”, aceste valori corespund fizic unor nivele de tensiune, în funcţie de circuitele
electronice componente sistemului.
Ø Sistemele de calcul opereaza cu elemente de circuit cu doua stari (de tipul tranzistor in stare saturat sau blocat,
avand la iesire doua nivele de tensiune continua distincte - de exemplu pt. 0V este asociata valoarea binara 0,
respectiv pt. max. 5V este asociata valoarea binara 1).
– starea unui bistabil, sau a unei celule elementare de memorie
Ø "Cuvintele" pe care le înţelege sistemul cu uP formate din 8 biţi se numesc
octeţi (în engl. bytes).
Octet (byte):
– grup de 8 biti
– unitatea elementara de adresare la cele mai multe calculatoare actuale (inclusiv Intel
x86)
– poate reprezenta: o valoare numerica, un caracter (cod ASCII), un set de variabile
(semnale) logice
B7 B6 B5 B4 B3 B2 B1 B0
Octal Binar
0 000
Note: 1 001
1 K sau 1 Kilo octet (1 Kilo byte) = 1024 bytes -> (210) 2 010
3 011
1 M sau 1 Mega octet (1 Mega byte) = 1024 K ->(220) 4 100
1G sau 1 Giga octet (1 Giga byte) = 1024 M -> (230) 5 101
6 110
7 111
N, in baza b de numarare, n cifre supraunitare (an-1, an-2, ... , a0), si m cifre
subunitare (a-1, a-2, ... , a-m), are valoarea în baza 10:
Ex: N = (1011.11)2
2 Binar 0, 1
8 Octal 0,1,2,3,4,5,6,7
10 Zecimal 0,1,2,3,4,5,6,7,8,9
Sisteme de numeratie:
– sistemul binar - putine reguli, multe cifre
– sistemul zecimal - multe reguli, mai putine cifre
– sistemul hexazecimal - intermediar intre binar si zecimal
n Conversia partii intregi: prin divizare
succesiva cu noua baza
Ø Exemplul 1:
77 = 64 + 8 + 4 + 1 = 26 + 23 +22 + 1 = 1*26 + 0*25 + 0*24 + 1*23 + 1*22 + 0*21 + 1*20
=> numarul 77 din zecimal se scrie în binar: 100 1101.
Exemple:
Reprezentari numerice
Adunarea / scaderea.
8 biti -> [0, ] ( ) 27 26 25 24 23 22 21 20
1 1 0 1 1 0 1 1 +
16 biti -> [0, ] ( ) 0 1 0 0 0 1 1 0
1 0 0 1 0 0 0 0 1
Depasire (overflow / borrow)
• Reprezentarii matematice
– virgula fixa
– virgula mobile
Virgula (punctul zecimal sau binar, în notaţia engleza) nu este reprezentată
fizic în registrele sistemului de calcul, dar poziţia sa este cunoscută de
programator (stabilită) pentru fiecare dintre modurile de reprezentare
– volum sporit de muncă şi o atenţie din partea programatorului, care trebuie să manipuleze
numerele în aşa fel încât procesorul să poată face operaţii cu numere preluate din lumea
reală, în gama de reprezentare.
La unele compilatoarele scrise pentru virgulă fixă, factorul de scară este tratat de compilator, astfel încât
utilizatorul limbajelor de nivel înalt nu trebuie să ia în considerare acest aspect la efectuarea operaţiilor.
Reprezentari numerice
Explicatii
ca numere fracţionare
– virgula nu se reprezintă fizic în registrele procesorului,
d a r p o zi ţ ia s a e st e c un o s c ut ă ş i f ix a t ă d e c ă t r e
programator pentru a putea interpreta numerele într-un
mod mult mai intuitiv şi mai apropiat de lumea reală.
Explicatii
• Pentru reprezentarea numerelor pozitive şi negative se alocă
un bit suplimentar, care indică semnul.
(a) (b)
bitul de semn – S
partea întreagă – I
partea fracţionară, formată din Q biţi
Explicatii
Qi.q,
unde:
Exemplificarea reprezentării unui format care include atât parte întreagă cât şi fracţionară,
Q3.12, pentru numere interpretate cu semn:
32768 32767 1 1
Reprezentarea numerelor întregi cu semn pe 16 biţi: (a) cu numere întregi şi (b)formatul
echivalent Q15, în interpretare fracţionară
[X]2 = 2n – X ( [X]2 = - X )
Ex: X = 610 = 01102, n=4
Þ [X]2 = 24 - 0110 = 10000 - 0110 = 1010
• eroare de trunchiere
• eroare de rotunjire
Exponent Mantisa
Valoare numar:
N = 2Exponent * Mantisa
Postulate
x = 0 daca x 1; x = 1 daca x 0
0 1 1 0
0 0 0 11 1
1 1 1 0 0 0
1 0 0 0 1 1
Teoreme cu n variabile
( x y z ...) x y z ... (Teoremele De Morgan)
( x y z ...) x y z ... (Teoremele expansiunii)
f ( x1 , x 2 ,..., x n ) [ x1 f (1, x 2 ,..., x n )] [ x1 f ( 0 , x 2 ,..., x n )]
f ( x1 , x 2 ,..., x n ) [ x1 f ( 0 , x 2 ,..., x n )] [ x1 f (1, x 2 ,..., x n )]
Porti Logice
Poarta TTL +5V
(Transistor 4.7k 1k
160 logic 1: (2 - 5) V
Transistor Intrare
A Iesire
logic 0: (0 0.8) V
Logic) B C
1 1 0
1 0 1
0 1 1
0 0 1
A A A
B f=AB B f=A+B B f=A + B
A&B A|B A^B
AND OR XOR
A A A
B
f=AB
B
f=A+B f=A . B
~(A&B) B
~(A|B) ~(A^B)
NAND NOR Ex-NOR
Cadru didactic S.Paturca
Porti Logice
Porti Logice
A f=AB A
f=A+B
A f B B
A f=A 0 1 (a)
~A
1 0 A A
(a) f=A+B f=A B
"1" B B
(b)
f=A1=A
A A A
f=AB f=A + B
B B
A (c)
f = A+0 = A
A A
(b) f=A+B f=A B
B B
(d)
A E Out A E Out
x 0 High z x 0 High z
0 1 0 0 1 1 0 0 1 0
1 1 1 1 1 0 EB1 EB2 EB3 EB4
(a) (b) B1 B2 B4
B3 = A 1
Functie: permite transferul informatiei pe o cale comuna mai
multor circuite, prin posibilitatea de izolare / transfer
controlat a semnalului logic de intrare de / la cel de iesire
Cadru didactic S.Paturca
Poarta Tri-State / Buffer / Circuit Tampon
continuare
Functie: permite transferul informatiei pe o cale comuna mai multor circuite, prin posibilitatea de izolare /
transfer controlat a semnalului logic de intrare de / la cel de iesire
Utilizarea multor elemente de circuit cu iesiri tri-state este datorata posibilitatii de a avea
starea de mareimpedanta la iesirea circuitului.
Dt Qt Q t t
D Q bistabilul tip D întârzie starea, adică
0 0 0 ieşirea la momentul t t este
Q aceeaşi cu intrarea la momentul t
0 1 0 (celulă de întârziere sau de
Clk memorare).
1 0 1
1 1 1
t t
Q (D Q D Q) D t t
Registru - sir de bistabile; permite memorarea si / sau deplasarea informatiei la comanda impulsurilor de tact
- Deplasarea informatiei se poate face într-un singur sens sau în ambele sensuri.
- Înscrierea informatiei în registru se poate face serial - bit dupa bit, toti bitii cuvântului de n biti) sau
paralel - cei n biti se scriu simultan în registru.
- Citirea registrului se poate face serial - bit dupa bit, sau paralel - toti bitii simultan.
PISO
(Parallel Input - Serial Output)
PIPO (Parallel Input – Parallel Output)
Rotirea informatiei
Registre paralele
- operatie frecventa intr-un microprocesor este transferul paralel al datelor intre doua registre
Incarcate initial in registrul A, datele sunt transferate in registrul B la aparitia semnalului TRANSFER pe linia de ceas a reg. B.
Continutul registrului A este neschimbat, pana la o modificare ulterioara (stergere, sau incarcare cu alte date)
A7 A6 A0
D D D
7A 6A 0A
READ
Reg.A
Clk
B7 B6 B0
WRITE D D D
7B 6B 0B
Clk
Transfer
Datele pot fi inscrise in registru prin semnalul de control WRITE, si
raman inscrise pana la o inscriere ulterioara. Citirea datelor se va
face oricand, prin activarea semnalului de citire READ.
Schema bloc
D P
J7 J6 J0
K6 Q
K7 K0
Clk
inainte de transfer
S S Clk
Reg. A Reg. B
Clk
1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 0
dupa transfer
Clk
S Clk
Q Q O
E
D R D7 D0 Clk D D7 D0 Clk
Clk Reg.Latch Clk Reg.Tri-State
Q7 Q0 R Q7 Q0
R R
Date iesire Date iesire
PLD (Programmable Logic Device) circuite ce contin combinatii de porti logice "SI" (AND) si "SAU"
(OR), inversoare (NOT), circuite tristate, si bistabile.
Semnele (x), de la intersectia unei linii cu o coloana, indica prezenta unui fuzibil
intact, care conecteaza semnalul de intrare la poarta logica AND (sau OR) de
A pe coloana respectiva
A
B
B
C A B C
Prin programarea circuitului - se determina
C distrugerea unor fuzibile, astfel incat prin
conexiunile care raman intacte, sa se
sintetizeze functia logica dorita intre
semnalul de intrare si cel de iesire.
(a ) (b )
Cadru didactic S.Paturca
Circuite PLA
Programmable Logic Array
X = p + q + r + s = ABCD + ABCD + EF
linii P-term
A
B Fuzibil intreg
X X
r s
p q
Circuite PROM
Programmable Read Only Memory
- utilizate functional ca memorii cu continut nealterabil (fix), stocand coduri de program, seturi de
tabele de date constante, etc.
- posibila utilizarea in proiectarea circuitelor logice
semnale
de intrare B circuit de memorie
(adrese) cu 8 celule de cate
C 3 biti fiecare
P0 P1 P2 P3 P4 P5 P6 P7 O/P0
semnale de
O/P1
iesire
O/P2
O / P0 = P0 + P2 = CBA + CBA
O / P1 = P2 + P4 = CBA + CBA
O / P2 = P3 + P4 + P5 = CBA + CBA + CBA
Multiplexoare
Un multiplexor selecteaza o iesire din n intrari. Selectia liniei de iesire se face cu semnale de control.
Figura prezinta un asemenea multiplexor cu patru intrari (D0, D1, D2 si D3), si iesirea f (si negata sa)
Demultiplexoare (Decodificatoare)
- indeplinesc functia opusa multiplexorului.
- poate fi utilizat la convertirea unui sir de semnale numerice transmise serial,
intr-o forma paralela.
Linia de intrare D poate fi conectata la oricare dintre cele patru linii de
iesire, prin semnalele de control A si B.
Semnalele de control A si B.
O0
O1
O2
Decodificator
3:8
(74LS138)
O7
realizat în tehnologie
TTL
Decodificator 3:8
Cadru didactic S.Paturca
Decodificatoare
E A2 A1 A0 O0 O1 O2 O3 O4 O5 O6 O7
O0
1 x x x 1 1 1 1 1 1 1 1 O1
O2
0 0 0 0 0 1 1 1 1 1 1 1 Decod
E O3
0 0 0 1 1 0 1 1 1 1 1 1 O4
3 la 8 O5
0 0 1 0 1 1 0 1 1 1 1 1 O6
0 0 1 1 1 1 1 0 1 1 1 1 O7
0 1 0 0 1 1 1 1 0 1 1 1
0 1 0 1 1 1 1 1 1 0 1 1 AA B C
3 A2 A1
0 1 1 0 1 1 1 1 1 1 0 1 cod intrare
0 1 1 1 1 1 1 1 1 1 1 0
Cadru didactic S.Paturca
Extras din Fisa tehnica a decodificatorului 74LS138 IC -TI