In-system provisioning of firmware for a hardware platform

US10402565B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10402565-B2
Application numberUS-201715419368-A
CountryUS
Kind codeB2
Filing dateJan 30, 2017
Priority dateMar 28, 2014
Publication dateSep 3, 2019
Grant dateSep 3, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A hardware platform includes a nonvolatile storage device that can store system firmware as well as code for the primary operating system for the hardware platform. The hardware platform includes a controller that determines the hardware platform lacks functional firmware to boot the primary operating system from the storage device. The controller accesses a firmware image from an external interface that interfaces a device external to the hardware platform, where the external device is a firmware image source. The controller provisions the firmware from the external device to the storage device and initiates a boot sequence from the provisioned firmware.

First claim

Opening claim text (preview).

What is claimed is: 1. A hardware platform comprising: a processor; a nonvolatile storage device coupled with the processor and mounted on the hardware platform; and hardware logic to: determine whether functional firmware to boot the hardware platform is stored on the nonvolatile storage device; in response to a determination that the nonvolatile storage device lacks functional firmware, access firmware from a source via an external hardware interface; train an interface to the nonvolatile storage device in a low speed mode; transfer the firmware to the nonvolatile storage device in a high speed mode; store the firmware on the nonvolatile storage device via memory access commands; and initiate a boot sequence for the hardware platform from the firmware stored on the nonvolatile storage device. 2. The hardware platform of claim 1 , wherein: the nonvolatile storage device comprises a byte addressable nonvolatile storage device. 3. The hardware platform of claim 1 , wherein the nonvolatile storage device comprises at least one of three dimensional (3D) cross point memory, phase change memory, resistive memory, nanowire memory, ferroelectric transistor random access memory (FeTRAM), magnetoresistive random access memory (MRAM), and spin transfer torque (STT)-MRAM. 4. The hardware platform of claim 1 , wherein the hardware logic is to: store the firmware on the nonvolatile storage device as a first firmware image; store a second copy of the firmware on the nonvolatile storage device as a secondary firmware image; and in response to a determination that the first firmware image is invalid, initiate the boot sequence for the platform from the secondary firmware image. 5. The hardware platform of claim 1 , wherein the nonvolatile storage device is to store the firmware for the platform and to operate as system memory for the platform. 6. The hardware platform of claim 1 , wherein the hardware platform comprises a two-level memory (2LM) system, and the nonvolatile storage device comprises a second level memory device in the 2LM. 7. The hardware platform of claim 1 , wherein the nonvolatile storage device comprises far memory, and a second storage device comprises near memory. 8. The hardware platform of claim 7 , wherein the interface between the nonvolatile storage device and the processor comprises a far memory interface (FMI). 9. The hardware platform of claim 7 , further comprising a volatile memory device as the near memory. 10. The hardware platform of claim 9 , wherein the second storage device is to operate as a cache for the nonvolatile storage device. 11. The hardware platform of claim 1 , wherein the hardware logic comprises a controller device, and wherein the controller device is to access the firmware for the controller device. 12. The hardware platform of claim 1 , wherein the hardware logic is to access the firmware for the processor. 13. The hardware platform of claim 1 , wherein the external hardware interface comprises a hardware interface compliant with one of a universal serial bus interface, a local area network interface, or a wide area network interface. 14. The hardware platform of claim 1 , wherein the hardware logic is further to engage security over the interface to the nonvolatile storage device. 15. The hardware platform of claim 14 , wherein the hardware logic further comprises: on-chip fuses associated with a symmetric key security protocol with the nonvolatile storage device, wherein the hardware logic is to blow one of the on-chip fuses in response to generation of a symmetric key. 16. The hardware platform of claim 1 , wherein the hardware logic is to further: map serial peripheral interface (SPI) operations to the memory access commands to store and access the firmware on the nonvolatile storage device. 17. A method comprising: determining whether functional firmware to boot a hardware platform is stored on a nonvolatile storage device, wherein the nonvolatile storage device is mounted on the hardware platform; in response to determining the nonvolatile storage device lacks functional firmware, accessing firmware from a source via an external hardware interface; training an interface to the nonvolatile storage device while in a low speed mode; transferring the firmware to the nonvolatile storage device while in a high speed mode; storing the firmware on the nonvolatile storage device via memory access commands; and initiating a boot sequence for the hardware platform from the firmware stored on the nonvolatile storage device. 18. The method of claim 17 , further comprising: storing the firmware on the nonvolatile storage device as a first firmware image; storing a second copy of the firmware on the nonvolatile storage device as a secondary firmware image; and in response to determining that the first firmware image is invalid, initiating the boot sequence for the platform from the secondary firmware image. 19. The method of claim 17 , wherein accessing the firmware comprises: accessing, by a controller device, the firmware for the controller device. 20. The method of claim 17 , wherein accessing the firmware comprises: accessing, by a controller device, firmware for a processor coupled with the nonvolatile storage device. 21. The method of claim 17 , wherein the hardware platform comprises a two-level memory (2LM) system, and the nonvolatile storage device comprises a second level memory device in the 2LM. 22. The method of claim 17 , wherein the nonvolatile storage device comprises far memory, and a second memory device comprises near memory. 23. The method of claim 17 , wherein the nonvolatile storage device comprises at least one of three dimensional (3D) cross point memory, phase change memory, resistive memory, nanowire memory, ferroelectric transistor random access memory (FeTRAM), magnetoresistive random access memory (MRAM), and spin transfer torque (STT)-MRAM. 24. A hardware platform comprising: a processor; a nonvolatile storage device coupled with the processor and mounted on the hardware platform; and hardware logic to: determine whether functional firmware to boot the hardware platform is stored on the nonvolatile storage device; in response to a determination that the nonvolatile storage device lacks functional firmware, access firmware from a source via an external hardware interface; store the firmware on the nonvolatile storage device via memory access commands; and initiate a boot sequence for the hardware platform from the firmware stored on the nonvolatile storage device; wherein the hardware logic comprises a controller device, and wherein the controller device is to access the firmware for the controller device. 25. The hardware platform of claim 24 , wherein: the nonvolatile storage device comprises a byte addressable nonvolatile storage device. 26. The hardware platform of claim 24 , wherein the nonvolatile storage device comprises at least one of three dimensional (3D) cross point memory, phase change memory, resistive memory, nanowire memory, ferroelectric transistor random access memory (FeTRAM), magnetoresistive random access memory (MRAM), or spin transfer torque (STT)-MRAM. 27. The hardware platform of claim 24 , wherein the hardware logic to store the firmware on the nonvolatile storage device is to: train an interface between the processor and the nonvolatile storag

Assignees

Inventors

Classifications

  • Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities · CPC title

  • Secure boot · CPC title

  • Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms · CPC title

  • G06F21/572Primary

    Secure firmware programming, e.g. of basic input output system [BIOS] · CPC title

  • Boot up procedures · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10402565B2 cover?
A hardware platform includes a nonvolatile storage device that can store system firmware as well as code for the primary operating system for the hardware platform. The hardware platform includes a controller that determines the hardware platform lacks functional firmware to boot the primary operating system from the storage device. The controller accesses a firmware image from an external inte…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F21/572. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 03 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).