background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

 
 

 
 

 

MINISTERSTWO EDUKACJI 

NARODOWEJ 

 
 
 
 
 
 

Jarosław Świtalski 

 
 
 
 
 
 
 
 

Badanie elektronicznych układów cyfrowych 
312[02].O2.02 

 
 
 
 
 
 
 
 
 
 

Poradnik dla ucznia 

 
 
 
 
 
 
 
 
 
 

Wydawca

 

Instytut Technologii Eksploatacji  Państwowy Instytut Badawczy 
Radom 2007 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

1

Recenzenci: 
doc. dr inż. Stanisław Derlecki 
dr inż. Marian Jerzy Korczyński 
 
 
 
Opracowanie redakcyjne:  
mgr inż. Ryszard Zankowski 
 
 
 
Konsultacja: 
mgr Małgorzata Sienna 
 
 
 
 
 
 
 
 
 
Poradnik  stanowi  obudowę  dydaktyczną  programu  jednostki  modułowej  312[02].O2.02 
„Badanie  elektronicznych  układów  cyfrowych”,  zawartego  w  programie  nauczania  dla 
zawodu technik teleinformatyk. 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Wydawca 

Instytut Technologii Eksploatacji – Państwowy Instytut Badawczy, Radom 2007

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

2

SPIS TREŚCI 

 

1.  Wprowadzenie 

2.  Wymagania wstępne 

3.  Cele kształcenia 

4.  Materiał nauczania 

4.1. Podstawy matematyczne układów cyfrowych 

4.1.1. Materiał nauczania  

4.1.2. Pytania sprawdzające 

22 

4.1.3. Ćwiczenia 

24 

4.1.4. Sprawdzian postępów 

24 

4.2. Układy kombinacyjne i sekwencyjne 

25 

4.2.1. Materiał nauczania 

25 

4.2.2. Pytania sprawdzające 

38 

4.2.3. Ćwiczenia 

39 

4.2.4. Sprawdzian postępów 

40 

4.3. Bloki funkcjonalne i typowe układy cyfrowe 

41 

4.3.1. Materiał nauczania  

41 

4.3.2. Pytania sprawdzające 

68 

4.3.3. Ćwiczenia 

68 

4.3.4. Sprawdzian postępów 

70 

4.4. Wybrane aspekty układów cyfrowych 

71 

4.4.1. Materiał nauczania  

71 

4.4.2. Pytania sprawdzające 

81 

4.4.3. Ćwiczenia 

81 

4.4.4. Sprawdzian postępów 

82 

5.  Sprawdzian osiągnięć  

83 

6.  Literatura 

88 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

3

1.  WPROWADZENIE 

 

Poradnik  będzie  Ci  pomocny  w  przyswajaniu  wiedzy  o  podstawowych  elementach  

i blokach funkcjonalnych układów cyfrowych i kształtowaniu umiejętności  badania układów 
cyfrowych.  

W poradniku zamieszczono: 

– 

wymagania  wstępne  –  wykaz  umiejętności,  jakie  powinieneś  mieć  już  ukształtowane, 
abyś bez problemów mógł korzystać z poradnika,  

– 

cele kształcenia – wykaz umiejętności, jakie ukształtujesz podczas pracy z poradnikiem, 

– 

materiał  nauczania  –  wiadomości  teoretyczne  niezbędne  do opanowania  treści  jednostki 
modułowej, 

– 

zestaw pytań, abyś mógł sprawdzić, czy już opanowałeś określone treści, 

– 

ćwiczenia,  które  pomogą  Ci  zweryfikować  wiadomości  teoretyczne  oraz  ukształtować 
umiejętności praktyczne, 

– 

sprawdzian postępów, 

– 

sprawdzian  osiągnięć,  przykładowy  zestaw  zadań.  Zaliczenie  testu  potwierdzi 
opanowanie materiału całej jednostki modułowej, 

– 

literaturę uzupełniającą. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

4

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Schemat układu jednostek modułowych 

312[02].O2.02 

Badanie elektronicznych 

układów cyfrowych 

312[02].O2.01 

Badanie elektronicznych 

układów analogowych 

312[02].O2 

Podstawy elektroniki 

analogowej i cyfrowej 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

5

2.  WYMAGANIA WSTĘPNE 

 

Przystępując do realizacji programu nauczania jednostki modułowej powinieneś umieć: 

– 

stosować jednostki układu SI, 

– 

przeliczać jednostki, 

– 

posługiwać się podstawowymi pojęciami z zakresu elektrotechniki, elektroniki, 

– 

rozróżniać podstawowe wielkości elektryczne i ich jednostki, 

– 

rozróżniać elementy obwodu elektrycznego, 

– 

odczytywać schematy prostych układów elektrycznych i elektronicznych, 

– 

charakteryzować  wymagania  dotyczące  bezpieczeństwa  pracy  przy  urządzeniach 
elektrycznych, 

– 

łączyć układy elektryczne i elektroniczne zgodnie ze schematem, 

– 

wyjaśniać działanie prostych układów elektronicznych na podstawie ich schematów, 

– 

korzystać z różnych źródeł informacji, 

– 

obsługiwać komputer, 

– 

współpracować w grupie. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

6

3.  CELE KSZTAŁCENIA 

 

W wyniku realizacji programu jednostki modułowej powinieneś umieć: 

 

zapisać liczby w różnych kodach, 

 

wykonać operacje logiczne i arytmetyczne na liczbach zapisanych w różnych kodach, 

 

zastosować prawa i aksjomaty algebry Boole'a do przekształceń funkcji logicznych, 

 

zminimalizować funkcje logiczne, 

 

rozpoznać  bramki  logiczne,  przerzutniki,  bloki  funkcjonalne  na  podstawie  symboli 
graficznych, tabel prawdy, tabel stanów, tabel wzbudzeń lub grafów przejść, 

 

sklasyfikować układy logiczne, 

 

zaprojektować proste układy cyfrowe, 

 

skorzystać  z  katalogów  i  innych  źródeł  informacji  o  cyfrowych  elementach  i  układach 
elektronicznych, 

 

przeanalizować  działanie  elementów  i  bloków  funkcjonalnych,  wchodzących  w  skład 
układów cyfrowych, 

 

porównać  parametry  cyfrowych  układów  scalonych  wykonanych  w  różnych 
technologiach, 

 

zmierzyć wybrane parametry elementów i układów cyfrowych, 

 

przetestować działanie elementów i układów cyfrowych, 

 

wykonać operacje logiczne i arytmetyczne przy pomocy układów cyfrowych, 

 

zaobserwować  stany  logiczne  oraz  przebiegi  na  wejściach  i  wyjściach  układów  za 
pomocą przyrządów specjalistycznych lub oscyloskopu,  

 

obsłużyć wybrany program wspomagający projektowanie układów logicznych, 

 

wyjaśnić zasady łączenia układów cyfrowych w technologiach TTL i CMOS, 

 

dokonać analizy działania translatorów sygnałów TTL/CMOS i CMOS/TTL, 

 

określić  zasady 

łączenia  układów  cyfrowych  z  urządzeniami  wejściowymi  

i wyjściowymi, 

 

scharakteryzować budowę i parametry przetworników A/C i C/A, 

 

posłużyć się układami pamięci ulotnych i nielotnych. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

7

4.  MATERIAŁ NAUCZANIA 

 

4.1.  Podstawy matematyczne układów cyfrowych 

 

4.1.1.  Materiał nauczania 

 
Obecnie często urządzenia elektroniczne są realizowane przy pomocy techniki cyfrowej, 

która  charakteryzuje  się  tym,  że  informacja  wewnątrz  tych  urządzeń  kodowana  jest  przy 
pomocy  liczb. Liczba  jak wiadomo  jest to uporządkowany ciąg  cyfr.  W urządzeniach takich 
jak  kalkulator,  odtwarzacz  MP3,  multimetr,  komputer  sygnały  wewnętrzne  mają  postać 
cyfrową.  Wielkość  cyfrowa  to  taka,  która  w  swoim  przedziale  zmienności  przyjmuje 
skończoną  liczbę  wartości.  Wynika  stąd  wniosek,  że  jest  to  zbiór  przeliczalny.  Na  przykład 
biorąc  pod  uwagę  zbiór  dwuelementowy  znaków  0  i  1  można  podać  dokładnie  cztery 
kombinacje tych cyfr: 00, 01, 10, 11. 

W układach cyfrowych ważna rolę odgrywają zbiory znaków składające się z 2, 8, 10, 16 

elementów. Używając cyfr arabskich 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 i dużych liter alfabetu A, B, C, 
D, E, F można zapisywać liczby w różnych systemach. 

Do  podstawowych  systemów  zapisywania  liczb  należą  systemy  pozycyjno  wagowe, 

w których  wartość  cyfry  zależy  od  miejsca,  czyli  pozycji,  jaką  ta  cyfra  zajmuje  w  napisanej 
liczbie. Każda pozycja ma określoną stałą wagę liczbową (znaczenie).  

Oznaczając podstawę dowolnego pozycyjnego systemu liczbowego przez p, można każdą 

n - cyfrową liczbę całkowitą przedstawić w postaci szeregu: 

=

=

+

+

+

+

1

0

0

0

1

1

2

2

1

1

...

n

i

i

i

n

n

n

n

p

a

p

a

p

a

p

a

p

a

 

lub w skróconej postaci: 

[

]

p

n

n

a

a

a

a

0

1

2

1

...

 

gdzie: 
p – podstawa systemu, którą jest liczba całkowita dodatnia, 
n – numer pozycji 
a

i

 – cyfry z zakresu od 0 do p – 1. 

 

Pierwszej  cyfrze  w  lewo  od  przecinka  przypisuje  się  wagę  p

0

,  drugiej  p

1

,  a  trzeciej  p

2

Natomiast  cyfrom  zapisywanym  w  prawo  od  przecinka  przypisuje  się  kolejno  następujące 
wagi: pierwszej p

-1

, drugiej p

-2

, trzeciej p

-3

 i tak dalej. (patrz przykład 1 i 2). 

W systemach cyfrowych bardzo ważną rolę odgrywają zbiory znaków złożone z 2, 8, 10 

i 16 elementów. Zbiory takie nazywamy odpowiednio: 

 

zbiorem dwójkowym (binarnym) o podstawie p = 2, 

 

zbiorem ósemkowym (oktalnym) o podstawie p = 8, 

 

zbiorem dziesiątkowym o podstawie p = 10, 

 

zbiorem szesnastkowym (heksadecymalnym) o podstawie p = 16. 
W  tabeli  1  przedstawiono  cyfry  używane  w  systemach  o  p  =  2,  3,  8,  10  i  l6.  Zwróć 

uwagę, że dla p > 10 należy wprowadzić dodatkowe znaki. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

8

Tabela 1. Cyfry używane w systemach liczbowych 

Podstawa p 

System liczbowy 

Cyfry używane w systemie liczbowym 

Dwójkowy 

0, 1 

Trójkowy 

0, 1, 2 

Ósemkowy 

0, 1, 2, 3, 4, 5, 6, 7 

10 

Dziesiętny 

0, 1, 2, 3, 4, 5, 6, 7, 8, 9 

16 

Szesnastkowy 

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F 

 

Dwójkowy system liczbowy 

Najważniejszą  rolę  w  układach  cyfrowych  odgrywa  dwójkowy  system  liczbowy, 

wykorzystujący  zapis  pozycyjny.  Jest  on  uważany  za  najprostszy  a  zarazem  najczęściej 
używany  system  liczbowy  w  technice  cyfrowej.  Elementami  zbioru  znaków  systemu 
dwójkowego jest para cyfr: 0 i 1. Znak dwójkowy (ang. Binary Digit) często jest nazywany w 
skrócie  bitem.  W  dwójkowym  systemie  liczbowym  podstawa  systemu  p = 2.  Kilka 
wybranych liczb dwójkowych przedstawiono w drugiej kolumnie tabeli 2.  

 
Przykład 1 
Zapis: 
1101

2

 

oznacza liczbę całkowitą powstałą z sumowania 
(1 ∙ 2

3

)+(1 ∙ 2

2

)+(0 ∙ 2

1

)+(1 ∙ 2

0

) = 8+4+1=13

10

 

 
Przykład 2 
Zapis:  
1001, 1101

jest zapisem skróconym liczby z częścią ułamkowa: 
(1 ∙ 2

3

)+(0 ∙ 2

2

)+(0 ∙ 2

1

)+(1 ∙ 2

0

)+(1 ∙ 2

-1

)+(1 ∙ 2

-2

)+(0 ∙ 2

-3

)+(1 ∙ 2

-4

) = 9,8125

10 

 
Konwersji (zamiany) dziesiętno – dwójkowej można dokonać wielokrotnie dzieląc przez 

2  część  całkowitą  liczby  oraz  mnożąc  przez  2  ułamkową  część  przetwarzanej  liczby 
dziesiętnej. 

 
Przykład 3 
 
Niech liczba zapisana w systemie dziesiętnym L

10

 = 9,8125 

9 : 2 = 4 reszta   1 (LSB)

 

4 : 2 = 2  

2 : 2 = 1  

1 : 2 = 0  

1 (MSB)

 

0,8125 ∙ 2 = 1,6250 = 0,6250 nadmiar  1 (MSB) 
0,6250 ∙ 2 = 1,2500 = 0,2500   

 

0,2500 ∙ 2 = 0,5000 = 0,5000   

 

0,5000 ∙ 2 = 1,0000 = 0,0000   

 

1 (LSB) 

Ostatecznie otrzymujemy: 
9,8125

10

 = 1001,1101

2

  

 
 
gdzie: 
LSB ( ang. Least Significant Bit) najmniej znaczący bit 
MSB ( ang. Most Significant Bit) najbardziej znaczący bit 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

9

Dziesiętny system liczbowy 

Do  zapisania  dowolnej  liczby  w  powszechnie  stosowanym  dziesiętnym  systemie 

liczbowym  wykorzystuje  się  dziesięć  (wszystkie)  cyfr  arabskich.  W  dziesiętnym  systemie 
liczbowym  podstawa  systemu  p = 10.  Kilka  wybranych  liczb  dziesiętnych  przedstawiono 
w pierwszej kolumnie tabeli 2. 

 

Przykład 4 
Liczbę 15, zapisaną w systemie dziesiętnym można zapisać: 
15 = (1 ∙ 10

1

)+(5 ∙ 10

0

Liczba ta składa się z pięciu elementów o wadze 10

0

 = 1 i jednego elementu o wadze  

10

1

 = 10. 

 
Przykład 5 
Zapis: 
574, 28

10 

jest skróconym zapisem wyrażenia : 
(5 ∙ 10

2

)+(7 ∙ 10

1

)+(4 ∙ 10

0

)+(2 ∙ 10

-1

)+(8 ∙ 10

-2

W tym przykładzie 5 jest na pozycji setek (10

2

), 7 na pozycji dziesiątek (10

1

), 4 na 

pozycji jedności (10

0

), 2 na pozycji dziesiętnych (10

-1

) i 8 na pozycji setnych (10

-2

). 

 

Szesnastkowy system liczbowy 

Szesnastkowy  system  liczbowy  jest to taki  system  pozycyjny,  którego  podstawa  p = 16. 

Do  przedstawienia  liczb  w  tym  systemie  potrzebnych  jest  16  znaków.  Dziesięć  znaków 
stanowią cyfry arabskie, a pozostałe 6 znaków pierwsze litery alfabetu: A reprezentuje 10, B 
reprezentuje 11, ..., F reprezentuje  l5.  Kilka wybranych  liczb  szesnastkowych przedstawiono 
w czwartej kolumnie tablicy 2. 

 
Przykład 6 
Niech liczba wyrażona w systemie szesnastkowym ma postać: 
F3A, C8

16

 

Równoważną jej liczbą dziesiętną jest liczba o postaci:. 
(15 ∙ 16

2

) + (3 ∙ 16

1

) + (10 ∙ 16

0

) + (12 ∙ 16

-1

) + (8 ∙ 16

-2

) = 3898,78125

10 

 
Przykład 7 
Liczba zapisana w systemie heksadecymalnym ma postać: 3F

16

. Liczba ta oznacza liczbę 

powstałą przez sumowanie: 
(3 ∙ 16

1

) + (15 ∙ 16

0

) =48+15= 63. 

Konwersji dziesiętno - szesnastkowej można dokonać na drodze wielokrotnego dzielenia 

na  16  części  całkowitej  oraz  mnożenia  przez  16  części  ułamkowej  przetwarzanej  liczby 
dziesiętnej. 

 
Przykład 8 
Dana jest liczba L

10

 = 2527,78125

10 

2527

10

 = 9DF

16 

0,78125

10

 = C8

16

 

Wynik konwersji: 2527,78125

10

 = 9DF, C8

16 

Liczba przedstawiona w systemie dwójkowym może być bezpośrednio przetworzona na 

liczbę  przedstawioną  w  systemie  szesnastkowym.  W  tym  celu  należy  liczbę  dwójkową 
podzielić  na  grupy  czterobitowe  (tetrady)  poczynając  od  przecinka  w  lewo  i  w  prawo 
i zastąpić otrzymane tetrady ekwiwalentnymi cyframi szesnastkowymi. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

10

Przykład 9 
Dana jest liczba L

2

 = 011010101000,111101011100 

Dla części całkowitej liczby otrzymuje się 0110 = 6, 1010 = A, 1000 = 8 
natomiast dla części ułamkowej 1111 = F, 0101 = 5, 1100 = C 

 

zatem  po  odrzuceniu  zera  na  początku  i  dwóch  zer  na  końcu  otrzymuje  się 
1101010100,1111010111

2

 = 6A8,F5C

 

Tabela 2. Przykłady liczb wyrażonych w różnych systemach 

System 
dziesiętny 

System 
dwójkowy 

System 
ósemkowy 

 System 
szesnastkowy 

10 

11 

100 

101 

110 

111 

1000 

10 

1001 

11 

10 

1010 

12 

11 

1011 

13 

12 

1100 

14 

13 

1101 

15 

14 

1110 

16 

15 

1111 

17 

16 

10000 

20 

10 

17 

10001 

21 

11 

18 

10010 

22 

12 

19 

10011 

23 

13 

20 

10100 

24 

14 

100 

1100100 

144 

64 

1000 

1111101000 

1750 

3E8 

 
Kody 

Kod  jest  to  zestaw  symboli,  przyporządkowany  danej  informacji.  Czynność 

przyporządkowania tych symboli nazywa się kodowaniem. 

Parametry określające kod to: 

 

długość m jest to liczba bitów informacji albo liczba zmiennych, 

 

pojemność P jest to liczba kombinacji wartości zmiennych występujących w kodzie. 
W  celu  zautomatyzowania  procesów  przetwarzania  i  transmisji  informacji  cyfrowej, 

zamiast  znaków  graficznych,  którymi  posługujemy  się  na  co  dzień,  są  wykorzystywane 
specjalne kody zbudowane z bardzo prostych symboli. Za pomocą kodów najczęściej koduje 
się  liczby.  W  układach  cyfrowych  najczęściej  stosuje  się  kod  binarnym,  i  jego  szczególny 
przypadek kod dwójkowo – dziesiętny. 

Kody  zbudowane  z  symboli  dwuwartościowych  noszą  nazwę  kodów  dwójkowych. 

Symbole  dwuwartościowe  (lub  dwójkowe),  które  przyjmują  wartości  cyfrowe  0  lub  1, 
nazywa  się  bitami.  Znaki  przedstawia  się w postaci  ciągów  symboli  dwójkowych,  a  ciągi  te 
nazywane są słowami kodowymi. Inaczej mówiąc, m (czyt. liczba) bitów, które odpowiadają 
wartościom  M  zmiennych  tworzy  tzw.  słowo  dwójkowe  (kodowe).  Jedno  słowo  dwójkowe 
składające  się  z  m  bitów  informacji  może reprezentować 2

m

 różnych elementów informacji, 

np.  kod  dwójkowy  złożony  z  siedmiu  bitów  umożliwia  zakodowanie  2

7

  =  128  znaków. 

Kodowanie za pomocą kodu dwójkowego oznacza zapisanie liczb w systemie dwójkowym. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

11

Najlepiej  jest,  gdy  wszystkie  znaki  są  przedstawione  za  pomocą  słów  kodowych 

o jednakowej długości. Z uwagi na szybkość i wydajność procesów przetwarzania informacji, 
należy  posługiwać  się  słowami  o  jak  najmniejszej  długości.  Kodowanie  informacji  pozwala 
na zmniejszenie liczby torów transmisji potrzebnych do przesłania informacji.  

 

Podział kodów 

W  zależności  od  parametru  P  kody  dzielimy  na  zupełne  i  niezupełne.  Kody  zupełne, 

które zawierają wszystkie  możliwe kombinacje  wartości zmiennych.  Kody  niezupełne, które 
nie wykorzystują wszystkich kombinacji. 

 

Kody systematyczne i niesystematyczne 

Kody  systematyczne  tworzy  się  na  podstawie  reguły  formalnej,  w  której  każda 

kombinacja  wartości  zmiennych  jest  zdefiniowana  w  sposób  jednoznaczny,  do  kodów 
systematycznych  zaliczamy  m.in.  wszystkie  kody  wagowe.  Kody  niesystematyczne 
wymagają podania tabeli, która określa kolejność poszczególnych kombinacji występujących 
w  dowolnym  porządku.  do  kodów  niesystematycznych  zaliczamy  na  przykład  kody  Watha 
i dalekopisowy. 

 

Kody dwójkowe wagowe i niewagowe 

Jeśli każdy bit (pozycja) kodu dwójkowego ma określoną i niezmienną wagę (znaczenie) 

liczbową to taki kod nazywamy kodem wagowym; pozostałe kody są kodami niewagowymi. 
Wagi  są  przeważnie  liczbami  całkowitymi.  Wartości  liczbowe  słowa  kodowego  będą  sumą 
wag tych pozycji, które zawierają  jedynki. Najprostszym wagowym kodem dwójkowym  jest 
tzw.  naturalny  kod  dwójkowy  (kod  binarny,  kod  BIN)  (tabela  3).  Wagi  naturalnego  kodu 
dwójkowego n – bitowego (n – pozycyjnego) wynoszą 2

i

, (gdzie i = 0, 1, 2, ..., 2n-1), tzn. są 

kolejnymi potęgami liczby 2.Powszechnie stosowanym kodem dwójkowym niewagowym jest 
kod Graya, w którym sąsiednie słowa różnią się wartością tylko jednego bitu. 

 

Tabela 3. Kody 4 – bitowe: naturalny i Graya 

Naturalny kod dwójkowy BIN 

Kod Graya ( niewagowy) 

 

DCBA 
8 4 2 1 

 

ZWYX 










10 
11 
12 
13 
14 
15 

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










10 
11 
12 
13 
14 
15 

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

 

Kody dwójkowo – dziesiętne 

Ważną  odmianę  kodów  dwójkowych  stanowią  kody  dwójkowo  -  dziesiętne  BCD 

(ang. Binary Coded Decimal). W kodach tych poszczególne cyfry dziesiętne są przedstawione 
w kodzie  dwójkowym,  każdej  cyfrze  kodu  dziesiętnego  są  przyporządkowane  cztery  bity 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

12

kodu  binarnego.  Do  zakodowania  dziesięciu  cyfr  potrzebne  są  co  najmniej  cztery  bity,  bo: 
2

3

 < 10 < 2

4

.  Sześć  spośród  szesnastu  kombinacji  kodu  4  -  bitowego  nie  będzie 

wykorzystanych. Kody BCD mogą być wagowe i niewagowe (przedstawione w tabeli 4 i 5). 
W kodach wagowych każda pozycja ma określoną wagę. Ciąg wag kodu jest zwykle używana 
jako  nazwa  kodu.  Podstawowym  wagowym  kodem  BCD  jest  kod  8421  BCD  lub  po  prostu 
kod  BCD  (tabela  5),  w  którym  wykorzystuje  się  pierwsze  dziesięć  tetrad  4  –  bitowego 
naturalnego kodu  dwójkowego.  Przykładem kodu  niewagowego BCD  jest  kod  z  nadmiarem 
3 (tabela 6). Kod ten otrzymuje  się dodając trzy do cyfry dziesiętnej  i zapisując  ją  następnie 
w kodzie 8421. W tym kodzie nie ma możliwości przypisania wagi każdej pozycji. 

 

Tabela 4. Kody dwójkowo – dziesiętne wagowe 

Kod 

BCD 

 

Aikena 

 

 

Wagi 

8 4 2 1 

2 4 2 1 

2 4 2 1 

7 4 2 1 

8 4 2 1 










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

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

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

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

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

 

Tabela 5. Kody dwójkowo – dziesiętne niewagowe 

Kod: 

Cyfra 

Z nadmiarem 3 (+3, 

plus 3, 

excess 3. XS3) 

Graya 

z nadmiarem 3 

Wattsa 

Johnsona 

pseudopierścieniowy 

Wskaźników cyfrowych 

siedmiosegmentowych 










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

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

00000001 

0011 
0010 
0110 
1110 
1010 
1011 
1001 
1000 

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

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

 

Kody detekcyjne, korekcyjne i alfanumeryczne 

Oprócz omówionych powyżej kodów możemy wyróżnić także kod detekcyjny z kontrolą 

parzystości,  kod  ze  stałą  liczbą  jedynek  w  słowie  kodowym  oraz  7  bitowy  kod 
alfanumeryczny ASCII, do przesyłania informacji pomiędzy komputerami czy dalekopisami. 

 

Algebra Boole’a  

Istotą  techniki  cyfrowej  jest  wytwarzanie  cyfrowych  sygnałów  wyjściowych  jako 

odpowiedzi  na  cyfrowe  sygnały  wejściowe.  Na  przykład  sumator  16  bitowy  przetwarza 
doprowadzone  do  wejść  dwie  liczby  16  –  bitowe  na  sumę  16  –  bitową  tych  liczb  oraz  bit 
przeniesienia.  Można  także  zbudować  układ  do  mnożenia  dwóch  liczb.  Są  to  operacje 
w rodzaju  tych,  jakie  powinna  wykonywać  jednostka  arytmetyczna  komputera.  Innym 
zadaniem może być porównanie dwóch liczb w celu sprawdzenia, która z nich jest większa. 

Typowymi  zadaniami  układów  cyfrowych  jest  pobranie  pewnych  liczb  binarnych,  ich 

wyświetlenie,  wydrukowanie  jako  znaków  dziesiętnych.  We  wszystkich  tych  zadaniach 
sygnały (stany) wyjściowe są zdeterminowanymi funkcjami sygnałów (stanów) wejściowych. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

13

Wszystkie  zadania  mogą  być  wykonane  za  pomocą  urządzeń  zwanych  bramkami,  które 
realizują  działania  algebry  Boole’a  w  dziedzinie  elementów  dwustanowych  (binarnych). 
Każda  ze  zmiennych  boolowskich  może  być  równa  tylko  zeru  lub  równa  tylko  jedynce.  To 
założenie można zapisać w postaci: 

X = 0, jeśli X 

 1 

 1, jeśli X = 0 

Funkcję,  której  zmienne  lub  ona  sama  przyjmuje  wartości  ze  zbioru  {0, 1}  nazywamy 

funkcją  boolowską  (logiczną,  przełączającą).  Natomiast  układ  przetwarzający  logiczne 
sygnały  wejściowe  na  logiczne  sygnały  wyjściowe  nazywa  się  układem  logicznym.  Przy 
projektowaniu  dwustanowych  (0  –  stan  niski,  1  –  stan  wysoki)  układów  cyfrowych 
posługujemy  się  algebrą  Boole’a,  która  opiera  się  na  trzech  zasadniczych  funkcjach 
logicznych. Jedną z postaci algebry Boole’a jest znany rachunek zdań, gdzie zamiast znaków 
sumy  +  stosuje  się  łącznik  lub,  zamiast  znaku  iloczynu  –  łącznik  i,  a  do  negacji  używamy 
słowa  nie.  Algebra  Boole’a  posługuje  się  szeregiem praw  i tożsamości,  które  przedstawione 
są poniżej. 

 

Prawo przemienności mnożenia i dodawania: 

A+B B+A 

A · B = B · A 

 
Prawo łączności: 

mnożenia 
A+B+C A+(B+C) = (A+B)+C 

dodawania 
A · B · C = A · (B · C) = (A · B) ·C 

 
Prawo rozdzielczości: 

mnożenia względem dodawania 
A ·(B + C) = A · B + A ·C 

dodawania względem mnożenia 
A + B · C = (A + B) · (A + C) 

 
Prawa podstawowe: 

A + 1 = 1 

A · 1 = A 

a  

A + 0=A 

A · 0 = 0 

A + A = A 

A · A = A 

A

A

A

=

+

 

0

A

A

=

 

 
Prawa de Morgana: 

...

C

B

A

...

C

B

A

=

+

+

+

 

...

C

B

A

...

C

B

A

+

+

+

=

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

14

Podstawowe tożsamości algebry Boole’a: 

A · B + A · C = A · (B + C) 

(A + B) · (A + C) = A + B · C 

A · B +B·C+

A

·C=A·B+

A

-C 

(A + B) · (B + C) · (

A

+C) = (A+B) · (

A

+ C) 

A · B + 

A

· B = B 

(A + B) · (

A

+ B) = B 

 
Podstawowe funkcje logiczne i bramki układów cyfrowych 

 

iloczyn logiczny I (ang. AND), 

Y = A · B 

 

suma logiczna LUB (ang. OR), 

Y = A + B 

 

negacja (inwersja) NIE (ang. NOT), 

A

Y

=

 

Operacja  sumy  logicznej  jest  zdefiniowana  następująco.  Jeżeli  co  najmniej  jeden 

z argumentów jest równy 1, to wynik jest równy  1. Zatem  suma  logiczna  jest równa 0 tylko 
dla przypadku, gdy wszystkie argumenty są równe 0. 

Operacja  iloczynu  logicznego  jest  zdefiniowana  następująco  wynik  iloczynu  jest 

równy 1, wtedy i tylko wtedy, gdy wszystkie argumenty przyjmują wartość 1. 

Operacja  negacji  jest  operacją  jednoargumentową  i  jest  zdefiniowana  jako  zmiana 

wartości argumentu, tj. jeśli argument ma wartość 1, to operacja ta daje w wyniku wartość 0, 
a jeśli argument ma wartość 0, to operacja ta daje w wyniku wartość 1. 

Stosowane są również operatory złożone (pochodne), jak: 

 

suma zanegowana NOR, 

B

A

Y

+

=

   

 

iloczyn zanegowany NAND,

B

A

Y

=

 

 

równoważność EX-NOR,

B

A

Y

=

   

 

nierównoważność, zwana sumą modulo 2, EXOR , XOR,  

B

A

Y

=

  

 

Funkcja I (AND) 

Do  przedstawienia  iloczynu  logicznego  X  na  przykład  dwóch  zmiennych  A  i  B  są 

stosowane wyrażenia: 

 

B

A

B

A

AB

A·B

X

=

=

=

=

 

 
Najczęściej  używane  jest  pierwsze  i  drugie  wyrażenie.  Funkcję  I  (AND)  dwóch 

zmiennych  boolowskich  przedstawiono  na  Rys.1.  Funkcja  iloczynu  logicznego  przyjmuje 
wartość  1  wtedy  i  tylko  wtedy,  gdy  wszystkie  zmienne,  A  i  B  przyjmują  wartość  1. 
W każdym innym przypadku iloczyn logiczny tych sygnałów wynosi 0. 

 

Tabela 6. Dwuargumentowa funkcji I (AND). 

X = AB 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

15

 

 

Rys. 1. Realizacja fizyczna dwuargumentowej funkcji I (AND)  

 

Operację 

iloczynu 

logicznego 

X, 

realizują 

szeregowo 

połączone 

klucze 

A  i  B  w  obwodzie  elektrycznym.  Napięcie  baterii  będzie  wykorzystane  do  rozświecenia 
żarówki,  tzn.  X  =  1  tylko  wtedy,  jeśli  zarówno  klucz  A,  jak  i  klucz  B  będą  zamknięte,  to 
znaczy A = 1 i B = 1 (patrz rysunek 1). 

 

Funkcja LUB (OR) 

Do przedstawienia  sumy  logicznej Y  na przykład  dwóch zmiennych  A i B są stosowane 

wyrażenia: 

B

A

B

A

B

A

Y

=

=

+

=

 

Najczęściej używane jest pierwsze wyrażenie. Jeżeli na wejścia układu podamy sygnał A 

i  sygnał  B,  to  na  jego  wyjściu  otrzymamy  sygnał  będący  ich  sumą  A  +  B.  Przyjmuje  ona 
poziom  1,  gdy  A  lub  B  ma  poziom  1.  Funkcja  sumy  logicznej  przyjmuje  wartość  0  wtedy, 
gdy  wszystkie  zmienne  przyjmują  wartość  0.  Funkcję  LUB  (OR)  dwóch  zmiennych 
boolowskich  przedstawiono  na  rys.  2,  który  ilustruje  różnicę  między  sumą  logiczną  a  sumą 
arytmetyczną. W ostatnim wierszu tablicy widzimy, że 1 + 1 = 1 dla sumy logicznej. Liczba 
zmiennych sumowanych logicznie może być dowolna. 

 

Tabela 7. Dwuargumentowa funkcji LUB (OR) 

X = A + B 

 
Obwód  elektryczny  z  równolegle  połączonymi kluczami  A  i  B, które realizują  operację 

sumy  logicznej  Y,  jest  przedstawiony  na  rys.  2.  Napięcie  baterii  spowoduje  zapalenie  się 
żarówki,  czyli  Y  =  l,  wtedy,  gdy  klucz  A  lub  klucz  B,  lub  obydwa  są  zamknięte  (patrz 
rysunek 2). 

 

Rys. 2. Realizacja fizyczna dwuargumentowej funkcji LUB (OR) 

 

 

 

 

 

 0   

 

 1 

A   

 B 

X = AB 

Y = A+B 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

16

Funkcja NIE (NOT) 

Do przedstawienia negacji N na przykład zmiennej A są stosowane wyrażenia: 

'

A

A

N

=

=

 

Najczęściej używane  jest pierwsze wyrażenie. Symbol  A odczytuje się  jako  „nie A” lub 

„A  zanegowane”,  lub  „dopełnienie  A”.  Funkcja  NIE  (NOT)  polega  na  inwersji  (negacji) 
zmiennej,  czyli  zamienia  stan  wysoki  1  na  stan  niski  0  lub  odwrotnie.  Jeżeli  na  wejście 

podamy sygnał logiczny A, to na wyjściu otrzymamy jego negację 

A

 („nie A”). Funkcję NIE 

(NOT) przedstawiono na tabela 8. 

 

Tabela 8. Jednoargumentowa funkcja logiczna NIE (NOT) 

 

Funktory układów logicznych 

Bramkami  (funktorami  logicznymi)  nazywane  są  kombinacyjne  układy  cyfrowe, 

realizujące proste funkcje logiczne jednej lub wielu zmiennych logicznych. Zmienną logiczną 
jest sygnał elektryczny występujący na wejściach i wyjściach tych układów. Poniżej zostanie 
przedstawione działanie logiczne podstawowych typów bramek logicznych.  

 

Bramka I (AND) 

 

B

A

F

=

 

 

Rys. 3. Dwuwejściowa bramka I (AND): a) tablica prawdy i symbol graficzny 

 

Bramka LUB (OR) 

Bramka  ta  jest  układem  o  dwu  lub  większej  liczbie  wejść,  realizującym  funkcję  sumy 

logicznej zmiennych wejściowych (rys. 4). Wyjście bramki OR (LUB) jest w stanie wysokim, 
jeżeli któreś z wejść (lub oba)  jest w stanie wysokim. Można to wyrazić za pomocą „tablicy 
prawdy”. 

 

a) 

