# CompactFlash

CompactFlash (CF) ist ein Schnittstellenstandard, unter anderem für digitale Speichermedien. Er kommt in Form von CF-Karten hauptsächlich in digitalen Fotoapparaten, aber auch in Netzwerkkomponenten, Computern und Personal Digital Assistants (PDA) zum Einsatz.

## Aufbau

Die CompactFlash-Speicherkarten sind im Gegensatz zu Festplatten oder CD-Laufwerken üblicherweise Speichermedien ohne bewegliche Teile. Die Informationen werden auf einem wiederbeschreibbaren Flash-Speicher dauerhaft gespeichert. IBM produzierte allerdings zwischenzeitlich CF-II-Karten mit kleinen Festplatten als Speichermedium. Dieses Produkt wurde unter der Bezeichnung Microdrive bekannt und hatte den Vorteil eines besseren Preis-Leistungs-Verhältnisses. Später gab es auch andere Hersteller festplattenbasierender CF-Karten. Wegen des Preisverfalls von Flash-Speicher sind diese Lösungen allerdings zwischen 2005 und 2006 praktisch vollständig vom Markt verschwunden.
CompactFlash-Karten mit Flash-Speicher haben neben dem eigentlichen Speicherchip noch einen Controller, der den Speicher verwaltet und nach außen eine (E)-IDE-Schnittstelle anbietet, die sich allerdings in der Form des Steckers von herkömmlichen IDE-Schnittstellen unterscheidet. Im Gegensatz zu allen anderen Flash-basierten Speicherkarten, außer der SD-Karte, ist für die Adressierung des eigentlichen Speichers der karteninterne Controller und nicht das Endgerät (etwa die Digitalkamera) zuständig. Die recht komplizierten Details der Flash-Speicher-Ansteuerung bleiben daher gegenüber dem Host-Gerät verborgen. Bei vorhandener Unterstützung seitens des Speichers für ein Dateisystem, das mehr Speicher adressieren kann (wie FAT32 gegenüber FAT16), können CF-Karten mit hoher Kapazität auch von alten Geräten gelesen werden. Die Kontakte sind geschützt untergebracht.

## Verbreitung

Bei digitalen Speichermedien (für Digitalkameras) war die CompactFlash-Technologie lange Zeit wegen ihrer hohen Geschwindigkeit Marktführer, wird aber seit den späten 2000er Jahren zunehmend von der SecureDigital-Card (SD) verdrängt. 2010 unterstützen professionelle digitale Spiegelreflexkameras in der Regel keine CompactFlash-Karten mehr. Bei älteren Kameramodellen mit CF-Speichern kann ein Adapter von Compact Flash auf Micro SD eingesetzt werden.

## Anwendungsgebiete

Am häufigsten sind CompactFlash-Karten wohl als Speichermedium in Digitalkameras anzutreffen, hier vor allem im professionellen Bereich wie der Pressefotografie. Auch die professionelle digitale mobile Audioaufzeichnung arbeitet quasi immer mit CompactFlash, wenn aus Platz-, Energie- oder Witterungsgründen keine Festplatten- oder Disc-Systeme verwendet werden.
Im Kartenplotter für die Sportschifffahrt wurden früher CF-Karten verwendet.
Da sie keine beweglichen Teile besitzen, sind CompactFlash-Karten relativ unempfindlich gegenüber Stößen und eignen sich daher für den Einsatz in Industrie- oder Mobil-Systemen. Häufig werden sie dort als einziger Festspeicher benutzt. Die Industriecomputer einiger Hersteller können wahlweise mit fest integriertem CompactFlash-Slot oder IDE-Port konfiguriert werden. In diesem Fall wird die CompactFlash-Karte meist neu partitioniert und mit einem anderen Dateisystem als dem standardmäßig ausgelieferten formatiert. Für Linux- oder QNX-Systeme ist das gängige Praxis.

## Adapter
### Andere Karten nach CompactFlash

Für den CompactFlash-Steckplatz gibt es Adapter, mit denen andere Speicherkarten genutzt werden können. So können etwa Multimedia Cards, SDHC- und microSDXC-Speicherkarten in Geräten mit CompactFlash-Steckplätzen verwendet werden. Was die Abwärtskompatibilität zu kleineren Speicherkarten angeht, weist CompactFlash die größte Flexibilität für zukünftige Speichergrößen auf, weil nur der Controller des verwendeten Adapters und die Größe der verwendeten Karte die benutzbare Speichergröße begrenzen. Einschränkungen bestehen bei älteren Geräten, da diese teilweise nur FAT16 unterstützen und die Kapazität der Speicherkarte somit softwareseitig auf 8/16 GB beschränken.

### CompactFlash nach IDE

