This Article 
 Bibliographic References 
 Add to: 
Reducing Jitter in Embedded Systems Employing a Time-Triggered Software Architecture and Dynamic Voltage Scaling
February 2006 (vol. 55 no. 2)
pp. 113-124
We have previously demonstrated that use of an appropriate Dynamic Voltage Scaling (DVS) algorithm can lead to a substantial reduction in CPU power consumption in systems employing a time-triggered cooperative (TTC) scheduler. In this paper, we consider the impact that the use of DVS has on the levels of both clock and task jitter in TTC applications. We go on to describe a modified DVS algorithm (TTC-jDVS) which can be used where low jitter is an important design consideration. We then demonstrate the effectiveness of the modified algorithm on a data set made up of artificial tasks and in a realistic case study.

[1] Ashling Microsystems, “LPC2000 Evaluation and Development Kits Datasheet,” , 2003.
[2] D. Ayavoo, M.J. Pont, and S. Parker, “Using Simulation to Support the Design of Distributed Embedded Control Systems: A Case Study,” Proc. UK Embedded Forum 2004, pp. 54-65, 2004.
[3] T.P. Baker and A. Shaw, “The Cyclic Executive Model and Ada,” Real-Time Systems, vol. 1, no. 1, pp. 7-25, 1989.
[4] I.J. Bate, “Introduction to Scheduling and Timing Analysis,” The Use of Ada in Real-Time System, IEE Conf. Publication 00/034, 2000.
[5] T.D. Burd, T.A. Pering, A.J. Stratakos, and R.W. Brodersen, “A Dynamic Voltage Scaled Microprocessor System,” IEEE J. Solid-State Circuits, vol. 35, no. 11, pp. 1571-1579, 2000.
[6] F. Cottet and L. David, “A Solution to the Time Jitter Removal in Deadline Based Scheduling of Real-Time Applications,” Proc. Fifth IEEE Real-Time Technology and Applications Symp., pp. 33-38, 1999.
[7] K. Flautner, D. Flynn, and M. Rives, “A Combined Hardware-Software Approach for Low-Power SoCs: Applying Adaptive Voltage Scaling and Intelligent Energy Management Software,” Proc. System-on-Chip and ASIC Design Conf. (DesignCon 2003), 2003.
[8] J.R. Hampton, The ECG Made Easy, fifth ed. Churchill Livingstone, 1998.
[9] HandyWave, “HCS-100 HandyCore-Serial User's Manual Version 2.0,” http://www.handywave.comindex3.htm, 2004.
[10] H.H. Hellmich, A.T. Erdogan, and T. Arslan, “Re-Usable Low Power DSP IP Embedded in an ARM Based SoC Architecture,” Proc. IEE Colloquium Intellectual Property, pp. 10/1-10/5, 2000.
[11] National Instruments, “NI PCI-6035E datasheet,” pdf , 2000.
[12] National Instruments, “LabView: User Manual,” com/pdf/manuals320999d.pdf , 2001.
[13] A.J. Jerri, “The Shannon Sampling Theorem: Its Various Extensions and Applications a Tutorial Review,” Proc. IEEE, vol. 65, pp. 1565-1596, 1997.
[14] S.A. Key, M.J. Pont, and S. Edwards, “Implementing Low-Cost TTCS Systems Using Assembly Language,” Proc. Eighth European Conf. Pattern Languages of Programs (EuroPLoP 2003), pp. 667-690, 2003.
[15] H. Kopetz, Real-Time Systems: Design Principles for Distributed Embedded Applications. Kluwer Academic, 1997.
[16] Lattice Semiconductor Corp., “In-System Programmable Clock Generator,” index.cfm, 2005.
[17] S. Lee and T. Sakurai, “Run-Time Voltage Hopping for Low-Power Real-Time Systems,” Proc. Design Automation Conf., pp. 806-809, 2000.
[18] S. Lee, S. Yoo, and K. Choi, “An Intra-Task Dynamic Voltage Scaling Method for SoC Design with Hierarchical FSM and Synchronous Dataflow Model,” Proc. Int'l Symp. Low Power Electronics and Design (ISLPED 2002), pp. 84-87, 2002.
[19] K.J. Lin and A. Herkert, “Jitter Control in Time-Triggered Systems,” Proc. 29th Hawaii Int'l Conf. System Sciences (HICSS '96), pp. 451-459, 1996.
[20] C.D. Locke, “Software Architecture for Hard Real-Time Applications: Cyclic Executives vs. Fixed Priority Executives,” Real-Time Systems, vol. 4, pp. 37-52, 1992.
[21] J.R. Lorch and A.J. Smith, “Improving Dynamic Voltage Scaling Algorithms with PACE,” Proc. SIGMETRICS, pp. 50-61, 2001.
[22] P. Mart, J.M. Fuertes, R. Vill, and G. Fohler, “On Real-Time Control Tasks Schedulability,” Proc. European Control Conf. (ECC01), pp. 2227-2232, 2001.
[23] P. Martí, J.M. Fuertes, K. Ramamritham, and G. Fohler, “Jitter Compensation for Real-Time Control Systems,” Proc. 22nd IEEE Real-Time Systems Symp. (RTSS '01), pp. 39-48, 2001.
[24] N. Nissanke, Realtime Systems. Prentice-Hall, 1997.
[25] T. Nolte, H. Hansson, and C. Norström, “Minimizing CAN Response-Time Jitter by Message Manipulation,” Proc. IEEE Real Time Technology and Applications Symp. 2002, pp. 197-206, 2002.
[26] T. Pering, T. Burd, and R. Brodersen, “The Simulation and Evaluation of Dynamic Voltage Scaling Algorithms,” Proc. Int'l Symp. Low Power Electronics and Design, pp. 76-81, 1998.
[27] T. Phatrapornnant and M.J. Pont, “The Application of Dynamic Voltage Scaling in Embedded Systems Employing a TTCS Software Architecture,” Proc. UK Embedded Forum 2004, pp. 127-143, 2004.
[28] T. Phatrapornnant and M.J. Pont, “The Application of Dynamic Voltage Scaling in Embedded Systems Employing a TTCS Software Architecture: A Case Study,” Proc. IEE/ACM Postgraduate Seminar on System-On-Chip Design, Test, and Technology, pp. 3-8, 2004.
[29] Philips Semiconductors, “LPC2104/2105/2106: Single-Chip 32-Bit Microcontrollers,” acrobat/ datasheetsLPC2104_2105_2106-04.pdf , 2003.
[30] P. Pillai and K.G. Shin, “Real-Time Dynamic Voltage Scaling for Low-Power Embedded Operating Systems,” Proc. ACM Symp. Operating Systems Principles, pp. 89-102, 2001.
[31] M.J. Pont, Patterns for Time-Triggered Embedded Systems: Building Reliable Applications with 8051 Family of Microcontrollers. Addison-Wesley, 2001.
[32] M.J. Pont, Embedded C. Addison-Wesley, 2002.
[33] M.J. Pont and M.P. Banner, “Designing Embedded Systems Using Patterns: A Case Study,” J. Systems and Software, vol. 74, no. 3, pp. 201-213, 2004.
[34] J. Pouwelse, K. Langendoen, and H. Sips, “Energy Priority Scheduling for Variable Voltage Processors,” Proc. Int'l Symp. Low Power Electronics and Design, pp. 28-33, 2001.
[35] M. Sanfridson, “Timing Problems in Distributed Real-Time Computer Control Systems,” Mechatronics Lab, Dept. of Machine Design, Royal Inst. of Technology, Stockholm, 2000.
[36] M.T. Schmitz and B.M. Al-Hashimi, “Low Power Process Assignment for Distributed Embedded Systems Using Dynamic Voltage Scaling,” Proc. IEE Hardware-Software Co-Design, pp. 7/1-7/4, 2000.
[37] A.C. Shaw, Real-Time Systems and Software. New York: John Wiley, 2001.
[38] M. Torngren, “Fundamentals of Implementing Real-Time Control Applications in Distributed Computer Systems,” Real-Time Systems, vol. 14, pp. 219-250, 1998.
[39] N.J. Ward, “The Static Analysis of a Safety-Critical Avionics Control System,” Air Transport Safety: Proc. Safety and Reliability Soc. Spring Conf., D.E. Corbyn and N.P. Bray, eds., 1991.
[40] M. Weiser, B. Welch, A. Demers, and S. Shenker, “Scheduling for Reduced CPU Energy,” Proc. First Symp. Operating Systems Design and Implementation, 1994.
[41] F. Zhang and S.T. Chanson, “Processor Voltage Scheduling for Real-Time Tasks with Non-Preemptible Sections,” Proc. IEEE Real-Time Systems Symp., pp. 235-245, 2003.
[42] Y. Zhu and F. Mueller, “Feedback EDF Scheduling Exploiting Dynamic Voltage Scaling,” Proc. IEEE Real-Time and Embedded Technology and Applications Symp. 2004, pp. 84-93, 2004.

Index Terms:
Index Terms- Low power design, scheduling, real-time systems and embedded systems.
Teera Phatrapornnant, Michael J. Pont, "Reducing Jitter in Embedded Systems Employing a Time-Triggered Software Architecture and Dynamic Voltage Scaling," IEEE Transactions on Computers, vol. 55, no. 2, pp. 113-124, Feb. 2006, doi:10.1109/TC.2006.29
Usage of this product signifies your acceptance of the Terms of Use.