SlideShare a Scribd company logo
©ARM 2017
Optimizing ARM Cortex-A and
Cortex-M based heterogeneous
multiprocessor systems for rich
embedded applications
Kinjal Dave
Embedded World, Nuremberg, 2017
Senior product manager, CPU Group
16th March 2017
©ARM 20172
Topics
Introduction
System design
Software
©ARM 20173
Topics
System design
Software
Introduction
§ Why heterogeneous processing?
§ Use cases
§ Terminology
©ARM 20164
Thanks for reading
For more information on ARM Cortex-A and Cortex-M processors visit arm.com
Sign-up for the latest news and information from ARM
©ARM 20175
Modern compute systems have diverse workloads
Power
Time
Sleep mode
Interactive mode
Ambient mode
©ARM 20176
Diversity of workloads across markets
©ARM 20177
Why heterogeneous computing?
“Right-sized processing”
Increase
system
performance
Increase
system
efficiency
Reduce
system
cost
©ARM 20178
ARM architecture for diverse computing needs
Cortex-A
Highest performance
Optimized for
rich operating systems
Cortex-R
Fast response
Optimized for
high performance,
hard real-time applications
Cortex-M
Smallest/ lowest power
Optimized for
discrete processing and
microcontrollers
©ARM 20179
Heterogeneous systems are extremely diverse
MCU
CPU GPU ISP Video
Display Audio DSP DDR
Interconnect
A heterogeneous system
using different compute elements
A heterogeneous subsystem
using ARM Cortex processors
©ARM 201710
Heterogeneous multicore processors
Multicore
HeterogeneousHomogeneous
Performance asymmetry Functional asymmetry
§ Same ISA
§ Same microarchitecture
§ Same view of memory
§ Same ISA
§ Different microarchitecture
§ Same view of memory
§ OS/ Software symmetry
§ Different ISA
§ Different microarchitecture
§ Different view of memory
§ OS/ Software asymmetry
Interconnect Interconnect
Cortex-A + Cortex-M systems
Interconnect
©ARM 201711
Use cases of HMP systems
Cortex-A Rich OS, high performance
Cortex-R Modem Real-time control
Cortex-M System control,
sensor fusion
Sensor fusion System control
Mobile ADASWearables
©ARM 201712
Use cases of HMP systems in embedded
Cortex-A Rich UI and OS, high performance
Cortex-M Real-time control
and monitoring
Deterministic
sensor control
Real-time
monitoring
MedicalConsumerIndustrial
©ARM 201713
System design
Topics
Introduction
Software
ARM activities
§ System design considerations
§ Security models
©ARM 201714
Architectural differences between Cortex families
Cortex-A Cortex-R Cortex-M
Lower power, smaller area
Higher performance
Rich OS/ RTOS RTOS only
32/64-bit ARM &Thumb ISA 32-bit ARM &Thumb ISA Thumb ISA
SW-managed interrupts HW-managed interrupt
AMBA AXI AMBA AHB/AXIAMBA AXI
Deterministic SW-managed
Operating system
Instruction set
Interrupts
Bus interface
©ARM 201715
System design considerations
§ How to address the memory map
differences?
§ How to distribute interrupts?
§ How to handle inter-processor
communication?
§ How to handle Secure/Non-secure
state communication?
Generic HMP compute subsystem
using Cortex processors
Interconnect
Shared L2
AHB interconnect
Local
memory
DMC
DDR
Cortex-A
subsystem
Cortex-R
subsystem
Cortex-M
subsystem
AHB interconnect
TimerSensor SRAM
©ARM 201716
Architectural support for ARM TrustZone
ARMv6-M,
ARMv7-M
ARMv8-AARMv7-A
ARMv8-M
Trusted software
Crypto TRNG
Non-trusted
(normal)
Trusted
(Secure)
Trusted hardware
Secure
system
Secure
storage
TrustZone
§ Isolate trusted resources from non-trusted
§ Isolate non-trusted software
§ Reduce attack surface of key components
©ARM 201717
TrustZone for ARMv8-A and ARMv8-M
TrustZone for ARMv8-A TrustZone for ARMv8-M
Secure statesNon-secure states Secure statesNon-secure states
Secure transitions handled by the processor
to maintain real-time latency
Secure
app/libs
OS support
API /
Secure OS
Non-secure
OS
Non-secure
app
Secure
app/libs
Secure OS
Rich OS,
e.g. Linux
Secure monitor
©ARM 201718
TrustZone security using Cortex-M processors
ARMv6-M and ARMv7-M processors
§ Always Secure or always Non-secure
§ Use case dependent
Designer needs to be careful
§ Power management – Secure access only
§ Debug system needs to match security
domain for each processor
Shared L2
Cortex-A
subsystem
AHB interconnect
Local
memory
System
Control
Processor
(SCP)
Power
control
Always Secure
(secure boot)
Interconnect
DMC
DDR AHB interconnect
Local
memory
Audio
subsystem
Audio
interface
Always
Non-secure
Cortex-M
subsystem
©ARM 201719
TrustZone for ARMv8-M: More flexibility for
designers
Non-secure Non-secure
Secure Secure
Cortex-A
processor
Cortex-M
processor
(ARMv8-M)
Shared secure world
(e.g. Cortex-M as a smart DMA engine)
Shared L2
Cortex-A
subsystem
AHB interconnect
Local
memory
Interconnect
DMC
DDR AHB interconnect
Local
memory
Audio
subsystem
Audio
interface
Cortex-M
subsystem
Secure/
Non-secure
Smart
DMA
engine
©ARM 201720
Software
Topics
Introduction
System design
§ Overview of software challenges
§ Making software development easier
©ARM 201721
Overview of software challenges
Developer
productivity
Usability,
portability,
debugging
Data
sharing
Is coherency
necessary?
Task
partitioning
How to optimally
partition tasks?
©ARM 201722
Standardization of software interfaces
§ CMSIS adopting OpenAMP
§ Cortex Microcontroller Software
Interface Standard (CMSIS)
§ Now open source on Github
§ OS support for HMP systems
§ Remote Processor Messaging (RPMsg) for
inter-processor communication
§ Management framework using
remoteproc
Cortex-A
processor
Memory
subsystem
Cortex-M
processor
SRAM
Rich OS/
RTOS
RTOSRPMsg
remoteproc
©ARM 201723
Debug Linux and RTOS apps from a single tool
Cortex-A Cortex-M
RTOS systemLinux kernel
Linux application
JTAG
TCP/IP
CoreSight
Microcontroller
application
Debug:
ü The Cortex-M application
ü The Cortex-A Linux kernel
ü The Cortex-A Linux application
DS-MDK debugger enables complete visibility to all software applications in
the heterogeneous system
©ARM 201724
§ Quickly discover hot spots
of your application
§ Simplifies efficient task
partitioning on your system
§ System-wide views as
bottlenecks are often
outside the CPU
Performance tuning for HMP systems
©ARM 201725
Summary
You can build heterogeneous multicore systems today using different Cortex
processors and other system IP
ARM architecture enhancements make future HMP systems better
System and software considerations required in the context of use cases
ARM is working on several activities to make HMP easier
The trademarks featured in this presentation are registered and/or unregistered trademarks of ARM Limited
(or its subsidiaries) in the EU and/or elsewhere. All rights reserved. All other marks featured may be
trademarks of their respective owners.
Copyright © 2017 ARM Limited
©ARM 2017

