CompactFlash (CF) was originally a type of data storage device (memory cards or microdrives), usually used in portable electronic devices. First introduced by SanDisk Corporation in 1994. The physical format is now used for a variety of devices. There are two main subdivisions of CF cards, Type I and the slightly thicker Type II cards. There are three main speeds of cards including the original CF, CF High Speed (using CF+/CF2.0), and CF3.0 standard.
CF was among the first flash memory standards to compete with the earlier and larger PC Card (PCMCIA) Type I memory cards, and was originally built around Intels NOR-based flash memory, though it switched over to NAND.
Shown looking into card
In addition to this pinout, in DMA/UDMA transfers from/to new CompactFlash cards, pin 43 is DMARQ (output from CF), pin 44 is DMACK# (input to CF)
CF cards can be plugged directly to PC Card (PCMCIA) slot with a plug adapter, and with a reader, to any number of common ports like USB or FireWire.
CompactFlash defines a physical interface which is smaller than, but electrically identical to, the PCMCIA-ATA interface. That is, it appears to the host device as if it were a hard disk of some defined size and has a tiny IDE controller onboard the CF device itself. The connector is about 43 mm wide, and the case is 36 mm deep and comes in two standard thicknesses, CF I (3.3 mm), and CF II (5 mm). Both types are otherwise identical. CF I cards can be used in CF II slots, but CF II cards are too thick to fit in CF I slots. Flash memory cards are usually CF I.
Flash memory devices are non-volatile and solid state, and thus are more robust than disk drives, and consume around 5% of the power required by small disk drives, and yet still have good transfer speeds (up to 20 Mbyte/s write and 20 Mbyte/s read for the SanDisk Extreme III). They operate at 3.3 volts or 5 volts, and can be swapped from system to system. CF cards with flash memory are able to cope with extremely rapid changes in temperature. Industrial versions of flash memory cards can operate at a range of -45 to +85 °C.
CF combines features from ISA bus, 16-bit PCMCIA, and ATA/IDE buses. It can appear as I/O mapped, memory mapped, or as an IDE device. The IDE mode is always 16-bit, but I/O and memory modes can present data as 8 or 16-bits. These features make it the most flexible choice, allowing it to be used by devices other than the PC - such as 8-bit processors in consumer electronics.
The memory-mapped mode occupies 1K of address space, the top half containing the selected page of data.
- You can access all data on the card, through 8 or 16 bit data bus.
- L = Low logic
- H = High logic
- NC = No Connection
- NU = Not Used
- D08-D15 required only for 16 bit access and not required when installed in 8-bit systems.
1. Devices should allow for 3-state signals not to consume current.
2. Should be grounded by the host.
3. Should be tied to VCC by the host.
4. Optional for CF+ Cards, required for CompactFlash Storage Cards.
* indicates active low signal
|GND||Ground reference voltage.|
|VCC||Power rail, usually 3V3, but can be 5V. The Compact Flash FAQsays:
CompactFlash cards support both 3.3V and 5V operation and can be interchanged between 3.3V and 5V systems. This means that any CF card can operate at either voltage. Other small form factor flash cards may be available to operate at 3.3V or 5V, but any single card can operate at only one of the voltages
This seems to give permission to wire CF cards into 5V systems. This would also be a wise design choice in the CF spec, because consumers avoid the hassle of making sure they have the right voltage card.
Sandisks design page has a freeware ATA Driver / FAT File System, and a circuit diagram for an IDE to CF adapter. The latter has no buffers, so it might be wise to avoid loading it with long drive cables.