Atmel SMART SAM D Series. Technical Overview Atmel Corporation

Atmel SMART | SAM D Series Technical Overview 1 © 2014 Atmel Corporation Outline 2 • Atmel SMART | SAM D Series Introduction • System Archit...
Author: Ann Nelson
10 downloads 3 Views 6MB Size
Atmel SMART | SAM D Series

Technical Overview

1

© 2014 Atmel Corporation

Outline

2



Atmel SMART | SAM D Series Introduction



System Architecture



Clock & System Management



Power Management



Event System



Peripherals Overview



System Protection Features



Ecosystem

© 2014 Atmel Corporation

Atmel SMART | SAM D Series

Introduction

3

© 2014 Atmel Corporation

Introduction Combining the best of Atmel MCUs with ARM Cortex-M0+ • Event system • Analog performance • Timer/counters

• Ease-of-use • Strong tools offering

megaAVR

AVR Xmega

Atmel SMART | SAM D Series

• Peripheral touch controller • Atmel SleepWalking • Atmel Software framework

4

© 2014 Atmel Corporation

UC3

CM0+

• Widely adopted core • Single-cycle IO access • Single-cycle multiplier

Introduction Powerful and Efficient Products



Atmel SMART | SAM D Series



Atmel SMART | SAM D Series Differentiating Features

• • • • •

48MHz operation ±2% int RC oscillator 1.62V-3.63V 16KB to 256KB Flash 32-, 48- and 64-pin versions

• Event system • SERCOM modules configurable as I2C, • • • •

USART or SPI Capacitive Touch HW engine 12-bit 300ksps ADC with gain stage 10-bit 300ksps DAC Full Speed USB • Device from int RC oscillator • Embedded host

5

© 2014 Atmel Corporation

Introduction Key Features SAM D Family Features Cortex M0+

SAM D09

SAM D10

SAM D11

8KB Flash

8-16KB Flash

14 pins

14, 20 and 24 pins

SAM D20

SAM D21

16-256KB Flash

32-256KB Flash

Event System SERCOM PTC(*)

32, 48 and 64 pins

12-bit 350 ksps ADC

10-bit 350 ksps DAC (*)

6-ch DMA

12-ch DMA

1x T/C for Control

3x T/C for Control

2xAnalog Comparator (*) 32-bit RTC w/Calendar Serial Wire Debug BOR and POR Internal RCs

FS USB Device

FS USB H&D

Watchdog High GPIO Count I2S

(* )= not on D09 6

© 2014 Atmel Corporation

Introduction Easy Migration



• • •

8

Easy Code Migration Within Atmel SMART | SAM D Series (HEX compatible) Easy Migration to Atmel SAM4L Family Easy Migration Between Pinouts Easy Migration to Future Atmel SMART | SAM devices

© 2014 Atmel Corporation

Atmel SMART | SAM D Series System Architecture

10

© 2014 Atmel Corporation

System Architecture Atmel SMART | SAM D21 (superset) Block Diagram

Package

General Purpose

SOIC14 SOIC20 QFN24 TQFP/QFN32 TQFP/QFN48 TQFP/QFN64

SERCOM Peripheral Touch controller (PTC)* 12 bit Analog* Pin and code compatible

Internal memories

System Peripheral

DMA

Unique ID LDO WDT POR/BOD Device Service Unit CRC-32

8 MHz RC OSC 0.4-32MHz Xtal OSC 32 KHz Xtal

SRAM 2 KB 4 KB 8 KB 16 KB 32 KB

Cortex-M0+ 48 MHz

Debug SWD

System

2x 32 KHz RC OSC DFLL 48MHz

Flash 16 KB 32 KB 64 KB 128KB 256 KB

(* )= not on D09

64 B Cache

SERCOM up to 6

32bit RTC

Timer 16bit Up to 8

AHB/APB Bridge C

ADC 12bit Up to 20ch

DAC 10bit 1 ch

Analog Comp. x2

AHB/APB Bridge B

PTC

Peripheral Event System 11

DMA x 12ch

USB FS Host & Device

Multi-layer High Speed Bus Matrix

AHB/APB Bridge A

TCC

Event System

© 2014 Atmel Corporation

GPIO Up to 52

System Architecture Overview



Based on a Cortex-M0+ revision r0p1

• Lower power usage vs. Cortex-M0 core • Single-Cycle IO Port • Instruction Set Backward compatible with Cortex-M0 core



3 AHB/APB bridges to maximize bandwidth

• Bridge A for system peripherals • Bridge B for GPIOs • Bridge C for user peripherals (SERCOM, ADC, DAC…)



