1. Podstawy techniki cyfrowej

47
Materiały do wykładu 1. Podstawy techniki cyfrowej Marcin Peczarski Instytut Informatyki Uniwersytet Warszawski 15 lutego 2013

Transcript of 1. Podstawy techniki cyfrowej

Materiały do wykładu

1. Podstawy techniki cyfrowej

Marcin Peczarski

Instytut InformatykiUniwersytet Warszawski

15 lutego 2013

Sygnał .

analogowy

dyskretny

ciągły w czasie dyskretny w czasie

Sygnał binarny (dwójkowy) .

poziom przykładowe napięcia [V]konwencja logiczna

dodatnia ujemna

wysoki H 2,4÷ 5 3÷ 25 −1,1÷−0,8 1 0

niski L 0÷ 0,4 −25÷−3 −1,8÷−1,5 0 1

Układ cyfrowy .

⊲ Przetwarza sygnały dyskretne (na ogół binarne).

⊲ Zbudowany jest z bramek logicznych.

⊲ Bramki logiczne można zbudować np. z tranzystorów.

Bramki logiczne (1) .

AND y = x1 ∧ x2 ∧ . . . ∧ xn

NAND y = ¬(x1 ∧ x2 ∧ . . . ∧ xn)

x1x2...xn

x1x2...xn

Bramki logiczne (2) .

OR y = x1 ∨ x2 ∨ . . . ∨ xn

NOR y = ¬(x1 ∨ x2 ∨ . . . ∨ xn)

x1x2...xn

x1x2...xn

Bramki logiczne (3) .

EX-OR y = (x1 + x2) mod 2

NOT y = ¬x

x1

x2

x

Bramki logiczne (4) .

implikacja y = ¬x1 ∨ x2 = x1 → x2

zakaz y = x1 ∧ ¬x2

x1

x2

x1

x2

Bramki logiczne (5) .

AOI

y = ¬((x1 ∧ x2) ∨ (x3 ∧ x4))

x1

x2

x3

x4

Pomocnicze bramki cyfrowe .

bramka transmisyjna x y

bufor trójstanowy x y

g

g

Prawa de Morgana .

Układ kombinacyjny .

x1 y1

x2 y2

......

xn ym

f :X → Y

X ⊆ {0, 1}n

Y ⊆ {0, 1}m

〈y1, . . . , ym〉 = f(x1, . . . , xn)

System funkcjonalnie pełny (1) .

⊲ AND, OR, NOT

⊲ NAND

⊲ NOR

⊲ OR, NOT

⊲ implikacja, 0

⊲ zakaz, 1

⊲ AND, EX-OR, 1

⊲ . . .

System funkcjonalnie pełny (2) .

f :X → {0, 1}, gdzie X ⊆ {0, 1}n

X = {〈x1, x2, . . . , xn〉 ∈ X : f(x1, x2, . . . , xn) = 1}

f(x1, . . . , xn) =∨

〈a1,...,an〉∈X

xa11 ∧ . . . ∧ xann = ¬

〈a1,...,an〉∈X

¬(xa11 ∧ . . . ∧ xann )

