Menu English Ukrainian Rosyjski Strona główna

Bezpłatna biblioteka techniczna dla hobbystów i profesjonalistów Bezpłatna biblioteka techniczna


ENCYKLOPEDIA RADIOELEKTRONIKI I INŻYNIERII ELEKTRYCZNEJ
Darmowa biblioteka / Schematy urządzeń radioelektronicznych i elektrycznych

Magistrala USB i FireWire. Encyklopedia elektroniki radiowej i elektrotechniki

Bezpłatna biblioteka techniczna

Encyklopedia radioelektroniki i elektrotechniki / Komputery

Komentarze do artykułu Komentarze do artykułu

USB (Universal Serial Bus - Universal Serial Bus) to standardowe rozszerzenie architektury komputerów PC, ukierunkowane na integrację z telefonią i urządzeniami elektroniki użytkowej. Wersja 1.0 została opublikowana w styczniu 1996 roku.

Architektura USB jest zdefiniowana przez następujące kryteria:

  • Łatwa w implementacji rozbudowa urządzeń peryferyjnych PC
  • Ekonomiczne rozwiązanie obsługujące prędkości transferu do 12 Mb/s
  • Pełne wsparcie transmisji danych audio i (skompresowanych) wideo w czasie rzeczywistym
  • Elastyczność protokołu do mieszania danych izochronicznych i komunikatów asynchronicznych
  • Integracja z produkowanymi urządzeniami. Dostępność w komputerach PC we wszystkich konfiguracjach i rozmiarach
  • Zapewnienie standardowego interfejsu zdolnego do szybkiego podbicia rynku
  • Tworzenie nowych klas urządzeń rozszerzających PC

Z punktu widzenia użytkownika końcowego atrakcyjne są następujące cechy USB:

  • Łatwość okablowania i połączeń
  • Ukrywanie szczegółów połączeń elektrycznych przed użytkownikiem końcowym
  • Samoidentyfikujące się PU, automatyczna komunikacja urządzeń ze sterownikami i konfiguracją
  • Możliwość dynamicznego łączenia i konfigurowania PU

Od połowy 1996 roku produkowane są komputery PC z wbudowanym kontrolerem USB zaimplementowanym w chipsecie. Oczekuje się, że pojawią się modemy, klawiatury, skanery, głośniki i inne urządzenia wejścia/wyjścia z obsługą USB, a także monitory z adapterami USB, które pełnią rolę koncentratorów do podłączania innych urządzeń.

1.1. Struktura USB

USB umożliwia jednoczesną wymianę danych pomiędzy komputer hosta i wiele urządzenia peryferyjne (PU). Dystrybucja przepustowości magistrali pomiędzy PU jest planowana przez hosta i realizowana przez niego poprzez wysyłanie tokenów. Magistrala umożliwia podłączanie, konfigurowanie, używanie i odłączanie urządzeń podczas pracy hosta i samych urządzeń.

Poniżej znajduje się autorskie tłumaczenie terminów ze „Specyfikacji uniwersalnej magistrali szeregowej. Wersja 15 stycznia 1996” opublikowanej przez firmy Compaq, DEC, IBM, Intel, Microsoft, NEC i Northern Telecom. Bardziej szczegółowe i aktualne informacje można znaleźć na stronie usb.org.

Urządzenia USB mogą być koncentratorami, funkcjami lub kombinacją obu. Centrum (Hub) udostępnia dodatkowe punkty umożliwiające podłączenie urządzeń do magistrali. Funkcje USB zapewnia dodatkowe funkcje systemu, takie jak połączenie ISDN, cyfrowy joystick, cyfrowe głośniki interfejsu itp. Urządzenie USB musi być wyposażone w interfejs USB, który w pełni obsługuje protokół USB, wykonuje standardowe operacje (konfiguracja i resetowanie) oraz zapewnia informacje opisujące urządzenie. Wiele urządzeń podłączonych do USB ma zarówno koncentrator, jak i funkcje. Pracą całego systemu USB steruje m.in kontroler hosta (kontroler hosta), który jest podsystemem sprzętowym i programowym komputera hosta.

Fizyczne połączenie urządzenia są realizowane zgodnie z topologią wielopoziomowej gwiazdy Środek każdej gwiazdy to centrum, każdy segment kabla łączy dwa punkty koncentratora z innym koncentratorem lub funkcją. System ma jeden (i tylko jeden) kontroler hosta, znajdujące się na szczycie piramidy urządzeń i koncentratorów. Kontroler hosta integruje się z hub główny (Root Hub), zapewnienie jednego lub więcej punktów przyłączeniowych porty. Kontroler USB zawarty w chipsetach ma zwykle wbudowany dwuportowy koncentrator. Logicznie rzecz biorąc, urządzenie podłączone do dowolnego koncentratora USB i skonfigurowane (patrz poniżej) można uznać za podłączone bezpośrednio do kontrolera hosta.

funkcje to urządzenia zdolne do przesyłania lub odbierania danych lub informacji sterujących za pośrednictwem magistrali. Zazwyczaj funkcje te pełnią oddzielne jednostki sterujące z kablem podłączonym do portu koncentratora. Fizycznie w jednej obudowie może znajdować się kilka funkcji, a wbudowany hub zapewnia ich podłączenie do jednego portu. Te kombinowane urządzenia hosta to koncentratory z podłączonymi na stałe urządzeniami funkcyjnymi.

Każda funkcja udostępnia informacje konfiguracyjne opisujące możliwości PU i wymagania dotyczące zasobów. Funkcja musi być skonfigurowana przez hosta przed użyciem, musi być przydzielona przepustowość kanału i wybrane opcje konfiguracji.

Przykładowe funkcje to:

Wskaźniki myszy, tabletu, pióra świetlnego. Klawiatura lub skaner urządzeń wejściowych.

Drukarka urządzenia wyjściowego, głośniki (cyfrowe).

Adapter telefoniczny ISDN

Centrum kluczowy element systemu RnP w architekturze USB. Koncentrator jest koncentratorem kablowym. Punkty połączeń są nazywane porty centrum. Każdy koncentrator przekształca jeden punkt połączenia w wiele. Architektura pozwala na połączenie kilku hubów.

Każdy hub ma jeden port nadrzędny zaprojektowany do łączenia się z hostem lub koncentratorem najwyższego poziomu. Reszta portów jest downstream (porty downstream), zaprojektowane do łączenia funkcji lub koncentratorów niższego poziomu. Hub potrafi rozpoznać podłączenie urządzeń do portów lub odłączenie od nich i zarządzać zasilaniem ich segmentów. Każdy port można włączyć lub wyłączyć i skonfigurować dla pełnej lub ograniczonej szybkości transmisji. Piasta zapewnia izolację segmentów o niskiej prędkości od segmentów o dużej prędkości.

Koncentratory mogą sterować zasilaniem portów podrzędnych; przewiduje ustawienie limitu prądu pobieranego przez każdy port.

Magistrala USB i FireWire

System USB podzielona jest na trzy poziomy z określonymi zasadami interakcji. Urządzenie USB zawiera część interfejsu, część urządzenia i część funkcjonalną. Host jest również podzielony na trzy części: interfejs, system i oprogramowanie urządzenia. Każda część odpowiada tylko za określony zakres zadań, logiczną i rzeczywistą interakcję między nimi ilustruje ryc. 7.1.

Rozważana struktura obejmuje następujące elementy:

Fizyczne urządzenie USB urządzenie na magistrali realizujące funkcje interesujące użytkownika końcowego.

Klient SW Oprogramowanie specyficzne dla urządzenia działające na komputerze hosta. Może być integralną częścią systemu operacyjnego lub produktem specjalnym.

Oprogramowanie systemu USB Obsługa systemu USB niezależnie od konkretnych urządzeń i oprogramowania klienckiego.

Kontroler hosta USB sprzęt i oprogramowanie do podłączania urządzeń USB do komputera hosta.

Interfejs fizyczny

Standard USB określa specyfikacje elektryczne i mechaniczne magistrali.

Sygnały informacyjne oraz napięcie zasilania 5 V przesyłane są przewodem czterożyłowym. Używana jest metoda różnicowa do przesyłania sygnałów D+ i D dwoma przewodami. Statyczny poziom sygnału nadajnika powinien być poniżej 0,3 V (niski) lub powyżej 2,8 V (wysoki). Odbiorniki wytrzymują napięcie wejściowe w zakresie 0,5 ... +3,8 V. Nadajniki muszą mieć możliwość przełączania w stan wysokiej impedancji dla dwukierunkowej transmisji półdupleksowej po jednej parze przewodów.

Transmisja dwuprzewodowa w USB nie ogranicza się do sygnałów różnicowych. Oprócz odbiornika różnicowego każde urządzenie posiada odbiorniki linii D+ i D-, a nadajniki tych linii są sterowane indywidualnie. Umożliwia to rozróżnienie między więcej niż dwoma stanami linii używanymi do organizacji interfejsu sprzętowego. stany RóżnO и Różnica1 są określone przez różnicę potencjałów na liniach D + i D większą niż 200 mV, pod warunkiem, że na jednym z nich potencjał jest powyżej progu VSE. Nazywa się stan, w którym oba wejścia D+ i D są niskie zero liniowe (SEO Single-Ended Zero). Interfejs definiuje następujące stany:

