Real-Time Systems. Design Principles for Distributed Embedded Applications. Herman Kopetz. Second Edition (811374), страница 62
Текст из файла (страница 62)
Furthermore, an integratedresource management strategy that considers timeliness requirements and energyrequirements in a holistic manner is followed.Whenever hardware resources (processors, memory, caches) are shared amongnearly independent processes, the implicit interactions (e.g., arbitration, cachereloading, processor switching) increase the energy consumption and make timeand energy estimation more difficult.The non-availability of a generally accepted architectural style for embeddedsystems leads to many property mismatches at the interfaces among subsystems(e.g., big-endian vs. little-endian) that must be reconciled by the system software,leading to necessary but unproductive glue software which consumes valuableenergy when executed.8.4.2Application SoftwareAlgorithm Design.
An algorithm that has been developed from the point of view ofoptimal time performance will be different from an algorithm that is developedfrom the point of view of optimal energy performance. In contrast to best-effortsystems, where the average execution time of an algorithm is optimized, in realtime systems, the worst-case execution time of an algorithm is of relevance.In many real-time applications, such as multimedia or control applications, thereis not always a need for precise results – good approximate results will suffice.Finding algorithms that give a good approximate result under energy constraints is arelevant research topic (see also Sect. 10.2.3 on anytime algorithms).In cloud computing, where some tasks are processed in the cloud (the servers inthe cloud run on power available from the electric utility) and some tasks arecomputed locally in a battery-operated mobile device, the tradeoff between theenergy requirement of the algorithms for the local computations and the energyrequirement for the transmission of data to and from the cloud is an importantarchitectural design issue.
Appropriate design tools must support the design exploration of different task allocation strategies to the cloud or to the mobile device.Algorithm Analysis. Many embedded applications contain a computationally intensive algorithmic segment, called a computational kernel. Profiling the execution ofa program that implements an algorithm can identify the computational kernel. If acomputational kernel is isolated into a self-contained component that puts allelements of the computational kernel (e.g., processing engine, memory) physicallyand temporally close together in an IP-core, then the effective capacity Ceff of theexecution environment can be reduced, thus saving energy.
If an identified8.5 Energy Sources209computational kernel is mature, does not change, and is used by many applications,then it can be transformed to an ASIC IP-core of an MPSoC, resulting in orders ofmagnitude energy savings.Data Structures. The significant energy cost for memory access can be reduced bythe design of data-structures that are optimized from the point of view of energyefficiency for the specified use cases. For example, a strictly binary time-format,which can be implemented with a binary counter requires much less energy tooperate than a time-format that is based on the Gregorian Calendar.8.4.3Software ToolsNext to the system software, compilers have an important role to play in the designof low-energy systems.
Energy aware compilers can select the instructions for thetarget code on the basis of their energy requirements. The energy-aware allocationof registers is another important issue, since the register file of modern processors isquite energy intensiveSystem designers need tools to estimate the power consumption at an early stageof the design. These tools must be flexible to support different target architectures inorder that design explorations can be carried out. They should be smoothlyintegrated in the design environment.8.5Energy SourcesThere are three main sources of energy that drive embedded systems: energy fromthe power grid, energy from a battery, or energy harvested from the environment.8.5.1BatteriesTable 8.3 depicts the nominal energy content of different disposable and rechargeable batteries.
The actual amount of energy that can be retrieved from a batterydepends on the discharge pattern. If the requested battery power is highly irregular,the battery efficiency is reduced and the actual energy that can be drawn out of abattery can be less than half of the nominal energy [Mar99]. The discharge level ofa rechargeable battery has an influence on the lifetime of the battery, i.e., thenumber of times the battery can be recharged before it breaks down.The efficiency of a rechargeable battery, i.e., the relation energy-input-forcharging and energy-output-for-use of well-managed batteries is between 75%and 90% under the assumption that during the charging phase and the use phasethe power that flows into and out of the battery is carefully controlled and matchedto the electrochemical parameters of the battery. If an application has highly2108 Power and Energy AwarenessTable 8.3 Energy content of batteriesBattery typeVoltage (V)AA (disposable)1.5AAA (disposable)1.5Button cell CR2032 (disposable) 3NiCd (rechargeable)1.2Lead acid (rechargeable)2.1Lithium ion (rechargeable)3.6Ultra-capacitor(Gasoline)Energy density (J/g)670587792140140500Up to 10044,000Mass (g)2311.53Energy (J)15,3906,7502,376irregular power characteristics, then an intermediate energy storage device, such asan ultra-capacitor, must be provided to smoothen the power flow in and out of thebattery.
An ultra-capacitor is an electro-chemical capacitor that has a high energydensity when compared to conventional capacitors. It can be used as an intermediate energy storage device to buffer large power-spikes over a short time.Example: Let us consider an electric car (example of Sect. 8.1.1) that is driven at a speedof 30 m/s (108 km/h). All of a sudden the car has to brake abruptly and come to a stopwithin 5 s. If regenerative brakes transform the kinetic energy of 450 kJ to electric energywith an efficiency of 60%, a power spike of 54 kJ/s will develop for 5 s – corresponding to acurrent of 135 A in a 400 V system. If the battery cannot absorb this power spike in such ashort time, then an ultra-capacitor must be placed between the brakes and the battery tosmoothen the flow of power back into the battery.
It is up the embedded control system tocontrol the power-flow in and out of the ultra-capacitor and into the battery.In the last line of Table 8.3 we denote, for comparison purposes, the chemicalenergy content of gasoline. Although only at best a third of this chemical energy canbe converted to electrical energy – e.g., by a motor generator set – it is seen that theenergy density of gasoline per unit weight is still more than an order of magnitudehigher than that of the most efficient battery.8.5.2Energy HarvestingThe term energy harvesting refers to techniques that transform ambient energy (e.g.,light, temperature gradients, electric fields, mechanical motion, vibrations, wind,etc.) to electric energy that can be used to drive low-power electronic devices, suchas a wearable computer or a node in a sensor network. The harvested energy is storedin a battery that provides a steady flow of current to power the electronic device.For example, under optimal sunlight conditions photovoltaic cells can produce15 mW/cm2.
Small thermocouples that convert body heat into electricity cangenerate 40 mW at 3 V with a 5 C temperature gradient. Piezoelectric transducerscan convert mechanical energy, e.g., vibration or acoustic noise, to electric energy.In an RFID tag, the receiver circuit is powered by energy harvested from the electricfield of the sender. A typical RFID tag has a power budget of 10 mW (see Table 13.1).Points to Remember211An electronic device that is powered by energy from its environment becomesnearly autonomous and can provide a useful service for a long unattended period.Wireless sensor nodes that operate robustly and autonomously with energy harvested from their environment without any battery are useful in many applications:industrial control, environmental monitoring, surveillance, medical devices that areimplanted into the body, and many more.
The development of efficient transducersto capture the ambient energy and the design of low-power electronics that managesthe energy harvesting process is an active research topic.Points to RememberllllllllllEnergy is defined as the capability of performing work. Power refers to theintensity of work. Energy is the integral of power over time. Although power andenergy savings are closely related, they are not the same.Energy that is needed by a computing device to execute a program can be expressedas the sum of the following four terms: Etotal ¼ Ecomp + Emem + Ecomm + EIOwhere Etotal is the total energy needed, Ecomp denotes the energy needed to performthe computations in a CMOS VLSI circuit, Emem denotes the energy consumed bythe memory subsystem, Ecomm denotes the energy required for the communication,and EIO is the energy consumed by I/O devices, such as a screen.The dynamic energy needed to run a program with N instructions is given byE ¼ Ceff V2N where Ceff is the effective capacitance of an instruction, V is thesupply voltage, and N denotes the number of instructions that must be executed.The exponential growth of the leakage current with rising temperature is ofmajor concern in a submicron device with a low threshold voltage.The asymmetry of the energy requirements of a sender and a receiver has adecisive influence on the design of communication protocols between a basestation connected to the power grid and an energy-constrained mobile batterypowered device.In memory-intensive applications, the energy that is required to access thememory subsystems can be larger than the energy needed for the computations.A high substrate temperature has a negative effect on the reliability of a VLSIdevice and can cause transient and permanent failures.