b) 

B

A

F

+

=

 

 

Rys. 4. Dwuwejściowa bramka LUB (OR): a) tablica prawdy, b) symbol graficzny 

 

W algebrze Boole’a symbolowi OR odpowiada symbol „+”. „A LUB B” jest zapisywane 

jako A + B. 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

17

Bramka NIE (NOT) 

Często  potrzebujemy  zmienić  stan  logiczny  na  przeciwny,  nazywa  się  to  również 

negowaniem stanu logicznego. Jest to funkcja inwertora, „bramki” o jednym wejściu (rysunek 5). 

 

a) 

b)  

 

A

F

=

 

 

 

Rys. 5. Bramka NIE (NOT): a) tablica prawdy, b) symbol graficzny 

 
Do  podstawowych  bramek  negacyjnych  należy  bramka  I-NIE  (Not  AND  lub  krócej 

NAND) oraz bramka LUB-NIE (Not OR lub krócej NOR). 

 

Bramka I – NIE (NAND) 

Bramka ta jest układem realizującym funkcję negacji iloczynu, a więc zgodnie z prawem 

de Morgana również funkcje sumy negacji zmiennych wejściowych (rysunek 6). 

Funkcja  NOT  może  być  połączona z  innymi  funkcjami,  tworząc NAND.  Bramka  I-NIE 

(NAND) jest bramką podstawową w kilku klasach scalonych układów cyfrowych. 

 

B

A

B

A

F

+

=

=

 

 

a) 

b)  

 

 

Rys. 6. Bramka I – NIE (NAND): a) tablica prawdy, b) symbol graficzny 

 

Bramka LUB – NIE (NOR) 

Bramka ta jest układem realizującym funkcję negacji sumy, a więc zgodnie z prawem de 

Morgana  również  funkcję  iloczynu  negacji  zmiennych  wejściowych.  Podobnie  jak  bramka 
I-NIE  (NAND),  również  i  ta  bramka  jest  podstawową  bramką  w  kilku  klasach  scalonych 
układów cyfrowych (rysunek 7b).  

B

A

B

A

F

=

+

=

 

 

a) 

b)  

 

 

Rys. 7. Bramka LUB - NIE (NOR): a) tablica prawdy, b) symbol graficzny 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

18

Sposoby przedstawiania funkcji logicznych 

Do przedstawiania funkcji logicznych służy nam opis słowny. Na podstawie opisu można 

sporządzić  tablicę  wartości  zwaną  tablicą  wierności  lub  tablicą  prawdy  (ang.  Truth  Table). 
Tablica ta składa się  z wierszy, w których wpisuje się wszystkie kombinacje  zerojedynkowe 
zmiennych  niezależnych.  Wszystkie  kombinacje  zmiennych  zapisujemy  tak,  aby  tworzyły 
kolejne  liczby  dziesiętne  zapisane  w  systemie  dwójkowym.  Ostatnia  kolumna  jest 
przeznaczona 

do 

zapisania 

wartości 

funkcji 

dla 

poszczególnych 

kombinacji 

zerojedynkowych. 

Inną metodą bezpośredniego zapisu funkcji n zmiennych są tablice Karnaugha. Tablice te 

są  prostokątne  i  zwierają  2

n

  pól.  Jest  to  zapis  bardziej  zwarty  i  prostszy  

w  użyciu  niż  tablica  wartości.  Metoda  tablic  Karnaugha  zapewnia  minimalizację  funkcji 
logicznych  czyli  zapisywanie  tych  funkcji  w  sposób  prostszy  w  porównaniu  z  innymi 
metodami,  a  praktyczna  realizacja  funkcji  jest  ekonomicznie  tańsza,  ponieważ  wymaga 
mniejszej ilości zastosowania bramek cyfrowych. 

 

Metoda tablic Karnaugha 

Najczęściej  stosowanym  i  najprostszym  rodzajem  opisu  układu  kombinacyjnego  jest 

tablica  wartości,  która  ukazuje  zależność  sygnałów  wyjściowych  od  sygnałów  zmiennych 
wejściowych. Tablice Karnaugha służą do bezpośredniego zapisu n zmiennych. Tablice te są 
prostokątne  i  zawierają  2

n

  pól.  Kolumnom  i  wierszom  siatek  zostały  przypisane  wartości 

w kodzie Graya, gdzie dwie sąsiednie pozycje różnią się jednym znakiem. Kolejność taka jest 
charakterystyczną  właściwością  tablicy  Karnaugha,  która  wykorzystuje  reguły  sklejania, 
zapisane poniżej dla zmiennych A, B funkcji logicznej. 

 

B

B

B

B

X

X

B

B

B

X

X

X

B

BX

BB

B

X

B

X

B

A

X

X

A

A

X

A

AX

=

+

+

=

+

+

+

=

+

+

+

=

+

+

=

+

=

+

0

1

0

)

(

)

)(

(

)

(

 

 

Zmienną,  która  w  dwóch  sąsiednich  polach  przyjmuje  różne  wartości  można  pominąć. 

Najprostszą  z  możliwych  tablic  Karnaugha  dla  układu  dwuwejściowego  przedstawiono  na 
rysunku  8.  Za  jej  pomocą  możemy  opisać  funkcję  logiczną  dwu  sygnałów  wejściowych 
(D

0

 i D

1

). 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

19

a) 

b) 

 D

0

  

D

 

D

D

 

  Y = D

1

0

 

 

 

 

 

D

D

 

 

 

 

 

 

 

 

 

 D

0

  

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Rys. 8. Tablica Karnaugha dla układu dwuwejściowego: a) niewypełniona, b) przykładowe jej wypełnienie 

 

Na  rysunku  zaznaczono  strzałkami,  jakim  kombinacjom  sygnałów  wejściowych 

odpowiada dane pole. Tablica ta jest niewypełniona, tzn. nie opisuje żadnej funkcji logicznej. 
Jej wypełnienie polega na wpisaniu w każde pole takiego stanu (0, 1), jaki powinien pojawić 
się na wyjściu układu przy danej kombinacji sygnałów wejściowych. 

Na  rysunku  8  przedstawiono  wypełnioną  przykładowo  tablicę  Karnaugha.  Obok  niej 

zapisano  występujące  możliwe  kombinacje  stanów  logicznych  sygnałów  wejściowych 
D0 i D1 oraz odpowiadający im sygnał wyjściowy Y. 

Zatem,  tablica  Karnaugha  jest  to  specjalny  rodzaj  tablicy,  do  której  w  pola  opisane 

jednoznacznie  kombinacją  sygnałów  wejściowych  wpisuje  się  odpowiadającą  im  wartość 
sygnału  wyjściowego.  Na  rysunku  9  przedstawiono  tablicę  czterech  zmiennych.  Każde  dwa 
sąsiadujące ze sobą pola (stykające się jednym  bokiem oraz leżące przy krawędziach A - A’ 
i  B-B’)  tej  tablicy  różnią  się  w  opisach  odpowiadających  im  sygnałów  wejściowych  tylko 
jednym bitem (jedną pozycją). 

 

AB 

 

CD 

00 

01 

11 

10 

00 

01 

11 

12 

13 

15 

14 

10 

11 

10 

 

Rys. 9. Tablica Karnaugha czterech zmiennych 

 

Aby  zapisać  do  tablicy  Karnaugha  funkcję  o  większej  liczbie  sygnałów  wejściowych, 

należy  stopniowo  zwiększać  jej  rozmiary,  stosując  w  tym  celu  tzw.  metodę  odbicia 
lustrzanego.  Sposób  tworzenia  tablicy  dla  czterech  zmiennych  z  tablicy  dwóch  zmiennych 
przedstawiono na rysunku 10. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

20

 

a) 

b) 

 

 

 
 

c) 

d) 

 

 

 

Rys. 10. Etapy tworzenia tablicy Karnaugha dla czterech sygnałów wejściowych L - L' – oś odbicia lustrzanego 

 
Polega on na przekształceniu tablicy  Karnaugha dla dwóch sygnałów wejściowych  A, B 

(rysunek 10a) w tablicę dla trzech sygnałów wejściowych A, B, C (rysunek 10b) a następnie 
w tablicę dla czterech sygnałów A, B, C, D (rysunek 10c, d). 

Każde  zwiększenie  liczby  sygnałów  wejściowych  o  jeden  powoduje  podwojenie 

rozmiarów tablicy. 

Następnym krokiem jest wypełnienie pól tak utworzonej tablicy. Funkcja logiczna może 

być  podana  na  przykład  w  postaci:  opisu  słownego,  zbioru  liczb,  dla  których  reprezentacji 
dwójkowej odpowiada na wyjściu poziom 1 lub innego jednoznacznego opisu. 

 

Sposób wypełniania tablicy: 

 

każdą  liczbę,  dla  której  funkcja  wyjściowa  przyjmuje  wartość  1  przedstawiamy  za 
pomocą kodu dwójkowego. 

 

każdą  liczbę  możemy  zapisać  za  pomocą  czterech  bitów  (czterech  sygnałów 
wejściowych). Zatem potrzebna jest czterowejściowa tablica Karnaugha. 

 

w  poszczególne  pola  tej  tablicy  należy  wpisać  wartości  funkcji  Y  dla  poszczególnych 
kombinacji  sygnałów  wejściowych.  W  tym  miejscu  zwykle  wyłania  się  problem.  Jak 
w stosunkowo  krótkim  czasie  znaleźć  pola odpowiadające  danej  kombinacji  wejściowej 
(problem ten  ma  większe  znaczenie, gdy tworzymy tablice o większej  liczbie sygnałów 
wyjściowych).  Kombinacje  sygnałów  wejściowych  dzielimy  przerywaną  linią  w  taki 
sposób,  aby  przebiegała  ona  między  sygnałami  opisującymi  kolumny  a  sygnałami 
opisującymi wiersze tablicy Karnaugha Na przykład bity A, B opisują wiersze, a bity C, 
D - kolumny. Zatem każde pole jest opisane kolumną i wierszem. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

21

 

w  tablicy  Karnaugha  odszukujemy  wiersz  opisany  kombinacją  AB  (sygnałów 
wejściowych). 

 

po odnalezieniu odpowiedniego wiersza. poruszamy się wzdłuż niego, szukając kolumny 
opisanej kombinacja CD. 

 

w pole tablicy leżące na przecięciu odszukanego wiersza i kolumny wpisujemy wartość 1. 
(Strzałkami zaznaczono pola, które odpowiadają poszczególnym kombinacjom). 

 

jeżeli funkcja określała pola, którym odpowiadają poziomy 1, to w pozostałe wolne pola 
należy wpisać 0. 

 

Dysjunkcyjna postać kanoniczna 

Dowolną  funkcję  logiczną  n  zmiennych  można  także  przedstawić  w  dysjunkcyjnej 

postaci  kanonicznej  lub  koniunkcyjnej  postaci  kanonicznej.  Pierwsza  postać  dotyczy  sumy 
iloczynów  pełnych,  druga  iloczynu  sum  pełnych.  Wyjaśnimy  to  na  przykładzie  funkcji 
logicznej trzech zmiennych X,Y,Z przedstawionej w tablicy 9. 

 

Tabela 9. Przykładowa tablica wartości funkcji f(X, Y, Z) 




































 
Jak  wynika  z  tablicy  wartości,  funkcja  ta  przyjmuje  wartość  1  w  wierszach  2,  3,  5  i  6, 

a wartość  0  w  pozostałych  wierszach.  Zatem  funkcja  f  wyrażona  w  postaci  dysjunkcyjnej 
przyjmuje postać: 

7

6

5

4

3

2

1

0

1

2

0

0

1

1

0

1

1

0

0

)

,

,

(

3

I

I

I

I

I

I

I

I

I

a

Z

Y

X

f

j

j

j

+

+

+

+

+

+

+

=

=

=

U

 

 
Każdy  składnik  typu  0·I

j

  =  0  nie  zmienia  wartości  funkcji,  może  więc  być 

wyeliminowany. Wtedy funkcja ta przyjmuje postać: 

 

Z

XY

Z

Y

X

YZ

X

Z

Y

X

I

I

I

I

Z

Y

X

f

+

+

+

=

+

+

+

=

6

5

3

2

)

,

,

(

 

 

Przykład: 

Wyrazić funkcję 

Z

XY

Z

Y

X

YZ

X

Z

Y

X

)

Z

,

Y

,

X

(

f

+

+

+

=

 w postaci kanonicznej  

 

=

+

+

+

=

Z

XY

Z

Y

X

YZ

X

Z

Y

X

Z

Y

X

f

)

,

,

