6. Interfejsy

Transkrypt

6. Interfejsy
Interfejs (1)
Materiały do wykładu
 .
⊲ Zespół urządzeń i protokołów do przesyłania danych
⊲ Sposób przesyłania
⋄ szeregowy
6. Interfejsy
⋄ równoległy
Marcin Peczarski
⋄ szeregowo-równoległy
Instytut Informatyki
Uniwersytet Warszawski
⊲ Tryb pracy
⋄ simplex – jednokierunkowy
⋄ half duplex – dwukierunkowy naprzemienny
⋄ full duplex – dwukierunkowy jednoczesny
13 kwietnia 2008
Interfejs (2)
 .
⊲ Liczba urządzeń
Szyna
 .
⋄ dwupunktowy (ang. point-to-point)
⊲ Szyna, magistrala (ang. bus) – zespół przewodów, linii przenoszących grupę sygnałów elektrycznych, łączących urządzenia cyfrowe
⋄ wielopunktowy (ang. multi-point)
⊲ Przewody, linie
⋄ dedykowane
⊲ Arbitraż
⋄ multipleksowane
⋄ centralny
⋄ rozproszony
⊲ Koordynacja czasowa
⋄ asynchroniczny
⋄ synchroniczny
Złącze (1)
 .
⊲ Łącze – zespół środków i urządzeń do przesyłania sygnałów elektrycznych ≈ interfejs
Złącze (2)
 .
⊲ Płeć złącza nie determinuje pełnionej funkcji.
⋄ gniazdo żeńskie
⊲ Złącze – podzespół do łączenia obwodów elektrycznych
⋄ część żeńska (ang. female)
⋄ wtyk żeński
⋄ część męska (ang. male)
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
⋄ wtyk męski
 .
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
PCI (3)
 .
