What is Embedded System Design : Steps in the Design Process An Embedded system is a controller, which controls many other electronic devices. It is a combination of embedded hardware and software. There are two types of embedded systems microprocessors and micro-controller. Micro-processor is based on von Neumann model/architecture (where program + data resides in the same memory location), it is an important part of the computer system, where external processors and peripherals are interfaced to it. It occupies more area and has more power consumption. The application of the microprocessor is personal computers. This article discusses steps involving in embedded system design. What is an Embedded System Design? Definition: A system designed with the embedding of hardware and software together for a specific function with a larger area is embedded system design. In embedded system design, a microcontroller plays a vital role. Micro-controller is based on Harvard architecture, it is an important component of an embedded system. External processor, internal memory and i/o components are interfaced with the microcontroller. It occupies less area, less power consumption. The application of microcontrollers is MP3, washing machines. Embedded Design Types of Embedded Systems Stand-Alone Embedded System Real-Time Embedded System Networked Appliances Mobile devices Elements of Embedded Systems Processor Microprocessor Microcontroller Digital signal processor. Steps in the Embedded System Design Process The different steps in the embedded system design flow/flow diagram include the following. Embedded design – process – steps Abstraction In this stage the problem related to the system is abstracted. Hardware – Software Architecture Proper knowledge of hardware and software to be known before starting any design process. Extra Functional Properties Extra functions to be implemented are to be understood completely from the main design. System Related Family of Design When designing a system, one should refer to a previous system-related family of design. Modular Design Separate module designs must be made so that they can be used later on when required. Mapping Based on software mapping is done. For example, data flow and program flow are mapped into one. User Interface Design In user interface design it depends on user requirements, environment analysis and function of the system. For example, on a mobile phone if we want to reduce the power consumption of mobile phones we take care of other parameters, so that power consumption can be reduced. Refinement Every component and module must be refined appropriately so that the software team can understand. Architectural description language is used to describe the software design. Control Hierarchy Partition of structure Data structure and hierarchy Software Procedure. Embedded System Design Software Development Process Activities There are various design metric required to design any system to function properly, they are Design Metrics / Design Parameters of an Embedded System Function Power Dissipation Always maintained low Performance Should be high Process Deadlines The process/task should be completed within a specified time. Manufacturing Cost Should be maintained. Engineering Cost It is the cost for the edit-test-debug of hardware and software. Size Size is defined in terms of memory RAM/ROM/Flash Memory/Physical Memory. Prototype It is the total time taken for developing a system and testing it. Safety System safety should be taken like phone locking, user safety like engine break down safety measure must be taken Maintenance Proper maintenance of the system must be taken, in order to avoid system failure. Time to market It is the time taken for the product/system developed to be launched into the market. Embedded Software Development Process Activities Embedded software development process activities mainly include the following. Specifications Proper specifications are to be made so that the customer who uses the product can go through the specification of the product and use it without any confusion. Designers mainly focus on specifications like hardware, design constraints, life cycle period, resultant system behavior. Architecture Hardware and Software architecture layers are specified. Components In this layer, components design is done. Components like single process processor, memories- RAM/ROM, peripheral devices, buses..etc. System Integration In this layer, all the components are integrated into the system and tested whether its meeting designers, expectations. Challenges in Embedded System Design While designing any embedded system, designers face lots of challenges like as follows, Environment adaptability Power consumption Area occupied Packaging and integration Updating in hardware and software Security There are various challenges the designers face while testing the design like Embedded hardware testing, Verification stage, Validation Maintainability. Embedded System Design Examples Automatic chocolate vending machine (ACVM) Digital camera Smart card Mobile phone Mobile computer..etc. Automatic Chocolate Vending Machine (ACVM) The design function of ACVM is to provide chocolate to the child whenever the child inserts a coin into ACVM. Design Steps The design steps mainly include the following. Requirements Specifications Hardware and software functioning. Requirements When a child inserts a coin into the machine and selects the particular chocolate that he wants to purchase. Inputs Coins, user selection. An interrupt is generated at each port whenever a coin is inserted. A separate notification is sent to each port. Outputs Chocolate Refund A message is displayed on LCD like date, time, welcome message. System Function Using a graphical user interface, the child commands to the system which chocolate the child wants to purchase. Where the graphical user interface has an LCD, keypad, touch screen. The machine delivers the chocolate when the child inserts the coin if the coins inserted are excess than the actual cost of selected chocolate. The ACVM machine refunds the money back. Using a Universal synchronous bus, the owner of the ACVM can keep track of client location. Design Metrics Power Dissipation The design should be made as per display size and mechanical components. Process Deadline Timmer must be set, so that whenever the child inserts the coin the ACVM must respond within few seconds in delivering the chocolates and refunding if excess. For example, if the response time is 10seconds, the ACVM should deliver the chocolate and refund the money if excess within 10 seconds as soon as the child inserts the coin and place a request for chocolate. Specifications From the below ACVM system, when the child inserts the coin. The coins get segregated according to the ports presented, Port1, Port2, Port5. On receiving coin an interrupt is generated by the port, this interrupt is sent to reading the amount value and increasing. automatic – chocolate – vending – machine An LCD present here displays the messages like cost, time, welcome..etc. A port delivery exists where the chocolates are collected. Hardware ACVM hardware architecture has the following hardware specifications Microcontroller 8051 64 KB RAM and 8MB ROM 64 KB Flash memory Keypad Mechanical coin sorter Chocolate channel Coin channel USB wireless modem Power supply Software of ACVM Many programs have to be written so that they can be reprogrammed when required in RAM /ROM like, hardware-architecture-block-diagram-of-active Increase in chocolate price Updating messages to be displayed in LCD Change in features of the machine. An Embedded System is a combination of hardware + software to perform a particular function. There are of two types microprocessors and microcontrollers. While designing an embedded system certain design constraints and specifications are to consider, so that the developer can meet the customer expectations and deliver on time. An application of Embedded system design ACVM explained in this content. Here is a question what is the cause for environmental constraints while designing an embedded system? Share This Post: Facebook Twitter Google+ LinkedIn Pinterest Post navigation ‹ Previous What is a Digital Comparator and Magnitude ComparatorNext › What is Electrical Resistance – An Overview Related Content NVIDIA Jetson : Architecture, Working & Its Applications 8255 Microprocessor : Architecture, Working & Its Applications Coprocessor : Architecture, Working, Types & Its Applications What is Digital Signal Processor : Working & Its Applications