Карты CompactFlash (рис. 9.7), поддерживаемые ассоциацией CFA (Compact Flash association), широко используются в различных электронных приборах: цифровых фотокамерах, фотопринтерах, MP3-плейерах, цифровых диктофонах, персональных коммуникаторах и, конечно же, компьютерах — настольных, карманных, автомобильных. Карты имеют размер 42,8×36,4×3,3 мм (4 мм с учетом выступа) и 50-контактный разъем (розетка на карте, двухрядный штырьковый разъем с шагом 1,27 мм на слоте). Назначение контактов приведено в табл. 9.13. Через переходник с 50 на 68-контактный разъем карты могут устанавливаться в слот PC Card Type II или III, имеющийся практически во всех блокнотных ПК. Объем памяти выпускаемых в настоящее время карт — от 4 Мбайт до 1 Гбайт, напряжение питания — 5 или 3,3 В. Карты могут работать в одном из трех режимов: карт памяти (Mem), карт ввода-вывода PC Card (I/O), «чистого» режима IDE (ATA). В первых двух режимах карты работают с теми же интерфейсными сигналами, что и PC Card. В режиме IDE электрический интерфейс и система команд полностью совместимы со спецификацией ATA (см. п. 9.2.1), правда, обмен данными возможен только в режиме PIO. Режим IDE выбирается заземлением на стороне хоста сигнала ATA_SEL#. При этом из шины адреса используются только А[2:0] (остальные заземлены хостом); шина данных при обращениях к регистрам ATA имеет разрядность 8 бит, а при передаче данных — 16. Сигналы CS0# и CS1# используются для выбора блока командных и управляющих регистров соответственно. Сигналы PDIAG#, DASP#, CSEL#, RESET# и IORDY соответствуют спецификации ATA. Сигналом CSEL# выбирается роль карты: при заземленном контакте — устройство 0 (master), при разомкнутом — устройство 1 (slave); можно воспользоваться и «кабельной выборкой». Сигналы REG# и WE# должны подключаться к шине питания (Vcc). Сигналы CD1# и CD2# являются индикаторами установки карты (их контакты замыкаются последними, на карте они заземлены). В табл. 9.14 описан чисто пассивный переходник, позволяющий подключить карту Compact Flash к обычному порту ATA (IDE), имеющемуся на любой современной системной плате.
Рис. 9.7. Карты CompactFlash
Таблица 9.13. Назначение контактов карт CompactFlash
| № | Mem | I/O | IDE | № | Mem | I/O | IDE |
|---|---|---|---|---|---|---|---|
| 1 | GND | GND | GND | 26 | CD1# | CD1# | CD1# |
| 2 | D03 | D03 | D03 | 27 | D11 | D11 | D11 |
| 3 | D04 | D04 | D04 | 28 | D12 | D12 | D12 |
| 4 | DOS | DOS | DOS | 29 | D13 | D13 | D13 |
| 5 | D06 | D06 | D06 | 30 | D14 | D14 | D14 |
| 6 | D07 | D07 | D07 | 31 | D15 | D15 | D15 |
| 7 | CE1# | CE1# | CS0# | 32 | CE2# | CE2# | CS1# |
| 8 | A10 | A10 | A10 | 33 | VS1# | VS1# | VS1# |
| 9 | OE# | OE# | ATA_SEL# | 34 | IORD# | IORD# | IORD# |
| 10 | A09 | A09 | A09 | 35 | IOWR# | IOWR# | IOWR# |
| 11 | A08 | A08 | A08 | 36 | WE# | WE# | WE# |
| 12 | A07 | A07 | A07 | 37 | RDY/BSY | IREQ | INTRQ |
| 13. | VCC | VCC | VCC | 38 | VCC | VCC | VCC |
| 14 | A06 | A06 | A06 | 39 | CSEL# | CSEL# | CSEL# |
| 15 | A05 | A05 | A05 | 40 | VS2# | VS2# | VS2# |
| 16 | A04 | A04 | A04 | 41 | RESET | RESET | RESET# |
| 17 | A03 | A03 | A03 | 42 | WAIT# | WAIT# | IORDY |
| 18 | A02 | A02 | A02 | 43 | INPACK# | INPACK# | INPACK# |
| 19 | A01 | A01 | A01 | 44 | REG# | REG# | REG# |
| 20 | A00 | A00 | A00 | 45 | BVD2 | SPKR# | DASP# |
| 21 | D00 | D00 | D00 | 46 | BVD1 | STSCHG# | PDIAG# |
| 22 | D01 | D01 | D01 | 47 | D08 | DOS | DOS |
| 23 | D02 | D02 | D02 | 48 | D09 | D09 | D09 |
| 24 | WP | IOIS16# | IOCS16# | 49 | D10 | D10 | D10 |
| 25 | CD2# | CD2# | CD2# | 50 | GND | GND | GND |
Таблица 9.14. Переходник CompactFlash Card — ATA
| ATA, конт. № | Цепь | CFC, конт. № | CFC, конт. № | Цепь | ATA, конт. № |
|---|---|---|---|---|---|
| 2 | GND | 1 | 26 | CD1# | - |
| 11 | D03 | 2 | 27 | D11 | 10 |
| 9 | D04 | 3 | 28 | D12 | 12 |
| 7 | D05 | 4 | 29 | D13 | 14 |
| 5 | D06 | 5 | 30 | D14 | 16 |
| 3 | D07 | 6 | 31 | D15 | 18 |
| 37 | CS0# | 7 | 32 | CS1# | 38 |
| GND¹ | A10 | 8 | 33 | VS1# | - |
| GND¹ | ATA_SEL# | 9 | 34 | IORD# | 25 |
| GND¹ | A09 | 10 | 35 | IOWR# | 23 |
| GND¹ | A08 | 11 | 36 | WE# | +5V² |
| GND¹ | A07 | 12 | 37 | INTRQ | 31 |
| +5V² | VCC | 13 | 38 | VCC | +5V² |
| GND¹ | A06 | 14 | 39 | CSEL# | 28³ |
| GND¹ | А05 | 15 | 40 | VS2# | - |
| GND¹ | А04 | 16 | 41 | RESET# | 1 |
| GND¹ | A03 | 17 | 42 | IORDY | 27 |
| 36 | А02 | 18 | 43 | INPACK# | - |
| 33 | А01 | 19 | 44 | REG# | +5V² |
| 35 | A00 | 20 | 45 | DASP# | 39 |
| 17 | D00 | 21 | 46 | PDIAG# | 34 |
| 15 | D01 | 22 | 47 | D08 | 4 |
| 13 | D02 | 23 | 48 | D09 | 6 |
| 32 | IOCS16# | 24 | 49 | D10 | 8 |
| - | CD2# | 25 | 50 | GND | GND¹ |
¹ С шиной GND должны быть соединены контакты 2, 19, 22, 24, 26, 30 и 40 разъема ATA, а также контакт разъема питания.
² Питание +5V на переходник подается от дополнительного разъема.
³ Возможно подключение не к разъему ATA, а к шине GND через джампер: замкнут — ведущее устройство, разомкнут — ведомое.
9.3.2. SmartMedia Card