background image

 

 

1

Elementarne podzespoły 

komputera

background image

 

 

2

Algebra Boole'a

• George Boole matematyk i logik. 

• Wyraził relacje logiczne za pomocą 

symboli algebraicznych, tworząc w ten 
sposób dział matematyki zwany logiką 
symboliczną lub inaczej. 

background image

 

 

3

Algebra Boole'a

• Zmienne w algebrze Boole’a przyjmują 

dwie wartości: 

– Ze względu na ten sam zakres przyjmowanych 

wartości {0,1}, zmienną boole’owską można 
utożsamiać ze zmienną binarną i nazywać 
bitem. 

– Spotka się także z określenia 0 jako stan niski i 

l jako stan wysoki. 

background image

 

 

4

Operatory Boole'a

• Działania logiczne na zmiennych: 

– AND („i”), czyli koniunkcja lub iloczyn 

logiczny, 

– OR („lub”), czyli alternatywa łub suma 

logiczna, 

– NOT („nie”), czyli negacja. 

background image

 

 

5

Wyrażenia boolowskie

• Połączenie zmiennych i operatorów 

logicznych:

– jedna lub więcej danych wejściowych, 
– wynik działania przyjmuje wartość ze zbioru 

{0,1}.

background image

 

 

6

Kolejność stosowania operatorów 

boolowskich:

• Na przykład funkcja:
• zawiera trzy zmienne boolowskie xy i z oraz 

operatory logiczne OR, NOT i AND. 

• W przypadku funkcji F, najpierw należy 

zanegować y

• następnie dokonać koniunkcji    i z
• na końcu zsumować otrzymany wynik ze 

zmienną x.

(

)

z

y

x

z

y

x

F

+

=

,

,

y

y

background image

 

 

7

Tablica prawdy

• Wyrażenie boolowskie można rozpisać za 

pomocą tablicy prawdy. 

– Przy konstruowaniu tablicy prawdy dla bardziej 

skomplikowanej funkcji wygodnie jest rozbić ją 
na kilka kolumn przedstawiających odrębne 
części składowe funkcji. 

background image

 

 

8

Przykład

• Tablica prawdy dla naszej funkcji

(

)

z

y

x

z

y

x

F

+

=

,

,

background image

 

 

9

Algebra Boole'a w komputerze

• Algebra Boole'a została zastosowana do obliczeń 

komputerowych przez Johna Vincenta Atanasoff’a.

• Zaprojektowana przez niego maszyna:

– elektryczność zamiast sił mechanicznych, 
– liczby w systemie dwójkowym zamiast systemu dziesiętnego, 
– kondensatory, mogących magazynować ładunki elektryczne, do 

budowy elementów pamięci i zaimplementował proces 

regeneracyjny, zapobiegający zanikaniu ładunku,

– obliczenia były oparte na algebrze Boole'a.

background image

 

 

10

Algebra Boole'a w komputerze c.d.

• Claude Shannon (1938) udowodnił, że 

dwuwartościowa algebra Boole'a może 
również opisywać działanie 
dwuwartościowych elektrycznych 
obwodów przełączających. 

background image

 

 

11

Bramki logiczne

• Układy cyfrowe, wykonujące działania 

arytmetyczne lub sterujące, zbudowane są z 

elementów zwanych bramkami logicznymi. 

• Bramki logiczne to proste układy elektroniczne 

składające się z jednego do kilkunastu 

tranzystorów. 

– realizują podstawowe funkcje logiczne na pojedynczych 

bitach. 

– są podstawowymi składnikami układu komputera 

cyfrowego. 

• Podstawowym elektronicznym składnikiem 

komputera jest tranzystor, a podstawowym 

elementem logicznym - bramka.

background image

 

 

12

Budowa komputera

• Komputer składa się kilku rodzajów 

składników o prostej strukturze, blokowy 
sposób konstrukcji pozwala na elastyczność 
projektowania struktury komputera:

– wejścia jednych elementarnych składników 

łączone są z wyjściami innych obwodów, 

– złożone obwody składają się z prostych 

elementów. 

background image

 

 

13

Układy TTL

• Układy TTL (Transistor Transistor Logic), wykorzystują 

dwa poziomy napięcia, 0 V i +5 V do reprezentacji cyfr 

binarnych 0 i 1. 

– Istnieją obecnie rodzaje układów, których znamionowe napięcia 

pracy są niższe niż 5 V. 

• Obwody TTL charakteryzuje ograniczoną liczbą 

wyprowadzeń z danego obwodu, które mogą posłużyć jako 

źródła sygnału wprowadzanego na wejścia innego obwodu 

TTL. 

• Standard TTL pozwala też zapomnieć konstruktorowi o 

takich problemach inżynierii elektrycznej jak: 

– zasilanie, 
– poziomy napięć i prądy płynące w obwodach. 

background image

 

 

14

Układy scalone

• Komputery zbudowane są z różnorodnych podzespołów 

cyfrowych, jednostek składających się z bramek 

połączonych ze sobą ścieżkami. 

– Jednostki te nazywane są układami scalonymi (Integrated Circuit 

IC, chip, kość) ). 

– Ich komponenty są wytrawione bezpośrednio na powierzchni 

układu, dzięki czemu są niewielkie i wymagają mniej energii niż 

ich odpowiedniki w postaci niezależnych części elektronicznych

– Pomiędzy wyprowadzeniami zewnętrzymi, a układem 

elektronicznym tworzone są połączenia 

– Taki układ scalony jest umieszczony w ceramicznej lub 

plastikowej obudowie z wyprowadzeniami (nóżkami). 

background image

 

 

15

Układ scalony o małej skali 

integracji (SSI IC). 

background image

 

 

16

Bramka AND

Iloczyn logiczny (AND) 
jest to operacja 
wykonywana na parze 
bitów, zapisywana w 
postaci równania : 
z = x * y 
Graficzny symbol, oraz 
wszystkie możliwe wyniki 
tej operacji zamieszczono 
w tabeli obok. 

 

x 

y 

z 

 

 

background image

 

 

17

Suma logiczna (OR)
Operacja dwubitowa. Opis 
działania bramki 
przedstawia wzór : 
z = x + y 
tablica i jej symbol patrz 
rys. obok. 

 

x 

y 

z 

 

 

Bramka OR

background image

 

 

18

Negacja (NOT). Jest 
operacją jednobitową, 
powodującą zmianę sygnału 
wejściowego na przeciwny 
(wzór, tablica i rys. – patrz 
obok). Wzór : y = ~ x 
 (kreska pozioma nad lub 
znak tyldy bezpośrednio 
przed negowaną zmienną). 

 

 

 

Bramka NOT

background image

 

 

19

Rozszerzeniem grupy 
elementów logicznych 
są bramki NAND i 
NOR
Realizujące operacje:  
z = ~( x * y ),  
z = ~( x + y )
 
Bramka NAND (NOR) 
wykonuje najpierw 
operację iloczynu 
logicznego (sumy 
logicznej), a następnie 
negacje.  

 

x 

y 

x*y 

~(x*y) 

x+y 

~(x+y) 

 

 

Bramki NAND i NOR

background image

 

 

20

Bramka XOR (exclusive or)

• Podstawowe elementy NOT i  

OR, pozwalają zbudować obwód 
nazywany half-adder. 

– Symbol bramki XOR
– Tablica funkcyjna dla układu 

XOR:

x

y

z

0

1

1

1

0

1

1

1

0

0

0

0

z

y

x

background image

 

 

21

Bramka uniwersalna

• Bramkę NAND nazywa się bramką uniwersalną, ponieważ każdy 

układ elektroniczny można skonstruować, używając wyłącznie bramek 

NAND. Na przykład:

• Bramka NAND jest tania i  jest o wiele prościej zbudować złożone 

układy scalone używając jednakowych bloków składowych (tj. kilku 

bramek NAND) zamiast zbioru różnych podstawowych bloków (tzn. 

kombinacji bramek AND, OR i NOT).

background image

 

 

22

Prezentacja funkcji boolowskich

• Istnieje wiele równoważnych sposobów na 

przedstawienie funkcji boolowskiej

– synonimy logicznie równoważne
– mają takie same tablice prawdy
– Przy projektowaniu systemów logicznych 

funkcje boolowskie zapisuje się w postaci 
kanonicznej

background image

 

 

23

• Istnieją dwie postaci kanoniczne dla wyrażeń 

boolowskich:

– alternatywna postać normalna APN (sum-of-products)
– koniunkcyjna postać normalna KPN (product-of-sums )

• APN wyrażenie boolowskie składa się z pomnożonych 

(AND) zmiennych (lub wyrazów iloczynu), które są 

zsumowane (OR)
F(x, y, z) = xy + xz + yz

• KPN wyrażenie boolowskie składa się ze zsumowanych 

(OR) zmiennych (lub wyrazów sumy), które są przez 

siebie mnożone (AND)
 F(x, y, z) = (x+y)

(y+z)

(z+x)

Prezentacja funkcji boolowskich

background image

 

 

24

Zasada dualności

• Dowolny układ można także zbudować, 

używając wyłącznie bramek NOR. Bramki 
NAND i NOR są ze sobą skorelowane w 
podobny sposób, jak alternatywna i 
koniunkcyjna postać normalna funkcji. 

– NAND wyraża alternatywną postać normalną 

funkcji, 

– NOR – normalną postać koniunkcyjną.

background image

 

 

25

Układy cyfrowe i ich związek z 

algebrą Boole' a

• Wyrażenia boolowskie można przedstawić za 

pomocą kombinacji bramek AND, OR i NOT. 

• W rezultacie otrzymamy diagram logiczny, całego 

wyrażenia przedstawiający fizyczną realizację 
danego wyrażenia albo inaczej rzeczywisty obwód 
cyfrowy. 

background image

 

 

26

Przykład diagramu logicznego

• Diagram logiczny dla funkcji 

• Budując diagram logiczny dla wyrażenia 

boolowskiego projektujemy odpowiadający mu 

układ cyfrowy.

(

)

z

y

x

z

y

x

F

+

=

,

,

background image

 

 

27

Układy kombinacyjne

• Układ półsumatora (ang. half-adder).
• Rozważając dodawanie dwóch cyfr binarnych należy pamiętać, że:

– 0+0=0, 
– 0+1=1+0=1, 
– 1+1=1. 

• Należy wziąć pod uwagę zarówno sumę, jak i przeniesienie, trzeba 

więc określić nie jeden, ale dwa wyniki. 

• Analizując tablicę prawdy dla półsumatora, można zauważyć, że suma 

jest identyczna z operacją XOR. 

• Wartość przeniesienia jest równoważna wynikowi bramki AND.

– Można więc połączyć bramki XOR i AND, otrzymując w ten sposób 

diagram logiczny półsumatora.

background image

 

 

28

Do czego może służyć półsumator?

background image

 

 

29

Półsumator

• Półsumator można rozbudować do układu, który pozwala 

na dodawanie większych liczb binarnych. 

• Rozważmy, sposób dodawania liczb w systemie 

dziesiętnym: 

– dodajemy pierwszą kolumnę z prawej, 
– zapisujemy cyfrę jedności i przenosimy cyfrę dziesiątek, 
– dodajemy przeniesienie do kolumny bieżącej, 
– i dalej postępujemy w analogiczny sposób. 

• Liczby binarne możemy dodawać tą samą metodą. 
• Zrealizuje je układ, który:

– przyjmuje trzy dane wejściowe (x, y, cin), 
– z którego otrzymujemy dwie dane wyjściowe (suma, cout). 

background image

 

 

30

Sumator

• Tablica prawdy i odpowiadający jej diagram logiczny dla 

pełnego sumatora (full-adder). Pełny sumator zbudowany 
jest z dwóch półsumatorów i bramki OR. 

background image

 

 

31

Bit adder - 1 bitowy układ dodający 

dwójkowo

Sumator składa się z dwu bramek XOR i trzech bramek – AND oraz jednej 
bramki OR. 

Sygnał wejściowy stanowią dwie liczby w zapisie dwójkowym ab oraz 
wejściowy bit przeniesienia (carry input) cin

Wyjście stanowią suma s i wyjściowy bit przeniesienia (carry output), cout.

cin

cout

background image

 

 

32

Oznaczenie i charakterystyka 

sumatora jednobitowego

• Wejścia do obwodu 

stanowią (a, b, cin), 

natomiast wyjścia to 

(cout, s). Odpowiednia 

tablica stanów ma 

postać: 

• Jak taki układ może 

dodawać liczby 

binarne, skoro jest 

zdolny do dodawania 

tylko trzech bitów? 

Charakterystyka bit-
adder’a

 

(0 0 0) ==> (0 0)

(0 1 0) ==> (0 1)

(1 0 0) ==> (0 1)

(1 1 0) ==> (1 0)

(0 0 1) ==> (0 1)

(0 1 1) ==> (1 0)

(1 0 1) ==> (1 0)

(1 1 1) ==> (1 1)

background image

 

 

33

Sumator dwubitowy

• Ten układ, składający się dwu 

bit –adder’ów jest w stanie 

dodać dwie liczy dwubitowe. 

Ten układ przyjmuje na wejściu 

cyfry a

1

, a

0

 pierwszego składnika 

i cyfry b

1

, b

0

 drugiego składnika 

wynikiem jest trójbitowa liczba 

s

1

, s

0

.

• Wyjście cout pierwszego bit-

addera (z prawej) połączone 

zostało z wejściem cin drugiego 

bit-addera (z lewej).  

background image

 

 

34

Sumator 4-bitowy

• Podobnie jak w poprzednim przykładzie, bit przeniesienia  sumatora, t

0

 jest 

podłączony do wejścia bitu przeniesienia sumatora t

1

, i etc. 

• Oznacza to, że  sumator t

0

 powinien wykonać działanie zanim zadziała 

sumator t

1

, etc.

• Poprzez skopiowanie układu sumatora jednobitowego szesnaście razy, 

można zbudować w ten sposób sumator potrafiący dodawać dwa 

szesnastobitowe słowa. 

• Taki rodzaj układu nazywamy sumatorem kaskadowym. Generuje on 

sekwencyjnie przeniesienia, które przechodzą przez kolejne stopnie 

sumatora.

background image

 

 

35

Podsumowanie sumatora

• Przedstawiony sumator jest bardzo powolny, raczej się go 

nie stosuje. 

• Modyfikacje zastosowane w konstrukcjach sumatorów 

spowodowały powstanie sumatorów typu:

– carry-look-ahead (podgląd przeniesienia),
– carry-select (wybór przeniesienia),
– carry-save (zachowanie przeniesienia) i innych. 

• Ma to celu próbę przyspieszenia dodawania dwóch liczb 

binarnych. 

• Współczesne sumatory osiągają prędkości od 40% do 90% 

większe niż sumatory kaskadowe - dzięki wykonywaniu 

operacji dodawania w sposób równoległy i zredukowaniu 

długiej ścieżki przeniesienia.

background image

 

 

36

Arytmetyka dopełnieniowa 

(Complement Arithmetic) 

• Kiedy 4-bitowy sumator jest wykorzystany do dodawania 

dwu 4-bitowych liczb bez znaku (np.  10 + 10), pojawienie 

się bitu przeniesienia wskazuje, że wynik nie mieści się w 

zakresie 4 bitów (od 0 do 15).

• W przypadku gdy 4-bitowy sumator wykorzystamy do 

dodawania 4-bitowych liczb ze znakami

– reprezentowanych przez swoje dopełnienia do 2, 

wówczas należy zignorować pojawienie się wyjściowego 

przeniesienia na najstarszym bicie (left-most bit). 

• Przedstawiony tu 4-bitowy sumator działa równie dobrze 

w przypadku przedstawianych jako dopełnienia do 2 liczb 

bez znaku jak też  liczb ze znakiem w tej reprezentacji. 

background image

 

 

37

Problem dodawania liczb ze znakiem

• Rozważmy przykład dodawania: 

1 0 1 0 + 1 0 1 0 = 

1

 0 1 0 0. 

• Ponieważ skrajny lewy bit jest w przypadku obu składników równy 1 

dodajemy dwie ujemne liczby i otrzymujemy dodatni wynik.  

• Zauważmy, że 1 0 1 0 = -6

(10)

• Aby to sprawdzić należy:

– od 1 0 1 0 odjąć  1,
– zmienić 1 na 0, a 0 na 1 
– lub co na jedno wychodzi, odjąć następną potęgę 2 (2

4

 = 16) od 1010 co 

daje -6. 

• Ponieważ 4-bitowe liczby ze znakiem zawierają się w zakresie od -8 

do 7, wynik dodawania -6 + -6 =-12 wykaże błąd gdyż nie może być 

on przedstawiony jako 4-bitowa wartość ze znakiem!

background image

 

 

38

4-bit-Arithmetic Logic Unit

background image

 

 

39

Model procesora 

• Kiedy operand zostaje 

pobrany z pamięci, w celu 
wykonania określonej 
operacji 

– np. w przypadku  

odejmowania, 

operand ten jest czasowo 
przechowywany w rejestrze 
procesora zwanym rejestrem 
b. 

background image

 

 

40

Model procesora

• Wejścia "a"  4-bitowego-ALU 

podłączone są do akumulatora, 

• Wejścia "b" podłączone są do 

rejestru b. 

• Wyjście, na którym pojawia się 

wynik działania ALU jest 

podłączone do akumulatora.

• specjalny układ ustawiający bit 

sub w zależności od tego czy 

rejestr poleceń zawiera 

instrukcję dodawania czy też 

odejmowania. 

background image

 

 

41

Kodery i dekodery

• Informacja może być zapisywana za pomocą zmiennych binarnych 

dwoma sposobami:

– Zbiorowi danych elementarnych odpowiada równoliczny zbiór zmiennych 

binarnych, stąd każdej danej odpowiada jedna zmienna.

– Zbiorowi danych elementarnych odpowiada kombinacja zmiennych 

binarnych. Dysponując n zmiennymi binarnymi można sposobem 

pierwszym zapisać n danych, sposobem drugim 2n danych.

• Kodowaniem nazywamy przejście z pierwszego sposobu na drugi, a 

operacje, odwrotną dekodowaniem. 