12

AMBA 3 AHB-Lite bus architecture

© 2014 Atmel Corporation

System Architecture Cortex-M0+ core implementation Atmel SMART | SAM D implementation

13

© 2014 Atmel Corporation

Core revision

r0p1

32-bit HW multiply

Single cycle

IRQ#

32

IRQ priority level

16

NMI

No

Vector table relocation

Yes

Single-cycle IO port

Yes

Memory Protection Unit (MPU)

No

Micro-Trace Buffer (MTB)

No

Debug

SWD only, no JTAG

Nbr Break point

4

Nbr Watch point

2

Atmel SMART | SAM D Series

Clock & System Management

14

© 2014 Atmel Corporation

Clock Management Clock System Block Diagram: High Configuration Flexibility

PM GCLKMAIN

SYSCTRL XOSC

GCLK

Synchronous Clock Controller

GCLK Generator 0 (prescaler)

GCLK Multiplexer 0 (DFLL48M reference)

GCLK Generator 1 (prescaler)

GCLK Multiplexer 1

Peripheral 1

GCLK Generator x (prescaler)

GCLK Multiplexer y

Peripheral z

APB Clock AHB Clock CPU Clock

OSCULP32K OSC32K XOSC32K OSC8M DFLL48M

AHB/APB System Clocks

15

© 2014 Atmel Corporation

Clock & System Management System Controller

• • • • •

User interface for the different clock sources XOSC

• External 0.4-32MHz oscillator • Crystal or external clock signal on Xin OSC8M

• Internal 8/4/1MHz oscillator (1MHz by default) • Enabled by default • Fine tuning, fast startup OSC32K

• Internal 32k oscillator • High accuracy • Frequency fine tuning, programmable startup time OSCULP32K

• Ultra Low Power internal 32k oscillator • Always ON • Frequency fine tuning 16

© 2014 Atmel Corporation

SYSCTRL XOSC OSC8M OSC32K XOSC32K OSCULP32K DFLL48M

Clock & System Management System Controller



XOSC32K

• External 32k oscillator • 32.438kHz crystal or external clock



DFLL48M

• 48MHz internal Digital Frequency Locked Loop • Operates in closed or open loop modes • Any clock generator can be used as a source • Best results with a slow clock source (32k) • No arbitrary frequency, designed for 48MHz

• Drift compensation



17

SYSCTRL also controls Brown-out detectors, voltage regulator and voltage reference

© 2014 Atmel Corporation

SYSCTRL XOSC OSC8M OSC32K XOSC32K OSCULP32K DFLL48M

Clock & System Management Generic Clock Controller



Provide independent input clock signals to peripherals and Power Manager (GCLKMAIN)

• GCLK generators divide internal or external clock sources • GCLK multiplexer generates generic clocks from generators to feed peripherals and PM

GCLK

SYSCTRL

GCLK Generator 0

GCLK Multiplexer 0 (DFLL48M reference)

GCLK Generator 1

GCLK Multiplexer 1

GCLKMAIN

Generic Clocks GCLK Generator x

GCLK_IO 18

© 2014 Atmel Corporation

GCLK Multiplexer y

Peripherals

PM

Clock & System Management Generic Clock Controller

• •

One GCLK_IO pin for each generator GCLK_IO can be used as:

• Source clock when configured as input (works in sleep mode) • Generic clock when configured as output

GCLK

SYSCTRL

GCLK Generator 0

GCLK Multiplexer 0 (DFLL48M reference)

GCLK Generator 1

GCLK Multiplexer 1

GCLKMAIN

Generic Clocks GCLK Generator x

GCLK_IO 19

© 2014 Atmel Corporation

GCLK Multiplexer y

Peripherals

PM

Clock & System Management Power Manager



Power Manager is made of:

• Synchronous Clock Controller • Generates CPU and Bus clocks from GCLKMAIN • Integrated CPU Clock Failure Detector switching clock to OSC8M

• Sleep Mode Controller • Controls low power modes

• Reset Controller

OSC8M

GCLKMAIN

CPU Clock failure detector

Synchronous Clock Controller

CLK_APB CLK_AHB CLK_CPU

CPU Sleep Mode Controller User reset

Reset Sources

20

© 2014 Atmel Corporation

Reset Controller

Power reset

Clock & System Management Reset State

PM SYSCTRL XOSC

GCLKMAIN = 1MHz

GCLK 1MHz(*)

Synchronous Clock Controller

GCLK Generator 0 Prescaler = 1

GCLK Multiplexer 0 (DFLL48M reference)

