What are embedded systems? Challenges in embedded computing system design. Design methodologies.

Similar documents
ELEC 5260/6260/6266 Embedded Computing Systems

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

EMBEDDED SYSTEM BASICS AND APPLICATION

7a. System-on-chip design and prototyping platforms

Chapter 2 Logic Gates and Introduction to Computer Architecture

Processor Architectures

CISC, RISC, and DSP Microprocessors

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-12: ARM

NIOS II Based Embedded Web Server Development for Networking Applications

Architectures and Platforms

Introducción. Diseño de sistemas digitales.1

Design Cycle for Microprocessors

CHAPTER 4 MARIE: An Introduction to a Simple Computer

ARM Microprocessor and ARM-Based Microcontrollers

Chapter 2 Basic Structure of Computers. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2

What is a System on a Chip?

LSN 2 Computer Processors

Soft processors for microcontroller programming education

Computer Architecture Lecture 2: Instruction Set Principles (Appendix A) Chih Wei Liu 劉 志 尉 National Chiao Tung University

Introduction to Digital System Design

Networking Remote-Controlled Moving Image Monitoring System

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC Microprocessor & Microcontroller Year/Sem : II/IV

Central Processing Unit (CPU)

Chapter 2 Features of Embedded System

Microprocessor and Microcontroller Architecture

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview

Implementation of Web-Server Using Altera DE2-70 FPGA Development Kit

VON BRAUN LABS. Issue #1 WE PROVIDE COMPLETE SOLUTIONS ULTRA LOW POWER STATE MACHINE SOLUTIONS VON BRAUN LABS. State Machine Technology

VHDL DESIGN OF EDUCATIONAL, MODERN AND OPEN- ARCHITECTURE CPU

9/14/ :38

Chapter 02: Computer Organization. Lesson 04: Functional units and components in a computer organization Part 3 Bus Structures

All Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule

ELE 356 Computer Engineering II. Section 1 Foundations Class 6 Architecture

MICROPROCESSOR AND MICROCOMPUTER BASICS

İSTANBUL AYDIN UNIVERSITY

EE482: Advanced Computer Organization Lecture #11 Processor Architecture Stanford University Wednesday, 31 May ILP Execution

Open Architecture Design for GPS Applications Yves Théroux, BAE Systems Canada

A Survey on ARM Cortex A Processors. Wei Wang Tanima Dey

Pre-tested System-on-Chip Design. Accelerates PLD Development

what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored?

Let s put together a Manual Processor

Microprocessor or Microcontroller?

Embedded Systems on ARM Cortex-M3 (4weeks/45hrs)

Qsys and IP Core Integration

Introduction to the Altera Qsys System Integration Tool. 1 Introduction. For Quartus II 12.0

Logical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit.

Testing of Digital System-on- Chip (SoC)

Development of an Internet based Embedded System for Smart House Controlling and Monitoring

SYSTEM-ON-PROGRAMMABLE-CHIP DESIGN USING A UNIFIED DEVELOPMENT ENVIRONMENT. Nicholas Wieder

Computer Systems Design and Architecture by V. Heuring and H. Jordan

Computer Architecture TDTS10

Computer Architecture Lecture 3: ISA Tradeoffs. Prof. Onur Mutlu Carnegie Mellon University Spring 2013, 1/18/2013

In the Beginning The first ISA appears on the IBM System 360 In the good old days

8051 MICROCONTROLLER COURSE

Lecture 1. Introduction to Embedded Computer Systems

Hardware and Software

Aims and Objectives. E 3.05 Digital System Design. Course Syllabus. Course Syllabus (1) Programmable Logic

CHAPTER 7: The CPU and Memory

JTAG Applications. Product Life-Cycle Support. Software Debug. Integration & Test. Figure 1. Product Life Cycle Support

CHAPTER 6: Computer System Organisation 1. The Computer System's Primary Functions

Memory Basics. SRAM/DRAM Basics

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

Serial port interface for microcontroller embedded into integrated power meter

ARM Architecture. ARM history. Why ARM? ARM Ltd developed by Acorn computers. Computer Organization and Assembly Languages Yung-Yu Chuang

CPU Organization and Assembly Language

Palaparthi.Jagadeesh Chand. Associate Professor in ECE Department, Nimra Institute of Science & Technology, Vijayawada, A.P.

Chapter 1 Computer System Overview

Lecture N -1- PHYS Microcontrollers

Computer System: User s View. Computer System Components: High Level View. Input. Output. Computer. Computer System: Motherboard Level

AC : A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION

Design of a High Speed Communications Link Using Field Programmable Gate Arrays

