Many modern devices make use of embedded computing, which gives to the devices the ability to optimize their performance, react to their environment, accept instructions and report data, among other things. Embedded computing implies that one or more numerical processors are used in the device, to give it the ability to process data and instructions. Together with the processor often are included memory devices to store data, and various types of input and output interfaces used to exchange data with sensors, with an external processor, etc.
A large market exists for embedded computing devices in the transportation field, and in particular in the automotive field. These devices are used to support all aspects of vehicle operations, ranging from the simple control of power windows and timers to sophisticated engine control systems, traction control and anti-lock brake systems. Until recently devices like these were relatively rare and unsophisticated in the automotive field, however consumers more recently have come to expect modern vehicles to incorporate these “smart” systems. The trend for the future is to develop even more of these smart devices to improve the safety, fuel efficiency and performance of modern automobiles.
One drawback of using embedded computing devices is that the processor and all associated components have to be included in the device. Thus additional memory, sensors, power supply, and any other resources required by the processor to carry out its function have to be packaged with the embedded device. This tends to increase the cost and size of the device, which may increase unacceptably the overall cost of the vehicle. It is therefore important to minimize the amount of resources required to obtain the desired functionality. This can be accomplished by using less expensive resources, or by more efficiently utilizing the available resources of the device. In particular, both cost and size of the device may be reduced by controlling the amount of memory required by the processor to carry out its tasks. Less memory required results in fewer, less expensive memory cards, memory chips or storage devices, which impacts favorably on both the ultimate cost and the size of the device.