[poll; updated] eMMC vs. uSD; modular eMMC

What would you prefer?

  • non replaceable eMMC - willing to pay a premium for it

    Votes: 22 24.7%
  • non replaceable eMMC - assuming roughly equal costs for both solutions

    Votes: 21 23.6%
  • uSD - assuming roughly equal costs for both solutions

    Votes: 23 25.8%
  • uSD - willing to pay a premium for it

    Votes: 23 25.8%

  • Total voters
    89

I wouldn't want to sacrifice twice the speed and better latency for the OS , just so you can have 4 removeable storage options as opposed to 3. You can always use one of the 3 options to upgrade the removable storage. You do not lose that ability in the eMMC option.
The better speed and latency are only true for a limited time though. There's no way we will have an eMMC that maxes out the bus speed (even the µSD bus speed) on all operations.

Here are some current market prices from http://en.chinaflashmarket.com/pricecenter/ :

Micro SDHC/SDXC UHS I:

  • 8GB: 3.70
  • 16GB: 6.15
  • 32GB: 12.55
  • 64GB: 32.20
eMMC MLC V4.41 / V4.5:

  • 8GB: 4.45
  • 16GB: 9.00
  • 32GB: 18.50
  • 64GB: 38.00
 
The better speed and latency are only true for a limited time though
The "limited time" is undefined. It could be 6 months or it could be 10 years. You're banking on it being soon but it could be long after EvilDragon has started producing a Pyra2.microSD may be the correct option but it shouldn't be because at some future point it may come to be that it has much better write speeds, not without a lot of evidence that it'll actually happen within a reasonable timeframe.
 
The better speed and latency are only true for a limited time though
The "limited time" is undefined. It could be 6 months or it could be 10 years. You're banking on it being soon but it could be long after EvilDragon has started producing a Pyra2.
microSD may be the correct option but it shouldn't be because at some future point it may come to be that it has much better write speeds, not without a lot of evidence that it'll actually happen within a reasonable timeframe.
Actually I can find µSD cards _now_ with 90MB/s read and write speeds (e.g. the top-of-the-line SanDisk Extreme Pro micro-SD cards do 95MB/s reading and 90MB/s writing), while many eMMCs have a higher read speed (e.g. 150MB/s for the top-of-the-line SanDisk eMMC) but a lower write speed (e.g. 45MB/s for the top-of-the-line SanDisk eMMC).
 
I said before that I didn't think write speed was important. I wonder though.

On the Pandora writing to NAND happens practically never. If people are installing stuff to the internal flash, especially stuff that maintains caches or thumbnails like Firefox, it's going to happen a lot more often. Hmm...
 
Actually I can find µSD cards _now_ with 90MB/s read and write speeds (e.g. the top-of-the-line SanDisk Extreme Pro micro-SD cards do 95MB/s reading and 90MB/s writing), while many eMMCs have a higher read speed (e.g. 150MB/s for the top-of-the-line SanDisk eMMC) but a lower write speed (e.g. 45MB/s for the top-of-the-line SanDisk eMMC).
Given it's most likely to be the same stuff inside the SD card and the NAND chip, those numbers aren't too surprising. The SD card probably has a little cache RAM which speeds up short bursts of writing to acheive that number, and the theoretical maximum transfer speed (either way) for UHS1 cards is 104MBps. That's provided your controller supports the UHS1 optional clock speed of 208Mhz (defined by SDR104). If it only supports the default UHS1 clock speed of 100Mhz, it'll top out at 50MBps (it runs at either 100MHz single data rate or 50Mhz dual data rate).

Does anyone know if the SoCs being looked at support the UHS1 SDR104 clock rates, or even the 100MHz rate? If not then we're limited to 25MBps both ways. I'm assuming UHS2 is out of the question, as that requires extra lines connecting to the card.


As an aside, it's a shame the class system hasn't been extended properly. The U1 logo means the same minimum speed as the old C10 logo. Until we get to a guaranteed 30MBps read AND write we won't see the U3 logo, and beyond that there's currently no further indication of baseline performance.
 
