![Page 1: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/1.jpg)
ARM –
Architecture, Programming
and
Development Tools
Chapter 15
![Page 2: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/2.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education2
Lesson 07
ARM Cortex CPU and
Microcontrollers
![Page 3: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/3.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education3
Interface for NVIC
Microcontroller CORTEX M3 Core
DWT
Interfaces to
SRAM, Peripherals
and Code Memory
Memory Protection
Nested Vector Interrupt
Controller
32-bit RALU, single cycle MUL,
2-12 divide, ETM interface,
control logic,
Thumb decoder,
Thumb-2 decoder
Debug Port SerialWire/
JTAG
FPB
Bus Matrix
(Multiple 32-bit
buses)
http://www.arm.com/pdfs/Cortex_M3_DS.pdf.
Timer
Real Time System clock Interrupts
![Page 4: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/4.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education4
Interface for NVIC
Microcontroller CORTEX M3 Core
DWT
Interfaces to
SRAM, Peripherals
and Code Memory
Memory Protection
Nested Vector Interrupt
Controller
32-bit RALU, single cycle MUL, DSP, Floating Point
Unit, 2-12 divide, ETM interface,
control logic,
Thumb decoder,
Thumb-2 decoder
Debug Port SerialWire/
JTAG
FPB
Bus Matrix
(Multiple 32-bit
buses)
http://www.arm.com/products/processors/cortex-m/cortex-m4-processor
Timer
Real Time System clock Interrupts
WIC
![Page 5: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/5.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education5
Features• http://www.arm.com/pdfs/Cortex_M3_DS.
• Small core footprint [— number of gates used in the core for similar instruction set of the core]
• High code density—requires smaller memory for the code
• Small pin count.
• Low power consumption.
• Harvard memory architecture.
![Page 6: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/6.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education6
Features
• Excellent integration of the
peripherals/SRAM through memory
protection unit.
• Three-stage pipeline with branch prediction.
• Single cycle multiply.
• Two to twelve cycle signed/unsigned divide.
• Unaligned data storage programmability.
![Page 7: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/7.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education7
Features
• Atomic bit manipulation—instructions are
required for wireless networking and serial
transmissions of the bits. [Atomic means
interrupt only after completing the bit
manipulation.]
• Supports sleep modes
• 1.25 Dhrystone MIPS per MHz clock cycle
• Thumb®-2 instruction set architecture
![Page 8: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/8.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education8
Features• Debug port configurable by SerialWire or
JTAG
• DWT [data watch points (break points) and trace]
• FPB (flash path and break point unit)
• Six program breakpoints
• Two data-fetch break points.
• ETM (embedded trace macrocell) interface—for tracing the real-time instructions.
![Page 9: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/9.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education9
NVIC (nested vectored interrupt
controller)
1. Nesting (stacking) of interrupts for Exceptional system response mechanism for the interrupts
2. Interrupt of low priority can be preempted by exerting higher priority
3. Supports dynamic re-priority allocations
4. Interrupts that are being serviced are blocked from further activation until the interrupt service completes
![Page 10: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/10.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education10
Interrupt latency
• 12 cycles in contrasts to ARM 7, which has 24 to 42 cycles of interrupt latency
• Excellent deterministic interrupt behaviour
• NVIC integrates with the timer for the system ticks
• 24-bit count-down timer
• Generates interrupts at regular time intervals It thus gives system clock to run RTOS and timer for scheduling the tasks.
![Page 11: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/11.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education11
Timer
• 24-bit count-down timer
• Generates interrupts at regular time intervals
• System clock to run RTOS
• System clock for scheduling the tasks
![Page 12: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/12.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education12
Features
• Support Jazelle RCT (Runtime Compilation
Target)
• RCT the efficient just-in-time (JIT)
compilation and ahead-of-time (AOT)
compilation with Java and other execution
environments
![Page 13: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/13.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education13
Cortex M4
• Control and signal processing capabilities
• Combination of high-efficiency signal
processing functionality with the low-power,
low cost and ease-of-use
• Motor control, industrial automation,
automotive, power management, audio
![Page 14: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/14.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education14
Cortex M4 from Freescale
semiconductors
• Use of thin-film storage (TFS) flash
technology with configurable embedded
EEPROM
• 90nm flash based microcontrollers
• Enables the use of the exact amount of
Enhanced EEPROM
• Achieving millions cycles of write/erase
endurance
![Page 15: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/15.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education15
Additional Features in M4• http://www.arm.com/products/processors/cortex-
m/cortex-m4-processor
• DSP
• Floating Point Unit
• WIC
• Signal processing algorithm development easy
through an excellent ecosystem of software tools
and the Cortex Microcontroller Software
Interface Standard (CMSIS)
![Page 16: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/16.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education16
Cortex A15 processor
• For servers and smartphones (2010)
• Four cores like A9
• All cores in the processor coherent in that the
same single operating system can run across
all four
• Changes to the A15 bus allow coherency to be
extended outside the cluster of four cores to
multiple sets of four cores
![Page 17: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/17.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education17
Cortex A15 processor
• Addressing range has been extended to 1Tbyte
compared with 4Gbyte for the A9
• Virtualisation control completely separates the
activities of multiple operating systems
running on the same processor to, for example,
secure banking transactions.
![Page 18: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/18.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education18
Summary
![Page 19: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/19.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education19
We learnt
• Cortex M3 Excellent integration of the
peripherals/SRAM through memory protection
unit.
• Three-stage pipeline with branch prediction.
• Single cycle multiply
• Two to twelve cycle signed/unsigned divide.
• Unaligned data storage programmability
• Configurable Nested Vector Interrupt Controller
• Memory Protection Unit
• JTAG/SerialWire
![Page 20: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/20.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education20
We learnt
• Cortex M3 Two to twelve cycle
signed/unsigned divide.
• Unaligned data storage programmability
• Configurable Nested Vector Interrupt
Controller
• Memory Protection Unit
• JTAG/SerialWire
• Timer and Real Time System Clock
Interrupts
![Page 21: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/21.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education21
We learnt
• Cortex M4 DSP Signal Processing
Algorithms
• Floating Point Unit
• CMSIS
![Page 22: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/22.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education22
We learnt
• A15 Four Cores coherent in that the same
single operating system can run across all
four
• Changes to the A15 bus allow coherency to
be extended outside the cluster of four cores
to multiple sets of four cores
• Virtualisation control completely separates
the activities of multiple operating systems
![Page 23: Chapter 15 ARM – Architecture, Programming and … · 2011 Microcontrollers-... 2nd Ed. Raj Kamal Pearson Education 2 Lesson 07 ARM Cortex CPU and Microcontrollers](https://reader030.vdocument.in/reader030/viewer/2022021423/5aeba73d7f8b9a585f8dd9e1/html5/thumbnails/23.jpg)
2011 Microcontrollers-... 2nd Ed. Raj Kamal
Pearson Education23
End of Lesson 07 on
ARM Cortex CPU and
Microcontrollers