What is an efficient Embedded System Design?

Computer systems are used in many applications. So that we can see this computer system in every part of our lives. Examples of embedded system applications such as computer systems in cameras, mobile phones, kitchen equipment such as digital ovens, digital washing machines, cars, etc. Very important factors to consider in the application are performance, reliability and cost. So through this blog, we will be discussing the design problem in embedded systems. 

f:id:pjindal020:20190808215435j:plain

The most important problems faced by embedded system designers are as follows:

  • Cost

Electronic costs in embedded system applications must be lower. The cheapest solution can be realized if a single microcontroller chip is sufficient for the implementation of all the functions that must be provided. This is possible if the capability of I / O and on-chip memory is sufficient to store the required software.

  • I / O capability

The microcontroller chip provides a variety of I / O resources. Provision includes parallel, serial, to timer, counter, A / D, and D / A converters. The number of I / O lines is very important.

  • Size

Microcontroller chips come in various sizes. If an application can be handled adequately by using an 8-bit microcontroller, it will be very wasteful if a more expensive 16-bit microcontroller is used.

  • Power Consumption

Power consumption is a very important consideration in a computer application. In high-performance systems, power consumption tends to be high too, requiring several mechanisms to dissipate the heat generated. In embedded systems, the power consumed is very low so there is no need to worry about the heat generated by the system. 

 

However, this application often uses battery resources so the battery life must be taken into account. Power consumption is reduced if CMOS technology is used for microcontroller chip manufacturing. In CMOS technology, power consumption is proportional to the clock frequency.

  • On-Chip Memory

The inclusion of on-chip memory on a microcontroller allows implementation of a single chip in a single embedded application. The size and type of memory has a significant branching. A small enough amount of RAM might be enough to store data during computing. Read-only memory is needed to save the program. The memory may be ROM, PROM, EPROM, EEPROM, or Flash.

  • Performance

Performance is not a big problem when microcontrollers are used for home appliances and toys applications except for video game applications such as PS. Small and inexpensive chips can be selected for simple applications, but in applications such as mobile phones and hand-held video games use a much higher performance.

  • Software

There are many advantages to using high-level languages ​​for computer application programs. The language facilitates the development process and makes it easier to maintain and modify software in the future. However, it would be wise if embedded system software uses assembly language because it will be more efficient and the software size will be smaller by 20%.

  • Set Instructions

Another significant issue is the nature of the processor instruction set used. CISC-like instructions produce code that is denser than the RISC-like instruction set. So the choice of processor affects the size of the code.

  • Development Tool

Digital system designers are very influential on development tools. The tool includes software packages for computer aided design (CAD), operating system software, compilers, assemblers, and simulators for processors.

  • Testability and Reliability

PCBs are often difficult to test, especially if they are too full of chips. The testing process is greatly simplified if the entire system is designed to be tested. The microcontroller chip can include a circuit that makes it easy to test the PCB that contains the chip.

 

Embedded system applications require strength and reliability. The life cycle of a product is expected to be at least 5 years. This is in contrast to personal computers, which tend to be considered obsolete in a shorter period.

 

The embedded system design is designed for the specific purpose of carrying out one or many tasks in real-time computing. 

 

Among the characteristics of this system are:

1. designed in one device integrated between one component with another component

2. designed to do specific tasks, and not for general tasks

3. software for this system is generally in the form of firmware, which is software to communicate and interact in real-time with hardware