background image

1

I

T
P

W

ZPT

Układy cyfrowe

Układy logiczne (cyfrowe) konstruowane są 
w różnych technologiach i na różnych 
poziomach opisu. 

Poziomy opisu:

1) Bramki i elementarne 

układy pamięciowe 
(przerzutniki)

2) Bloki funkcjonalne: układy 

arytmetyczne (sumatory), 
liczniki, rejestry.

Tworzą one nowe elementy konstrukcyjne, z których 
buduje się złożone układy cyfrowe o różnorodnych 
zastosowaniach: układy przetwarzania sygnałów, 
układy sterowania, specjalizowane procesory, układy 
kryptograficzne

Przerzutn

ik

typu D

D

D

Clk

Clk

Q

Q

Y

B

A

n

n

n

Y

n - 1

Z

O V R

P

G

c

n

c

0

S

A L U

R

(Q)

s

1

s

2

clock

X

Y

x

l

x

p

L

(Q)

s

1

s

2

clock

X

Y

background image

2

I

T
P

W

ZPT

Układ

sterujący

(kontroler

)

Dane wyjściowe

Dane

wejściowe

Sygnały

sterujące

Stan części

operacyjnej

Układ operacyjny

(Datapath)

System cyfrowy

0

1

0

1

0

1

0

1

0

1

0

1

0

1

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

Mikrooperacje 

wywoływane przez

sygnały sterujące

background image

3

I

T
P

W

ZPT

System cyfrowy…

D, F - przetwarzana 
informacja (wektory 
binarne),

UO - układ operacyjny

US - układ sterujący

X

Z

X

P

Z

Y

Z

D

F

X - sygnały warunków,

Z - sygnały sterujące 
(mikrorozkazy)

US

UO

background image

4

I

T
P

W

ZPT

System cyfrowy - realizacja

UO – z bloków funkcjonalnych

US – automat 

lub układ mikroprogramowany 

X

Z

X

P

Z

Y

Z

D

F

US

UO

background image

5

I

T
P

W

ZPT

Bloki funkcjonalne

P

S

X

Y

BF

clk

– wejścia sygnałów 

reprezentujących

 dane wejściowe

S – wejścia sterujące, 

Y – wyjścia sygnałów 
reprezentujących dane 
wyjściowe,

– wyjścia predykatowe, 
sygnalizujące pewne 
szczególne stany 
przetwarzania danych,

clk   wejście zegarowe

background image

6

I

T
P

W

ZPT

Bloki 

funkcjonalne

B. kombinacyjne B. sekwencyjne Pamięci

Układy

arytmetyczne

Sumator

Układ odejmujący

Komparator

Układy

Komutacyjne

MUX

DMUX

DEC

Rejestry

Równoległe 
Przesuwające

Liczniki

Zliczające
W górę 
W dół

ROM

(RAM)

background image

7

I

T
P

W

ZPT

Multiplekser (MUX)

N = 
2

n

 P

k

(A) oznacza pełny iloczyn zmiennych a

n

1

,...,a

0

, prostych lub zanegowanych, zgodnie z 

reprezentacją binarną liczby k = L(A). 

a

n-1

a

0

e

d

d

d

0

1

N-1

1

N

0

k

k

k

(A)d

P

e

y

