Driver Characterization

Typical ROM requirements are summarized in the table below. The ROM data were collected on IAR EWARM v6.40 with high size optimization.

Table - Driver ROM requirements

Driver

ROM, Thumb Mode

ROM, ARM Mode

RAM disk

0.4 kB

0.6 kB

SD/MMC CardMode*

3.9 kB

6.2 kB

SD/MMC SPI*

4.7 kB

7.3 kB

NOR***

5.7 kB

9.1 kB

MSC**

0.6 kB

0.9 kB

* Not including BSP
**Not including µC/USB
***Using the generic controller and software ECC, not including BSP

Typical RAM requirements are summarized in the table below.

Table - Driver RAM requirements

Driver

RAM (Overhead)

RAM (Per Device)

MSC*

12 bytes

32 bytes

NOR***

4 bytes

--- bytes

RAM disk

4 bytes

24 bytes

SD/MMC CardMode

4 bytes

64 bytes

SD/MMC SPI

4 bytes

52 byte

*Not including µC/USB
***See NOR Driver and Device Characteristics.

Performance can vary significantly as a result of CPU and hardware differences, both as well as file system format. All test were compiled using IAR EWARM 6.40.1 using high speed optimization. The table below lists results for two general performance tests:

  • Read file test. Read a file in 4-kB and 64kB chunks. The time to open the file is not included in the time.
  • Write file test. Write a file in 4-kB and 64kB chunks. The time to open (create) the file is not included in the time.

Table - Driver performance (file test)

Driver

CPU

Media

Performance (kB/s)

4k Read

4k Write

64k Read

64k Write

RAM Disk

ST STM32F207IGH6

120Mhz

IS61WV102416BLL-10MLI

16Mbit 10-ns SRAM

16 622 kB/s

10 839 kB/s

31 186 kB/s

26 473 kB/s

RAM Disk

Atmel AT91SAM9M10

400-Mhz

MT47H64M8CF-3-F DDR2 2x8bit 2 banks interleaved

27 478 kB/s

18 858 kB/s

96 866 kB/s

84 121 kB/s

SD/MMC CardMode

ST STM32F207IGH6

120-MHz, 4-bit mode

Nokia 64 MB SMS064FF SD Card

5 333 kB/s

661 kB/s

8 595 kB/s

1 607 kB/s

SD/MMC SPI

ST STM32F107VC

72-Mhz

Nokia 64 MB SMS064FF SD Card

947 kB/s

444 kB/s

1 010kB/s

793 kB/s

SD/MMC SPI

ST STM32F107VC

72-MHz (w/CRC)

Nokia 64 MB SMS064FF SD Card

759 kB/s

388 kB/s

800 kB/s

655 kB/s

NAND

Atmel AT91SAM9M10

400-Mhz

Micron MT29F2G08ABDHC 2Gb NAND flash

9 039 kB/s

1 950 kB/s

10 732 kB/s

4 332 kB/s

NAND (auto-sync)

Atmel AT91SAM9M10

400-Mhz

Micron MT29F2G08ABDHC 2Gb NAND flash

9 039 kB/s

1 336 kB/s

10 732 kB/s

2 695 kB/s

NOR (parallel)

ST STM32F103ZE

72-MHz

ST M29W128GL 16MB NOR flash

2 750 kB/s

158 kB/s

3 810 kB/s

310 kB/s

NOR (serial)

ST STM32F103VE

72-MHz

ST M25P64 serial flash

691 kB/s

55 kB/s

---- kB/s

---- kB/s

MSC

Atmel AT91SAM9M10

400-MHz

64-GB SanDisk Cruzer

613 kB/s

153 kB/s

2 301kB/s

883 kB/s