Stan danychJ и Dane do stanu stan przesyłanego bitu (lub po prostu J и DO), zdefiniowane przez stany RóżnO и Różnica1.

Stan bezczynności autobus pauza.

Stan podsumowania sygnał budzenia, aby wybudzić urządzenie z trybu uśpienia.

Początek pakietu (SOP) początek pakietu (skok z Stan bezczynności w K).

Koniec pakietu (EOP) koniec opakowania.

Disconnect urządzenie jest odłączone od portu.

Skontaktuj się urządzenie jest podłączone do portu.

Zresetuj resetowanie urządzenia.

Stany są określane przez kombinacje sygnałów różnicowych i liniowych; dla stanu pełnej i niskiej prędkości RóżnO и Różnica1 mają przeciwny cel. W stanie dekodowania Rozłącz, połącz и Zresetuj Uwzględniany jest czas przebywania linii w określonych stanach (ponad 2,5 ms).

Magistrala ma dwa tryby transmisji. pełna prędkość Sygnalizacja USB to 12 Mbps, niski 1,5 Mb/s. Dla pełnej prędkości stosuje się ekranowaną skrętkę o impedancji 90 omów i długości segmentu do 5 m, dla nisko - nieekranowanego nieekranowanego kabla do 3 m. Kable i urządzenia o niskiej prędkości są tańsze niż szybkie. Ten sam system może jednocześnie korzystać z obu trybów;

przełączanie urządzeń jest przejrzyste. Niska prędkość jest przeznaczona do pracy z niewielką liczbą wyrzutni, które nie wymagają dużej prędkości.

Szybkość używana przez urządzenie podłączone do określonego portu jest określana przez koncentrator przez poziomy sygnałów na liniach D+ i D-, spolaryzowanych przez rezystory terminujące R2 nadajników-odbiorników (patrz rysunki 7.2 i 7.3).

Sygnały synchronizacji są kodowane wraz z danymi za pomocą metody NRZI (bez powrotu do zera odwróconego), jego twórczość ilustruje ryc. 7.4. Każdy pakiet jest poprzedzony polem synchronizacji synchronizacja, umożliwiając odbiornikowi dostrojenie się do częstotliwości nadajnika.

Kabel posiada również linie VBus i GND do doprowadzenia zasilania 5V do urządzeń. Przekrój przewodów dobierany jest odpowiednio do długości segmentu, aby zapewnić gwarantowany poziom sygnału i napięcie zasilania.

Magistrala USB i FireWire
Ryż. 7.4. Kodowanie danych NRZI

Norma definiuje dwa rodzaje złączy (Patrz Tabela 7.1 i Rysunek 7.5).
kontakt łańcuch kontakt łańcuch
1 VBus 3 D+
2 D- 4 GND

Złącza typu „A” używany do łączenia z koncentratorami (Złącze upstream). Wtyczki są instalowane na kablach, które nie są odłączone od urządzeń (na przykład klawiatury, myszy itp.). Gniazda są instalowane na portach downstream (Port pobierania) piasty.

Złącza typu „B” (złącze Downstream) zainstalowane na urządzeniach, od których można odłączyć kabel połączeniowy (drukarki i skanery). Element współpracujący (wtyczka) montowany jest na kablu przyłączeniowym, którego przeciwległy koniec zakończony jest wtyczką typu „A”.

Złącza typu „A” i „B” różnią się mechanicznie (Rys. 7.5), co eliminuje nieprawidłowe połączenia pętlowe portów koncentratora. Czterostykowe złącza są wyposażone w klucze, aby zapobiec błędnemu połączeniu. Konstrukcja złączy zapewnia późne załączenie i wczesne rozłączenie obwodów sygnałowych w stosunku do obwodów zasilających. Aby rozpoznać złącze USB, na obudowie urządzenia umieszczono standardowe oznaczenie symboliczne.

Magistrala USB i FireWire
Ryż. 7.5. Gniazda USB: typu A, б wpisać „B”, w oznaczeniu symbolicznym

Moc urządzenia USB możliwe z kabla (urządzenia zasilane z magistrali) lub z własnego zasilacza (Urządzenia z własnym zasilaniem). Host zapewnia zasilanie bezpośrednio podłączonym do niego PU. Każdy koncentrator z kolei zapewnia zasilanie urządzeniom podłączonym do jego portów podrzędnych. Z pewnymi ograniczeniami topologicznymi dozwolone jest stosowanie koncentratorów zasilanych z magistrali. na ryc. 7.6 przedstawia przykładowy schemat podłączenia urządzenia USB. Tutaj klawiatura, pióro i mysz mogą być zasilane z magistrali.

Magistrala USB i FireWire

Model przesyłania danych

Każde urządzenie USB to zbiór niezależnych punkty końcowe (Punkt końcowy), s którym kontroler hosta wymienia informacje. Punkty końcowe są opisywane przez następujące parametry:

wymagana częstotliwość kursowania autobusów i akceptowalne opóźnienia w kursowaniu;

wymagana przepustowość kanału;

numer punktu;

wymagania dotyczące obsługi błędów;

maksymalne rozmiary przesyłanych i odbieranych pakietów;

rodzaj wymiany;

kierunek wymiany (dla wymian ciągłych i izochronicznych).

Każde urządzenie musi mieć punkt końcowy o numerze 0, służący do inicjalizacji, ogólnej kontroli i odpytywania jego statusu. Ten punkt jest zawsze konfigurowany, gdy urządzenie jest włączone i podłączone do magistrali. Obsługuje transfery „kontrolne” (patrz poniżej).

Oprócz punktu zerowego urządzenia funkcyjne mogą posiadać dodatkowe punkty realizujące użyteczną wymianę danych. Urządzenia o niskiej prędkości mogą mieć do dwóch dodatkowych punktów, urządzenia o pełnej prędkości do 16 punktów wejściowych i 16 punktów wyjściowych (ograniczenie protokołu). Punktów nie można używać, dopóki nie zostaną skonfigurowane (ustalony pasujący do nich kanał).

Kanał {Rura) USB odnosi się do modelu przesyłania danych między kontrolerem hosta a punktem końcowym (Punkt końcowy) urządzenia. Istnieją dwa rodzaje kanałów: strumienie (Strumień) i wiadomości (wiadomość). Pływ dostarcza dane z jednego końca kanału do drugiego, jest zawsze jednokierunkowy. Ten sam numer punktu końcowego może być użyty dla dwóch kanałów strumienia wejściowego i wyjściowego. Wątek może implementować następujące typy wymiany: ciągła, izochroniczna i przerwania. Dostawa odbywa się zawsze w kolejności FIFO; z punktu widzenia USB dane przesyłane strumieniowo nie mają struktury. komunikaty są w formacie określonym przez specyfikację USB. Host wysyła żądanie do punktu końcowego, po czym pakiet wiadomości jest przesyłany (odbierany), a następnie pakiet z informacjami o stanie punktu końcowego. Następna wiadomość zwykle nie może zostać wysłana, dopóki poprzednia nie zostanie przetworzona, ale nieobsłużone wiadomości mogą zostać odrzucone podczas obsługi błędów. Przesyłanie wiadomości dwukierunkowych jest adresowane do tego samego punktu końcowego. Do dostarczania wiadomości używana jest tylko wymiana typu „control”.

Kanały mają cechy związane z punktem końcowym (przepustowość, typ usługi, rozmiar bufora itp.). Kanały są ustalane podczas konfigurowania urządzeń USB. Dla każdego włączonego urządzenia istnieje kanał wiadomości (Rura sterująca 0), przez które przesyłane są informacje o konfiguracji, sterowaniu i statusie.

Rodzaje transferu danych

USB obsługuje tryby komunikacji jednokierunkowej i dwukierunkowej. Dane są przesyłane między oprogramowaniem hosta a punktem końcowym urządzenia. Urządzenie może mieć kilka punktów końcowych, komunikacja z każdym z nich (kanałem) jest nawiązywana niezależnie.

Architektura USB umożliwia cztery podstawowe typy przesyłania danych:

Transfery kontrolne, służy do konfiguracji podczas podłączania oraz podczas pracy do sterowania urządzeniami. Protokół zapewnia gwarantowaną dostawę danych. Długość pola danych komunikatu sterującego nie przekracza 64 bajtów przy pełnej szybkości i 8 bajtów przy niskiej.

Masowe transfery danych stosunkowo duże paczki bez ścisłych wymagań dotyczących czasu dostawy. Transmisje zajmują całe wolne pasmo magistrali. Pakiety mają pole danych o długości 8, 16, 32 lub 64 bajtów. Transfery te mają najniższy priorytet i mogą zostać wstrzymane w przypadku dużego obciążenia autobusu. Dozwolone tylko przy pełnej szybkości transmisji.

