Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Mar 2017 13:37:57 -0700
From:      Warner Losh <imp@bsdimp.com>
To:        Ian Lepore <ian@freebsd.org>
Cc:        "Dr. Rolf Jansen" <rj@obsigna.com>, "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>
Subject:   Re: Identifying counterfeit microSD cards on a Beaglebone Black
Message-ID:  <CANCZdfrjngmk8S%2B-Oz-rCUqKW8by4GBrRAxSWivMx-DL0M_LSw@mail.gmail.com>
In-Reply-To: <1490281652.58015.71.camel@freebsd.org>
References:  <D08E6528-56E6-4229-8722-D87116B8064D@obsigna.com> <CANCZdfo97-iFg4zLxbyQhv9rPrd8eU5rN-mzDL5wz3xj6XxrsQ@mail.gmail.com> <A633D336-2581-4C51-A3C9-7AFD0ABB9E9F@obsigna.com> <1489864043.40576.219.camel@freebsd.org> <16B03E70-00E6-4C17-9A9A-8601F4C07364@obsigna.com> <2F7D5F42-E50A-4761-9EEC-DC873BD7D0AB@obsigna.com> <CAB=2f8wR57ip7gUVGQqHNAzCHq-qiC8nwVG1%2BASu1N3kCcKrEQ@mail.gmail.com> <70C95FC9-4B0A-4DA4-9857-EFAF41522D1B@obsigna.com> <1490281652.58015.71.camel@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Mar 23, 2017 at 8:07 AM, Ian Lepore <ian@freebsd.org> wrote:
> On Thu, 2017-03-23 at 00:42 -0300, Dr. Rolf Jansen wrote:
>> Am 21.03.2017 um 13:25 schrieb Luiz Otavio O Souza <lists.br@gmail.co
>> m>:
>> >
>> > On 19 March 2017 at 18:45, Dr. Rolf Jansen wrote:
>> > >
>> > > Am 18.03.2017 um 21:30 schrieb Dr. Rolf Jansen:
>> > > >
>> > > > Am 18.03.2017 um 16:07 schrieb Ian Lepore:
>> > > > >
>> > > > > On Sat, 2017-03-18 at 15:03 -0300, Dr. Rolf Jansen wrote:
>> > > > > >
>> > > > > > Am 18.03.2017 um 12:30 schrieb Warner Losh:
>> > > > > > >
>> > > > > > >
>> > > > > > > On Sat, Mar 18, 2017 at 8:44 AM, Dr. Rolf Jansen
>> > > > > > > wrote:
>> > > > > > > >
>> > > > > > > >
>> > > > > > > > I bought a 16 GB microSDHC SanDisk chip rated at 4 MB/s
>> > > > > > > > write
>> > > > > > > > speed for use with my Beaglebone Black.
>> > > > > > > >
>> > > > > > > > The internal flash offers practical write speeds in the
>> > > > > > > > range of
>> > > > > > > > 2 to 3 MB/s when copying data to it from a NFSv4 volume
>> > > > > > > > depending
>> > > > > > > > on the size of the files being copied. Executing the
>> > > > > > > > same copy
>> > > > > > > > operation with said microSDHC card as the target I see
>> > > > > > > > only 0.1
>> > > > > > > > to 0.2 MB/s (less than 1/10).
>> > > > > > > >
>> > > > > > > > I suspect now that I got a counterfeited card. Before I
>> > > > > > > > dump it,
>> > > > > > > > I would like to run a definitive non-destructive test,
>> > > > > > > > preferably
>> > > > > > > > on the Beaglebone Black, and I would like to ask you
>> > > > > > > > for
>> > > > > > > > suggestions.
>> > [picking a random message to reply]
>> >
>> > I just saw an email from SanDisk support (whatever this means)
>> > where
>> > they claim the only supported model for this kind of use is the
>> > high-endurance series:
>> > https://www.sandisk.com/home/memory-cards/microsd-cards/high-endura
>> > nce-microsd
>> >
>> > This same email says that running any kind of OS in any of the
>> > other
>> > card models automatically breaks the warranty.
>> Luiz, thank you very much for the note. Do you know, whether this
>> high endurance XC card is compatible with the Beaglebone Black?
>>
>> Best regards
>>
>> Rolf
>
> I would assume that it is, they're typically just standard sd cards
> with flash arrays based on SLC technology and with a lot of extra space
> for reassigning bad blocks (a card that claims 8gb capacity could
> actually have 4x that many blocks or more available internally).

I don't think there's 4x over-provisioning. Where do you get that figure?

When I was at Fusion I/O, the designs there were all in the 9-24%
range, and our "intel" on what others were doing showed a range of 5%
to 40% depending on the market segment and type of NAND use. If they
are really using SLC NAND for these cards, the sparing is likely less
because TLC NAND has about a 200-300 endurance rating (program erase
cycles per erase block). MLC is between 3000-5000. SLC is like
30,000-100,000. SLC has also 10-100x better error rates than MLC which
has 10-100x better than TLC due to how the charge nodes are programmed
and the tolerances associated with that programming. There was
constant pressure to come up with designs that needed less sparing, so
I doubt things have changed to require 4x over provisioning.... What
might be going on when people say that has to due with a feature of
modern NAND chips: they can be programmed as SLC, MLC or TLC often on
a per-erase block basis. In that case, a SLC configuration with a 33%
over provisioning would have a 4x maximum theoretical raw capacity
over the selected size for the drive (so a 8GB drive would have 8GB *
1.33 (over provisioning: spares and OOB) * 3 (TLC multiplier) or 32GB
of raw capacity).

> But be aware that high-endurance or industrial-rated cards can be very
> expensive.  I think at work we pay around $40 each for industrial-rated
> 8gb cards.  (One of them was included in those test results I posted,
> and the performance was among the best, at least you get something for
> all that extra money.)

Part of the issue is that NAND chips these days can be SLC, MLC or TLC
depending on how you program them (often on an erase-block level).[*]
This means that the 8GB SLC card could also be a 16GB MLC card or a
24GB TLC card (well, due to sparing it likely wouldn't scale
linearly). So from that perspective, I can see where a 4x number might
come up (high number of bits possible for the die vs capacity
configured for SLC + spares). At 33% sparing, the differences between
the SD presented capacity point of 8GB would have close to 32GB of
potential raw capacity were it run in TLC mode.... In addition, high
endurance cards are often selected from the wafers at manufacturing
time because they have the lowest error rate and other metrics so the
NAND makers know that they will survive (the NAND manufacturing
process isn't too uniform across the wafer due to micro variations in
the wafer and other effects at the nano-scale). Often times these are
also pulled from processes that typically yield better results but are
more expensive. So the relative rarity of the raw dies plus the
increased production cost plus running them in a faster, more reliable
mode all lead to the cards being more expensive....

So that's why it's so expensive, especially on the high end: you are
paying extra for quality.

Warner

[*] At least before 3d NAND, which I've not see as detailed a
technical spec for. They likely do it as well, but I haven't seen the
detailed datasheets for those like I have for generations prior...



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfrjngmk8S%2B-Oz-rCUqKW8by4GBrRAxSWivMx-DL0M_LSw>