System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems)

Size: px
Start display at page:

Download "System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems)"

Transcription

1 System Design&Methodologies Fö 1&2-1 System Design&Methodologies Fö 1&2-2 Course Information System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems) TDTS30/TDDI08 Web page: ( Examination: written Petru Eles Institutionen för Datavetenskap (IDA) Linköpings Universitet phone: B building, 329:220 Lecture notes: available from the web page, latest 24 hours before the lecture. Recommended literature: Wayne Wolf: "Computers as Components. Principles of Embedded Computing System Design", Morgan Kaufmann Publishers, Peter Marwedel: "Embedded System Design", Springer, 2nd edition, System Design&Methodologies Fö 1&2-3 Course Information (cont d) Labs&Lessons&Report: System Design&Methodologies Fö 1&2-4 Daniel Karlsson Institutionen för Datavetenskap (IDA) danka@ida.liu.se phone: B building, 329:198 Soheil Samii Institutionen för Datavetenskap (IDA) sohsa@ida.liu.se phone: B building, 329:202 Embedded Systems and Their Design 1. What is an Embedded System 2. Characteristics of Embedded Applications 3. The Traditional Design Flow 4. An Example 5. A New Design Flow 6. The System Level 7. Course Topics

2 System Design&Methodologies Fö 1&2-5 System Design&Methodologies Fö 1&2-6 That s how we use microprocessors What is an Embedded System? There are several definitions around! Some highlight what it is (not) used for: An embedded system is any sort of device which includes a programmable component but itself is not intended to be a general purpose computer. Some focus on what it is built from: An embedded system is a collection of programmable parts surrounded by ASICs and other standard components, that interact continuously with an environment through sensors and actuators. System Design&Methodologies Fö 1&2-7 System Design&Methodologies Fö 1&2-8 A Look at Two Typical Implementation Architectures What is an Embedded System? (cont d) Telecommunication System on Chip Some of the main characteristics: Dedicated (not general purpose) RF A/D & D/A DSP core RAM RISC core RAM High-Speed DSP Blocks Control Logic Interface LAN Contains a programmable component Interacts (continuously) with the environment Programmable processor ASIC block (Application Specific Integrated Circuit) Standard block Memory Reconfigurable logic (FPGA) dedicated electronics

3 System Design&Methodologies Fö 1&2-9 System Design&Methodologies Fö 1&2-10 Distributed Embedded System (automotive application) Actuators Sensors Input/Output RAM CPU FLASH Network Interface Gateway The Software Component Software running on the programmable processors: Application tasks Real-Time Operating System I/O drivers, Network protocols, Middleware Gateway System Design&Methodologies Fö 1&2-11 System Design&Methodologies Fö 1&2-12 Characteristics of Embedded Applications Characteristics of Embedded Applications (cont d) What makes them special? Like with ordinary applications, functionality and user interfaces are often very complex. But, in addition to this: Time constraints Power constraints Cost constraints Safety Time to market Time constraints: Embedded systems have to perform in real-time: if data is not ready by a certain deadline, the system fails to perform correctly. - Hard deadline: failure to meet leads to major hazards. - Soft deadline: failure to meet can be tolerated but quality of service is reduced.

4 System Design&Methodologies Fö 1&2-13 System Design&Methodologies Fö 1&2-14 Characteristics of Embedded Applications (cont d) Power constraints: There are several reasons why low power/energy consumption is required: Cost aspects: High power consumption strong power supply expensive cooling system Battery life High energy consumption short battery life time Characteristics of Embedded Applications (cont d) Cost constraints: Embedded systems are very often mass products in highly competitive markets and have to be shipped at a low cost. What we are interested in: - Manufacturing cost - Design cost Factors: design time, type of components used (processor, memory, I/O devices), technology, testing time, power consumption, etc. Non-recurring engineering (NRE) costs (such as design cost, masks, prototypes) are becoming very high - It is very difficult to come out with low quantity products; - Hardware and software platforms are introduced which are used for several products in a family; System Design&Methodologies Fö 1&2-15 System Design&Methodologies Fö 1&2-16 Characteristics of Embedded Applications (cont d) Safety critical: Embedded systems are often used in life critical applications: avionics, automotive electronics, nuclear plants, medical applications, military applications, etc. Reliability and safety are major requirements. In order to guarantee safety during design: - Formal verification: mathematics-based methods to verify certain properties of the designed system. - Automatic synthesis: certain design steps are automatically performed by design tools. Characteristics of Embedded Applications (cont d) Short time to market: In highly competitive markets it is critical to catch the market window: a short delay with the product on the market can have catastrophic financial consequences (even if the quality of the product is excellent). Design time has to be reduced! - Good design methodologies. - Efficient design tools. - Reuse of previously designed and verified (hardware and software) blocks. - Good designers who understand both software and hardware!

5 System Design&Methodologies Fö 1&2-17 System Design&Methodologies Fö 1&2-18 Why is Design of Embedded Systems Difficult? An Example High Complexity Strong time and power constraints Low cost Short time to market Safety critical systems In order to achieve all these requirements, systems have to be highly optimized. Both hardware and software aspects have to be considered simultaneously! T 2 T 4 T 1 T 3 T 5 T 6 T 7 T 8 The system to be implemented is modelled as a task graph: a node represents a task (a unit of functionality activated as response to a certain input and which generates a certain output). an edge represents a precedence constraint and data dependency between two tasks. Period: 42 time units The task graph is activated every 42 time units one activation has to be terminated in time less than 42. Cost limit: 8 The total cost of the implemented system has to be less than 8. System Design&Methodologies Fö 1&2-19 System Design&Methodologies Fö 1&2-20 The Traditional Design Flow The Traditional Design Flow (cont d) It works like this (or even worse): 1. Start from some informal specification of functionality and a set of constraints (time and power constraints, cost limits, etc.) Informal Specification, Constraints 2. Generate a more formal specification of the functionality, based on some modeling concept (finite state machine, data-flow, etc.). This model is in Matlab, Statecharts, C, UML, VHDL. Such a model is our task graph (slide 18). Modeling System Model Functional 3. Simulate the model in order to check the functionality. If needed make adjustments. 4. Choose an architecture (µprocessor, buses, etc.) such that the cost limits are satisfied and, you hope, that time and power constraints will be fulfilled. 5. Build a prototype and implement the system. 6. Verify the system: neither time nor power constraints are satisfied!!! Now you are in great trouble: you have spent a lot of time and money and nothing works! Go back to 4 and choose another architecture and start a new implementation. Or negotiate with the customer on the constraints. Testing OK Fabrication Select Architecture Hardware and Software Implementation Prototype More work should be done here!

6 System Design&Methodologies Fö 1&2-21 System Design&Methodologies Fö 1&2-22 The Traditional Design Flow (cont d) Example What are the consequences: Delays in the design process - Increased design cost - Delays in time to market missed market window High cost of failed prototypes Bad design decisions taken under time pressure - Low quality, high cost products Let s come back to the example on slide 18. We have the system model (task graph) which has been validated by simulation. What next? We decide on a certain µprocessor µp1, with cost 4. For each task the worst case execution time (WCET) when executed on µp1 is estimated. System Design&Methodologies Fö 1&2-23 System Design&Methodologies Fö 1&2-24 A schedule: Task WCET T 1 4 T 2 6 T 3 4 T 4 7 T 5 8 T 6 12 T 7 7 T 8 10 task Estimator WCET µprocessor arch. model Time T 1 T 2 T 4 T 3 T 5 T 6 T 7 T 8 Using this architecture we got a solution with: Execution time: 58 > 42 Cost: 4 < 8 We have to try with another architecture!

7 System Design&Methodologies Fö 1&2-25 System Design&Methodologies Fö 1&2-26 We look after a µprocessor which is fast enough: µp2 For each task the WCET, when executed on µp2, is estimated. Task WCET Using this architecture we got a solution with: T 1 2 T 2 3 Execution time: 28 < 42 T 3 2 T 4 3 Cost: 15 > 8 T 5 4 T 6 6 T 7 3 We have to try with another architecture! T 8 5 Now we have to look to a multiprocessor solution. In order to meet cost constraints we try two cheap (and slow) µps: µp3: cost 3 µp4: cost 2 interconnection bus: cost 1 Task WCET µp3 µp4 For each task the WCET, when executed T on µp3 and µp4, is estimated. T T T µp3 µp4 T T Bus T T System Design&Methodologies Fö 1&2-27 System Design&Methodologies Fö 1&2-28 Now we have to map the tasks to processors. µp3: T 1, T 3, T 5, T 6, T 7, T 8. µp4: T 2, T 4. If communicating tasks are mapped to different processors, they have to communicate over the bus. Communication time has to be estimated; it depends on the amount of bits transferred between the tasks and on the speed of the bus. Estimated communication times: C 1-2 : 1 C 4-8 : 1 A schedule: Time µp3 T 1 T 3 T 5 T 6 T 7 T 8 µp4 T 2 T 4 bus C 1-2 C 4-8 We have exceeded the allowed execution time (42)!

8 System Design&Methodologies Fö 1&2-29 System Design&Methodologies Fö 1&2-30 Try a new mapping; move T 5 to µp4, in order to increase parallelism. Two new communications are introduced, with estimated times: C 3-5 : 2 C 5-7 : 1 A schedule: Time µp3 µp4 bus T 1 T 3 T 6 T 7 T 8 T 2 T 4 T 5 C 1-2 C 3-5 C 4-8 C 5-7 The execution time is still 62, as before! There exists a better schedule! Time µp3 T 1 T 3 T 6 T 7 T 8 µp4 T 2 T 5 T 4 bus C 1-2 C 3-5 C 5-7 C 4-8 Using this architecture we got a solution with: Execution time: 52 > 42 Cost: 6 < 8 System Design&Methodologies Fö 1&2-31 System Design&Methodologies Fö 1&2-32 Possible solutions: Change µprocessor µp3 with a faster one cost limits exceeded Implement some part of the functionality in hardware as an ASIC New architecture Cost of ASIC: 1 µp3 µp4 Mapping ASIC µp3: T 1, T 3, T 6, T 7. µp4: T 2, T 4, T 5. ASIC: T 8 with estimated WCET= 3 New communication, with estimated time: C 7-8 : 1 Bus A schedule: Time µp3 T 1 T 3 T 6 T 7 µp4 T 2 T 5 T 4 ASIC bus C 1-2 C 3-5 C 5-7 C 4-8 C 7-8 Using this architecture we got a solution with: Execution time: 41 < 42 Cost: 7 < 8 T 8

9 System Design&Methodologies Fö 1&2-34 The Design Flow Informal Specification, Constraints System Design&Methodologies Fö 1&2-33 Modeling What did we achieve? We have selected an architecture. We have mapped tasks to the processors and ASIC. We have elaborated a a schedule. Arch. Selection System architecture System model Mapping Functional Extremely important!!! Nothing has been built yet. All decisions are based on simulation and estimation. Now we can go and do the software and hardware implementation, with a high degree of confidence that we get a correct prototype. Estimation Scheduling Mapped and scheduled model OK Hardware and Software Implementation Testing OK Fabrication Prototype System Design&Methodologies Fö 1&2-35 System Design&Methodologies Fö 1&2-36 The Design Flow (cont d) The Design Flow (cont d) What is the essential difference compared to the flow on slide 20? It is the inner loop which is performed before the effective hardware/software implementation. This loop is performed several times as part of the design space exploration. Different architectures, mappings and schedules are explored, before the actual implementation and prototyping. We get highly optimised good quality solutions in short time. We have a good chance that the outer loop, including prototyping, is not repeated. Some additional remarks: Formal verification It is impossible to do an exhaustive verification by simulation! Especially for safety critical systems (but not only) formal verification is needed. is used not only for functional validation. It is used also after mapping and scheduling in order to test, for example, timing aspects. It is used also during the implementation steps; especially interesting: hardware/software cosimulation.

10 System Design&Methodologies Fö 1&2-38 The Design Flow (cont d) Informal Specification, Constraints System Design&Methodologies Fö 1&2-37 Hardware/software codesign The Design Flow (cont d) During the mapping step we also decide what is going to be executed on a programmable processor (software) and what is going into hardware (ASIC, FPGA). During the implementation phase, hardware and software components have to be developed in a coordinated way, keeping their consistency (hardware/software cosimulation is important here) Hardware/Software partitioning Hardware/Software codesign System Level Arch. Selection System architecture Estimation Softw. model Modeling System model Mapping Scheduling Functional Formal Verification Mapped and scheduled model OK Formal Verification Hardw. model Softw. Generation Hardw. Synthesis Lower Levels Softw. blocks Testing OK Fabrication Prototype Hardw. blocks System Design&Methodologies Fö 1&2-39 System Design&Methodologies Fö 1&2-40 The Lower Levels The Lower Levels (cont d) Software generation: - Encoding in an implementation language (C, C++, assembler). - Compiling (this can include particular optimizations for application specific processors, DSPs, etc.). - Generation of a real-time kernel or adapting to an existing operating system. - Testing and debugging (in the development environment). Hardware synthesis: - Encoding in a hardware description language (VHDL, Verilog) - Successive synthesis steps: high-level, register-transfer level, logic-level synthesis. - Testing and debugging (by simulation) Hardware/software integration: - The software is run together with the hardware model (cosimulation) Prototyping: - A prototype of the hardware is constructed and the software is executed on the target architecture.

11 System Design&Methodologies Fö 1&2-41 System Design&Methodologies Fö 1&2-42 The Lower Levels (cont d) There are available tools on the market which automatically perform many of the low level tasks: Code generators (software model C, hardware model VHDL) Compilers Test generators and debuggers and cosimulation tools Hardware synthesis tools - High level synthesis - RT-level synthesis - Logic synthesis - Layout and physical implementation The System Level This is a hot research area. Very few commercial tools are offered. Mostly experimental and academic tools available. Huge efforts and investments are currently made in order to develop tools and methodologies for system level design. Ad-hoc solutions are less and less acceptable. It is the system level we are interested in, in this course! System Design&Methodologies Fö 1&2-43 Course Topics at a Glance Introduction: Embedded Systems and Their Design (just finished!) Models of Computation and Specification Languages - Dataflow Models, Petri Nets, Discrete Event Models, Synchronous Finite State Machines & Synchronous Languages, Globally Asynchronous Locally Synchronous Systems, Timed Automata Architectures and Platforms for Embedded Systems Design - General Purpose vs. Application Specific Architectures, Component and Platform-based Design, Reconfigurable Systems, Functionality Mapping. Task Scheduling System-Level Power/Energy Optimization

Architectures and Platforms

Architectures and Platforms Hardware/Software Codesign Arch&Platf. - 1 Architectures and Platforms 1. Architecture Selection: The Basic Trade-Offs 2. General Purpose vs. Application-Specific Processors 3. Processor Specialisation

More information

ELEC 5260/6260/6266 Embedded Computing Systems

ELEC 5260/6260/6266 Embedded Computing Systems ELEC 5260/6260/6266 Embedded Computing Systems Spring 2016 Victor P. Nelson Text: Computers as Components, 3 rd Edition Prof. Marilyn Wolf (Georgia Tech) Course Topics Embedded system design & modeling

More information

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

7a. System-on-chip design and prototyping platforms 7a. System-on-chip design and prototyping platforms Labros Bisdounis, Ph.D. Department of Computer and Communication Engineering 1 What is System-on-Chip (SoC)? System-on-chip is an integrated circuit

More information

Embedded Systems. introduction. Jan Madsen

Embedded Systems. introduction. Jan Madsen Embedded Systems introduction Jan Madsen Informatics and Mathematical Modeling Technical University of Denmark Richard Petersens Plads, Building 321 DK2800 Lyngby, Denmark jan@imm.dtu.dk Wireless Sensor

More information

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001 Agenda Introduzione Il mercato Dal circuito integrato al System on a Chip (SoC) La progettazione di un SoC La tecnologia Una fabbrica di circuiti integrati 28 How to handle complexity G The engineering

More information

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview Wen-Yen Lin, Ph.D. Department of Electrical Engineering Chang Gung University Email: wylin@mail.cgu.edu.tw Feb. 2013 Course Overview

More information

Digital Systems Design! Lecture 1 - Introduction!!

Digital Systems Design! Lecture 1 - Introduction!! ECE 3401! Digital Systems Design! Lecture 1 - Introduction!! Course Basics Classes: Tu/Th 11-12:15, ITE 127 Instructor Mohammad Tehranipoor Office hours: T 1-2pm, or upon appointments @ ITE 441 Email:

More information

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

Aims and Objectives. E 3.05 Digital System Design. Course Syllabus. Course Syllabus (1) Programmable Logic Aims and Objectives E 3.05 Digital System Design Peter Cheung Department of Electrical & Electronic Engineering Imperial College London URL: www.ee.ic.ac.uk/pcheung/ E-mail: p.cheung@ic.ac.uk How to go

More information

High-Level Synthesis for FPGA Designs

High-Level Synthesis for FPGA Designs High-Level Synthesis for FPGA Designs BRINGING BRINGING YOU YOU THE THE NEXT NEXT LEVEL LEVEL IN IN EMBEDDED EMBEDDED DEVELOPMENT DEVELOPMENT Frank de Bont Trainer consultant Cereslaan 10b 5384 VT Heesch

More information

Introduction to System-on-Chip

Introduction to System-on-Chip Introduction to System-on-Chip COE838: Systems-on-Chip Design http://www.ee.ryerson.ca/~courses/coe838/ Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrical and Computer Engineering Ryerson University

More information

Embedded Systems Engineering Certificate Program

Embedded Systems Engineering Certificate Program Engineering Programs Embedded Systems Engineering Certificate Program Accelerate Your Career extension.uci.edu/embedded University of California, Irvine Extension s professional certificate and specialized

More information

9/14/2011 14.9.2011 8:38

9/14/2011 14.9.2011 8:38 Algorithms and Implementation Platforms for Wireless Communications TLT-9706/ TKT-9636 (Seminar Course) BASICS OF FIELD PROGRAMMABLE GATE ARRAYS Waqar Hussain firstname.lastname@tut.fi Department of Computer

More information

Introduction to Digital System Design

Introduction to Digital System Design Introduction to Digital System Design Chapter 1 1 Outline 1. Why Digital? 2. Device Technologies 3. System Representation 4. Abstraction 5. Development Tasks 6. Development Flow Chapter 1 2 1. Why Digital

More information

From Control Loops to Software

From Control Loops to Software CNRS-VERIMAG Grenoble, France October 2006 Executive Summary Embedded systems realization of control systems by computers Computers are the major medium for realizing controllers There is a gap between

More information

Product Development Flow Including Model- Based Design and System-Level Functional Verification

Product Development Flow Including Model- Based Design and System-Level Functional Verification Product Development Flow Including Model- Based Design and System-Level Functional Verification 2006 The MathWorks, Inc. Ascension Vizinho-Coutry, avizinho@mathworks.fr Agenda Introduction to Model-Based-Design

More information

FPGA Prototyping Primer

FPGA Prototyping Primer FPGA Prototyping Primer S2C Inc. 1735 Technology Drive, Suite 620 San Jose, CA 95110, USA Tel: +1 408 213 8818 Fax: +1 408 213 8821 www.s2cinc.com What is FPGA prototyping? FPGA prototyping is the methodology

More information

Model Checking based Software Verification

Model Checking based Software Verification Model Checking based Software Verification 18.5-2006 Keijo Heljanko Keijo.Heljanko@tkk.fi Department of Computer Science and Engineering Helsinki University of Technology http://www.tcs.tkk.fi/~kepa/ 1/24

More information

Embedded System Design: Embedded Systems Foundations of Cyber-Physical Systems

Embedded System Design: Embedded Systems Foundations of Cyber-Physical Systems 12 Embedded System Design: Embedded Systems Foundations of Cyber-Physical Systems Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Springer, 2010 2015 年 10 月 21 日 These slides

More information

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

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah (DSF) Soft Core Prozessor NIOS II Stand Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de jens_onno.krah@fh-koeln.de NIOS II 1 1 What is Nios II? Altera s Second Generation

More information

SoC Curricula at Tallinn Technical University

SoC Curricula at Tallinn Technical University SoC Curricula at Tallinn Technical University Margus Kruus, Kalle Tammemäe, Peeter Ellervee Tallinn Technical University Phone: +372-6202250, Fax: +372-6202246 kruus@cc.ttu.ee nalle@cc.ttu.ee lrv@cc.ttu.ee

More information

Chapter 2 Features of Embedded System

Chapter 2 Features of Embedded System Chapter 2 Features of Embedded System Abstract This chapter will introduce the basic elements of embedded systems (or dedicated systems). The integrated control systems represent one of the areas of modern

More information

Systems on Chip Design

Systems on Chip Design Systems on Chip Design College: Engineering Department: Electrical First: Course Definition, a Summary: 1 Course Code: EE 19 Units: 3 credit hrs 3 Level: 3 rd 4 Prerequisite: Basic knowledge of microprocessor/microcontroller

More information

Echtzeittesten mit MathWorks leicht gemacht Simulink Real-Time Tobias Kuschmider Applikationsingenieur

Echtzeittesten mit MathWorks leicht gemacht Simulink Real-Time Tobias Kuschmider Applikationsingenieur Echtzeittesten mit MathWorks leicht gemacht Simulink Real-Time Tobias Kuschmider Applikationsingenieur 2015 The MathWorks, Inc. 1 Model-Based Design Continuous Verification and Validation Requirements

More information

System-on. on-chip Design Flow. Prof. Jouni Tomberg Tampere University of Technology Institute of Digital and Computer Systems. jouni.tomberg@tut.

System-on. on-chip Design Flow. Prof. Jouni Tomberg Tampere University of Technology Institute of Digital and Computer Systems. jouni.tomberg@tut. System-on on-chip Design Flow Prof. Jouni Tomberg Tampere University of Technology Institute of Digital and Computer Systems jouni.tomberg@tut.fi 26.03.2003 Jouni Tomberg / TUT 1 SoC - How and with whom?

More information

Contents. System Development Models and Methods. Design Abstraction and Views. Synthesis. Control/Data-Flow Models. System Synthesis Models

Contents. System Development Models and Methods. Design Abstraction and Views. Synthesis. Control/Data-Flow Models. System Synthesis Models System Development Models and Methods Dipl.-Inf. Mirko Caspar Version: 10.02.L.r-1.0-100929 Contents HW/SW Codesign Process Design Abstraction and Views Synthesis Control/Data-Flow Models System Synthesis

More information

Architectural Level Power Consumption of Network on Chip. Presenter: YUAN Zheng

Architectural Level Power Consumption of Network on Chip. Presenter: YUAN Zheng Architectural Level Power Consumption of Network Presenter: YUAN Zheng Why Architectural Low Power Design? High-speed and large volume communication among different parts on a chip Problem: Power consumption

More information

Seeking Opportunities for Hardware Acceleration in Big Data Analytics

Seeking Opportunities for Hardware Acceleration in Big Data Analytics Seeking Opportunities for Hardware Acceleration in Big Data Analytics Paul Chow High-Performance Reconfigurable Computing Group Department of Electrical and Computer Engineering University of Toronto Who

More information

Software Engineering for Real- Time Systems.

Software Engineering for Real- Time Systems. Software Engineering for Real- Time Systems. Presented by Andrew Dyer-Smith and Jamie McClelland Overview What are Real-Time Systems. Requirements of Real-Time Systems Current Technology Construction 1

More information

on-chip and Embedded Software Perspectives and Needs

on-chip and Embedded Software Perspectives and Needs Systems-on on-chip and Embedded Software - Perspectives and Needs Miguel Santana Central R&D, STMicroelectronics STMicroelectronics Outline Current trends for SoCs Consequences and challenges Needs: Tackling

More information

Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and

Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and Simulink targeting ASIC/FGPA. Previously Worked as logic

More information

VHDL DESIGN OF EDUCATIONAL, MODERN AND OPEN- ARCHITECTURE CPU

VHDL DESIGN OF EDUCATIONAL, MODERN AND OPEN- ARCHITECTURE CPU VHDL DESIGN OF EDUCATIONAL, MODERN AND OPEN- ARCHITECTURE CPU Martin Straka Doctoral Degree Programme (1), FIT BUT E-mail: strakam@fit.vutbr.cz Supervised by: Zdeněk Kotásek E-mail: kotasek@fit.vutbr.cz

More information

EMBEDDED SYSTEM BASICS AND APPLICATION

EMBEDDED SYSTEM BASICS AND APPLICATION EMBEDDED SYSTEM BASICS AND APPLICATION TOPICS TO BE DISCUSSED System Embedded System Components Classifications Processors Other Hardware Software Applications 2 INTRODUCTION What is a system? A system

More information

Client/Server Computing Distributed Processing, Client/Server, and Clusters

Client/Server Computing Distributed Processing, Client/Server, and Clusters Client/Server Computing Distributed Processing, Client/Server, and Clusters Chapter 13 Client machines are generally single-user PCs or workstations that provide a highly userfriendly interface to the

More information

Chapter 1: Introduction. What is an Operating System?

Chapter 1: Introduction. What is an Operating System? Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Computing Environments

More information

How To Design An Image Processing System On A Chip

How To Design An Image Processing System On A Chip RAPID PROTOTYPING PLATFORM FOR RECONFIGURABLE IMAGE PROCESSING B.Kovář 1, J. Kloub 1, J. Schier 1, A. Heřmánek 1, P. Zemčík 2, A. Herout 2 (1) Institute of Information Theory and Automation Academy of

More information

BUILD VERSUS BUY. Understanding the Total Cost of Embedded Design. www.ni.com/buildvsbuy

BUILD VERSUS BUY. Understanding the Total Cost of Embedded Design. www.ni.com/buildvsbuy BUILD VERSUS BUY Understanding the Total Cost of Embedded Design Table of Contents I. Introduction II. The Build Approach: Custom Design a. Hardware Design b. Software Design c. Manufacturing d. System

More information

Software Development Under Stringent Hardware Constraints: Do Agile Methods Have a Chance?

Software Development Under Stringent Hardware Constraints: Do Agile Methods Have a Chance? Software Development Under Stringent Hardware Constraints: Do Agile Methods Have a Chance? Jussi Ronkainen, Pekka Abrahamsson VTT Technical Research Centre of Finland P.O. Box 1100 FIN-90570 Oulu, Finland

More information

1. Memory technology & Hierarchy

1. Memory technology & Hierarchy 1. Memory technology & Hierarchy RAM types Advances in Computer Architecture Andy D. Pimentel Memory wall Memory wall = divergence between CPU and RAM speed We can increase bandwidth by introducing concurrency

More information

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com Best Practises for LabVIEW FPGA Design Flow 1 Agenda Overall Application Design Flow Host, Real-Time and FPGA LabVIEW FPGA Architecture Development FPGA Design Flow Common FPGA Architectures Testing and

More information

MAJORS: Computer Engineering, Computer Science, Electrical Engineering

MAJORS: Computer Engineering, Computer Science, Electrical Engineering Qualcomm MAJORS: Computer Engineering, Computer Science, Electrical Engineering TITLE: Intern - Software Engineer - Summer 2012 JOB DESCRIPTION: G1889814 Job Title Intern - Software Engineer - Summer 2012

More information

1. Introduction to Embedded System Design

1. Introduction to Embedded System Design 1. Introduction to Embedded System Design Lothar Thiele ETH Zurich, Switzerland 1-1 Contents of Lectures (Lothar Thiele) 1. Introduction to Embedded System Design 2. Software for Embedded Systems 3. Real-Time

More information

NIOS II Based Embedded Web Server Development for Networking Applications

NIOS II Based Embedded Web Server Development for Networking Applications NIOS II Based Embedded Web Server Development for Networking Applications 1 Sheetal Bhoyar, 2 Dr. D. V. Padole 1 Research Scholar, G. H. Raisoni College of Engineering, Nagpur, India 2 Professor, G. H.

More information

Low-Level Verification of Embedded Software: Addressing the Challenge

Low-Level Verification of Embedded Software: Addressing the Challenge Low-Level Verification of Embedded Software: Addressing the Challenge Sanjit A. Seshia Assistant Professor EECS, UC Berkeley FMCAD 2010 Panel October 2010 Abstraction Layers in Computing Algorithms, Protocols,

More information

Programming Logic controllers

Programming Logic controllers Programming Logic controllers Programmable Logic Controller (PLC) is a microprocessor based system that uses programmable memory to store instructions and implement functions such as logic, sequencing,

More information

SuperIOr Controller. Digital Dynamics, Inc., 2014 All Rights Reserved. Patent Pending. Rev: 5-16-14 1

SuperIOr Controller. Digital Dynamics, Inc., 2014 All Rights Reserved. Patent Pending. Rev: 5-16-14 1 SuperIOr Controller The SuperIOr Controller is a game changer in the world of high speed embedded control. The system combines incredible speed of both control and communication with revolutionary configurable

More information

HARDWARE ACCELERATION IN FINANCIAL MARKETS. A step change in speed

HARDWARE ACCELERATION IN FINANCIAL MARKETS. A step change in speed HARDWARE ACCELERATION IN FINANCIAL MARKETS A step change in speed NAME OF REPORT SECTION 3 HARDWARE ACCELERATION IN FINANCIAL MARKETS A step change in speed Faster is more profitable in the front office

More information

Testing of Digital System-on- Chip (SoC)

Testing of Digital System-on- Chip (SoC) Testing of Digital System-on- Chip (SoC) 1 Outline of the Talk Introduction to system-on-chip (SoC) design Approaches to SoC design SoC test requirements and challenges Core test wrapper P1500 core test

More information

Software Development with Real- Time Workshop Embedded Coder Nigel Holliday Thales Missile Electronics. Missile Electronics

Software Development with Real- Time Workshop Embedded Coder Nigel Holliday Thales Missile Electronics. Missile Electronics Software Development with Real- Time Workshop Embedded Coder Nigel Holliday Thales 2 Contents Who are we, where are we, what do we do Why do we want to use Model-Based Design Our Approach to Model-Based

More information

Overview and History of Operating Systems

Overview and History of Operating Systems Overview and History of Operating Systems These are the notes for lecture 1. Please review the Syllabus notes before these. Overview / Historical Developments An Operating System... Sits between hardware

More information

Design and Verification of Nine port Network Router

Design and Verification of Nine port Network Router Design and Verification of Nine port Network Router G. Sri Lakshmi 1, A Ganga Mani 2 1 Assistant Professor, Department of Electronics and Communication Engineering, Pragathi Engineering College, Andhra

More information

Medical Device Design: Shorten Prototype and Deployment Time with NI Tools. NI Technical Symposium 2008

Medical Device Design: Shorten Prototype and Deployment Time with NI Tools. NI Technical Symposium 2008 Medical Device Design: Shorten Prototype and Deployment Time with NI Tools NI Technical Symposium 2008 FDA Development Cycle From Total Product Life Cycle by David W. Fiegal, M.D., M.P.H. FDA CDRH Amazon.com

More information

Embedded Systems Lecture 9: Reliability & Fault Tolerance. Björn Franke University of Edinburgh

Embedded Systems Lecture 9: Reliability & Fault Tolerance. Björn Franke University of Edinburgh Embedded Systems Lecture 9: Reliability & Fault Tolerance Björn Franke University of Edinburgh Overview Definitions System Reliability Fault Tolerance Sources and Detection of Errors Stage Error Sources

More information

OPC COMMUNICATION IN REAL TIME

OPC COMMUNICATION IN REAL TIME OPC COMMUNICATION IN REAL TIME M. Mrosko, L. Mrafko Slovak University of Technology, Faculty of Electrical Engineering and Information Technology Ilkovičova 3, 812 19 Bratislava, Slovak Republic Abstract

More information

ESE566 REPORT3. Design Methodologies for Core-based System-on-Chip HUA TANG OVIDIU CARNU

ESE566 REPORT3. Design Methodologies for Core-based System-on-Chip HUA TANG OVIDIU CARNU ESE566 REPORT3 Design Methodologies for Core-based System-on-Chip HUA TANG OVIDIU CARNU Nov 19th, 2002 ABSTRACT: In this report, we discuss several recent published papers on design methodologies of core-based

More information

FPGA area allocation for parallel C applications

FPGA area allocation for parallel C applications 1 FPGA area allocation for parallel C applications Vlad-Mihai Sima, Elena Moscu Panainte, Koen Bertels Computer Engineering Faculty of Electrical Engineering, Mathematics and Computer Science Delft University

More information

Chapter 2 Logic Gates and Introduction to Computer Architecture

Chapter 2 Logic Gates and Introduction to Computer Architecture Chapter 2 Logic Gates and Introduction to Computer Architecture 2.1 Introduction The basic components of an Integrated Circuit (IC) is logic gates which made of transistors, in digital system there are

More information

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

Design of a High Speed Communications Link Using Field Programmable Gate Arrays Customer-Authored Application Note AC103 Design of a High Speed Communications Link Using Field Programmable Gate Arrays Amy Lovelace, Technical Staff Engineer Alcatel Network Systems Introduction A communication

More information

Design and Implementation of the Heterogeneous Multikernel Operating System

Design and Implementation of the Heterogeneous Multikernel Operating System 223 Design and Implementation of the Heterogeneous Multikernel Operating System Yauhen KLIMIANKOU Department of Computer Systems and Networks, Belarusian State University of Informatics and Radioelectronics,

More information

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications Harris Z. Zebrowitz Lockheed Martin Advanced Technology Laboratories 1 Federal Street Camden, NJ 08102

More information

Study Plan Masters of Science in Computer Engineering and Networks (Thesis Track)

Study Plan Masters of Science in Computer Engineering and Networks (Thesis Track) Plan Number 2009 Study Plan Masters of Science in Computer Engineering and Networks (Thesis Track) I. General Rules and Conditions 1. This plan conforms to the regulations of the general frame of programs

More information

Software-Programmable FPGA IoT Platform. Kam Chuen Mak (Lattice Semiconductor) Andrew Canis (LegUp Computing) July 13, 2016

Software-Programmable FPGA IoT Platform. Kam Chuen Mak (Lattice Semiconductor) Andrew Canis (LegUp Computing) July 13, 2016 Software-Programmable FPGA IoT Platform Kam Chuen Mak (Lattice Semiconductor) Andrew Canis (LegUp Computing) July 13, 2016 Agenda Introduction Who we are IoT Platform in FPGA Lattice s IoT Vision IoT Platform

More information

MsC in Advanced Electronics Systems Engineering

MsC in Advanced Electronics Systems Engineering MsC in Advanced Electronics Systems Engineering 1 2 General overview Location: Dijon, University of Burgundy, France Tuition Fees : 475 / year Course Language: English Course duration: 1 year Level: Second

More information

Types Of Operating Systems

Types Of Operating Systems Types Of Operating Systems Date 10/01/2004 1/24/2004 Operating Systems 1 Brief history of OS design In the beginning OSes were runtime libraries The OS was just code you linked with your program and loaded

More information

A Lab Course on Computer Architecture

A Lab Course on Computer Architecture A Lab Course on Computer Architecture Pedro López José Duato Depto. de Informática de Sistemas y Computadores Facultad de Informática Universidad Politécnica de Valencia Camino de Vera s/n, 46071 - Valencia,

More information

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Kenneth B. Kent University of New Brunswick Faculty of Computer Science Fredericton, New Brunswick, Canada ken@unb.ca Micaela Serra

More information

Rapid System Prototyping with FPGAs

Rapid System Prototyping with FPGAs Rapid System Prototyping with FPGAs By R.C. Coferand Benjamin F. Harding AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Newnes is an imprint of

More information

Embedded Software development Process and Tools:

Embedded Software development Process and Tools: Embedded Software development Process and Tools: Lesson-2 Integrated Development Environment (IDE) 1 1. IDE 2 Consists of Simulators editors, compilers, assemblers, etc., IDE 3 emulators logic analyzers

More information

Lecture 1. Introduction to Embedded Computer Systems

Lecture 1. Introduction to Embedded Computer Systems CENG 314 Lecture 1 Introduction to Embedded Computer Systems Asst. Prof. Tolga Ayav, Ph.D. Department of Computer Engineering System A system has a set of one or more inputs entering a black box and a

More information

Finite State Machine Design and VHDL Coding Techniques

Finite State Machine Design and VHDL Coding Techniques Finite State Machine Design and VHDL Coding Techniques Iuliana CHIUCHISAN, Alin Dan POTORAC, Adrian GRAUR "Stefan cel Mare" University of Suceava str.universitatii nr.13, RO-720229 Suceava iulia@eed.usv.ro,

More information

Video Conferencing Unit. by Murat Tasan

Video Conferencing Unit. by Murat Tasan Video Conferencing Unit by Murat Tasan Video Conferencing Standards H.320 (ISDN) Popular in small business sector H.323 (Internet) More common with advancing cable modem and broadband access to homes H.324

More information

Attaining EDF Task Scheduling with O(1) Time Complexity

Attaining EDF Task Scheduling with O(1) Time Complexity Attaining EDF Task Scheduling with O(1) Time Complexity Verber Domen University of Maribor, Faculty of Electrical Engineering and Computer Sciences, Maribor, Slovenia (e-mail: domen.verber@uni-mb.si) Abstract:

More information

Levels of Programming Languages. Gerald Penn CSC 324

Levels of Programming Languages. Gerald Penn CSC 324 Levels of Programming Languages Gerald Penn CSC 324 Levels of Programming Language Microcode Machine code Assembly Language Low-level Programming Language High-level Programming Language Levels of Programming

More information

Eingebettete Systeme. 4: Entwurfsmethodik, HW/SW Co-Design. Technische Informatik T T T

Eingebettete Systeme. 4: Entwurfsmethodik, HW/SW Co-Design. Technische Informatik T T T Eingebettete Systeme 4: Entwurfsmethodik, HW/SW Co-Design echnische Informatik System Level Design: ools and Flow Refinement of HW/SW Systems ools for HW/SW Co-Design C-based design of HW/SW Systems echnische

More information

The Emerging Trends in Electrical and Computer Engineering

The Emerging Trends in Electrical and Computer Engineering 18-200 Fall 2006 The Emerging Trends in Electrical and Computer Engineering Hosting instructor: Prof. Jimmy Zhu; Time: Thursdays 3:30-4:20pm; Location: DH 2210 Date Lecturer Lecture Contents L01 08/31

More information

Lecture 11: Multi-Core and GPU. Multithreading. Integration of multiple processor cores on a single chip.

Lecture 11: Multi-Core and GPU. Multithreading. Integration of multiple processor cores on a single chip. Lecture 11: Multi-Core and GPU Multi-core computers Multithreading GPUs General Purpose GPUs Zebo Peng, IDA, LiTH 1 Multi-Core System Integration of multiple processor cores on a single chip. To provide

More information

Networked Embedded Systems: Design Challenges

Networked Embedded Systems: Design Challenges Networked Embedded Systems: Design Challenges Davide Quaglia Electronic Systems Design Group University of Verona 3 a giornata nazionale di Sintesi Logica, Verona, Jun 21, 2007 Outline Motivation Networked

More information

Design Cycle for Microprocessors

Design Cycle for Microprocessors Cycle for Microprocessors Raúl Martínez Intel Barcelona Research Center Cursos de Verano 2010 UCLM Intel Corporation, 2010 Agenda Introduction plan Architecture Microarchitecture Logic Silicon ramp Types

More information

Objective. Testing Principle. Types of Testing. Characterization Test. Verification Testing. VLSI Design Verification and Testing.

Objective. Testing Principle. Types of Testing. Characterization Test. Verification Testing. VLSI Design Verification and Testing. VLSI Design Verification and Testing Objective VLSI Testing Mohammad Tehranipoor Electrical and Computer Engineering University of Connecticut Need to understand Types of tests performed at different stages

More information

Hardware/Software Codesign Overview

Hardware/Software Codesign Overview Hardware/Software Codesign Overview Education & Facilitation Program Module 14 Version 3.00 All rights reserved. This information is copyrighted by the SCRA, through its Advanced Technology Institute,

More information

Multiprocessor System-on-Chip

Multiprocessor System-on-Chip http://www.artistembedded.org/fp6/ ARTIST Workshop at DATE 06 W4: Design Issues in Distributed, CommunicationCentric Systems Modelling Networked Embedded Systems: From MPSoC to Sensor Networks Jan Madsen

More information

Programmable Logic IP Cores in SoC Design: Opportunities and Challenges

Programmable Logic IP Cores in SoC Design: Opportunities and Challenges Programmable Logic IP Cores in SoC Design: Opportunities and Challenges Steven J.E. Wilton and Resve Saleh Department of Electrical and Computer Engineering University of British Columbia Vancouver, B.C.,

More information

synthesizer called C Compatible Architecture Prototyper(CCAP).

synthesizer called C Compatible Architecture Prototyper(CCAP). Speed Improvement of AES Encryption using hardware accelerators synthesized by C Compatible Architecture Prototyper(CCAP) Hiroyuki KANBARA Takayuki NAKATANI Naoto UMEHARA Nagisa ISHIURA Hiroyuki TOMIYAMA

More information

Lecture 3 - Model-based Control Engineering

Lecture 3 - Model-based Control Engineering Lecture 3 - Model-based Control Engineering Control application and a platform Systems platform: hardware, systems software. Development steps Model-based design Control solution deployment and support

More information

Software engineering for real-time systems

Software engineering for real-time systems Introduction Software engineering for real-time systems Objectives To: Section 1 Introduction to real-time systems Outline the differences between general-purpose applications and real-time systems. Give

More information

A New Paradigm for Synchronous State Machine Design in Verilog

A New Paradigm for Synchronous State Machine Design in Verilog A New Paradigm for Synchronous State Machine Design in Verilog Randy Nuss Copyright 1999 Idea Consulting Introduction Synchronous State Machines are one of the most common building blocks in modern digital

More information

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

Open Architecture Design for GPS Applications Yves Théroux, BAE Systems Canada Open Architecture Design for GPS Applications Yves Théroux, BAE Systems Canada BIOGRAPHY Yves Théroux, a Project Engineer with BAE Systems Canada (BSC) has eight years of experience in the design, qualification,

More information

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

AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION Michael Black, American University Manoj Franklin, University of Maryland-College Park American Society for Engineering

More information

Modeling a GPS Receiver Using SystemC

Modeling a GPS Receiver Using SystemC Modeling a GPS Receiver using SystemC Modeling a GPS Receiver Using SystemC Bernhard Niemann Reiner Büttner Martin Speitel http://www.iis.fhg.de http://www.iis.fhg.de/kursbuch/kurse/systemc.html The e

More information

Electronic system-level development: Finding the right mix of solutions for the right mix of engineers.

Electronic system-level development: Finding the right mix of solutions for the right mix of engineers. Electronic system-level development: Finding the right mix of solutions for the right mix of engineers. Nowadays, System Engineers are placed in the centre of two antagonist flows: microelectronic systems

More information

Contents. Chapter 1. Introduction

Contents. Chapter 1. Introduction Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual

More information

Switch Fabric Implementation Using Shared Memory

Switch Fabric Implementation Using Shared Memory Order this document by /D Switch Fabric Implementation Using Shared Memory Prepared by: Lakshmi Mandyam and B. Kinney INTRODUCTION Whether it be for the World Wide Web or for an intra office network, today

More information

Verification by. Simulation. Verification by. Simulation. Verification by. Simulation / Model Check. Validation and Testing.

Verification by. Simulation. Verification by. Simulation. Verification by. Simulation / Model Check. Validation and Testing. Model-Based Software evelopment : Method Co- with contributions of Marcel Groothuis, Peter Visser, Bojan Orlic, usko Jovanovic, Gerald Hilderink Engineering, CTIT, Faculty EE-M-CS,, Enschede, Netherls

More information

Master Specialization in Digital Design: Design and Programming of Embedded Systems

Master Specialization in Digital Design: Design and Programming of Embedded Systems Master Specialization in Digital Design: Design and Programming of Embedded Systems Jan Schmidt, Ph.D. Department of Digital Design Faculty of Information Technology Czech Technical University in Prague

More information

ARM Webinar series. ARM Based SoC. Abey Thomas

ARM Webinar series. ARM Based SoC. Abey Thomas ARM Webinar series ARM Based SoC Verification Abey Thomas Agenda About ARM and ARM IP ARM based SoC Verification challenges Verification planning and strategy IP Connectivity verification Performance verification

More information

NVM memory: A Critical Design Consideration for IoT Applications

NVM memory: A Critical Design Consideration for IoT Applications NVM memory: A Critical Design Consideration for IoT Applications Jim Lipman Sidense Corp. Introduction The Internet of Things (IoT), sometimes called the Internet of Everything (IoE), refers to an evolving

More information

Figure 1 FPGA Growth and Usage Trends

Figure 1 FPGA Growth and Usage Trends White Paper Avoiding PCB Design Mistakes in FPGA-Based Systems System design using FPGAs is significantly different from the regular ASIC and processor based system design. In this white paper, we will

More information

VLSI Design Verification and Testing

VLSI Design Verification and Testing VLSI Design Verification and Testing Instructor Chintan Patel (Contact using email: cpatel2@cs.umbc.edu). Text Michael L. Bushnell and Vishwani D. Agrawal, Essentials of Electronic Testing, for Digital,

More information

Going Linux on Massive Multicore

Going Linux on Massive Multicore Embedded Linux Conference Europe 2013 Going Linux on Massive Multicore Marta Rybczyńska 24th October, 2013 Agenda Architecture Linux Port Core Peripherals Debugging Summary and Future Plans 2 Agenda Architecture

More information

LSN 2 Computer Processors

LSN 2 Computer Processors LSN 2 Computer Processors Department of Engineering Technology LSN 2 Computer Processors Microprocessors Design Instruction set Processor organization Processor performance Bandwidth Clock speed LSN 2

More information

Dataflow Programming with MaxCompiler

Dataflow Programming with MaxCompiler Dataflow Programming with MaCompiler Lecture Overview Programming DFEs MaCompiler Streaming Kernels Compile and build Java meta-programming 2 Reconfigurable Computing with DFEs Logic Cell (10 5 elements)

More information