September 12th, 2014

Sharif University of Technology

Tehran, Iran
Alireza Ejlali

Alireza Ejlali, Ph.D, Associate Professor

Director of laboratory
Amin Fos`hati
Amin Fos`hati

Thesis System-Level Approaches to Reduce Physical Overheads in Cyber-Physical Systems

Abstract Nowadays, many systems involve tight conjoining of physical/mechanical and computational/cyber parts that are called Cyber-Physical Systems (CPSs). Examples of such systems are automobile systems, medical systems, industrial control systems, robots, smart grids, etc. Many CPS systems require high levels of reliability as they are used in safety-critical applications. To achieve reliability, we intrinsically depend on redundancy, but redundant physical components can lead to high costs, power/energy consumption, system volume, etc. Therefore, physical overhead is a prominent issue in reliable cyber-physical systems. This has been our motivation to adopt an alternative approach. The proposed approach is based on the idea that the abundance of processing systems and suitable network coverage in modern CPSs can provide a means to have a shift in the type of redundancy.

Mahdi Bahreiny
Mahdi Bahreiny

Thesis 

Abstract 

AmirReza Moezi
AmirReza Moezi

Thesis 

Abstract 

Elyas Oustad
Elyas Oustad

Thesis 

Abstract 

Fatemeh Rafieezadeh
Fatemeh Rafieezadeh

Thesis 

Abstract 

Shiva Rezazad
Shiva Rezazad

Thesis Improving the Reliability of Engine Control Units in Vehicles Using Software Methods

Abstract With the increasing number of electronic components in modern cars, the importance of their proper functioning has become increasingly important. One of the most important parts of cars is the engine control unit, which is responsible for controlling and monitoring the actuators of the car. Automotive systems are cyber-physical in nature, so their computational power can be used to improve the reliability of the car. On the other hand, automotive systems are also safety-critical systems, and any fault in their components can cause system failure and a disaster. As a result, the reliability of these systems is highly important. The purpose of this study is to use low-cost methods, which are usually software methods, to improve the reliability of the automotive engine control unit. We will also evaluate the reliability of the automotive engine control unit in this study to determine how much the proposed methods have improved the reliability of the system compared to the case where the method has not been used.

Amir Hossein Ansari
Amir Hossein Ansari

Thesis Peak-Power-Aware Hybrid Fault-Tolerant Technique in Multicore Embedded systems

Abstract High reliability is one of the goals of safety-critical embedded systems, which can be achieved using the hybrid fault-tolerant technique. Although the hybrid fault-tolerant techniques increase the reliability of the system, if they are not used intelligently, the peak power constraint and system temperature threshold may be violated. Most of the previous works in this field have used fault-tolerant techniques in the offline phase, which have their own disadvantages. Among their disadvantages, we can mention the low reliability of the voter or the low fault coverage of standby-sparing and task repetition methods. Therefore, in this thesis, hybrid fault-tolerant techniques are supposed to be considered to increase the reliability of embedded systems, which can solve the mentioned challenges as much as possible. This is also given to manage the peak power consumption in these types of systems. Therefore, a peak-power-aware hybrid fault-tolerant technique is proposed, which improves the reliability of the system in the offline and online phases for safety-critical embedded systems.

Madhi Ghassab
Madhi Ghassab

Thesis 

Abstract 

Mahsa Farahani
Mahsa Farahani

Thesis Embedded software reliability analysis by simulation-based fault injection

Abstract Nowadays, embedded software, particularly firmware (specifically, UEFI firmware), has gained significant importance. These software programs differ from conventional software (e.g., running on laptops, desktops, or servers) in several ways, including direct hardware interaction, state-oriented behavior, lack of computational complexity hierarchy, precise timing requirements, less reliance on object-oriented approaches, cycle-based structures, code size importance after compilation, and more. The coding of such firmware even bears resemblance to Hardware Description Languages (HDL), with features like unacceptable indefinite loops during execution. However, if issues arise during the execution of these software programs, they can have severe consequences, especially since embedded software is utilized in critical and safety-critical systems. Today, these firmwares exist even within laptops, desktops, and servers, controlling their operations. While research on fault injection in embedded software has been conducted using various techniques, there is still much work to be done in this field. The proposed method for fault injection in this research is simulation-based, utilizing simulators like QEMU or Simics.

Mahdi Barati
Mahdi Barati

Thesis  Decentralized Machine Learning-Based Resource Management in Fog-Edge Environments

Abstract Federated learning is a distributed machine learning strategy that enables training a global model by learning from multiple decentralized edge clients. This approach offers advantages, such as scalability and data privacy. However, in fog-edge environments where devices have limited resources, resource management becomes crucial. The Internet-of-Things (IoTs) enabled devices, e.g., robots, drone, and embedded devices, may have limited computational capabilities, low bandwidth and limited storage capacity. Embedded devices typically have a limited available energy. For instance, smart-phones and many IoT nodes are battery-powered. Consequently, energy-efficient training is essential to reach a high accuracy. The goal of this thesis is to develop energy-efficient techniques for federated learning. This could be, for instance, client selection, which needs to determine for each client when it should be active during training. The developed techniques can be evaluated on an existing distributed platform with several embedded devices, such as NVIDIA Jetson Nano and Raspberry Pi.

Amin Ghasempour
Amin Ghasempour

Thesis Design and Implementation of a watchdog processor using BMC for remote reliability management

Abstract The integration of Baseboard Management Controllers (BMC) with watchdog processor functionality presents a compelling approach to enhancing server fault tolerance. By leveraging the high-level access and robust sensor array inherent to BMCs, this project aims to create a more efficient and cost-effective means of monitoring for concurrent faults within a server system. The utilization of BMCs, which are typically ARM-based computers running a Linux operating system, circumvents the need for additional hardware investments, as their existing capabilities are repurposed for system oversight. This method not only promises to improve the reliability and availability of servers but also aligns with the critical need for high accessibility in server operations. The practical application and assessment of this technique on an actual server will provide valuable insights into its effectiveness and potential for broader adoption in the field of server management and maintenance.

Ahmad Saleh Esfahani
Ahmad Saleh Esfahani

Thesis 

Abstract 

Seyed Mohammadreza Hosseini
Seyed Mohammadreza Hosseini

Thesis 

Abstract 

