SlideShare une entreprise Scribd logo
1  sur  26
Cortex-M Series Processor
Implementation Diversity
Agenda
ARM Cortex®-M0 processor
ARM Cortex-M0+ processor
2
AAME TechCon 2013
TC006v02
2
ARM Cortex-M3 processor
ARM Cortex-M4 processor
ARM Cortex-M0 Processor
ARMv6-M architecture
Von-Neumann architecture
32-bit architecture
Thumb®
technology
Nested Vector Interrupt
Debug
WICInterface
NVIC Processor
Core
Debug
Breakpoint
and
Watchpoint
Unit
3
AAME TechCon 2013
TC006v02
3
Nested Vector Interrupt
Controller (NVIC)
AMBA®
AHB-Lite Master Interface
Optional CoreSight™-compliant
debug
Ultra-low power support
RTL is configurable
Synthesizable
Gate count 12 ~ 25K
WICInterface
Clocks/Resets
Debugger
Interface
Configuration/
Status
AHB-Lite
Master Interface
Bus
Matrix
Processor Configuration Options
The following configuration options are set during the chip
implementation design flow
Parameter Value
ACG 0 or 1
BE 0 or 1
NUMIRQ 1 - 32
SYST 0 or 1
4
AAME TechCon 2013
TC006v02
4
SYST 0 or 1
SMUL 0 or 1
WIC 0 or 1
WICLINES 2-34
DBG 0 or 1
BKPT 0, 1, 2, 3 or 4
WPT 0, 1 or 2
AHBSLV 0 or 1
RAR 0 or 1
Hardware Multiplier
There are two different 32x32 hardware multiplier
versions
– Implementation option
Fast Multiplier
– Optimized for speed
5
AAME TechCon 2013
TC006v02
5
– Optimized for speed
– Takes 1 cycle to calculate result
Small Multiplier
– Optimized for area
– Takes 32 cycles to calculate result
RTL Configuration Options
Processor Core
Number of IRQs (1 - 32)
Data endianness
Hardware multiplier (1 cycle / 32 cycle)
SysTick timer
6
AAME TechCon 2013
TC006v02
6
Debug Options
Number of watchpoints and breakpoints
Debug slave interface protocol
Power Management Options
Architectural clock gates
WIC interface
Debug Extensions
Optional CoreSight-compliant debug
Support for halting debug
Single stepping support
Debugger has access to all memory and registers
Profiling support to help to optimize code
Breakpoints for instruction comparison
7
AAME TechCon 2013
TC006v02
7
Breakpoints for instruction comparison
Maximum of 4 instruction comparators are supported
Data Watchpoints for data comparison
Up to 2 hardware comparators are supported
Agenda
ARM Cortex®-M0 processor
ARM Cortex-M0+ processor
8
AAME TechCon 2013
TC006v02
8
ARM Cortex-M3 processor
ARM Cortex-M4 processor
Cortex-M0+ Processor
Synthesizable
ARMv6-M architecture
Thumb technology
2-stage core pipeline
Optional user/privileged support
Optional MPU
Nested Vector Interrupt Controller
(NVIC)
NVIC Processor
Core
Debug
Debugger
Interface
Breakpoint
and
Watchpoint
Unit
Debug
Interrupts&
WICInterface
Execution Trace
Interface
9
AAME TechCon 2013
TC006v02
9
(NVIC)
AMBA AHB-Lite master interface
Optional single cycle IO Port
Optional halfword instruction fetch
Optional CoreSight-compliant
debug
Ultra-low Power support
Configurable RTL
AHB-Lite Master
Interface
Bus
Matrix
MPU
Configuration/S
tatus
Clock/Reset
Low Latency IO
Port
Cortex-M0+ vs Cortex-M0
Processors
Feature Cortex-M0+ Cortex-M0
Architecture ARMv6-M ARMv6-M
Pipeline 2-stage 3-stage
Dynamic Power (180nm)* 53uW/MHz 78uW/MHz
Area (gate count)* 11.5K 11.5K
Bus Interface AHB-Lite I/O Port AHB-Lite
10
AAME TechCon 2013
TC006v02
10* 180nm uLL process using Artisan SC7 libraries, typical, 1.8v, 25C
Data access (cycles) 2 1 2
MPU Option Yes No
Relocatable vector table Yes No
Multidrop debug support Yes No
Trace support Micro Trace Buffer No
Instruction fetch activity
(Relative for Dhrystone)
0.85 1
Performance (DMIPS/MHz) 0.95 0.90
RTL Configuration Options
The following options can be configured at implementation time
Processor Core
Number of IRQs, data endianness, type of hardware multiplier,
relocatable vector table
MPU
User/privileged support
SysTick timer
11
AAME TechCon 2013
TC006v02
11
SysTick timer
IO Port
Halfword-only Instruction fetch
Debug options
Number of watchpoints and breakpoints
Debug slave interface protocol
Power Management Options
Architectural clock gates
WIC interface
System Timer Extension
Optional support for a system timer
– SysTick
24-bit timer
Timer can be used in multiple ways
12
AAME TechCon 2013
TC006v02
12
Timer can be used in multiple ways
– OS tick timer
– SysTick interrupt
– Simple counter for the application
Debug Extensions
Optional CoreSight-compliant debug
Support for invasive debug
Single stepping support
Debugger has access to all memory and registers
Breakpoints
13
AAME TechCon 2013
TC006v02
13
Breakpoints
Up to 4 instruction address comparators
Data Watchpoints
Up to 2 data or instruction address comparators
Non-invasive PC sampling
Profiling support to help to optimize code
Trace - MTB (Micro Trace Buffer)
The MTB provides a very simple execution trace capability
No support for load/store data trace or any other trace information
MTB records changes in program flow and stores into a configurable
region of the SRAM
Debugger can extract the trace information via the AHB-Lite interface, to
14
AAME TechCon 2013
TC006v02
14
Debugger can extract the trace information via the AHB-Lite interface, to
reconstruct an instruction flow trace
The MTB can also operate as a simple AHB-Lite SRAM controller
The MTB is optional and licensed separately
RTL Configuration Options
The processor needs to be configured at implementation time
Processor Core
Number of IRQs, Data Endianness, Type of Hardware Multiplier, Relocatable
Vector Table
MPU
User/Privileged support
SysTick timer
15
AAME TechCon 2013
TC006v02
15
SysTick timer
IO Port
Halfword-only Instruction fetch
Debug Options
Number of Watchpoints and Breakpoints
Debug Slave interface protocol
Power Management Options
Architectural Clock Gates
WIC interface
Integration Example
Full working integration example provided
Integration example contains:
Cortex-M0+ Processor
Cortex-M0+ Debug Access Port (DAP)
Wake-up Interrupt Controller (WIC)
16
AAME TechCon 2013
TC006v02
16
Example MCU provided
Reset & power controller
Used as a starting point for development
Cortex-M0+ core and DAP cannot be modified
Agenda
ARM Cortex®-M0 processor
ARM Cortex-M0+ processor
17
AAME TechCon 2013
TC006v02
17
ARM Cortex-M3 processor
ARM Cortex-M4 processor
Processor Block Diagram
NVIC
Cortex M3 or
Cortex-M4(F)
Core
I D
INTISR[n*-1:0]
MPU
ETMSLEEPING
SLEEPDEEP
INTNMI
Interrupts
Sleep
Debug
Integration Level
Cortex-M3/M4 Processor
Trigger
n*- configurable
18
AAME TechCon 2013
TC006v02
18
Bus
matrix
Serial Wire
or JTAG
DWT ITM
APB i/f
FPB
AHB-APSWJ-DP
TPIU
ROM
table
I-Code
D-Code
System
External
Private
Peripheral Bus
Trace Bus
Single Wire or
Multi-pin
Internal Private Peripheral Bus
n*- configurable
number of interrupt
lines
Configuration Options - I
There are a number of configuration options available to the user
Number of interrupts
– The Cortex-M3 can be configured to have between 1 and 240 external interrupts
Number of bits of interrupt priority
– Can have between 3 and 8 bits of interrupt priority, giving 8 to 256 level of priority
19
AAME TechCon 2013
TC006v02
19
MPU
– Implementing the MPU is optional for the Cortex-M3
ETM
– Implemented with or without ETM
– Note the ETM for Cortex-M3 only supports instruction tracing
Configuration - II
JTAG-DP/SW-DP
– Can be implemented with standard five pin JTAG, SW-DP or both
The Cortex-M3 supports two levels of clock-gating
– Use of RTL clock-gating is optional and requires a tool such as Synopsys Power
Compiler to infer clock gates from the RTL
– Architectural clock-gating is implemented at the Cortex-M3Integration and CortexM3
20
AAME TechCon 2013
TC006v02
20
– Architectural clock-gating is implemented at the Cortex-M3Integration and CortexM3
level of hierarchy and instantiates an integrated clock-gating cell from the technology
library
ROM table
– The ROM table is a register file 4KB in size and identifies the system components
available for debug
– If the debug components are modified, the ROM table must also be modified to
reflect this
Agenda
ARM Cortex®-M0 processor
ARM Cortex-M0+ processor
21
AAME TechCon 2013
TC006v02
21
ARM Cortex-M3 processor
ARM Cortex-M4 processor
Cortex-M4 Processor
Identical to Cortex-M3 processor with some additions
– Extensive DSP Instructions
– Optional Single-Precision Floating Point Unit
Cortex-M3 and Cortex-M4 processors derived from same database
22
AAME TechCon 2013
TC006v02
22
Cortex-M3 processor comes With example system
Cortex-M4 processor comes with integration kit
Cortex-M4 Floating Point Unit
The Cortex-M4 processor includes a tightly integrated hardware floating point unit
– Implements the FPv4-SP architecture
– Separate register file with 16 double-precision registers (32 single-precision registers)
– IEEE-754 compliant
Hardware implements single-precision arithmetic
– Double-precision handled through software
Functions supported in hardware
23
AAME TechCon 2013
TC006v02
23
Functions supported in hardware
– Multiply, add, subtract, multiply-accumulate
– Comparison and format conversion
– Divide and square root
Other operations (e.g. vectoring) require support code
The FPU is disabled at reset
– Must be enabled and configured by initialization code
– Must be done before the C library initialization
– Sample code available in chapter 7 of the Cortex-M4 TRM
Memory Protection Unit (MPU)
Provides access control for various memory regions
Zero Latency Memory Protection
– 8 register-stored regions
– Minimum region size 32 bytes (max 4GB)
– No address translation or page tables
24
AAME TechCon 2013
TC006v02
24
Configured via memory-mapped control registers
MPU is optional
Implementation Options
Number of Interrupts (1 - 240)
Number of Priority bits (3 - 8)
Optional Blocks
– MPU – Memory Protection Unit
– ETM – Embedded Trace Macrocell
– DWT – Data Watchpoint and Trace
– FPB – Flash Patch and Breakpoint Unit
25
AAME TechCon 2013
TC006v02
25
– FPB – Flash Patch and Breakpoint Unit
– ITM – Instrumentation Trace Module
Cut-down versions for reduced gatecount
– DWT, FPB
Debug can be modified for use in a full-CoreSight multi-processor system
– SWJ-DP removed and TPIU replaced with full-CoreSight alternative
Wake-up Interrupt Controller
Optional FPU on Cortex-M4 processor
Cortex-M Series Processor
Implementation Diversity

