Embedded Open Modular Architecture/EOMA-68/FAQ

From eLinux.org
Jump to: navigation, search

This section is more informal than the specification. Its main purpose is to highlight, from key conversations held on the Internet, what is special about EOMA-68 when compared to other standards.

OK, but why do you want EOMA to be installed/removed more often - I want to understand why granny would want to do this?

  • " SO-DIMM sockets have a lifecycle of about .... something like 25 cycles *total*. Maybe not Granny but a professional who has an EOMA-68-compliant Digital SLR Camera, as well as an EOMA-68-compliant smartphone, tablet, laptop, and 30in LCD monitor at work and a games console at home. They might end up inserting/removing their EOMA-68 CPU Cards up to 10 times a *day*. The potential here is *huge*. it covers virtually every mass-volume electronics system you can think of, in the world. With the exception of the hard-core gaming industry, the high-end server market, high-end / real-time video editing Industry and ... err... i run out of examples where EOMA-68 could not be used. oh yeah: portable watches :)"
  • http://lists.phcomp.co.uk/pipermail/arm-netbook/2012-October/005796.html
  • From: http://ibot.rikers.org/%23arm-netbook/20120929.html.gz @ 18:57.53 (slightly reformatted)

Why are the interfaces in EOMA-68 mandatory?

  • EOMA-68 is a mass-volume user standard, not a factory-installation standard. Imagine a situation where a customer buys a CPU Card where there was no support for SATA, for example. They would be extremely annoyed when plugging it in to a laptop, desktop or NAS box with an SATA drive, to find that the very expensive internal hard drive was inaccessible. This would result in returns of products, threatening the viability and acceptability of the standard.
  • About the only situation where not supporting some of the interfaces would be acceptable is a "pass-through card", especially one that's pre-installed, say in an LCD product that can be upgraded to a TV or a PC. Under these circumstances, not putting on an SATA pass-through socket would for example be reasonable, especially if that LCD product did not have a built-in SATA drive. However, a "general-purpose" pass-through card not associated with a specific product really should be sold with an eSATA socket, RJ45 connector, USB connector and a DVI, HDMI or other video input along with conversion internally to 24-pin RGB/TTL, in order to comply with the EOMA-68 specification.

Why are there so many pins dedicated to the LCD? 28 pins out of 68 is a lot: surely some other interface such as composite video (VGA) could be used for example?

  • VGA is surprisingly power-hungry as it is 75 ohms, and, at higher resolutions the analog R,G,B lines would be running at exceptionally high frequencies. A 24-pin parallel digital bus runs at much lower speeds, using less power. Additionally, the EOMA-68 Standard is designed for use for devices with LCD panels all the way from around 320x240 all the way up to 1920x1080 if the CPU supports that rate. If the standard required Composite Video, the cost of the ICs for converting from RGB/TTL to VGA plus the cost of converting back from VGA into RGB/TTL would threaten the viability of a low-cost product due to the additional cost. The larger products can however much easier absorb the cost of an LVDS converter IC. So the main reasons are: economics of scale. Also, the remaining 40 pins are perfectly sufficient for providing general-purpose "multi-peripheral" interfaces (I2C, SATA, Ethernet, USB).

We have a device where we want to save cost by assuming that all CPU Cards will come with the same ports as the very first CPU Card (the Allwinner A10). Is that ok?

  • It would be best not make any such assumptions when developing products. Future CPU Cards will include, for example, a built-in 3G antenna at the end (just as there are now with 3G cards for the legacy PCMCIA standard), where it will be important to keep any metal away from the antenna. Such CPU Cards could not have metal connectors like HDMI, or USB-OTG or Micro-SD; Micro-SD, just like with the SIM Card, would have to be top-loaded through the case. Products should be designed with this in mind. Realistically, however, end-users will clearly be able to see from the specification of a particular CPU Card what connectors it has.

Could you please modify the EOMA-68 Standard so that it at least requires Micro-SD, or HDMI, or USB-OTG?

  • Taking each of these in turn, the answer has to be no, each for different reasons:
  • HDMI - some ultra-low-cost SoCs only have one video output (usually RGB/TTL LCD out). The cost of an RGB/TTL LCD to HDMI Converter IC is often $5 and requires a $50,000 HDMI License! To require an HDMI output, apart from R.F. interference with a 3G CPU Card's antenna, would make such low-cost SoCs prohibitively expensive.
  • USB-OTG - again: many ultra-low-cost SoCs only have USB2. Whilst many of them have 2 USB2 interfaces, if one came along which only had 1x USB interface, then if USB-OTG user-facing was part of the EOMA-68 Standard it would be necessary to put down a $1.50 USB-OTG Hub IC and other components, automatically eliminating any competitive advantage of using that lower-cost SoC in the first place.
  • Micro-SD here it is different, but the same story. Even Micro-SD is quite wide (16mm) so in cases where a 3rd party EOMA-68 CPU Card Manufacturer makes a card with many connectors on the end, there simply may not be space for Micro-SD, and they may choose to make the Micro-SD "top-loading", or even leave it out altogether and use NAND Flash only.

We heard that EOMA-68 is restricted to very low screen resolutions, and that 1080p is not supported.

This is completely and utterly false. There is no lower limit and there is no upper limit on EOMA-68. EOMA-68 places no limits on the speed or resolutions of the SoCs that are used, however, as explained in the section on Recommendations for RGB/TTL, it is advised that SoCs be used which can at least support 1920x1080 over their RGB/TTL interface.

So, a low-cost SoC such as the Ingenic Jz4760 (or even earlier) and also many "mobile" SoCs are limited to around 1280x768 and in some cases even less. The S5PC100 for example was known for not having a particularly stable RGB/TTL output, resulting in significant noise if used with a 1366x768 LCD screen, and had to be restricted for use with only 1024x768 LCDs or slower. Such devices would, clearly, simply be unable to cope if plugged into a chassis that had a 1920x1080 LCD or bigger.

To repeat, however: there is no limit on EOMA-68. The limits are down to what the CPUs themselves can do, and, as such, CPU Card Designers should really choose SoCs that have as wide a range of RGB/TTL resolutions as possible. Realistically that means 1920x1080.