More Related Content

What's hot

Soc - Intro, Design Aspects, HLS, TLM
Soc - Intro, Design Aspects, HLS, TLMSoc - Intro, Design Aspects, HLS, TLM
Soc - Intro, Design Aspects, HLS, TLMSubhash Iyer
 
In‐Vehicle Networking: a Survey and Look Forward
In‐Vehicle Networking: a Survey and Look ForwardIn‐Vehicle Networking: a Survey and Look Forward
In‐Vehicle Networking: a Survey and Look ForwardRealTime-at-Work (RTaW)
 
V2X Communications: Getting our Cars Talking
V2X Communications: Getting our Cars TalkingV2X Communications: Getting our Cars Talking
V2X Communications: Getting our Cars TalkingAlison Chaiken
 
SRAM read and write and sense amplifier
SRAM read and write and sense amplifierSRAM read and write and sense amplifier
SRAM read and write and sense amplifierSoumyajit Langal
 
Accident avoidanve using controller area network protocol
Accident avoidanve using controller area network protocolAccident avoidanve using controller area network protocol
Accident avoidanve using controller area network protocolMadhuri Apar
 
Embedded System
Embedded SystemEmbedded System
Embedded SystemRamaBoya2
 
Deep Learning for Autonomous Driving
Deep Learning for Autonomous DrivingDeep Learning for Autonomous Driving
Deep Learning for Autonomous DrivingJan Wiegelmann
 