Contenu connexe

Tendances

AAME ARM Techcon2013 001v02 Architecture and Programmer's model
AAME ARM Techcon2013 001v02 Architecture and Programmer's modelAAME ARM Techcon2013 001v02 Architecture and Programmer's model
AAME ARM Techcon2013 001v02 Architecture and Programmer's modelAnh Dung NGUYEN
 
02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC
02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC 02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC
02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC IEEE SSCS AlexSC
 
ARM AAE - Intrustion Sets
ARM AAE - Intrustion SetsARM AAE - Intrustion Sets
ARM AAE - Intrustion SetsAnh Dung NGUYEN
 
1: Interfacing using ARM Cortex M4 || IEEE SSCS AlexSC
1: Interfacing using ARM Cortex M4 || IEEE SSCS AlexSC 1: Interfacing using ARM Cortex M4 || IEEE SSCS AlexSC
1: Interfacing using ARM Cortex M4 || IEEE SSCS AlexSC IEEE SSCS AlexSC
 
Q4.11: ARM Architecture
Q4.11: ARM ArchitectureQ4.11: ARM Architecture
Q4.11: ARM ArchitectureLinaro
 
Introduction to arm architecture
Introduction to arm architectureIntroduction to arm architecture
Introduction to arm architectureZakaria Gomaa
 
