Font Size: a A A

Time-Predictable Programming Framework For Embedded Real-time Systems

Posted on:2020-12-14Degree:DoctorType:Dissertation
Country:ChinaCandidate:B WanFull Text:PDF
GTID:1368330575466582Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Embedded real-time systems are applied to a variety of safety-critical scenarios.Such systems implement an automated control process by monitoring changes in the physical environment and obtaining feedback from the system itself.Real-time systems are not only required to meet functional requirements but also to meet strict time require-ments.However,features of non-deterministic concurrency in software and technolo-gies for improving average-performance in system architectures make it increasingly difficult to validate time constraints in such systems.Therefore,time predictable mod-els,frameworks,and related implementation techniques have become one of the hot research topics in the field of embedded real-time systems.In this dissertation,we propose a series of time-predictable models for certain real-time conditions and corresponding programming framework.Also,some optimizations for the implementation of time-predictable frameworks based on software/hardware co-design techniques are utilized.We believe that our work pushes the research work on time predictability forward in both theoretical and practical aspects.The contributions we made are as follows:(1)By analyzing the existing time model in embedded real-time systems,time behaviors in these systems are comprehensively analyzed.We summarize the charac-teristics and shortcomings of the existing models and point out some research points for certain real-time conditions,which lays the foundation for the work.(2)We summarize and analyze the shortcomings of the logic execution time model in modeling complex tasks(allowing internal synchronization points).To overcome these shortcomings,a time-predictable programming model based on the Servant model is proposed.In addition,temporal mapping rules for scheduling concurrent tasks in a predictable way are devised.Based on the time-trigger mechanism,the runtime system ensures that timing behaviors of tasks are consistent with the time behavior defined in the model.By analyzing the time behavior of the task set built on our proposal,the Servant model reduces the response time of the task dependency chain from greater than or equal to Ei?[1,NJ Pi to maxi?[1,N]Pi.Where N represents the number of tasks in the critical path in the task dependency chain,and Pi represents the period of the task i in the chain.(3)We propose the time-predictable programming model for mixed type tasks(in-cluding periodic tasks and non-periodic tasks).In this work,the strategy of coordinating scheduling logical execution time tasks and non-periodic tasks is proposed for the first time,and a time-predictable model supporting this strategy is further constructed.The temporal mapping rules of the periodic task are designed based on the Reverse EDF algorithm,and the idle processor resource is further utilized based on the slack stealing algorithm,to enhance the aperiodic responsiveness.In the runtime system,the mix-scheduler is implemented to enhance the aperiodic responsiveness as much as possible while guaranteeing that the hard real-time constraints of periodic tasks are met.Com-pared with the existing work,our proposed model achieves 7.7-16.7 times improvement of aperiodic responsiveness under the premise of ensuring that the periodic task can meet their hard real-time constraints.(4)We propose the time-predictable model for bounding communication delays among tasks in distributed nodes.With the developing of networked embedded real-time systems,a time-predictable model to bound communication delays among dis-tributed nodes becomes necessary.In this part of our work,we propose the time-predictable model which is combined with the time-triggered bus communication pro-tocol.Our proposal can achieve bounded communication delay based on the TTCAN.(5)To apply the time-predictable model in real-time systems,the time-predictable programming frameworks based on corresponding time-predictable models are devel-oped to model both functional behaviors and timing behaviors of concurrent tasks in software systems.The implemented programming framework should satisfy the prin-ciples to design embedded real-time systems.The constructing of these frameworks are composed of two parts:first,design easy-to-use programming interfaces which can model functional behaviors and timing behaviors of systems;second,implement the runtime system which can schedule the periodic tasks only or the mix-type task sets.The programming framework makes the time-predictable model available for the de-velopment of embedded real-time systems.Its development has the requirements of time predictability,time composability,performance,stability,simplicity,and scalabil-ity.Based on the programming framework,we implement a distributed experimental platform and two distributed application examples to further verify the effectiveness of the framework.(6)We study the contradiction between system responsiveness and kernel over-heads.By adopting the software/hardware co-design techniques,we implement the mix-scheduler in the runtime system of proposed frameworks to realize cycle-accurate time behaviors.The hardware mix-scheduler runs in parallel with the CPU,and they communicate with each other through coprocessor instructions and interrupts respec-tively.The hardware mix-scheduler eliminates periodic clock interrupts in CPU,which can reduce runtime kernel overheads as well as provide cycle-accurate time-triggered services.Compared to the software mix-scheduler,the hardware mix-scheduler reduces task context switching overheads,and eliminates periodic clock interrupt overhead.Be-sides,the overheads raised by the hardware mix-scheduler are much less than the re-duced kernel overheads.Overall,the hardware mix-scheduler based on the hardware/-software co-design techniques not only provides cycle-accurate time behaviors but also improves the responsiveness of the system and effectively reduces the kernel overheads.
Keywords/Search Tags:embedded real-time system, time-predictability, logical execution time model, programming framework, hardware/software co-design
PDF Full Text Request
Related items