ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to...

22
ARM Processors By Harish V. Mekali Assistant Professor, Dept. of ECE BMSCE, Bangalore - 19 Lecture on Introduction to Embedded Systems

Transcript of ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to...

Page 1: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

ARM Processors

By

Harish V. Mekali

Assistant Professor, Dept. of ECE

BMSCE, Bangalore - 19

Lecture on Introduction to Embedded Systems

Page 2: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Abstraction

SOFTWARE HARDWARE

Embedded Systems

05-01-2017 2

PROTOCOL

Abstraction

ARM Processors - Introduction to Embedded System

Page 3: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

System architecture

05-01-2017 ARM Processors - Introduction to

Embedded System 3

Page 4: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

CPU architecture

05-01-2017 ARM Processors - Introduction to

Embedded System 4

Page 5: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

CPU architecture

05-01-2017 ARM Processors - Introduction to Embedded System 5

Page 6: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Memory architecture

05-01-2017 ARM Processors - Introduction to

Embedded System 6

Page 7: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Why ARM ?

05-01-2017 ARM Processors - Introduction to

Embedded System 7

Page 8: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

ARM Design Philosophy

05-01-2017 ARM Processors - Introduction to

Embedded System 8

• Low power

• Small size

• High code density

• Low cost

• Easy debug

Page 9: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

The ARM Processor Family

05-01-2017 ARM Processors - Introduction to

Embedded System 9

Page 10: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

The ARM Processor Family

05-01-2017 ARM Processors - Introduction to

Embedded System 10

Page 11: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Binary Upwards Compatibility

05-01-2017 ARM Processors - Introduction to

Embedded System 11

Page 12: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Inside ARM based System

05-01-2017 ARM Processors - Introduction to

Embedded System 12

Page 13: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Inside ARM based System

05-01-2017 ARM Processors - Introduction to

Embedded System 13

Page 14: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

AMBA

05-01-2017 ARM Processors - Introduction to

Embedded System 14

• AMBA ( Advanced Microcontroller Bus Architecture ) It is an open-standard, on-chip interconnect specification for the connection and management of functional blocks in system-on-a-chip (SoC) designs.

• ASB (Advanced System Bus) : Simple bi-directional bus • APB (Advanced Peripheral Bus) : Low speed peripheral bus • AHB (Advanced High speed Bus): Centralized multilayer bus

• AHB multi : Multi master – multi slave • AHB lite : Single master – multi slave

• Mostly ARM core is Bus master and Peripherals are slaves

Page 15: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Peripherals

05-01-2017 ARM Processors - Introduction to

Embedded System 15

• All peripherals are Memory mapped

• Controllers are special types of peripherals that govern the interfacing policies

• Interrupt controller • Standard Interrupt control - No Priority • Vector Interrupt Control (VIC) - Priority based

• Memory controller • Memory preparation

• Ex : DRAM requires to be configured for refresh rates and timing before it is accessed

• Memory management • Memory protection

Page 16: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

05-01-2017 ARM Processors - Introduction to

Embedded System 16

Page 17: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Embedded Software

05-01-2017 ARM Processors - Introduction to

Embedded System 17

• Boot / initialization code

It runs on reset and does following basic tasks • Initial hardware configuration like

memory controllers and cache i.e., it prepares the hardware to satisfy the image to be booted

• Diagnostics : Fault detection and isolation

• Booting : Loading image and handing over the control to image by modifying the PC(Program Counter)

Page 18: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Embedded Software

05-01-2017 ARM Processors - Introduction to

Embedded System 18

• Operating System

Organizes system resources like peripherals, memory and processors time • Two main categories

• Real Time Operating Systems (RTOS) • Hard real time • Soft real time

• Platform Operating Systems Manages large non real time applications

• Applications Code dedicated to handle a particular task

Page 19: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Thank you

05-01-2017 ARM Processors - Introduction to

Embedded System 19

Page 20: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

Harish V. Mekali

[email protected]

+91-9538765141

www.harishvmekli.blogspot.com

05-01-2017 ARM Processors - Introduction to

Embedded System 20

Page 21: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

I acknowledge and appreciate ARM University Program(AUP)

and ARM Embedded Systems pvt. Ltd. for their continuous

support.

05-01-2017 ARM Processors - Introduction to

Embedded System 21

Page 22: ARM Processors - GitHub Pages...Embedded Software 05-01-2017 ARM Processors - Introduction to Embedded System 17 • Boot / initialization code It runs on reset and does following

05-01-2017 ARM Processors - Introduction to

Embedded System 22

References

Video lectures : 1. Mr. Chrish Shore, ARM Training Manager, UK The ARM University Program, ARM Architecture Fundamentals ( https://www.youtube.com/watch?v=7LqPJGnBPMM ) 2. Dr.Santanu Chaudhury,Dept. of Electrical Engineering, IIT Delhi Lecture - 5 ARM : ( https://www.youtube.com/watch?v=4VRtujwa_b8 ) Website : 3. http://infocenter.arm.com/help/index.jsp Textbooks: 1. ARM system developers guide, Andrew N Sloss, Dominic Symes and Chris

Wright, Elsevier, Morgan Kaufman publishers, 2008. 2. ARM System-on-Chip Architecture, Steve Furber, Second Edition,

Pearson, 2015