Yasamin Tavakoli
Yasamin Tavakoli

Thesis 

Abstract 

Mehran Taghavi
Mehran Taghavi

Thesis 

Abstract 

Hooman Keshvari
Hooman Keshvari

Thesis Proof of concept for UEFI exploits

Abstract 

Hirbod Behnam
Hirbod Behnam

Thesis 

Abstract 

Behnaz Ranjbar
Behnaz Ranjbar

Thesis  Power Management in Mixed-criticality Systems

Abstract   Mixed-Criticality (MC) systems have recently been devised to address the requirements of real-time systems in several industries, e.g. avionics, automotive and medical devices. The use of multi-core processors in MC systems can result in more integration. Scheduling MC tasks to satisfy requirements of real-time systems is one of the most important issues, especially in multi-core embedded systems. MC systems usually have two operation modes that are high-criticality and low-criticality modes. The system initially operates in the low-criticality mode and if the execution time of high-criticality tasks exceeds their lowest WCET, these tasks are overrun and the system switches to the high-criticality mode. In such critical situations, the system may be overloaded and catastrophe may occur. In this research, scheduling methods are proposed at the system level to manage power in MC multi-core systems.

Ali Hosseinghorban
Ali Hosseinghorban

Thesis  Energy management in energy harvesting systems equipped with nonvolatile memories

Abstract   Forward-progress, energy consumption, and capacitor size are the most important design constraints of energy harvesting systems. Nowadays, emerging nonvolatile processors equipped with hybrid volatile and nonvolatile memory, improve latency and energy consumption of execution and check-pointing in these systems. Thus, these energy harvesting systems can operate even with a small energy buffer, but on the other hand, to successfully execute long-running applications on an energy harvesting system with an unreliable energy source and a small energy buffer, the system needs to back up the state of the processor multiple times during execution of the applications. The check-pointing policy, which specifies the number, place, time, and the data to be backed up, has a major effect on energy consumption and forward-progress in the energy harvesting systems. In this research, we will evaluate the overheads and shortcomings of the state of the art approaches and propose novel techniques for improving energy consumption, check-pointing overheads, forward-progress, and energy buffer size in energy harvesting systems. Furthermore, we will propose a framework to decide the backup locations in the application to balance between the backup overheads and size of the energy buffer, a data structure or memory architecture to reduce the time and energy overhead of execution, backup, and restore in the energy harvesting systems.

Mohsen Ansari
Mohsen Ansari

Thesis  System-Level Power Management in Fault-Tolerant Embedded Systems

Abstract   Multicore platforms provide great opportunity for implementation of fault-tolerance techniques to achieve high reliability in real-time embedded systems. In spite of the huge potential for fault-tolerant techniques in multicore platforms, due to the Thermal Design Power (TDP) constraint, designers of fault-tolerant embedded systems face a challenge in deciding how to use them. TDP is considered as the highest sustainable power that a chip can dissipate without triggering any performance throttling mechanisms, e.g. Dynamic Thermal Management (DTM). If a chip temperature violates its TDP, it automatically restarts or significantly reduces its efficiency to prevent permanent damage. The continually increase in the degree of integration along with using fault-tolerant techniques can increase power consumption and rise the peak power which can lead to violate the TDP constraint. In this research, we aim at considering effects of fault-tolerant techniques on the power consumption in real-time embedded systems.

Reza Narimani
Reza Narimani

Thesis  Thermal-aware power/energy optimization in heterogeneous multi-core embedded systems, Approximate c

Abstract   Recent embedded systems adopt high performance processors to support various applications. As an important side effect, higher performance inevitably leads to power density increase, eventually resulting in thermal problems. An approach to reduce embedded system's temperature is approximate computing. For example in real-time task scheduling, tasks can be divided into different versions(low quality versions and high quality versions). low quality tasks can be used to meet thermal constraint and high quality tasks can be used to meet performance constraint

Bardia Safaei
Bardia Safaei

Thesis  Low Power and Reliable Routing Protocol for Internet of Things

Abstract   Internet of Things (IoT) is a system comprising a communicative infrastructure which connects an enormous amount of identified, low-power embedded devices through exploitation of Internet and communication technologies without human intervention. The potential applications of IoT are ample, starting from smart homes to smart cities. In this context, the Low Power and Lossy Networks (LLNs) play an essential role to underpin the deployment infrastructure for IoT. Thus, the different international standardization bodies such as IETF, IEEE, 3GPP standardized new protocols to meet the requirements and emerging applications of IoT. Data transmission in harsh environments via dynamic and lossy wireless links is inherently unreliable, leading to excessive retransmissions, large amount of energy consumption and long occupation time of the shared wired and wireless medium. Therefore, reliable and energy-efficient data delivery has to be considered as two important aspects of IoT applications. Hence, routing is of paramount importance for LLNs, as data has to be relayed via tremendous number of resource constraint embedded devices. The pervasiveness of LLNs in IoT applications calls for effective routing solutions to provide ubiquitous connectivity for tremendous number of low-cost and low-power embedded devices. Existing LLNs routing protocols can be categorized into: reactive (on-demand) routing, proactive routing and geographic routing. Our goal is to consider the resource constraints and dynamic attributes of the wireless environment and to research towards finding a more energy-efficient, reliable, stable, and scalable routing in IoTs.

Mostafa Bazzaz
Mostafa Bazzaz

Thesis   Memory Management and Architecture in Embedded Systems for Energy Efficiency

Abstract   Today, memories are responsible for a considerable portion of energy consumption in embedded systems, mainly because of their static leakage power consumption. Memories used in embedded systems are usually based on either SRAM (mostly used on-chip as cache or scratchpad memory) or DRAM (mostly used off-chip as main memory). The high leakage power of these memories (especially SRAM) can not be ignored which has persuaded researchers to find alternative solutions. In recent years, non-volatile memories have attracted researcher's attention because their leakage power is much lower as compared to conventional memories like SRAM. The two most promising alternatives are PCM and STT-RAM. In this project, we propose new solutions for reducing the energy consumption of embedded systems by improving the memory architecture and/or using non-volatile memories. Furthermore, we study the effect of limited endurance of these memories on embedded systems and how their other characteristics such as slower write operation can affect systems with real-time constraints.

Mostafa Jafari Nodoushan
Mostafa Jafari Nodoushan

