DataFlash

Last updated
DataFlash: Atmel 25DF041A Seagate ST160LM003 Momentus - Atmel 25DF041A-5420.jpg
DataFlash: Atmel 25DF041A

DataFlash is a low pin-count serial interface for flash memory. It was developed as an Atmel proprietary interface, compatible with the SPI standard. In October 2012, the AT45 series DataFlash product lines, related intellectual property, and supporting employee teams were purchased by Adesto Technologies. [1] [2]

Contents

Information is written and read from a DataFlash device using any microcontroller, such as the Atmel AVR, the Microchip PIC or the ARM. The boot ROM of numerous Atmel ARM microcontrollers support downloading code from DataFlash chips after reset.

Atmel AT45DB642D-CNU with CASON package Ingenico Healthcare ORGA 6041 - board - Atmel AT45DB642D-CNU-3485.jpg
Atmel AT45DB642D-CNU with CASON package

Examples

The AT45DB161D Integrated circuit (chip) is an example of a 2 MB (16 Mbit) dataflash product. [3] This comes in a 8x5 mm small outline integrated circuit 8-pin package. This chip is used in a huge number of consumer electronic products. Any microcontroller can use this chip to store data.

The AT45DCB008D card is an 8 MB (64 Mbit) flash memory card, which could be mistaken for an MMC or SD card. This DataFlash card packages an AT45DB642D flash chip, which is also available in 8x6 mm CASON 8-pin packages.

The AT26 series DataFlash chips are software-incompatible with the original AT45 series chips. They use a simpler command set, supported by other vendors of serial flash but omitting SRAM buffers and other features that make AT45 chips simpler to support.

Comparisons

Both DataFlash and EEPROM chips can be accessed from a microcontroller, using a 4-wire Serial Peripheral Interface Bus (SPI bus). Both are available in small 8 pin packages. The protocol interfaces are very similar; in both cases, bytes are written or read, via SPI, one or more bytes at a time.

DataFlash usually had higher capacities than EEPROM in the early days,[ when? ] and it still provides faster access times. DataFlash capacities in small packages range from 128 kB to 8 MB, while SPI EEPROM capacities in similar packages range from 1 kB to 8 MB . Flash chips are tuned for page access, rather than the byte access used with EEPROM. However, AT45 series chips have commands that let their drivers act more like EEPROM drivers. Leveraging the SRAM buffers exposed by AT45 chips to do more than support EEPROM-like access requires specialized software.

DataFlash cards are more expensive than the consumer oriented MMC or SD cards, and have lower capacities, but have an extremely simple programming interface compared to MMC/SD. All these cards can be used in SPI mode.

In summary, DataFlash enables use of more data storage and faster access times than EEPROM. DataFlash chips can leverage the AT45 SRAM buffers. EEPROMs, AT26 series chips, or MMC/SD cards permit use of second sources for parts.

For cards used in field upgrades, DataFlash cards permit simple software support and compatibility with on-board flash chips; MMC/SD costs less.

The programming code required to interface EEPROM to the DataFlash chip is simpler.

Programming

Examples of source code in the C programming language are available for operating systems such as BeRTOS, [4] and eCos. [5]

Related Research Articles

Microcontroller Small computer on a single integrated circuit

A microcontroller is a small computer on a single metal-oxide-semiconductor (MOS) integrated circuit (IC) chip. A microcontroller contains one or more CPUs along with memory and programmable input/output peripherals. Program memory in the form of ferroelectric RAM, NOR flash or OTP ROM is also often included on chip, as well as a small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general purpose applications consisting of various discrete chips.

Flash memory Electronic non-volatile computer storage device

Flash memory is an electronic non-volatile computer memory storage medium that can be electrically erased and reprogrammed. The two main types of flash memory, NOR flash and NAND flash, are named for the NOR and NAND logic gates. NAND flash and NOR flash use the same cell design, consisting of floating gate MOSFETs. They differ at the circuit level: in NAND flash, the relationship between the bit line and the word lines resembles a NAND gate; in NOR flash, it resembles a NOR gate; this depends on whether the state of the bit line or word lines is pulled high or low.

EEPROM Computer memory used for small quantities of data