• Układy realizujące kodowanie nazywamy koderem (a) i dekoderem 

(b).

background image

 

 

42

Kodery i dekodery

• Adresy w pamięci komputera mają postać liczb binarnych. Kiedy 

odwołujemy się do adresu pamięci (w celu zapisania lub czytania), 

komputer musi najpierw określić adres rzeczywisty. Czyni to za 

pomocą dekodera. 

• Dekodowanie informacji binarnej polega na przypisaniu zestawów 

składających się z n danych wejściowych do maksymalnie 2n danych 

wyjściowych. 

• Dekoder wykorzystuje dane wejściowe i odpowiadające im wartości w 

celu „wybranie linii wynikowej„.  Oznacza to, że dana linia wynikowa 

ma (ustawiony) wynik l, podczas gdy pozostałe są ustawione na zero. 

• Dekodery opisujemy zwykłe za pomocą liczby danych wejściowych i 

wyjściowych. 

– Na przykład dekoder, który ma 3 dane wejściowe i 8 wyjściowych, 

nazywany jest dekoderem 3-do-8-bitowym.

background image

 

 

43

Układ dekodera 3-do-8 bitowego.
Wyobraźmy sobie pamięć złożoną z ośmiu chipów, po 8 kB każdy. 
Załóżmy, że:
chip 0 zawiera adresy pamięci od 0 do 8 191, 
chip 1 zawiera adresy pamięci od 8 192 do 16 383 itd. 

Razem 8 K x 8K lub 64 K (65 536) dostępnych adresów. 

Mamy 64 = 2

6

 oraz 1K = 2

10

, otrzymujemy, że 64K = 2

6

 x 2

10

 = 2

16

, co 

wskazuje na to, że potrzebujemy 16 bitów, aby przedstawić każdy z 
adresów. 
Adresy w chipie 0 mają format: 000xxxxxxxxxxxxx, 
od 0000000000000000 do 0001111111111111. 
Adresy w chipie 1 mają format 001xxxxxxxxxxxxx i tak dalej. 

Trzy pierwsze bity z lewej strony decydują, w którym chipie 
umieszczony jest adres. Potrzebujemy 16 bitów do zapisania całego 
adresu, ale w każdym chipie mamy tylko 2

13

 adresów. 

background image

 

 

44

Kiedy podajemy komputerowi adres, 
•najpierw określa on, którego chipu ma użyć, 
•znajduje rzeczywisty adres w tym konkretnym chipie. 

W naszym przykładzie komputer użyłby 3 bitów po skrajnej lewej 
stronie, aby wybrać chip, a następnie posługując się pozostałymi 13 
bitami, znalazłby adres na chipie. 

Te trzy wysokopozycyjne bity są w rzeczywistości używane jako dane 
wejściowe do dekodera - tak aby komputer mógł określić, który chip 
powinien uaktywnić do zapisu lub odczytu. 

Jeśli pierwsze 3 bity to 000, aktywowany powinien być chip 0. Jeśli 
pierwsze 3 bity to 111, powinien być to chip 7. 

background image

 

 

45

1

background image

 

 

46

Multiplekser 

Układ ten wybiera informacje binarne z jednej z wielu linii wejściowych i 

kieruje je do pojedynczej linii wyjściowej. Wybór określonej linii wejściowej 

kontrolowany jest przez zbiór zmiennych wyboru lub linii kontrolnych. 

W danym momencie tylko jedna, wybrana dana wejściowa kierowana jest 

przez obwód do linii wyjściowej. Wszystkie inne dane wejściowe są „odcięte”. 

Jeśli wartości na linii kontrolnej się zmienią, spowoduje to też zmianę danych 

wejściowych. 

Komputery z podziałem czasu multipleksują dane wejściowe z terminala 

użytkownika. 

background image

 

 

47

Układy sekwencyjne

• Układy kombinacyjne nie posiadają pamięci tj. nie istnieje możliwość 

przechowywania danych. 

• Ażeby zrozumieć, jak pracuje komputer, trzeba poznać logikę 

sekwencyjną. 

– Dane wyjściowe układu sekwencyjnego powstają na podstawie funkcji 

bieżących i poprzednich danych wejściowych. Wynik operacji zależy 

również od przeszłych danych wejściowych. Aby zapamiętać poprzednie 

dane, układy sekwencyjne muszą zawierać pewnego rodzaju element 

magazynowania danych -przerzutnik. 

– Stan przerzutnika jest funkcją poprzednich danych wejściowych. Stąd 

obliczany wynik końcowy zależy zarówno od bieżących danych 

wejściowych, jak też od bieżącego stanu układu. 