A = (a

n–1

 ,..., a

j

 ,..., a

background image

8

I

T
P

W

ZPT

Multipleksery

1

0

ad

d

a

y

3

0

1

2

0

1

1

0

1

0

0

1

d

a

a

d

a

a

d

a

a

d

a

a

y

7

0

1

2

6

0

1

2

5

0

1

2

4

0

1

2

3

0

1

2

2

0

1

2

1

0

1

2

0

0

1

2

d

a

a

a

d

a

a

a

d

a

a

a

d

a

a

a

d

a

a

a

d

a

a

a

d

a

a

a

d

a

a

a

y

      

Dla n = 1 (MUX 2 : 1):

  dla n = 2 (MUX 4 : 1):

dla n = 3 (MUX 8 : 1): 

e = 1

0

1

2

3

a

1

a

0

d

d

d

0

1

3

d
d

2

d

1

N

0

k

k

k

(A)d

P

e

y

background image

9

I

T
P

W

ZPT

Multiplekser jako przełącznik

e = 1

0

1

2

3

0 0

0

3

0

1

2

0

1

1

0

1

0

0

1

d

a

a

d

a

a

d

a

a

d

a

a

y

0 1

1 1

0

1

1

0

1

1

background image

10

I

T
P

W

ZPT

Demultiplekser

a

n - 1

a

0

e

d

y

y

y

0

1

N - 1

(N = 2

n

)

(A)d

eP

y

k

k

P

k

(A) oznacza pełny iloczyn zmiennych a

n

1

,...,a

0

, prostych lub zanegowanych, zgodnie 

z reprezentacją binarną liczby k = L(A). 

background image

11

I

T
P

W

ZPT

Demultiplekser jako przełącznik

e = 1

0
1
2
3

0

0

0

d

a

a

y

d

a

a

y

d

a

a

y

d

a

a

y

0

1

3

0

1

2

0

1

1

0

1

0

0

0

0

0

0

0

0 0

0 1

1 1

1

1

1

1

background image

12

I

T
P

W

ZPT

Dekoder

a

n - 1

a

0

e

d

y

y

y

0

1

N - 1

y

y

y

0

1

N - 1

a
a

a

0

1

n - 1

N = 
2

n

DMU
X

d=1
e=1

DEKODER

background image

13

I

T
P

W

ZPT

Multipleksery grupowe

A

B

Y=A

0 1

Y=B

MUX-y i DMUX-y można przystosować do przełączania 

(komutacji) sygnałów wielobitowych (grupowych)

Y

A

B

background image

14

I

T
P

W

ZPT

Bloki komutacyjne

Multiplekser służy do 
wybierania jednego z wielu słów 
wejściowych i przesyłania go na 
wyjście. Na wyjściu Y pojawia 
się słowo wejściowe wskazane 
adresem A (wg naturalnego 
kodu binarnego). 

Demultiplekser służy do 
przesyłania słowa X 
wejściowego na jedno z 
wielu wyjść; numer tego 
wyjścia jest równy 
aktualnej wartości adresu. 

X

0

X

j

X

N-1

Y

n

A

e

Y

 

0

 

Y

 

j

 

Y

 

N-1

 

n

 

A

 

e

 

X

 

background image

15

I

T
P

W

ZPT

Bloki komutacyjne

1    0

0    0

1    1

a

1       

a

0

0

1

2

3

0

1

0

a

1       

a

0

0

1

2

3

1    0

0    0

1    1

0

1

0

0

1

1

0

0

0

1

1

1

0

1

0

0

0

0

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

1

0

0

1

0

0

1

0

Najważniejsze zastosowanie:

background image

16

I

T
P

W

ZPT

Inne zastosowania…

y = 
(1,7,11,13,14,15) 

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

y

0
1
0
0
0
0
0
1
0
0
0
1
0
1
1
1

x

3

x

2

x

1

x

0

Zastosowanie MUX do realizacji 

funkcji boolowskich

background image

17

I

T
P

W

ZPT

y = 
(1,7,11,13,14,15)

0

1

2

3

4

5

6

7

8

9

1 0

1 1

1 2

1 3

1 4

1 5

x

3

x

2

x

1

x

0

y

Zastosowanie dekodera  do 

realizacji 

funkcji boolowskich

Inne zastosowania…

… należy odłożyć do kosza!

background image

18

I

T
P

W

ZPT

Sumatory

Sumator – 
podstawowy BF 
powszechnie 
stosowany w 
technice cyfrowej

Inne układy 
arytmetyczne:
układy odejmowania
układy mnożące
układy dzielenia

...są budowane z sumatorów  

c

n

c

0

A

n

B

n

Y

n

A

background image

19

I

T
P

W

ZPT

Najprostszy sumator

Najprostsza realizacja: 
kaskadowy 
(ripple carry adder)
 

a  b

i

i

y

i

c

i+1

c

i

a  b

0

0

y

0

c

1

c

0

a   b  

c

n-1

n-1

y

n-1

c

n

n-1

c

n

c

0

A

n

B

n

Y

n

1001 0110

1111

C

4

=0

0111

0000

C

4

=1

Jak jest zbudowane pojedyncze ogniwo?

 

background image

20

I

T
P

W

ZPT

Funkcje logiczne sumatora

0
0
0
1
0
1
1
1

b)

c(a

ab

b)

c(a

ab

o

c

i

c

i

b

i

a

i

   y

)

b

