Actel has a range of processors and subsystem IP available for use in building system-level designs in our FPGA devices. Actel has developed software drivers to ease the use of the subsystem cores with the Cortex™-M1, CoreMP7 (ARM7), and Core8051s processors. The drivers are available for FREE and delivered as C source, so that they can be easily edited, if needed, and included in a program file. The drivers provide a set of functions used to make use of the subsystem peripherals. These drivers hide the implementation details of a peripheral's operations behind a driver application programming interface (API). This allows the application developer to be only concerned with a peripheral's function and not its internal operation.
Software drivers are available for the following cores and can be individually downloaded by clicking on the links below:
You can also download all of the drivers in a bundle.
The HALs enable the software drivers to be used without modification with Cortex-M1, CoreMP7 and Core8051s and are available for FREE. The software driver's interaction with the hardware platform is done through the HAL. This isolates the driver's implementation from the hardware platform variations. A driver implementation typically interacts with the hardware peripheral it is controlling through sequences of register reads and register writes. The implementation of the HAL translates the read and write requests into the bus transactions relevant to the hardware platform. This enables programmers to seamlessly reuse code even when the hardware platform changes.
The Cortex-M1 HAL is included with each individual software driver that is available for download.
Using a Real-Time Operating System (RTOS) adds two layers to the basic bare metal architecture described above. The application is written using the RTOS API. An RTOS adaptation layer is used to interface the Actel HAL and bare metal drivers to the RTOS driver framework.

RTOS-based System Firmware Architecture
The software drivers and HALs can be used in systems that use the following RTOS: