• DocumentCode
    348106
  • Title

    Compositional software synthesis of communicating processes

  • Author

    Zhu, Xiaohan ; Bill Lia

  • Author_Institution
    Dept. of Electr. & Comput. Eng., California Univ., San Diego, La Jolla, CA, USA
  • fYear
    1999
  • fDate
    1999
  • Firstpage
    646
  • Lastpage
    651
  • Abstract
    We describe a new compositional software synthesis method for synthesizing concurrent software programs into ordinary C programs so that they can be executed on embedded processors without the need for a run-time multitasking operating system. The synthesized C program can be readily retargeted to different processors using available optimizing C compilers. The method works by transforming the initial input specification into a set of interacting Petri net components. It then applies a quasi-static scheduling method on each Petri net component to produce a corresponding state machine model. The resulting set of interacting state machines are then mapped into a single C program, which can finally be compiled to native machine code via conventional C compilers. In the degenerate case, each process in the initial input specification is mapped into a separate Petri net component. In this case, the size of the resulting C program is directly proportional to the size of the original concurrent specification. Thus, this technique can scale well to large applications and is immune to code explosion
  • Keywords
    Petri nets; application specific integrated circuits; communicating sequential processes; embedded systems; finite state machines; firmware; formal specification; optimising compilers; parallel programming; program interpreters; ASIC applications; C programs; Embedded software; compositional software synthesis; concurrent software programs; concurrent specification; embedded processors; interacting Petri net components; optimizing C compilers; quasi-static scheduling method; state machine model; Application software; Concurrent computing; Drives; Embedded computing; Embedded software; Explosions; Operating systems; Optimizing compilers; Processor scheduling; Program processors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Design, 1999. (ICCD '99) International Conference on
  • Conference_Location
    Austin, TX
  • ISSN
    1063-6404
  • Print_ISBN
    0-7695-0406-X
  • Type

    conf

  • DOI
    10.1109/ICCD.1999.808610
  • Filename
    808610