Mp - Cap2 2013
description
Transcript of Mp - Cap2 2013
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 1
Sisteme cu microprocesoare Notiuni introductive
Reprezentari numericeReprezentari numerice
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:
(N)10 = an-1 bn-1 + an-2 bn-2 + ... + a1 b1 + a0 b0 + a-1 b-1 + ... + a-m b-m
Ex: N = (1011.11)2
(N)10 = 1*23 + 0*22 + 1*21 + 1*20 + 1*2-1 + 1*2-2 = 8 + 0 + 2 + 1+ 0.5 + 0.25 = 11.7510
(0; 0.4) V -> “0”; (2.4; 5) V -> “1”
Octal Binar0 0001 0012 0103 0114 1005 1016 1107 111
Hex a
Binar0 00001 00012 00103 00114 01005 01016 01107 0111
Hex a
Binar8 10009 1001A 1010B 1011C 1100D 1101E 1110F 1111
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 2
Sisteme cu microprocesoare Notiuni introductive
Reprezentari numericeReprezentari numerice
( 110 001 011 100 )2 ( 4 3 2 7 )8( 6 1 3 4 )8 ( 100 011 010 111 )2
( 1011 1010 0011 0010 )2 ( B A 3 2 )16( 4 F C 2 )16 ( 0100 1111 1100 0010)2
8 biti = octet / byte
cuvinte de: 8 / 16/ 32 / 64 biti
•
Numere: - intregi – fara semn / cu semn - fractionare- virgula mobila
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 3
Sisteme cu microprocesoare Notiuni introductive
Adunarea / scaderea. 27 26 25 24 23 22 21 20
1 1 0 1 1 0 1 1 +0 1 0 0 0 1 1 0
1 0 0 1 0 0 0 0 1Depasire (overflow / borrow)
Inmultirea: [n] biti x [m] biti -> [n+m]biti
Impartirea: [n] biti : [m] biti -> [n-m]biti
8 biti -> [0, 255] (28-1)16 biti -> [0, 65535] (216-1)
Aritmetica numerelor întregi, pozitive (fara semn)
Aritmetica numerelor întregi, pozitive (fara semn)
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 4
Sisteme cu microprocesoare Notiuni introductive
•
complement fata de 2 (2's complement)•
complement fata de 1 (1's complement)
[X]2 = 2n –
X ( [X]2 = - X ) Ex: X = 610
= 01102
, n=4 ⇒
[X]2
= 24
-
0110 = 10000 -
0110 = 1010
(a) se inverseaza toti bitii numarului, si se aduna 1 la cel mai putin semnificativ bit.
De exemplu, fie: X = 0110X inversat va fi
1001se adună 1 1Rezultat: [X]2
= 1010
Aritmetica numerelor întregi, cu semnAritmetica numerelor întregi, cu semn
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 5
Sisteme cu microprocesoare Notiuni introductive
(b) se lasa neschimbate cifrele din numar pâna la primul 1, inclusiv (de la dreapta la stânga), inversându-se celelalte cifre.
Ex: X = 0 1 1 0 =>
[X]2
= 1 0 1 0⇑
| ⇑se inverseaza
ramân nemodificate
8 biti -> [-128, + 127]16 biti -> [-32768, +32767]
•
Overflow / borrow•
Inmultirea –
separat module, semne
Aritmetica numerelor întregi, cu semnAritmetica numerelor întregi, cu semn
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 6
Sisteme cu microprocesoare Notiuni introductive
X = 0 . x7 x6 ... x0 => [X]10 = x7 2-1 + x6 2-2 + ... + x0 2-8
N = 0.00000000 = 0/256 = 0N = 0.11111111 = 255/256 = 0.996093751 bit = 1/256 = 0.00390625
Q15 -> 16 biti, 1 de semn[-1, +1); 1 bit = 2-15
•
eroare de trunchiere•
eroare de rotunjire
Aritmetica numerelor fractionareAritmetica numerelor fractionare
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 7
Sisteme cu microprocesoare Notiuni introductive
Simpla precizie – 32 biti:-
Exponent 8 biti: intreg, cu semn: [-128, +127]-
Mantisa 24 biti: fractionar
cu semn, subunitar
(Q23): [-1., +1.)
-
Gama de valori: -
Minim: 2-127 = 5.87747 * 10-39
-
Maxim: 2127 = 1.70141 * 10+38
-
Precizia (1 bit): 2-23 = 1.19209 * 10-7
Reprezentarea numerelor reale (floating-point)Reprezentarea numerelor reale (floating-point)
Valoare numar:
N = 2Exponent * Mantisa
s (7 biti) s (23 biti)
Exponent Mantisa
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 8
Sisteme cu microprocesoare Notiuni introductive
Logica booleanaLogica booleana
Postulatex = 0 daca
x ≠
1
x = 1 daca
x ≠
0
001111
00010
=⋅=⋅=⋅
=
110000
11101
=+=+=+
=
Teoreme cu o singura variabila
xx
xx
xxxxx
x
=
=+
=+=+=+
1
011
0
001
=⋅
=⋅=⋅=⋅
xx
xxxx
xx
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 9
Sisteme cu microprocesoare Notiuni introductive
Logica booleanaLogica booleanaTeoreme cu 2 sau 3 variabile
)()()()()(
)()()(
)(
zyxzxyxzyxzyxzyx
zyxzyxzyxyxyyx
xyxxxyyx
+⋅=⋅+⋅⋅⋅=⋅⋅=⋅⋅
++=++=++⋅=⋅+
=⋅++=+
yxyyx
xyxxxyyx
+=+⋅
=⋅⋅⋅=⋅
)(
)(
)],...,,1([)],...,,0([),...,,(
)],...,,0([)],...,,1([),...,,(
......)(
......)(
212121
212121
nnn
nnn
xxfxxxfxxxxf
xxfxxxfxxxxf
zyxzyx
zyxzyx
+⋅+=
⋅+⋅=
+++=⋅⋅⋅
⋅⋅⋅=+++
Teoreme cu n variabile
(Teoremele De Morgan)
(Teroremele expansiunii)
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 10
Sisteme cu microprocesoare Notiuni introductive
Porti LogicePorti Logice
Poarta TTL (Transistor Transistor Logic)
AB
Intrare
+5V
CIesire
4.7k 1k
470
160
logic 1: (2 - 5) Vlogic 0: (0 0.8) V
Intrari Iesire
Tabela logica a portii TTL
A B C
1 1 0
1 0 1
0 1 1
0 0 1
Functie: implementarea electronica a unei functii logice binare
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 11
Sisteme cu microprocesoare Notiuni introductive
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 12
Sisteme cu microprocesoare Notiuni introductive
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 13
Sisteme cu microprocesoare Notiuni introductive
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 14
Sisteme cu microprocesoare Notiuni introductive
Porti LogicePorti Logice
A B AND OR NAND NOR XOR NXOR
0 0 0 0 1 1 0 1
0 1 0 1 1 0 1 0
1 0 0 1 1 0 1 0
1 1 1 1 0 0 0 1
AB f=AB
AB f=AB
AB
AB
AB f=A+B
f=A+B
AB f=A B
f=A BAND OR XOR
NAND NOR Ex-NOR
+
.
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 15
Sisteme cu microprocesoare Notiuni introductive
Porti LogicePorti Logice
A f=AA f0 11 0(a)
"1"
A f = A 1 = A
A f = A+0 = A
(b)
AB
AB
AB
AB
AB
AB
AB
AB
f=AB
f=A+B
f=AB
f=A+B
f=A+B
f=A B
f=A + B
f=A B
(a)
(b)
(c)
(d)
Inversorul Reprezentari logice alternative
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 16
Sisteme cu microprocesoare Notiuni introductive
Poarta Tri-State / Buffer / Circuit TamponPoarta Tri-State / Buffer / Circuit Tampon
A
E
Out A
E
Out
A E Outx 0 High z0 1 01 1 1
A E Outx 0 High z0 1 11 1 0
(a) (b)
A1 A4A3A2
B1 B2
B3 = A1
B4
EA1 EA2 EA3 EA4
EB1 EB2 EB3EB4
1
1
0 0 0
0 0 0
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
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 17
Sisteme cu microprocesoare Notiuni introductive
Bistabilul DBistabilul D
D QQ
Clk
Dt Qt Dt+dt
0 0 0
0 1 0
1 0 1
1 1 1
tttt DQDQDQ =⋅+⋅=+ )(δ
Functie: implementarea electronica a unei celule (bit) de memorie
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 18
Sisteme cu microprocesoare Notiuni introductive
Bistabilul DBistabilul D
Clk
D
Q
01
01
01
D QQ
Clk
Clk
D
Q
01
01
01
Clk
D
(a) (b)
Clk
D
Q
01
01
01
D QQ
Clk
Clk
D
Q
01
01
01
Clk
D
(a) (b)
Bistabilul D cu inscriere pe front
Bistabilul D cu inscriere pe nivel
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 19
Sisteme cu microprocesoare Notiuni introductive
Bistabilul DBistabilul DSemnalele Set, Reset
S
D
R
ClkQQ
Clk S R Q* 1 1 * (operare normala)
X 0 1 1
X 1 0 0
X 0 0 - (interzis)
J
KClk
DQQ
S
RClk
DQQ
Conversia din bistabile JK sau RS in bistabile D
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 20
Sisteme cu microprocesoare Notiuni introductive
Bistabilul DBistabilul D
tw – latime puls (width)tsu – timp stabilire (setup)th – timp de mentinere (hold)
0
1
0
1D
Clk tw
tsu th
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 21
Sisteme cu microprocesoare Notiuni introductive
Registre paraleleRegistre paralele
Schema bloc Transfer
D7A
D6A
D0A
D6B
D7B
D0B
Clk
Transfer
Reg.A
Reg.B
A7 A6 A0
B7 B6 B0
date intrare
date iesire
WRITE
READ
Functie: implementarea electronica a unui cuvant de memorie
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 22
Sisteme cu microprocesoare Notiuni introductive
Registre serialeRegistre seriale
J7
K7
J6
K6
J0
K0
P
Q
D
Clk
Schema bloc
S
Clk
S
Clk
S Clk
S Clk
Reg. A Reg. B
Reg. A Reg. B
S
Clk
S Clk
1 1 1 1
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
inainte de transfer
dupa transfer
Transfer
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 23
Sisteme cu microprocesoare Notiuni introductive
RegistreRegistre
Registre Latch Registre cu iesiri tri-state
DClk
Q
R
R ClkD7 D0
Q7 Q0Reg.Latch
DClk
Q
RR
ClkD7 D0
Q7 Q0Reg.Tri-State
E
O E
Date intrare
Date iesireDate iesire
Date intrare
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 24
Sisteme cu microprocesoare Notiuni introductive
MultiplexoareMultiplexoare
f = E (A B D + A B D + A B D + A B D0 1 2 3⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅
D0D1D2
D3
f
D0D1D2D3
Mux4 la 1
E
f
f
A B(a)
(b)
D3
D2
D1
D0
E B A
f
f
(c)
Functie: implementarea unui circuit de transfer la iesire a unei intrari, functie de combinatia semnalelor de selectie
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 25
Sisteme cu microprocesoare Notiuni introductive
DecodificatoareDecodificatoare
E Decod
3 la 8
A B
O0O1O2O3
O5O6O7
O4
C
cod intrare
E C B A O0 O1 O2 O3 O4 O5 O6 O7
1 x x x 1 1 1 1 1 1 1 1
0 0 0 0 0 1 1 1 1 1 1 1
0 0 0 1 1 0 1 1 1 1 1 1
0 0 1 0 1 1 0 1 1 1 1 1
0 0 1 1 1 1 1 0 1 1 1 1
0 1 0 0 1 1 1 1 0 1 1 1
0 1 0 1 1 1 1 1 1 0 1 1
0 1 1 0 1 1 1 1 1 1 0 1
0 1 1 1 1 1 1 1 1 1 1 0
Functie: activarea unica a unuia dintre semnalele de iesire, corespunzator combinatiei semnalelor de selectie
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 26
Sisteme cu microprocesoare Notiuni introductive
Circuite Logice Programabile (PLD)Circuite Logice Programabile (PLD)
A A B B C C
A B C
(a ) (b )
PLD (Programmable Logic Device)-
PLA – Programmable Logic Array-
PROM – Programmable Read Only Memory-
FPLA – Field Programmable Logic Array-
FPGA – FIeld Programmable Gate Array
P-term (product term)
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 27
Sisteme cu microprocesoare Notiuni introductive
Circuite PLACircuite PLA
X = p + q + r + s = ABCD + ABCD + EF
Fuzibil intreg
X Xp q r s
A
B
C
D
E
F
linii P-term
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 28
Sisteme cu microprocesoare Notiuni introductive
Circuite PROMCircuite PROM
O / P0 = P0 + P2 = CBA + CBAO / P1 = P2 + P4 = CBA + CBAO / P2 = P3+ P4 + P5 = CBA + CBA + CBA
A
B
C
linii P-term fixe
P0 P1 P2 P3 P4 P5 P6 P7 O/P0
O/P1
O/P2
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 29
Sisteme cu microprocesoare Notiuni introductive
Circuite FPLACircuite FPLA
A
B
C
D
linii P-term
P0 P1 P2 P3O/P0
O/P1
O/P2
c 2013 Liviu Kreindler / Aurelian Sarca 2 - 30
Sisteme cu microprocesoare Notiuni introductive
Circuite FPGACircuite FPGA
clk
reset
set
multiplexorreactie iesiri
MUX control
MUX control
multiplexor
selectie
iesiri
I/O
Q
Q
D
de la reteauaAND
catre reteauaAND
Macrocelula