“The Future of AI is Here Today: Deep Dive into Qualcomm’s On-Device AI Offer...
“The Future of AI is Here Today: Deep Dive into Qualcomm’s On-Device AI Offer...“The Future of AI is Here Today: Deep Dive into Qualcomm’s On-Device AI Offer...
“The Future of AI is Here Today: Deep Dive into Qualcomm’s On-Device AI Offer...Edge AI and Vision Alliance
 
Automotive functional safety iso 26262 training bootcamp 2019
Automotive functional safety iso 26262 training bootcamp 2019Automotive functional safety iso 26262 training bootcamp 2019
Automotive functional safety iso 26262 training bootcamp 2019Tonex
 
Controller area network -ppt
Controller area network -pptController area network -ppt
Controller area network -pptvelichetiphani
 
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingEmbitel Technologies (I) PVT LTD
 
Soc architecture and design
Soc architecture and designSoc architecture and design
Soc architecture and designSatya Harish
 
Architecture Exploration of RISC-V Processor and Comparison with ARM Cortex-A53
Architecture Exploration of RISC-V Processor and Comparison with ARM Cortex-A53Architecture Exploration of RISC-V Processor and Comparison with ARM Cortex-A53
Architecture Exploration of RISC-V Processor and Comparison with ARM Cortex-A53KarthiSugumar
 

What's hot (20)

Soc - Intro, Design Aspects, HLS, TLM
Soc - Intro, Design Aspects, HLS, TLMSoc - Intro, Design Aspects, HLS, TLM
Soc - Intro, Design Aspects, HLS, TLM
 
In‐Vehicle Networking: a Survey and Look Forward
In‐Vehicle Networking: a Survey and Look ForwardIn‐Vehicle Networking: a Survey and Look Forward
In‐Vehicle Networking: a Survey and Look Forward
 
V2X Communications: Getting our Cars Talking
V2X Communications: Getting our Cars TalkingV2X Communications: Getting our Cars Talking
V2X Communications: Getting our Cars Talking
 
SRAM read and write and sense amplifier
SRAM read and write and sense amplifierSRAM read and write and sense amplifier
SRAM read and write and sense amplifier
 
What is IVI (In Vehicle Infotainment)?
What is IVI (In Vehicle Infotainment)?What is IVI (In Vehicle Infotainment)?
What is IVI (In Vehicle Infotainment)?
 
Accident avoidanve using controller area network protocol
Accident avoidanve using controller area network protocolAccident avoidanve using controller area network protocol
Accident avoidanve using controller area network protocol
 
What is AUTOSAR Communiation Stack
What is AUTOSAR Communiation StackWhat is AUTOSAR Communiation Stack
What is AUTOSAR Communiation Stack
 
Embedded System
Embedded SystemEmbedded System
Embedded System
 
Thesis Presentation
Thesis PresentationThesis Presentation
Thesis Presentation
 
eMMC 5.0 Total IP Solution
eMMC 5.0 Total IP SolutioneMMC 5.0 Total IP Solution
eMMC 5.0 Total IP Solution
 
Deep Learning for Autonomous Driving
Deep Learning for Autonomous DrivingDeep Learning for Autonomous Driving
Deep Learning for Autonomous Driving
 
“The Future of AI is Here Today: Deep Dive into Qualcomm’s On-Device AI Offer...
“The Future of AI is Here Today: Deep Dive into Qualcomm’s On-Device AI Offer...“The Future of AI is Here Today: Deep Dive into Qualcomm’s On-Device AI Offer...
“The Future of AI is Here Today: Deep Dive into Qualcomm’s On-Device AI Offer...
 
Automotive functional safety iso 26262 training bootcamp 2019
Automotive functional safety iso 26262 training bootcamp 2019Automotive functional safety iso 26262 training bootcamp 2019
Automotive functional safety iso 26262 training bootcamp 2019
 
Wcdma
WcdmaWcdma
Wcdma
 
Autosar Basics hand book_v1
Autosar Basics  hand book_v1Autosar Basics  hand book_v1
Autosar Basics hand book_v1
 
Controller area network -ppt
Controller area network -pptController area network -ppt
Controller area network -ppt
 
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
 
Soc architecture and design
Soc architecture and designSoc architecture and design
Soc architecture and design
 
