introduction to embedded system and internet of things...embedded system…cont for eg. a typical...

64
Introduction to embedded system and Internet of Things Unit I Mrs. K.M. Sanghavi

Upload: others

Post on 26-Jul-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Introduction to embedded system and

Internet of Things

Unit I

Mrs. K.M. Sanghavi

Page 2: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 3: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 4: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

1.1 Embedded System

It is an electronic system which includes a single chip microcomputer(Microcontrollers) like ARM, Cortex.

It is configured to perform certain dedicated application.

S/w is programmed into the on-chip ROM of the microcontroller, to solve limited range of problems.

The microcontroller is embedded inside the system.

Page 5: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Embedded System…cont

In real time

Accepts input

Performs computation

Generates Output

Executes

Page 6: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 7: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Embedded System…cont

For eg. A typical mobile contains average of 10 microcontrollers

Modern houses approx. 150 microcontrollers per day.

Embedded system generally covers every branch from day-to-day science and technology like communication, military, medical, consumer, machine control.

Eg. Cell phone, Digital camera , microwave, MP3 player, Automobile Anti braking system.

Page 8: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 9: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 10: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

1.2 Characteristics of Embedded System

Speed (bytes/sec) : should be high.

Power(watts) : Low power tolerance

Size and weight : Small size and low weight

Accuracy(0.9999) : Must be very accurate

Adaptability : High adaptability and accessibility

Reliability : Must be reliable for a longer period of time

Page 11: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Categories of Embedded System

Stand Alone

Real Time Networked Mobile

Page 12: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Stand Alone System

Works by itself : self-contained device

Does not require any host system like computer

Takes digital/ analog input , calibrates , converts and processes the data and outputs the resulting data to its attached o/p device

Eg : MP3 players, digital cameras, Video game consoles, Microwave oven

Page 13: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Real Time Systems

System which strictly follows time deadline for completion of task is real time system

Two types of Real Time Systems Exist

• Soft : Violation of time constraint just degrades quality of the system but the system continues to work

• Hard : Violation of time causes critical failure and loss of life or property damage.

Page 14: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Soft Real System Examples

Page 15: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Hard Real Time

Delayed alarm during gas leakage

Failure in RADAR functioning

Deadline in missile control

Page 16: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Networked System

Related to n/w interface to access resources

Connected n/w may be LAN , WAN and connection can be wired or wireless

Eg : Home security system

Page 17: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Mobile Systems

• MP3 players, Mobiles, Cellphones, PDAs, Digital cameras which have the limitation of memory

Page 18: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Processor & Its Architecture

Page 19: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM

Page 21: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Processor

ARM processors are extensively used in

consumer electronic devices such

as smartphones, tablets, multimedia players

and other mobile devices, such

as wearables.

Because of their reduced instruction set,

they require fewer transistors, which

enables a smaller die size for the

integrated circuitry (IC).

The ARM processor’s smaller size, reduced

complexity and lower power

consumption makes them suitable for

increasingly miniaturized devices.

Page 22: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM PROCESSOR FEATURES

Load/store architecture.

An orthogonal instruction set.

Mostly single-cycle execution.

Enhanced power-saving design.

64 and 32-bit execution states for

scalable high performance.

Hardware virtualization support.

Page 23: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Architecture

• ARM machines have a 32 bit Reduced Instruction Set Computer (RISC) Load Store Architecture.

• The direct manipulation of memory isn’t possible in this architecture and is done through the use of registers.

• The instruction set offers many conditional and other varieties of operations with the primary focus being on reducing the number of cycles per instruction featuring mostly single cycle operations.

Page 24: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Architecture….Contd[2]

The main Features of ARM7 is, • 32/16-bit RISC architecture. • 32-bit ARM instruction set for maximum performance and

flexibility. • 16-bit Thumb instruction set for increased code density. • Unified bus interface, 32-bit data bus carries both instructions and

data. • Three-stage pipeline : FETCH, DECODE and EXECUTE. • 32-bit ALU. • Very small die size and low power consumption. • Fully static operation. • Coprocessor interface. • Extensive debug facilities (Embedded ICE debug unit accessible via

JTAG interface unit) : that allows programs to be downloaded and fully debugged in-system.

Page 25: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Architecture

Page 26: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Architecture….Contd

• Control over both the Arithmetic Logic Unit (ALU) and shifter in most data-processing instructions to maximize the use of an ALU and a shifter.

• Auto-increment and auto-decrement addressing modes to optimize program loops.

• Load and Store Multiple instructions to maximize data throughput.

• Conditional execution of almost all instructions to maximize execution throughput

Page 27: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

• ARM has 31 general-purpose 32-bit registers, At any one time, 16 of these registers are visible

• These registers are used by all unprivileged code.(User mode Registers) i.e less access to memory and coprocessor

Page 28: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Privileged execution modes • Fast interrupt processing mode Used when processor

receives an interrupt signal from the designated fast interrupt source.

• Normal interrupt processing mode: When processor receives an interrupt signal from any other interrupt source.

• Software interrupt mode : When the processor encounters a software interrupt instruction.

• Undefined instruction mode :When the processor attempts to execute an instruction that is supported neither by the main integer core nor by one of the coprocessors.

• System mode is used for running privileged operating system tasks.

• Abort mode is : When memory fault exists

Page 29: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM SOC..>System On CHip

• Whole system on a small single chip.

• It is called as an IC that holds together memory, clock, GPIO pins, digital and analog pins and the processor at its core.

• A microcontroller, microprocessor or DSP core(s).

Some SoCs—called multiprocessor system on chip

(MPSoC)—include more than one processor core.

• Memory blocks including a selection of ROM, RAM,

EEPROM and flash memory.

Page 30: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 31: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM SOC..>System On CHip

• Timing sources including oscillators and phase-

locked loops.

• Peripherals including counter-timers, real-time

timers and power-on reset generators.

• External interfaces including industry standards

such as USB, FireWire, Ethernet, USART, SPI.

• Analog interfaces including ADCs and DACs.

• Voltage regulators and power management circuits

Page 32: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 33: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Register Set

Num of Registers : Total 37 registers. 20 (banked) not visible at all times. Min 17 visible in all modes. 16 general purpose, 1 status related. Banked Registers: Each mode has a set of extra registers called banked registers. Banked registers are swapped in whenever mode change happens. R13 - SP; holds stack head in the current processor mode. R14 - LR( points to the return address when calling subroutine) R15 - PC. Program counter. Contains the address of the next instruction to be fetched by the processor. In addition to the main registers there is also a status register: CPSR is the current program status register. This holds flags: results of arithmetic and logical operations.

Page 34: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 35: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

CPSR Of ARM

Page 36: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Instruction Set

Page 37: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Instruction Set

Page 38: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

ARM Instruction Set

Page 40: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Real Time Systems

Mrs. K.M. Sanghavi

Page 41: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 42: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers
Page 43: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

MultiTasking is done by a controller using a scheduler

Page 44: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Most Important Aspect of Real Time System

Page 45: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Types of Real Time Systems

Hard …Follows Absolute Deadline (i.e Task must Perform its Operation in a certain time) . These have time constraints.

Soft …Follows Relaxed Deadline (i.e Task should Perform its Operation in a certain time or so.). These do not follow time constraints strictly.

Hence Real Time Systems use the concept of Priority

Page 46: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Real Time Scheduling

Mrs. K.M. Sanghavi

Page 47: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Real Time Scheduling Times

• Arrival Term • Ready Time • Scheduling Time • Burst / Run Time • Waiting Time • Completion Time • Deadline Time • Tardiness : When Task misses the deadline

– Completion Time - Deadline

• Laxity : Task follows Deadline – Deadline – Completion Time

Page 48: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

RM DM

Page 49: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Rate Monotic • Rate Monotonic refers to assigning priorities as a monotonic

function of the rate (frequency of occurrence) of those processes.

• Rate Monotonic Scheduling (RMS) can be accomplished based upon rate monotonic principles.

• Priority and Time period are inversely proportional

• Higher the time period lower the priority.

• This is a preemptive static priority algorithm.

Page 50: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Frank Drews Real-Time Systems

Rate Monotonic Analysis: Assumptions

A1: Tasks are periodic (activated at a constant rate). Period = Interval between two consecutive activations of task

A2: All instances of a periodic task have the same computation time

A3: All instances of a periodic task have the same relative deadline, which is equal to the period

A4: All tasks are independent (i.e., no precedence constraints and no resource constraints)

Implicit assumptions:

A5: Tasks are preemptable

A6: No task can suspend itself

A7: All tasks are released as soon as they arrive

A8: All overhead in the kernel is assumed to be zero (or part of )

iP iT

iT

iC

iT

)( ii PD

iC

Page 51: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Rate Monotonic Algorithm

Algorithm to schedule

priority tasks

It is based on priorities

A Higher priority

process will preempt a

lower priority process

Process Burst Time Period

P1 2 10

P2 1 5

P3 5 30

P4 2 15

Page 52: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Utilization Bound (UB) Test

Processor Utilization for a task, i Ui = Ci

Ti

Utilization Bound for n tasks U(n) = n(2 - 1) 1 n

Results:

• If S Ui ≤ U(n) then the set of tasks is schedulable.

• If S Ui > 1 then the set of tasks is unschedulable.

• If U(n) < S Ui ≤ 1 then the test is inconclusive.

Page 53: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

RMA

• For that we need to use two formulas and check L.H.S (CPU Utilization) <= R.H.S (Utilization Bound Tasks) :

Page 54: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

RMA

• Will never miss a deadline if RMA is applied

Page 55: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

• Now Schedule the task Process Burst Time Period

P1 2 10

P2 1 5

P3 5 30

P4 2 15

Page 56: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Process Burst Time Period

P1 2 10

P2 1 5

P3 5 30

P4 2 15

Page 57: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Example

Process Burst Time Period

P1 2 10

P2 4 15

P3 10 35

Page 58: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Deadline Monotonic Algorithm

• Deadline Monotonic refers to

assigning higher priorities to the task

having less deadline

• This is a preemptive static priority

algorithm.

Page 59: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Deadline Monotonic Algorithm

Page 60: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Dynamic Algorithm…. Earliest DeadLine First

• Similar to Deadline Monotonic Algorithm but only priorities change dynamically.

• This is a preemptive dynamic priority algorithm.

• For this we have to perform a schedulability test, as follows :

𝐶𝑖𝑇𝑖

𝑛

𝑖=1

≤ 1

Page 61: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Dynamic Algorithm…. Earliest DeadLine First

Page 62: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Dynamic Algorithm…. Least Laxity First

• This is a preemptive dynamic priority algorithm.

• For this we have to calculate Laxity for Each task at each time unit as follows :

L(t) = Deadline – current time – Remaining Execution time of a Task

Page 63: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Dynamic Algorithm…. Least Laxity First

Page 64: Introduction to embedded system and Internet of Things...Embedded System…cont For eg. A typical mobile contains average of 10 microcontrollers Modern houses approx. 150 microcontrollers

Dynamic Algorithm…. Least Laxity First