(

 

{ { {

{

U

)

6

,

5

,

3

,

2

(

110

101

011

010

6

5

3

2

=

=

+

+

+

=

 

 

Drugą postacią algebraiczną funkcji n zmiennych jest koniunkcyjna postać kanoniczna. 
 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

22

I

1

2

0

1

1

0

)

(

)

,...,

,

(

=

+

=

=

n

j

j

j

n

S

a

X

X

X

f

Y

 

 

 

 

gdzie: 

0

a

j

=

 lub 1, a znak 

I

oznacza iloczyn logiczny. 

Jak  wynika  z  tablicy  wartości,  funkcja  ta  przyjmuje  wartość  0  w  wierszach  0,  1,  4  i  7, 

a wartość 1 w pozostałych wierszach. Zatem funkcja przyjmuje postać: 

 

)

0

)(

1

)(

1

)(

0

)(

1

)(

1

)(

0

)(

0

(

)

,

,

(

7

6

5

4

3

2

1

0

S

S

S

S

S

S

S

S

Z

Y

X

f

+

+

+

+

+

+

+

+

=

 

Każdy  czynnik  typu  1+S

=  1  nie  zmienia  wartości  funkcji,  może  więc  być 

wyeliminowany. Zatem: 

 

)

)(

)(

)(

(

)

,

,

(

7

4

1

0

Z

Y

X

Z

Y

X

Z

Y

X

Z

Y

X

S

S

S

S

Z

Y

X

f

+

+

+

+

+

+

+

+

=

=

 

Jako  czynniki  do  iloczynu  wchodzą  te  sumy  Sj,  które  odpowiadają  kombinacjom 

zerojedynkowym zmiennych niezależnych, dla których funkcja przyjmuje wartość 0. 

Wyrazić funkcję trzech zmiennych X,Y,Z w postaci koniunkcyjnej: 
 

)

)(

)(

)(

(

)

,

,

(

Z

Y

X

Z

Y

X

Z

Y

X

Z

Y

X

Z

Y

X

f

+

+

+

+

+

+

+

+

=

 

{ { { {

I

)

7

,

4

,

1

,

0

(

111

100

001

000

)

)(

)(

)(

(

)

,

,

(

7

4

1

0

=

=

=

+

+

+

+

+

+

+

+

=

Z

Y

X

Z

Y

X

Z

Y

X

Z

Y

X

Z

Y

X

f

 

 
4.1.2.  Pytania sprawdzające 

 
Odpowiadając na pytania, sprawdzisz, czy jesteś przygotowany do wykonania ćwiczeń. 

1.  W jaki sposób można zapisać n-cyfrową liczbę całkowitą? 
2.  Jakie są podstawowe systemy liczbowe? 
3.  Jakie znaki używane są w systemie szesnastkowym? 
4.  W jaki sposób można zamienić liczbę dziesiętną na liczbę dwójkową? 
5.  W jaki sposób można zamienić liczbę w systemie szesnastkowym na liczbę dziesiętną? 
6.  W  jaki  sposób  można  zamienić  liczbę  w  systemie  binarnym  na  liczbę  w  systemie 

szesnastkowym? 

7.  Jak można wyjaśnić pojęcie kodu? 
8.  W jaki sposób klasyfikuje się kody? 
9.  Jak można zdefiniować funkcję boolowską? 
10.  Jakie są podstawowe prawa algebry Boole’a? 
11.  Jakie są podstawowe funkcje logiczne? 
12.  W jaki sposób można przedstawić podstawowe funkcje logiczne? 
13.  Jakie są metody przedstawiania dowolnej funkcji logicznej? 
14.  W jaki sposób przedstawia się funkcję logiczną przy pomocy tablicy Karnaugha? 
15.  W  jaki  sposób  przedstawia  się  funkcję  logiczną  według  dysjunkcyjnej  postaci 

kanonicznej? 

16.  W  jaki  sposób  przedstawia  się  funkcję  logiczną  według  koniunkcyjnej  postaci 

kanonicznej? 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

23

4.1.3.  Ćwiczenia 

 

Ćwiczenie 1 

Sklasyfikuj  wskazane  przez  nauczyciela  systemy  liczbowe.  Omów  sposoby  zamiany 

liczby całkowitej z dziesiętnego systemu liczbowego na binarny i szesnastkowy. 

 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać w materiałach dydaktycznych kryteria klasyfikacji systemów liczbowych, 
2)  dokonać analizy zapisu liczb w różnych systemach liczbowych, 
3)  rozpoznać rodzaje systemów dotyczących ćwiczenia, 
4)  zapisać  w  prosty  sposób  zamianę  liczby  całkowitej  z  systemu  dziesiętnego  na  binarny  

i szesnastkowy.  

 

Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika. 

 

Ćwiczenie 2 

Dane  są  liczby  całkowite  zapisane  w  systemie  dziesiętnym.  L1  =  741  i  L2 = 1548. 

Dokonaj konwersji tych liczb na system binarny i szesnastkowy.  

 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać odpowiednie terminy, 
2)  odnaleźć metody konwersji, 
3)  wykonać obliczenia, 
4)  przeanalizować poprawność zamian (konwersji), 
5)  uzasadnić otrzymane wyniki. 

 

Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika 

 
Ćwiczenie 3 

Dane są liczby całkowite zapisane w systemie szesnastkowym. L1 = BABA i L2 = ABBA. 

Dokonaj konwersji tych liczb na system dziesiętny i binarny. 

 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać odpowiednie terminy, 
2)  odnaleźć metody konwersji, 
3)  wykonać obliczenia, 
4)  przeanalizować poprawność zamian (konwersji), 
5)  uzasadnić otrzymane wyniki. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

24

Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika 

 

4.1.4.  Sprawdzian postępów 
 

Czy potrafisz: 
 

Tak 

Nie 

1)  zapisać n-cyfrową dwójkową liczbę całkowitą?  

 

 

2)  zamienić liczbę dziesiętną na liczbę dwójkową? 

 

 

3)  rozpoznać podstawowe systemy liczbowe? 

 

 

4)  zamienić  liczbę  w  systemie  binarnym  na  liczbę  w  systemie 

szesnastkowym? 

 

 

5)  wyjaśnić pojęcie kodu? 

 

 

6)  sklasyfikować różne kody binarne? 

 

 

7)  zdefiniować funkcję boolowską? 

 

 

8)  zdefiniować podstawowe funkcje logiczne? 

 

 

9)  przedstawić podstawowe funkcje logiczne? 

 

 

10)  opisać metody przedstawiania dowolnej funkcji logicznej? 

 

 

11)  przedstawić dowolną funkcję logiczną przy pomocy tablicy Karaugha? 

 

 

12)  przedstawić 

funkcję 

logiczną 

według 

dysjunkcyjnej 

postaci 

kanonicznej? 

 

 

13)  przedstawić 

funkcję 

logiczną 

według 

koniunkcyjnej 

postaci 

kanonicznej? 

 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

25

4.2.  Układy kombinacyjne i sekwencyjne 

 
4.2.1.  Materiał nauczania 

 
Do 

układów 

przełączających 

logicznych 

zaliczamy 

układy 

kombinacyjne  

i  sekwencyjne.  Cechą  odróżniającą  układy  kombinacyjne  i  sekwencyjne  jest  właściwość 
pamiętania  stanów  logicznych,  która  jest  charakterystyczna  dla  układów  sekwencyjnych. 
Układy kombinacyjne są bezpamięciowe.  

Układ  kombinacyjny  służy  do  przetwarzania  informacji  dyskretnej  dwuwartościowej. 

W układzie kombinacyjnym każda kombinacja sygnałów wejściowych określa jednoznacznie 
kombinację sygnałów wyjściowych. Sygnały wejścia i sygnały wyjścia przyjmują skończoną 
liczbę  kombinacji  i  skończoną  liczbę  wartości.  Kombinacje  sygnałów  wejściowych  są  to 
stany  wejść  układu,  a  kombinacje  sygnałów  wyjściowych  stany  wyjść  układu.  Z  układem 
kombinacyjnym  mamy  do  czynienia,  jeżeli  wartość  zmiennych  ze  zbioru  Y  zależy  od 
wartości zmiennych ze zbioru X.  

Działanie układu kombinacyjnego możemy opisać wyrażeniem: 

Y = f (X) 

gdzie: X – zbiór wszystkich możliwych, dla danego układu stanów wejść, 

X = {x

1

, x

2

,...,x

n

,}, 

 

Y – zbiór wszystkich możliwych, dla danego układu stanów wyjść, 

Y = {y

1

, y

2

,,...,y

n

}. 

 

Zależność Y = f (X) jest równoważna zespołowi (rodzinie) funkcji logicznej: 

y

= f

1

 (x

1

...x

n

y

= f

2

 (x

2

...x

n

y

= f

m

 (x

1

...x

n

gdzie: 

 

n – liczba wejść układu kombinacyjnego, 

 

m – liczba wyjść układu kombinacyjnego. 

 

Układ  przełączający  (logiczny)  o  n  wejściach  i  m  wyjściach  można  przedstawić  

w postaci pokazanej na rysunku 11. 

 

 

Rys. 11. Układ przełączający X = {x

1

, x

2

,...,x

n

}, Y = {y

1

, y

2

,,...,y

n

 

Do  realizacji  fizycznej  kombinacyjnych  układów  cyfrowych  są  stosowane  bramki 

logiczne.  W  układach  kombinacyjnych  stosuje  się  metodę  Karnaugha.  Synteza  układu 
kombinacyjnego  sprowadza się do realizacji zespołu  funkcji  logicznych określonych  na tym 
samym  zbiorze  zmiennych.  O  złożoności  układowej  świadczy  liczba  funktorów  w  układzie 
oraz  liczba  połączeń,  czyli  sumaryczna  liczba  wejść  wszystkich  funktorów.  Obie  te  liczby 
stanowią  o  koszcie  układu.  Przy  syntezie  zespołu  funkcji  logicznych  należy  dążyć  do 
minimalizacji  funkcji  kosztu,  biorąc  pod  uwagę  możliwość  wykorzystania  wspólnych 
iloczynów (sum) wchodzących w skład rozpatrywanych funkcji. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

26

W celu dokonania realizacji układu kombinacyjnego należy: 

 

określić funkcję logiczną rozpatrywanego problemu, np. za pomocą tablicy wartości, 

 

dokonać 

minimalizacji 

funkcji 

logicznej 

wykorzystując 

tablice 

Karnaugha, 

przedstawione w poniższym rozdziale, lub metody algebraiczne,  

 

sporządzić schemat układu logicznego, realizującego zminimalizowaną funkcję logiczną. 
 
Istnieją dwie podstawowe metody minimalizacji funkcji:  

1.  metoda analityczna algebry Boole’a. 
2.  metoda z użyciem tablicy Karnaugha (czyt. karno). 

 

Minimalizacja analityczna metodą algebry Boole’a polega na zapisaniu funkcji logicznej, 

a  następnie  zminimalizowaniu  (skróceniu  zapisu  jej  z  zastosowaniem  praw  algebry  Boole’a 
(podanych w rozdziale 4.1.). 
 
Układy komutacyjne 

Układy  komutacyjne  służą  do  łączenia  ze  sobą  bloków  funkcjonalnych  i  przełączania 

sygnałów cyfrowych. Określony kod stosujemy zależnie od jego zastosowania. Przy wyborze 
należy  brać  pod  uwagę  możliwość  osiągnięcia  minimum  kosztów  układu realizującego  daną 
operację  oraz  zapewnienie  prawidłowości  jej  realizacji  w  obecności  zakłóceń  i  uszkodzeń 
w systemie.  Aby  dokonać  konwersji  danego  kodu  na  inny  kod,  liczba  słów  kodowych 
w obydwu kodach musi być identyczna, natomiast długość słów obydwu kodów nie musi być 
jednakowa.  Układy  komutacyjne  służą  do  łączenia  ze  sobą  bloków  funkcjonalnych 
i przełączania  sygnałów  cyfrowych.  Do  układów  komutacyjnych  systemów  cyfrowych 
zaliczamy: 

 

konwertery kodów (w tym kodery i dekodery), 

 

demultipleksery, 

 

multipleksery. 

 

Konwerterem  (przetwornikiem)  nazywamy  układ  służący  do  przekształcenia  jednego 

kodu  w  inny  kod.  Przetwornik  przekształcający  kod  „1  z  n”  na  żądany  kod,  nazywa  się 
koderem  (zwany  też  enkoderem),  natomiast  przetwornik  zmieniający  dowolny  kod  w  kod 
„1 z  n”  –  dekoderem.  Pozostałe  przetworniki  noszą  nazwę  transkoderów.  Szczególnym 
rodzajem dekoderów są multipleksery i demultipleksery, zwane selektorami. 

 

Enkodery 

Enkodery  zwykłe  są  to  układy  zmieniające  kod  „1  z  n”  na  określony  binarny  kod 

wyjściowy.  Układy  te  posiadają  n  –  wejść,  przy  czym  tylko  jedno  z  wejść  jest  w  danym 
czasie  aktywne.  Jeśli  kodem  wejściowym  jest  kod  „1  z  n”  bez  negacji,  to  wejście  aktywne 
znajduje się  w  stanie  1,  a  pozostałe  w  stanie 0.  Natomiast  jeśli kodem  wejściowym  jest  kod 
„1 z n” z negacją, to wejście aktywne znajduje się w stanie 0, a pozostałe w stanie 1. Sygnał 
aktywny,  pojawiający  się  na  jednym  z  n  wejść,  zostaje  zakodowany  w  słowo  binarne  
m  –  bitowe  (m  –  wyjść  enkodera)  i  na  wyjściach  pojawia  się  numer  wyjścia  aktywnego, 
przedstawiony w żądanym kodzie dwójkowym.  

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

27

 
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Rys. 12. Enkoder zwykły 

 

Przykładem może być zamiana kodu 1 z 10 na kod BCD 8421, oraz zamiana kodu 

10

z

1

 

na kod BCD 8421.

  

 

Tabela 10. Tablica prawdy enkoderów zwykłych 

Wejścia 

Kod 1 z 10 

Kod 

10

1z

 

Przykładowe 
wyjścia 

9 8 7 6 5 4 3 2 1 0 

9 8 7 6 5 4 3 2 1 0 

 

D C B A 

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

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










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

 
Na podstawie tablicy prawdy możemy wywnioskować, że wyjście A = 1, jeśli wejście 1 

jest w stanie 1  lub  jeśli wejście 3  jest w stanie 1, lub  jeśli wejście 5 jest w stanie 1, lub  jeśli 
wejście 7 jest w stanie 1, lub wejście 9 jest w stanie 1.  

Wobec tego w notacji algebry Boole'a można to za pisać w postaci funkcji: 
A = 1+3+5+7+9 
Podobnie 
 
B = 2+3+6+7 
C = 4+5+6+7 

 

 

 

 

 

 

 

 

 

D = 8+9 

Kod 1 z n 

… 

… 

KOD WYJŚCIOWY 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

28

 

 

 

 

a)   

 

 

 

 

 

 

b) 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

Rys. 13. Przykłady enkoderów 

Dekodery 

Dekodery są to układy kombinacyjne n / m (liczba wejść / liczba wyjść) przekształcające 

określony kod wejściowy o długości m na kod wyjściowy „1 z n”. Dekoder posiada m wyjść, 

każdemu 

ze 

słów 

wyjściowych 

jest 

przyporządkowany 

sygnał 

aktywny 

(1  lub  0),  pojawiający  się  tylko  na  jednym  z  m  wyjść,  pozostałe  zmienne  wyjściowe  mają 
wartość przeciwną.  

Rozróżniamy dwa rodzaje dekoderów: 

 

pełny,  jeśli  dla  rozpatrywanego  dekodera  zachodzi  równość  2

n

  =  m,  gdzie  n  –  liczba 

wejść, 

 

niepełny,  jeśli  dla  rozpatrywanego  dekodera  zachodzi  nierówność  2

n

  >  m,  gdzie  nie 

wszystkie słowa kodowe są wykorzystane. 
Przykładowo  rozpatrzmy  syntezę  dekodera  pełnego  2/4,  czyli  dekodera  posiadającego 

2 wejścia  i 4 wyjścia.  Wejścia rozpatrywanego dekodera oznaczono literami:  A, B a wyjścia 
liczbami: 0, 1, 2, 3.  

Kod wejściowy i kod wyjściowy dekodera przedstawiono w tablicy 11. 

 

Tabela 11. Tablica prawdy dekodera pełnego 2/4 

Wyjścia 

1 z 4 

4

1z

 

Wejścia 
B A 

0 1 2 3 

0 1 2 3 

0 0 
0 1 
1 0 
1 1 

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

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

 

Gdy  kodem  wyjściowym  dekodera  jest  kod  1  z  4  bez  negacji,  to  dekoder  jest  układem 

realizującym następujące funkcje przełączające: 

Kod 1 z 10 

 

Kod 1 z 10 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

29

0 =  B

 

1 =  B

  

 

 

 

 

 

 

 

 

 

2 =  B

 

3 = AB 
 
albo 
 

0 = 

B

A

B

A

+

=

 

1 = 

B

A

B

A

+

=

   

 

 

 

 

 

 

 

 

2 = 

B

A

B

A

+

=

 

3 = 

B

A

AB

+

=

 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Rys. 14. Realizacja dekoderów 

 
Transkodery 

Transkodery  są  to  układy  służące  do  konwersji  kodu  dwójkowego,  innego  niż  kod 

pierścieniowy  (1  z  n),  na  inny  kod  dwójkowy,  ale  również  nie  pierścieniowy.  Przykładem 
transkodera  jest  konwerter  kodu  wskaźnika  siedmiosegmentowego  na  kod  8421  BCD. 
Transkodery  są  często  zaliczane  do  grupy  dekoderów.  Transkodery  można  zrealizować 
w  postaci  układu  złożonego  z  dekodera  (zmieniającego  kod  wejściowy  X  na  kod 
pierścieniowy) i enkodera (zmieniającego kod pierścieniowy uzyskany na wyjściach dekodera 
na  żądany  kod  wyjściowy  Y).  Takie  rozwiązanie  jest  korzystne  wtedy,  gdy  zarówno 
wymagany dekoder jak i enkoder, albo przynajmniej jeden z nich, są dostępne. 

1z4 

1z4 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

30

 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Rys.  15.  Schematy  ideowe  transkoderów:  a)  zbudowanych  z  enkodera  i  dekodera,  b)  zbudowanych  w  postaci 

kombinacyjnego układu wielowyjściowego 

 

Jeśli  zarówno  dekoder  jak  i  enkoder  nie  są  dostępne  w  postaci  układów  scalonych, 

to lepsze  rozwiązanie  można  uzyskać  w  wyniku  syntezy  transkodera  jakowielowyjściowego 
układu kombinacyjnego. 
 
Przykłady syntezy i rozwiązań transkoderów 

Zaprojektować transkoder służący do przetwarzania kodu 8421 BCD na kod 2*421 BCD. 
W celu zaprojektowania transkodera: 8421 BCD na kod 2*421 BCD należy przedstawić 

rozpatrywane  kody  w  tablicy  (rys.  16).  Tablica  kodów  stanowi  tablicę  wartości 
rozpatrywanego  układu  kombinacyjnego.  Jest  to  układ  4  –  wyjściowy.  Kolumny  wejścia  A 
i D (patrz tablica kodów) są tożsame z kolumnami wyjściowymi A' i D', a zatem: 

 
A' = A 
D' = D 
W  celu  wyznaczenia  funkcji  B'  i  C'  należy  zastosować  metody  minimalizacji,  np.  za 

pomocą  tablic  Karnaugha,  lub  dostrzec  związki  logiczne,  jakie  otrzymuje  się  z  tych  tablic, 
czyli: 

 
B' = B+D 
C' = C+D 
 
Schemat  logiczny  układu  realizującego  powyższe  funkcje  przełączające  pokazano  na 

rysunku 15. 

Kod 

wejsciowy 

Enkoder 

Dekoder 

Kod 

pierścien.
wy 

Kod 

wyjściowy 

Transkoder 

Kod 

wejściowy 

Kod 

wyjściowy 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

31

Tabela 12. Dla transkodera 8421 BCD na kod 2*421 

 
 










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

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

 
 

 

00 

01 

11 

10 

 

 

00 

01 

11 

10 

00 

 

00 

01 

 

01 

11 

 

11 

10 

 

10 

 
 
 
 
 

 
 
 
 

 

 

 
 

Rys. 16. Transkoder służący do konwersji kodu 8421

 

 
Multipleksery 

Multiplekser  jest  układem  umożliwiającym  przełączanie  (komutację)  sygnałów 

cyfrowych.  Posiada  on  kilka  wejść  informacyjnych,  jedno  wyjście,  wejścia  adresowe 
(sterujące)  oraz  wejście  strobujące.  Multiplekser  służy  do  wybrania  jednego  określonego 
sygnału  wejściowego  i  przełączenia  go  do  wyjścia.  Sterowanie  multiplekserem  polega  na 
podaniu  na  wejścia  sterujące  numeru  (w  kodzie  BCD)  wejścia,  które  ma  być  połączone  
z  wyjściem.  Wejście  strobujące  służy  do  zablokowania  pracy  multipleksera.  W  postaci 
układów scalonych dostępne są np. UCY74150N, 74151N, 74153N, 74157N. 

Rozpatrzmy  przykładowo  układ  UCY74150N.  Układ  ma  16  wejść  danych  (D0¸D15), 

4 wejścia  adresowe  (A¸  B,  C,  D),  wejście  strobujące  (S)  i  wyjście  (W).  Blokowanie  układu 
następuje  po  podaniu  poziomu  1  na  wejście  strobujące  S.  Podanie  na  wejście  strobujące 
poziomu 0 powoduje działanie układu zgodnie z podaną poniżej tabelą. 

BA 

BA 

DC 

DC 

B’ 

C’ 

A’ 

B’ 

C’ 

D’ 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

32

Tabela 12a.Wejscia i wyjścia multipleksera 

 

 

 

 

Rys. 17. Multiplekser 

 
Demultipleksery 

Demultiplekser pełni  funkcję odwrotną do multipleksera, a mianowicie realizuje  funkcję 

przełączenia  sygnału  z  jednego  wejścia  na  określone  jedno  z  wielu  wyjść.  Podobnie  jak 
multiplekser  posiada  wejścia  sterujące,  wejście  strobujące,  jedno  wejście,  a  kilka  wyjść.  
W  postaci  układów  scalonych  dostępne  są  np.  układy  UCY74154N,  74155N.  Poniżej 
przedstawiono  oznaczenie  symboliczne  oraz  tablicę  działania  demultipleksera  UCY74154N. 
Na  wyjściu  wybranym  przez  słowo  adresowe  pojawia  się  stan  0  tylko  wtedy,  gdy  na  obu 
wejściach G1 i G2 panuje stan 0. Wejścia G1 i G2 można połączyć w jedno i traktować jako 
wejście  informacyjne  lub  jedno  z  nich  stanowi  wejście  informacyjne,  drugie  zaś  wejście 
strobujące.  Doprowadzenie  do  wejścia  strobującego  poziomu  logicznego  1  powoduje 
zablokowanie multipleksera. Jeżeli do wejścia strobującego podamy stan logiczny 0 to układ 
działa według podanej poniżej tabeli. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

33

Tabela 13.Wejscia i wyjscia multipleksera 

 

 

 

 

Rys. 18.Widok demultipleksera 

 

Przykłady zastosowań 

Linijka  diodowa.  Efektownym  zastosowaniem  demultipleksera  jest  układ  sterowania 

diodami  typu  LED.  Wejścia  G1  i  G2  są  połączone  z  masą  co  powoduje,  że  na  wybranym 
przez  słowo  adresowe  wyjściu  pojawia  się  poziom  logiczny  „0”  i  sterowana  z  tego  wyjścia 
dioda  świeci  się.  Przy  sterowaniu  cyklicznym  wejść  adresowych  z  pewną  małą 
częstotliwością otrzymamy efekt przemiatania świecącej diody. 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

34

 

 

Rys. 19. Linijka diodowa 

 

Na  rysunku  20  przedstawiono  multiplekserowy  system  przesyłania  informacji  cyfrowej 

zrealizowany przy pomocy 8-bitowego multipleksera i 8-bitowego demultipleksera. Do wejść 
adresowych  obu  tych  układów  przyłączono  liczniki  wyzwalane  wspólnym  sygnałem 
taktującym T. Liczniki zliczają cyklicznie 8 kolejnych impulsów taktujących wyprowadzając 
na  swe  wyjścia  reprezentację  dwójkową  liczby  zliczonych  impulsów.  Po  każdej  zmianie 
adresu  do  wyjścia  multipleksera  jest  przyłączone  kolejne  wejście.  W  demultiplekserze  ten 
sam  adres,  który  występuje  w  multiplekserze  przyłącza  linię  przesyłową  do  jednego 
określonego wyjścia. 

 

 

 

Rys. 21. Multiplekserowe przesyłanie informacji. 

 

Przerzutniki 

W odróżnieniu od bramek logicznych przerzutniki są elementami, które cechuje pamięć. 

Doprowadzenie  do  przerzutnika  nawet  bardzo  krótkiego  impulsu  sygnałowego  powoduje 
zmianę stanu przerzutnika i tym samym zapamiętanie impulsu. Przerzutnik może zapamiętać 
jeden  stan  jednego  sygnału  (zarejestrować  jedno  zdarzenie).  Inaczej  mówiąc  przerzutnik 
może zapamiętać jeden bit informacji. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

35

Opis  działania  przerzutnika  podaje  się  najczęściej  –  ze  względu  na  krótki  i  przejrzysty 

zapis  –  w  postaci  tablic.  W  tablicy  takiej  wyszczególnione  są  wszystkie  wejścia  i  wyjścia 
przerzutnika oraz wszystkie kombinacje stanów wejść z odpowiadającymi im stanami wyjść. 

Większość  przerzutników  (za  wyjątkiem  przerzutnika  prostego  RS)  posiada  wejście 

zegarowe  (taktujące).  Rodzaj  sterowania  tym  wejściem  (zależy  od  konstrukcji  przerzutnika) 
jest  oznaczony  na  symbolu  przerzutnika.  Przerzutniki  mogą  być  sterowane  poziomem  lub 
zboczem. Wejście bez oznaczeń wskazuje na przerzutnik sterowany poziomem wysokim „1”, 
natomiast  przerzutnik  sterowany  poziomem  niskim  „0”  ma  wejście  zegarowe  poprzedzone 
kółeczkiem  (symbolem  negacji).  Wejścia  zegarowe  przerzutników  sterowanych  zboczem 
oznacza  się  małym  trójkącikiem  –  sterowane  zboczem  narastającym,  lub  trójkącikiem 
z symbolem negacji (kółeczkiem) – sterowane zboczem opadającym. 

 

 

 

Rys. 21. Symbole wyzwalania przerzutników 

 

Przerzutnik prosty RS 

Przerzutnik  taki  posiada  dwa  wejścia:  S  (Set)  -ustawiające  i  R  (Reset)  –  kasujące  oraz 

dwa wyjścia komplementarne Q i Q. Po podaniu aktywnego sygnału wejściowego na wejście 
S ustawiamy na wyjściu Q poziom wysoki (ustawianie przerzutnika). Po podaniu sygnału na 
wejście  R  ustawiamy  na  wyjściu  Q  poziom  niski  (kasowanie  przerzutnika).  Na  wyjściu  Q 
panuje  zawsze  stan  przeciwny  do  stanu  na  wyjściu  Q.  Przerzutnik  ten  można  zbudować 
zarówno  z  bramek  NOR  jak  i  z  bramek  NAND.  W  zależności  od  rodzaju  wykonania  nieco 
różne jest jego działanie – jednak podstawowe zależności takie same. 

 

Przerzutnik RS z bramek NOR 
 

Q-1 

 

 

 

Rys. 22. Przerzutnik RS dwóch bramek NOR 

 

Podanie  dwóch  zer  na  wejścia  przerzutnika  pozostawia  go  w  stanie  początkowym, 

podanie jedynki na wejście S i zera na wejście R powoduje ustawienie przerzutnika, podanie 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

36

zera na wejście S i jedynki na wejście R zeruje przerzutnik. Zabronioną kombinacją (oznacza 
ona niezanegowany wzajemnie stan wyjść) dla przerzutnika RS zbudowanego z bramek NOR 
jest podanie dwóch jedynek na wejścia. 
 
Przerzutnik RS z bramek NAND
 
 

Q-1 

 

 

Rys. 23. Przerzutnik RS z bramek NAND 

 

Ustawienie  przerzutnika  zbudowanego  z  bramek  NAND  następuje  po  podaniu  zera  na 

wejście  S  i  jedynki  na  wejście  R.  Skasowanie  natomiast  przez  odwrotne  podanie  sygnałów. 
Podanie  dwóch  jedynek  pozostawia  przerzutnik  w  stanie  początkowym.  Kombinacją 
zabronioną dla tego przerzutnika jest podanie dwóch zer na wejścia 
 
Przerzutniki synchroniczne 

Przerzutnik  synchroniczny do poprawnego działania wymaga doprowadzenia do wejścia 

zegarowego  C  (taktującego)  sygnału  w  postaci  fali  prostokątnej.  Przerzutnik  RS 
z  wejściem  taktującym.  W  odróżnieniu  od  zwykłego  przerzutnika  RS,  przerzutnik  
z  wejściem  taktującym  ma  trzy  wejścia  sterujące:  R,  S  oraz  C  (Clock)  –  wejście  taktujące 
(zegarowe).  Przez  doprowadzanie  sygnałów  do wejść  R  i  S  można  dowolnie ustawiać  stany 
wyjść, ale tylko w tych  momentach czasowych, w których na wejściu C panuje stan wysoki. 
Dzięki  takiemu  rozwiązaniu  w  większych  systemach  cyfrowych  możliwe  jest  wcześniejsze 
przygotowanie  odpowiednich  sygnałów  sterujących  na  wejściach  poszczególnych  stopni 
układu, a ustawienie sygnałów na wyjściach następuje po pojawieniu się sygnału taktującego 
-  równocześnie  na  wszystkich  przerzutnikach.  Wejścia  R  i  S  nazywa  się  wejściami 
przygotowującymi.  Występuje  tutaj  również zabroniona kombinacja wejść  w  postaci  dwóch 
jedynek na wejściach R i S. 

 

Przerzutnik D 

Przerzutnik  D  jest  rozszerzoną  wersją  przerzutnika  RS.  Występuje  w  nim  tylko  jedno 

wejście  ustawiające  (D)  oraz  wejście  taktujące  (C)  (niektóre  wersje  posiadają  dodatkowe 
wejścia  R  i  S).  W  przerzutniku  RS  z  wejściem  taktującym  może  wystąpić  taka  kombinacja 
sygnałów (C = R = S = 1), przy której stan wyjść jest zabroniony lub nieokreślony. Zostało to 
wyeliminowane  w  standardowym  przerzutniku  D  (posiadającym  jedynie  wejścia  D  i  C), 
dzięki  zastosowaniu  inwertera  przed  jedną  z  bramek  wejściowych.  Ponadto  przerzutnik  
D  może  być  tak  wykonywany,  że  tylko  zbocze  narastające  powoduje  zmianę  sygnału  na 
wyjściu  przerzutnika.  Unika  się  dzięki  temu  ewentualnych  zakłóceń,  związanych  ze  zmianą 
stanu wejścia D podczas trwania impulsu zegarowego. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

37

 

Q-1 

Q-1 

 

 

 

 

Rys. 24. Przerzutnik synchroniczny typu D 

 

Przerzutnik JK 

Przerzutnik JK jest elementem bardziej uniwersalnym niż przerzutnik D. Posiada on dwa 

wejścia  informacyjne  J  i  K,  na  których  dozwolone  są  wszystkie  kombinacje  sygnałów. 
Wejścia  te  pozwalają  na  oddziaływanie  na  stan  wyjść  przerzutnika,  wejście  J  odpowiada 
wejściu  S (Set)  i  służy  do  ustawienia  przerzutnika,  natomiast wejście  K  służy do kasowania 
przerzutnika  (równoznaczne  z wejściem  R  (Reset)).  Ustawianie  i  kasowanie  przerzutnika 
odbywa się w chwili, gdy na wejściu zegarowym pojawi się opadające zbocze sygnału. 

 

 

Q 

 

Rys. 25. Przerzutnik JK 

 

Przerzutnik JK Master Slave 

Przerzutnik  JK-MS  jest  przerzutnikiem  dwutaktowym.  Oznacza  to,  że  do  ustawienia 

przerzutnika  potrzebne  są  dwa  kolejne  zbocza  impulsu  zegarowego  C  (czyli  pojedynczy 
impuls  prostokątny).  Przerzutnik  ten  składa  się  z  dwóch  połączonych  szeregowo 
przerzutników RS przełączanych zboczami. Pierwszy z nich nazywa się Master, drugi Slave. 
Działa  on w  ten  sposób,  że  w  czasie  pierwszego zbocza  narastającego  są  próbkowane  stany 
wejść J i K, drugie natomiast zbocze (opadające) powoduje zgodnie z tablicą działania zmianę 
stanu przerzutnika. Tabela stanów dla tego przerzutnika jest identyczna jak dla poprzedniego. 

 

 

 

Rys. 26. Przerzutnik JK Master Slave (JK-MS) 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

38

Przerzutnik T 

Jeżeli połączymy wejścia J i K przerzutnika JK-MS razem w jedno wejście, to powstanie 

nam przerzutnik T  mający wejście  informacyjne  T oraz taktujące  C. Jeżeli na wejściu T jest 
przygotowany  stan  1,  to  po  każdym  impulsie  taktującym  stan  przerzutnika  zmienia  się  na 
przeciwny. W takim układzie przerzutnik T pracuje jako dzielnik częstotliwości przez 2. Przy 
T = 0 przerzutnik nie zmienia swego stanu - występuje blokada stanów wyjściowych. 

 

 

 

Rys. 27. Przerzutniki typu T 

 
Modyfikowanie przerzutników 

Realizacja  przerzutnika  D  z  przerzutnika  JK.  W  łatwy  sposób  można  otrzymać 

przerzutnik  D  z  przerzutnika  JK  poprzez  połączenie  wejścia  K przez  inwerter  z wejściem J. 
Otrzymane  jedno  wejście  odpowiadać  będzie  wejściu  D  przerzutnika  D.  Wejście  zegarowe 
pozostaje wejściem zegarowym. 

 

 

 

Rys. 28. Przerzutniki typu D z przerzutnika JK 

 

Przerzutnik T z przerzutnika D. Otrzymanie przerzutnika T z przerzutnika D  sprowadza 

się  praktycznie  do  przyłączenia  wejścia  D  przerzutnika  D  do  Q  i  traktowania  wejścia 
zegarowego jako wejście T. 

 

 

 

Rys. 29. Przerzutniki typu T z przerzutnika D 

 

Zastosowania przerzutników 

Zastosowania  przerzutników  są  bardzo  szerokie.  Wykorzystuje  się  je  przede  wszystkim 

do  budowy  liczników,  rejestrów  przesuwających,  układów  sterowania  wskaźników 
alfanumerycznych i innych układów sekwencyjnych.  

 

4.2.2.  Pytania sprawdzające 

 
Odpowiadając na pytania, sprawdzisz, czy jesteś przygotowany do wykonania ćwiczeń. 

1.  W jaki sposób definiuje się układ kombinacyjny? 
2.  Jak można wyjaśnić pojecie układu sekwencyjnego? 
3.  Jaka jest zasadnicza różnica pomiędzy układem kombinacyjnym a sekwencyjnym? 
4.  Do czego służą układy komutacyjne? 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

39

5.  Jakie układy można zaliczyć do komutacyjnych? 
6.  Jak można zdefiniować konwerter kodów? 
7.  Jakie warunki muszą być spełnione, aby zamienić jeden kod na inny? 
8.  W jaki sposób można wyjaśnić pojęcia: transkoder, enkoder, dekoder? 
9.  W jaki sposób działa multiplekser? 
10.  W jaki sposób działa demultiplekser? 
11.  W jaki sposób można zrealizować multipleksowy system przesyłania informacji? 
12.  Jakie elementy cyfrowe maja możliwość zapamiętania informacji? 
13.  W jaki sposób można scharakteryzować przerzutnik prosty RS? 
14.  Jaka  jest  zasadnicza  różnica  pomiędzy  przerzutnikami  prostymi  RS  wykonanymi 

z bramek NAND i NOR? 

15.  Jakiego sygnału wymagają do poprawnej pracy przerzutniki synchroniczne? 
16.  W jaki sposób mogą być wyzwalane przerzutniki synchroniczne? 
 

4.2.3.  Ćwiczenia 

 
Ćwiczenie 1 

Dana  jest  funkcja  logiczna  trzech  zmiennych  Y  =  (C,  B,  A),  która  przyjmuje  wartości 

jedynki  logicznej  dla  nieparzystych  kombinacji.  (1,  3,  5,  7).  Dla  pozostałych  kombinacji 
przyjmuje  wartości  równe  zero.  Zrealizuj  tę  funkcję  przy  użyciu  dowolnych  bramek 
cyfrowych, wykorzystując metodę tablic Karnougha.  

 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać odpowiednie pojecia, dotyczące funkcji logicznych i bramek cyfrowych, 
2)  wypełnić tablicę prawdy, 
3)  odnaleźć w materiale nauczania metodę tablic Karnougha, 
4)  narysować i wypełnić tablicę Karnougha, 
5)  zapisać funkcje logiczne, 
6)  narysować układ cyfrowy, realizujący daną funkcję logiczna. 
 

Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika 

 
Ćwiczenie 2 

