– 210 DMIPS throughput at 150 MHz
– 16 KB instruction cache and 16 KB data caches
– Memory Management Unit enabling use of operating systems
– Single-cycle RISC instruction set including SIMD and DSP instructions
– Java Hardware Acceleration
• Multimedia Co-Processor
– Vector Multiplication Unit for video acceleration through color-space conversion
(YUV<->RGB), image scaling and filtering, quarter pixel motion compensation
• Multi-hierarchy bus system
– High-performance data transfers on separate buses for increased performance
• Data Memories
– 32KBytes SRAM
• External Memory Interface
– SDRAM, DataFlash™, SRAM, Multi Media Card (MMC), Secure Digital (SD),
– Compact Flash, Smart Media, NAND Flash
• Direct Memory Access Controller
– External Memory access without CPU intervention
• Interrupt Controller
– Individually maskable Interrupts
– Each interrupt request has a programmable priority and autovector address
• System Functions
– Power and Clock Manager
– Crystal Oscillator with Phase-Lock-Loop (PLL)
– Watchdog Timer
– Real-time Clock
• 6 Multifunction timer/counters
– Three external clock inputs, I/O pins, PWM, capture and various counting
• Universal Serial Bus (USB) 2.0 High Speed (480 Mbps) Device
– On-chip Transceivers with physical interface
• 16-bit stereo audio DAC
– Sample rates up to 50 kHz
• On-Chip Debug System
– Nexus Class 3
– Full speed, non-intrusive data and program trace
– Runtime control and JTAG interface
• Package/Pins
– AT32AP7001: 208-pin QFP/ 90 GPIO pins
• Power supplies
– 1.65V to1.95V VDDCORE
– 3.0V to 3.6V VDDIO
®
32 32-Bit Microcontroller
AVR®32 32-bit
Microcontroller
AT32AP7001
Preliminary
Summary
32015AS-AVR32-02/07
1.Part Description
The AT32AP7001 is a complete System-on-chip application processor with an AVR32 RISC
processor achieving 210 DMIPS running at 150 MHz. AVR32 is a high-performance 32-bit RISC
microprocessor core, designed for cost-sensitive embedded applications, with particular emphasis on low power consumption, high code density and high application performance.
AT32AP7001 implements a Memory Management Unit (MMU) and a flexible interrupt controller
supporting modern operating systems and real-time operating systems. The processor also
includes a rich set of DSP and SIMD instructions, specially designed for multimedia and telecom
applications.
AT32AP7001 incorporates SRAM memories on-chip for fast and secure access. For applications requiring additional memory, external 16-bit SRAM is accessible. Additionally, an SDRAM
controller provides off-chip volatile memory access as well as controllers for all industry standard
off-chip non-volatile memories, like Compact Flash, Multi Media Card (MMC), Secure Digital
(SD)-card, SmartCard, NAND Flash and Atmel DataFlash™.
The Direct Memory Access controller for all the serial peripherals enables data transfer between
memories without processor intervention. This reduces the processor overhead when transferring continuous and large data streams between modules in the MCU.
The Timer/Counters includes three identical 16-bit timer/counter channels. Each channel can be
independently programmed to perform a wide range of functions including frequency measurement, event counting, interval measurement, pulse generation, delay timing and pulse width
modulation.
AT32AP7001
A pixel co-processor provides color space conversions for images and video, in addition to a
wide variety of hardware filter support
The Java hardware acceleration implementation in AVR32 allows for a very high-speed Java
byte-code execution. AVR32 implements Java instructions in hardware, reusing the existing
RISC data path, which allows for a near-zero hardware overhead and cost with a very high
performance.
The Image Sensor Interface supports cameras with up to 12-bit data buses and connects
directly to the LCD interface through a separate bus.
PS2 connectivity is provided for standard input devices like mice and keyboards.
AT32AP7001 integrates a class 3 Nexus 2.0 On-Chip Debug (OCD) System, with non-intrusive
real-time trace, full-speed read/write memory access in addition to basic runtime control.
The C-compiler is closely linked to the architecture and is able to utilize code optimization features, both for size and speed.
32015AS-AVR32-02/07
2
2.Blockdiagram
Figure 2-1.Blockdiagram
TRST_N
TCK
TDO
TDI
TMS
EVTI_N
D+
D-
DATA[11..0]
HSYNC
VSYNC
PCLK
PA
PB
PC
PD
PE
XIN32
XOUT32
XIN0
XOUT0
XIN1
XOUT1
PLL0
PLL1
OSCEN_N
Parallel Input/Output Controllers
RESET_N
A
D
D
A
A
D
T
D
T
A
C
CMD
DATA[7..0]
C
S
S
S
S
S
32 KHz
OSC
OSC0
OSC1
PLL0
PLL1
G
K
L
C
INTERFACE
MCKO
MDO[5..0]
MSEO[1..0]
EVTO_N
INTERFACE
SENSOR
INTERFACE
INTRAM0
INTRAM1
0
T
A
1
A
T
N
0
A
A
N
1
L
K
K
L
D
I
C
N
Y
O
D
3
[
]
0
.
.
JTAG
USB
DMA
IMAGE
PB
DMA CONTROLLER
AUDIO BITSTREAM
DAC
MULTIMEDIA CARD
INTERFACE
AC97 CONTROLLER
POWER
MANAGER
CLOCK
GENERATOR
CLOCK
CONTROLLER
SLEEP
CONTROLLER
RESET
CONTROLLER
NEXUS
CLASS 3
PBB
S
M
M
S
HSB
HSB-PB
BRIDGE
B
OCD
MEMORY MANAGEMENT UNIT
INSTR
CACHE
M
M
HIGH SPEED
BUS MATRIX
S
SMM
CONFIGURATION REGISTERS BUS
S
HSB
HSB-PB
BRIDGE A
PB
PBA
DMA
DMA
DMA
AP CPU
DATA
CACHE
HSB-HSB BRIDGE
PERIPHERAL
CONTROLLER
PDC
PERIPHERAL
PDC
INTERFACE 0/1
SYNCHRONOUS
PDC
CONTROLLER 0/1/2
TWO-WIRE
INTERFACE
PS2 INTERFACE
REAL TIME
COUNTER
WATCHDOG
M
M
DMA
USART0
USART1
USART2
USART3
SERIAL
SERIAL
TIMER
AT32AP7001
PIXEL COPROCESSOR
RAS,
CAS,
SDWE,
NANDOE,
NANDWE,
SDCK,
SDCKE,
NWE3,
NWE1,
NWE0,
NWAIT
SDCS,
CFRNW,
CFCE1,
CFCE2,
NRD,
NCS[3,1,0],
ADDR[22..0]
DATA[15..0]
PA
PB
PC
PD
PE
Parallel Input/Output Controllers
S
NCS[5,4,2]
CONTROLLER & ECC)
ADDR[23..25]
(SDRAM & STATIC MEMORY
EXTERNAL BUS INTERFACE
DATA[31..16]
RXD
TXD
CLK
RTS, CTS
SCK
MISO, MOSI
NPCS0
NPCS[3..1]
TX_CLOCK, TX_FRAME_SYNC
TX_DATA
RX_CLOCK, RX_FRAME_SYNC
RX_DATA
SCL
SDA
CLOCK[1..0]
DATA[1..0]
32015AS–AVR32–02/07
A
B
CLK[2..0]
X
E
T
K
P
NMI_N
.
.
0
]
[
2
2
[
0
]
.
.
T
I
N
S
[
7
TIMER/COUNTER 0/1
.
0
]
.
[
7
.
0
.
]
EXTERNAL
INTERRUPT
CONTROLLER
INTERRUPT
CONTROLLER
PULSE WIDTH
MODULATION
CONTROLLER
PWM0
PWM1
PWM2
PWM3
3
2.1Processor and architecture
2.1.1AVR32AP CPU
•
32-bit load/store AVR32B RISC architecture.
– Up to 15 general-purpose 32-bit registers.
– 32-bit Stack Pointer, Program Counter and Link Register reside in register file.
– Fully orthogonal instruction set.
– Privileged and unprivileged modes enabling efficient and secure Operating Systems.
– Innovative instruction set together with variable instruction length ensuring industry leading
code density.
– DSP extention with saturating arithmetic, and a wide variety of multiply instructions.
– SIMD extention for media applications.
• 7 stage pipeline allows one instruction per clock cycle for most instructions.
– Java Hardware Acceleration.
– Byte, half-word, word and double word memory access.
– Unaligned memory access.
– Shadowed interrupt context for INT3 and multiple interrupt priority levels.
– Dynamic branch prediction and return address stack for fast change-of-flow.
– Coprocessor interface.
• Full MMU allows for operating systems with memory protection.
Coprocessor coupled to the AVR32 CPU Core through the TCB Bus.
•
• Three parallel Vector Multiplication Units (VMU) where each unit can:
– Multiply three pixel components with three coefficients.
– Add the products from the multiplications together.
– Accumulate the result or add an offset to the sum of the products.
• Can be used for accelerating:
– Image Color Space Conversion.
•Configurable Conversion Coefficients.
• Supports packed and planar input and output formats.
• Supports subsampled input color spaces (i.e 4:2:2, 4:2:0).
– Image filtering/scaling.
• Configurable Filter Coefficients.
• Throughput of one sample per cycle for a 9-tap FIR filter.
• Can use the built-in accumulator to extend the FIR filter to more than 9-taps.
• Can be used for bilinear/bicubic interpolations.
– MPEG-4/H.264 Quarter Pixel Motion Compensation.
• Flexible input Pixel Selector.
– Can operate on numerous different image storage formats.
• Flexible Output Pixel Inserter.
– Scales and saturates the results back to 8-bit pixel values.
32015AS–AVR32–02/07
4
– Supports packed and planar output formats.
• Configurable coefficients with flexible fixed-point representation.
2.1.3Debug and Test system
IEEE1149.1 compliant JTAG and boundary scan
•
• Direct memory access and programming capabilities through JTAG interface
• Extensive On-Chip Debug features in compliance with IEEE-ISTO 5001-2003 (Nexus 2.0) Class 3
• Auxiliary port for high-speed trace information
• Hardware support for 6 Program and 2 data breakpoints
• Unlimited number of software breakpoints supported
• Advanced Program, Data, Ownership, and Watchpoint trace supported
2.1.4DMA controller
2 HSB Master Interfaces
•
• 3 Channels
• Software and Hardware Handshaking Interfaces
– 11 Hardware Handshaking Interfaces
• Memory/Non-Memory Peripherals to Memory/Non-Memory Peripherals Transfer
Transfers from/to peripheral to/from any memory space without intervention of the processor.
•
• Next Pointer Support, forbids strong real-time constraints on buffer management.
• Eighteen channels
– Two for each USART
– Two for each Serial Synchronous Controller
– Two for each Serial Peripheral Interface
2.1.6Bus system
HSB bus matrix with 10 Masters and 8 Slaves handled
•
– Handles Requests from the CPU Icache, CPU Dcache, HSB bridge, HISI, USB 2.0 Controller,
DMA Controller 0, DMA Controller 1, and to internal SRAM 0, internal SRAM 1, PB A, PB B,
EBI and, USB.
32015AS–AVR32–02/07
5
AT32AP7001
– Round-Robin Arbitration (three modes supported: no default master, last accessed default
master, fixed default master)
– Burst Breaking with Slot Cycle Limit
– One Address Decoder Provided per Master
• 2 Peripheral buses allowing each bus to run on different bus speeds.
– PB A intended to run on low clock speeds, with peripherals connected to the PDC.
– PB B intended to run on higher clock speeds, with peripherals connected to the DMAC.
• HSB-HSB Bridge providing a low-speed HSB bus running at the same speed as PBA
– Allows PDC transfers between a low-speed PB bus and a bus matrix of higher clock speeds
An overview of the bus system is given in Figure 2-1 on page 3. All modules connected to the
same bus use the same clock, but the clock to each module can be individually shut off by the
Power Manager. The figure identifies the number of master and slave interfaces of each module
connected to the HSB bus, and which DMA controller is connected to which peripheral.
32015AS–AVR32–02/07
6
3.Package and Pinout
3.1AVR32AP7001
Figure 3-1.208 QFP Pinout.
AT32AP7001
105156
157
208
104
53
152
Table 3-1.QFP-208 Package Pinout
1GND53GND105GND157GND
2PE1754PA23106PX13158PB10
3PE1855PA24107PX14159PB11
4PX4756XIN1108PX15160PB12
5PX4857XOUT1109PX16161PB13
6PX4958AVDDUSB110PX17162PB14
7PX5059AGNDUSB111PX34163PB15
8PX5160VDDIO112PX35164PB16
9VDDIO61FSDM113PX36165PB17
10PX3262FSDP114PX37166PB18
11PX3363GND115PX38167PB19
12PX0064GND116PX18168PB20
13PX0165HSDM117PX19169PB21
14PX0266HSDP118PX20170PB22
15PX0367VDDCORE119PX21171PB23
16PX0468GND120PX22172VDDCORE
17PX0569GND121PX23173GND
18VDDCORE70VBG122PX24174GND
19GND71VDDIO123PX25175PA06
20TDO72PA25124PX26176PA07
21TCK73PA26125VDDIO177VDDIO
32015AS–AVR32–02/07
7
AT32AP7001
Table 3-1.QFP-208 Package Pinout (Continued)
22TMS74PA27126PX27178VDDIO
23TDI75PA28127PX28179OSCEN_N
24TRST_N76PA29128PX29180XIN32
25EVTI_N77PA30129PX30181XOUT32
26RESET_N78PA31130PX31182AGNDOSC
27PA0079WAKE_N131VDDCORE183AVDDOSC
28PA0180PB26132GND184PLL1
29PA0281PB27133GND185XIN0
30PA0382PB28134PE26186XOUT0
31PA0483PX53135PX39187AGNDPLL
32PA0584PX52136VDDCORE188AVDDPLL
33PB2485PX41137GND189PLL0
34PB2586GND138PX40190PE00
35PA0887PE25139PX42191PE01
36VDDIO88PE24140PX43192PE02
37GND89PE23141PX44193PE03
38PA0990PE22142PX45194PE04
39PA1091PE21143PX46195PE05
40PA1192PE20144PB00196PE06
41PA1293PE19145PB01197PE07
42PA1394PX06146PB02198PE08
43PA1495PX07147PB03199PE09
44PA1596PX08148PB04200PE10
45PA1697PX09149PB05201PE11
46PA1798PX10150PB06202PE12
47PA1899PX11151PB07203PE13
48PA19100PB29152PB08204PE14
49PA20101PB30153PB09205PE15
50PA21102PX12154PC16206PE16
51PA22103PC00155PC17207No Connect
52VDDIO104VDDIO156VDDIO208GND
32015AS–AVR32–02/07
8
AT32AP7001
4.Signals Description
The following table gives details on the signal name classified by peripheral. The pinout multiplexing of these signals is given in the Peripheral Muxing table in the Peripherals chapter.