Term · Embedded Software & Tools
Firmware
Software held in non-volatile memory on a device and executed directly by its processor or microcontroller, providing the lowest layer of control over the hardware.
It sits between the silicon and any operating system, and is usually shipped and versioned by the silicon or board vendor.
- Also known as
- Embedded software, Microcode image
- Type
- Term
- Domain
- Embedded Software & Tools, Firmware and boot
- Also relevant to
- Design & Architecture
Notes
The boundary with application software is commercial as much as technical: firmware is what the chip vendor maintains, applications are what the customer writes.
Overview
Firmware is the low-level software stored in non-volatile memory inside a device, which runs on its own processor or microcontroller and controls the hardware directly. It brings the hardware up when power is applied, configures clocks, memory and peripherals, and often keeps running to manage power, security or one specific function. In the chip industry it is usually written and maintained by the silicon or module vendor rather than by the end customer.
How it works
Firmware lives in memory that keeps its contents without power, either read-only memory or programmable memory such as flash. When power is applied, the processor runs boot code, which loads further firmware and hands over to the next stage, which may be an operating system. Because an attack on this code can leave a system unusable, NIST guidance sets out ways to protect, detect and recover platform firmware, including checking code signatures.
There are several kinds. Microcontroller firmware may be the whole program of a simple device such as a keyboard. Boot firmware, such as UEFI on PCs and servers, which replaced the older BIOS, prepares a platform for its operating system. Firmware ships as an image that can be replaced by reprogramming the memory, often called flashing, and many devices allow updates in the field.
Firmware work often starts before chips exist: emulation systems let teams bring up low-level drivers and firmware once the hardware design is mature enough, and the work is finished on first silicon during bring-up.
Examples
- UEFI firmware on a PC or server board, which initialises the hardware and hands over to the operating system.
- Firmware in the microcontroller of a computer keyboard.
- Controller firmware in a solid-state drive, which manages how data is stored in its flash memory.
- Field updates for printers, cameras and other peripherals, which install a new firmware image.
- Bringing up firmware on a hardware emulator before the first chips arrive.
Why it matters
A chip is not usable until its firmware works, so firmware schedules often decide when bring-up finishes and when a product can launch. Firmware is also a security target, so update and recovery mechanisms matter for the whole life of a product. Firmware engineers, embedded software engineers, bring-up engineers and security engineers share that load.
In the chip lifecycle, firmware work starts before silicon, peaks during bring-up and validation, and continues through production with updates and maintenance releases.
It matters most to: Embedded Software Engineer, Firmware Engineer, Silicon Bring-up Engineer, Silicon Security Engineer
Common confusions
- Not the same as device driver
- A driver runs inside the host's operating system and talks to a device; firmware runs on the device itself. Many devices need both. Firmware vs device driver
- Not the same as microcode
- Firmware originally meant the microcode inside a processor that implements its machine instructions. Today the word covers far more.
- Not the same as application software
- Firmware is tied to specific hardware and ships with it; application software is written by the customer and runs on top.
Related standards
- ISO 26262 (road vehicles, functional safety)
Sources
- SP 800-193: Platform Firmware Resiliency Guidelines (opens in a new tab), National Institute of Standards and Technology (NIST), 2026-10-22
- Emulation Systems (opens in a new tab), Synopsys, 2026-10-22
- Firmware (Wikipedia) (opens in a new tab), Wikimedia Foundation, 2026-10-22
- UEFI (Wikipedia) (opens in a new tab), Wikimedia Foundation, 2026-10-22
Related terms
Part of the Embedded Software & Tools glossary, with every term in the topic and the lifecycles, tools and standards that use them.
Where it appears on the Hub
Used on 392 pages of the Hub. In each group, the pages that mention it most come first.
Lifecycle stages and gates
- Architecture and partitioning approved (System lifecycle)
- Firmware, Drivers & Board Support (Firmware and software lifecycle)
- Product Silicon Tape-out, Bring-up & Sampling (Startup lifecycle)
- Software & Firmware Development (System lifecycle)
- System Architecture & Partitioning (System lifecycle)
- Alpha release (Firmware and software lifecycle)
- and 55 more
Roles
Skills
Standards
Tools
Suggest an improvement
Suggest an improvement to this entry
A clearer definition, an example, a correction or a source an editor can check. Editors review every suggestion before the entry changes.
Last reviewed . Written by The Semiconductor Hub editorial team. The full glossary