CN116244250A - 时钟频率比率监视器 - Google Patents

时钟频率比率监视器 Download PDF

Info

Publication number
CN116244250A
CN116244250A CN202211383934.9A CN202211383934A CN116244250A CN 116244250 A CN116244250 A CN 116244250A CN 202211383934 A CN202211383934 A CN 202211383934A CN 116244250 A CN116244250 A CN 116244250A
Authority
CN
China
Prior art keywords
clock
ratio
clock signal
circuit
signal
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
Application number
CN202211383934.9A
Other languages
English (en)
Inventor
Y·B·西蒙
I·卡汉
O·施瓦茨
E·诺尔
A·阿德莫尼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN116244250A publication Critical patent/CN116244250A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R23/00Arrangements for measuring frequencies; Arrangements for analysing frequency spectra
    • G01R23/02Arrangements for measuring frequency, e.g. pulse repetition rate; Arrangements for measuring period of current or voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R23/00Arrangements for measuring frequencies; Arrangements for analysing frequency spectra
    • G01R23/02Arrangements for measuring frequency, e.g. pulse repetition rate; Arrangements for measuring period of current or voltage
    • G01R23/15Indicating that frequency of pulses is either above or below a predetermined value or within or outside a predetermined range of values, by making use of non-linear or digital elements (indicating that pulse width is above or below a certain limit)
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/19Monitoring patterns of pulse trains
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/22Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral
    • H03K5/26Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being duration, interval, position, frequency, or sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Sources (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

一种装置包括频率监视器电路,用于接收第一时钟信号、第二时钟信号和期望频率比率,确定第一时钟信号和第二时钟信号之间的比率是否与期望的期望频率比率匹配,以及在确定第一时钟信号和第二时钟信号之间的比率与期望频率比率不匹配时生成错误信号。

Description

时钟频率比率监视器
背景技术
片上系统(SOC)是集成计算机或其他电子系统的所有组件的集成电路。这些组件包括中央处理单元(CPU)、存储器、输入/输出(IO)端口和辅助存储装置,它们都包括在单个衬底或微芯片上。SOC变得越来越复杂,其中越来越多的组件以同步方式操作。此外,组件变得更大和更复杂。因此,现代SoC的有效操作严重依赖于有效的时钟信号。
附图说明
为了使上述特征可以被详细地理解的方式,可以通过引用实施例得到以上简要概述的更具体的描述,所述实施例中的一些在所附附图中示出。然而,应该注意的是,所附附图仅示出典型实施例,并且因此不被视为限制其范围,因为本公开可以准许其他等同效果的实施例。
图1示出了计算设备的一个实施例。
图2示出了平台的实施例。
图3A示出了包括频率监视器的系统的一个实施例。
图3B示出了包括频率监视器的系统的另一个实施例。
图4示出了频率监视器的一个实施例。
图5示出了频率监视器的另一个实施例。
图6A-6C示出了波形的实施例。
图7示出了频率监视器的又一个实施例。
图8示出了频率监视器的又另一个实施例。
图9是示例性电子计算设备的示意图。
具体实施方式
在以下描述中,阐述了众多具体细节以提供更透彻的理解。然而,对本领域技术人员明显的是,在没有这些具体细节中的一个或多个的情况下可以实践实施例。在其他情况下,众所周知的特征没有被描述以免模糊实施例。
在实施例中,提供了一种检测被黑客攻击(hack)的时钟信号的机制。在这样的实施例中,该机制将第一时钟信号与第二时钟信号进行比较,并确定第一时钟信号和第二时钟信号之间的比率是否与期望的期望频率比率相匹配。在另外的实施例中,在确定第一时钟信号和第二时钟信号之间的比率与期望频率比率不匹配时,生成误差信号。
对“一个实施例”、“实施例”、“示例实施例”、“各种实施例”等的提及表示如此描述的(多个)实施例可以包括特定的特征、结构或特性,但是不是每个实施例都必须包括特定的特征、结构或特性。此外,一些实施例可以具有针对其他实施例描述的一些、全部特征,或者不具有针对其他实施例描述的特征。
在以下描述和权利要求中,可使用术语“耦合”及其派生词。“耦合”用于表示两个或更多个元件彼此合作或相互作用,但是它们之间可以有或没有中间的物理或电气组件。
除非另有说明,如权利要求中使用的,序数形容词“第一”、“第二”、“第三”等对描述共同的元素的使用仅仅表示引用相同元素的不同实例,并不意味着如此描述的元素必须在时间上、空间上、排序上或以任何其他方式处于给定的顺序。
图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的一个实施例,平台200包括类似于上述计算设备100的SOC210。如图2所示,平台200包括SOC 210,SOC 210经由CPU 112可通信地耦合到一个或多个软件组件260。在进一步的实施例中,平台200也可以经由云网络220耦合到计算设备270。在该实施例中,计算设备270包括云代理,该云代理被提供经由软件260对SOC 210的访问。
此外,SOC 210包括经由系统结构205耦合的其他计算设备组件(例如,存储器108)。在一个实施例中,系统结构205包括集成片上系统结构(IOSF),以提供标准化的管芯上互连协议,用于耦合SOC 210内的互连协议(IP)代理230(例如,IP块230A和230B)。在这样的实施例中,互连协议提供了标准化接口,以使第三方能够设计逻辑,诸如将被结合到SOC210中的IP代理。
根据实施例,IP代理230可包括通用处理器(例如,有序或无序核心)、固定功能单元、图形处理器、I/O控制器、显示控制器等。在这样的实施例中,每个IP代理230包括硬件接口235(例如,235A和235B),以提供使IP代理230能够与SOC 210组件通信的标准化。例如,在IPA代理230是第三方视觉处理单元(VPU)的实施例中,接口235提供使VPU能够经由结构205访问存储器108的标准化。
SOC 210还包括安全控制器240,其作为安全引擎操作,以执行用于SOC 210的各种安全操作(例如,安全处理、密码功能等)。在一个实施例中,安全控制器240包括被实现来执行安全操作的密码处理器IP代理230。此外,SOC 210包括非易失性存储器250。非易失性存储器250可以被实现为快速外围组件互连(PCIe)存储驱动器,诸如固态驱动器(SSD)或快速非易失性存储器(NVMe)驱动器。
如上所述,SOC依赖于有效的时钟信号。例如,CPU SOC通常是网络攻击的目标,随着SOC继续集成更多安全敏感逻辑(例如,可信执行环境)并用于构建安全敏感产品,诸如自动驾驶汽车和各种机器人,这种攻击将会增加。虽然对输入时钟黑客攻击可能引入可能使平台崩溃的致命错误,但是黑客攻击也可能导致内部逻辑边际问题,这些问题可能允许平台继续操作,尽管是以不防护或不安全的方式来暴露秘密或做出无效决策。例如,恶意行为者可能缩短加密单元(例如,高级加密标准(AES))的时钟周期,导致加密周期的部分计算;从而暴露关于秘密加密密钥的信息。最后,其他攻击手段也可能发生在集成电路(IC)上,这可能导致引起类似损害的被黑客攻击的时钟信号(例如,修改内部时钟倍增器的软件、电压或激光攻击)。
根据一个实施例,在SOC内提供了一种机制,用于检测被黑客攻击的时钟信号,并根据需要做出响应。在这样的实施例中,实施频率监视器来检测管芯上的时钟频率危险,这是一种示例实施方式,并且对检测到的被黑客攻击的时钟信号做出响应。频率监视器耦合两个或更多时钟信号,并确定时钟信号之间的比率是否与接收的预定义频率比率相匹配。
图3A和3B示出了包括频率监视器350的系统的实施例。图3A示出了外部时钟实施例的一个实施例,其中频率监视器350包括在CPU 112内。如图3A所示,频率监视器350从IC310接收两个时钟(RTC和BCLK)。假设RTC具有32KHz的频率(例如,慢时钟),频率监视器350可以验证BCLK的频率是100MHz(例如,快时钟),如下面更详细讨论的。图3B示出了内部时钟实施例。在该实施例中,频率监视器350验证在除以3之后时钟是正确的。在这样的实施例中,RTC是从IC 310接收的慢时钟,如上所示,而被监视的时钟是除法器的输出。
图4示出了频率监视器350的一个实施例。如图4所示,频率监视器350包括逻辑电路,该逻辑电路包括各种输入/输出(FO)引脚。在一个实施例中,I/O引脚包括较慢时钟(sclk)输入、较快时钟(fclk)输入和指示fclk频率和sclk频率之间的期望比率的比率输入。此外,en_check输入表示两个时钟都有效,并且比率输入稳定,而cycl_btwn_smpl输入表示测量之间要等待的sclk周期数。ratio_err输出表示频率误差。在实施例中,比率误差表示测量的比率不等于期望比率。fclk_not_toggle(fclk没有切换)输出表示fclk没有切换,而sclk_not_toggle(sclk没有切换)输出表示sclk没有切换。在一个实施例中,N表示得出输入时钟之间的最大允许比率的比率宽度。尽管上面参考逻辑电路进行了讨论,但是频率监视器350的其他实施例可以在固件或者固件和逻辑电路的组合中实现。
图5示出了在比率误差实施例中实施的频率监视器350。如图5所示,频率监视器350包括累加器510、微分520和比较器530。在一个实施例中,累加器510包括循环计数器,其测量sclk的固定数量的上升沿之间的fclk的周期数,该值由cycl_btwn_smpl输入设置。在cycl_btwn_smpl = 1的这个实施例中,频率监视器350测量sclk的两个上升沿之间的fclk的周期数。然而,在fclk和sclk之间的比率太小的情况下,累加器510使得测量的频率低于sclk的每个上升沿。因此,将选择cycl_btwn_smp1=50,并且累加器510测量在sclk的50个上升沿期间fclk的周期数。
在一个实施例中,累加器宽度覆盖最大频率比率。在这样的实施例中,包括2位用于回绕校正功能,使得:
Figure 209667DEST_PATH_IMAGE001
因此,对于使用sclk=32KHz,并且
Figure 595649DEST_PATH_IMAGE003
Figure 968862DEST_PATH_IMAGE004
在由累加器510进行测量后,微分520对采样值应用微分,并生成fclk和sclk之间的比率值。比较器530将量与期望误差容限进行比较,以确定是否存在比率误差。如上所述,启用校验输入指示两个时钟都有效,并且比率输入稳定。在一个实施例中,在改变fclk频率(例如PLL频率)之前禁用校验,并且在fclk再次准备好并且新的期望比率被设置之后启用校验。图6A示出了比率误差波形的一个实施例。在该实施例中,fclk是sclk的10倍快,并且cycl_btwn_smpl = 1。因此,两个sclk样本之差为10。当sclk在8个周期后上升时,ratio_err上升以报告时钟之间的比率不符合预期,如点610所示。
频率监视器350还检测fclk是否正在切换。图7示出了频率监视器350的这样一个实施例。在该实施例中,频率监视器350还包括累加器510,其操作类似于上面参考图5所讨论的。同步器720耦合到累加器510以同步fclk和sclk。还包括检测器730,以检测fclk是否正在切换。在一个实施例中,检测器730在2个sclk上升沿之间校验累加器510的值,以确定fclk是否在切换。图6B示出了fclk没有切换波形的一个实施例。如图6B所示,fclk已经停止,并且sclk计数器值固定在6。因此,Sclk对同一值采样两次,从而指示点610处的fclk_not_tggl指示器错误。
图8示出了另一个实施例,其中频率监视器350检测sclk是否正在切换。在该实施例中,累加器820被实现为fclk计数器,以检测sclk是否没有切换。与上面讨论的累加器510不同,累加器820包括非循环计数器,每当上升沿检测器810检测到sclk上升时,该计数器被初始化(或递增)。在一个实施例中,只要sclk继续切换,累加器820计数就将不会达到值
Figure 832913DEST_PATH_IMAGE005
。然而,一旦sclk停止切换,检测器730就检测到累加器820达到
Figure 240760DEST_PATH_IMAGE006
值,从而导致sclk_not_tggl指示上升。图6C示出了Sclk没有切换波形的一个实施例。如图6C所示,fclk是sclk10倍快,并且cycl_btwn_smpl = 1。Sclk已停止,并且fclk计数器已达到/>
Figure DEST_PATH_IMAGE007
。因此,sclk_not_tggl指示上升,如点630所示。
图9是说明性电子计算设备的示意图。在一些实施例中,计算设备900包括一个或多个处理器910,一个或多个处理器910包括一个或多个处理器核心918和TEE 964,TEE包括机器学习服务飞地(MLSE) 980。在一些实施例中,该计算设备900包括硬件加速器968,该硬件加速器包括密码引擎982和机器学习模型984。在一些实施例中,如图1-8中所提供的,计算设备将提供针对ML对抗性攻击的增强保护。
计算设备900可附加地包括以下中的一个或多个:高速缓存962、图形处理单元(GPU) 912(在某些实施方式中可以是硬件加速器)、无线输入/输出(I/O)接口920、有线I/O接口930、存储器电路940、功率管理电路950、非暂时性存储设备960和用于连接至网络972的网络接口970。以下讨论提供了对形成说明性计算设备900的组件的简要一般描述。例如,非限制性计算设备900可以包括台式计算设备、刀片服务器设备、工作站或类似的设备或系统。
在实施例中,处理器核心918能够执行机器可读指令集914,从一个或多个存储设备960读取数据和/或指令集914,并将数据写入一个或多个存储设备960。相关领域的技术人员将理解,所示实施例以及其他实施例可以用其他基于处理器的设备配置来实践,包括便携式电子或手持电子设备,例如智能电话、便携式计算机、可穿戴计算机、消费电子产品、个人计算机(“PC”)、网络PC、小型机、刀片服务器、大型计算机等。
处理器核心918可包括任意数量的硬连线或可配置电路,其部分或全部可包括电子组件、半导体装置和/或逻辑元件的可编程和/或可配置组合,其部分或全部位于PC、服务器或能够执行处理器可读指令的其它计算系统中。
计算设备900包括总线或类似通信链路916,其可通信地耦合并促进各种系统组件之间的信息和/或数据的交换,所述系统组件包括处理器核心918、高速缓存962、图形处理器电路912、一个或多个无线I/O接口920、一个或多个有线I/O接口930、一个或多个存储设备960和/或一个或多个网络接口970。计算设备900在本文中可能指单数,但是这并不旨在将实施例限于单个计算设备900,因为在某些实施例中,可以有多于一个的计算设备900,其结合、包括或包含任何数量的可通信地耦合、并置或远程联网的电路或设备。
处理器核心918可包括任何数量、类型或组合的当前可用或未来开发的能够执行机器可读指令集的设备。
处理器核心918可包括(或耦合至)但不限于任何当前或未来开发的单核或多核处理器或微处理器,诸如:一个或多个片上系统(SOC);中央处理单元(CPU);数字信号处理器(DSP);图形处理单元(GPU);专用集成电路(ASIC)、可编程逻辑单元、现场可编程门阵列(FPGA)等。除非另有说明,图9所示的各种块的结构和操作都是传统的设计。因此,如相关领域的技术人员将理解的,此类块无需在此进一步详细描述。互连计算设备900的至少一些组件的总线916可以采用任何当前可用或未来开发的串行或并行总线结构或架构。
系统存储器940可包括只读存储器(“ROM”)642和随机存取存储器(“RAM”)946。ROM942的一部分可用于存储或保留基本输入/输出系统(“BIOS”)944。BIOS 944向计算设备900提供基本功能,例如通过使处理器核心918加载和/或执行一个或多个机器可读指令集914。在实施例中,一个或多个机器可读指令集914中的至少一些使得处理器核心918的至少一部分提供、创建、产生、转换和/或用作专用、具体和特定的机器,例如文字处理机、数字图像获取机、媒体游戏机、游戏系统、通信设备、智能电话等。
计算设备900可包括至少一个无线输入/输出(I/O)接口920。至少一个无线I/O接口920可以可通信地耦合到一个或多个物理输出设备922(触觉设备、视频显示器、音频输出设备、硬拷贝输出设备等)。至少一个无线I/O接口920可以可通信地耦合到一个或多个物理输入设备924(定点设备、触摸屏、键盘、触觉设备等)。至少一个无线I/O接口920可以包括任何当前可用的或未来开发的无线I/O接口。示例无线I/O接口包括但不限于:BLUETOOTH(蓝牙)®、近场通信(NFC)等。
计算设备900可包括一个或多个有线输入/输出(I/O)接口930。至少一个有线I/O接口930可以可通信地耦合到一个或多个物理输出设备922(触觉设备、视频显示器、音频输出设备、硬拷贝输出设备等)。至少一个有线I/O接口930可以可通信地耦合到一个或多个物理输入设备924(定点设备、触摸屏、键盘、触觉设备等)。有线I/O接口930可以包括任何当前可用的或未来开发的I/O接口。示例有线I/O接口包括但不限于:通用串行总线(USB)、IEEE1394(“火线”)等。
计算设备900可包括一个或多个可通信耦合的非暂时性数据存储设备960。数据存储设备960可以包括一个或多个硬盘驱动器(HDD)和/或一个或多个固态存储设备(SSD)。一个或多个数据存储设备960可以包括任何当前或未来开发的存储装置、网络存储设备和/或系统。这种数据存储设备960的非限制性示例可以包括但不限于任何当前或未来开发的非暂时性存储装置或设备,诸如一个或多个磁存储设备、一个或多个光存储设备、一个或多个电阻存储设备、一个或多个分子存储设备、一个或多个量子存储设备或其各种组合。在一些实施方式中,一个或多个数据存储设备960可以包括一个或多个可移除存储设备,诸如一个或多个闪存驱动器、闪速存储器、闪速存储单元或能够可通信地耦合到计算设备900和从计算设备900去耦的类似装置或设备。
一个或多个数据存储设备960可包括将相应存储设备或系统可通信地耦合至总线916的接口或控制器(未示出)。一个或多个数据存储设备960可以存储、保留或以其他方式包含机器可读指令集、数据结构、程序模块、数据存储、数据库、逻辑结构和/或对处理器核心918和/或图形处理器电路912和/或在处理器核心918和/或图形处理器电路912上或由处理器核心918和/或图形处理器电路912执行的一个或多个应用有用的其他数据。在一些实例中,一个或多个数据存储设备960可以可通信地耦合到处理器核心918,例如经由总线916或经由一个或多个有线通信接口930(例如,通用串行总线或USB);一个或多个无线通信接口920(例如,Bluetooth®、近场通信或NFC);和/或一个或多个网络接口970 (IEEE 802.3或以太网、IEEE 802.11或Wi-Fi®等)。
处理器可读指令集914和其他程序、应用、逻辑集和/或模块可全部或部分存储在系统存储器940中。这样的指令集914可以全部或部分地从一个或多个数据存储设备960转移。在由处理器核心918和/或图形处理器电路912执行期间,指令集914可以全部或部分地被加载、存储或以其他方式保留在系统存储器940中。
计算设备900可包括控制能量存储设备952的一个或多个操作方面的功率管理电路950。在实施例中,能量存储设备952可以包括一个或多个一次(即,不可再充电的)或二次(即,可再充电的)电池或类似的能量存储设备。在实施例中,能量存储设备952可以包括一个或多个超级电容器或超电容器。在实施例中,功率管理电路950可以改变、调整或控制从外部电源954到能量存储设备952和/或计算设备900的能量流。电源954可以包括但不限于太阳能系统、商用电网、便携式发电机、外部能量存储设备或其任意组合。
为方便起见,处理器核心918、图形处理器电路912、无线I/O接口920、有线I/O接口930、存储设备960和网络接口970被示出为经由总线916可通信地彼此耦合,从而提供上述组件之间的连接。在替代实施例中,上述组件可以以不同于图9所示的方式通信地耦合。例如,一个或多个上述组件可以直接耦合到其他组件,或者可以经由一个或多个中间组件彼此耦合(未示出)。在另一个示例中,一个或多个上述组件可以集成到处理器核心918和/或图形处理器电路912中。在一些实施例中,可以省略总线916的全部或一部分,并且使用合适的有线或无线连接将组件彼此直接耦合。
实施例可作为计算机程序产品提供,所述计算机程序产品可包括一个或多个机器可读介质,其上存储有机器可执行指令,当由诸如计算机、计算机网络或其他电子设备的一个或多个机器执行时,所述机器可执行指令可以导致一个或多个机器执行根据本文描述的实施例的操作。机器可读介质可以包括但不限于软盘、光盘、CD-ROM(光盘只读存储器)和磁光盘、ROM、RAM、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁卡或光卡、闪速存储器或适于存储机器可执行指令的其他类型的介质/机器可读介质。
此外,可将实施例作为计算机程序产品下载,其中,可经由通信链路(例如,调制解调器和/或网络连接)通过包含在载波或其他传播介质中和/或由载波或其他传播介质调制的一个或多个数据信号将程序从远程计算机(例如,服务器)传输至请求计算机(例如,客户端)。
在整篇文档中,术语“用户”可互换地称为“查看者”、“观察者”、“说话者”、“人”、“个人”、“最终用户”等。应当注意,在整个文档中,类似“图形域”的术语可以与“图形处理单元”、“图形处理器”或简称“GPU”互换引用,并且类似地,“CPU域”或“主机域”可以与“计算机处理单元”、“应用处理器”或简称“CPU”互换引用。
应注意,贯穿本文档,术语如“节点”、“计算节点”、“服务器”、“服务器设备”、“云计算机”、“云服务器”、“云服务器计算机”、“机器”、“主机”、“设备”、“计算设备”、“计算机”、“计算系统”等可互换使用。还应注意,诸如“应用”、“软件应用”、“程序”、“软件程序”、“包”、“软件包”等术语可以贯穿本文档可互换地使用。此外,类似“作业”、“输入”、“请求”、“消息”等术语贯穿本文档可以可互换地使用。
在各种实施方式中,计算设备可以是膝上型电脑、上网本、笔记本、超极本、智能电话、平板电脑、个人数字助理(PDA)、超移动PC、移动电话、台式电脑、服务器、机顶盒、娱乐控制单元、数码相机、便携式音乐播放器或数字录像机。计算设备可以是固定的、便携式的或可佩戴的。在进一步的实施方式中,计算设备可以是处理数据或记录数据以便在别处处理的任何其他电子设备。
附图和前述描述给出了实施例的示例。本领域技术人员将理解,一个或多个所描述的元件可以很好地组合成单个功能元件。替代地,某些元件可以被分成多个功能元件。来自一个实施例的元件可以添加到另一个实施例。例如,本文描述的过程的顺序可以改变,并且不限于本文描述的方式。此外,任何流程图的动作不需要按照所示的顺序实现;也不一定需要执行所有的动作。同样,不依赖于其他动作的那些动作可以与其他动作并行执行。实施例的范围决不受这些具体示例的限制。无论说明书中是否明确给出,许多变化都是可能的,诸如结构、尺寸和材料使用的不同。实施例的范围至少与所附权利要求给出的范围一样宽。
例如,实施例可作为计算机程序产品提供,所述计算机程序产品可包括一个或多个暂时或非暂时机器可读存储介质,其上存储有机器可执行指令,当由一个或多个机器(诸如计算机、计算机网络或其他电子设备)执行时,所述机器可执行指令可导致一个或多个机器执行根据本文描述的实施例的操作。机器可读介质可以包括但不限于软盘、光盘、CD-ROM(光盘只读存储器)和磁光盘、ROM、RAM、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁卡或光卡、闪速存储器或适于存储机器可执行指令的其他类型的介质/机器可读介质。
一些实施例属于示例1,其包括一种装置,该装置包括频率监视器电路,用于接收第一时钟信号、第二时钟信号和期望频率比率,确定第一时钟信号和第二时钟信号之间的比率是否与期望的期望频率比率匹配,以及在确定第一时钟信号和第二时钟信号之间的比率与期望频率比率不匹配时生成错误信号。
示例2包括示例1的主题,其中,所述频率监视器电路还接收启用信号,以指示所述第一时钟和所述第二时钟二者都有效。
示例3包括示例1和2的主题,其中第一时钟包括快时钟,并且第二时钟包括慢时钟。
示例4包括示例1-3的主题,其中频率监视器电路包括累加器电路,用于对慢时钟的固定数量的边沿之间的快时钟的周期数进行计数。
示例6包括示例1-5的主题,其中所述频率监视器电路还包括耦合至所述微分电路的比较器电路,用于将所述慢时钟和所述快时钟之间的比率与期望频率比率进行比较。
示例7包括示例1-6的主题,其中所述频率监视器电路进一步用于检测快时钟是否正在切换。
示例8包括示例1-7的主题,其中所述频率监视器电路包括同步电路,以将快时钟与慢时钟同步。
示例9包括示例1-8的主题,其中所述频率监视器电路还包括耦合至所述同步电路的检测器电路,以确定所述快时钟是否正在切换。
示例10包括示例1-9的主题,其中所述频率监视器电路进一步用于检测所述慢时钟是否正在切换。
示例11包括示例1-10的主题,其中所述频率监视器电路包括边沿检测器电路,用于检测慢时钟的边沿。
示例12包括示例1-11的主题,其中,所述频率监视器电路还包括累加器电路,所述累加器电路耦合至边沿检测器电路,以在无论何时边沿检测器电路检测到慢时钟正在上升时递增计数。
示例13包括示例1-12的主题,其中所述频率监视器电路还包括检测器电路,用于在检测到所述计数达到某个值时生成信号。
一些实施例属于示例14,其包括一种方法,该方法包括接收第一时钟信号,接收第二时钟信号,接收期望频率比率,确定第一时钟信号和第二时钟信号之间的比率是否与期望频率比率匹配,以及在确定第一时钟信号和第二时钟信号之间的比率与期望频率比率不匹配时生成错误信号。
示例15包括示例14的主题,还包括接收启用信号以指示第一时钟和第二时钟二者都有效。
示例16包括示例14和15的主题,还包括检测第一时钟是否正在切换。
示例17包括示例14-16的主题,还包括检测第二时钟是否正在切换。
一些实施例属于示例18,其包括一种系统,所述系统包含第一集成电路(IC)和耦合至第一IC的第二IC,所述第二IC包括频率监视器电路,以接收来自第一IC的第一时钟信号、来自第二IC的第二时钟信号和期望频率比率,确定所述第一时钟信号和所述第二时钟信号之间的比率是否匹配所述期望频率比率,以及在确定所述第一时钟信号和所述第二时钟信号之间的比率不匹配所述期望频率比率时生成错误信号。
示例19包括示例18的主题,其中所述频率监视器电路还接收启用信号,以指示所述第一时钟和所述第二时钟二者都有效。
示例20包括示例18和19的主题,其中第一时钟包括快时钟,并且第二时钟包括慢时钟。
一些实施例属于示例21,其包括其上存储有指令的至少一个计算机可读介质,所述指令在由一个或多个处理器执行时,使处理器接收第一时钟信号、接收第二时钟信号、接收期望频率比率、确定第一时钟信号和第二时钟信号之间的比率是否与期望频率比率匹配,以及在确定第一时钟信号和第二时钟信号之间的比率与期望频率比率不匹配时生成错误信号。
示例22包括示例21的主题,其上存储有指令,所述指令当由一个或多个处理器执行时,进一步使处理器接收启用信号,以指示第一时钟和第二时钟二者都有效。
上文已参照具体实施例描述了示例的实施例。然而,本领域技术人员将理解,在不脱离所附权利要求中阐述的更广泛的精神和范围的情况下,可以对其进行各种修改和改变。因此,前述描述和附图被认为是说明性的,而不是限制性的。

Claims (21)

1.一种装置,包括频率监视器电路,用于接收第一时钟信号、第二时钟信号和期望频率比率,确定第一时钟信号和第二时钟信号之间的比率是否与期望的期望频率比率匹配,以及在确定第一时钟信号和第二时钟信号之间的比率与期望频率比率不匹配时生成错误信号。
2.根据权利要求1所述的装置,其中,所述频率监视器电路还接收启用信号,以指示所述第一时钟和所述第二时钟二者都有效。
3.根据权利要求2所述的装置,其中第一时钟包括快时钟,并且第二时钟包括慢时钟。
4.根据权利要求3所述的装置,其中频率监视器电路包括累加器电路,用于对慢时钟的固定数量的边沿之间的快时钟的周期数进行计数。
5.根据权利要求4所述的装置,其中所述频率监视器电路还包括耦合到累加器电路的微分电路,用于生成慢时钟和快时钟之间的比率。
6.根据权利要求5所述的装置,其中所述频率监视器电路还包括耦合至所述微分电路的比较器电路,用于将所述慢时钟和所述快时钟之间的比率与期望频率比率进行比较。
7.根据权利要求3所述的装置,其中所述频率监视器电路进一步用于检测快时钟是否正在切换。
8.根据权利要求7所述的装置,其中所述频率监视器电路包括同步电路,以将快时钟与慢时钟同步。
9.根据权利要求8所述的装置,其中所述频率监视器电路还包括耦合至所述同步电路的检测器电路,以确定所述快时钟是否正在切换。
10.根据权利要求3所述的装置,其中所述频率监视器电路进一步用于检测所述慢时钟是否正在切换。
11.根据权利要求10所述的装置,其中所述频率监视器电路包括边沿检测器电路,用于检测慢时钟的边沿。
12.根据权利要求11所述的装置,其中,所述频率监视器电路还包括累加器电路,所述累加器电路耦合至边沿检测器电路,以在无论何时边沿检测器电路检测到慢时钟正在上升时递增计数。
13.根据权利要求12所述的装置,其中所述频率监视器电路还包括检测器电路,用于在检测到所述计数达到某个值时生成信号。
14.一种方法,包括:
接收第一时钟信号;
接收第二时钟信号;
接收期望频率比率;
确定第一时钟信号和第二时钟信号之间的比率是否与期望频率比率匹配;以及
在确定第一时钟信号和第二时钟信号之间的比率与期望频率比率不匹配时生成错误信号。
15.根据权利要求14所述的方法,还包括接收启用信号以指示第一时钟和第二时钟二者都有效。
16.根据权利要求15所述的方法,还包括检测第一时钟是否正在切换。
17.根据权利要求15所述的方法,还包括检测第二时钟是否正在切换。
18. 一种系统,包括:
第一集成电路(IC);以及
耦合至第一IC的第二IC,包括:
频率监视器电路,以接收来自第一IC的第一时钟信号、来自第二IC的第二时钟信号和期望频率比率,确定所述第一时钟信号和所述第二时钟信号之间的比率是否匹配所述期望频率比率,以及在确定所述第一时钟信号和所述第二时钟信号之间的比率不匹配所述期望频率比率时生成错误信号。
19.根据权利要求18所述的系统,其中所述频率监视器电路还接收启用信号,以指示所述第一时钟和所述第二时钟二者都有效。
20.根据权利要求19所述的系统,其中第一时钟包括快时钟,并且第二时钟包括慢时钟。
21.其上存储有指令的至少一个计算机可读介质,所述指令在由一个或多个处理器执行时,使处理器执行根据权利要求14-17所述的方法。
CN202211383934.9A 2021-12-07 2022-11-07 时钟频率比率监视器 Pending CN116244250A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/543956 2021-12-07
US17/543,956 US20220091168A1 (en) 2021-12-07 2021-12-07 Clock frequency ratio monitor

Publications (1)

Publication Number Publication Date
CN116244250A true CN116244250A (zh) 2023-06-09

Family

ID=80740233

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211383934.9A Pending CN116244250A (zh) 2021-12-07 2022-11-07 时钟频率比率监视器

Country Status (3)

Country Link
US (1) US20220091168A1 (zh)
EP (1) EP4194860A1 (zh)
CN (1) CN116244250A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115981415A (zh) * 2022-12-12 2023-04-18 紫光展锐(重庆)科技有限公司 一种时钟频率检测方法、装置、芯片及模组设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1110176A (en) * 1964-06-12 1968-04-18 Ass Elect Ind Improvements relating to frequency comparison electrical circuits
JPS59195166A (ja) * 1983-04-21 1984-11-06 Shimada Phys & Chem Ind Co Ltd 周波数粗測定方式
US5657361A (en) * 1994-09-06 1997-08-12 Fujitsu Limited Variant frequency detector circuit
US7472305B1 (en) * 2004-12-21 2008-12-30 National Semiconductor Corporation Method and apparatus for limiting the output frequency of an on-chip clock generator
US7673166B2 (en) * 2006-10-24 2010-03-02 Hewlett-Packard Development Company, L.P. Computation of processor clock frequency ratios
US8937496B1 (en) * 2014-08-20 2015-01-20 Xilinx, Inc. Clock monitor
JP2017027204A (ja) * 2015-07-17 2017-02-02 富士通株式会社 半導体装置および半導体装置の制御方法
JP2017199104A (ja) * 2016-04-26 2017-11-02 ソニー株式会社 半導体装置および半導体装置の制御方法
US10514401B2 (en) * 2017-08-02 2019-12-24 Qualcomm Incorporated On-chip frequency monitoring
GB201800552D0 (en) * 2018-01-12 2018-02-28 Nordic Semiconductor Asa Clock calibration

Also Published As

Publication number Publication date
EP4194860A1 (en) 2023-06-14
US20220091168A1 (en) 2022-03-24

Similar Documents

Publication Publication Date Title
US10402565B2 (en) In-system provisioning of firmware for a hardware platform
US11928215B2 (en) Firmware verification mechanism
TW201719318A (zh) 自動時脈組態系統及方法
CN113452666A (zh) Ip独立的安全固件加载
EP4134685A1 (en) Built-in self-test for network on chip fabric
EP4194860A1 (en) Clock frequency ratio monitor
TW202011188A (zh) 記憶體裝置以及用於記憶體管理的系統
US11983260B2 (en) Partitioned platform security mechanism
WO2024032388A1 (zh) 一种用于安全验证的主板以及安全验证方法、装置及介质
US11886316B2 (en) Platform measurement collection mechanism
EP4195079A1 (en) Hardware integrity verification mechanism
US11429289B2 (en) Memory map protection mechanism
US20220004635A1 (en) Computing peripheral interface management mechanism
US20210110043A1 (en) Platform firmware boot mechanism
US20190096503A1 (en) Design for test architecture for die to die interconnect for three dimensional integrated circuits
US20200226260A1 (en) Firmware resiliency mechanism
US11861009B2 (en) Mechanism to update attested firmware on a platform
US20220092196A1 (en) Mechanism for secure library sharing
US11568048B2 (en) Firmware descriptor resiliency mechanism
US11429496B2 (en) Platform data resiliency mechanism
US20220103557A1 (en) Mechanism for managing services to network endpoint devices
US12013795B1 (en) System and method for managing ports of data processing systems and attached devices
US20220100906A1 (en) Software library integrity verification mechanism

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication