firewire 800 pci

Transkrypt

firewire 800 pci
Materiały do wykładu
6. Interfejsy
Marcin Peczarski
Instytut Informatyki
Uniwersytet Warszawski
6 kwietnia 2009
Kodowanie kanałowe
 .
⊲ Reprezentacja ciągu bitów na nośniku lub w kanale transmisyjnym
⊲ Dopasowanie do własności nośnika
⊲ Zapewnienie synchronizacji
⊲ Zapewnienie zbalansowania – brak składowej stałej
⊲ Zwiększenie gęstości zapisu
Metoda RZ (return to zero)
1
1
0
0
1
0
1
⊲ Jedynka kodowana jako impuls o poziomie dodatnim
⊲ Zero kodowane jako impuls o poziomie ujemnym
⊲ Pomiędzy bitami powrót do poziomu zerowego
⊲ Samosynchronizacja
⊲ Brak zbalansowania
⊲ Dwie zmiany poziomu na bit
 .
Metoda RB (return to bias)
1
1
0
0
1
0
 .
1
⊲ Jedynka kodowana jako impuls o poziomie wysokim
⊲ Zero kodowane jako poziom niski (polaryzacji), bez zmiany poziomu
⊲ Brak synchronizacji długiego ciągu zer
⊲ Brak zbalansowania
⊲ Maksymalnie dwie zmiany poziomu na bit
Metoda NRZ (no return to zero)
1
1
0
0
1
0
1
⊲ Jedynka kodowana jako poziom wysoki
⊲ Zero kodowane jako poziom niski
⊲ Brak synchronizacji
⊲ Brak zbalansowania
⊲ Maksymalnie jedna zmiana poziomu na bit
 .
Metoda NRZI (no return to zero inverted)
1
1
0
0
1
0
1
⊲ Jedynka kodowana jako zmiana poziomu
⊲ Zero kodowane jako brak zmiany poziomu
⊲ Uwaga, w USB odwrotna konwencja kodowania
⊲ Synchronizacja np. przez nadziewanie bitami
⊲ Brak zbalansowania
⊲ Maksymalnie jedna zmiana poziomu na bit
 .
Metoda modulacji fazy
1
1
0
0
1
0
 .
1
⊲ Jedynka kodowana jako zmiana poziomu z niskiego na wysoki
⊲ Zero kodowane jako zmiana poziomu z wysokiego na niski
⊲ Konieczna sekwencja synchronizująca
⊲ Zbalansowanie
⊲ Dwie zmiany poziomu na bit
⊲ Kod Manchester, Ethernet 10 Mb/s, poziom wysoki 0 V, niski −2 V
Metoda FM (frequency modulation)
1
1
0
0
1
0
1
⊲ Jedynka kodowana jako dwie zmiany poziomu
⊲ Zero kodowane jako jedna zmiana poziomu
⊲ Konieczna sekwencja synchronizująca
⊲ Zbalansowanie
⊲ Maksymalnie dwie zmiany poziomu na bit
⊲ Stosowana dawo temu w dyskach magnetycznych
 .
Metoda MFM (modified frequency modulation)
1
1
0
0
1
0
 .
1
⊲ Jedynka kodowana jako zmiana poziomu w środku taktu
⊲ Zero występujące po jedynce kodowane bez zmiany poziomu
⊲ Zero po zerze kodowane jako zmiana poziomu na początku taktu
⊲ Konieczna sekwencja synchronizująca, zbalansowanie niedokładne
⊲ Maksymalnie jedna zmiana poziomu na bit
⊲ Stosowana dawniej w dyskach magnetycznych
AMI (alternate mark inversion)
1
1
0
0
1
0
1
⊲ Jedynki kodowane na przemian jako impuls dodatni i ujemny
⊲ Zera kodowane jako poziom zerowy
⊲ Synchronizacja np. przez nadziewanie bitami
⊲ Zbalansowanie
⊲ Maksymalnie jedna zmiana poziomu na bit
 .
