Przetwarzanie informacji Wykład Jacka FLORKA (http://ii1.ap.siedlce.pl/~florek/sk ) (Ewa Banachowicz Zakład Biofizyki Molekularnej) Przetwarzanie informacji SYSTEMY LICZBOWE Rodzaje informacji (analogowe i cyfrowe) System dwójkowy System heksadecymalny 1
RODZAJE INFORMACJI Informacje analogowe Informacje dyskretne (cyfrowe) U(t) Umax Umax MASZYNA ANALOGOWA R=(0,Umax) WE WY nieskończony zbiór możliwych wartości Informacje dyskretne (cyfrowe) U(t) Umax Umaxq # # MASZYNA CYFROWA # # R=(U, 2U, 3U, 4U) a/c c/a moc zbioru R wynosi 4 U - kwant wartości
INFORMACJA CYFROWA (1) Def.1. Informacją cyfrową nazywamy informację przedstawioną w postaci słów cyfrowych Def.2. Słowem cyfrowym nazywamy dowolny ciąg składający się z symboli 0 i/lub 1 Długość słowa Oznaczenie symboliczne Nazwa 1 4 8 16 32 64 a0 a3...a0 a7.....a0 a15.......a0 a31.........a0 a63...........a0 bit tetrada, kęs bajt słowo 16-bitowe, słowo podwójne słowo, dwusłowo słowo 64-bitowe, czterosłowo 1b - oznacza 1 bit 1B=8b 1B - oznacza 1 bajt 1kB=1024B (210) 1MB=1024kB 1GB=1024MB Przykład: 20 MB jest ilością informacji ośmiokrotnie większą niż 20Mb
INFORMACJA CYFROWA (2) an-1 ......................... a0 W słowach cyfrowych wyróżnia się najstarszą i najmłodszą pozycję, tj. bit najbardziej znaczący zwany najstarszym (ang. MSB - Most Significant Bit) oraz bit najmniej znaczący zwany najmłodszym (ang. LSB - Least Significant Bit) an-1 ......................... a0 MSB LSB Analogicznie możemy mówić o starszym i najmłodszym bajcie lub o starszej lub młodszej tetradzie
DZIESIĘTNY SYSTEM LICZBOWY Do zapisu dowolnej liczby system wykorzystuje dziesięć symboli (cyfr): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Dowolną liczbę w systemie dziesiętnym możemy przedstawić jako następująca sumę: (an-1...a1a0)(10) = an-1*10(n-1) +...+ a1*101 + a0*100 = gdzie: i - numer pozycji w liczbie, ai - dowolna z cyfr od 0 do 9, n - ilość cyfr (pozycji) w liczbie Przykład: 424(10) = 4*102 + 2*101 + 5*100 pozycja jedynek (0) pozycja dziesiątek (1) pozycja setek (2)
DWÓJKOWY SYSTEM LICZBOWY Do zapisu dowolnej liczby system wykorzystuje dwa symbole (cyfry): 0, 1 Dowolną liczbę w systemie dwójkowym możemy przedstawić jako następująca sumę: (an-1...a1a0)B = an-1*2(n-1) +...+ a1*21 + a0*20 = gdzie: i - numer pozycji w liczbie, ai - dowolna z cyfr (0 lub 1), n - ilość cyfr (pozycji) w liczbie Przykład: 10100B = 1*24 + 0*23 + 1*22 + 0*21 + 0*20
kierunek odczytu wyniku KONWERSJA LICZB 1. 10100B = 1*24 + 0*23 + 1*22 + 0*21 + 0*20 = = 1*16 + 0*8 + 1*4 + 0*2 + 0*1 = 20D 2. 20:2 = 10 10:2 = 5 5:2 = 2 2:2 = 1 1:2 = 0 reszta=0 reszta=1 kierunek odczytu wyniku czyli 20D = 10100B
HEKSADECYMALNY (SZESNASTKOWY) SYSTEM LICZBOWY Do zapisu dowolnej liczby system wykorzystuje szesnaście symboli (cyfr i liter): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Dowolną liczbę w systemie heksadecymalnym możemy przedstawić jako następująca sumę: (an-1...a1a0)H = an-1*16(n-1) +...+ a1*161 + a0*160 = gdzie: i - numer pozycji w liczbie, ai - dowolna cyfra heksadecymalna, n - ilość cyfr (pozycji) w liczbie Przykład: 1C2H = 1*162 + C*161 + 2*160
kierunek odczytu wyniku KONWERSJA LICZB (1) 1. 1C2H = 1*162 + C*161 + 2*160 = = 1*256 + 12*16 + 2*1 = 450D 2. 450:16 = 28 28:16 = 1 1:16 = 0 reszta=2 reszta=C reszta=1 kierunek odczytu wyniku reszty zapisujemy w postaci cyfry heksadecymalnej czyli 450D = 1C2H
KONWERSJA LICZB (2) Do konwersji zapisu binarnego na heksadecymalny i odwrotnie wykorzystuje się tabelę:
KONWERSJA LICZB (3) 1. 1C2H = = 0001 1100 0010 = = 000111000010 = każdą cyfrę hex. zapisujemy w postaci czwórki cyfr binarnych 1C2H = = 0001 1100 0010 = = 000111000010 = = 111000010B odrzucamy nieznaczące zera na początku liczby binarnej 2. liczbę binarną dzielimy od końca na czwórki ewentualnie dopisując nieznaczące zera w ostatniej (pierwszej) czwórce 111000010B = = 0001 1100 0010B = = 1C2H każdą czwórkę binarną zapisujemy w postaci cyfry hex.
W jakim systemie liczbowym zapisano biografię? Ukończyłem uniwersytet w 44 roku życia; po roku, jako już 100-letni młodzieniec, ożeniłem się z 34-letnią panienką. Nieznaczna różnica wieku – 11 lat tylko – sprzyjała bardzo harmonijnemu małżeńskiemu pożyciu. W stosunkowo krótkim czasie mieliśmy już 10 dzieci. Moja miesięczna pensja wynosiła 13000 zł, z których 1/10 oddawałem siostrze, tak iż na własne utrzymanie mieliśmy tylko 11200 zł na miesiąc; mimo to byliśmy szczęśliwi. W systemie dziesiętnym ma ona postać: Ukończyłem uniwersytet w 24 roku życia; po roku, jako już 25-letni młodzieniec, ożeniłem się z 19-letnią panienką. Nieznaczna różnica wieku – 6 lat tylko – sprzyjała bardzo harmonijnemu małżeńskiemu pożyciu. W stosunkowo krótkim czasie mieliśmy już 5 dzieci. Moja miesięczna pensja wynosiła 1000 zł, z których 1/5 oddawałem siostrze, tak iż na własne utrzymanie mieliśmy tylko 800 zł na miesiąc; mimo to byliśmy szczęśliwi.
KODOWANIE LICZB I TEKSTÓW Kody binarne kod naturalny NKB kod BCD kod Gray’a inne kody Kodowanie znaków (tekstów) 2
KODOWANIE Def.1. Kodowaniem nazywamy przyporządkowanie poszczególnym obiektom zbioru kodowanego odpowiadających im elementów zwanych słowami kodowymi, przy czym każdemu słowu kodowemu musi odpowiadać dokładnie jeden element kodowany A 111 100 B 010 C 001 Zbiorem kodowanym może być zbiór dowolnych obiektów (cyfr, liter, symboli graficznych, stanów logicznych, poleceń do wykonania itp.) Proces kodowania może być opisem słownym, wzorem (zależnością matematyczną), tabelą kodową itp. Def.2. Kodem liczbowym nazywamy taki kod, który liczbom dowolnego systemu będzie przyporządkowywał słowa kodowe w postaci zerojedynkowej (binarnej)
NATURALNY KOD BINARNY (NKB) Def. Jeżeli dowolnej liczbie dziesiętnej przyporządkujemy odpowiadająca jej liczbę binarną, to otrzymamy naturalny kod binarny (NKB) Minimalna długość k słowa binarnego reprezentującego liczbę dziesiętną A musi spełniać warunek: Oznacza to, że aby zakodować liczbę dziesiętną w zakresie 0-15 wystarczy wykorzystać jedną tetradę (długość słowa kodowego k=4) gdyż
KOD PROSTY BCD Gdy w systemie wygodnie jest operować liczbami dziesiętnymi stosowany jest kod BCD. Liczba terad kodu BCD jest bowiem równa liczbie pozycji dziesiętnych reprezentowanej liczby. Np. dziesiętna liczba 6-pozycyjna (000000-999999) jest kodowana na 24 bitach Konstrukcja: każdej cyfrze dziesiętnej przyporządkowujemy czterocyfrową liczbę dwójkową w kodzie NKB*); słowo kodowe w kodzie prostym BCD otrzymujemy zapisując każdą cyfrę liczby dziesiętnej w postaci tetrady binarnej 463D = 010001100011BCD 67D = 01100111BCD *) gdybysmy zamiast kodu NKB użyli kodu np. Gray’a wówczas otrzymalibysmy kod BCD Gray’a
KOD GRAY’A Def. Kod Gray’a to taki kod, którego kolejne słowa różnią się tylko na jednej pozycji Kod Gray’a tworzy się z kodu naturalnego NKB biorąc pod uwagę:
INNE KODY BINARNE Długość słowa kodu „1 z n” (w tabeli „1 z 10”) jest równa n, tj. liczności zbioru kodowanego (liczbie kodowanych słów) Kod 5-bitowy stosowany do kodowania cyfr dziesiętnych Są to kody nadmiarowe (redundancyjne), w których liczba pozycji binarnych jest większa niż wynika to z ogólnej zależności Redundancję można wykorzystać do zwiększenia niezawodności operacji wykonywanych na liczbach
KODOWANIE ZNAKÓW Początki: Harald C. M. Morse (kropka - kreska - ....); Anatol de Baudot (dalekopis); w pierwszych maszynach cyfrowych - kod dalekopisowy 5-bitowy, a potem 8-bitowy (EBCDIC); W 1977 roku kiedy to ANSI (American National Standards Institute) zatwierdził kod ASCII (The American Standard Code for Information Interchange). Jest to 7-bitowy kod (8 bit do kontroli parzystości), definiujący 128-elementowy zestaw znaków (character set) o wartościach kodowych od 0 do 127. Zestaw zawiera litery łacińskie (duże i małe), cyfry i znaki interpunkcji oraz różne znaki specjalne. Międzynarodowa Organizacja Standaryzacji - ISO, nadała amerykańskiemu systemowi kodowania status standardu międzynarodowego oznaczonego jako ISO 646. Kod ASCII rozszerzony wprowadza dodatkowe 128 znaków wykorzystując mało używany bit parzystości: IBM wprowadza Code Page 474 dla USA Code Page 852 dla Europy Wschodniej
KODOWANIE ZNAKÓW kod ASCII
problem polskich liter KODOWANIE ZNAKÓW problem polskich liter 1. W 1987 roku ISO tworzy standard ISO 8859 (rozszerzone ASCII): ISO 8859-1 (Latin-1) - Europa zachodnia ISO 8859-2 (Latin-2) - Europa wschodnia ............................... ISO 8859-5 (cyrlica) ISO 8859-7 (greka) 2. W 1990 roku Instytut Maszyn Matematycznych tworzy kod Mazovia (rozpowszechniony w dobie kart graficznych Hercules) 3. Firma Microsoft tworzy własny zestaw znaków dla Europy wschodniej Windows CP 1250
problem polskich liter KODOWANIE ZNAKÓW problem polskich liter
STAŁOPOZYCYJNA REPREZENTACJA LICZB Do reprezentacji liczb całkowitych stosowane są kody stałopozycyjne zapis znak-moduł zapis U1 zapis U2 zapis polaryzowany (BIAS) Zapis znak-moduł tworzy się przez dodanie przed MSB dodatkowego bitu znaku do zapisu NKB: 0 - liczba dodatnia; 1 - liczba ujemna; „0” ma podwójną reprezentację: 1000...000 lub 0000...000 W zapisie U1 (uzupełnień do 1) MSB jest także bitem znaku : 0 - liczba dodatnia; 1 - liczba ujemna; ale w zależności od jego wartości dalsze bity mają różne znaczenie. Dla „0” (l.dodatnia) dalsze bity reprezentują liczbę w NKB. Dla „1” (l.ujemna) dalsze bity reprezentują moduł liczby ujemnej, w taki sposób, że zanegowane ich wartości odpowiadają modułowi tej liczby w NKB. „0” ma podwójną reprezentację: 1111...111 lub 0000...000 Zapis U2 (uzupełnień do 2) jest podobny do U1 ale dla liczb ujemnych. Moduł liczby ujemnej powstaje tak, że do zanegowanych pozycji słowa jest arytmetycznie dodawana jedynka i dopiero tak utworzone słowo odpowiada w NKB modułowi tej liczby. „0” ma pojedynczą reprezentację: 0000...000 Zapis BIAS (polaryzowany) przedstawia liczby w taki sposób, że „0” jest reprezentowane przez n-bitowe słowo 1000..000 czyli przez liczbę 2n-1 kodu NKB. Wszystkie inne liczby A są przedstawione na n pozycjach jako binarne wartości liczby 2 n-1+A
STAŁOPOZYCYJNA REPREZENTACJA LICZB
STAŁOPOZYCYJNA REPREZENTACJA LICZB dodawanie i odejmowanie
STAŁOPOZYCYJNA REPREZENTACJA LICZB dodawanie i odejmowanie (kod U2) W zapisie U2 (uzupełnień do 2) liczbę binarną można przedstawić jako: an-1...a0 = -an-1.2n-1+an-2.2n-2+ ... +a0.20 Najstarszy bit nie jest tylko bitem znaku ale niesie wraz ze swoją wagą wartość ujemną 1101U2 = -1.23+1.22+0.21+1.20 = -8+4+1 = -3D 0111U2 = -0 .23+1.22+1.21+1.20 = 4+2+1 = 7D Ponieważ: a-b=a+(-b); -a+b=(-a)+b; -a-b=(-a)+(-b) to korzystnie jest stosować liczbę przeciwną (oznaczanej symbolem ~) do danej ~0111U2 1000 + 1 1001U2 7D negacja wszystkich bitów i dodanie 1 -7D Zakresy liczb w kodzie U2: -2n-1X 2n-1-1 np. dla n=5 liczby od -16D (10000U2) do +15D (01111U2). W zakresie tym muszą się znaleźć nie tylko argumenty ale i wynik. 110111 +111000 1 101111 -9D = -1.32+1.16+0.8+1.4+1.2+1.1 10111 +11000 1 01111 -9D = -1.16+0.8+1.4+1.2+1.1 -8D = -1.32+1.16+1.8+0.4+0.2+0.1 -8D = -1.16+1.8+0.4+0.2+0.1 -17D = -1.32+0.16+1.8+1.4+1.2+1.1 -17D = -1.32+0.16+1.8+1.4+1.2+1.1 bit poza zakresem - odrzucamy bit poza zakresem - nie odrzucamy
ZMIENNOPOZYCYJNA REPREZENTACJA LICZB Do reprezentacji liczb ułamkowych stosowany jest zapis zmiennopozycyjny złożony z trzech części: jednobitowe pole znaku n-bitowe pole części ułamkowej (mantysy) - S[0.5, 1.0) tj. dwójkowo 0.1000...0 S<0.1111...1 czyli 0.1a-2a-3...a-(n+2), tj. 1.2-1+a-2.2-2+a-3.2-3+...+a-(n+2).2-(n+2) m-bitowe pole części wykładnika (cechy) - E A = ±S.B±E B - podstawa (np. 2, 10, 16 itp.) Przykład: +625,625 =0,625625.103 1001110001 0,625=0,5+0,125 0,100+0,001 = 0,101 1001110001,101 = 0,1001110001101.210 1bit znaku mantysa (23 bity) cecha (8 bitów) 0 0011 1000 1101 0000 0000 0000 10001010
ELEMENTY ALGEBRY BOOLE’A Zmienne logiczne i operacje logiczne Aksjomaty algebry Boole’a i prawa de Morgana Funkcje logiczne Minimalizacja funkcji logicznych Realizacja funkcji logicznych 3
ZMIENNE LOGICZNE I OPERACJE LOGICZNE Def.0. Zmienną logiczną nazywamy zmienną, która może przyjmować jedną z dwóch wartości logicznych: prawdę lub fałsz („0” lub „1”, „L” lub „H”). Algebra Boole’a jest algebrą z trzema operacjami na dwuwartościowych argumentach (wyniki też są dwuwartościowe) suma logiczna (alternatywa) iloczyn logiczny (koniunkcja) negacja (inwersja) działania dwu- lub więcej argumentowe działania jedno-argumentowe Def.1. Jeżeli co najmniej jeden z argumentów jest równy 1, to wynik sumowania jest równy 1. Suma jest równa 0 tylko w przypadku, gdy wszystkie argumenty są równe 0. Def.2. Wynik iloczynu jest równy 1, wtedy i tylko wtedy, gdy wszystkie argumenty przyjmują wartość 1. Def.3. Negacja polega na zmianie wartości argumentu, tj. jeśli argument ma wartość 1, to operacja daje w wyniku wartość 0, a jeśli argument ma wartość 0, to operacja daje w wyniku wartość 1.
AKSJOMATY ALGEBRY BOOLE’A I PRAWA DE MORGANA 1. Przemienność 2. Łączność 3. Rozdzielczość 4. Tożsamość 5. Komplementarność Prawa de Morgana
OPERACJE LOGICZNE
FUNKCJE BOOLE’OWSKIE Istnieją cztery sposoby przedstawienia tych funkcji: tablica prawdy postać kanoniczna funkcji dziesiętny zapis funkcji mapa Karnaugha 1. 2. 3. 4. - wskazanie na postać alternatywną - wskazanie na postać koniunkcyjną
MINIMALIZACJA FUNKCJI LOGICZNYCH Minimalizację funkcji można przeprowadzić: przekształcając postać kanoniczna funkcji wykorzystując mapy Karnaugha metodą Quine’a metodą Quine’a-McCluskeya metodą tablic harwardzkich metodą Patricka metodą Blake’a Przykład: Zminimalizować funkcję f(A,B,C,D)=(5,7,13,15) AB CD f(A,B,C,D)=BD
MINIMALIZACJA FUNKCJI LOGICZNYCH Przykład: Zminimalizować funkcję f(A,B,C,D)=(5,7,13,15) AB CD lub AB CD
MINIMALIZACJA FUNKCJI LOGICZNYCH Przykład: Zminimalizować funkcję f(A,B,C,D)=(5,7,8,9,12,15) AB CD f(A,B,C,D) =
REALIZACJA FUNKCJI BOOLE’OWSKICH OR AND NOR NAND EXOR NOT
NAND
OR AND
PROJEKTOWANIE UKŁADÓW LOGICZNYCH Podział układów logicznych Realizacja funkcji logicznych układów kombinacyjnych Realizacja układu sekwencyjnego 4
PODZIAŁ UKŁADÓW LOGICZNYCH Układy logiczne można podzielić (w zależności od przyjętego kryterium) na: układy kombinacyjne układy sekwencyjne Def.1. Układem kombinacyjnym nazywamy taki układ cyfrowy, w którym stan wejść jednoznacznie określa stan wyjść układu. Def.2. Układem sekwencyjnym nazywamy taki układ cyfrowy, w którym stan wyjść zależy od stanu wejść oraz od poprzednich stanów układu. układy asynchroniczne układy synchroniczne Def.3. Układem asynchronicznym nazywamy taki układ cyfrowy, dla którego w dowolnym momencie jego działania stan wejść oddziaływuje na stan wyjść. Def.4. Układem synchronicznym nazywamy taki układ cyfrowy, dla którego stan wejść wpływa na stan wyjść w pewnych określonych odcinkach czasu zwanych czasem czynnym, natomiast w pozostałych odcinkach czasu zwanych czasem martwym stan wejść nie wpływa na stan wyjść.
PODZIAŁ UKŁADÓW LOGICZNYCH układy kombinacyjne: sumatory komparatory dekodery, kodery, transkodery multipleksery, demultipleksery ..... układy matrycowe ........ układy zbudowane z bramek bloki kombinacyjne A={X,Y,: XY} X- zbiór stanów sygnałów wejściowego Y - zbiór stanów sygnałów wyjściowego - funkcja opisująca działanie układu układy sekwencyjne: przerzutniki rejestry liczniki ..... A={X, Y, S, : XxSS, : XxSY} X- zbiór stanów sygnałów wejściowego Y - zbiór stanów sygnałów wyjściowego S - zbiór stanów wewnętrznych - funkcja przejść (określa zmiany stanów układu wszystkich wzbudzeń) - funkcja wyjść (przyporządkowuje sygnały wyjściowe stanom układu i wzbudzeniom)
REALIZACJA FUNKCJI LOGICZNYCH Przykład: Zaprojektować układ realizujący funkcję f(A,B,C,D)=(5,7,13,15) f(A,B,C,D)=(5,7,13,15)= A B C D lub na podstawie tablic Karnaugha B D
REALIZACJA FUNKCJI LOGICZNYCH Przykład: Zaprojektować układ realizujący funkcję CD AB A B C D
REALIZACJA UKŁADU SEKWENCYJNEGO Założenia (przykład): układ dwustanowy S={S1=0, S2=1} o czterech pobudzeniach X={X1=00, X2=01, X3=10, X4=11} i dwóch stanach sygnałów wyjściowych Y={Y1=1,Y2=0} oraz funkcjach : X1x S1= S1 : S1= Y2 X2x S1 = S1 S2= Y1 X3x S1 = S2 X4x S1 = S2 X1x S2 = S2 X2x S2 = S1 X3x S2 = S2 X4x S2 = S2 tabela przejść i wyjść zakodowana stany pierwotne stany następne St x1 x2 S y
PODSTAWY DZIAŁANIA UKŁADÓW CYFROWYCH Cyfrowe układy arytmetyczne Przerzutniki Rejestry Liczniki Dzielniki Bramki trójstanowe Multipleksery i demultipleksery Magistrale danych 5-6
Przykład projektowania układu kombinacyjnego (jednobitowy półsumator) Dodawanie binarne dwóch bitów przeniesienie wynik sumowania b b a a C=ab a Y b półsumator C sumator ci b y yi półsumator bi y c b a półsumator Ci+1 ai c a
Przykład projektowania układu kombinacyjnego (jednobitowy sumator) 1. Dane są dwie liczby w kodzie NKB: 2. Jak znaleźć sumę? Dodawać poszczególne pozycje (począwszy od pozycji najmniej znaczących) uwzględniając przeniesienie. Czyli obliczyć dwie funkcje: yi - binarny wynik dodawania oraz ci+1 - wartość przeniesienia ci+1 yi ci ai bi 3. Tabela prawdy 4. Mapy Karaugha ai bi ai bi ci ci yi ci+1 ai yi bi ci ci+1
Przykład projektowania układu kombinacyjnego (sumator wielobitowy) Aby zrealizować sumowanie dwóch k-bitowych liczb należy połączyć ze sobą k sumatorów jednobitowych b0 a0 b1 a1 bk-1 ak-1 c0=0 ck y0 y1 yk-1
PRZERZUTNIKI Def.1. Przerzutniki są podstawowymi elementami układów sekwencyjnych, których zasadniczym zadaniem jest pamiętanie jednego bitu informacji Posiada co najmniej dwa wejścia i z reguły dwa wyjścia wejścia programujące wejścia informacyjne wejście zegarowe wyjścia Zasadnicze typy przerzutników: RS, JK, D i T
ASYNCHRONICZNY PRZERZUTNIK RS wejścia informacyjne/programujące wejście ustawiające (SET) S R Q R S Q wyjście proste wejścia informacyjne/programujące wyjścia wyjście zanegowane wejście zerujące (RESET) pamiętanie ustawianie zerowanie stan zabroniony wpis jedynki S R zerowanie Q Q pamiętanie czas
SYNCHRONICZNY PRZERZUTNIK RS wejście ustawiające (SET) S R Q wyjście proste zegar CK wyjście zanegowane wejście zerujące (RESET) CK S R Q asynchroniczny Q czas
INNE PRZERZUTNIKI R J D T Q Q Q Q zegar zegar zegar zegar Q Q Q Q S K JK D T RS Q Q Q Q Przerzutnik JK działa podobnie jak RS, z tą różnicą, że gdy J=K=1, to sygnał zegara zmienia stan. W innych przypadkach J działa jak S, a K jak R. Przerzutnik D zapamiętuje stan wejścia D w chwili impulsu zegara. Przerzutnik T zmienia swój stan w czasie impulsu zegarowego, jeżeli T=1 a pozostaje w stanie pierwotnym, gdy T=0
REJESTRY Def.1. Rejestrem nazywamy układ cyfrowy przeznaczony do krótkoterminowego przechowywania niewielkich informacji lub do zamiany postaci informacji z równoległej na szeregową lub odwrotnie. a 1 a 2 a 3 We 3 We 2 We 1 We 0 CLK a 0 rejestr Wprowadzanie równoległe - wszystkie bity słowa informacji wprowadzamy jednocześnie , w jednym takcie zegara Wprowadzanie szeregowe - informację wprowadzamy bit po bicie (jeden bit na jeden takt zegara) rejestr rejestr rejestr a 0 ... a 3 a 2 a 1 a 0 a 3 a 2 a 1 a 0 a 3 a 2 a 1 CLK CLK CLK T1 T2 T3
REJESTRY PIPO - parallel input, parallel output - z wejściem i wyjściem równoległym (rejestry buforowe) SISO - serial input, serial output - wejście i wyjście szeregowe (rejestry przesuwające) SIPO - serial input, parallel output - z wejściem szeregowym i równoległym wyjściem PISO - parallel input, serial output - z wejściem równoległym i szeregowym wyjściem Q1 Q2 Q3 Q4 UST P1 P2 P3 P4 CLK ZER D1 D2 D3 D4
LICZNIKI Def.1. Licznikiem nazywamy układ cyfrowy, na którego wyjściu pojawia się zakodowana liczba impulsów podanych na jego wejście zliczające. Musi być znany: stan początkowy licznika (zero) pojemność licznika kod zliczania Rodzaje liczników: liczące w przód (następnikowe) liczące w tył (poprzednikowe) rewersyjne (mozliwość zmiany kierunku zliczania) szeregowe (asynchroniczne) równoległe (synchroniczne) Q0 Q1 Q2 Q3 D0 - D3 - wejścia danych CLK - wejście zegarowe CLR - wejście zerujące LD - wejście sterujące do wpisywania danych z wejść D0-D1 CEP - wejście dostępu (umożliwia zliczanie) CET - wejście dostępu (umożliwia powstanie przeniesienia TC) Q0 - Q3 - wyjścia TC - wyjście przeniesienia (umożliwia rozbudowę) CEP CET TC CLK LICZNIK LD CLR D0 D1 D2 D3
LICZNIKI Licznik poprzednikowy (liczący w tył) CLK Q1 Q2 Q3 Q T CLK Q1 Q2 Licznik poprzednikowy (liczący w tył) Q3 111 110 101 100 011 010 001 000 Q1 Q2 Q3 CLK Q Q Q T T T Q1 Q Q Q CLK CLK CLK Q2 Licznik następnikowy (liczący w przód) Q3 000 001 010 011 100 101 110 111
BRAMKI TRÓJSTANOWE Bramka trójstanowa jest narzędziem umożliwiającym odseparowanie elektryczne dwóch lub więcej punktów w systemie, np. wyjścia pewnego układu i wspólnego przewodu , po którym przesyłane są dane. WE WY ENABLE Na wyjściu mogą pojawić się trzy stany: stany logiczne przekazywane z wejścia bramki (0 lub 1) stan Z tzw. wysokiej impedancji (brak wzajemnego wpływu wartości elektrycznych na wejściu na wartości elektryczne na wyjściu bramki
MULTIPLEKSERY I DEMULTIPLEKSERY Mutipleksery i demutipleksery są układami umożliwiającymi zrealizowanie systemu transmisji. Po stronie nadawczej występuje przetwornik formatu słów z równoległego na szeregowy - mutiplekser. Umożliwia on przesłanie (w postaci prostej lub zanegowanej) na wyjście tego z sygnałów podanych na wejście informacyjne, który jest doprowadzony do wejścia o numerze określonym przez stan wejść adresowych. Po stronie odbiorczej przetwornik słów z formatu szeregowego na równoległy - demutiplekser. Umożliwia on przesłanie (w postaci prostej lub zanegowanej) sygnału z wejścia na to wyjście, które zostało wyróżnione przez stan wejść adresowych. DEMULTIPLEKSER MULTIPLEKSER WE WY Linia przesyłowa Adres Adres
MULTIPLEKSERY D0 D1 D2 D3 D4 W D5 D6 D7 Strob. A B C
DEMULTIPLEKSERY Y0 Y1 Y2 W Y3 Y4 Y5 Y6 Y7 Strob. A B C
MAGISTRALE DANYCH Def.1. Magistralą nazywamy zestaw linii oraz układów przełączających, łączących dwa lub więcej układów mogących być nadajnikami lub odbiornikami informacji. Przesyłanie informacji zachodzi zawsze pomiędzy dokładnie jednym układem będącym nadajnikiem a dokładnie jednym układem będącym odbiornikiem, przy pozostałych układach odseparowanych od linii przesyłających. NAD Układ odseparowany ODB
Podstawy architektury komputera Jednostka centralna (5 systemów) system logiczny system wyświetlania obrazu system przechowywania danych system obsługi wejść i wyjść system komunikacyjny 2. Wyświetlacze 3. Urządzenia wejściowe
Rys. Schemat przetwarzania informacji
Rys. Układy przetwarzania informacji: a) specjalizowany układ cyfrowy, b) maszyna cyfrowa
Rys. Organizacja maszyny cyfrowej
Rys. Schemat połączeń pomiędzy blokami komputera