Architecture Exploration of RISC-V Processor and Comparison with ARM Cortex-A53
Architecture Exploration of RISC-V Processor and Comparison with ARM Cortex-A53Architecture Exploration of RISC-V Processor and Comparison with ARM Cortex-A53
Architecture Exploration of RISC-V Processor and Comparison with ARM Cortex-A53
 
ARM CORTEX M3 PPT
ARM CORTEX M3 PPTARM CORTEX M3 PPT
ARM CORTEX M3 PPT
 

Viewers also liked

Efficient software development with heterogeneous devices
Efficient software development with heterogeneous devicesEfficient software development with heterogeneous devices
Efficient software development with heterogeneous devicesArm
 
Software development in ar mv8 m architecture - yiu
Software development in ar mv8 m architecture - yiuSoftware development in ar mv8 m architecture - yiu
Software development in ar mv8 m architecture - yiuArm
 
A practical approach to securing embedded and io t platforms
A practical approach to securing embedded and io t platformsA practical approach to securing embedded and io t platforms
A practical approach to securing embedded and io t platformsArm
 
So you think developing an SoC needs to be complex or expensive?
So you think developing an SoC needs to be complex or expensive?So you think developing an SoC needs to be complex or expensive?
So you think developing an SoC needs to be complex or expensive?Arm
 
SR-IOV: The Key Enabling Technology for Fully Virtualized HPC Clusters
SR-IOV: The Key Enabling Technology for Fully Virtualized HPC ClustersSR-IOV: The Key Enabling Technology for Fully Virtualized HPC Clusters
SR-IOV: The Key Enabling Technology for Fully Virtualized HPC ClustersGlenn K. Lockwood
 
The importance of strong entropy for iot
The importance of strong entropy for iotThe importance of strong entropy for iot
The importance of strong entropy for iotArm
 
SOC Architecture Workshop - Part 1
SOC Architecture Workshop - Part 1SOC Architecture Workshop - Part 1
SOC Architecture Workshop - Part 1Priyanka Aash
 
SOC Architecture - Building the NextGen SOC
SOC Architecture - Building the NextGen SOCSOC Architecture - Building the NextGen SOC
SOC Architecture - Building the NextGen SOCPriyanka Aash
 
Sustainably Connecting a Global Community
Sustainably Connecting a Global CommunitySustainably Connecting a Global Community
Sustainably Connecting a Global CommunityArm
 
The Proto-Burst Buffer: Experience with the flash-based file system on SDSC's...
The Proto-Burst Buffer: Experience with the flash-based file system on SDSC's...The Proto-Burst Buffer: Experience with the flash-based file system on SDSC's...
The Proto-Burst Buffer: Experience with the flash-based file system on SDSC's...Glenn K. Lockwood
 
Q4.11: ARM Architecture
Q4.11: ARM ArchitectureQ4.11: ARM Architecture
Q4.11: ARM ArchitectureLinaro
 
Microsoft Project Olympus AI Accelerator Chassis (HGX-1)
Microsoft Project Olympus AI Accelerator Chassis (HGX-1)Microsoft Project Olympus AI Accelerator Chassis (HGX-1)
Microsoft Project Olympus AI Accelerator Chassis (HGX-1)inside-BigData.com
 
The HPE Machine and Gen-Z - BUD17-503
The HPE Machine and Gen-Z - BUD17-503The HPE Machine and Gen-Z - BUD17-503
The HPE Machine and Gen-Z - BUD17-503Linaro
 
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUGMicroservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUGMarcin Grzejszczak
 
Programming The Arm Microprocessor For Embedded Systems
Programming The Arm Microprocessor For Embedded SystemsProgramming The Arm Microprocessor For Embedded Systems
Programming The Arm Microprocessor For Embedded Systemsjoshparrish13
 
Building Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMBuilding Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMSherif Mousa
 

Viewers also liked (17)

Efficient software development with heterogeneous devices
Efficient software development with heterogeneous devicesEfficient software development with heterogeneous devices
Efficient software development with heterogeneous devices
 
Software development in ar mv8 m architecture - yiu
Software development in ar mv8 m architecture - yiuSoftware development in ar mv8 m architecture - yiu
Software development in ar mv8 m architecture - yiu
 
A practical approach to securing embedded and io t platforms
A practical approach to securing embedded and io t platformsA practical approach to securing embedded and io t platforms
A practical approach to securing embedded and io t platforms
 