Thesis  System Level Thermal Management for Real-time Embedded Systems

Abstract   The continuous increase of chip complexity with shrinking feature sizes, has led to more power density in modern processors. This subject has posed tremendous challenges on removing the generated heat from the chip and prevent it from overheating. High temperature directly affects the chip reliability and lifetime which are crucial in safety-critical embedded systems. It has been shown that a 10ºc reduction of peak temperature cab double the lifetime of the chip. However the use of fan and expensive advanced packaging techniques is not common in these systems and so the amount of heat that can be removed from the chip is limited. The main purpose of this research is to propose novel system level temperature management techniques to control temperature within an admissible range while considering other systems criteria like tasks deadlines.

Mohammad Taghi Teimoori
Mohammad Taghi Teimoori

Thesis  Exploiting Approximate Memories in Embedded Systems

Abstract   Approximate computing (AC) is a promising paradigm in low power design and high performance design for computing systems especially for embedded systems. Most of the previous studies in AC have focused on arithmetic and logic unit. However, memories are a main contributors to system energy consumption and performance. In this project, we investigate techniques to improve the energy consumption and performance of embedded systems by exploiting approximate volatile and non-volatile memories.

Morteza Mohajjel
Morteza Mohajjel

Thesis  Reducing worst case execution time of tasks in multicore real-time embedded systems by scratchpad m

Abstract  Multicore processors are increasingly used in the design of real-time embedded systems. While some multicore processors use cache memory to reduce average execution time, as in real-time applications usually worst-case execution time (WCET) is more important, many real-time embedded systems use scratch-pad memory (SPM) instead of cache. Unlike cache, SPM is a software-controlled memory and its content is visible to software. Therefore, in contrast to cache, software programmer (or compiler) can fully control the content of SPM to achieve predictability required for analyzing and reducing WCET. However, the cost of this predictability is a burden on the software to manage SPM. SPM management (allocating SPM space to system tasks) can be especially more complex when SPM is shared among the cores. Indeed, as resource sharing is one of the remarkable features of multicore processors, all or part of on-chip memory (cache or SPM) is usually shared among the cores. In this research, we intend to study shared SPM management in multicore real-time embedded system with the aim of reducing WCET.

Mohammad Salehi
Mohammad Salehi

Thesis  System-Level Techniques for Low-energy Fault-tolerance in Hard Real-Time Embedded Systems

Abstract  Many embedded systems which are employed in safety-critical applications: i) must be highly reliable, ii) are severely energy-constrained, and iii) have hard real-time constraints. To satisfy the timing constraints, fault-tolerance capability is usually achieved through hardware redundancy. For such applications the use of other methods may has limited utility. Although it seems at a first glance that hardware redundancy can incur high energy overheads, its use can decrease the response time and create more slack times. The main purpose of this project is to provide new system-level techniques to manage the slack times for achieving low energy consumption while considering fault tolerance and real-time capabilities as the main characteristics of many embedded systems.

Moein Esnaashari
Moein Esnaashari

Thesis Learning-Based Reliability and Power management in Multicore systems

Abstract Power consumption and reliability are the factors that are very important in the design of multi-core or many-core platforms. In other words, in multi-core Cyber-Physical Systems (CPSs), the reliability target and compliance with timing and power constraints are three important design factors. The existence of several processing cores in these systems allows us to exploit different fault-tolerant techniques and power consumption management methods. The power- and reliability-aware methods based on Machine Learning (ML) can adapt themselves to the system working conditions and system workload and learn from the conditions that occurred in the last periods. Also, the ML-based approaches benefit from two main advantages: a) For resource management, control becomes more accurate or comprehensive and helps to implement resource management even under uncertainty, such as changes in power demand or memory access; b) ML methods such as Reinforcement Learning (RL) or Neural Networks (NNs) are efficient to handle scenarios for which the system is not trained. Therefore, using a dynamic method that can make the best decision according to the environmental and system conditions can improve the system's performance compared to static methods. The previous works that were surveyed showed a preference for RL, especially Deep Reinforcement Learning (DRL), to obtain a better online analysis of the system state. In conclusion, the main advantage and novelty of using DRL- or RL-based methods over heuristic ones is their ability to make decisions about the incoming task in the online or run-time phase.

Abolfazl Younesi
Abolfazl Younesi

Thesis Game Theory-Based Approach for Reliability and Power Management in Fog Computing

Abstract Fog computing is a distributed computing paradigm that acts as a middle layer between cloud data centers and IoT-based devices/sensors. Because cloud-based services are geographically centralized, they often cannot cope with the storage and processing needs of billions of geographically distributed IoT devices/sensors. As a result, a congested network, high latency, and low quality of service (QoS) are experienced. In fog computing, computing nodes are distributed throughout the edge network and can be shared. The basic challenges in these systems are power consumption, reliability, and delay (timing). To solve the mentioned challenges, game theory as an efficient solution for modeling and evaluating the behavior of decision-making systems whose ultimate goal is to find the optimal solution(s) for players who seek They are specific goals so that they play a significant role in allocating resources, creating an efficient schedule, making appropriate momentary decisions, etc.

Ali Paridari
Ali Paridari

Thesis 

Abstract 

Roozbeh Siyadatzadeh
Roozbeh Siyadatzadeh

Thesis  Learning-based Task Replication for Reliability Improvement in Multicore Embedded systems

Abstract  Cyber-Physical Systems, which include embedded systems, have become an important part of modern life. As a result, cyber-physical systems must be reliable and safe. When it comes to improving reliability and safety, task replication is a powerful method. However, it may violate the real-time constraints of the tasks and accelerate the aging effects of the system by raising the on-chip temperature. To overcome these issues, we need an appropriate method to implement task replication wisely and carefully in runtime to consider the actual case scenarios of the system. Machine learning is an effective and formidable tool in a variety of fields. Therefore our goal is to provide a machine-learning based method to implement task replication in a way that minimizes the harmful effects of the task replication.

Mohammad Amin Moloudi
Mohammad Amin Moloudi

Thesis  Improving the Reliability of Engine Control Units in Vehicles