Dane  są  bramki  NAND  dwuwejściowe.  Używając  tych  bramek  zrealizuj  następujące 

funkcje logiczne: 

 

NOR, 

 

OR, 

 

AND, 

 

EXOR. 
 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać odpowiednie pojęcia, dotyczące bramek cyfrowych 
2)  wypełnić tablice prawdy lub zapisać funkcje logiczne z ćwiczenia, 
3)  przekształcić funkcje logiczne używając praw de’Morgana, 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

40

4)  narysować bramki NAND i połączyć je odpowiednio, 
5)  sprawdzić  poprawność  realizacji  funkcji  logicznych  dla  wszystkich  możliwych 

kombinacji zmiennych wejściowych 

6)  narysować ostateczne układy, realizujące funkcje logiczne. 
 

Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika 

 
Ćwiczenie 3 

Dany  jest  przerzutnik  synchroniczny  typu  JK.  Dokonaj  konwersji  tego  przerzutnika 

na przerzutniki synchroniczne typu D oraz T. 

 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś:: 

1)  odszukać odpowiednie pojęcia, dotyczące przerzutników, 
2)  narysować przerzutniki przed i po konwersji, uwzględniając dodatkowe bramki, 
3)  narysować tablice wzbudzeń przerzutników, 
4)  dokonać analizy poprawności konwersji, korzystając z tablic wzbudzeń. 
 

Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika. 

 

4.2.4.  Sprawdzian postępów 

 
Czy potrafisz: 

 

Tak 

Nie 

1)  zdefiniować się układ kombinacyjny?  

 

 

2)  wyjaśnić różnicę pomiędzy układem kombinacyjnym a sekwencyjnym? 

 

 

3)  zdefiniować układy komutacyjne? 

 

 

4)  zdefiniować konwerter kodów? 

 

 

5)  wyjaśnić pojęcia: transkoder, enkoder, dekoder? 

 

 

6)  opisać sposób działania demultipleksera? 

 

 

7)  zrealizować multipleksowy system przesyłania informacji? 

 

 

8)  wskazać  jakie  elementy  cyfrowe  mają  możliwość  zapamiętania 

informacji? 

 

 

9)  scharakteryzować prosty przerzutnik RS? 

 

 

10)  wskazać  różnicę  pomiędzy  przerzutnikami  prostymi  RS  wykonanymi 

z bramek NAND i NOR? 

 

 

11)  wskazać  jakiego  sygnału  wymagają  do  poprawnej  pracy  przerzutniki 

synchroniczne? 

 

 

12)  opisać w jaki sposób mogą być wyzwalane przerzutniki synchroniczne? 

 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

41

4.3.  Bloki funkcjonalne i typowe układy cyfrowe 

 
4.3.1.  Materiał nauczania 

 
Liczniki cyfrowe 

Licznikiem nazywamy sekwencyjny układ cyfrowy służący do zliczania i zapamiętywania 

liczby  impulsów  zerojedynkowych,  podawanych  w  określonym  przedziale  czasu  na  jego 
wejście  zliczające.  Licznik  cyfrowy  jest  zbudowany  z  odpowiednio  ze  sobą  połączonych 
przerzutników TTL. Ogólnie biorąc, licznik posiada wejścia dla impulsów zliczających, wejście 
ustawiające  (zerujące)  jego  stan  początkowy asynchronicznie  względem  impulsów  zliczanych 
lub synchronicznie z nimi. 

Ustawienie  wszystkich  przerzutników, wchodzących  w  skład  licznika, w stan 0  nazywa 

się zerowaniem.  Symbol  graficzny  licznika pokazano  na  rysunku  29,  na  którym zaznaczono 
wejście impulsów zliczanych, wejście ustawiające stan początkowy oraz wyjścia. 

 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 

Rys. 30. Symbol graficzny licznika 

 

Na  podstawie  stanu  wyjść  można  określić  ile  impulsów  pojawiło  się  na  wejściu  układu 

od chwili, kiedy licznik był ostatnio w stanie początkowym. 

Każdy  licznik  posiada  określoną  pojemność  (zwana  długością  cyklu), tzn. może  zliczyć 

określoną  liczbę  impulsów,  co  odpowiada  liczbie  stanów  układu  przyjmowanych  przez 
licznik w jednym pełnym cyklu. 

Licznik  jest  układem  sekwencyjnym,  zbudowany  z  przerzutników  i  układu 

kombinacyjnego  zapewniającego  takie  ich  sterowanie,  aby  pod  wpływem  impulsu 
wejściowego  przeszły  do  kolejnego  stanu  działania.  Licznik  posiada  s  –  stanów,  a  kolejne 
stany  licznika  są  ponumerowane  liczbami:  0,  1,  2,...  s  –  2,  s  –  1.  Każdemu  określonemu 
stanowi  licznika  odpowiada  jedna,  ściśle  określona  kombinacja  stanów  przerzutników, 
z których  jest  on  zbudowany.  Jeden  przerzutnik  może  być w dwu  stanach, dwa  przerzutniki 
mogą dać kombinację 2

2 = 2

2

 = 4 stanów, a n przerzutników może opisać 2

n

 stanów. Dlatego 

do utworzenia licznika o s stanach potrzeba n przerzutników: 

 

(2

n-1

 

 s 

 2

n

 

Pojemność zależy od liczby przerzutników wchodzących w skład licznika.  
 

Wyjścia 

… 

… 

Wej

śc

ia

 

Układ 

sekwencyjny 

s - stanowy 

Impulsy zliczane 

Impuls zerujący 

(ustawiający) 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

42

Ze względu na długość cyklu liczniki można podzielić na: 

 

liczniki o stałej długości cyklu, 

 

liczniki o nastawionej długości cyklu. 
Ze względu na sposób powtarzania cyklu liczniki można podzielić na: 

 

liczniki modulo s (dzielnik liczby lub częstotliwości impulsów przez s), 

 

liczniki do s. 
Licznikiem modulo s nazywamy licznik posiadający s wyróżnialnych stanów, przez które 

przechodzi cyklicznie (powtarza cykl) pod wpływem impulsów wejściowych. 

Licznikiem  do  s  nazywamy  licznik  posiadający  s  wyróżnialnych  stanów,  przez  które 

przechodzi  jednokrotnie.  Jeśli  licznik  do  s,  po  osiągnięciu  ostatniego  stanu  cyklu,  ma  mieć 
ponownie s wyróżnialnych stanów, to należy sprowadzić go do stanu początkowego. 

 
Ze względu na kierunek zliczania liczniki dzielimy na: 

1.  liczniki jednokierunkowe: 

 

zliczające w przód, jeśli liczby reprezentujące zawartość informacyjną licznika wzrastają 
w trakcie liczenia kolejnych impulsów, 

 

zliczające  wstecz,  jeśli  liczby  reprezentujące  zawartość  informacyjną  licznika  maleją 
w trakcie liczenia kolejnych impulsów. 

2.  liczniki dwukierunkowe. 

Liczniki dwukierunkowe (rewersyjne) są to liczniki zliczające impulsy zarówno w przód 
jak i wstecz. 

 

Ze  względu  na  sposób  oddziaływania  impulsów  zliczanych  na  stan  przerzutników 

licznika, liczniki można sklasyfikować następująco: 
– 

liczniki asynchroniczne (szeregowe), 

– 

liczniki synchroniczne (równoległe). 
W  liczniku  asynchronicznym  impulsy  zliczane  są  podawane  tylko  na  jedno  z  wejść 

zegarowych  przerzutników  licznika.  W  liczniku  synchronicznym  impulsy  zliczane  są 
podawane  na  wejścia  zegarowe  wszystkich  przerzutników  jednocześnie  wchodzących  
w  skład  licznika.  Układ  asynchronicznego  licznika  jest  układem  szeregowym  (połączenie 
szeregowe).  Natomiast  układ  synchronicznego  licznika  jest  układem  równoległym.  Dlatego 
liczniki  asynchroniczne  są  nazywane  licznikami  szeregowymi,  a  liczniki  synchroniczne  – 
licznikami  równoległymi.  Układ  równoległy  zapewnia  jednoczesność  zmian  stanów 
przerzutnika,  a  więc  najkrótszy  czas  propagacji  i  największą  częstotliwość  impulsów 
wejściowych. 

 

Liczniki asynchroniczne  

W  licznikach  asynchronicznych  (szeregowych)  zmiana  stanu  kolejnego  przerzutnika 

odbywa  się  pod  wpływem  zmiany  stanu  przerzutnika  poprzedniego.  Najprostszym 
przykładem licznika szeregowego jest kaskada n szeregowo połączonych przerzutników.  

Liczniki szeregowe realizujemy  najczęściej na przerzutnikach typu T  lub  JK o zwartych 

wejściach informacyjnych. 

Algorytm projektowania liczników szeregowych: 

– 

ustalić  liczbę  przerzutników  niezbędnych  do  realizacji  licznika  (w  zależności  od 
pojemności licznika 2

n

), 

– 

na wejścia informacyjne T lub JK (zwarte) – podać „1”, 

– 

jeżeli  licznik  liczy  w  przód  –  połączyć  wejścia  zegarowe  następnego  przerzutnika 
z wyjściem „Q” poprzedniego. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

43

Przykład  
Na  rysunku  31  przedstawiono  schemat  logiczny  licznika  szeregowego  zbudowanego 

z trzech przerzutników JK, zliczającego w przód. 
 
 

 

 

a) 

 

 
 
 
 
 
 
 

 

 

 

b) 

 
 
 
 
 
 
 
 

 

 
 
 

 

 

 

c) 

 
 
 

 
 
 
 
 
 
 

 

 
Rys.  31.
  Licznik  szeregowy  zliczający  w  przód  o  pojemności  8:  a)  schemat  logiczny,  b)  tablica  stanów,  

c) przebiegi czasowe 

 

Wejścia  synchroniczne  przerzutników  JK  są przyłączone  do  jedynki  logicznej.  Czasami 

mogą być one nie użyte, co jest równoznaczne z przyłączeniem ich do jedynki logicznej. 

Impuls  zliczany  We  jest  wprowadzony  na  wejście  zegarowe  pierwszego  przerzutnika. 

Wejścia  zegarowe  kolejnych  przerzutników  są  połączone  z  wyjściem  Q  poprzednich 
przerzutników.  Zmienna  Q0  reprezentuje  wagę  2

0

  –  czyli  1,  waga  zmiennej  Q1  wynosi  2

1

 

– czyli 2, a zmiennej Q2 – 2

2

, czyli 4. 

W chwili początkowej wszystkie przerzutniki są w stanie 0 (Q0 = Q1 = Q2 = 0). Jeśli na 

wejście  zegarowe  pierwszego  przerzutnika  zostanie  podany  impuls,  to  powoduje  on  zmianę 
stanu jego wyjścia Q0 z 0 na 1. Stan drugiego przerzutnika nie ulegnie zmianie, ponieważ na 

We 

Q

Q

Q

































We 

Q

Q

Q

 J

0

 Q

 C  
 K

0

 

 

„1” 

 J

1

 Q

 C  
 K

1

 

 

Q

Q

Q

 J

2

 Q

C  
 K

2

 

 

„1” 

„1” 

We 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

44

wejściu  zegarowym  przerzutnika  Q1  nie  wystąpiła  zmiana  sygnału  z  1  na  0.Pod  wpływem 
drugiego  impulsu  pierwszy  przerzutnik  zmieni  stan  z  1  na  0.  Ta  zmiana  stanu  powoduje 
zmianę  stanu  drugiego  przerzutnika  z  0  na  1.Pod  wpływem  trzeciego  impulsu  pierwszy 
przerzutnik  zmieni  stan  z  Q2  na  1.  Ta  zmiana  nie  powoduje  zmiany  stanu  przerzutnika 
drugiego. Czwarty impuls zmieni stan przerzutnika pierwszego z 1 na 0. Zmiana ta powoduje 
zmianę  stanu  z  1  na  0  przerzutnika  drugiego, a ta z  kolei  zmianę  stanu  z  0 na  1  przerzutnika 
trzeciego. Przed pojawieniem się ósmego impulsu wszystkie przerzutniki licznika są w stanie 1. 
Po ósmym  impulsie  pierwszy  przerzutnik  zmieni  stan  z  1  na  0.  Ta  zmiana  powoduje  zmianę 
stanu z 1 na 0 drugiego przerzutnika, a ta z kolei zmianę stanu z 1 na 0 przerzutnika trzeciego. 

Przedstawiony  licznik  charakteryzuje  się  więc  ośmioma  stanami.  Przerzutnik  pierwszy 

tego  licznika  zmienia  swój  stan  za  każdym  razem  pojawienia  się  zmiany  impulsu 
wejściowego  z  1  na  0,  a  więc  dzieli  częstotliwość  impulsów  wejściowych  przez  2.  Drugi 
przerzutnik  zmienia  swój  stan  za  każdym  pojawieniem  się  zmiany  stanu  z  1  na  
0  przerzutnika  pierwszego,  a  więc  na  wyjściu  Q1  otrzymuje  się  impulsy  o  częstotliwości 
cztery razy mniejszej, niż częstotliwość impulsów wejściowych. Natomiast trzeci przerzutnik 
zmieni  swój  stan,  jeśli  poprzednie  przerzutniki  zmieniają  swój  stan  z  1  na  0,  otrzymując 
impulsy o częstotliwości osiem razy mniejszej (pojawia się jeden impuls na osiem impulsów 
wejściowych). 

Uzyskano  w  ten  sposób  kaskadę  trzech  przerzutników  asynchronicznych  pracująca 

zgodnie z przebiegami czasowymi z rysunku 30c. 

Jeśli  licznik  ma  liczyć  w  tył  (odejmować)  –  wejścia  zegarowe  łączymy  z  wyjściem 

poprzedniego. 

Na  rysunku  31  przedstawiono  przykład  licznika  szeregowego  odejmującego,  który 

pomniejsza swój stan w takt impulsu zliczanego oraz przebiegi czasowe. 

 
a) 

 
 
 
 
 
 
 
 
 

b) 

 
 
 
 
 
 
 
 
 
 

 

 

 

Rys. 32. Szeregowy licznik odejmujący: a) schemat połączeń, b) przebiegi czasowe 

 Q

 C  

 

Q

 Q

 C  

 

Q

Q

Q

Q

 Q

C  

 

Q

We 

We 

Q

Q

Q

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

45

Jeżeli chcemy zaprojektować licznik a s nie jest równe s = 2

n

Tworzymy  licznik  o  większej  liczbie stanów takiej,  że s  =  2

n

,  ale  jednocześnie  s  > 2

n-1

Do takiego licznika dołącza się bramki NAND lub AND w zależności od tego, na co reagują 
wejścia  asynchroniczne  przerzutników  (NAND  –  gdy  na  „0”).  Bramki  te  służą  do 
ograniczania impulsów zliczanych przez licznik. 

Na  bramkę  podajemy  z  wyjść  przerzutników  impuls,  przy  którym  nastąpi  zerowanie 

licznika. Natomiast wyjście bramki łączymy z wejściami ustawiającymi. 

Na  rysunku  33  przedstawiono  licznik  pracujący  w  dwóch  kierunkach.  Jest  on 

połączeniem liczników z rysunku 31 i 32. Zmiany kierunku zliczania dokonuje się za pomocą 
sygnału  K. Zmiana wartości  K  może spowodować wyzwolenie przerzutnika. Z tego powodu 
po  zmianie  kierunku  zliczania  należy  ustawić  warunek  początkowy,  od  którego  licznik 
zaczyna swoją pracę. 

 

 
 
 
 
 
 
 
 
 
 
 
 
 

K – zmienna programująca kierunek zliczania. 

 

Rys. 33. Licznik szeregowy rewersyjny. 

 

Na  rysunku  34a  przedstawiono  licznik  modulo  3.  Do  określenia  liczby  przerzutników 