xaii ={

xi gdy ai = 1¬xi gdy ai = 0

Sumator szeregowy .

110 przeniesienia bity ci0110 pierwszy składnik bity ai+ 0111 drugi składnik bity bi1101 suma bity si

a3 b3 a2 b2 a1 b1 a0 b0 0

c4 c3 c2 c1 c0

s3 s2 s1 s0

Sumator jednobitowy .

ai bi ci ci+1 si

0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1

ai bi

si

ci+1ci

Szeregowy sumator 4-bitowy .

⊲ 48 bramek

⊲ Ścieżka krytyczna długości 9

a3 b3 a2 b2 a1 b1 a0 b0 0

c4 c3 c2 c1 c0

s3 s2 s1 s0

Sumator z szybkim generowaniem przeniesień .

a3 b3 a2 b2 a1 b1a0 b0 c0

c4 s3 s2 s1 s0

Porównanie sumatorów 4-bitowych .

⊲ Sumator szeregowy

⋄ 48 bramek

⋄ ścieżka krytyczna długości 9

⊲ Sumator z szybkim generowaniem przeniesień

⋄ 36 bramek

⋄ ścieżka krytyczna długości 4

Multiplekser i demultiplekser .

x0 y0

x1 y1

......

x2n−1 y2n−1

y x

an−1 a1a0 an−1 a1a0

. . . . . .

y = xan−1...a1a0 yi ={

x gdy i = an−1 . . . a1a00 w p.p.

Najprostszy multiplekser .

x0

x1

y = xa

a

x0

x1y = xa

a

y = ¬(¬(x0 ∧ ¬a) ∧ ¬(x1 ∧ a)) =

= (x0 ∧ ¬a) ∨ (x1 ∧ a) = xa

Hazard w układach kombinacyjnych .

x0 = 1

x1 = 1y = xa = 1

q0 = a

q1 = ¬a

a

a

q0

q1

y

Bramka antyhazardowa .

x0 = 1

x1 = 1y = xa = 1

q0 = a

q1 = ¬a

s = 0a

a

q0

q1

s

y

Układ sekwencyjny .

⊲ Powstaje przez dodanie sprzężenia zwrotnego do układu kombina-cyjnego.

⊲ Posiada pamięć –stan wewnętrzny. 0 1 1 0

1 0 0 1

Podział układów sekwencyjnych .

⊲ Układy asynchroniczne

⋄ zmiana stanu wewnętrznego może być wywołana zmianą stanuna dowolnym wejściu.

⊲ Układy synchroniczne

⋄ mają wyróżnione wejście zegarowe;

⋄ zmiana stanu wewnętrznego może nastąpić tylko podczas zmianypoziomu sygnału zegarowego, na jego zboczu narastającym lubopadającym.

Reprezentracja układów sekwencyjnych .

⊲ Wygodnie jest reprezentować w postaci etykietowanego grafu.

⊲ Wierzchołki to stany.

⊲ Etykiety na krawędziach to wartości sygnałów wejściowych.

s q

x

x

Przykład układu asynchronicznego .

⊲ Przerzutnik SR (ang. set-reset), nazywany też RS

⊲ Wersja NOR

x = 〈R,S〉 ∈ {〈0, 0〉, 〈0, 1〉, 〈1, 0〉}

q = 〈Q,Q〉 ∈ {〈0, 1〉, 〈1, 0〉}S

RQ

Q

01 10

00 01 01

10 10 00

Przerzutnik SR, cd. .

⊲ Wersja NAND

x = 〈R,S〉 ∈ {〈1, 1〉, 〈1, 0〉, 〈0, 1〉}

q = 〈Q,Q〉 ∈ {〈0, 1〉, 〈1, 0〉}R

SQ

Q

01 10

11 10 10

01 01 11

Hazard w układach asynchronicznych .

⊲ Występuje z tych samych powodów, co w układach kombinacyjnych.

⊲ Jego skutki są dużo poważniejsze.

⊲ Może powodować fałszywe przejścia między stanami, wyścigi.

⊲ Projektowanie układów asynchronicznych jest bardzo trudne.

Układ synchroniczny .

⊲ Dyskretny czas t ∈ Z wyznaczany sygnałem taktującym (ang. clock)

⊲ Brak problemów z hazardami qt+1 = δ(qt,xt)

⊲ Pamięć zatrzaskowa µ np. z przerzutników D

δ µ

clk

xt

qt+1 qt

Przykład układu synchronicznego .

⊲ Układ zliczający modulo cztery

⊲ Tablica prawdy i schemat

xt q′′t q′t q′′t+1 q

′t+1

0 0 0 0 00 0 1 0 10 1 0 1 00 1 1 1 11 0 0 0 11 0 1 1 01 1 0 1 11 1 1 0 0

µ

clk

xtq′t+1

q′′t+1

q′t

q′′t

Układy asynchroniczne a synchroniczne .

⊲ Uważa się, że asynchroniczna realizacja układu cyfrowego może byćszybsza, pobierać mniej energii i generować mniej zakłóceń elektro-magnetycznych niż odpowiednia jego realizacja synchroniczna.

⊲ Projektowanie układów synchronicznych jest dużo prostsze niż asyn-chronicznych – wystarczy zapewnić, aby wszystkie hazardy wywo-łane zmianą poziomu sygnału zegarowego zakończyły się przed ko-lejną jego zmianą.

⊲ Projektowanie układów synchronicznych można w dużym stopniuzautomatyzować. Nie stworzono zadowalających narzędzi dla ukła-dów asynchronicznych.

⊲ Obecnie wszystkie duże układy cyfrowe, w tym mikroprocesory, pro-jektuje się jako synchroniczne.

Przerzutnik D – uproszczony schemat .

⊲ Projektuje się jako układ asynchroniczny.

⊲ Używa się do konstrukcji pamięci stanu w układzie synchronicznymjako czarnej skrzynki.

D Q

Qclk

Przerzutnik D – pamięć zatrzaskowa .

qt+1 ¬qt+1 qt

clk = 0

qt+1 ¬qt+1 qt+1

clk = 1

qt+2 ¬qt+2 qt+1

clk = 0

Morał z dotychczasowych rozważań .

⊲ Z układów cyfrowych można zbudować najważniejsze składniki kom-putera.

⊲ Układy arytmetyczne to cyfrowe układy kombinacyjne.

⊲ Układy sterujące to cyfrowe synchroniczne układy sekwencyjne.

Komputery powinny . . . .

⊲ wykonywać obliczenia poprawnie,

⊲ być szybkie,

⊲ zużywać mało energii.

Sprzeczność!

Ograniczenia konstrukcyjne .

fan-in

fan-out

Margines zakłóceń i czas propagacji .

x

y

x

yt

t

UH

UL

UIHminUILmax

UH

UL

UOHmin

UOLmax

tp

NMH = UOHmin − UIHmin

NML = UILmax − UOLmax

Czas propagacji .

tp ∼1fmax

tp – czas propagacji [s]fmax – maksymalna częstotliwość taktowania [Hz]

tp

U

tp

T

tp

fan-out

U – napięcie zasilania [V]T – temperatura pracy [K]

Pobierana moc (1) .

P = (G+ Cf)U2

P – pobierana moc [W]f – częstotliwość taktowania [Hz]U – napięcie zasilania [V]

PTTL

f

PECL

f

PCMOS

f

Pobierana moc (2) .

⊲ Producenci podają wartość P dla nominalnych wartości U i f .

⊲ We współcześnie stosowanych technologiach, bazujących na CMOS,parametr G:

⋄ ma małą wartość – ma pomijalny wpływ na pobieraną moc przydużej częstotliwości taktowania,

⋄ rośnie wykładniczo z temperaturą – wpływa na pobieraną mocw trybach uśpienia – istotne w urządzeniach przenośnych.

⊲ Producenci czasem podają dla nominalnego napięcia zasilania war-tość iloczynu CU (np. w µA/MHz) albo wartość iloczynu CfU (np.w µA) dla ustalonych wartości f .

⊲ Producenci czasem podają wykres zależności iloczynu GU od tem-peratury (np. w µA) dla f = 0 i nominalnego napięcia zasilania.

Odprowadzanie ciepła (1) .

Tc = Ta +ΘcaP

Tc – temperatura obudowy [K]Ta – temperatura otoczenia [K]Θca – rezystancja termiczna obudowa-otoczenie [K ·W−1]P – wydzielana moc [W]

Odprowadzanie ciepła (2) .

Tj = Tc +ΘjcP

Tj – temperatura struktury półprzewodnikowej (złącza) [K]Tc – temperatura obudowy [K]Θjc – rezystancja termiczna struktura-obudowa [K ·W−1]P – wydzielana moc [W]

⊲ Dla struktur krzemowych maksymalna temperatura pracy nie po-winna przekraczać 125◦C – 150◦C.

Odprowadzanie ciepła (3) .

P = qcp∆T

P – wydzielana moc [W]q – szybkość przepływu czynnika chłodzącego [kg · s−1]cp – ciepło właściwe czynnika chłodzącego [J · kg

−1 ·K−1]∆T – przyrost temperatury czynnika chłodzącego [K]

cp ≈ 1005 Jkg·K , ρ ≈ 1kg

m3cp ≈ 4190 Jkg·K , ρ ≈ 1000

kg

m3

Prawo Moore’a .

Gordon Moore, Cramming more components onto integrated circuits,Electronics Magazine, Volume 38, Number 8, April 19, 1965.

1962

1965

1970

Logarithm of the number of

components per integrated circuit

Logarith

m o

f re

lative

manufa

ctu

ring c

ost/com

ponent

Układy wrażliwe na ładunki elektrostatyczne .

ESD – Electrostatic Sensitive Devices

ESD – ochrona .

⊲ Powierzchnia stołu odprowadzająca ładunki, ale nie metalowa!

⊲ Opaska połączona z uziemieniem przez dużą rezystancję, aby nieulec porażeniu!

⊲ Antystatyczne opakowania

⊲ Antystatyczna wykładzina podłogowa

⊲ Antystatyczne ubrania