• 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