zastosujemy  zależność  (2n-1 

  s 

  2n).  Liczba  n  spełniająca  ten  warunek  wynosi  2. 

Tworzymy więc licznik binarny złożony z dwóch przerzutników. 

 

a) 
 
 
 
 
 
 
 
 
 
 
 
 
 

 J

0

 Q

C  
 K

0

 

 

 J

1

 Q

 C  
 K

1

 

 

Q

Q

We 

R

 

R

 

Q

Q

Q

Q

 

Q

 

Q

 

S

 

S

 

S

 

R

R

R

Q

 

Q

 

Q

 

Z

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

46

b) 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

Rys. 34. Licznik modulo 3: a) schemat połączeń, b) przebiegi czasowe 

 

Zerowanie licznika nastąpi, gdy pojawi się impuls odpowiadający liczbie 3, czyli 11

2

. Na 

wejścia  bramki  podajemy  B  =  A  =  1,  a  na  wyjściu  bramki  pojawi  się  stan  niski  zerujący 
wszystkie przerzutniki licznika. 

Jeśli  stanem  początkowym  jest  stan  0  (stan  wyjść  BA  =  0),  pod  wpływem  impulsu 

wejściowego  wyjście  A  przechodzi  do  stanu  1.  Na  wejściu  bramki  NAND  są  wówczas 
sygnały:  1,  0,  a  na  jej  wyjściu  stan  1  (rysunek  34b).  Pod  wpływem  drugiego  impulsu 
wejściowego licznik przechodzi do stanu 2. Na wejściu bramki  NAND są wówczas sygnały: 
1,  0,  a  na  jej  wyjściu  stan  1.  Pod  wpływem  następnego  impulsu  wejściowego  na  wyjściu 
licznika pojawi się stan 3. Wówczas na wyjściu bramki NAND, a więc i na wejściu R pojawi 
się sygnał 0, który spowoduje wyzerowanie licznika, czyli powrót do stanu 0. Licznik ten ma 
trzy stany, przez które przechodzi cyklicznie. Jest to więc licznik modulo 3. 
 
Rejestry 

Rejestrem  nazywamy  układ  składający  się  z  zespołu  przerzutników,  służący  do 

przechowywania informacji w postaci słów (cztero-, ośmio- lub więcej bitowych) w systemie 
cyfrowym.  O  długości  słowa  zapamiętywanego  w  rejestrze  decyduje  liczba  użytych 
przerzutników. 

Ze względu na sposób wprowadzania i wyprowadzania informacji rejestry dzielą się na: 

 

równoległe,  umożliwiające  równoległe  wprowadzanie  i  wyprowadzanie  informacji 
(całymi słowami) jednocześnie do wszystkich i ze wszystkich pozycji, 

 

szeregowe umożliwiające szeregowe wprowadzanie i wyprowadzanie informacji, tzn. bit 
po bicie, w takt sygnału zegarowego, 

 

szeregowo  równoległe,  umożliwiające  szeregowe  wprowadzanie  i  równoległe 
wyprowadzanie informacji, 

 

równoległo  szeregowe,  umożliwiające  równoległe  wprowadzanie  i  szeregowe 
wyprowadzanie informacji. 
Pierwszy  rodzaj  rejestrów  zalicza  się  do  grupy  równoległych,  natomiast  trzy  pozostałe 

zalicza  się  ogólnie  do  rejestrów  szeregowych  lub  przesuwających.  Wielkości 
charakteryzujące rejestr to: 

 

długość rejestru równa liczbie n zawartych w nim przerzutników, 

 

szybkość  pracy  rejestru  równa  czasowi  trwania  lub  wyprowadzania  informacji  dla 
rejestru  równoległego,  a  dla  rejestru  szeregowego  jest  to  maksymalna  częstotliwość 
impulsów taktujących. 

We 

Q

Q

R

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

47

Podstawową  funkcją  rejestrów  jest  zapamiętywanie  informacji.  Do  tego  celu  służą 

przerzutniki,  zdolne  do  zapamiętania  wartości  jednej  zmiennej  logicznej.  W  odróżnieniu  od 
przerzutników rejestry są zdolne zapamiętywać całe słowa. Rejestry spełniają w urządzeniach 
cyfrowych funkcję pomocniczych pamięci o niewielkich pojemnościach.  

 
 

 

 

 

a) 

 
 
 
 
 
 

 

 

 

b) 

 
 
 
 
 
 

 

 

 

c) 

 
 
 
 
 
 

 

 

 

d) 

 
 
 
 
 
 

 

 

 

e) 

 
 
 

 
 

Rys.  35.  Podstawowe  sposoby  wpisywania  i  pobierania  informacji  w  rejestrach:  a)  szeregowo  –  szeregowy,  

b)  szeregowo  –  równoległy,  c)  równoległo  –  szeregowy,  d)  równoległo  –  równoległy, 
e) pierścieniowy. 

 
Rejestr,  w  zależności  od  trybu  pracy  (szeregowy,  równoległy),  może  mieć  jedno  lub 

więcej  wejść  informacyjnych,  jedno  lub więcej wyjść  oraz  grupę  wejść  sterujących. Poniżej 
przedstawiono symbol rejestru uniwersalnego A-bitowego. 

We 

Wy 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

48

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

Rys. 36. Symbol rejestru uniwersalnego 

 
Rejestry możemy podzielić na: 

 

rejestry asynchroniczne – zbudowane z przerzutników asynchronicznych, 

 

rejestry synchroniczne – zbudowane z przerzutników synchronicznych. 

 
Rejestry równoległe 

Najprostszymi  rejestrami  są  rejestry  równoległe,  ponieważ  nie  wymagają  żadnych 

połączeń  między  tworzącymi  je  przerzutnikami  np.  układy  UCY  74174  i  UCY  74175. 
 Z  zespołu  rejestrów  równoległych  budowane  są  tzw.  pamięci  buforowe,  służące  do 
przechowywania informacji podawanej w sposób równoległy. Bufory najczęściej pośredniczą 
między  jednostkami  cyfrowymi  działającymi  z  różnymi  szybkościami.  W  rejestrze 
równoległym  zarówno  wprowadzanie  i  wyprowadzanie  informacji  odbywa  się  równolegle. 
Rejestr  równoległy  można  sobie  wyobrazić  jako  zestaw  przerzutników  typu  D,  których  ani 
wejścia  informacyjne D, ani wyjścia  nie  są ze sobą połączone. Połączone  są  jedynie wejścia 
synchronizujące  i  ewentualnie  asynchroniczne  wejścia  zerujące.  Rejestr  taki  wykonuje 
mikrooperacje wpisywania do rejestru informacji wejściowej i zerowanie jego zawartości. 

Najogólniej rejestr równoległy można przedstawić jak na rysunku 37. 
 

 
 
 
 
 
 
 
 
 
 
 
 
 

Rys. 37. Rejestr równoległy 

 

 

Wejścia równoległe  

Wyjścia równoległe  

Rejestr A 

Wejście szeregowe 
(przesuw wstecz)  

Wyjście szeregowe 

W

ej

śc

ia 

 

Szeregowe 
(przesuw w przód)  

Zegarowe 

Sterujące 

Zerujące 

 D

0

 Q

 C  
 

Q

 D

1

 Q

 C  
 

Q

 D

2

 Q

 C  
 

Q

 D

3

 Q

 C  
 

Q

Wy

Wy

Wy

Wy

We

We

We

We

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

49

Rejestry  równoległe  asynchroniczne  są  zbudowane  z  przerzutników  asynchronicznych 

nie  połączonych  ze  sobą  bezpośrednio,  a  wpisywanie  informacji  do  tych  przerzutników 
odbywa się w tym samym interwale czasu. 

Rejestry asynchroniczne możemy podzielić na: 

 

rejestry o wpisywaniu jednoprzewodowym, 

 

rejestry o wpisywaniu dwuprzewodowym. 

 

Rejestr  równoległy  o  wpisywaniu  jednoprzewodowym  zbudowany  z  przerzutników  rs 

pokazano na rysunku 38a. 

 
 
 

 

a) 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

b) 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

a

We

We

n-1 

a

n-1 

Q

Q

n-1 

 J  
  
 K  

 J  
  
 K  

a

We

We

n-1 

a

n-1 

Q

Q

n-1 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

50

 

 

c) 

 
 
 
 
 
 
 

 

Rys. 38. Rejestr równoległy asynchroniczny z wpisywaniem jednoprzewodowym: a) i b) przykłady rozwiązań, 

c) przebiegi czasowe 

 
W przypadku asynchronicznego wprowadzenia  informacji do rejestru, jeżeli dostępne są 

tylko  pozycje  We

0

,...We

n

  każdego  bitu  informacji,  należy  przed  podaniem  sygnału 

przepisującego  A = 1  wyzerować  rejestr.  Zerowanie  wyjść  Q  odbywa  się  przewodem  Z, 
natomiast  wpisywanie  wartości  zmiennych  We  jest  bramkowane  sygnałem  A.  Na  rys.  38b 
przedstawiono  rozwiązanie  o  identycznym  działaniu  wykorzystujące  wejścia  s, 
r przerzutników  scalonych  JK.  Zasady  działania  rejestrów  ilustrują  przebiegi  czasowe 
pokazane  na  rys.  38c.  Wpisywanie  informacji  We

i

  na  wyjście  Q

i

  odbywa  się  jednym 

przewodem a

i

 po uprzednim wyzerowaniu rejestru, a sygnał wpisujący jest równy A = 1. 

Rejestr równoległy o wpisywaniu dwuprzewodowym przedstawiono na rysunku 39a. 
 

 

a) 

 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 
 

b) 

 
 
 
 
 
 
 

 

Rys.  39.  Rejestr  równoległy  asynchroniczny  z  wpisywaniem  dwuprzewodowym:  a)  schemat  ideowy,  

b) przebiegi czasowe

 

 


We


Q

a

We

We

n-1 

a

n-1 

Q

Q

n-1 

 J  
  
 K  

 J  
  
 K  

We


Q

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

51

W  tym  układzie  zerowanie  przerzutników  przed  wprowadzeniem  informacji  jest 

niepotrzebne.  Informacja  We

i

  zostaje  przepisana  na  wyjście  Q

i

,  którego  wartość  jest 

określona dwoma sygnałami (dwuprzewodowo) na wejściach s i r przerzutnika. 

Zasada działania rejestru jest pokazana na rys. 39b. Dla A = 1, wartość ai jest określona 

przez  wartość  zmiennej  We

i

.  Gdy  a

i

  =  1  oraz A  = 1, następuje  wyzerowanie Q

i

,  gdy a

i

  =  0, 

następuje  ustawienie  Q

i

  =  1.Poprawne  ustawienie  informacji  do  rejestru  w  czasie  trwania 

sygnału  wpisującego  A  =  1  ma  miejsce  wtedy,  gdy  informacja  We

i

  w  czasie  trwania 

wpisywania  nie  ulega  zmianie.  Rejestry  równoległe  synchroniczne  są  zbudowane 
z przerzutników synchronicznych, do których informacja We

i

 jest wpisywana w takt impulsu 

zegarowego. 

Przykład rejestru synchronicznego przedstawiono na rysunku 40a. 
 
 

a) 

 
 
 
 
 
 
 
 
 
 

b) 

 
 
 
 
 
 
 

Rys. 40. Rejestr równoległy z wpisywaniem synchronicznym: a) schemat ideowy, b) przebiegi czasowe 

 
W  układzie  tym  wpisywanie  We

i

  odbywa  się  na  przednim  zboczu  impulsu  taktującego. 

Pracę  rejestru  pokazano  na  rys.  40b.  Wartości  zmiennych  We

i

  muszą  być  ustalone,  zanim 

pojawi się impuls taktujący T. Wyprzedzenie wartości We

i

 względem T oznaczono przez t

s

 – 

czas  ustalania.  Wyzerowanie  Q

i

  nastąpi  przednim  zboczem  sygnału  T,  gdy  czas  trwania 

We

i

 = 0 i T = 1 jest większy lub równy wartości t

h

, zwanej czasem utrzymania. 

 

Rejestry szeregowe 

W  rejestrach  szeregowych  wejścia  i  wyjścia  informacyjne  kolejnych  przerzutników 

wchodzących  w  skład  rejestrów  są  połączone  ze  sobą  tak,  że  możliwe  jest  „przepisywanie” 
zapamiętanych wartości logicznych do sąsiednich przerzutników i w rezultacie „przesuwanie” 
zapamiętywanego słowa w kolejnych taktach sygnału zegarowego. 

Rejestry  szeregowe  charakteryzują  się  możliwością  przesuwania  wprowadzonej 

informacji bądź w prawo lub w lewo – rejestry jednokierunkowe, bądź też zarówno w prawo 
jak  i  w  lewo - rejestry  dwukierunkowe,  inaczej  zwane  rewersyjnymi.  Rejestry  te  stosuje  się 
najczęściej jako układy pośredniczące między urządzeniami o różnym sposobie przetwarzania 
informacji, o różnych szybkościach pracy. 

Rejestry  szeregowe  zwane  przesuwającymi,  przyjmują  lub  przekazują  informację 

szeregowo. 

 D Q 
 C  
  

We

 D Q 
 C  
  

We

n-1 

Q

Q

n-1 

We


Q

t

t

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

52

Na  rysunku  41  przedstawiono  przykłady  rejestrów,  w  których  informacja  jest 

wprowadzana  szeregowo,  natomiast  jej  wyprowadzenie  odbywa  się  szeregowo  (rejestr 
szeregowy) lub równolegle (rejestr przesuwający). Układy te różnią się sposobem taktowania. 
W  pierwszym  przypadku  układ  jest  taktowany  przednim  zboczem  impulsu  T,  natomiast 
w drugim przypadku układ jest taktowany dwustopniowo. 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

Rys. 41. Rejestr szeregowy i przesuwający 

 
Szeregowe  taktowanie  przednim  zboczem  pociąga  za  sobą  problemy  związane 

z  właściwym  doborem  czasów  propagacji.  W  układzie  z  szeregowo  połączonymi 
przerzutnikami  czas  propagacji  następnego  przerzutnika  jest  większy  od  czasu  propagacji 
przerzutnika  poprzedniego.  Wówczas  proces  przepisywania  wartości 

z  wejścia 

informacyjnego na stopniu  następnym nie  jest jeszcze zakończony, podczas gdy zakończony 
został  ten  proces  na  stopniu  poprzednim.  Może  się  więc  zdarzyć,  że  następny  przerzutnik 
będzie  miał  zmienioną  wartość  zmiennej  informacyjnej  w  trakcie  procesu  przepisywania, 
przejmując  w  ten  sposób  nową  wartość  tej  zmiennej.  Nastąpi  jak  gdyby  dwukrotne 
przepisanie  wartości  zmiennej  informacyjnej  w  jednym  takcie  impulsu  zegarowego. 
W układzie taktowanym dwustopniowo nie ma problemów z czasami propagacji. 

 

Układy arytmetyczne 

Prawie  wszystkie  praktyczne  obliczenia  matematyczne  dają  się  sprowadzić  do  działań 

arytmetycznych,  wszystkie  zaś  działania  arytmetyczne  sprowadzają  się  do  dodawania.  Do 
podstawowych  układów  arytmetycznych  zalicza  się  więc  sumator,  którego  zasadniczym 
zadaniem jest dodawanie (lub odejmowanie) liczb.  

Sumatory dzielimy na: 

 

dwójkowe, gdzie działania dokonuje się na liczbach dwójkowych, 

 

dziesiętne, wykonujące działania na liczbach dziesiętnych kodowanych dwójkowo. 
Sumatory można również podzielić ze względu na sposób podawania składników sumy: 

a)  równoległe: 

 

z przeniesieniem szeregowym, 

 

z przeniesieniem równoległym. 

b)  szeregowe. 

 D Q

 

 C  

  Q

 

 D Q

 

 C  
 

Q

 

 D Q

 

 C  
 

Q

 

 D Q

 

 C  
 

Q

 

We

 

Wy 

 J Q 
 C  

 K   

We 

 J Q 
 C  
 K 

Q

 

 J Q 
 C  
 K 

Q

 

 J Q 
 C  
 K 

Q

 

Wy 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

53

Do układów arytmetycznych zaliczane są również komparatory. Są to układy służące do 

porównywania  wielkości  dwu  lub  więcej  liczb  binarnych.  Można  wyróżnić  dwa  zasadnicze 
typy komparatorów: równoległe i szeregowe. 
 
Sumatory 

Sumatory  są  to  układy  służące  do  sumowania  arytmetycznego  dwu  liczb  binarnych  n  – 

bitowych  A  i  B,  z  jednobitowym  przeniesieniem  C

i

,  dając  w  wyniku  n  –  bitową  sumę  S

i

 

i przeniesienie C

i+1

Dodawanie  liczb  dwójkowych  odbywa  się  według  tych  samych  zasad  co  liczb 

dziesiętnych. Dodawanie dwu liczb dwójkowych A i B jest pokazane na rysunku 42. 

 
a)   

 

 

 

 

 

 

 

b) 

 













 
 
 
 

c) 

 
 
 
 
 
 

 

Rys. 42. Dodawanie jednobitowych liczb dwójkowych: a) symbol, b) tablica prawdy, c) tablice Karnaugha 

 
Zmienna  S

i

  reprezentuje  wynik  operacji,  jej  wartość  jest  sumą  modulo  2  (EX  –  OR) 

składników A

i

, B

i

 i C

i

Zmienna  C

i

  reprezentuje  przeniesienie  z  pozycji  młodszej  sumatora  wielopozycyjnego, 

natomiast C

i+1

  jest przeniesieniem do pozycji  starszej  C

i

  nie występuje w tzw. półsumatorze, 

a obecność C

i

 daje sumator pełny. 

 
Na podstawie siatek Karnaugha otrzymujemy wyrażenia logiczne dla półsumatora: 

 

suma 

i

i

i

i

i

i

i

B

A

B

A

B

A

S

=

+

=

 

 

przeniesienie 

i

i

1

i

B

A

C

=

+

 

Σ

 

 

 

C  S 

Dodajna 

Dodajnik 

Suma 

Przeniesienie 

  

A   0   1  

  

0   0 

0   1 

 

  

A 0  

1  

  

0   1 

1   0 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

54

Przykładowy schemat logiczny przedstawia rysunku 43. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Rys. 43. Schemat logiczny półsumatora 

 

W  przypadku  dodawania  wielobitowych  liczb  dwójkowych  należy  uwzględnić 

przeniesienie  z  pozycji  sąsiedniej,  mniej  znaczącej  od  rozpatrywanej.  Operację  dodawania 
bitów z i – tej pozycji dodawanych liczb wielobitowych ilustruje rysunek 44b. 

Za pomocą siatek Karnaugha  można opisać zasadę działania sumatora pełnego (rysunek 

44c, d). Z siatek tych otrzymujemy zależności: 

 

suma  

(

) (

)

(

)

(

)

i

i

i

i

i

i

i

i

i

i

i

i

i

i

i

i

i

i

i

i

B

A

C

B

A

C

B

A

C

B

A

B

A

C

B

A

B

A

C

S

=

+

=

+

+

+

=

 

 

przeniesienie 

i

i

i

i

i

i

1

i

C

B

C

A

B

A

C

+

+

=

+

 

i

i

i

i

i

i

1

i

C

B

C

A

B

A

C

=

+

 

 
 
a)   

 

 

 

 

 

 

b) 

 

A

B

C

S

C

i+1 




































 

 

 

 

 

 

 

AB 
 

C = AB 

S = A

Σ

 

A

B

C

S

C

i+1 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

55

 

 

c) 

  

 

00 

01 

11 

10 

 
 
 

 

d) 

 

 

 

00 

01 

11 

10 

 
 

Rys. 44. Sumator dwuargumentowy jednobitowy: a) symbol, b) tabela zależności, c) siatka zależności dla sumy, 

d) siatka zależności dla przeniesienia 

 
Ponieważ  istnieje  wiele  równoważnych  postaci  funkcji  Si  i  Ci  zatem  istnieje  możliwość 

różnej  ich  interpretacji.  Schemat  sumatora  pełnego,  dwuargumentowego  z  przeniesieniem 
z pozycji poprzedniej Ci oraz przeniesienie do pozycji wyższej Ci + 1 pokazano na rysunku 45. 

 
 
 
 
 
 
 
 
 
 
 
 
 
 

Rys. 45. Schemat logiczny jednopozycyjnego sumatora pełnego 

 

 

Sumatory równoległe 

Sumatory równoległe ze względu na sposób wytwarzania przeniesień dzielimy na: 

 

sumatory  z  przeniesieniem  szeregowym, zwane również  sumatorami kaskadowymi albo 
iteracyjnymi, 

 

sumatory z przeniesieniem równoległym. 
Sumator  kaskadowy  n  bitowy  jest  układem  powstałym  przez  połączenie  n  sumatorów 

jednobitowych. Schemat blokowy sumatora kaskadowego przedstawiono na rysunku 46. 

A

i

B

C

A

i

B

C

S

C

i+1 

 

 

 

 

 

A

B

C

S

C

i+1 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

56

 
 
 
 
 
 
 
 
 
 
 

 

Rys. 46. Schemat blokowy sumatora kaskadowego 

 

Przy  sumowaniu  liczb  dodatnich  wejście  przeniesienia  początkowego  C

0

  nie  jest 

wykorzystywane  (C

0

  =  0).  Wszystkie  cyfry  dodawanych  liczb  dwójkowych  podawane  są  na 

sumator jednocześnie. Czas uformowania się wyniku zależy od prędkości propagacji sygnału 
przeniesienia  przez  kolejne  komórki  sumatora.  W  najbardziej  niekorzystnym  przypadku 
sygnał C musi przejść przez wszystkie komórki sumatora. 

Najbardziej  rozpowszechnionym  sumatorem  jest  układ  typu  7483.Monolityczny  układ 

scalony  7483  jest  czterobitowym  sumatorem  dwójkowym  równoległym  z  przeniesieniem 
równoległym.  Sumator  ma  wyjścia  sumy  z  każdego  bitu  oraz  wyjście  przeniesienia  (C4) 
z  ostatniego  bitu.  Posiada  również  wejście  (C0)  przeniesienia  z  poprzedniej  pozycji  na 
pierwszy bit sumatora. 

 

 

 

Rys. 47. Symbol sumatora 7483 

 

Komparatory 

Komparatory to układy logiczne, które porównują ze sobą liczby. Najważniejsze kryteria 

porównania  to  A  =  B,  A>B  i  A<B.  Kryterium  równości  dwóch  liczb  dwójkowych  to 
identyczność  wszystkich  bitów.  Komparator  powinien  dawać  na  wyjściu  1  wówczas,  gdy 
dwie porównywane  liczby  są  sobie  równe.  W przypadku  dwóch  liczb  1-bitowych  wystarczy 
użyć  bramki  EXOR.  Bardziej  uniwersalne  komparatory  prócz  wykrywania  równości 
wskazują,  która  z  porównywanych  liczb  jest  większa.  Określa  się  je  mianem  komparatora 
wartości. 
 

Tabela 14. Stany komparatora 1-bitowego 

 

Σ

 

A

B

C

S

C

Σ

 

A

B

C

S

C

i+1 

Σ

 

A

n-1 

B

n-1 

C

n-1 

S

n-1 

C

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

57

Dla  utworzenia  funkcji  logicznych  należy  skorzystać  z  przedstawionej  tabeli  14.  Na  jej 

podstawie otrzymamy bezpośrednio układ realizujący tę funkcję, przedstawiony na rysunku 48. 

 

 

 

Rys. 48.  Realizacja komparatora jednobitowego 

 

Pamięci 

Pamięci  są  to  układy  logiczne  służące  do  przyjmowania,  przechowywania  i  wydawania 

zakodowanych 

informacji 

(danych). 

Jednym 

rodzajów 

pamięci 

są 

pamięci 

półprzewodnikowe.  Informacja  jest  zapisywana  i  pamiętana  w  postaci  ciągów 
zerojedynkowych.  Jeden  element  takiej  informacji  nazywa  się  bitem  (1b),  8  bitowy  element 
bajtem (1B), a 16 bitowy element słowem 16 bitowym. 

Najważniejszymi parametrami pamięci są: 

 

pojemność, 

 

szybkość, 

 

koszt, 

 

pobór mocy. 
Pojemność  pamięci  (wielkość)  oznacza  ilość  informacji  jaką  można  w  niej 

przechowywać.  Mierzy  się  ją  w  jednostkach  informacji  takich  jak:  bity,  bajty  lub  słowa. 
Może  być  ona  wyrażona  w  kilobitach  (Kb),  megabitach  (Mb),  gigabitach  (Gb),  lub 
kilobajtach  (KB),  megabajtach  (MB),  gigabajtach  (GB).  Pojemność  pamięci  operacyjnych 
określa  się  podając  liczbę  słów  i  długość  słowa.  Liczbę  słów  podaje  się  używając 
przedrostków odpowiadających odpowiednim mnożnikom. 

1 KB odpowiada 2

10

 = 1024 bajtom; 

1 MB odpowiada 2

20

 = 1024 · 1024bajtom; 

1 GB odpowiada 2

30

 = 1024 · 1024 · 1024bajtom. 

Przykładowo pojemność pamięci może wynosić 512Kx64, co oznacza, że jest to 2

19

 słów 

64-bitowych. W przypadku gdy słowo ma długość 8 bitów pojemność pamięci jest podawana 
w bajtach. Wówczas np. 128 KB oznacza 2

17

 bajtów. 