GCLK Generator 2 Prescaler = 1

GCLK Multiplexer 2

WDT

GCLK Generator x

GCLK Multiplexer y

Peripheral z

OSC8M OSC32K XOSC32K OSCULP32K DFLL48M

AHB/APB System Clocks

(*): OSC8M is internally prescaled by a factor of 8 by default 21

© 2014 Atmel Corporation

Clock & System Management 48MHz Clock Configuration Example

PM GCLKMAIN = 48MHz

SYSCTRL XOSC

Synchronous Clock Controller

GCLK GCLK Generator 0

GCLK Multiplexer 0 (DFLL48M reference)

GCLK Generator 1

GCLK Multiplexer 2

WDT

GCLK Generator x

GCLK Multiplexer y

Peripheral z

OSC8M OSC32K XOSC32K OSCULP32K DFLL48M

AHB/APB System Clocks

22

© 2014 Atmel Corporation

Clock & System Management Enable a peripheral clock



Done in 4 steps:

• Enable the source clock (SYSCTRL) • Enable and configure a Generic Clock Generator (GCLK) • Enable and configure the appropriate Generic Clock Multiplexer to •

generate the generic clock (GCLK) Unmask the peripheral interface clock (PM)

Synchronous Clock Controller

Peripherals need 2 clock domains

CLK_SERCOM0_APB

DFLL48M

GCLK Generator 1

GCLK Multiplexer 13

SERCOM 0

GCLK_SERCOM0_CORE

23

© 2014 Atmel Corporation

Clock & System Management Synchronization



Peripherals need 2 clock domains

• APB clock coming from Power Manager, which is synchronous • Core clock coming from GCLK, which is asynchronous • Allows to clock a peripheral externally and keep it enabled in idle/standby mode



CPU accesses to asynchronous peripheral, registers need to be synchronized

• Registers in the bus interface doesn’t need synchronization • Registers in the generic clock need synchronization

Peripheral user interface

Clock Generator

Core Clock: ASYNCHRONOUS

24

© 2014 Atmel Corporation

Power Manager

APB Clock: SYNCHRONOUS

Clock & System Management Synchronization



Synchronization Status provided by SYNCBUSY flag in Status Register

• User has to check the flag before reading/writing a register



Several actions require synchronization

• • • • •



Some Some Some When When

registers need synchronization when read registers need synchronization when written registers need synchronization when written and read enabling the peripheral executing a software reset of the module

Synchronization delay formula: 5 ⋅ PGCLK + 2 ⋅ PAPB < D < 6 ⋅ PGCLK + 3 ⋅ PAPB D: Delay PGCLK: Generic clock period PAPB: Bus Interface period

25

© 2014 Atmel Corporation

Clock & System Management On-demand clock request



Clock sources can be run in an on-demand mode

• Clock source is automatically stopped when no peripherals are





requesting it. ONDEMAND bit must be set

Works in both active and low power modes

• Improve flexibility • Minimize power consumption • RUNSTDBY bit must be set

DFLL48M

GCLK Generator 1

GCLK Multiplexer 3

ENABLE

GENEN

CLKEN

RUNSTDBY

RUNSTDBY

ONDEMAND 26

© 2014 Atmel Corporation

Clock Request

EIC

ENABLE RUNSTDBY

Atmel SMART | SAM D Series

Power Management

27

© 2014 Atmel Corporation

Power Management Power Supplies Power Supply

VDDIN

VDDIO

VDDANA

VDDCORE

28

© 2014 Atmel Corporation

Voltage Range

Description

1.62V – 3.63V

Powers voltage regulator and IO lines

1.62V – 3.63V

1.62V – 3.63V

1.2V

Powers IO lines, OSC8M and XOSC Powers IO lines, analog peripherals, POR, BODs and 32K oscillators Internal voltage regulator output. Powers the core, memories and peripherals

Power Management Designed for energy efficiency



Advanced clock management features

• SleepWalking peripherals • On-demand clock request to minimize power consumption on both active and low power modes



Ultra-low power oscillator



Low power figures

• More flexibility at application Level

• More flexibility in MCU selection • More Flexibility in PCB layout

70

© 2014 Atmel Corporation

SERCOM Block Diagram Description



Two clock domains

• Synchronous clock from Power Manager • Asynchronous clock from Clock Generator or external clock

CLK_SERCOMx_APB

(Synchronous) PAD[3:0] GCLK_SERCOMx_CORE

(Asynchronous)

71

© 2014 Atmel Corporation

(Internal)

SERCOM Block Diagram Description



