3 firmware architecture – Artesyn ATCA-8310 Installation and Use (May 2014) User Manual
Page 204

Intelligent Peripheral Management Controller
ATCA-8310 Installation and Use (6806800M72E)
204
7.3
Firmware Architecture
The IPMC and MMC firmware basically consists of three major parts:
Boot loader
Hardware Abstraction Layer (HAL)
Application Layer
The boot loader maintains redundant copies of the firmware in flash. Each time the IPMI
firmware is upgraded, a redundant copy of the current IPMI firmware is made in flash.
The Hardware Abstraction Layer (HAL) is responsible for initializing the H8S/ATMEL and
making all preparations necessary for running code written in C. The time management facility
of the HAL is responsible for providing a means for measuring time and detecting timeout
conditions. The device drivers are responsible for implementing high-level interfaces to the
hardware.
The Application layer is implemented as a multi threaded application. The main thread reads
incoming messages/events from various inbound queues, processes these messages/events,
and produces outgoing traffic to appropriate hardware interfaces.
The IPMC implements a number of subsidiary threads in addition, to serve RTM module
discovery and e-keying management.