Szybkość pracy pamięci jest parametrem wskazującym na to, jak często procesor lub inne 

urządzenie może korzystać z niej. Jest ona określana kilkoma parametrami. Są to: 

 

czas dostępu (ang. access time), 

 

czas cyklu, 

 

szybkość transmisji. 
Czas  dostępu  jest  to  czas  jaki  upływa  od  momentu  zażądania  informacji  z  pamięci  do 

momentu, w którym  ta  informacja ukaże  się  na  wyjściu pamięci. Dla pamięci operacyjnych 
czas ten wynosi od 20 ns do 200 ns. 

Czas cyklu jest to najkrótszy czas jaki musi upłynąć pomiędzy dwoma żądaniami dostępu 

do  pamięci.  Zwykle  czas  ten  jest  nieco  dłuższy  od  czasu  dostępu,  a  wynika  to  z  fizycznej 
realizacji pamięci, tj. opóźnień wnoszonych przez układy elektroniczne. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

58

Szybkość  transmisji  mierzy  się  liczbą  bitów  (bajtów)  jaką  można  przesłać  w  jednostce 

czasu  pomiędzy  pamięcią  a  innym  urządzeniem.  Parametr  ten  jest  szczególnie  ważny 
w pamięciach, w których adresowane są fragmenty większe niż słowo (np. pamięci dyskowe). 
Ponieważ w takich pamięciach odczytuje się lub zapisuje bloki słów, to mniej istotny jest czas 
dostępu  do pamięci,  a  bardziej  istotny  jest  czas w  jakim  taka  porcja  informacji  może  zostać 
przesłana. Najczęściej szybkość transmisji mierzy się w bitach lub bajtach na sekundę. 

Nowe  technologie  pozwalają  na  ciągłe  zmniejszanie  kosztu  produkcji  pamięci  i  ulepszanie 

ich parametrów. Dlatego pamięci dość szybko starzeją się, a często po paru latach są wycofywane 
z  użytku.  Najniższym  kosztem,  wśród  pamięci  operacyjnych  komputerów,  charakteryzują  się 
pamięci  półprzewodnikowe.  Jednak one także różnią się  między  sobą pojemnością i  szybkością 
działania,  a  co  za  tym  idzie  i  ceną.  Produkowane  są  tanie  układy  scalone  pamięci 
półprzewodnikowych,  ale  charakteryzują  się  one  niezbyt  dużą  szybkością  działania.  Natomiast 
szybkie układy pamięciowe mają niewielkie pojemności a cena ich jest stosunkowo duża. Dlatego 
poszukuje  się  nowych  rozwiązań  w  architekturze komputerów, które  pozwolą  na optymalizację 
pracy  komputerów,  a  w  szczególności  parametrów  pamięci.  Jednym  ze  stosowanych  rozwiązań 
dla  pamięci  operacyjnych  jest  zastosowanie  dwóch  rodzajów  pamięci  półprzewodnikowych: 
pamięci  szybkich,  ale  o  mniejszej  pojemności  i  pamięci  wolniejszych,  ale  o  dużych 
pojemnościach.  Pamięci  wolniejsze  umożliwiają  budowanie  pamięci  operacyjnych  o  dużych 
pojemnościach,  a  pamięci  szybkie,  o  mniejszych  pojemnościach,  umożliwiają  przyspieszenie 
pracy.  Szybka  pamięć  o  niewielkiej  pojemności  współpracująca  z  pamięcią  operacyjną  jest 
nazywana pamięcią kieszeniową (ang. Cache memory). 

Pobór  mocy  jest  też  ważnym  parametrem,  którego  znaczenie  uwypukla  się  przy 

budowaniu  pamięci  operacyjnych  o  bardzo  dużych  pojemnościach,  gdzie  istnieje  problem 
połączenia  dużej  liczby  układów  scalonych  i  odprowadzenie  wydzielanego  ciepła.  Innym 
przykładem konieczności dążenia do zmniejszania pobieranej mocy komputerów, a co za tym 
idzie i pamięci, są komputery kieszonkowe. 

Pamięć  jest  zbudowana  z rejestrów (komórek),  w których  zapamiętywane  jest  słowo 1,  4 

lub  8  –  bitowe.  W  każdej  komórce  przypisany  jest  adres,  czyli  numer  zapisany  w  kodzie 
dwójkowym  oznaczający  położenie  informacji.  Jeśli  chcemy  odczytać  (lub  zapisać)  daną 
informację,  trzeba  na  wejścia  adresowe  pamięci  podać  numer  komórki,  w  której  się  ona 
znajduje,  a  także  na  wejścia  sterujące,  odpowiednie  sygnały.  Do  zaadresowania  N  =  2

m

 

komórek  pamięci  potrzebnych  jest  m  wejść  adresowych.  Dla  przykładu:  1  KB  =  2

10

  bajtów 

informacji, trzeba 10 wejść adresowych, a 16 KB = 2

14

 bajtów informacji 14 wejść adresowych. 

 
Pamięci posiadają: 

 

wejścia adresowe (A

0

,...,A

m

); 

 

wejścia / wyjścia danych (D

0

,...,D

n

); 

 

wejścia sterujące (WE, CS, OE), służące do wyboru funkcji wykonywanej przez układ, 

 

niekiedy wejścia strobujące adresów (ALE, RAS, OE). 
 
Pojemność pamięci można zapisać wzorem: 

P = n ·2

gdzie: 

 

P pojemność pamięci, 

 

n ilość linii szyny danych, 

 

m ilość linii szyny adresowej. 
 
Ze względu na budowę oraz właściwości pamięci półprzewodnikowe dzieli się na: 

 

pamięci o dostępie swobodnym do zapisu i odczytu RAM, 

 

pamięci stałe tylko do odczytu o dostępie swobodnym ROM. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

59

Pamięci o dostępie swobodnym RAM 

Pamięci  RAM  są  wykorzystywane  do  ciągłego  zapisu  w  postaci  słowa  lub  bitu, 

zapamiętania  i  odczytu  informacji.  Zapewniają  one  jednakowo  szybki  dostęp  do  każdej 
komórki  pamięci.  Czynność  zapamiętania  (odczytu)  oznacza  konieczność  stosowania 
układów  sekwencyjnych,  w  których  informacje  są  zapisywane  (odczytywane)  w  określonej 
kolejności.  Dlatego  dostęp  do  danej  informacji  zależy  od  miejsca  (adresu)  jej 
przechowywania i czasu oczekiwania na rozpoczęcie operacji zapisu (odczytu). 

Rozróżnia się pamięci: 

 

statyczne  SRAM  –  komórką  pamiętającą  jest  przerzutnik  bistabilny  (najczęściej 
asynchroniczny  typu  RS)  w  technologii  MOS  lub  technologii  bipolarnej.  Zapisana 
informacja  utrzymuje  się  w  nich  dopóki  nie  zostanie  zastąpiona  inną  albo  nie  zaniknie 
napięcie zasilające. 

 

dynamiczne  DRAM  –  funkcje  elementów  pamiętających  pełnią  pojemności  wejściowe 
tranzystorów  MOS  gromadzące  ładunek  lub  odprowadzające  go.  Zawartość  tych 
elementów musi być odświeżana.  

 

W  pamięci  RAM  komórki  ułożone  są w  słowa, wybierane  wejściem adresowym  Całość 

można  przedstawić  jako  dwuwymiarową  matrycę  składającą  się  z  m  słów  n  bitowych, 
czasami podzieloną na robocze obszary zwane np. strefami. Dekoder wejściowy oraz wyjścia 
współpracują  z  rejestrami  równoległymi,  gdyż  operacja  odczytywania  i  zapisywania 
w pamięci  trwa  z  reguły  kilka  cykli  zegarowych,  podczas  których  zawartość  informacji  na 
szynach adresowej i danych może się zmieniać. W zależności od stanu logicznego na wejściu 
R/W układ komórek pamięciowych przyjmuje informację z rejestru danych (zapisywanie) lub 
wprowadza na rejestr danych (odczytywanie). Poprzez 2-kierunkowy bufor rejestr przekazuje 
lub odbiera informację z szyny danych. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

 

Układy kontroli 
(sterowania) 
wejścia/wyjścia 

Adresy Y 

Matryca 

pamięciowa

 

 

 

 

A

d

re

sy

 X

 

Dekoder Y 

D

ek

o

d

er

 X

 

 

WE/WY 

Rys. 49. Uproszczony schemat funkcjonalny pamięci o dostępie swobodnym 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

60

Pamięć DRAM 

Na  rysunku  50  przedstawiono  rozwiązanie  komórki  pamięci  dynamicznej,  która 

zbudowana  jest  z tranzystora  MOS  oznaczonego jako  T oraz  z  kondensatora  Ca.  Tranzystor 
stanowi  przełącznik  łączący  kondensator  Ca  z  linią  bitu.  Informacja  w  niej  przechowywana 
w postaci  ładunku  zgromadzonego  na kondensatorze o  bardzo małej  pojemności.  W  wyniku 
rozładowania  kondensatora  (Q  =  0)  powstaje  na  nim  napięcie  równe  zeru  logicznemu, 
natomiast w wyniku ładowania – napięcie o wartości odpowiadającej logicznej jedynce. Stan 
ten  jest  nietrwały,  ponieważ  kondensator  ulega  stopniowemu  rozładowaniu,  a  tym  samym 
ładunek  musi  być  co  kilka  milisekund  regenerowany  (odświeżany).  Pojemność  Cs  jest 
pojemnością linii bitu. 

 

 

 

Rys. 50. Dynamiczna komórka pamięci 

 

Typową strukturę pamięci dynamicznej o pojemności 64 kilobitów pokazano na rysunku 51. 

Matryca  pamięciowa  jest  zbudowana  256  kolumn  i  256  wierszy.  W  celu  zmniejszenia  liczby 
końcowej  pamięci  dynamicznej  i  ułatwienia  jej  odświeżania,  wejścia  adresowe  są 
multipleksowane. Adresowanie polega na podaniu najpierw ośmiu bardziej znaczących bitów 
adresu  (adres  wiersza),  a  następnie  ośmiu  mniej  znaczących  bitów  (adres  kolumny).  Adres 
wiersza  jest  wpisywany  z  wejść  adresowych  do  rejestru  wiersza  RR  przy  narastającym 
zboczu  sygnału  RAS  (ang.  Row  Addres  Select).  Stąd  poprzez  demultiplekser  (dekoder 
adresu) wybierany jest odpowiadający mu wiersz. Adres kolumny jest wpisywany z wejść do 
rejestru  kolumny  CR  przy  narastającym  zboczu  sygnału  CAS  (ang.  Column  Addres  Select). 
Stąd  poprzez  demultiplekser  wybierana  jest  odpowiadająca  mu  kolumna.  Jednoczesne 
wybranie  wiersza  i  kolumny  w  matrycy  odpowiada  wskazaniu  ściśle  określonej  komórki 
pamięci. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

61

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Rys. 51. Struktura pamięci dynamicznej RAM 

 

Gdy  wejście  WE  =  0  wówczas  zawartość  wybranej  komórki  jest  przesyłana  na  wyjście 

układu  (operacja  czytania  danych  z  komórki  pamięci).  Gdy  natomiast  WE  =  1  następuje 
zapisanie informacji wejściowej do komórki wybranej według odpowiedniego adresu. 

 

Pamięć SRAM 

Na  rysunku  52  przedstawiono  schemat  podstawowej  komórki  pamięci  statycznej. 

Zasadniczą  częścią  komórki  jest  przerzutnik  bistabilny  zbudowany  z  tranzystorów  T

1

  i  T

2

Tranzystory T

3

 i T

4

 pełnią funkcję kluczy przyłączających i odłączających przerzutnik od linii 

bitów.  Podczas  odczytywania  (zapisywania)  informacji  z  komórki  pamięci  stanowią  one 
zwarcie, przyłączając przerzutnik do wejścia (wyjścia) – linia bitu. 

Poszczególne  pamięci  tworzą  matrycę  zbudowaną  z  wierszy  i  kolumn.  Położenie 

komórki w takiej matrycy określa adres składający się z numeru wiersza i numeru kolumny. 

 
 
 
 
  
 

 
 

 
 
 

 

 

Rys. 52. Schemat elementarnej komórki pamięci statycznej RAM 

 
Pamięci stałe ROM 

Pamięć stała zawiera informację, która nie może być zmieniona w czasie pracy systemu 

cyfrowego, realizuje tylko operację odczytu. Zapis informacji jest dokonywany  jednokrotnie 
u producenta. Pamięć ROM dla każdego adresu doprowadzonego do jej wejścia wyprowadza 
na  wyjście  (zazwyczaj  równolegle,  4-  lub  8-  bitowe)  pewien  zestaw  bitów  np.  pamięć 
o  organizacji  1Kx8  wydaje  1024  zestawy  ośmiobitowe  w  odpowiedzi  na  1024  stany 

T

1

 

T

2

 

3

 

4

 

C

 

c

 

+U 

 

Q 

Linia 

 bitu 

Linia 

 wyboru

wiersza 

Wejście - 

/wyjście 

Wejście - 

/wyjście 

Linia 

 bitu 

Rejestr 

wiersza 

RR 

Adres 

we 

RAS 
CAS 

WE 

Matryca 

pamięciowa 

256 x 256 

 

255 

Wzmocnienie 

kolumn i układy 

we-wy 

0 255 

Linie 

wierszy 

Układy 

stero- 

wania 

Rejestr 

kolumn 

CR 

wy 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

62

wejściowe określone przez stany 10 linii adresowych. Pamięci stałe nie tracą zapisanej w nich 
informacji po wyłączeniu (przy zaniku) napięcia zasilającego. 

Ze względu na sposób programowania pamięci ROM wyróżnia się: 

 

pamięć  programowana  maską  MROM  bitową  strukturę  jej  wnętrza  ustala  się  w  czasie 
produkcji (macierz tranzystorów MOS). 

 

programowalna  pamięć  stała  PROM  –  programowana  przez  użytkownika  przez 
przepalanie  cienkich  połączeń  po  odpowiednim  ich  zaadresowaniu  i  po  odprowadzeniu 
właściwych  sygnałów  sterujących.  Pamięci  PROM  są  dość  szybkie  (25

÷

50  ns),  które 

pobierają  dużo  mocy  (bipolarne  0,5

÷

1  W),  o  małych  i  średnich  pojemnościach  do  8KB 

Są to pamięci bipolarne i są wykonywane w technice MOS. 

 

reprogramowalna  pamięć  stała  EPROM  –  bity  informacji  są  zapisywane  jako  ładunki 
elektryczne  na  pływających  bramkach  tranzystorów  MOS.  Kasowanie  tych  ładunków 
z  bramek  następuje  przez  naświetlenie  matrycy  pamięciowej  promieniami  UV  – 
ultrafioletowymi o dużej  intensywności przez kilkadziesiąt minut (gdy w obudowie tych 
pamięci  znajdują się okienka kwarcowe przepuszczające ultrafiolet), lub promieniami  X 
(gdy  obudowa  układu  jest  nieprzezroczysta).  Pamięci  EPROM  są  niezbyt  szybkie  (200 
ns), pobierają  niewiele  mocy  i  mają duże  pojemności  (od 8KB  do  12KB).  Pamięci  tego 
typu produkuje się techniką NMOS i CMOS. 

 

elektrycznie  kasowalne  EEPROM  –  zachowuje  się  jak  pamięć  EPROM,  ale  jest 
programowana  i  kasowana  elektrycznie,  napięciem  +5  V,  bez  wyjmowania  z  układu 
aplikacyjnego.  Polega  to  na  podaniu  impulsów  prądowych  o  określonych  parametrach 
(wartość,  kształt,  czas  trwania),  które  powodują  przepalenie  połączeń  matrycy 
pamięciowej. Czas programowania pamięci EEPROM jest długi i wynosi ok. 100 

µ

s. 

 

pamięci typu flash jest rodzajem pamięci EEPROM, w którym możliwe jest zapisywanie 
i kasowanie zawartości wielu komórek pamięci naraz. Zwykle EEPROMy nie pozwalają 
na  zapis  więcej  niż  jednej  komórki  pamięci  jednocześnie,  co  powoduje  wielokrotnie 
zmniejszoną prędkość zapisu w porównaniu z młodszymi pamięciami typu flash. Moduły 
pamięci  flash  bardzo wolno zużywają się wraz z  wielokrotnymi operacjami czyszczenia 
i zapisu. Pamięć flash jest produkowana w dwóch rodzajach: NAND i NOR. Nazwy tych 
rodzajów  pochodzą  od  typu  użytej  bramki  logicznej  z  której  zbudowana  jest  każda 
z komórek pamięci. 
 
Pierwszym opracowanym rodzajem pamięci była pamięć flash oparta na bramkach NOR. 

Czas  zapisu  i  czyszczenia  tego  rodzaju  pamięci  jest  dosyć  długi,  jednak  posiada  w  swoim 
standardzie pełny interfejs dostępu do danych oraz adresowania, co pozwala na bardzo szybki 
odczyt  dowolnej  komórki  pamięci.  Pamięć  ta  jest  z  tego  powodu  dobra  do  przechowania 
różnego  typu  programów,  niewymagających  częstych  aktualizacji, 

na  przykład 

oprogramowanie  aparatu  cyfrowego  lub  notatnika  elektronicznego.  Flash  oparty  na  NOR 
w  zależności  od  wersji  pozwala  uzyskać  od  10  do  100  tysięcy  bezawaryjnych  cykli  zapisu. 
Pamięci  flash  typu  NAND,  w  porównaniu  do  pamięci  flash  typu  NOR,  posiadają  znacznie 
krótszy  czas  zapisu  i  czyszczenia  oraz  wytrzymałość  dziesięciokrotnie  większą. 
Dodatkowymi  zaletami  jest  zwiększona  gęstość  upakowania  informacji,  a  co  za  tym  idzie 
zmniejszony  koszt  jednego  bita  danych. Interfejs  tej  pamięci  zapewnie  sekwencyjny  dostęp, 
przez  co  jest  wykorzystywana  w  różnego  rodzajach  pamięciach  masowych,  w  kartach 
PCMCIA oraz kartach pamięci wykorzystywanych w aparatach fotograficznych oraz MP3 – 
playerach. 
 
Przetworniki cyfrowo-analogowe 

Przetwornik  cyfrowo-analogowy  (ang.  Digital-to-Analog  Converter)  jest  to  układ 

przetwarzający dyskretny sygnał cyfrowy na równoważny mu sygnał analogowy. Przetwornik 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

63

ma  n  wejść  i  jedno  wyjście.  Liczba  wejść  zależy  od  liczby  bitów  słowa  podawanego  na 
wejście przetwornika (np. dla słowa trzybitowego – trzy wejścia a

1

, a

2

, a

3

). Natomiast na jego 

wyjściu  pojawia  się  informacja  analogowa  (np.  w  postaci  napięcia).  Napięcie  na  wyjściu 
przetwornika  jest  proporcjonalne  do  napięcia  odniesienia  oraz  do  liczby  (n-bitowe  słowo) 
zapisanej  w  kodzie  dwójkowym.  Wartość  tego  napięcia  można  obliczyć  korzystając  ze 
wzoru: 

+

+

+

±

=

n

n

odn

wy

a

a

a

U

U

2

...

2

2

2

2

1

1

 

 
gdzie: 

 

U

odn

 – napięcie odniesienia, 

 

współczynniki a

1

, ..., a

n

 – bity wejściowe przyjmujące wartość 0 lub 1. 

 
Bit  a

1

,  jest  nazywany  najbardziej  znaczącym  bitem  –  MSB  (ang.  Most  Significant  Bit), 

bit  a

n

  –  najmniej  znaczącym  bitem  –  LSB  (ang.  Least  Significant  Bit).  Znak  napięcia 

wyjściowego zależy od tego, czy przetwornik C/A odwraca czy nie odwraca fazy. 

 
Najważniejszymi parametrami przetwornika C/A są: 

 

rozdzielczość – najmniejsza zmiana sygnału wyjściowego, określona wzorem: 
 

n

odn

U

U

2

=

 

 

 

błąd  bezwzględny  –  największa  różnica  między  zmierzonym  napięciem  wyjściowym 
a obliczonym z powyższego wzoru; 

 

błąd względny – stosunek błędu bezwzględnego do wartości napięcia odniesienia. 

 

Na  rysunku  53  przedstawiono  idealną  i  rzeczywistą  charakterystykę  przetwornika  C/A 

dla słowa trzybitowego. 

 

 

 

Rys. 53. Charakterystyka przejściowa przetwornika C/A: 1 – idealna, 2 – rzeczywista 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

64

Najprostszą konstrukcją przetwornika C/A jest układ o przetwarzaniu prądowym. Jest to 

wzmacniacz sumujący zbudowany z użyciem wzmacniacza operacyjnego (rysunek 54a). 

Napięcie wyjściowe układu ma postać: 

+

+

+

=

R

a

R

a

R

a

R

a

RU

U

n

n

odn

wy

1

3

2

1

2

...

4

2

2

 

 

Jest ono równe co do modułu spadkowi napięcia na rezystorze łączącym wyjście układu 

z wejściem odwracającym wzmacniacza operacyjnego. Wartość napięcia wyjściowego zależy 
od  wartości  prądu  płynącego  przez  ten  rezystor,  regulowanej  położeniem  przełączników 
(kluczy).  Pozycja  lewa  przełącznika  odpowiada  wartości  0  danego  bitu  wejściowego, 
natomiast  pozycja  prawa  odpowiada  wartości  l.  Jeżeli  przełącznik  jest  ustawiony  w  lewej 
pozycji, to prąd płynący w tej gałęzi spływa do masy, natomiast jeżeli jest w prawej pozycji, 
to  prąd  ten  dodaje  się  do  prądu  płynącego  przez  rezystor  w  pętli  sprzężenia,  powodując 
zwiększenie  spadku  napięcia  na  nim,  a  tym  samym  zwiększenie  (co  do  modułu)  wartości 
napięcia  wyjściowego.  Przez  rezystory  dołączone  do  kluczy  płynie  cały  czas  taki  sam  prąd, 
bez względu na ich pozycję. 

 

 

  

 

Rys. 54. Przetwornik C/A o przetwarzaniu: a) prądowym, b) napięciowym 

 
Modyfikacją  tego  rozwiązania  jest  układ  o  przetwarzaniu  napięciowym  pokazany  na 

rysunku 54b. Działa on na podobnej zasadzie. Zmieniając położenie przełączników, ustala się 
wartość  prądu  płynącego  w  pętli  sprzężenia  zwrotnego  wzmacniacza  operacyjnego.  Gdy 
przełącznik  jest  dołączony  do  źródła  napięcia  odniesienia,  wówczas  przez  rezystor  płynie 
prąd (jak w układzie z przetwarzaniem prądowym). Gdy natomiast przełącznik jest połączony 
z masą, przez rezystor nie płynie prąd. Wartość napięcia wyjściowego oblicza się korzystając 
ze wzoru obowiązującego dla układu z rysunku 54a. 

 
Wadą  tego  typu  przetworników  jest  konieczność  stosowania  rezystorów  o  znacznie 

różniących  się  wartościach,  np.  jeśli  dla  pierwszego  bitu  8-bitowego  słowa  wejściowego 
rezystancja  wynosi  100  Ω,  to  dla  ostatniego  –  12,8  W.  Powoduje  to,  że  przez  rezystor 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

65

o  najmniejszej  wartości  płyną  względnie  duże  prądy,  co  znacznie  zmniejsza  niezawodność 
działania układu (zwiększa jego awaryjność). 

 
Wady tej nie ma przetwornik pokazany na rysunku 55. Składa się on z układu wtórników 

(W1,  W2,  W3),  układu  sumującego  (W4),  źródła  napięcia  odniesienia  oraz  kluczy 
analogowych  (P0,  P1,  P2)  sterowanych  wejściowym  sygnałem  cyfrowym.  Ustawienie 
wartości  (0  lub  1)  bitu  słowa  sterującego  powoduje  dołączanie  lub  odłączanie  układu 
sumującego  od  źródła  napięcia  Uodn.  Pozycja  lewa  przełącznika  odpowiada  wartości 
0  danego  bitu  wejściowego,  natomiast  pozycja  prawa  odpowiada  wartości  1.  Wzmacniacze 
W1,  W2  i  W3,  pracujące  jako  wtórniki,  dają  na  wyjściu  napięcia  równe  odpowiednio: 
połowie, jednej czwartej i jednej ósmej wartości napięcia odniesienia. 

 

 

 

Rys. 55. Przetwornik C/A zbudowany z wtórników 

 
Omówimy działanie tego przetwornika dla trzech sygnałów wejściowych: 

1)  Gdy  b

0

,  b

1

,  b

2

  =  000,  wszystkie  przełączniki  są  połączone  z  masą,  a  zatem  na  wejściu 

układu sumującego pojawi się napięcie o wartości zero. 

2)  Gdy  b

0

,  b

1

,  b

2

  =  010,  na  wejście  układu  sumującego jest  podawane  napięcie o  wartości 

poprzez przełącznik P2 oraz napięcie o wartości zero poprzez przełączniki P1 i P3. 

3)  Gdy  b

0

,  b

1

,  b

2

  =  111,  na  wejścia  układu  sumującego jest  podawane  napięcie o  wartości 

poprzez  przełącznik  P1,  napięcie  o  wartości,  poprzez  przełącznik  P2  oraz  napięcie 
o wartości, poprzez przełącznik P3. 
 

Przetworniki analogowo-cyfrowe 

Przetwornik  analgowo-cyfrowy  (ang.  Analog-to-Digital  Converter)  przetwarza  sygnał 

analogowy  na odpowiadający  mu dyskretny sygnał cyfrowy. Jest to układ o  jednym wejściu 
i  n  wyjściach.  Otrzymana  w  wyniku  przetwarzania  liczba  dwójkowa  jest  proporcjonalna 
do wartości analogowego sygnału wejściowego 

 

+

+

+

=

n

n

odn

we

a

a

a

U

U

2

...

2

2

2

2

1

1

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

66

Charakterystykę bezpośredniego przetwornika A/C przedstawiono na rysunku poniżej. 

 

Rys. 56. Charakterystyka przejściowa przetwornika A/C: 1 – idealna, 2 – rzeczywista 

 

Przetworniki A/C charakteryzują trzy podstawowe parametry: 

 

czas  konwersji  (przetwarzania)  –  czas,  jaki  upływa  między  podaniem  sygnału 
wejściowego  rozpoczynającego  przetwarzanie  a  pojawieniem  się  na  wyjściu  sygnału 
cyfrowego, 

 

rozdzielczość – definiowana tak jak dla przetwornika C/A, 

n

odn

U

U

2

=

 

n – liczba bitów słowa wyjściowego;  

 

błąd kwantyzacji (lub) odchyłka rzeczywistej charakterystyki schodkowej od charakterystyki 
idealnej. 
 
Istnieje  wiele  metod  przetwarzania  sygnału  analogowego  na  cyfrowy.  Wyróżnić  można 

dwie zasadnicze grupy: 
1)  Metody bezpośrednie: bezpośredniego porównania i kompensacyjne. 
2)  Metody pośrednie: czasowe i częstotliwościowe. 
 

Na  poniższym  rysunku  przedstawiono  schemat  układu  przetwarzania  sygnału  metoda 

bezpośredniego porównania. 

 

 

 

Rys. 57. Przetwornik A/C przetwarzający sygnał metoda bezpośredniego porównania 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

67

Napięcie  wejściowe  w  przetworniku  n-  bitowym  jest  jednocześnie  porównywane  z  2

n

-1 

poziomami  odniesienia  przy  użyciu  2

n

-1  komparatorów  napięcia.  Cyfrowe  stany  wyjściowe 

komparatorów, po odpowiednim zakodowaniu, dają cyfrową informację wyjściową w kodzie 
dwójkowym.  Zaleta  to  duża  szybkość  przetwarzania  (  suma  czasu  odpowiedzi  jednego 
komparatora  i  czas  kodowania).  Wadą  jest  konieczność  stosowania  bardzo  dużej  liczby 
komparatorów w przetwornikach wielobitowych. Są produkowane monolityczne przetworniki 
o rozdzielczości 6 do 8 bitów i czasach przetwarzania 10÷20 ns. 

 
Schemat  blokowy  przetwornik  A/C  wykorzystujący  metodę  kompensacji  wagowej 

przedstawia rysunek poniżej. 

 

 

 
Rys.  58.
  Przetwornik  A/C:  a)  schemat  blokowy  przetwornika,  b)  przykładowy  przebieg  napięcia 

kompensującego dla przetwornika 6-bitowego 

 
Przetwarzanie  polega  na  kolejnym  porównywaniu  napięcia  przetwarzanego  U

i

 

z napięciem  odniesienia  U

k

  wytwarzanym  w  przetworniku  C/A.  W  pierwszej  kolejności 

następuje  porównanie  napięcia  wejściowego  z  połową  napięcia  pełnego  zakresu 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

68

przetwarzania. Rezultat tego porównania ustala w rejestrze wartość cyfrową najstarszego bitu 
słowa  wyjściowego  oraz  wartość  najstarszego  bitu wejścia  przetwornika  C/A.  W  przypadku 
przetwornika  n-  bitowego  pełny  cykl  przetwarzania  obejmuje  n  porównań.  Zaletą  jest 
możliwość budowania przetworników wielobitowych o dużej szybkości przetwarzania, gdyż 
czas  przetwarzania  jest  równy  nT,  gdzie  T  jest  czasem  jednego  cyklu  porównania.  Można 
uzyskać wartość T rzędu 100ns.  

 
Wśród  metod  czasowych  przetwarzania  szczególnego  znaczenia  nabrała  metoda 

dwukrotnego całkowania, która należy do najdokładniejszych technik przetwarzania A/C. Jest 
to jednak metoda wolna. 

 

4.3.2.  Pytania sprawdzające 

 

Odpowiadając na pytania, sprawdzisz, czy jesteś przygotowany do wykonania ćwiczeń. 

1.  W jaki sposób definiuje się układ kombinacyjny? 
2.  Jak można wyjaśnić pojecie układu sekwencyjnego? 
3.  Jak dzielimy liczniki ze względu na sposób zliczania? 
4.  Jakie są różnice pomiędzy licznikami asynchronicznymi a synchronicznymi?  
5.  Jakie  zależności  stanów  dotyczą  liczników  zliczających  w  przód  a  jakie  zliczających 

wstecz? 

6.  Wyjaśnij pojęcie: licznik rewersyjny. 
7.  Jakie zadania ma do spełnienia rejestr? 
8.  Jak dzielimy rejestry ze względu na sposób wprowadzania i wyprowadzania informacji? 
9.  Jak można wyjaśnić dodawanie dwóch bitów? 
10.  Jak działa dwuargumentowy sumator jednobitowy? 
11.  Jak zbudowany jest sumator kaskadowy? 
12.  Jak można wyjaśnić pojęcie komparator cyfrowy? 
13.  Jak klasyfikujemy pamięci? 
14.  Jakie są najważniejsze parametry pamięci? 
15.  Jak oblicza się pojemność pamięci? 
16.  Jak zbudowana jest komórka pamięci statycznej? 
17.  Jak zbudowana jest komórka pamięci dynamicznej? 
18.  Jak klasyfikuje się pamięci RAM? 
19.  Jak klasyfikuje się pamięci ROM? 
20.  Jaka jest zasadnicza różnica pomiędzy przetwornikami A/C a C/A? 
21.  Jakie są podstawowe parametry przetworników C/A i A/C? 
22.  Jakie występują konstrukcje przetworników C/A? 
23.  Jakie rodzaje przetwarzania stosuje się dla przetworników A/C? 

 

4.3.3.  Ćwiczenia 

 
Ćwiczenie 1 

Przedstaw  parametry  pamięci  półprzewodnikowych.  Omów  sposób  wyznaczenia  ilości 

linii szyny adresowej układu pamięci o pojemności 16 MB, jeżeli ilość linii szyny danych jest 
równa 32. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

69

Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać w materiałach dydaktycznych parametry pamięci półprzewodnikowych, wzoru 

na pojemność pamięci, 

2)  dokonać  analizy  wzoru,  uwzględniając  oznaczenia,  dotyczące  ilości  linii  adresowych 

i danych, 

3)  rozpoznać przedrostek Mega i termin Bajt w pojemności pamięci, 
4)  wyznaczyć ze wzory szukaną ilość linii adresowych i sprawdzi poprawność obliczeń. 

 
Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika. 

 
Ćwiczenie 2 

Dane  są  dwie  liczby  całkowite  zapisane  w  systemie  binarnym  L1 = 0001  

i L2 = 0110. Dokonaj operacji dodawania tych liczb.  

 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać w materiałach dydaktycznych sumator dwuargumentowy i kaskadowy, 
2)  odnaleźć odpowiednią tabelę, według której działa sumator, 
3)  wykonać obliczenia, uwzględniając przeniesienia, 
4)  przeanalizować poprawność dodawania, 
5)  uzasadnić otrzymane wyniki, wykorzystując dodawanie liczb w systemie dziesiętnym. 

 
Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika. 

 
Ćwiczenie 3 

Opracuj  licznik  asynchroniczny,  zbudowany  z  przerzutników  JK  zliczający  w  przód  

o  pojemności  16.  Narysuj  przebiegi  czasowe  na  wyjściach  wszystkich  przerzutników  przy 
założeniu, że dany jest sygnał zegarowy, doprowadzony do wejścia pierwszego przerzutnika. 

 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać w materiałach dydaktycznych licznik asynchroniczny, 
2)  odnaleźć sposób łączenia przerzutników do budowy liczników zliczających w przód, 
3)  odszukać  sposób  określenia  ilości  przerzutników  do  budowy  liczników  o  określonej 

pojemności, 

4)  narysować licznik, uwzględniając powyższe warunki, 
5)  narysować przebiegi czasowe na wejściu i na wszystkich wyjściach licznika, 
6)  sprawdzić przebiegi czasowe z sekwencjami licznika.

 

 

Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

70

4.3.4.  Sprawdzian postępów 
 

Czy potrafisz: 
 

Tak 

Nie 

1) 

dokonać podziału liczników ze względu na sposób zliczania?  

 

 

2) 

wskazać różnice pomiędzy licznikami asynchronicznymi a synchronicznymi? 

 

 

3) 

określić jakie zadania ma do spełnienia rejestr? 

 

 

4) 

podać  jak  dzielimy  rejestry  ze  względu  na  sposób  wprowadzania 
i wyprowadzania informacji? 

 

 

5) 

wyjaśnić dodawanie dwóch bitów? 

 

 

6) 

opisać jak zbudowany jest sumator kaskadowy? 

 

 

7) 

wyjaśnić pojęcie komparator cyfrowy? 

 

 

8) 

zdefiniować najważniejsze parametry pamięci? 

 

 

9) 

opisać jak zbudowana jest komórka pamięci dynamicznej? 

 

 

10)  klasyfikować różne pamięci ROM? 

 

 

11)  podać jakie są podstawowe parametry przetworników C/A i A/C? 

 

 

12)  opisać rodzaje przetwarzania stosowane w przetwornikach A/C? 

 

 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

71

4.4.  Wybrane aspekty układów cyfrowych 

 
4.4.1  Materiał nauczania 

 

Technologia TTL i CMOS 

Porównanie parametrów układów pochodzących z obu rodzin: Napięcie zasilania. Układy 

TTL  wymagają  zasilania  +5  V  +/–5%,  podczas  gdy  układy  CMOS  pracują  poprawnie 
w szerszym zakresie: od +2 V do +6 V - układy serii HC i AC, a od +3 V do +15 V – układy 
serii  4000B  i  74C.  Serie  HCT  i  ACT  z  rodziny  CMOS,  projektowane  specjalnie  jako 
zamienniki układów TTL, wymagają napięcia zasilania o wartości +5 V. 

 

Wejścia bramek 

Wejście  bramki  TTL  utrzymywane  w  stanie  niskim  zachowuje  się,  z  punktu  widzenia 

układu  sterującego,  jako  źródło  prądowe  (o  typowej  wydajności  0,25  mA  dla  układów  
LS-TTL).  Wobec  tego,  aby  utrzymać  stan  niski,  trzeba  odebrać  ten  prąd  z  wejścia.  Nie 
sprawia  to  większych  kłopotów  wtedy,  gdy  mamy  do  czynienia  tylko  z  układami  TTL, 
ponieważ wyjścia TTL (nasycony tranzystor n-p-n) są w stanie wchłonąć dużo prądu. Sprawa 
się komplikuje,  jeżeli  bramka  TTL  jest sterowana sygnałem  z wyjścia  układu  innej  rodziny. 
Inaczej jest z układami CMOS, dla których wartość prądu wejściowego jest równa zeru. Próg 
przełączania  bramki  TTL  odpowiada  dwóm  spadkom  napięcia  na  diodzie  (ok.  1,3  V).  Próg 
przełączania  bramki  CMOS  wynosi  około  1/2  napięcia  zasilania,  ale  może  ulegać  dużym 
wahaniom  (od  1/3  do  2/3  wartości  napięcia  zasilania).  Układy  serii  HCT  i  ACT 
zaprojektowano  tak,  aby  wartości  ich  napięć  progowych  były  małe,  zgodne  z  wartościami 
napięć  progowych  układów  TTL.  Pamiętajmy,  że  napięcie  wyjściowe  bipolarnego  układu 
TTL  nie  może  osiągać  wartości  równej  +5  V  (patrz  dalej).  Układy  CMOS  są  wrażliwe  na 
zniszczenie  przez  ładunki  elektrostatyczne  w  czasie  manipulacji.  Dla  obu  rodzin 
niewykorzystane  wejścia  powinny  zostać  dołączone  do  napięcia  poziomu  wysokiego  lub 
niskiego, zależnie od potrzeby (więcej na ten temat powiemy później). 

 

Wyjścia bramek 

Stopień  wyjściowy  bramki  TTL  w stanie  niskim  zachowuje  się  jak  nasycony  tranzystor 

zwierający  wyjście  do  masy,  w  stanie  wysokim  jak  wtórnik  (z  napięciem  wyjściowym  na 
poziomie około 2 diodowych spadków napięcia poniżej wartości  napięcia zasilania). Obwód 
wyjściowy dowolnego układu CMOS (dotyczy to również serii HCT i ACT) jest realizowany 
jako  dwa  polowe  tranzystory  MOS,  łączące  wyprowadzenie  wyjścia  z  masą  lub  szyną 
dodatniego  napięcia  zasilającego.  Oznacza  to,  że  w  tym  przypadku  wartość  napięcia 
wyjściowego może być dowolna z zakresu od 0 V do U+. Układy szybkie (serie F, AS; AC, 
ACT)  mają  na  ogół  większą  wydajność  stopnia  wyjściowego  niż  układy  wolniejsze 
(LS; 4000B, 74C, HC, HCT). 

Szybkość  i  moc.  Układy  TTL  pobierają  w  stanie  statycznym  ze  źródła  zasilania  dość 

dużo prądu.  Wartość  pobieranego  prądu  jest większa  dla  układów szybszych  (serie  AS  i  F). 
Zakres szybkości układów TTL rozciąga się od 25 MHz dla serii LS do około 100 MHz dla 
serii  AS  i  F.  Układy  rodziny  CMOS  nie  pobierają  w  ogóle  prądu  w  stanie  statycznym. 
Niemniej  jednak  moc  zasilania  rośnie  w  nich  liniowo  wraz  ze  wzrostem  częstotliwości 
(przełączanie  obciążeń  pojemnościowych  wymaga  sporych  prądów)  i  układy  CMOS 
pracujące blisko górnej dopuszczalnej częstotliwości pobierają ze źródła zasilania niemal tyle 
samo  mocy co układy TTL (rysunek 57). Zakres  szybkości układów CMOS rozciąga  się od 
około 2 MHz (dla układów serii 4000B/74C zasilanych napięciem + 5 V) do około 100 MHz 
(dla układów serii AC/ACT.) 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

72

 

 

Rys. 59. Zależność poboru mocy od częstotliwości 

 

Ogólnie rzecz biorąc, dobre parametry układów CMOS (zerowa wartość spoczynkowego 

prądu zasilania, zakres wartości napięcia wyjściowego od 0 V do U+, duża wartość marginesu 
szumowego)  sprawiają,  że  są  to  układy  z  przyszłością.  Polecamy  stosowanie  układów  serii 
HC  w  większości  nowych  projektów.  W  układach  o  dużej  szybkości  przełączania  należy 
stosować  układy  serii  AC,  w  układach  przeznaczonych  do  pracy  w  szerokim  zakresie 
wartości napięć zasilających, gdzie duża szybkość pracy nie jest konieczna – układy serii 74C 
lub  4000B.  Jeśli  jest  wymagane  ścisłe  dostosowanie  się  do  standardu  TTL,  należy  używać 
układów  serii  HCT  (lub  LS)  –  dla  układów  wolniejszych,  i  układów  serii  ACT  (lub  AS 
bądź F) – dla układów szybszych. W niektórych zastosowaniach o dużej gęstości upakowania 
(pamięci,  mikroprocesory)  preferowane  są  układy  NMOS,  pomimo  ich  stosunkowo  dużego 
poboru mocy. W zastosowaniach o największych szybkościach (ponad 100 MHz) stosuje się 
albo układy ECL - gdy  częstotliwość pracy  nie przekracza 500 MHz – albo układy logiczne 
bazujące  na  GaAs  -  dla  częstotliwości  do  4  GHz.  W  obrębie  jednej  rodziny  obowiązuje 
zasada, że wyjścia danego układu przystosowane są do bezpośredniego sterowania wejściami 
innych  układów,  więc  nie  trzeba  martwić  się  o  progi  przełączania,  prąd  wejściowy  itp.  Na 
przykład,  w  przypadku  układów  TTL  lub  CMOS  z  każdego  wyjścia  można  wysterować 
jednocześnie  co  najmniej  10  wejść  (obowiązującym  terminem  określającym  tę  cechę  jest 
obciążalność;  układy  TTL  mają  obciążalność  10),  tak  że  nie  trzeba  stosować  żadnych 
specjalnych środków zapewniających dopasowanie układów. 

 

Budowa bramek scalonych 

Bramka  NAND  w  obu  wersjach,  tj.  TTL  i  CMOS,  spełnia  tę  samą  funkcję  logiczną, 

wartości  jej poziomów logicznych oraz  inne  jej właściwości (szybkość,  moc zasilania, prądy 
wejściowe  itp.)  różnią  się  znacznie  w  obu  przypadkach.  Ogólnie  rzecz  biorąc,  należy  być 
ostrożnym,  gdy  zamierza  się  używać  równocześnie  układów  obu  rodzajów.  Aby  zrozumieć 
różnice,  popatrzmy  na  schematy  bramek  NAND  na  rysunku  60.  Bramka  CMOS  jest 
wykonana  z  par  komplementarnych  tranzystorów  polowych  typu  MOS,  pracujących  jako 
przełączniki  a  nie  jako  wtórniki.  Włączony  tranzystor  polowy  zachowuje  się  jak  rezystor  
o  małej  wartości  rezystancji  zwierający  sygnał  do  właściwej  szyny  zasilającej.  Oba  wejścia 
muszą być w stanie H, aby włączyć połączone szeregowo tranzystory T3 i T4 oraz wyłączyć 
tranzystory  obciążające  T1  i  T2.  Wymusza  to  na  wyjściu  stan  niski,  mamy  zatem  do 
czynienia  z  bramką  NAND.  Tranzystory  T5  i  T6  stanowią  typowy  inwerter  CMOS,  który 
wraz  z  bramką  NAND  realizuje  bramkę  AND.  Ten  przykład  powinien  wyjaśnić,  w  jaki 
sposób można zbudować bramkę AND, NAND, OR lub NOR o dowolnej liczbie wejść.  

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

73

 

 

 

Rys. 60. a) Bramka NAND LS-TTL, b) bramka AND CMOS 

 
Bramka  NAND  z  bipolarnej  serii  LS-TTL  (Schottky´ego  małej  mocy)  składa  się  

z  kaskadowo  połączonych:  bramki  diodowo-rezystorowej,  wykonanej  według  schematu  
z rysunku 60, inwertera z pojedynczym tranzystorem i stopnia wyjściowego typu „push-pull”. 
Gdy  oba  wejścia  są  w  stanie  wysokim,  prąd  płynący  przez  rezystor  20  kΩ  utrzymuje 
tranzystor  T1  w  stanie  włączenia,  co  z  kolei  powoduje  nasycenie  tranzystora  T4  i  zatkanie 
tranzystorów T2, T3, pracujących w układzie Darlingtona, Na wyjściu bramki ustala się stan 
niski.  Jeśli  co  najmniej  jedno  wejście  będzie  w  stanie  niskim,  tranzystor  T1  zostanie 
wyłączony, wyłączy się również tranzystor T4, natomiast  na wyjściu pojawi się stan wysoki 
w  wyniku  wtórnikowego  działania  układu  T2,  T3.  W  celu  zwiększenia  szybkości  działania,  
|w układzie zastosowano diody i tranzystory Schottky´ego. 

Zauważmy, że w odróżnieniu od prezentowanych wcześniej bramek dyskretnych, stopnie 

wyjściowe  bramek  TTL  i  CMOS  zawierają  obciążenie  aktywne  dołączone  do  szyny 
dodatniego napięcia zasilania. 

 

Układy trójstanowe i z otwartym kolektorem 

Bramki  TTL  i  CMOS  mają  na  wyjściu  wzmacniacz  przeciwsobny.  Wyjście  jest 

utrzymywane  w  stanie  wysokim  lub  niskim  przez  włączony  albo  tranzystor  bipolarny  albo 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

74

polowy  tranzystor  MOS.  Niemal  wszystkie  układy  cyfrowe  mają  tego  typu  wyjście 
z  obciążeniem  aktywnym.  W  przypadku  układów  CMOS  rozwiązanie  to  zapewnia  również 
mniejszą  moc  zasilania.  Istnieją  jednak  sytuacje,  w  których  aktywne  obciążenie  jest 
niewygodne.  Wyobraźmy  sobie,  na przykład, system komputerowy, w którym wiele  bloków 
funkcjonalnych  musi  wymieniać  dane.  W  przypadku  stosowania  szyny  lub  kilku  szyn 
tworzących  magistralę,  nie  można  jej  sterować  sygnałami  dwustanowymi  z  wyjść  bramek, 
ponieważ w żaden sposób nie można odłączyć tych wyjść od wspólnych linii danych (zawsze 
zachodzi  wymuszenie  jakiegoś  stanu:  niskiego  lub  wysokiego  każdej  linii).  Powstaje 
zapotrzebowanie  na  bramki,  których  obwody  wyjściowe  mogą  być  „otwierane”  (czyli 
„rozwierane”).  Takie  układy  istnieją  i  to w  dwóch  odmianach:  jako  układy  trójstanowe  oraz 
układy  z  otwartym  kolektorem.  Te  pierwsze  nie  są  to  układy  logiczne  z  trzema  poziomami 
napięciowymi.  Są  to  zwyczajne  układy  logiczne  z  trzecim  stanem  układu  wyjściowego: 
rozwartym  obwodem  wyjściowym  (rysunek  60).  Stan  osobnego  wejścia  uaktywniającego 
stopień  wyjściowy  określa;  czy  wyjście  układu  zachowuje  się  jak  wyjście  zwyczajnego 
układu  z  aktywnym  obciążeniem,  czy  zostaje  wprowadzone  w  trzeci  stan  (rozwarcia), 
niezależnie od stanu sygnałów na innych wejściach bramki.  

 

 

 

Rys.  61.  Trójstanowa  bramka  NAND  CMOS:  a)  zasada  działania,  b)  realizacja  za  pomocą  wewnętrznych 

bramek CMOS 

 
Wyjścia  trójstanowe  posiadają  zarówno  bramki  jak  i  wiele  innych  układów  cyfrowych, 

m.in.  liczniki,  zatrzaski,  rejestry  itp.  Po  uaktywnieniu  układ  z  wyjściem  trójstanowym 
zachowuje  się  dokładnie  tak  samo,  jak  zwykły  układ  z  obciążeniem  aktywnym,  tzn.  jego 
wyjście  jest  albo  w  stanie  niskim  albo  w  stanie  wysokim.  Gdy  układ  trójstanowy  jest 
nieaktywny,  jego wyjście  jest odłączone od obwodu obciążającego  i wtedy  inny układ  może 
przejąć sterowanie tym obwodem.  

 

Układ z otwartym kolektorem 

Bramka z otwartym kolektorem (lub otwartym drenem) różni się od zwykłej bramki tylko 

brakiem aktywnego obciążenia dolnego tranzystora stopnia wyjściowego (patrz rysunek 62). 
Jeżeli  używa  się  takich  bramek,  to  należy  w  układzie  przewidzieć  zewnętrzne  rezystory 
obciążające.  

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

75

 

 

Rys. 62. Bramka NAND LS-TTL z otwartym kolektorem 

 
Wartość tych  rezystancji  nie  jest  krytyczna. Rezystory o małej  wartości  rezystancji  dają 

zwiększenie  szybkości  i  polepszenie  odporności  na  zakłócenia  kosztem  zwiększenia  mocy 
zasilania  i  większego  obciążenia  układu  sterującego.  Stosowane  są  zazwyczaj  rezystory 
o  wartościach  rezystancji  od  kilkuset  do  kilku  tysięcy  omów.  Wadą  układów  z  otwartym 
kolektorem  jest  mniejsza  szybkość  i  mniejsza  odporność  na  szumy,  w  porównaniu 
z  układami,  które  w  stopniu  wyjściowym  mają  układ  z  aktywnym  obciążeniem.  Przyczyną 
pogorszenia  parametrów  układu  z  otwartym  kolektorem  jest  rezystorowe  obciążenie 
tranzystora  realizującego  jego  stopień  wyjściowy.  Wymienione  wady  układu  z  otwartym 
kolektorem  spowodowały,  że  magistrale  (szyny)  komputerowe  są  prawie  wyłącznie 
sterowane  poprzez  wzmacniacze  z  wyjściami  trójstanowymi.  Istnieją  przypadki,  w  których 
preferuje się układ z otwartym kolektorem (lub otwartym drenem): 

 

sterowanie zewnętrznymi obciążeniami, 

 

tworzenie sumy montażowej (rysunek 63), 

 

wyjścia na magistrale (szyny) zewnętrzne. 
 

 

 

Rys. 63. Suma montażowa 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

76

Łączenie układów TTL i CMOS 

Pobór  prądu  przez  układy  TTL  i  TTL-LS  nie  zależy  praktycznie  od  częstotliwości. 

