©Alex Doboli 2006 Introduction to Mixed-Signal, Embedded Systems Design Alex Doboli, Ph.D. Department of Electrical and Computer Engineering State University.

Slides:



Advertisements
Similar presentations
Sensors Interfacing.
Advertisements

University Of Vaasa Telecommunications Engineering Automation Seminar Signal Generator By Tibebu Sime 13 th December 2011.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Introduction Part 3: Input/output and co-processors dr.ir. A.C. Verschueren.
©Alex Doboli 2006  Analog to Digital Converters Alex Doboli, Ph.D. Department of Electrical and Computer Engineering State University of New York at.
Data Acquisition Risanuri Hidayat.
Lecture 9: D/A and A/D Converters
Define Embedded Systems Small (?) Application Specific Computer Systems.
Chapter 13 Embedded Systems
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Design of a Control Workstation for Controller Algorithm Testing Aaron Mahaffey Dave Tastsides Dr. Dempsey.
Coordinate Based Tracking System
How to Build a Digital-Physical System-Lab Assegid Kidané Fall 2014.
ASPPRATECH.
©Alex Doboli 2006 Switched Capacitor Blocks Alex Doboli, Ph.D. Department of Electrical and Computer Engineering State University of New York at Stony.
Microprocessor and Microcontroller Based Systems Instructor: Eng.Moayed N. EL Mobaied The Islamic University of Gaza Faculty of Engineering Electrical.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
©Alex Doboli 2008 Visual Embedded System Programming Has Arrived! Alex Doboli, Ph.D. Department of Electrical and Computer Engineering State University.
Team of engineers who build a system need:  An abstraction of the system  An unambiguous communication medium  A way to describe the subsystems ◦ Inputs.
Introduction to Robotics Principles of Robotics. What is a robot? The word robot comes from the Czech word for forced labor, or serf. It was introduced.
©Alex Doboli Chapter 3: Hardware and Software Subsystems of Mixed-Signal Architectures (Part II) Alex Doboli, Ph.D. Department of Electrical and Computer.
 Chasis / System cabinet  A plastic enclosure that contains most of the components of a computer (usually excluding the display, keyboard and mouse)
