Embedded Software System
HOME Embedded Computing Embedded Wireless Embedded Systems Embedded Software

Introduction

Smartness is the in the air today. This is an era marked by the onslaught of a host of devices that are intelligent and interactive. This is the age when a car can talk to a mobile phone and vice versa seamlessly. All these advancements come with the arrival of a ubiquitous technology referred to as embedded or invisible computing. This exciting technology makes human’s life smarter, convenient and easier.

What is an Embedded Software System?

Embedded software systems are the invisible computer hidden inside cell phones, cars, home electronic systems, appliances, game consoles, personal digital assistants (PDAs), etc.

Embedded systems are computers that are integrated within other equipment in such a way that the user is often unaware that a computer is inside that equipment. Embedded systems are normally inserted within electronic systems in cars, homes, offices, production lines, and many other places. Embedded system software can go into everything conceivable and brings out the products complete functionality.

Software for embedded systems has to have a small footprint, that is, the software is able to run in a small amount of memory, and in many occasions, has to work in real-time. There are some specialized operating systems and specific languages that facilitate design and development of real-time and robust software with a small footprint.

Business Case for Embedded System Software

There is a huge potential waiting in designing and developing new applications and system software in the information appliance and next generation networking/telecom equipment space. The global telecom and communication software industry is stated to exceed $70 billion by 2003. Embedded systems software forms one of the largest categories of software used in telecom/networking equipment. The global opportunity for such specialized embedded software services and solutions in this space alone is estimated at $ 46 billion in this financial year. It is also expected that this market will grow substantially to $ 65 billion by 2002 - 2003.

As software firms are striving towards providing better functionalities, enhanced features and throughout and value-added services in the form of network processors, System on Chips (SoC) Customized ASICs etc., the prospects for embedded software development are immense. It has been a real challenge to have the appropriate development environments for producing innovative and slim software for embedded systems. At present, there are a quite number of global software giants, such as Intel, Sharp, Sony, Texas Instruments etc., putting their weight in developing embedded software for their future products.

It is expected that in near future Internet appliances and next generation networking and telecommunications equipment will facilitate the immense growth of usage of embedded systems. Thus in one or other way, embedded systems form a part and parcel of every human life. It is being touted as the new era of information technology.

Uniqueness of Embedded Software

The embedded system is made as small as possible and will lack many of the facilities expected on a traditional computer. Normally there is no keyboard or display device so the software is specially made on another computer and transferred to the target system afterwards. The embedded software for real time data handling and processing capability, faster response time and enhanced mobility in the product. It is instrumental in the product delivering highest performance with minimal resources.

As an example, let us consider a next generation Internet infrastructure device such as a IP services creation platform. The system consists of several boards with physical electronics interfaces and each board has one or more processors and memory in which the communications software is embedded.

The technologies necessary for embedded software development needs quite a long learning curve. All the above-quoted reasons are poised to stimulate a hot business opportunities for software companies with expertise in embedded computing technologies. There is a good growth in this area and it represents a deeper notch in terms of technical expertise. One need to have the ability to do a system-on-a-chip, design a site, a soft chip, where the entire software is written on a chip and fabricate the chip. There are numerous challenging application areas for embedded software. They are in automotive, avionics, consumer electronics, medical electronics, and also communications and networking.

Skills set for Embedded System Software

Embedded software development requires highly specialized and wide-ranging skills in various Real Time Operating System (RTOS) such as Intent, VxWorks, Win CE, pSOS etc., the heart of any embedded network. It also needs a very good command over programming like Linux, Java, C/C++, device driver programming, object-oriented methodologies for electronic designs, highly specialized hardware design languages like Verilog and VHDL and many other design automation tools.