home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: alt.msdos.programmer
- Path: sparky!uunet!mcsun!Germany.EU.net!news.netmbx.de!zrz.tu-berlin.de!math.fu-berlin.de!Sirius.dfn.de!Urmel.Informatik.RWTH-Aachen.DE!andrej!franke
- From: franke@andrej.informatik.rwth-aachen.de (Christian Franke)
- Subject: Re: Input from parallel port
- Message-ID: <franke.714843361@andrej>
- Sender: news@Urmel.Informatik.RWTH-Aachen.DE (Newsfiles Owner)
- Nntp-Posting-Host: andrej
- Organization: Rechnerbetrieb Informatik / RWTH Aachen
- References: <l9ke8hINN1r7@utkcs2.cs.utk.edu> <1992Aug25.150817.20259@ncsu.edu>
- Date: 26 Aug 92 15:36:01 GMT
- Lines: 79
-
-
- dspascha@eos.ncsu.edu (DAVID SCOTT PASCHAL) writes:
-
- >Hi. I don't know the details (like how to actually do it), but it seems to me I
- >read somewhere that you can do it using some of the handshaking lines (but not
- >the 8 data lines) but you can only send/receive 4-5 bits at a time! [...]
-
- Laplink pro seems to do the following:
-
- In the 4-Bit mode, an interlocked 4-bit transmission
- is done.
-
- Computer A direction Computer B
- DATA0 => -ERROR
- DATA1 => SLCT
- DATA2 => PE
- DATA3 => -ACK
- DATA4 => BUSY
- -ERROR <= DATA0
- SLCT <= DATA1
- PE <= DATA2
- -ACK <= DATA3
- BUSY <= DATA4
-
- Because for an interlocked transmission, one input and one output
- protocol line are necessary, the transmission cannot occur in full
- duplex mode.
-
- In the 8-Bit mode, the same interlocked protocol is used,
- but the following 4 (open collector!) I/O lines are used
- for the remaining 4 bits:
-
- STROBE <=> STROBE
- AUTOFD <=> AUTOFD
- INIT <=> INIT
- SLIN <=> SLIN
-
- Because laplink has an option to turn 8-Bit mode off,
- there may be situations where this mode is not appropriate.
-
-
- Because there is no hardware support for the interlocked protocol,
- the speed is limited by the AT-Bus bandwidth.
-
- To send a nibble/byte the transmitter needs 5 I/O instructions,
- the receiver needs 4 I/O instructions:
-
- Transmitter Receiver
-
- IN wait for receiver ready
- OUT output data
- OUT say: data ready !
- IN wait for data ready
- get data (no IN because same port)
- OUT say: got data !
- IN wait for receiver
- OUT say: data not ready !
- IN wait for data not ready
- OUT say: receiver ready
-
- Even on a 50/MHz 486, only about 650.000 I/O instructions can be
- performed per second. So the theoretical bandwith limit is
-
- 650.000 / 5 = 130.000 transfers / second.
-
- In practice, because the waiting loops with repeated IN's will be executed
- we found a bandwith of about 60.000 transfers / second.
-
-
- Regards,
-
- Christian Franke
-
- Aachen University of Technology
- Lehrstuhl fuer Informatik I
- Ahornstrasse 55
- W-5100 Aachen
- Germany
-
-