US2023385070A1PendingUtilityA1

Boot process for early display initialization and visualization

Assignee: INTEL CORPPriority: Sep 18, 2020Filed: Jul 28, 2023Published: Nov 30, 2023
Est. expirySep 18, 2040(~14.1 yrs left)· nominal 20-yr term from priority
G06F 9/4403G06F 12/0811G06F 9/30047G06F 9/4406G06F 9/4401G06F 9/44521G06F 12/084G06F 2212/1016G06F 9/4405G09G 2360/08G09G 2330/026G09G 2360/121G09G 5/363
66
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Embodiments are directed to improving boot process for early display initialization and visualization. An embodiment of a system includes a plurality of processor cores; a cache coupled to the plurality of processor cores; and a controller circuit to: initialize a portion of the cache as static memory for hardware initialization code usage before beginning execution of the hardware initialization code after a power on of the hardware processor; and cause initialization of a display device to be performed using the portion of the cache, the initialization of the display device performed independently of initialization of dynamic memory of the hardware processor.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A hardware processor comprising:
 a plurality of processor cores;   a cache coupled to the plurality of processor cores; and   a controller circuit to:
 responsive to a power on of the hardware processor, initialize a portion of the cache as static memory for hardware initialization code usage before prior to execution of the hardware initialization code; and 
 execute the hardware initialization code using the static memory of the portion of the cache, wherein a boot sequence of the hardware initialization code is distributed across the plurality of processor cores utilizing parallel threads executing on the plurality of processor cores, and wherein the hardware initialization code to cause initialization of a display device to be performed for display device initialization and bring up; 
 wherein initialization and training of dynamic memory of the hardware processor occurs prior to booting to an operation system (OS) and occurs independently of and in parallel with initialization of the display device that utilizes the static memory. 
   
     
     
         2 . The hardware processor of  claim 1 , wherein the hardware initialization code is according to a Basic Input/Output System standard. 
     
     
         3 . The hardware processor of  claim 1 , wherein the hardware initialization code is according to a Unified Extensible Firmware Interface standard. 
     
     
         4 . The hardware processor of  claim 1 , wherein the hardware initialization code executes on the plurality of processor cores in parallel using the portion of the cache as the static memory. 
     
     
         5 . The hardware processor of  claim 1 , wherein the cache is shared by the plurality of processor cores and a graphics core. 
     
     
         6 . The hardware processor of  claim 1 , wherein the cache is an L4 cache. 
     
     
         7 . The hardware processor of  claim 1 , wherein the dynamic memory comprises dynamic random access memory (DRAM). 
     
     
         8 . The hardware processor of  claim 1 , wherein the portion of the cache as the static memory is locked down subsequent to execution of the hardware initialization code to prevent access to the portion. 
     
     
         9 . The hardware processor of  claim 1 , wherein the boot sequence comprises:
 a first boot event of a bootstrap processor (BSP) for handling one or more of a reset vector, processor mode switching, console enabling, creating bootloader memory layout, or chipset initialization;   a second boot event of one of the plurality of processor cores for filling first configuration parameters to initialize the dynamic memory; and   a third boot event of another of the plurality of processor cores for filling second configuration parameter to initialize hardware blocks.   
     
     
         10 . A non-transitory machine-readable medium comprises executable computer program instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
 responsive to a power on of a hardware processor comprising a plurality of processor cores coupled to a cache, initializing, by a controller, a portion of the cache as static memory for hardware initialization code usage before prior to execution of the hardware initialization code; and   executing the hardware initialization code using the static memory of the portion of the cache, wherein a boot sequence of the hardware initialization code is distributed across the plurality of processor cores utilizing parallel threads executing on the plurality of processor cores, and wherein the hardware initialization code to cause initialization of a display device to be performed for display device initialization and bring up;   performing display device initialization using the static memory from the portion of the cache, the hardware initialization code to cause initialization of a display device to be performed for display device initialization and bring up, wherein initialization and training of the dynamic memory of the system occurs prior to booting to an operation system (OS) and occurs independently of and in parallel with initialization of the display device that utilizes the static memory; and   transferring control of execution of the system from the hardware initialization code to operating system code executing on the system.   
     
     
         11 . The non-transitory machine-readable medium of  claim 10 , wherein the hardware initialization code is according to a Basic Input/Output System standard. 
     
     
         12 . The non-transitory machine-readable medium of  claim 10 , wherein the hardware initialization code is according to a Unified Extensible Firmware Interface standard. 
     
     
         13 . The non-transitory machine-readable medium of  claim 10 , wherein the executing comprises executing the hardware initialization code on the plurality of processor cores in parallel using the portion of the cache as the static memory to initialize the system. 
     
     
         14 . The non-transitory machine-readable medium of  claim 10 , wherein the portion of the cache as the static memory is locked down subsequent to execution of the hardware initialization code to prevent access to the portion. 
     
     
         15 . The non-transitory machine-readable medium of  claim 10 , wherein the boot sequence comprises:
 a first boot event of a bootstrap processor (BSP) for handling one or more of a reset vector, processor mode switching, console enabling, creating bootloader memory layout, or chipset initialization;   a second boot event of one of the plurality of processor cores for filling first configuration parameters to initialize the dynamic memory; and   a third boot event of another of the plurality of processor cores for filling second configuration parameter to initialize hardware blocks.   
     
     
         16 . A system comprising:
 a hardware processor comprising a plurality of processor cores;   a cache coupled to the hardware processor;   storage for hardware initialization code; and   a controller circuit to:
 responsive to a power on of the hardware processor, initialize a portion of the cache as static memory for hardware initialization code usage before prior to execution of the hardware initialization code; and 
 execute the hardware initialization code using the static memory of the portion of the cache, wherein a boot sequence of the hardware initialization code is distributed across the plurality of processor cores utilizing parallel threads executing on the plurality of processor cores, and wherein the hardware initialization code to cause initialization of a display device to be performed for display device initialization and bring up; 
 wherein initialization and training of dynamic memory of the hardware processor occurs prior to booting to an operation system (OS) and occurs independently of and in parallel with initialization of the display device that utilizes the static memory. 
   
     
     
         17 . The system of  claim 16 , wherein the hardware initialization code is according to a Basic Input/Output System standard. 
     
     
         18 . The system of  claim 16 , wherein the hardware initialization code is according to a Unified Extensible Firmware Interface standard. 
     
     
         19 . The system of  claim 16 , wherein the hardware initialization code executes on the plurality of processor cores in parallel using the portion of the cache as the memory. 
     
     
         20 . The system of  claim 16 , wherein the boot sequence comprises:
 a first boot event of a bootstrap processor (BSP) for handling one or more of a reset vector, processor mode switching, console enabling, creating bootloader memory layout, or chipset initialization;   a second boot event of one of the plurality of processor cores for filling first configuration parameters to initialize the dynamic memory; and   a third boot event of another of the plurality of processor cores for filling second configuration parameter to initialize hardware blocks.

Join the waitlist — get patent alerts

Track US2023385070A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.