Introduction to Processor Design and ARM Processor
Introduction to Processor Design and ARM ProcessorIntroduction to Processor Design and ARM Processor
Introduction to Processor Design and ARM ProcessorDarling Jemima
 
ARM® Cortex M Boot & CMSIS Part 1-3
ARM® Cortex M Boot & CMSIS Part 1-3ARM® Cortex M Boot & CMSIS Part 1-3
ARM® Cortex M Boot & CMSIS Part 1-3Raahul Raghavan
 
ARM® Cortex™ M Energy Optimization - Using Instruction Cache
ARM® Cortex™ M Energy Optimization - Using Instruction CacheARM® Cortex™ M Energy Optimization - Using Instruction Cache
ARM® Cortex™ M Energy Optimization - Using Instruction CacheRaahul Raghavan
 
ARM® Cortex™ M Bootup_CMSIS_Part_2_3
ARM® Cortex™ M Bootup_CMSIS_Part_2_3ARM® Cortex™ M Bootup_CMSIS_Part_2_3
ARM® Cortex™ M Bootup_CMSIS_Part_2_3Raahul Raghavan
 
LCA13: ARMv8 Status and Updates
LCA13: ARMv8 Status and UpdatesLCA13: ARMv8 Status and Updates
LCA13: ARMv8 Status and UpdatesLinaro
 
