Automatic embedded device driver development for ARM’s LPC2148 peripherals

Read the full article See related articles

Listed in

This article is not in any list yet, why not save it to one of your lists.
Log in to save this article

Abstract

Device drivers are programs that directly interact with and control the hardware. They are a crucial component of computer systems, acting as a bridge between software and hardware. The significance of device drivers is increased in embedded systems due to the diverse and specialized hardware they contain. Historically device driver code development was highly time-intensive, susceptible to errors due to manual intervention, and complex for several reasons, including the numerous operating systems running on the hardware, redesigning of the hardware and software for the improved version of the embedded system, the communication gap between the drive development teams, and tight deadlines. The need for automatic device-driver generation that doesn’t involve manual processes and can adapt to technological advances in hardware is growing. In the proposed work we will demonstrate an effective method of capturing the Register Transfer Level (RTL) information that is necessary for optimizing the driver code using the automatic device-driver code generation of ARM’s LPC2148 Analog-to-Digital Converter (ADC), Pulse Width Modulation (PWM), Watch Dog Timer (WDT), and Inter-Integrated Circuit (I2C) peripherals. We use a " DDGEN " synthesis tool that automatically generates device-drivers for the target embedded system hardware by receiving hardware and software behaviour specifications as inputs. Due to the increased abstraction levels, the hardware and software issues inherent in the updated device versions and inefficient team communication are resolved and improved productivity is achieved.

Article activity feed