Kako podesiti pametne telefone i računare. Informativni portal

Krugovi do lpt porta računara. Greške i testiranje paralelnih portova

"LPT" port se rijetko nalazi na modernim računarima. Ovo je poseban konektor na računaru za povezivanje štampača. Neki računari su bili opremljeni sa više "LPT" portova. Ovi portovi su označeni brojevima: "LPT1", "LPT2" i tako dalje.

Paralelni portovi

Istorijski gledano, portovi za povezivanje računara su podeljeni u kategorije: serijski i paralelni portovi. "LPT" se odnosi na paralelne portove. To znači da informacije putuju duž osam različitih žica, odnosno istovremeno i paralelno. Računari se bave binarnim informacijama. Binarno pretvara informacije u nizove nula i jedinica. Jedan binarni broj (nula ili jedan) naziva se bit. Grupa od osam bitova naziva se bajt. Osam bitova svakog bajta koji se kreću od računara do paralelnog porta kreću se u isto vreme. Druga vrsta kabla spojenog na serijski port pomiče osam bitova svakog bajta jedan za drugim.

Značenje

Paralelni port ima ime. Podrazumevani naziv za jedini paralelni računarski port je "LPT1". Ovaj tip porta se uglavnom koristi za povezivanje štampača. Drugi uređaji se mogu povezati na ove portove, ali korisnici koriste pisač mnogo češće od drugih uređaja. Povezivanje štampača sa računarom čini ga "perifernim uređajem". "Periferija" može biti bilo koji dodatni uređaj povezan posebnim kablom na računar. Ovu "perifernu" opremu može koristiti samo jedan računar u isto vrijeme. Jedini način da povežete već povezan „periferni“ uređaj sa drugim računarom jeste da koristite štampač koji je povezan na prvi računar preko mreže i softvera. Ovaj proces se razlikuje od mrežnog štampača, koji se povezuje na mrežu, a ne na jedan računar. U ovom slučaju se koristi druga vrsta kabla i druga vrsta priključka.

Veza

Paralelni port "LPT" i odgovarajući konektor ima 25 pinova i naziva se "DB-25" ili "D-Type 25". Pinovi su otkriveni u konektoru. Uklapaju se u 25 paralelnih rupa. Osam od 25 pinova je odgovorno za prenos podataka, ostali nose ili kontrolne podatke ili uputstva za štampač kao što su poruke sa štampača o nedostatku papira u štampaču.

Budućnost

Mrežni štampači nisu povezani na računar preko "LPT" porta, već preko "Ethernet" porta. Na LPT port se može povezati ne samo štampač, već i drugi uređaji. Danas "periferni" uređaji ne koriste paralelne portove. I "LPT" i serijski portovi su sada povijest i zamijenjeni su "USB" portom ili mrežnim portom. Mogućnost bežičnog povezivanja novih štampača i perifernih uređaja pruža još jednu alternativu "LPT" portu kao način povezivanja štampača sa računarom.

Jedan od najstarijih portova na računaru je LPT port ili paralelni port. I iako se LPT port sada ne može vidjeti na svakoj matičnoj ploči, čitaoci bi mogli biti zainteresirani da znaju šta je to.

Prije svega, shvatimo ime luke. Možda ne znaju svi šta znači skraćenica LPT. U stvari, LPT je skraćenica za Line Print Terminal. Dakle, postaje jasno da je LPT port prvenstveno namijenjen povezivanju štampača. Zbog toga LPT port ima drugo ime - port za štampač. Iako se teoretski na LPT mogu povezati i drugi uređaji.

LPT port ima dugu istoriju. Razvio ga je Centronics (zbog čega se ovaj port često naziva Centronics port), koji je proizvodio matrične štampače još prije PC ere, ranih 1970-ih. I početkom 1980-ih, LPT port je počeo da koristi IBM u svojim računarima i neko vreme je postao standardni port za povezivanje (u to vreme) uređaja velike brzine.

Izgled paralelnog porta na zadnjoj strani računara

LPT interfejs je postojao u nekoliko izdanja. U originalnoj verziji, LPT port je bio jednosmjeran, odnosno mogao je prenositi podatke samo u jednom smjeru - do perifernog uređaja. Naravno, ova situacija nije odgovarala korisnicima, jer su postojali štampači koji su zahtevali prenos podataka u oba smera. Stoga je LPT interfejs naknadno unapređivan nekoliko puta dok nije razvijen njegov međunarodni standard IEEE 1284. U skladu sa ovim standardom, interfejs paralelnog porta je podržavao nekoliko načina rada i bio je kompatibilan sa starim standardima. Osim toga, konačna verzija sučelja podržavala je relativno visoke brzine prijenosa podataka - do 5 Mb/s.

Kako radi paralelni port

LPT port se naziva paralelnim jer se u kablu koji je na njega spojen podaci prenose paralelno, odnosno istovremeno preko više vodiča. Ovo svojstvo razlikuje paralelni port od drugog porta na računaru, serijskog COM porta.

U kablu Centronics postoji 8 provodnika koji prenose podatke.Pored toga, postoji nekoliko vodova u kablu koji prenose kontrolne signale.

Iako se paralelni port uglavnom koristi za povezivanje štampača, bilo je i drugih namjena. Prvo, koristeći LPT port, možete direktno povezati dva računara - pomoću posebnog Interlink kabla. Prije širokog usvajanja Ethernet mrežnih kartica, takva veza, iako korisniku nije pružala velike brzine prijenosa podataka, često je ipak bila jedini način za povezivanje dva računala. Postoje i elektronski ključevi dizajnirani za povezivanje na LPT port.

Data kabl između računara - Interlink

Kao i kod mnogih drugih uređaja na matičnoj ploči, režimi paralelnog porta se često mogu konfigurisati putem BIOS Setup-a. Obično se za to koriste opcije BIOS-a kao što su Parallel Port, Parallel Port IRQ, Parallel Port DMA, itd.

Paralelni konektor na matičnoj ploči i Centronics kabl

Konektor LPT porta se obično nalazi direktno na matičnoj ploči, iako do sredine 1990-ih. obično je bio prisutan na takozvanoj multi-kartici priključenoj u slot za proširenje, na kojoj su se nalazili i drugi računarski portovi. Izlaz porta je 25-pinski ženski konektor koji se zove DB25 konektor.

ISA multicard sa LPT (DB25 - "majka") i portom za igre na ploči.

Za povezivanje sa štampačem koristi se poseban kabl - Centronics kabl. Jedan kraj (utikač) Centronics kabla povezuje se na port, a drugi (takođe utikač) na poseban konektor na štampaču. Zadnji konektor ima 36 pinova. Dakle, posebnost Centronics kabla je u tome što ima različite konektore sa obe strane.

Eksterijer Centronics kabla.

Dok se konektor kabla matične ploče često naziva Centronics konektor, striktno govoreći, Centronics konektor je samo 36-pinski konektor za povezivanje na štampač, a ne na matičnu ploču. Konektor kabla za spajanje na port se zove Amphenolstacker konektor, po imenu američke kompanije Amphenol koja ga je razvila, a koja proizvodi konektore.

Karakteristike paralelnog porta

Zbog činjenice da LPT port podržava paralelni prenos podataka, na prvim računarima ovaj port se smatrao jednim od najbržih računarskih portova. Prenos podataka preko nekoliko linija na mnogo načina približava LPT interfejs kompjuterskim magistralama u arhitekturi. Ipak, ova okolnost nameće i ograničenje na dužinu kabla, koja zbog smetnji koje nastaju u kablu ne može biti veća od 5 m.

Maksimalni napon koji se koristi u signalnim linijama porta je +5 V. Za jednostavan prijenos podataka potrebno je samo deset signalnih linija - to je 8 podatkovnih linija, stroboskopa signalna linija, odnosno signal da je port spreman za prenos podataka i zauzeta linija... Ostatak linija se koristi za kompatibilnost sa Centronics standardom.

Ženski LPT port sa numerisanjem pinova.

Pinout paralelnog DB25 konektora:

  • 1 - Data strobe
  • 2-9 - Podaci, bitovi 0-7
  • 10 - Priznati
  • 11 - Zauzeto
  • 12 - Nema papira
  • 13 - Odaberite
  • 14 - Auto Feed
  • 15 - Greška
  • 16 - Init
  • 17 - Odaberite Ulaz
  • 18-25 - Zemlja

Zaključak

LPT port je interfejs personalnog računara koji se trenutno smatra zastarelim i nema značajnu podršku proizvođača računarskog hardvera i softvera. Međutim, paralelni port se i dalje uspešno koristi u mnogim starim računarima i štampačima.

Paralelni interfejs port je uveden u PC za povezivanje štampača -LPT-port (Line Printer).

Adapter za paralelni interfejs je set registara, nalazi se u I/O prostoru. Registri portova se adresiraju u odnosu na osnovnu adresu porta, zadane vrijednosti za koje su 386h, 378h i 278h. Luka ima vanjski 8-bitni sabirnica podataka, 5-bitni guma signale bogatstva i 4-bitni sabirnica kontrolnih signala.

BIOS podržava do četiri LPT porta (LPT1-LPT4) sa svojom INT 17h uslugom prekida, koja preko njih omogućava komunikaciju sa štampačima preko Centronics interfejsa. Sa ovom uslugom, BIOS prikazuje simbol, inicijalizuje interfejs i štampač i anketira status štampača.

Centronics interfejs

Centronics se odnosi i na set signala i na komunikacioni protokol i na 36-pinski konektor koji se nalazi u štampačima. Svrha signala je data u tabeli. 1.

sto1.

Centronics interfejs signali

Imenovanje

Data strobe. Podaci su fiksirani na niskom nivou signala

Linije podataka. Podaci 0 (pin 2) - najmanji značajan bit

Acknowledge - puls potvrde prijema bajta (zahtjev za primanje sljedećeg). Može se koristiti za generiranje zahtjeva za prekid

Zauzeto. Prijem podataka je moguć samo kada je nivo signala nizak

Visok nivo signalizira kraj papira.

Označava da je štampač uključen

Automatsko pomicanje linije.

Greška: kraj papira, stanje OFF-Line ili interna greška štampača

Inicijalizacija

Izbor štampača (nizak). Kada je nivo visok, štampač ne prihvata druge signale interfejsa.

Zajednička žica interfejsa

Smjer

(ulaz/izlaz) za štampač.

Centronics interfejs je podržan od strane većine štampača sa paralelnim interfejsom, što je njegov domaći pandan IRPR-M.

Tradicionalni lpt port

Tradicionalni SPP (Standard Parallel Port) port je jednosmjerni port na osnovu kojeg je softverski implementiran Centronics protokol za razmjenu. Port pruža mogućnost generiranja zahtjeva za hardverskim prekidom impulsom na ACK # ulazu. Signali porta izlaze na konektorDB-25S(utičnica) instalirana direktno na adaptersku ploču (ili sistemsku ploču) ili povezana na nju ravnim trakastim kablom. Naziv i svrha signala konektora porta (Tabela 2) odgovaraju Centronics interfejsu.

sto 2.

Standardni LPT port konektor

Kontaktirajte DB-25S

Žica sa petljom

Imenovanje

18, 20, 22, 24, 26

* I/O postavlja smjer prijenosa (ulaz/izlaz) signala porta; 0 / I označava izlazne linije čije se stanje čita kada se čita sa odgovarajućih izlaznih portova.

** Simbol "\" označava invertirane signale (1 u registru odgovara donjem nivou linije).

*** Input Ack # je povezan otpornikom (10kOhm) sa +5V napajanjem.

Standardni port ima tri 8-bitna registra, nalazi se na susjednim adresama u I/O prostoru, počevši od bazne adrese porta (BASE).

Registar podataka (DR) - registar podataka, adresa = BASE Podaci upisani na ovaj port su povučen na izlazne linije interfejsa. Podaci očitani iz ovog registra, ovisno o strujnom krugu adaptera, odgovaraju ili prethodno snimljenim podacima ili signalima na istim linijama.

Statusni registar (SR) -statusni registar, predstavljanje 5-bitni ulazni port signali statusa štampača (bitovi SR.4-SR.7), adresa = BASE + 1. Bit SR.7 je invertovan - nizak nivo signala odgovara vrednosti jednog bita u registru, i obrnuto.

Dodjela bitova statusnog registra(brojevi pinova konektora dati su u zagradama):

SR.7-Busy - inverzni prikazi statusa zauzete linije (11);