Introduction to i.MX27 Multimedia Applications Processors
Introduction to i.MX27 Multimedia Applications ProcessorsIntroduction to i.MX27 Multimedia Applications Processors
Introduction to i.MX27 Multimedia Applications ProcessorsPremier Farnell
 
Arm cortex-m3 by-joe_bungo_arm
Arm cortex-m3 by-joe_bungo_armArm cortex-m3 by-joe_bungo_arm
Arm cortex-m3 by-joe_bungo_armPrashant Ahire
 
ARM Processor architecture
ARM Processor  architectureARM Processor  architecture
ARM Processor architecturerajkciitr
 
Arm cortex-m4 programmer model
Arm cortex-m4 programmer modelArm cortex-m4 programmer model
Arm cortex-m4 programmer modelMohammed Gomaa
 
03 Mcu Day 2009 (C2000) 8 13 Editado
03   Mcu Day 2009 (C2000) 8 13   Editado03   Mcu Day 2009 (C2000) 8 13   Editado
03 Mcu Day 2009 (C2000) 8 13 EditadoTexas Instruments
 
04 Mcu Day Stellaris 8 12b Editado
04   Mcu Day   Stellaris 8 12b   Editado04   Mcu Day   Stellaris 8 12b   Editado
04 Mcu Day Stellaris 8 12b EditadoTexas Instruments
 
ARM Cortex-M3 Training
ARM Cortex-M3 TrainingARM Cortex-M3 Training
ARM Cortex-M3 TrainingRaghav Nayak
 

Tendances (20)

AAME ARM Techcon2013 001v02 Architecture and Programmer's model
AAME ARM Techcon2013 001v02 Architecture and Programmer's modelAAME ARM Techcon2013 001v02 Architecture and Programmer's model
AAME ARM Techcon2013 001v02 Architecture and Programmer's model
 
02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC
02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC 02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC
02 : ARM Cortex M4 Specs || IEEE SSCS AlexSC
 
ARM AAE - Intrustion Sets
ARM AAE - Intrustion SetsARM AAE - Intrustion Sets
ARM AAE - Intrustion Sets
 
1: Interfacing using ARM Cortex M4 || IEEE SSCS AlexSC
1: Interfacing using ARM Cortex M4 || IEEE SSCS AlexSC 1: Interfacing using ARM Cortex M4 || IEEE SSCS AlexSC
1: Interfacing using ARM Cortex M4 || IEEE SSCS AlexSC
 
Q4.11: ARM Architecture
Q4.11: ARM ArchitectureQ4.11: ARM Architecture
Q4.11: ARM Architecture
 
Introduction to arm architecture
Introduction to arm architectureIntroduction to arm architecture
Introduction to arm architecture
 
Introduction to Processor Design and ARM Processor
Introduction to Processor Design and ARM ProcessorIntroduction to Processor Design and ARM Processor
Introduction to Processor Design and ARM Processor
 
ARM® Cortex M Boot & CMSIS Part 1-3
ARM® Cortex M Boot & CMSIS Part 1-3ARM® Cortex M Boot & CMSIS Part 1-3
ARM® Cortex M Boot & CMSIS Part 1-3
 
Arm arc-2016
Arm arc-2016Arm arc-2016
Arm arc-2016
 
ARM® Cortex™ M Energy Optimization - Using Instruction Cache
ARM® Cortex™ M Energy Optimization - Using Instruction CacheARM® Cortex™ M Energy Optimization - Using Instruction Cache
ARM® Cortex™ M Energy Optimization - Using Instruction Cache
 
ARM® Cortex™ M Bootup_CMSIS_Part_2_3
ARM® Cortex™ M Bootup_CMSIS_Part_2_3ARM® Cortex™ M Bootup_CMSIS_Part_2_3
ARM® Cortex™ M Bootup_CMSIS_Part_2_3
 
LCA13: ARMv8 Status and Updates
LCA13: ARMv8 Status and UpdatesLCA13: ARMv8 Status and Updates
LCA13: ARMv8 Status and Updates
 