Abstract   One of the most important parts of modern vehicle engines is the Engine Control Unit (ECU). In fuel-injected vehicles, which is the predominant engine type, the main task of ECU is to control the engine’s fuel and air injection rate and the combustion process. These tasks affect fuel consumption, overall performance, and air pollution, so by improving the reliability of ECUs, one can prevent the increase of fuel consumption and the possible financial harm and physical injuries. As these ECUs contain numerous subsystems that are mostly series systems, we face a challenge in improving the upper limit of reliability while maintaining cost-efficiency. Our goal is to compare these subsystems in terms of reliability, as well as improving the reliability of ECU. In this research, we use failure modes and effects analysis, and fault-injection methods to find possible failures and corresponding faults in a system, and monitor the behavior of these systems in the presence of such faults.

Fatemeh Mehrafrooz
Fatemeh Mehrafrooz

Thesis  Energy-aware Real-time Task Assignment in Fog

Abstract  With the increasing number of devices in the Internet of Things (IoT), storing and processing data have become a significant challenge in this area. Cloud computing has given a convenient platform for processing and storing IoT data by providing centralized data centers with high processing resources. With the growth of embedded systems, the number of real-time tasks has increased dramatically. On the other hand, cloud servers are unable to meet the timing constraints of real-time tasks due to the physical distance between IoT nodes and data centers. Fog computing is provided as a solution to this problem. Fog computing brings processing and storage resources closer to the network's edge in order to reduce latency. Moreover, Because the majority ofIoT nodes are not connected to a power source and rely on batteries, energy harvesting techniques can be an effective approach to power the IoT nodes. Our focus is to provide a machine learning based algorithm for task assignment in fog-based IoT networks equipped with energy harvesters. This approach reduces delay and task loss, and It also takes energy consumption into account.

Hossein Kalantari
Hossein Kalantari

Thesis  Reliability Assessment in Adaptive Cruise Control Systems

Abstract  Nowadays, one of the most important issues in computer science and engineering and the automotive industry is advanced driver assistance systems (ADAS). One of the components of ADAS is Adaptive Cruise Control systems (ACC), designed to reduce driver workload and increase safety. Due to the ACC's relationship with the safety of the car's occupants, this system is located in the safety-critical systems group, and therefore reliability in this system is very important. In this project, a basic ACC system is to be simulated, and the reliability of the system will be analyzed by injecting fault into the system (in different parts, including switching, different connectors, sensors such as radar sensors, etc.). By changing the spacing policies and changing the switching model, or changing the design of the controller and the ACC model, we can study and compare the amount of reliability improvement at each time by the use of fault injection. Essential tools used during the project are Simulink and CarSim.

Sahar Rezagholi Lalani
Sahar Rezagholi Lalani

Thesis  Reliable Q-learning Based Energy-Aware RPL Objective Function for Dynamic IoT Networks

Abstract   The presence of IoT has been increased in different aspects of human life. Due to the increasing trend in the number of smart connected devices, routing has become a major challenge in loT systems. Furthermore, due to the energy-constrained embedded devices in the network, which are usually battery-powered, and considering that \%97 of the node's energy consumption is due to activities associated with the transceiver module, the energy-aware routing is significantly important. In this regard, the IPv6 routing protocol for low-power and lossy networks (RPL) was standardized to be adopted in IoT infrastructure. Due to the increasing interest in mobile IoT applications in recent years and regarding that RPL was designed for static networks and it can't adapt itself to the dynamic situations of mobile networks, the adaptation of this protocol to these networks has gained significant attention. Packet loss, packet retransmissions, and consequently increment of the node power consumption are inevitable in the mobile networks because of frequent changes in the network topology and disconnections. Therefore, it is important to employ an efficient routing policy by the objective function in this protocol to select the optimal path. On the other hand, the utilization of learning methods in the mobile networks, due to the dynamics of these networks, can provide suitable predictive models for accurate and timely decision-making for such networks. Using machine learning to estimate network conditions, such as device mobility, quality of communication links, and packet transmission with optimal energy consumption can be an effective step to reach an energy-aware routing mechanism in mobile networks. In this research, an energy-aware objective function based on the Q-learning method has been introduced. To perform the simulations of this study, we used the Cooja network simulator in the Contiki operating system.

Arya Motamed Hashemi
Arya Motamed Hashemi

Thesis  FUSION: Fuzzy Multi-Objective TaskManagement in Multi-Tiered Fog Networks

Abstract  Due to the long physical distance between the users and the cloud data centers, the idea of considering fog layer was established to bring computations closer to the edge of the network, and provide a solution for latency-sensitive applications. In such applications, the tasks are offloaded, and assigned to the available virtual machines in the cloud or fog layers. The assignment is in such a way that meets the application requirements. The requirements may be latency, energy consumption, monetary cost and etc. Among various applications, we focus on real-time applications which the main requirement is executing tasks before the deadlines. Most of the previous studies on real-time scheduling in Cloud-Fog Networks only consider the number of completed tasks within their deadline and load balancing. In this paper we consider throughput (number of finished tasks within the makespan) and load balancing directly. We propose a Fuzzy Offloader algorithm that decides which tasks to offload before scheduling. It is expected that offloading larger or late deadline tasks can improve makespan and guarantee ratio. We also used a Fuzzy Multi-Objective Decision Making method, decomposition method and ordered weighted averaging (OWA) method, which ranks virtual machines and assigns the top rank virtual machine to an incoming task. In our algorithm we consider deadline, makespan and load balancing. Experimental results show that the proposed method, on average among 27 cases, achieves higher guarantee ratio in 63\% of cases with respect to three meta-heuristic algorithms which we chose among the related studies. Also the results on the offloader algorithm indicates that using an offloader, on average among 18 cases, resulted in higher guarantee ratio in more than 55\% of cases. The simulations and algorithms have been implemented using iFogSim.

Hossein Taghizade
Hossein Taghizade

Thesis  An Energy-aware Objective Function for energy-harvesting IoT Infrastructures

Abstract  Internet of things (IoT) interconnects a system of low power embedded devices that each of them has a unique identifier without human intervention. The number of devices of IoT increases every day, therefor routing in the network of IoT is an important challenge. So, Internet Engineering Task Force (IETF) propose a protocol for routing low power and lossy networks in 2012, which is named RPL. Considering the power supply limitation of devices in the network, utilizing energy-aware policies within the RPL is so important. Meanwhile, objective functions have a vital role in consuming energy. Also, energy consumption determines the lifetime of nodes. Since many devices are placed in locations that don’t have any access to the unlimited power supply and only using batteries is not enough, employing energy harvesters in the nodes is inevitable. In this research, an objective function is designed using a machine learning algorithm that is appropriate for this kind of network. This objective function is based on the rate of energy harvesting and energy consumption.