Wynika  też  stąd,  że  powyżej  pewnej  wartości  częstotliwości  układy  CMOS  pobierają 
w rzeczywistości większy prąd niż układy TTL. Zjawisko to zachodzi jednak przy tak dużych 
częstotliwościach przełączania, że w komputerach nie mamy z nim praktycznie do czynienia. 
Układy  CMOS  mają  też  dodatkową  zaletę:  poziom  przełączania  jest  w  nich  równy 
w  przybliżeniu  połowie  wartości  napięcia  zasilania,  a  więc  impulsy  zakłócające  muszą  tę 
wartość  przekroczyć,  aby  mogły  wpływać  na  pracę  układu.  Inaczej  jest  w  układach  TTL: 
poziom przełączania wynosi tu ok. 0,6 V (przy napięciu zasilania równym 5 V). Oprócz tego 
napięcie zasilające układy TTL  musi  zawierać się w przedziale od 4,75 do 5,25 V, a układy 
CMOS  pracują  przy  napięciach  3÷15  V.  Jako  wadę  logicznych  układów  CMOS  należy 
podkreślić małą obciążalność ich układu wyjściowego (do kilku miliamperów), co może stać 
się  czynnikiem  krytycznym  już  przy  podłączeniu  diody  elektroluminescencyjnej. 
W  przeciwieństwie  do  tego  układy  TTL  dostarczają  prąd  o  natężeniu  10÷40  mA.  Przy 
łączeniu układów CMOS i TTL należy wówczas przestrzegać kilku następujących zasad: 

 

układy CMOS muszą być zasilane napięciem 5 V, tak jak układy TTL, 

 

jedno wyjście układu CMOS może sterować jednym wejściem układu TTL, 

 

do sprzężenia wejścia CMOS z wyjściem TTL najkorzystniej jest stosować układy TTL 
z otwartym kolektorem. 

 

 

 

Rys. 64. Łączenie układów TTL i CMOS 

 

Przykładowe układy scalone bramek cyfrowych serii UCY74 
 

 

 

Rys. 65. 7400: 4x 2-wejściowe bramki NAND 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

77

 

 

Rys. 66. 7402: 4x 2-wejściowe bramki NOR 

 

 

 

Rys. 67.7404: 6x inwerter NOT 

 

 

 

Rys. 68. 7408: 4x 2-wejściowe bramki AND 

 

Układy programowalne 

Charakterystyczną  cechą  układów  programowalnych  są  programowalne  połączenia 

elektryczne  wewnątrz  struktury  krzemowej.  Zależnie  od  użytej  technologii,  połączenia  te  są 
realizowane  za  pomocą  różnego  rodzaju  łączników  W  technologii  bipolarnej  często 
stosowane są  łączniki typu  „bezpiecznika” fuse o postaci ścieżek nichromowych (Ni-Cr)  lub 
tytanowo-wolframowych (Ti-W), które są przepalane w wybranych miejscach. Oznacza to, że 
układ z łącznikami bezpiecznikowymi ma początkowo połączone wszystkie możliwe punkty. 
Innym rodzajem łączników są diody niszczone w procesie przebicia. Są to „antybezpieczniki” 
(antifuse),  które  początkowo  są  wszystkie  rozwarte.  W  układach  FPGA  realizowanych 
technologią  CMOS  stosuje  się  antybezpieczniki  dielektryczne  i  polikrzemowe  amorficzne. 
Wszystkie  łączniki  bezpiecznikowe  i  antybezpiecznikowe  mogą  być  programowane  tylko 
jednokrotnie. 

W  układach  programowalnych,  wytwarzanych  w  technologii  CMOS,  najczęściej 

stosowane  są  łączniki  w  postaci  tranzystorów  NMOS,  sterowanych  przez  stowarzyszone 
komórki  pamięci  nieulotnej  typu  EPROM,  EEPROM  lub  FLASH.  Stosowane  są  również 
odrębne  pamięci  S-RAM.  Ten  rodzaj  łączników  umożliwia  wielokrotne  programowanie 
układu,  co  jest  szczególnie  istotne  w  fazie  projektowania  lub  przy  wprowadzaniu  ulepszeń 
projektowych. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

78

Programowalne struktury logiczne (PLD) 

Najprostszymi  i  najtańszymi  układami  programowalnymi  są  programowalne  struktury 

logiczne  (PLD  –  Programmable  Logie  Device).  Układy  te  są  tak  projektowane  przez 
wytwórców,  aby  każdy  typ  pokrywał  pewien  obszar  podobnych,  potencjalnych  zastosowań. 
Są one wytwarzane i sprzedawane tak samo jak układy standardowe. Natomiast użycie układu 
PLD  do  konkretnego  zastosowania  sprzętowego wymaga  uprzedniego  skonfigurowania  jego 
połączeń  wewnętrznych,  co  generalnie  jest  wykonywane  przez  klienta,  czyli  zazwyczaj 
u wytwórcy urządzeń wykorzystujących układy PLD. 

Układy  PLD  mogą  być  określone  jako  układy  uniwersalne,  które  mogą  być 

skonfigurowane  do  realizacji  wielu  różnych  modułów  funkcjonalnych.  Ograniczeniem  jest 
relatywnie niewielka złożoność  logiczna układów PLD, wyrażana do celów porównawczych 
przez liczbę bramek logicznych w kostce, zazwyczaj nieprzekraczającą 1000. Przy większych 
projektach  stosuje  się  złożone  układy  PLD  (CPLD  –  Complex  PLD)  o  liczbie  bramek  
od 1000 do 15000, a nawet więcej. 

Układy  PLD  są  wytwarzane  jako  układy kombinacyjne (zawierające  bramki  AND  i OR 

oraz  programowalne  inwertery)  oraz  jako  układy  sekwencyjne  (uzupełnione  na  wyjściach 
o  zestaw  przerzutników  D  czyli  rejestr).  Charakterystyczną  cechą  układów  PLD  jest 
regularność struktur sieci bramkowych, wytwarzanych w postaci prostokątnych matryc. 

Analizując  układy  PLD/CPLD  często  operuje  się  nazwą  iloczynu  logicznego  jako 

składnika sumy logicznej. Wygodnie jest w tym znaczeniu używać krótszej nazwy term. 

 

Układy FPLA 

Największe  możliwości  funkcjonalne  zapewniają  układy  FPLA  (Field-Programmable 

Logie  Array),  które  mają  programowalne  dwie  sieci  bramek  (AND  i  OR).  Jeśli  układ  ma 
n wejść, to na wyjściu każdej bramki AND otrzymuje się iloczynowy implikant realizowanej 
funkcji (term), a na wyjściu każdej bramki OR sumę wybranych implikantów (termów). Jeśli 
układ  ma  m  wyjść,  to  znaczy  że  może  realizować  m  funkcji  logicznych  o  n  zmiennych. 
Zasadniczym ograniczeniem jest to, że liczba dostępnych bramek AND w układzie FPLA jest 
znacznie mniejsza  niż teoretyczna  liczba maksymalna dla  n zmiennych, równa 2n. Stan 0 na 
wyjściu bramki AND otrzymuje się przez przyłączenie jej dwu wejść do dwu linii, na których 
jest postać prosta i zanegowana jednej zmiennej wejściowej, zgodnie z prawem Boole'a. 

 

Układy PROM 

Jeśli w  układzie  FPLA  matrycę  AND  wykonać  jako  nieprogramowalną,  to  układ  FPLA 

przekształca  się  w  układ  pamięci  nieulotnej  (PROM,  EPROM,  EEPROM,  FLASH),  pod 
warunkiem  że  zbiór  bramek  AND  obejmuje  wszystkie  możliwe  mintermy  i  wyjścia  nie  są 
używane  jako  wejścia.  Przy  zastosowaniu  układów  PROM  jako  uniwersalnych  układów 
kombinacyjnych,  uzyskuje  się  łatwy  wybór  implikantów  do  realizacji  dowolnej  funkcji 
przełączającej o liczbie zmiennych nie większej od liczby wejść adresowych. Wadą układów 
jest podwajanie pojemności pamięci przy każdorazowym wzroście liczby zmiennych o jeden. 
Ogranicza to takie zastosowania pamięci stałych do liczby zmiennych równej od 10 do 14. 

 

Układy PAL/GAL 

Jeśli  w  układzie  FPLA  matrycę  AND  pozostawić  jako  programowalną,  a  matrycę  OR 

wykonać  jako  nieprogramowalną,  to  otrzymuje  się  popularną  strukturę  logiczną  PLD 
określaną  jako  PAL  (Programmable  Array  Logie).  Pierwsze.  Układy  PAL  były  pierwotnie 
wytwarzane  jako  układy  bipolarne,  kompatybilne  z  układami  TTL  i  programowalne 
jednokrotnie.  Obecnie  są  stosowane  niemal  wyłącznie  podobne  układy  wytwarzane 
w technologii CMOS, spopularyzowane w latach osiemdziesiątych pod nazwą GAL (Generic 
Array  Logie).  Zapewniają  one  niższą  moc  strat,  możliwość  wielokrotnego  programowania 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

79

oraz  stuprocentowe  testowanie  wytwarzanych  układów.  Tej  ostatniej  cechy  nie  mogą  mieć 
układy  programowalne  jednokrotnie,  w  których  zawsze  występuje  nieco  układów 
niesprawnych fabrycznie (zazwyczaj 2÷5%). 

Układy  PAL/GAL  nie  mają  wady układów  PLD  typu  PROM, w  których  matryca  AND 

musi  pokrywać  wszystkie  możliwe  mintermy  dla  danej  liczby  zmiennych  wejściowych. 
Można wybrać  i zaprogramować – podobnie jak  w układach  FPLA – tylko potrzebne termy. 
Ponadto  można  zastosować  metody  minimalizacyjne.  Matryca  OR  jest  nieprogramowalna, 
więc tylko ograniczona  liczba termów (typowo 8 lub 10)  może  być doprowadzona do wejść 
jednej  bramki OR. Jeden term  może  być doprowadzony do wejścia tylko jednej  bramki OR. 
Jeśli ten sam term  jest potrzebny do wejść dwu lub więcej  bramek OR, to trzeba go tworzyć 
z  osobna  dla  każdej  bramki  OR.  Można  jednak  ominąć  to  ograniczenie  korzystając  ze 
struktury dwupoziomowej przy jednoczesnym zwiększeniu liczby dostępnych termów. 

 

Katalog podstawowych bramek cyfrowych 

Tablica  jest  zestawieniem  podstawowych  bramek  dostępnych  w  rodzinach  scalonych 

układów  cyfrowych  TTL  i  CMOS.  Każdą  bramkę  narysowano  w  swej  normalnej  postaci 
(tj. w  logice  dodatniej)  oraz  w  postaci  odpowiedniej  dla  logiki  ujemnej.  Ostatnią  pozycję 
w tablicy zajmuje bramka I-LUB-NIE czyli AOI (ang. AND-OR-INVERT). 

Tytułem wyjaśnienia. Istnieje 10 serii popularnych układów cyfrowych (CMOS: 4000B, 

74C,  74HC,  74HCT,  74AC,  74ACT  i  TTL:  74LS,  74ALS,  74AS,  74F).  We  wszystkich 
znajdują się układy realizujące te same funkcje. Dość dobra jest wzajemna zgodność między 
seriami -  różnią  się  głównie  szybkością,  mocą  zasilania, obciążalnością  wyjść  i wartościami 
napięć  reprezentującymi  poziomy  logiczne.  Najbardziej  odpowiednia  dla  większości 
zastosowań  jest  obecnie  seria  szybkich  układów  CMOS,  oznaczona  literami  HC 
następującymi o liczbie 74, np. 74HC00. Gdy jest wymagana pełna zgodność ze standardem 
TTL, należy stosować układy 74HCTxx (lub 74LSxx). W celu uproszczenia zapisu, w dalszej 
części publikacji będziemy pomijać oznaczenie serii, zastępując je apostrofem, np. ´00 będzie 
oznaczać dwuwejściową bramkę NAND. Zwracamy uwagę, że oryginalne układy TTL (seria 
74xx - bez oznaczeń literowych po liczbie 74) są już przestarzałe. 

 
Tabela 15.  

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

80

 

 
Oznaczenia układów scalonych serii TTL 

Pierwsza litera oznaczenia określa sposób wykonania według następujących reguł: 

 

U – układ półprzewodnikowy, monolityczny, bipolarny, 
H – układ hybrydowy, 
M – układ półprzewodnikowy monolityczny unipolarny. 
 
Druga litera oznaczenia określa rodzaj ogólnej funkcji układu scalonego: 
C – układy cyfrowe, 
L – układy analogowe, 
R – inne układy scalone. 
Trzecia litera określa przeznaczenie układu scalonego: 
A – do zastosowań specjalnych, 
Y – do zastosowań profesjonalnych, 
T – do zastosowań profesjonalnych o podwyższonej niezawodności, 
Q – do zastosowań specjalnych o podwyższonej niezawodności, 
X – prototypowe, doświadczalne lub na zamówienia. 
brak litery do zastosowań w sprzęcie powszechnego użytku. 
Pierwsza cyfra określa zakres dopuszczalnej temperatury otoczenia podczas pracy w °C: 
4 – od –55 do +85, 
5 – od –35 do +25, 
6 – od –40 do +85, 
7 – od 0 do +70, 
8 – od –25 do +85. 
Druga,  trzecia,  czwarta  lub  piąta  cyfra  stanowią  liczbę  porządkową  określającą  dany  typ 
układu. 
Po  drugiej  cyfrze  w  oznaczeniach  monolitycznych  cyfrowych  układów  scalonych  mogą  być 
wprowadzone litery określające serię układu: 
Dla układów TTL: 
F – seria szybka 
L – seria małej mocy 
H – seria o zwiększonej szybkości, 
S – seria bardzo szybka, 
brak litery – seria standardowa 
Dla układów CMOS: 
HC – szybkie układy, 
HCT – szybkie układy kompatybilne z TTL, 
AC – ulepszone szybkie układy, 
ACT – ulepszone szybkie układy kompatybilne z TTL. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

81

4.4.2.  Pytania sprawdzające

 

 
Odpowiadając na pytania, sprawdzisz, czy jesteś przygotowany do wykonania ćwiczeń. 

1.  Jakimi cechami charakteryzuje się technologia TTL? 
2.  Jakimi cechami charakteryzuje się technologia CMOS? 
3.  Jaka jest różnica w zasilaniu układów TTL i CMOS? 
4.  Jakimi zasadami należy się kierować przy łączeniu układów TTL i CMOS? 
5.  Jakie właściwości posiada bramka trójstanowa? 
6.  Jakie są podstawowe właściwości bramki z otwartym kolektorem? 
7.  Co określa termin trzeci stan w bramce trójstanowej? 
8.  W jaki sposób oznacza się układy scalone TTL? 
9.  Jakie informacje zawarte są w oznaczeniach literowych układu scalonego TTL?  
10.  Jakie informacje zawarte są w oznaczeniach cyfrowych układu scalonego TTL?  
11.  W jaki sposób przedstawia się symbole bramek NAND, NOR, NOT? 
12.  Jakie można wyróżnić podstawowe struktury programowalne? 
13.  W jakim układzie scalonym występują 4 bramki NAND a w jakim 6 bramek NOT?  
 

4.4.3.  Ćwiczenia 

 
Ćwiczenie 1 

Wyjaśnij znaczenie opisu następujących układów scalonych. 

1)  UCY74H32N, 
2)  74HCT00. 

 
Sposób wykonania ćwiczenia 
 
Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać  w  materiałach  dydaktycznych  oznaczenia  układów  cyfrowych  układów 

scalonych,  

2)  dokonać analizy oznaczeń, uwzględniając oznaczenia, dotyczące technologii i CMOS, 
3)  rozpoznać opisy układów scalonych. 

 
Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika. 

 

Ćwiczenie 2 

Dany  jest  układ  scalony  UCY  7400.  Zaproponuj  układ  cyfrowy,  zbudowany  z  tych 

bramek realizujący sumę logiczna A+B.  

 
Sposób wykonania ćwiczenia 

 

Aby wykonać ćwiczenie, powinieneś: 

1)  odszukać w materiałach dydaktycznych widok układu scalonego UCY7400, 
2)  przypomnieć sobie prawo de’Morgana, z którego można skorzystać, 
3)  narysować  połączenia  bramek  NAND,  uwzględniając  numery  końcówek  układu 

scalonego, 

4)  przeanalizować poprawność rozwiązania, nie zapominając o napięciu zasilania układu, 
5)  uzasadnić narysowany schemat. 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

82

Wyposażenie stanowiska pracy: 

 

papier formatu A4, flamastry, 

 

literatura zgodna z punktem 6 poradnika. 

 

4.4.4.  Sprawdzian postępów 

 

Czy potrafisz: 
 

Tak 

Nie 

1) 

scharakteryzować technologię TTL?  

 

 

2) 

scharakteryzować technologie CMOS? 

 

 

3) 

wyjaśnić różnice pomiędzy technologią TTL a CMOS? 

 

 

4) 

określić reguły obowiązujące przy łączeniu układów TTL i CMOS? 

 

 

5) 

określić właściwości bramki trójstanowej? 

 

 

6) 

wyjaśnić co oznacza trzeci stan w bramce trójstanowej? 

 

 

7) 

określić podstawowe oznaczenia bramek TTL? 

 

 

8) 

wyjaśnić oznaczenia literowe bramek TTL? 

 

 

9) 

wyjaśnić oznaczenia cyfrowe bramek TTL? 

 

 

10)  zastosować symbole podstawowych bramek logicznych? 

 

 

11)  określić podstawowe struktury programowalne? 

 

 

12)  scharakteryzować podstawowe struktury programowalne? 

 

 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

83

5.  SPRAWDZIAN OSIĄGNIĘĆ 

 

INSTRUKCJA DLA UCZNIA 

1.  Przeczytaj uważnie instrukcję. 
2.  Podpisz imieniem i nazwiskiem kartę odpowiedzi. 
3.  Zapoznaj się z zestawem zadań testowych. 
4.  Test  zawiera  20  zadań.  Do  każdego  zadania  dołączone  są  4  możliwości  odpowiedzi. 

Tylko jedna jest prawidłowa. 

5.  Udzielaj odpowiedzi na załączonej karcie odpowiedzi, stawiając w odpowiedniej rubryce 

znak X. W przypadku pomyłki należy błędną odpowiedź zaznaczyć kółkiem, a następnie 
ponownie zakreślić odpowiedź prawidłową. 

6.  Zadania  wymagają  stosunkowo  prostych  obliczeń,  które  powinieneś  wykonać  przed 

wskazaniem poprawnego wyniku.  

7.  Pracuj samodzielnie, bo tylko wtedy będziesz miał satysfakcję z wykonanego zadania. 
8.  Jeśli udzielenie odpowiedzi będzie Ci sprawiało trudność, wtedy odłóż jego rozwiązanie 

na później i wróć do niego, gdy zostanie Ci wolny czas. 

9.  Na rozwiązanie testu masz 40 minut. 

Powodzenia! 

 

ZESTAW ZADAŃ TESTOWYCH 

 
1.  System, który wykorzystuje tylko zera i jedynki nazywany jest 

a)  heksadecymalnym. 
b)  binarnym. 
c)  szesnastkowym. 
d)  dziesiętnym. 

 
2.  Liczbie dziesiętnej 151 odpowiada liczba z systemu dwójkowego 

a)  10100111. 
b)  10010111. 
c)  10101011. 
d)  10010011. 

 

3.  Liczba szesnastkowa F14 po zamianie na system dziesiętny jest równa 

a)  3860. 
b)  276. 
c)  111114. 
d)  1014. 

 
4.  Tabela zamieszczona poniżej odpowiada funkcji logicznej 

a)  NOT. 
b)  AND. 
c)  NOR. 
d)  NAND. 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

84

5.  Dla dwuargumentowej sumy logicznej prawdziwe jest równanie  

a)  1 + 1 = 2. 
b)  1 + 0 = 0. 
c)  1 + 1 = 1. 
d)  0 + 1 = 0. 

 
6.  Prawo de Morgana dla trzech zmiennych A, B, C można zapisać 

a) 

..

...

=

+

+

+

C

B

A

C

B

A

 

b) 

...

...

+

+

=

+

+

+

C

B

A

C

B

A

 

c) 

...

...

.

=

C

B

A

BC

A

 

d)  wszystkie odpowiedzi są błędne. 

 

7.  Dekoderem nazywamy przetwornik, który 

a)  zamienia dowolny kod binarny na inny kod. 
b)  zamienia kod 1 z n na inny kod. 
c)  zamienia kod binarny na kod 1 z n. 
d)  zamienia dowolny kod wejściowy na dowolny kod wyjściowy. 

 
8.  Zamieszczona poniżej tabela posiada wiersze i kolumny opisane kodem 

a)  heksadecymalnym. 
b)  naturalnym dwójkowym . 
c)  Graya. 
d)  Wattsona. 

 

AB 

CD 

00 

01 

11 

10 

00 

01 

11 

12 

13 

15 

14 

10 

11 

10 

 
9.  W układach sekwencyjnych stan wyjścia zależy od  

a)  od stanu sygnałów wejściowych. 
b)  od przedniego stany sygnałów wyjściowych. 
c)  od stanu sygnałów wejściowych i sygnału zegarowego. 
d)  od stanu sygnałów wejściowych i poprzedniego stanu sygnałów wyjściowych. 

 

10.  Multiplekser posiadający 16 wejść danych musi być wyposażony w  

a)  16 wejść adresowych. 
b)  8 wejść adresowych. 
c)  3 wejścia adresowe. 
d)  4 wejścia adresowe. 

 

11.  Przerzutniki można zaliczyć do układów 

a)  sekwencyjnych. 
b)  kombinacyjnych. 
c)  bezpamięciowych. 
d)  bezobsługowych. 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

85

12.  Wejście przerzutnika synchronicznego wyzwalanego na zboczu narastającym oznacza się 

a)  kwadratem. 
b)  trójkątem 
c)  gwiazdką. 
d)  kropką. 

 

13.  Na poniższym rysunku w wyniku modyfikacji otrzymano przerzutnik synchroniczny typu 

a)  T. 
b)  RS. 
c)  JK master slave. 
d)  D. 

 

14.  Na  rysunku  przedstawiono  przebiegi  czasowe  na  wejściu  i  wyjściach  licznika,  którego 

pojemność jest równa 

a)  9. 
b)  8. 
c)  7. 
d)  4. 

 

 
15.  Rejestry równoległe z wpisywaniem jednoprzewodowym charakteryzują się tym, że  

a)  posiadają jeden przewód zasilający. 
b)  wymagają zerowania przed wpisaniem informacji. 
c)  nie wymagają zerowania przed wpisaniem informacji. 
d)  posiadają jeden przewód do wpisywania informacji do rejestru. 

 
16.  Rysunek zamieszczony poniżej przedstawia 

a)  licznik szeregowy. 
b)  rejestr szeregowy. 
c)  licznik równoległy. 
d)  rejestr równoległo- równoległy. 

 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

86

17.  Półsumator można najprościej zbudować z dwóch różnych bramek 

a)  AND i EXNOR. 
b)  NAND i EXOR. 
c)  AND i EXOR. 
d)  NAND i EXNOR. 

 
18.  Rysunek poniższy przedstawia cyfrowy układ scalony  

a)  rejestru równoległego. 
b)  licznika synchronicznego. 
c)  komparatora. 
d)  sumatora dwójkowego równoległego. 

 

 

 

19.  Pojemność układu pamięci o 16 liniach adresowych i 16 liniach szyny danych wynosi 

a)  256 b. 
b)  1 Mb. 
c)  1 MB. 
d)  256 B. 

 
20.  Informacja w dynamicznej komórce pamięci przechowywana jest  

a)  w przerzutniku RS. 
b)  w tranzystorze MOS. 
c)  w pojemności dynamicznej tranzystora. 
d)  w postaci ładunku, zgromadzonego w pojemności. 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

87

KARTA ODPOWIEDZI 

 
Imię i nazwisko ............................................................................... 
 

Badanie elektronicznych układów cyfrowych 

 
Zakreśl poprawną odpowiedź. 
 

Nr 

zadania 

Odpowiedź 

Punkty 

 

 

 

 

 

 

 

 

 

10 

 

11 

 

12 

 

13 

 

14 

 

15 

 

16 

 

17 

 

18 

 

19 

 

20 

 

Razem: 

 

background image

 

 

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego” 

 

88

6.  LITERATURA 

 

1.  Chwaleba  A.,  Moeschke  B.,  Pilawski  M.:  Pracownia  elektroniczna  –  elementy  układów 

elektronicznych. WSiP, Warszawa 1996 

2.  Chwaleba A., Moeschke B., Płoszajski G.: Elektronika. WSiP, Warszawa 1996 
3.  Grabowski L.: Pracownia elektroniczna – układy elektroniczne. WSiP, Warszawa 1999 
4.  Pióro B., Pióro M.: Podstawy elektroniki cz. 1. WSiP, Warszawa 1998 
5.  Pióro B., Pióro M.: Podstawy elektroniki cz. 2. WSiP, Warszawa 1997 
6.  Zachara  Z.:  Zadania  z  elektrotechniki  nie  tylko  dla  elektroników.  WSPWN,  Warszawa 

2000 

7.  http://pl.wikipedia.org 
8.  http://www.cyfronika.com.pl 
9.  http://www.edw.com.pl 
10.  http://www.matmic.neostrada.pl 
11.  http://www.meditronik.com.pl 
 
Czasopisma: 
– 

Elektronika dla wszystkich 

– 

Elektronika praktyczna