Comprehensive BIOS & UEFI Overview
This guide provides a holistic view of BIOS and UEFI firmware, including their roles, interaction with hardware (SI/PI), ACPI, SMBIOS, IFWI, and DDR
initialization. Understanding these relationships is crucial for platform engineers, firmware developers, and hardware designers.
1. BIOS vs UEFI — Firmware Comparison
Feature
BIOS (Legacy)
UEFI
Boot Mode
MBR-based, 16-bit real mode
GPT-compatible, 32/64-bit protected mode
Interface
Text-based, limited configuration
Graphical interface, mouse support, modular setup
Secure Boot
Not supported
Supported, cryptographically verifies OS loader
Driver Support
Built-in legacy drivers only
Modular, loadable drivers, platform firmware integration
Firmware Stack
Monolithic
Layered: IFWI → UEFI → ACPI/SMBIOS → OS
Initialization Speed
Slower, sequential POST
Faster, parallel device initialization
Extensibility
Limited
High — supports modern features, networking, remote management
2. System Boot Sequence — Step by Step
When a user presses the power button, the system goes through several stages involving firmware, hardware initialization, and OS handoff:
1. Power-On Reset (POR) Notes: Power is applied, voltage rails start to stabilize. Initial checks by SoC/CPU power management blocks ensure safe
conditions. PI (Power Integrity) is critical here.
2. IFWI / Early Firmware Execution - IFWI initializes core hardware blocks, memory controller, and SerDes PHYs - Programs DDR timing, drive
strengths, and ODT (On-Die Termination) - Loads microcode for CPU/PSP and other controllers Note: Firmware settings here directly influence SI
(Signal Integrity) and PI
3. POST (Power-On Self Test) - Legacy BIOS or UEFI checks CPU, memory, chipset, and basic peripherals - Early DDR read/write tests, checks
memory sizing Note: This ensures basic system stability before full firmware handoff
4. UEFI Driver & Module Initialization - Loads modular drivers for storage, network, and peripherals - Configures platform devices for OS
compatibility - Initializes ACPI tables, exposes system topology and power capabilities - Populates SMBIOS tables with hardware inventory
5. ACPI Table Setup - Firmware provides DSDT/SSDT tables - Defines sleep states, thermal zones, power domains - OS will later use these to
manage CPU throttling, fan control, device sleep, etc.
6. SMBIOS Table Setup - Provides system info: CPU, RAM, motherboard, firmware versions - OS and management software query this data for
inventory and diagnostics
7. Memory Initialization - DDR PHY and controller perform training (write leveling, read calibration) - ODT, drive strength, and timing optimized to
meet SI requirements - Ensures reliable data transfer at rated memory speeds
8. Load-Line Calibration & Voltage Tuning - IFWI/UEFI programs Vcore, VccIO, VccSA rails - Mitigates voltage droop and ensures PI across all
active blocks
9. Bootloader / OS Handoff - UEFI boot manager locates OS loader on storage - Secure Boot validates the loader signature - OS kernel and drivers
start, consuming ACPI/SMBIOS tables and relying on SI/PI settings
10. OS Runtime - Dynamic Voltage and Frequency Scaling (DVFS) may adjust rails - SI/PI now maintained via hardware design and firmware preconfiguration - Device drivers fully operational, leveraging all firmware-initialized hardware
Summary Diagram (Textual)
Power ON
│
├─► Voltage Rails Stabilize (PI)
│
├─► IFWI Execution
│
├─ Microcode
│
├─ DDR/SerDes PHY init (SI/PI)
│
├─ Controller & Security firmware
│
├─► POST / Basic Hardware Check
│
├─► UEFI Drivers & Modules
│
├─ Peripheral init
│
├─ ACPI table creation
│
├─ SMBIOS table creation
│
├─► Memory Training (DDR)
│
├─ ODT & Drive Strength
│
├─ Timing Calibration (SI)
│
├─► Load-Line & Voltage Tuning (PI)
│
├─► Bootloader / OS Loader
│
└─► OS Runtime
├─ ACPI & SMBIOS consumption
└─ DVFS & runtime PI/monitoring
3. Key Takeaways
BIOS/UEFI initialize hardware and prepare the system for OS boot
IFWI consolidates early low-level firmware, programming DDR, SerDes, and voltage rails
ACPI and SMBIOS provide standardized tables for OS power management and hardware information
SI and PI are hardware-critical phenomena; firmware configures parameters to mitigate risks
Memory training and PHY configuration are key for reliable high-speed operation
Understanding the full stack helps in debugging boot issues, performance tuning, and firmware development