the cortex-m chapter series: hardware and...

Click here to load reader

Post on 24-Mar-2018

220 views

Category:

Documents

3 download

Embed Size (px)

TRANSCRIPT

  • er

    The Cortex-M Series: Hardware and SoftwareIntroduction

    In this chapter the real-time DSP platform of primary focus forthe course, the Cortex M4, will be introduced and explained. interms of hardware, software, and development environments.Beginning topics include:

    ARM Architectures and Processors

    What is ARM Architecture

    ARM Processor Families

    ARM Cortex-M Series

    Cortex-M4 Processor

    ARM Processor vs. ARM Architectures

    ARM Cortex-M4 Processor

    Cortex-M4 Processor Overview

    Cortex-M4 Block Diagram

    Cortex-M4 Registers

    Chapt

    2

    ECE 5655/4655 Real-Time DSP 21

  • Chapter 2 The Cortex-M Series: Hardware and Software

    What is ARM Architecture

    ARM architecture is a family of RISC-based processor archi-tectures

    Well-known for its power efficiency;

    Hence widely used in mobile devices, such as smart-phones and tablets

    Designed and licensed to a wide eco-system by ARM

    ARM Holdings

    The company designs ARM-based processors;

    Does not manufacture, but licenses designs to semiconduc-tor partners who add their own Intellectual Property (IP)on top of ARMs IP, fabricate and sell to customers;

    Also offer other IP apart from processors, such as physicalIPs, interconnect IPs, graphics cores, and developmenttools

    22 ECE 5655/4655 Real-Time DSP

  • ARM Processor Families

    ARM Processor Families Cortex-A series (Application)

    High performance processorscapable of full Operating Sys-tem (OS) support;

    Applications include smart-phones, digital TV, smartbooks, home gateways etc.

    Cortex-R series (Real-time)

    High performance for real-time applications;

    High reliability

    Applications include automotive braking system, power-trains etc.

    Cortex-M series (Microcontroller)

    Cost-sensitive solutions for deterministic microcontrollerapplications;

    Applications include microcontrollers, mixed signaldevices, smart sensors, automotive body electronics andairbags;

    SecurCore series

    High security applications.

    Previous classic processors: Include ARM7, ARM9, ARM11families

    Cortex-A

    Cortex-A57Cortex-A53

    Cortex-A15Cortex-A9Cortex-A8Cortex-A7Cortex-A5

    Cortex-R7Cortex-R5Cortex-R4

    Cortex-M4Cortex-M3Cortex-M1Cortex-M0+Cortex-M0

    SC000SC100SC300

    ARM11ARM9ARM7

    Cortex-R

    Cortex-M

    SecurCore

    Classic

    As of Dec 2013

    New!: Cortex-M7, Cortex-M33

    New!: Cortex-M23 (no DSP)

    As of Jan 2017

    ECE 5655/4655 Real-Time DSP 23

  • Chapter 2 The Cortex-M Series: Hardware and Software

    ARM Families and Architecture Over Time1

    1. J. Yiu, The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors, 3rd edi-tion, Newnes 2014.

    24 ECE 5655/4655 Real-Time DSP

  • Relative Performance

    Relative Performance1

    Design an ARM-based SoC

    Select a set of IP cores from ARM and/or other third-party IPvendors

    Integrate IP cores into a single chip design

    Give design to semiconductor foundries for chip fabrication

    1. https://www.arm.com/products/processors/cortex-m

    ARM-basedSoC

    ROM ARMprocessor

    RAM

    System bus

    Peripherals

    External Interface

    SoC

    SoC DesignLicensable IPs

    IP librariesCortex-A9 Cortex-R5 Cortex-M4

    ARM7 ARM9 ARM11

    AXI bus AHB bus APB bus

    GPIO I/O blocks Timer

    DRAM ctrl FLASH ctrl SRAM ctrl

    ECE 5655/4655 Real-Time DSP 25

    https://www.arm.com/products/processors/cortex-m

  • Chapter 2 The Cortex-M Series: Hardware and Software

    ARM Cortex-M Series

    Cortex-M series: Cortex-M0, M0+, M1, M3, M4, M7, M33.

    Energy-efficiency

    Lower energy cost, longer battery life

    Smaller code

    Lower silicon costs

    Ease of use

    Faster software development and reuse

    Embedded applications

    Smart metering, human interface devices, automotive andindustrial control systems, white goods, consumer prod-ucts and medical instrumentation

    ARM Processors vs. ARM Architectures

    ARM architecture

    Describes the details of instruction set, programmersmodel, exception model, and memory map

    Documented in the Architecture Reference Manual

    ARM processor

    Developed using one of the ARM architectures

    More implementation details, such as timing information

    26 ECE 5655/4655 Real-Time DSP

  • Companies Making ARM Chips

    Documented in processors Technical Reference Manual

    Companies Making ARM Chips

    Apple, AppliedMicro, Microchip (Atmel), Broadcom,Cypress Semiconductor, Nvidia, , Sam-sung Electronics, ST Microelectronics, and Texas Instru-ments (http://en.wikipedia.org/wiki/ARM_architecture)

    More Xilinx (Zynq), ...

    ARMv4/v4T Architecture

    ARMv5/ v4E Architecture

    ARMv6 Architecture

    ARMv7Architecture

    ARM v6-Me.g. Cortex-M0, M1

    e.g. ARM7TDMI e.g. ARM9926EJ-S e.g. ARM1136

    ARMv8 ArchitectureARMv7-A

    e.g. Cortex-A9

    ARMv7-Re.g. Cortex-R4

    ARMv7-Me.g. Cortex-M4

    ARMv8-Ae.g. Cortex-A53

    Cortex-A57

    ARMv8-R

    As of Dec 2013

    NXP Qualcomm

    ECE 5655/4655 Real-Time DSP 27

  • Chapter 2 The Cortex-M Series: Hardware and Software

    ARM Cortex-M Series FamilyA

    RM

    Arc

    hite

    ctur

    eC

    ore

    Arc

    hite

    ctur

    eT

    hum

    bT

    hum

    b-2

    Har

    dwar

    eM

    ulti

    ply

    Har

    dwar

    eD

    ivid

    eSa

    tura

    ted

    Mat

    hD

    SPE

    xten

    sion

    sFl

    oati

    ngP

    oint

    ARM

    v6-M

    Von

    Neu

    man

    nM

    ost

    Subs

    et1

    or 3

    2 cy

    cle

    No

    No

    Softw

    are

    No

    ARM

    v6-M

    Von

    Neu

    man

    nM

    ost

    Subs

    et1

    or 3

    2 cy

    cle

    No

    No

    Softw

    are

    No

    ARM

    v6-M

    Von

    Neu

    man

    nM

    ost

    Subs

    et3

    or 3

    3 cy

    cle

    No

    No

    Softw

    are

    No

    ARM

    v7-M

    Har

    vard

    Entir

    eEn

    tire

    1 cy

    cle

    Yes

    Yes

    Softw

    are

    No

    AR

    Mv7

    E-M

    Har

    vard

    Entir

    eEn

    tire

    1 cy

    cle

    Yes

    Yes

    Har

    dwar

    eO

    ptio

    nal

    28 ECE 5655/4655 Real-Time DSP

  • Cortex-M4 Processor Overview

    Cortex-M4 Processor Overview

    Cortex-M4 Processor

    Introduced in 2010

    Designed with a large variety of highly efficient signal pro-cessing features

    Features extended single-cycle multiply accumulateinstructions, optimized SIMD arithmetic, saturating arith-metic and an optional Floating Point Unit.

    High Performance Efficiency

    1.25 DMIPS/MHz (Dhrystone Million Instructions PerSecond / MHz) at the order of Watts / MHz

    Low Power Consumption

    Longer battery life especially critical in mobile products

    Enhanced Determinism

    The critical tasks and interrupt routines can be servedquickly in a known number of cycles

    ECE 5655/4655 Real-Time DSP 29

  • Chapter 2 The Cortex-M Series: Hardware and Software

    Cortex-M4 Processor Features

    32-bit Reduced Instruction Set Computing (RISC) processor

    Harvard architecture

    Separated data bus and instruction bus

    Instruction set

    Include the entire Thumb-1 (16-bit) and Thumb-2 (16/32-bit) instruction sets1

    3-stage + branch speculation pipeline

    Performance efficiency

    1.25 1.95 DMIPS/MHz (Dhrystone Million InstructionsPer Second / MHz)

    1. J. Yiu, The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors, 3rd edition,Newnes, 2014.

    210 ECE 5655/4655 Real-Time DSP

  • Cortex-M4 Processor Features

    Supported Interrupts

    Non-maskable Interrupt (NMI) + 1 to 240 physical inter-rupts

    8 to 256 interrupt priority levels

    Supports Sleep Modes

    Up to 240 Wake-up Interrupts

    Integrated WFI (Wait For Interrupt) and WFE (Wait ForEvent) Instructions and Sleep On Exit capability (to becovered in more detail later)

    Sleep & Deep Sleep Signals

    Optional Retention Mode with ARM Power ManagementKit

    Enhanced Instructions

    Hardware Divide (2-12 Cycles)

    Single-Cycle 16, 32-bit MAC, Single-cycle dual 16-bitMAC

    8, 16-bit SIMD arithmetic

    Debug

    Optional JTAG & Serial-Wire Debug (SWD) Ports

    Up to 8 Breakpoints and 4 Watchpoints

    Memory Protection Unit (MPU)

    Optional 8 region MPU with sub regions and backgroundregion

    ECE 5655/4655 Real-Time DSP 211

  • Chapter 2 The Cortex-M Series: Hardware and Software

    Cortex-M4 processor is designed to meet the challenges oflow dynamic power constraints while retaining light foot-prints

    180 nm ultra low power process 157 W/MHz

    90 nm low power process 33 W/MHz

    40 nm G process 8 W/MHz

    ARM Cortex-M4 Implementation Data

    Process180ULL(7-track, typical 1.8v, 25C)

    90LP(7-track, typical 1.2v, 25C)

    40G9-track, typical 0.9v, 25C)

    Dynamic Power 157 W/MHz 33 W/MHz 8 W/MHz

    Floorplanned Area 0.56 mm2 0.17 mm2 0.04 mm2

    212 ECE 5655/4655 Real-Time DSP

  • Cortex-M4 Block Diagram

    Cortex-M4 Block Diagram

    Opt

    iona

    lW

    IC

    Nes

    ted

    Vec

    tor

    Inte

    rrupt

    Con

    trolle

    r(N

    VIC

    )

    Opt

    iona

    lD

    ebug

    Acce

    ss P

    ort

View more