DocumentCode
1920098
Title
On the Deterministic Multi-threaded Software Synthesis from Polychronous Specifications
Author
Jose, Bijoy A. ; Shukla, Sandeep K. ; Patel, Hiren D. ; Talpin, Jean-Pierre
Author_Institution
FERMAT Lab., Virginia Polytech. Inst. & State Univ., Blacksburg, VA
fYear
2008
fDate
5-7 June 2008
Firstpage
129
Lastpage
138
Abstract
In order to exploit the emerging multi-core processors, creating multi-threaded applications is going to be a necessity. However, resolving concurrency, synchronization, and coordination issues, and tackling the non-determinism germane in multi-threaded software is extremely difficult. Ensuring deterministic behavior and correctness with respect to the specification is necessary for safe execution of such code. It is desirable to synthesize multi-threaded code from formal specifications using a provably ´correct-by- construction´ approach. In the past, reasonable success has been achieved in the ´correct-by-construction´ sequential software synthesis for embedded reactive systems from synchronous programming models. Here we target deterministic multi-threaded software synthesis from deterministic specifications, such that the behavior of the code is semantically equivalent to that of the specification. We choose the polychronous model of computation for specification because (i) such specifications are multi-rate, reactive, concurrent and can be made deterministic through constraints on the environment, and (ii) formal verification methodologies and tools exist for such specifications. In this paper, we analyze under what condition a polychronous specification can be synthesized into multi-threaded C-code preserving its semantics. We also discuss how the synchronous data flow graph structure for a polychronous specification can be used to infer the threading structure of the resulting C-code.
Keywords
data flow graphs; formal specification; multi-threading; program verification; synchronisation; data flow graph structure; deterministic multithreaded software synthesis; formal verification; polychronous specifications; synchronization; Application software; Concurrent computing; Formal specifications; Multicore processing; Operating systems; Programming profession; Signal generators; Software systems; Specification languages; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Formal Methods and Models for Co-Design, 2008. MEMOCODE 2008. 6th ACM/IEEE International Conference on
Conference_Location
Anaheim, CA
Print_ISBN
978-1-4244-2417-7
Type
conf
DOI
10.1109/MEMCOD.2008.4547700
Filename
4547700
Link To Document