Da die CompactFlash-Karte eine IDE-Schnittstelle besitzt, reicht ein passiver Adapter (also ein Stück Leiterplatte mit Leitungen, die die Kontakte der Karte mit den entsprechenden Pins eines IDE-Steckers verbinden), um sie anstelle einer IDE-Festplatte einsetzen zu können (siehe Vergleich). In Desktop-Rechnern benötigt der Adapter zudem einen Stecker für die Stromversorgung der Karte, die dem dort eingesetzten IDE-Flachbandkabel fehlt. Weil die 44-Pin-Version der IDE-Schnittstelle von Notebooks eine Spannungsversorgung vorsieht, ist der Einsatz an Stelle einer Festplatte sowie mittels PC-Card/PCMCIA-Adapter ohne zusätzliche Stromversorgung möglich. In das 40-polige ZIF-Kabel, das in einigen Subnotebooks die Verbindung zur Festplatte oder SSD herstellt, ist die Stromversorgung ebenfalls integriert.
Einige Karten geben sich als Wechseldatenträger (removable) zu erkennen, was manche Betriebssysteme und Programme dazu veranlasst, eine Installation darauf zu verweigern. Diese Kennung ist bei manchen Karten umstellbar.

## Standards
### Bauformen

* CF-Typ I (36,4 mm × 42,8 mm × 3,3 mm)
* CF-Typ II (36,4 mm × 42,8 mm × 5,0 mm), mitunter als „Microdrive-kompatibel“ bezeichnet, da alle Microdrives Typ-II-Karten sind.
Der einzige Unterschied ist die Dicke der Bauform. Daher funktionieren Typ-I-Karten auch in einem Typ-II-Slot.

### Interface

Während die äußere Form unverändert blieb, wurden die CF-Standards an fortschreitende Kapazitäten und Bandbreiten angepasst.
* CompactFlash 1.0 (1994/1995)
** 8,3 MB/s (PIO Mode 2)
** 128 GB (137 GB) mögliche Kapazität, wie bei IDE
* CompactFlash+, auch CompactFlash I/O (1997)
** Karten, die keine Speicherfunktion haben, sondern beispielsweise Radioempfang ermöglichen.
* CF+ und CompactFlash 2.0 (2003)
** 16,6 MB/s (PIO Mode 4)
** Ende 2003 wurde die Integration stark beschleunigender DMA-Zugriffe beschlossen; bei CF 2.0-Karten ab Mitte 2004 integriert.
* CF+ und CompactFlash 3.0 (2004)
** 66 MB/s (UDMA 66)
** 25 MB/s im PC-Card-Modus
** Karte per Passwort schützbar
** CFA empfiehlt FAT32 für Karten mit Speicherkapazitäten von mehr als 2 GB, ohne jedoch FAT32 vorzuschreiben
* CF+ und CompactFlash 4.0 (2006)
** 133 MB/s (UDMA 133)
** Karte per Passwort schützbar
* CF+ und CompactFlash 4.1 (2007)
** Erweiterte Energiesparmodi
* CompactFlash 5.0 (2010)
** 48-Bit-Sektoradressierung über LBA-48 (obligatorisch). Dadurch wird die bisherige Grenze von 128 GiB (137 GB) aufgehoben. Karten können theoretisch bis 128 PiB (144 PB) fassen. Außerdem Beschleunigung durch Übertragung von bis zu 32 MiB großen Blöcken statt wie bisher in maximal 128 KiB großen Blöcken.
** Trim-Befehl (obligatorisch). Beschleunigt Schreibzugriffe.
** ATA-Befehlssatz ATA-6 & ATA-8/ACS-2 (optional). Anpassung an die Fortschritte des ATA-Standards
** Leistungssteuerung (optional). Garantiert bestimmte Übertragungsraten (wichtig für Live-Streaming oder Video-Aufnahmen)
** Übermittlung der CF-Versionsnummer (obligatorisch). Auf diese Weise kann sich das CF-Gerät einfacher auf die Fähigkeiten der Karte einstellen.
** Veränderte elektrische Spezifikationen (obligatorisch) zu Verbesserung der Kompatibilität mit dem ATA-Standard.
* CompactFlash 6.0 (18. November 2010)
** Ultra DMA Mode 7 für bis zu 167 MB/s
** Sanitize-Löschbefehl entsprechend INCITS T13 ACS-2.
** Trim Usage Guidelines für bessere Schreibperformance.
** Temperaturprofil (optional)
Obige Standards sind auf- und abwärtskompatibel.

### CFast

Mit dem CFast-Standard kommt das schnellere SATA-Protokoll zum Einsatz. Diese Karten sind in den Anschlüssen nicht kompatibel zu den klassischen CompactFlash-Karten.
* CompactFlash ATA Serial Transfer (CFast) 1.0 (2008)
** 300 MB/s (Serial ATA 3.0 Gbit/s)
** Hot Swap
** gleiche Gehäuseabmessungen wie bisher, aber nicht steckkompatibel zu CompactFlash
** normaler SATA-Datenanschluss, proprietärer Stromanschluss
** erste Produkte Ende 2009
* CompactFlash ATA Serial Transfer (CFast) 2.0 (2012)
** 600 MB/s (Serial ATA 6.0 Gbit/s)
** neue Gehäuseabmessungen, vor allem flacher
** erste Produkte planmäßig 2013

### CFexpress