Embedded Systems Design ICT Embedded System What is an embedded System??? Any IDEA???
1 Sensors and Measurements Penderia & Pengukuran ENT 164 Signal Processing Elements Hema C.R. School of Mechatronics Engineering Northern Malaysia University.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
Wireless Intelligent Sensor Modules for Home Monitoring and Control Presented by: BUI, Phuong Nhung, 裴芳绒 António M. Silva1, Alexandre Correia1, António.
Low-Power Wireless Sensor Networks
DLS Digital Controller Tony Dobbing Head of Power Supplies Group.
Typical Microcontroller Purposes
I/O Example: Disk Drives To access data: — seek: position head over the proper track (8 to 20 ms. avg.) — rotational latency: wait for desired sector (.5.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
(More) Interfacing concepts. Introduction Overview of I/O operations Programmed I/O – Standard I/O – Memory Mapped I/O Device synchronization Readings:
High Performance Embedded Computing © 2007 Elsevier Lecture 3: Design Methodologies Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte Based.
Other Chapters From the text by Valvano: Introduction to Embedded Systems: Interfacing to the Freescale 9S12.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
HARDWARE INTERFACE FOR A 3-DOF SURGICAL ROBOT ARM Ahmet Atasoy 1, Mehmed Ozkan 2, Duygun Erol Barkana 3 1 Institute of Biomedical Engineering, Bogazici.
Overview What is Arduino? What is it used for? How to get started Demonstration Questions are welcome at any time.
Microprocessor-based Systems
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
Representing Numerical Data Analog Any signal that varies continuously over time Mechanical Pneumatic Hydraulic Electrical Digital Quantities are represented.
1 EENG 1920 Chapter 5 System Design I: Functional Decomposition.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
L/O/G/O Input Output Chapter 4 CS.216 Computer Architecture and Organization.
System-level power analysis and estimation September 20, 2006 Chong-Min Kyung.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
©Alex Doboli 2006 Performance Improvement through Customization Alex Doboli, Ph.D. Department of Electrical and Computer Engineering State University of.
Lecture 7: Overview Microprocessors / microcontrollers.
16722 Mo: data acquisition150+1 data acquisition.
CSE466 - Fall What is an Embedded System  Its not a desktop system  Fixed or semi-fixed functionality (not user programmable)  Lacks some or.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2012.
BLDC Motor Speed Control with RPM Display. Introduction BLDC Motor Speed Control with RPM Display  The main objective of this.
TRANSMISSION LINE MULTIPLE FAULT DETECTION AND INDICATION TO EB
Lecture Notes / PPT UNIT III
Digital Signal Processor HANYANG UNIVERSITY 학기 Digital Signal Processor 조 성 호 교수님 담당조교 : 임대현
Components of Mechatronic Systems AUE 425 Week 2 Kerem ALTUN October 3, 2016.
Fan Assembly Driven by Magnetic Fields
MECH 373 Instrumentation and Measurements
Programmable Logic Devices
Operating Systems (CS 340 D)
Introducing Embedded Systems and the Microcontrollers
Electronics for Physicists
Switched Capacitor Blocks
Programmable Data Communication Blocks
Electronics for Physicists
Chapter 13: I/O Systems.
♪ Embedded System Design: Synthesizing Music Using Programmable Logic
Presentation transcript:

©Alex Doboli 2006 Introduction to Mixed-Signal, Embedded Systems Design Alex Doboli, Ph.D. Department of Electrical and Computer Engineering State University of New York at Stony Brook

©Alex Doboli 2006 An Overview on the Design of Embedded Mixed-Signal Systems The chapter introduces embedded mixed-signal systems and explains the top-down design flow for developing performance efficient implementations Types of embedded applications and their characteristics (interfaces, functionality, and design requirements) CPUs used in embedded systems (microprocessors and microcontrollers, DSP, VLIW processors, and reconfigurable architectures) Top-down design flow based on design refinement and circuit modeling The evolution of the embedded systems market Illustrating example for a embedded mixed-signal system design

©Alex Doboli 2006 Sensing and actuation devices in embedded applications

©Alex Doboli 2006 Embedded Applications Signal sensing/data acquisition – data processing & data storing – actuation – data communication (networking)

©Alex Doboli 2006 Embedded Applications Networking, intelligent control

©Alex Doboli 2006 Embedded Applications Networking

©Alex Doboli 2006 Types of Embedded Applications (1) A. Embedded controllers –Supervise and adjust the behavior of the monitored entities –Fan controller, pacemakers, robot arm controller, –Low/medium computational complexity, real-time, safety- critical, accurate sensing, low cost B. Specialized interfaces –Interfacing to powerful computers Supply the missing hardware Relieves the computer from interfacing jobs: data conversion, encoding/decoding, encryption/decryption, etc. –Small cost & size, low/medium computational complexity, fast throughput, low energy consumption –Data acquisition, networking cards, capacitive sensing, mouse

©Alex Doboli 2006 Types of Embedded Applications (2) C. Application-specific coprocessors –Customized data intensive processing: DSP, multimedia, graphic processors, image processing, video processing –Relieves CPU from computationally intensive tasks –High speed, low power consumption, low cost & size D. Networks of embedded systems –Automotive applications: networked embedded microcontrollers, sensors, actuators –Wireless networks, sensor networks –Low cost, small size, reduced memory, low energy consumption, variety of sensors/actuators –Communication protocols, data routing, data aggregation, control, scalability, self-organizing, autonomous

©Alex Doboli 2006 Data Flow in an Embedded System

©Alex Doboli 2006 Summary of Embedded Systems characteristics System types SensingActuationData communic. Data processing Requirements & constraints ControllersWide range -controlCost, accuracy, timing, safety Specialized interfaces Wide range-Various speed Conversion,f ormatting,en coding Cost,size,accu racy,timing, power consumpt. Co- processors --High-speedData- intensive customized Cost, size, speed, power consumpt. Networks of embedded systems Wide range Various speed Control, conversion, encoding Cost, size, safety, power consumpt.

©Alex Doboli 2006 I/O Interfaces Analog and digital signals –Voltage, current, charge, frequency, phase –Thermistors, theromocuples, pressure sensors, velocity sensors, strain gauges, etc. Signal conditioning circuits, analog multiplexers, ADC, DAC, comparators, filters, sampling circuits, amplitude detectors, mixers, etc. Analog signals –Sin waves, triangular, –Range, bandwidth, precision, noise, speed of variation etc.

©Alex Doboli 2006 Functionality Control dominated systems Data dominated systems Multi tasking systems Multi-mode systems

©Alex Doboli 2006 Types of functionality

©Alex Doboli 2006 Types of functionality Continuous time systems Discrete-time systems Event-driven systems

©Alex Doboli 2006 Design requirements Low cost Short time to market Small size & weight Real-time constraints, latency, throughput Low power & low energy consumption Safety Data accuracy Robustness Flexibility in developing new applications

©Alex Doboli 2006 Timing (real-time) constraints

©Alex Doboli 2006 Analog Circuit Nonidealities

©Alex Doboli 2006 System performance & requirements Global constraints Local constraints Constraint transformation Tightly coupled systems Loosely coupled systems

©Alex Doboli 2006 How do embedded applications differ from “non-embedded” ones (e.g., desktop)? A. Wide range of sensing & actuation necessities: The temperature sensor provides an output voltage proportional to the measured temperature The fan is a DC brushless fan with a duty cycle (hence speed) controlled by the output of the embedded controller The tachometer measures the rotational speed of the fan, and generates an input signal used by the embedded system for computing the fan speed => Knowledge required beyond EE & CE (physics, chemistry, mechanics, material science, etc.) Embedded vs. other applications (1)

©Alex Doboli 2006 Embedded vs. other applications (2) B. Variety of design and performance requirements Cost Weight, size, number of I/O pins Latency, throughput, real-time constraints, response time, Energy/power consumption Safety-critical C. Comprehensive design process System design (beyond CPU) Analog and mixed-signal circuit design Customized digital circuit design Software development: algorithms, drivers, firmware, ISR, API => Cross-disciplinary design expertise (EE & CE & CS)

©Alex Doboli 2006 PSoC Mixed-Signal Architecture

©Alex Doboli 2006 Other Embedded Architectures Microcontrollers DSP Reconfigurable architectures

©Alex Doboli 2006 Tow-Down Design Flow (1)

©Alex Doboli 2006 Design Flow (2) Goal: customize the hardware and software according to the specific functional, cost, and performance needs of the application, as well as the characteristics of the environment the design will operate in Customization allows achieving the performance requirements at relatively low costs Customization leads to lesser flexibility in efficiently reusing an embedded system design for a different kind of application Customization involves cost-size-performance trade-offs

©Alex Doboli 2006 Design Flow (3) Abstract system specification –Functional, interfacing, cost, and performance requirements of the system Incremental refinement during the top-down flow –Adds successively implementation details to the design –Early refinement steps decide the # of processing cores, partitioning of the functionality to the cores, the structure of the memory subsystem, the number of buses, etc. –Late refinement steps implement the building blocks Each refinement step conducts design trade-off analysis –Multiple solutions and impact on the system performance System performance evaluation Modeling procedure for the building blocks in the design

©Alex Doboli 2006 Design Flow (4) 1. System specification: – Describing the interfacing, functionality, and performance constraints of an embedded system –Simulatable notation SystemC, MATLAB/SIMULINK, UML, VHDL, VHDL-AMS different levels of abstractions High level vs. low level specifications 2. Functional partitioning: –Re-organizes a specification into modules with specialized functionality –The identified modules might undergo different design procedures –Might be performed multiple times

©Alex Doboli 2006 Design Flow (5) 3. System-level trade-off analysis: –Maps (transforms) system-level performance and design requirements into requirements for the building blocks –Design trade-offs are analyzed during this step cost -speed, speed - power consumptions, etc. –Whether a module is realized in hardware or software –Deciding the main attributes of the memory memory size, # of memory modules, access time, etc. –Number of I/O ports, their communication protocols, mapping of I/O signals to ports, etc. –Refining the OS or firmware level routines Task scheduling, arbitration of module access to buses –Modules are individually designed

©Alex Doboli 2006 Design Flow (6) 4. Design of the individual modules: –Implementing the system modules Interfaces, video and audio processors, memory module, bus communication –Hardware circuits –Software routines Drivers, interrupt service routines (ISR), control and data access routines –Complex modules go through top-down design

©Alex Doboli 2006 Design Flow (7) 5. Analog and mixed-signal circuit design: –OpAmp, OTA, comparator circuits, analog mux, integrator circuits, S/H circuits, etc. –Continuous-time or switched capacitor circuits –Selecting the circuit topology, transistor sizing, and layout design 6. Digital circuit design: –Customized digital circuits –Interfacing circuits, digital filters, decimator circuits, encoders - like Huffman encoders for multimedia, etc. –Complex digital sub-systems go through top-down design –Simple circuits: logic design, mapping to basic circuits, transistor sizing, and layout design

©Alex Doboli 2006 Design Flow (8) 7. Software development: –Application software and system software Data processing, control, and graphical user interfaces (GUIs) Real-time OS, middleware, and networking. 8. Circuit modeling: –Characterizing the behavior of hardware –Electronic circuits have significant differences from ideal behavior –Nonidealities of analog and digital circuits propagation delay, power consumption, noise margins, gain, poles, zeros, bandwidth, harmonic distortion, circuit noise –Different kind of nonidealities have to contemplated at different abstraction levels of a top-down design flow

©Alex Doboli 2006 Design Flow (9) 9. Software characterization: –Prediction of the performance of software routines speed, memory, memory access patterns, power consumption, and so on –Difficult due to the dynamic nature of software performance if statements, case statements, loops 10. Performance evaluation: –Performance attributes of the system and its modules Quality of different design options without actually building, testing and measuring the designs –Analytical expressions Simple to use, but require large development effort Prediction accuracy is not very high –Simulation large simulation time

©Alex Doboli 2006 Embedded Systems Market % ( ) Embedded software $1,4 bil$1,6 bil$3,4 bil16 Embedded hardware $34,6 bil$40 bil$78,7 bil14 Embedded boards $3,4 bil$3,6 bil$5,9 bil10 Total$39,4 bil$45,8 bil$88,1 bil14 Source: BCC Research Group, “Future of Embedded Systems Technology”, 2005

©Alex Doboli 2006 What is an embedded system? (1) Fan controller: The controller adjusts the fan speed depending on the room temperature

©Alex Doboli 2006 What is an embedded system? (2) Functionality of the fan controller: The controller selects among four different predefined speed values (e.g., off, low, ramp, and high): –If the room temperature stays below 25C then the fan stays off –If the temperature is in the range 25C - 35C then the fan rotates at a low speed. –For the temperature range 35C to 50C the speed of the fan linearly increases with the temperature following a ramp law Speed fan = room temperature / 10 –The fan speed is set to high, if room temperature exceeds 50C LCD displays the temperature & the fan speed set by the controller Is that all?

©Alex Doboli 2006 What is an embedded system? (3) Digital actuation Sensing Embedded control algorithm Is that all?

©Alex Doboli 2006 Signal sensing/Data acquisition What signal (voltage, current)? Signal characteristics (range, frequency, noise, distortion) Signal loading characteristics (high impedance) Timing between pulses Interfacing (interrupts) Standards (I2C, RS232) Number of I/O Pins

©Alex Doboli 2006 Actuation Control signals Drive frequency Drive polarity Spin up time

©Alex Doboli 2006 Fan Controller Design Process (1) A. System specification –Description of interfaces, functionality and performance requirements –Specification notation/language B. Specification testing & debugging –Specification debugging & validation (correctness & completeness) C. System implementation –Analog & digital circuits –Software (embedded control, drivers, ISR) D. Implementation testing and debugging

©Alex Doboli 2006 Fan Controller Specification (2) PSoC Express offers graphical interface for specification of certain mixed-signal systems Library of predefined modules Interconnect of modules Control algorithm Temperature sensor interface I/Os to pins

©Alex Doboli 2006 Controller Implementation (3)

©Alex Doboli 2006 Controller Implementation (4)

©Alex Doboli 2006 Implementation Debugging & Validation (1) Implementation Debugging –Eliminate the faults in the implementation (e.g., system does not work) Analog, digital, software, integration etc. –What input data activates a fault and propagates it to the output? Implementation Validation –Is the implementation equivalent to the specification? –Are all possible input values handled correctly? –Is the functionality correctly realized? –Are performance requirements met? –How does the system operate in exceptional situations?

©Alex Doboli 2006 Implementation Debugging & Validation (2) Fix the number of bytes to be displayed on the LCD, their address, and amount –Temperature & RPM Change V ref & monitor data on LCD LCD can display only limited amount of data

©Alex Doboli 2006 Implementation Debugging & Validation (3) HyperTerminal Connected through the serial port Steps for monitoring: –Reset the system –Set the duty cycle to 100% –Define the I2C address and count value to be displayed –HyperTerminal displays the registers for Fan, Tach, SPR, and Temp

©Alex Doboli 2006 Conclusions