Embedded Systems (Cyber-Physical Systems): Introduction.

Slides:



Advertisements
Similar presentations
Hao wang and Jyh-Charn (Steve) Liu
Advertisements

EEE226 MICROPROCESSORBY DR. ZAINI ABDUL HALIM School of Electrical & Electronic Engineering USM.
© 2010 Kettering University, All rights reserved..
EELE 367 – Logic Design Module 2 – Modern Digital Design Flow Agenda 1.History of Digital Design Approach 2.HDLs 3.Design Abstraction 4.Modern Design Steps.
Week 1- Fall 2009 Dr. Kimberly E. Newman University of Colorado.
Extensible Processors. 2 ASIP Gain performance by:  Specialized hardware for the whole application (ASIC). −  Almost no flexibility. −High cost.  Use.
Introduction Special-purpose processors. Embedded systems. FPGAs.
Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments.
COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) Lecturer: Hui Wu Session.
Term Project Overview Yong Wang. Introduction Goal –familiarize with the design and implementation of a simple pipelined RISC processor What to do –Build.
Project Testing; Processor Examples. Project Testing --thorough, efficient, hierarchical --done by “independent tester” --well-documented, repeatable.
Configurable System-on-Chip: Xilinx EDK
Evolution of implementation technologies
Chapter 13 Embedded Systems
Performance Analysis of Processor Characterization Presentation Performed by : Winter 2005 Alexei Iolin Alexander Faingersh Instructor:
1-1 Embedded Software Development Tools and Processes Hardware & Software Hardware – Host development system Software – Compilers, simulators etc. Target.
1 Chapter 14 Embedded Processing Cores. 2 Overview RISC: Reduced Instruction Set Computer RISC-based processor: PowerPC, ARM and MIPS The embedded processor.
16.317: Microprocessor System Design I Instructor: Dr. Michael Geiger Spring 2012 Lecture 29: Microcontroller intro.
1 Chapter 13 Embedded Systems Embedded Systems Characteristics of Embedded Operating Systems.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
Using FPGAs with Embedded Processors for Complete Hardware and Software Systems Jonah Weber May 2, 2006.
Computer Organization and Assembly language
1 ECE 354 Slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005 Embedded Systems.
COM181 Computer Hardware Ian McCrumRoom 5B18,
GallagherP188/MAPLD20041 Accelerating DSP Algorithms Using FPGAs Sean Gallagher DSP Specialist Xilinx Inc.
Programmable Logic- How do they do that? 1/16/2015 Warren Miller Class 5: Software Tools and More 1.
MCU – Microcontroller Unit – 1 MCU  1 cip or VLSI core – application-specific.
Xilinx at Work in Hot New Technologies ® Spartan-II 64- and 32-bit PCI Solutions Below ASSP Prices January
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
1 3-General Purpose Processors: Altera Nios II 2 Altera Nios II processor A 32-bit soft core processor from Altera Comes in three cores: Fast, Standard,
ECE Lecture 1 1 Introduction to Microcontrolllers Department of Electrical and Computer Engineering The Ohio State University ECE 2560.
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
집적회로 Spring 2007 Prof. Sang Sik AHN Signal Processing LAB.
Computer Organization and Architecture
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
EE3A1 Computer Hardware and Digital Design
Computer Organization & Assembly Language © by DR. M. Amer.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Computer Engineering 1502 Advanced Digital Design Professor Donald Chiarulli Computer Science Dept Sennott Square
Embedded System. What is an Embedded System? Computing systems embedded within electronic devices Hard to define – Nearly any computing system other than.
MICROOCESSORS AND MICROCONTROLLER:
M.Mohajjel. Why? TTM (Time-to-market) Prototyping Reconfigurable and Custom Computing 2Digital System Design.
What is a Microprocessor ? A microprocessor consists of an ALU to perform arithmetic and logic manipulations, registers, and a control unit Its has some.
Survey of multicore architectures Marko Bertogna Scuola Superiore S.Anna, ReTiS Lab, Pisa, Italy.
Lecture 7: Overview Microprocessors / microcontrollers.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Teaching Digital Logic courses with Altera Technology
Survey of Reconfigurable Logic Technologies
FPGA Technology Overview Carl Lebsack * Some slides are from the “Programmable Logic” lecture slides by Dr. Morris Chang.
Lecture 01: Computer Architecture overview. Our Goals ● Have a better understanding of computer architecture – Write better (more efficient) programs.
Introduction to the FPGA and Labs
Computer Organization and Architecture Lecture 1 : Introduction
Programmable Logic Devices
Popular Microcontrollers and their Selection by Lachit Dutta
Programmable Hardware: Hardware or Software?
Computer Organization and Machine Language Programming CPTG 245
Hands On SoC FPGA Design
ECE354 Embedded Systems Introduction C Andras Moritz.
Introduction to Programmable Logic
Introduction to Microprocessors
Chapter 1: Introduction
ریز پردازنده. ریز پردازنده مراجع درس میکروکنترلرهای AVR برنامه نویسی اسمبلی و C محمدعلی مزیدی، سپهر نعیمی و سرمد نعیمی مرجع کامل میکروکنترلرهای AVR.
Introduction to Microprocessor Programming
EECE.3170 Microprocessor Systems Design I
(Lecture by Hasan Hassan)
Presentation transcript:

Embedded Systems (Cyber-Physical Systems): Introduction

Course goals: understand the major issues in embedded systems development and learn about some commonly available tools to quickly and efficiently produce embedded systems for specific applicataion Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments, labs Project / Team formation Student survey

