This article deals with reconfigurable uniprocessor systems powered by a renewable energy source under real-time and resource sharing constraints. A reconfigurable system is defined as a set of implementations, each of which is encoded by real-time periodic software tasks. Reconfiguration is a flexible runtime scenario that adapts the current system’s implementation to any related environment evolution under well-defined conditions. A task is characterized by an effective calculated deadline that should be less than a maximum deadline defined in user requirements. The main problem is how to calculate the effective deadlines of the different periodic tasks in the different implementations under possibly the predicted renewable energy source and the sharing of resource constraints. We propose an offline method based on three solutions to calculate the deadlines of tasks. The first serves to compute the deadlines ensuring the real-time system feasibility and also minimizes the number of context switches by assigning the highest priority to the task with the smallest maximum deadline. The second computes the deadlines ensuring the respect of energy constraints, and the third computes the deadlines ensuring the respect of resource sharing constraints. These three solutions calculate the possible deadlines of each task in the hyperperiod of the corresponding implementations. We develop a new simulator called DEAD-CALC, that integrates a new tool called RANDOM-TASK for applying and evaluating the proposed solutions. The conducted experimentation proves that this methodology provides deadlines with affecting neither the load nor the processor speed while reducing the calculation time. Note to Practitioners —Real-time software is particularly difficult to design since, in addition to ever more complex functional constraints, it has to satisfy a set of stringent nonfunctional requirements, such as deadlines. In fact, the violation of deadlines can lead to breakdowns, data loss, and so on, which can be catastrophic for critical applications. This article presents the DEAD-CALC project for computing efficiently the deadlines of reconfigurable real-time devices to run possibly under energy and resource sharing constraints in all the system implementations. A device, in the software level, is a superset of implementations, each of which (i.e., a set of periodic software tasks) is activated and executed at a particular time according to user requirements. DEAD-CALC reduces the development time by computing the deadlines to be certainly respected without any additional feasibility analysis of the device. The calculation can only consider the real-time aspects, or both the harvesting energy and resource sharing constraints, giving the user the ability to configure the system under different conditions. DEAD-CALC is a visual environment that can be simply used by designers to compute and display these deadlines, with a few clicks, in arranged tables, and in a short time. This project can be a future reference for industrial partners who will be focusing on various real-time applications design, such as the intelligent manufacturing industry, intelligent transportation systems, embedded systems, wireless sensor networks, smart grids, medical control devices, and military platforms.
Read full abstract