SD Cards
SD cards are a type of memory card which use NAND flash memory to store data. Their main benefit over flash ICs is that they a removable and easily connected by a user to a computer.
NAND flash is used as the main memory device inside of SD cards. There is also a memory controller IC (typically a microcontroller) which acts as an intermediary between the flash and the connected device reading/writing to/from the memory.
The TRIM command
The TRIM
command is an ATA command which can be sent to an SSD controller by the OS. It is sent from the OS when a file is deleted from the filesystem, and the OS tells the SSD controller which NAND pages have been deleted. If the controller supports TRIM
commands, then it will flag the pages for deletion so that the SSD controller can erase/free the pages. This increases the pool of available memory the wear-levelling algorithm can work with, allowing it to work more effectively and increasing the life time of the storage device.
# m h dom mon dow command0 1 * * * ionice -c 3 fstrim -v /
Wear-levelling
Wear leveling is an intrinsic part of the erase pooling functionality of cards in the SanDisk microSD Card Product Family using NAND memory. 1
There are two types of wear-levelling, static and global.
A local cached copy of SanDisk Whitepaper: SanDisk Flash Memory Cards Wear Leveling, October 2003.
Speed Classes
There are three different systems for rating the access speed of an SD card2:
- Speed Class
- UHS Speed Class
- Video Speed Class
You will commonly see an SD card rated against more than one of these standards at the same time, e.g. “Class 10, UHS Class 3”.
Multi-level Cells (MLCs)
In the context of NAND memory, a cell is an individual storage element (essentially a MOSFET with a floating gate). The first NAND cells were used to store one 1-bit of information and are called single-level cells. A multi-level cell (MLC) is a cell which can hold two bits of information. Most cheaper, high-density SD cards on the market in the 2010’s/2020’s utilize multi-level cell NAND flash to offer memory spaces of 64GB, 128GB and beyond. However, multi-level cells come at a cost --- they are less reliable than their single-layer cell (SLC) counterparts. This technology has been extended further into Triple-Level Cell (TLC, 3 bits per cell) and Quad-Level Cell (QLC, 4 bits per cell).
- SLC (Single Level Cell) is the highest grade of NAND flash. Each cell only has one voltage level it is charged to, allowing only 1-bit to be stored per cell. It is very hard to purchase via standard retail outlets. Example. As of 2020, 8GB class 10 SLC cards retail for approx. US$120, approx. 5-10x more expensive than their MLC counterparts3.
- MLC (Multi Level Cell) has 4 voltage levels per cell, allowing 2 bits of information to be stored. Read speeds are typically lower than SLC because the controller may need to read the cell at two different voltages to help resolve errors4. MLC cards are also marketed for industrial use. The Intel 8087 was one of the first mass-produced ICs to use MLC technology.
- TLC (Triple-Level Cell) has 8 voltage levels per cell, allowing 3 bits of information to be stored.
- QLC (Quad-Level Cell) has 16 voltage levels per cell, allowing 4 bits of information to be stored.
SLC memory is recommended for SD cards that are going to be used for intensive and/or critical applications in where the SD card will be written to frequently. This includes RaspberryPis that will be used frequently for more than just personal/hobbyist use. RaspberryPis typically use an SD card as it’s main source of non-volatile RAM, and writing to the hard disk writes to the RaspberryPi.
Cheaper MLC memory is recommended for typical, standard SD card applications such as storing photos, music and transferring files between devices.
Pseudo Single-Level Cell (pSLC)
Pseudo single-level cell (pSLC) technology is a cross between SLC and MLC approaches. It uses the more common and cheaper MLC NAND flash memory, but the flash memory controller only stores 1 bit per cell rather than 2 or 3. It offers more reliability than MLC cards but less reliability SLC, however it is much, much cheaper than SLC (pSLC cards are generally only slightly more expensive than MLC cards)
PLC also goes under the names enhanced MLC, superMLC, iSLC, advanced MLC (aMLC), MLC+, turboMLC 56.
Examples of pSLC SD cards include the AF8GUD4A-BBBIM 8GB microSD Class 10 SD card from ATP Electronics which as of April 2022 costs around USD$30 in quantities of 10.
SD Card Holders
SD card holders are used to hold the SD card in place and provide electrical connections from the SD card to a PCB. Most electronics uses the smaller versions of the SD cards, making micro SD card holders very common on PCBs that need some storage.
There are three common types of insertion/removal mechanisms:
- Hinged lid: A hinged lid opens and closes around the SD card. The card is inserted onto the front rather than the side. Once the hinged lid is flat against the SD card, it’s usually slid slightly upwards or downwards to lock it into place. The reverse actions is followed to remove the SD card.
- Push in then push out: There is a clicking mechanism which allows the SD card to be pushed in until it clicks (you push it in from the side). Then to remove, you push in again and release. A spring loaded mechanism then pushes the SD card out.
- Push in then pull out: These are like the push in, push out style but don’t usually have a spring loaded mechanism or any nice tactile click. Rather, you just push it in until it is friction locked into place, and just pull it out to remove.
My favourite type is the push in, push out style due to it’s nice tactile feedback and ease of use. It only works if you can tolerate side entry with your PCB/product design. Sometimes front entry is needed, in which case the hinged lid style is the better option.
Suppliers
DigiKey is a good place to buy SD card holders. Click here to see the search results for Micro SD card holders in their Product Index > Connectors, Interconnects > Memory Connectors > PC Card Sockets section.
Footnotes
-
https://datasheet.ciiva.com/26837/getdatasheetpartid-335894-26837658.pdf ↩
-
SD Association. Speed Class. Retrieved 2022-04-07, from https://www.sdcard.org/developers/sd-standard-overview/speed-class/. ↩
-
https://www.digikey.com/products/en/memory-cards-modules/memory-cards/501 ↩
-
ATP (2020, Nov 11). The Benefits of Pseudo SLC (pSLC) Flash with Customizable Endurance. Retrieved 2022-04-06, from https://www.atpinc.com/blog/Pseudo-SLC-benefits-SSD-endurance. ↩
-
Cactus Technologies. CTWP016: An Overview of Pseudo-SLC NAND. Retrieved 2022-04-07, from https://www.cactus-tech.com/wp-content/uploads/2019/03/An-Overview-of-Pseudo-SLC-NAND.pdf. ↩
-
DigiKey. Product Index > Connectors, Interconnects > Memory Connectors > PC Card Sockets > Würth Elektronik 693071020811 [product page]. Retrieved 2025-07-09, from https://www.digikey.co.nz/en/products/detail/w%C3%BCrth-elektronik/693071020811/11627327. ↩