Introduction to i.MX27 Multimedia Applications Processors
Introduction to i.MX27 Multimedia Applications ProcessorsIntroduction to i.MX27 Multimedia Applications Processors
Introduction to i.MX27 Multimedia Applications Processors
 
Arm cortex-m3 by-joe_bungo_arm
Arm cortex-m3 by-joe_bungo_armArm cortex-m3 by-joe_bungo_arm
Arm cortex-m3 by-joe_bungo_arm
 
ARM Processor architecture
ARM Processor  architectureARM Processor  architecture
ARM Processor architecture
 
Arm cortex-m4 programmer model
Arm cortex-m4 programmer modelArm cortex-m4 programmer model
Arm cortex-m4 programmer model
 
03 Mcu Day 2009 (C2000) 8 13 Editado
03   Mcu Day 2009 (C2000) 8 13   Editado03   Mcu Day 2009 (C2000) 8 13   Editado
03 Mcu Day 2009 (C2000) 8 13 Editado
 
04 Mcu Day Stellaris 8 12b Editado
04   Mcu Day   Stellaris 8 12b   Editado04   Mcu Day   Stellaris 8 12b   Editado
04 Mcu Day Stellaris 8 12b Editado
 
ARM CORTEX M3 PPT
ARM CORTEX M3 PPTARM CORTEX M3 PPT
ARM CORTEX M3 PPT
 
ARM Cortex-M3 Training
ARM Cortex-M3 TrainingARM Cortex-M3 Training
ARM Cortex-M3 Training
 

Similaire à AAME ARM Techcon2013 006v02 Implementation Diversity

An Overview of LPC2101/02/03
An Overview of LPC2101/02/03An Overview of LPC2101/02/03
An Overview of LPC2101/02/03Premier Farnell
 
MPC854XE: PowerQUICC III Processors
MPC854XE: PowerQUICC III ProcessorsMPC854XE: PowerQUICC III Processors
MPC854XE: PowerQUICC III ProcessorsPremier Farnell
 
Overview of LPC213x MCUs
Overview of LPC213x MCUsOverview of LPC213x MCUs
Overview of LPC213x MCUsPremier Farnell
 
unit 1ARM INTRODUCTION.pptx
unit 1ARM INTRODUCTION.pptxunit 1ARM INTRODUCTION.pptx
unit 1ARM INTRODUCTION.pptxKandavelEee
 
Arrow Israel the MCU Home
Arrow Israel the MCU HomeArrow Israel the MCU Home
Arrow Israel the MCU HomeAmir Sherman
 
Piccolo F2806x Microcontrollers
Piccolo F2806x MicrocontrollersPiccolo F2806x Microcontrollers
Piccolo F2806x MicrocontrollersPremier Farnell
 
Overview of LPC214x MCUs
Overview of LPC214x MCUsOverview of LPC214x MCUs
Overview of LPC214x MCUsPremier Farnell
 
A 32-Bit Parameterized Leon-3 Processor with Custom Peripheral Integration
A 32-Bit Parameterized Leon-3 Processor with Custom Peripheral IntegrationA 32-Bit Parameterized Leon-3 Processor with Custom Peripheral Integration
A 32-Bit Parameterized Leon-3 Processor with Custom Peripheral IntegrationTalal Khaliq
 
How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?Hannes Tschofenig
 
Introduction to Vortex86EX Motion Control Modules
Introduction to Vortex86EX Motion Control ModulesIntroduction to Vortex86EX Motion Control Modules
Introduction to Vortex86EX Motion Control Modulesroboard
 
PIC32MX Microcontroller Family
PIC32MX Microcontroller FamilyPIC32MX Microcontroller Family
PIC32MX Microcontroller FamilyPremier Farnell
 

Similaire à AAME ARM Techcon2013 006v02 Implementation Diversity (20)

An Overview of LPC2101/02/03
An Overview of LPC2101/02/03An Overview of LPC2101/02/03
An Overview of LPC2101/02/03
 
Ec8791 arm 9 processor
Ec8791 arm 9 processorEc8791 arm 9 processor
Ec8791 arm 9 processor
 
MPC854XE: PowerQUICC III Processors
MPC854XE: PowerQUICC III ProcessorsMPC854XE: PowerQUICC III Processors
MPC854XE: PowerQUICC III Processors
 
Overview of LPC213x MCUs
Overview of LPC213x MCUsOverview of LPC213x MCUs
Overview of LPC213x MCUs
 
Dsp on an-avr
Dsp on an-avrDsp on an-avr
Dsp on an-avr
 
unit 1ARM INTRODUCTION.pptx
unit 1ARM INTRODUCTION.pptxunit 1ARM INTRODUCTION.pptx
unit 1ARM INTRODUCTION.pptx
 
