File system, Hardware, NAND/NOR

Effect of file-system on sd card’s performance

I had a task to compare different protocols( and their different implementations) like SD, SPI, SDIO(in FreeBSD’s MMCCAM implementation) by accessing SD Card. Now, for unbiased comparison, I must eliminate file system type in sd card from the equation. In this blog post, I’ll discuss/share my findings of the file-systems used for the card(SD and MMC) and how they affect its performance. So, let’s start with a very quick introduction to some basic concepts: Introduction MMC- Multimedia Card is a memory card unveiled in 1997 by SanDisk and Siemens based on NAND flash memory. eMMC is a regular MMC in…

Continue Reading

CAM, FreeBSD

Understanding FreeBSD’s CAM Framework

This blog post presents a gist of Free BSD’s doc on CAM(here) and chapter 14 of the book FreeBSD device driver- A guide for intrepid. It gives an introduction to the CAM(Common access method), it’s applications, it’s working and it’s organization in FreeBSD. It is written to get myself a really good understanding of mmccam stack which is nothing but SDHC/SDIO protocols wired within the CAM framework. COMMON ACCESS METHOD CAM is a method for separating HBA adapters from storage adapters and is primarily used for SCSI. By separating these drivers it reduces the complexity of both the drivers.Furthermore, this…

Continue Reading

Hardware

Understanding SD, SDIO and MMC Interface

  TL;DR; MMC and SD-card have the same physical and electrical specifications but different software controls. They both are used as a storage device only. SDIO and SD-Combo cards, on the other hand, incorporate Input/Output functionality(like Bluetooth, Wifi, GPS, etc) without and with the storage facility respectively. So, a SD-Combo card can act as a wifi adapter along with a storage device. In this blog post, I will present a gist of the paper http://www.kaltech.co.il/pdf/Eureka_sd_wp1.pdf  (updated link). This is meant for anyone willing to understand how removable devices like sd card work and different protocols/functionalities they support. Secure Digital (SD)…

Continue Reading