Method for a true ATA PIO mode-4 interface for a 32-bit
RISC wireless processor to a standard IDE hard drive using the processor’s
built-in PCMCIA controller pins
Disclosed is a method for a true ATA programmed input/output
(PIO) mode-4 interface for a 32-bit RISC wireless processor to a standard IDE
hard drive using the processor’s built-in PCMCIA controller pins. Benefits
include improved performance.
Background
� � � � � In the emerging area of
low-power embedded computing, a requirement exists for mass-storage elements in
devices. Multimedia applications, such as mp3 players and video playback
devices, process content comprised of extremely large amounts of data.
Conventionally, for handheld wireless devices, the most demanding mass-storage
requirements (>2 GB) can only be met by PCMCIA storage cards containing
rotating media disk drives.
� � � � � In this setup, the storage elements are
removable devices compliant with the PCMCIA standard. The PCMCIA devices hook
up to the built-in PCMCIA/CF controller on the processor. To communicate with
the removable media, the software running on the Cotulla utilizes an ATA driver
on top of PCMCIA manager services functionality, which together forms a
PCMCIA-ATA interface. However, if a device is to contain a large fixed element storage
device (that is physically unremovable), using the PCMCIA-ATA interface
requires unnecessary additional system overhead. In terms of software, this
overhead includes running the PCMCIA manager services layer that controls the
PCMCIA-specific registers and insertion/detection events. In terms of hardware,
this overhead includes an extra application-specific integrated circuit (ASIC)
for the PCMCIA-to-ATA bridge and additional packaging costs.
�
� � � � � Most large disk drives today have a true
ATA interface that is an industry standard in the PC realm. However, a true ATA
interface, rather than a PCMCIA-ATA interface, in the embedded-processor arena
is unknown.
Description
� � � � � The disclosed method is a true ATA
PIO mode-4 interface for a 32-bit RISC wireless processor to a standard IDE
hard drive using the processor’s built-in PCMCIA controller pins. To utilize large ATA disk
drives and leverage ATA drivers already in place in software that runs on the
processor, an interface from the processor directly to the drive with minimal
glue logic can be implemented. This interface uses the actual pins from the
processor’s PCMCIA control logic block but with the PCMCIA manager services
software stack and the unused PCMCIA pins removed from the system (such as card
detect, extra address lines, and extra control lines). The software enables the
registers that indicate a card is in place, enabling the pins and bypassing the
entire card services stack.
�
� � � � � The memory bus (address/data) and PCMCIA
control pins hook up to implement the ATA interface (see Figure 1). The
illustration indicates all the required hardware and logic to communicate with
the hard disk...