Arrow Israel the MCU Home
Arrow Israel the MCU HomeArrow Israel the MCU Home
Arrow Israel the MCU Home
 
Piccolo F2806x Microcontrollers
Piccolo F2806x MicrocontrollersPiccolo F2806x Microcontrollers
Piccolo F2806x Microcontrollers
 
Architecture of pentium family
Architecture of pentium familyArchitecture of pentium family
Architecture of pentium family
 
Practica 2
Practica 2Practica 2
Practica 2
 
Overview of LPC214x MCUs
Overview of LPC214x MCUsOverview of LPC214x MCUs
Overview of LPC214x MCUs
 
2502s
2502s2502s
2502s
 
Atmega8u2 mur
Atmega8u2 murAtmega8u2 mur
Atmega8u2 mur
 
A 32-Bit Parameterized Leon-3 Processor with Custom Peripheral Integration
A 32-Bit Parameterized Leon-3 Processor with Custom Peripheral IntegrationA 32-Bit Parameterized Leon-3 Processor with Custom Peripheral Integration
A 32-Bit Parameterized Leon-3 Processor with Custom Peripheral Integration
 
How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?
 
Atmega 128 datasheet
Atmega 128   datasheetAtmega 128   datasheet
Atmega 128 datasheet
 
Doc2502
Doc2502Doc2502
Doc2502
 
Introduction to Vortex86EX Motion Control Modules
Introduction to Vortex86EX Motion Control ModulesIntroduction to Vortex86EX Motion Control Modules
Introduction to Vortex86EX Motion Control Modules
 
XMC4000 Brochure | Infineon Technologies
XMC4000 Brochure | Infineon TechnologiesXMC4000 Brochure | Infineon Technologies
XMC4000 Brochure | Infineon Technologies
 
PIC32MX Microcontroller Family
PIC32MX Microcontroller FamilyPIC32MX Microcontroller Family
PIC32MX Microcontroller Family
 

Dernier

Introduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfIntroduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfsumitt6_25730773
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxSCMS School of Architecture
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Ramkumar k
 
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...jabtakhaidam7
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdfKamal Acharya
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdfKamal Acharya
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxmaisarahman1
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARKOUSTAV SARKAR
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxSCMS School of Architecture
 
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...vershagrag
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . pptDineshKumar4165
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdfKamal Acharya
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxMuhammadAsimMuhammad6
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksMagic Marks
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...drmkjayanthikannan
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTbhaskargani46
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityMorshed Ahmed Rahath
 

Dernier (20)

Introduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfIntroduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdf
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)
 
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic Marks
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 