So you think developing an SoC needs to be complex or expensive?
So you think developing an SoC needs to be complex or expensive?So you think developing an SoC needs to be complex or expensive?
So you think developing an SoC needs to be complex or expensive?
 
SR-IOV: The Key Enabling Technology for Fully Virtualized HPC Clusters
SR-IOV: The Key Enabling Technology for Fully Virtualized HPC ClustersSR-IOV: The Key Enabling Technology for Fully Virtualized HPC Clusters
SR-IOV: The Key Enabling Technology for Fully Virtualized HPC Clusters
 
The importance of strong entropy for iot
The importance of strong entropy for iotThe importance of strong entropy for iot
The importance of strong entropy for iot
 
SOC Architecture Workshop - Part 1
SOC Architecture Workshop - Part 1SOC Architecture Workshop - Part 1
SOC Architecture Workshop - Part 1
 
SOC Architecture - Building the NextGen SOC
SOC Architecture - Building the NextGen SOCSOC Architecture - Building the NextGen SOC
SOC Architecture - Building the NextGen SOC
 
Sustainably Connecting a Global Community
Sustainably Connecting a Global CommunitySustainably Connecting a Global Community
Sustainably Connecting a Global Community
 
The Proto-Burst Buffer: Experience with the flash-based file system on SDSC's...
The Proto-Burst Buffer: Experience with the flash-based file system on SDSC's...The Proto-Burst Buffer: Experience with the flash-based file system on SDSC's...
The Proto-Burst Buffer: Experience with the flash-based file system on SDSC's...
 
Q4.11: ARM Architecture
Q4.11: ARM ArchitectureQ4.11: ARM Architecture
Q4.11: ARM Architecture
 
ARM Processor
ARM ProcessorARM Processor
ARM Processor
 
Microsoft Project Olympus AI Accelerator Chassis (HGX-1)
Microsoft Project Olympus AI Accelerator Chassis (HGX-1)Microsoft Project Olympus AI Accelerator Chassis (HGX-1)
Microsoft Project Olympus AI Accelerator Chassis (HGX-1)
 
The HPE Machine and Gen-Z - BUD17-503
The HPE Machine and Gen-Z - BUD17-503The HPE Machine and Gen-Z - BUD17-503
The HPE Machine and Gen-Z - BUD17-503
 
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUGMicroservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
Microservices Tracing With Spring Cloud and Zipkin @Szczecin JUG
 
Programming The Arm Microprocessor For Embedded Systems
Programming The Arm Microprocessor For Embedded SystemsProgramming The Arm Microprocessor For Embedded Systems
Programming The Arm Microprocessor For Embedded Systems
 
Building Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARMBuilding Embedded Linux Full Tutorial for ARM
Building Embedded Linux Full Tutorial for ARM
 

Similar to Optimizing ARM cortex a and cortex-m based heterogeneous multiprocessor systems for rich embedded applications - k.dave

Arm - ceph on arm update
Arm - ceph on arm updateArm - ceph on arm update
Arm - ceph on arm updateinwin stack
 
Arm based controller - basic bootcamp
Arm based controller - basic bootcampArm based controller - basic bootcamp
Arm based controller - basic bootcampRoy Messinger
 
Ceph Day Seoul - Ceph on Arm Scaleable and Efficient
Ceph Day Seoul - Ceph on Arm Scaleable and Efficient Ceph Day Seoul - Ceph on Arm Scaleable and Efficient
Ceph Day Seoul - Ceph on Arm Scaleable and Efficient Ceph Community
 
Arm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
Arm DynamIQ: Intelligent Solutions Using Cluster Based MultiprocessingArm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
Arm DynamIQ: Intelligent Solutions Using Cluster Based MultiprocessingArm
 
Balance, Flexibility, and Partnership: An ARM Approach to Future HPC Node Arc...
Balance, Flexibility, and Partnership: An ARM Approach to Future HPC Node Arc...Balance, Flexibility, and Partnership: An ARM Approach to Future HPC Node Arc...
Balance, Flexibility, and Partnership: An ARM Approach to Future HPC Node Arc...Eric Van Hensbergen
 
Ceph Day Tokyo - Ceph on ARM: Scaleable and Efficient
Ceph Day Tokyo - Ceph on ARM: Scaleable and Efficient Ceph Day Tokyo - Ceph on ARM: Scaleable and Efficient
Ceph Day Tokyo - Ceph on ARM: Scaleable and Efficient Ceph Community
 
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
 
