SD card reader specs of the BeagleBoard-xM

Hi, I am trying to find out whether the beagloboard-XM supports UHS-I or UHS-II SD cards before committing to a purchase.

The BB specsheet doesn’t specify which SD cards are supported, and the only info I’ve found on the net is that “apparently the SD card reader supports 4 bits”

I am trying to improve performances as the project I am working on that requires switching between several videos frequently and transitions have to be smooth and as instantaneous as possible (with the provided 6 Mb/s R/W SD card the whole system hangs for a few secs whenever I fiddle with the timeline of a video in MPlayer).

Alternatively I could always store the videos on a high-performance USB device, but that would increase the footprint of my design; besides a faster SD card might improve boot speed so it’d be an ideal solution for me.

Anyone knows?

I can confirm that is is 4 bits as described in the SRM and the schematic.

Gerald

Hi, I am trying to find out whether the beagloboard-XM supports UHS-I or
UHS-II SD cards before committing to a purchase.

The BB specsheet doesn't specify which SD cards are supported, and the only
info I've found on the net is that "apparently the SD card reader supports
4 bits"

The DM37xx technical reference manual (page 3382) says:
Full compliance with SD command/response sets as defined in the SD
Memory Card Specifications, v2.0 including high-capacity SDHC cards up
to 32GB

Link to the tech ref manual (it's a 25MB PDF, fyi):
http://www.ti.com/lit/sprugn4

I would read that to mean that NO, UHS-I cards aren't officially
supported. They may work, but they're probably not recommended
unless you have done extensive testing first. Wikipedia says that
UHS-I is in SD version 3.01 spec [1].

[1]: https://en.wikipedia.org/wiki/Secure_Digital#UHS_Speed_Class

I am trying to improve performances as the project I am working on that
requires switching between several videos frequently and transitions have
to be smooth and as instantaneous as possible (with the provided 6 Mb/s R/W
SD card the whole system hangs for a few secs whenever I fiddle with the
timeline of a video in MPlayer).

What SD cards are you using now?
Most likely you have some cards that are slow :slight_smile:
Take a gander over at Arnd's info on SD cards [2] [3] and the
flashbench-results mailing list [4]. There are some really nice SDHC
full size and micro size cards out there now that are much faster than
others (SanDisk and Samsung make a few good ones, Transcend apparently
does, too).

[2]: https://lwn.net/Articles/428584/
[3]:
https://wiki.linaro.org/WorkingGroups/Kernel/Projects/FlashCardSurvey
[4]: http://lists.linaro.org/pipermail/flashbench-results/

I like the SanDisk 4GB mobile ultra microSD cards (only class 6 but are
faster, especially at random access, than most class 10). The 8GB
mobile ultra microSD is OK, but not as good as the 4GB, it seems to
have a different flash configuration and controller. The Samsung
MB-MSBGA microSD cards are supposed to be pretty good as well, but I
haven't personally tested them (some say they support 30 concurrent open
erase blocks, my SanDisk 4GB does 9, most Kingston cards do 1, more is
better).

-Andrew

Thanks for the input, I have to admit I didn’t go as far as to check the documentation of the DM37xx technical manual.

I am using the “stock” SD card delivered with BB-xM, I’ve ordered the SanDisk 4GB card and hopefully that’ll smoothen videos transitions!

As a point of reference, the stock SD card I received with my xM
(ordered December 2010) flashbench results are:

http://lists.linaro.org/pipermail/flashbench-results/2012-February/000252.html

It could do _almost_ 5MB/sec transfers on large files with 1 open erase
block. Going to 2 open erase blocks really killed the performance. In
order to run a journaling file system, I believe at least 3 open erase
blocks are needed.

SanDisk Mobile Ultra 4GB card can do about 13MB/sec transfers on large
files with 1 open erase block, and performance doesn't really fall off
badly till 10 open erase blocks. With an ext4 file system, I get very
good performance from this card on BeagleBone and xM. It's noticeably
faster than ext3, even.

Also, with the SanDisk cards, make sure you format them to align the
partitions to the underlying flash. I recommend aligning to 6MiB
bounds (the underlying flash should be organized into 1.5MiB erase
blocks). This is an unusual alignment, most SD cards are 2 or 4 MiB
erase blocks.

This is how I have mine partitioned, it works very well
for me (all units are sectors, NOT cylinders). fdisk says:

Disk /dev/mmcblk0: 3965 MB, 3965190144 bytes
32 heads, 32 sectors/track, 7563 cylinders, total 7744512 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

        Device Boot Start End Blocks Id System
/dev/mmcblk0p1 * 12288 24575 6144 c W95 FAT32
/dev/mmcblk0p2 24576 147455 61440 83 Linux
/dev/mmcblk0p3 147456 7744511 3798528 83 Linux

p1 is a 6MiB FAT partition for MLO and u-boot. p2 is ext3 and is where
my kernels live. p3 is ext4 and is my root file system. I have this
partition layout because u-boot couldn't (until recently) read ext4 and
I did not want to have the fat partition mounted within Linux (for
safety reasons, blowing away the boot loader would be bad). Both the
xM and Bone should be able to boot with the 32 heads 32 sectors setup,
I've not seen any issues with it.

-Andrew