Przerwania krótkie (do 64 bajtów przy pełnej szybkości, do 8 bajtów przy małej szybkości) transfery, takie jak wprowadzanie znaków lub współrzędnych. Przerwania są spontaniczne i muszą być obsługiwane nie wolniej niż wymaga tego urządzenie. Limit czasu obsługi jest ustawiony w zakresie 1-255ms dla pełnej prędkości i 10-255ms dla niskiej.

Transfery izochroniczne ciągłe transmisje w czasie rzeczywistym, zajmujące wcześniej wynegocjowaną część przepustowości magistrali i mające określone opóźnienie dostawy. W przypadku wykrycia błędu dane izochroniczne są przesyłane bez ponawiania próby, a nieprawidłowe pakiety są ignorowane. Przykładem jest cyfrowa transmisja głosu. Przepustowość jest określana przez wymagania dotyczące jakości transmisji, a opóźnienie dostawy może mieć krytyczne znaczenie, na przykład przy wdrażaniu telekonferencji.

Przepustowość magistrali jest dzielona między wszystkie zainstalowane kanały. Przydzielona przepustowość jest przypisywana do kanału, a jeśli ustanowienie nowego kanału wymaga przepustowości, która nie pasuje do już istniejącej alokacji, żądanie przydziału kanału jest odrzucane.

Architektura US B zapewnia wewnętrzne buforowanie wszystkich urządzeń, a im większej przepustowości wymaga urządzenie, tym większy powinien być jego bufor. USB musi być w stanie przesyłać dane z taką prędkością, aby opóźnienie danych w urządzeniu spowodowane buforowaniem nie przekraczało kilku milisekund.

Transfery izochroniczne są klasyfikowane według sposobu synchronizacji punktów końcowych źródeł lub odbiorców danych z systemem: istnieją klasy urządzeń asynchronicznych, synchronicznych i adaptacyjnych, z których każda ma swój własny typ kanału USB.

Protokół

Wszystkie wymiany (transakcje) przez USB składają się z trzech pakietów. Każdy transakcja zaplanowane i zainicjowane przez kontroler, który wysyła pakiet tokena {Pakiet Tokena). Opisuje typ i kierunek przesyłania, adres urządzenia USB i numer punktu końcowego. W każdej transakcji możliwa jest tylko wymiana między adresowanym urządzeniem (jego punktem końcowym) a hostem. Urządzenie adresowane przez token rozpoznaje swój adres i przygotowuje się do wymiany. Źródło danych (identyfikowane przez token) przesyła pakiet danych (lub powiadomienie, że nie ma danych do przesłania). Po pomyślnym odebraniu pakietu odbiornik danych wysyła pakiet potwierdzenia (pakiet uzgadniania).

Planowanie transakcji zapewnia zarządzanie kanałami przepływu. Na poziomie sprzętowym wykorzystanie porzucania transakcji (Nack) zapobiega przepełnianiu buforów z góry iz dołu, jeśli szybkość transmisji jest nieprawidłowa. Porzucone tokeny transakcji są retransmitowane w czasie magistrali. Kontrola przepływu umożliwia elastyczne planowanie usług dla jednoczesnych heterogenicznych przepływów danych.

Odporność na błędy zapewniają następujące funkcje USB:

Wysoka jakość sygnału uzyskana dzięki różnicowym odbiornikom/nadajnikom i ekranowanym przewodom.

Ochrona pól kontrolnych i danych za pomocą kodów CRC.

Wykrywanie podłączania i odłączania urządzeń oraz konfiguracja zasobów na poziomie systemu.

Protokół samonaprawiania z limitem czasu utraty pakietów.

Kontrola przepływu dla izochronizmu i sprzętowego zarządzania buforami.

Niezależność funkcji od nieudanych wymian z innymi funkcjami.

Aby wykryć błędy transmisji, każdy pakiet ma pola kontrolne CRC do wykrywania wszystkich błędów jedno- i dwubitowych. Sprzęt wykrywa błędy transmisji, a kontroler automatycznie trzykrotnie podejmuje próbę transmisji. Jeśli ponowne próby zakończą się niepowodzeniem, do oprogramowania klienckiego zostanie przekazany komunikat o błędzie.

Formaty pakietów

Bajty są przesyłane przez magistralę sekwencyjnie, zaczynając od najmniej znaczącego bitu. Wszystkie paczki są podzielone na paczki. Każdy pakiet zaczyna się od pola Sync, które jest reprezentowane przez sekwencję stanów KJKJKJKK (zakodowane NRZI) zgodnie ze stanem Bezczynny. Ostatnie dwa bity (QC) to znacznik początku pakietu SOP używany do identyfikacji pierwszego bitu identyfikatora pakietu PID. Identyfikator pakietu to pole 4-bitowe PID[3:0], identyfikujący typ pakietu (tabela 7.2), po którym następują te same 4 bity, co bity kontrolne, ale odwrócone.
Typ PID Nazwa PID PID[3:0] Treść i cel
żeton OUT 0001 Adres funkcji i numer punktu końcowego Znacznik transakcji funkcji
żeton IN 1001 Adres funkcji i numer punktu końcowego token transakcji hosta
żeton SOF 0101 Rozpocznij znacznik ramki
żeton USTAWIAĆ 1101 Adres funkcji i numer punktu końcowego znacznik transakcji punktu kontrolnego
Dane Dane O Dane 0011 1011 Parzyste i nieparzyste pakiety danych PID są przeplatane w celu dokładnej identyfikacji potwierdzeń
Uścisk dłoni Potw 0010 Potwierdzenie bezbłędnego odbioru pakietu
Uścisk dłoni NAK 1010 Odbiornik nie odebrał lub nadajnik nie przesłał danych. Może być używany do kontroli przepływu danych (niegotowy). W transakcjach przerwań jest to znak, że nie ma nieobsłużonych przerwań.
Uścisk dłoni STOISKO 1110 Punkt końcowy wymaga interwencji hosta
Specjalny PRE 1100 Preambuła niskiej stawki

W torbach z markerami IN, USTAWIENIA и OUT następujące są pola adresowe: 7-bitowy adres funkcji i 4-bitowy adres punktu końcowego. Pozwalają zaadresować do 127 funkcji USB (do konfiguracji używany jest adres zero) i 16 punktów końcowych na funkcję.

Pakiet SOF ma 11-bitowy rozmiar Pole Numeru Ramki, sekwencyjnie (cyklicznie) zwiększane dla następnej klatki.

Pole danych może wynosić od 0 do 1023 bajtów całkowitych. Wielkość pola zależy od rodzaju transmisji i jest negocjowana przy ustanawianiu kanału.

Pole sks-cola obecny we wszystkich tokenach i pakietach danych, chroni wszystkie pola w pakiecie z wyjątkiem PID. CRC dla znaczników (5 bitów) i danych (11 bitów) są obliczane przy użyciu różnych formuł.

Każda transakcja jest inicjowana przez kontroler hosta poprzez wysłanie tokena i kończy się pakietem uzgadniania. Kolejność pakietów w transakcjach ilustruje rys. 7.7.

Kontroler hosta organizuje wymianę z urządzeniami zgodnie ze swoim planem alokacji zasobów. Sterownik cyklicznie (z okresem 1 ms) generuje ramki (ramki), które obejmują wszystkie zaplanowane transakcje. Każda ramka zaczyna się od tokena SOF. (Początek klatki), który jest sygnałem synchronizującym dla wszystkich urządzeń, w tym koncentratorów. Na końcu każdej ramki przydzielany jest przedział czasu EOF (koniec klatki) podczas których koncentratory zabraniają transmisji w kierunku kontrolera. Każda ramka ma swój własny numer. Kontroler hosta działa na 32-bitowym liczniku, ale przesyła tylko 11 niższych bitów w tokenie SOF. Numer ramki jest zwiększany (cyklicznie) podczas EOF. Host planuje ładowanie ramek tak, aby zawsze było w nich miejsce na transakcje kontrolne i przerwania. Wolny czas ramki można wypełnić solidnymi transmisjami (Przelewy zbiorcze).

Magistrala USB i FireWire


Ryż. 7.8. Strumień ramek USB

dla transmisja izochroniczna Ważna jest synchronizacja między urządzeniami a kontrolerem. Istnieją trzy opcje:

synchronizacja wewnętrznego generatora urządzenia ze znacznikami SOF;

dostosowanie liczby klatek na sekundę do częstotliwości urządzenia;

dopasowując prędkość transmisji (odbioru) urządzenia do liczby klatek na sekundę.

Regulacja liczby klatek na sekundę kontrolera jest oczywiście możliwa pod częstotliwością wewnętrznej synchronizacji tylko jednego urządzenia. Regulacja odbywa się poprzez mechanizm sprzężenia zwrotnego, który pozwala na zmianę okresu ramki w przedziale ±1 bit.

1.2. Konfiguracja systemu