Implementing a Digital Answering Machine with a High-Speed 8-Bit Microcontroller

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory

A Lab Course on Computer Architecture

An Introduction to the ARM 7 Architecture

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

SOC architecture and design

TYPES OF COMPUTERS AND THEIR PARTS MULTIPLE CHOICE QUESTIONS

Generations of the computer. processors.

The Central Processing Unit:

Extended Boundary Scan Test breaching the analog ban. Marcel Swinnen, teamleader test engineering

The 104 Duke_ACC Machine

Chapter 6. Inside the System Unit. What You Will Learn... Computers Are Your Future. What You Will Learn... Describing Hardware Performance

Mobile Processors: Future Trends

Week 1 out-of-class notes, discussions and sample problems

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

Chapter 13. PIC Family Microcontroller

Lesson 7: SYSTEM-ON. SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY. Chapter-1L07: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education

CPU Organisation and Operation

Computer Systems Structure Input/Output

Learning Outcomes. Simple CPU Operation and Buses. Composition of a CPU. A simple CPU design

Introduction to RISC Processor. ni logic Pvt. Ltd., Pune

Contents. Chapter 1. Introduction

Spacecraft Computer Systems. Colonel John E. Keesee

International Journal of Scientific & Engineering Research, Volume 4, Issue 6, June ISSN

Lab Experiment 1: The LPC 2148 Education Board

AUTOMATIC NIGHT LAMP WITH MORNING ALARM USING MICROPROCESSOR

Chapter 1 Lesson 3 Hardware Elements in the Embedded Systems Chapter-1L03: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education

Transcription:

Embedded Systems Sandip Kundu 1

ECE 354 Lecture 1 The Big Picture What are embedded systems? Challenges in embedded computing system design. Design methodologies. Sophisticated functionality. Real-time operation. Low manufacturing cost. Low power. Designed to tight deadlines by small teams. 2

Definition Embedded system: any device that includes a programmable computer but is not itself a general purpose computer. Take advantage of application characteristics to optimize the design: don t need all the general purpose bells and whistles. 3

Embedding a computer: a very simplified view output analog CPU input analog embedded computer mem 4

Examples Personal digital assistant (PDA). Printer. Cell phone. Automobile: engine, brakes, dash, etc. Television. Household appliances. 5

More examples Cell phones, Ipod and MP 3 players, Webcams, Navigation Systems Routers, Blade servers, Wireless PC cards Automobiles, Car Alarms, Keyless Entry Systems Building Security, card swiping systems Embedded Medical Devices Pacemakers 6

Characteristics of embedded systems Sophisticated functionality. Real time operation. Low manufacturing cost. Low power. Reliable and secure Designed to tight deadlines by small teams. 7

Functional complexity Often have to run sophisticated algorithms or multiple algorithms. Cell phone, laser printer. Often provide sophisticated user interfaces. 8

Real-time operation Must finish operations by deadlines. Hard real time: missing deadline causes failure. Soft real time: missing deadline results in degraded performance. Many systems are multi rate: must handle operations at widely varying rates. 9

Non-functional requirements 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. 10

Design teams Often designed by a small team of designers. Often must meet tight deadlines. 6 month market window is common. E.g., can t miss back to school window for calculator. 11

Microprocessors in Embedded Systems 12

Microprocessor alternatives for embedded systems Ordinary microprocessor: CPU plus on chip cache units. Microcontroller: includes I/O devices, on board memory. Digitalsignalprocessor (DSP): microprocessor optimized for digital signal processing. Hard core vs. soft core. Typical embedded word sizes: 8 bit, 16 bit, 32 bit. 13

Embedded microprocessors ARM, MIPS, Power PC, Freescale, 8051, X86 Various purposes Networks MIPS Mobile phone ARM dominated Industrial Freescale Coldfire Security 8051 based, Infineon High performance X86, Intel Epic, other VLIW and superscalars 14

Von Neumann CPU Architecture Memory holds data and instructions. Central processing unit (CPU) fetches instructions from memory. Separation between CPU and memory distinguishes programmable computer. CPU registers: program counter (PC) general purpose registers 15

CPU + memory memory address data 200 PC CPU 200 ADD r5,r1,r3 ADD IR r5,r1,r3 16

Harvard architecture address data memory program memory data address instructions CPU PC IR 17

RISC vs. CISC Complex instruction set computer (CISC): many addressing modes most operations can access memory variable length instructions Reduced instruction set computer (RISC): only load/store can access memory fixed length instructions Instruction set architectures characteristics: Fixed vs. variable ibl length. Addressing modes. Number of operands. Types of operands. 18

