Synthesizing operating system based device drivers in embedded systems
S Wang, S Malik - Proceedings of the 1st IEEE/ACM/IFIP international …, 2003 - dl.acm.org
S Wang, S Malik
Proceedings of the 1st IEEE/ACM/IFIP international conference on Hardware …, 2003•dl.acm.orgThis 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 to check soundness …
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 to check soundness …
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 to 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.
Showing the best result for this search. See all results