HDB3 (high density bipolar of order 3 code)
.
1 0 1 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0
B
V
V
B
V
⊲ Jedynki kodowane na przemian jako impuls dodatni i ujemny
⊲ Mniej niż cztery zera kodowane jako poziom zerowy
⊲ Cztery kolejne zera zastępowane sekwencją 000V (000−, 000+) lub
B00V (+00+, −00−)
⊲ Samosynchronizacja i zbalansowanie
⊲ Maksymalnie jedna zmiana poziomu na bit
Kod 4B3T (four binary three ternary)
.
⊲ Trzypoziomowe kodowanie stosowane w telefonii ISDN
⊲ Względne poziomy sygnału: −1, 0, +1
⊲ Każde 4 bity (16 kombinacji) kodowane jako kombinacja trzech impulsów (27 możliwości do wyboru)
⊲ Nieużywane kombinacje impulsów: 000, +++, −−−
⊲ Pozostałe kombinacje wybierane tak, aby uzyskać samosynchronizację i zbalansowanie
⊲ Maksymalnie trzy zmiany poziomu na cztery bity, kompresja 4 : 3
Kod 2B1Q (two binary one quaternary)
.
⊲ Czteropoziomowe kodowanie stosowane w telefonii ISDN
⊲ Względne poziomy sygnału: −3, −1, +1, +3
⊲ Każde dwa bity kodowane jednym impulsem
⊲ Maksymalnie jedna zmiana poziomu na dwa bity, kompresja 2 : 1
Kod 4D-PAM5
.
⊲ Pięciopoziomowe kodowanie stosowane w Ethernecie 1 Gb/s
⊲ Względne poziomy sygnału: −2, −1, 0, 1, 2
⊲ Każdy oktet (256 kombinacji) kodowany jako wybrana kombinacja
czterech impulsów pięciowartościowych (625 kombinacji)
⊲ Każdy z czterech impulsów transmitowany osobną parą przewodów,
kompresja 8 : 1
Kody xb/yb
⊲ Każde x bitów danych kodowane jako y bitów kanałowych
⊲ Samosynchronizcja
⊲ Kod idle
⊲ 4b/5b – Ethernet 100 Mb/s
⊲ 8b/10b – PCI Express, SATA, . . .
⊲ 64b/66b – Ethernet 10 Gb/s
.
Kody RLL (run length limited)
.
⊲ Własność RLL(d, k)
⋄ d – minimlana liczba zer rozdzielających dwie jedynki
⋄ k – maksymalna liczba zer rozdzielających dwie jedynki
⊲ Kodowanie
⋄ jedynka jako zmiana poziomu
⋄ zero jako brak zmiany poziomu
⊲ Parametr d determinuje minimalny okres czasu między zmianami
poziomu, czyli gęstość zapisu lub szybkość transmisji.
⊲ Parametr k determinuje maksymalny okres czasu między zmianami
poziomu, czyli własność synchronizacji.
Kody RLL
⊲ Kod 4b/5b ma własność RLL(0, 3).
⊲ Kod 8b/10b ma własność RLL(0, 5).
⊲ Kody RLL(1, 3), RLL(1, 7), RLL(1, 10), RLL(2, 7), RLL(2, 10)
RLL(2, 12) stosowane w dyskach magnetycznych i optycznych
⊲ Kod RLL(1, 13) stosowany w IrDA
.
Kod RLL(2, 7)
.
⊲ Ciąg kodowany długości n bitów zastępowany ciągiem kodowym
o długości 2n bitów
ciąg kodowany
ciąg kodowy
10
11
010
011
0010
0011
000
0100
1000
100100
001000
00100100
00001000
000100
⊲ Maksymalnie dwie zmiany poziomu na trzy bity kodowane, kompresja 3 : 2
Kod EFM (eight to fourteen modulation)
.
⊲ Każde 8 bitów danych kodowane jako 14 bitów kodowych
⊲ Własność RLL(2, 10), ale nie na granicy słów kodowych
⊲ RDS (running digital sum) – różnica liczby impulsów o poziomie
wysokim i niskim w dotychczas zakodowanym ciągu
⊲ 3 bity separujące między każdymi 14 bitami kodowymi dla zachowania własności RLL i ograniczenia wartości RDS
⊲ Każde 8 bitów danych kodowane jako 17 bitów kanałowych
⊲ Kompresja 24 : 17
⊲ Stosowany w płytach CD
Kod EFM+
⊲ Każde 8 bitów danych kodowane jako 16 bitów kanałowych
⊲ Brak bitów separujących
⊲ Własność RLL(2, 10)
⊲ Minimalizacja modułu RDS
⊲ Kompresja 3 : 2
⊲ Stosowany w płytach DVD
.
Chwila odprężenia
⊲ Kod stosowany na taśmach papierowych
⊲ Metoda RB
⊲ Synchronizacja zapewniana przez ścieżkę z małymi dziurkami
⊲ Zbalansowanie nieistotne dla nośnika papierowego
.
Interfejs (1)
⊲ Zespół urządzeń i protokołów do przesyłania danych
⊲ Sposób przesyłania
⋄ szeregowy
⋄ równoległy
⋄ szeregowo-równoległy
⊲ Tryb pracy
⋄ simplex – jednokierunkowy
⋄ half duplex – dwukierunkowy naprzemienny
⋄ full duplex – dwukierunkowy jednoczesny
.
Interfejs (2)
⊲ Liczba urządzeń
⋄ dwupunktowy (ang. point-to-point)
⋄ wielopunktowy (ang. multi-point)
⊲ Arbitraż
⋄ centralny
⋄ rozproszony
⊲ Koordynacja czasowa
⋄ asynchroniczny
⋄ synchroniczny
.
Szyna
.
⊲ Szyna, magistrala (ang. bus) – zespół przewodów, linii przenoszących grupę sygnałów elektrycznych, łączących urządzenia cyfrowe
⊲ Przewody, linie
⋄ dedykowane
⋄ multipleksowane
Złącze (1)
.
⊲ Łącze – zespół środków i urządzeń do przesyłania sygnałów elektrycznych ≈ interfejs
⊲ Złącze – podzespół do łączenia obwodów elektrycznych
⋄ część żeńska (ang. female)
⋄ część męska (ang. male)
Złącze (2)
⊲ Płeć złącza nie determinuje pełnionej funkcji.
⋄ gniazdo żeńskie
⋄ wtyk żeński
⋄ wtyk męski
.
Magistrala systemowa
⊲ Specyficzna dla każdego modelu procesora
⊲ Łącząca procesor
⋄ z kontrolerem pamięci
⋄ z innymi procesorami w systemie wieloprocesorowym
⋄ z kontrolerem innej magistrali, np. PCI
⊲ Linie, sygnały
⋄ danych
⋄ adresowe
⋄ sterujące
⊲ Linie danych i adresowe czasem multipleksowane
.
PCI (1)
.
⊲ Peripheral Component Interconnect – interfejs urządzeń peryferyjnych
⊲ Interfejs równoległy, synchroniczny, half duplex
⊲ Specyfikacja
⋄ wymiary złącza
⋄ charakterystyki elektryczne
⋄ protokół komunikacji
⊲ Parametry
⋄ częstotliwość taktowania 33 MHz lub 66 MHz
⋄ 32-bitowa lub 64-bitowa szyna danych
⋄ 32-bitowa przestrzeń adresowa
PCI (2)
.
⋄ 32-bitowa przestrzeń wejścia-wyjścia
⋄ 256 bajtowa przestrzeń konfiguracyjna
⋄ napięcie zasilania 5 V lub 3,3 V
⊲ Warianty
⋄ PCI-X – częstotliwość taktowania 133 MHz
⋄ PCI-X 2.0 – taktowanie 266 MHz i 533 MHz, przestrzeń konfiguracyjna 4096 B, wersja 16-bitowa, zasilanie 1,5 V
⋄ Mini PCI – wersja PCI 2.2 do użytku w laptopach
⋄ Cardbus – wersja PCMCIA specyfikacji PCI (33 MHz i 32-bity)
⋄ AGP (Accelerated Graphics Port, Advanced Graphics Port) –
interfejs dedykowany do kart graficznych
PCI (3)
⊲ Funkcjonalność plug and play
⋄ rozpoznawanie urządzenia
⋄ przydzielanie adresów pamięci
⋄ przydzielanie adresów wejścia-wyjścia
⋄ przydzielanie numeru przerwania
⊲ Firmware
⋄ kod wykonywalny w urządzeniu
⊲ Możliwość konfiguracji hierarchicznej
.
PCI (4)
.
⊲ Linie systemowe
⋄ CLK – sygnał zegara
⋄ RST – reset
⊲ Linie adresów i danych
⋄ AD – multipleksowane linie adresów i danych
⋄ C/BE – multipleksowane linie rozkazów magistralowych i zezwolenia bajtów
⊲ Linie arbitrażu, osobne dla każdego urządzenia
⋄ REQ – żądanie dostępu do magistrali
⋄ GNT – przyznanie dostępu do magistrali
PCI (5)
.
⊲ Linie sterowania interfejsem
⋄ FRAME – Aktywowana przez urządzenie, które uzyskało dostęp
do magistrali i stało się urządzeniem nadrzędnym, wskazuje początek i koniec transakcji.
⋄ IRDY – gotowość urządzenia nadrzędnego – Podczas odczytu
wskazuje, że urządzenie jest gotowe przyjąć dane, a podczas zapisu, że dane na liniach AD są ważne.
⋄ TRDY – gotowość urządzenia podrzędnego – Podczas odczytu
wskazuje, że dane na liniach AD są ważne, a podczas zapisu, że
urządzenie jest gotowe przyjąć dane.
⊲ Linie zgłaszania przerwań
⋄ INTA, INTB, INTC, INTD
PCI Express (1)
.
⊲ Interfejs szeregowo-równoległy
⊲ Pasmo, tor (ang. lane)
⋄ dwie pary sygnalizacyjne, po jednej dla każdego kierunku, full
duplex
⋄ niskonapięciowa sygnalizacja różnicowa
⋄ kodowanie 8b/10b
⋄ niepotrzebny sygnał zegara
⋄ w wersji 1.0 brutto 2,5 Gb/s, netto 2 Gb/s
⋄ w wersji 2.0 brutto 5 Gb/s, netto 4 Gb/s
PCI Express (2)
⊲ Łącze (ang. link)
⋄ 1, 2, 4, 8, 12, 16 lub 32 pasm, torów
⊲ Gniazdo (ang. slot)
⋄ 1, 4, 8 lub 16 pasm, torów
⋄ zasilanie
⋄ masa
.
SCSI (1)
.
⊲ Small Computer System Interface – intefejs dla dysków twardych,
pamięci taśmowych, skanerów, drukarek, napędów dysków optycznych itp.
⊲ Interfejs równoległy, half duplex
⊲ Parametry
⋄ szyna 8 lub 16 bitów
⋄ 7 lub 15 urządzeń fizycznych i adapter główny na wspólnej szynie
⋄ urządzenie fizyczne może zaadresować 8 urządzeń logicznych
⋄ transmisja asynchroniczna 3–6 MB/s lub synchroniczna 5–320
MB/s
⊲ Terminatory na końcu każdej linii magistralowej
SCSI (2)
⊲ Arbitraż wg numerów urządzeń
⊲ Numery urządzeń w kolejności malejących priorytetów:
7, . . . , 0, 15, . . . , 8
⊲ Protokół obejmujący kilkadziesiąt poleceń
⊲ Wielowątkowość – wykonywanie wielu zadań symultanicznie
⊲ Porządkowanie rozkazów dla zwiększenia efektywności
⊲ iSCSI – specyfikacja używania rozkazów SCSI przez TCP/IP
⊲ SAS – Serial Attached SCSI – wersja szeregowa, full duplex
.
ATA
.
⊲ Advanced Technology Attachment – interfejs równoległy dla pamięci
masowych, synchroniczny, half duplex
⊲ IDE (Integrated Drive Electronics) – inna nazwa
⊲ ATAPI (ATA Packet Interface) – rozszerzenie o obsługę m.in. napędów dysków optycznych
⊲ Interfejs zbliżony do magistrali systemowej komputerów PC AT
⋄ uproszczenie układów płyty głównej
⋄ główna część elektroniki w napędzie dysku
⊲ Maksymalnie dwa urządzenia na szynie, ale jeśli jedno z urządzeń
otrzymało dostęp do magistrali, drugie musi czekać.
SATA (1)
.
⊲ Serial Advanced Technology Attachment – następca ATA, ale wbrew
nazwie nie ma nic wspólnego z ATA.
⊲ Interfejs szeregowy
⋄ topologia gwiazdy
⋄ 7 przewodów
⋄ dwie pary sygnalizacyjne – full duplex
⋄ 3 przewody masy
⋄ niskonapięciowa sygnalizacja różnicowa
⋄ kodowanie 8b/10b, niepotrzebny sygnał zegara
⋄ brutto 1,5 Gb/s, netto 1,2 Gb/s, czyli 150 MB/s
⋄ w drugiej generacji do 300 MB/s, a w trzeciej do 600 MB/s
SATA (2)
⊲ Zalety w stosunku do ATA
⋄ optymalizacja czasu wykonywania sekwencji rozkazów
⋄ większe prędkości transmisji
⋄ możliwe dłuższe kable, maksymalnie ok. 1 m
⋄ cieńsze kable, tańsze złącza, ułatwione chłodzenie
.
Fibre Channel (1)
⊲ Interfejs szeregowy dla pamięci masowych
⊲ Protokół transportowy dla innych protokołów
⊲ Warstwa fizyczna, media, przykładowe parametry
⋄ światłowód jednomodowy, do 2 km przy 400 MB/s
⋄ światłowód wielomodowy, do 150 m przy 400 MB/s
⋄ skrętka, do 50 m przy 200 MB/s
⊲ Warstwa łącza
⋄ kodowanie 8b/10b
.
Fibre Channel (2)
⊲ Warstwa sieciowa, topologia
⋄ punkt-punkt
⋄ pierścień
⋄ switched fabric
.
Fibre Channel (3)
.
⊲ Warstwa implementująca funkcje zewnętrzne
⋄ szyfrowanie
⋄ RAID
⊲ Warstwa aplikacji lub enkapsulacji protokołów wyższych warstw
⋄ IP
⋄ ATM
⋄ SCSI
⊲ Zwiększanie zasięgu, łączenie sieci FC
⋄ FCIP – Fibre Channel over IP
⋄ IFIP – Internet Fibre Channel Protocol
InfiniBand (1)
.
⊲ Szybki interfejs szeregowo-równoległy do łączenia procesorów i urządzeń peryferyjnych
⊲ Kable miedziane lub światłowody
⊲ Komunikacja przez przełączniki, switched fabric
⊲ Zastosowania
⋄ superkomputery
⋄ duże klastry obliczeniowe o wielu tysiącach węzłów
⊲ Kodowanie 8b/10b
InfiniBand (2)
⊲ Szybkości brutto
⋄ single rate 2,5 Gb/s
⋄ double rate 5 Gb/s
⋄ quad rate 10 Gb/s
⊲ Możliwość agregowania łączy
⋄ 4X
⋄ 12X
⊲ Transfer netto
⋄ 1X single rate 2 Gb/s
⋄ 12X quad rate 96 Gb/s
.
USB (1)
.
⊲ Universal Serial Bus – uniwersalny interfejs szeregowy
⊲ 4 przewody
⋄ VBUS – napięcie zasilania, nominalnie +5 V
⋄ GND – masa
⋄ D+, D− – para przewodów sygnalizacyjnych, skrętka, sygnalizacja różnicowa, half duplex
⊲ Zasilanie
⋄ 4,35 V do 5,25 V
⋄ 100 mA na port negocjowane do 500 mA
USB (2)
.
⊲ Prędkości transmisji
⋄ high-speed – 480 Mb/s
⋄ full-speed – 12 Mb/s
⋄ low-speed – 1,5 Mb/s
⊲ Kodowanie
⋄ NRZI (non return to zero inverted)
⋄ zero – zmiana (inwersja) poziomu sygnału
⋄ jedynka – brak zmiany poziomu sygnału
⋄ nadziewanie bitami – dodatkowe zero po każdych 6 jedynkach
USB (3)
⊲ Transmisja pakietowa
⋄ początek pakietu danych – sekwencja synchronizująca
⋄ koniec pakietu danych – sekwencja EOP (end of packet)
⊲ Kolejność bajtów i bitów
⋄ little-endian
⋄ od najmłodszego (LSB) do najstarszego (MSB)
⊲ Dwa typy urządzeń
⋄ hub
⋄ function
.
USB (4)
⊲ Topologia drzewa
⋄ brak pętli wymuszany przez dwa rodzaje złączy A i B
⋄ maksymalna wysokość 7 (wraz z korzeniem i liśćmi)
⋄ w liściach tylko urządzenia typu function
⋄ w korzeniu root hub i host controller
⋄ maksymalnie 127 urządzeń
⊲ Wtyki złączy A, B, mini-B
.
USB (5)
⊲ Protokół
⋄ host controller
⋄ transakcja, 3 lub 4 pakiety
⋄ sterowanie podziałem zasobów
⊲ Łączenie dwóch równorzędnych urządzeń (komputerów)
⋄ dual role devices
⋄ host negotiation protocol
.
FireWire
.
⊲ Nazwa handlowa firmy Apple
⊲ IEEE 1394, 1394a, 1394b
⊲ 6 przewodów
⋄ dwie skrętki do transmisji w obu kierunkach, full duplex
⋄ masa i zasilanie
⊲ Prędkości transmisji
⋄ pierwotnie 98,304, 196,608, 393,216 Mb/s do 4,5 m
⋄ FireWire 800, 786,432 Mb/s
⋄ 3,2 Gb/s do 100 m z użyciem światłowodu
⊲ i.Link, DV – wersja dla urządzeń video, 4-przewodowa, bez zasilania
DVI (1)
.
⊲ Digital Visual Interface – łączenie karty graficznej z monitorem
⊲ Jednolite złącze dla różnych rodzajów sygnałów
⋄ DVI-D – tylko sygnały cyfrowe
⋄ DVI-I – sygnały cyfrowe i analogowe
⋄ DVI-A – tylko sygnały analogowe
DVI (2)
⊲ 24 końcówki „cyfrowe”
⋄ 6 jednokierunkowych, szeregowych łączy cyfrowych, simplex
⋄ sygnał synchronizacji (zegara)
⋄ DDC (display data channel) – identyfikacji typu monitora
⋄ analogowy sygnał synchronizacji pionowej
⋄ ekrany „cyfrowe”
⊲ 5 końcówek „analogowych”
⋄ 3 sygnały kolorów podstawowych
⋄ sygnał synchronizacji poziomej
⋄ masa analogowa
⋄ kompatybilne z używanymi w złączu D-Sub
.
DVI (3)
⊲ Single Link
⋄ 3 łącza, po jednym dla każdego koloru podstawowego
⊲ Dual Link
⋄ 6 łączy, po dwa dla każdego koloru podstawowego
⊲ Parametry pojedynczego kanału (Single Link)
⋄ 21,76 do 165 milionów pikseli na sekundę
⋄ maksymalnie 24 bity na piksel
.
Inne
⊲ Sieciowe przewodowe
⋄ Ethernet
⊲ Sieciowe bezprzewodowe
⋄ Wi-Fi
⋄ WiMAX
⊲ Inne bezprzewodowe
⋄ IrDA
⋄ Bluetooth
.
Kompatybilność
⊲ Ktoś kiedyś powiedział, że „kompatybilność zabija”.
⊲ Ale większość żąda zachowania kompatybilności.
⊲ Kolejne slajdy pokazują przykłady:
⋄ jak się to często robi, a nie powinno;
⋄ jak to zrobić dobrze.
.
Zwykła mysz PS/2 (1)
⊲ Reset
FF
FA
AA
00
resetuj
potwierdzenie
autotest pomyślny
identyfikator myszy, standardowa mysz PS/2
⊲ Inicjacja
E8
FA
03
FA
E6
FA
ustaw rozdzielczość
potwierdzenie
8 zliczeń/mm
potwierdzenie
ustaw skalowanie 1:1
potwierdzenie
.
Zwykła mysz PS/2 (2)
.
⊲ Inicjacja, cd.
F3
FA
28
FA
F4
FA
ustaw maksymalną częstotliwość raportowania zmian
potwierdzenie
częstotliwość 40
potwierdzenie
uaktywnij
potwierdzenie
⊲ Zmiany stanu myszy
bit 7
bit 6
bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
bajt 1 nadm. Y nadm. X znak Y znak X 1 środk. prawy lewy
bajt 2
przesunięcie X
bajt 3
przesunięcie Y
Mysz PS/2 ze skrolowaniem (1)
.
⊲ Reset, jak poprzednio
⊲ Testowanie rodzaju myszy
F3
FA
C8
FA
F3
FA
64
FA
F3
FA
50
FA
ustaw maksymalną częstotliwość raportowania zmian
potwierdzenie
częstotliwość 200
potwierdzenie
ustaw maksymalną częstotliwość raportowania zmian
potwierdzenie
częstotliwość 100
potwierdzenie
ustaw maksymalną częstotliwość raportowania zmian
potwierdzenie
częstotliwość 80
potwierdzenie
Mysz PS/2 ze skrolowaniem (2)
⊲ Testowanie rodzaju myszy, cd.
F2
FA
czytaj typ urządzenia
potwierdzenie
⊲ Zwykła mysz
00
identyfikator zwykłej myszy
⊲ Mysz ze skrolowaniem
03
identyfikator myszy ze skrolowaniem
⊲ Inicjacja, jak poprzednio
.
Mysz PS/2 ze skrolowaniem (3)
.
⊲ Zmiany stanu myszy
bajt
bajt
bajt
bajt
bit 7
bit 6
bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
1 nadm. Y nadm. X znak Y znak X 1 środk. prawy lewy
2
przesunięcie X
3
przesunięcie Y
4
przesunięcie Z
O kompatybilności trzeba myśleć zawczasu
⊲ Dobrze jest przewidzieć mechanizm uzgadniania wersji.
⊲ Wymieniamy się numerami obsługiwanych wersji.
⊲ Używamy maksimum ze zgłoszonych numerów wersji.
⊲ Inny, dobry przykład jest na następnym slajdzie.
.
Negocjowanie opcji w protokole TELNET
⊲ WILL
.
251 kod opcji
⋄ chęć włączenia opcji
⋄ potwierdzenie używania opcji
⊲ WON’T
252 kod opcji
⋄ odmowa włączenia lub kontynuacji użycia opcji
⊲ DO
253 kod opcji
⋄ żądanie, aby druga strona używała opcji
⋄ potwierdzenie oczekiwania, że druga strona użyje opcji
⊲ DON’T
254 kod opcji
⋄ żądanie, aby druga strona przestała używać opcji
⋄ potwierdzenie oczekiwania, że druga strona nie będzie dłużej używać opcji

Podobne dokumenty