EEPROM (also E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, integrated in microcontrollers for smart cards and remote keyless systems, and other electronic devices to store relatively small amounts of data by allowing individual bytes to be erased and reprogrammed.

AVR microcontrollers

AVR is a family of microcontrollers developed since 1996 by Atmel, acquired by Microchip Technology in 2016. These are modified Harvard architecture 8-bit RISC single-chip microcontrollers. AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other microcontrollers at the time.

Atmel Corporation was a designer and manufacturer of semiconductors before being acquired by Microchip Technology in 2016. It was founded in 1984. The company focused on embedded systems built around microcontrollers. Its products include microcontrollers radio frequency (RF) devices including Wi-Fi, EEPROM, and flash memory devices, symmetric and asymmetric security chips, touch sensors and controllers, and application-specific products. Atmel supplies its devices as standard products, application-specific integrated circuits (ASICs), or application-specific standard product (ASSPs) depending on the requirements of its customers.

PIC microcontrollers

PIC is a family of microcontrollers made by Microchip Technology, derived from the PIC1650 originally developed by General Instrument's Microelectronics Division. The name PIC initially referred to Peripheral Interface Controller, and is currently expanded as Programmable Intelligent Computer. The first parts of the family were available in 1976; by 2013 the company had shipped more than twelve billion individual parts, used in a wide variety of embedded systems.

TI MSP430

The MSP430 is a mixed-signal microcontroller family from Texas Instruments, first introduced on 14 February 1992. Built around a 16-bit CPU, the MSP430 is designed for low cost and, specifically, low power consumption embedded applications.

The PIC16C84, PIC16F84 and PIC16F84A are 8-bit microcontrollers of which the PIC16C84 was the first introduced in 1993 and hailed as the first PIC microcontroller to feature a serial programming algorithm and EEPROM memory. It is a member of the PIC family of controllers, produced by Microchip Technology. The memory architecture makes use of bank switching. Software tools for assembler, debug and programming were only available for the Microsoft Windows operating system.

SD card Type of memory storage for portable devices

Secure Digital, officially abbreviated as SD, is a proprietary non-volatile memory card format developed by the SD Association (SDA) for use in portable devices.

The Serial Peripheral Interface (SPI) is a synchronous serial communication interface specification used for short-distance communication, primarily in embedded systems. The interface was developed by Motorola in the mid-1980s and has become a de facto standard. Typical applications include Secure Digital cards and liquid crystal displays.

MultiMediaCard Memory card format

The MultiMediaCard, officially abbreviated as MMC, is a memory card standard used for solid-state storage. Unveiled in 1997 by SanDisk and Siemens AG, MMC is based on a surface-contact low pin-count serial interface using a single memory stack substrate assembly, and is therefore much smaller than earlier systems based on high pin-count parallel interfaces using traditional surface-mount assembly such as CompactFlash. Both products were initially introduced using SanDisk NOR-based flash technology. MMC is about the size of a postage stamp: 24 mm × 32 mm × 1.4 mm. MMC originally used a 1-bit serial interface, but newer versions of the specification allow transfers of 4 or 8 bits at a time. MMC can be used in many devices that can use Secure Digital (SD) cards.

The ETRAX CRIS is a RISC ISA and series of CPUs designed and manufactured by Axis Communications for use in embedded systems since 1993. The name is an acronym of the chip's features: Ethernet, Token Ring, AXis - Code Reduced Instruction Set. Token Ring support has been taken out from the latest chips as it has become obsolete.

Microchip Technology American integrated circuit company

Microchip Technology Inc. is a publicly-listed American corporation that manufactures microcontroller, mixed-signal, analog and Flash-IP integrated circuits. Its products include microcontrollers, Serial EEPROM devices, Serial SRAM devices, embedded security devices, radio frequency (RF) devices, thermal, power and battery management analog devices, as well as linear, interface and wireless solutions.

Single-board microcontroller

A single-board microcontroller is a microcontroller built onto a single printed circuit board. This board provides all of the circuitry necessary for a useful control task: a microprocessor, I/O circuits, a clock generator, RAM, stored program memory and any necessary support ICs. The intention is that the board is immediately useful to an application developer, without requiring them to spend time and effort to develop controller hardware.

STM32 ARM Cortex-M based Microcontrollers by STMicroelectronics

STM32 is a family of 32-bit microcontroller integrated circuits by STMicroelectronics. The STM32 chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M33F, Cortex-M7F, Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM, flash memory, debugging interface, and various peripherals.

ATmega328

The ATmega328 is a single-chip microcontroller created by Atmel in the megaAVR family. It has a modified Harvard architecture 8-bit RISC processor core. Atmega328 microcontroller is used in basic Arduino boards, i.e., Arduino Uno, Arduino Pro Mini and Arduino Nano.

Netduino is an open-source electronics prototyping platform based on the .NET Micro Framework. It uses the ARM Cortex-M 32-bit RISC ARM processor core as a 32-bit ARM-microcontroller. The Netduino boards are designed to be pin-compatible with most Arduino shields. Applications can be built on Windows, or on Mac OS. The platform is similar in concept to the Arduino platform, but is generally more powerful and instead of writing applications in C/C++ or Wiring, applications are written in C#, which brings powerful, high-level language constructs to the toolbox such as threading, event handling, automatic garbage collection, and more.

Arduino Uno

The Arduino Uno is an open-source microcontroller board based on the Microchip ATmega328P microcontroller and developed by Arduino.cc. The board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (shields) and other circuits. The board has 14 digital I/O pins, 6 analog I/O pins, and is programmable with the Arduino IDE, via a type B USB cable. It can be powered by the USB cable or by an external 9-volt battery, though it accepts voltages between 7 and 20 volts. It is similar to the Arduino Nano and Leonardo. The hardware reference design is distributed under a Creative Commons Attribution Share-Alike 2.5 license and is available on the Arduino website. Layout and production files for some versions of the hardware are also available.

The MSP432 is a mixed-signal microcontroller family from Texas Instruments. It is based on a 32-bit ARM Cortex-M4F CPU, and extends their 16-bit MSP430 line, with a larger address space for code and data, and faster integer and floating point calculation than the MSP430. Like the MSP430, it has a number of built-in peripheral devices, and is designed for low power requirements.

References

  1. Peter Clarke (October 1, 2012). "Adesto buys Atmel serial flash families". EE Times. Retrieved September 27, 2013.
  2. "Atmel Completes Sale of Serial Flash Product Families to Adesto Technologies". Press release. Atmel. October 1, 2012. Archived from the original on March 17, 2013. Retrieved September 27, 2013.
  3. "DataFlash". Former product page. Atmel. Archived from the original on August 26, 2011. Retrieved September 27, 2013.
  4. "dataflash.c". BeRTOS Documentation. Retrieved September 27, 2013.
  5. "Developing Atmel AT45DB DataFlash device driver for eCos". Application Note. Ronetix. Retrieved September 27, 2013.