Multiple implementations of an ISA Instruction set architectures may have several implementations: varying clock speeds; different bus widths; different cache sizes; etc. 19

Pipelining Execute several instructions simultaneously but at different stages. Pipeline hazards Simple three stage pipe: memory fetch decode execute 20

Soft Core Processors Are soft, i.e. specified through field programming gjust like programmable logic Shipped as hardware description files, which can be mapped onto FPGA. e.g: eg:nios 2. Are bundled with software development tools (compiler, simulator, etc.) Offer flexibility as microprocessor parameters can be tuned to the application with tight on chip interconnection with additional circuitry. Designs can be marketed quickly. You can test and validate many designs quickly without making any specific board; no soldering and no wiring! ii 21

What is Nios 2? A 32 bit soft core processor from Altera Comes in three flavors: Fast, Standard, Light The three cores trade FPGAarea and powerconsumption for speed of execution. Is a RISC, Harvard Architecture: Simple instructions, separate data and instruction memories. Has 32 levels of interrupts. Uses the Avalon Bus interface Programs compiled using GNU C/C++ toolchain. 22

Nios 2 Architecture: 23

Three forms of Nios 2: Nios II/f The Nios II/f fast core is designed for fast performance. As a result, this core presents the most configuration options allowing you to fine tune the processor for performance. Nios II/s TheNiosII/s standard coreis designedforsmall small sizewhile maintaining performance. Nios II/e The Nios II/e economy core is designed to achieve the smallest possible core size. As a result, this core has a limited feature set, and many settings are not available when the Nios II/e core is selected. All three are available to you! 24

Selection in SOPC (System On a Programmable Chip): 25

Why use microprocessors? Alternatives: random logic on a 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. 26

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; sophisticated design large design teams; aggressive VLSI technology. 27

Power Custom logic is a clear winner for low power devices. Modern microprocessors offer features to help control power consumption. Software design techniques can help reduce power consumption. 28

Design Aspects In Embedded Systems 29

Challenges in embedded system design How much hardware do we need? How big is the CPU? Memory? How do we meet our deadlines? Faster hardware or cleverer software? How do we minimize power? Turn off unnecessary logic? Reduce memory accesses? 30

Design methodologies A procedure for designing ga system. Understanding your methodology helps you ensure you didn t skip anything. Compilers, software engineering tools, computer aided design (CAD) tools, etc., can be used to: help automate methodology steps; keep track of the methodology itself. Altera CAD tools: Quartus 2, SOPC, Nios 2 IDE (Integrated Development Environment). 31

Design goals Performance. Overall speed, deadlines. Functionality and user interface. Manufacturing cost. Power consumption. Other requirements (physical size, etc.) 32

Levels of abstraction requirements specification architecture component design system integration 33

Top-down vs. bottom-up Top down design: start from most abstract description; work to most detailed. Bottom up design: work from small components to big system. Real design uses both techniques. 34

Typical CAD design flow: 35

Designing hardware and software components Must spend time architecting the system before you start coding. Some components are ready made, some can be modified from existing designs, others must be designed from scratch. Example: SOPC for Hardware design and Nios 2 IDE for Software Design. 36

JTAG - TESTING JTAG Joint Test Action Group: IEEE 1149.1 standard entitled: Standard Test Access Port and Boundary Scan Architecture for test access ports used for testing printed circuit boards (and chips) using boundary scan. Currently used also for programming embedded devices. Most FPGAs and PLDs are programmed via a JTAG port. JTAG ports commonly available in ICs Boundary scan, scan chains, hi mbist, logic bist connected td Chips chained together with Jtag signals and connected to main JTAG interface on PCB 37

SOPC System On a Programmable Chip a hardware development tool. Used for integrating various hardware components together like: Microprocessors, such as the Nios II processor Timers Serial communication interfaces: UART, SPI General purpose I/O Digital signal processing (DSP) functions Communications i peripherals Interfaces to off chip devices Memory controllers Buses and bridges Application specific standard products (ASSP) Application specific integrated circuits (ASIC) Processors Generates files in Verilog or VHDL which can be added to the Quartus 2 project. 38

Example SOPC system: 39

SOPC system having NIOS: 40

41

Summary Embedded computers are all around us. Many systems have complex embedded hardware and software. Embedded systems pose many design challenges: design time, deadlines, power, etc. Design methodologies help us manage the design process. CAD tools like SOPC can reduce design time. 42

What s Next in Lecture 2? We will peek inside CPU, addressing, assembly languages g etc. You will learn about I/Os and Caches. You will learn about some cool features of SOPC and Nios 2 IDE! 43