Die logische Fortentwicklung, die aber weder mechanisch noch elektrisch mit der CompactFlash-Schnittstelle kompatibel ist, sondern auf PCIe 3.0 und NVMe aufsetzt, ist CFexpress. Der Standard wurde im September 2016 angekündigt und im April 2017 veröffentlicht.

## Daten verfügbarer CF-Karten

| Kapazität: | 2 MByte … 256 GByte |
| Dateisystem: | Für Speicherkarten mit weniger als 16 MB kam traditionell oft das Dateisystem FAT12 zum Einsatz, ab 16 MB bis 2 GB wird üblicherweise FAT16 verwendet (seltener auch für Kapazitäten bis 4 GB), für Speicherkapazitäten mit mehr als 2 GB (4 GB) meist FAT32. Prinzipiell können auch beliebige andere Dateisysteme verwendet werden. Da die Controller in den Karten jedoch meist die nach außen sichtbare Festplatten-Emulationsebene so auf den eigentlichen internen Speicherchip abbilden, dass bei einer typischen Verwendung von FAT12/FAT16/FAT32 eine günstige Verteilung des Verschleißes erreicht wird (Wear-Leveling), können andere Dateisysteme die Lebensdauer der Karte reduzieren. |
| Lesen: | 6 … > 150 MByte/s ≙ 40× bis > 1000× (1× entspricht 150 kByte/s, der 1-fachen CD-Lesegeschwindigkeit.) |
| Schreiben: | 4 … > 125 MByte/s |
| Lesezugriff: | < 1 ms |
| Schreibzugriff: | 10 … 35 ms |
| Anschluss: | 50 Pins |
| Spannung: | 3,3 V (±5 %) oder 5 V (±10 %); Alle Karten können mit beiden Spannungen betrieben werden. |
| Strom: | Ruhebetrieb: 0,5 … 1 mA Schreib- und Lesebetrieb: 25 … 50 mA |
| Betrieb bei: | 0 … 60 °C |
| Lagerung bei: | −40 … 85 °C |
| Schockresistenz: | 2.000 g, Microdrives 400 g |
| Schreibzyklen: | 10.000 laut Standard, 1 … 2 Millionen laut Hersteller. Einige Hersteller integrieren Zähler in die Firmware ihrer Karten, um den Verschleiß auf alle Sektoren gleich zu verteilen. Verbrauchte Sektoren werden automatisch als nicht mehr benutzbar markiert. |
Die Angaben variieren je nach Hersteller und Produktreihe, so können Bezeichnungen wie „Professional“, „Ultra“ und „Extreme“ unterschiedliche Qualitäten bezeichnen. Beim Marktführer SanDisk erreichen Ultra-Karten eine Übertragungsrate von über 30 MByte/s (lesen und schreiben) und Extreme Pro-Modelle bis 100 MByte/s (lesen und schreiben). Das Unternehmen Lexar stellte Anfang 2012 ein Modell mit bis zu 150 MB/s (lesen) vor.
Je nach Hersteller wird die Geschwindigkeit entweder als Vielfaches bezogen auf die Lesegeschwindigkeit von CD-ROM-Laufwerken (bei Kingston Technology oder Transcend) oder aber mit der maximalen Datentransferrate (bei SanDisk) deklariert. Die Basiseinheit („1×“) basiert historisch auf der Grund-Geschwindigkeit der CD-ROM-Laufwerke, welche bei 1-facher Lesegeschwindigkeit eine Transferrate von 153,6 kB/s im CD-ROM Mode 1 erreichen, wobei dieser Wert auf 150 kB/s abgerundet wird. Die folgende Tabelle stellt die üblichen Geschwindigkeitsbezeichnungen und maximalen Datentransferraten gegenüber.
| Angabe (x-fach) | Lesegeschwindigkeit (MB/s) |
| 006× | 000,9 |
| 032× | 004,8 |
| 040× | 006,0 |
| 066× | 010,0 |
| 080× | 012,0 |
| 100× | 015,0 |
| 133× | 020,0 |
| 150× | 022,5 |
| 200× | 030,0 |
| 266× | 040,0 |
| 280× | 042,0 |
| 300× | 045,0 |
| 433× | 065,0 |
| 533× | 080,0 |
| 600× | 090,0 |
| 666× | 100,0 |
| 800× | 120,0 |
| 1000× | 150,0 |
| 2000× | 300,0 |

## Andere CF-Geräte

Mit CF I/O bietet CompactFlash die Möglichkeit, neben Speicher auch andere Geräte anzuschließen. Aufgrund der logischen wie mechanischen Ähnlichkeit zum PC-Card-Standard ist es für Hersteller einfach, entsprechende Karten auch als CompactFlash-Variante anzubieten. Die CompactFlash-Einschübe von PDAs werden genutzt, um 56K-, GSM- und GPRS-Modems sowie Bluetooth-, Ethernet- und WLAN-Adapter, GPS- und Radio-Empfänger, Digitalkameras, USB-Host-Adapter und sogar Grafikkarten anzubinden. Solche Adapter sind meist in voller Höhe, also als CF-Typ II ausgeführt.