CEC 320 and 322 Systems Class and Lab

Lecture 3 - Micros in Embedded Systems

September 9, 2019  Sam Siewert Course Goals and Outline

Textbook: as Components – Principles of Embedded Computing System Design, 4th Edition, Marilyn Wolf, October 2016, 978-0128053874 (Amazon)

View of Microprocessor as a Platform Through Chapter 4 for Embedded Systems Parts of Chapter 5

Mercury Website - cec320/ High Level

Supplemented Current Syllabus

 Sam Siewert 2 Computers as Components

Chapter 1 – Embedded Systems and - Basic ISA Concepts – Design Process – Formalisms for System Design (UML)

– Model Train Controller Example (see Book) – Textbook Overview

Chapter 2 – ISA More in Depth - VLIW, ARM, PIC Micro, DSP, (MIPS, PowerPC) – Micro-parallelism, Multi-core, Co-processing

Adapted From Computers as Components 3 Embedding a in an Application

output DAC Actuators

CPU input (ALU)

ADC mem Sensors embedded computer

Example by Brian Davis modified by Sam Siewert Examples

Cell phone. Printer. Automobile: engine, brakes, dash, etc. Airplane: engine, flight controls, nav/comm. Digital television. Household appliances.

9-Sep-19 Early history

Late 1940’s: MIT computer was designed for real-time operations. – Originally designed to control an aircraft simulator. Jack St. Clair Kilby (November 8, 1923 – – Still a Large Mainframe computer. June 20, 2005) was an American electrical engineer who took part (along with Robert Noyce) in the realization of the first while First microprocessor was 4004 in working at Texas Instruments (TI) in 1958. He was early 1970’s. awarded the Nobel Prize in Physics on December 10, 2000. HP-35 used several chips to implement a microprocessor in 1972. Fairchild spawns Intel - Robert Noyce, Gordon Moore, and Andy Grove - Intel founders (Fairchildren) who worked for Shockley, but left his lab Intel and Texas Instruments both to start Fairchild Semiconductor. worked on ASICs for in William Bradford Shockley Jr. (February 13, 1970’s (programmable) 1910 – August 12, 1989) was an American physicist – Software was mostly for Mainframes until and inventor. Shockley was the manager of a 1970 research group at Bell Labs that included John – The Introduction of the - Bardeen and Walter Brattain. The three scientists Expanded CE and SE! were jointly awarded the 1956 Nobel Prize in Physics for "their researches on semiconductors and their discovery of the transistor effect". 9-Sep-19 Early history, cont’d.

Automobiles used microprocessor-based engine controllers starting in 1970’s. – Control fuel/air mixture, engine timing, etc. – Multiple modes of operation: warm-up, cruise, hill climbing, etc. – Provides lower emissions, better fuel efficiency.

Process Control for manufacturing

Avionics, Medical, and many other applications over time …

9-Sep-19 Microprocessor varieties

Microcontroller: includes I/O devices, on-board memory. Digital signal processor (DSP): microprocessor optimized for digital signal processing. System On a Chip (SOC): entire System contained on a single integrated circuit

Typical embedded word sizes: 8-bit, 16-bit, 32-bit, 64-bit

Typical organizations fit Flynn’s Taxonomy: SISD, SIMD, MIMD, (MISD)

Single Instruction Multiple Instruction Single Data SISD (Traditional Single MISD (Voting schemes core processor) and active-active controllers) Multiple Data SIMD (e.g. SSE 4.2, MIMD (Multi-Core AMP GP-GPU, NEON, Vector & SMP) Processing)

9-Sep-19 SOC / Apple A6 or A7

A6 (pictured) – Dual 32-bit ARMv7 – 32nM – GPU PowerVR SGX6200MP2 A7 – Dual 64-bit ARMv8 – 28nM – Over 1 billion transistors – 102 mm2 die size – Cache 64K-I, 64K-D, 1M-L2 – GPU PowerVR SGX 544MP3 http://system-on-a- chip.findthebest.com/compare/29- 422/Apple-A6-APL0589-vs-Apple-A7- APL0698

