Read NXP PowerPoint template Guidelines for presentations text version

NXP Cortex-M4. Powerful, Flexible and Easy: Dual-Core implementation

Yoichi Kimura

MCU Marketing Manager

NXP MCU ­ the only complete ARM range of Cortex-M0, Cortex-M3 and Cortex-M4 processors

NXP ARM Cortex-M Continuum

Entry level Cortex-M0 Fully featured Cortex-M4

Cortex-M0

Cortex-M3

Cortex-M4

True 8/16-bit replacement

- low power, low cost, more performance

High performance for communication and control

- USB, Ethernet, CAN, and much more

Advanced Digital Signal control

- Floating point unit - Dual-core options

Over 250 different ARM based microcontrollers available!!

2

Rapidly growing family of Cortex-M microcontrollers

Check pin- and software compatible options: www.nxp.com/microcontrollers

Cortex-M4

+150MHz

LPC4300 LPC1800 LPC1700 LPC1300

MCU with powerful DSP extensions

Cortex-M3

Up to 150MHz

Memory options up to 1MB flash, 200k SRAM High-performance with USB, Ethernet, LCD, and more USB solution, incl. on-chip USB drivers

Cortex-M0

Up to 50MHz

LPC1200 LPC1100

Memory options up to 128k flash

Best-in-class dynamic power consumption

3

LPC1100L in Low-Pin-Count Packages

Cortex-M0 Core up to 50MHz Lowest Active Current 130uA/MHz Memory:

­ Up to 32 KB on-chip Flash ­ Up to 4 KB SRAM

Peripherals:

­ ­ ­ ­ ­ U(S)ART, SPI/SSP, I2C 4x general purpose Timers with PWM 10-bit 5-channel ADC Programmable WDT and oscillator 1% accuracy, 12 MHz IRC oscillator

Single 3.3 V power supply (1.8 V to 3.6 V)

SO, TSSOP, DIP package options

Low-Pin-Count Package Options

SO20

TSSOP20

(2 Options)

TSSOP28

DIP28

Final Part Number LPC1110FD20

SRAM 1

Flash 4

Package Pin Count SO 20

I2C 1

SPI 1

UART 1

16b Timer 32b Timer 5CH-ADC 2 2 1

GPIO 16

LPC1111FDH20 /002

LPC1112FD20 /102 LPC1112FDH20 /102 LPC1112FDH28 /102 LPC1114FDH28 /102 LPC1114FN28 /102

2

4 4 4 4 4

8

16 16 16 32 32

TSSOP

SO TSSOP TSSOP TSSOP DIP

20

20 20 28 28 28

1

1 0 1 1 1

1

1 1 1 1 1

1

1 1 1 1 1

2

2 2 2 2 2

2

2 2 2 2 2

1

1 1 1 1 1

16

16 14 22 22 22

Widest Selection of Cortex-M0 Packages

Package

Width (mm) Length (mm)

CSP16

2 2 0.60

QFN33

5 5 .85

QFN33

7 7 .85

QFP48

7 7 1.40

QFP64

10 10 1.40

QFP100

14 14 1.40

SO20

8 13 2.45

TSSOP20

TSSOP28

DIP28

14 35 4.00

5 7 0.95

5 10 0.95

Height (mm)

Sample Picture

NXP offers the widest selection of packages for Cortex-M0 devices World's smallest 32-bit ARM MCU ­ 2mm x 2mm World's first low-pin-count 32-bit ARM packages

Introduction to LPC4300

NXP Microcontrollers

LPC4300

1

Powerful

Asymmetrical Dual-core

150MHz ARM 32-bit Cortex-M4 Digital Signal Controller with FPU

180MHz ARM 32-bit Cortex-M0 Microcontroller

2

Large Internal memories

Up to 1 MB Dual-Bank Flash

Up to 264 KB SRAM

3

Advanced peripherals

Two High-speed USB 2.0 interfaces. An onchip High-speed PHY 10/100T Ethernet MAC with RMII/MII interfaces LCD controller with display resolution of up to 1024 × 768 pixels

8

NXP Microcontrollers

LPC4300

LPC4300

Serial GPIO

Flexible

1 Unique Configurable Peripherals

Mimic standard serial interfaces (I2S, I2C, SPI, etc.) Interface to proprietary serial interfaces ­ no more bit banging! Design your own custom timers and PWMs

Quad SPI Flash Memory

State Config Timer

SPI Flash Interface

Memory map low cost SPI or quad SPI flash memories

ARM CORTEX-M4

Up to 150MHz

ARM CORTEX-M0

Up to 150MHz

2 3

Dual-cores allow flexible code and peripheral partitioning Pin compatible with Cortex-M3 based LPC1800

9

NXP Microcontrollers

LPC4300

1 ARM ecosystem

Write in C for a 32-bit processor Same tools ARM designers are familiar with

2

One toolchain

Re-use code from other NXP ARM projects One debugger provides simultaneous access to the both Cortex-M processors