Okay, time to face reality on this one - the community is so evenly divided on uSD vs eMMC that there's no way it's going to sway ED and Nikolaus against whatever they were going to do. It'd probably be best if they just said what they were doing and that was left at that. FWIW, last I was aware eMMC was the favored choice. One reason they might want to go with this is to stay closer to the EVMs/reference designs.

Does anyone know if the SoCs being looked at support the UHS1 SDR104 clock rates, or even the 100MHz rate? If not then we're limited to 25MBps both ways. I'm assuming UHS2 is out of the question, as that requires extra lines connecting to the card.
Yes, all of them support ~200MHz SD clocks.
 
Okay, time to face reality on this one - the community is so evenly divided on uSD vs eMMC
I think the poll in this thread is not that useful -- not a huge number of replies, not the best way to ask the question, and not enough information about the ramifications of each option to allow people to make an informed choice.

Maybe we should make a comparison table like below (let's first make sure that we got the facts right though), and then do another poll, with the comparison table in the first post. That should give a much better idea of what the community really wants.

Advantages of eMMC:

- maybe slightly cheaper?

- tend to have better controllers/caching, more IOPS

- 200 MB/s theoretical maximum speed; a good current eMMC can reach 150MB/s for sequential reads and 45MB/s for sequential writes

Disadvantages of eMMC:

- one size fits all, it's (probably) too complicated to diversify into different Pyra models with different sizes

- not user-replaceable, cannot be upgraded

- takes some board space

- could become slower than µSD cards from the future

Advantages of µSD:

- diversification is possible: easy to ship Pyra units with different sizes of internal storage (or even none at all)

- user-replaceable, can be upgraded

- if combined with a SIM slot behind the battery, no board space gets wasted

- bigger µSD capacity than current eMMC will probably become available in the next couple of years

- µSD cards with less latency than current eMMC will probably become available in the next couple of years

- µSD cards with faster write speeds than current eMMC are already available

- µSD cards that are faster than the Pandora NAND in every aspect are already available

Disadvantages of µSD:

- 100MB/s theoretical max speed (a good current µSD card can reach that speed for sequential reads and writes)

- tend to be better at sequential access, typically less IOPS than eMMC for random access

- currently 64GB is the maximum capacity for µSD, while 128GB eMMC exists (although that will most likely not be the size the Pyra would have)

- crappy µSD cards exist, people may get disappointing performance when they use that

(I'm a biased towards µSD so maybe someone from the eMMC camp has some additional remarks)
 
For the purpose of the OS, you really should mention that read speed is far more important - probably next to the read speed PRO for eMMC

The best eMMC are much quicker than what you stated.   Samsung have had eMMC 5.0  out since last July that achieve 250MB/s read and 90MB/s write (the same as the current quickest uSD). There could very well be quicker eMMC 5 options especially by the time ED gets around to ordering parts.  eMMC 5.0 has a limit of 400MB/s which later chips are expected to get close to.  So you could find that an eMMC 5.0 option may be available with faster write speed than 100MB/s by that time (ie faster than uSD) . Bear in mind that OMAP 5 has a bus limit of 200MB/s for eMMC so that would limit the top speed for read/write.

You could probably find faster 4.5 eMMC than the figures you quoted - granted its not easy searching for this stuff.

Saying uSD with better write speeds than eMMC is very missleading, seeing since Samsungs eMMC write at 90MB/s (which could be quicker now days).

Its wrong to say that eMMC could become slower than uSD in the future, with the uSD bus limitation of 100MB/s in mind,  eMMC will always be quicker for read access . And if you did use the currrent eMMC 5.0 it would be a heat or faster (in the near future) for write speed .

Rather than just mentioning IOPS, you should also mention eMMC has far better latency figures in the PROS

When you compare the options, you really need to compare them as a whole.  I find comparing them as you have, doesn't paint the whole picture. You need to note the fact that with a eMMC option you still have 3 removable and upgradeable storage options (2 SD + 1 USB flash DRive).  So you don't lose that benefit .  The only thing the uSD gives you is one more removeable slot for a total of 4 as opposed to 3 - that comes at the expense of important read speed for ever (because of the 100MB/s uSD bus limit), and worse latency (which MAY improve for uSD over time). Depending on eMMC available at the time ED comes to order parts , uSD  could well have worse write speeds.
 
Last edited by a moderator:
What does other things being removable have to do with the internal storage being removable, or as the case may be, not? The difference isnt how other things stay the same, its how one can be removed and the other cant.

Read speed isnt important, its good across the board. Unless you want to be transferring large amounts of data, which _is_ something you would do on the SD cards.

Edit: can we please not have benchmarks from samsungs press releases?
 
Last edited by a moderator:
I doubt uSD cards are going to make a ton of advancement in access time because they haven't over the past few years. And since few mobile devices use it for primary storage I can see why they don't bother.

One other advantage in having a non-replaceable eMMC is that you know that the performance won't vary from user to user and therefore you can rely on a baseline. For example, in DraStic there's a file information cache that stores data about ROMs in the directory. On one of my SD cards it takes over a minute to create this file for a huge directory, while on another SD card it just takes a few seconds. If we were using an eMMC card that had even better IOPS than the SD card I used then chances are I wouldn't even have to bother with this cache.
 
Last edited by a moderator:
If uSD cards make as much advancement as they have done since early 2012 to now it will replace everything. A great variety of mobile devices use uSD for internal storage. Few and far in between allow easy access to it.

The big players source and often make, their own nand. Also they arent the type of brands to have their customers being able to replace one, nor do they probably want to.

The baseline performance is the uSD card you ship with the device, if you want to go barebone, you are on your own. Or, to avoid that, just ship every device with storage. You would think people knew the difference if they opted out, or that if this turns out to be a problem, you could do the obvious about it, mandate a factory card install.

Speaking of cache, why not bump it up a notch. How about, we all get along and get the 4GB of memory. Does anyone want less memory?

Edit: maybe it wasnt clear. Storage memory on the market, for small players especially, is unreliable, uSD moreso than eMMC. While that is a works sometimes, fails others approach. uSD as of late covers more bases, and has less risk.
 
Last edited by a moderator:
^ I cant think of one tablet or smartphone that uses uSD for internal OS storage - Not one . Maybe they exist, but I don't know of any.   Makes you wonder why they use Nand and not uSD . 
 
Last edited by a moderator:
Original odroid and dell streak come to mind. One of the earlier nexus devices had one that wasn't removable and there have been some others, most don't advertise it. GCW zero, the first neogeox had one, raspberry pi(not a tablet) can't remember the others but there's been a few, its not that popular for consumer devices, but most devices don't target the tinkerer and hacker community. How many devices have accessible GPIO, JTAG, and include schematics?
 
Last edited by a moderator:
^ I think you missed the point, why do the vast majority not use uSD ?.   Out of a sea of squillions youve picked out a handfull that use uSD.  The rest all use Nand, why?.   Maybe there's no reasons, but it does make me wonder.

@comradekingu.  In regards to read speed , of course it's important.   If you have something that can read twice as fast as something else, its going to load the OS twice as fast for a start.  Then of course there are any OS reads it needs to do when running.

As far as uSD being seen as internal, its just another card slot, you could use any of the other SD slots or USB to boot an OS off.   Being internal doesn't mean anything .

Also, I think Exophase raised a very good point re: having a level playing field. I hadn't thought of that.
 
Last edited by a moderator:
Original odroid and dell streak come to mind. One of the earlier nexus devices had one that wasn't removable and there have been some others, most don't advertise it. GCW zero, the first neogeox had one, raspberry pi(not a tablet) can't remember the others but there's been a few, its not that popular for consumer devices, but most devices don't target the tinkerer and hacker community. How many devices have accessible GPIO, JTAG, and include schematics?
At least one of the things you listed (RPi) doesn't even have more than one storage device. Naturally if you only got to pick one storage device no one would want eMMC over removable uSD, but that's not the scenario here.

Of the others, how many of them have an internal uSD that you can access without taking the thing totally apart? And how many of them were designed when eMMC was even really a thing? If you need to take apart the device to access it that means the manufacturer really never wanted you to replace it and didn't put it there to add to the flexibility of the device.

And therein lies another consideration: if you're going to use an internal uSD you'd better make it accessible without tearing the device down instead of risking people breaking something when they try to replace it. But that adds another constraint to the physical design. Or, if it's inaccessible, solder it down to discourage people from trying.
 
^ I think you missed the point, why do the vast majority not use uSD ?.   Out of a sea of squillions youve picked out a handfull that use uSD.  The rest all use Nand, why?.   Maybe there's no reasons, but it does make me wonder.
Maybe because they don't want/expect you to even mess with the Nand?

As far as uSD being seen as internal, its just another card slot, you could use any of the other SD slots or USB to boot an OS off. Being internal doesn't mean anything .
Your point? It still internal. The point of having an internal memory care is so don't have use the externalcards for your default OS and if you want a bigger/faster Nand, you can easily change it.

Also, I think Exophase raised a very good point re: having a level playing field. I hadn't thought of that.
I really don't think that's an impactful benefit.

But that adds another constraint to the physical design.
And? Phone makers been doing it with the Sim Cards (and Pyra going to), so I didn't know whywe can't do it with the Micro SD Card.
 
Last edited by a moderator:
I really don't think that's an impactful benefit.
I gave a real world example where it'd matter.

It's good knowing that you can rely on accessing thousands of files at a rate beyond a few dozen files per second. There are real software implications. I'm not satisfied with the answer that the user who replaces their card with one that has crappy random access performance deserves whatever unexpected effects happen. You will be hearing about it when your program performs badly because of it and you will be blamed.

And? Phone makers been doing it with the Sim Cards (and Pyra going to), so I didn't know why

we can't do it with the Micro SD Card.
I didn't say it can't be done, of course it can be done, it's just that every design constraint adds pressure in some form. Makes it harder to fit all of these things on the board in a nice way, and potentially more expensive.

How is Pyra's SIM card slot accessible anyway? From the PCB shot it looks like it's inserted from the side or something.
 
Last edited by a moderator:
@Natsu,

You missed the point completely , we already have 3 removeable and expandeable stoarge options that can be used for whatever reason you want.  To make the internal storage removebale also, you give up something, you give up faster read times for the OS and better latency.   What do you get in return, another removeable storage option going from 3 to 4.   No one is forcing you to use any of the external storage options by the way, its only for those that want to boot an OS thats larger than the eMMC we use.  Given that 16GB (we may end up with 32GB) can handle practically all OS including windows 8.1 for mobile - how many people are going to want to use and swap a uSD?.   For that minority, they can use one of the three already available options and not impose slower speeds on everyone. Even if you use one of the available options, that still still leaves you with 2 free slots.   Honestly , how many do you need.  This would be a whole different ball game if we had no expandeable options already  - but we do , we have 3.
 
Last edited by a moderator:
Producers havent been using uSD because the performance has been abysmal, in addition to my answers above. Modular eMMC ive only seen in one product, doesnt mean its a bad idea.

Just maybe, uSD isnt good because the reasons why are reasons why your product can break. People are led to believe that is bad information to have in a world where decisions are based on whatever artificial need, wishfull thinking and brainwash is more important than facts.

And even if there was great demand for it, the demand for making things that fail often, is higher overall.

its going to load the OS twice as fast for a start.

As far as uSD being seen as internal, its just another card slot, you could use any of the other SD slots or USB to boot an OS off.   Being internal doesn't mean anything .
If you load into memory thats where your argument stops making sense speed-wise. Starting the OS is going to be plenty fast anyhow, which is a way of saying law of diminishing returns.

Being internal, as opposed to just another slot, means its best used for whatever task OS demands, for reasons OS is largely stationary, or should be. Just making a cardslot internal isnt a good reason for making it non modular too.

Someone is bound to buy the option that is the cheapest, if that is 8GB emmc we are stuck with shittier than uSD speeds for everyone to take into consideration. Everyone loses there. You cant get modular results unless they make no sense anymore. Storage breaks, its slower the smaller it is as a rule, it isn't infinitely big in the sense that storage treshold is real. In the real world that need forever increases, even if you hit the mark now, you need eventually that uSD expand/price to come down to size.

We are looking at a situation where performance between the two is similar and diminishing, whereas potential for total fail is less total on one of them. Also more memory is the right answer to any voes.

If more memory is included, that costs more, but it means the 2GB uSD guy is going to have the same performance baseline as whoever else, where it matters.
 
Last edited by a moderator:
Back
Top