SR.6 -ASK (Acknowledge) -prikaz statusa linije Ack # (10).

SR.5 -PE (Kraj papira) - prikazuje status linije za kraj papira (12).

SR.4-Select - prikazuje status linije za odabir (13).Jedna vrijednost odgovara signalu za uključivanje štampača.

SR.3-Greška - prikazuje status linije Error (15).

SR.2 - PIRQ - Potvrda # zastavica prekida (samo za PS / 2 port). Bit se briše ako je signal Ack # pokrenuo hardverski prekid. Pojedinačna vrijednost se postavlja hardverskim resetiranjem i nakon čitanja statusnog registra.

SR -rezervisano.

Kontrolni registar (CR) - kontrolni registar, adresa = BA5E + 2. Kao registar podataka, ovo 4-bitni izlazni port može se pisati i čitati (bitovi 0-3), ali njegov izlazni bafer je obično tipa otvoreni kolektor. Ovo vam omogućava da ispravnije koristite linije ovog registra kao ulaz kada ih programirate na visoki nivo. Bitovi O, 1, 3 su invertirani - jedna vrijednost u registru odgovara niskom nivou signala, i obrnuto.

Svrha bitova kontrolnog registra:

CR -rezervisano.

CR.5 - Smjer - kontrolni bit za smjer prijenosa (samo za PS / 2 porta) Upisivanjem jedan postavlja port za podatke u način unosa.

CR.4 -ACKINTEN (Ack Interrupt Enable) - jedna vrijednost omogućava prekid na padajućoj ivici signala na Ackff liniji - signal za traženje sljedećeg bajta.

CR.3 - Select In - vrijednost jednog bita odgovara niskom nivou na izlaznom signalu Selecting (17), koji omogućava štampaču da radi preko Centronics interfejsa.

CR.2 - Init - nulta vrednost bita odgovara niskom nivou na izlazu Imt # (16) - signal resetovanja hardvera štampača.

CR.1 - Auto LF - vrijednost jednog bita odgovara niskom nivou na izlazu Auto LF # (14) - signal za automatski pomak na liniju (LF - Line Feed) nakon prijema bajta za povratak na nosač (CR - Carriage Return ).

CR.O -Strobe - jedna bitna vrijednost odgovara niskom nivou na izlazu Strobeff (1) - strobe signal izlaznih podataka.