• Układy kombinacyjne można nazwać uogólnieniem bramek, a układy 

sekwencyjne uogólnieniem przerzutników.

background image

 

 

48

Porządkowanie zdarzeń –zegary

• Układ sekwencyjny wykorzystuje przeszłe dane 

wejściowe, aby określić bieżące dane wyjściowe, 
konieczne jest więc wprowadzenie sposobu 
porządkowania zdarzeń. 

– Asynchroniczne układy sekwencyjne uaktywniają się w 

momencie, kiedy którakolwiek z danych wejściowych 
się zmienia. 

– Synchroniczne układy sekwencyjne do porządkowania 

zdarzeń wykorzystują zegary. 

background image

 

 

49

Zegar

• Zegar emituje serię impulsów o dokładnie określonej szerokości i 

interwale pomiędzy następującymi po sobie impulsami.

– Interwał ten nazywamy cyklem zegarowym. 
– Częstość zegara mierzona jest w megahercach (MHz) . 

• Zegar używany jest przez układ sekwencyjny do podjęcia decyzji, 

kiedy należy aktualizować stan układu (tzn. kiedy „bieżące" dane 

wejściowe stają się „przeszłymi" danymi wejściowymi). Oznacza to, 

że wejścia do układu mogą wpływać na element obszaru pamięci tylko 

w ściśle określonych momentach. 

– Większość układów sekwencyjnych posiada przerzutniki przełączane 

zboczem sygnału 

– lub na poziomem sygnału. 

background image

 

 

50

Przerzutniki

• Przerzutnik jest układem o dwóch stanach stabilnych 

(takich, dla których stan logiczny jest jednoznacznie 

określony), wykorzystywanym głównie do zapamiętania 

informacji o pojemności równej l bitowi. 

• Przerzutnik posiada najczęściej dwa wyjścia: proste i 

zanegowane. W stanie stabilnym na wyjściach występują 

wartości logiczne, odpowiednio "1" i "0" lub "0" i "1".

•  Przerzutnik może mieć jedno lub kilka wejść. Cechą 

charakterystyczną przerzutnika jest to, że stan wyjść 

określony jest nie tylko stanem wejść, ale także jego 

stanem poprzednim.

background image

 

 

51

Układ o przerzutnikach przełączanych zboczem sygnału może zmieniać 
swój stan za każdym razem, kiedy sygnał zegarowy jest niski łub 
wysoki. 
W celu „zapamiętania" stanu przeszłego układy sekwencyjne oparte są 
na zasadzie sprzężenia zwrotnego. Oznacza to po prostu, że dana 
wyjściowa układu zwracana jest jako dana wejściowa do tego samego 
układu. 

Z rysunku wynika, że jeśli Q równe jest 0, to sygnał na wyjściu zawsze 
będzie równy 0. Jeśli zaś Q równe jest 1, zawsze będzie 1. 

Nie jest to zbytnio użyteczny układ, ale pozwala zrozumieć, jak działa 
sprzężenie zwrotne.

background image

 

 

52

Możemy opisać dowolny przerzutnik, używając tabeli charakterystyk, 
która wskazuje, na czym powinny być oparte kolejne stany: dane 
wejściowe i stan obecny Q. Symbol Q(t) oznacza stan obecny, a Q(t + 1) 
wskazuje stan następny, tzn. stan, jaki przerzutnik powinien wprowadzić 
po impulsie zegara. 

background image

 

 

53

Przerzutnik SR

Układ ze sprzężeniem zwrotnym składa się z dwóch bramek NOR, w 
wyniku zastosowania których otrzymujemy najbardziej podstawową 
jednostkę pamięci zwaną przerzutnikiem SR (set/reset). Diagram 
logiczny dla przerzutnika SR 

Przerzutnik sr posiada wejście ustawiające 

"s" (ang. set), powodujące ustawienie wyjścia przerzutnika w stan 
logicznej jedynki 

oraz wejście zerujące "r" (ang. reset), ustawiające wyjście w stan zera 
logicznego. 

Jeżeli oba wejścia są w stanie niskim (zero logiczne), stan wyjścia 
pozostaje bez zmian, gdy oba wejścia są w stanie wysokim (jedynka 
logiczna) stan przerzutnika jest stanem niskim.

background image

 

 

54

Wszystkie możliwe sytuacje przerzutnika SR przedstawia tablica 
charakterystyczna obok, na podstawie której można otrzymać wzór 
określający stan wyjścia q

k+l

 :

Wniosek: q

k+1

 będzie l, jeżeli nie było r

k

 = l, a było s

k

 = l lub q

k

 = l. 

q

k

  

r

k

  

s

k

  

q

k+1

 

 

background image

 

 

55

Istotną cechą przerzutnika SR jest jego niejednoznaczność. 

Jeżeli na jego obu wejściach Pojawi się jednocześnie sygnał jedynki 
logicznej, stan obu wyjść jest stanem niskim. Jest to błędem, gdyż opis 
przerzutnika SR zakłada, że jedno z wyjść jest negacją drugiego, a w 
tym przypadku nie jest to spełnione. 

Dalsze zmiany stanu wyjść zależą od kolejności zaniku sygnałów 
wejściowych: q=0, gdy jako ostatni zaniknie sygnał rq=l, gdy ostatni 
zaniknie sygnał s.

background image

 

 

56

Przerzutnik JK

Niejednoznaczność stanu przerzutnika została usunięta w przerzutniku 
JK. W stosunku do przerzutnika SR różni się on tym, iż dla sygnałów 
wejściowych 
j = = l 
zmienia on stan obu wyjść na przeciwny. Wszystkie możliwe sytuacje 
zestawiono w tablicy. 

q

k

  

j

k

  

k

k

  

q

k+1

 

 

Nazwa przerzutnika JK pochodzi od inicjałów inżyniera firmy Texas 
Instruments, Jacka Kilby'ego, który w roku 1958 wynalazł układ 
zintegrowany.

background image

 

 

57

Analizując stan wyjścia q

k+1

 w sytuacji, gdy występuje na nim jedynka 

logiczna otrzymujemy następujący wzór :

Symbol i budowę przerzutnika JK.

background image

 

 

58

Rejestry :

Rejestrem jest zbiór przerzutników służących do przechowywania 
informacji cyfrowej. Można wyróżnić rejestry szeregowe i równolegle

•Rejestr szeregowy to zestaw przerzutników połączonych ze sobą jeden 
za drugim w taki sposób, że do wyjścia jednego przerzutnika dołączone 
jest wejście następnego. 

•Rejestr równoległy składa się. z układu nie powiązanych ze sobą 
przerzutników, a operacje wpisu lub zerowania są wykonywane na 
wszystkich bitach (przerzutnikach) równolegle.

Operacji wpisu do rejestru n-bitowego można dokonać stosując jeden z 
dwu możliwych układów. 

•układ wpisu z uprzednim zerowaniem, przed ustawieniem 
przerzutników musi nastąpić zerowanie (do przerzutników wpisywane są 
tylko jedynki, dlatego wymagane jest zerowanie). 

•układ z wejściem forsowanym. 

background image

 

 

59

Magistrala 

Zbiór przewodów (s

1

 do s

n

) łączących poszczególne elementy (rejestry) 

komputera to magistrala. O tym, z i do którego rejestru dana zostanie 
przesłana, decydują sygnały sterujące. Jeżeli magistrala łączy kilka 
rejestrów, występuje wtedy także odpowiednia liczba sygnałów 
sterujących.

kierunek przepływu danych oznacza się strzałką o nie zapełnionym 
grocie, łączącą elementy, między którymi przepływ taki może nastąpić. 

background image

 

 

60

Sygnały sterujące przepływem danych:

•sygnały poziomowe

•impulsowe.  

Rozróżnienie to jest związane z propagacją sygnałów. 

Sygnał wyjściowy (np. z rejestru C) powinien zostać wysłany 
odpowiednio wcześniej i trwać przez dłuższy okres czasu, tak aby był 
sygnałem stabilnym w momencie odczytu (np. przez rejestr A). 

Przyjęto, że sygnały sterujące wyjściami poszczególnych elementów są 
sygnałami poziomowymi, oznaczonymi na schematach liniami z 
przekreśleniem wraz z podaną nazwą linii. Czasem trwania takiego 
sygnału jest cały takt. 

Sygnały impulsowe oznaczane są strzałkami o zapełnionych grotach z 
podana nazwą sygnału. W chwili wystąpienia impulsu sygnał taki ma 
wartość l. 

background image

 

 

61

Przesyły realizowane są także między magistralami - multipleksowanie
Wyróżniamy:

• multipleksowanie rozwidlające (demultipleksowanie), polegające na 
wpisaniu stanu magistrali na jedną z kilku wybranych 

•koncentrujące (multipleksowanie)- przepisanie stanu wybranej z kilku 
magistral na jedną.

background image

 

 

62

Pamięć komputera

Pamięć umożliwia przyjmowanie i zapisywanie danych, a następnie ich 
wprowadzanie w dowolnym momencie do toczącego się w komputerze 
procesu obliczeniowego.

Na pamięć składają się. punkty pamięci, które są miejscem 
przechowywania danych jednobitowych. 

Uporządkowany zbiór punktów pamięci to komórka pamięci, 
zawierająca słowo maszynowe.

background image

 

 

63

Podział pamięci :

Pamięci można podzielić ze względu na technologię produkcji na 
magnetyczne i półprzewodnikowe. Pamięci magnetyczne można z kolei 
podzielić na pamięci o ruchomych i nieruchomych punktach pamięci. 
Pierwsze z nich to takie, których punkty wymagają przemieszczenia dla 
realizacji odczytu lub zapisu. Są to wszelkiego rodzaju pamięci dyskowe 
lub taśmowe. Pamięć o nieruchomych punktach nie wymaga 
przemieszczania. Do tego rodzaju pamięci można zaliczyć pamięć 
ferrytową. Pamięci półprzewodnikowe można podzielić na dynamiczne i 
statyczne.

background image

 

 

64

W komputerach używane są pamięci półprzewodnikowe. Można 
dokonać różnorodnego podziału tych pamięci, np. ze względu na 
budowę można rozróżnić pamięci: 

•statyczne - Punktem pamięci półprzewodnikowej statycznej jest 
przerzutnik SR , zbudowany w oparciu o technologię bipolarną lub 
unipolarną. Zasada działania takiej pamięci polega na podaniu 
sygnału jedynki logicznej na odpowiednią linię słowa zapisu (lub 
odczytu) oraz sygnału "1" lub "0" na linię bitu zapisywanego 
(odczytywanego).

•dynamiczne - pamięć dynamiczna wymaga dodatkowego działania, 
jakim jest odświeżanie.

background image

 

 

65

Pamięci półprzewodnikowe mają organizacją określoną jako n·m

"n" oznacza tutaj wielkość pamięci (np. 16, 256, 1024), 

a "m" ilość bitów dostępnych po zaadresowaniu pojedynczej komórki 
m= l, 4, lub 8). 