Sina Yari-Karin
Sina Yari-Karin

Thesis  Aging-Aware Power Management in Heterogeneous Fault-Tolerant Embedded Systems

Abstract  High reliability and low power consumption are two crucial requirements of embedded systems. To do this, embedded systems exploit fault-tolerant techniques to keep reliability at a guaranteed level and power management methods to reduce power consumption. However, the inherent redundancy of the fault-tolerant techniques increases the power consumption and, consequently, the system temperature, which leads to an increase in the rate of the aging phenomenon. Power management methods increase the system's lifetime by reducing the system temperature. However, some power management methods (e.g., Dynamic Voltage and Frequency Scaling) increase the fault rate. Recently, heterogeneous multicore systems provide an effective solution to manage embedded systems requirements. Using the heterogeneous platform is an appropriate solution for low power consumption and reliability enhancement. In the heterogeneous platforms, the simultaneous use of high-performance and low-power cores had attracted much attention. High-performance cores improve reliability and performance with their faster speeds, and the low-power cores reduce power consumption. However, the applications' execution, especially real-time applications, is more complicated than homogeneous systems due to different core types in the heterogeneous systems. In this research, an intelligent standby-sparing technique for heterogeneous systems is presented, which, with the knowledge of the system's aging, maintains reliability at a guaranteed level and selects the appropriate core type for the tasks' execution while considering the core-level power and timing constraints.

Mohammad Abbasinia
Mohammad Abbasinia

Thesis  Consistency aware energy management in energy harvesting embedded systems with non-volatile memory

Abstract   Nowadays, energy harvesting systems are becoming a promising alternative to battery-embedded systems, as they are more environmentally and they have more life span. The energy extracted from the environment is often limited and unpredictable. A power outage leads to destroying the data in volatile memory. So, the energy harvesting system should execute the program from scratch. The emerging nonvolatile technologies could omit the problem, as mentioned earlier. However, they have high energy consumption and access latency. Conventional methods, which use volatile-nonvolatile memories in battery-embedded systems, are not suitable for energy harvesting systems. Since, a power outage might cause data inconsistency, because the data in nonvolatile memories are persistent, while the data in volatile memory are unsteady. State of the art studies proposed various memory architectures and compiler-based techniques to tackle the data inconsistency in these systems. These approaches impose too many unnecessary check-points on the system to avoid data inconsistency; however, they did not consider the effect of cache memory to mask and postpone the check-points that are imposed on the system for consistency. In this study, we utilize the cache memory and propose PROWL, a consistency aware cache replacement policy to avoid data inconsistency with a fewer number of check-points.

Javad Saber Latibari
Javad Saber Latibari

Thesis  Reliability-Aware Power Management for Heterogeneous Multicore Embedded Systems

Abstract   In recent years, heterogeneous architectures have been used extensively in the design of digital systems, so that these heterogeneous substrates are used to achieve low power, efficiency, and reliability. In addition, heterogeneous multicore systems, due to the provision of a wide range of facilities to balance the power/energy consumption and reliability, can be a suitable solution to achieve simultaneous low power consumption and high reliability. Most heterogeneous systems have a number of heterogeneous islands which can have its own voltage and frequency. For example, the Exynos 5 Octa processor which is based on ARM's big.LITTLE architecture has two heterogeneous islands that are located on each island with four homogeneous cores. Hence, the use of such architectures are proposed for future generations of embedded systems. In this research, we aim at considering effects of heterogeneous architectures on the energy/power consumption in multicore embedded systems.

Ali Asghar Mohammad Salehi
Ali Asghar Mohammad Salehi

Thesis  Providing a low energy replacement policy for RPL in IoT applications

Abstract   By the growth of the number of mobile nodes in IoT networks, routing procedure and neighbor tables administration in each node are becoming one of the major challenges in IoT infrastructures. The Routing Protocol for Low Power and Lossy Networks (RPL) was presented to provide a routing mechanism for IoT networks. RPL accomplishes routing through Objective Function (OF) which tries to improve the desired attribute(s) based on the IoT applications. Taking essence of RPL into account, mobile nodes lose their parents easily and they hardly reconnect to the network. In this situation, the packet delivery ratio is diminished rapidly, therefore, there should be a proper neighbor table management and OF to increase network reliability and reduce average consumed power.

Maryam Shirbeigi
Maryam Shirbeigi

Thesis 

Abstract 

Mostafa Pasandideh
Mostafa Pasandideh

Thesis  Peak-Power and Energy Co-management in Fault-Tolerant Multicore Embedded Systems

Abstract   Today, Dark Silicon is a pervasive problem, especially when core heterogeneity or timing guarantees are involved, for which using multicores with different power and performance characteristics are suitable architectures. We focus on minimizing peak power and energy consumption simultaneously for heterogeneous tiled multicores by considering different power characteristics of different cores, where all cores or accelerators inside a tile share the same voltage and frequency levels. For such architectures, the violation of TDP can result in significant performance losses in homogeneous and heterogeneous multicore systems. Having better power budgeting techniques is a major step towards dealing with the dark silicon problem. We attempt to propose an optimal resource management technique that introduces power density as a novel system level constraint, in order to avoid thermal violations.

Mozhgan Navardi
Mozhgan Navardi

Thesis  Reliability-Aware Power Management in Mixed-Criticality Embedded Systems

Abstract   Today’s multi-core systems with mixed-criticality (MC) come with a great performance potential, but also with strong requirements in terms of reliability. Automotive and avionics are typical examples, where control, signal processing, and multimedia applications co-exist with different safety and reliability requirement levels. Re-execution and replication are conventional hardening techniques which come with respective overheads in terms of time and resources. Selecting one of these techniques is an optimization trade-off. When related to typical mapping/scheduling optimization trade-offs, the number of options in the design space is dramatically increasing. Dynamic power management and runtime mapping strategies can be utilized in such systems to achieve optimal performance while satisfying power constraints. In this project, mapping and scheduling algorithms are proposed for MC tasks to meet limitations like deadline and reliability.

Amir Yeganeh
Amir Yeganeh

