
Storage/SAN Firmware development

The firmware or embedded application is developed on the underlying RISC processor. Azure has experience to work with the following processors - MIPS, ARM/StrongARM Architecture, Intel RISC – i960, IXP1200 or x86-based.


Azure was involved with American Megatrends Inc(AMI), USA in developing their PCI based RAID HBA Product series. In a number of projects with AMI, Azure worked on SCSI and Fibre Channel Interface.
- The Fibre Channel Initialization module involves downloading Qlogic FC Firmware on their chipset followed by initialization and register setup for the Mailbox and command/Status queues.
- Fibre Channel Device Discovery, creates the complete device map in a dual loop configuration, automatic LIP handling and transparent re-mapping of devices based on WWN.
- RAID Configuration detection module handles automatic detection and resolution of conflicting configuration data, specially in case of physical drive set migration from another configured system. Azure was involved in development of proprietary 3-pass algorithm for configuration resolution mechanism.
- Drive Initialization Module is responsible for driving the devices through Startup state machine – Inquiry, SPINUP, TUR, RDCAP and related error recovery.
- Azure worked with a US-based SAN start-up company, in designing their iSCSI based SAN product. This project was a combination of Onshore and offshore assignments and the size of the project is 3 man-years.
- Initial System design: Azure took part in the design from the very beginning of the product conceptualization. Features incorporated in design are switched fabric topology, storage virtualization, distributed processing for fault-tolerance, multi-protocol device handling capabilities.
- Development on RTLinux and VxWorks(Tornado), on IXP1200 and StrongARM based Platform
- Device virtualization logic for SAN devices is an independent module in the layered firmware architecture. The module provides LUN masking, zoning, partitioning, load balancing through redundant paths and optionally RAID capabilities. The virtualization layer also provides hook for remote mirroring and backup.
- The module for Drive Initialization for both SCSI and FC devices handles the device Startup State machine. The module was developed by Azure and integrated to the firmware.
- Initial setup and configuration is done through DHCP like protocol.

