Formal Model Driven Software Synthesis for Embedded Systems

dc.contributor.authorJose, Bijoy Antonyen
dc.contributor.committeechairShukla, Sandeep K.en
dc.contributor.committeememberAbbott, A. Lynnen
dc.contributor.committeememberHsiao, Michael S.en
dc.contributor.committeememberSchaumont, Patrick R.en
dc.contributor.committeememberVullikanti, Anil Kumar S.en
dc.contributor.departmentElectrical and Computer Engineeringen
dc.date.accessioned2014-03-14T20:15:04Zen
dc.date.adate2011-08-31en
dc.date.available2014-03-14T20:15:04Zen
dc.date.issued2011-08-02en
dc.date.rdate2011-08-31en
dc.date.sdate2011-08-11en
dc.description.abstractDue to the ever increasing complexity of safety-critical applications, handwritten code is being replaced by automatically generated code derived from a high level specification. Code generation from high level specification requires a model of computation with an underlying formalism and correctness-preserving refinement steps to generate the lower level application code. Such software synthesis techniques are said to be 'correct-by-construction'. Synchronous programming languages such as Esterel, LUSTRE, which are based on a synchronous model of computation are used for sequential code generation. They work on a synchrony assumption (zero time intraprocess computation and zero time inter process communication) at the specification level. Early versions of synchronous languages followed an execution pattern where an iteration of software was mapped to an interval between ticks of an external reference clock. Since this external reference tick was unrelated to variables (or signals) within the software, redundant operations such as reading of ports, computation of guards were performed for each tick. In this dissertation, we highlight some of these performance issues and missed optimization opportunities. Also we show how a multi-clock (or polychronous) formalism, where each variable has an independent rate of execution associated with it, can avoid these problems. An existing polychronous language named SIGNAL, creates a hierarchy of clocks based on the rate of execution of individual variables, to form a root clock which acts a reference tick. We seek to replace the clock analysis with a technique to form a unique order of events without a reference time line. For this purpose, we present a new polychronous formalism termed Multi-rate Instantaneous Channel connected Data Flow (MRICDF). Our new synthesis technique inspects the specification to identify a master trigger at a Boolean equation level to act as the reference tick. Furthermore, we attempt to make polychronous specification based software synthesis more accessible to practicing engineers, by constructing a software tool EmCodeSyn, with a visual environment for specification and a more intuitive analysis technique. Our Boolean approach to sequential synthesis of embedded software has multiple implementations, each of which utilizes existing academic software tools. Optimizations are proposed to minimize synthesis time by simplifying the input to these external tools. Weaknesses in causal loop analysis techniques applied by existing synthesis tools are highlighted and solutions for performing time efficient loop analysis are integrated into EmCodeSyn. We have also determined that a part of the non-synthesizable polychronous specifications can be used to generate correct multi-threaded code. Additionally, we investigate composition of polychronous modules and propose properties that are necessary to guarantee agreement on shared signals.en
dc.description.degreePh. D.en
dc.identifier.otheretd-08112011-161349en
dc.identifier.sourceurlhttp://scholar.lib.vt.edu/theses/available/etd-08112011-161349/en
dc.identifier.urihttp://hdl.handle.net/10919/28622en
dc.publisherVirginia Techen
dc.relation.haspartJose_BA_D_2011.pdfen
dc.rightsIn Copyrighten
dc.rights.urihttp://rightsstatements.org/vocab/InC/1.0/en
dc.subjectsynchronous systemsen
dc.subjectModel driven code generationen
dc.subjectsoftware synthesisen
dc.subjectmulti-threadingen
dc.subjectpolychronous formalismen
dc.titleFormal Model Driven Software Synthesis for Embedded Systemsen
dc.typeDissertationen
thesis.degree.disciplineElectrical and Computer Engineeringen
thesis.degree.grantorVirginia Polytechnic Institute and State Universityen
thesis.degree.leveldoctoralen
thesis.degree.namePh. D.en

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Jose_BA_D_2011.pdf
Size:
1.91 MB
Format:
Adobe Portable Document Format