Zahtjev za hardverskim prekidom(obično IRQ7 ili IRQ5) se generiše negativnom ivicom signala na pinu 10 konektora interfejsa (ACK #) kada je CR.4 postavljen na 1. Prekid se generiše kada štampač potvrdi prijem prethodnog bajta.

Procedura izlaza bajtova preko Centronics sučelja preko standardnog porta uključuje sljedeće korake (potreban broj operacija sabirnice procesora dat je u zagradama):

Izlaz bajta u registar podataka (1 ciklus IOWR #).

Unesite iz statusnog registra i provjerite da li je uređaj spreman (bit SR.7 - BUSY signal).

Po prijemu pripravnosti, strobe podataka se postavlja na izlazu u kontrolnom registru, a strobe se uklanja sljedećim izlazom (2 ciklusa lOWRff).

Standardni port je vrlo asimetričan - ako postoji 12 linija (i bitova) koji rade normalno na izlazu, samo 5 statusnih linija radi na ulazu. Ako je potrebna simetrična dvosmjerna komunikacija, svi standardni portovi rade. način zamjene grickalica - Režim grickanja U ovom režimu, koji se naziva i Hewlett Packard Bitronics, 4 bita podataka se prenose istovremeno, peti red se koristi za rukovanje.

Paralelni interfejs port je uveden u PC za povezivanje štampača - otuda i njegov naziv LPT-port (Line Printer - linijski štampač). Tradicionalni, zvani standardni, LPT port (tzv. SPP port) je fokusiran na izlaz podataka, iako uz određena ograničenja dozvoljava i unos podataka. Postoje različite modifikacije LPT porta - dvosmjerne, EPP, ECP i druge, koje proširuju njegovu funkcionalnost, povećavaju performanse i smanjuju opterećenje procesora. Isprva su to bila vlasnička rješenja pojedinačnih proizvođača, kasnije je usvojen IEEE 1284 standard.

Sa vanjske strane, port ima 8-bitnu sabirnicu podataka, 5-bitnu sabirnicu signala statusa i 4-bitnu sabirnicu upravljačkog signala usmjerenu na ženski konektor DB-25S. LPT port koristi TTL logičke nivoe, što ograničava dozvoljenu dužinu kabla zbog niske otpornosti na buku TTL interfejsa. Nema galvanske izolacije - uzemljenje strujnog kruga priključenog uređaja je povezano sa uzemljenjem kola računara. Zbog toga je port ranjivost računara, koji pati od kršenja pravila za povezivanje i uzemljenje uređaja. Pošto se port obično nalazi na matičnoj ploči, ako je „izgoreo“, njegova neposredna okolina često pokvari, sve do tačke u kojoj izgori cela matična ploča.

Sa softverske strane, LPT port je skup registara koji se nalazi u I/O prostoru. Registri portova se adresiraju u odnosu na osnovnu adresu porta, zadane vrijednosti za koje su 3BCh, 378h i 278h. Port može koristiti liniju zahtjeva za hardverskim prekidom, obično IRQ7 ili IRQ5. U proširenim režimima, DMA kanal se takođe može koristiti.

Port ima podršku na nivou BIOS-a - traženje instaliranih portova tokom POST testa i Int 17h usluge štampanja (pogledajte odeljak 8.3.3) obezbeđuju izlaz simbola (prema spremnosti za prozivanje, bez korišćenja hardverskih prekida), inicijalizaciju interfejsa i štampača, i prozivanje statusa štampača. Gotovo sve moderne matične ploče (počevši od PCI kartica za 486 procesora) imaju ugrađeni LPT port adapter. Postoje ISA kartice sa LPT portom, gde se najčešće nalazi pored para COM portova, kao i kontroleri disk interfejsa (FDC + IDE). LPT port je obično prisutan na ploči adaptera za ekran MDA (monohromatski tekst) i HGC (jednobojna grafika "Hercules"). Postoje i PCI kartice sa dodatnim LPT portovima.

Na LPT portove su povezani štampači, ploteri, skeneri, uređaji za komunikaciju i skladištenje podataka, kao i elektronski ključevi, programeri i drugi uređaji. Ponekad se paralelni interfejs koristi za komunikaciju između dva računara, što rezultira LapLink mrežom.

1.1. Tradicionalni LPT port

Tradicionalni ili standardni LPT port naziva se standardni paralelni port (SPP), ili SPP port, i jednosmerni je port preko kojeg se softverski implementira Centronics protokol za razmenu (pogledajte odeljak 8.3.1). Naziv i svrha signala konektora porta (Tabela 1.1) odgovaraju Centronics interfejsu.

Tabela 1.1. Standardni LPT port konektor

Kontaktirajte DB-25S Broj žice u kablu I/O zadatak¹ Bit² Signal
1 1 O / I CR.0 \ Strobe #
2 3 o (ja) DR.0 Podaci 0
3 5 o (ja) DR.1 Podaci 1
4 7 o (ja) DR.2 Podaci 2
5 9 o (ja) DR.3 Podaci 3
6 11 o (ja) DR.4 Podaci 4
7 13 o (ja) DR.5 Podaci 5
8 15 o (ja) DR.6 Podaci 6
9 17 o (ja) DR.7 Podaci 7
10 19 SR.6 Ack #
11 21 I SR.7 \ Zauzeto
12 23 I SR.5 PaperEnd (PE)
13 25 I SR.4 Odaberite
14 2 O / I CR.1 \ Auto LF # (AutoFeed #)
15 4 I SR.3 Greška #
16 6 O / I CR.2 U tome #
17 8 O / I CR.3 \ Odaberite u #
18-25 10, 12, 14, 16, 18, 20, 22, 24, 26 - - -

¹ I/O postavlja smjer prijenosa (ulaz-izlaz) signala porta. O / I označava izlazne linije čije se stanje čita dok se čita sa izlaznih portova; O (I) - izlazne linije čije se stanje može očitati samo pod posebnim uvjetima (vidi dolje).

² Simbol "\" označava invertirane signale (1 u registru odgovara donjem nivou linije).

³ Ulaz Ack # je povezan otpornikom (10 kOhm) sa +5 V napajanjem.

SPP port adapter sadrži tri 8-bitna registra smještena na susjednim adresama u I/O prostoru, počevši od bazne adrese BASE porta (3BCh, 378h ili 278h).

Registar podataka (DR) - registar podataka, adresa = BASE. Podaci upisani u ovaj registar izlaze u linije za izlaz podataka. Podaci očitani iz ovog registra, ovisno o strujnom krugu adaptera, odgovaraju ili prethodno snimljenim podacima, ili signalima na istim linijama, koji nisu uvijek isti.

Statusni registar (SR) - statusni registar (samo za čitanje), adresa = BASE + 1. Registar prikazuje ulazni port statusa 5-bitnog štampača (bitovi SR.4-SR.7) i zastavicu prekida. SR.7 bit je invertiran - vrijednost jednog bita u registru odgovara niskom nivou signala, i obrnuto.

Svrha bitova statusnog registra je opisana u nastavku (brojevi pinova konektora porta dati su u zagradama).

♦ SR.7 - Zauzeto - inverzni prikaz stanja zauzete linije (11): kada je nivo nizak, vrijednost jednog bita se postavlja na liniji - dozvola za izlaz sljedećeg bajta.

♦ SR.6 - Ack (Acknowledge) - prikaz statusa linije Ack # (10).

♦ SR.5 - PE (Kraj papira) - prikazuje stanje linije za kraj papira (12). Jedna vrijednost odgovara visokom nivou linije - signalu o kraju papira u štampaču.

♦ SR.4 - Odaberi - prikazuje stanje linije za odabir (13). Jedna vrijednost odgovara visokom nivou linije - signal za uključivanje pisača.

♦ SR.3 - Greška - prikazuje status linije Error # (15). Nulta vrijednost odgovara niskom nivou linije, signalizirajući bilo kakvu grešku štampača.

♦ SR.2 - PIRQ - Potvrda # zastavica prekida (samo za PS / 2 port). Bit se briše ako je signal Ack # pokrenuo hardverski prekid. Pojedinačna vrijednost se postavlja hardverskim resetiranjem i nakon čitanja statusnog registra.

♦ SR - rezervisano.

Kontrolni registar (CR) - kontrolni registar, adresa = BASE + 2, može se pisati i čitati. Registar je povezan sa 4-bitnim izlaznim portom kontrolnih signala (bitovi 0-3) za koje je takođe moguće čitanje; izlazni bafer je obično tipa "otvoreni kolektor". Ovo vam omogućava da ispravno koristite linije ovog registra kao ulaz kada ih programirate na visoki nivo. Bitovi 0, 1, 3 su invertirani.

Svrha bitova kontrolnog registra je opisana u nastavku.

♦ CR - rezervisano.

♦ CR.5 - Smjer - kontrolni bit za smjer prijenosa (samo za PS / 2 portove, vidi dolje). Upisivanje jednog stavlja port za podatke u način unosa. Prilikom čitanja, stanje bita je nedefinirano.

♦ CR.4 - AckINTEN (Ack Interrupt Enable) - pojedinačna vrijednost omogućava prekid pada signala na liniji Ack # - signal za traženje sljedećeg bajta.

♦ CR.3 – Select In – vrednost jednog bita odgovara niskom nivou na izlazu Select In # (17) – signal koji omogućava štampaču da radi preko Centronics interfejsa.

♦ CR.2 - Init - vrijednost bita nula odgovara niskom nivou na Init izlazu # (16) - signal hardverskog resetovanja štampača.

♦ CR.1 - Auto LF - vrijednost jednog bita odgovara niskom nivou na izlazu Auto LF # (14) - signal za automatsko pomicanje linije (LF - Line Feed) nakon prijema bajta za vraćanje karijera (CR). Signal i bit se ponekad nazivaju AutoFD ili AutoFDXT.

♦ CR.0 - Strobe - jedna bitna vrijednost odgovara niskom nivou na izlazu Strobe # (1) - strobe signal izlaznih podataka.

Zahtjev za hardverski prekid (obično IRQ7 ili IRQ5) generira se negativnim rubom signala na pinu 10 konektora interfejsa (Ack #) kada je CR.4 postavljen na 1. Da bi se izbegli lažni prekidi, pin 10 je otpornik povezan na šinu +5 V. Prekid se generiše kada štampač potvrdi prijem prethodnog bajta. Kao što je već spomenuto, BIOS ne koristi ovaj prekid i ne servisira ga.

Hajde da navedemo korake bajt izlazne procedure preko Centronics interfejsa, ukazujući na potreban broj operacija sabirnice procesora.

1. Izlaz bajta u registar podataka (1 ciklus IOWR #).

2. Unesite iz statusnog registra i provjerite da li je uređaj spreman (bit SR.7 - signal zauzetosti). Ovaj korak se ponavlja dok ne bude spreman ili dok se softversko vremensko ograničenje ne pokrene (minimalno 1 IORD # ciklus).

3. Po prijemu spremnosti, strobe podataka se postavlja na izlazu u kontrolnom registru, a strobe se uklanja sljedećim izlazom. Obično, za prebacivanje samo jednog bita (strobe), kontrolni registar se unaprijed čita, što dodaje još jedan IORD # ciklus na dva IOWR # ciklusa.

Može se vidjeti da je za izlaz jednog bajta potrebno 4-5 I/O operacija sa registrima porta (u najboljem slučaju, kada se spremnost detektuje prvim čitanjem statusnog registra). Otuda sledi glavni nedostatak izlaza preko standardnog porta - nizak kurs uz značajno opterećenje procesora. Port se može overklokovati do brzina od 100–150 KB/s uz puno opterećenje procesora, što nije dovoljno za štampanje na laserskom štampaču. Još jedan funkcionalni nedostatak je teškoća korištenja kao ulaznog porta.

Standardni port je asimetričan - ako ima 12 linija (i bitova) koji normalno rade na izlazu, samo 5 statusnih linija radi na ulazu. Ako je potrebna simetrična dvosmjerna komunikacija, Nibble Mode radi na svim standardnim portovima. U ovom režimu, koji se naziva i Hewlett Packard Bi-tronics, 4 bita podataka se primaju istovremeno, peti red se koristi za rukovanje. Dakle, svaki bajt se prenosi u dva ciklusa, a svaki ciklus zahtijeva najmanje 5 I/O operacija.

Sklopovi izlaznih bafera LPT portova su vrlo raznoliki. Na mnogim starijim adapterima, port podataka SPP se može koristiti i za unos. Ako u port za podatke upišete bajt sa jedinicama u svim znamenkama i pošaljete bilo koji kod na izlazne linije sučelja kroz mikro krugove sa izlazom tipa "otvoreni kolektor" (ili povežete neke linije sa ključevima na masu kola), tada ovaj kod se može pročitati iz istog registra podataka. Međutim, izlazni krugovi predajnika informacija morat će se "boriti" s izlaznom strujom logičke jedinice izlaznih bafera adaptera. TTL kola ne zabranjuju takva rješenja, ali ako je vanjski uređaj napravljen na CMOS mikro krugovima, njihova snaga možda neće biti dovoljna da "pobijedi" ovaj sukob magistrale. Međutim, moderni adapteri često imaju završni otpornik s otporom do 50 Ohma u izlaznom kolu. Izlazna struja kratkog spoja izlaza na masu je obično manja od 30 mA. Jednostavna računica pokazuje da čak i u slučaju kratkog spoja kontakta konektora na masu, kada je "jedan" na izlazu, napon od 1,5 V pada na ovom otporniku, koji će se na ulazu percipirati kao "jedan". kolo prijemnika. Stoga se ne može pretpostaviti da će ovaj način unosa raditi na svim računarima. Na nekim starijim port adapterima, izlazni bafer je onemogućen pomoću kratkospojnika na ploči. Tada se port pretvara u običan ulazni port.

1.2. Proširenja paralelnih portova

Nedostaci standardnog porta su delimično rešeni novim tipovima portova uvedenim u PS/2 računarima.

Dvosmjerni port 1 (paralelni port tipa 1) je sučelje uvedeno u PS/2. Takav port, pored standardnog načina rada, može raditi u ulaznom ili dvosmjernom načinu rada. Protokol razmjene se formira softverom, a za označavanje smjera prijenosa u registar porta se unosi poseban bit CR.5: 0 - bafer podataka radi za izlaz, 1 - za ulaz. Nemojte brkati ovaj port, koji se naziva i poboljšani dvosmjerni, sa EPP. Ova vrsta porta se ukorijenila i u običnim računarima, u CMOS Setup-u se može nazvati PS/2 ili Bi-Di.

Port sa direktnim pristupom memoriji (paralelni port tipa 3 DMA) korišćen je u PS/2 modelima 57, 90, 95. Uveden je da bi se povećala propusnost i rasteretio procesor prilikom izlaza na štampač. Program koji radi sa portom samo je trebao podesiti blok podataka koji se izlaze u memoriju, a zatim je izlaz pomoću Centronics protokola izveden bez učešća procesora.

Kasnije su se pojavili i drugi adapteri LPT portova koji implementiraju Centronics protokol za razmjenu u hardveru - Fast Centronics. Neki od njih su koristili FIFO bafer podataka - Parallel Port FIFO Mode. Budući da nisu standardizirani, ovi portovi različitih proizvođača zahtijevali su svoje posebne drajvere. Programi koji koriste direktnu kontrolu registara standardnih portova nisu mogli koristiti svoje dodatne mogućnosti. Ovi portovi su često bili dio VLB multikartica. Postoje njihove varijante sa ISA magistralom, kao i ugrađene u matičnu ploču.

1.3. IEEE 1284 standard

Standard za paralelni interfejs IEEE 1284, usvojen 1994. godine, opisuje SPP, EPP i ECP portove. Standard definira 5 načina komunikacije, način usklađivanja, fizički i električni interfejs. Prema IEEE 1284, sljedeći načini komunikacije su mogući kroz paralelni port:

♦ Režim kompatibilnosti - jednosmjeran (izlaz) preko Centronics protokola. Ovaj način rada odgovara SPP portu.

♦ Nibble Mode - Unesite bajt u dva ciklusa (po 4 bita), koristeći statusnu liniju za prijem. Ovaj način razmjene je pogodan za sve adaptere, jer koristi samo mogućnosti standardnog porta.

♦ Byte Mode - Unesite cijeli bajt koristeći linije podataka za prijem. Ovaj način rada radi samo na portovima koji mogu čitati izlazne podatke (Bi-Directional ili PS/2 Type 1, vidi gore).

♦ EPP Mode (EPP Mode) - dvosmjerna razmjena podataka (EPP je skraćenica od Enhanced Parallel Port). Kontrolni signali interfejsa se generišu u hardveru tokom ciklusa pristupa portu. Efektivno pri radu sa eksternim memorijskim uređajima i LAN adapterima.

♦ ECP Mode (ECP Mode) - dvosmjerna razmjena podataka sa mogućnošću hardverske kompresije podataka korištenjem RLE (Run Length Encoding) metode i korištenjem FIFO-bafera i DMA (ECP je skraćenica od Extended Capability Port). Kontrolni signali interfejsa se generišu hardverom. Učinkovito za štampače i skenere (ovdje se može koristiti kompresija) i razne uređaje za razmjenu blokova.

Standard definiše način na koji softver može odrediti način rada dostupan i za host (PC) i za periferni uređaj (ili priključeni drugi računar). Režimi nestandardnih portova koji implementiraju Centronics protokol za razmjenu u hardveru (Fast Centronics, Parallel Port FIFO Mode) možda neće biti IEEE 1284 načini, uprkos prisutnosti EPP i ECP funkcija.

Kod računara sa LPT portom na matičnoj ploči, režim - SPP, EPP, ECP ili njihova kombinacija - se postavlja u BIOS Setup-u. Način kompatibilnosti u potpunosti odgovara SPP portu. Ostali načini su detaljno razmotreni u nastavku.

Kada se opisuju načini razmjene, pojavljuju se sljedeći koncepti:

♦ host - računar sa paralelnim portom;

♦ PU - periferni uređaj povezan na ovaj port;

♦ Ptr - u nazivima signala označava prenosni CP;

♦ direktni kanal - kanal za izlaz podataka sa hosta na CP;

♦ povratni kanal - kanal za unos podataka u host sa CP.

1.3.1. Grickanje Mode

Način grickanja je za dvosmjernu komunikaciju i može raditi na svim standardnim portovima. Portovi imaju 5 statusnih ulaznih linija, pomoću kojih PU može poslati bajt hostu u tetradama (nibble - nibble, 4 bita) u dva koraka. Signal Ack #, koji uzrokuje prekid, koji se može koristiti u ovom načinu rada, odgovara bitu 6 statusnog registra, što otežava softversku manipulaciju bitovima prilikom sklapanja bajta. Signali porta su prikazani u tabeli. 1.2, vremenski dijagrami - na Sl. 1.1.

Tabela 1.2. Signali LPT porta u načinu unosa grickanja

Kontakt SPP signal I / O Bit Opis
14 AutoFeed # O CR.1 \ HostBusy - signal rukovanja. Nizak nivo znači spremnost za primanje tetrade, visok nivo potvrđuje prijem tetrade
17 Odaberite u # O CR.3 \
10 Ack # I SR.6 PtrClk. Nizak nivo znači da je notebook spreman, visok nivo znači odgovor na HostBusy signal
11 Zauzeto I SR.7 Prijem podataka bit 3, zatim bit 7
12 PE I SR.5 Prijem podataka bit 2, zatim bit 6
13 Odaberite I SR.4 Prijem podataka bit 1, zatim bit 5
15 Greška # I SR.3 Prijem podataka bit 0, zatim bit 4

Rice. 1.1. Primanje podataka u načinu grickanja

Prijem bajta podataka u načinu grickanja sastoji se od sljedećih faza:

2. PU odgovara postavljanjem tetrade na linije za unos stanja.

3. PU signalizira spremnost tetrade postavljanjem niskog nivoa na liniji PtrClk.

4. Domaćin postavlja liniju HostBusy visoko, pokazujući da je zauzet primanjem i obradom tetrade.

6. Koraci 1-5 se ponavljaju za drugu tetradu.

Režim grickanja jako opterećuje procesor i nije moguće podići tečaj iznad 50 KB/s. Njegova nesumnjiva prednost je što radi na svim portovima. Koristi se u slučajevima kada je protok podataka mali (na primjer, za komunikaciju sa štampačima). Međutim, kada komunicirate sa LAN adapterima, eksternim disk jedinicama i CD-ROM-ovima, prihvatanje velikih količina podataka zahteva priličnu dozu strpljenja od strane korisnika.

1.3.2. Bidirectional Byte Mode - Byte Mode

U ovom modu, podaci se primaju pomoću dvosmjernog porta, za koji se izlazni bafer podataka može onemogućiti postavljanjem bita CR.5 = 1. Kao i prethodni, režim je softverski kontrolisan - sve signale potvrde analizira i podešava drajver. Signali porta su opisani u tabeli. 1.3, vremenski dijagrami - na Sl. 1.2.

Tabela 1.3. LPT port signali u bajt I/O modu

Kontakt SPP signal Ime u bajt modu I / O Bit Opis
1 Strobe # HostClk O CR.0 \ Puls (nizak nivo) potvrđuje prijem bajta na kraju svakog ciklusa
14 AutoFeed # HostBusy O CR.1 \ Signal potvrde. Nizak nivo znači da je host spreman da primi bajt; visoki nivo se postavlja po prijemu bajta
17 Odaberite u # 1284Active O CR.3 \ Visok nivo označava razmjenu u IEEE 1284 modu (u SPP modu, nivo je nizak)
16 U tome # U tome # O CR.2 Nije korišteno; visoko postavljeno
10 Ack # PtrClk I SR.6 Postavljena je nisko kako bi se ukazala na valjanost podataka u linijama podataka. Postavite na nisko kao odgovor na HostBusy signal
11 Zauzeto PtrBusy I SR.7 \ Proslijedi stanje zauzetosti kanala
12 PE AckDataReq¹ I SR.5
13 Odaberite Xflag¹ I SR.4 Zastavica proširivosti
15 Greška # DataAvail # ¹ I SR.3 PU je instaliran kako bi ukazao na prisutnost kanala za obrnuti prijenos
2-9 Podaci Podaci I / O DR Dvosmjerni (naprijed i nazad) kanal podataka

Rice. 1.2. Primanje podataka u bajt modu

Faze za primanje bajta podataka su navedene u nastavku.

1. Host signalizira spremnost za primanje podataka postavljanjem niskog nivoa na HostBusy liniji.

2. PU odgovara postavljanjem bajta podataka u liniju podataka.

3. PU signalizira validnost bajta postavljanjem niskog nivoa na liniji PtrClk.

4. Domaćin postavlja liniju HostBusy visoko kako bi naznačio da je zauzet primanjem i obradom bajta.

5. PU odgovara postavljanjem visokog nivoa na liniji PtrClk.

6. Domaćin potvrđuje prijem bajta sa HostClk impulsom.

Koraci 1-6 se ponavljaju za svaki sljedeći bajt. Potvrda se vrši pomoću para HostBusy i PtrClk signala; CP možda neće koristiti HostClk signal (ovo je poziv za izdavanje sljedećeg bajta, slično Ack # signalu u Centronics interfejsu). Byte mod vam omogućava da podignete brzinu povratne veze na brzinu veze naprijed u standardnom načinu rada. Međutim, sposoban je raditi samo na dvosmjernim portovima, koji su se ranije koristili uglavnom na manje uobičajenim PS/2 mašinama, ali gotovo svi moderni portovi mogu se konfigurirati za dvosmjerni način rada (u BIOS Setup-u - Bi-Di ili PS / 2).

1.3.3. EPP mod

EPP (Enhanced Parallel Port) protokol su razvili Intel, Xircom i Zenith Data Systems mnogo prije usvajanja standarda IEEE 1284. Ovaj protokol je dizajniran da poboljša performanse komunikacije na paralelnom portu, prvi put je implementiran u Intel 386SL čipset (82360). chip) i kasnije su ga mnoge kompanije usvojile kao dodatni protokol paralelnog porta. Verzije protokola implementirane prije usvajanja IEEE 1284 razlikuju se od trenutnog standarda (vidi dolje).

EPP nudi četiri tipa ciklusa razmjene:

♦ snimanje podataka;

♦ očitavanje podataka;

♦ unos adrese;

♦ čitanje adrese.

Svrha ciklusa pisanja i čitanja podataka je očigledna. Adresni ciklusi se koriste za prijenos adresa, kanala i kontrolnih informacija. Komunikacijski ciklusi se razlikuju od adresnih ciklusa u primijenjenim stroboskopskim signalima. Svrha signala EPP porta i njihov odnos prema SPP signalima objašnjeni su u tabeli. 1.4.

Tabela 1.4. Signali LPT porta u EPP I/O modu

Kontakt SPP signal Ime u EPP I / O Opis
1 Strobe # Pisati # O Niski nivo - ciklus pisanja, visoki - ciklus čitanja
14 AutoLF # DataStb # O Data strobe. Niski nivo se postavlja u ciklusima prijenosa podataka
17 Odaberite u # AdrStb # O Adresa strobe. Niski nivo se postavlja u adresnim ciklusima
16 U tome # Resetovati # O Poništi PU (nisko)
10 Ack # INTR # I Prekid od PU
11 Zauzeto čekaj # I Signal potvrde. Nizak nivo omogućava početak ciklusa (postavljanje stroboskopa na niski nivo), prelazak na visoki - omogućava kraj ciklusa (uklanjanje strobosmera)
2-9 Podaci AD I / O Dvosmjerna adresa / sabirnica podataka
12 PaperEnd AckDataReq¹ I
13 Odaberite Xflag¹ I Koristi se prema nahođenju perifernog programera
15 Greška # DataAvail # ¹ I Koristi se prema nahođenju perifernog programera

¹ Signali rade u odgovarajućem nizu (pogledajte ispod).

EPP port ima prošireni skup registara (Tabela 1.5), koji zauzima 5-8 uzastopnih bajtova u I/O prostoru.

Tabela 1.5. EPP Port Registri

Registrirajte ime Bias Mode R/W Opis
SPP Data Port +0 SPP / EPP W SPP registar podataka
Port statusa SPP +1 SPP / EPP R SPP statusni registar
SPP kontrolni port +2 SPP / EPP W SPP kontrolni registar
EPP Address Port +3 EPP R/W EPP adresni registar. Čitanje ili pisanje na njega generiše pridruženi ciklus čitanja ili pisanja EPP adrese
EPP Data Port +4 EPP R/W EPP registar podataka. Čitanje (pisanje) generiše pridruženi ciklus čitanja (pisanja) EPP podataka
Nije definisano +5…+7 EPP N / A Neki kontroleri se mogu koristiti za 16-32-bitne I/O operacije

Za razliku od gore opisanih režima kojima se upravlja softverom, eksterni signali EPP porta za svaki ciklus razmjene se generišu u hardveru jednom operacijom pisanja ili čitanja u registar porta. Na sl. 1.3 je dijagram ciklusa pisanja podataka, koji ilustruje eksterni ciklus razmjene ugniježđen u ciklus pisanja sabirnice procesora (ponekad se ovi ciklusi nazivaju povezani). Ciklus adrese pisanja razlikuje se od ciklusa podataka samo po stroboskopu eksternog interfejsa.

Rice. 1.3. EPP ciklus snimanja podataka

Ciklus snimanja podataka sastoji se od sljedećih faza.

1. Program izvodi izlazni ciklus (IOWR #) do porta 4 (EPP Data Port).

2. Adapter potvrđuje Write # signal (nizak) i podaci se upisuju na izlaznu sabirnicu LPT porta.

3. Kada je Wait # nizak, postavljen je strobe podataka.

4. Port čeka potvrdu od PU (prenos Wait # na visoki nivo).

5. Podatkovni strob je uklonjen - eksterni EPP ciklus se završava.

6. Izlazni ciklus procesora se završava.

7. PU postavlja nisko čekanje #, što ukazuje na mogućnost pokretanja sljedećeg ciklusa.

Primjer ciklusa čitanja adrese prikazan je na Sl. 1.4. Ciklus čitanja podataka razlikuje se samo upotrebom različitog stroboskopskog signala.

Rice. 1.4. Adresabilni EPP ciklus čitanja

Glavna karakteristična karakteristika EPP-a je da obavlja eksterni transfer tokom jednog I/O procesorskog ciklusa. Ovo omogućava postizanje visokih kurseva (0,5–2 MB/s). CP spojen na paralelni EPP port može raditi brzinom uređaja spojenog preko ISA slota.

Naravno, CP ne bi trebalo da "suspenduje" procesor u ciklusu razmene magistrale. Ovo je zagarantovano mehanizmom vremenskog ograničenja PC-a koji prisilno prekida svaki komunikacijski ciklus duži od 15 μs. U brojnim EPP implementacijama, sam adapter prati vremensko ograničenje interfejsa - ako PU ne odgovori u određenom vremenu (5 μs), ciklus se zaustavlja i greška se bilježi u dodatnom (nestandardiziranom) registru statusa adaptera.

EPP uređaji razvijeni prije usvajanja IEEE 1284 razlikuju se po početku ciklusa: DataStb # ili AddrStb # strob se postavlja bez obzira na stanje WAIT #. To znači da PU ne može odgoditi početak sljedećeg ciklusa (iako ga može rastegnuti za potrebno vrijeme). Ova specifikacija se zove EPP 1.7 (predlaže Xircom). Ovo je ono što je korišteno u kontroleru 82360. IEEE 1284 EPP kompatibilni periferni uređaji će dobro raditi s EPP 1.7 kontrolerom, ali EPP 1.7 CP može odbiti raditi s EPP 1284 kontrolerom.

Sa softverske tačke gledišta, kontroler EPP porta izgleda jednostavno (vidi tabelu 1.5). Dva registra (EPP Address Port i EPP Data Port) dodaju se na tri registra standardnog porta, koji imaju pomake 0, 1 i 2 u odnosu na osnovnu adresu porta, čitanje i pisanje na koje izaziva generisanje povezanih eksternih petlje.

Namjena registara standardnog porta je sačuvana za kompatibilnost EPP porta sa kontrolnom pločom i softverom dizajniranim za korištenje softverski kontrolirane razmjene. Budući da se signali rukovanja adaptera generiraju u hardveru, prilikom pisanja u CR kontrolni registar, bitovi 0, 1 i 3 koji odgovaraju signalima Strobe #, AutoFeed # i SelectIn # moraju biti nula. Intervencija softvera može poremetiti sekvencu potvrde. Neki adapteri imaju posebna sredstva zaštite (EPP Protect), kada je omogućena, softverska modifikacija ovih bitova je blokirana.

Korištenje EPP registra podataka omogućava prijenos bloka podataka sa jednom REP INSB ili REP OUTSB instrukcijom. Neki adapteri dozvoljavaju 16/32-bitni pristup EPP registru podataka. U ovom slučaju, adapter jednostavno dešifruje adresu sa pomakom u rasponu od 4-7 kao adresu EPP registra podataka, ali procesor obavještava procesor o širini od 8 bita. 16- ili 32-bitni pristup adresi EPP registra podataka će tada automatski generisati dva ili četiri ciklusa sabirnice na rastućim adresama počevši od pomaka 4. Ovi ciklusi će se izvršiti brže od istog broja pojedinačnih ciklusa. Više "naprednih" adaptera za adresu registra podataka EPP daje 32-bitnu širinu i za njih se može prenijeti do 4 bajta po ciklusu procesora. Ovo pruža performanse do 2 MB/s, dovoljno za LAN adaptere, eksterne drajvove, streamere i CD-ROM-ove. EPP adresni ciklusi se uvijek izvode samo u jednobajtnom modu.

Važna karakteristika EPP-a je da procesor pristupa CP-u u realnom vremenu – nema baferovanja. Vozač može pratiti status i izdavati komande u tačno poznato vrijeme. Ciklusi čitanja i pisanja mogu se preplitati bilo kojim redoslijedom ili ići u blokovima. Ova vrsta razmjene je pogodna za registarski orijentisane PU ili PU koje rade u realnom vremenu, na primjer, uređaje za prikupljanje informacija i kontrolu. Ovaj način rada je također pogodan za uređaje za skladištenje podataka, mrežne adaptere, štampače, skenere itd.

Nažalost, EPP režim ne podržavaju svi portovi – nema ga, na primer, na nekim notebook računarima. Dakle, kada razvijate vlastite uređaje, radi veće kompatibilnosti s računarima, morate se fokusirati na ECP način rada.

1.3.4. ECP način rada

Protokol Extended Capability Port (ECP) su predložili Hewlett Packard i Microsoft za komunikaciju sa CP-ovima kao što su štampači ili skeneri. Kao i EPP, ovaj protokol pruža dvosmjernu host-CP komunikaciju visokih performansi.

ECP u oba smjera pruža dvije vrste petlji:

♦ ciklusi pisanja i čitanja podataka;

♦ komandni ciklus pisanja i čitanja.

Instrukcijski ciklusi su klasifikovani u dva tipa: prenos adresa kanala i prenos brojača RLC (Run-Length Count).

Za razliku od EPP-a, uz ECP protokol, odmah se pojavio i standard za softverski (registracijski) model njegovog adaptera, koji je opisan u Microsoftovom dokumentu "The IEEE 1284 Extended Capabilities Port Protocol and ISA Interface Standard". Ovaj dokument definira svojstva protokola koja nisu specificirana standardom IEEE 1284:

♦ kompresiju podataka od strane host adaptera koristeći RLE metodu;

♦ baferovanje FIFO za kanale unapred i unazad;

♦ korištenje DMA i softvera I/O.

RLE (Run-Length Encoding) kompresija u realnom vremenu postiže omjer kompresije od 64:1 pri prijenosu bitmapa koje imaju duge redove ponovljenih bajtova. Kompresija se može koristiti samo ako je podržavaju i host i PU.

ECP kanalsko adresiranje se koristi za adresiranje više logičkih uređaja koji su dio jednog fizičkog uređaja. Na primjer, kombinovani uređaj za faks/pisač/modem koji se povezuje na samo jedan paralelni port može istovremeno primati faks i ispisivati ​​na pisaču. U SPP režimu, ako štampač potvrdi signal zauzetosti, kanal će biti zauzet podacima sve dok ih štampač ne primi. U ECP modu, softver drajvera jednostavno adresira drugi logički kanal na istom portu.

ECP nadjačava SPP signale (Tabela 1.6).

Tabela 1.6. Signali LPT porta u ECP I/O modu

Kontakt SPP signal Ime u ECP I / O Opis
1 Strobe # HostClk O Podatkovni stroboskop, koji se koristi u kombinaciji sa PeriphAck-om za prijenos (izlaz) naprijed
14 AutoLF # HostAck O Označava tip ciklusa (komanda/podaci) za prijenos naprijed. Koristi se kao signal potvrde uparen sa PeriphClk za prijenos unatrag
17 Odaberite u # 1284Active O Visok nivo označava razmjenu u IEEE 1284 modu (u SPP modu, nivo je nizak)
16 U tome # Obrnuti zahtjev # O Obrnuti zahtjev. Nizak nivo signalizira o prebacivanju kanala na prijenos u suprotnom smjeru.
10 Ack # PeriphClk I Data strobe, koristi se zajedno sa HostAck-om za prijenos unatrag
11 Zauzeto PeriphAck I Koristi se kao signal potvrde kada je uparen sa HostClk za prenos unapred. Označava vrstu naredbe/podataka pri prijenosu u figurativnom smjeru
12 PaperEnd AckReverse # I Obrnuta potvrda. Nisko prevedeno kao odgovor na ReverseRequest #
13 Odaberite Xflag¹ I Zastavica proširivosti
15 Greška # PeriphRequest # ¹ I PU je postavljen da ukaže na dostupnost (prisustvo) kanala obrnutog prijenosa¹
2-9 Podaci Podaci I / O Dvosmjerna podatkovna veza

¹ Signali rade u odgovarajućem nizu (pogledajte dolje)

ECP takođe generiše rukovanje eksternim protokolom u hardveru, ali njegov rad se značajno razlikuje od EPP režima.

Na sl. 1.5, a je dijagram dva ciklusa prijenosa naprijed: nakon ciklusa podataka slijedi ciklus naredbi. Tip ciklusa je postavljen nivoom na HostAck liniji: u ciklusu podataka - visok, u ciklusu komandi - nizak. U komandnom ciklusu, bajt može sadržavati adresu kanala ili RLE brojač. Posebnost je bit 7 (najznačajniji): ako je nula, bitovi 0-6 sadrže RLE brojač (0-127), ako je jedan, onda adresu kanala. Na sl. 1.5, b prikazuje par ciklusa povratnog prijenosa.

Rice. 1.5. Prijenos u ECP modu: a - naprijed, b - nazad

Za razliku od dijagrama EPP razmjene, Sl. 1.5 ne prikazuje signale ciklusa sistemske sabirnice procesora. U ovom režimu, razmena programa sa kontrolnom jedinicom je podeljena na dva relativno nezavisna procesa, koji su povezani preko FIFO bafera. Drajver se može zamijeniti sa FIFO baferom koristeći DMA i softverski I/O. Razmjena PU sa baferom se izvodi hardverski putem ECP adaptera. Drajver u ECP modu nema informacije o tačnom stanju procesa razmjene, ali je obično važno samo da li je završen ili ne.

Direktan prijenos podataka na vanjskom sučelju sastoji se od sljedećih koraka:

1. Host stavlja podatke na sabirnicu kanala i postavlja ciklus podataka (visoko) ili komandu (nisko) na liniji HostAck.

2. Domaćin postavlja nisku liniju HostClk kako bi ukazao na važeće podatke.

3. PU odgovara postavljanjem visokog nivoa na liniji PeriphAck.

4. Host postavlja liniju HostClk visoko, a ova ivica se može koristiti za pričvršćivanje podataka na CP.

5. PU postavlja nizak nivo na liniji PeriphAck kako bi označio da je spreman za primanje sljedećeg bajta.

Budući da se prijenos na ECP odvija preko FIFO bafera koji mogu biti prisutni na obje strane interfejsa, važno je razumjeti u kojoj fazi se podaci mogu smatrati prenesenim. Podaci se smatraju prenesenim u koraku 4 kada HostClk postane visok. U ovom trenutku se mijenjaju brojači poslanih i primljenih bajtova. U ECP protokolu postoje uvjeti koji uzrokuju prekid razmjene između koraka 3 i 4. Tada ove podatke ne treba smatrati prenesenim.

Od sl. 1.5 pokazuje još jednu razliku između ECP i EPP. EPP omogućava vozaču da mijenja ciklus naprijed i nazad bez traženja potvrde za promjenu smjera. U ECP-u se mora dogovoriti preokret smjera: host zahtijeva obrnuto postavljanjem ReverseRequest #, nakon čega mora čekati potvrdu sa AckReverse # signalom. Budući da je prethodni ciklus mogao biti izveden na direktnom pristupu, drajver mora sačekati da se direktni pristup završi ili prekine, isprazniti FIFO bafer, određujući tačnu vrijednost brojača prenesenih bajtova i tek nakon toga zatražiti revers.

Povratni povrat podataka sastoji se od sljedećih koraka:

1. Domaćin traži preokret kanala tako što reverzibilni zahtjev # vodi nisko.

2. Kontrolna tabla dozvoljava promjenu smjera postavljanjem niskog nivoa na AckReverse # liniji.

3. PU postavlja podatke na sabirnicu kanala i postavlja predznak ciklusa podataka (visoki nivo) ili komandi (nizak nivo) na liniji PeriphAck.

4. CP postavlja PeriphClk liniju nisko kako bi ukazao na važeće podatke.

5. Domaćin odgovara postavljanjem HostAck linije visoko.

6. PU postavlja visoki nivo PeriphClk linije; ova ivica se može koristiti za urezivanje podataka od strane hosta.

7. Host postavlja liniju HostAck na nisko kako bi naznačio da je spreman za primanje sljedećeg bajta.

1.3.5. Modovi i registri ECP-porta

Programski interfejs i ECP registri za IEEE 1284 adaptere definisani su Microsoft specifikacijom. ECP port može raditi u različitim režimima prikazanim u tabeli. 1.7, gdje kod odgovara polju Mode ECR-a (bitovi).

Tabela 1.7. Režimi ECP porta

Kod Mode
000 SPP način rada, standardni (tradicionalni) način rada
001 Dvosmjerni način rada, dvosmjerni port (tip 1 za PS / 2)
010 Brzi Centronics, jednosmjerni koristeći FIFO i DMA
011 ECP režim paralelnog porta, stvarni ECP način rada
100 EPP režim paralelnog porta, EPP režim¹
101 Rezervirano
110 Test mod, testiranje FIFO-ova i prekida
111 Način konfiguracije, pristup konfiguracijskim registrima

¹ Ovaj režim nije uključen u Microsoft specifikaciju, ali ga mnogi adapteri porta tretiraju kao EPP ako je režim ECP + EPP postavljen u CMOS podešavanju.

Registarski model ECP adaptera (Tabela 1.8) koristi svojstva arhitekture standardne magistrale i ISA adaptera, gdje se samo 10 nižeg reda adresne magistrale koristi za dekodiranje adresa I/O portova. Stoga će, na primjer, pozivi na adrese Port, Port + 400h, Port + 800h ... biti percipirani kao pozivi na adresu Port, koja se nalazi u rasponu 0-3FFh. Moderni računari i adapteri dekodiraju više bitova adrese, tako da će adrese 0378h i 0778H biti adresirane na dva različita registra. Postavljanje dodatnih ECP registara "iza" standardnih portnih registara (offset 400-402H) ima dvije svrhe. Prvo, ove adrese nikada nisu koristili tradicionalni adapteri i njihovi drajveri, a njihova upotreba u ECP-u neće suziti raspoloživi I/O adresni prostor. Drugo, ovo osigurava kompatibilnost sa starim adapterima na nivou režima 000–001 i mogućnost da se utvrdi prisustvo ECP adaptera pozivajući se na njegove proširene registre.

Tabela 1.8. ECP registri

Bias Ime R/W ECP načini¹ Ime
000 DR R/W 000-001 Registar podataka
000 ECPAFIFO R/W 011 ECP adresa FIFO
001 SR R/W Sve Status Register
002 CR R/W Sve Kontrolni registar
400 SDFIFO R/W 010 Parallel Port Data FIFO
400 ECPDFIFO R/W 011 ECP podaci FIFO
400 TFIFO R/W 110 Testirajte FIFO
400 ECPCFGA R 111 Registar konfiguracije A
401 ECPCFGB R/W 111 Registar konfiguracije B
402 ECR R/W Sve Prošireni kontrolni registar

¹ Registri su dostupni samo u ovim načinima rada (naznačene su vrijednosti bitova 7-5 ECR registra)

Svaki način rada ECP-a odgovara (i dostupan je) vlastitim funkcionalnim registrima. Modovi se mijenjaju upisivanjem u ECR registar. Podrazumevani režimi "pripravnosti" su 000 ili 001. U oba režima radi grickanje unosa. Uvek možete da se prebacite sa ovih režima na bilo koji drugi, ali sa viših režima (010-111) prebacivanje je moguće samo na 000 ili 001. Da bi interfejs ispravno radio, pre izlaska iz viših režima, morate sačekati do direktnog pristupa je završen i FIFO bafer je obrisan.

U 000 (SPP) načinu rada, port djeluje kao jednosmjerni softverski kontroliran SPP port.

U režimu 001 (Bi-Di PS / 2), port radi kao dvosmerni PS / 2 port tipa 1. Razlikuje se od režima 000 po mogućnosti da se kanal podataka preokrene korišćenjem bita CR.5.

Režim 010 (Fast Centronics) je samo za FIFO izlaz visokih performansi koristeći DMA. Centronics signali rukovanja su generirani hardverom. Signal zahtjeva za prekidom generira se stanjem FIFO bafera, ali ne i Ack # signalom (zahtjev za jedan bajt "nije od interesa" za brzi blok izlazni drajver).

Mod 011 je stvarni ECP način opisan gore.Tok podataka i komandi koje se šalju na CP se stavljaju u FIFO bafer kroz ECPDFIFO i ECPAFIFO registre, respektivno. Oni se izlaze iz FIFO sa odgovarajućom indikacijom ciklusa (stanje HostAck linije). Primljeni tok podataka iz PU se preuzima iz FIFO bafera preko ECPDFIFO registra. Primanje adrese u komandnom ciklusu od CP nije predviđeno. Razmjena sa ECPDFIFO registrom može se izvršiti i preko DMA kanala.

RLE kompresija tokom prenosa se vrši u softveru. Za prijenos više od dva identična bajta podataka u nizu, bajt se upisuje u ECPAFIFO registar, u kojem nižih 7 bitova sadrži RLC brojač (RLC vrijednost = 127 odgovara 128 ponavljanja), a najznačajniji bit je nula. Nakon toga, sam bajt se upisuje u ECPDFIFO. Primajući ovaj par bajtova (komandni bajt i bajt podataka), CP vrši dekompresiju. Kada prima stream sa kontrolnog panela, ECP adapter vrši hardversku dekompresiju i stavlja podatke dekompresije u FIFO bafer. Dakle, očigledno je da je izlaz podataka uz istovremenu upotrebu kompresije i DMA nemoguć.

Režim 100 (EPP) je jedan od načina za omogućavanje EPP režima (ako ga podržava adapter i ako je omogućen u CMOS podešavanju).

Mod 110 (Test Mode) je za testiranje FIFO i prekid komunikacije. Podaci se mogu prenositi u i iz TFIFO registra koristeći DMA ili programski. Razmjena ne utiče na eksterni interfejs. Adapter radi u praznom hodu pri maksimalnoj brzini interfejsa (kao da signali rukovanja stižu bez odlaganja). Adapter prati status bafera i generira signale zahtjeva za prekid prema potrebi. Tako program može odrediti maksimalnu propusnost kanala.

Mod 111 (režim konfiguracije) se koristi za pristup konfiguracijskim registrima. Isticanje režima štiti adapter i protokol od pogrešnih promena konfiguracije tokom razmene.

Kao što je već pomenuto, svaki ECP režim ima svoje funkcionalne registre (tabela 1.8).

DR registar podataka se koristi za prijenos podataka samo u softverski kontroliranim načinima rada (000 i 001).

Statusni registar SR nosi vrijednost signala na odgovarajućim linijama (kao u SPP).

Kontrolni registar CR ima istu dodjelu bita kao i SPP. U režimima 010, 011, upisivanje u bitove 0, 1 (signali AutoLF # i Strobe #) se zanemaruje.

ECPAFIFO registar se koristi za postavljanje informacija o komandnim ciklusima (adresa kanala ili RLE brojač, ovisno o bitu 7) u FIFO bafer. Informacije iz bafera će biti izdane u ciklusu izlaza naredbe.

SDFIFO registar se koristi za prijenos podataka u načinu rada 010. Podaci upisani u registar (ili poslani preko DMA kanala) se prenose kroz FIFO bafer koristeći Centronics hardverski protokol. U tom slučaju, smjer prijenosa naprijed mora biti podešen (bit CR.5 = 0).

DFIFO registar se koristi za razmjenu podataka u 011 (ECP) modu. Podaci koji se upisuju ili čitaju iz registra (ili se prenose preko DMA kanala) prenose se preko FIFO koristeći ECP protokol.

TFIFO registar pruža mehanizam za testiranje FIFO u 110 modu.

ECPCFGA registar vam omogućava čitanje informacija o adapteru (identifikacijski kod u bitovima).

ECPCFGB registar će vam omogućiti da pohranite sve informacije koje su potrebne vozaču. Upisivanje u registar ne utiče na rad porta.

ECR registar je glavni upravljački registar ECP-a. Njegovi bitovi imaju sljedeće značenje:

♦ ECR - ECP MODE - podesite ECP mod;

♦ ECR.4 - ERRINTREN # - (Error Interrupt Disable) onemogućava prekide na signalu Error # (ako je vrijednost bita nula na negativnoj ivici, na ovoj liniji se generiše zahtjev za prekid);

♦ ECR.3 - DMAEN - (DMA Enable) omogućava razmjenu preko DMA kanala;

♦ ECR.2 - SERVICEINTR - (Servis Interrupt) zabranjuje servisne prekide koji se generišu na kraju DMA ciklusa (ako je omogućen), pragom punjenja/pražnjenja FIFO bafera (ako se DMA ne koristi) i greškom od prelivanje bafera odozgo ili odozdo;

♦ ECR.1 - FIFOFS - (FIFO puni status) signalizira puni bafer; ako je FIFOFS = 1, nema ni jednog slobodnog bajta u baferu;

♦ ECR.0 - FIFOES - (FIFO Empty Status) ukazuje na potpunu potpuhanost bafera; kombinacija FIFOFS = FIFOES = 1 znači grešku u radu sa FIFO (prelijevanje gore ili dolje).

Kada je port u standardnom ili dvosmjernom načinu rada (000 ili 001), prva tri registra su potpuno ista kao i oni standardnog porta. Ovo osigurava da je upravljački program kompatibilan sa starim adapterima i stari upravljački programi s novim adapterima.

U pogledu interfejsa sa programom, ECP port podseća na EPP: nakon podešavanja režima (upisivanje koda u ECR registar), razmena podataka sa uređajem se svodi na čitanje ili upisivanje u odgovarajuće registre. Stanje FIFO prati se ili ECR registrom ili servisiranjem prekida sa porta. Cijeli protokol rukovanja generira adapter u hardveru. Razmjena podataka sa ECP portom (osim eksplicitnog programskog) je moguća i putem direktnog pristupa memoriji (DMA kanal), koji je efikasan kod prijenosa velikih blokova podataka.

1.3.6. IEEE 1284 način pregovaranja

CP-ovi u IEEE 1284 standardu obično ne zahtijevaju od kontrolera da implementira sve modove predviđene ovim standardom. Standard predviđa sekvencu pregovaranja za definiranje načina rada i metoda kontrole za određeni uređaj. Slijed je dizajniran tako da stariji uređaji koji ne podržavaju IEEE 1284 neće reagirati i kontroler će ostati u standardnom načinu rada. IEEE 1284 periferija može komunicirati svoje mogućnosti, a kontroler će postaviti način rada koji zadovoljava i host i CP.

Tokom faze pregovaranja, kontroler postavlja bajt proširivosti na liniji podataka, tražeći potvrdu za prijenos interfejsa u traženi način rada ili za primanje CP identifikatora (Tabela 1.9). Identifikator se prenosi na kontroler u traženom režimu (bilo koji način povratnog kanala, osim EPP). UE koristi Xflag (Odaberi u SPP terminima) signal za potvrdu traženog načina povratne veze, osim za grickanje, koje podržavaju svi IEEE 1284 uređaji. Bit zahtjeva za proširenje veze služit će za definiranje dodatnih modova u budućim proširenjima standarda .

Tabela 1.9. Bitovi po bajtu proširivosti

Bit Opis Prihvatljive kombinacije bitova
7 Veza za proširenje zahtjeva - rezervirano 1000 0000
6 Zahtjev za EPP način rada 0100 0000
5 Zahtjev za ECP način rada s RLE 0011 0000
4 Zahtjev za ECP način rada bez RLE 0001 0000
3 Rezervirano 0000 1000
2 Zahtjev za identifikator uređaja s odgovorom u načinu rada:
grickati 0000 0100
bajt 0000 0101
ECP bez RLE 0001 0100
ECP sa RLE 0011 0100
1 Rezervirano 0000 0010
0 Zahtjev za način rada grickanja 0000 0001
nijedan Zahtjev za bajt mod 0000 0000

Redoslijed odobravanja (slika 1.6) sastoji se od sljedećih koraka.

1. Host ispisuje bajt proširivosti na liniji podataka.

2. Domaćin postavlja visoki signal SelectIn # i nizak AutoFeed #, što znači početak niza pregovora.

3. PU odgovara postavljanjem niskog nivoa signala Ack # i visokog - Error #, PaperEnd i Select. Uređaj koji "ne razumije" standard 1284 neće dati odgovor, a dalji koraci se neće izvoditi.

4. Domaćin postavlja nizak signal Strobe # da upiše bajt proširivosti u CP.

5. Domaćin postavlja visoke signale Strobe # i AutoLF #.

6. CP odgovara postavljanjem signala PaperEnd i Error # na niski nivo, ako CP ima kanal za obrnuti prijenos podataka. Ako uređaj podržava traženi režim, linija Odaberi se postavlja visoko, ako nije podržano - nisko.

7. CP postavlja visoki nivo na liniji Ack # kako bi ukazao na završetak pregovaračke sekvence, nakon čega kontroler postavlja traženi način rada.

Rice. 1.6. IEEE 1284 Mode Negotiation Sequence

1.3.7. Fizički i električni interfejsi

IEEE 1284 standard definira fizičke karakteristike prijemnika i predajnika signala koji su kompatibilni sa nivoom TTL-a. Standardne specifikacije porta nisu specificirale tipove izlaznih kola, granice za vrijednosti otpornika opterećenja i kapacitet koji su uveli krugovi i provodnici. Pri relativno niskim deviznim kursevima, širenje ovih parametara nije izazvalo probleme kompatibilnosti. Međutim, napredni (funkcionalni i brzina prijenosa) načini zahtijevaju jasne specifikacije. IEEE 1284 definiše dva nivoa kompatibilnosti interfejsa. Prvi nivo (Nivo I) je definiran za uređaje koji su spori, ali koriste promjenu smjera prijenosa podataka. Drugi nivo (Nivo II) je definisan za uređaje koji rade u produženim režimima sa velikim brzinama i dugim kablovima. Za predajnike se postavljaju sljedeći zahtjevi.

♦ Nivoi signala bez opterećenja ne bi trebali prelaziti -0,5 ... + 5,5 V.

♦ Nivoi signala pri opterećenju od 14 mA moraju biti najmanje +2,4 V za visoki (VOH) i ne veći od +0,4 V za niski (VOL) na dc.

♦ Izlazna impedansa RO izmjerena na konektoru mora biti 50 ± 5 oma na nivou VOH-VOL. Da bi se osigurala specificirana impedancija, serijski otpornici se koriste u izlaznim krugovima predajnika. Usklađivanje impedancije predajnika i kabla smanjuje nivo impulsne buke.

♦ Brzina porasta (pada) impulsa mora biti između 0,05-0,4 V / ns.

Zahtjevi za prijemnike su navedeni u nastavku.

♦ Dozvoljene vršne vrijednosti signala -2,0 ... + 7,0 V.

♦ Pragovi ne smiju biti veći od 2,0 V (VIH) za visoki nivo i ne manji od 0,8 V (VIL) za niski nivo.

♦ Prijemnik mora imati histerezu u opsegu od 0,2-1,2 V (histerezu poseduju posebna mikro kola - Schmitt trigeri).

♦ Ulazna struja mikrokola (dolazna i odlazna) ne bi trebala biti veća od 20 µA, ulazni vodovi su povezani na +5 V strujnu magistralu sa otpornikom od 1,2 kΩ.

♦ Ulazni kapacitet ne bi trebao biti veći od 50 pF.

Kada se pojavila ECP specifikacija, Microsoft je preporučio upotrebu dinamičkih terminatora za svaku liniju interfejsa. Međutim, trenutno se prati IEEE 1284 specifikacija koja ne koristi dinamičke terminatore. Preporučeni krugovi za ulazna, izlazna i dvosmjerna kola prikazani su na Sl. 1.7.

Rice. 1.7. Terminalna kola IEEE 1284 linija interfejsa: a - jednosmjerne linije, b - dvosmjerne

IEEE 1284 standard definira tri tipa konektora koji se koriste. Tipovi A (DB-25) i B (Centronics-36) su tipični za tradicionalne kablove štampača, tip C je novi 36-pinski konektor male veličine.

Tradicionalni interfejs kablovi imaju 18 do 25 žica, u zavisnosti od broja žica u GND mreži. Ovi provodnici mogu ili ne moraju biti isprepleteni. Nije bilo strogih zahtjeva za zaštitu kablova. Malo je vjerovatno da će ovi kablovi raditi pouzdano pri brzinama prijenosa od 2 MB/s ili dužine preko 2 m.

IEEE 1284 standard reguliše svojstva kablova.

♦ Svi signalni vodovi moraju biti upleteni posebnim povratnim (zajedničkim) žicama.

♦ Svaki par mora imati impedanciju od 62 ± 6 oma u frekventnom opsegu 4-16 MHz.

♦ Nivo preslušavanja između parova ne bi trebalo da prelazi 10%.

♦ Kabl mora imati ekran (foliju) koji pokriva najmanje 85% vanjske površine. Na krajevima kabla, štit mora biti prstenast i spojen na pin konektora.

Kablovi koji ispunjavaju ove zahtjeve označeni su sa “IEEE Std 1284–1994 usklađenim”. Mogu biti dugačke do 10 metara, oznake tipa su date u tabeli. 1.10.

Tabela 1.10. IEEE 1284 vrste kablova

Vrstu Dešifrovanje Konektor 1 Konektor 2
AMAM Tip A muški - Tip A muški A (utikač) A (utikač)
AMAF Tip A muški - Tip A ženski A (utikač) A (utičnica)
AB Tip A muški - Tip B utikač - standardni kabl za štampač A (utikač) V
AS Tip A muški - Ture C utikač - novi kabl za štampač A (utikač) WITH
BC Tip B utikač - Tip C utikač V WITH
CC Tour C utikač - Tip C utikač WITH WITH

1.3.8. Evolucija standarda IEEE 1284

Neki od dodataka osnovnom IEEE 1284 standardu su navedeni u nastavku.

♦ IEEE P1284.1 "Standard za informatičku tehnologiju za sučelje pisača/skenera nezavisnog od transporta (TIP / SI)". Ovaj standard se razvija za upravljanje i održavanje skenera i štampača na osnovu protokola Network Printing Alliance Protocol (NPAP).

♦ IEEE P1284.2 “Standard za testiranje, mjerenje i usklađenost sa IEEE Std. 1284" je standard za testiranje portova, kablova i uređaja na kompatibilnost sa IEEE 1284.

♦ IEEE P1284.3 “Standard za proširenja interfejsa i protokola za IEEE Std. 1284 Compliant Peripheral and Host Adapter Ports ”je standard za drajvere i upotrebu uređaja od strane aplikativnog softvera. Prihvaćene BIOS specifikacije za upotrebu od strane EPP-a od strane DOS drajvera. Razvija se standard za zajedničko korištenje jednog porta putem lanca uređaja ili grupe uređaja povezanih preko multipleksora.

♦ IEEE P1284.4 “Standard za isporuku podataka i logičke kanale za IEEE Std. 1284 Interfaces” ima za cilj implementaciju protokola baziranog na paketima za pouzdan prijenos podataka preko paralelnog porta. Zasnovan je na Hewlett-Packard-ovom MLC (Multiple Logical Channels) protokolu, ali kompatibilnost nije zagarantovana u konačnoj verziji standarda.

1.4. Sistemska podrška za LPT port

Sistemska podrška za LPT port uključuje pretragu instaliranih portova i usluge štampanja (Int 17h, pogledajte odeljak 8.3.3). Tokom početnog POST testiranja, BIOS proverava prisustvo paralelnih portova na adresama 3BCh, 378h i 278h i postavlja osnovne adrese detektovanih portova u BIOS Data Area 0: 0408h, 040Ah, 040Ch, 040Eh ćelije. Ove ćelije pohranjuju adrese LPT1-LPT4 portova, nulta vrijednost adrese ukazuje da ne postoji port s ovim brojem. U ćelije 0: 0478, 0479, 047A, 047B se unose konstante koje postavljaju vremensko ograničenje za ove portove.

Pretraga portova se obično obavlja prilično primitivno - test bajt (AAh ili 55h) izlazi na baznu adresu (u registru podataka predviđenog porta), a zatim se vrši unos na istoj adresi. Ako se pročitani bajt poklapa sa napisanim, pretpostavlja se da je LPT port pronađen; njegova adresa se nalazi u ćeliji BIOS Data Area. Adrese baznih portova mogu se naknadno promijeniti softverom. BIOS ne može sam podesiti adresu LPT4 porta, jer postoje samo tri od gore navedenih na listi standardnih adresa za pretragu.

Detektovani portovi se inicijalizuju - upisivanjem u kontrolni registar generira se i uklanja signal Init #, nakon čega se upisuje vrijednost 0Ch koja odgovara početnom stanju signala interfejsa. U nekim slučajevima, signal Init # je aktivan od trenutka resetovanja hardvera do inicijalizacije porta kada se OS pokrene. To se vidi iz ponašanja uključenog štampača prilikom ponovnog pokretanja računara - On-Line indikator štampača se gasi na duže vreme. Posledica ovog fenomena je nemogućnost štampanja ekrana (na primer parametara podešavanja BIOS-a) pritiskom na taster Print Screen pre učitavanja OS-a.

1.5. Paralelni port i PnP

Većina modernih perifernih uređaja povezanih na LPT port podržava 1284 standard i PnP funkcije. Da bi podržao ove funkcije, računar sa hardverske tačke gledišta, dovoljno je imati kontroler interfejsa koji je usklađen sa standardom 1284. Ako povezani uređaj podržava PnP, može pregovarati o mogućim načinima razmjene koristeći 1284 mode pregovarački protokol . Dalje, da bi PnP radio, povezani uređaj mora operativnom sistemu reći sve potrebne informacije o sebi. Kao minimum, to su identifikatori proizvođača, modeli i skup podržanih naredbi. Detaljnije informacije o uređaju mogu uključivati ​​ID klase, detaljan opis i ID uređaja s kojim je osigurana kompatibilnost. Na osnovu informacija primljenih za podršku ovom uređaju, operativni sistem može preduzeti korake da instalira potreban softver.

Uređaje sa PnP podrškom OS prepoznaje u fazi pokretanja, ako su, naravno, povezani na port interfejs kablom i ako su uključeni. Ako Windows otkrije povezani PnP uređaj koji se razlikuje od onoga što je zapisano u njegovom registru za ovaj port (ili samo novi uređaj), pokušava instalirati drajvere potrebne za uređaj iz OS distributivnog kompleta ili iz paketa novog uređaja . Ako Windows ne želi da primijeti novopriključeni PnP uređaj, to može ukazivati ​​na problem sa portom ili kablom. PnP sistem ne radi ako je uređaj povezan jeftinim "ne-dvosmjernim" kablom koji nema SelectIn # linijsku vezu (pin 17 na LPT portu i pin 36 na Centronics konektoru).

1.6. Aplikacija LPT porta

Obično se LPT port koristi za povezivanje štampača (pogledajte str. 8.3.1), ali to nije ograničeno na njegovu upotrebu.

Za povezivanje dva računara putem paralelnog interfejsa koriste se različiti kablovi u zavisnosti od načina na koji se koriste portovi. Najjednostavniji i najsporiji je režim grickanja, koji radi na svim portovima. Za ovaj način rada dovoljno je imati 10 signalnih žica i jednu zajedničku žicu u kabelu. Pinout konektora kabla je prikazan u tabeli. 1.11. Komunikacija dva računara ovim kablom je podržana standardnim softverom kao što je Interlnk iz MS-DOS-a ili Norton Commander. Imajte na umu da se ovdje koristi vlastiti protokol, koji se razlikuje od onog opisanog u tački 1.3.1.

Tabela 1.11. PC-PC komunikacioni kabl (4-bitni)

X1, PC konektor #1 X2 PC konektor #2
Bit Kontakt Kontakt Bit
DR.0 2 15 SR.3
DR.1 3 13 SR.4
DR.2 4 12 SR.5
DR.3 5 10 SR.6
DR.4 6 11 SR.7
SR.6 10 5 DR.3
SR.7 11 6 DR.4
SR.5 12 4 DR.2
SR.4 13 3 DR.1
SR.3 15 2 DR.0
GND 18-25 18-25 GND

Konektori X1 i X2 su DB25-P (muški).

Komunikacija velike brzine između dva računara se takođe može izvesti u ECP režimu (EPP režim je nezgodan, jer zahteva sinhronizaciju U/I ciklusa magistrale dva računara).

Table 1.12 prikazuje ožičenje kabla, u sličnoj tabeli prethodnih knjiga autora (vidi i) došlo je do greške (pinovi 13 i 15 su pomešani). Od svih signala na kablu, samo PeriphRequest # (pin 15) se ne koristi. Preporučuje se da se serijski otpornici (0,5–1 kΩ) umetnu u kolo linije za prenos podataka kako bi se sprečilo da teče prekomerne struje kada su portovi podataka oba računara u izlaznom režimu. Ova situacija se dešava kada komunikacioni softver računara još nije pokrenut. Komunikaciju u ECP modu podržava Windows 9x, komplet isporuke ovih OS uključuje drajver PARALINK.VxD, ali je zbog interne greške neoperativan. Zakrpa za ovaj drajver, kao i uslužni program za testiranje i potrebni opisi mogu se naći na netu (www.lpt.com, www.lvr.com/parport.htm).

Tabela 1.12. PC-PC komunikacioni kabel u ECP modu i bajt modu

Konektor X1 Konektor X2
Kontakt Ime u ECP Ime u ECP Kontakt
1 HostClk PeriphClk 10
14 HostAck PeriphAck 11
17 1284Active Xflag 13
16 Obrnuti zahtjev # AskReverse # 12
10 PeriphClk HostClk 1
11 PeriphAck HostAck 14
12 AckReverse # Obrnuti zahtjev # 16
13 Xflag 1284Active 17
2, 3…9 Podaci Podaci 2, 3…9

Povezivanje skenera na LPT port je efikasno samo ako port pruža barem dvosmjerni način rada (Bi-Di), budući da je glavni tok ulaz. Bolje je koristiti ECP port ako ovaj način rada podržava skener (ili EPP, što je malo vjerovatno).

Povezivanje eksternih drajvova (Iomega Zip Drive, CD-ROM, itd.), LAN adaptera i drugih balansiranih I/O uređaja ima svoje specifičnosti. U SPP režimu, uz usporavanje uređaja, primetna je fundamentalna asimetrija ovog režima: čitanje podataka je duplo sporije od (prilično sporog) pisanja. Upotreba dvosmjernog načina rada (Bi-Di ili PS / 2 Tip 1) će eliminirati ovu asimetriju - brzine će biti jednake. Samo prelaskom na EPP ili ECP možete postići normalnu brzinu rada. U EPP ili ECP modu, veza na LPT port je skoro jednako brza kao i veza preko ISA kontrolera. Ovo važi i za povezivanje uređaja sa standardnim interfejsom sabirnice na LPT portove preko konvertora interfejsa (na primer, LPT-IDE, LPT-SCSI, LPT-PCMCIA). Imajte na umu da IDE hard disk povezan preko adaptera na LPT port može biti predstavljen kao SCSI uređaj za sistem (ovo je logičnije sa softverske tačke gledišta).

Table 1.13 opisuje namenu pinova konektora LPT porta u različitim režimima i njihovu korespondenciju sa bitovima registra standardnog porta.

Tabela 1.13. Namjena pinova konektora LPT porta i bitova registra u SPP, ECP i EPP modovima

Kontakt I / O Bit¹ SPP ECP EPP
1 O / I CR.0 \ Strobe # HostClk Pisati #
2 O / I DR.0 Podaci 0 Podaci 0 Podaci 0
3 O / I DR.1 Podaci 1 Podaci 1 Podaci 1
4 O / I DR.2 Podaci 2 Podaci 2 Podaci 2
5 O / I DR.3 Podaci 3 Podaci 3 Podaci 3
6 O / I DR.4 Podaci 4 Podaci 4 Podaci 4
7 O / I DR.5 Podaci 5 Podaci 5 Podaci 5
8 O / I DR.6 Podaci 6 Podaci 6 Podaci 6
9 O / I DR.7 Podaci 7 Podaci 7 Podaci 7
10 I SR.6 Ack # PeriphClk INTR #
11 I SR.7 \ Zauzeto PeriphAck čekaj #
12 I SR.5 PaperEnd AckReverse #
13 I SR.4 Odaberite Xflag
14 O / I CR.1 \ Auto LF # HostAck DataStb #
15 I SR.3 Greška # PeriphRequest #
16 O / I CR.2 U tome # Obrnuti zahtjev # Resetovati #
17 O / I CR.3 \ Odaberite u # 1284Active AdrStb #

¹ Simbol "\" označava invertirane signale (1 u registru odgovara niskom nivou linije).

² Korisnički definiran.

1.7. Konfiguriranje LPT portova

Kontrola paralelnog porta je podijeljena u dvije faze - preliminarna konfiguracija (Setup) hardvera porta i trenutno (operativno) prebacivanje režima rada aplikacijskim ili sistemskim softverom. Online prebacivanje je moguće samo unutar režima dozvoljenih tokom konfiguracije. Ovo omogućava koordinaciju hardvera sa softverom i blokira lažne prekidače uzrokovane pogrešnim radnjama programa.

Konfiguriranje LPT porta ovisi o njegovoj verziji. Port koji se nalazi na ploči za proširenje (više kartica) instaliranoj u ISA ili ISA + VLB slot je konfigurisan sa džamperima na samoj ploči. Port na matičnoj ploči je konfigurisan preko BIOS Setup-a.

Parametri koji se konfigurišu navedeni su u nastavku.

♦ Osnovna adresa je 3BCh, 378h ili 278h. Tokom inicijalizacije, BIOS proverava prisustvo portova po adresama ovim redosledom i, u skladu sa tim, detektovanim portovima dodeljuje logička imena LPT1, LPT2, LPT3. 3BCh adresa ima port adapter koji se nalazi na MDA ili HGC ploči. Većina portova je konfigurisana za adresu 378h prema zadanim postavkama i mogu se prebaciti na 278h.

♦ Korištena linija zahtjeva za prekidom: za LPT - IRQ7, za LPT2 - IRQ5. Tradicionalno, prekidi štampača nisu uključeni, a ovaj oskudni resurs se može sačuvati. Međutim, kada se koriste ECP (ili Fast Centronics) načini velike brzine, operacija prekida može značajno poboljšati performanse i smanjiti opterećenje procesora.

♦ Upotreba DMA kanala za ECP i Fast Centronics modove - rezolucija i broj DMA kanala.

♦ Načini rada luke:

SPP - port radi samo u standardnom jednosmjernom softverski kontrolisanom modu;

PS / 2, aka Bi-Directional - razlikuje se od SPP u mogućnosti preokretanja kanala (podešavanje CR.5 = 1);

Fast Centronics - hardversko oblikovanje Centronics protokola koristeći FIFO bafer i eventualno DMA;

EPP - zavisno od upotrebe registara, luka radi u SPP ili EPP režimu;

ECP - podrazumevano je uključen u SPP ili PS/2 režim, pisanjem u ECR može se preneti u bilo koji ECP režim, ali prevod u EPP upisivanjem u ECR kod 100 nije zagarantovan;

ECP + EPP - Isto kao ECP, ali način pisanja 100 u ECR prevodi port u EPP.

Izbor EPP, ECP ili Fast Centronics režima sam po sebi ne dovodi do povećanja brzine razmene sa povezanim kontrolerima, već samo omogućava vozaču i kontrolerima da u okviru svog „razumevanja“ podese optimalni režim. Većina modernih drajvera i aplikacija pokušavaju koristiti efikasne načine rada, tako da im ne biste trebali "podrezati krila" instaliranjem jednostavnih modova bez dobrog razloga.

Štampači i skeneri možda žele ECP način rada. Windows (3.x, 9x i NT) ima sistemske drajvere za ovaj režim. U DOS okruženju, ECP štampanje je podržano samo posebnim drajverom za preuzimanje.

Mrežni adapteri, eksterni diskovi i CD-ROM-ovi povezani na paralelni port mogu koristiti EPP način rada. Za ovaj način rada još nije primijenjen poseban drajver; EPP podrška je uključena u upravljački program samog plug-in uređaja.

1.8. Greške i testiranje paralelnih portova

Dobra je ideja započeti testiranje paralelnih portova provjeravanjem da li su na sistemu. Lista adresa instaliranih portova pojavljuje se u tabeli koju BIOS prikazuje na ekranu prije učitavanja OS-a. Lista se može pogledati pomoću programa za testiranje ili direktno u području podataka BIOS-a pomoću debagera.

Ako BIOS otkrije manje portova nego što je fizički instalirano, vjerovatno je da će dva porta dobiti istu adresu. Istovremeno, nije zagarantovana operativnost bilo kojeg od konfliktnih portova: oni će istovremeno emitovati signale, ali prilikom čitanja statusnog registra, konflikt na magistrali će najvjerovatnije dovesti do oštećenja podataka. Softversko testiranje porta bez dijagnostičkog priključka (Loop Back) neće pokazati greške, budući da se čitaju podaci izlaznih registara, i oni će se podudarati za sve konfliktne (pojedinačno servisne portove). To je upravo ono što BIOS radi kada provjerava portove. Trebali biste se nositi s ovom situacijom tako što ćete uzastopno postavljati portove i promatrati adrese koje se pojavljuju na listi.

Ako je samo jedan port fizički instaliran, a BIOS ga ne detektuje, onda je port ili onemogućen tokom konfiguracije, ili je u kvaru (najvjerovatnije zbog kršenja pravila povezivanja). Ako imate sreće, kvar se otklanja "žongliranjem" ploče u utoru - ponekad postoje problemi s kontaktima.

Takva "čuda" se takođe primećuju - tokom "toplog" ponovnog pokretanja DOS-a nakon Windows 95, port nije vidljiv (a aplikacije ne mogu da štampaju iz MS-DOS-a). Međutim, nakon ponovnog pokretanja DOS-a, port je na svom mjestu. Lakše se pomiriti sa ovim fenomenom nego se boriti.

Testiranje portova pomoću dijagnostičkih programa omogućava vam da provjerite izlazne registre, a pomoću posebnih utikača ulazne linije. Budući da je broj izlaznih linija porta (12) i ulaza (5) različit, tada je potpuna provjera porta pomoću pasivnog utikača u osnovi nemoguća. Različiti programi testiranja zahtijevaju različite stubove (slika 1.8).

Rice. 1.8. Stub krug za testiranje LPT porta: a - za CheckIt, b - za Norton Diagnostics

Većinu problema pri radu sa LPT portovima uzrokuju konektori i kablovi. Za provjeru porta, kabela i pisača možete koristiti posebne testove iz popularnih dijagnostičkih programa (CheckIt, PCCheck, itd.). Možete pokušati jednostavno odštampati datoteku karaktera na štampaču.

♦ Ako izlaz datoteke sa DOS tačke gledišta prođe (kopiranje datoteke na uređaj pod nazivom LPTn ili PRN se obavlja brzo i uspješno), a štampač (radi) nije ispisao ni jedan znak - najvjerovatnije je ovo otvoreni krug (ne kontakt u konektoru) strujnog kruga # ...

♦ Ako je štampač On Line, a pojavi se poruka da nije spreman, potražite uzrok u liniji Zauzeto.

♦ Ako štampač koji je povezan na port štampa normalno u standardnom režimu (SPP), ali ne uspe pri ulasku u ECP režim, proverite kabl da vidite da li ispunjava zahteve IEEE 1284 (pogledajte gore). Jeftini kablovi sa neupletenim žicama normalno rade pri brzinama od 50-100 Kb / s, ali pri 1-2 Mb / s, koje osigurava ECP, imaju svako pravo da ne rade, posebno s dužinom većom od 2 m.

♦ Ako se prilikom instaliranja upravljačkog programa PnP štampača pojavi poruka „dvosmerni kabl“, proverite da li postoji veza između staze 17 DB-25 konektora i staze 36 Centronics konektora. Iako je ova veza prvobitno bila predviđena, nije dostupna na brojnim kablovima.

♦ Ako štampač iskrivi informacije prilikom štampanja, linije podataka mogu biti prekinute (ili kratko). U ovom slučaju, zgodno je koristiti datoteku koja sadrži niz kodova za sve znakove za ispis. Ako se datoteka štampa sa ponavljanjem nekih znakova ili njihovih grupa, prekinuta žica podataka interfejsa može se lako izračunati po stopi ponavljanja. Isti fajl je pogodan za korištenje za provjeru rusifikacije hardvera štampača.

Hardverski prekidi iz LPT porta se ne koriste uvijek. Čak i DOS program za pozadinsko štampanje PRINT radi sa portom za ispitivanje statusa, a njegov backend se pokreće prekidom tajmera. Zbog toga su greške kola prekida porta rijetke. Međutim, istinski multitasking operativni sistemi (npr. NetWare) pokušavaju prekinuti port. Moguće je testirati prekidnu liniju samo povezivanjem CP ili utikača na port. Ako je LAN adapter spojen na port s neispravnim kanalom za prekid, tada može raditi, ali vrlo malom brzinom: svaki zahtjev će dobiti odgovor s kašnjenjem od nekoliko desetina sekundi - paket primljen od adaptera neće biti primljeno prekidom (odmah po dolasku) i eksternim timeoutom.

LPT port, koji se često naziva paralelni port, jedan je od najstarijih portova na računaru. Iako danas takav port nije dostupan na svim matičnim pločama, on još uvijek ima određenu distribuciju, pa su mnogi korisnici računara i kancelarijske opreme, posebno štampača, veoma zainteresovani da znaju šta je to.

Prvo morate razumjeti šta znači skraćenica lpt port. Dakle, LPT znači skraćenica za kombinaciju nekoliko engleskih riječi, odnosno: Line Print Terminal. Na ruskom jeziku LPT znači terminal za štampač red po red. Na osnovu naziva postaje jasno da je prvenstveno namijenjen štampaču. Ali sa teorijske tačke gledišta, na LPT se mogu povezati i neki drugi uređaji. U tu svrhu koristi se poseban adapter - lpt adapter. Treba dodati da ima još jedno ime, prihvaćeno u krugovima korisnika - port za štampač.

Generalno, lpt port ima prilično dugu istoriju razvoja. Razvili su ga zaposlenici kompanije Centronics, koja se početkom 70-ih godina prošlog stoljeća specijalizirala za proizvodnju matričnih štampača. Početkom 1980-ih, ovaj port za štampač postao je široko korišten od strane IBM-a, koji ga je koristio na svojim računarima. U toj deceniji, lpt port je čak uspio da postane standardna opcija potrebna za povezivanje uređaja pri velikim brzinama dostupnim u tim godinama.

U početku je LPT interfejs bio predstavljen u nekoliko različitih izdanja. Štaviše, u originalnoj verziji bio je jednosmjeran, tj. uz njegovu pomoć bilo je moguće prenijeti informacije isključivo na periferni uređaj. Naravno, ovakva situacija nije odgovarala mnogim korisnicima, tk. već tih godina su se proizvodili uređaji za štampanje koji su zahtevali implementaciju prenosa podataka u dva pravca. Zbog toga su nešto kasnije programeri morali nekoliko puta poboljšati LPTl interfejs. Ovaj proces se nastavio sve dok nije predstavljen njegov standard, koji je nazvan IEEE 1284. Tako su programeri predstavili konačni dijagram porta. Novi standard je imao podršku za nekoliko različitih načina rada. Osim toga, bio je kompatibilan sa starijim standardima. U svojoj konačnoj verziji, interfejs štampača je mogao da podrži prilično visoku brzinu prenosa podataka u to vreme, koja je dostizala 5 Mb/s!

Kako radi paralelni port?

Naziv paralelni LPT nastao je zbog činjenice da se prijenos podataka u kabelu koji je na njega spojen vrši paralelno, za što se istovremeno koristi nekoliko vodiča. Zbog toga se značajno razlikuje od soma, što je dosljedno. Broj provodnika u kablu koji se povezuje na LPT je obično osam. Osim toga, može sadržavati nekoliko linija za prijenos kontrolnih signala. Dakle, upotreba com porta u poređenju sa LPT-om ima niz jakih ograničenja i nedostataka.

Uprkos činjenici da je Centronics port u većoj meri korišćen za organizaciju veze između štampača i računara, on je ipak korišćen u druge svrhe. Na primjer, koristeći LPT, možete direktno povezati dva osobna računara jedan na drugi - obično se za to koristi Interlink kabel. Sve dok Ethernet mrežne kartice nisu postale široko rasprostranjene, ova vrsta veze bila je vrlo popularna. Naravno, nije mogao da pruži korisnicima zaista visoke brzine prenosa podataka, ali uprkos tome, ovakav način međusobnog povezivanja dva računara tih godina bio je gotovo jedini mogući. Treba dodati da postoje čak i posebni elektronski ključevi koji su dizajnirani posebno za povezivanje na paralelni port.

O karakteristikama LPT rada

Kao što je gore spomenuto, za razliku od com-a, LPT ima podršku za paralelni prijenos podataka. U prvim modelima personalnih računara bio je jedan od najbržih. Njegov interfejs je, zbog mogućnosti prenosa informacija preko nekoliko linija, po mnogo čemu sličan arhitekturi sabirnicama koje se koriste u računaru. Ali upravo ovakva okolnost ograničava dužinu kabla, koja ne može biti veća od 5 metara. U suprotnom, postojaće stalne smetnje u vezi između računara i štampača.

Obično je potrebno 10 signalnih linija za organizovanje normalnog prenosa podataka. Što se tiče ostalih linija, one se koriste za kompatibilnost sa Centronics kablovskim standardom. Maksimalni napon koji se primjenjuje na LTP signalne linije je obično +5 V.

Port konektor i Centronics kabl

Ako govorimo o konektoru za paralelni port, onda se on nalazi na samoj matičnoj ploči, iako se do sredine 90-ih godina prošlog stoljeća ovaj element obično nalazio na tzv. multicard, koja je umetnuta u slot za proširenje. LPT izlaz je 25-pinski DB25 konektor.

Da biste uspostavili vezu između personalnog računara i kancelarijske opreme za štampanje pomoću ličnog porta, morate koristiti Centronics kabl. U ovom slučaju, konektor na kancelarijskoj opremi je 36-pinski. Dakle, glavna karakteristika ovog kabla je da ima dva različita konektora sa obe strane.
Takođe imajte na umu da se prilično često Centronics konektor odnosi na konektor kabla koji je namenjen za matičnu ploču personalnog računara, a u stvari je konektor za štampač – tj. onaj koji uključuje 36 kontakata. Što se tiče konektora namenjenog direktno za LPT, on se zove Amphenolstacker. Morate biti svjesni takvih razlika u imenima kako biste sve stvari nazvali pravim imenima.

Ishod

U zaključku možemo reći da je paralelni port Line Print Terminala PC interfejs, koji je do sada postao prilično zastareo. Uprkos širokoj rasprostranjenosti u poslednjim decenijama prošlog veka, danas ova luka nema veliku podršku mnogih kompanija koje proizvode računarsku opremu, kancelarijsku opremu i softver. Uprkos tome, LPT se i dalje uspešno koristi na mnogim modelima računara i uređaja za štampanje koji su zastareli u naše vreme. Ali prilično često je potreban com-lpt adapter za organizaciju veze između računara i starog štampača. Danas se u principu mogu naći u prodaji, ali ako imate potrebno znanje i vještine, takav adapter možete spavati apsolutno samostalno.

Top srodni članci