Register Interface

• Main user interface • Allows to configure SERCOM and control the IP • Available Bit field in control/status register will depend on the selected Communication mode

PAD[3:0] (Internal)

72

© 2014 Atmel Corporation

SERCOM Block Diagram Description



Mode Specific

• Controller which can be Configured in different Serial communication mode (setting of the mode is done through the Register interface)

PAD[3:0] (Internal)

73

© 2014 Atmel Corporation

SERCOM Block Diagram Description



Serial engine

• Serial logic driven by the controller. • Can manage up to 4 signals on configurable PADs (depending on selected mode)

PAD[3:0] (Internal)

74

© 2014 Atmel Corporation

SERCOM SERCOM Output Signal Muxing



Two levels of signal muxing

PAD[0] PAD[1] PAD[2]

Port MUX

PAD[3]

Atmel SMART | SAM D

75

© 2014 Atmel Corporation

Standard I/Os

SERCOM SERCOM Output Signal Muxing



Example SERCOM5 in USART mode PAD[0] PAD[1]

USART USART mode

Mode

76

© 2014 Atmel Corporation

PAD[2] PAD[3]

Tx Rx Unused Unused

SERCOM SERCOM output signal muxing



Example SERCOM5 in USART mode Tx Rx

USART Mode

77

© 2014 Atmel Corporation

N/A N/A

Port MUX

PA22 PA23

Tx Rx

Product Capacitive Touch Channels

Peripherals overview Peripheral Touch Controller

78

© 2014 Atmel Corporation

SAM D21E/G/J

SAM D20E/G/J

SAM D11C/D

SAM D10C/D

Up to 48/144/256

Up to 60/120/256

Up to 12/42/72

Up to 12/42/72

Atmel SMART | SAM D Capacitive Touch Solution Atmel Peripheral Touch Controller (PTC) solution

• Mixed HW + Firmware solution • Peripheral Touch Controller + QTouch library

• Lower CPU utilization • PTC runs data acquisition autonomously

• Optimize power consumption • CPU can idle while PTC is working

• Improve noise immunity • Compensation and oversampling done automatically in PTC

79

© 2014 Atmel Corporation

Atmel SMART | SAM D

Firmware

PTC

Atmel SMART | SAM D Capacitive Touch Solution Built-in Hardware Support for Touch



Supports Buttons, Sliders and Wheels



Supports Mutual and Self Capacitive Touch

• Self-calibrating, no tuning needed • No external components needed • Noise suppression • Automatic sensitivity tuning • Adaptive filtering • Frequency hopping



Low (Zero) Drift over the Temperature and VCC range

• No need for Temperature or VCC Compensation



Wake-up from Power Down on Touch Detection

• SleepWalking feature supported • 250ms scan, one channel @ 6µA 80

© 2014 Atmel Corporation

Atmel SMART | SAM D Capacitive Touch Solution PTC Benefits





81

Reduces BOM

• •

1 pin per electrode No passives required per pin

Simplifies Sensor Design

• • •

Faster time to market



Increased flexibility in electrode design



Cancellation of parasitic capacitance

Over-sampling of SAR ADC Long trace lengths are better tolerated

© 2014 Atmel Corporation

Atmel SMART | SAM D Capacitive Touch Solution Charge Transfer Technology Measurement Principle Measurement Method

Sensor Types

82

© 2014 Atmel Corporation

Atmel SMART | SAM D Capacitive Touch Solution PTC Block Diagram – Self Capacitance

Input control

Y0

Y1

Cy0

Y15

Cy15

RS

100K

Acquisition Module • Gain control • ADC • Filtering

Compensation Circuit X Line Driver

83

© 2014 Atmel Corporation

IRQ Result 10

Atmel SMART | SAM D Capacitive Touch Solution PTC Block Diagram – Mutual Capacitance

Input control

Y0 Y1 Y15

X0 X1 X15

84

© 2014 Atmel Corporation

RS

100K

Acquisition Module • Gain control • ADC • Filtering

Compensation Circuit

X Line Driver

IRQ Result 10

Atmel SMART | SAM D Capacitive Touch Solution Typical QTouch Application Execution

Measurement complete

RTC

RTC

PTC End Of Conversion

Post Processing Channel 1

Channel 2

Channel 3

Acquisition Time

Measurement Period

85

© 2014 Atmel Corporation

User Application

Atmel SMART | SAM D Capacitive Touch Solution Technology Comparison

External components

Number of pins/ channel

Response time / noise tolerance

Proximity Range*

2 per channel

2

Better

Suggest Documents