⊲ Funkcjonalność plug and play
⋄ 256 bajtowa przestrzeń konfiguracyjna
⋄ rozpoznawanie urządzenia
⋄ napięcie zasilania 5 V lub 3,3 V
⋄ przydzielanie adresów pamięci
⋄ przydzielanie adresów wejścia-wyjścia
⊲ Warianty
⋄ przydzielanie numeru przerwania
⋄ 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
⊲ Firmware
⋄ kod wykonywalny w urządzeniu
⋄ Mini PCI – wersja PCI 2.2 do użytku w laptopach
⋄ Cardbus – wersja PCMCIA specyfikacji PCI (33 MHz i 32-bity)
⊲ Możliwość konfiguracji hierarchicznej
⋄ AGP (Accelerated Graphics Port, Advanced Graphics Port) –
interfejs dedykowany do kart graficznych
PCI (4)
.
⊲ Linie systemowe
PCI (5)
.
⊲ Linie sterowania interfejsem
⋄ CLK – sygnał zegara
⋄ 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.
⋄ 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
⋄ 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ń
⋄ GNT – przyznanie dostępu do magistrali
PCI Express (1)
⋄ 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.
⋄ INTA, INTB, INTC, INTD
.
⊲ Interfejs szeregowo-równoległy
PCI Express (2)
.
⊲ Łącze (ang. link)
⋄ 1, 2, 4, 8, 12, 16 lub 32 pasm, torów
⊲ Pasmo, tor (ang. lane)
⋄ dwie pary sygnalizacyjne, po jednej dla każdego kierunku, full
duplex
⊲ Gniazdo (ang. slot)
⋄ 1, 4, 8 lub 16 pasm, torów
⋄ niskonapięciowa sygnalizacja różnicowa
⋄ zasilanie
⋄ kodowanie 8b/10b
⋄ masa
⋄ 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
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.
SCSI (2)
⊲ Arbitraż wg numerów urządzeń
⊲ Numery urządzeń w kolejności malejących priorytetów:
7, . . . , 0, 15, . . . , 8
⊲ Interfejs równoległy, half duplex
⊲ Protokół obejmujący kilkadziesiąt poleceń
⊲ Parametry
⋄ szyna 8 lub 16 bitów
⊲ Wielowątkowość – wykonywanie wielu zadań symultanicznie
⋄ 7 lub 15 urządzeń fizycznych i adapter główny na wspólnej szynie
⊲ Porządkowanie rozkazów dla zwiększenia efektywności
⋄ 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
⊲ iSCSI – specyfikacja używania rozkazów SCSI przez TCP/IP
⊲ SAS – Serial Attached SCSI – wersja szeregowa, full duplex
.
ATA
.
SATA (1)
.
⊲ Advanced Technology Attachment – interfejs równoległy dla pamięci
masowych, synchroniczny, half duplex
⊲ Serial Advanced Technology Attachment – następca ATA, ale wbrew
nazwie nie ma nic wspólnego z ATA.
⊲ IDE (Integrated Drive Electronics) – inna nazwa
⊲ Interfejs szeregowy
⊲ ATAPI (ATA Packet Interface) – rozszerzenie o obsługę m.in. napędów dysków optycznych
⋄ topologia gwiazdy
⋄ 7 przewodów
⋄ dwie pary sygnalizacyjne – full duplex
⊲ Interfejs zbliżony do magistrali systemowej komputerów PC AT
⋄ 3 przewody masy
⋄ uproszczenie układów płyty głównej
⋄ niskonapięciowa sygnalizacja różnicowa
⋄ główna część elektroniki w napędzie dysku
⋄ kodowanie 8b/10b, niepotrzebny sygnał zegara
⊲ Maksymalnie dwa urządzenia na szynie, ale jeśli jedno z urządzeń
otrzymało dostęp do magistrali, drugie musi czekać.
SATA (2)
⋄ 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
.
⊲ Zalety w stosunku do ATA
Fibre Channel (1)
.
⊲ Interfejs szeregowy dla pamięci masowych
⋄ optymalizacja czasu wykonywania sekwencji rozkazów
⊲ Protokół transportowy dla innych protokołów
⋄ większe prędkości transmisji
⋄ możliwe dłuższe kable, maksymalnie ok. 1 m
⊲ Warstwa fizyczna, media, przykładowe parametry
⋄ światłowód jednomodowy, do 2 km przy 400 MB/s
⋄ cieńsze kable, tańsze złącza, ułatwione chłodzenie
⋄ ś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
Fibre Channel (3)
.
⊲ Warstwa implementująca funkcje zewnętrzne
⋄ punkt-punkt
⋄ szyfrowanie
⋄ pierścień
⋄ RAID
⋄ switched fabric
⊲ 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
InfiniBand (2)
⊲ Szybkości brutto
⋄ single rate 2,5 Gb/s
⋄ double rate 5 Gb/s
⋄ quad rate 10 Gb/s
⊲ Komunikacja przez przełączniki, switched fabric
⊲ Możliwość agregowania łączy
⊲ Zastosowania
⋄ superkomputery
⋄ 4X
⋄ 12X
⋄ duże klastry obliczeniowe o wielu tysiącach węzłów
⊲ Transfer netto
⊲ Kodowanie 8b/10b
⋄ 1X single rate 2 Gb/s
⋄ 12X quad rate 96 Gb/s
.
RS-232 (1)
.
⊲ Jeden z najstarszych interfejsów szeregowych
RS-232 (2)
.
⊲ Wersja pełna – 9 drutów
⊲ Pierwotne przeznaczenie to łączenie terminali znakowych z komputerem
⊲ Brak powszechnie przestrzeganego standardu
⋄ sygnały danych
RxD
TxD
Receive Data
Transmit Data
DCE → DTE
DCE ← DTE
⋄ sygnały gotowości do pracy
DSR
DTR
⊲ Dwa typy urządzeń
⋄ DTE (Data Terminal Equipment) – terminal, komputer
⋄ DCE (Data Communication Equipment, Data Circuit-terminating Equipment) – zwykle modem
Data Set Ready
Data Terminal Ready
DCE → DTE
DCE ← DTE
⋄ sprzętowa kontrola przepływu
CTS
RTS
Clear To Send
Request To Send
DCE → DTE
DCE ← DTE
⊲ Prędkości transmisji od kilkudziesięciu b/s do kilkuset kb/s
⊲ Zasięg do kilkunastu metrów
RS-232 (3)
.
⋄ sygnały modemowe
DCD
RING
Data Carrier Detected
Ring indicator
DCE → DTE
DCE → DTE
⋄ masa
GND
Ground
⊲ Wersja uproszczona – 3 druty
⋄ RxD, TxD, GND
⋄ programowa kontrola przepływu, np. XON/XOFF (0x11/0x13)
RS-232 (4)
.
RxD
RxD
TxD
TxD
DSR
DSR
DTR
DTR
CTS
CTS
RTS
RTS
DCD
DCD
RING
RING
GND
GND
⊲ Poważna wada: co najmniej kilka wersji kabli połączeniowych
Kabel prosty DCE–DTE
⋄ na kolejnych rysunkach kilka najczęściej spotykanych
RS-232 (5)
.
RS-232 (6)
.
RxD
RxD
RxD
RxD
TxD
TxD
TxD
TxD
DSR
DSR
DSR
DSR
DTR
DTR
DTR
DTR
CTS
CTS
CTS
CTS
RTS
RTS
RTS
RTS
DCD
DCD
DCD
DCD
GND
GND
GND
GND
Kabel skrzyżowany DTE–DTE
Inna wersja kabla skrzyżowanego DTE–DTE
RS-232 (7)
.
RS-232 (8)
.
RxD
RxD
RxD
RxD
TxD
TxD
TxD
TxD
DSR
DSR
DSR
DSR
DTR
DTR
DTR
DTR
CTS
CTS
CTS
CTS
RTS
RTS
RTS
RTS
DCD
DCD
DCD
DCD
GND
GND
GND
GND
Kabel skrzyżowany DTE–DTE, interfejs uproszczony
Inna wersja kabla skrzyżowanego DTE–DTE, interfejs uproszczony
RS-232 (9)
.
⊲ Sygnalizacja napięciem o wartości bezwzględnej od 3 V do 25 V
⋄ typowo 5 V, 10 V, 12 V, 15 V
RS-232 (10)
.
⊲ Pojedyncza transmisja
⋄ 1 bit startowy, space, logiczne 0
⋄ 5 do 9 bitów danych, najpierw najmniej znaczący (LSB)
⊲ Dwa poziomy napięcia
⋄ opcjonalny bit parzystości lub nieparzystości
⋄ niski, napięcie ujemne – sygnał mark, logiczna 1, stan off
⋄ wysoki, napięcie dodatnie – sygnał space, logiczne 0, stan on
⋄ 1 bit lub 1,5 bita lub 2 bity stopu, mark, logiczna 1
⊲ Dowolnej długości przerwa między kolejnymi transmisjami
⊲ Trikowe zasilanie podłączonych urządzeń
⊲ V.24 – dodatkowe druty
⋄ drugi kanał transmisyjny
⋄ możliwość transmisji synchronicznej
USB (1)
.
⊲ Universal Serial Bus – uniwersalny interfejs szeregowy
USB (2)
.
⊲ Prędkości transmisji
⋄ high-speed – 480 Mb/s
⊲ 4 przewody
⋄ full-speed – 12 Mb/s
⋄ VBUS – napięcie zasilania, nominalnie +5 V
⋄ low-speed – 1,5 Mb/s
⋄ GND – masa
⋄ D+, D− – para przewodów sygnalizacyjnych, skrętka, sygnalizacja różnicowa, half duplex
⊲ Kodowanie
⋄ NRZI (non return to zero inverted)
⋄ zero – zmiana (inwersja) poziomu sygnału
⊲ Zasilanie
⋄ 4,35 V do 5,25 V
⋄ jedynka – brak zmiany poziomu sygnału
⋄ 100 mA na port negocjowane do 500 mA
⋄ nadziewanie bitami – dodatkowe zero po każdych 6 jedynkach
USB (3)
.
⊲ Transmisja pakietowa
USB (4)
.
⊲ Topologia drzewa
⋄ początek pakietu danych – sekwencja synchronizująca
⋄ brak pętli wymuszany przez dwa rodzaje złączy A i B
⋄ koniec pakietu danych – sekwencja EOP (end of packet)
⋄ maksymalna wysokość 7 (wraz z korzeniem i liśćmi)
⋄ w liściach tylko urządzenia typu function
⊲ Kolejność bajtów i bitów
⋄ w korzeniu root hub i host controller
⋄ little-endian
⋄ maksymalnie 127 urządzeń
⋄ od najmłodszego (LSB) do najstarszego (MSB)
⊲ Wtyki złączy A, B, mini-B
⊲ Dwa typy urządzeń
⋄ hub
⋄ function
USB (5)
⊲ Protokół
⋄ host controller
⋄ transakcja, 3 lub 4 pakiety
⋄ sterowanie podziałem zasobów
.
FireWire
.
⊲ Nazwa handlowa firmy Apple
⊲ IEEE 1394, 1394a, 1394b
⊲ 6 przewodów
⋄ dwie skrętki do transmisji w obu kierunkach, full duplex
⊲ Łączenie dwóch równorzędnych urządzeń (komputerów)
⋄ masa i zasilanie
⋄ dual role devices
⋄ host negotiation protocol
⊲ 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
DVI (2)
.
⊲ 24 końcówki „cyfrowe”
⋄ 6 jednokierunkowych, szeregowych łączy cyfrowych, simplex
⊲ Jednolite złącze dla różnych rodzajów sygnałów
⋄ sygnał synchronizacji (zegara)
⋄ DVI-D – tylko sygnały cyfrowe
⋄ DDC (display data channel) – identyfikacji typu monitora
⋄ DVI-I – sygnały cyfrowe i analogowe
⋄ analogowy sygnał synchronizacji pionowej
⋄ DVI-A – tylko sygnały analogowe
⋄ 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
.