Traditional methods for teaching the design of embedded systems usually deal with either a hardware or a software view of the system. In computer science it is mostly the software view. The hardware issues taught mostly deal with CPU based systems only and seldom with reconfigurable hardware. We recommend having a more general view at embedded systems in the way that it is always a programmable hardware platform (CPU based or reconfigurable hardware) which has to be programmed in a suitable programming language. In this context we offer a lab course where students should get familiar with different hardware platforms used in embedded systems. They should solve the same task both with a CPLD and a microcontroller each in order to clarify the differences between the two implementations. In this paper our experiences in this field of embedded systems education are described as well as our plans to continue.
Design Patterns, which give abstract solutions to commonly recurring design problems, have been widely used in the software and hardware domain. As non-functional requirements are an important aspect in the design of safety-critical embedded systems, this work focuses on the integration of non-functional implications in an existing design pattern concept. We propose a pattern representation for safety-critical embedded application design methods by including fields for the implications and side effects of the represented design pattern on the non-functional requirements of the overall systems. The considered requirements include safety, reliability, modifiability, cost, and execution time
The concept of design patterns has been widely used in the software and hardware domain. Several fault tolerance patterns have been proposed to document widely used fault tolerance methods. In this paper, we propose a new software fault tolerance pattern, which is called Recovery Block with Backup Voting pattern. This pattern can be used to improve the software reliability of the classical recovery block pattern in applications in which the construction of an effective acceptance test can not be guaranteed. In order to represent the new pattern, we use a pattern representation that focuses on the nonfunctional consequences of the design patterns on safety critical embedded systems. These nonfunctional consequences contain: safety, reliability, modifiability, cost, and execution time. Among other side effects, the implications part of the new pattern shows that it is resulting in higher reliability than the classical recovery block with relatively low additional hardware cost.
From the functionality point of view, FPGAs became very interesting for industrial applications. Reasons are the constantly decreasing costs of microelectronics and improvements in the corresponding design tools as well as the increasing need of complex real-time functionalities in these applications. However, other non-functional requirements have to be considered. Therefore, the potentials of FPGAs for industrial applications are considered in this paper on basis of hardware attributes representing the contribution of these systems to system qualities as for example performance, reliability and marketability.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.