Embedded Systems Development Presented by: Christian Limjoco Sineenart Thong-Ngam What is an Embedded System (E.S.)? Embed: Definition 1: to fix (something) firmly and deeply (Longman Dictionary) Definition 2: To fix firmly in a surrounding mass(Dictionary.com) System: implicitly a controlling system. Embedded System: any device that includes a programmable computer but is not itself a general-purpose computer Purpose of Embedded System (E.S.) • Embedded systems are systems that possess capabilities, which are resident on operational equipment or are interfaced with it. • The objective of this focus area is to enhance readiness through expanded training and testing opportunities using embedded systems. Key Difference with PCs • React to external events that may be particularly rapid - Anti-lock brake system (ABS): pumps brakes to reduce skidding. - Missile flying at low altitude over a mountainous area • Must handle unusual events - A user blocking an elevator door, power blackout,memory failure • Does not use an insulation (shell) between the program and the hardware. Products with embedded systems • Personal digital assistant (PDA). • Printer. • Cell phone. • VCRs, DVD players. • Microwave. • Washer. • Camera. • Printers, copiers. Early History • Late 1940’s: MIT Whirlwind computer was designed for real-time operations. • 1948: ENIAC(electronic numerical integrator and computer) the world's first electronic digital computer used for Smart Bombs • 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. • 1972: Intel 8008, the first 8-bitter • 1975: MOS Technology introduced the 6502 at the astonishing price of $25. That sparked the Jobs/Wozniak whiz kids to develop the Apple computer. Early History (continued) • Mid 1970s: Automobiles used microprocessor- based engine controllers • 1981: The PC revolution begins IBM introduced the PC. Using a 4.77MHz 8088 and limited to 640KB of RAM, this machine caused the entire world to take notice of the microprocessor industry. • Microprocessors get so cheap that microprocessor-based control systems become the rule. • Only limit: processing time. General Principles & Philosophy Vitruvian Triad: Function, Form and Fabrication • Firmitas (Soundness) – The materials used must be carefully chosen but not with excessive frugality. • Utilitas (Utility) – The design of an artifact should allow faultless unimpeded use through the disposition of the spaces and the allocation of each spaces and allocation of each type of space is properly oriented, appropriate, and comfortable. General Principles & Philosophy Vitruvian Triad: Function, Form and Fabrication • Venustas (Attractiveness) – The appearance of an artifact is pleasing and elegant, and the proportions of its elements have properly developed principles of symmetry. General Principles & Philosophy Principles of User Interface Design Approaches to usability: • Usability by Evaluation –involves dissecting a design to find its strong and weak points with a view to making improvements. • Usability by principles - is about deciding ahead of time what usability properties will be desirable on this interface, and what types of people will use it. General Principles & Philosophy Principles of User Interface Design • Robustness • Consistency • Affordance • Surface area • Compatibility • Directed interfaces • Multithreading • Modes • Equal opportunity • Multiple paths • Migrating from mechanical controls Embedded Systems Lifecycle Embedded Systems Lifecycle • Product Specification- The product specification phase involves doing research on customers. Most companies accomplish this by using focus groups or questionnaires through their marketing departments. • Hardware/Software Partitioning- Designing and embedded system involves both hardware and software components. It is important for an engineer to decide which portion of the problem will be solved through hardware and which through software. Embedded Systems Lifecycle • Iteration and Implementation - It is in this phase that development teams have a greater opportunity to get everything right the first time, and minimize the risk of discovering an error late in design which always leads to schedule backlogs. • Detailed Hardware and Software Design - In this phase, the embedded systems developer must define the runtime environment. The embedded systems developer must decide where the various components will reside (in RAM, ROM, or flash memory) and how they will be packaged and scheduled. Embedded Systems Lifecycle • Hardware/Software Integration - The hardware/software integration phase of the development cycle deals with two primary activities, discovery and debugging. • Product Testing -The testing and reliability requirements for an embedded system are much more stringent than the vast majority of desktop applications. Testing involves more than making sure the software doesn’t crash at a critical moments . • Maintaining and Upgrading Existing Products- This phase of embedded systems design lifecycle involves the use of tools that are specifically used for reverse engineering and rapidly simulating scenarios. The need for a methodology • There are engineers that have brilliant ideas for standard procedures and applied them. However, when these “heroes” leave the company the techniques and methodology left with them. • When companies used established procedures documentation for this is disorganized consisting of scattered notes and files. It is also rarely found in one place. • Even in companies that followed a defined procedure, often parts of a procedure are not well understood or completely implemented • Consultants often find themselves needing to reuse some general process patterns for each new design they make for companies of varying sizes. Universal Design Methodology Universal Design Methodology • Write a specification - Defines the entire design and each person’s responsibility. By creating a specification, an engineer may be able to design a correct interface for the rest of the chip, save time and thus costs avoids misunderstandings. • Specification Review - This phase is important in finding out whether there is something wrong or something has been left out the specification. • Choosing technology and tools - Deciding on the device and tools early on is critical for the embedded systems development project. A chosen synthesis tool will test algorithms in different conditions/states. Universal Design Methodology • Design – The goal is to increase your chances of producing a working, reliable device one that will work for different chip vendor processes and continue to work for the lifetime of your system Design Techniques: - Use top-down design - Work with device architecture - Do synchronous design - Avoid floating nodes - Avoid Bus Contention Universal Design Methodology • Verification - a “super phase” consisting of a group of methods and techniques used to detect design errors before a chip is created. Simulation - Helps determine that your chip will function correctly in your system. Design review - This is one of the most important reviews. It determines if a chip will work correctly in your system. Synthesis - Involves specifying switches and optimization criteria in the Hardware Description Language code, or using synthesis software in order to ensure good timing and utilization. Universal Design Methodology • Verification (continued) Place and Route - This is one of the most important reviews. It determines if a chip will work correctly in your system. Formal Verification - The formal verification that takes place at this stage is known as equivalency checking. This kind of formal verification involves a software tool that performs a mathematical comparison of the functionality of both circuits in order to confirm that both circuits will operate correctly. Universal Design Methodology • Final review -The final review of the chip should be a formality at this point. If the design team has followed all of the other steps and the other reviews have taken place, this review should be a simple sign-off that verifies that the design has been coded, simulated, synthesized, laid out and routed, and is now ready to go into the system. • System Integration and Test -Integration and system testing is necessary at this point to ensure that all parts of the system work correctly together. When the chips are put into production, the production process should include some sort of burn-in test that continually tests the system over some long amount of time • Ship Product Benefits of UDM Value Proposition: • The Universal Design Methodology as it relates specifically to programmable devices ensures the proper design, review, and testing of your product. It aims to: Design a device that is free from defects, works reliably over the lifetime of the device and functions correctly in your system Efficiently design this device: In the least amount of time, using the least amount of resources including personnel. Plan the design efficiently: Create a reasonable schedule as early in the process as possible. Know all necessary resources up front and allocate them as early in the process as possible. Success Factors • Product Planning Know the users and their needs Freeze the product requirements Be mindful of the product lifecycle • Engineering Electromagnetic compatibilities should be considered from the start. Reasonable accommodations should be made for future a requirements. Safety and Hazard Issues should be Reviewed Early and Often. Plan for two or three revision boards. Success Factors • Design for Testability • Custom vs. Off the shelf • Evaluate Technical Support • Outsourcing Challenges • • Analog circuitry reliability, security, connectivity, and device manageability have become critically important for digital embedded systems. Threatens health and safety For example, a potential malfunction in the embedded digital technology that runs a major control system for a chemical refinery or a nuclear power plant. Market data/forecasts Marketplace Analysis • Wind River • Founded in 1981, Wind River is headquartered in Alameda, California, with operations worldwide • Aerospace and defense, automotive, digital consumer, industrial, and network infrastructure. Marketplace Analysis • The MathWorks • Founded in 1984 and is headquartered in Natick, Massachusetts, with offices and representatives throughout the world. • The fundamental tools for the engineering and scientific work Marketplace Analysis • The Green Hills • Green Hills is 20 years old, privately held, profitable since its inception, and is growing at an average rate of 30% per year. • The world's #2 RTOS company