USB obsługuje dynamiczne łączenie i rozłączanie urządzeń. Numerowanie urządzeń magistrali to ciągły proces, który śledzi zmiany w topologii fizycznej.

Wszystkie urządzenia są połączone przez porty koncentratora. Koncentratory wykrywają podłączanie i odłączanie urządzeń do swoich portów i zgłaszają stan portów na żądanie kontrolera. Host włącza port i adresuje urządzenie za pomocą kanału kontrolnego Zerowy domyślny adres USB. Podczas pierwszego połączenia lub po zresetowaniu wszystkie urządzenia są adresowane w ten sposób.

Host określa, czy nowo podłączone urządzenie jest koncentratorem, czy funkcją i przypisuje je unikalny adres USB. Host tworzy kanał kontrolny (Rura kontrolna) z to urządzenie przy użyciu przypisanego adresu i numeru docelowego zero.

Jeśli nowym urządzeniem jest koncentrator, host określa podłączone do niego urządzenia, przypisuje im adresy i ustawia

leje kanały. Jeśli nowe urządzenie jest funkcją, powiadomienie o połączeniu jest przekazywane przez menedżera USB do odpowiedniego oprogramowania.

Gdy urządzenie zostanie odłączone, koncentrator automatycznie dezaktywuje odpowiedni port i zgłasza odłączenie do kontrolera, który usuwa informacje o tym urządzeniu ze wszystkich struktur danych. Jeśli koncentrator jest wyłączony, proces usuwania jest wykonywany dla wszystkich podłączonych do niego urządzeń. Jeśli funkcja jest wyłączona, do odpowiedniego oprogramowania wysyłane jest powiadomienie.

numeracja urządzeń, podłączony do autobusu (numeracja magistrali), wykonywane dynamicznie, gdy są podłączone (lub zasilane) bez interwencji użytkownika lub oprogramowania klienckiego. Procedura numerowania jest następująca:

1. Koncentrator, do którego podłączyło się urządzenie, informuje hosta o zmianie stanu swojego portu, odpowiadając na sondę statusu. Od tego momentu urządzenie przechodzi w stan Przywiązany (połączony) oraz port, do którego jest podłączony, stan Niepełnosprawny.

2. Host sprawdza stan portu.

3. Po poznaniu portu, do którego podłączone jest nowe urządzenie, host wydaje polecenie zresetowania i włączenia portu.

4. Koncentrator generuje sygnał Reset dla tego portu (10 ms) i wprowadza go w stan Włączone. Podłączone urządzenie może pobierać z magistrali do 100 mA. Urządzenie przechodzi w stan Oparte (zasilanie włączone), wszystkie jego rejestry są resetowane i odpowiada na adres zero.

5. Do momentu otrzymania przez urządzenie unikalnego adresu, jest on dostępny na kanale watchdog, za pośrednictwem którego kontroler hosta określa maksymalny dopuszczalny rozmiar pola danych pakietu.

6. Host przekazuje urządzeniu swój unikalny adres i wprowadza go w stan Zaadresowany (adresowany do).

7. Host odczytuje konfigurację urządzenia, w tym zadeklarowany pobór prądu z magistrali. Odczyt może zająć kilka klatek.

8. Na podstawie otrzymanych informacji host konfiguruje wszystkie dostępne punkty końcowe tego urządzenia, co jest przekazywane do stanu Skonfigurowany (skonfigurowany). Teraz hub pozwala urządzeniu pobierać pełny prąd zadeklarowany w konfiguracji z magistrali. Urządzenie jest gotowe.

Gdy urządzenie zostanie odłączone od magistrali, koncentrator powiadamia hosta, a port zostaje wyłączony, a host aktualizuje informacje o bieżącej topologii.

1.3. Funkcje i koncentratory urządzeń USB

Możliwości magistrali USB pozwalają używać jej do łączenia różnych urządzeń. Nie dotykając „użytecznych” właściwości PU, skupmy się na ich części interfejsu związanej z magistralą USB. Wszystkie urządzenia muszą obsługiwać zestaw typowych operacji wymienionych poniżej.

Dynamiczne łączenie i rozłączanie. Zdarzenia te są monitorowane przez koncentrator, który zgłasza je do kontrolera hosta i resetuje podłączone urządzenie. Urządzenie po sygnale resetu musi odpowiedzieć na adres zerowy, dopóki nie jest skonfigurowane i nie jest zawieszone. Po przypisaniu adresu, za który odpowiada kontroler hosta, urządzenie powinno odpowiadać tylko na swój unikalny adres.

Konfiguracja urządzenia wykonywane przez gospodarza są niezbędne do ich korzystania. Do konfiguracji zwykle wykorzystuje się informacje odczytywane z samego urządzenia. Urządzenie może mieć wiele interfejsów, z których każdy ma własny punkt końcowy reprezentujący funkcję urządzenia dla hosta. Interfejs w konfiguracji może mieć alternatywne zestawy cech; zmiana zestawów jest obsługiwana przez protokół. W celu obsługi sterowników adaptacyjnych deskryptory urządzeń i interfejsów zawierają pola klasy, podklasy i protokołu.

Transfer danych możliwe za pośrednictwem jednego z czterech rodzajów przelewów (zob. powyżej). W przypadku punktów końcowych, które umożliwiają różne typy transferów, po skonfigurowaniu dostępny jest tylko jeden z nich.

Zarządzanie energią jest wysoce rozwiniętą funkcją USB. W przypadku urządzeń zasilanych z magistrali moc jest ograniczona. Żadne podłączone urządzenie nie może pobierać z magistrali więcej niż 100 mA. Prąd pracy (nie większy niż 500 mA) jest zadeklarowany w konfiguracji i jeśli koncentrator nie może dostarczyć zadeklarowanego prądu do urządzenia, to nie jest skonfigurowany i dlatego nie może być używany.

Urządzenie USB musi obsługiwać zawieszenie (tryb zawieszenia), w którym jego pobór prądu nie przekracza 500 μA. Urządzenie powinno automatycznie zawiesić się po ustaniu aktywności magistrali.

Okazja Zdalne budzenie umożliwia zawieszonemu urządzeniu zasygnalizowanie hostowi, który może również znajdować się w stanie zawieszenia. Możliwość zdalnego budzenia jest opisana w konfiguracji urządzenia. Ta funkcja może być wyłączona podczas konfiguracji.

Centrum w USB realizuje przełączanie sygnału i zasilanie, a także monitoruje stan podłączonych do niego urządzeń, powiadamiając hosta o zmianach. Koncentrator składa się z dwóch części kontrolera (Kontroler koncentratora) i repeater (Wzmacniacz piasty). Przekaźnik jest kluczem zarządzanym, który łączy port wyjściowy z portem wejściowym. Posiada środki do obsługi resetowania i zawieszania sygnalizacji. Kontroler zawiera rejestry interakcji z hostem. Dostęp do rejestrów odbywa się za pomocą określonych poleceń dostępu do koncentratora. Polecenia pozwalają konfigurować koncentrator, zarządzać portami downstream i monitorować ich status.

Porty podrzędne koncentratory mogą znajdować się w następujących stanach:

Oparte (^(zasilanie wyłączone) do portu nie jest dostarczane zasilanie (możliwe tylko dla koncentratorów, które się przełączają

odżywianie). Bufory wyjściowe są wprowadzane w stan wysokiej impedancji, a sygnały wejściowe są ignorowane.

Bezładny (rozłączony) port nie sygnalizuje w żadnym kierunku, ale jest w stanie wykryć podłączone urządzenie (w żadnym stanie SEO w ciągu 2,5 µs). Następnie port przechodzi do stanu Niepełnosprawny, oraz poziomami sygnałów wejściowych {Różn.O lub Różnica1 zdolny bezczynny) określa prędkość podłączonego urządzenia.

sNiepełnosprawni (wyłączone) port przesyła tylko sygnał resetu (na polecenie kontrolera), sygnały z portu (poza detekcją rozłączenia) nie są akceptowane. Po wykryciu wyzwolenia (stan 2,5 µs SEO) port przechodzi w stan Rozłączyć się, a jeśli wyłączenie zostanie wykryte przez „uśpiony” koncentrator, do kontrolera zostanie wysłany sygnał Wznawianie.

w Włączone (Włączone) Port przesyła sygnały w obu kierunkach. Na polecenie kontrolera lub po wykryciu błędu ramki port przechodzi w stan Niepełnosprawny, i po wykryciu podróży do państwa Rozłączyć się.

Zawieszony (zawieszony) Port wysyła sygnał przejścia w stan zatrzymania (tryb „uśpienia”). Jeśli koncentrator jest w stanie aktywnym, sygnały przez port nie są przekazywane w żadnym kierunku. Jednak „uśpiony” koncentrator odbiera sygnały zmiany stanu niezabronionych portów, wysyłając sygnały „budzenia” z aktywowanego urządzenia nawet przez łańcuch „uśpionych” koncentratorów.

Stan każdego portu jest identyfikowany przez kontroler koncentratora za pomocą oddzielnych rejestrów. Istnieje wspólny rejestr, którego bity odzwierciedlają fakt zmiany stanu każdego portu (ustalony podczas EOF). Pozwala to kontrolerowi hosta na szybkie sprawdzenie stanu koncentratora, aw przypadku wykrycia zmian przez specjalne transakcje zaktualizowanie statusu.

1.4. Kontroler hosta

Komputer główny komunikuje się z urządzeniami za pośrednictwem kontrolera. Gospodarz ma następujące obowiązki:

wykrywanie podłączania i odłączania urządzeń USB;

manipulowanie przepływem sterowania między urządzeniami a hostem;

zarządzanie przepływem danych;

zbieranie statystyk;

zapewnienie oszczędności energii przez podłączone jednostki sterujące.

Oprogramowanie systemowe kontrolera zarządza interakcją między urządzeniami i ich oprogramowaniem działającym na komputerze hosta w celu negocjacji:

numeracja i konfiguracja urządzeń;

izochroniczne transfery danych;

asynchroniczne transfery danych;

zarządzanie energią;

informacje dotyczące zarządzania urządzeniami i magistralami.

Tam, gdzie to możliwe, oprogramowanie USB wykorzystuje istniejące oprogramowanie systemowe hosta, takie jak Advanced Power Management, do zarządzania energią.

2. IEEE 1394-FireWire

Standard magistrali szeregowej o wysokiej wydajności, oficjalnie nazwany IEEE 1394, został przyjęty w 1995 roku. Celem było stworzenie magistrali, która nie ustępuje nowoczesnym standardowym autobusom równoległym, przy jednoczesnym znacznym obniżeniu kosztów i zwiększeniu łatwości połączenia (ze względu na przejście na interfejs szeregowy). Standard oparty na autobusach Firewire, używany przez Apple Computer jako tania alternatywa dla SCSI w komputerach Macintosh i PowerMac. Nazwa FireWire jest obecnie stosowana do implementacji standardu IEEE 1394 i współistnieje ze skrótem 1394.

Zalety FireWire przed innymi magistralami szeregowymi:

S? Wielofunkcyjność: magistrala zapewnia cyfrową komunikację aż 63 urządzeniom bez konieczności stosowania dodatkowego sprzętu (koncentratorów). Kamery cyfrowe, skanery, drukarki, kamery do wideokonferencji, dyski twarde mogą wymieniać dane nie tylko z komputerem, ale także między sobą. FireWire, z inicjatywy VESA, jest również pozycjonowany dla „sieci domowych”.

Wysokie kursy wymiany i transmisje izochroniczne pozwalają nawet na poziomie podstawowym (100 Mbit/s) na jednoczesne przesyłanie dwóch kanałów wideo (30 klatek na sekundę) o jakości transmisji i stereofonicznego sygnału audio o jakości CD.

s§ Niski koszt komponentów i kabla.

si Łatwy w instalacji i obsłudze. FireWire rozszerza system pnp. Urządzenia są automatycznie rozpoznawane i konfigurowane po włączeniu/wyłączeniu zasilania. Zasilanie z magistrali (prąd do 1,5 A) pozwala na komunikację pilota z systemem nawet przy wyłączonym zasilaniu. Magistralą i innymi urządzeniami mogą sterować nie tylko komputery PC, ale także inne „inteligentne” urządzenia, takie jak magnetowidy.

2.1. Budowa i współdziałanie urządzeń magistrali

Norma 1394 definiuje dwie kategorie szyn zbiorczych: szyny kablowe i szyny zbiorcze krosowe. (tylny samolot). pod opony krzyżowe Zwykle odnosi się do interfejsów równoległych, które łączą wewnętrzne podsystemy urządzenia podłączonego do kabla 1394.

W przeciwieństwie do USB, które jest kontrolowane przez pojedynczy kontroler hosta, standard 1394 umożliwia łączenie urządzeń peer-to-peer w sieci. Sieć może składać się z wielu magistral połączonych mostami. W ramach tej samej magistrali urządzenia są łączone przewodami połączeniowymi bez użycia dodatkowych urządzeń. Mosty to specjalne inteligentne urządzenia. Karta interfejsu magistrali FireWire dla komputera PC to mostek PCI 1394.

Adresuje do 63 urządzeń na każdej magistrali, adresowanych przez 6-bitowe pole identyfikatora węzła. 10-bitowe pole identyfikatora magistrali pozwala na utworzenie do 1023 mostków w systemie, łączących magistrale różnych typów.

magistrala kablowa to sieć składająca się z węzłów i mostów kablowych. Elastyczna topologia pozwala budować sieci łączące architekturę drzewiastą i łańcuchową (rys. 7.9). Każdy węzeł ma zwykle trzy łączniki peer-to-peer. Dostępnych jest wiele opcji połączeń urządzeń z następującymi ograniczeniami:

ssi między dowolną parą węzłów może wynosić nie więcej niż 16 segmentów kabla;

długość standardowego odcinka kabla nie powinna przekraczać 4,5 m;

2. całkowita długość kabla nie powinna przekraczać 72 m (zastosowanie lepszego kabla pozwala na osłabienie tego ograniczenia).

Niektóre urządzenia mogą mieć tylko jedno złącze, co ogranicza ich opcje lokalizacji. Standard dopuszcza do 27 złączy na jednym urządzeniu.

Magistrala USB i FireWire
Ryż. 7.9. Podłączanie urządzeń na magistrali FireWire

Magistrala USB i FireWire
Ryż. 7.10. Złącze FireWire

Norma przewiduje łączenie węzłów za pomocą kabla 6-żyłowego zamkniętego we wspólnym ekranie. Do transmisji sygnału służą dwie skrętki (oddzielna dla odbiornika i nadajnika), dwie żyły służą do zasilania urządzeń (8-40 V, do 1,5 A). Do galwanicznej izolacji interfejsu stosuje się transformatory (napięcie izolacji izolacji do 500 V) lub kondensatory (w tanich urządzeniach o napięciu izolacji do 60 V względem wspólnego przewodu). Ryc. 7.10 daje wyobrażenie o złączach. 700. Niektóre urządzenia (kamery Sony DCRVX1000 i DCR-VX1000 oraz DHR-4 DVCR) mają tylko jedno mniejsze XNUMX-stykowe złącze z samymi obwodami sygnałowymi. Urządzenia te są podłączane do magistrali za pomocą specjalnego kabla przejściowego tylko jako urządzenia końcowe (chociaż można zastosować specjalne adaptery rozgałęźne).

Standard 1394 definiuje trzy możliwe częstotliwości dla sygnalizacji przez kable: 98,304, 196,608 i 393,216 Mb/s, które są zaokrąglane w górę do 100, 200 i 400 Mb/s. Częstotliwości w standardzie są oznaczone jako S100, S200 и S400 odpowiednio. Urządzenia konsumenckie zwykle obsługują S100, większość adapterów pozwala S200. Urządzenia zaprojektowane dla różnych prędkości mogą być podłączone do tej samej magistrali. Wymiana odbędzie się z minimalną prędkością dla wszystkich aktywnych węzłów. Jeśli jednak kontroler hosta implementuje topologię i mapę prędkości (Topologia_Mar и Speed_Mapa), możliwe jest wykorzystanie kilku częstotliwości w jednej magistrali, zgodnie z możliwościami konkretnej pary uczestniczącej w wymianie.

System umożliwia dynamiczne (na gorąco) podłączanie i odłączanie urządzeń. Możliwość podłączenia identyfikatorów

urządzenia przydzielane są automatycznie, bez interwencji użytkownika. Zmiany w topologii (skład podłączonych urządzeń) są automatycznie monitorowane przez magistralę i przesyłane do oprogramowania sterującego.

Protokół IEEE 1394

Protokół 1394 jest zaimplementowany na trzech poziomach (ryc. 7.11).

warstwa transakcji konwertuje pakiety na dane dostarczane aplikacjom i odwrotnie. Implementuje protokół żądanie-odpowiedź zgodny z architekturą ISO/IEC 13213:1994 (ANSI/IEEE 1212, wydanie 1994), CSR (Control and Status Register) dla magistrali mikrokomputerów (odczyt, zapis, blokada). Ułatwia to połączenie magistrali 1394 ze standardowymi magistralami równoległymi.

Warstwa łącza tworzy pakiety z danych warstwy fizycznej i wykonuje transformacje odwrotne. Zapewnia wymianę węzłów z datagramami z potwierdzeniami. Warstwa odpowiada za przesyłanie pakietów i zarządzanie transferami izochronicznymi.

Warstwa fizyczna generuje i odbiera sygnały magistrali. Zapewnia inicjalizację i arbitraż, przy założeniu, że w danej chwili aktywny jest tylko jeden nadajnik. Warstwa przekazuje strumienie danych i poziomy sygnałów magistrali szeregowej do warstwy wyższej. Pomiędzy tymi poziomami możliwa jest izolacja galwaniczna, w której mikroukłady warstwy fizycznej zasilane są z magistrali. Izolacja galwaniczna jest konieczna, aby zapobiec powstawaniu pasożytniczych pętli wspólnych przewodów, które mogą pojawiać się w przewodach ochronnych zasilaczy.

Sprzęt FireWire zazwyczaj składa się z dwóch dedykowanych układów nadawczo-odbiorczych warstwy fizycznej Nadajnik PHY i most autobusowy Układ LINK. Komunikacja między nimi jest możliwa np. poprzez interfejs IBM-Apple LINK-PHY. Mikroukłady warstwy komunikacyjnej wykonują wszystkie funkcje swojej warstwy i niektóre funkcje warstwy

transakcji, reszta warstwy transakcyjnej odbywa się w oprogramowaniu.

Magistrala USB i FireWire

Złącza

Rys.. 7.11. Trójwarstwowa struktura FireWire

Zarządzanie autobusem

Protokół 1394 posiada elastyczny mechanizm zarządzania komunikacją pomiędzy różnymi urządzeniami. Nie wymaga to obecności komputera PC lub innego kontrolera magistrali na magistrali. Zarządzanie obejmuje trzy usługi:

mistrz cyklu, wysyłanie rozgłoszeń początku cyklu (wymagane w przypadku wymian izochronicznych).

izochroniczny menedżer zasobów, jeśli jakikolwiek węzeł obsługuje wymianę izochroniczną (dla cyfrowego wideo i audio).

Opcjonalny kontroler magistrali (Bus Master) może to być komputer PC lub magnetowid edycyjny.

Po resecie określana jest struktura magistrali, adresy fizyczne są przydzielane każdemu węzłowi, a nadrzędna pętla, izochroniczny menedżer zasobów i kontroler magistrali są rozstrzygane. Sekundę po zresetowaniu wszystkie zasoby stają się dostępne do późniejszego wykorzystania.

Główną zaletą magistrali jest to, że nie ma potrzeby stosowania kontrolera. Każde urządzenie nadawcze może odebrać pasek ruchu izochronicznego i rozpocząć nadawanie na autonomicznym lub zdalnym sygnale sterującym, odbiornik „usłyszy” tę informację. W obecności kontrolera (PC) odpowiednie oprogramowanie może sterować pracą urządzeń, realizując np. cyfrowe nieliniowe studio montażu wideo.

Izochroniczny transport danych

Izochroniczny transport magistrali 1394 zapewnia gwarantowaną przepustowość i ograniczone opóźnienia dla szybkiej transmisji w wielu kanałach. Izochroniczny menedżer zasobów zawiera rejestr PRZEPUSTOWOŚĆ^DOSTĘPNA, który określa dostępność pozostałej przepustowości dla węzłów z transmisją izochroniczną. Po zresetowaniu nowo pojawiający się węzeł z transmisją izochroniczną żąda przydziału pasa. Na przykład wideo cyfrowe wymaga przepustowości 30 Mb/s (25 Mb/s dla danych wideo i 3-4 Mb/s dla dźwięku, synchronizacji i nagłówków pakietów). Przepustowość mierzona jest w specjalnych jednostkach alokacji, których w cyklu 125 milisekund jest ich 6144. Jednostka zajmuje około 20 ns, co odpowiada czasowi potrzebnemu do przesłania jednej czwórka (kwadlet) przy 1600 Mb/s. Quadlet (słowo 32-bitowe) to jednostka przesyłania danych na magistrali. Dla ruchu asynchronicznego zarezerwowane jest 25 ms cyklu, więc wartość początkowa rejestru po resecie wynosi 4915 jednostek. W S100 cyfrowe urządzenia wideo żądają około 1800 jednostek, w S200 około 900. Jeśli odpowiednie pasmo nie jest dostępne, urządzenie żądające będzie okresowo powtarzać żądanie.

Menedżer zasobów izochronicznych przypisuje każdemu węzłowi izochronicznemu numer kanału (0-63) spośród dostępnych (rejestr

KANAŁY_DOSTĘPNE). Jest to identyfikator pakietu izochronicznego. Kiedy wymiana izochroniczna staje się dla węzła zbędna, musi on zwolnić swoją przepustowość i numer kanału. Informacje sterujące są wymieniane przez kanał asynchroniczny.

2.2. Synonimy i rozszerzenia standardu IEEE 1394

Magistrala IEEE 1394 ma wiele aliasów:

IEEE 1394-1995 Standard for a High Performance Serial Bus to pełna nazwa dokumentu opisującego aktualnie obowiązujący standard.

FireWire jest znakiem towarowym implementacji standardu IEEE-1394 firmy Apple Computer, Inc.

P1394 to nazwa wstępnej wersji IEEE-1394 (przed przyjęciem w grudniu 1995).

DigitalLink jest znakiem towarowym firmy Sony Corporation używanym w odniesieniu do implementacji standardu IEEE-1394 w aparatach cyfrowych.

MultiMedia Connection to nazwa używana w logo 1394 High Performance Serial Bus Trade Association (1394TA).

Ponieważ Apple rozwija koncepcję FireWire od 1986 roku, nazwa FireWire jest najpopularniejszym synonimem IEEE 1394.

Oprócz głównego standardu IEEE 1394-1995 istnieje kilka jego modyfikacji:

1394a jest postrzegany jako dokument porządkowy, wypełniający niektóre luki w oryginalnym standardzie i zawierający drobne zmiany (takie jak szybsza operacja resetowania na magistrali). Produkty 1394a są wstecznie kompatybilne z urządzeniami wyprodukowanymi przed przyjęciem głównego standardu. Wersja została wprowadzona w celu zwiększenia prędkości do 800 Mbit/s i wyższej; wersje o dużej prędkości są również zawarte w 1394b.

1394.1 definiuje złącze 4-przewodowe i ustanawia standard dla mostków magistrali.

1394.2 jest przeznaczony jako standard do łączenia klastra stacji z kursem wymiany 1 Gb/s i wyższym, niekompatybilne z 1394. Ten standard wywodzi się z IEEE 1596 SCI (Scalable Coherent Interface) dla superkomputerów i jest czasami określany jako Ekspres szeregowy lub SCILite. Interfejs sygnalizacyjny 1394.2 jest podobny do FCAL i umożliwia: topologia pierścienia, zabronione przez normę 1394.

2.3. Porównanie FireWire i USB

Interfejsy szeregowe FireWire i USB, choć mają wspólne cechy, są zasadniczo różnymi technologiami. Obie magistrale umożliwiają łatwe podłączenie dużej liczby PU (127 dla USB i 63 dla FireWire), umożliwiając przełączanie i włączanie/wyłączanie urządzeń podczas pracy systemu. Topologia obu magistral jest dość zbliżona. Koncentratory USB są częścią CC; ich obecność jest niewidoczna dla użytkownika. Obie magistrale mają linie zasilania urządzeń, ale moc obsługiwana przez FireWire jest znacznie większa. Obie magistrale obsługują system PnP (Power On/Off Auto Configuration) i eliminują problem braków adresów, kanałów DMA i przerwań. Istnieje różnica w zarządzaniu przepustowością i magistralą.

USB koncentruje się na PU podłączonym do komputera. Jego izochroniczne transmisje umożliwiają przesyłanie tylko cyfrowych sygnałów audio. Wszystkie transmisje są sterowane centralnie, a komputer PC jest niezbędnym węzłem sterującym u podstawy struktury drzewa magistrali. Połączenie kilku komputerów z tą magistralą nie jest przewidziane.

FireWire koncentruje się na intensywnej wymianie między dowolnymi urządzeniami do niego podłączonymi. Ruch izochroniczny umożliwia transmisję wideo „na żywo”. Magistrala nie wymaga scentralizowanego sterowania z komputera PC. Możliwe jest użycie magistrali do połączenia kilku komputerów PC i PU w ​​sieć lokalną.

Nowe cyfrowe urządzenia wideo i audio mają wbudowane adaptery 1394. Połączenie FireWire tradycyjnych urządzeń analogowych i cyfrowych (odtwarzacze, kamery,

monitorów) jest możliwe dzięki adapterom-konwerterom interfejsów i sygnałów. Standaryzowane kable i złącza FireWire zastępują wiele różnych połączeń między urządzeniami elektroniki użytkowej a komputerami. Różne typy sygnałów cyfrowych są multipleksowane na jednej magistrali. W przeciwieństwie do sieci Ethernet, szybkie strumienie danych w czasie rzeczywistym przez FireWire nie wymagają dodatkowych protokołów. Ponadto istnieją punkty arbitrażowe, które gwarantują dostęp do autobusu w określonym czasie. Zastosowanie mostków w sieciach FireWire pozwala odizolować od siebie ruch grup węzłów.

7.3. Interfejs ACCESS.Bus i PC

magistrala szeregowa DOSTĘP.Bus (Accessory Bus), opracowana przez firmę DEC, to magistrala służąca do interakcji komputera z jego akcesoriami, na przykład monitorem (kanał VESA DDC), inteligentnymi zasilaczami (Smart Battery) itp. Magistrala obsługuje dwa sygnały i dwa zasilacze (12 V, 500 mA) przewodami łączą do 14 urządzeń I/O, długość magistrali może sięgać 8 m. Podstawą sprzętową jest interfejs PC, który charakteryzuje się łatwością implementacji, ale nawet w porównaniu z USB, niski wydajność. Nad protokołem sprzętowym komputera PC dla ACCESS.Bus znajduje się podstawowy protokół programowy, z którym współpracują protokoły poszczególnych podłączonych urządzeń. Protokoły zapewniają łączenie / rozłączanie urządzeń bez ponownego uruchamiania systemu operacyjnego. Przeznaczenie sygnałów złącza ACCESS.Bus zaproponowane przez VESA podano w tabeli. 7.3.
kontakt Powołanie
1 GND
2 klucz
3 SDA
4 +5 V (zasilanie urządzenia)
5 SCL

Interfejs DO, opracowany przez firmę Philips, pojawił się niedawno w komputerach osobistych i służy jako wewnętrzna magistrala pomocnicza płyty systemowej do komunikacji z nieulotną pamięcią identyfikacyjną zainstalowanych komponentów (modułami pamięci DIMM). Do magistrali niezwykle łatwo zaimplementować dwie linie sygnałowe współpracujące z oprogramowaniem. Zgodnie z jej przeznaczeniem ta magistrala jest obecnie używana tylko przez BIOS przy określaniu sprzętu, ale użycie zapisywalnej pamięci konfiguracyjnej otwiera nowe możliwości łączenia oprogramowania z określonym systemem (a dokładniej z zainstalowanym modułem) i ... dla wirusów . Metoda dostępu oprogramowania do magistrali nie została jeszcze ustandaryzowana, ale w razie potrzeby można ją „obliczyć”, studiując dokumentację chipsetu.

Magistrala USB i FireWire
Ryż. 7.12. Protokół komunikacji z komputerem

Interfejs szeregowy CSS zapewnia dwukierunkowy transfer danych pomiędzy parą urządzeń za pomocą dwóch sygnałów: danych SDA (Serial Data) oraz zegara SCL (Serial Clock). W wymianie biorą udział dwa urządzenia prowadzenie (Mistrz) и niewolnik. Każdy z nich może pełnić funkcję nadajnik, umieszczanie bitów informacyjnych na linii SDA lub odbiorca. Protokół wymiany przedstawiono na rys. 7.12. Synchronizacja jest ustawiana przez kontroler nadrzędny. Dwukierunkowa linia danych z wyjściem typu „otwarty kolektor” sterowana jest kolejno przez oba urządzenia. Częstotliwość wymiany (niekoniecznie stała) jest ograniczona od góry o 100 kHz dla trybu standardowego i 400 kHz dla trybu szybkiego, co pozwala na zorganizowanie sterowanej programowo implementacji kontrolera interfejsu.

Rozpoczęcie dowolnych warunków pracy Start wyzwalane przez przejście z wysokiego na niski sygnału SDA, gdy SCL jest wysoki. Operacja jest zakończona przeniesieniem sygnału SDA z poziomu niskiego na wysoki przy warunku wysokiego SCL Stop. Podczas transmisji danych stan linii SDA może się zmieniać tylko wtedy, gdy SCL jest niski, bity danych są strobowane dodatnim zboczem SCL.Każda ramka składa się z 8 bitów danych generowanych przez nadajnik (najbardziej znaczący bit MSB to wysłane jako pierwsze), po czym nadajnik zwalnia linię danych na jeden cykl w celu odebrania potwierdzenia. Odbiornik podczas dziewiątego cyklu tworzy zero Bit potwierdzenia potwierdzenia. Po przesłaniu bitu potwierdzenia odbiornik może opóźnić następną transmisję, utrzymując stan niski linii SCL. Odbiornik może również spowolnić magistralę na poziomie odbioru każdego bitu, utrzymując SCL na niskim poziomie po jego wycofaniu generowanym przez nadajnik.

Każdy slave ma swój własny adres, który domyślnie ma 7 bitów. Adres A[6:0] transmitowany przez mastera w bitach [7:1] pierwszego bajtu, bit 0 zawiera znak operacji R1U(R1/U=1 odczyt, RW=Q -nagrywać). Adres 7-bitowy składa się z dwóch części: górnych 4 bitów A[6:3] przenoszą informacje o typie urządzenia (na przykład dla EEPROM 1010) oraz o 3 niższych bitach A[0:2] określić numer urządzenia tego typu. Wiele mikroukładów z interfejsem PC ma trzy wejścia adresowe, przełączając je na poziomy logiczne 1 i 0, ustawia się wymagany adres. Niektóre pełne wartości adresowe są zarezerwowane (Tabela 7.4).

All-call pozwala urządzeniu budzenia ogłaszać się w sposób rozgłaszany. Bajt Start ma na celu zwrócenie uwagi procesora na interfejs, jeśli jest on zorganizowany w urządzeniu w sposób programowy (a nie sprzętowy). Do czasu odebrania tego bajtu mikrokontroler urządzenia nie odpytuje stanu i nie monitoruje sygnałów interfejsu. W przypadku adresowania 10-bitowego bity [2:1] zawierają górną część adresu, a 8 młodszych bitów zostanie przeniesionych w następnym bajcie, jeśli znak RW=0.

Adres urządzenia podrzędnego oraz typ wywołania są ustawiane przez kontroler podczas inicjowania wymiany. Wymianę pamięci ilustruje rys. 7.13. Tutaj adres urządzenia SA[0:2], adres danych DA[0:7], dane D[0:7], flaga zapisu W (0), flaga odczytu R (1).
Bity [7:1] BKTO(RW) Powołanie
0000 000 0 ogólny adres połączenia ogólny adres wywoławczy
0000 000 1 Początek. rozpoczęcie aktywnej wymiany
0000 001 X Adres urządzenia CBUS (dla kompatybilności)
0000 010 X Adres dla innych urządzeń magistrali
0000 011 X Skryty
0000 1XX X Skryty
1111 1XX X Skryty
1111 och X Znak adresowania 10-bitowego

Magistrala USB i FireWire
Ryż. 7.13. Wymiana z pamięcią poprzez interfejs PC: a zapis, b odczyt z aktualnego adresu, в czytanie z dowolnego adresu

Po spełnieniu warunku start, kontroler wysyła bajt zawierający adres urządzenia i wskazanie operacji rw, i czekam na potwierdzenie. Na operacje zapisu następną wiadomością ze sterownika będzie 8-bitowy adres zapisywanej komórki, po którym następuje bajt danych (w przypadku mikroukładów o pojemności pamięci większej niż 256 bajtów adres komórki jest wysyłany w dwóch bajtach). Po otrzymaniu potwierdzenia kontroler kończy pętlę z warunkiem Zatrzymać, a adresowane urządzenie może rozpocząć swój wewnętrzny cykl zapisu, podczas którego nie odpowiada na sygnały interfejsu. Sterownik sprawdza gotowość urządzenia wysyłając polecenie zapisu (bajt adresu urządzenia)

i analizowanie bitu potwierdzenia, a następnie tworzenie warunku Stop. Jeśli urządzenie odpowie bitem potwierdzenia, oznacza to, że zakończyło swoją wewnętrzną pętlę i jest gotowe do następnej operacji.

Operacja odczytu jest inicjowany w taki sam sposób jak rekord, ale z atrybutem RW=\. Możliwy jest odczyt pod podanym adresem, pod aktualnym adresem lub sekwencyjnie. Aktualny adres przechowywany jest w wewnętrznym liczniku urządzenia podrzędnego, zawiera adres komórki biorącej udział w ostatniej operacji powiększony o jeden.

Po otrzymaniu polecenia odczytu urządzenie podaje bit potwierdzenia i wysyła bajt danych odpowiadający aktualnemu adresowi. Kontroler może odpowiedzieć potwierdzeniem, wówczas urządzenie wyśle ​​kolejny bajt (odczyt szeregowy). Jeżeli kontroler odpowie na otrzymany bajt danych warunkiem Zatrzymać, Operacja odczytu została zakończona (przypadek odczytu pod aktualnym adresem). Kontroler ustawia adres początkowy do odczytu fikcyjną operacją zapisu, podczas której przesyłany jest bajt adresu urządzenia i bajt adresu komórki, a po potwierdzeniu otrzymania bajtu adresu warunek jest generowany ponownie Start i przesyłany jest adres urządzenia, ale ze wskazaniem operacji odczytu. W ten sposób realizowany jest odczyt dowolnej komórki (lub sekwencji komórek).

Interfejs pozwala sterownikowi za pomocą pary sygnałów uzyskać dostęp do dowolnego z 8 urządzeń tego samego typu podłączonych do tej magistrali i posiadających unikalny adres (rys. 7.14). Jeśli chcesz zwiększyć liczbę urządzeń, możesz połączyć grupy. W tym przypadku możliwe jest zastosowanie zarówno wspólnego sygnału SCL i oddzielnych sygnałów SDA (dwukierunkowych), jak i wspólnego sygnału SDA oraz oddzielnych jednokierunkowych sygnałów SCL. Aby uzyskać dostęp do jednego z kilku mikroukładów (lub urządzeń), które nie mają pinów do ustawiania własnego adresu, stosuje się również separację linii SCL (lub SDA).

Protokół PC umożliwia wielu kontrolerom współdzielenie tej samej magistrali poprzez wykrywanie kolizji i arbitraż. Funkcje te są realizowane w bardzo prosty sposób: jeśli dwa nadajniki spróbują ustawić różne logiczne poziomy sygnału na liniach SDA, to ten, który ustawi niski poziom, „wygra”. Nadajnik monitoruje poziomy kontrolowanych przez siebie sygnałów iw przypadku wykrycia rozbieżności (przekazuje wysoki poziom, ale „widzi” niski) odmawia dalszej transmisji. Urządzenie może inicjować wymianę tylko w stanie pasywnym sygnałów. Do kolizji może dojść tylko przy równoczesnej próbie rozpoczęcia wymiany, gdy tylko zostanie wykryty konflikt, nadajnik „przegrywający” wyłączy się, a nadajnik „zwycięski” będzie kontynuował pracę.

Magistrala USB i FireWire
Ryż. 7.14. Podłączanie urządzeń do kontrolera

Dodatek A. Inżynieria systemów komputerów kompatybilnych z IBM PC

Tutaj rozważana jest interakcja programów z adapterami interfejsów. Podano krótkie informacje na temat architektury komputera. Opisano organizację pamięci i przestrzeni we/wy, system przerwań i bezpośredni dostęp do pamięci. Bardziej szczegółowe informacje można znaleźć w książce "Hardware IBM PC. Encyclopedia" ("Piotr", 1998).

A.1. miejsce w pamięci

Struktura logiczna pamięci komputerów PC jest zdeterminowana przez system adresowania procesorów rodziny x86. Procesory 8086/88 używane we wczesnych komputerach IBM PC miały 1 MB przestrzeni adresowej (20 bitów szyny adresowej). Począwszy od procesora 80286, szyna adresowa została rozszerzona do 24 bitów, następnie (386DX, 486, Pentium) do 32, aw końcu do 36 bitów (Pentium Pro, Pentium II). W trybie rzeczywistego procesora używanym w systemie DOS formalnie dostępny jest tylko 1 MB pamięci. Jednak z powodu błędu emulacji procesora 8086 w trybie rzeczywistym procesory 80286 i wyższe mają maksymalny dostępny adres lOFFEFh, czyli o (64K-16) bajtów więcej. Nazywa się obszar lOOOOOh-lOFFEFh Obszar wysokiej pamięci (HMA). Umieszczono w nim część systemu operacyjnego trybu rzeczywistego i małych programów rezydentnych. Dla pełnej kompatybilności z procesorem 8086/88 zastosowano bramkę magistrali adresowej A20 Brama A20, który albo przepuszcza sygnał z procesora, albo wymusza resetowanie linii A20 systemowej szyny adresowej.

Publikacja: cxem.net

Zobacz inne artykuły Sekcja Komputery.

Czytaj i pisz przydatne komentarze do tego artykułu.

<< Wstecz

Najnowsze wiadomości o nauce i technologii, nowa elektronika:

Atrakcyjność troskliwych mężczyzn 14.04.2024

Od dawna panuje stereotyp, że kobiety wolą „złych chłopców”. Jednak najnowsze badania przeprowadzone przez brytyjskich naukowców z Monash University oferują nowe spojrzenie na tę kwestię. Przyjrzeli się, jak kobiety reagowały na emocjonalną odpowiedzialność mężczyzn i chęć pomagania innym. Wyniki badania mogą zmienić nasze rozumienie tego, co sprawia, że ​​mężczyźni są atrakcyjni dla kobiet. Badanie przeprowadzone przez naukowców z Monash University prowadzi do nowych odkryć na temat atrakcyjności mężczyzn w oczach kobiet. W eksperymencie kobietom pokazywano zdjęcia mężczyzn z krótkimi historiami dotyczącymi ich zachowania w różnych sytuacjach, w tym reakcji na spotkanie z bezdomnym. Część mężczyzn ignorowała bezdomnego, inni natomiast pomagali mu, kupując mu jedzenie. Badanie wykazało, że mężczyźni, którzy okazali empatię i życzliwość, byli bardziej atrakcyjni dla kobiet w porównaniu z mężczyznami, którzy okazali empatię i życzliwość. ... >>

Elektroniczny kask dla kierowców ciężarówek 14.04.2024

Bezpieczeństwo na drogach, zwłaszcza kierowców ciężkiego sprzętu budowlanego, jest dla inżynierów i naukowców najwyższym priorytetem. W świetle tego niemiecki Instytut Fraunhofera ds. Wytrzymałości Konstrukcyjnej i Niezawodności Systemów wprowadził nowy produkt - kask elektroniczny, który ma za zadanie chronić kierowców przed poważnymi obrażeniami podczas prowadzenia pojazdów budowlanych. Nowy elektroniczny kask opracowany przez zespół inżynierów z Instytutu Fraunhofera otwiera nowe perspektywy dla bezpieczeństwa kierowców ciężarówek i sprzętu budowlanego. Urządzenie jest w stanie monitorować poziom drgań w kabinie samochodu i ostrzegać kierowcę o możliwym niebezpieczeństwie. Podstawą działania kasku jest wbudowany czujnik piezoelektryczny, który podczas fizycznego odkształcenia generuje energię elektryczną. Mechanizm ten pozwala urządzeniu reagować na intensywne wibracje typowe dla sprzętu budowlanego. Gdy poziom odkształcenia przekroczy bezpieczne wartości, w kasku włącza się system alarmowy, ... >>

Antywitaminy zamiast antybiotyków 13.04.2024

Problem oporności bakterii na antybiotyki staje się coraz poważniejszy, stwarzając zagrożenie dla skutecznego leczenia infekcji. W świetle tego naukowcy szukają nowych sposobów zwalczania superbakterii. Jednym z obiecujących kierunków jest zastosowanie antywitamin, które mogą działać antybakteryjnie. Antywitaminy, choć znane jako przeciwieństwo witamin, okazały się obiecującym narzędziem w walce z antybiotykoopornością bakterii. Badanie przeprowadzone przez naukowców z Uniwersytetu w Getyndze w Niemczech potwierdziło ich potencjał w tworzeniu nowych leków do zwalczania niebezpiecznych infekcji. Wraz ze wzrostem liczby superbakterii odpornych na antybiotyki istnieje potrzeba znalezienia alternatywnych metod leczenia. Antywitaminy to cząsteczki podobne do witamin, ale zdolne do hamowania aktywności bakterii bez szkody dla organizmu ludzkiego. W tej chwili nauka zna tylko trzy antywitaminy: różę ... >>

Przypadkowe wiadomości z Archiwum

Cyfrowa kamera stereoskopowa 12.01.2002

Pierwsza na świecie stereoskopowa kamera wideo została wypuszczona przez japońską firmę Canon.

Dwie soczewki pracują jednocześnie, elektroniczna migawka przesyła obraz do matrycy światłoczułej naprzemiennie z jednego lub drugiego obiektywu, przełączając się 60 razy na sekundę. Aby zobaczyć trójwymiarowy obraz na ekranie telewizora, stosuje się specjalne okulary, które z tą samą częstotliwością i synchronicznie z migawką kamery, która filmowała, zasłaniają lewe lub prawe oko widza. migawka ciekłokrystaliczna.

Cena nowej kamery wideo to 4500 USD.

Inne ciekawe wiadomości:

▪ Księżyc odległej planety

▪ Dedykowany akcelerometr IIS2ICLX

▪ Autonomiczny samochód zamienia kierowcę w instruktora

▪ Drobne mielenie dla świni

▪ Rower elektryczny

Wiadomości o nauce i technologii, nowa elektronika

 

Ciekawe materiały z bezpłatnej biblioteki technicznej:

▪ część witryny Zasilanie. Wybór artykułów

▪ artykuł Kaptur-niewidoczny. Wskazówki dla mistrza domu

▪ artykuł Który astronauta ożenił się na ISS? Szczegółowa odpowiedź

▪ Artykuł Mierniczy, inspektor materiałów, wzorów, produktów. Standardowe instrukcje dotyczące ochrony pracy

▪ artykuł Mikrosekundowy integrator fotoprądowy z przerwaniem całkowania z opóźnieniem fazowym. Encyklopedia elektroniki radiowej i elektrotechniki

▪ artykuł Niewidzialny atrament. Sekret ostrości

Zostaw swój komentarz do tego artykułu:

Imię i nazwisko:


Email opcjonalny):


komentarz:





Wszystkie języki tej strony

Strona główna | biblioteka | Artykuły | Mapa stony | Recenzje witryn

www.diagram.com.ua

www.diagram.com.ua
2000-2024