RISC and ARM contollers Design-Philosophy.pptx
RISC and ARM contollers Design-Philosophy.pptxRISC and ARM contollers Design-Philosophy.pptx
RISC and ARM contollers Design-Philosophy.pptxcontactamitsuryavans
 
2 colin walls - how to measure rtos performance
2    colin walls - how to measure rtos performance2    colin walls - how to measure rtos performance
2 colin walls - how to measure rtos performanceIevgenii Katsan
 
Open compute technology
Open compute technologyOpen compute technology
Open compute technologyAMD
 
Performance of State-of-the-Art Cryptography on ARM-based Microprocessors
Performance of State-of-the-Art Cryptography on ARM-based MicroprocessorsPerformance of State-of-the-Art Cryptography on ARM-based Microprocessors
Performance of State-of-the-Art Cryptography on ARM-based MicroprocessorsHannes Tschofenig
 
BUD17 Socionext SC2A11 ARM Server SoC
BUD17 Socionext SC2A11 ARM Server SoCBUD17 Socionext SC2A11 ARM Server SoC
BUD17 Socionext SC2A11 ARM Server SoCLinaro
 
Microcontroller(18CS44) module 1
Microcontroller(18CS44)  module 1Microcontroller(18CS44)  module 1
Microcontroller(18CS44) module 1Swetha A
 
Necessity of 32-Bit Controllers
Necessity of 32-Bit ControllersNecessity of 32-Bit Controllers
Necessity of 32-Bit Controllersmohanav
 
SOMNIUM DRT C++ tools for Microchip ARM microcontrollers
SOMNIUM DRT C++ tools for Microchip ARM microcontrollersSOMNIUM DRT C++ tools for Microchip ARM microcontrollers
SOMNIUM DRT C++ tools for Microchip ARM microcontrollersDaniel O'Hara
 

Similar to Optimizing ARM cortex a and cortex-m based heterogeneous multiprocessor systems for rich embedded applications - k.dave (20)

RDMA on ARM
RDMA on ARMRDMA on ARM
RDMA on ARM
 
Arm in HPC
Arm in HPCArm in HPC
Arm in HPC
 
Arm - ceph on arm update
Arm - ceph on arm updateArm - ceph on arm update
Arm - ceph on arm update
 
Arm based controller - basic bootcamp
Arm based controller - basic bootcampArm based controller - basic bootcamp
Arm based controller - basic bootcamp
 
Ceph Day Seoul - Ceph on Arm Scaleable and Efficient
Ceph Day Seoul - Ceph on Arm Scaleable and Efficient Ceph Day Seoul - Ceph on Arm Scaleable and Efficient
Ceph Day Seoul - Ceph on Arm Scaleable and Efficient
 
Arm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
Arm DynamIQ: Intelligent Solutions Using Cluster Based MultiprocessingArm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
Arm DynamIQ: Intelligent Solutions Using Cluster Based Multiprocessing
 
Balance, Flexibility, and Partnership: An ARM Approach to Future HPC Node Arc...
Balance, Flexibility, and Partnership: An ARM Approach to Future HPC Node Arc...Balance, Flexibility, and Partnership: An ARM Approach to Future HPC Node Arc...
Balance, Flexibility, and Partnership: An ARM Approach to Future HPC Node Arc...
 
Ceph Day Tokyo - Ceph on ARM: Scaleable and Efficient
Ceph Day Tokyo - Ceph on ARM: Scaleable and Efficient Ceph Day Tokyo - Ceph on ARM: Scaleable and Efficient
Ceph Day Tokyo - Ceph on ARM: Scaleable and Efficient
 
18CS44-MODULE1-PPT.pdf
18CS44-MODULE1-PPT.pdf18CS44-MODULE1-PPT.pdf
18CS44-MODULE1-PPT.pdf
 
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?
 
RISC and ARM contollers Design-Philosophy.pptx
RISC and ARM contollers Design-Philosophy.pptxRISC and ARM contollers Design-Philosophy.pptx
RISC and ARM contollers Design-Philosophy.pptx
 
ARM.pdf
ARM.pdfARM.pdf
ARM.pdf
 
Unit vi (1)
Unit vi (1)Unit vi (1)
Unit vi (1)
 
