Introduction to Embedded Systems Dr Pedro Mejia Alvarez
Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Introduction z. What are embedded systems? z. What makes them different? z. Real time operation z. Many sets of constraints on designs z. Challenges in embedded computing system design. z. Design methodologies. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Definition z Embedded system: any device that includes a programmable computer but is not itself a generalpurpose computer. z Computer purchased as part of some other piece of equipment • Typically dedicated software (may be user- customizable) • Often replaces previously electromechanical components • Often no “real” keyboard • Often limited display or no general- purpose display device: don’t need all the general-purpose bells and whistles. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
What is an embedded system Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Examples Office systems and mobile equipment Answering machines Copiers Faxes Laptops and notebooks Mobile Telephones PDAs, Personal organisers Still and video cameras Telephone systems Time recording systems Printer Microwave Introduction to Embedded Systems Building systems Air conditioning Backup lighting and generators Building management systems CTV systems Fire Control systems Heating and ventilating systems Lifts, elevators, escalators Lighting systems Security cameras Sprinkler systems Dr. Pedro Mejia Alvarez Manufacturing and Process Control Automated factories Bottling plants Energy control systems Manufacturing plants Nuclear power stations Oil refineries and related storage facilities Power grid systems Power stations Robots Switching systems Water and sewage systems
Examples Transport Communications Other equipment Aeroplanes Trains Buses Marine craft Jetties Automobiles Air Traffic Control Signalling Systems Radar Systems Traffic Lights Ticketing machines Speed cameras, Radar speed detectors Telephone systems Cable systems Telephone switches Satellites Global Positioning System Introduction to Embedded Systems Automated teller systems Credit card systems Medical Imaging equipment Domestic Central Heating control VCRs Dr. Pedro Mejia Alvarez
Automotive embedded systems z. Today’s high-end automobile may have 100 microprocessors: y 4 -bit microcontroller checks seat belt; ymicrocontrollers run dashboard devices; y 16/32 -bit microprocessor controls engine. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
BMW 850 i brake and stability control system z. Anti-lock brake system (ABS): pumps brakes to reduce skidding. z. Automatic stability control (ASC+T): controls engine to improve stability. z. ABS and ASC+T communicate. y. ABS was introduced first---needed to interface to existing ABS module. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
BMW 850 i, cont’d. sensor brake ABS hydraulic pump brake sensor Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Embedded systems rule the market place • 80 Million PCs vs. 3 Billion Embedded CPUs Annually • Embedded market growing; PC market mostly saturated Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Why are embedded systems different from desktop computers ? Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Four General Embedded Systems Types General Computing • Applications similar to desktop computing, but in an embedded package • Video games, set- top boxes, wearable computers, automatic tellers Control Systems • Closed- loop feedback control of real- time system • Vehicle engines, chemical processes, nuclear power, flight control Signal Processing • Computations involving large data streams • Radar, Sonar, video compression Communication & Networking • Switching and information transmission • Telephone system, Internet Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Characteristics of an embedded system Real-Time Operation • Reactive: computations must occur in response to external events • Correctness is partially a function of time Small Size, Low Weight • Hand- held electronics and Transportation applications -- weight costs money Low Power • Battery power for 8+ hours (laptops often last only 2 hours) Harsh environment • Heat, vibration, shock, power fluctuations, RF interference, lightning, corrosion Safety- critical operation • Must function correctly and Must not function in correctly Extreme cost sensitivity • $. 05 adds up over 1, 000 units Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Embedding a computer CPU embedded computer Introduction to Embedded Systems output analog input analog mem Dr. Pedro Mejia Alvarez
Why use microprocessors? z Microprocessors simplify the design of families of products. z Microprocessors are often very efficient: can use same logic to perform many different functions, but Microprocessors use much more logic to implement a function than does custom logic. z Alternatives: field-programmable gate arrays (FPGAs), ASIC’s, custom logic, etc. z What about Micro. Controllers or DSP’s…. z Custom logic is a clear winner for low power devices. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
An Embedded Control System Designer’s View Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
A Customer View Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Design teams z. Often designed by a small team of designers. z. Often must meet tight deadlines. y 6 month market window is common. y. Can’t miss back-to-school window for calculator. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Challenges in embedded system design z. How much hardware do we need? y. How big is the CPU? Memory? z. How do we meet our deadlines? y. Faster hardware or cleverer software? z. How do we minimize power? y. Turn off unnecessary logic? Reduce memory accesses? Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Challenges, etc. z. Does it really work? y. Is the specification correct? y. Does the implementation meet the spec? y. How do we test for real-time characteristics? y. How do we test on real data? z. How do we work on the system? y. Observability, controllability? y. What is our development platform? Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Embedded System Designer Skill Set Appreciation for multi- disciplinary nature of design • Both hardware & software skills • Understanding of engineering beyond digital logic • Ability to take a project from specification through production Communication & teamwork skills • Work with other disciplines, manufacturing, marketing • Work with customers to understand the real problem being solved • Make a good presentation; even better -- write “trade rag” articles And, by the way, technical skills too… • Low level: Microcontrollers, FPGA/ ASIC, assembly language, A/ D, D/ A • High level: Object- oriented Design, C/ C++, Real Time Operating Systems • Meta level: Creative solutions to highly constrained problems • Likely in the future: Unified Modeling Language, embedded networks • Uncertain future: Java, Windows CE Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Design methodologies z. A procedure for designing a system. z. Understanding your methodology helps you ensure you didn’t skip anything. z. Compilers, software engineering tools, computer-aided design (CAD) tools, etc. , can be used to: yhelp automate methodology steps; ykeep track of the methodology itself. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Design goals z. Performance. y. Overall speed, deadlines. z. Functionality and user interface. z. Manufacturing cost. z. Power consumption. z. Other requirements (physical size, etc. ) Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Levels of abstraction requirements specification architecture component design system integration Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Our requirements form Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Example: GPS moving map requirements z. Moving map obtains position from GPS, paints map from local database. Scotch Road I-78 lat: 40 13 lon: 32 19 Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
GPS moving map needs z. Functionality: For automotive use. Show major roads and landmarks. z. User interface: At least 400 x 600 pixel screen. Three buttons max. Pop-up menu. z. Performance: Map should scroll smoothly. No more than 1 sec power-up. Lock onto GPS within 15 seconds. z. Cost: $500 street price = approx. $100 Introduction to cost. Systems of goods sold. Embedded Dr. Pedro Mejia Alvarez
GPS moving map needs, cont’d. z. Physical size/weight: Should fit in hand. z. Power consumption: Should run for 8 hours on four AA batteries. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
GPS moving map requirements form Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Specification z. A more precise description of the system: yshould not imply a particular architecture; yprovides input to the architecture design process. z. May include functional and non-functional elements. z. May be executable or may be in mathematical form for proofs. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
GPS specification z. Should include: y. What is received from GPS; ymap data; yuser interface; yoperations required to satisfy user requests; ybackground operations needed to keep the system running. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Architecture design z. What major components go satisfying the specification? z. Hardware components: y. CPUs, peripherals, etc. z. Software components: ymajor programs and their operations. z. Must take into account functional and non -functional specifications. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
GPS moving map block diagram GPS receiver search engine database Introduction to Embedded Systems renderer user interface Dr. Pedro Mejia Alvarez display
GPS moving map hardware architecture display CPU frame buffer GPS receiver memory Introduction to Embedded Systems panel I/O Dr. Pedro Mejia Alvarez
GPS moving map software architecture position Introduction to Embedded Systems database search renderer user interface timer Dr. Pedro Mejia Alvarez pixels
Designing hardware and software components z. Must spend time architecting the system before you start coding. z. Some components are ready-made, some can be modified from existing designs, others must be designed from scratch. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
System integration z. Put together the components. y. Many bugs appear only at this stage. z. Have a plan for integrating components to uncover bugs quickly, test as much functionality as early as possible. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
Summary • Embedded computers are all around us. • Many systems have complex embedded hardware and software. • Embedded systems pose many design challenges: design time, deadlines, power, etc. • Design methodologies help us manage the design process. References: • Overheads for Computers as Components, W. Wolf. Morgan Kaufman. • Embedded Systems in the Real World, Phillip Koopman. Carnegie Mellon University. Introduction to Embedded Systems Dr. Pedro Mejia Alvarez
- Slides: 38