prez imiib pl nowyzib.mchtr.pw.edu.pl/downloads/przedmioty/lup/lup_wyk_1_stud.pdf · * podstawy...
TRANSCRIPT
Instytut Metrologii i Inżynierii Biomedycznej
Politechnika Warszawska
Warszawa, 2011
dr inż. Jakub ŻmigrodzkiE-mail: [email protected]
ul. Św. Andrzeja Boboli 8, 02-525 Warszawa
Logiczne Układy ProgramowalneWykład I
Podstawy techniki cyfrowej(przypomnienie)
2
LITERATURA
● Język VHDL : projektowanie programowalnych układów logicznych; Kevin Skahill; Warszawa; WNT; 2004.
● Projektowanie złożonych układów cyfrowych; Marek Pawłowski, Andrzej Skorupski; Warszawa, WKŁ, 2010.
● Podstawy elektroniki cyfrowej; Józef Kalisz; Warszawa, WKŁ, 2007.
● Wprowadzenie do języka VERILOG; Zbigniew Hajduk; Legionowo, BTC, 2009.
● Układy FPGA w przykładach; Jacek Majewski, Piotr Zbysiński; Warszawa; BTC, 2007.
● Podstawy techniki cyfrowej; Andrzej Skorupski; Warszawa, WKŁ, 2004.
● Układy cyfrowe; Wojciech Głowacki; Warszawa, Wydawnictwo Szkolne i Pedagogiczne, 1998.
● Projektowanie układów cyfrowych z wykorzystaniem języka VHDL; Mark Zwoliński; Warszawa, WKŁ, 2007.
● Portal firmy Altera Corporation - http://www.altera.com
● Portal firmy Xilinx - http://www.xilinx.com/
3
PLAN WYKŁADU
1.Układy kombinacyjne,
2.Układy sekwencyjne,
3.Elementy pamięciowe,
4.Właściwości cyfrowych układów scalonych.
5.Podstawowe bloki cyfrowe,
4
UKŁADY LOGICZNE
Układy logiczne
Kombinacyjne
Stan wyjściowy zależy wyłącznie od obecnego stanu wejściowego.
brak pamięci
…...................
Stan wyjściowy zależy od zależy od historii stanów poprzednich S i
stanów wejściowych X.zawiera pamięć
5
UKŁADY KOMBINACYJNE
f(a, b)|→ AND(iloczyn)
NAND(f. Sheffera)
OR(suma)
NOR(f. Peirce'a)
XOR(nierowność)
XNOR(równość)
a b ab (ab) a+b (a+b) a b a b
0 0
0 1
1 0
1 1
Inne oznaczenia ↓ |a∧ba∩ba⋅b
a∨ba∪bab
Podstawowe funkcje logiczne dwóch zmiennych
Stosowane oznaczenia negacji: a, ~a, !a, ¬a, a', NOT a
6
UKŁADY KOMBINACYJNEAlgebra Boole'a
OR AND
Łączność a+(b+c)=(a+b)+c a∙(b∙c)=(a∙b)∙c
Przemienność a+b=b+a a∙b=b∙a
Absorpcja a+(a∙c)=(a+b)∙(a+c) a∙(a+b)=(a∙b)+(a∙c)
Rozdzielność a+(b∙c)=(a+b)∙(a+c) a∙(b+c)=(a∙b)+(a∙c)
Pochłanianie a+a=1 a∙a=0
Własności stałych
a+0=a a∙0=0
a+1=1 a∙1=a
Prawa De Morgana
…......................... ….......................
Idempotnetność a+a=a a∙a=a
Podwójna negacja
a=a
a ,b , c∈{0,1}
7
UKŁADY KOMBINACYJNESystemu funkcjonalne pełne
System funkcjonalnie pełny (SFP) to zbiór operacji, który umożliwia przedstawienie każdej funkcji logicznej w postaci wyrażenia zawierającego operatory wchodzące w skład tego systemu:
● Podstawowy system SFP to operatory …......., …........, ….........;
● Systemy zawierające tylko jeden operator:
● System NOR (↓) - a= a↓a; a + b = (a b↓ ); a · b = (a↓b);
● System NAND (|) - a= a|a; a + b = (a|b); a · b = (a|b);
8
UKŁADY KOMBINACYJNE
& &
≥1 ≥1
=1 =1
1
AND/NAND
OR/NOR
XOR/XNOR
BUF./NOT
Norma IEEE (amerykańska) Norma IEC (europejska)
1
10
UKŁADY KOMBINACYJNE
&◊
≥1◊
&
≥1
DAND(Distributed AND)
DOR(Distributed OR)
Norma IEEE (amerykańska)
Norma IEC(europejska)
Zwarcie wyjść typu otwarty …..........
Połączenia typu otwarty dren lub otwarty kolektor
Zwarcie wyjść typu otwarty …...........
Sposób realizacji
11
UKŁADY KOMBINACYJNE
Logika dodatnia
Logika ujemna
H -wysoki 1 0
L - niski 0 1
Wartości abstrakcyjnych stanów logicznych(0 – fałsz, 1 - prawda).
…........... logiczne
…............. logiczne
Aby rozróżnić wejścia układów logicznych pracujących w różnych konwencjach stosuje się symbol polaryzacji ( ) przy tych wejściach, które pracują w konwencji logiki ujemnej.
&
12
ZŁOŻONE UKŁADY KOMBINACYJNE
XOR y = → ab + aba
b
y=ab + ab
a
bab
ab
y=a⋅b⋅a⋅a⋅b⋅b=a⋅b⋅aa⋅b⋅b=ab⋅aab⋅b==a⋅a a⋅ba⋅bb⋅b=a⋅ba⋅b XOR
a
b
a⋅b
a⋅b⋅a
a⋅b⋅b
y=a⋅b⋅a⋅a⋅b⋅b
Realizacja funkcji XOR z użyciem różnych bramek logicznych
Realizacja funkcji XOR z użyciem jedynie bramek NAND logicznych
Różne struktury realizujące tą samą funkcję
13
UKŁADY KOMBINACYJNE OPTYMALIZACJA
Metody minimalizacji form boolowskich:
● Metoda siatek Karnaugh,
● Metoda Quine'a-McCluskea,
● inne.
Kryteria optymalizacji:
● Minimalna złożoność układowa,
● Maksymalna szybkość działania (minimalne opóźnia propagacji),
● Minimalny koszt (z reguły związany z minimalną złożonością układową),
● Maksymalna niezawodność.
14
UKŁADY SEKWENCYJNE
W układach sekwencyjnych stan wyjściowy zależy od zależy od historii stanów poprzednich S i stanów wejściowych X - zawierają pamięć.
St+τ=g(St, Xt)
Automat Mealy'egoYt=f(St, Xt)
Automat Moore'aYt=f(St)
g
fS
X
Y
Automat – model matematyczny układu sekwencyjnego określony przez:● X – stan wejść,● Y – stan wyjść,● S – stan wewnętrzny,● g – funkcja przejść,● f – funkcja wyjść.
15
UKŁADY SEKWENCYJNE
g
fS
X
Y
Automat Mealy'ego
XX
1X
2S
S1
S2, Y
2S
1, Y
2
S2
S3, Y
3S
2, Y
1
S3
S2, Y
2S
1, Y
3
Przykład opisu automatu Mealy'ego w postaci symbolicznej za pomocą:
Grafu przejść Tablicy przejść
X={X1, X2}, S={S1, S2, S3}, Y={Y1, Y2, Y3}
S1
S2
S3
X1, Y
2
X2, Y
2X1, Y
2
X1, Y
3X2, Y
3
X2, Y
2
S+, Y
16
UKŁADY SEKWENCYJNE
Automat Moore'a
XX
1X
2X
3 YS
S1
S2
S1
S3
Y2
S2
S3
S1
S2
Y2
S3
S1
S3
S2
Y1
Przykład opisu automatu Moore'a w postaci symbolicznej za pomocą:
Grafu przejść Tablicy przejść
X={X1, X2, X3}, S={S1, S2, S3}, Y={Y1, Y2}
Xg f
SY
S1
Y2
S2
Y2
S3
Y1
X1
X3
X3 X
1X1
X2
X3
X2
X2
S+
17
UKŁADY SEKWENCYJNE
Synchroniczne Asynchroniczne
Układy sekwencyjne
● Nie posiadają wejścia synchronizującego.● Reagują natychmiast na zmianę stanu X
(zmiana stanu S lub Y może nastąpić jedynie po zmianie stanu X)
● Każdy nowy stan St+τ ustala się po niezerowym czasie τ (wynikającym z opóźnień wprowadzanych przez rzeczywiste elementy z których zbudowany jest automat).
● Możliwość wystąpienia …........... i …............
● Posiadają wejście synchronizujące nie będące elementem wektora X.
● Reagują na zmianę stanu X tylko w …............ chwilach czasu określonych przez sygnał synchronizujący.
● Kolejne stany S ustalają się po opóźnieniu τ które musi być krótsze od czasu T0 pomiędzy kolejnymi impulsami synchronizującymi.
St+τ St+1 St+ St+τ St+
Układy synchroniczne nie posiadające żadnych wejść X nazywamy układami autonomicznymi.
Stosowane nazwy dla sygnału/wejścia synchronizującego: zegarowe, taktujące, sterujące.Stosowane oznaczenia dla sygnału/wejścia synchronizującego: C, CK, CP, CLK, CLOCK.
18
UKŁADY SEKWENCYJNE
SR00 01 11 10
Q
0 0 0 0 1
1 1 0 0 1
Q+
Układasynchroniczny
Układsynchroniczny
S
RC
Q
Q
S
R
Q
Q
S
R
Q
Q
c
19
UKŁADY SEKWENCYJNE
Wybór rodzaju automatu
Zaleca się stosowanie w pełni synchronicznych automatów Moore'a, gdyż jest to układ łatwiejszy w realizacji, testowaniu i zastosowaniach niż układ Mealy'ego.*
* Podstawy elektroniki cyfrowej; Józef Kalisz; Warszawa, WKŁ, 2007.
Automat Moore'a Automat Mealy'ego
Wyjaśnienie
Ilość stanów wewnętrznych S
Więcej Mniej W układzie Mealy'ego stan wyjść zależy bezpośrednio od stanu wejść.
Synchroniczna zmiana stanów wyjściowych
…............................................................................................................................
Nie zawsze ….....................................................................................................................................................................................................................................
20
UKŁADY SEKWENCYJNE
Projektowanie układów sekwencyjnych
1.Zdefiniowanie obiektu i jego funkcji – stworzenie opisu zewnętrznego (np.: pary X, Y).
2.Wybór metod i środków realizacji (np.: Moore czy Mealy).
3.Synteza (minimalizacja stanów wewnętrznych, kodowanie stanów).
4.Weryfikacja (np: symulacja komputerowa).
21
UKŁADY SEKWENCYJNE
Elementy pamięciowe
…...................(latch)
….................. (flip-flop)
Są to układy …...............- zmiany na wejściach powodują natychmiastową zmianę na wyjściach (jeśli układ jest bramkowany to przy aktywnym stanie sygnału bramkującego).
Podstawowe rodzaje zatrzasków:● SR,● bramkowany SR (gated SR latch),● D.
Są to układy ….................. - zmiany na wyjściach zmieniają się zgodnie z sygnałem synchronizującym.
Podstawowe rodzaje przerzutników:● SR,● D,● JK,● T.
22
UKŁADY SEKWENCYJNEZatrzaski SR (Set-Reset)
S
R Q
Q
t t+τ
S R Q+ Q+
0 0 Q Q
0 1 0 1
1 0 1 0
1 1 0 0
Symbolblokowy
Budowalogiczna
Tablicafunkcyjna
S
R Q
Q
t t+τ
S R Q+ Q+
1 1 Q Q
1 0 0 1
0 1 1 0
0 0 1 1
S
R Q
Q
C
t t+τ
S R C Q+ Q+
0 0 x Q Q
0 1 1 0 1
1 0 1 1 0
1 1 1 0 0
x x 0 Q Q
SR SR Bramkowany SR(gated SR)
Stany …...................
S
R
Q
Q
C
R
S
Q
Q
23
UKŁADY SEKWENCYJNEZatrzaski SR (Set-Reset)
S
RC
Q
Q
S
R
Q
Q
SR
Q
Q
c
SR…......................
SR…....................
24
UKŁADY SEKWENCYJNEZatrzask D
t t+τ
D C Q+ Q+
0 1 …. ….
1 1 …. ….
x 0 …. ….
D
Q
Q
C
D
Q
Q
C
D
Q
C
zatrzaśnięcie
25
UKŁADY SEKWENCYJNEPrzerzutnik SR MS
S
R Q
Q
C
S
R Q
Q
C
S
C
R
Q
Q
S
R Q
Q
C
Master Slave
t t+τ
S R C Q+ Q+
0 0 Q Q
0 1 0 1
1 0 1 0
1 1 nieokreślone
x x 0 Q QStan zabroniony
26
UKŁADY SEKWENCYJNEPrzerzutnik JK MS
S
R Q
QS
R Q
QJ
K
C
Q
Q
J
K Q
Q
C
t t+τ
S R C Q+ Q+
0 0 Q Q
0 1 0 1
1 0 1 0
1 1 Q Q
x x 0 Q Q
Master Slave
27
UKŁADY SEKWENCYJNEPrzerzutnik D MS
D
Q
Q
C
D
Q
Q
C
Q
Q
D
C
D
Q
Q
CD
Q
Q
C
Master Slave
t t+τ
D C Q+ Q+
0 0 1
1 1 0
x 0 Q Q
x 1 Q Q
D
Q
C
zatrzaśnięcie
Symbole oznaczające Wyzwalanie …............. (wejście dynamiczne)
Przerzutnik D MS jest wyzwalany zboczem.
28
UKŁADY SEKWENCYJNEPrzerzutnik JK MS wyzwalany zboczem
D
Q
Q
C
Q
Q
K
C
J
J
K Q
Q
C
t t+τ
S R C Q+ Q+
…. …. Q Q
…. …. 0 1
…. …. 1 0
…. …. Q Q
…. …. 0 Q Q
…. …. 1 Q Q
29
UKŁADY SEKWENCYJNEPrzerzutnik T
D
Q
Q
C
Q
Q
TC lub
T
Q
Q
C
t t+τ
D C Q+ Q+
0 Q Q
1 Q Q
x 0 Q Q
x 1 Q Q
30
UKŁADY SEKWENCYJNE…..................... przerzutnik T
D
Q
Q
C
Q
Q
T
J
K Q
Q
CT
Q
Q
J
K Q
Q
CT
Q
Q„1”
31
UKŁADY SEKWENCYJNEWejścia dodatkowe przerzutników
Spotykane w praktyce przerzutniki mogą zawierać dodatkowe wejścia takie jak:● Wejście zerowania (Reset, R, Clear, CLR),● Wejście ustawiania (Set, S, Preset, PR),● Wejście zezwolenia (EN, Enable, CE, Clock Enable).
Dodatkowe wejścia mogą być:● Synchroniczne,● Asynchroniczne.
D
Q
Q
C
EN
S
R
32
UKŁADY SEKWENCYJNEDodatkowe wejście Enable
D
Q
Q
C
Q
Q
EN
C
D
D
Q
Q
C
EN
D
Q
Q
C
Q
QEN
D
C
Dobrze Źle
W takim rozwiązaniu zmiana stanu przerzutnika może nastąpić przy …................................ zmianie stanu wejścia EN 0/1, zamiast przy narastającym zboczu sygnału C.
t t+τ
D EN C Q+ Q+
0 1 …. ….
1 1 …. ….
x 0 …. ….
x x 0 …. ….
x x 1 …. ….
33
CYFROWE UKŁADY SCALONE
…......................... (Integrated circuit, IC) stanowi fizycznie wykonany miniaturowy układ elektroniczny, którego części lub wszystkie elementy są wytworzone we wspólnym procesie technologicznym, wewnątrz lub na powierzchni wspólnego podłoża.*
Mikroelektronika – dziedzina elektroniki zajmująca........................................................
* Podstawy elektroniki cyfrowej; Józef Kalisz; Warszawa, WKŁ, 2007.
34
CYFROWE UKŁADY SCALONEPodział ze względu na skalę integracji
● Małej skali integracji (SSI – Small Scale Integration) zwierające do ..... elementów.
● Średniej skali integracji (MSI) zwierające od ....... do ..... elementów.
● Dużej skali integracji (LSI) zwierające od ...... do ........ elementów.
● Bardzo dużej skali integracji (VLSI) zwierające od .......... elementów.
35
CYFROWE UKŁADY SCALONEPodział ze względu na funkcjonalność
● Układy ................. – o uniwersalnym zastosowaniu, wytwarzane masowo, o ustalonych funkcjach logicznych i wewnętrznych konfiguracjach (np.: bramki logiczne, pamięci, mikroprocesory). SSI, MSI, LSI, VLSI
● Układy ................. – programowalna konfiguracja logiczna, wywarzane masowo. LSI, VLSI
● Układy .................. – (ASIC - Application-Specific Integrated Circuits) – wytwarzane najczęściej na indywidualne zamówienie, o ściśle ustalonych funkcjach, przeznaczone do konkretnych aplikacji. LSI, VLSI
36
CYFROWE UKŁADY SCALONEPodział ze względu na technologię
● …... (Transistor-Transistor Logic)
● …... (Emitter-Coupled Logic)
● ….... (Complementary Metal-Oxide-Semiconductor)
37
WŁAŚCIWOŚCI SCALONYCH UKŁADÓW CYFROWYCH
● Szybkość działania,● Zjawisko metastabilności,● Zjawisko hazardu,
● Moc strat,● …....................................,● Obciążalność,● Niezawodność.
38
WŁAŚCIWOŚCI SCALONYCH UKŁADÓW CYFROWYCH – Czas propagacji
Układ cyfrowy
We Wy
Uwe
t
Uwy
t
UT
UT
tPHL t
PLH
Czas …............ tP jest definiowany jako:● (tPHL+tPLH)/2
lub● jako większy z czasów tPHL i tPLH.
UT – napięcie progowe, jego wartość jest ustalana ….................. dla danej technologii,tPHL – czas …............... przy zmianie stanu na wyjściu układu z wysokiego na niski,tPLH – czas …............... przy zmianie stanu na wyjściu układu z niskiego na wysoki,
39
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. – Parametry dynamiczne przerzutników
● tw – minimalna szerokość impulsów sygnałów: zegarowego (C), zerującego (R), ustawiającego (S),
● fmax – maksymalna gwarantowana częstotliwość sygnału zegarowego (C) - fmax=1/(tw(H)+tw(L)),
● tsu – czas ustalenia (setup),
● th – czas podtrzymania (hold),
● trec – czas powrotu (recovery),
● trem – czas odwołania (removal).
D
C
Q
Q
tsu
(L) th(L) t
su(H) t
h(H)
tw(H)
tw(L)
tPHL
tPLH
tPHL
tPLH
Q
Q
tPHL
tPLH
tPHL
tPLH
S
R
tw(L)
tw(L)
D
Q
Q
C
S
R
R lub S trem
trec
C
40
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. – Parametry dynamiczne przerzutników
Suma czasów ... i ... tworzą okno czasowe w którym dane na wejściu/ach przerzutnika powinny być stabilne (nie zmieniać się).
D
C
Q
Q
tsu
(L) th(L) t
su(H) t
h(H)
tw(H)
tw(L)
tPHL
tPLH
tPHL
tPLH
R lub S trem
trec
C
Suma czasów ... i ... tworzą okno czasowe w którym dane na wejściu/ach asynchronicznych (S, R) przerzutnika powinny być stabilne (nie zmieniać się).
Jeśli powyższe warunki nie zostaną spełnione przerzutnik może zadziałać ...................... (może wystąpić efekt metastabilności).
41
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność
Q
Q+
Zmiana stanu na wejściu D nastąpiła po czasie t
h od aktywnego zbocza
syg. synchronizującego – wyjście Q pozostaje w stanie poprzednim.
Q+ Q+ Q+
Zmiana stanu na wejściu D wyprzedziła o czas t
su moment
pojawienia się aktywnego zbocza syg. synchronizującego – wyjście Q
przyjmuje nowy stan.
METASTABILNOŚĆZmiana stanu na wejściu D nastąpiła w zabronionym przedziale czasowym
(tsu
+ th) – wyjście Q przyjmuje wartość losową.
42
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność
D
Q
Q
C
-250 -200 -150 -100 -50 50 100 150 200 250
100
200
300
400
500
600
700
tP[ns]
tCD
[ps]
Czas propagacji przy zachowaniu poprawnych relacji czasowych pomiędzy sygnałami D i C.
th
tsu
C
D
tCD
43
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność
th
Q
C
D
tsu
D
Q
Q
C
Przykładowe przebiegi rejestrowane na wyjściu przerzutnika w przypadku nie spełnienia warunków stabilności. Widoczne wydłużenie czasu propagacji i przyjmowanie stanu końcowego w sposób losowy.
44
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność
MTBF=et r / τ
2⋅f d⋅f c⋅W
● MTBF (Mean Time Between Failures) – …......................................................................,
● tr – czas rozdzielczy (resolution time),
● fc – częstotliwość zmian sygnału ….......................... (zegarowego),
● fd - częstotliwość zmian sygnału …............................. danych,
● τ, W – stałe charakterystyczne dla danego układu cyfrowego:
● W – …............... okna metastabilności,
● Τ – …............... stanu metastabilnego.
45
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność
MTBF=et r / τ
2⋅ f d⋅ f c⋅W
0 2 4 6 8 1010
-10
10-5
100
105
1010
1015
1020
1025
tr [ns]
MT
BF
[s]
fc=100 MHz, W=58 ps, tau=210 ps
fd=20MHzfd=20kHzfd=20Hz
1 0 0 0 0 0 0 la t
R o k
1 0 0 0 la t
Rok1000 lat1000000 lat
MFR=1/MTBF=2⋅ f d⋅ f c⋅W⋅e−t r / MFR (Mean Failure Rate) – średnia częstość zdarzeń metastabilnych
46
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - MTBF vs prawdopodobieństwo błedu
F T =1−e−
TMTBF
F(T) – prawdopodobieństwo wystąpienia …............. do chwili czasu T.
101
102
103
104
105
0
10
20
30
40
50
60
70
80
90
100
T [lata]
F [%
]
MTBF=1000 lat
T F(T)
0,01·MTBF 1 %
1·MTBF 63,2 %
2·MTBF 86,5 %
3·MTBF 95 %
Oznacza, że w czasie 0,01 MTBF w 1 urządzeniu na …....... wystąpi błąd związany z metastabilnością.
47
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność - synchronizator
D Q
C
D Q
C
Daneasynchroniczne
C
Synchronizator Układ synchroniczny
„Synch” „We”
MTBF synch=et r /
2⋅ f d⋅f c⋅W
W celu zwiększenia wartość MTBF można:● Wydłużać czas tr a więc:
● Zmniejszać fc,● Stosować przerzutniki o ….............. czasach tpCQ i tsu,
● Stosować przerzutniki o …................... τ i W,● Zmniejszać fd,● Stosować synchronizatory ….....................,
t r=1f c
−t ........−t .........gdzie
48
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność - synchronizator
MTBF 1=et r/
2⋅ f d⋅ f c⋅WMTBF 2=
et r/
MFR1⋅ f c⋅W=MTBF 1⋅et r/
f c⋅W=
e2⋅t r /
2⋅f d⋅ f c2⋅W 2
W przypadku …...................... synchronizatora:
MTBF N=eN⋅tr /
2⋅f d⋅ f cN⋅W N
D Q
C
Daneasynchroniczne
C
Układ synchroniczny
„1”
D Q
C
„We”
D Q
C
Synchronizator dwustopniowy
„2”
49
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność - synchronizator
Porównanie wartość parametru MTBF dla N=1...5 stopniowych synchronizatorów przy:fc=150 MHz; fd=100 MHz; tpCQ=3,5 ns; tsu=0,5 ns; W=58 ps; τ=210 ps;
(założono, że wszystkie przerzutniki mają takie same parametry)
1 2 3 4 510
-5
100
105
1010
1015
1020
1025
1030
N - liczba stopni synchronizatora
MT
BF
[s]
fc=100 MHz, W=58 ps, tau=210 ps, tpCQ=3,5 ns, tsu=0,5 ns
Rok1000 lat1000000 lat
50
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność - Uwaga
Przedstawiony sposób szacowania wartości parametru MTBF zakłada, że sygnału fc i fd są
od siebie …............................. Jeśli ten warunek nie jest spełniony to rzeczywista
wartość MTBF może się zdecydowanie różnić od oszacowanej przedstawioną metodą.
D Q
CC
„Wy”
D Q
C
„We”
Układ kombinacyjny
System A
System B
Wyjście „pozornie” asynchroniczne
51
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Metastabilność - podsumowanie
● Metastabilności nie da się …...................... można zmniejszyć tylko jej prawdopodobieństwo,
● Jeżeli fc/fd>5 to wynikiem pojawienia się metastbilności z reguły jest ….................... czasu propagacji sygnału (nie większe niż 1/fc),
● Jeżeli fc/fd<2 to wynikiem pojawienia się metastabilności może być ...................................................
● Problem metastabilności jest szczególnie ważny jeśli dotyczy sygnału, który jest wykorzystywany jako ...................... dla innych przerzutników w takim przypadku pojawienie się stanu metastabilnego może spowodować krytyczną awarię wielu elementów systemu.
● Istnieją również inne (od przedstawionych) metody synchronizacji:
● Synchronizator N-stopniowy o częstotliwości zegara = fc/(N-1),
● Synchronizator z przerzutnikiem Schmitta,
● Systemy detekcji stanu metastabilnego,
● Systemy redundantne i maskujące.
52
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Szybkość działania układu sekw.
Układ kombinacyjnywejściowy
Pamięć (rejestr)
Układ kombinacyjny wyjściowyX
S+
S
Y
C
fmax=1/Tmin – maksymalna częstotliwość sygnału zegarowego C.
Tmin=...............................................
● tpCS – czas propagacji pomiędzy wejściem zegarowym C rejestru a wyjściem S tego rejestru,
● tpSS+ - czas propagacji pomiędzy wejściem S układu kombinacyjnego wejściowego a wyjściem S+ tego układu,
● tsu(S+C) – wymagany czas ustalenia rejestru (pomiędzy wejściem S+ a sygnałem
zegarowym C).
Jeśli sygnał wyjściowy Y podawany jest na wejście kolejnego rejestru to powinien być spełniony warunek tpSS+≥tpSY (tpSY to czas propagacji pomiędzy wejściem S
układu kombinacyjnego wejściowego a wyjściem Y tego układu).
53
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Zjawisko hazardu
Hazard – to …............, …................. (szpilki) stany na wyjściach układów cyfrowych,
powstające w stanach przejściowych (przełączania).
Niepożądane impulsy hazardowe mogą się pojawić jeśli:
● …....................................... dochodzi do wyjścia drogami o różnych opóźnieniach,
● Przy jednoczesnej zmianie dwóch lub więcej sygnałów dochodzą one do wyjścia z
różnym opóźnieniem,
● Sygnały przechodzące drogami o …....................... opóźnieniach zmieniają się nie
jednocześnie.
54
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Hazard statyczny
Hazard statyczny – chwilowa, jednorazowa zmiana stanu wyjściowego układu cyfrowego występująca przy zmianie stanu jego wejścia, gdy wyjście powinno zostać niezmienione.
X
Wy 1
Wy 2
Wy 3
Wy 4
Hazard statyczny w „jedynce”.
55
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Hazard dynamiczny
Hazard dynamiczny – ….................................... przy zmianie stanu wejścia układu cyfrowego, gdy wyjście to powinno zmieniać swój stan tylko raz i w nim pozostać.
„1”
X
„1”
Y
12
3
45
X
Wy 1
Wy 2
Wy 3
Wy 4
Wy 5
Hazard dynamiczny przy przejściu 0-1.
56
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Eliminacja hazardu
Zjawisko hazardu można wyeliminować przez:● dołączenie do układów kombinacyjnych układów …..............................,● dołączenie dodatkowych elementów kombinacyjnych, jednakże wynikowy układ
nie będzie już formą …......................
„1”
X
„1”
Y
12
3
4
57
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Moc strat
P.....=P......+P.......
P......=UCC ∙ (ICCL ∙ tL + ICCH ∙ tH) / (tL + tH) Pdyn=....................
Pwew= Cwew ∙ Ucc2 ∙ fwe Pzew= Czew ∙ Ucc
2 ∙ fwy
● UCC – …................................,
● ICCL, ICCH – prądy zasilania kiedy na wyjściu występuje odpowiednio stany ….......... lub ….............,
● tL, tH – czas trwania na wyjściu układu odpowiednio stanu niskiego lub wysokiego,
● UCC – napięcie zasilania układu,
● fwe, fwy – częstotliwość zmian stanów sygnału na odpowiednio wejściu lub wyjściu,
● Cwew – wewnętrzne pojemności …............... układu,
● Cwew – pojemność …............ wyjście układu,
58
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Odporność na zakłócenia
Typowe źródła zakłóceń:
● układy i linie zasilania,
● przesłuchy pomiędzy układami np.: w liniach transmisyjnych,
● zewnętrzne zakłócenia elektromagnetyczne EMI,
Układsterujący
Układsterowany
UO
UI
59
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Odporność na zakłócenia
Zakłócenia
….....................czas trwania > czasu propagacji układu
….........................czas trwania < czasu propagacji układu
Czas trwania impulsu zakłócającego
Am
plitu
da im
puls
u za
kłóc
ając
ego
Obszar zakłóceń niedozwolonych
Obszar zakłóceńdozwolonych
Margines zakłóceń statycznych
60
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Odporność na zakłócenia
Układsterujący
Układsterowany
UO
UI
UO[V]
UIHmax
UIHmin
UILmax
UILmin
UOLmax
UOHmin
UOLmin
UI[V]
UOLmax
ML
MH
H
LL
H
MH =...................... – Margines zakłóceń dla poziomu wysokiego H.ML = ….................. – Margines zakłóceń dla poziomu niskiego L.
61
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Zgodność łączeniowa
Układy typu I i II są zgodne łączeniowo (kompatybilne) jeśli możliwe jest:
● bezpośrednie połączenia wyjścia układu typu I z wejście układu typu II,
oraz
● bezpośrednie połączenie wyjścia układu typu II z wejście układu typu I,
w sposób umożliwiający …......................................................................
62
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Obciążalność
Obciążalność wyjścia układu cyfrowego (N, Nmax, Nfan-out)
określa .......................................... układów tego samego typu, które
można podłączyć do pojedynczego wyjścia danego układu tak aby nie
doszło do przekroczenia katalogowych wartości prądów i napięć i
możliwa było poprawne wysterowanie wszystkich podłączonych wejść.
63
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Niezawodność
● F(t1) – prawdopodobieństwo uszkodzenia elementu w przedziale czasu od 0 do t1,● f(t) – gęstość ….....................................w chwili t danego elementu,
Rt =1−F t , t0, 0R1
● R(t) – prawdopodobieństwo działania układu po czasie t,
t =1
R t ⋅dF t dt
[1/ s] , t0
● λ(t) – chwilowa intensywność uszkodzeń – wartość λ podaje się w jednostkach 10-6/h lub FIT=10-9/h (Failures In Time),
t
λ(t)
I II III
64
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Niezawodność
MTTF = 1/λ
MTTF (Mean Time to Failure) – …............................................
ElementIntensywność uszkodzeń
λ [FIT]Oczekiwany czas uszkodzenia
MTTF [lat]
Układ SSI 90 1268
Układ MSI 160 713
Układ LSI 250 457
Układ VLSI 500 228
Rezystor 10 11416
Kondensator blokujący 15 7610
Złącze krawędziowe 10 11416
Płytka drukowana 1000 114
* Podstawy elektroniki cyfrowej; Józef Kalisz; Warszawa, WKŁ, 2007.
Typowe intensywności uszkodzeń elementów elektronicznych przy temp.+55°C
65
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Niezawodność urządzeń
λcałk=λ1 + λ2 + λ3 + λ4 + … + λN
Np.: Dla urządzenia składającego się z:
● 10 układów VLSI – λ=500 [FIT],
● 5 rezystorów – λ=10 [FIT],
● 20 kondensatorów blokujących – λ=15 [FIT],
● 1 płytki drukowanej – λ=1000 [FIT],
spodziewana intensywność uszkodzeń wynosi:
λcałk=10▪500 + 5▪10 + 20▪15 + 1▪1000 = 6350 [FIT]
co daje średnią trwałość urządzenia:
MTTF = 1/λcałk ≈ 18 lat
66
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR. - Ocena układów – wsp. dobroci
D = …................ lub D = ….....................
● D – współczynniki dobroci układów cyfrowych,
● tP – czas propagacji,
● Pstrat – moc strat,
● Koszt – koszt układów liczony jako cena pojedynczego układu scalonego lub jako koszt pojedynczej struktury funkcjonalnej, elementu logicznego (np.: w układach PLD),
67
WŁAŚCIWOŚCI SCALONYCH UKŁ. CYFR.
Parametry wybranych rodzin układów cyfrowych*
TTL ECL PMOS NMOS CMOS
Czas propagacji tP [ns] 3 ÷ 33 1 ÷ 2 35 ÷ 300 15 ÷ 150 5 ÷ 50
Moc strat Pstrat [mW] 1 ÷ 23 25 ÷ 60 0,5 ÷ 1,5 1 ….............
Wsp. dobroci D=tP▪P
strat [pJ] 19 ÷ 138 50 ÷ 60 50 ÷ 150 15 ÷ 150 ….............
Margines zakłóceń M [V] 1 0,2 0,7 ÷ 1,5 1 0,3 UCC
Częstotliwość max. [MHz] …........... 150 ÷ 550 2 ÷ 8 7 ÷ 18 5 ÷ 125
Napięcie zasilania [V] 5 -5 ÷ 2 -27 ÷ 5 -15 ÷ 15 2 ÷ 18
Liczba napięć zasilania 1 1 2 ÷ 3 1 ÷ 3 1
Asortyment układowyBardzo duży
Średni Mały MałyBardzo duży
* Układy cyfrowe; Wojciech Głowacki; Warszawa, Wydawnictwo Szkolne i Pedagogiczne, 1998.
68
CYFROWY ZAPIS INFORMACJI
● Kody liczbowe – zapis informacji liczbowych,● Kody binarno-dziesiętne,
● Kody alfanumeryczne – zapis cyfr, liter i znaków interpunkcyjny oraz graficznych,
● Kody kontrolne – kontrola poprawności danych,
69
KODY LICZBOWENaturalny kod binarny
Naturalny kod binarny (dwójkowy) NB (Natural Binary)to najczęściej stosowany kod liczbowy w technice cyfrowej.
Dla całkowitych liczb nieujemnych n-bitową liczbę BC zapisuje się jako:
BC=bn−1bn−2...bi ...b1b0 , bi∈0,1
Wartość dziesiętną liczby BC wynosi:
Dla całkowitych liczb nieujemnych n-bitową liczbę BU zapisuje się jako:
BU=b−1b−2 ...b j ...b−m1b−m , bi∈0,1
Wartość dziesiętną liczby BU wynosi:
DBU = ∑j=−m
−1
b j⋅2 j
Dmin = 0; Dmax=2n-1
Dmin = 0; Dmax=1-2-m
70
KODY LICZBOWENaturalny kod binarny
bn-1b
n-2 ... bi ... b
1b
0
MSB LSB
Słowo w zapisane binarnie.
71
KODY LICZBOWEkod binarny – liczby ujemne
Rozróżnienie pomiędzy liczbami dodatnimi i ujemnymi dokonywane jest za
pomocą dodatkowego ................... (z reguły jest to najstarszy (MSB) bit:
„+” 0, „-” 1). Stosuje się trzy zasadnicze sposoby kodowania liczb ze → →
znakiem:
● ZM – znak-moduł (sign-and-magnitude),
● ZU1 – znak-uzupełnienie do 1 (ones' complement),
● ZU2 – znak-uzupełnienie do 2 (twos' complement),
72
KODY LICZBOWEZM - Znak-Moduł
bn-1b
n-2 ... bi ... b
1b
0
MSB LSB
Znak „0” „+”→ „1” „-”→
…..............................................................
Liczba dziesiętna Liczba dwójkowa ZM
+13 -13 01101 11101
+0,8125 -0,8125 01101 11101
73
KODY LICZBOWEZU1 – Znak – Uzupełnienie do 1
bn-1b
n-2 ... bi ... b
1b
0
MSB LSB
Znak „0” „....”→ „1” „....”→
Moduł liczby zapisany:● Dla liczb dodatnich w naturalnym kodzie binarnym;● Dla liczb ujemnych jako uzupełnienie do 1;
Liczba dziesiętnaLiczba dwójkowa
ZU1
+13 -13 01101 10010
+0,8125 -0,8125 01101 10010
U1(L)=...................; gdzie L jest n-bitową liczbą binarną.
74
KODY LICZBOWEZU2 – Znak – Uzupełnienie do 2
bn-1b
n-2 ... bi ... b
1b
0
MSB LSB
Znak „0” „+”→ „1” „-”→
Moduł liczby zapisany:● …..............................................................;● Dla liczb ujemnych jako uzupełnienie do 2;
Liczba dziesiętnaLiczba dwójkowa
ZU2
+13 -13 01101 10011
+0,8125 -0,8125 01101 10011
U2(L)=U1(L)+..........
U2(L)=2n – L; gdzie L jest n-bitową liczbą binarną.U2(0)=0
75
KODY LICZBOWEPorównanie ZM, ZU1, ZU2
Liczba dziesiętna Liczba binarna
całkowita ułamkowa ZM ZU1 ZU2
-8 -1 1000
-7 -0,875 1111 1000 1001
-6 -0,75 1110 1001 1010
-5 -0,625 1101 1010 1011
-4 -0,5 1100 1011 1100
-3 -0,375 1011 1100 1101
-2 -0,25 1010 1101 1110
-1 -0,125 1001 1110 1111
-0 -0 1000 1111 -
0 0 - - 0000
+0 +0 0000 0000 -
+1 +0,125 0001 0001 0001
+2 +0,25 0010 0010 0010
+3 +0,375 0011 0011 0011
+4 +0,5 0100 0100 0100
+5 +0,625 0101 0101 0101
+6 +0,75 0110 0110 0110
+7 +0,875 0111 0111 0111
76
KODY LICZBOWEZapis liczb wymiernych
Znak cm-1 c
m-2 ... c0 u
-1 ... u-m+1
u-m
MSB LSB
…........................
Liczba dziesiętnaLiczba dwójkowa ZCCCC.UUU - ZU2
+13,25 -13,25 01101010 10010110
…................... liczby polega na zapisie liczby tak aby błąd zaokrąglenia (obcięcia) był jak najmniejszy. Np: Stosują system system ZCC.UU liczbę 0,47 możemy przedstawić jako:
● 00001→ 0,25;● 00011·2-1 → 0,38;● 00111·2-2 → 0,44;● 01111·2-4 → 0,47;
Reprezentacja …..........................(fixed-point notation).
…..........................
Oznaczenie np.: ZCCCC.UUU oznacza zapis na słowie 9 bitowym liczby ze znakiem przy czym część całkowita jest zapisana na 4 bitach a część ułamkowa na 3.
77
KODY LICZBOWEZapis liczb wymiernych
Reprezentacja zmiennoprzecinkowa (floating-point notation).
L=............... – zasada ogólna
● L – liczba rzeczywista,
● M – Mantysa: liczba ułamkowa ze znakiem (ZM, ZU1 lub ZU2),
● W – Wykładnik lub cecha (ZM, ZU1 lub ZU2),
● p – wspólna podstawa kodów stosowanych do zapisu M i W,
● d – liczba naturalna (zazwyczaj d=1),
W przypadku liczby binarnych L=...................
Znormalizowana liczba zmiennoprzecinkowa to liczba, której mantysa spełnia warunek p-d≤|M|<1 - dla liczb binarnych 0,5≤|M|<1.
78
KODY LICZBOWEZapis liczb wymiernych
Znak Wn-1 W
n-2 ... W0 M
-1 ... M-m+1
M-m
MSB LSB
…..................
Reprezentacja zmiennoprzecinkowa standard IEEE 754.
…...................Zapisuje się tylko część ułamkową mantysy – opuszcza
się najstarszy bit reprezentujący część całkowitą ponieważ po normalizacji (1≤|M|<2) bit ten ma zawsze
wartość „1”.
L=−1Znak⋅1 ∑j=−m
−1
M j⋅2 j⋅2∑
k=0
n−1
W k⋅2k−expbias
Typ
Liczba bitówexp
bias
(Exponent bias)
Znak(Sign)
Wykładnik(Exponent)
n
Mantysa(Significand)
m
Half (16 bitowy) 1 5 10 15
Single (32 bitwy) 1 8 23 127
Double (64 bitowy) 1 11 52 1023
Quad (128 bitowy) 1 15 112 16383
79
ARYTMETYKA DWÓJKOWA
Opis wszystkich działań we wszystkich najczęściej stosowanych formatach wykracza poza
ramy niniejszego wykładu. Niezbędne informację można znaleźć w:
● Podstawy elektroniki cyfrowej; Józef Kalisz; Warszawa, WKŁ, 2007;
● Wikipedia anglojęzyczna - http://en.wikipedia.org ;
80
CYFROWY ZAPIS INFORMACJI
● Kody liczbowe – zapis informacji liczbowych,● Kody binarno-dziesiętne,
● Kody alfanumeryczne – zapis cyfr, liter i znaków interpunkcyjny oraz graficznych,
● Kody kontrolne – kontrola poprawności danych,
81
KODY LICZBOWEKody binarno-dziesiętne BCD
W kodach BCD każda cyfra liczby dziesiętnej kodowana jest w postaci dwójkowej jako oddzielne słowo.
Np.: liczba 123 jest zapisana w kodzie „2421” jako 0001 0010 0011.
Liczba Kody BCD
8421 2421 XS3XS3 - Graya
1 z 107-seg.
abcdefg
0 0000 0000 0011 0010 0000000001 1111110
1 0001 0001 0100 0110 0000000010 0110000
2 0010 0010 0101 0111 0000000100 1101101
3 0011 0011 0110 0101 0000001000 1111001
4 0100 0100 0111 0100 0000010000 0110011
5 0101 1011 1000 1100 0000100000 1011011
6 0110 1100 1001 1101 0001000000 1011111
7 0111 1101 1010 1111 0010000000 1110010
8 1000 1110 1011 1110 0100000000 1111111
9 1001 1111 1100 1010 1000000000 1111011
a
b
c
d
e
fg
Kod …............. – kod w którym dwie kolejne liczby różnią się o 1 tylko na jednej pozycji (np.: kod Graya).
82
CYFROWY ZAPIS INFORMACJI
● Kody liczbowe – zapis informacji liczbowych,● Kody binarno-dziesiętne,
● Kody alfanumeryczne – zapis cyfr, liter i znaków interpunkcyjny oraz graficznych,
● Kody kontrolne – kontrola poprawności danych,
83
KODY ALFANUMERYCZNE
Kody alfanumeryczne umożliwiają kodowanie w postaci dwójkowej cyfr,
liter i znaków graficznych.
84
CYFROWY ZAPIS INFORMACJI
● Kody liczbowe – zapis informacji liczbowych,● Kody binarno-dziesiętne,
● Kody alfanumeryczne – zapis cyfr, liter i znaków interpunkcyjny oraz graficznych,
● Kody kontrolne – kontrola poprawności danych,
85
KODY KONTROLNE
Kody kontrolne to kody służące weryfikacji poprawność danych zapisanych cyfrowo:● Kody ...................... – umożliwiają jedynie wykrywanie błędów,● Kody ...................... – umożliwiają wykrywanie i korekcję błędów.
p=bn−1⊕bn−2⊕⊕b0
Liczba dziesiętna
Kod naturalny dwójkowy
b2b
1b
0
Kod z bitem parzystości
b2b
1b
0p
Kod z bitem nieparzystości
b2b
1b
0p
0 000 0000 0001
1 001 0011 0010
2 010 0101 0100
3 011 0110 0111
4 100 1001 1000
5 101 1010 1011
6 110 1100 1101
7 111 1111 1110
Jeśli ilość jedynek w słowie jest parzysta to p=0 jeśli nieparzysta to p=1.
86
BLOK CYFROWY
● D – dane wejściowe przetwarzane przez blok cyfrowy,● S – sygnały sterujące pracą bloku cyfrowego,● F – dane wyjściowe,● R – sygnały kontrolne sterujące pracą innych bloków cyfrowych,● X – słowo wejściowe będące złożeniem słów D i S,● Y – słowo wyjściowe będące złożeniem słów F i R,
Blok cyfrowy jest:● zbudowany z wielu elementów logicznych tj.: elementów kombinacyjnych
lub/i sekwencyjnych,● realizuje jedną lub wiele funkcji – wybór funkcji realizowany jest przez
podanie odpowiedniego słowa sterującego.
87
BLOK CYFROWYMagistrale i szyny
Szyna (node) Magistrala(bus)
Blok cyfrowy„A”
Blok cyfrowy„B”
x0x1x2x3x4x5x6x7
Blok cyfrowy„A”
Blok cyfrowy„B”
Xlub
X[7..0]
8
Uwaga: Aby jednoznacznie określić, który bit (szyna) reprezentuje …............... bit słowa (….......), a który …......................... (….....) w zapisie wektorowym stosuje się zazwyczaj konwencję [MSB...LSB].
88
BLOKI CYFROWEKonwertery kodów
Konwertery realizują przetwarzanie słów binarnych zapisanych w jednym kodzie na zapisane w drugim kodzie.
X[0..1](NB)
Y[0..3](1-z-4)
00 0001
01 0010
10 0100
11 1000
KonwerterNB/1-z-4
X[0..1] Y[0..3]
89
BLOKI CYFROWEMultipleksery i Demultipleksery
Multiplekser (MUX) pełni rolę przełącznika łączącego jeden z n sygnałów wejściowych z wyjściem, demultiplekser (DMUX, DX) pełni funkcję odwrotną.
Jeżeli układ MUX lub DMUX przełącza całe słowa danych (magistrale) nazywany jest ...........................
MUX DMUX
x0
xn-1
y0
ym-1
am0
amj-1
ad0
adk-1
X[n-1..0]dane we.
Y[m-1..0]dane wy.
We. adresowe multipleksera
AM[j-1..0]
We. adresowe demultipleksera
AD[k-1..0]
n≤2j m≤2k
MUX DMUX
X0[p-1..0]
am0
amj-1
ad0
adk-1
Xn-1
[p-1..0]
Y0[p-1..0]
Ym-1
[p-1..0]
p
p
p
p
p
…............... układy MUX/DMUX.
90
BLOKI CYFROWETestery parzystości
Tester parzystości (odd-parity) wykrywa czy podane na jego wejście słowo zawiera parzystą liczę „1”.
Tester nieparzystości (even-parity) tworzy się przez zanegowanie wyjścia testera parzystości.
p=.......................................
Jeśli ilość jedynek w słowie jest parzysta to p=0 jeśli nieparzysta to p=1.
Testerparzystości
x0
xn-1
p
92
ARTMETYCZNE BLOKI CYFROWESumator/subtraktor
Y=co°F=PQci
P[n-1..0]
Q[n-1..0]
n
nΣ F[n-1..0]
n
co
ci
P[n-1..0]n
Q[n-1..0]
ci
co
F[n-1..0]n
P[n-1..0]
Q[n-1..0]
n
n+/- F[n-1..0]
n
cn
k
k Funkcja cn Wynik
0 P+Q dodawanie
x Dodatni
1 P+Q+1odejmowanie
0 Ujemny
1 Dodatni
93
ARTMETYCZNE BLOKI CYFROWEMultiplikator - układ mnożący
P[n-1..0]
Q[m-1..0]
n
m× F[n+m-1..0]
n+m
×P[n-1..0]
n
Q[m-1..0]m F[n+m-1..0]
n+m
Dla liczb binarnych zapisanych w kodzie NB:
F=P×Q=∑i=0
n−1
∑j=0
m−1
pi⋅q j⋅2i j ; P=∑i=0
n−1
pi⋅2i , Q=∑j=0
m−1
q j⋅2 j
pi ∙ qj to iloczyny boolowskie odpowiednich bitów słów P i Q, a wyraz 2i+j oznacza odpowiednie …..................... bitu wyniku w słowie wynikowym F.
Multiplikator mnożący dwa słowa wejściowe odpowiednio m i n bitowe zawiera …............... sumatorów oraz …........... bramek AND.
94
ARTMETYCZNE BLOKI CYFROWEBlok Artmetyczno-Logiczny - ALU
Stanowią główny blok operacyjny każdego mikrokontrolera i mikroprocesora.
A B
Z
cicooperatoryflagi
ALU
Operacje arytmetyczne
add A+B+ci sub A-B-ci
inc A+1 dec A-1
pass A neg -A
Operacje logiczne
and ai ∙ b
i nand ai ∙ b
i
or ai + b
i nor ai + b
i
xor ai b
i xnor ai b
i
pass ai not a
i
Operacje typu przesunięcie/
obrót
sl1 A<<11 sr1 A>>
11
sla A<<a1 sra A>>
a1
rol A<<r1 ror A>>
r1
Dane wejściowe A i B są traktowane jako liczby bez znaku przy operacjach logicznych lub jako liczby ze znakiem przy operacjach arytmetycznych.
95
BLOKI CYFROWERejestry
Rejestry to bloki pamięciowe zbudowane z przerzutników:
● …................... – SISO (Serial In Serial Out) – pozwalają na szeregowe
wprowadzenie i wyprowadzenie danych,
● ….................. – PIPO (Parallel In Parallel Out) - pozwalają na równoległe
wprowadzenie i wyprowadzenie danych (jednocześnie z lub do wszystkich pozycji
rejestru),
● ….................................... – SIPO (Serial In Parallel Out) - umożliwiają szeregowe
wprowadzenie i równoległe wyprowadzenie danych,
● …..................................... – PISO (Parallel In Serial Out) – umożliwiające
równolegle wprowadzenie i szeregowe wyprowadzenie informacji,
96
BLOKI CYFROWERejestry szeregowe
SISOD Q
C
D Q
C
Danewejściowe
C
D Q
C
n-1
D Q
C
0n-2
Danewyjściowe
97
BLOKI CYFROWERejestry równoległe
D Q
C
Danewejściowe
C
D Q
C
D Q
C
Danewyjściowe
n-1 0n-2
Qn-1
Qn-2
Q0
Dn-1
Dn-2
D0
PIPOD[N-1..0] Q[N-1..0]
C
98
BLOKI CYFROWERejestry szeregowo-równoległe
D Q
C
Danewejściowe
C
D Q
C
D Q
C
Danewyjściowe
n-1 0n-2
Qn-1
Qn-2
Q0
SIPOD Q[N-1..0]
C
99
BLOKI CYFROWERejestry równoległo-szeregowe
D Q
C
Danewejściowe
C
D Q
C
D Q
C
Danewyjściowe
n-1 0n-2
Dn-1
Dn-2
D0
MUX MUX
PISOD[N-1..0] Q
C
LD
LD
100
BLOKI CYFROWELiczniki
LICZNIK
CLR Q[n-1..0]
C
CE
Licznik służą zliczaniu impulsów pojawiających się na wejściu licznika.
Licznik można podzieli ze względu na budowę wewnętrzną na:● ….......................................,● ….......................................,
101
BLOKI CYFROWELicznik asynchroniczny
T
Q
Q
C
T
Q
Q
C
T
Q
Q
C
„1” „1”„1”
C
EN EN ENR R RCE
CLR
Q0 Q
1Q
n-1
Licznik asynchroniczny może zliczać impulsy z częstotliwością równą …....................................................................., jednak odczyt danych jest możliwy dopiero po czasie n∙tpCQ.
102
BLOKI CYFROWELicznik synchroniczny
T
Q
Q
C
T
Q
Q
C
T
Q
Q
CC
R R R
CE
CLR
Q0 Q
1Q
n-1
Par. przerzutników T
Par. bramek AND
103
BLOKI CYFROWEBloki pamięciowe
Bloki pamięciowe służą do przejściowego lub trwałego przechowywania danych cyfrowych.
Pamięci półprzewodnikowe możemy podzielić na:
● Ulotne – dane są tracone po wyłączeniu zasilania,
● Nieulotne – dane nie zanikają po wyłączeniu zasilania,
104
BLOKI CYFROWEBloki pamięciowe – ulotne
● Pamięci o swobodnym dostępie RAM (Random-Access Memory),● Statyczne SRAM (Static Random Access Memory),
● Asynchroniczne,
● Synchroniczne,
● Dynamiczne DRAM (Dynamic Random Access Memory),
● Pamięci bez swobodnego dostępu,● Stosowe – LIFO (Last-In-First-Out),● Kolejkowe – FIFO (First-In-First-Out),● Skojarzeniowe (adresowane zwartością) CAM (Content Addressable Memory),● Rejestry przesuwające,
105
BLOKI CYFROWEBloki pamięciowe – nieulotne
● Programowane maską – ROM (Read-Only Memory),● Programowane jednorazowo – PROM (Programmable Read-Only
Memory),● Kasowalne i programowalne wielokrotnie – EPROM (Erasable
Programmable Read-Only Memory),● Elektrycznie kasowane i programowane wielokrotnie – EEPROM
(Electrically-Erasable Programmable Read-Only Memory),● Elektrycznie kasowane w całości i programowane wielokrotnie – FLASH,● Pamięci SRAM z podtrzymującą baterią,
106
BLOKI CYFROWEInne
Blokiem cyfrowym może być dowolny układ realizujący jakąś funkcję np.:
● Bloki DSP (Digital Signal Processing) realizujące np.:● FFT,● Transforormacje cosinusowe,● Filtrację (FIR, IIR),● Analize falkową,● Szyfrowanie danych,
● Bloki „interfejsowe” realizujące np.:● ISP,● RS232,● USB,● I2C,
● Inne.