(a

c

b

a

c

i

i

i

i

i

1

i

a

b

c

c

o

y

0

0

0

0

0

1

0

1

0

0

1

1

1

0

0

1

0

1

1

1

0

1

1

1

y

c

o

c

a  b

ab

c

00

01

11

10

0

0

1

0

1

1

1

0

1

0

ab

c

00

01

11

10

0

0

0

1

0

1

0

1

1

1

b

a

c

y

b

a

c

b

a

c

      

b

a

c

b

a

c

b

a

c

cab

y

0
1
1
0
1
0
0
1

background image

21

I

T
P

W

ZPT

Co z odejmowaniem?

c

n

c

0

A

n

B

n

Y

n

A

c

n

c

0

A

n

B

n

Y

n

A

?

background image

22

I

T
P

W

ZPT

Reprezentacje liczb – NKB/U2

A = <

 

a

n–1

 ,..., a

j

 ,..., a

> gdzie a

j

  {0,1} 

1

n

0

j

j

j

NKB

D

2

a

A

L

A

2

n

0

j

j

j

1

n

1

n

U2

D

2

a

2

a

A

L

A

NKB:

U2:

background image

23

I

T
P

W

ZPT

Kod U2

A

U2

 = <a

n–1

 ,..., a

j

 ,..., a

0

>, gdzie a

j

  {0,1}

Zakres: –2

n–1

 ≤  A

D

  ≤  2

n–1 

– 1 

 

2

n

0

j

j

j

1

n

1

n

U2

D

2

a

2

a

A

L

A

Bit a

n–1

 można interpretować jako bit znaku. 

Jeśli a

n–1

 = 0, to liczba jest dodatnia; 

jeśli  a

n–1

 = 1 to liczba jest ujemna; pozostałe bity 

stanowią uzupełnienie (różnicę) wartości liczby do 
najwyższej potęgi liczby 2

<0101>│

U2

 = +5│

D

; <1011>│

U2

 = –

5│

D

background image

24

I

T
P

W

ZPT

Sumator/układ odejmujący 

Jak z sumatora zbudować układ odejmujący?

Y

A

c

n

c

0

n

n

B

n

X O R

n


+

1

B

C

o

=1

B

C

o

=0

B

Y = A – B = A + (–B|

U2

)

B

–B|

U2

 =      +1 = B1 + 1

–B|

U2

 =      +1 = B1 + 1

–B|

U2

 =      +1 = B1 + 1

Dla c

0

 = 1

Y = A +    + 1 = A – 
B

B

B

B

B

0

Dla c

0

 = 0

Y = A + 0 + 0 = A + B

background image

25

I

T
P

W

ZPT

Zastosowania

Jednostka arytmetyczno-logiczna

Y

B

A

n

n

n

Y

n - 1

Z

O V R

P

G

c

n

c

0

S

A L U

Arytmometr (układ 
wykonawczy: 
mikrokontrolera, procesora 
sygnałowego)

Inne układy 
arytmetyczne:

układy mnożące
układy 
kryptograficzne

...są budowane z sumatorów  

background image

26

I

T
P

W

ZPT

Komparator

A

n

B

n

K

„1 z 3”

A < B
A = B
A > B

background image

27

I

T
P

W

ZPT

Sekwencyjne bloki funkcjonalne

Rejestry

Liczniki

L

( Q )

s

1

s

2

c lo c k

X

Y

R

( Q )

s

1

s

2

c lo c k

X

Y

x

l

x

p

Y := X     LOAD
Y := Y     HOLD

Y := <0...0> RESET

(CLEAR)

Y :=  SHR(x

p

Y)
Y
 :=  SHL(Y, x

l

)

Y := Y + 1 = INC(Y)
Y
 := Y – 1 = DEC(Y)

background image

28

I

T
P

W

ZPT

Prosty 

rejestr

Rejestr zbudowany z przerzutników
– ładowanie (load)  i pamiętanie

CLK

P

1

P

2

P

3

P

4

D

1

D

3

D

2

D

4

Q

1

Q

3

Q

2

Q

4

0

1

0

0

LOAD

0

1

0

0

background image

29

I

T
P

W

ZPT

Rejestr przesuwający

WE

Q

1

Q

2

Q

3

Q

4

0

0

0

0

0

1

1

0

0

0

0

0

1

0

0

0

0

0

1

0

0

0

0

0

1

0

0

0

0

0

Q

1

Q

3

Q

2

Q

4

wejście

szeregowe

D

1

D

2

D

3

D

4

0

SHR

clk

0000 10

background image

30

I

T
P

W

ZPT

Mikrooperacje  licznika

L ic z n ik

c lo c k

1100

Zliczanie

LOAD

COUNT

LOAD

HOLD

COUNT

LOAD

HOLD

0010

1101

1110

111
1

1100

background image

31

I

T
P

W

ZPT

Bloki funkcjonalne

Pamięci

ROM

(RAM)

background image

32

I

T
P

W

ZPT

Pamięci typu ROM

ROM – uniwersalny układ kombinacyjny

A

ROM
m  n

X

0

X

i

X

m-1

p

Y

n

background image

33

I

T
P

W

ZPT

Pamięci typu ROM

Adres

ROM
8  4

0
1
2
3
4
5
6
7

0
0
0

0
0
1

1
0
1

1   1   1   1

0   1   1   0
1   1   1   0

0   1   1   0

0   1   1   0
0   1   0   1

0   0   0   0

0   1   1   0

1   1   1   0

0   1   0   1

1   1   1   1

background image

34

I

T
P

W

ZPT

Pamięci typu ROM

(struktura)

y 3   y 2   y 1   y 0

M A T R Y C A   O R

( P R O G R A M O W A L N A )

D

C

B

A

M A T R Y C A  A N D

( S T A L A )

1010

0111

background image

35

I

T
P

W

ZPT

Synteza strukturalna 

Bloki funkcjonalne są stosowane w syntezie:
  układów wykonawczych (operacyjnych),
 
 układów sterujących.

Przerzutn

ik

typu D

D

D

Clk

Clk

Q

Q

Y

B

A

n

n

n

Y

n -1

Z

O V R

P

G

c

n

c

0

S

A L U

R

(Q)

s

1

s

2

clock

X

Y

x

l

x

p

L

(Q)

s

1

s

2

clock

X

Y


Document Outline