anatomy of a data sheet
werner at almesberger.net
Sat Jul 30 17:23:03 EDT 2011
A couple of days ago, Ron pointed me to some new WLAN chip/module
Since it's not clear where this chip is an improvement over the
things we already looked at (with non-public documentation and
other troublesome issues), I suggested he check whether the data
sheet is complete.
For example, this is what complete data sheets look like:
This information can also be split into several documents, e.g.,
a hardware description and a programming manual.
To make things a little more difficult, many companies also
publish summary or "short" data sheets. They're good enough to
get a first impression of the chip in question, but they lack the
information necessary to actually use it, e.g., to write a driver
for it. Sometimes, the "short" data sheets also lack electrical
Examples of short/incomplete data sheets:
As the example of the ATmega48/... shows, the mere existence of a
short data sheet doesn't mean that there's no full data sheet,
but we can't take it for granted (without seeing it) either.
A good indication for a first estimate is the size. A full data
sheet of even very simple chips (e.g., ) is rarely shorter
than five pages. If the chip talks to a microcontroller, expect
tens of pages. If it contains a CPU of some kind, the
documentation is usually larger than 100 pages.
A complete data sheet has the following content. I'm giving the
page numbers in the AT86RF231 data sheet  as a reference:
- brief functional overview (page 1),
- pin assignment (page 2) and pin description (pages 3-4),
- example circuit, often called "application circuit" (most but
not all data sheets have this. Can be in a separate document.
Pages 12-15. Many data sheets don't explain the circuit.)
- electrical characteristics, such as maximum voltages (usually
under "absolute maximum ratings"), supply voltage, etc. (page
- detailed voltage, current, and timing data for all the types
if pins (pages 157-161)
- package drawing (can be in a companion document; page 174)
The above elements are present in all complete data sheets, even
for components as simple as an 74AHC1G00 gate .
Components that talk to a microcontroller will also have the
following information. Again, with page numbers from the
- description of the physical protocol spoken with the host, at
the bit level (this is sometimes left out or kept very short
if the protocol is complex and clearly standardized/described
elsewhere, e.g., USB or MMC/SD/SDIO; pages 16-18)
- description of the content carried by the physical protocol,
e.g., a "write register" command. Some of the (useless) "short
data sheets" describe, say, SPI, but not what is sent over it.
- registers and the bits in them. The way this is presented
varies a bit. Note than a mere register summary (pages 160-170)
usually isn't enough. The usual form of presentation is a
drawing of the register with the bits in them, followed a list
or table of the registers and a brief description of what they
do. (E.g., pages 30-32, 44-46, etc.)
If the publicly available documentation contains all this
material, then chances are that one can make a correct design
incorporating the chip and also write the Free and Open software
that uses the chip's functions.
There can still be other obstacles, such as technical
deficiencies or incompatibilities, lack of availability, high or
hidden costs, etc., but one has at least the basics needed to
continue with further evaluation.
More information about the discussion