CN115510803A - 熔丝配方更新机制 - Google Patents
熔丝配方更新机制 Download PDFInfo
- Publication number
- CN115510803A CN115510803A CN202210545699.4A CN202210545699A CN115510803A CN 115510803 A CN115510803 A CN 115510803A CN 202210545699 A CN202210545699 A CN 202210545699A CN 115510803 A CN115510803 A CN 115510803A
- Authority
- CN
- China
- Prior art keywords
- fuse
- data
- soc
- memory
- override
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000007246 mechanism Effects 0.000 title description 6
- 230000015654 memory Effects 0.000 claims abstract description 84
- 238000000034 method Methods 0.000 claims description 18
- 238000012795 verification Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 7
- 239000003795 chemical substances by application Substances 0.000 description 19
- 238000004519 manufacturing process Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 11
- 238000013500 data storage Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 230000001934 delay Effects 0.000 description 6
- 238000004146 energy storage Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 4
- 229910052710 silicon Inorganic materials 0.000 description 4
- 239000010703 silicon Substances 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010248 power generation Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C17/00—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
- G11C17/14—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
- G11C17/16—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM using electrically-fusible links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
- G06F15/7842—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
- G06F15/7853—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers) including a ROM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C17/00—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
- G11C17/14—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
- G11C17/18—Auxiliary circuits, e.g. for writing into memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/785—Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/785—Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes
- G11C29/789—Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes using non-volatile cells or latches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C2029/4402—Internal storage of test result, quality data, chip identification, repair information
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
- G11C29/4401—Indication or identification of errors, e.g. for repair for self repair
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
公开了一种计算机平台。计算机平台包括:用于存储熔丝覆盖数据的非易失性存储器;以及耦接到所述非易失性存储器的片上系统(SOC),该片上系统包括:用于存储熔丝数据的熔丝存储器;以及安全微控制器,该安全微控制器用于接收熔丝覆盖数据,并执行用于使用熔丝覆盖数据覆写存储在熔丝存储器中的熔丝数据的熔丝覆盖。
Description
技术领域
本发明涉及一种熔丝配方更新机制。
背景技术
片上系统(SOC)是集成计算机或其他电子系统的所有部件的集成电路。这些部件包括中央处理单元(CPU)、存储器、输入/输出(IO)端口和辅助存储装置,其全部包括在单个衬底或微芯片上。SOC的设计在制造之前需要对集成电路设计进行各种更新。
发明内容
本发明提供了一种计算设备,包括:用于存储熔丝覆盖数据的非易失性存储器;以及耦接到非易失性存储器的片上系统(SOC),片上系统包括:用于存储熔丝数据的熔丝存储器;以及安全微控制器,用于接收熔丝覆盖数据,并且执行用于使用熔丝覆盖数据覆写存储在所述熔丝存储器中的熔丝数据的熔丝覆盖。
本发明还提供了一种片上系统(SOC),包括:用于存储熔丝数据的熔丝存储器;以及安全微控制器,用于从非易失性存储器接收熔丝覆盖数据,并且执行用于使用熔丝覆盖数据覆写存储在熔丝存储器中的熔丝数据的熔丝覆盖。
附图说明
为了能够详细地理解本实施例的上述特征的方式,可以通过参考实施例来获得上面简要概述的实施例的更具体的描述,其中一些实施例在附图中示出。然而,应注意的是,附图仅示出了该实施例的典型实施例并且因此不应被认为是对其范围的限制,因为该实施例可承认其他同样有效的实施例。
图1示出了计算设备的一个实施例。
图2示出了平台的一个实施例。
图3示出了平台的另一个实施例。
图4示出了熔丝数据结构的格式的一个实施例。
图5是示出用于更新熔丝配方的过程的一个实施例的流程图。
图6示出了示意性电子计算设备的示意图的一个实施例。
具体实施方式
在下面的描述中,阐述了许多具体细节以提供对本实施例的更透彻的理解。然而,对于本领域技术人员来说显而易见的是,可在没有这些具体细节中的一者或多者的情况下实施本实施例。在其他情况下,为了避免混淆本实施例,没有描述众所周知的特征。
在实施例中,提供了一种机制以促进在SOC开发期间更新熔丝配方(recipes)。在此实施例中,在确定启用熔丝覆盖时,在上电过程期间将熔丝覆盖数据从非易失性存储器读取到SOC。在此实施例中,熔丝覆盖数据用于替换熔丝存储器中的数据。
对“一个实施例”、“实施例”、“示例性实施例”、“各种实施例”等的引用指示了如此描述的实施例可包括特定特征、结构或特性,但不是每个实施例都必须包括特定特征、结构或特性。另外,一些实施例可具有针对其他实施例描述的特征中的一些、全部或不具有此类特征。
在下面的描述和权利要求中,可使用术语“耦接”及其衍生物。“耦接”用于指示两个或更多个元件彼此协作或相互作用,但它们之间可能或可能没有中间的物理或电气部件。
如权利要求中使用的,除非另有说明,否则使用序数形容词“第一”、“第二”、“第三”等来描述共同元件仅指示了类似元件的不同实例被提及,并且不旨在暗示如此描述的元件必须在时间上、空间上、在排名上或以任何其他方式按照给定序列。
图1示出了计算设备100的一个实施例。根据一个实施例,计算设备100包括承载集成电路(“IC”)的计算机平台,诸如片上系统(“SoC”或“SOC”),其将计算设备100的各种硬件和/或软件部件集成在单个芯片上。如图所示,在一个实施例中,计算设备100可包括任何数量和类型的硬件和/或软件部件,诸如(但不限于)图形处理单元114(“GPU”或简称“图形处理器”)、图形驱动器116(也称为“GPU驱动器”、“图形驱动器逻辑”、“驱动器逻辑”、用户模式驱动器(UMD)、UMD、用户模式驱动器框架(UMDF)、UMDF,或简称为“驱动器”)、中央处理单元112(“CPU”或简称为“应用处理器”)、存储器108、网络设备、驱动器等,以及输入/输出(I/O)源104,诸如触摸屏、触摸面板、触摸板、虚拟或常规键盘、虚拟或常规鼠标、端口、连接器等。计算设备100可包括充当计算设备100的硬件和/或物理资源与用户之间的接口的操作系统(OS)106。
理解的是,对于某些实施,可能会首选比上述示例配备更少或更多的系统。因此,计算设备100的配置可以根据多种因素,例如价格约束、性能要求、技术改进或其他情况,在不同的实现中有所不同。
实施例可实现为以下中的任一者或其组合:使用主板互连的一个或多个微芯片或集成电路、硬连线逻辑、由存储器设备存储并由微处理器执行的软件、固件、专用集成电路(ASIC)和/或现场可编程门阵列(FPGA)。术语“逻辑”、“模块”、“部件”、“引擎”和“机制”可例如包括软件或硬件和/或其组合,诸如固件。
实施例可使用一个或多个存储器芯片、控制器、CPU(中央处理单元)、使用主板来互连的微芯片或集成电路、专用集成电路(ASIC)和/或现场可编程门阵列(FPGA)来实现。作为示例,术语“逻辑”可包括软件或硬件和/或软件和硬件的组合。
图2示出了平台200的一个实施例,该平台包括类似于以上讨论的计算设备100的SOC 210。如图2所示,SOC 210包括经由系统架构205耦接的其他计算设备部件(例如,存储器108和CPU 112)。在一个实施例中,系统架构205包括集成片上系统架构(IOSF)以提供用于在SOC 210内耦接互连协议(IP)代理230(例如,IP代理230A和230B)的标准化管芯上互连协议。在此类实施例中,互连协议提供标准化化接口以使得第三方能够设计将要并入SOC210中的逻辑(诸如IP代理)。
根据实施例,IP代理230可包括通用处理器(例如,有序或乱序核)、固定功能单元、图形处理器、I/O控制器、显示控制器等。在此类实施例中,每个IP代理230包括硬件接口235(例如,235A和235B)以提供标准化,从而使得IP代理230能够与SOC 210部件进行通信。例如,在IP代理230是第三方视觉处理单元(VPU)的实施例中,接口235提供标准化以使得VPU能够经由架构205访问存储器108。
此外,SOC 210耦接到非易失性存储器250。非易失性存储器250可被实现为外围部件互连快速(PCIe)存储驱动器,诸如固态驱动器(SSD)或非易失性存储器快速(NVMe)驱动器。在一个实施例中,非易失性存储器250被实现为存储平台200的固件255。在一个实施例中,SOC 210经由串行外围接口(SPI)201耦接到非易失性存储器250。在此类实施例中,SOC210包括耦接在SPI 201和系统架构205之间的SPI控制器260。在另一实施例中,SPI控制器260是被实现为经由SPI 201控制对非易失性存储器250的访问的闪存控制器。
SOC 210还包括执行针对SOC 210的各种安全操作(例如,安全处理、加密功能等)安全引擎240。在一个实施例中,安全引擎240包括被实现为执行安全操作的IP代理230。
在SOC的设计阶段期间,执行验证,对现场可编程熔丝(或熔丝配方)的配方进行验证。现场可编程熔丝(FPF)集成在SOC内,作为用于控制SOC的各种安全方面的有限量的数据的辅助存储装置。例如,现场可编程熔丝(FPFs)可被实现为存储IP代理230的配置信息。如本文所用,熔丝配方包括用于集成电路的熔丝配置。熔丝配方涉及产生最终版本的迭代验证过程。在关于未熔接的部件的SOC硅预上电的初始阶段期间,使用引导脚来本覆盖熔丝。根据预上电阶段的结果,最终确定了熔丝配方并将其提供给制造团队。随后,制造团队通过熔丝配方生产熔接的(fused)SOC部件以启动SOC硅上电。然而,当前流程的一个问题是,依赖制造团队在每次熔丝配方更新时制造部件,这导致延迟(例如,批量验证延迟和对客户的样品的延迟)。
随后,制造团队使用熔丝配方生产带熔丝的SOC零件,以启动SOC硅电源。然而,依赖制造团队在每次熔丝配方更新时制造零件,这会导致延迟(例如,批量验证延迟和向客户提供样品的延迟)。
在一个实施例中,提供了用于更新熔丝配方的过程。在此类实施例中,启动代码在上电过程期间读取可编程熔丝并且覆盖存储在熔丝存储器中的数据。图3示出了平台200的另一个实施例。如图3所示,熔丝覆盖数据310存储在非易失性存储器250内。在一个实施例中,熔丝覆盖数据310包括用于覆盖和验证硅引导以便开发最终熔丝配方的熔丝更新数据结构。图4示出了包括标头部分和主体部分的熔丝数据结构的格式的一个实施例,该主体部分指示熔丝地址和要被覆盖的数据。在另一实施例中,熔丝覆盖数据310被编程到非易失性存储器250中(例如,经由闪存编程器或带外)并且在平台200上电期间使用。
根据一个实施例,熔丝覆盖数据310由安全启动服务模块(S3M)320访问。在该实施例中,S3M 320包括调试熔丝覆盖逻辑325以覆写存储在熔丝存储器340中的熔丝值。S3M320可包括被实现为执行针对平台200的安全服务和安全引导支持的安全引擎240内的固件。在另一实施例中,S3M 320被配置为经由熔丝控制器330访问熔丝存储器340。在此类实施例中,熔丝存储器340包括用于对IP代理230进行编程的熔丝数据。IP代理230可经由对熔丝控制器330的请求来访问存储在熔丝存储器340中的数据。
在一个实施例中,每当调试熔丝覆盖逻辑325指示熔丝覆盖被启用时,S3M 320被实现为在平台200的引导下执行熔丝覆盖。在该实施例中,调试熔丝覆盖逻辑325包括被编程为指示何时启用熔丝覆盖的一个或多个硬件熔丝位。例如,当启用熔丝覆盖时,硬件熔丝位通过第一值来编程,并且当禁用熔丝覆盖时,硬件熔丝位通过第二值来编程。在另一实施例中,熔丝位值被定义为与由制造团队在生产部件上编程的值不同,这确保了该特征将不会意外地在生产部件上启用。
S3M 320从非易失性存储器250内读取熔丝覆盖数据310,并且在确定熔丝覆盖被启用时覆写存储在熔丝存储器340中的熔丝值。在一个实施例中,S3M 320通过经由熔丝控制器330用熔丝覆盖数据覆写存储在熔丝存储器340中的先前熔丝值。在另一实施例中,在S3M 320用熔丝覆盖数据更新熔丝值之后,IP代理230退出重置并且从熔丝存储器340检索熔丝值。
图5是示出用于更新熔丝配方的过程的一个实施例的流程图。在处理框510处,在验证(上电验证)进行期间使平台200上电。在处理框520处,识别对熔丝配方的改变。在处理框530处,按照定义数据结构(例如,经由调试熔丝覆盖逻辑325)将需要进行更新的熔丝值格式化,如图4中所示。随后,将熔丝值编程到非易失性存储器250中。
在处理框540处,S3M 320验证熔丝覆盖经由平台200引导来启用。如上所述,通过检查S3M 320内的硬件熔丝值来执行验证。在处理框550处,S3M 320从非易失性存储器250检索熔丝覆盖数据310并且覆写熔丝存储器340中的熔丝值。在决策框560处,确定熔丝值是否已被更新。如果否,则控制返回到处理框550,其中S3M 320继续从非易失性存储器250读取熔丝覆盖数据310。否则,IP代理230退出重置并且从熔丝存储器340检索熔丝值(处理框570)。
在决策框580处,确定是否已经开发熔丝配方。如果否,则控制返回到处理框520,在该处理框中识别对熔丝配方的新改变。否则,过程已经完成,并且SOC 200被提供给制造团队以制造生产部件。
上述机制简化了细化熔断器配方的过程,消除了对制造团队编程熔断器的依赖。图6是根据一些实施例的示例性电子计算设备的示意图,用于增强对抗性攻击的保护。在一些实施例中,计算设备700包括一个或多个处理器710,其包括一个或多个处理器核718和TEE 764,该TEE包括机器学习服务飞地(MLSE,machine learning service enclave)780。在一些实施例中,计算设备700包括硬件加速器768,该硬件加速器包括密码引擎782和机器学习模型784。在一些实施例中,计算设备将提供针对ML对抗攻击的增强保护,如图1至图5中所提供的。
计算设备700可另外包括以下中的一者或多者:高速缓存762、图形处理单元(GPU)712(其在一些具体实施中可以是硬件加速器)、无线输入/输出(I/O)接口720、有线I/O接口730、存储器电路740、功率管理电路750、非暂态存储设备760和用于连接到网络772的网络接口770。以下讨论提供了形成示意性计算设备700的部件的简要一般描述。示例性的非限制性计算设备700可包括桌面计算设备、刀片服务器设备、工作站或类似的设备或系统。
在实施例中,处理器核718能够执行机器可读指令集714,从一个或多个存储设备760读取数据和/或指令集714,以及将数据写入到一个或多个存储设备760。相关领域的技术人员将理解,所示的实施例以及其他实施例可通过其他基于处理器的设备配置来实践,包括便携式电子设备或手持式电子设备,例如智能电话、便携式计算机、可穿戴计算机、消费电子产品、个人计算机(“PC”)、网络PC、小型计算机、服务器刀片、大型计算机等。
处理器核718可包括任何数量的硬连线或可配置电路,其中的一些或全部可包括部分或全部设置在PC、服务器、或能够执行处理器可读指令的其他计算系统中的电子部件、半导体设备和/或逻辑元件的可编程和/或可配置的组合。
计算设备700包括总线或类似通信链路716,其可通信地耦接各种系统部件并且促进各种系统部件之间的信息和/或数据的交换,该系统部件包括处理器核718、高速缓存762、图形处理器电路712、一个或多个无线I/O接口720。一个或多个有线I/O接口730、一个或多个存储设备760和/或一个或多个网络接口770。计算设备700可在本文中以单数引用,但这并不旨在将实施例限于单个计算设备700,因为在某些实施例中,可能存在多于一个的计算设备700,其合并、包括或包含任何数量的可通信地耦接、并置、或远程联网的电路或设备。
处理器核718可包括能够执行机器可读指令集的任何数量、类型或组合的当前可用或未来开发的设备。
处理器核718可包括(或耦接到)但不限于任何当前或未来开发的单核或多核处理器或微处理器,诸如:一个或多个片上系统(SOC);中央处理单元(CPU);数字信号处理器(DSP);图形处理单元(GPU);专用集成电路(ASIC)、可编程逻辑单元、现场可编程门阵列(FPGA)等。除非另有说明,图6所示的各种框的构造和操作具有常规设计。因此,在本文中不需要进一步详细描述这些框,因为相关领域的技术人员将理解它们。互连计算设备700的部件中的至少一些的总线716可采用任何当前可用的或未来开发的串行或并行总线结构或架构。
系统存储器740可包括只读存储器(“ROM”)742和随机存取存储器(“RAM”)746。ROM742的一部分可用于存储或以其他方式保持基本输入/输出系统(“BIOS”)744。BIOS 744向计算设备700提供基本功能,例如通过使得处理器核718加载和/或执行一个或多个机器可读指令集714。在实施例中,一个或多个机器可读指令集714中的至少一些使得处理器核718的至少一部分提供、创建、产生、转换和/或充当专用的、指定的和特定的机器,例如文字处理机、数字图像采集机、媒体播放机、游戏系统、通信设备、智能电话等。
计算设备700可包括至少一个无线输入/输出(I/O)接口720。至少一个无线I/O接口720可以可通信地耦接到一个或多个物理输出设备722(触觉设备、视频显示器、音频输出设备、硬拷贝输出设备等)。至少一个无线I/O接口720可以可通信地耦接到一个或多个物理输入设备724(指向设备、触摸屏、键盘、触觉设备等)。至少一个无线I/O接口720可包括任何当前可用或未来开发的无线I/O接口。示例性无线I/O接口包括但不限于:近场通信(NFC)等。
计算设备700可包括一个或多个有线输入/输出(I/O)接口730。至少一个有线I/O接口730可以可通信地耦接到一个或多个物理输出设备722(触觉设备、视频显示器、音频输出设备、硬拷贝输出设备等)。至少一个有线I/O接口730可以可通信地耦接到一个或多个物理输入设备724(指向设备、触摸屏、键盘、触觉设备等)。有线I/O接口730可包括任何当前可用或未来开发的I/O接口。示例性有线I/O接口包括但不限于:通用串行总线(USB)、IEEE1394(“火线”)和类似物。
计算设备700可包括一个或多个可通信地耦接的非暂态数据存储设备760。数据存储设备760可包括一个或多个硬盘驱动器(HDD)/或一个或多个固态存储设备(SSD)。一个或多个数据存储设备760可包括任何当前或未来开发的存储器具、网络存储设备和/或系统。此类数据存储设备760的非限制性示例可包括但不限于任何当前或未来开发的非暂态存储器具或设备,诸如一个或多个磁存储设备、一个或多个光存储设备、一个或多个电阻存储设备、一个或多个分子存储设备、一个或多个量子存储设备或它们的各种组合。在一些具体实施中,一个或多个数据存储设备760可包括一个或多个可移除存储设备,诸如一个或多个闪存驱动器、闪存存储器、闪存存储单元或能够与计算设备700通信耦接和解耦的类似器具或设备。
一个或多个数据存储设备760可包括将相应存储设备或系统可通信地耦接到总线716的接口或控制器(未示出)。一个或多个数据存储设备760可存储、保持或以其他方式包含机器可读指令集、数据结构、程序模块、数据存储装置、数据库、逻辑结构,和/或对于处理器核718和/或图形处理器电路712和/或在处理器核718和/或图形处理器电路712上执行或由其执行的一个或多个应用程序有用的其他数据。在一些情况下,一个或多个数据存储设备760可以可通信地耦接到处理器核718,例如经由总线716或经由一个或多个有线通信接口730(例如,通用串行总线或USB);一个或多个无线通信接口720(例如,近场通信或NFC);和/或一个或多个网络接口770(IEEE 802.3或以太网,IEEE 802.11或等)。
处理器可读指令集714和其他程序、应用程序、逻辑集和/或模块可全部或部分地存储在系统存储器740中。此类指令集714可全部或部分地从一个或多个数据存储设备760传送。在由处理器核718和/或图形处理器电路712执行期间,指令集714可全部或部分地加载、存储或以其他方式保持在系统存储器740中。
计算设备700可包括控制能量存储设备752的一个或多个操作方面的功率管理电路750。在实施例中,能量存储设备752可包括一个或多个初级(即,不可再充电)或次级(即,可再充电)电池或类似的能量存储设备。在实施例中,能量存储设备752可包括一个或多个超级电容器(supercapacitor)或超级电容器(ultracapacitor)。在实施例中,功率管理电路750可改变、调整或控制从外部电源754到能量存储设备752和/或计算设备700的能量流。电源754可包括但不限于太阳能发电系统、商用电网、便携式发电机、外部能量存储器设备或其任何组合。
为了方便起见,处理器核718、图形处理器电路712、无线I/O接口720、有线I/O接口730、存储设备760和网络接口770被示为经由总线716彼此可通信地耦接,由此提供上述部件之间的连接性。在替代实施例中,上述部件可以与图6所示的方式不同的方式可通信地耦接。例如,上述部件中的一者或多者可直接耦接到其他部件,或者可经由一个或多个中间部件(未示出)彼此耦接。在另一个示例中,上述部件中的一者或多者可集成到处理器核718和/或图形处理器电路712中。在一些实施例中,可省略总线716的全部或一部分,并且使用合适的有线或无线连接将部件彼此直接耦接。
实施例可被设置为例如计算机程序产品,该计算机程序产品可包括一个或多个暂态或非暂态机器可读存储介质,其上存储有机器可执行指令,这些指令在由一个或多个机器(诸如计算机、计算机网络或其他电子设备)执行时可导致一个或多个机器执行根据本文所述的实施例的操作。机器可读介质可包括但不限于软盘、光盘、CD-ROM(光盘只读存储器)和磁光盘、ROM、RAM、EPROM(可擦除可编程只读存储器),EEPROM(电可擦除可编程只读存储器)、磁卡或光卡、闪存存储器、或适用于存储机器可执行指令的其他类型的介质/机器可读介质。
一些实施例涉及示例1,其包括一种计算机平台,所述计算机平台包括:用于存储熔丝覆盖数据的非易失性存储器;以及耦接到所述非易失性存储器的片上系统(SOC),所述片上系统包括用于存储熔丝数据的熔丝存储器;以及安全微控制器,用于接收所述熔丝覆盖数据,并且执行用于使用所述熔丝覆盖数据覆写存储在所述熔丝存储器中的所述熔丝数据的熔丝覆盖。
示例2包括根据示例1所述的主题,其中安全微控制器包括用于指示何时启用熔丝覆盖的调试熔丝覆盖硬件。
示例3包括根据示例1和2所述的主题,其中调试熔丝覆盖硬件包括一个或多个硬件熔丝位。
示例4包括根据示例1至3所述的主题,其中所述SOC还包括用于从所述熔丝存储器检索所述熔丝覆盖数据的一个或多个互连协议(IP)代理。
示例5包括根据示例1至4所述的主题,其中所述SOC还包括用于控制对于所述一个或多个IP代理的所述熔丝存储器的访问的熔丝控制器。
示例6包括根据示例1至5所述的主题,其中所述熔丝覆盖数据包括熔丝更新数据结构。
示例7包括根据示例1至6所述的主题,其中所述熔丝更新数据结构包括标头部分和主体部分。
示例8包括根据示例1至7所述的主题,其中所述主体部分指示熔丝地址和要被覆盖的数据。
示例9包括根据示例1至8所述的主题,其中在所述计算机平台的验证上电期间执行熔丝覆盖。
一些实施例涉及示例10,其包括一种方法,所述方法包括:验证在片上系统(SOC)启用了熔丝覆盖;从非易失性存储器检索熔丝覆盖数据;以及在所述SOC处执行熔丝覆盖,该熔丝覆盖包括使用所述熔丝覆盖数据覆写存储在熔丝存储器中的熔丝数据。
示例11包括根据示例10所述的主题,其中通过检查一个或多个硬件熔丝的值来执行所述验证。
示例12包括根据示例10和11所述的主题,还包括一个或多个互连协议(IP)代理从所述熔丝存储器检索所述熔丝覆盖数据。
示例13包括根据示例10至12所述的主题,还包括识别对熔丝配方的改变。
示例14包括根据示例10至13所述的主题,还包括将与对所述熔丝配方的所述改变相关联的熔丝值编程到所述非易失性存储器中。
一些实施例涉及示例15,其包括一种片上系统(SOC),所述片上系统包括:用于存储熔丝数据的熔丝存储器;以及安全微控制器,用于从非易失性存储器接收熔丝覆盖数据,并且执行用于使用所述熔丝覆盖数据覆写存储在所述熔丝存储器中的所述熔丝数据的熔丝覆盖。
示例16包括根据示例15所述的主题,其中安全微控制器包括用于指示何时启用熔丝覆盖的调试熔丝覆盖硬件。
示例17包括根据示例15和16所述的主题,还包括用于从所述熔丝存储器检索所述熔丝覆盖数据的一个或多个互连协议(IP)代理。
示例18包括根据示例15至17所述的主题,还包括用于控制对于所述一个或多个IP代理的所述熔丝存储器的访问的熔丝控制器。
示例19包括根据示例15至18所述的主题,其中所述熔丝覆盖数据包括熔丝更新数据结构。
示例20包括根据示例15至19所述的主题,其中所述熔丝更新数据结构包括标头部分和主体部分。
一些实施例涉及示例21,其包括至少一种其上存储有指令的计算机可读介质,所述指令在由一个或多个处理器执行时使得所述处理器:验证在片上系统(SOC)启用了熔丝覆盖;从非易失性存储器检索熔丝覆盖数据;以及在SOC处执行熔丝覆盖,包括通过所述熔丝覆盖数据覆写存储在熔丝存储器中的熔丝数据。
示例22包括根据示例21所述的主题,其中通过检查一个或多个硬件熔丝的值来执行所述验证。
示例23包括根据示例21和22所述的主题,其上存储有指令,所述指令在由一个或多个处理器执行时,还使得一个或多个互连协议(IP)代理从所述熔丝存储器检索所述熔丝覆盖数据。
示例24包括根据示例21至23所述的主题,其上存储有指令,所述指令在由一个或多个处理器执行时,还使得所述处理器识别对熔丝配方的改变。
示例25包括根据示例21至24所述的主题,其上存储有指令,所述指令在由一个或多个处理器执行时,还使得所述处理器将与对所述熔丝配方的所述改变相关联的熔丝值编程到所述非易失性存储器中。
以上已经参考具体实施例描述了本实施例。然而,本领域技术人员将理解,在不脱离如所附权利要求所阐述的实施例的更广泛的精神和范围的情况下,可对其进行各种修改和改变。因此,前面的描述和附图被认为是说明性的而不是限制性的。
Claims (21)
1.一种计算设备,包括:
用于存储熔丝覆盖数据的非易失性存储器;以及
耦接到所述非易失性存储器的片上系统(SOC),所述片上系统包括:
用于存储熔丝数据的熔丝存储器;以及
安全微控制器,用于接收所述熔丝覆盖数据,并且执行用于使用所述熔丝覆盖数据覆写存储在所述熔丝存储器中的所述熔丝数据的熔丝覆盖。
2.根据权利要求1所述的计算机设备,其中所述安全微控制器包括用于指示何时启用熔丝覆盖的调试熔丝覆盖硬件。
3.根据权利要求2所述的计算机设备,其中所述调试熔丝覆盖硬件包括一个或多个硬件熔丝位。
4.根据权利要求3所述的计算机设备,其中所述SOC还包括用于从所述熔丝存储器检索所述熔丝覆盖数据的一个或多个互连协议(IP)代理。
5.根据权利要求4所述的计算机设备,其中所述SOC还包括:用于控制对于所述一个或多个IP代理的所述熔丝存储器的访问的熔丝控制器。
6.根据权利要求1所述的计算机设备,其中所述熔丝覆盖数据包括熔丝更新数据结构。
7.根据权利要求6所述的计算机设备,其中所述熔丝更新数据结构包括标头部分和主体部分。
8.根据权利要求7所述的计算机设备,其中所述主体部分指示熔丝地址和要被覆盖的数据。
9.根据权利要求1所述的计算机设备,其中在所述计算机平台的验证上电期间执行所述熔丝覆盖。
10.一种方法,包括:
验证在片上系统(SOC)启用了熔丝覆盖;
从非易失性存储器检索熔丝覆盖数据;以及
在所述SOC处执行熔丝覆盖,该熔丝覆盖包括使用所述熔丝覆盖数据覆写存储在熔丝存储器中的熔丝数据。
11.根据权利要求10所述的方法,其中通过检查一个或多个硬件熔丝的值来执行验证。
12.根据权利要求11所述的方法,还包括从所述熔丝存储器检索所述熔丝覆盖数据的一个或多个互连协议(IP)代理。
13.根据权利要求10所述的方法,还包括识别对熔丝配方的改变。
14.根据权利要求13所述的方法,还包括将与对所述熔丝配方的所述改变相关联的熔丝值编程到所述非易失性存储器中。
15.一种片上系统(SOC),包括:
用于存储熔丝数据的熔丝存储器;以及
安全微控制器,用于从非易失性存储器接收熔丝覆盖数据,并且执行用于使用所述熔丝覆盖数据覆写存储在所述熔丝存储器中的所述熔丝数据的熔丝覆盖。
16.根据权利要求15所述的SOC,其中所述安全微控制器包括用于指示何时启用熔丝覆盖的调试熔丝覆盖硬件。
17.根据权利要求16所述的SOC,还包括用于从所述熔丝存储器检索所述熔丝覆盖数据的一个或多个互连协议(IP)代理。
18.根据权利要求17所述的SOC,还包括用于控制对于所述一个或多个IP代理的所述熔丝存储器的访问的熔丝控制器。
19.根据权利要求15所述的SOC,其中所述熔丝覆盖数据包括熔丝更新数据结构。
20.根据权利要求19所述的SOC,其中所述熔丝更新数据结构包括标头部分和主体部分。
21.至少一种其上存储有指令的计算机可读介质,所述指令在由一个或多个处理器执行时使得所述处理器执行如权利要求10-14所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/354,163 | 2021-06-22 | ||
US17/354,163 US11494330B2 (en) | 2021-06-22 | 2021-06-22 | Fuse recipe update mechanism |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115510803A true CN115510803A (zh) | 2022-12-23 |
Family
ID=77920857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210545699.4A Pending CN115510803A (zh) | 2021-06-22 | 2022-05-19 | 熔丝配方更新机制 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11494330B2 (zh) |
EP (1) | EP4109311A1 (zh) |
CN (1) | CN115510803A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11940944B2 (en) | 2021-06-22 | 2024-03-26 | Intel Corporation | Fuse recipe update mechanism |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8219797B2 (en) * | 2008-12-31 | 2012-07-10 | Intel Corporation | Method and system to facilitate configuration of a hardware device in a platform |
KR101714108B1 (ko) * | 2009-12-04 | 2017-03-08 | 크라이프토그라피 리서치, 인코포레이티드 | 검증가능 누출 방지 암호화 및 복호화 |
US8966657B2 (en) * | 2009-12-31 | 2015-02-24 | Intel Corporation | Provisioning, upgrading, and/or changing of hardware |
CN104995627B (zh) * | 2013-03-15 | 2018-04-27 | 英特尔公司 | 片上系统设备中的密钥撤消 |
US20180365406A1 (en) * | 2017-06-20 | 2018-12-20 | Qualcomm Incorporated | Methods and systems for providing advanced secure boot features to limited-resource peripheral devices by using a secure processor |
US11183260B1 (en) * | 2020-11-16 | 2021-11-23 | Micron Technology Inc. | Transmit line monitoring circuitry, and related methods, devices, and systems |
US11874926B2 (en) * | 2020-12-07 | 2024-01-16 | Hewlett Packard Enterprise Development Lp | Measuring containers |
US11436090B2 (en) * | 2020-12-17 | 2022-09-06 | Texas Instmments Incorporated | Non-volatile memory compression for memory repair |
CN112822115B (zh) * | 2020-12-31 | 2022-09-16 | 罗普特科技集团股份有限公司 | 一种基于插件式引擎的服务框架构建方法和系统 |
US11494330B2 (en) | 2021-06-22 | 2022-11-08 | Intel Corporation | Fuse recipe update mechanism |
-
2021
- 2021-06-22 US US17/354,163 patent/US11494330B2/en active Active
-
2022
- 2022-03-17 EP EP22162678.1A patent/EP4109311A1/en active Pending
- 2022-05-19 CN CN202210545699.4A patent/CN115510803A/zh active Pending
- 2022-07-29 US US17/877,531 patent/US11940944B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11940944B2 (en) | 2021-06-22 | 2024-03-26 | Intel Corporation | Fuse recipe update mechanism |
Also Published As
Publication number | Publication date |
---|---|
US20210311904A1 (en) | 2021-10-07 |
US20220405231A1 (en) | 2022-12-22 |
US11494330B2 (en) | 2022-11-08 |
US11940944B2 (en) | 2024-03-26 |
EP4109311A1 (en) | 2022-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103930878B (zh) | 用于存储器验证的方法、装置及系统 | |
US20210303691A1 (en) | Ip independent secure firmware load | |
CN113778328B (zh) | 在半导体封装之间引导控制数据 | |
US11928215B2 (en) | Firmware verification mechanism | |
US11940944B2 (en) | Fuse recipe update mechanism | |
US20210110043A1 (en) | Platform firmware boot mechanism | |
US20240370545A1 (en) | Partitioned platform security mechanism | |
EP4195079A1 (en) | Hardware integrity verification mechanism | |
WO2018165939A1 (en) | Flash data compression decompression method and apparatus | |
CN113448915A (zh) | 固件弹性机构 | |
US11886316B2 (en) | Platform measurement collection mechanism | |
US11429289B2 (en) | Memory map protection mechanism | |
CN116244250A (zh) | 时钟频率比率监视器 | |
US20240378294A1 (en) | Firmware verification mechanism | |
EP4156014A1 (en) | Integrated circuit package reconfiguration mechanism | |
US11568048B2 (en) | Firmware descriptor resiliency mechanism | |
US12061710B2 (en) | Mechanism for secure library sharing | |
WO2022133873A1 (en) | Configurable fault tolerant mechanism | |
US11429496B2 (en) | Platform data resiliency mechanism | |
CN107209717A (zh) | 针对存储器元件的分叉存储器管理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |