About Managing FPGA/EPLD/BIOS Firmware
Cisco switches contain several programmable logical devices (PLDs) that provide hardware functionalities in all modules. PLDs include electronic programmable logic devices (EPLDs) and field programmable gate arrays (FPGAs). Cisco provides periodic PLD image upgrades to enhance hardware functionality or to resolve known issues.
In Cisco ACI, there is no need for you to manually manage FPGA/EPLD/BIOS firmware individually or explicitly. Instead, when ACI switches are managed by APICs and the regular firmware upgrade is performed for switches through the APICs, the appropriate FPGA/EPLD/BIOS firmware that is included in the ACI switch image itself (such as aci-n9000-dk9.14.2.1i.bin) will be automatically applied.
However, when a switch boots up with an ACI switch image without going through the upgrade triggered through the APICs, the FPGA/EPLD/BIOS firmware running in the ACI switch will not be upgraded with the appropriate versions from the ACI switch image. This may result in a mismatched FPGA/EPLD/BIOS version. This may occur on a switch if you received it through a new order, Product Returns & Replacements (RMA), or when you convert the switch from standalone NX-OS software to ACI switch software.
Prior to Cisco APIC release 5.2(1) and ACI switch release 15.2(1), at such times, you had to downgrade the switch once and then perform the upgrade to the desired version through the APICs in order to upgrade FPGA/EPLD/BIOS versions to the appropriate ones.
Starting from Cisco APIC release 5.2(1) and ACI switch release 15.2(1), ACI switches will automatically upgrade the FPGA/EPLD/BIOS based on the booting ACI switch image during a normal boot up sequence for the following components, even if it’s not an upgrade operation performed through the APICs:
-
Leaf switches and box-type spine switches: EPLD/FPGA/BIOS is automatically upgraded on the switch itself
-
Modular-type spine switches: EPLD/FPGA/BIOS is automatically upgraded on these components:
-
Supervisor module
-
Linecard module
-
Fabric module
-
When one of the supported components listed above boots up, the system automatically performs the following actions to determine if the EPLD/FPGA/BIOS image is in sync with the Cisco ACI or NX-OS image:
-
The system compares the BIOS versions and performs an upgrade at the BIOS level if it finds that the images are out of sync.
-
The system compares the EPLD/FPGA versions and performs an upgrade at the EPLD/FPGA level if it finds that the images are out of sync.
-
If the system has to perform an upgrade at any of the levels (at the BIOS level or at the EPLD/FPGA level), the system then performs a power cycle on that component (the switch, supervisor module, linecard module, or fabric module).
These automatic FPGA/EPLD/BIOS upgrades during a normal boot up sequence is performed per component. For instance, when a new linecard module is inserted and boots up with the base ACI switch image downloaded from the supervisor module, only the new linecard module is power-cycled to apply the FPGA/EPLD/BIOS from the base ACI switch image. Other modules will not be impacted.