Overview of SoC options


Yes, but is that a bad thing? We can load most of the heavy access stuff into RAM, can we not?
Depends. If you're loading a zipped ROM that's like 250MB it can make a huge difference. Same goes for program/PND load time in general. The OS will keep disk accesses cached in RAM but there's obviously a limit to how much that'll be retained, and if you want it preloaded somehow you'll probably have to manage that manually.

Boot time or full suspend/restore time are going to be impacted no matter what, you can't keep that in RAM. Same with copying things to/from the device, if a fast USB3 connection doesn't end up being the bottleneck instead.

For what it's worth, the eMMC on my Chromebook benches at around 50MB/s read, which while considerably better than what you get with the Pandora's internal NAND is well below the fastest SD card speeds given a suitable interface. Having twice the bus width is only part of the story, what it's clocked at and what the access times are like is also pertinent.
 
Last edited by a moderator:
Boot time or full suspend/restore time are going to be impacted no matter what, you can't keep that in RAM. Same with copying things to/from the device, if a fast USB3 connection doesn't end up being the bottleneck instead.
I realized this would be impacted. However, a handheld device is meant to be opened and closed for quick sessions. Even with a fast boot, it is more economical for a handheld device to sit in Suspend-to-RAM while it is not in use. That being said, a longer boot time (and longer Suspend-to-Disk time) does not seem unreasonable in that case.

For what it's worth, the eMMC on my Chromebook benches at around 50MB/s read, which while considerably better than what you get with the Pandora's internal NAND is well below the fastest SD card speeds given a suitable interface. Having twice the bus width is only part of the story, what it's clocked at and what the access times are like is also pertinent.
So if we don't get the right eMMC, then it would offer absolutely no benefit over a microSD solution?

-God Ginrai
 
I realized this would be impacted. However, a handheld device is meant to be opened and closed for quick sessions. Even with a fast boot, it is more economical for a handheld device to sit in Suspend-to-RAM while it is not in use. That being said, a longer boot time (and longer Suspend-to-Disk time) does not seem unreasonable in that case.
All I know is that the wait time for unzipping large files to memory is a huge deal, and you only need to go through a few of them to exhaust the most optimistic scenarios of disk cache. For anything else, I wouldn't dictate how you think people will use it based on how you use other handheld devices. People have been known to actually sit down and work on a Pandora for hours.

So if we don't get the right eMMC, then it would offer absolutely no benefit over a microSD solution?
Or from the other point of view, if you don't get the right microSD it would be slower than an eMMC solution. You pay a huge premium for the fastest SD cards. Prices have to be known on both sides before this comparison can really be properly made.
 
Last edited by a moderator:
Maybe we should get an eMMC that is as fast as possible for a reasonable price (it does not necessarily have to be large, just 4GB or so will do, to fit a basic distro) and a microSD slot behind the battery. No need to ship a microSD card with the device, you would only use it to get more internal storage. And if in the future, very fast microSD cards become available and cheap, you can use that instead of the eMMC.

It would be really cool to have a fast eMMC and a hidden microSD slot (even if you need to open the case with a screwdriver to access it) and two full SD slots. Can the SoC handle that? Of course board space is also an issue.
 
Or from the other point of view, if you don't get the right microSD it would be slower than an eMMC solution. You pay a huge premium for the fastest SD cards. Prices have to be known on both sides before this comparison can really be properly made.
For the purposes of this conversation, it's probably acceptable to work off of baselines. One of the fastest retail microSD cards for use as a baseline for the example. These read at 89MB/s and write at 58.51MB/s per the testing at: http://www.storagereview.com/toshiba_microsd_class_10_uhsi_review


This is at or near the upper bounds of quality and price for microSD media. I.e. it's a 'worst case' scenario for price, but would have the best chance of competing with eMMC for speed.


There is no 8GB version of this card.


16GB version $30: http://www.amazon.com/SanDisk-Extreme-microSDHC-Adapter-SDSDQX-016G-AFFP-/dp/B00DM1BGEI


32GB version $46: http://www.amazon.com/SanDisk-Extreme-microSDHC-Adapter-SDSDQX-032G-U46A/dp/B00D6XXL7M


64GB version $92: http://www.amazon.com/SanDisk-Extreme-microSDHC-Adapter-SDSDQX-064G-U46A/dp/B00D6XTMFC


So - what is the best of breed eMMC to compare to?
 
It would be really cool to have a fast eMMC and a hidden microSD slot (even if you need to open the case with a screwdriver to access it) and two full SD slots. Can the SoC handle that?
I think I read it can.
 
