Transforming Concepts to Reality
- Firmware Architecture Design. The architecture of the firmware in a product is extremely important to the final performance, responsiveness, and reliability. It must be designed to handle all assigned tasks without missing events, causing undesirable delays, or making decisions on old data. These undesirable or delayed responses are regularly observed in common mobile and PC software that often put user interaction in the back seat. This is generally unacceptable and potentially dangerous in a real time control system. The firmware architecture of a control system must not only respond to user inputs without noticeable delay, but must handle events like power switching and overload detection with precision. Good architecture is central to achieving the optimal balance between tasks assigned to hardware and tasks assigned to firmware.
- Firmware Specification. Radius is expert at creating documentation to guide the programming efforts. The firmware specification document includes the outline of the architecture, as well as details of each specific function. It may also include comments and cautions for certain processes, and list of test steps for validation of the firmware.
- Firmware Implementation. We have written rock-solid firmware for control systems deployed into millions of products sold, however our key strength is in oversight and management of a firmware development effort. Since we understand the architectural requirements of a real time system and proper coding techniques, and are excellent at debug and analysis, we can keep the firmware effort on track with the end firmware product being very reliable and performing according to the requirements.
- Firmware Debug. The earlier one can find a flaw in a firmware system , the less costly it is both in money and reputation. This begins with proper translation of the requirements to the specifications and creation of the architecture. The specification of the firmware must include details about relationships between functions that are designed to eliminate bugs. During the firmware implementation, strict adherence to clean structuring, clear labeling, and uncluttered memory allocations help in producing code with minimal latent bugs. After basic bench debug to get the code running, following the predefined test protocol in detail will identify most bugs before any field testing. Even with these efforts, some real time bugs can persist unseen. Radius is very experienced in analyzing and debugging these types of latent bugs.
- Optimal Firmware-Hardware Balancing. With the increasing availability of highly integrated hardware modules, and the availability of high level software tools, the divide between hardware and firmware expertise is widening. To ensure optimal system cost and performance, Radius has unique expertise in straddling this divide, understanding when to assign a task to hardware or to software, or design the system to utilize both hardware and software. This is particularly Important in consumer and low power systems where hardware resources (which add cost and power) may be limited. At the same time, some tasks must be performed in hardware to achieve proper sensitivity or timing.
Transforming Concepts to Reality