Thesis  Peak-Power-Aware Task Replication to Manage Reliability for Multicore Embedded Systems

Abstract   The number and diversity of cores in embedded systems is increasing rapidly. Modern embedded processors provide multiple cores for parallel computing, and hence power dissipation and thermal issues have assumed increasing significance in embedded system design. Meanwhile, reliability has become important concern in the design of embedded systems. Task replication is a powerful way to achieve high reliability, however, it is not possible to increase replications rapidly due to the Thermal Design Power (TDP) constraint. Exceeding the TDP constraint may active the Dynamic Thermal Management (DTM) to ensure thermal stability, but significant performance losses in frequent triggers of DTM. We consider the problem of achieving a given reliability target for a set of periodic real-time tasks running on a multicore system according to the TDP constraint.

Saman Mahmoudi
Saman Mahmoudi

Thesis  Energy Efficient Scheduling in Mixed-Criticality Embedded Systems

Abstract   Due to the continuing progress in CMOS technology and increased number of cores within a chip, multiple components with different levels of criticality have been integrated into a common hardware platform. These systems with these characteristics are known as Mixed-Criticality Systems (MCS). Also, due to the migration towards multi-core systems, power consumption and specifically instantaneous power consumption is the main concern. To avoid the use of cooling technology, we need to reduce the instantaneous power consumption of the system. However, most existing approaches in MCS have paid attention to reliability guaranteed and energy minimization. Therefore, we consider a dynamic scheduling algorithm based on the EDF-VD scheduling for mixed-criticality task sets that prevents concurrent execution of tasks assigned to the different cores specifically in the critical mode. To achieve this, we use service degradation for low criticality tasks in the high criticality mode. In other words, we calculate power consumption of the system at any point in time and when the total power consumption exceeds the maximum power constraint value, we suspend at least one low criticality tasks to reduce the instantaneous power consumption.

Alireza Lotfi Takami
Alireza Lotfi Takami

Thesis 

Abstract 

Ali Hosseinghorban
Ali Hosseinghorban

Thesis  Management of interleaved memory blocks in real-time embedded system to reduce WCET and energy cons

Abstract   In embedded systems, memory blocks mostly used as scratchpad memories (SPM) to achieve more predictability. Partition memory to multiple banks and access them in parallel, increase performance of systems. Although this structure increase average case execution time (ACET) of systems but worst case execution time (WCET) is more important parameter in real-time systems. In this research we aim to analyze effects of memory interleaving on real-time systems and proposed compiler level SPM Space allocation to reduce WCET and energy consumption.

Pouya Toutounchian
Pouya Toutounchian

Thesis  Power Management in Embedded Systems with Hard and Soft Real-time Tasks

Abstract   Modern embedded applications such as multimedia ones have tasks with different types of timing constraints (e.g. Hard real-time, Soft real-time) in the same platform. Hard real-time tasks have to meet their deadlines in all scenarios to avoid severe consequences. However, deadline missing in soft real-time tasks does not cause serious damage. On the other hand, most of the embedded systems are fan-less and have limited energy budget. Therefore, power management for these systems is important. In this project, we proposed system-level power management techniques for embedded systems with hard and soft real-time tasks. Power management techniques must guarantee that hard real-time tasks meet their deadlines and attempt to increase the utility of soft real-time tasks.

Mohsen Shekarisaz
Mohsen Shekarisaz

Thesis  SPM Allocation to Tasks for Energy Saving in Multicore Embedded Systems

Abstract   Energy consumption is a critical issue in embedded multicore systems due to available energy budget. Memory subsystem is one of the main components with significant role in this issue. Scratch-pad memories (SPM) provide a large potential for energy saving in on-chip memory subsystems. According to limited size of SPM, an optimal memory partitioning among tasks, can reduce energy consumption and execution time of application. In addition, emerging Non-Volatile memories (e.g. STT-MRAM, PCM, …) that have appropriate features like high density and low leakage power against SRAM, can be very helpful in reducing energy. In our research, we propose an algorithm for tasks’ scheduling/mapping and SPM allocation in order to reduce energy consumption. Also we intend to exploit Non-Volatile memories advantages over SRAM by using hybrid SPM formed by both SRAM and Non-Volatile memories.

Fahimeh Bahrami
Fahimeh Bahrami

Thesis  Exploiting non-volatile memories for soft real-time embedded systems to achieve low energy consumpt

Abstract   Energy consumption minimization is one of the most important goals in designing embedded systems. The memory subsystem is a major contributor to energy consumption in these systems. Non-volatile memories possess several characteristics beneficial to memory design such as non-volatility, leading to near-zero leakage energy and high density. Therefore, nowadays, use of non-volatile memories such as phase-change memory (PCM) in embedded systems is considered. On the other hand, there are two major challenges in using non-volatile memories for these systems, namely, their longer write latency and higher write energy. The goal of this ongoing project is reducing the energy and the latency costs of write operations of this memories to be suitable for soft real time embedded systems.

Faezeh Borhani
Faezeh Borhani

Thesis  Data allocation for scratch-pad memory on embedded multi-core systems to achieve predictability and

Abstract  One of the main features of platforms used in embedded systems is predictability. Therefore, in many embedded systems scratchpad memory is used instead of cache because its behavior is predictable unlike cache. On the other hand, recently there has been a considerable increase in the use of multi-core systems in implementation of embedded systems. In these systems there are often shared and private caches which can be replaced with scratchpad memory in order to achieve predictable behavior needed by embedded systems. When using scratch memory in multi-core systems, sometimes it's called limited local memory. One of the concerns when using scratch memory is allocation method in memory cells. Another problem when using these systems is that in many cases the need to reduce the mean of execution time (Cache performance on area is very successful.) is secondary to the need to reduce the worst-case execution time. The goal of this project is to compare existing methods of allocating scratchpad memory cells in terms of predictability and the worst-case run time. Then a method is presented which reduces the worst-case runtime while maintaining predictability. It should be noted that another issue that must be considered here is the coherence issue of contents of the scratchpad memory.

Farimah Ramezan Pour Safaei
Farimah Ramezan Pour Safaei

Thesis  Energy Efficient Dynamic Memory Allocation in Embedded Systems Equipped with Non-Volatile Memory