3

Free DSP Libraries for Cortex-M4

10

Core: ARM Cortex-M4 Processor

LPC4000 Family Cortex-M4 Features:

­ NVIC & WIC

· Supports peripheral interrupts

­ MPU (Memory Protection Unit)

· Supports up to 8 regions

­ FPU (Floating Point Unit)

· IEEE 754 compliant

­ Full Debug Options:

· JTAG/SWD · ETM · Flash Patch

­ 150MHz Execution

· Flash or SRAM

NXP's low-leakage 90nm process technology allows operation to 150MHz+

11

LPC4300 Part Numbers

Part#

LPC4350 LPC4330 LPC4320 LPC4310

Flash Total

0 KB 0 KB 0 KB 0 KB

Flash A

0 KB 0 KB 0 KB 0 KB

Flash B

0 KB 0 KB 0 KB 0 KB

SRAM

264 KB 264 KB 200 KB 168 KB

HS LCD Ethnt USB

Y Y Y 2 2 1

Max Freq

180 180 180 180

Package

BGA256, BGA180, LQFP208 BGA256, BGA180, BGA100, LQFP144 BGA100, LQFP144, LQFP100 BGA100, LQFP144

Part#

LPC4357 LPC4353 LPC4337 LPC4333 LPC4327 LPC4325 LPC4323 LPC4322 LPC4317 LPC4315 LPC4313 LPC4312

Flash Total

1 MB 512 KB 1 MB 512 KB 1 MB 768 KB 512 KB 512 KB 1 MB 768 KB 512 KB 512 KB

Flash A

512 KB 256 KB 512 KB 256 KB 512 KB 384 KB 256 KB 512 KB 512 KB 384 KB 256 KB 512 KB

Flash B

512 KB 256 KB 512 KB 256 KB 512 KB 384 KB 256 KB 0 KB 512 KB 384 KB 256 KB 0 KB

SRAM

136 KB 136 KB 136 KB 136 KB 136 KB 136 KB 104 KB 104 KB 136 KB 136 KB 104 KB 104 KB

HS LCD Ethnt USB

Y Y Y Y Y Y 2 2 2 2 1 1 1 1

Max Freq

180 180 180 180 180 180 180 180 180 180 180 180

Package

BGA256, BGA180, LQFP208 BGA256, BGA180, LQFP208 BGA256, BGA180, BGA100, LQFP144 BGA256, BGA180, BGA100, LQFP144 BGA100, LQFP144, LQFP100 BGA100, LQFP144 BGA100, LQFP144 BGA100, LQFP144 BGA100, LQFP144 BGA100, LQFP144 BGA100, LQFP144 BGA100, LQFP144

144 LQFP: No ULPI, no QEI. 100 BGA/LQFP: No ULPI, no QEI. No MotorControl PWM. Fewer ADC channels.

12

LPC4300 and LPC1800

LPC1800 Block Diagram

LPC4300 Block Diagram

Pin Compatible

13

Asymmetrical Dual Core

Asymmetric Implementation

Cortex M4 with DSP extensions Including FPU for computation Cortex M0 for control and communication

Cortex M4

Cortex M0

Program Memory

Program Memory

15

Simple IPC (inter-processor communication)

Interrupt

TXEV Write Pointer SRAM HOST_CMD_BUFFER Read Pointer CREG NVIC

Cortex M4

SRAM Read Pointer

AHB

Write Pointer

Cortex M0

HOST_MSG_BUFFER

Interrupt

NVIC CREG TXEV

16

IPC explanation

What is important

­ Synchronization ­ Coherency

IPC is done in software

­ Read/write pointers ­ Buffer size (start and end address)

Interrupt connections are the hardware link

17

JTAG interface

Debug Port

LCD interface

Ethernet PHY interface

X32kout

Xtalout

USB ULPI SDIO interface USB FS interface

EMULATION TRACE MODULE

TEST/DEBUG INTERFACE

X32kin

Xtalin

RST

ARM Cortex-M4 or M3

I-bus

adapter APB slaves1

ARM Cortex M0

DMA M0 subcontroller system 2x

USB2.0 Ethernet USB2.0 LCD HS OTG/ SDIO 10/100 HS Host/ controller Host/ controller MAC Device Device

Clock Generation, Power Control, and other System Functions Clocks and Controls ROM 64kB SRAM 72kB SRAM 128kB ETM SRAM 32kB SRAM 32kB

VBAT VDD VDDA VSSA VSS Bus Master Bus Slave Memory Adapter

FPU

adapter

adapter

AHB Matrix

adapter APB slaves2 adapter APB slaves3

D-bus

S-bus

AHB slaves adapter APB slaves4 SPIFI

c4 c1 c3 adapter HS GPIO 12b ADC AES State Cfg Timer adapter APB slaves5 c2 AHB master regs External Memory controller

18

Memory Model

M4 and M0 can execute from FLASH without contention M0 can execute from its own RAM (4 options)

