As in other high-technology fields, in embedded systems software development, there is great benefit in the reuse of intellectual property. The special challenges of reuse in the embedded software field are caused by highly constrained software execution environments. One of the most neglected areas of embedded systems software development is reuse of device drivers and board support packages. The low-level software components involved are tedious to build because of the complexity and intricacy of the software-hardware interfaces specified by semiconductor manufacturers.


This paper discusses a new software development tool that is fast becoming a part of the embedded developer’s standard repertoire: the Device Driver Development Environment (3DE). The 3DE accelerates and provides automated support for development of board support packages and device drivers, using an approach based on reusable intellectual property.