Presentation is loading. Please wait.

Presentation is loading. Please wait.

ECS642U: Embedded Systems Introduction William Marsh.

Similar presentations


Presentation on theme: "ECS642U: Embedded Systems Introduction William Marsh."— Presentation transcript:

1 ECS642U: Embedded Systems Introduction William Marsh

2 Outline What is an embedded system? –Applications –Hardware –Software Introducing the ARM Cortex-M0+ –Hardware capabilities –Programming Course aims, topics and organisation

3 Personal Introductions William Software developer –Minicomputer SCADA –Expert systems –Software analysis tools Safety consultancy –Rail / defence At QMUL since 2000 Research interests –Modelling system risk –Decision support systems Michael Embedded Systems are fun! –Lego+Simulink for Profit –RC cars Software development –Award-winning software verification tools –Amazon Web Services At QMUL since 2013 Research –Formal verification, testing –Concurrency

4 Embedded System Examples Anti-lock braking Engine Control (VW)

5 Videos Anti-lock braking http://www.youtube.com/watch?v=mKiTAcXK 6M4 http://www.youtube.com/watch?v=mKiTAcXK 6M4 Volkswagen engine control http://www.vox.com/2015/9/21/9365667/vol kswagen-clean-diesel-recall-passenger-carshttp://www.vox.com/2015/9/21/9365667/vol kswagen-clean-diesel-recall-passenger-cars

6 Article in NY Times “If you look at all the code in this car,” Dr. Patel said, “it’s easily as much as a smartphone if not more.” http://www.nytimes.com/2 015/09/27/business/compl ex-car-software-becomes- the-weak-spot-under-the- hood.html New high-end cars are among the most sophisticated machines on the planet, containing 100 million or more lines of code. Compare that with about 60 million lines of code in all of Facebook or 50 million in the Large Hadron Collider.

7 Jobs in Embedded Systems Medical Automotive Aerospace Industrial control and automation … http://www.indeed.co.uk/Embedded- Software-Engineer-jobs

8 Embedded System Concepts … and related

9 Characteristics of Embedded Systems Computer as part of another system –Automotive, aerospace, medical, domestic appliance, …, toys –Sensors and actuators – monitor and control Single purpose (‘dedicated’) –Cheap as possible – smallest processors are very cheap Real-time and reactive Quality concern –Complexity and cost of correction

10 I/O What do embedded computers do? –Actuators: open, close, start, stop –Sensors: temperature, vision, touch

11 CPU  Microcontroller (MCU) CPU –Instruction set –Buses – data and addresses –Memory MCU –Digital I/O –Analog I/O –Counter timers Typical MCU has no external data or address bus 8-bit MCU still widely used

12 Best Computer? Cheapest for application Cost –Component costs –Manufacturing costs Integration – how many external components? Number of pins Power Performance –I/O –Processing

13 Real-time & Reactive System Requirement for response at a particular –Time –Interval Reactive –Responses to inputs Performance –Bandwidth: how much data / sec –Latency: how quick to respond –Timing: how accurate the intervals Controller Equipment

14 Practical Work H/W Overview ARM Cortex-M0+ MKL25Z128VLK4 Microcontroller Freescale Freedom (FRDM-KL25Z) dev board

15 Target Board - FRDM-KL25Z 32-bit Cortex M0+ Processor Core Freescale Kinetis MKL25Z128VLK4 micro-controller –Extremely low power use –48 MHz max clock –On-chip 128 KB ROM, 16 KB RAM –Wide range of peripherals, including USB on-the-go FRDM-KL25Z board –£10 –Peripherals: 3-axis accelerometer, RGB LED, capacitive touch slider –Expansion ports are compatible with Arduino shield ecosystem –On board debug system

16 Board – MCU – CPU Freescale Freedom Development Board MKL25Z128VLK4 Microcontroller (MCU) ARM Cortex-M0+ CPU

17 ARM: History and Products Created in 1990 from Acorn Computers http://www.arm.com/about/company-profile/milestones.php Smart phone / tablet Embedded systems http://www.arm.com/products/processors/index.php

18 Inside an iPhone Embedded Processors Application Processors

19 Microcontroller vs. Microprocessor CPU core to execute instructions Peripherals for interfacing and control –Analog –Timing –Clock generators –Communications point to point network –Reliability and safety Memory internal –No memory bus of the chip

20 MCU – How Fast?

21 Claims for L Series MCU Fast Cost Power

22

23 Freescale KL2 MCU

24 Freedom Development Board

25 Target Board: FRDM-KL25Z

26 MCU Components

27 Cortex-M0+ Processor Coe

28 Memory 128 KB flash –Non-volatile –Used for program 16 KB SRAM –Use for data variables –… and stack

29 Interfaces GPIO (General Purpose I/O) ADC (Analog to Digital Convertor) –Analog inputs DAC –Analog output Real-time clock Interval timers Pulse width modulator Interrupt controller

30 Multiplexed Pins Pins add to cost Each pin has multiple uses Pins must be configure d

31 MCU Pin Configuration Part of the MCU pin configuration table –Shows alternative uses –Do not confuse with Freedom Board headers

32 Connect MCU pins to external devices Freedom Board Headers

33 Development Software

34 Course Aims, Topics and Organisation

35 Aims Practice and theory How to use a micro-controller –Simple digital I/O  timers How to structure software –No Operating System Polling Interrupts State machines –Real-time OS How to debug, test and measure –Software and hardware

36 Course Topics Digital & analog I/O Interrupts State machines Real-time operating sys Concurrency & scheduling Timers Testing Energy usage Catch-up / skillsMain Topics C programming (Very) basic electronics Principles of OS Computer architecture Assembly code

37 Labs (20% of module) Assessed weekly labs 6 basic lab in weeks 1 – 6 –Attempt all 4 advanced labs, after week 7 –Attempt at least 2; count double Marking –Complete answer sheet –Lab viva then hand-in in the lab –Grade A-E Submission by 3 rd week –Week 1 lab by end of lab in week 3

38 2 Short Written Exercises (5%) Exam practice Not timed Submit on QMPlus

39 Books and Resources Books C programming resources Documentation from –ARM –Freescale

40 Communication QMPlus Forums 1.Announcements –Only I can post 2.Q&A –Anyone can post –USE THIS – no emails please

41 Summary Embedded systems –Inside a system –Reacting to events in real-time Course includes practical work


Download ppt "ECS642U: Embedded Systems Introduction William Marsh."

Similar presentations


Ads by Google