Hardware-software co-design of embedded systems: the POLIS approach
Hardware-software co-design of embedded systems: the POLIS approach
Operating system based software generation for systems-on-chip
Proceedings of the 37th Annual Design Automation Conference
Writing UNIX Device Drivers
Grammar-based Hardware Synthesis of Data Communication Protocols
ISSS '96 Proceedings of the 9th international symposium on System synthesis
RTOS Modeling for System Level Design
DATE '03 Proceedings of the conference on Design, Automation and Test in Europe - Volume 1
Modeling and Integration of Peripheral Devices in Embedded Systems
DATE '03 Proceedings of the conference on Design, Automation and Test in Europe - Volume 1
Automatic generation of equivalent architecture model from functional specification
Proceedings of the 41st annual Design Automation Conference
NDL: a domain-specific language for device drivers
Proceedings of the 2004 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
HAIL: a language for easy and correct device access
Proceedings of the 5th ACM international conference on Embedded software
Scheduling refinement in abstract RTOS models
ACM Transactions on Embedded Computing Systems (TECS)
Proceedings of th 12th International Workshop on Software and Compilers for Embedded Systems
Automatic customization of device drivers for IP-cores used with assorted CPU organizations
CODES+ISSS '09 Proceedings of the 7th IEEE/ACM international conference on Hardware/software codesign and system synthesis
Correct-by-construction generation of device drivers based on RTL testbenches
Proceedings of the Conference on Design, Automation and Test in Europe
Correctness proofs for device drivers in embedded systems
SSV'10 Proceedings of the 5th international conference on Systems software verification
Synchronous programming of device drivers for global resource control in embedded operating systems
Proceedings of the 2011 SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems
Automatic generation of hardware/software interface with product-specific debugging tools
EUC'06 Proceedings of the 2006 international conference on Embedded and Ubiquitous Computing
Hi-index | 0.00 |
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.