2 colin walls - how to measure rtos performance
2    colin walls - how to measure rtos performance2    colin walls - how to measure rtos performance
2 colin walls - how to measure rtos performance
 
Open compute technology
Open compute technologyOpen compute technology
Open compute technology
 
Performance of State-of-the-Art Cryptography on ARM-based Microprocessors
Performance of State-of-the-Art Cryptography on ARM-based MicroprocessorsPerformance of State-of-the-Art Cryptography on ARM-based Microprocessors
Performance of State-of-the-Art Cryptography on ARM-based Microprocessors
 
BUD17 Socionext SC2A11 ARM Server SoC
BUD17 Socionext SC2A11 ARM Server SoCBUD17 Socionext SC2A11 ARM Server SoC
BUD17 Socionext SC2A11 ARM Server SoC
 
Microcontroller(18CS44) module 1
Microcontroller(18CS44)  module 1Microcontroller(18CS44)  module 1
Microcontroller(18CS44) module 1
 
Necessity of 32-Bit Controllers
Necessity of 32-Bit ControllersNecessity of 32-Bit Controllers
Necessity of 32-Bit Controllers
 
SOMNIUM DRT C++ tools for Microchip ARM microcontrollers
SOMNIUM DRT C++ tools for Microchip ARM microcontrollersSOMNIUM DRT C++ tools for Microchip ARM microcontrollers
SOMNIUM DRT C++ tools for Microchip ARM microcontrollers
 

Recently uploaded

Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaCzechDreamin
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Product School
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxAbida Shariff
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1DianaGray10
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...Product School
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyJohn Staveley
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Product School
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Julian Hyde
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeCzechDreamin
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024Stephanie Beckett
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...CzechDreamin
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backElena Simperl
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutesconfluent
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfalexjohnson7307
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCzechDreamin
 

Recently uploaded (20)

Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdf
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 