Abstract   Since many embedded systems have a tight energy budget, it is imperative to employ energy management techniques in these systems. Moreover, due to the reactive nature of many embedded systems, they spend much of their time without any activity while they are ON; this situation underlines the importance of the memory leakage power, as memory is one of the major energy contributors in the system. Non-Volatile Memory (NVM) is very promising in solving many of these energy related issues, since they offer features including low leakage power and high density. However, NVMs have some drawbacks: more timing and energy overhead of the write operation and limited number of writes. So, exploiting NVM requires some changes in the way of managing memory. In this research we aim at evaluating the dynamic memory allocation methods in embedded systems equipped with NVM with respect to the energy consumption.

Sepideh Safari
Sepideh Safari

Thesis  Exploiting the intrinsic redundancy of multicore platforms to achieve low-power fault-tolerance in

Abstract   Low energy consumption and fault tolerance are two major objectives in designing safety-critical real-time embedded systems. These systems need to guarantee a certain reliability level which can be achieved by using fault tolerant techniques. On the other hand, the power and energy consumption constraints are obvious characteristics of most of the embedded systems, since these systems often operate in harsh environment and may have a limited energy budget (e.g. battery). In addition, multicore platforms have emerged to be popular and powerful computing engines for many recent embedded systems. While such architectures have been employed for embedded applications that require high performance computing, they also offer new considerable opportunities for designing embedded systems where hard real-time operation, high reliability, and low energy consumption are required. Multicore platforms have an inherent redundancy which provides facilities to implement various redundancy-based fault tolerant techniques such as N Modular Redundancy (NMR) and Duplication With Comparison (DWC). In this research, we aim at using hardware redundancy in multicore platforms to achieve fault tolerance, considering the power and energy constraints in hard real-time embedded systems.

Mohsen Ansari
Mohsen Ansari

Thesis  System-Level Power Management in Fault-Tolerant Embedded Systems

Abstract   Multicore platforms provide great opportunity for implementation of fault-tolerance techniques to achieve high reliability in real-time embedded systems. In spite of the huge potential for fault-tolerant techniques in multicore platforms, due to the Thermal Design Power (TDP) constraint, designers of fault-tolerant embedded systems face a challenge in deciding how to use them. TDP is considered as the highest sustainable power that a chip can dissipate without triggering any performance throttling mechanisms, e.g. Dynamic Thermal Management (DTM). If a chip temperature violates its TDP, it automatically restarts or significantly reduces its efficiency to prevent permanent damage. The continually increase in the degree of integration along with using fault-tolerant techniques can increase power consumption and rise the peak power which can lead to violate the TDP constraint. In this research, we aim at considering effects of fault-tolerant techniques on the power consumption in real-time embedded systems.

Amir Taherin
Amir Taherin

Thesis  Energy Management in Mixed-Criticality Fault-Tolerant Systems

Abstract   Due to consideration of cost, energy efficiency, area, weight etc., there is an increasing trend in designing embedded systems to integrate different functionalities with varying criticalities (i.e. importance) into a shared computing platform. Therefore, mixed-criticality systems are typically safety-critical. Mixed-criticality systems are the next generation of complex embedded systems since mixed-criticality is known as a core foundational concept in fields such as Cyber-Physical Systems (CPS) and Internet of Things (IoT). Integrating vast amount of functionalities within mixed-criticality systems requires enormous power supplies and cause thermal problems. Therefore designing energy efficient mixed-criticality systems is vital considering often battery operated and fan-less nature of these systems. In this research, we intend to propose system-level methods for designing energy efficient fault-tolerant mixed-criticality embedded systems.

Narges Vaez
Narges Vaez

Thesis  Wear-leveling for NVM in real-time embedded systems

Abstract   One of the most important issues in reactive embedded systems is static energy consumption due to memory unit. Non-Volatile Memories (NVMs), such as Phase Change Memory (PCM), Spin-Transfer Torque RAM (STT-RAM) have many appealing characteristics for embedded systems, such as low-cost, high density, and ultralow leakage power. The main drawbacks of NVM include high latency and power consumption for write operations, and limited write endurance. Wear-leveling techniques are necessary to help even out the write operations over the NVM chip, in order to improve its write endurance and prolong its lifetime. The goal of this study is investigating the available approach of memory allocation in real-time embedded systems equipped with non-volatile memory regarding of the impact on system lifetime, and presenting a new approach for increasing memory lifetime in real-time embedded systems.

Hadi Valikhani
Hadi Valikhani

Thesis  Improving System-Level Thermal Management for Multi-Core Embedded Processors

Abstract  Today, heat management is among the most significant challenges in multicore embedded systems. This is an important issue because most of these systems are fan-less and commonly used in harsh environmental conditions that could aggravate heat problem. Increased temperature itself increases static power consumption of the system which is a constraint in most embedded systems. The goal of this project is to analyze heat management methods in embedded systems. Also novel method could be proposed for embedded systems. Moreover, considering heat managements’ effect on other designing goals, e.g. real-time, is among the most important aspects of this project.

Saba Ahmadian
Saba Ahmadian

Thesis  Development of an Energy Management Technique for Automata­Based Embedded Systems

Abstract   Many embedded systems have a reactive nature which means that at any time instance the systemis in a state waiting for an input event. Once an input event arrives, based on this event and thepresent state, the system executes a task to generate an output event (usually called reaction) andthen goes to the next state. On the other hand, embedded systems are widely used in safety­criticalapplications where system reliability is the main concern. Therefore, we focus on the use of reactiveembedded systems in safety­critical applications. It has been observed that automata­based modelscan be effectively exploited to model applications in reactive embedded systems.Energy efficiency is one of the main design constraints of embedded systems. DVFS and DPM arecommon energy management techniques used in embedded systems. As mentioned reactive systemsare used in safety­critical applications where fault tolerance problem is critical. In addition embeddedsystems are exposing to two common types of faults namely permanent faults and transient faults.Thus applying a combination of energy management and fault tolerance techniques on such systemsis a must.In this project we focus on automata­based embedded systems and indicate how safety­criticalreactive applications can be modeled by automata. Next we propose a reliability aware energymanagement technique to be applied on them.

Aida Miralayi
Aida Miralayi

Thesis  Energy Management Technique with the Consideration of Time-Utility Functions for Soft Real-Time Emb

