En parallellport är en typ av gränssnitt utformad för datorer ( personliga och andra) för att ansluta olika kringutrustning. I datoranvändning är en parallellport den fysiska implementeringen av parallellkopplingsprincipen . Den är också känd som en skrivarport eller en Centronics-port . IEEE 1284-standarden definierar en dubbelriktad portvariant som tillåter samtidig överföring och mottagning av databitar.
Den första parallellskrivaren Centronics Model 101 introducerades 1970 [1] . Gränssnittet utvecklades på Centronics av R. Howard och P. Robinson. Centronics parallella gränssnitt blev snabbt de facto industristandard. Tillverkare på den tiden använde olika kontakter på sidan av systemenheten, så det fanns många olika kablar. Till exempel använde tidiga VAX - system en DC-3-kontakt, NCR använde en 36-stifts platt kontakt, Texas Instruments använde en 25-stifts kantkontakt och Data General använde en 50-stifts platt kontakt.
Dataproducts har introducerat en mycket originell implementering av det parallella gränssnittet för sina skrivare. Den använde en DC-37-kontakt på värdsidan och en 50-stiftskontakt på skrivarsidan: antingen en DD-50 (ibland felaktigt kallad "DB50") eller en blockformad M-50-kontakt (även kallad en hårddiskkontakt) [2] [3] . Dataproducts parallellkoppling fanns i två versioner: antingen för korta anslutningar (upp till 15 m) eller för långa anslutningar (från 15 till 150 m). Dataproducts-gränssnittet fanns på många stordatorsystem fram till 1990-talet, med många skrivartillverkare som erbjöd det som tillval.
IBM släppte sin persondator 1981 och inkluderade dess variant av Centronics-gränssnittet: endast skrivare som bär IBM-logotypen ( ommärkt från Epson ) kunde ansluta till IBM-datorn [4] . IBM har standardiserat en parallellkabel med en DB25F-kontakt på PC-sidan och en Centronics-kontakt på skrivarsidan. Tillverkarna implementerade snart skrivare som var kompatibla med både den vanliga Centronics-anslutningen och IBM-anslutningen.
1987 implementerade IBM den första versionen av det dubbelriktade gränssnittet. HP introducerade sin version av det dubbelriktade gränssnittet 1992 med skrivaren LaserJet 4, känd som Bitronics. Bitronics- och Centronics-gränssnitten ersattes med standardgränssnittet IEEE 1284 1994.
Före tillkomsten av USB anpassades parallellgränssnittet till ett stort antal kringutrustning utöver skrivare. En av de första sådana enheterna var förmodligen donglar för att skydda programvara från kopiering. Det parallella gränssnittet hittade snart in i Iomega Zip -diskettenheter och skannrar , följt av andra enheter som modem , ljudkort , webbkameror , gamepads , joysticks , externa hårddiskar och CD-enheter . Det finns adaptrar för att ansluta SCSI- enheter via ett parallellt gränssnitt. Andra enheter kan kopplas parallellt, såsom EPROM och hårdvarukontroller.
För konsumenter har USB- gränssnittet , och i vissa fall Ethernet , effektivt ersatt skrivarens parallellport. Många PC- och bärbara tillverkare ser parallellporten som ett arv från det förflutna och stöder inte längre det parallella gränssnittet. Microsofts riktlinjer för program för Windows Logotyp "rekommenderar starkt" systemdesigners att avstå från att använda parallella portar [5] . Utvecklade och tillgängliga adaptrar "USB - parallellt gränssnitt", som låter dig ansluta skrivare med parallellt gränssnitt till USB-portar.
På ett IBM PC-system är traditionellt de tre första parallellportarna fördelade enligt följande tabell.
Portnamn | Avbryt # | I/O - startadress |
I/O -slutadress |
---|---|---|---|
LPT1 | IRQ 2 | 0x3bc | 0x3bf |
LPT2 | IRQ 7 | 0x378 | 0x37f |
LPT3 | IRQ 5 | 0x278 | 0x27f |
Om det finns en oanvänd LPTx-plats, flyttas andra portadresser upp (till exempel om port 0x3bc saknas, blir port 0x378 LPT1) [6] . Portadresserna som tilldelats varje LPTx-plats kan bestämmas genom att läsa BIOS-dataområdet på adressen 0000:0408.
På versioner av Windows som inte använder Windows NT-kärnan (som DOS och vissa andra operativsystem), kan program komma åt parallellporten med hjälp av outportb()- och inportb()-rutinerna. Windows NT och Unix operativsystem ( NetBSD , FreeBSD , Solaris , 386BSD , etc.) har en inbyggd säkerhetsmekanism i 80386-processorn, och åtkomst till parallellporten nekas om inte rätt drivrutin anges. Detta förbättrar säkerheten och underlättar konfliktlösning vid åtkomst till enheten. På Linux, om processen körs med administratörsrättigheter, kan funktionerna inb(), outb() och kommandot ioperm() användas för att komma åt basadressen för en port.
Pinout för parallellporten är som följer:
Stift nr (25-stift) |
Stift nr (36-stift) |
Beteckning | Riktning | Registrera bit | Invertera |
---|---|---|---|---|---|
ett | ett | Blixt | In ut | Kontroll-0 | Ja |
2 | 2 | Data0 | Ut | data-0 | Inte |
3 | 3 | Data1 | Ut | Data-1 | Inte |
fyra | fyra | Data2 | Ut | Data-2 | Inte |
5 | 5 | Data3 | Ut | Data-3 | Inte |
6 | 6 | Data4 | Ut | Data-4 | Inte |
7 | 7 | Data5 | Ut | data-5 | Inte |
åtta | åtta | Data6 | Ut | Data-6 | Inte |
9 | 9 | Data7 | Ut | Data-7 | Inte |
tio | tio | Ack | I | Status-6 | Inte |
elva | elva | Upptagen | I | Status-7 | Ja |
12 | 12 | papper slut | I | Status-5 | Inte |
13 | 13 | Välj | I | Status-4 | Inte |
fjorton | fjorton | Radmatning | In ut | Kontroll-1 | Ja |
femton | 32 | fel | I | Status-3 | Inte |
16 | 31 | återställa | In ut | Kontroll-2 | Inte |
17 | 36 | Välj-Skrivare | In ut | Kontroll-3 | Ja |
18-25 | 19-30,33,17,16 | Jord | - | - | - |
I inverterade linjer är den logiska låga nivån "sann", i icke-inverterade linjer är tvärtom den logiska höga nivån sann.
Stift 25 i DB-25-kontakten kanske inte är anslutet till jord på moderna datorer.
I den ursprungliga versionen av det parallella gränssnittet (SPP, Standard Parallel Port ) var datalinjerna enkelriktade (endast utdata). Programvaruföretaget LapLink för synkronisering mellan stationära och bärbara datorer kom på en lösning.
Förutom de åtta datalinjerna har parallellporten fem statuslinjer. En åtta-bitars byte delades upp i två 4-bitars nibbles , som sändes efter varandra, mottagningen utfördes via statusraderna. Den femte statusraden (vanligtvis stift 11 "upptagen") tjänade för synkronisering: 0 ändrades till 1 och vice versa varje gång en nibble sändes, som svar ändrades den mottagande sidan 0 till 1 på sin linje (och sände samtidigt sin knapra). På detta "pingis"-sätt kunde datorer överföra information med den hastighet som programvara och kabel faktiskt stöder: snabbare för en kort kabel och långsammare för en lång. Annan hårdvara kopplad till parallellporten använde också en liknande mekanism.
Kabeldragning [7] :
namn | Stift DB-25M | Riktning | Stift DB-25M | namn |
---|---|---|---|---|
Data 0 | 2 | → | femton | Fel |
Data 1 | 3 | → | 13 | Val |
Data 2 | fyra | → | 12 | inget papper |
Data 3 | 5 | → | tio | Bekräftelse |
Data 4 | 6 | → | elva | Upptagen |
Bekräftelse | tio | ← | 5 | Data 3 |
Upptagen | elva | ← | 6 | Data 4 |
inget papper | 12 | ← | fyra | Data 2 |
Val | 13 | ← | 3 | Data 1 |
Fel | femton | ← | 2 | Data 0 |
Jorden | 25 | 25 | Jorden |
I framtiden blev LapLink -kabeln (eller InterLink -kabel , för att hedra MS-DOS- verktyget , eller noll-skrivarkabel , i analogi med noll-modem ) en exotisk, men snabb och pålitlig (upp till 100 kilobyte per sekund [ 8] !) sätt att överföra data mellan datorer. Spel, med sällsynta undantag [9] , stödde inte en sådan koppling; dessutom var det främsta sättet för fjärrspel då ett telefonmodem , och spel designades för dess frekvenser. Men affärsprogramvaran anammade snabbt kabeln: kommunikationsverktyg var en del av MS-DOS , Norton Commander och Microsoft Windows . Det senare gjorde det möjligt för alla spel (både för DOS och för Windows) att fungera genom en parallellkabel med IPX- och TCP/IP-protokollen .
Fabrikskablar var ca 2 m långa; en kabel längre än 4 m rekommenderas inte - hastigheten sjunker kraftigt, sannolikheten för att ta emot med ett fel ökar.
På Windows 7 fungerar det fortfarande att ansluta datorer via en nollmodemkabel och LapLink [10] .
Datorbussar och gränssnitt | |
---|---|
Grundläggande koncept | |
Processorer | |
Inre | |
Anteckningsböcker | |
Driver | |
Periferi | |
Utrustningshantering | |
Universell | |
Videogränssnitt | |
Inbyggda system |