unit vi (1)

15
ARM Embedded Systems PRESENTED BY B.S .NAGESWARARAO DEPT OF ECE ESWAR COLLEGE OF ENGINEERING NARASARAOPET

Upload: siva-nageswararao

Post on 18-Feb-2017

6 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Unit vi (1)

ARM Embedded Systems

PRESENTED BY B.S .NAGESWARARAODEPT OF ECEESWAR COLLEGE OF ENGINEERING NARASARAOPET

Page 2: Unit vi (1)

Outline: What is ARM Processor The RISC design philosophy The ARM Design Philosophy Instruction Set for Embedded Systems Embedded System Hardware ARM Bus Technology AMBA Bus Protocol Memory Peripherals Embedded System Software Initialization (Boot) Code Memory mapping Operating System Applications

Page 3: Unit vi (1)

what is ARM Processor:

An ARM processor is one of a family of CPUs based on the RISC (reduced instruction set computer) architecture developed by Advanced RISC Machines(ARM). ARM makes 32-bit and 64-bit RISC multi-core processors

Page 4: Unit vi (1)

The RISC design philosophy

The RISC philosophy is implemented with four major design rules:1) instructions, 2) Pipelines, 3) Registers, 4) Load-store architecture

Page 5: Unit vi (1)

The ARM Design Philosophy

There are a number of physical features that have driven the ARM processor design, First, portable embedded systems require some form of battery power.

High code density is another major requirement since embedded systems have limited memory due to cost and/or physical size restrictions.

Another important requirement is to reduce the area of the die taken up by the embedded processor.

Page 6: Unit vi (1)

Instruction Set for Embedded Systems

The ARM instruction set differs from the pure RISC definition in several ways that make the ARM instruction set suitable for embedded applications:

*Variable cycle execution for certain instructions *Inline barrel shifter leading to more complex

instructions *Thumb 16-bit instruction set *Conditional execution *Enhanced instructions

Page 7: Unit vi (1)

Embedded System Hardware

An example of an ARM-based embedded device, a microcontroller.

Page 8: Unit vi (1)

ARM Bus Technology

Embedded systems use different bus technologies than those designed for x86 PCs.

The most common PC bus technology, the Peripheral Component Interconnect (PCI) bus, connects such devices as video cards and hard disk controllers to the x86 processor bus.

A bus has two architecture levels.

Physical levelProtocol- the logical

Page 9: Unit vi (1)

AMBA Bus Protocol:

The Advanced Microcontroller Bus Architecture (AMBA) was introduced in 1996.

ARM System Bus (ASB)ARM Peripheral Bus(APB)ARM High Performance Bus (AHB)

ARM has introduced two variations on the AHB bus: Multi-layer AHB and AHB-Lite.

Page 10: Unit vi (1)

Memory: An embedded system has to have some form of memory to store and execute code.

Width: The memory width is the number of bits the memory returns on each access typically8, 16, 32, or 64 bits. The memory width has a direct effect on the overall performance and cost ratio.

Fetching instructions from memory.

Types: ROM DRAM SRAM SDRAM

Instruction size

8-bit memory 16-bit memory 32-bit memory

ARM 32-bit 4 cycles 2 cycles 1 cycle

Thumb 16- bit 2 cycles 1 cycle 1 cycle

Page 11: Unit vi (1)

Peripherals

Embedded systems that interact with the outside world need some form of peripheral device

A peripheral device performs input and output functions for the chip by connecting to other devices or sensors that are off-chip.

Two important types of controllers are memory controllers and interrupt controllers.

Memory Controllers Interrupt Controllers

Page 12: Unit vi (1)

Embedded System Software

An embedded system needs four typical software components required to control an embedded device.

Each software component in the stack uses a higher level of abstraction to separate the code from the hardware device.

Hardware deviceInitialization

Device drivers

Operating system

Application

Software abstraction layers executing on hardware.

Page 13: Unit vi (1)

Memory mapping

Page 14: Unit vi (1)

Operating System

ARM processors support over 50 operating systems. We can divide operating systems into two main categories: real-time operating systems (RTOSs) and platform operating systems.

RTOSs provide guaranteed response times to events. Different operating systems have different amounts of control over the system response time.

Platform operating systems require a memory management unit to manage large, non real- time applications and tend to have secondary storage.

Page 15: Unit vi (1)

Applications

ARM processors are found in numerous market segments, including networking, automotive, mobile and consumer devices, mass storage, and imaging. Within each segment ARM processors can be found in multiple applications.

For example, the ARM processor is found in networking applications like home gateways, DSL modems for high-speed Internet communication, and 802.11 wireless communication. The mobile device segment is the largest application area for ARM processors because of mobile phones.