View detail for Analog-to-Digital Converter in the SAM3S4

Analog-to-Digital Converter in the SAM3S4
1. Introduction
The purpose of this application note is to describe, from a software point of view while
considering analog constraints, correct usage of the ADC implementation in the
SAM3S4 series of the Atmel family of Arm®, Cortex™-M3 based Flash MCUs. The first
objective is to define the precise timing setup of the ADC to avoid inexact usage that
can lead to erroneous voltage conversion.
Analog-to-Digital converters (ADC) translate analog measurements, characteristic of
most phenomena in the real world, to digital format to be used in information processing, computing, data transmission, and control systems.
AT91SAM
ARM-based
Flash MCU
Application Note
In order to better understand the cyclic pipelined ADC settings, a brief description of
the ADC is presented in order to more fully comprehend a voltage conversion. (See
Section 3. on page 3.)
Offset and gain error parameters of this ADC can be improved by calibration. Calibrating offset and gain error is defined in Section 5. “ADC Calibration”.
11106A–ATARM–01-Jul-11
2. Terminology
Terminology pertinent to ADC is provided below in Table 2-1 and organized by category.
Table 2-1.
ADC Terminology
Code
Description
Related to Numeric Base
0b
Binary Notation
0x
Hexadecimal Notation
Related to Application
SOC
Start of Conversion
m
Number of steps to perform a conversion
N
ADC output numbers of bits
Tconv
Conversion time of the ADC, expressed in
number of ADC clock cycle
Fadc
ADC clock cycle, obtained from the
product master clock
Tcp_adc
Period of an ADC clock frequency,
Tcp_adc = 1/Fadc
Fs
Sampling frequency on the ADC input
voltage for one channel.
Track
The tracking time is the necessary time the
ADC must see the input voltage on its
input in order to reach the specified
accuracy.
Related to Electrical
2
LSB
Least Significant Bit
Zsource
Zsource is an external voltage source
impedance, supplying the voltage to the
ADC
Application Note
11106A–ATARM–01-Jul-11
Application Note
3. General Information
Atmel developed a specific ADC for the SAM3S4 product family, where the target was to reach
12 bits accuracy and a data rate of 1 Ms/S. This was made possible with the cyclic pipeline ADC
technique (also called algorithmic ADC). The cyclic pipeline ADC is a technique different from
that of the SAR (Successive Approximation Register) ADC.
3.1
Cyclic ADC Converter
The principle of the conversion is to find a set of reference voltages whose sum equals the signal sample being converted. This is done by sequentially subtracting different reference voltages
from the input sample until the residue voltage becomes less than the desired LSB, indicating
that the sum of the subtracted references equals the original sample value.
Figure 3-1.
12-bit ADC Detailed Block Diagram
S/H-1
Vi
+
Vi+1
Gi
–
Analog Residue Voltage
Vref i
mux
A/D
D/A
V i+1 = G i × [V i – Vref i]
MDAC
FLASH ADC
Di
clk
Vin
clk
S/H - 2
clk
CYCLIC
STAGE
clk
FLASH
ADC
Di
j
Dout
Bit Storage + RSD Correction
N
In a pipelined ADC, the residue is amplified between subtraction steps in order to increase
accuracy.
For each pipeline step “i = 1 to m”: Vi + 1 = Gi × (Vi – D i × Vref)
Where: Gi is a gain of 2, Di is a digital code from the 1.5 bits ADC, Vref is a reference voltage.
In a cyclic pipelined ADC architecture (see Figure 3-1), only one stage is used several times to
serially produce the digital bits, Di. All Di data are combined into the digital part of the ADC to
form the N bits of the output word, Dout. This process includes bit redundancy to perform some
3
11106A–ATARM–01-Jul-11
error correction. The analog residue voltage is recycled m times as long as the resolution is not
achieved.
To build a 12-bit converter (N = 12), a full conversion operates in a sequence of m = N-1 = 11
steps. A total of 15 ADC clock cycles are necessary to perform this conversion. Five extra clock
cycles are necessary to sample and hold (S/H-2) the input voltage before conversion. During
that time the ADC input is high impedance. In total Tconv = 20 ADC clock cycles are used to perform a conversion.
3.2
Sample and Hold Circuit
The S/H-2 block buffers the input voltage to be converted and transfers it to the ADC core.
This block brings an advantageous feature to this ADC, because a new sample can be tracked
during the conversion time (15 ADC clock cycles), no time is wasted for a new tracking period.
4
Application Note
11106A–ATARM–01-Jul-11
Application Note
4. ADC Timing
4.1
ADC Mode Register Settings
Some SAM3S4 ADC Mode Register (ADC_MR) settings are described in this section.
4.1.1
TRANSFER
The TRANSFER value can be coded on 2 bits. The transfer period is the time necessary to
transfer the sampled input analog data to the conversion circuitry of the ADC, during that time
the input of the ADC is high impedance (no input voltage tracking possible).
Transfer time = (TRANSFER × 2 + 3) of ADC clock period (Tcp_adc).
• Transfer time Max = 11 Tcp_adc
• Transfer time Min = 3 Tcp_adc
A channel modification (ex: ch0 to ch1) always occurs after the Transfer time. In the case of the
SAM3S4 cyclic pipeline ADC, the Transfer time = 5 Tcp_adc after SOC fixed by the ADC design.
If a higher value is programmed, then the channel modification is delayed and reduces the tracking time.
If a smaller value is programmed then the channel modification occurs during the transfer time.
By consequence, the optimal value for SAM3S4 is TRANSFER = 1, programmed Transfer time
= 5 × Tcp_adc.
4.1.2
TRACKTIM
The value of TRACKTIM is coded on 4 bits, Tracking Time = TRACKTIM × Tcp_adc periods.
This time is used to track the input channel with the necessary accuracy. The value can go from
0 to 15 Tck. In the SAM3S4 product, this time is placed between ADC conversions. As this cyclic
pipeline ADC can sample tracked voltage during a conversion. It is not necessary to use the
TRACKTIM time defined in the ADC_MR register. For more information see the ADC: Functional
Description in the SAM3S4 datasheet.
By consequence, the optimal value for SAM3S4 is TRACKTIM = 0. The real tracking time is discussed later in this application note. See: Section 4.3 “Tracking Time”.
4.1.3
STARTUP
The value is coded on 4 bits, Startup time = 0×Tcp_adc to 960×Tcp_adc with 16 steps not linear
(for intermediate values see the STARTUP bit field description in the ADC Mode Registers section of the SAM3S4 datasheet).
The startup time depends on the ADC clock speed =1/Tcp_adc, see Table 4-1:
Programming the startup time also depends on the SLEEP mode or FAST Wake up mode
(FWUP).
• The ADC needs 40 µS to go from sleep to normal mode
• The ADC needs 12 µS to go from fast wake up to normal mode
Below, Table 4-1 columns SLEEP and FWUP compute the number of ADC clock cycles to
match the ADC startup time requirement respectively of 40 µS and 12 µS.
Master clock MCK and PRESCALE are provided as examples, for other values STARTUP must
be recomputed following the same methodology.
5
11106A–ATARM–01-Jul-11
The columns STARTUP for SLEEP and STARTUP for FWUP give the closest expected value to
match the ADC startup time. The result is not optimum because there are no intermediate values
between 112 and 512, and none between 24 and 64.
Table 4-1.
STARTUP Value
MHz
MHz
Nb of
Tcp_adc
Nb of
Tcp_adc
Nb of
Tcp_adc
Nb of
Tcp_adc
MCK
PRESCAL
ADC clock
Fadc
SLEEP
FWUP
STARTUP
for SLEEP
STARTUP
for FWUP
40
0
20
800
240
832
512
64
1
16
640
192
640
512
64
2
10.67
427
128
512
512
64
3
8
320
96
512
96
64
4
6.40
256
77
512
80
64
5
5.33
213
64
512
64
64
6
4.57
183
55
512
64
64
7
4
160
48
512
64
64
8
3.56
142
43
512
64
64
9
3.20
128
38
512
64
64
10
2.91
116
35
512
64
64
11
2.67
107
32
112
64
64
12
2.46
98
30
112
64
64
13
2.29
91
27
96
64
64
14
2.13
85
26
96
64
64
15
2
80
24
80
24
32
15
1
40
12
64
24
When ADC goes into SLEEP mode between successive conversions (to save on power consumption), the sampling frequency (Fs) will be strongly affected by the ADC startup.
• SLEEP mode: Fs = Fadc/(STARTUP for SLEEP +Tconv), Tconv = 20 clock cycles
• FWUP mode: Fs = Fadc/(STARTUP for FWUP + Tconv), Tconv = 20 clock cycles
Table 4-2.
ADC Sampling Frequencies
MHz
6
MHz
Nb of
Tcp_adc
Hz
Nb of
Tcp_adc
STARTUP for
FS due to
STARTUP for
SLEEP mode SLEEP mode FWUP mode
Hz
MCK
PRESCAL
ADC clock:
Fadc
FS due to
FWUP mode
40
0
20
832
23474
512
37594
64
1
16
640
24242
512
30075
64
2
10.67
512
20050
512
20050
Application Note
11106A–ATARM–01-Jul-11
Application Note
Table 4-2.
ADC Sampling Frequencies (Continued)
MHz
4.1.4
MHz
Nb of
Tcp_adc
Hz
Nb of
Tcp_adc
STARTUP for
FS due to
STARTUP for
SLEEP mode SLEEP mode FWUP mode
Hz
MCK
PRESCAL
ADC clock:
Fadc
FS due to
FWUP mode
64
3
8
512
15038
96
68966
64
4
6.40
512
12030
80
64000
64
5
5.33
512
10025
64
63492
64
6
4.57
512
8593
64
54422
64
7
4
512
7519
64
47619
64
8
3.56
512
6683
64
42328
64
9
3.20
512
6015
64
38095
64
10
2.91
512
5468
64
34632
64
11
2.67
112
20202
64
31746
64
12
2.46
112
18648
64
29304
64
13
2.29
96
19704
64
27211
64
14
2.13
96
18391
64
25397
64
15
2
80
20000
24
45455
32
15
1
64
11905
24
22727
SETTLING
The value is coded on 2 bits. Settling time = (SETTLE+1) × Tcp_adc
Settling time is the time needed to stabilize the ADC when modifying the gain and offset (static
working condition).
• When Fadc = 20 MHz then SETTLING = 3.
• When Fadc = 10 MHz then SETTLING = 1.
• When Fadc ≤ 5 MHz then SETTLING = 0.
It is recommended to set a default value of SETTLING = 3 to ensure proper stabilization of the
ADC.
4.1.5
PRESCAL
The PRESCAL is used to set the ADC frequency from the master clock MCK to a value targeted
by the customer application: Fadc = MCK / ((PRESCAL+1) × 2) = 1/Tcp_adc. The Sampling frequency on the input voltage depends on the ADC clock, the number of channels, and the ADC
conversion time (tconv = 20 × Tcp_adc). Cycling through channel will lose one ADC clock cycle
to check for offset and gain modification for each loop.
4.2
ADC Mode of Operation: Freerun or Triggered ADC
The sampling rate is optimized in Freerun mode and does not allow SLEEP or FWUP mode.
The sampling rate is reduced in Triggered ADC mode to allow down sampling and/or accept longer tracking time.
7
11106A–ATARM–01-Jul-11
Freerun mode is suitable to reach the highest sampling rate. In this case the tracking time of the
input voltage is defined by the conversion time of the ADC, 15 × Tcp_adc. By default the ADC is
in tracking mode.
A triggered ADC is used to obtain any one of the following:
• to increase the tracking time
• to put the ADC in SLEEP or FWUP mode between samples in order to save energy
• to reduce the sampling rate
Regardless of the triggering method (software or hardware), the sampling rate is defined by the
trigger frequency.
4.3
4.3.1
Tracking Time
Track Time ≤15 × Tcp_adc: Freerun Mode
After specifying MCK/PRESCAL/ADC_clock for a targeted sampling datarate, the source impedance of the external voltage to sample will have a maximum allowable value to guaranty a
proper conversion.
In 12-bit mode: Ttrack = 0.054 × Zsource + 205 = Tracking time (nS)
Table 4-3.
External Voltage Source Maximum Impedance
MHz
8
MHz
kHz or Ks/S
nS
K Ohms
MCK
PRESCAL
ADC clock
ADC
DATARATE
Tracking time
Zsource 12
bits
40
0
20
1000
750
10
64
1
16
800
938
14
64
2
10.67
533.33
1406
22
64
3
8
400
1875
31
64
4
6.40
320
2344
40
64
5
5.33
266.67
2813
48
64
6
4.57
228.57
3281
57
64
7
4
200
3750
66
64
8
3.56
177.78
4219
74
64
9
3.20
160
4688
83
64
10
2.91
145.45
5156
92
64
11
2.67
133.33
5625
100
64
12
2.46
123.08
6094
109
64
13
2.29
114.29
6563
118
64
14
2.13
106.67
7031
126
64
15
2
100
7500
135
32
15
1
50
15000
274
Application Note
11106A–ATARM–01-Jul-11
Application Note
4.3.2
Track Time ≥ 15 × Tcp_adc: TRIGGERED Mode
The computation of the new tracking time depends mainly on the value of Zsource (if Zsource ≥
274 kOhm) and is higher than the conversion time of the ADC. The needed additional time is
then given by the SAM3S4 timer and software/hardware triggering function.
The maximum, possible sampling frequency is defined by the Ttrack time in nano seconds, computed by formula above, minus the 15 Tcp_adc and plus TRANSFER time.
In 12-bit mode:
• 1/Fs = Ttrack - 15 × Tcp_adc + 5 ×Tcp_adc
Reducing power consumption is another motivation to trigger the ADC. Therefore, it is advantageous to turn off the ADC between successive conversions.
If the ADC is turned off during sampling, then the sampling rate may be modified again. Refer to
the SLEEP/FWUP mode constraint (see: Section 4.1.3 “STARTUP”).
9
11106A–ATARM–01-Jul-11
5. ADC Calibration
5.1
Offset and Gain Calibration Introduction
A signal measurement can be significantly affected by offset or gain error. These errors come
from device process deviation and are subject to process variation and temperature. The impact
of these errors depends on the amplitude of the input signal versus the offset or gain error for a
given expected output resolution.
A typical measurement system may consist of the following:
• Sensor source, Vin
• Reference voltage Vrefin, The common mode voltage (VCM) is usually Vrefin/2
• Gain to amplify the sensor signal
• SAM3S4 12-bit ADC
The gain error and offset error come from the VCM, sample & hold and gain block inaccuracies
Figure 5-1.
SAM3S4 ADC Front End Block Diagram
SAM3S4 ADC Front End Block Diagram
Vin
MUX
S&H
+-
Gain
Digital
ADC
12b
Filter
VCM
N bits
5.2
5.2.1
Definitions
Absolute Accuracy Computation
For a given list of errors: err1, err2, …, errn, with associated statistical data:
• Standard deviation: std_err1, std_err2, …, std_errn
• Averaged values: avg_err1, avg_err2, …, avg_errn
Computation of the final error average:
• Avg_err = avg_err1 + avg_err2 + …+ avg_errn
Note:
Most of the time the average error is at zero.
Computation of the final error standard deviation (1sigma):
• Std_err = Square_Root_of{(std_err1)^2 + (std_err2)^2 +…+ (std_errn)^2}
3 sigma total error computation from averaged value:
• Absolute accuracy = Avg_err+/- 3× Std_err
Absolute accuracy is also called Absolute error.
10
Application Note
11106A–ATARM–01-Jul-11
Application Note
5.2.2
Accuracy or Error Computation Relative to Input (RTI)%
The accuracy of the ADC is defined as the square root of the sum of all squared errors divided
by the signal amplitude.
Accuracy RTI(%) =1 00 × Total_error/(Vin×Gain)
• Accuracy RTI(%) = Zero is the targeted value
• Accuracy RTI(%) = 0.1% is about 9.5 bits resolution (-60 dB)
• Accuracy RTI(%) = 0.01% is about 13 bits resolution (-80 dB)
5.3
Motivation for Calibration
Absolute accuracy and the accuracy relative to the input are two essential parameters to consider in system performance. The computation is performed with the offset error, the gain error,
Integral Non Linearity (INL) error, Voltage reference spread and temperature dependency.
This is illustrated through an example of offset error on the measurement accuracy.
5.3.1
Gain = 1 in Front of the ADC
In this case, only the offset error is considered. The gain error alone gives the same conclusion
and other errors such as INL are neglected.
The ADC setup is: Vrefin = 3V, Single mode with ADC gain=1, input voltage range is from 0 to
Vrefin
• Offset_error = 30 LSB for a non calibrated ADC, with LSB=3/4096 Volt
• Offset_error = 3 LSB for a calibrated ADC, with LSB=3/4096 Volt
Then,
• Accuracy RTI(%) = 100 × Offset_error/VIN
Below, Figure 5-2 illustrates the loss of accuracy when the offset has two different values.
11
11106A–ATARM–01-Jul-11
Figure 5-2.
Loss of Accuracy
Accuracy RTI versus 12-bit ADC offset
50
Accuracy RTI %
40
30
20
10
7.5%
1%
0.001
0.01
0.1
input signal (V)
Accuracy RTI with ADC offset = 30 LSB
300mV
1
0
10
Accuracy RTI with ADC offset = 3 LSB
It is obvious that calibrating the ADC will have a great improvement on the measurement, especially when the input signal is small.
For 300 mV input signal and if a calibration is performed on this ADC, the accuracy will be
improved from 7.5% down to 1%.
5.3.2
Amplification in Front of the ADC:
If a gain>1 is applied:
• Accuracy RTI(%) = 100 × Offset_error/(VIN×Gain)
The offset error is divided by the gain, so the accuracy is improved and the ADC offset becomes
negligible. In this case, calibration is not necessary.
For 300 mV input signal. The accuracy will be improved from 7.5% down to 1% if a gain of 10 is
applied on this ADC. The internal gain of the ADC is limited to 4, an additional external gain of
2.5 is used.
12
Application Note
11106A–ATARM–01-Jul-11
Application Note
5.4
Calibration of the ADC
It is necessary to calibrate both gain and offset of the ADC. Starting with the offset calibration
and finishing with the gain calibration. This calibration must be performed for a specific gain,
Vrefin, (single or differential) and offset setup of the ADC. If several conditions are used in an
application then a calibration is needed for each.
5.4.1
Offset and Gain Error Definition
Figure 5-3.
Offset and Gain Error Definition
Offset and Gain Definition
Codes
Code = ma x Vin + b
4095
YaH
CH
Code = mi x Vin
b = actual offset
YiH
mi = ideal gain
CL
YaL
YiL
b
ma = actual gain
0
20%
80%
Vrefin
Vin
Calibration is performed by feeding two known reference values into the ADC. This method is
the same used in the factory production test to extract the data used for software calibration.
This calibration is relative to the voltage reference supplied to the ADC.
• CH is highest actual point measured with Vin = 80% of Vrefin.
• CL is lowest actual point with Vin = 20% of Vrefin.
Points
Actual
Ideal
CH
YaH
YiH = 3276
CL
Yal
Yil = 819
From these two points, the software can compute the calibration of gain and offset to compensate the ADC errors.
How the input voltage references are generated is shown in Table 5-4 below. The Vrefin can
also be connected to the 3.3V supply. To avoid noise issues in the measurement of the two
points CL and CH, an average of 256 samples is performed, this reduces the noise by a factor
16.
13
11106A–ATARM–01-Jul-11
Figure 5-4.
Input Voltage Reference Generation
Pad
SAM3S4 ADC
Vrefin
R
External circuitry
80%
R
R
Supply
R
20%
R
50% of Vrefin = VCM
R
R
R
Pad
R
Reference
Block
R = 1K Ohm/0.1%
R
Mux
Calibration of the SAM3 ADC
5.4.2
ADC
12b
Pad
Gnd
Calibration Process
The ideal calibration equation is as follows:
• Corrected_code = mc × (Actual_code + bc) = mc × Actual_code + mc × bc
Where, mc is the factor for a gain correction, and bc is the offset correction.
The calibration computation should be as easy as possible and use the minimum clock cycle of
the Cortex M-3. The preferred instruction for this is a MAC instruction. First perform a multiplication and second an addition, in only one clock cycle.
So the equation for the calibration must be:
• Corrected_code = mc × Actual_code + bc
In this case a negligible error is performed on the calibration, mc × bc is simplified to bc.
Computation of the gain correction mc:
The tester will perform this computation from the two measured points CL and CH.
Then:
• mc = (YiH-YiL)/(YaH-YaL)
The Gain correction factor mc is converted into Fixed Point format and stored into the SAM3S4
memory. (See: ADC Electrical Characteristics in the SAM3S4 datasheet.)
14
Application Note
11106A–ATARM–01-Jul-11
Application Note
Fixed Point Format
Integer 16 bits
Fractional part 16 bits
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9
8
7
6
5
4
3
2
1
0
For example:
• The ratio mc = 0.989130435
Then Compute the integer of the mc × 2^16 and convert it to Hexadecimal. The product memory
will store the value of mc = 0x0000FD37 for calibration.
Computation of the offset correction bc:
• bc = YiH-YaH*mc
The offset correction factor is exactly the offset value coded in Fixed Point format and Two’s
complement for negative values.
• bc = -b × 2^16
For example:
The offset b=45 is 2949120 in Fixed Point decimal format for bc = 0xFFD30000 in hexidecimal,
Fixed Point format.
If the offset coefficient factor is negative, then it will be coded as Fixed Point format, Two’s
complement.
As the ADC conversion is 12 bits, the tester stores the data in memory, keeping the last MSB at
0. A function must be used to convert those numbers into the correct 16-bit format:
code example:
/*Convert 12 bits to 16 bits signed */
void C12bits_to16bits_conversion( unsigned int *ui_offset)
{
/* Test if 12bits word is positive or negative and adjust it.... on 32 word
bits*/
if ((*ui_offset& 0x08000000)==0x08000000)
{
*ui_offset|=0xF0000000; /*negative value*/
}
else
{
*ui_offset&=~(0xF0000000) ; /*positive value*/
}
return;
}
The memory will store the value 0x0FD30000.
The above function will produce the value to use in the calibration: 0xFFD30000.
15
11106A–ATARM–01-Jul-11
5.4.3
How to Compute the Calibration
Apply the Fixed Point formula as follows:
• Corrected_code = mc × Actual_code + bc
The output result is Fixed Point format with fractional part from bit0 to bit15 and integer part from
bit16 to bit27.
Example in hexadecimal for an ideal code of 0x07E80000, (2024 in decimal):
Gain correction factor mc = 0.989130435
Integer 16 bits
0
0
Fractional part 16 bits
0
0
F
D
3
7
Offset correction bc = -45
Integer 16 bits
F
F
Fractional part 16 bits
D
3
0
0
0
0
2
B
The actual ADC code is 2091 (decimal) 0x0000082B
ADC Code
0
0
ADC Code
0
0
0
8
The result of mc × Actual_code + bc
Integer 16 bits
0
7
Fractional part 16 bits
E
7
0
0
0
0
The Corrected code is then 0x07E70000. The ideal code is 0x07E80000, there is an error of 1
LSB in the correction.
16
Application Note
11106A–ATARM–01-Jul-11
Application Note
Revision History
Doc. Rev
Comments
11106A
First issue
Change
Request Ref.
17
11106A–ATARM–01-Jul-11
Headquarters
International
Atmel Corporation
2325 Orchard Parkway
San Jose, CA 95131
USA
Tel: (+1) (408) 441-0311
Fax: (+1) (408) 487-2600
Atmel Asia Limited
Unit 01-5 & 16, 19F
BEA Tower, Millennium City 5
418 Kwun Tong Road
Kwun Tong, Kowloon
HONG KONG
Tel: (+852) 2245-6100
Fax: (+852) 2722-1369
Atmel Munich GmbH
Business Campus
Parkring 4
D-85748 Garching b. Munich
GERMANY
Tel: (+49) 89-31970-0
Fax: (+49) 89-3194621
Atmel Japan
9F, Tonetsu Shinkawa Bldg.
1-24-8 Shinkawa
Chuo-ku, Tokyo 104-0033
JAPAN
Tel: (81) 3-3523-3551
Fax: (81) 3-3523-7581
Technical Support
AT91SAM Support
Atmel technical support
Sales Contacts
www.atmel.com/contacts/
Product Contact
Web Site
www.atmel.com
www.atmel.com/AT91SAM
Literature Requests
www.atmel.com/literature
Disclaimer: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise, to any
intellectual property right is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN ATMEL’S TERMS AND CONDITIONS OF SALE LOCATED ON ATMEL’S WEB SITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY
WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT
OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF ATMEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no
representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and product descriptions at any time without notice. Atmel does not make any commitment to update the information contained herein. Unless specifically provided otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. Atmel’s products are not intended, authorized, or warranted
for use as components in applications intended to support or sustain life.
© 2011 Atmel Corporation. All rights reserved. Atmel®, Atmel logo and combinations thereof, DataFlash@ and others are registered trademarks
or trademarks of Atmel Corporation or its subsidiaries. ARM®, ARMPowered ® logo, and others are registereed trademarks or trademarks of ARM
Ltd. Other terms and product names may be trademarks of others.
11106A–ATARM–01-Jul-11