AAME ARM Techcon2013 006v02 Implementation Diversity

  • 2. Agenda ARM Cortex®-M0 processor ARM Cortex-M0+ processor 2 AAME TechCon 2013 TC006v02 2 ARM Cortex-M3 processor ARM Cortex-M4 processor
  • 3. ARM Cortex-M0 Processor ARMv6-M architecture Von-Neumann architecture 32-bit architecture Thumb® technology Nested Vector Interrupt Debug WICInterface NVIC Processor Core Debug Breakpoint and Watchpoint Unit 3 AAME TechCon 2013 TC006v02 3 Nested Vector Interrupt Controller (NVIC) AMBA® AHB-Lite Master Interface Optional CoreSight™-compliant debug Ultra-low power support RTL is configurable Synthesizable Gate count 12 ~ 25K WICInterface Clocks/Resets Debugger Interface Configuration/ Status AHB-Lite Master Interface Bus Matrix
  • 4. Processor Configuration Options The following configuration options are set during the chip implementation design flow Parameter Value ACG 0 or 1 BE 0 or 1 NUMIRQ 1 - 32 SYST 0 or 1 4 AAME TechCon 2013 TC006v02 4 SYST 0 or 1 SMUL 0 or 1 WIC 0 or 1 WICLINES 2-34 DBG 0 or 1 BKPT 0, 1, 2, 3 or 4 WPT 0, 1 or 2 AHBSLV 0 or 1 RAR 0 or 1
  • 5. Hardware Multiplier There are two different 32x32 hardware multiplier versions – Implementation option Fast Multiplier – Optimized for speed 5 AAME TechCon 2013 TC006v02 5 – Optimized for speed – Takes 1 cycle to calculate result Small Multiplier – Optimized for area – Takes 32 cycles to calculate result
  • 6. RTL Configuration Options Processor Core Number of IRQs (1 - 32) Data endianness Hardware multiplier (1 cycle / 32 cycle) SysTick timer 6 AAME TechCon 2013 TC006v02 6 Debug Options Number of watchpoints and breakpoints Debug slave interface protocol Power Management Options Architectural clock gates WIC interface
  • 7. Debug Extensions Optional CoreSight-compliant debug Support for halting debug Single stepping support Debugger has access to all memory and registers Profiling support to help to optimize code Breakpoints for instruction comparison 7 AAME TechCon 2013 TC006v02 7 Breakpoints for instruction comparison Maximum of 4 instruction comparators are supported Data Watchpoints for data comparison Up to 2 hardware comparators are supported
  • 8. Agenda ARM Cortex®-M0 processor ARM Cortex-M0+ processor 8 AAME TechCon 2013 TC006v02 8 ARM Cortex-M3 processor ARM Cortex-M4 processor
  • 9. Cortex-M0+ Processor Synthesizable ARMv6-M architecture Thumb technology 2-stage core pipeline Optional user/privileged support Optional MPU Nested Vector Interrupt Controller (NVIC) NVIC Processor Core Debug Debugger Interface Breakpoint and Watchpoint Unit Debug Interrupts& WICInterface Execution Trace Interface 9 AAME TechCon 2013 TC006v02 9 (NVIC) AMBA AHB-Lite master interface Optional single cycle IO Port Optional halfword instruction fetch Optional CoreSight-compliant debug Ultra-low Power support Configurable RTL AHB-Lite Master Interface Bus Matrix MPU Configuration/S tatus Clock/Reset Low Latency IO Port
  • 10. Cortex-M0+ vs Cortex-M0 Processors Feature Cortex-M0+ Cortex-M0 Architecture ARMv6-M ARMv6-M Pipeline 2-stage 3-stage Dynamic Power (180nm)* 53uW/MHz 78uW/MHz Area (gate count)* 11.5K 11.5K Bus Interface AHB-Lite I/O Port AHB-Lite 10 AAME TechCon 2013 TC006v02 10* 180nm uLL process using Artisan SC7 libraries, typical, 1.8v, 25C Data access (cycles) 2 1 2 MPU Option Yes No Relocatable vector table Yes No Multidrop debug support Yes No Trace support Micro Trace Buffer No Instruction fetch activity (Relative for Dhrystone) 0.85 1 Performance (DMIPS/MHz) 0.95 0.90
  • 11. RTL Configuration Options The following options can be configured at implementation time Processor Core Number of IRQs, data endianness, type of hardware multiplier, relocatable vector table MPU User/privileged support SysTick timer 11 AAME TechCon 2013 TC006v02 11 SysTick timer IO Port Halfword-only Instruction fetch Debug options Number of watchpoints and breakpoints Debug slave interface protocol Power Management Options Architectural clock gates WIC interface
  • 12. System Timer Extension Optional support for a system timer – SysTick 24-bit timer Timer can be used in multiple ways 12 AAME TechCon 2013 TC006v02 12 Timer can be used in multiple ways – OS tick timer – SysTick interrupt – Simple counter for the application
  • 13. Debug Extensions Optional CoreSight-compliant debug Support for invasive debug Single stepping support Debugger has access to all memory and registers Breakpoints 13 AAME TechCon 2013 TC006v02 13 Breakpoints Up to 4 instruction address comparators Data Watchpoints Up to 2 data or instruction address comparators Non-invasive PC sampling Profiling support to help to optimize code
  • 14. Trace - MTB (Micro Trace Buffer) The MTB provides a very simple execution trace capability No support for load/store data trace or any other trace information MTB records changes in program flow and stores into a configurable region of the SRAM Debugger can extract the trace information via the AHB-Lite interface, to 14 AAME TechCon 2013 TC006v02 14 Debugger can extract the trace information via the AHB-Lite interface, to reconstruct an instruction flow trace The MTB can also operate as a simple AHB-Lite SRAM controller The MTB is optional and licensed separately
  • 15. RTL Configuration Options The processor needs to be configured at implementation time Processor Core Number of IRQs, Data Endianness, Type of Hardware Multiplier, Relocatable Vector Table MPU User/Privileged support SysTick timer 15 AAME TechCon 2013 TC006v02 15 SysTick timer IO Port Halfword-only Instruction fetch Debug Options Number of Watchpoints and Breakpoints Debug Slave interface protocol Power Management Options Architectural Clock Gates WIC interface
  • 16. Integration Example Full working integration example provided Integration example contains: Cortex-M0+ Processor Cortex-M0+ Debug Access Port (DAP) Wake-up Interrupt Controller (WIC) 16 AAME TechCon 2013 TC006v02 16 Example MCU provided Reset & power controller Used as a starting point for development Cortex-M0+ core and DAP cannot be modified
  • 17. Agenda ARM Cortex®-M0 processor ARM Cortex-M0+ processor 17 AAME TechCon 2013 TC006v02 17 ARM Cortex-M3 processor ARM Cortex-M4 processor
  • 18. Processor Block Diagram NVIC Cortex M3 or Cortex-M4(F) Core I D INTISR[n*-1:0] MPU ETMSLEEPING SLEEPDEEP INTNMI Interrupts Sleep Debug Integration Level Cortex-M3/M4 Processor Trigger n*- configurable 18 AAME TechCon 2013 TC006v02 18 Bus matrix Serial Wire or JTAG DWT ITM APB i/f FPB AHB-APSWJ-DP TPIU ROM table I-Code D-Code System External Private Peripheral Bus Trace Bus Single Wire or Multi-pin Internal Private Peripheral Bus n*- configurable number of interrupt lines
  • 19. Configuration Options - I There are a number of configuration options available to the user Number of interrupts – The Cortex-M3 can be configured to have between 1 and 240 external interrupts Number of bits of interrupt priority – Can have between 3 and 8 bits of interrupt priority, giving 8 to 256 level of priority 19 AAME TechCon 2013 TC006v02 19 MPU – Implementing the MPU is optional for the Cortex-M3 ETM – Implemented with or without ETM – Note the ETM for Cortex-M3 only supports instruction tracing
  • 20. Configuration - II JTAG-DP/SW-DP – Can be implemented with standard five pin JTAG, SW-DP or both The Cortex-M3 supports two levels of clock-gating – Use of RTL clock-gating is optional and requires a tool such as Synopsys Power Compiler to infer clock gates from the RTL – Architectural clock-gating is implemented at the Cortex-M3Integration and CortexM3 20 AAME TechCon 2013 TC006v02 20 – Architectural clock-gating is implemented at the Cortex-M3Integration and CortexM3 level of hierarchy and instantiates an integrated clock-gating cell from the technology library ROM table – The ROM table is a register file 4KB in size and identifies the system components available for debug – If the debug components are modified, the ROM table must also be modified to reflect this
  • 21. Agenda ARM Cortex®-M0 processor ARM Cortex-M0+ processor 21 AAME TechCon 2013 TC006v02 21 ARM Cortex-M3 processor ARM Cortex-M4 processor
  • 22. Cortex-M4 Processor Identical to Cortex-M3 processor with some additions – Extensive DSP Instructions – Optional Single-Precision Floating Point Unit Cortex-M3 and Cortex-M4 processors derived from same database 22 AAME TechCon 2013 TC006v02 22 Cortex-M3 processor comes With example system Cortex-M4 processor comes with integration kit
  • 23. Cortex-M4 Floating Point Unit The Cortex-M4 processor includes a tightly integrated hardware floating point unit – Implements the FPv4-SP architecture – Separate register file with 16 double-precision registers (32 single-precision registers) – IEEE-754 compliant Hardware implements single-precision arithmetic – Double-precision handled through software Functions supported in hardware 23 AAME TechCon 2013 TC006v02 23 Functions supported in hardware – Multiply, add, subtract, multiply-accumulate – Comparison and format conversion – Divide and square root Other operations (e.g. vectoring) require support code The FPU is disabled at reset – Must be enabled and configured by initialization code – Must be done before the C library initialization – Sample code available in chapter 7 of the Cortex-M4 TRM
  • 24. Memory Protection Unit (MPU) Provides access control for various memory regions Zero Latency Memory Protection – 8 register-stored regions – Minimum region size 32 bytes (max 4GB) – No address translation or page tables 24 AAME TechCon 2013 TC006v02 24 Configured via memory-mapped control registers MPU is optional
  • 25. Implementation Options Number of Interrupts (1 - 240) Number of Priority bits (3 - 8) Optional Blocks – MPU – Memory Protection Unit – ETM – Embedded Trace Macrocell – DWT – Data Watchpoint and Trace – FPB – Flash Patch and Breakpoint Unit 25 AAME TechCon 2013 TC006v02 25 – FPB – Flash Patch and Breakpoint Unit – ITM – Instrumentation Trace Module Cut-down versions for reduced gatecount – DWT, FPB Debug can be modified for use in a full-CoreSight multi-processor system – SWJ-DP removed and TPIU replaced with full-CoreSight alternative Wake-up Interrupt Controller Optional FPU on Cortex-M4 processor