Zusammenfassung
Seit Mitte der 1990er Jahre haben Forscher im Embedded Systems Laboratory der Universität von Leicester eine Reihe von Techniken und Werkzeugen entwickelt, die den Entwurf und die Wartung von zuverlässigen eingebetteten Systemen unter gleichzeitiger Berücksichtigung von limitierten Systemressourcen unterstützen, wobei der zentrale Fokus auf zeitgesteuerten Architekturen liegt. Der vorliegende Beitrag zeigt in einer Zusammenfassung wesentliche Aspekte dieser Arbeit.
Summary
Since the mid 1990s, researchers in the Embedded Systems Laboratory at the University of Leicester have developed a range of techniques and tools which support the creation and maintenance of reliable, resource-constrained embedded systems. Central to this work has been a focus on systems with a time-triggered architecture. This paper provides a review of some of this work.
References
Alexander, C. (1979): The timeless way of building. Oxford University Press, NY
Alexander, C., Ishikawa, S., Silverstein, M., Jacobson, M., Fisksdahl-King, I., Angel, S. (1977): A pattern language. Oxford University Press, NY
Allworth, S. T. (1981): An Introduction to real-time software design. Macmillan, London
Athaide, K. F., Pont, M. J., Ayavoo, D. (2008a): Deploying a time-triggered shared-clock architecture in a multiprocessor system-on-chip design. In: Proceedings of the 4th UK Embedded Forum (September 2008, Southampton, UK)
Athaide, K. F., Pont, M. J., Ayavoo, D. (2008b): Shared-clock methodology for time-triggered multi-cores. In: Stepney, S., Polack, F., McEwan, A., Welch, P., Ifill, W. (eds): Communicating Process Architectures 2008. IOS Press
Ayavoo, D., Pont, M. J., Short, M., Parker, S. (2007): Two novel shared-clock scheduling algorithms for use with CAN-based distributed systems. Microprocessors and Microsystems, 31 (5): 326–334
Baker, T. P., Shaw, A. (1989): The cyclic executive model and Ada. Real-Time Systems 1 (1): 7–25
Baruah, S. K. (2006): The non-preemptive scheduling of periodic tasks upon multiprocessors. Real-Time Systems 32 (1–2): 9–20
Bautista-Quintero, R., Pont, M. J. (2008): Implementation of H-infinity control algorithms for sensor-constrained mechatronic systems using low-cost microcontrollers. IEEE Transactions on Industrial Informatics 4 (3): 175–184
Becker, L. B., Gergeleit, M. (2001): Execution environment for dynamically scheduling real-time tasks. RTSS 2001, 22nd IEEE Real-Time Systems Symposium, London, 2001
Becker, L. B., Nett, E., Schemmer, S., Gergeleit, M. (2003): Robust scheduling in team-robotics. 11th Int. Workshop on Parallel and Distributed Real-Time Systems, Nice, France, 2003
Bennett, K., Gold, N., Mohan, A. (2005): Cut the biggest IT cost. The Computer Bulletin 47 (1): 20–21
Bosch, R. G. (1991): CAN specification version 2.0: Robert Bosch GmbH, Postfach 50, D-7000 Stuttgart 1, Germany
Brucker, P., Garey, M. R., Johnson, D. S. (1977) Scheduling equal-length tasks under treelike precedence constraints to minimize maximum lateness. Mathematics of Operations Research 2 (3): 275–284
Buttazzo, G. C. (2005): Rate monotonic vs. EDF: Judgement day. Real-Time Systems 29 (1): 5–26
Cinneide, M. O. and Nixon, P. (2001): Automated software evolution towards design patterns. International Workshop on Principles of Software Evolution (IWPSE), Association for Computing Machinery, Vienna, Austria: 162–165
Cucu. L., Sorel, Y. (2004): Non-preemptive multiprocessor scheduling for strict periodic systems with precedence constraints. In Proc. 23rd Annual Workshop of the UK Planning and Scheduling Special Interest Group, PLANSIG'04, Cork, Ireland, Dec. 2004
Cunningham, W., Beck, K. (1987): Using pattern languages for object-oriented programs. Proc. of OOPSLA'87, Orlando, Florida
Domaratsky, Y., Perevozchikov, M. (2000): Highly dependable time-triggered operating system. Dedicated Systems Magazine, Oct.–Dec. 2000: 77–84
Ekelin, C., Jonsson, J. (2001): Evaluation of search heuristics for embedded system scheduling problems. In: Proc. Int. Conf. Principles and Practice of Constraint Programming, Paphos, Cyprus, 2001: 640–654
Engblom, J. A., Ermedahl, A., Sjoedin, M., Gubstafsson, J., Hansson, H., et al. (2001): Worst-case execution-time analysis for embedded real-time systems. Journal of Software Tools for Technology Transfer 4 (4): 437–455
Gamma, E., Helm, R., Johnson, R., Vlissides, J. (1995): Design patterns: Elements of reusable object-oriented software. Addison-Wesley, Reading, MA
Ganssle, J. (2002): The Art of programming embedded systems, Academic Press, San Diego, USA
Gendy, A. K., Pont, M. J. (2008a): Automatically configuring time-triggered schedulers for use with resource-constrained, single-processor embedded systems. IEEE Transactions on Industrial Informatics 4 (1): 37–46
Gendy, A., Pont, M. J. (2008b): Automating the processes of selecting an appropriate scheduling algorithm and configuring the scheduler implementation for time-triggered embedded systems. Proc. of The 27th Int. Conf. on Computer Safety, Reliability and Security (SAFECOMP08), 22–25 September 2008, Newcastle upon Tyne, UK
Gergeleit, M., Nett, E. (2002): Scheduling transient overload with the TAFT Scheduler. GI/ITG specialized group of operating systems, Berlin, 2002
Hanif, M., Pont, M. J., Ayavoo, D. (2008): Implementing a simple but flexible time-triggered architecture for practical deeply-embedded applications. In: Proc. of the 4th UK Embedded Forum (September 2008, Southampton, UK)
Huang, H., Zhang, S., Cao, J., Duan, Y. (2005): A practical pattern recovery approach based on both structural and behavioral analysis. Journal of Systems and Software 75 (1–2): 69–87
Hughes, Z. H., Pont, M. J. (2004): Design and test of a task guardian for use in TTCS embedded systems. In: Koelmans, A., Bystrov, A., Pont, M. J. (eds): Proc. of the 1st UK Embedded Forum (Birmingham, UK, October 2004): 16– 25. Publ. by Uni. of Newcastle upon Tyne [ISBN: 0-7017-0180-3]
Hughes, Z. M., Pont, M. J., Ong, H. L. R. (2005): The PH Processor: A soft embedded core for use in university research and teaching. In: Koelmans, A., Bystrov, A., Pont, M. J., Ong, R., Brown, A. (eds): Proc. of the 2nd UK Embedded Forum (Birmingham, UK, October 2005): 224–245. Published by University of Newcastle upon Tyne [ISBN: 0-7017-0191-9]
Hughes, Z. M., Pont, M. J. (in press): Reducing the impact of task overruns in resource-constrained embedded systems in which a time-triggered software architecture is employed. Trans Institute of Measurement and Control
Imran, S., Short, M., Pont, M. J. (2008): Hardware implementation of a shared-clock scheduling protocol for CAN: a pilot study. In: Proc. of the 4th UK Embedded Forum (September 2008, Southampton, UK)
Keller, R. K., Schauer, R., Robitaille, S., Page, P. (1999): Pattern-based reverse-engineering of design components, Proc. – Int. Conf. on Software Engineering: 226–235, IEEE, Los Angeles, CA, USA
Kirner, R., Puschner, P. (2003): Discussion of misconceptions about worst-case execution-time analysis. 3rd Euromicro Int. Workshop on WCET Analysis, 2003
Kopetz, H. (1997): Real-Time Systems, Design Principles for Distributed Embedded Applications, Kluwer Academic
Kurian, S., Pont, M. J. (2007): Maintenance and evolution of resource-constrained embedded systems created using design patterns. Journal of Systems and Software 80 (1): 32–41
Liu, C. L., Layland, J. W. (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. Journal of the ACM 20 (1): 40–61
Locke, C. D. (1992): Software architecture for hard real-time systems: Cyclic executives vs. Fixed priority executives. The Journal of Real-Time Systems 4: 37–53
Mearns, D. D. U., Pont, M. J., Ayavoo, D. (2008): Towards Ctt (a programming language for time-triggered embedded systems). In: Proc. of the 4th UK Embedded Forum (September 2008, Southampton, UK)
Muhammad, A., Pont, M. J. (2008): Synchronising tasks in wireless multi-processor environments using a shared-clock architecture: A pilot study. In: Proc. of the 4th UK Embedded Forum (September 2008, Southampton, UK)
Nett, E., Streich, H., Bizzarri, P., Bondavalli, A., Tarini, F. (1996): Adaptive Software Fault Tolerance Policies with Dynamic Real-Time Guarantees. WORDS 96, IEEE Second Int. Workshop on Object-oriented Real-time Dependable Systems, Laguna Beach, California, U.S.A, 1996
Noble, J., Weir, C. (2001): Small Memory Software. Addison Wesley.
Phatrapornnant, T., Pont, M. J. (2006) Reducing jitter in embedded systems employing a time-triggered software architecture and dynamic voltage scaling. IEEE Transactions on Computers 55 (2): 113–124
Pont, M. J. (1998): Control system design using real-time design patterns. Proc. of Control '98 (Swansea, UK), September 1998: 1078–1083
Pont, M. J. (2000): Designing and implementing reliable embedded systems using patterns. In: Dyson, P., Devos, M. (eds): EuroPLoP '99: Proc. of the 4th European Conf. on Pattern Languages of Programming and Computing, 1999. ISBN 3-87940-774-6, Universitätsverlag Konstanz
Pont, M. J. (2001): Patterns for Time-Triggered Embedded Systems: Building Reliable Applications with the 8051 Family of Microcontrollers. Addison-Wesley/ACM Press. ISBN: 0-201-331381. Available for download from: http://www.tte-systems.com/books/pttes/
Pont, M. J. (2003): Supporting the development of time-triggered co-operatively scheduled (TTCS) embedded software using design patterns. Informatica 27: 81–88
Pont, M. J., Ong, R. H. L. (2002): Using watchdog timers to improve the reliability of single-processor embedded systems: Seven new patterns and a case study. In: Hruby, P, Soressen, K. E. (eds): Proc. of the First Nordic Conf. on Pattern Languages of Programs, 2002: pp. 159–200
Pont, M. J., Mwelwa, C. (2003): Developing reliable embedded systems using 8051 and ARM processors: Towards a new pattern language. Paper presented at the Second Nordic Conf. on Pattern Languages of Programs, (VikingPLoP "2003"), Bergen, Norway, September 2003
Pont, M. J., Banner, M. P. (2004) Designing embedded systems using patterns: A case study. Journal of Systems and Software 71 (3): 201–213
Pont, M. J., Li, Y., Parikh, C. R., Wong, C. P. (1999): The design of embedded systems using software patterns. Proc. of Condition Monitoring 1999 (Swansea, UK), April 12–15, 1999: 221–236
Pont, M. J., Norman, A. J., Mwelwa, C., Edwards, T. (2004): Prototyping time-triggered embedded systems using PC hardware. In: Henney, K., Schutz, D. (eds): Proc. of the Eighth European Conf. on Pattern Languages of Programs (EuroPLoP 8), Germany, June 2003: 691–716. Published by Universitätsverlag Konstanz. ISBN 3-87940-788-6
Pont, M. J., Kurian, S., Wang, H., Phatrapornnant, T. (2007): Selecting an appropriate scheduler for use with time-triggered embedded systems. Paper presented at the 12th European Conf. on Pattern Languages of Programs (EuroPLoP 2007)
Puschner, P. (2002): Is WCET analysis a non-problem? Towards new software and hardware architectures. 2nd Intl. Workshop on Worst Case Execution Time Analysis, Vienna, Austria, 2002
Sheikh, I., Short, M., Pont, M. J. (2008): Hardware implementation of a shared-clock scheduling protocol for CAN: A pilot study. In: Proc. of the 4th UK Embedded Forum (September 2008, Southampton, UK)
Short, M., Pont, M. J. (2008): Assessment of high-integrity embedded automotive control systems using Hardware-in-the-Loop simulation. Journal of Systems and Software 81 (7): 1163–1183
Tindell, K., Burns, A., Wellings, A. (1992): Allocating hard real-time tasks: An NP-hard problem made easy. Real-Time Systems 4 (2): 145–165
Vallerio, K. S., Jha, N. K. (2003): Task graph extraction for embedded system synthesis. Proc. 16th Int. Conf. on VLSI Design concurrently with the 2nd Int. Conf. on Embedded Systems Design, 2003: 480–486
Vidler, P. J., Pont, M. J. (2006): Computer assisted source-code parallelisation. In: Gavrilova, M., Gervasi, O., Kumar, V., Tan, C. J. K., Taniar, D., Laganà, A., Mun, Y., Choo, H. (eds): Proc. of the IEE Int. Conf. on Computational Science and its Applications (Glasgow, May 8–11, 2006), Part V. Lecture Notes in Computer Science (LNCS), 3984: 22–31
Wang, H., Pont, M. J. (2008): Design and implementation of a static pre-emptive scheduler with highly predictable behaviour. In: Proc. of the 4th UK Embedded Forum (September 2008, Southampton, UK)
Wang, H., Pont, M. J., Kurian, S. (2007): Patterns which help to avoid conflicts over shared resources in time-triggered embedded systems which employ a preemptive scheduler. Paper presented at the 12th European Conf. on Pattern Languages of Programs (EuroPLoP 2007)
Xu, J., Parnas, D. L. (1992): Pre-run time scheduling processes with exclusion relations on nested or overlapping critical sections. 11th IEEE Int. Phoenix Conf. Computers and Communications, Scottsdale, AZ, USA, 1992: 774–782
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Pont, M. Applying time-triggered architectures in reliable embedded systems: challenges and solutions. Elektrotech. Inftech. 125, 401–405 (2008). https://doi.org/10.1007/s00502-008-0587-z
Received:
Accepted:
Issue Date:
DOI: https://doi.org/10.1007/s00502-008-0587-z