Maybe we should get an eMMC that is as fast as possible for a reasonable price (it does not necessarily have to be large, just 4GB or so will do, to fit a basic distro) and a microSD slot behind the battery. No need to ship a microSD card with the device, you would only use it to get more internal storage. And if in the future, very fast microSD cards become available and cheap, you can use that instead of the eMMC.
Why not just have him just use microSD and ship it w/ a 4GB card? Surely that would be cheaper to put in a low-size eMMC and a microSD port.

Also, to use the microSD instead of the eMMC, won't you need something that you can switch to make the hardware choose to try to boot from the microSD instead of the eMMC? Wouldn't that add more complexity? What would the actual benefit of that be?

-God Ginrai
 
Last edited by a moderator:
Maybe we should get an eMMC that is as fast as possible for a reasonable price (it does not necessarily have to be large, just 4GB or so will do, to fit a basic distro) and a microSD slot behind the battery. No need to ship a microSD card with the device, you would only use it to get more internal storage. And if in the future, very fast microSD cards become available and cheap, you can use that instead of the eMMC.

It would be really cool to have a fast eMMC and a hidden microSD slot (even if you need to open the case with a screwdriver to access it) and two full SD slots. Can the SoC handle that? Of course board space is also an issue.
Great idea.  I don't think it will work.  From what I can tell, you can't have 4.  

The OMAP5 has one SD/eMMC interface and two SDIO interfaces.

http://images.anandtech.com/doci/4153/omap5.png

It should be possible to use the eMMC as a  semi-limited function (just memory) microSD interface OR as an eMMC interface, but not both.  Bonus - the chip likely sees this as it's default boot source.

The SDIO interfaces are assumed to be slated for use as SD card slots - though in the diagram they're both assigned to wireless.  I'm not sure if we'll need the SDIO on the WiLink or if that gets covered just by the UART for our needs.
 
Maybe we should get an eMMC that is as fast as possible for a reasonable price (it does not necessarily have to be large, just 4GB or so will do, to fit a basic distro) and a microSD slot behind the battery. No need to ship a microSD card with the device, you would only use it to get more internal storage. And if in the future, very fast microSD cards become available and cheap, you can use that instead of the eMMC.
Why not just have him just use microSD and ship it w/ a 4GB card? Surely that would be cheaper to put in a low-size eMMC and a microSD port.


Also, to use the microSD instead of the eMMC, won't you need something that you can switch to make the hardware choose to try to boot from the microSD instead of the eMMC? Wouldn't that add more complexity? What would the actual benefit of that be?

-God Ginrai
The problem with shipping a cheap microSD card is that it's likely to be slow too if it is cheap. So most people would want to throw it away anyway, which would be a waste.

I don't think it's a problem to boot from different things. It makes sense to make it try to boot from USB, SD, microSD and eMMC, in that order.

I have no idea how to read those SoC diagrams, so I won't comment on that.
 
I have no idea how to read those SoC diagrams, so I won't comment on that.
I tried reading the TI docs, but I ended up with a 6000 page document which was a little too complicated for me. :)
But:

That being said, the OMAP5 only has 3 SD controllers, and I'm pretty sure one of them is multiplexed with one of the USB ports and the SATA activity indicator, so decisions are going to have to be made.

edit: scratch that, I forgot about the "eMMC" interface, so yes, four are technically available.
So 3 SD and 1 eMMC are available, but it's not sure what else is wired to the same pins.
 
Great idea.  I don't think it will work.  From what I can tell, you can't have 4.  

The OMAP5 has one SD/eMMC interface and two SDIO interfaces.

http://images.anandtech.com/doci/4153/omap5.png
This picture is not supposed to be an exhaustive feature list. It's just an example configuration for promotional purposes. Read section 24 in the TRM:

http://www.ti.com/lit/ug/swpu249y/swpu249y.pdf

There are five SD-capable ports (MMC1 through MMC5), with one of them being capable of eMMC and the other three capable of external SDIO. However, only of these ports supports 3V, meaning that the others may need some kind of level shifter/transceiver to interface with SD cards. From what I can find SDHC and SDXC cards can run at 1.8V natively so this may not strictly be the case.

Also, apparently only MMC1 has CD (card detect) and WP (write protect) pins so this could be a headache for one of the externally accessible SD slots, maybe they'll have to be wired to a GPIO and monitored in software instead..
 
Last edited by a moderator:
The problem with shipping a cheap microSD card is that it's likely to be slow too if it is cheap. So most people would want to throw it away anyway, which would be a waste.
 With a very quick search on newegg, I found 15 class 10 micro SDHCs for under $10; All of these are either 4 or 8GB. The point is, 4GB is so cheap now, that you can even get fast speeds for cheap. Here's the search:

http://www.newegg.com/Product/ProductList.aspx?Submit=ENE&N=100007962%20600006209%20600082443%204024&IsNodeId=1&Description=microsd&name=%240%20-%20%2410&Order=BESTMATCH

-God Ginrai
 
I have no idea how to read those SoC diagrams, so I won't comment on that.
I tried reading the TI docs, but I ended up with a 6000 page document which was a little too complicated for me. :)

But:

That being said, the OMAP5 only has 3 SD controllers, and I'm pretty sure one of them is multiplexed with one of the USB ports and the SATA activity indicator, so decisions are going to have to be made.


edit: scratch that, I forgot about the "eMMC" interface, so yes, four are technically available.
So 3 SD and 1 eMMC are available, but it's not sure what else is wired to the same pins.

I don't think it would be necessary to go to a really bad 4GB microSD card to make it 'cheap enough'.  It would be -great- if the device were able to use the super-fast beasts I listed earlier, but it could ship with something half the price and still be 'damn good'.

This card has a read of 20MB/sec and a write of 12MB/sec:

16GB for $14.39:  http://www.amazon.com/SanDisk-MicroSDHC-Memory-Adapter-SDSDQU-016G-AFFP-A/dp/B009QZH7D8

Benchmarked at: http://mobilitydigest.com/mobility-digest-review-sandisk-ultra-32gb-microsdhc-uhs-i-memory-card/

For relevance to the measurement - that card reads right at the theoretical limit on the existing Pandora's SD slots.

I'm betting they would be cheaper in bulk.

We still need to know where eMMC modules price at in this comparison.
 
Great idea.  I don't think it will work.  From what I can tell, you can't have 4.  


The OMAP5 has one SD/eMMC interface and two SDIO interfaces.

http://images.anandtech.com/doci/4153/omap5.png
This picture is not supposed to be an exhaustive feature list. It's just an example configuration for promotional purposes. Read section 24 in the TRM:

http://www.ti.com/lit/ug/swpu249y/swpu249y.pdf


There are five SD-capable ports (MMC1 through MMC5), with one of them being capable of eMMC and the other three capable of external SDIO. However, only of these ports supports 3V, meaning that the others may need some kind of level shifter/transceiver to interface with SD cards. From what I can find SDHC and SDXC cards can run at 1.8V natively so this may not strictly be the case.


Also, apparently only MMC1 has CD (card detect) and WP (write protect) pins so this could be a headache for one of the externally accessible SD slots, maybe they'll have to be wired to a GPIO and monitored in software instead..
Really?  5 possible?  Cool...

So the real question winds up being:

How expensive is a 16GB 89MB/sec eMMC module?  Is it more or less than $30 + a microSD slot component?

Is having a microSD slot more or less valuable than a soldered-on eMMC module to the people buying the device?

IMHO, if a microSD slot can handle 100MB/sec and max out current cards then it makes on-board soldered in eMMC obsolete.

I.e. microSD slot shipping with a 16GB 20MB/sec 100MB/sec capable  >  soldered 16GB 60MB/sec eMMC + $20.
 
Also, apparently only MMC1 has CD (card detect) and WP (write protect) pins so this could be a headache for one of the externally accessible SD slots, maybe they'll have to be wired to a GPIO and monitored in software instead..
While this is an annoyance, it's not a *massive* problem. GPIO is one way. Another is polling the card at an interval of say, every second. If the card is gone, you'll notice. If the user managed to change card in that time, you'll find a very confused card that does not want to talk to you until you initialize it. It is obvious though that only one of the interfaces is intended for hot-plug slots.
 
There are five SD-capable ports (MMC1 through MMC5)
According to the data manual, MMC1 is explicitly an SD card interface with the card detect/protect pins as you said, MMC2 is the eMMC interface (which can double as an SD card interface), MMC3 is SDIO with extra features for WLAN, MMC4 is an SDIO interface which can double as a regular SD card interface, and MMC5 doesn't actually exist.And if all 4 are used it means losing the ability to have SATA and IR ports. Probably minor sacrifice.
 
If I'm interpreting this even remotely correct:  http://images.anandtech.com/doci/4153/omap5.png

MMC1 is the left SD slot

MMC2 is the internal eMMC OR internal microSD slot

MMC3 is required for the WLAN functions (802.11 b/g/n)

MMC4 is the right SDIO slot, at the expense of not being able to have 3G/4G connectivity

MMC5 doesn't seem to exist - not sure where this originated?  Or can the MMC/SD controller do 2 connections?

IRDA is controlled by a UART

SATA is it's own component

USB 3.0 OTG is it's own component

(3) USB 2.0 Host appears to be it's own component set

Who can clear up the questions on the MMC/SD whether that is one connection or two?
 
Back
Top