Standard transmisji równoległej LPT Centronics
Rodzaje transmisji szeregowa równoległa
Opis LPT łącze LPT jest interfejsem równoległym w komputerach PC. Standard IEEE 1284 został opracowany w 1994 roku jako 25-pinowy port równoległy wykorzystywany w głównej mierze do podłączania urządzeń peryferyjnych: drukarki, skanera, plotera
Właściwości interfejsu LPT Szybkość 2 MB/s Długość kabla 2 m Możliwość podłączenia: drukarki,skanera, plotera
Tryby pracy LPT SPP (ang. Standard Parallel Port) tryb umożliwiający dwustronną transmisję danych, zwany również trybem zgodności (ang. Compatibility Mode), bo zapewnia kompatybilność ze złączem Centronics. SPP zapewnia transfer do 50 kb/s. Wadą jest jego obsługa poprzez Przerwania. EPP (ang. Enhanced Parallel Port) opracowany w 1991r. przez firmę Intel, umożliwiał obsługę pamięci masowych, skanerów i zapewniał transfer do 3 MB/s. Obsługa Handshake (potwierdzenie odebrania danych), nie obsługuje DMA, często stosowany ECP (ang.extended Capability Port) opracowany w 1992r. przez firmę HP i Microsoft oferuje prędkości przesyłu również do 3 MB/s. Wykorzystuje DMA
EPP EPP pochodzi od angielskiej nazwy Enhanced Parallel Port - Ulepszony Port Równoległy. Protokół EPP został opracowany przez firmy Intel, Xircom i Zenith Data Systems. Celem tego projektu było stworzenie portu równoległego o wysokich parametrach użytkowych, który byłby wciąż kompatybilny ze standardowym portem Centronics. Protokół EPP, oferując wiele korzyści wytwórcom urządzeń peryferyjnych sterowanych przez port równoległy, bardzo szybko się rozpowszechnił i stał się opcjonalnym sposobem przesyłu danych. Stało się to przed przyjęciem standardu IEEE 1284. Protokół EPP udostępnia cztery typy cykli przesyłu danych: Cykl Zapisu Danych Cykl Odczytu Danych Cykl Zapisu Adresu Cykl Odczytu adresu Cykle danych używane są do przesyłu danych pomiędzy komputerem a urządzeniem zewnętrznym. Cykle adresu służą do przekazywania adresu, kanału lub polecenia i informacji sterujących. W poniższej tabeli przedstawiamy sygnały używane przez tryb EPP wraz z ich odpowiednikami dla portu SPP. Na rysunku poniżej przedstawiamy przykładowy cykl zapisu danych - w cyklu adresu zamiast linii DATASTB jest używana w identyczny sposób linia ADDRSTB. W cyklu odczytu linia WRITE zachowuje stan 1 przez cały czas trwania cyklu. Sygnał IOW (ang. Input Output Write - Zapis Do Portu We/Wy) jest sygnałem mikroprocesora, a nie portu EPP. Znalazł się on na rysunku po to, aby pokazać, iż cały cykl zapisu EPP do urządzenia zewnętrznego odbywa się w czasie jednego cyklu we/wy wykonywanego przez procesor. Mikroprocesor wykonuje cykl we/wy zapisu do portu danych EPP. Linia WRITE zostaje ustawiona w stan 0 i na liniach D0-D7 pojawiają się dane. Linia DATASTB przechodzi w stan 0, ponieważ linia WAIT posiada stan 0. Port czeka na potwierdzenie od urządzenia peryferyjnego (linia WAIT musi przejść w stan 1). Linia DATASTB powraca do stanu 1 i cykl EPP kończy się. Kończy się cykl we/wy mikroprocesora. Linia WAIT przechodzi w stan 0, co oznacza zgodę na rozpoczęcie kolejnego cyklu. Ponieważ cykl przesyłu danych w porcie EPP odbywa się w ciągu jednego cyklu we/wy mikroprocesora, port ten może osiągnąć dużą szybkość przesyłu danych - od 500KB do 2MB na sekundę. Jest to jedna z głównych zalet trybu EPP.
ECP ECP jest skrótem angielskiej nazwy Extended Capability Port - Port o Rozszerzonych Możliwościach. Standard ECP został opracowany wspólnie przez Microsoft i Hewlett Packard do współpracy z drukarkami i skanerami. Zapewnia on szybką, dwukierunkową wymianę danych pomiędzy komputerem a urządzeniem zewnętrznym. Protokół ECP umożliwia transmisję dwukierunkową dla danych oraz dla rozkazów. Zaimplementowano również kompresję danych typu RLE (ang. Run Length Encoding), dzięki której ilość przesyłanych danych może być istotnie mniejsza - jest to szczególnie pożądane przy urządzeniach, które wymagają przesyłania dużej liczby danych, takich jak drukarki laserowe i skanery. Jednakże tryb kompresji RLE musi być obsługiwany po obu stronach toru transmisyjnego, aby można było z niego skorzystać. Port ECP pozwala również na adresowanie kanałów, dzięki czemu komputer może komunikować się niezależnie z różnymi urządzeniami logicznymi, które fizycznie znajdują się w jednej obudowie - np. urządzenia wielofunkcyjne zawierające jednocześnie fax/modem, skaner i drukarkę. Adresowanie kanałów umożliwia komputerowi pobieranie danych z modemu w czasie, gdy kanał drukarki jest zajęty przetwarzaniem i wydrukiem dokumentu. W trybie kompatybilności CPP, gdy drukarka staje się zajęta przetwarzaniem danych, komunikacja z nią nie jest możliwa. W trybie ECP komputer ma możliwość odwołania się do innego kanału i transmisja może odbywać się dalej.
ECP Na obrazku poniżej przedstawiono cykle przesyłu informacji od komputera do urządzenia zewnętrznego. Gdy linia HostAck jest ustawiona na 1, to przesyłane są dane. Gdy linia HostAck jest ustawiona na 0, komputer przesyła rozkaz, który jest albo liczbą powtórzeń poprzednio przesłanego bajtu danych dla RLE, albo adresem kanału urządzenia logicznego. Rozpoznanie umożliwia najstarszy bit D7. Jeśli ma on wartość 0, to bity D0-D6 zawierają liczbę powtórzeń dla RLE (0-127). Jeśli bit D7 ma wartość 1, to bity D0-D6 określają numer kanału logicznego (0-127). Na obrazku tym przedstawiono przesłanie bajtu danych, po którym następuje przesłanie rozkazu. Komputer umieszcza dane na liniach D0-D7 oraz zaznacza cykl danych przez ustawienie na 1 linii HostAck. Komputer ustawia linię HostClk na 0, aby zasygnalizować gotowość danych dla urządzenia peryferyjnego. Urządzenie peryferyjne potwierdza gotowość do odczytu przez ustawienie linii PeriphAck na 1. Komputer ustawia linię HostClk z powrotem na 1. W tym momencie urządzenie peryferyjne powinno odczytać dane z linii D0-D7. Urządzenie peryferyjne ustawia linię PeriphAck na 0, aby powiadomić komputer, że jest gotowe na przyjęcie kolejnego bajtu danych. Cykl się powtarza, jednakże tym razem będzie to cykl rozkazowy, ponieważ linia HostAck przyjmuje stan 0.
ECP Kolejny rysunek przedstawia przesłanie danej i rozkazu w kierunku odwrotnym - od urządzenia peryferyjnego do komputera. Komputer żąda transmisji kanałem zwrotnym przez ustawienie linii ReverseRequest na 0. Urządzenie peryferyjne potwierdza gotowość do transmisji zwrotnej przez ustawienie linii AckReverse na 0. Urządzenie peryferyjne umieszcza dane na liniach D0-D7 i ustawia PeriphAck na 1, aby zaznaczyć cykl danych. Urządzenie ustawia linię PeriphClk na 0, aby zaznaczyć ważność danych na liniach D0-D7. Komputer potwierdza ustawieniem HostAck na 1. Urządzenie ustawia linię PeriphClk na 1. W tym momencie komputer powinien odczytać dane z linii D0-D7. Komputer ustawia linię HostAck na 0, aby zgłosić gotowość przyjęcia kolejnej danej. Cykl się powtarza, lecz tym razem będzie to cykl rozkazu, ponieważ urządzenie zewnętrzne ustawiło linię PeriphAck na 0.
SPP Tryb ten jest używany do komunikacji komputerów osobistych z drukarkami. Często jest on opisywany skrótem SPP (ang. Standard Parallel Port - Standardowy Port Równoległy) lub jako tryb Centronics (ang. Centronics Mode). Poniższy rysunek przedstawia przebieg sygnałów na istotnych liniach portu Centronics w czasie transmisji danych od komputera do drukarki. Cykl przesyłu bajtu danych w trybie kompatybilności Komputer umieszcza bajt danych na liniach D0-D7. Komputer sprawdza status drukarki. Jeśli nie ma błędów, sprawdzany jest stan linii BUSY. W przypadku błędów transmisja jest przerywana. Czas ten jest również wykorzystywany do ustalenia się sygnałów na liniach danych. Jeśli linia BUSY ma stan 0, to komputer ustawia linię STROBE w stan 0. Powoduje to odczyt danych z linii D0-D7 przez drukarkę. Drukarka ustawia linię BUSY na stan 1 do momentu przetworzenia odczytanych danych. Komputer ustawia linię STROBE z powrotem na stan wysoki i czeka na potwierdzenie odbioru danych. Gdy drukarka odczyta dane, generuje ujemny impuls potwierdzający na linii ACK. Gdy dane zostaną przetworzone i drukarka stanie się gotowa do odczytu kolejnego bajtu, ustawia linię BUSY na stan 0.
Złacza