Chapter 1
Understanding I/O Scanner Concepts
1-6
Address Conversion
You can use the following macros to quickly perform conversions between
link and logical addresses and back again. The parentheses are necessary
to ensure operations are performed in the right order.
Link-to-Logical Address Conversion
To convert a link address to a logical address, shift right twice.
#define LINK_TO_LOGICAL(link,logical) ((logical)=((link)>>2))
Logical-to-Link Address Conversion
To convert a logical address to a link address, shift left twice and add the
starting quarter.
#define LOGICAL_TO_LINK(link,logical,sq) ((link)=(((logical)<<2)+sq))
Address Range
The 1784-KTx scanner will service as many as 32 logical racks (32
physical node addresses) with a maximum of 4096 discrete inputs and
4096 discrete outputs.
The scanner runs asynchronously in relation to the host, a personal
computer. When either one wants to get the other’s attention, it must issue
a hardware interrupt. Information is exchanged through dual-port RAM.
Both the host and the scanner can postpone servicing an interrupt if in the
middle of another interrupt-driven task.
The scanner maintains a scan list, which is a list of adapters to be serviced
by the scanner. A given adapter may appear once, several times, or not at
all in the scan list. The scan list is empty until you perform the scanner
commands to
Autoconfigure
or
Set Scan List
.
An exchange (or an adapter scan) is the scanner’s interchange of
information with one adapter. During an exchange, the scanner may
receive data or status information from the adapter or send data or
commands to the adapter, or both. Both block transfers and discrete I/O
transfers can be done during the same exchange if the adapter’s chassis
contains both kinds of I/O modules.
The host issues commands by writing to the dual port. The scanner
services commands as they arrive. If the current operating mode allows,
the scanner executes the command. If the scanner has a confirmation of
this command or of a previously executed command, it puts the
confirmation in the dual-port RAM and interrupts the host.
What the Scanner Does