Floppy Disk Drive Controller by gyvwpsjkko


									?Floppy Disk Drive Controller

A floppy disk controller (FDC) is a special-purpose chip and coupled circuitry that
directs and controls reading from and writing to a computer's floppy disk drive
A single FDC board can carry up to four floppy disk drives. The FDC is linked to the
system bus of the computer and appears as a set of I/O ports to the CPU. It is also
connected to a channel of the DMA controller. The FDC usually performs data
transmission in DMA mode.
Usually an FDC communicates with the CPU via an Industry Standard Architecture
(ISA) bus but an optional arrangement which is more usual in recent designs has the
FDC included in a super I/O chip which communicates via a Low Pin Count bus.
Most of the FDC functions are performed by the FDC IC but some are performed by
external hardware circuits.
FDC IC Functions
? Generating MFM format for the data to be recorded
? Decoding and executing commands such as seek, read, format etc
? Error detection by CRC generation / checking
? Data synchronization
External hardware functions
? Selection of FDD
? Switching-on motor in the FDD
? Resetting the FDC IC
? Enabling / disabling interrupt and DMA signals of the FDC IC
? Data separation logic
? Write pre-compensation logic
? Line drivers for signals to the FDD
? Line receivers for signals from the FDD
Input / Output ports
The FDC has three I/O ports. These are:
? Data port
? Main status register (MSR)
? Control port
The first two reside inside the FDC IC while the Control port is in the external
Data port
This port is used by the software for three different purposes:
? While issuing a command to the FDC IC, command and command parameter
bytes are issued to the FDC IC through this port.
Main Status Register (MSR)
This port is used by the software to read the overall status information regarding the
FDC IC and the FDD's.
Digital Control Port
This port is used by the software to control certain FDD and FDC IC functions.

To top