Secure Digital Card Manager
TargetSD™, Blunk Microsystems' Secure Digital Card Manager / Driver layer, includes the following features:
- Works with native SD bus or via generic SPI bus.
- Supports all commercially available SD cards.
- Provides the read_sector()/write_sector() interface to TargetFAT™, Blunk Microsystems' embedded DOS/Win-compatible file system.
- Manages Secure Digital cards for TargetFAT: automatically detects card insertion, checks
card size, type, and support of special features, and adds volume to TargetFAT. Automatically
detects and handles card removal, removing the volume from TargetFAT.
- Supports the High Capacity (>= 2 GB) and High Speed (50 MHz) special options.
- Maximum card size is 2 TB (terabytes) for high capacity cards, 2 GB (gigabytes) for standard cards.
- Application layer announcement is made when cards are inserted or removed.
- Timeouts and retries are automatically performed as necessary in response to CRC and other errors.
- Sectors are pre-erased before they are written, for highest performance.
- Optionally displays contents of the Card Identification, Card Specific Data, and Configuration registers after card insertion; showing manufacturer ID, card version, serial number, date of manufacture, supported access time, transfer speed, and bus width, special features, etc.
SD Bus Features
- Advanced security - Secure lock, unlock and password protects are employed using SD CMD42. Temporary write protect implemented via the programming of CSD register.
- Extended durability - SD Erase functionality marks unused sectors for an optimal internal garbage collection while extending the SD card life.
- High speed Recording - Speed class aware stack is capable of identifying card 'Allocation Unit' (AU) and 'Recording Unit' (RU) related configurations. Engages high speed recording via CMD20 and supports up to the leading edge Class 10 specification.
- Supports SDCARD Physical Specification 4.10 (UHS unsupported) along with SD host controller specifications v0.96, v1.01 and v2.0.
- Optional and configurable software trace APIs provide details regarding executed commands, responses, retry attempts and any other error information.
SPI Bus Features
- Fast table-driven CRC calculation for data integrity and high performance.
- Supports SPI channels using a simple documented driver interface. Several sample drivers are provided.
- Supports MMC and SD cards, both partitioned and non-partitioned volumes.
- Provides sdStats() call, which displays the number of command retries, read retries, CRC errors, card controller errors, and other statistics.
Source code is 100% ANSI C and has been tested using ANSI C compilers from GNU and Metrowerks.
Developed using TargetOS™, Blunk Microsystems’ full-featured royalty-free real time operating system. Easily ported to other operating systems or used in polled mode, without a kernel. Per-socket access semaphores allow sharing SPI channel with other devices.
Royalty-free Platform License. Includes source code, user's manual, sample applications, and one year of technical support.