Optimizing ARM cortex a and cortex-m based heterogeneous multiprocessor systems for rich embedded applications - k.dave

  • 1. ©ARM 2017 Optimizing ARM Cortex-A and Cortex-M based heterogeneous multiprocessor systems for rich embedded applications Kinjal Dave Embedded World, Nuremberg, 2017 Senior product manager, CPU Group 16th March 2017
  • 3. ©ARM 20173 Topics System design Software Introduction § Why heterogeneous processing? § Use cases § Terminology
  • 4. ©ARM 20164 Thanks for reading For more information on ARM Cortex-A and Cortex-M processors visit arm.com Sign-up for the latest news and information from ARM
  • 5. ©ARM 20175 Modern compute systems have diverse workloads Power Time Sleep mode Interactive mode Ambient mode
  • 6. ©ARM 20176 Diversity of workloads across markets
  • 7. ©ARM 20177 Why heterogeneous computing? “Right-sized processing” Increase system performance Increase system efficiency Reduce system cost
  • 8. ©ARM 20178 ARM architecture for diverse computing needs Cortex-A Highest performance Optimized for rich operating systems Cortex-R Fast response Optimized for high performance, hard real-time applications Cortex-M Smallest/ lowest power Optimized for discrete processing and microcontrollers
  • 9. ©ARM 20179 Heterogeneous systems are extremely diverse MCU CPU GPU ISP Video Display Audio DSP DDR Interconnect A heterogeneous system using different compute elements A heterogeneous subsystem using ARM Cortex processors
  • 10. ©ARM 201710 Heterogeneous multicore processors Multicore HeterogeneousHomogeneous Performance asymmetry Functional asymmetry § Same ISA § Same microarchitecture § Same view of memory § Same ISA § Different microarchitecture § Same view of memory § OS/ Software symmetry § Different ISA § Different microarchitecture § Different view of memory § OS/ Software asymmetry Interconnect Interconnect Cortex-A + Cortex-M systems Interconnect
  • 11. ©ARM 201711 Use cases of HMP systems Cortex-A Rich OS, high performance Cortex-R Modem Real-time control Cortex-M System control, sensor fusion Sensor fusion System control Mobile ADASWearables
  • 12. ©ARM 201712 Use cases of HMP systems in embedded Cortex-A Rich UI and OS, high performance Cortex-M Real-time control and monitoring Deterministic sensor control Real-time monitoring MedicalConsumerIndustrial
  • 13. ©ARM 201713 System design Topics Introduction Software ARM activities § System design considerations § Security models
  • 14. ©ARM 201714 Architectural differences between Cortex families Cortex-A Cortex-R Cortex-M Lower power, smaller area Higher performance Rich OS/ RTOS RTOS only 32/64-bit ARM &Thumb ISA 32-bit ARM &Thumb ISA Thumb ISA SW-managed interrupts HW-managed interrupt AMBA AXI AMBA AHB/AXIAMBA AXI Deterministic SW-managed Operating system Instruction set Interrupts Bus interface
  • 15. ©ARM 201715 System design considerations § How to address the memory map differences? § How to distribute interrupts? § How to handle inter-processor communication? § How to handle Secure/Non-secure state communication? Generic HMP compute subsystem using Cortex processors Interconnect Shared L2 AHB interconnect Local memory DMC DDR Cortex-A subsystem Cortex-R subsystem Cortex-M subsystem AHB interconnect TimerSensor SRAM
  • 16. ©ARM 201716 Architectural support for ARM TrustZone ARMv6-M, ARMv7-M ARMv8-AARMv7-A ARMv8-M Trusted software Crypto TRNG Non-trusted (normal) Trusted (Secure) Trusted hardware Secure system Secure storage TrustZone § Isolate trusted resources from non-trusted § Isolate non-trusted software § Reduce attack surface of key components
  • 17. ©ARM 201717 TrustZone for ARMv8-A and ARMv8-M TrustZone for ARMv8-A TrustZone for ARMv8-M Secure statesNon-secure states Secure statesNon-secure states Secure transitions handled by the processor to maintain real-time latency Secure app/libs OS support API / Secure OS Non-secure OS Non-secure app Secure app/libs Secure OS Rich OS, e.g. Linux Secure monitor
  • 18. ©ARM 201718 TrustZone security using Cortex-M processors ARMv6-M and ARMv7-M processors § Always Secure or always Non-secure § Use case dependent Designer needs to be careful § Power management – Secure access only § Debug system needs to match security domain for each processor Shared L2 Cortex-A subsystem AHB interconnect Local memory System Control Processor (SCP) Power control Always Secure (secure boot) Interconnect DMC DDR AHB interconnect Local memory Audio subsystem Audio interface Always Non-secure Cortex-M subsystem
  • 19. ©ARM 201719 TrustZone for ARMv8-M: More flexibility for designers Non-secure Non-secure Secure Secure Cortex-A processor Cortex-M processor (ARMv8-M) Shared secure world (e.g. Cortex-M as a smart DMA engine) Shared L2 Cortex-A subsystem AHB interconnect Local memory Interconnect DMC DDR AHB interconnect Local memory Audio subsystem Audio interface Cortex-M subsystem Secure/ Non-secure Smart DMA engine
  • 20. ©ARM 201720 Software Topics Introduction System design § Overview of software challenges § Making software development easier
  • 21. ©ARM 201721 Overview of software challenges Developer productivity Usability, portability, debugging Data sharing Is coherency necessary? Task partitioning How to optimally partition tasks?
  • 22. ©ARM 201722 Standardization of software interfaces § CMSIS adopting OpenAMP § Cortex Microcontroller Software Interface Standard (CMSIS) § Now open source on Github § OS support for HMP systems § Remote Processor Messaging (RPMsg) for inter-processor communication § Management framework using remoteproc Cortex-A processor Memory subsystem Cortex-M processor SRAM Rich OS/ RTOS RTOSRPMsg remoteproc
  • 23. ©ARM 201723 Debug Linux and RTOS apps from a single tool Cortex-A Cortex-M RTOS systemLinux kernel Linux application JTAG TCP/IP CoreSight Microcontroller application Debug: ü The Cortex-M application ü The Cortex-A Linux kernel ü The Cortex-A Linux application DS-MDK debugger enables complete visibility to all software applications in the heterogeneous system
  • 24. ©ARM 201724 § Quickly discover hot spots of your application § Simplifies efficient task partitioning on your system § System-wide views as bottlenecks are often outside the CPU Performance tuning for HMP systems
  • 25. ©ARM 201725 Summary You can build heterogeneous multicore systems today using different Cortex processors and other system IP ARM architecture enhancements make future HMP systems better System and software considerations required in the context of use cases ARM is working on several activities to make HMP easier
  • 26. The trademarks featured in this presentation are registered and/or unregistered trademarks of ARM Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved. All other marks featured may be trademarks of their respective owners. Copyright © 2017 ARM Limited ©ARM 2017