LSI 53C810A Computer Hardware User Manual


 
Prefetching SCRIPTS Instructions 2-3
A complete set of development tools is available for writing custom
drivers with SCSI SCRIPTS. For more information on SCSI SCRIPTS
instructions supported by the LSI53C810A, see Chapter 6, “Instruction
Set of the I/O Processor.”
2.2.1 SDMS Software: The Total SCSI Solution
For users who do not need to develop custom drivers, LSI Logic provides
a total SCSI solution in PC environments with SDMS software. SDMS
software provides BIOS and driver support for hard disk, tape, and
removable media peripherals for the major PC-based operating systems.
SDMS software includes a SCSI BIOS to manage all SCSI functions
related to the device. It also provides a series of SCSI device drivers that
support most major operating systems. SDMS software supports a
multithreaded I/O application programming interface (API) for
user-developed SCSI applications. SDMS software supports both the
ASPI and CAM SCSI software specifications.
2.3 Prefetching SCRIPTS Instructions
When enabled by setting the Prefetch Enable bit (bit 5) in the DMA
Control (DCNTL) register, the prefetch logic in the LSI53C810A fetches
4 or 8 Dwords of instructions. The prefetch logic automatically
determines the maximum burst size that it can perform, based on the
burst length as determined by the values in the DMA Mode (DMODE)
register and the PCI Cache Line Size register (if cache mode is enabled).
If the unit cannot perform bursts of at least 4 Dwords, it disables itself.
The LSI53C810A may flush the contents of the prefetch unit under
certain conditions, listed below, to ensure that the chip always operates
from the most current version of the software. When one of these
conditions apply, the contents of the prefetch unit are automatically
flushed.
On every Memory Move instruction. The Memory Move (MMOV)
instruction is often used to place modified code directly into memory.
To make sure that the chip executes all recent modifications, the
prefetch unit flushes its contents and loads the modified code every
time a MMOV instruction is issued. To avoid inadvertently flushing