Q: What is an “embedded” system? A: a special-purpose processor, with associated software, for a specific application or set of applications; has ONLY the hardware / software resources needed for the application.Architecture: (Peckol, ch 11): (virtual) machine model: common implementation: layers clearly separated upper layers may have access to some lower-level functions: “SAFER”: “MORE EFFICIENT”:

Some common embedded system implementations --specific processor architectures: Intel 8051, ARM, PIC, PowerPC, … --FPGA prototypes and implementations: Altera, Xilinx, … --ASICs

5 Processor Examples “Harvard architecture”: --PIC processor family “von Neumann architecture”: --simple processor --  P 3 processor --MIPS processor --NIOS II processor core (Altera “soft core” processor) Control ALU Memory Data + Instruc. I/O Control ALUInstruc.I/OData

6 PIC processor family: processor is fixed, developer programs it Reference: PIC: peripheral interface controller Originally (~1975) for offloading I/O functions from a CPU Harvard architecture: data and instructions (“code”) are stored separately—thus a data item and an instruction do not need to be the same length Newer versions have a stack One accumulator (referred to as W), but memory is usually referred to as a “register file” Some versions allow a type of indirect addressing Usually referred to as a RISC machine; may have up to 70 instructions May be able to access external memory (newer versions) Many development tools & languages available Data “Code” (Instructions)

Hardware basis in this course: Altera FPGAs (PLAs) LOCAL BUS GLOBAL BUS CARRY OUT IN OUT BUS CLOCK RESET MEM IN LOGIC (LOOK-UP TABLE or LUT) MEMORY (1-BIT) CARRY IN BUS MEM OUT FPGA (EXAMPLE) SINGLE FPGA CELL RAM BLOCK

DESIGNING AN FPGA-BASED CIRCUIT / PROCESSOR: USE HIGH-LEVEL ABSTRACTION, LIBRARIES, IP USE HARDWARE DESCRIPTION LANGUAGES (Verilog, VHDL) USE AUTOMATED TOOLS TO PRODUCE LAYOUT MAY FINE-TUNE DESIGN DETAILS DESIGN APPLICATION-SPECIFIC PROCESSOR / SOFTWARE or USE / MODIFY PROCESSOR ARCHITECTURE PROVIDED BY FPGA MANUFACTORER (ALTERA: NIOS II)

Final product: “embedded system” Reference:

Typical embedded system (implemented in FPGA): Special-purpose “computer” designed for device it controls user is provided with a processor with basic functionality processor can be programmed in software Additional features can be added using the FPGA resources to customize the design for a specific intended use Processor core may be “hard” (built-in as part of the chip) or “soft” (using some of available FPGA resources. Ex: Altera Nios II processor) Processor may have options—e.g., number of registers, floating point units Specialized CAD tools allow inclusion of additional functionality Hardware / software codesign now becomes a possibility

The basic codesign process: (diagram: course on codesign by Niemann, Univ. of Dortmund, Winter 2008) Strengths: Flexibility, Design Productivity; Weaknesses: Performance, Resource Usage Strengths: Performance, Resource Usage Weaknesses: Flexibility, Design Productivity; Codesign:

Typical embedded system properties: Processor: application–specific, not general-purpose Human interface: may be as simple as a flashing light or as complicated as real-time robotic vision. I/O: analog I/O is typical Diagnostic port: may be used for diagnosing the system that is being controlled -- not just for diagnosing the computer. Special-purpose hardware: [field programmable (FPGA), application specific (ASIC), or even non-digital] may be used to increase performance or safety. Operating system: typically must handle real-time processing (Note: “real-time” is NOT necessarily the same as “fast”) Software: often has fixed function; specific to application. Business considerations: often play a big role in design choices. Reference: Much of the following information is taken from this site

Examples (Koopman): * * Design change with cost above this magnitude can affect profitability, so typically needs management okay.

Design issues: System may need to be real-time / reactive (does not mean “fast” necessarily) Usually must be small and not weigh much Must be safe and reliable Must meet budget constraints (cost) May need to work in harsh environmental conditions (e.g., in an automobile) May need to deal with security issues

System requirements: Focus is on end-use capability, not on CPU performance, memory size, etc. System software must be safe and reliable Power usage should be low, depending on applications System typically controls a physical system— sensors / actuators

Embedded system lifecycle / requirements: Components—same component may work in several different systems—this can lower cost Safety certification—must often meet rigorous requirements (e.g., medical, aviation, automotive, military) Recertification—if system is modified Logistics / repair—accessibility is important Upgrades—need to be handled efficiently Component availability—may be long-term needs

“business model”: What are design / production costs? What is the life-cycle? Are there “product families”?

Design culture: Computer/ VLSI—simulate, simulate, simulate Mechanical/sensors—build, build, build Differing world views need to be reconciled

Skills an embedded systems designer needs (*this course; [not covered] ): *C programming / programming HDL: *Verilog / [VHDL] Hardware design: *Altera FPGAs / [Xilinx ….] Computer architecture * ? A/D & D/A conversion (I/O) Operating systems *Real-time programming, operating systems (*) Project skills: Writing/documentation; Engineering design; Teamwork; Managing [Business training] i.e., thorough knowledge of hardware and software design, implementation, and test + understanding of consumer/business issues

Lab 1: tonight, 825 Old Chem -- student survey --ideally each student will have a laptop running windows (or possibly linux) --tools can be downloaded from the Altera site: --boards: we would like to use the Altera DE-1 board, ideally each team will acquire one; to start we can do design and simulation --work on understanding how to implement simple circuits in Verilog and how to simulate them and get timing information (2- week assignment, due September 10)