Abstract  One of the common ways of modeling time constraint in real-time systems is time-utility function. In this case, the design aim is maximizing the value for this function. Another important fact about the real-time systems is that most of them use batteries or other portable energy generators. Therefore, there are major limitations in case of their energy consumption. A good amount of research has been done to reduce the consuming energy in hard real-time systems in comparison to the lack of work for soft real-time systems. One of the reasons could be that the deadline are specified in hard real-time systems. In reverse, the time constraint for soft real-time systems is not defined by a particular accurate number, and they are modeled with time-utility functions. Despite the sensitivity of hard real-time systems, working with soft real-time systems is more difficult because of no specific deadline or due to the limitations of modeled time-utility function. The goal of this project is to use energy management methods at system level for soft real-time systems, which use time-utility function for the tasks.

Farzaneh S. Minapour
Farzaneh S. Minapour

Thesis  Energy efficient memory management techniques for multicore embedded systems

Abstract   Embedded computer systems has been significantly involved in many real-life situation. Nowadays, memories, especially SRAM, are one of the main resources of high leakage power consumption in embedded systems. The various nonvolatile memories (NVM) developed recently such as PCM, STT-RAM and MRAM provided us with a new way of addressing the memory leakage power consumption problem. My research study focuses on reducing the power consumption of multicore embedded systems by improving the memory architecture using scratch pad memories as alternatives for caches and nonvolatile memories.

Mohammad K. Taram
Mohammad K. Taram

Thesis  Instruction Level Energy Optimization Techniques through Compiler Assisted Architecture for Embedde

Abstract   Instruction level techniques have been used for fault tolerant design and power estimation. Moreover, compiler can undertake some tasks of hardware such as static scheduling and local memory management. Recently, energy and power efficiency has become a hot topic among embedded system researchers. Main advantages of compiler assisted techniques are more control & predictability and hardware size reduction, which can be utilized to gain more power reduction. Through this project, we are going to empower compiler, by modifying the architecture. Our major objectives are general energy optimization and reducing energy overhead of instruction level fault tolerant techniques.

Ahmad Tahmasivand
Ahmad Tahmasivand

Thesis   Analyzing the Energy Overhead of Existing Real-Time Embedded Operating Systems

Abstract   Real-time operating systems (RTOSs) have been widely used in the design of nowadays embedded systems; however we discuss in this thesis that RTOSs can impose considerable energy and time overhead. In this thesis, we analyze the impact of three existing and commonly used RTOSs (‎µC-OS II, Keil-OS, Emb-OS) on the energy consumption and real-time behavior of embedded systems. We have chosen these RTOSs because of their use in deeply embedded systems that are the dominant application of embedded systems. For this analysis, we have used a hardware-platform which is designed for embedded applications and is equipped with energy and power measurement circuitry. Our analysis provides useful information that can be exploited by embedded system designers to select proper RTOS for their applications. Furthermore, this thesis provides information that can be used as a guide to design more effective operating systems for embedded applications. For example, our study shows that the RTOS tick-time has a considerable impact on the system energy consumption and hence must be carefully adjusted in energy-constrained embedded systems.

Masoud Karimi Fatemi
Masoud Karimi Fatemi

Thesis  Design and Implementation of Software-Managed Energy Optimization Techniques for a Multi-Core Embed

Abstract  Some of the energy efficiency methods in embedded systems are software based. In those, hardware remains unchanged, and software source code is manipulated into energy efficiency. Advantages to these methods include not needing hardware redundancies, implementation feasibility in COTS systems, easy implementation using compilers (or OS), and lower costs. However, some of these methods require some hardware capabilities; such as methods that set frequency and voltage requiring a controllable DC to DC convertor. Nowadays, many of the embedded CPUs in market support these features (such as StrongARM and Intel Speed Scale). For instance some of the methods are, changing processor cores’ voltage level, decreasing total number of memory access, changing memory configuration, and changing task’s scheduling. The purpose of our thesis is to perform a full comparison and evaluation of those developed methods and their combinations in various application of embedded systems and to develop new ones.

Amin Malekpour
Amin Malekpour

Thesis 

Abstract 

Mohammad Fakhraei
Mohammad Fakhraei

Thesis 

Abstract 

Abbas Rahmani
Abbas Rahmani

Thesis 

Abstract 

Mehrdad Khatir
Mehrdad Khatir

Thesis 

Abstract 

Ali Sharif-Ahmadian
Ali Sharif-Ahmadian

Thesis 

Abstract 

Nezam Rohbani
Nezam Rohbani

Thesis 

Abstract 

Mostafa Bazzaz
Mostafa Bazzaz

Thesis 

Abstract 

Mohammadreza Yousefizadeh Naiini
Mohammadreza Yousefizadeh Naiini

Thesis 

Abstract 

Somaie Taheri
Somaie Taheri

Thesis 

Abstract 

Abbas Mohammadi
Abbas Mohammadi

Thesis 

Abstract 

Farzad Samie
Farzad Samie

Thesis 

Abstract 

Mohammad Khavari Tavana
Mohammad Khavari Tavana

Thesis 

Abstract 

Hossein Tajik
Hossein Tajik

Thesis 

Abstract 

Fatemeh Jalali
Fatemeh Jalali

Thesis 

Abstract 

Safieh Khodadoustan
Safieh Khodadoustan

Thesis 

Abstract 

Mehrtash Manoochehri
Mehrtash Manoochehri

Thesis 

Abstract 

Morteza Mohajjel
Morteza Mohajjel

Thesis 

Abstract 

Mohammad Salehi
Mohammad Salehi

Thesis 

Abstract 

Ali Dastangoo
Ali Dastangoo

Thesis 

Abstract 

Maryam Bandari
Maryam Bandari

Thesis 

Abstract 

Soheil Aminzadeh
Soheil Aminzadeh

Thesis 

Abstract 

Seyyed Rezgar Poorahmadi
Seyyed Rezgar Poorahmadi

Thesis 

Abstract 

Elahe Hosseini
Elahe Hosseini

Thesis 

Abstract 

Mohammad Hossein Shekarian
Mohammad Hossein Shekarian

Thesis 

Abstract 

Ali Sahraee
Ali Sahraee

Thesis 

Abstract 

Mohammad Javad Abdi
Mohammad Javad Abdi

Thesis 

Abstract 

Hamidreza Alikhani
Hamidreza Alikhani

Thesis 

Abstract