• DocumentCode
    2660421
  • Title

    Synthesizing operating system based device drivers in embedded systems

  • Author

    Wang, Shaojie ; Malik, Sharad

  • Author_Institution
    Dept. of Electr. Eng., Princeton Univ., NJ, USA
  • fYear
    2003
  • fDate
    1-3 Oct. 2003
  • Firstpage
    37
  • Lastpage
    44
  • Abstract
    This paper presents a correct-by-construction synthesis method for generating operating system based device drivers from a formally specified device behavior model. Existing driver development is largely manual using an ad-hoc design methodology. Consequently, this task is error prone and becomes a bottleneck in embedded system design methodology. Our solution to this problem starts by accurately specifying device access behavior with a formal model, viz. extended event driven finite state machines. We state easy check soundness conditions on the model that subsequently guarantee properties such as bounded execution time and deadlock-free behavior. We design a deadlock-free resource accessing scheme for our device access model. Finally, we synthesize an operating system (OS) based event processing mechanism, which is the core of the device driver, using a disciplined methodology that assures the correctness of the resulting driver. We validate our synthesis method using two case studies: an infrared port and the USB device controller for an SA1100 based handheld. Besides assuring a correct-by-construction driver, the size of the specification is 70% smaller than a manually written driver, which is a strong indicator of improved design productivity.
  • Keywords
    device drivers; formal specification; high level synthesis; operating systems (computers); system buses; systems analysis; OS based event processing mechanism; SA1100 based handheld; USB device controller; ad-hoc design; bounded execution time; correct-by-construction driver; correct-by-construction synthesis method; deadlock-free behavior; deadlock-free resource accessing scheme; device access model; device behavior model; device driver; embedded system design; event driven state machines; extended state machines; finite state machines; infrared port; operating system; Automatic programming; Control system synthesis; Design methodology; Embedded system; Formal specifications; Operating systems; Permission; Productivity; Software engineering; System recovery;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Hardware/Software Codesign and System Synthesis, 2003. First IEEE/ACM/IFIP International Conference on
  • Conference_Location
    Newport Beach, CA, USA
  • Print_ISBN
    1-58113-742-7
  • Type

    conf

  • DOI
    10.1109/CODESS.2003.1275253
  • Filename
    1275253