Embedded Open Modular Architecture/CompactFlash

From eLinux.org
< Embedded Open Modular Architecture
Revision as of 16:51, 20 May 2017 by Lkcl (talk | contribs) (Table of EOMA-CF pinouts)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


page under development.

this standard is primarily designed for ultra-low-cost systems as well as those where space is at a premium. because of this, specifying MIPI as the LCD standard would be inappropriate, as indeed would eDP. even in cases where the SoC does not have LVDS, a low-cost RGB/TTL to LVDS IC is available such as the [TI SN75LVDS83b](http://www.ti.com/product/sn75lvds83). so for the low end market, connection to 320x240 (or even smaller) LCDs is directly possible via RGB/TTL, and for the high-end market conversion via LVDS or MIPI ICs is possible on the other side of the interface (e.g. via the [SSD2828](http://www.solomon-systech.com/en/product/display-ic/mipi-master-bridge-chip/ssd2828/).

the edge of the CF card can have as many connectors as will fit into a 43mm width. Micro-HDMI Type D, USB-OTG and a 2.5mm 4-pin Headphone Jack can be considered. A MicroSD slot could be placed on one of the side edges (requiring the module to be removed and switched off in order to access it, as is the case with most mobile phones).


TODO: ensure no clash with power pins http://pinouts.ru/Memory/CompactFlash_pinout.shtml

These pinouts make no attempt to be electrically or electronically compatible with the existing CompactFlash standard. 16 GPIO pins, 15-pin RGB/TTL for LCD, USB2, USB3, USB3.1 (full 10gbit/sec 2-lanes), I2C, SD/MMC, SPI and UART interfaces are included in the Version 1.0 specification. Note: USB2 and USB3 must support auto-negotiation, and must support the lower capabilities (USB 1, USB 1.1, USB 2, USB 3.0). Higher speeds and capabilities are optional.

Two 5.0v power inputs must be provided: all pins are rated at 0.5 amps, so the maximum power dissipation is limited to 5 watts. Design consideration: please note that to ensure that thermal dissipation in an enclosed fanless situation is not exceeded, a maximum of 3.5 watts should be respected. Most systems will not have active cooling.

All High-speed signals (USB2, USB3, USB3.1) are balanced lines that are still separated using GND or Power pins. All other pins are low frequency.

The typical voltages of the RGB/TTL LCD lines should be compatible with a Texas Instruments SN75LVDS83b and must be 5V TTL tolerant. All GPIO should use VREFTTL as the reference voltage for Digital I/O. Pull High (logic level 0) must use VREFTTL for example.

Also, because the GPIO pins can be reconfigured individually bi-directional for any digital purposes, they *must* be made to be 5V TTL tolerant and tri-state isolated, and Motherboards also must be 5.0v TTL tolerant as well as tri-state isolated.

The maximum LCD Resolution supported must be at least 1440x900 @ 60fps, however there is no restriction on reducing the number of bits per pixel (to 8bpp or even to monochrome) if a particular low-cost SoC has severe video bandwidth limitations in achieving that resolution. There must be no limit on the minimum LCD resolution. A CPU Card may output less than the number of bits per pixel (5 bits) however unused lower bits must not be left floating: they must output stable levels (0 or 1 as appropriate).

Table of EOMA-CF pinouts

Row 1 Row 2
* 1 LCD Pixel Data bit 3 (Red3) * 26 LCD Pixel Data bit 4 (Red4)
* 2 LCD Pixel Data bit 5 (Red5) * 27 LCD Pixel Data bit 6 (Red6)
* 3 LCD Pixel Data bit 7 (Red7) * 28 LCD Pixel Data bit 11 (Green3)
* 4 LCD Pixel Data bit 12 (Green4) * 29 LCD Pixel Data bit 13 (Green5)
* 5 LCD Pixel Data bit 14 (Green6) * 30 LCD Pixel Data bit 15 (Green7)
* 6 LCD Pixel Data bit 19 (Blue3) * 31 LCD Pixel Data bit 20 (Blue4)
* 7 LCD Pixel Data bit 21 (Blue5) * 32 LCD Pixel Data bit 22 (Blue6)
* 8 LCD Pixel Data bit 23 (Blue7) * 33 LCD Pixel Clock
* 10 GPIO (0) / SDMMC-D3 * 35 GPIO (1) / SDMMC-D2
* 11 GPIO (2) / UART-TX * 36 GPIO (3) / UART-RX
* 12 GPIO (4) / SDMMC-CMD * 37 GPIO (5) / SDMMC-CLK
* 13 GPIO (6) / SDMMC-D0 * 38 GPIO (7) / SDMMC-D1
* 14 I2C Clock (SCL) * 39 I2C Data (SDA)
* 15 GPIO (10) / PWM * 40 LCD Vertical Synchronization
* 16 LCD Horizontal Synchronization * 41 LCD Pixel data enable (TFT) output
* 17 GPIO (12) / SPI_MISO * 42 GPIO (13) / SPI_MOSI
* 18 GPIO (14) / SPI_SCK * 43 GPIO (15) / EINT1
* 19 ---- not used ---- / 1st USB3 SSRXn1 * 44 ---- not used ---- / 1st USB3 SSRXp1
* 20 ---- not used ---- / 1st USB3 SSTXn1 * 45 ---- not used ---- / 1st USB3 SSTXp1
* 21 ---- 1st USB2 (Data-) * 46 ---- 2nd USB2 (Data+)
* 22 ---- GPIO (16) / EINT2 * 47 ---- GPIO (17) / EINT3
* 23 GPIO (11) / EINT0 * 48 VREF-TTL (GPIO TTL Voltage Reference)
* 24 PWR (5.0V) * 49 PWR (5.0v)
* 25 2nd USB2 (Data-) * 50 2nd USB2 (Data+)

Example CPU Card

A10 compact flash.png

This example CPU Card shows what is possible. It comprises an Allwinner A10 (Cortex A8), 2 DDR RAM ICs, 2 NAND Flash ICs, an AXP209 PMIC, an RTL8120 10/100 Ethernet PHY, yet leaves enough room for Micro-HDMI, USB-OTG and a Headphone socket. Missing from this diagram is where to put a MicroSD slot (hence the "under development" sign on this page). Potentially it could go on the underneath side (BOTTOM).

Prevention of insertion of standard CF Cards

To stop EOMA/CF cards from being inserted into standard CF slots, it will probably be necessary for the EOMA/CF cards to be a little bit thicker than standard CF cards, and potentially slightly wider at the very end (nearest the sockets). This would limit the number of sockets that could be used, however examination of some of 3M's sockets shows that the ejector mechanism is only down one side.