Example by Brian Davis SOC / GoPro (A9)

Ambarella A9 – announced Jan_13 – successor to A7 ( GoPro Hero 3 Black) – 32nM Samsung HK-MG process – (3) ARM processor cores – heterogeneous – (2) DSP processor cores http://www.anandtech.com/show/6652/ambarell – Many on-chip peripherals a-announces-a9-camera-soc-successor-to-the- – Less than 1 Watt for encoding 1080p60, a7-in-gopro-hero-3-black under 2 watts 4KUHD

Example by Brian Davis SOC / FPGA

Altera SoC product – 28nM process – ARM Hard Processor (HPS)

Also (Many) Hard Peripheralshttp://www.altera.com/literature/br/br-soc-fpga.pdf – Remainder of silicon is FPGA Example by Brian Davis Application examples

Simple control: front panel of microwave oven, etc.

Canon EOS 3 has three microprocessors. – 32-bit RISC CPU runs autofocus and eye control systems.

Digital TV: programmable CPUs + hardwired logic for video/audio decode, menus, etc.

9-Sep-19 Automotive embedded systems

Today’s high-end automobile may have 100 microprocessors: – 4-bit checks seat belt; – run dashboard devices; – 16/32-bit microprocessor controls engine.

9-Sep-19 BMW 850i brake and stability control system

Anti-lock brake system (ABS): pumps brakes to reduce skidding. Automatic stability control (ASC+T): controls engine to improve stability. ABS and ASC+T communicate. – ABS was introduced first---needed to interface to existing ABS module.

9-Sep-19 BMW 850i, cont’d.

sensor sensor brake brake

hydraulic ABS pump brake brake sensor sensor

9-Sep-19 Real-time operation

Must finish operations by deadlines. – Hard real time: missing deadline causes failure (loss of property or life) – Soft real time: missing deadline results in degraded performance. Many systems are multi-rate: must handle operations at widely varying rates.

9-Sep-19 Non-functional requirements (Qualities)

Many embedded systems are mass-market items that must have low manufacturing costs. – Limited memory, microprocessor power, etc.

Power consumption is critical in battery-powered devices. – Excessive power consumption increases system cost even in wall-powered devices.

9-Sep-19 Why use microprocessors?

Alternatives: field-programmable gate arrays (FPGAs), custom logic, etc.

Microprocessors are often very efficient: can use same logic to perform many different functions.

Microprocessors simplify the design of families of products.

9-Sep-19 The performance paradox

Microprocessors use much more logic to implement a function than does custom logic.

But microprocessors are often at least as fast: – heavily pipelined; – large design teams; – aggressive VLSI technology.

9-Sep-19 Power

Custom logic uses less power, but CPUs have advantages: – Modern microprocessors offer features to help control power consumption. – Software design techniques can help reduce power consumption. Heterogeneous systems: some custom logic for well-defined functions, CPUs+software for everything else.

9-Sep-19 Platforms

Embedded : hardware architecture + associated software. Many platforms are multiprocessors. Examples: – Single-chip multiprocessors for cell phone baseband. – Automotive network + processors.

9-Sep-19 The physics of software

Computing is a physical act. – Software doesn’t do anything without hardware. Executing software consumes energy, requires time. To understand the dynamics of software (time, energy), we need to characterize the platform on which the software runs.

9-Sep-19 What does “performance” mean?

In general-purpose computing, performance often means average-case, may not be well-defined. In real-time systems, performance means meeting deadlines. – Missing the deadline by even a little is bad. – Finishing ahead of the deadline may not help.

9-Sep-19 Characterizing performance

We need to analyze the system at several levels of abstraction to understand performance: – CPU. – Platform. – Program. – Task or thread. – Multiprocessor.

9-Sep-19 Design Examples

Hardware - HDLs (Verilog, VHDL)

Software (Systems) - SA/SD and UML, Block Diagrams

Systems - SysML, SystemC, SystemVerilog, etc. – Beyond Scope of this Course – Useful for Hardware and Software Co-Design

 Sam Siewert 25