82371AB (PIIX4)
E
164
4/9/97 2:23 PM PIIX4aDS
INTEL CONFIDENTIAL
(until publication date)
PRELIMINARY
8.4.11.
SOFTWARE COMMANDS
There are three additional special software commands which can be executed by the DMA controller. The three
software commands are:
1.
2.
3.
Clear Byte Pointer Flip-Flop
Master Clear
Clear Mask Register
They do not depend on any specific bit pattern on the data bus.
Clear Byte Pointer Flip-Flop
This command is executed prior to writing or reading new address or word count information to/from the DMA
controller. This initializes the flip-flop to a known state so that subsequent accesses to register contents by the
microprocessor will address upper and lower bytes in the correct sequence.
When the Host CPU is reading or writing DMA registers, two Byte Pointer flip-flops are used; one for channels
0–3 and one for channels 4–7. Both of these act independently. There are separate software commands for
clearing each of them (0Ch for channels 0–3, 0D8h for channels 4–7).
DMA Master Clear
This software instruction has the same effect as the hardware reset. The Command, Status, Request, and
Internal First/Last Flip-Flop Registers are cleared and the Mask Register is set. The DMA controller will enter the
idle cycle.
There are two independent master clear commands;
0Dh which acts on channels 0–3, and 0DAh which acts on
channels 4–7.
Clear Mask Register
This command clears the mask bits of all four channels, enabling them to accept DMA requests. I/O port 00Eh is
used for channels 0–3 and I/O port 0DCh is used for channels 4–7.
8.4.12.
ISA REFRESH CYCLES
Refresh cycle requests are generated by two sources: the refresh controller inside PIIX4 or by ISA bus masters
other than the PIIX4.
In both cases, the PIIX4 will generate the ISA Memory refresh.
The PIIX4 ISA bus
controller will enable the address lines SA[7:0] so that when MEMR# goes active, the entire ISA system memory
is refreshed at one time. Memory slaves on the ISA Bus must not drive any data onto the data bus during the
refresh cycle.
PIIX4 maintains a four deep buffer to record internally generated Refresh requests which have not
been serviced.
Counter 1 in the timer register set should be programmed to provide a request for refresh about every 15 μs.
PIIX4 Initiated Refresh Cycle
This refresh cycle is initiated by the refresh logic inside PIIX4. PIIX4 asserts REFRESH# to indicate a refresh
cycle. PIIX4 then drives the address lines SA[7:0] onto the ISA Bus and generates MEMR# and SMEMR#. PIIX4
drives AEN and BALE high for the entire refresh cycle. The memory device may extend this refresh cycle by
pulling IOCHRDY low.