ROM written in thumb mode means both M4 and M0 can use ROM code

M4 MPU can be used to protect M0 code space.

19

adapter 1 8 ch 10-bit ADC 0/1 10-bit DAC I2C1 CCAN 0 Motor Control PWM I2S 0 I2S 1 I2C0

adapter 2 Clock & Reset Generation Unit PL550M 0 CCAN 1 Configuration Registers adapter 4 OS Timer UART 2 & 3 Capture/Compare Timers 2 & 3 SSP1 Quadrature Encoder Wakeup Interrupt Controller IRC 12MHz

adapter 5 RNG & OTP controller PL550M 1 PL160M OTP

Real Time Clock 32 kHz Oscillator Alarm Timer Always on Power Domain

adapter 3 Watchdog Timer UART 0 & 1 Capture/Compare Timers 0 & 1 SSP0 Pin Select

Power Mode Controller 64 x 32b Backup Registers

Note: shaded peripherals support General Purpose DMA

20

Flash

Two 512K byte banks of flash memory.

Flash B

Can be used as a single 1M byte memory area.

Enhanced memory controller and 256-bit wide interface allows operation at up to 150MHz.

Flash A Contiguous Mode

Flash B

Flash A

Dual Mode

21

Cortex-M0 Subsystem: Bus Matrix Connections

LPC4300

Maximum performance is obtained when the code for each processor is located in different memories.

CORTEX-M4

150MHz

CORTEX -M0

150MHz

· Cortex-M4 1.25 DMIPS/MHz

· Cortex-M0 0.9 DMIPS/MHz

ROM SRAM

128 KB

S

I

D

AHB Matrix

72 KB 32 KB 16 KB + 16 KB

External Memory Ctrl

Both Cortex-M4 & Cortex-M0 can run at 150MHz

Boot sequence

Reset Boot Code

M0

ROM

M4 Starts up first

M0 IPC Loaded

FLASH A FLASH Asd M0 prep code

Optional RAM execution

M0 code Execution from flash B

M4 code execution from flash A

Application Code

23

Cortex-M0 Subsystem: Audio Processing

Cortex-M4: Full power devoted to Audio processing Cortex-M0: Handles the hardware control ­ I2S & USB

LPC4300

I2S Cortex-M4

Cortex-M0

USB

LPC4300

Cortex-M0 Subsystem: Audio Processing

FS PHY + ULPI

LPC4300

HS PHY

CORTEX-M4

150MHz

CORTEX -M0

150MHz

GPDMA

Ether net

USB0

USB1

SD/ MMC

LCD

S

I

D

0

1

ROM

SRAM

128 KB

AHB Matrix

72 KB 32 KB 16 KB + 16 KB

External Memory Ctrl AHB Peripherals APB Peripherals

Cortex-M0 Subsystem: Motor Control

Cortex-M4: Single shunt Field Oriented Control (FOC) Cortex-M0: Receives control commands via CAN interface

LPC4300

Cortex-M4

Cortex-M0

SCT

CAN

Command

LPC4300

Cortex-M0 Subsystem: Motor Control

HS PHY FS PHY + ULPI

LPC4300

CORTEX-M4

150MHz

CORTEX -M0

150MHz

GPDMA

Ether net

USB0

USB1

SD/ MMC

LCD

S

I

D

0

1

ROM SRAM

128 KB

AHB Matrix

72 KB 32 KB

16 KB + 16 KB

External Memory Ctrl AHB Peripherals APB Peripherals

Debug view

Both cores are on the same JTAG chain

Treated as separate cores

Full Trace for M4

28

Getting Started

Getting started ­ Useful links

Web: NXP's complete microcontroller portfolio of Cortex-M products

­ http://www.nxp.com/microcontrollers

Everything about NXP Cortex-M4 and Digital Signal Control

­ http://ics.nxp.com/products/mcus/cortex-m4/

Online Training: Introduction to NXP's LPC4300 Cortex-M4 based digital controller

­ http://ics.nxp.com/support/training/lpc4300.intro/

Introduction to NXP's LPC4300 advanced peripherals

­ http://ics.nxp.com/support/training/lpc4300.peripherals/

How to get DSP + MCU performance from one Cortex-M4-based processor

­ http://seminar2.techonline.com/registration/wcIndex.cgi?sessionID=nxp_dec1610

30

Social media for NXP microcontrollers

http://twitter.com/LPCZone Online community for NXP LPC microcontrollers. Follow LPCZone and you will have the most up-todate information on the LPC product families.

http://www.youtube.com/user/LPCZone Design videos, trainings, interviews, fun

http://tech.groups.yahoo.com/group/lpc2000/ More than 9100 registered members (as of Jan, 2011) The #1 active Microcontroller user forum on Yahoo!

Information

NXP PowerPoint template Guidelines for presentations

32 pages

Find more like this

Report File (DMCA)

Our content is added by our users. We aim to remove reported files within 1 working day. Please use this link to notify us:

Report this file as copyright or inappropriate

713377