Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments.

Slides:



Advertisements
Similar presentations
Day - 3 EL-313: Samar Ansari. INTEGRATED CIRCUITS Integrated Circuit Design Methodology EL-313: Samar Ansari Programmable Logic Programmable Array Logic.
Advertisements

FPGA (Field Programmable Gate Array)
Embedded Systems (Cyber-Physical Systems): Introduction.
Sensor Network Platforms and Tools
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.
ENGIN112 L38: Programmable Logic December 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 38 Programmable Logic.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Performed by : Rivka Cohen and Sharon Solomon Instructor : Walter Isaschar המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון.
Define Embedded Systems Small (?) Application Specific Computer Systems.
Configurable System-on-Chip: Xilinx EDK
Evolution of implementation technologies
Chapter 13 Embedded Systems
February 4, 2002 John Wawrzynek
1 Chapter 14 Embedded Processing Cores. 2 Overview RISC: Reduced Instruction Set Computer RISC-based processor: PowerPC, ARM and MIPS The embedded processor.
ECE Lecture 1 1 ECE 3561 Advanced Digital Design Department of Electrical and Computer Engineering The Ohio State University.
1 Chapter 13 Embedded Systems Embedded Systems Characteristics of Embedded Operating Systems.
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
Using FPGAs with Embedded Processors for Complete Hardware and Software Systems Jonah Weber May 2, 2006.
COM181 Computer Hardware Ian McCrumRoom 5B18,
GallagherP188/MAPLD20041 Accelerating DSP Algorithms Using FPGAs Sean Gallagher DSP Specialist Xilinx Inc.
1 DSP Implementation on FPGA Ahmed Elhossini ENGG*6090 : Reconfigurable Computing Systems Winter 2006.
General FPGA Architecture Field Programmable Gate Array.
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)
Embedded System Design
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
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 465 Introduction to CPLDs and FPGAs Shantanu Dutt ECE Dept. University of Illinois at Chicago Acknowledgement: Extracted from lecture notes of Dr.
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
CPLD (Complex Programmable Logic Device)
집적회로 Spring 2007 Prof. Sang Sik AHN Signal Processing LAB.
J. Christiansen, CERN - EP/MIC
FPGA (Field Programmable Gate Array): CLBs, Slices, and LUTs Each configurable logic block (CLB) in Spartan-6 FPGAs consists of two slices, arranged side-by-side.
IEEE ICECS 2010 SysPy: Using Python for processor-centric SoC design Evangelos Logaras Elias S. Manolakos {evlog, Department of Informatics.
Galen SasakiEE 260 University of Hawaii1 Electronic Design Automation (EDA) EE 260 University of Hawaii.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
EE3A1 Computer Hardware and Digital Design
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
1 - CPRE 583 (Reconfigurable Computing): VHDL to FPGA: A Tool Flow Overview Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 5: 9/7/2011.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
FPGA-Based System Design: Chapter 1 Copyright  2004 Prentice Hall PTR Moore’s Law n Gordon Moore: co-founder of Intel. n Predicted that number of transistors.
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.
Center for Embedded Systems (CECS) Eli Bozorgzadeh Computer Science Department.
Survey of Reconfigurable Logic Technologies
FPGA Field Programmable Gate Arrays Shiraz University of shiraz spring 2012.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n FPGA fabric architecture concepts.
FPGA ( Field programmable gate array ) April 2008 Prepared by : Muhammad Ziyada Muhammad Al tabakh.
A Brief Introduction to FPGAs
FPGA Technology Overview Carl Lebsack * Some slides are from the “Programmable Logic” lecture slides by Dr. Morris Chang.
Introduction to the FPGA and Labs
Programmable Logic Devices
Programmable Hardware: Hardware or Software?
Hands On SoC FPGA Design
ECE354 Embedded Systems Introduction C Andras Moritz.
EEE2135 Digital Logic Design Chapter 1. Introduction
Introduction to Programmable Logic
Chapter 1: Introduction
ریز پردازنده. ریز پردازنده مراجع درس میکروکنترلرهای AVR برنامه نویسی اسمبلی و C محمدعلی مزیدی، سپهر نعیمی و سرمد نعیمی مرجع کامل میکروکنترلرهای AVR.
Getting Started with Programmable Logic
ECNG 1014: Digital Electronics Lecture 1: Course Overview
HIGH LEVEL SYNTHESIS.
Programmable Logic- How do they do that?
Presentation transcript:

Embedded Systems: Introduction

Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments Project / Team formation Student survey

Goal: quickly and efficiently produce special-purpose processors / software for specific applications Hardware basis in this course: 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 USE HARDWARE DESCRIPTION LANGUAGES USE AUTOMATED TOOLS TO PRODUCE LAYOUT MAY FINE-TUNE DESIGN DETAILS DESIGN APPLICATION-SPECIFIC PROCESSOR / SOFTWARE

Final product: “embedded system” Reference:

Embedded system implemented in FPGA: Special-purpose “computer” designed to be IN 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 addition 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;

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. Software: often has a fixed function, and is specific to the 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 FPGAs / FPGAs] Computer architecture * ? A/D & D/A conversion (I/O) Operating systems *Real-time programming, op sys (*) Project skills: Writing/documentation; Engineering design; Teamwork; Managing [Business training]