84
Am79C961A
During an odd byte read the swap buffer copies the
data from SD0-7 to the high byte. During an odd byte
write the Current Master
swap buffer copies the data
from the high byte to SD0-7. The PCnet-ISA II control-
ler can be configured to be an 8-bit I/O resource even
in a 16-bit system; this is set by the EEPROM. It is rec-
ommended that the PCnet-ISA II controller be config-
ured for 8-bit only I/O bus cycles for maximum
compatibility with PC/AT clone motherboards.
When the PCnet-ISA II controller is in an 8-bit system
such as a PC/XT, SBHE and IOCS16 must be left
unconnected (these signals do not exist in the PC/XT).
This will force ALL resources (I/O and memory) to sup-
port only 8-bit bus cycles. The PCnet-ISA II controller
will function in an 8-bit system only if configured for Bus
Slave Mode.
Accesses to 16-bit resources (which do return
MEMCS16 or IOCS16) use either or both SD0
–
7 and
SD8
–
15. A word access is indicated by A0=0 and
SBHE=0 and data is transferred on all 16 data lines. An
even byte access is indicated by A0=0 and SBHE=1
and data is transferred on SD0
–
7. An odd-byte access
is indicated by A0=1 and SBHE=0 and data is trans-
ferred on SD8-15. It is illegal to have A0=1 and
SBHE=1 in any bus cycle. The PCnet-ISA II controller
returns only IOCS16; MEMCS16 must be generated by
external hardware if desired. The use of MEMCS16
applies only to Shared Memory Mode.
The following table describes all possible types of ISA
bus accesses, including Permanent Master as Current
Master and PCnet-ISA II controller as Current Master.
The PCnet-ISA II controller will not work with 8-bit
memory while it is Current Master. Any descriptions of
8-bit memory accesses are for when the Permanent
Master
is Current Master
.
The two byte columns (D0
–
7 and D8
–
15) indicate
whether the bus master or slave is driving the byte.
CS16 is a shorthand for MEMCS16 and IOCS16.
Bus Master Mode
The PCnet-ISA II controller can be configured as a Bus
Master only in systems that support bus mastering. In
addition, the system is assumed to support 16-bit
memory (DMA) cycles (the PCnet-ISA II controller
does not use the MEMCS16 signal on the ISA bus).
This does not preclude the PCnet-ISA II controller from
doing 8-bit I/O transfers. The PCnet-ISA II controller
will not function as a bus master in 8-bit platforms such
as the PC/XT.
Refresh Cycles
Although the PCnet-ISA II controller is neither an origi-
nator or a receiver of refresh cycles, it does need to
avoid unintentional activity during a refresh cycle in bus
master mode. A refresh cycle is performed as follows:
First, the REF signal goes active. Then a valid refresh
address is placed on the address bus. MEMR goes ac-
tive, the refresh is performed, and MEMR goes inac-
tive. The refresh address is held for a short time and
them goes invalid. Finally, REF goes inactive. During
a refresh cycle, as indicated by REF being active, the
PCnet-ISA II controller ignores DACK if it goes active
until it goes inactive. It is necessary to ignore DACK
during a refresh because some motherboards gener-
ate a false DACK at that time.
ISA Bus Accesses
Address PROM Cycles External PROM
The Address PROM is a small (16 bytes) 8-bit PROM
connected to the PCnet-ISA II controller Private Data
Bus. The PCnet-ISA II controller will support only 8-bit
ISA I/O bus cycles for the address PROM; this limita-
tion is transparent to software and does not preclude
16-bit software I/O accesses. An access cycle begins
R/W
A0
SBHE
CS16
D0
–
7
D8
–
15
Comments
RD
0
1
x
Slave
Float
Low byte RD
RD
1
0
1
Slave
Float
High byte RD with swap
RD
0
0
1
Slave
Float
16-Bit RD converted to low byte RD
RD
1
0
0
Float
Slave
High byte RD
RD
0
0
0
Slave
Slave
16-Bit RD
WR
0
1
x
Master
Float
Low byte WR
WR
1
0
1
Master
Float
High byte WR with swap
WR
0
0
1
Master
Master
16-Bit WR converted to
low byte WR
WR
1
0
0
Float
Master
High byte WR
WR
0
0
0
Master
Master
16-Bit WR