ATMEL AT91SAM7S321-AU-001

Features
• Incorporates the ARM7TDMI® ARM® Thumb® Processor
•
•
•
•
•
•
•
•
•
•
•
– High-performance 32-bit RISC Architecture
– High-density 16-bit Instruction Set
– Leader in MIPS/Watt
– Embedded*ICE™ In-circuit Emulation, Debug Communication Channel Support
Internal High-speed Flash
– 256 kbytes, organized in 1024 Pages of 256 Bytes (AT91SAM7S256)
– 128 kbytes, organized in 512 Pages of 256 Bytes (AT91SAM7S128)
– 64 kbytes, organized in 512 Pages of 128 Bytes (AT91SAM7S64)
– 32 kbytes, organized in 256 Pages of 128 Bytes (AT91SAM7S321/32)
– Single Cycle Access at Up to 30 MHz in Worst Case Conditions
– Prefetch Buffer Optimizing Thumb Instruction Execution at Maximum Speed
– Page Programming Time: 6 ms, Including Page Auto-erase, Full Erase Time: 15 ms
– 10,000 Write Cycles, 10-year Data Retention Capability, Sector Lock Capabilities,
Flash Security Bit
– Fast Flash Programming Interface for High Volume Production
Internal High-speed SRAM, Single-cycle Access at Maximum Speed
– 64 kbytes (AT91SAM7S256)
– 32 kbytes (AT91SAM7S128)
– 16 kbytes (AT91SAM7S64)
– 8 kbytes (AT91SAM7S321/32)
Memory Controller (MC)
– Embedded Flash Controller, Abort Status and Misalignment Detection
Reset Controller (RSTC)
– Based on Power-on Reset and Low-power Factory-calibrated Brown-out Detector
– Provides External Reset Signal Shaping and Reset Source Status
Clock Generator (CKGR)
– Low-power RC Oscillator, 3 to 20 MHz On-chip Oscillator and one PLL
Power Management Controller (PMC)
– Software Power Optimization Capabilities, Including Slow Clock Mode (Down to
500 Hz) and Idle Mode
– Three Programmable External Clock Signals
Advanced Interrupt Controller (AIC)
– Individually Maskable, Eight-level Priority, Vectored Interrupt Sources
– Two (AT91SAM7S256/128/64/321) or One (AT91SAM7S32) External Interrupt
Sources and One Fast Interrupt Source, Spurious Interrupt Protected
Debug Unit (DBGU)
– 2-wire UART and Support for Debug Communication Channel interrupt,
Programmable ICE Access Prevention
Periodic Interval Timer (PIT)
– 20-bit Programmable Counter plus 12-bit Interval Counter
Windowed Watchdog (WDT)
– 12-bit key-protected Programmable Counter
– Provides Reset or Interrupt Signals to the System
– Counter May Be Stopped While the Processor is in Debug State or in Idle Mode
Real-time Timer (RTT)
– 32-bit Free-running Counter with Alarm
– Runs Off the Internal RC Oscillator
AT91 ARM®
Thumb®-based
Microcontrollers
AT91SAM7S256
AT91SAM7S128
AT91SAM7S64
AT91SAM7S321
AT91SAM7S32
Summary
6175BS–ATARM–04-Nov-05
• One Parallel Input/Output Controller (PIOA)
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
2
– Thirty-two (AT91SAM7S256/128/64/321) or twenty-one (AT91SAM7S32) Programmable I/O Lines Multiplexed with up to
Two Peripheral I/Os
– Input Change Interrupt Capability on Each I/O Line
– Individually Programmable Open-drain, Pull-up resistor and Synchronous Output
Eleven (AT91SAM7S256/128/64/321) or Nine (AT91SAM7S32) Peripheral DMA Controller (PDC) Channels
One USB 2.0 Full Speed (12 Mbits per Second) Device Port (Except for the AT91SAM7S32).
– On-chip Transceiver, 328-byte Configurable Integrated FIFOs
One Synchronous Serial Controller (SSC)
– Independent Clock and Frame Sync Signals for Each Receiver and Transmitter
– I²S Analog Interface Support, Time Division Multiplex Support
– High-speed Continuous Data Stream Capabilities with 32-bit Data Transfer
Two (AT91SAM7S256/128/64/321) or One (AT91SAM7S32) Universal Synchronous/Asynchronous Receiver Transmitters
(USART)
– Individual Baud Rate Generator, IrDA® Infrared Modulation/Demodulation
– Support for ISO7816 T0/T1 Smart Card, Hardware Handshaking, RS485 Support
– Manchester Encoder/Decoder (AT91SAM7S256/128)
– Full Modem Line Support on USART1 (AT91SAM7S256/128/64/321)
One Master/Slave Serial Peripheral Interface (SPI)
– 8- to 16-bit Programmable Data Length, Four External Peripheral Chip Selects
One Three (AT91SAM7S256/128/64/321)-channel or Two (AT91SAM7S32)-channel 16-bit Timer/Counter (TC)
– Three (AT91SAM7S256/128/64/321) or One (AT91SAM7S32) External Clock Inputs, Two Multi-purpose I/O Pins per
Channel
– Double PWM Generation, Capture/Waveform Mode, Up/Down Capability
One Four-channel 16-bit PWM Controller (PWMC)
One Two-wire Interface (TWI)
– Master Mode Support Only, All Two-wire Atmel EEPROMs Supported
One 8-channel 10-bit Analog-to-Digital Converter, Four Channels Multiplexed with Digital I/Os
SAM-BA™ Boot Assistant
– Default Boot program
– Interface with SAM-BA Graphic User Interface
IEEE 1149.1 JTAG Boundary Scan on All Digital Pins
5V-tolerant I/Os, including Four High-current Drive I/O lines, Up to 16 mA Each
Power Supplies
– Embedded 1.8V Regulator, Drawing up to 100 mA for the Core and External Components
– 3.3V or 1.8V VDDIO I/O Lines Power Supply, Independent 3.3V VDDFLASH Flash Power Supply
– 1.8V VDDCORE Core Power Supply with Brown-out Detector
Fully Static Operation: Up to 55 MHz at 1.65V and 85° C Worst Case Conditions
Available in a 64-lead LQFP Green Package (AT91SAM7S256/128/64/321) and 48-lead LQFP Green Package (AT91SAM7S32)
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
1. Description
Atmel’s AT91SAM7S is a series of low pincount Flash microcontrollers based on the 32-bit ARM
RISC processor. It features a high-speed Flash and an SRAM, a large set of peripherals, including a USB 2.0 device (except for the AT91SAM7S32), and a complete set of system functions
minimizing the number of external components. The device is an ideal migration path for 8-bit
microcontroller users looking for additional performance and extended memory.
The embedded Flash memory can be programmed in-system via the JTAG-ICE interface or via
a parallel interface on a production programmer prior to mounting. Built-in lock bits and a security bit protect the firmware from accidental overwrite and preserves its confidentiality.
The AT91SAM7S Series system controller includes a reset controller capable of managing the
power-on sequence of the microcontroller and the complete system. Correct device operation
can be monitored by a built-in brownout detector and a watchdog running off an integrated RC
oscillator.
The AT91SAM7S Series are general-purpose microcontrollers. Their integrated USB Device
port makes them ideal devices for peripheral applications requiring connectivity to a PC or cellular phone. Their aggressive price point and high level of integration pushes their scope of use far
into the cost-sensitive, high-volume consumer market.
2. Configuration Summary of the AT91SAM7S256, AT91SAM7S128,
AT91SAM7S64, AT91SAM7S321 and AT91SAM7S32
The AT91SAM7S256, AT91SAM7S128, AT91SAM7S64, AT91SAM7S321 and AT91SAM7S32
differ in memory size, peripheral set and package. Table 2-1 summarizes the configuration of
the five devices.
Except for the AT91SAM7S32, all other AT91SAM7S devices are package and pinout
compatible.
Table 2-1.
Configuration Summary
Device
Flash
SRAM
USB
Device
Port
AT91SAM7S256
256K byte
64K byte
1
2(1) (2)
2
11
3
32
LQFP 64
1
(1) (2)
2
11
3
32
LQFP 64
(2)
2
11
3
32
LQFP 64
(2)
AT91SAM7S128
AT91SAM7S64
128K byte
64K byte
32K byte
16K byte
1
USART
External
Interrupt
Source
PDC
Channels
TC
Channels
I/O Lines
Package
2
2
AT91SAM7S321
32K byte
8K byte
1
2
2
11
3
32
LQFP 64
AT91SAM7S32
32K byte
8K byte
not
present
1
1
9
2
21
LQFP 48
Notes:
1. Manchester Encoder/Decoder, Fractional Baud Rate.
2. Full modem line support on USART1.
3
6175BS–ATARM–04-Nov-05
3. Block Diagram
Figure 3-1.
AT91SAM7S256/128/64/321 Block Diagram
TDI
TDO
TMS
TCK
ICE
JTAG
SCAN
ARM7TDMI
Processor
JTAGSEL
1.8 V
Voltage
Regulator
System Controller
TST
FIQ
VDDCORE
AIC
PCK0-PCK2
PLL
XIN
XOUT
OSC
PMC
SRAM
Embedded
Flash
Controller
Address
Decoder
Abort
Status
Misalignment
Detection
64/32/16/8 Kbytes
VDDFLASH
Flash
RCOSC
VDDCORE
VDDCORE
256/128/64/32 Kbytes
BOD
POR
ROM
Peripheral Data
Controller
NRST
APB
WDT
SAM-BA
PIO
RTT
DBGU
PDC
FIFO
PDC
USB Device
PIOA
PDC
PWMC
USART0
PDC
SSC
PIO
PDC
PDC
PDC
USART1
Timer Counter
PIO
RXD0
TXD0
SCK0
RTS0
CTS0
RXD1
TXD1
SCK1
RTS1
CTS1
DCD1
DSR1
DTR1
RI1
NPCS0
NPCS1
NPCS2
NPCS3
MISO
MOSI
SPCK
ADTRG
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7
PGMRDY
PGMNVALID
PGMNOE
PGMCK
PGMM0-PGMM3
PGMD0-PGMD15
PGMNCMD
PGMEN0-PGMEN
Fast Flash
Programming
Interface
11 Channels
PIT
DRXD
DTXD
ERASE
Peripheral Bridge
Reset
Controller
Transceiver
PLLRC
VDDIO
Memory Controller
PIO
IRQ0-IRQ1
VDDIN
GND
VDDOUT
PDC
TC0
PDC
TC1
SPI
TC2
PDC
PDC
TWI
DDM
DDP
PWM0
PWM1
PWM2
PWM3
TF
TK
TD
RD
RK
RF
TCLK0
TCLK1
TCLK2
TIOA0
TIOB0
TIOA1
TIOB1
TIOA2
TIOB2
TWD
TWCK
ADC
ADVREF
4
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
Figure 3-2.
AT91SAM7S32 Block Diagram
TDI
TDO
TMS
TCK
ICE
JTAG
SCAN
ARM7TDMI
Processor
JTAGSEL
1.8 V
Voltage
Regulator
System Controller
TST
FIQ
PLL
XIN
XOUT
OSC
Embedded
Flash
Controller
Address
Decoder
Abort
Status
Misalignment
Detection
PMC
SRAM
8 Kbytes
VDDFLASH
Flash
32 Kbytes
RCOSC
VDDCORE
VDDCORE
BOD
POR
ERASE
Peripheral Bridge
Reset
Controller
Peripheral DMA
Controller
NRST
ROM
PGMRDY
PGMNVALID
PGMNOE
PGMCK
PGMM0-PGMM3
PGMD0-PGMD7
PGMNCMD
PGMEN0-PGMEN2
9 Channels
Fast Flash
Programming
Interface
PIT
APB
WDT
PIO
RTT
DRXD
DTXD
VDDOUT
VDDIO
Memory Controller
PCK0-PCK2
PLLRC
GND
VDDCORE
AIC
PIO
IRQ0
VDDIN
SAM-BA
PDC
DBGU
PDC
PIOA
PWMC
ADTRG
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7
PDC
PDC
USART0
SSC
PDC
PIO
PDC
PDC
PIO
RXD0
TXD0
SCK0
RTS0
CTS0
NPCS0
NPCS1
NPCS2
NPCS3
MISO
MOSI
SPCK
SPI
PWM0
PWM1
PWM2
PWM3
TF
TK
TD
RD
RK
RF
TCLK0
Timer Counter
PDC
PDC
ADC
TC0
TIOA0
TIOB0
TC1
TIOA1
TIOB1
TC2
TWI
TWD
TWCK
ADVREF
5
6175BS–ATARM–04-Nov-05
4. Signal Description
Table 4-1.
Signal Name
Signal Description List
Function
Type
Active
Level
Comments
Power
VDDIN
Voltage and ADC Regulator Power Supply Input
Power
3.0 to 3.6V
VDDOUT
Voltage Regulator Output
Power
1.85V nominal
VDDFLASH
Flash Power Supply
Power
3.0V to 3.6V
VDDIO
I/O Lines Power Supply
Power
3.0V to 3.6V or 1.65V to 1.95V
VDDCORE
Core Power Supply
Power
1.65V to 1.95V
1.65V to 1.95V
VDDPLL
PLL
Power
GND
Ground
Ground
Clocks, Oscillators and PLLs
XIN
Main Oscillator Input
XOUT
Main Oscillator Output
PLLRC
PLL Filter
PCK0 - PCK2
Programmable Clock Output
Input
Output
Input
Output
ICE and JTAG
TCK
Test Clock
TDI
Test Data In
TDO
Test Data Out
TMS
Test Mode Select
JTAGSEL
JTAG Selection
Input
No pull-up resistor
Input
No pull-up resistor
Output
Input
No pull-up resistor
Input
Pull-down resistor
Flash Memory
Flash and NVM Configuration Bits Erase
Command
ERASE
Input
High
Pull-down resistor
I/O
Low
Open-drain with pull-Up resistor
Input
High
Pull-down resistor
Reset/Test
NRST
Microcontroller Reset
TST
Test Mode Select
Debug Unit
DRXD
Debug Receive Data
Input
DTXD
Debug Transmit Data
Output
AIC
IRQ0 - IRQ1
External Interrupt Inputs
Input
FIQ
Fast Interrupt Input
Input
IRQ1 not present on
AT91SAM7S32
PIO
PA0 - PA31
6
Parallel IO Controller A
I/O
Pulled-up input at reset
PA0 - PA20 only on AT91SAM7S32
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
Table 4-1.
Signal Description List (Continued)
Signal Name
Function
Type
Active
Level
Comments
USB Device Port
DDM
USB Device Port Data -
Analog
not present on AT91SAM7S32
DDP
USB Device Port Data +
Analog
not present on AT91SAM7S32
USART
SCK1 not present on
SCK0 - SCK1
Serial Clock
I/O
TXD0 - TXD1
Transmit Data
I/O
RXD0 - RXD1
Receive Data
Input
RTS0 - RTS1
Request To Send
CTS0 - CTS1
Clear To Send
Input
DCD1
Data Carrier Detect
Input
not present on AT91SAM7S32
DTR1
Data Terminal Ready
Output
not present on AT91SAM7S32
DSR1
Data Set Ready
Input
not present on AT91SAM7S32
RI1
Ring Indicator
Input
not present on AT91SAM7S32
AT91SAM7S32
TXD1 not present on
AT91SAM7S32
RXD1 not present on
AT91SAM7S32
RTS1 not present on
Output
AT91SAM7S32
CTS1 not present on
AT91SAM7S32
Synchronous Serial Controller
TD
Transmit Data
Output
RD
Receive Data
Input
TK
Transmit Clock
I/O
RK
Receive Clock
I/O
TF
Transmit Frame Sync
I/O
RF
Receive Frame Sync
I/O
Timer/Counter
TCLK0 - TCLK2
External Clock Inputs
TIOA0 - TIOA2
I/O Line A
I/O
TIOB0 - TIOB2
I/O Line B
I/O
TCLK1 and TCLK2 not present on
Input
AT91SAM7S32
TIOA2 not present on
AT91SAM7S32
TIOB2 not present on
AT91SAM7S32
PWM Controller
PWM0 - PWM3
PWM Channels
Output
SPI
MISO
Master In Slave Out
I/O
MOSI
Master Out Slave In
I/O
SPCK
SPI Serial Clock
I/O
NPCS0
SPI Peripheral Chip Select 0
I/O
Low
NPCS1-NPCS3
SPI Peripheral Chip Select 1 to 3
Output
Low
7
6175BS–ATARM–04-Nov-05
Table 4-1.
Signal Description List (Continued)
Signal Name
Function
Type
Active
Level
Comments
Two-Wire Interface
TWD
Two-wire Serial Data
I/O
TWCK
Two-wire Serial Clock
I/O
Analog-to-Digital Converter
AD0-AD3
Analog Inputs
Analog
Digital pulled-up inputs at reset
AD4-AD7
Analog Inputs
Analog
Analog Inputs
ADTRG
ADC Trigger
ADVREF
ADC Reference
Input
Analog
Fast Flash Programming Interface
PGMEN0-PGMEN2
Programming Enabling
Input
PGMM0-PGMM3
Programming Mode
Input
PGMD0-PGMD15
Programming Data
I/O
PGMRDY
Programming Ready
Output
High
PGMNVALID
Data Direction
Output
Low
PGMNOE
Programming Read
Input
Low
PGMCK
Programming Clock
Input
PGMNCMD
Programming Command
Input
8
PGMD0-PGMD7 only on
AT91SAM7S32
Low
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
5. Package and Pinout
The AT91SAM7S256/128/64/321 are available in a 64-lead LQFP package.
The AT91SAM7S32 is available in a 48-lead LQFP package.
5.1
64-lead LQFP Mechanical Overview
Figure 5-1 shows the orientation of the 64-lead LQFP package. A detailed mechanical description is given in the section Mechanical Characteristics of the full datasheet.
Figure 5-1.
64-lead LQFP Package Pinout (Top View)
33
48
49
32
64
17
16
1
5.2
64-lead LQFP Pinout
Table 5-1.
AT91SAM7S256/128/64/321 Pinout in 64-lead LQFP Package
1
ADVREF
17
GND
33
TDI
49
TDO
2
GND
18
VDDIO
34
PA6/PGMNOE
50
JTAGSEL
3
AD4
19
PA16/PGMD4
35
PA5/PGMRDY
51
TMS
4
AD5
20
PA15/PGMD3
36
PA4/PGMNCMD
52
PA31
5
AD6
21
PA14/PGMD2
37
PA27/PGMD15
53
TCK
6
AD7
22
PA13/PGMD1
38
PA28
54
VDDCORE
7
VDDIN
23
PA24/PGMD12
39
NRST
55
ERASE
8
VDDOUT
24
VDDCORE
40
TST
56
DDM
9
PA17/PGMD5/AD0
25
PA25/PGMD13
41
PA29
57
DDP
10
PA18/PGMD6/AD1
26
PA26/PGMD14
42
PA30
58
VDDIO
11
PA21/PGMD9
27
PA12/PGMD0
43
PA3
59
VDDFLASH
12
VDDCORE
28
PA11/PGMM3
44
PA2/PGMEN2
60
GND
13
PA19/PGMD7/AD2
29
PA10/PGMM2
45
VDDIO
61
XOUT
14
PA22/PGMD10
30
PA9/PGMM1
46
GND
62
XIN/PGMCK
15
PA23/PGMD11
31
PA8/PGMM0
47
PA1/PGMEN1
63
PLLRC
16
PA20/PGMD8/AD3
32
PA7/PGMNVALID
48
PA0/PGMEN0
64
VDDPLL
9
6175BS–ATARM–04-Nov-05
5.3
48-lead LQFP Mechanical Overview
Figure 5-1 shows the orientation of the 48-lead LQFP package. A detailed mechanical description is given in the section Mechanical Characteristics of the product datasheet.
Figure 5-2.
48-lead LQFP Package Pinout (Top View)
25
36
37
24
48
13
12
1
5.4
48-lead LQFP Pinout
Table 5-2.
AT91SAM7S32 Pinout in 48-lead LQFP Package
1
ADVREF
13
VDDIO
25
TDI
37
TDO
2
GND
14
PA16/PGMD4
26
PA6/PGMNOE
38
JTAGSEL
3
AD4
15
PA15/PGMD3
27
PA5/PGMRDY
39
TMS
4
AD5
16
PA14/PGMD2
28
PA4/PGMNCMD
40
TCK
5
AD6
17
PA13/PGMD1
29
NRST
41
VDDCORE
6
AD7
18
VDDCORE
30
TST
42
ERASE
7
VDDIN
19
PA12/PGMD0
31
PA3
43
VDDFLASH
8
VDDOUT
20
PA11/PGMM3
32
PA2/PGMEN2
44
GND
9
PA17/PGMD5/AD0
21
PA10/PGMM2
33
VDDIO
45
XOUT
10
PA18/PGMD6/AD1
22
PA9/PGMM1
34
GND
46
XIN/PGMCK
11
PA19/PGMD7/AD2
23
PA8/PGMM0
35
PA1/PGMEN1
47
PLLRC
12
PA20/AD3
24
PA7/PGMNVALID
36
PA0/PGMEN0
48
VDDPLL
10
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
6. Power Considerations
6.1
Power Supplies
The AT91SAM7S Series has six types of power supply pins and integrates a voltage regulator,
allowing the device to be supplied with only one voltage. The six power supply pin types are:
• VDDIN pin. It powers the voltage regulator and the ADC; voltage ranges from 3.0V to 3.6V,
3.3V nominal.
• VDDOUT pin. It is the output of the 1.8V voltage regulator.
• VDDIO pin. It powers the I/O lines and the USB transceivers; dual voltage range is
supported. Ranges from 3.0V to 3.6V, 3.3V nominal or from 1.65V to 1.95V, 1.8V nominal.
Note that supplying less than 3.0V to VDDIO prevents any use of the USB transceivers.
• VDDFLASH pin. It powers a part of the Flash and is required for the Flash to operate
correctly; voltage ranges from 3.0V to 3.6V, 3.3V nominal.
• VDDCORE pins. They power the logic of the device; voltage ranges from 1.65V to 1.95V,
1.8V typical. It can be connected to the VDDOUT pin with decoupling capacitor. VDDCORE
is required for the device, including its embedded Flash, to operate correctly.
During startup, core supply voltage (VDDCORE) slope must be superior or equal to
6V/ms.
• VDDPLL pin. It powers the oscillator and the PLL. It can be connected directly to the
VDDOUT pin.
No separate ground pins are provided for the different power supplies. Only GND pins are provided and should be connected as shortly as possible to the system ground plane.
In order to decrease current consumption, if the voltage regulator and the ADC are not used,
VDDIN, ADVREF, AD4, AD5, AD6 and AD7 should be connected to GND. In this case VDDOUT
should be left unconnected.
6.2
Power Consumption
The AT91SAM7S Series has a static current of less than 60 µA on VDDCORE at 25°C, including
the RC oscillator, the voltage regulator and the power-on reset. When the brown-out detector is
activated, 20 µA static current is added.
The dynamic power consumption on VDDCORE is less than 50 mA at full speed when running
out of the Flash. Under the same conditions, the power consumption on VDDFLASH does not
exceed 10 mA.
6.3
Voltage Regulator
The AT91SAM7S Series embeds a voltage regulator that is managed by the System Controller.
In Normal Mode, the voltage regulator consumes less than 100 µA static current and draws 100
mA of output current.
The voltage regulator also has a Low-power Mode. In this mode, it consumes less than 25 µA
static current and draws 1 mA of output current.
Adequate output supply decoupling is mandatory for VDDOUT to reduce ripple and avoid oscillations. The best way to achieve this is to use two capacitors in parallel: one external 470 pF (or
1 nF) NPO capacitor must be connected between VDDOUT and GND as close to the chip as
11
6175BS–ATARM–04-Nov-05
possible. One external 2.2 µF (or 3.3 µF) X7R capacitor must be connected between VDDOUT
and GND.
Adequate input supply decoupling is mandatory for VDDIN in order to improve startup stability
and reduce source voltage drop. The input decoupling capacitor should be placed close to the
chip. For example, two capacitors can be used in parallel: 100 nF NPO and 4.7 µF X7R.
6.4
Typical Powering Schematics
The AT91SAM7S Series supports a 3.3V single supply mode. The internal regulator is connected to the 3.3V source and its output feeds VDDCORE and the VDDPLL. Figure 6-1 shows
the power schematics to be used for USB bus-powered systems.
Figure 6-1.
3.3V System Single Power Supply Schematic
VDDFLASH
Power Source
ranges
from 4.5V (USB)
to 18V
DC/DC Converter
VDDIO
VDDIN
Voltage
Regulator
3.3V
VDDOUT
VDDCORE
VDDPLL
12
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
7. I/O Lines Considerations
7.1
JTAG Port Pins
TMS, TDI and TCK are schmitt trigger inputs. TMS and TCK are 5-V tolerant, TDI is not. TMS,
TDI and TCK do not integrate a pull-up resistor.
TDO is an output, driven at up to VDDIO, and has no pull-up resistor.
The JTAGSEL pin is used to select the JTAG boundary scan when asserted at a high level. The
JTAGSEL pin integrates a permanent pull-down resistor of about 15 kΩ to GND, so that it can be
left unconnected for normal operations.
7.2
Test Pin
The TST pin is used for manufacturing test, fast programming mode or SAM-BA Boot Recovery
of the AT91SAM7S Series when asserted high. The TST pin integrates a permanent pull-down
resistor of about 15 kΩ to GND, so that it can be left unconnected for normal operations.
To enter fast programming mode, the TST pin and the PA0 and PA1 pins should be tied high
and PA2 tied to low.
To enter SAM-BA Boot Recovery, the TST pin and the PA0, PA1 and PA2 pins should be tied
high.
Driving the TST pin at a high level while PA0 or PA1 is driven at 0 leads to unpredictable results.
7.3
Reset Pin
The NRST pin is bidirectional with an open drain output buffer. It is handled by the on-chip reset
controller and can be driven low to provide a reset signal to the external components or asserted
low externally to reset the microcontroller. There is no constraint on the length of the reset pulse,
and the reset controller can guarantee a minimum pulse length. This allows connection of a simple push-button on the pin NRST as system user reset, and the use of the signal NRST to reset
all the components of the system.
The NRST pin integrates a permanent pull-up resistor to VDDIO.
7.4
ERASE Pin
The ERASE pin is used to re-initialize the Flash content and some of its NVM bits. It integrates a
permanent pull-down resistor of about 15 kΩ to GND, so that it can be left unconnected for normal operations.
7.5
PIO Controller A Lines
All the I/O lines PA0 to PA31 (PA0 to PA20 on AT91SAM7S32) are 5V-tolerant and all integrate
a programmable pull-up resistor. Programming of this pull-up resistor is performed independently for each I/O line through the PIO controllers.
5V-tolerant means that the I/O lines can drive voltage level according to VDDIO, but can be
driven with a voltage of up to 5.5V. However, driving an I/O line with a voltage over VDDIO while
the programmable pull-up resistor is enabled will create a current path through the pull-up resistor from the I/O line to VDDIO. Care should be taken, in particular at reset, as all the I/O lines
default to input with pull-up resistor enabled at reset.
13
6175BS–ATARM–04-Nov-05
7.6
I/O Line Drive Levels
The PIO lines PA0 to PA3 are high-drive current capable. Each of these I/O lines can drive up to
16 mA permanently.
The remaining I/O lines can draw only 8 mA.
However, the total current drawn by all the I/O lines cannot exceed 150 mA (100mA for
AT91SAM7S32).
14
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
8. Processor and Architecture
8.1
ARM7TDMI Processor
• RISC processor based on ARMv4T Von Neumann architecture
– Runs at up to 55 MHz, providing 0.9 MIPS/MHz
• Two instruction sets
– ARM® high-performance 32-bit instruction set
– Thumb® high code density 16-bit instruction set
• Three-stage pipeline architecture
– Instruction Fetch (F)
– Instruction Decode (D)
– Execute (E)
8.2
Debug and Test Features
• Integrated Embedded ICE (embedded in-circuit emulator)
– Two watchpoint units
– Test access port accessible through a JTAG protocol
– Debug communication channel
• Debug Unit
– Two-pin UART
– Debug communication channel interrupt handling
– Chip ID Register
• IEEE1149.1 JTAG Boundary-scan on all digital pins
8.3
Memory Controller
• Bus Arbiter
– Handles requests from the ARM7TDMI and the Peripheral DMA Controller
• Address decoder provides selection signals for
– Three internal 1 Mbyte memory areas
– One 256 Mbyte embedded peripheral area
• Abort Status Registers
– Source, Type and all parameters of the access leading to an abort are saved
– Facilitates debug by detection of bad pointers
• Misalignment Detector
– Alignment checking of all data accesses
– Abort generation in case of misalignment
• Remap Command
– Remaps the SRAM in place of the embedded non-volatile memory
– Allows handling of dynamic exception vectors
• Embedded Flash Controller
– Embedded Flash interface, up to three programmable wait states
15
6175BS–ATARM–04-Nov-05
– Prefetch buffer, buffering and anticipating the 16-bit requests, reducing the required
wait states
– Key-protected program, erase and lock/unlock sequencer
– Single command for erasing, programming and locking operations
– Interrupt generation in case of forbidden operation
8.4
Peripheral DMA Controller
• Handles data transfer between peripherals and memories
• Eleven channels: AT91SAM7S256/128/64/321
• Nine channels: AT91SAM7S32
– Two for each USART
– Two for the Debug Unit
– Two for the Serial Synchronous Controller
– Two for the Serial Peripheral Interface
– One for the Analog-to-digital Converter
• Low bus arbitration overhead
– One Master Clock cycle needed for a transfer from memory to peripheral
– Two Master Clock cycles needed for a transfer from peripheral to memory
• Next Pointer management for reducing interrupt latency requirements
16
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
9. Memory
9.1
AT91SAM7S256
•
•
256 Kbytes of Flash Memory single plane
–
1024 pages of 256 bytes
–
Fast access time, 30 MHz single-cycle access in Worst Case conditions
–
Page programming time: 6 ms, including page auto-erase
–
Page programming without auto-erase: 3 ms
–
Full chip erase time: 15 ms
–
10,000 write cycles, 10-year data retention capability
–
16 lock bits, protecting 16 sectors of 64 pages
–
Protection Mode to secure contents of the Flash
64 Kbytes of Fast SRAM
–
9.2
AT91SAM7S128
•
•
128 Kbytes of Flash Memory single plane
–
512 pages of 256 bytes
–
Fast access time, 30 MHz single-cycle access in Worst Case conditions
–
Page programming time: 6 ms, including page auto-erase
–
Page programming without auto-erase: 3 ms
–
Full chip erase time: 15 ms
–
10,000 write cycles, 10-year data retention capability
–
8 lock bits, protecting 8 sectors of 64 pages
–
Protection Mode to secure contents of the Flash
32 Kbytes of Fast SRAM
–
9.3
Single-cycle access at full speed
Single-cycle access at full speed
AT91SAM7S64
•
•
64 Kbytes of Flash Memory single plane
–
512 pages of 128 bytes
–
Fast access time, 30 MHz single-cycle access in Worst Case conditions
–
Page programming time: 6 ms, including page auto-erase
–
Page programming without auto-erase: 3 ms
–
Full chip erase time: 15 ms
–
10,000 write cycles, 10-year data retention capability
–
16 lock bits, protecting 16 sectors of 32 pages
–
Protection Mode to secure contents of the Flash
16 Kbytes of Fast SRAM
–
Single-cycle access at full speed
17
6175BS–ATARM–04-Nov-05
9.4
AT91SAM7S321/32
•
•
32 Kbytes of Flash Memory single plane
–
256 pages of 128 bytes
–
Fast access time, 30 MHz single-cycle access in Worst Case conditions
–
Page programming time: 6 ms, including page auto-erase
–
Page programming without auto-erase: 3 ms
–
Full chip erase time: 15 ms
–
10,000 write cycles, 10-year data retention capability
–
8 lock bits, protecting 8 sectors of 32 pages
–
Protection Mode to secure contents of the Flash
8 Kbytes of Fast SRAM
–
9.5
9.5.1
Single-cycle access at full speed
Memory Mapping
Internal SRAM
The AT91SAM7S256/128/64/321/32 embeds a high-speed 64/32/16/8/8-Kbyte SRAM bank.
After reset and until the Remap Command is performed, the SRAM is only accessible at address
0x0020 0000. After Remap, the SRAM also becomes available at address 0x0.
9.5.2
Internal ROM
The AT91SAM7S Series embeds an Internal ROM. The ROM contains the FFPI and the
SAM-BA program.
The internal ROM is not mapped by default.
9.5.3
Internal Flash
The AT91SAM7S256/128/64/321/32 features one bank of 256/128/64/32/32 Kbytes of Flash. At
any time, the Flash is mapped to address 0x0010 0000. It is also accessible at address 0x0 after
the reset and before the Remap Command.
Figure 9-1.
Internal Memory Mapping
0x0000 0000
0x000F FFFF
Flash Before Remap
SRAM After Remap
1 M Bytes
0x0010 0000
Internal Flash
1 M Bytes
Internal SRAM
1 M Bytes
0x001F FFFF
0x0020 0000
256M Bytes
0x002F FFFF
0x0030 0000
Undefined Areas
(Abort)
253 M Bytes
0x0FFF FFFF
18
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
9.6
Embedded Flash
9.6.1
Flash Overview
• The Flash of the AT91SAM7S256 is organized in 1024 pages of 256 bytes. The 262,144
bytes are organized in 32-bit words.
• The Flash of the AT91SAM7S128 is organized in 512 pages of 256 bytes. The 131,072 bytes
are organized in 32-bit words.
• The Flash of the AT91SAM7S64 is organized in 512 pages of 128 bytes. The 65,536 bytes
are organized in 32-bit words.
• The Flash of the AT91SAM7S321/32 is organized in 256 pages of 128 bytes. The 32,768
bytes are organized in 32-bit words.
• The Flash of the AT91SAM7S256/128 contains a 256-byte write buffer, accessible through a
32-bit interface.
• The Flash of the AT91SAM7S64/321/32 contains a 128-byte write buffer, accessible through
a 32-bit interface.
The Flash benefits from the integration of a power reset cell and from the brownout detector.
This prevents code corruption during power supply changes, even in the worst conditions.
When Flash is not used (read or write access), it is automatically placed into standby mode.
9.6.2
Embedded Flash Controller
The Embedded Flash Controller (EFC) manages accesses performed by the masters of the system. It enables reading the Flash and writing the write buffer. It also contains a User Interface,
mapped within the Memory Controller on the APB. The User Interface allows:
• programming of the access parameters of the Flash (number of wait states, timings, etc.)
• starting commands such as full erase, page erase, page program, NVM bit set, NVM bit
clear, etc.
• getting the end status of the last command
• getting error status
• programming interrupts on the end of the last commands or on errors
The Embedded Flash Controller also provides a dual 32-bit Prefetch Buffer that optimizes 16-bit
access to the Flash. This is particularly efficient when the processor is running in Thumb mode.
9.6.3
Lock Regions
The Embedded Flash Controller manages 16/8 lock bits to protect 16/8 regions of the flash
against inadvertent flash erasing or programming commands.
Table 9-1 summarizes the configuration of the five devices.
Table 9-1.
Flash Configuration Summary
Device
Number of Lock Bits
Number of Pages in the Lock Region
Page Size
AT91SAM7S256
16
64
256 bytes
AT91SAM7S128
8
64
256 bytes
AT91SAM7S64
16
32
128 bytes
AT91SAM7S321/32
8
32
128 bytes
19
6175BS–ATARM–04-Nov-05
If a locked-regions erase or program command occurs, the command is aborted and the EFC
trigs an interrupt.
The 16 NVM bits are software programmable through the EFC User Interface. The command
“Set Lock Bit” enables the protection. The command “Clear Lock Bit” unlocks the lock region.
Asserting the ERASE pin clears the lock bits, thus unlocking the entire Flash.
9.6.4
Security Bit Feature
The AT91SAM7S Series features a security bit, based on a specific NVM-Bit. When the security
is enabled, any access to the Flash, either through the ICE interface or through the Fast Flash
Programming Interface, is forbidden. This ensures the confidentiality of the code programmed in
the Flash.
This security bit can only be enabled, through the Command “Set Security Bit” of the EFC User
Interface. Disabling the security bit can only be achieved by asserting the ERASE pin at 1, and
after a full flash erase is performed. When the security bit is deactivated, all accesses to the
flash are permitted.
It is important to note that the assertion of the ERASE pin should always be longer than
50 ms.
As the ERASE pin integrates a permanent pull-down, it can be left unconnected during normal
operation. However, it is safer to connect it directly to GND for the final application.
9.6.5
Non-volatile Brownout Detector Control
Two general purpose NVM (GPNVM) bits are used for controlling the brownout detector (BOD),
so that even after a power loss, the brownout detector operations remain in their state.
These two GPNVM bits can be cleared or set respectively through the commands “Clear General-purpose NVM Bit” and “Set General-purpose NVM Bit” of the EFC User Interface.
• GPNVM Bit 0 is used as a brownout detector enable bit. Setting the GPNVM Bit 0 enables
the BOD, clearing it disables the BOD. Asserting ERASE clears the GPNVM Bit 0 and thus
disables the brownout detector by default.
• The GPNVM Bit 1 is used as a brownout reset enable signal for the reset controller. Setting
the GPNVM Bit 1 enables the brownout reset when a brownout is detected, Clearing the
GPNVM Bit 1 disables the brownout reset. Asserting ERASE disables the brownout reset by
default.
9.6.6
9.7
Calibration Bits
Eight NVM bits are used to calibrate the brownout detector and the voltage regulator. These bits
are factory configured and cannot be changed by the user. The ERASE pin has no effect on the
calibration bits.
Fast Flash Programming Interface
The Fast Flash Programming Interface allows programming the device through either a serial
JTAG interface or through a multiplexed fully-handshaked parallel port. It allows gang-programming with market-standard industrial programmers.
The FFPI supports read, page program, page erase, full erase, lock, unlock and protect
commands.
The Fast Flash Programming Interface is enabled and the Fast Programming Mode is entered
when the TST pin and the PA0 and PA1 pins are all tied high and PA2 is tied low.
20
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
9.8
SAM-BA Boot Assistant
The SAM-BA™ Boot Recovery restores the SAM-BA Boot in the first two sectors of the on-chip
Flash memory. The SAM-BA Boot recovery is performed when the TST pin and the PA0, PA1
and PA2 pins are all tied high.
The SAM-BA Boot Assistant is a default Boot Program that provides an easy way to program in
situ the on-chip Flash memory.
The SAM-BA Boot Assistant supports serial communication through the DBGU or through the
USB Device Port. (The AT91SAM7S32 has no USB Device Port.)
• Communication through the DBGU supports a wide range of crystals from 3 to 20 MHz via
software auto-detection.
• Communication through the USB Device Port is limited to an 18.432 MHz crystal. (
The SAM-BA Boot provides an interface with SAM-BA Graphic User Interface (GUI).
21
6175BS–ATARM–04-Nov-05
10. System Controller
The System Controller manages all vital blocks of the microcontroller: interrupts, clocks, power,
time, debug and reset.
Figure 10-1. System Controller Block Diagram (AT91SAM7S256/128/64/321)
System Controller
jtag_nreset
Boundary Scan
TAP Controller
nirq
irq0-irq1
Advanced
Interrupt
Controller
fiq
periph_irq[2..14]
nfiq
proc_nreset
ARM7TDMI
PCK
int
debug
pit_irq
rtt_irq
wdt_irq
dbgu_irq
pmc_irq
rstc_irq
ice_nreset
force_ntrst
MCK
periph_nreset
dbgu_irq
Debug
Unit
force_ntrst
dbgu_txd
dbgu_rxd
security_bit
MCK
debug
periph_nreset
SLCK
periph_nreset
pit_irq
Real-Time
Timer
rtt_irq
Watchdog
Timer
wdt_irq
flash_poe
flash_wrdis
cal
gpnvm[0]
wdt_fault
WDRPROC
gpnvm[1]
flash_wrdis
gpnvm[0..1]
MCK
bod_rst_en
BOD
proc_nreset
ice_nreset
jtag_nreset
POR
Reset
Controller
proc_nreset
rstc_irq
NRST
OSC
SLCK
MAINCK
XOUT
Voltage
Regulator
Mode
Controller
standby
Voltage
Regulator
cal
SLCK
XIN
Memory
Controller
periph_nreset
flash_poe
RCOSC
Embedded
Flash
cal
SLCK
debug
idle
proc_nreset
en
Periodic
Interval
Timer
periph_clk[2..14]
Power
Management
Controller
UDPCK
pck[0-2]
periph_clk[11]
PCK
periph_nreset
UDPCK
MCK
USB Device
Port
periph_irq[11]
usb_suspend
PLLRC
PLL
PLLCK
pmc_irq
int
idle
periph_nreset
periph_clk[4..14]
usb_suspend
periph_nreset
irq0-irq1
periph_clk[2]
dbgu_rxd
Embedded
Peripherals
periph_irq{2]
periph_nreset
PIO
Controller
fiq
periph_irq[4..14]
dbgu_txd
in
PA0-PA31
out
enable
22
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
Figure 10-2. System Controller Block Diagram (AT91SAM7S32)
System Controller
jtag_nreset
Boundary Scan
TAP Controller
nirq
irq0
Advanced
Interrupt
Controller
fiq
periph_irq[2..14]
nfiq
proc_nreset
ARM7TDMI
PCK
int
debug
pit_irq
rtt_irq
wdt_irq
dbgu_irq
pmc_irq
rstc_irq
ice_nreset
force_ntrst
dbgu_irq
MCK
periph_nreset
Debug
Unit
force_ntrst
dbgu_txd
dbgu_rxd
security_bit
MCK
debug
periph_nreset
SLCK
periph_nreset
pit_irq
Real-Time
Timer
rtt_irq
Watchdog
Timer
wdt_irq
flash_poe
flash_wrdis
cal
gpnvm[0]
gpnvm[0..1]
wdt_fault
WDRPROC
gpnvm[1]
flash_wrdis
MCK
bod_rst_en
BOD
proc_nreset
ice_nreset
jtag_nreset
POR
Reset
Controller
Memory
Controller
periph_nreset
proc_nreset
flash_poe
rstc_irq
NRST
Voltage
Regulator
Mode
Controller
standby
Voltage
Regulator
cal
SLCK
RCOSC
Embedded
Flash
cal
SLCK
debug
idle
proc_nreset
en
Periodic
Interval
Timer
SLCK
periph_clk[2..14]
pck[0-2]
XIN
OSC
MAINCK
XOUT
Power
Management
Controller
PCK
MCK
PLLRC
PLL
PLLCK
pmc_irq
int
idle
periph_nreset
periph_clk[4..14]
periph_nreset
irq0
periph_clk[2]
dbgu_rxd
Embedded
Peripherals
periph_irq{2]
periph_nreset
PIO
Controller
fiq
periph_irq[4..14]
dbgu_txd
in
PA0-PA20
out
enable
23
6175BS–ATARM–04-Nov-05
10.1
System Controller Mapping
The System Controller peripherals are all mapped to the highest 4 Kbytes of address space,
between addresses 0xFFFF F000 and 0xFFFF FFFF.
Figure 10-3 shows the mapping of the System Controller. Note that the Memory Controller configuration user interface is also mapped within this address space.
Figure 10-3. System Controller Mapping
Address
Peripheral
Peripheral Name
Size
0xFFFF F000
Advanced Interrupt Controller
512 Bytes/128 registers
DBGU
Debug Unit
512 Bytes/128 registers
PIOA
PIO Controller A
512 Bytes/128 registers
PMC
Power Management Controller
256 Bytes/64 registers
RSTC
Reset Controller
16 Bytes/4 registers
RTT
Real-time Timer
16 Bytes/4 registers
PIT
Periodic Interval Timer
16 Bytes/4 registers
Watchdog Timer
16 Bytes/4 registers
Voltage Regulator Mode Controller
4 Bytes/1 register
Memory Controller
256 Bytes/64 registers
AIC
0xFFFF F1FF
0xFFFF F200
0xFFFF F3FF
0xFFFF F400
0xFFFF F5FF
0xFFFF F600
Reserved
0xFFFF FBFF
0xFFFF FC00
0xFFFF FCFF
0xFFFF FD00
0xFFFF FD0F
Reserved
0xFFFF FD20
0xFFFF FC2F
0xFFFF FD30
0xFFFF FC3F
0xFFFF FD40
0xFFFF FD4F
WDT
Reserved
0xFFFF FD60
0xFFFF FC6F
0xFFFF FD70
0xFFFF FEFF
0xFFFF FF00
VREG
Reserved
MC
0xFFFF FFFF
24
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
10.2
Reset Controller
The Reset Controller is based on a power-on reset cell and one brownout detector. It gives the
status of the last reset, indicating whether it is a power-up reset, a software reset, a user reset, a
watchdog reset or a brownout reset. In addition, it controls the internal resets and the NRST pin
open-drain output. It allows to shape a signal on the NRST line, guaranteeing that the length of
the pulse meets any requirement.
Note that if NRST is used as a reset output signal for external devices during power-off, the
brownout detector must be activated.
10.2.1
Brownout Detector and Power-on Reset
The AT91SAM7S Series embeds a brownout detection circuit and a power-on reset cell. Both
are supplied with and monitor VDDCORE. Both signals are provided to the Flash to prevent any
code corruption during power-up or power-down sequences or if brownouts occur on the
VDDCORE power supply.
The power-on reset cell has a limited-accuracy threshold at around 1.5V. Its output remains low
during power-up until VDDCORE goes over this voltage level. This signal goes to the reset controller and allows a full re-initialization of the device.
The brownout detector monitors the VDDCORE level during operation by comparing it to a fixed
trigger level. It secures system operations in the most difficult environments and prevents code
corruption in case of brownout on the VDDCORE.
Only VDDCORE is monitored, as a voltage drop on VDDFLASH or any other power supply of
the device cannot affect the Flash.
When the brownout detector is enabled and VDDCORE decreases to a value below the trigger
level (Vbot-, defined as Vbot - hyst/2), the brownout output is immediately activated.
When VDDCORE increases above the trigger level (Vbot+, defined as Vbot + hyst/2), the reset
is released. The brownout detector only detects a drop if the voltage on VDDCORE stays below
the threshold voltage for longer than about 1µs.
The threshold voltage has a hysteresis of about 50 mV, to ensure spike free brownout detection.
The typical value of the brownout detector threshold is 1.68V with an accuracy of ± 2% and is
factory calibrated.
The brownout detector is low-power, as it consumes less than 20 µA static current. However, it
can be deactivated to save its static current. In this case, it consumes less than 1µA. The deactivation is configured through the GPNVM bit 0 of the Flash.
25
6175BS–ATARM–04-Nov-05
10.3
Clock Generator
The Clock Generator embeds one low-power RC Oscillator, one Main Oscillator and one PLL
with the following characteristics:
• RC Oscillator ranges between 22 kHz and 42 kHz
• Main Oscillator frequency ranges between 3 and 20 MHz
• Main Oscillator can be bypassed
• PLL output ranges between 80 and 220 MHz
It provides SLCK, MAINCK and PLLCK.
Figure 10-4. Clock Generator Block Diagram
Clock Generator
XIN
Embedded
RC
Oscillator
Slow Clock
SLCK
Main
Oscillator
Main Clock
MAINCK
PLL and
Divider
PLL Clock
PLLCK
XOUT
PLLRC
Status
Control
Power
Management
Controller
26
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
10.4
Power Management Controller
The Power Management Controller uses the Clock Generator outputs to provide:
• the Processor Clock PCK
• the Master Clock MCK
• the USB Clock UDPCK (not present on AT91SAM7S32)
• all the peripheral clocks, independently controllable
• three programmable clock outputs
The Master Clock (MCK) is programmable from a few hundred Hz to the maximum operating frequency of the device.
The Processor Clock (PCK) switches off when entering processor idle mode, thus allowing
reduced power consumption while waiting for an interrupt.
Figure 10-5. Power Management Controller Block Diagram
Processor
Clock
Controller
Master Clock Controller
SLCK
MAINCK
PLLCK
PCK
int
Idle Mode
Prescaler
/1,/2,/4,...,/64
MCK
Peripherals
Clock Controller
periph_clk[2..14]
ON/OFF
Programmable Clock Controller
SLCK
MAINCK
PLLCK
Prescaler
/1,/2,/4,...,/64
USB Clock Controller
ON/OFF
PLLCK
10.5
Divider
/1,/2,/4
pck[0..2]
usb_suspend
UDPCK
Advanced Interrupt Controller
• Controls the interrupt lines (nIRQ and nFIQ) of an ARM Processor
• Individually maskable and vectored interrupt sources
– Source 0 is reserved for the Fast Interrupt Input (FIQ)
– Source 1 is reserved for system peripherals RTT, PIT, EFC, PMC, DBGU, etc.)
– Other sources control the peripheral interrupts or external interrupts
– Programmable edge-triggered or level-sensitive internal sources
– Programmable positive/negative edge-triggered or high/low level-sensitive external
sources
• 8-level Priority Controller
– Drives the normal interrupt of the processor
– Handles priority of the interrupt sources
27
6175BS–ATARM–04-Nov-05
– Higher priority interrupts can be served during service of lower priority interrupt
• Vectoring
– Optimizes interrupt service routine branch and execution
– One 32-bit vector register per interrupt source
– Interrupt vector register reads the corresponding current interrupt vector
• Protect Mode
– Easy debugging by preventing automatic operations
• Fast Forcing
– Permits redirecting any interrupt source on the fast interrupt
• General Interrupt Mask
– Provides processor synchronization on events without triggering an interrupt
10.6
Debug Unit
• Comprises:
– One two-pin UART
– One Interface for the Debug Communication Channel (DCC) support
– One set of Chip ID Registers
– One Interface providing ICE Access Prevention
• Two-pin UART
– Implemented features are compatible with the USART
– Programmable Baud Rate Generator
– Parity, Framing and Overrun Error
– Automatic Echo, Local Loopback and Remote Loopback Channel Modes
• Debug Communication Channel Support
– Offers visibility of COMMRX and COMMTX signals from the ARM Processor
• Chip ID Registers
– Identification of the device revision, sizes of the embedded memories, set of
peripherals
– Chip ID is 0x270B0940 for AT91SAM7S256 (VERSION 0)
– Chip ID is 0x270A0740 for AT91SAM7S128 (VERSION 0)
– Chip ID is 0x27090540 for AT91SAM7S64 (VERSION 0)
– Chip ID is 0x27080342 for AT91SAM7S321 (VERSION 0)
– Chip ID is 0x27080340 for AT91SAM7S32 (VERSION 0)
10.7
Periodic Interval Timer
• 20-bit programmable counter plus 12-bit interval counter
10.8
Watchdog Timer
• 12-bit key-protected Programmable Counter running on prescaled SCLK
• Provides reset or interrupt signals to the system
• Counter may be stopped while the processor is in debug state or in idle mode
28
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
10.9
Real-time Timer
• 32-bit free-running counter with alarm running on prescaled SCLK
• Programmable 16-bit prescaler for SLCK accuracy compensation
10.10 PIO Controller
• One PIO Controller, controlling 32 I/O lines (21 for AT91SAM7S32)
• Fully programmable through set/clear registers
• Multiplexing of two peripheral functions per I/O line
• For each I/O line (whether assigned to a peripheral or used as general-purpose I/O)
– Input change interrupt
– Half a clock period glitch filter
– Multi-drive option enables driving in open drain
– Programmable pull-up on each I/O line
– Pin data status register, supplies visibility of the level on the pin at any time
• Synchronous output, provides Set and Clear of several I/O lines in a single write
10.11 Voltage Regulator Controller
The aim of this controller is to select the Power Mode of the Voltage Regulator between Normal
Mode (bit 0 is cleared) or Standby Mode (bit 0 is set).
29
6175BS–ATARM–04-Nov-05
11. Peripherals
11.1
Peripheral Mapping
Each peripheral is allocated 16 Kbytes of address space.
Figure 11-1. User Peripheral Mapping (AT91SAM7S256/128/64/321)
Peripheral Name
Size
Timer/Counter 0, 1 and 2
16 Kbytes
USB Device Port
16 Kbytes
Two-Wire Interface
16 Kbytes
USART0
Universal Synchronous Asynchronous
Receiver Transmitter 0
16 Kbytes
USART1
Universal Synchronous Asynchronous
Receiver Transmitter 1
16 Kbytes
PWM Controller
16 Kbytes
SSC
Serial Synchronous Controller
16 Kbytes
ADC
Analog-to-Digital Converter
16 Kbytes
0xF000 0000
Reserved
0xFFF9 FFFF
0xFFFA 0000
TC0, TC1, TC2
0xFFFA 3FFF
0xFFFA 4000
Reserved
0xFFFA FFFF
0xFFFB 0000
UDP
0xFFFB 3FFF
0xFFFB 4000
Reserved
0xFFFB 7FFF
0xFFFB 8000
TWI
0xFFFB BFFF
0xFFFB C000
Reserved
0xFFFB FFFF
0xFFFC 0000
0xFFFC 3FFF
0xFFFC 4000
0xFFFC 7FFF
0xFFFC 8000
Reserved
0xFFFC BFFF
0xFFFC C000
PWMC
0xFFFC FFFF
0xFFFD 0000
Reserved
0xFFFD 3FFF
0xFFFD 4000
0xFFFD 7FFF
0xFFFD 8000
0xFFFD BFFF
0xFFFD C000
Reserved
0xFFFD FFFF
0xFFFE 0000
SPI
Serial Peripheral Interface
16 Kbytes
0xFFFE 3FFF
0xFFFE 4000
Reserved
0xFFFE FFFF
30
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
Figure 11-2. User Peripheral Mapping (AT91SAM7S32)
Peripheral Name
Size
Timer/Counter 0, 1 and 2
16 Kbytes
Two-Wire Interface
16 Kbytes
Universal Synchronous Asynchronous
Receiver Transmitter
16 Kbytes
PWM Controller
16 Kbytes
SSC
Serial Synchronous Controller
16 Kbytes
ADC
Analog-to-Digital Converter
16 Kbytes
Serial Peripheral Interface
16 Kbytes
0xF000 0000
Reserved
0xFFF9 FFFF
0xFFFA 0000
TC0, TC1, TC2
0xFFFA 3FFF
0xFFFA 4000
Reserved
0xFFFA FFFF
0xFFFB 0000
Reserved
0xFFFB 3FFF
0xFFFB 4000
Reserved
0xFFFB 7FFF
0xFFFB 8000
TWI
0xFFFB BFFF
0xFFFB C000
Reserved
0xFFFB FFFF
0xFFFC 0000
USART
0xFFFC 3FFF
0xFFFC 4000
Reserved
0xFFFC 7FFF
0xFFFC 8000
Reserved
0xFFFC BFFF
0xFFFC C000
PWMC
0xFFFC FFFF
0xFFFD 0000
Reserved
0xFFFD 3FFF
0xFFFD 4000
0xFFFD 7FFF
0xFFFD 8000
0xFFFD BFFF
0xFFFD C000
Reserved
0xFFFD FFFF
0xFFFE 0000
SPI
0xFFFE 3FFF
0xFFFE 4000
Reserved
0xFFFE FFFF
31
6175BS–ATARM–04-Nov-05
11.2
Peripheral Multiplexing on PIO Lines
The AT91SAM7S Series features one PIO controller, PIOA, that multiplexes the I/O lines of the
peripheral set.
PIO Controller A controls 32 lines (21 lines for AT91SAM7S32). Each line can be assigned to
one of two peripheral functions, A or B. Some of them can also be multiplexed with the analog
inputs of the ADC Controller.
Table 11-1 on page 33 defines how the I/O lines of the peripherals A, B or the analog inputs are
multiplexed on the PIO Controller A. The two columns “Function” and “Comments” have been
inserted for the user’s own comments; they may be used to track how pins are defined in an
application.
Note that some peripheral functions that are output only may be duplicated in the table.
All pins reset in their Parallel I/O lines function are configured in input with the programmable
pull-up enabled, so that the device is maintained in a static state as soon as a reset is detected.
32
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
11.3
PIO Controller A Multiplexing
Table 11-1.
Multiplexing on PIO Controller A (AT91SAM7S256/128/64/321)
PIO Controller A
Application Usage
I/O Line
Peripheral A
Peripheral B
Comments
PA0
PWM0
TIOA0
High-Drive
PA1
PWM1
TIOB0
High-Drive
PA2
PWM2
SCK0
High-Drive
PA3
TWD
NPCS3
High-Drive
PA4
TWCK
TCLK0
PA5
RXD0
NPCS3
PA6
TXD0
PCK0
PA7
RTS0
PWM3
PA8
CTS0
ADTRG
PA9
DRXD
NPCS1
PA10
DTXD
NPCS2
PA11
NPCS0
PWM0
PA12
MISO
PWM1
PA13
MOSI
PWM2
PA14
SPCK
PWM3
PA15
TF
TIOA1
PA16
TK
TIOB1
PA17
TD
PCK1
AD0
PA18
RD
PCK2
AD1
PA19
RK
FIQ
AD2
PA20
RF
IRQ0
AD3
PA21
RXD1
PCK1
PA22
TXD1
NPCS3
PA23
SCK1
PWM0
PA24
RTS1
PWM1
PA25
CTS1
PWM2
PA26
DCD1
TIOA2
PA27
DTR1
TIOB2
PA28
DSR1
TCLK1
PA29
RI1
TCLK2
PA30
IRQ1
NPCS2
PA31
NPCS1
PCK2
Function
Comments
33
6175BS–ATARM–04-Nov-05
Table 11-2.
Multiplexing on PIO Controller A (SAM7S32)
PIO Controller A
Application Usage
I/O Line
Peripheral A
Peripheral B
Comments
PA0
PWM0
TIOA0
High-Drive
PA1
PWM1
TIOB0
High-Drive
PA2
PWM2
SCK0
High-Drive
PA3
TWD
NPCS3
High-Drive
PA4
TWCK
TCLK0
PA5
RXD0
NPCS3
PA6
TXD0
PCK0
PA7
RTS0
PWM3
PA8
CTS0
ADTRG
PA9
DRXD
NPCS1
PA10
DTXD
NPCS2
PA11
NPCS0
PWM0
PA12
MISO
PWM1
PA13
MOSI
PWM2
PA14
SPCK
PWM3
PA15
TF
TIOA1
PA16
TK
TIOB1
PA17
TD
PCK1
AD0
PA18
RD
PCK2
AD1
PA19
RK
FIQ
AD2
PA20
RF
IRQ0
AD3
34
Function
Comments
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
11.4
Peripheral Identifiers
The AT91SAM7S Series embeds a wide range of peripherals. Table 11-3 defines the Peripheral
Identifiers of the AT91SAM7S256/128/64/321. Table 11-4 defines the Peripheral Identifiers of
the AT91SAM7S32. A peripheral identifier is required for the control of the peripheral interrupt
with the Advanced Interrupt Controller and for the control of the peripheral clock with the Power
Management Controller.
Table 11-3.
Peripheral Identifiers (AT91SAM7S256/128/64/321)
Peripheral
Peripheral
Peripheral
External
ID
Mnemonic
Name
Interrupt
0
AIC
Advanced Interrupt Controller
FIQ
(1)
System Interrupt
1
SYSIRQ
2
PIOA
3
Reserved
4
ADC(1)
Analog-to Digital Converter
5
SPI
Serial Peripheral Interface
6
US0
USART 0
7
US1
USART 1
8
SSC
Synchronous Serial Controller
9
TWI
Two-wire Interface
10
PWMC
PWM Controller
11
UDP
USB Device Port
12
TC0
Timer/Counter 0
13
TC1
Timer/Counter 1
14
TC2
Timer/Counter 2
15 - 29
Reserved
30
AIC
Advanced Interrupt Controller
IRQ0
31
AIC
Advanced Interrupt Controller
IRQ1
Note:
Parallel I/O Controller A
1. Setting SYSIRQ and ADC bits in the clock set/clear registers of the PMC has no effect. The
System Controller is continuously clocked. The ADC clock is automatically started for the first
conversion. In Sleep Mode the ADC clock is automatically stopped after each conversion.
35
6175BS–ATARM–04-Nov-05
Table 11-4.
Peripheral
Peripheral
Peripheral
External
ID
Mnemonic
Name
Interrupt
0
AIC
Advanced Interrupt Controller
FIQ
(1)
1
SYSIRQ
System Interrupt
2
PIOA
Parallel I/O Controller A
3
Reserved
4
ADC(1)
Analog-to Digital Converter
5
SPI
Serial Peripheral Interface
6
US
USART
7
Reserved
8
SSC
Synchronous Serial Controller
9
TWI
Two-wire Interface
10
PWMC
PWM Controller
11
Reserved
12
TC0
Timer/Counter 0
13
TC1
Timer/Counter 1
14
TC2
Timer/Counter 2
15 - 29
Reserved
30
AIC
31
Reserved
Note:
11.5
Peripheral Identifiers (AT91SAM7S32)
Advanced Interrupt Controller
IRQ0
1. Setting SYSIRQ and ADC bits in the clock set/clear registers of the PMC has no effect. The
System Controller is continuously clocked. The ADC clock is automatically started for the first
conversion. In Sleep Mode the ADC clock is automatically stopped after each conversion.
Serial Peripheral Interface
• Supports communication with external serial devices
– Four chip selects with external decoder allow communication with up to 15
peripherals
– Serial memories, such as DataFlash® and 3-wire EEPROMs
– Serial peripherals, such as ADCs, DACs, LCD Controllers, CAN Controllers and
Sensors
– External co-processors
• Master or slave serial peripheral bus interface
– 8- to 16-bit programmable data length per chip select
– Programmable phase and polarity per chip select
– Programmable transfer delays between consecutive transfers and between clock
and data per chip select
– Programmable delay between consecutive transfers
– Selectable mode fault detection
– Maximum frequency at up to Master Clock
36
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
11.6
Two-wire Interface
• Master Mode only
• Compatibility with standard two-wire serial memories
• One, two or three bytes for slave address
• Sequential read/write operations
11.7
USART
• Programmable Baud Rate Generator
• 5- to 9-bit full-duplex synchronous or asynchronous serial communications
– 1, 1.5 or 2 stop bits in Asynchronous Mode
– 1 or 2 stop bits in Synchronous Mode
– Parity generation and error detection
– Framing error detection, overrun error detection
– MSB or LSB first
– Optional break generation and detection
– By 8 or by 16 over-sampling receiver frequency
– Hardware handshaking RTS - CTS
– Modem Signals Management DTR-DSR-DCD-RI on USART1 (not present on
AT91SAM7S32)
– Receiver time-out and transmitter timeguard
– Multi-drop Mode with address generation and detection
– Manchester Encoder/Decoder on AT91SAM7S256/128
• RS485 with driver control signal
• ISO7816, T = 0 or T = 1 Protocols for interfacing with smart cards
– NACK handling, error counter with repetition and iteration limit
• IrDA modulation and demodulation
– Communication at up to 115.2 Kbps
• Test Modes
– Remote Loopback, Local Loopback, Automatic Echo
11.8
Serial Synchronous Controller
• Provides serial synchronous communication links used in audio and telecom applications
• Contains an independent receiver and transmitter and a common clock divider
• Offers a configurable frame sync and data length
• Receiver and transmitter can be programmed to start automatically or on detection of
different event on the frame sync signal
• Receiver and transmitter include a data signal, a clock signal and a frame synchronization
signal
11.9
Timer Counter
• Three 16-bit Timer Counter Channels
37
6175BS–ATARM–04-Nov-05
– Three output compare or two input capture
• Wide range of functions including:
– Frequency measurement
– Event counting
– Interval measurement
– Pulse generation
– Delay timing
– Pulse Width Modulation
– Up/down capabilities
• Each channel is user-configurable and contains:
– Three external clock inputs
– Five internal clock inputs, as defined in Table 11-5
Table 11-5.
Timer Counter Clocks Assignment
TC Clock Input
Clock
TIMER_CLOCK1
MCK/2
TIMER_CLOCK2
MCK/8
TIMER_CLOCK3
MCK/32
TIMER_CLOCK4
MCK/128
TIMER_CLOCK5
MCK/1024
– Two multi-purpose input/output signals
– Two global registers that act on all three TC channels
11.10 PWM Controller
• Four channels, one 16-bit counter per channel
• Common clock generator, providing thirteen different clocks
– One Modulo n counter providing eleven clocks
– Two independent linear dividers working on modulo n counter outputs
• Independent channel programming
– Independent enable/disable commands
– Independent clock selection
– Independent period and duty cycle, with double bufferization
– Programmable selection of the output waveform polarity
– Programmable center or left aligned output waveform
11.11 USB Device Port (Only on AT91SAM7S256/128/64/321)
• USB V2.0 full-speed compliant,12 Mbits per second.
• Embedded USB V2.0 full-speed transceiver
• Embedded 328-byte dual-port RAM for endpoints
• Four endpoints
38
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
– Endpoint 0: 8 bytes
– Endpoint 1 and 2: 64 bytes ping-pong
– Endpoint 3: 64 bytes
– Ping-pong Mode (two memory banks) for bulk endpoints
• Suspend/resume logic
11.12 Analog-to-digital Converter
• 8-channel ADC
• 10-bit 384 Ksamples/sec. Successive Approximation Register ADC
• -3/+3 LSB Integral Non Linearity, -2/+2 LSB Differential Non Linearity
• Integrated 8-to-1 multiplexer, offering eight independent 3.3V analog inputs
• External voltage reference for better accuracy on low voltage inputs
• Individual enable and disable of each channel
• Multiple trigger source
– Hardware or software trigger
– External trigger pin
– Timer Counter 0 to 2 outputs TIOA0 to TIOA2 trigger
• Sleep Mode and conversion sequencer
– Automatic wakeup on trigger and back to sleep mode after conversions of all
enabled channels
• Four of eight analog inputs shared with digital signals
39
6175BS–ATARM–04-Nov-05
12. AT91SAM7S Series Ordering Information
Table 12-1.
40
Ordering Information
Temperature
Operating Range
Ordering Code
Package
Package Type
ROM Code Revision
AT91SAM7S256-AU-001
LQFP 64
Green
001
Industrial
(-40° C to 85° C)
AT91SAM7S128-AU-001
LQFP 64
Green
001
Industrial
(-40° C to 85° C)
AT91SAM7S64-AU-001
LQFP 64
Green
001
Industrial
(-40° C to 85° C)
AT91SAM7S321-AU-001
LQFP 64
Green
001
Industrial
(-40° C to 85° C)
AT91SAM7S32-AU-001
LQFP 48
Green
001
Industrial
(-40° C to 85° C)
AT91SAM7S Series Summary
6175BS–ATARM–04-Nov-05
AT91SAM7S Series Summary
Revision History
Table 12-2.
Revision History
Doc. Rev
Comments
6175AS
First issue - Unqualified on Intranet
Corresponds to 6175A full datasheet approval loop.
Qualified on Intranet.
6175BS
Section 9. ”Memory”, on page 17 updated: 2 ms => 3 ms, 10 ms => 15 ms, 4 ms => 6 ms
Change
Request
Ref.
CSR05-529
41
6175BS–ATARM–04-Nov-05
Atmel Corporation
2325 Orchard Parkway
San Jose, CA 95131, USA
Tel: 1(408) 441-0311
Fax: 1(408) 487-2600
Regional Headquarters
Europe
Atmel Sarl
Route des Arsenaux 41
Case Postale 80
CH-1705 Fribourg
Switzerland
Tel: (41) 26-426-5555
Fax: (41) 26-426-5500
Asia
Room 1219
Chinachem Golden Plaza
77 Mody Road Tsimshatsui
East Kowloon
Hong Kong
Tel: (852) 2721-9778
Fax: (852) 2722-1369
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
Atmel Operations
Memory
2325 Orchard Parkway
San Jose, CA 95131, USA
Tel: 1(408) 441-0311
Fax: 1(408) 436-4314
RF/Automotive
Theresienstrasse 2
Postfach 3535
74025 Heilbronn, Germany
Tel: (49) 71-31-67-0
Fax: (49) 71-31-67-2340
Microcontrollers
2325 Orchard Parkway
San Jose, CA 95131, USA
Tel: 1(408) 441-0311
Fax: 1(408) 436-4314
La Chantrerie
BP 70602
44306 Nantes Cedex 3, France
Tel: (33) 2-40-18-18-18
Fax: (33) 2-40-18-19-60
ASIC/ASSP/Smart Cards
1150 East Cheyenne Mtn. Blvd.
Colorado Springs, CO 80906, USA
Tel: 1(719) 576-3300
Fax: 1(719) 540-1759
Biometrics/Imaging/Hi-Rel MPU/
High Speed Converters/RF Datacom
Avenue de Rochepleine
BP 123
38521 Saint-Egreve Cedex, France
Tel: (33) 4-76-58-30-00
Fax: (33) 4-76-58-34-80
Zone Industrielle
13106 Rousset Cedex, France
Tel: (33) 4-42-53-60-00
Fax: (33) 4-42-53-60-01
1150 East Cheyenne Mtn. Blvd.
Colorado Springs, CO 80906, USA
Tel: 1(719) 576-3300
Fax: 1(719) 540-1759
Scottish Enterprise Technology Park
Maxwell Building
East Kilbride G75 0QR, Scotland
Tel: (44) 1355-803-000
Fax: (44) 1355-242-743
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.
© Atmel Corporation 2005. All rights reserved. Atmel®, logo and combinations thereof, Everywhere You Are® and others, are registered trademarks or trademarks of Atmel Corporation or its subsidiaries. ARM®, the ARM Powered® logo, and others, are registered trademarks or trademarks of ARM Limited. Other terms and product names may be trademarks of others.
Printed on recycled paper.
6175BS–ATARM–04-Nov-05