Znajduje się tu linia bitu zapisu i odczytu oraz linie adresowe. 

Zespół takich punktów stanowi pamięć półprzewodnikową o organizacji 
 8.

background image

 

 

66

Najczęściej stosowaną organizacją w przypadku budowy pamięci RAM 
komputera jest organizacja n*l. 

Rozważmy przykładowo pamięć 1024·1, a więc taką, dla której możliwy 
jest odczyt lub zapis danych jednobitowych. 

Ponieważ komputer przetwarza całe bajty pamięci (czyli 8 bitów), do 
budowy pamięci o pojemności lkB trzeba użyć 8 bloków 1024·1. 
Połączenie to wymaga równoległego podania adresu na wszystkie bloki i 
potraktowania każdego z nich jako nadawcę (odbiorcę) jednego bitu 
danej.

background image

 

 

67

Do pamięci można się odwołać poprzez dwa rejestry: 

Rejestr A jest rejestrem adresowym, 
połączonym z magistralą adresową 
komputera. Do rejestru tego wpisywany 
jest sygnałem wea adres komórki, która 
ma zostać obsłużona.

Rejestr S przechowuje daną, która ma 
zostać zapisana lub odczytana z adresu 
znajdującego się w rejestrze A. Sygnały 
sterujące to: wes. wprowadzający słowo 
maszynowe z magistrali do rejestru i 
wys, wyprowadzający je na magistralę. 
Sygnałami określającymi rodzaj operacji 
przeprowadzanej na komórce o adresie 
w A są pisz i czyt

background image

 

 

68

Można wyróżnić następujące rodzaje pamięci półprzewodnikowych:

- RAM (ang. Random Access Memory), to pamięć o swobodnym 
dostępie. Możliwy jest zapis i odczyt.
- ROM (ang. Read Only Memory), pamięć o stałej zawartości, 
zapisywana przez producenta, nie mająca możliwości zmiany.
- PROM (ang. Programable ROM), jednokrotnie zapisywalna przez 
użytkownika.
- pamięci stałe o możliwości wielokrotnego kasowania i programowania 
(np. EPROM, EEPROM).

Podstawowymi cechami każdej pamięci są: 

•pojemność, 

•czas dostępu, 

•rodzaj odczytu (niszczący lub nie), 

•rodzaj dostępu (bezpośredni lub przez bloki).

background image

 

 

69

1

background image

 

 

70

1

background image

 

 

71

Model Procesora 

• Struktura prostego abstrakcyjnego komputera. 
• Kiedy operand zostaje pobrany z pamięci, np. W 

przypadku operacji odejmowania, operand ten jest 

czasowo przechowywany w rejestrze procesora 

zwanym rejestrem b. 

Akumulator

Licz. rozkazów

Rejestr poleceń

Inst. warunkowe