CN108241428A - 电子器件及其操作方法 - Google Patents

电子器件及其操作方法 Download PDF

Info

Publication number
CN108241428A
CN108241428A CN201710984989.8A CN201710984989A CN108241428A CN 108241428 A CN108241428 A CN 108241428A CN 201710984989 A CN201710984989 A CN 201710984989A CN 108241428 A CN108241428 A CN 108241428A
Authority
CN
China
Prior art keywords
processor circuit
clock
processor
cache
request
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
CN201710984989.8A
Other languages
English (en)
Inventor
文东郁
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN108241428A publication Critical patent/CN108241428A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • G06F5/12Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
    • G06F5/14Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations for overflow or underflow handling, e.g. full or empty flags
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/12Indexing scheme relating to groups G06F5/12 - G06F5/14
    • G06F2205/126Monitoring of intermediate fill level, i.e. with additional means for monitoring the fill level, e.g. half full flag, almost empty flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/62Details of cache specific to multiprocessor cache arrangements
    • G06F2212/621Coherency control relating to peripheral accessing, e.g. from DMA or I/O device
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Microcomputers (AREA)
  • Power Sources (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

本发明提供了一种电子器件以及一种电子器件的操作方法。根据一些示例实施例的电子器件包括:时钟管理电路,其配置为控制时钟信号;及处理器电路,其直接连接至时钟管理电路,并配置为根据处理器电路的操作状态,将用于时钟信号的时钟控制请求提供给时钟管理电路。

Description

电子器件及其操作方法
相关申请的交叉引用
本申请要求于2016年12月26日提交至韩国知识产权局的韩国专利申请No.10-2016-0179164的优先权,该申请全部内容以引用方式并入本文中。
技术领域
本公开涉及电子器件及其操作方法。
背景技术
在电子器件的多个器件集成在一个芯片上的系统芯片(SoC)中,可易于执行功率管理。在某些情况下,如果和/或当执行用于禁用集成在SoC上的器件的时钟的时钟门控时,可减少器件的动态功率。在某些情况下,如果和/或当针对特定器件执行时钟门控时,中央处理单元(CPU)可访问该器件的驱动器,以检查工作队列,并且如果工作队列是空的,则CPU可确定该器件处于空闲状态。此后,CPU可控制作为集成在SoC中的器件之一的时钟管理单元(CMU),通过CMU的驱动器以门控器件的时钟。
发明内容
提供一种电子器件及其操作方法,通过所述电子器件及其操作方法可降低动态功率。
将在下面的描述中部分地阐述其它方面,并且部分地通过描述中明显得出其它方面,或可通过一些示例实施例的实践习得其它方面。
根据一些示例实施例,一种电子器件可包括时钟管理电路和直接连接到时钟管理电路的处理器电路。时钟管理电路可配置为控制时钟信号。处理器电路配置为根据处理器电路的操作状态,将与时钟信号相关联的时钟控制请求通信至时钟管理电路。
根据一些示例实施例,一种电子器件的操作方法可包括:确定电子器件的处理器电路的操作状态;并基于使用处理器电路,根据处理器电路的操作状态,将与时钟信号相关联的时钟控制请求直接通信至时钟管理电路。
根据一些示例实施例,一种电子器件可包括:第一处理器电路和第二处理器电路,它们配置为支持硬件高速缓存一致性;以及时钟管理电路,其配置为控制第一处理器电路的时钟信号和第二处理器电路的时钟信号。第二处理器电路可配置为,基于确定第二处理器电路已从第一处理器电路接收到高速缓存一致性信号,将时钟启用请求通信至时钟管理电路。时钟管理电路可配置为,响应于时钟启用请求,启用第二处理器电路。
根据一些示例实施例,一种电子器件可包括存储指令程序的存储器和处理器。处理器可配置为执行指令程序,以确定与处理器相关联的操作状态,并根据处理器的操作状态,将与时钟信号相关联的时钟控制请求通信至时钟管理电路。
附图说明
通过以下结合附图描述的实施例,这些和/或其它方面将更清楚、更容易地理解,其中:
图1示出了根据一些示例实施例的电子器件;
图2是示出了根据一些示例实施例的电子器件的内部结构的框图;
图3示出了根据一些示例实施例的电子器件的时钟控制操作;
图4示出了根据一些示例实施例在时钟管理请求接口和时钟管理单元(CMU)之间的操作;
图5示出了根据一些示例实施例基于时钟管理请求确定单元的确定结果,将时钟启用请求或时钟禁用请求发送至CMU的操作;
图6是根据一些示例实施例的时钟管理请求接口和高速缓存一致性接口的框图;
图7是根据一些示例实施例的电子器件的操作方法的流程图;以及
图8是根据一些示例实施例确定处理器的操作状态的方法的流程图。
具体实施方式
现在参考示出了示例的附图详细描述示例实施例,其中相同的附图标记始终用于表示相同的元件。就这一点而言,一些示例实施例可具有不同的形式,并且不应理解为仅限于本文所阐述的描述。因此,下面仅参考附图描述示例实施例来解释各方面。如本文所使用的那样,术语“和/或”包括相关所列项目中的一个或多个的任意和所有组合。
下面将参照附图详细描述各示例实施例。下面将要描述的示例实施例可以经各种不同形式的修改后实施。为清楚描述示例实施例的特征,将不会详细描述对于示例实施例所属领域的普通技术人员广泛知晓的要素。
在此,当一个元件连接到另一元件上时,所述一个元件不仅可以直接连接到另一元件上,而且还可以利用另一个介入其间的元件电连接到另一元件上。如果假设某一元件包括某一元件,术语“包括”表示相应元件可进一步包括其它元件,除非书面声明了与相应元件相反的特定含义。
图1示出了根据一些示例实施例的电子器件。
参照图1,根据一些示例实施例的电子器件100可包括中央处理单元(CPU)110、数字信号处理器(DSP)120、存储器130、图形处理单元(GPU)140及时钟管理单元(CMU)150。然而,这样的结构只是示例,并且电子器件100还可包括各种其它器件。例如,电子器件100还可包括输入/输出(I/O)接口。CPU 110、DSP 120、GPU 140和CMU 150中的每个可分别包括配置以实现CPU 110、DSP 120、GPU140和CMU 150的电子线路的实例。CPU 110、DSP 120、GPU140和CMU 150中的一个或多个可包括处理器。本文所称的处理器可替换地称为“处理器电路”和/或“处理装置”。
诸如CPU 110、DSP 120、GPU 140和CMU 150的处理装置可包括一个或多个电子线路的实例,这些电子线路根据它们的功能分别配置为,通过接收数据、存储数据、计算数据和输出数据来对数据进行处理。诸如CPU 110、DSP 120、GPU 140和CMU 150的处理装置可以是与不同类型的处理装置(例如,不同的处理器电路类型)相关联的处理装置(“处理器电路”)。这样的处理装置可分别包括用于数据处理的高速缓存111、121和141。电子器件100可支持用于在高速缓存111、121和141之间共享所存储的数据的高速缓存一致性。可以通过硬件间的直接连接,而不是软件处理来支持高速缓存一致性。这将在下面详细描述。
存储器130(也可替代性地称为“存储器装置”)可包括电子线路的实例,其配置为存储操作系统(OS)、各种程序和与电子器件100的驱动有关的数据。可将存储在存储器130中的数据提供给每个处理装置。在一些示例实施例中,基于执行存储在存储器130中的指令程序,CPU 110、DSP 120、GPU 140和CMU 150可各自配置为实现本文描述的功能和/或单元、元件等的一个或多个实例。存储器130可以是存储一个或多个指令程序的非暂时性计算机可读存储介质。
CMU 150可包括配置为管理电子器件100的时钟信号的电子线路的实例。CMU 150可控制输入到诸如CPU 110、DSP 120、存储器130、GPU 140等的每一个器件的时钟信号。更具体地,CMU 150选择性启用或禁用输入到每一个器件的时钟信号。本文可替换地将时钟管理单元(CMU)称作“时钟管理电路”。
分离的器件连接到总线160。总线160可包括系统总线,并可以实现为应用具有特定标准总线规范的协议的总线。例如,作为标准总线规范,可应用先进RISC机器(ARM)的高级微控制器总线架构(AMBA)协议。另外,其它类型的协议,如,SONICs公司的uNetwork、IBM的CoreConnect、OCP-IP的开放内核协议(Open Core Protocol)等,也可应用到系统总线。
可利用系统芯片(SoC)实现电子器件100。换句话说,CPU 110、DSP 120、存储器130、GPU 140和CMU 150可集成到一个芯片上。
图2是示出了根据一些示例实施例的电子器件的内部结构的框图。
参照图2,电子器件200可包括CMU 210和处理器220。如图2所示,处理器220可包括高速缓存221、状态寄存器222、时钟管理请求确定单元223和时钟管理请求接口224。高速缓存221、状态寄存器222、时钟管理请求确定单元223和时钟管理请求接口224中的每一个可通过处理器220中单独的各个电子线路的实例来实现。处理器220可直接连接到CMU(例如,通过一个或多个硬件直接结构性接口、硬件直接通信接口、它们的一些组合等)。
CMU 210控制时钟信号。CMU 210可控制多个电路的时钟信号(例如,控制第一处理器电路的时钟信号和第二处理器电路的时钟信号)。CMU 210从与其直接连接的处理器220接收时钟控制请求。CMU 210可从处理器220直接接收时钟控制请求,时钟控制请求无需通过另一器件。本文可替换地将处理器220称作处理器电路。
CMU 210可在处理器220的请求下,选择性地启用(例如,选择性地启用或禁用)输入到处理器220的时钟信号(例如,基于从处理器220分别接收到时钟启用请求或时钟禁用请求,选择性地启用或禁用输入到处理器220的时钟信号)。即使当CMU 210从处理器220接收到时钟禁用请求时,基于确定在接收时钟禁用请求与之前紧邻的(“紧接着之前”)时钟信号的启用之间的时间间隔小于或等于特定阈值时间,CMU 210可以选择性地保持启用输入到处理器220的时钟信号(例如,选择性地启用输入到处理器220的时钟信号),而不禁用时钟信号。这样,通过将时钟状态变化间隔保持在特定时间或更长时间,CMU 210可改进处理器220的处理效率。
将参照图3和图4详细描述CMU 210的时钟控制操作。
图3示出了根据一些示例实施例的电子器件的时钟控制操作。
图3中,处理器340(例如,诸如GPU、DSP等的处理装置)在CMU 310的控制下接收时钟信号。
CMU 310从处理器340接收时钟控制请求,并将0或1输出到与门(AND)330。
时钟产生单元320(本文也称为“时钟产生电路”)可产生时钟信号,并将产生的时钟信号输出(“通信”)至与门330。
当CMU 310输出0时,通过与门330输入到处理器340的信号是0,从而禁用处理器340的时钟信号。当CMU 310输出1时,由时钟产生单元320产生的时钟信号通过与门330输入(“通信”)到处理器340,从而启用处理器340的时钟信号。
根据一些示例实施例,处理器340可直接连接到CMU 310,而没有通过另一器件连接(例如,通过硬件直接通信接口直接地通信连接到CMU 310),从而将处理器340配置为,基于处理器340是处于空闲状态还是处于活动状态,相应地将针对输入到处理器340的时钟信号的时钟启用请求或时钟禁用请求选择性地直接递送(“通信”)到CMU 310(例如,通过硬件直接通信接口)。因此,没有信号处理延迟,允许立即启用或禁用时钟信号。
图4示出了根据一些示例实施例在时钟管理请求接口和CMU之间的操作。
参照图4,基于处理器220分别是处于空闲状态还是处于活动状态,处理器220选择性地将时钟管理请求信号CLK REQ提供(“通信”)至CMU 210,其中时钟管理请求信号CLKREQ是时钟启用请求或时钟禁用请求。
已接收到时钟管理请求信号CLK REQ的CMU 210将表示信号接收的信号ACCEPT提供(“通信”)至处理器220,从而在处理器220和CMU 210之间实现握手。
响应于处理器220接收信号ACCEPT,处理器220将与信号ACCEPT的接收应答有关的信号ACK发送(“通信”)到CMU 210。
回到图2,处理器220可包括:高速缓存221;状态寄存器222,其可存储处理器220(“相关联”)的操作状态;时钟管理请求确定单元223,其可确定、存储在状态寄存器222中的处理器220的操作状态(例如,“存储的操作状态”);以及直接与CMU 210连接的时钟管理请求接口224。处理器220可配置为,基于执行指令程序来实现高速缓存221、状态寄存器222、时钟管理请求确定单元223和时钟管理请求接口224中的一些或全部。这样的指令程序可存储在存储器中,诸如图1所示的存储器130。
高速缓存221可以是最后一级高速缓存(LLC)。高速缓存221可包括高速缓存一致性接口221-1,其配置为支持高速缓存一致性,并且配置为连同包括在使用高速缓存一致性接口的另一器件中的高速缓存一起支持硬件高速缓存一致性。
根据时钟管理请求确定单元223的确定结果(例如,基于处理器220分别是处于空闲状态还是处于活动状态),处理器220可直接地并可选择性地通过时钟管理请求接口224将时钟启用请求或时钟禁用请求提供(“通信”)至CMU 210。
状态寄存器222可包括:处理器状态寄存器222-1,其可存储处理器220的管线(pipel ine)的状态;以及高速缓存状态寄存器222-2,其可存储高速缓存221的状态。处理器状态寄存器222-1可存储处理器220的管线是处于活动状态还是处于空闲状态的指示。更具体地,基于处理器220完成工作队列中最后一个工作(例如,基于确定处理器电路已完成工作队列中最后一个工作),处理器状态寄存器222-1可更新为空闲状态。高速缓存状态寄存器222-2可存储高速储缓存221是处于活动状态还是处于空闲状态的指示。更具体地,基于高速缓存221完成所请求的工作(例如,确定高速缓存221已完成了请求的工作)并且处于先入先出(FIFO)空状态,高速缓存状态寄存器222-2可更新为空闲状态。高速缓存状态寄存器222-2可指示处理器220的存储器系统是否处于空闲状态。
时钟管理请求确定单元223可基于使用状态寄存器222来确定处理器220是处于空闲状态还是处于活动状态。更具体地,时钟管理请求确定单元223可基于存储在状态寄存器222中的处理器220的管线的状态和高速缓存221的状态来确定处理器220是处于空闲状态还是处于活动状态。
时钟管理请求确定单元223可确定在处理器220处通过高速缓存一致性接口是否将与高速缓存一致性有关的高速缓存一致性信号发送至另一处理器或者从另一处理器接收与高速缓存一致性有关的高速缓存一致性信号。更具体地,时钟管理请求确定单元223确定是否将高速缓存一致性流量发送到另一处理器或者从另一处理器接收到高速缓存一致性流量。更具体地,时钟管理请求确定单元223可确定是否将高速缓存一致性的探测流量(snoop traffic)发送到另一处理器或者从另一处理器接收到高速缓存一致性的探测流量。时钟管理请求确定单元223确定另一器件(例如,分离的器件)是否已访问处理器220(例如,处理器电路)。更具体地,时钟管理请求确定单元223可确定另一器件是否通过处理器装置驱动器执行与处理器220的控制寄存器或状态寄存器相关的读操作或写操作。
基于时钟管理请求确定单元223确定处理器220的管线和高速缓存221处于空闲状态、并且没有发送或接收高速缓存一致性流量、并且另一器件(例如,分离的器件)没有访问处理器220(例如,处理器电路),时钟管理请求确定单元223可确定处理器220处于空闲状态。基于时钟管理请求确定单元223确定处理器220的管线或高速缓存221处于活动状态、或者发送或接收高速缓存一致性流量、或者另一器件已访问处理器220,时钟管理请求确定单元223可确定处理器220处于活动状态。
将参照图5进行更详细的描述。
图5示出了根据一些示例实施例基于时钟管理请求确定单元的确定结果(例如,基于处理器分别是处于空闲状态还是处于活动状态),选择性地将时钟启用请求或时钟禁用请求发送(“通信”)至CMU的操作。可通过本文所描述的一些或全部处理器、处理装置等执行图5示出的操作。
参照图5,时钟管理请求确定单元223根据以下四个条件确定对于CMU 210的时钟启用请求或时钟禁用请求:
1.处理器220的管线的状态;
2.高速缓存221的状态;
3.是否将高速缓存一致性流量发送至另一处理器或者从另一处理器接收到高速缓存一致性流量;以及
4.另一器件是否已访问处理器220。
在一些示例实施例中,基于从时钟管理请求接口224输出的时钟管理请求信号CLKREQ为0(例如,具有0的值),可选择性地将时钟禁用请求发送(“通信”)至CMU 210。更具体地,基于由于处理器220的管线处于空闲状态而使得或门(OR)510的第一输入521为0、由于高速缓存221处于空闲状态而使得或门510的第二输入522为0、由于没有发送或接收高速缓存一致性流量而使得或门510的第三输入523为0、以及由于另一器件没有访问处理器220而使得或门510的第四输入为0,也就是说,如果或门510的全部第一输入521至第四输入524都为0,则或门510的输出会为0。在这种情况下,时钟管理请求确定单元223确定处理器220处于空闲状态,并通过时钟管理请求接口224将时钟管理请求信号CLK REQ为0的时钟禁用请求提供(“通信”)至CMU 210。
另一方面,基于从时钟管理请求接口224输出的时钟管理请求信号CLK REQ为1,可选择性地将时钟启用请求提供至CMU 210。更具体地,基于由于处理器220的管线处于活动状态而使得或门510的第一输入521为1、或者由于高速缓存221处于活动状态而使得或门510的第二输入522为1、或者由于发送或接收高速缓存一致性流量而使得或门510的第三输入523为1、或者由于另一器件已访问处理器220而使得或门510的第四输入为1,也就是说,如果或门510的第一输入521至第四输入524中任一输入为1,则或门510的输出会为1。基于处理器220的时钟处于禁用状态产生时钟启用请求,使得基于发送或接收(例如,在处理器220和另一“分离的”器件之间通信的)高速缓存一致性流量或者另一器件已访问处理器220,提供时钟启用请求。因此,处理器220通过时钟管理请求接口224将时钟管理请求信号CLK REQ为1的时钟启用请求提供至CMU 210。
根据一些示例实施例,访问处理器220的另一“分离的”器件没有确定处理器220的操作状态;相反,包括在处理器220内的时钟管理请求确定单元223确定处理器220的空闲的时间点。处理器220直接连接到CMU 210(例如,通过一个或多个硬件直接结构接口、硬件直接通信接口、它们的一些组合等),使得处理器220配置为(例如,通过硬件直接通信接口)直接提供时钟控制请求,使得另一器件不在CMU 210的控制寄存器中存储用于控制处理器220的时钟的命令。因此,没有信号处理延迟,允许立即启用或禁用时钟。
回到图2,电子器件200可包括总线,并且时钟管理请求接口224可通过总线直接连接到CMU 210。电子器件200通过总线支持处理器220的高速缓存221和包括在另一器件中的高速缓存之间的高速缓存一致性。将参照图6进行更详细的描述。
图6是根据一些示例实施例的时钟管理请求接口和高速缓存一致性接口的框图。
参照图6,电子器件200可包括CMU 210、处理器220和另一器件230。本文所述的“另一器件”可替换地称为“分离的器件”。进一步,如本文所指出的,“处理器”可替换地称为“处理器电路”。
处理器220可包括高速缓存221和时钟管理请求接口224,并且高速缓存221可包括高速缓存一致性接口610。器件230可包括高速缓存232,高速缓存232可包括高速缓存一致性接口620。器件230可以例如是CPU,处理器220可以是诸如GPU或DSP的处理器。处理器220可基于执行存储在存储器中的指令程序(图6未示出)实现高速缓存221和时钟管理请求接口224。这样的存储器可以是图1所示的存储器130。
处理器220的高速缓存一致性接口610通过总线240直接连接到器件230的高速缓存一致性接口620。因此,电子器件200可通过高速缓存221和232之间的直接连接在不使用存储器的情况下支持根据硬件的高速缓存一致性。
当支持根据硬件的高速缓存一致性时,处理器220可配置为通常始终启用时钟,以便为探测流量服务。在一些示例实施例中,处理器220可通过时钟管理请求接口224直接连接到CMU 210,使得处理器220配置为将时钟控制请求直接提供到CMU 210(例如,无需通过任何中间设备进行通信),使得在支持硬件高速缓存一致性的环境下执行时钟门控,从而降低动态功率消耗。
回到图2,可通过分离的器件(图2未示出)来控制CMU 210。控制CMU 210的分离的器件可通过CMU 210的驱动器来控制CMU 210。更具体地,控制CMU 210的分离的器件访问CMU 210的控制寄存器,并在CMU 210的控制寄存器中存储命令,用于控制包含在电子器件200中的每一个器件的时钟。控制CMU 210的分离的器件可以是图1所示的CPU 110。
到目前为止,已描述了电子器件200的结构。下文将描述电子器件200的操作方法。
图7是根据一些示例实施例的电子器件的操作方法的流程图。图7示出的操作可通过本文所描述的一些或全部处理器、处理装置等执行。
参照图7,在操作710中,电子器件200确定处理器220的操作状态,即,处理器220是处于空闲状态还是处于活动状态。
在操作720中,根据处理器220的操作状态,处理器220直接将时钟控制请求提供(“通信”)至CMU 210。基于在操作710中处理器220确定处理器220的状态是空闲状态,处理器220选择性地将时钟禁用请求提供给CMU 210。相反,基于在操作710中处理器220确定处理器220的状态是活动状态,处理器220选择性地将时钟启用请求提供给CMU 210。
一旦从处理器220接收时钟启用请求,CMU 210启用输入到处理器220的时钟;基于CMU 210从处理器220接收到时钟禁用请求,CMU210禁用输入到处理器220的时钟。然而,如果在接收时钟禁用请求与之前紧邻的时钟信号的启用之间的时间间隔小于或等于特定阈值时间,那么CMU 210可以保持输入到处理器220的时钟的启用状态,而不禁用该时钟。
图8是根据一些示例实施例确定处理器的操作状态的方法的流程图。图8示出的方法可通过本文所描述的一些或全部处理器、处理装置等执行。
参照图8,在操作810中,处理器220确定处理器220的管线的状态。基于在操作810中处理器220确定管线处于活动状态,处理器220执行操作860,以将时钟启用请求提供给CMU 210。基于在操作810中处理器220确定管线处于空闲状态,处理器220执行操作820。
在操作820中,处理器220确定处理器220的高速缓存221的状态。基于在操作820中处理器220确定高速缓存221处于活动状态,处理器220执行操作860,以将时钟启用请求提供给CMU 210。基于在操作820中处理器220确定高速缓存221处于空闲状态,处理器220执行操作830。
在操作830中,处理器220确定是否发送或接收了高速缓存一致性流量。基于在操作830中处理器220确定发送或接收了高速缓存一致性流量,处理器220执行操作860,以将时钟启用请求提供给CMU210。基于在操作830中处理器220确定没有发送或接收高速缓存一致性流量,处理器220执行操作840。
在操作840中,处理器220确定另一器件是否访问处理器220。基于在操作840中处理器220确定另一器件已经访问处理器220,处理器220执行操作860,以将时钟启用请求提供给CMU 210。基于在操作840中处理器220确定另一器件没有访问处理器220,处理器220执行操作850,以将时钟禁用请求提供给CMU210。
图8所示的确定处理器220的操作状态的方法是根据一些示例实施例的,并可用其他方式来实现。例如,可首先执行确定是否发送或接收了高速缓存一致性流量的操作830。可以在确定高速缓存221的状态的操作820之前执行确定另一器件是否访问处理器220的操作840。
根据一些示例实施例的装置可包括处理器、用于存储程序数据和执行程序数据的存储器、诸如磁盘驱动器的永久存储装置、用于与外部设备通信的通信端口以及诸如触控面板、键、按钮等的用户接口装置。用软件模块或算法实现的方法可存储为在计算机可读记录介质上可由处理器执行的计算机可读代码或程序指令。计算机可读记录介质的示例可包括磁存储介质(例如,只读存储器(ROM)、随机存取存储器(RAM)、软盘、硬盘等)和光学介质(例如,光盘ROM(CD-ROM)、数字多功能光盘(DVD)等)等。计算机可读记录介质可以分布在网络耦合计算机系统上,使得计算机可读代码以分布式方式存储并执行。介质可以通过计算机读取、存储在存储器中、并由处理器执行。
一些示例实施例可通过块元件和各种处理操作来表示。这种功能块可以通过执行特定功能的各种数量的硬件和/或软件部件实现。例如,一些示例实施例可以采用各种集成电路部件,例如,存储器元件、处理元件、逻辑元件、查找表等,可以在一个或多个微处理器或其他控制设备的控制下执行各种功能。类似地,在使用软件编程或软件元件来实现各元件的情况下,一些示例实施例可使用任何编程语言或脚本语言(诸如C、C++、JAVA、汇编等)来实现,可使用利用数据结构、对象、进程、例程或其它编程元件的任意组合实现的各种算法来实现。功能方面可实现为在一个或多个处理器中执行的算法。进一步,一些示例实施例可采用电子配置、信号处理和/或控制、数据处理等的任意数量的现有技术。术语“机制”、“元件”、“手段”或“部件”广泛应用,并且不限于机械或物理实施例。术语可以包括与处理器等相结合的一系列软件例程。
在一些示例实施例描述的特定执行只是示例,并且不限定使用任何方法的技术范围。为了简洁起见,没有详细描述系统的传统的电子器件、控制系统、软件开发以及其他功能方面。此外,在所呈现的各个附图中示出的连接线或连接器旨在表示各种元件之间的示例功能关系和/或物理或逻辑连接。
本公开(特别是在权利要求书)中,“所述”和其它与之类似的指示词的使用既可对应于单数形式与复数形式。此外,如果是本公开描述了范围,该范围必须被视为包括采用范围内的任何单个元件的发明(除非另有说明),并必须被视为已写在本公开的包括在范围内的每个单个元件的详细描述中。除非方法的操作顺序被明确地提及或描述,否则可以适当的顺序来执行操作。操作的顺序不限于所提及的操作顺序。所有示例或示例术语(例如,“等”,“和(或)等”和“等等”)的使用仅旨在详细描述技术构思,并且范围并不限于示例或示例术语,除非权利要求进行了限定。此外,本领域普通技术人员可以理解,本公开可以根据设计条件和因素、通过各种修改、组合和变化来配置,而不脱离本公开和它的等价物的精神和技术范围。

Claims (24)

1.一种电子器件,包括:
时钟管理电路,其配置为控制时钟信号;以及
处理器电路,其直接连接到所述时钟管理电路,所述处理器电路配置为根据所述处理器电路的操作状态,将与所述时钟信号相关联的时钟控制请求通信至所述时钟管理电路。
2.根据权利要求1所述的电子器件,其中,
所述处理器电路包括直接连接到所述时钟管理电路的时钟管理请求接口,并且
所述处理器电路进一步配置为:
存储所述处理器电路的操作状态,并且
确定所述处理器电路的存储的操作状态。
3.根据权利要求2所述的电子器件,其中所述处理器电路进一步配置为确定所述处理器电路是处于空闲状态还是处于活动状态。
4.根据权利要求3所述的电子器件,其中所述处理器电路进一步配置为:
基于确定所述处理器电路处于空闲状态,将时钟禁用请求通信至所述时钟管理电路,并且
基于确定所述处理器电路处于活动状态,将时钟启用请求通信至所述时钟管理电路。
5.根据权利要求3所述的电子器件,其中所述时钟管理电路进一步配置为:
基于确定所述时钟管理电路已经接收到来自所述处理器电路的时钟启用请求,启用输入到所述处理器电路的时钟信号;并且
基于确定所述时钟管理电路已经接收到来自所述处理器电路的时钟禁用请求,禁用输入到所述处理器电路的时钟信号。
6.根据权利要求5所述的电子器件,其中所述时钟管理电路进一步配置为:
基于以下确定结果保持输入到所述处理器电路的时钟信号的启用状态,而不禁用所述时钟信号:
在所述时钟管理电路处接收到时钟禁用请求,并且
在所述时钟管理电路处接收时钟禁用请求与之前紧邻的时钟信号的启用之间的时间间隔小于或等于特定阈值时间。
7.根据权利要求2所述的电子器件,其中
所述处理器电路包括:
处理器状态寄存器,其配置为
存储所述处理器电路的管线的状态,并且
基于确定所述处理器电路已完成工作队列中最后一个工作,将所述管线的状态更新为空闲状态;以及
高速缓存状态寄存器,其配置为
存储包括在所述处理器电路中的高速缓存的状态,并且
基于确定所述高速缓存完成了请求的工作并处于FIFO空状态,将所述高速缓存的状态更新为空闲状态。
8.根据权利要求7所述的电子器件,其中所述高速缓存包括配置为支持高速缓存一致性的高速缓存一致性接口。
9.根据权利要求8所述的电子器件,其中所述处理器电路进一步配置为:
确定分离的器件是否已经访问所述处理器电路,以及高速缓存一致性流量是否正在通过所述高速缓存一致性接口在所述处理器电路和所述分离的器件之间通信;
基于以下确定结果确定所述处理器电路处于空闲状态:
所述处理器电路的管线和高速缓存处于空闲状态,
所述高速缓存一致性流量没有在所述处理器电路和所述分离的器件之间通信,并且
所述分离的器件没有访问所述处理器电路;以及
基于以下确定结果确定所述处理器电路处于活动状态:
所述处理器电路的管线或高速缓存处于活动状态,
所述高速缓存一致性流量正在所述处理器电路和所述分离的器件之间通信,或者
所述分离的器件已访问所述处理器电路。
10.根据权利要求8所述的电子器件,还包括:
配置为支持与所述处理器电路的高速缓存一致性的器件,
其中,包括在所述器件中的高速缓存包括配置为支持高速缓存一致性的高速缓存一致性接口,并且
所述处理器电路的高速缓存分别通过所述处理器电路的高速缓存一致性接口和所述器件的高速缓存一致性接口直接连接到所述器件的高速缓存,使得所述处理器电路的高速缓存配置为支持硬件高速缓存一致性。
11.一种电子器件的操作方法,所述操作方法包括:
确定所述电子器件的处理器电路的操作状态;以及
基于使用所述处理器电路,根据所述处理器电路的操作状态,将与时钟信号相关联的时钟控制请求直接通信至时钟管理电路。
12.根据权利要求11所述的操作方法,其中确定所述处理器电路的操作状态的步骤包括:
确定所述处理器电路是处于空闲状态还是处于活动状态。
13.根据权利要求12所述的操作方法,其中根据所述处理器电路的操作状态通信所述时钟控制请求的步骤包括:基于所述处理器电路是处于空闲状态还是处于活动状态,相应地将时钟启用请求或时钟禁用请求选择性地通信至所述时钟管理电路,该选择性地通信的步骤包括执行以下操作之一:
基于确定所述处理器电路处于空闲状态,将时钟禁用请求通信至所述时钟管理电路;或者
基于确定所述处理器电路处于活动状态,将时钟启用请求通信至所述时钟管理电路。
14.根据权利要求11所述的操作方法,还包括:
基于从所述处理器电路接收到的是时钟启用请求还是时钟禁用请求,选择性地启用或禁用输入到所述处理器电路的时钟信号,该选择性地启用或禁用步骤包括执行以下操作之一:
基于使用所述时钟管理电路从所述处理器电路接收到时钟启用请求,启用输入到所述处理器电路的时钟信号;以及
基于使用所述时钟管理电路从所述处理器电路接收到时钟禁用请求,禁用输入到所述处理器电路的时钟信号。
15.根据权利要求14所述的操作方法,还包括:
基于以下确定结果保持输入到所述处理器电路的时钟信号的启用状态,而不禁用所述时钟信号:
使用所述时钟管理电路从所述处理器电路接收到时钟禁用请求;并且
在接收时钟禁用请求与之前紧邻的时钟信号的启用之间的时间间隔小于或等于特定阈值时间。
16.根据权利要求11所述的操作方法,其中确定所述处理器电路的操作状态的步骤包括:
确定所述处理器电路的管线和高速缓存是否处于空闲状态;
确定高速缓存一致性流量是否正在经由所述处理器电路进行通信;以及
确定分离的器件是否已访问所述处理器电路。
17.根据权利要求16所述的操作方法,其中确定所述处理器电路的操作状态的步骤包括:
基于以下确定结果通信时钟禁用请求:
所述处理器电路的管线和高速缓存处于空闲状态,
所述高速缓存一致性流量没有在所述处理器电路和所述分离的器件之间通信,并且
所述分离的器件没有访问所述处理器电路;以及
基于以下确定结果通信时钟启用请求:
所述处理器电路的管线或高速缓存处于活动状态,
所述高速缓存一致性流量正在所述处理器电路和所述分离的器件之间通信,或者
所述分离的器件已访问所述处理器电路。
18.根据权利要求11所述的操作方法,还包括:
基于确定所述处理器电路已完成工作队列中最后一个工作,将所述处理器电路的管线的状态更新为空闲状态;以及
基于确定所述处理器电路的高速缓存完成了请求的工作并处于FIFO空状态,将所述高速缓存的状态更新为空闲状态。
19.一种电子器件,包括:
第一处理器电路和第二处理器电路,它们配置为支持硬件高速缓存一致性;以及
时钟管理电路,其配置为控制所述第一处理器电路的时钟信号和所述第二处理器电路的时钟信号,
其中,所述第二处理器电路配置为,基于确定所述第二处理器电路已从所述第一处理器电路接收到高速缓存一致性信号,将时钟启用请求通信至所述时钟管理电路,并且
所述时钟管理电路配置为,响应于时钟启用请求,启用所述第二处理器电路。
20.根据权利要求19所述的电子器件,其中所述第一处理器电路进一步配置为,基于确定所述第一处理器电路已从所述第二处理器电路接收到高速缓存一致性信号,将时钟启用请求通信至所述时钟管理电路。
21.根据权利要求19所述的电子器件,其中所述第二处理器电路进一步配置为,基于确定所述第二处理器电路已将高速缓存一致性信号通信至所述第一处理器电路,将时钟启用请求通信至所述时钟管理电路。
22.根据权利要求21所述的电子器件,其中所述第一处理器电路进一步配置为,基于确定所述第一处理器电路已将高速缓存一致性信号提供给所述第二处理器电路,将时钟启用请求通信至所述时钟管理电路。
23.根据权利要求19所述的电子器件,其中所述第一处理器电路和所述第二处理器电路与不同的处理器电路类型相关联。
24.根据权利要求23所述的电子器件,其中所述第一处理器电路或所述第二处理器电路是图形处理单元。
CN201710984989.8A 2016-12-26 2017-10-20 电子器件及其操作方法 Pending CN108241428A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2016-0179164 2016-12-26
KR1020160179164A KR102576707B1 (ko) 2016-12-26 2016-12-26 전자 시스템 및 그 동작 방법

Publications (1)

Publication Number Publication Date
CN108241428A true CN108241428A (zh) 2018-07-03

Family

ID=59506144

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710984989.8A Pending CN108241428A (zh) 2016-12-26 2017-10-20 电子器件及其操作方法

Country Status (5)

Country Link
US (1) US10503471B2 (zh)
EP (1) EP3340011A1 (zh)
JP (1) JP7156781B2 (zh)
KR (1) KR102576707B1 (zh)
CN (1) CN108241428A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102552666B1 (ko) * 2018-11-12 2023-07-10 삼성전자주식회사 전자 장치 및 그것의 동작 방법
CN117882029A (zh) * 2021-07-19 2024-04-12 飞比特有限公司 用于基于硬件表决的时钟控制的系统和方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1495618A (zh) * 2002-09-20 2004-05-12 英特尔公司 芯片多处理器或多处理系统的高速缓存共享
CN101676831A (zh) * 2008-09-18 2010-03-24 恩益禧电子股份有限公司 时钟供给装置
US7802118B1 (en) * 2006-12-21 2010-09-21 Nvidia Corporation Functional block level clock-gating within a graphics processor
US20120102344A1 (en) * 2010-10-21 2012-04-26 Andrej Kocev Function based dynamic power control
US20120166861A1 (en) * 2010-12-28 2012-06-28 Kuo-Cheng Lu Method for adjusting clock frequency of a processing unit of a computer system and related device
US20140173311A1 (en) * 2012-12-17 2014-06-19 Samsung Electronics Co., Ltd. Methods and Systems for Operating Multi-Core Processors
CN104094191A (zh) * 2012-02-01 2014-10-08 德克萨斯仪器股份有限公司 实时系统中的动态功率管理
CN106200760A (zh) * 2015-05-26 2016-12-07 三星电子株式会社 时钟管理电路、芯片上系统、时钟管理的方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5511203A (en) * 1994-02-02 1996-04-23 Advanced Micro Devices Power management system distinguishing between primary and secondary system activity
JP3607209B2 (ja) * 2001-03-08 2005-01-05 松下電器産業株式会社 クロック制御方法及び当該クロック制御方法を用いた情報処理装置
US6877088B2 (en) * 2001-08-08 2005-04-05 Sun Microsystems, Inc. Methods and apparatus for controlling speculative execution of instructions based on a multiaccess memory condition
US7721118B1 (en) 2004-09-27 2010-05-18 Nvidia Corporation Optimizing power and performance for multi-processor graphics processing
US7330994B2 (en) * 2005-04-26 2008-02-12 Arm Limited Clock control of a multiple clock domain data processor
KR100719360B1 (ko) * 2005-11-03 2007-05-17 삼성전자주식회사 디지털 로직 프로세싱 회로, 그것을 포함하는 데이터 처리 장치, 그것을 포함한 시스템-온 칩, 그것을 포함한 시스템, 그리고 클록 신호 게이팅 방법
KR20070080493A (ko) * 2006-02-07 2007-08-10 삼성전자주식회사 하드웨어 폴링 처리기를 포함한 데이터 처리 시스템
US8132037B2 (en) * 2008-06-06 2012-03-06 Roche Diagnostics International Ag Apparatus and method for processing wirelessly communicated data and clock information within an electronic device
TW201001122A (en) * 2008-06-20 2010-01-01 Asustek Comp Inc Clock controlling apparatus for computer system
US8589629B2 (en) 2009-03-27 2013-11-19 Advanced Micro Devices, Inc. Method for way allocation and way locking in a cache
US9354944B2 (en) 2009-07-27 2016-05-31 Advanced Micro Devices, Inc. Mapping processing logic having data-parallel threads across processors
US8400458B2 (en) 2009-09-09 2013-03-19 Hewlett-Packard Development Company, L.P. Method and system for blocking data on a GPU
JP2011150653A (ja) * 2010-01-25 2011-08-04 Renesas Electronics Corp マルチプロセッサシステム
US9645866B2 (en) 2010-09-20 2017-05-09 Qualcomm Incorporated Inter-processor communication techniques in a multiple-processor computing platform
US8892924B2 (en) * 2011-05-31 2014-11-18 Intel Corporation Reducing power consumption of uncore circuitry of a processor
US9323315B2 (en) 2012-08-15 2016-04-26 Nvidia Corporation Method and system for automatic clock-gating of a clock grid at a clock source
WO2014094266A1 (en) * 2012-12-20 2014-06-26 Qualcomm Incorporated An improved clock structure for reducing power consumption on wireless mobile devices
JP6162329B2 (ja) * 2013-06-28 2017-07-12 インテル コーポレイション マルチコンポーネントプラットフォームにおけるアクティビティ管理のための技術およびシステム
US10060955B2 (en) * 2014-06-25 2018-08-28 Advanced Micro Devices, Inc. Calibrating power supply voltages using reference measurements from code loop executions
US20160077565A1 (en) * 2014-09-17 2016-03-17 Advanced Micro Devices, Inc. Frequency configuration of asynchronous timing domains under power constraints

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1495618A (zh) * 2002-09-20 2004-05-12 英特尔公司 芯片多处理器或多处理系统的高速缓存共享
US7802118B1 (en) * 2006-12-21 2010-09-21 Nvidia Corporation Functional block level clock-gating within a graphics processor
CN101676831A (zh) * 2008-09-18 2010-03-24 恩益禧电子股份有限公司 时钟供给装置
US20120102344A1 (en) * 2010-10-21 2012-04-26 Andrej Kocev Function based dynamic power control
US20120166861A1 (en) * 2010-12-28 2012-06-28 Kuo-Cheng Lu Method for adjusting clock frequency of a processing unit of a computer system and related device
CN104094191A (zh) * 2012-02-01 2014-10-08 德克萨斯仪器股份有限公司 实时系统中的动态功率管理
US20140173311A1 (en) * 2012-12-17 2014-06-19 Samsung Electronics Co., Ltd. Methods and Systems for Operating Multi-Core Processors
CN106200760A (zh) * 2015-05-26 2016-12-07 三星电子株式会社 时钟管理电路、芯片上系统、时钟管理的方法

Also Published As

Publication number Publication date
JP2018106672A (ja) 2018-07-05
US20180181372A1 (en) 2018-06-28
KR102576707B1 (ko) 2023-09-08
KR20180075162A (ko) 2018-07-04
EP3340011A1 (en) 2018-06-27
US10503471B2 (en) 2019-12-10
JP7156781B2 (ja) 2022-10-19

Similar Documents

Publication Publication Date Title
EP3796179A1 (en) System, apparatus and method for processing remote direct memory access operations with a device-attached memory
US10664421B1 (en) Reordering responses in a high performance on-chip network
US20180089117A1 (en) Reconfigurable fabric accessing external memory
CN109582611A (zh) 加速器结构
CN110647480A (zh) 数据处理方法、远程直接访存网卡和设备
CN103744644B (zh) 采用四核结构搭建的四核处理器系统及数据交换方法
CN111742305A (zh) 调度具有不统一等待时间的存储器请求
CN103348333B (zh) 用于分级高速缓存设计中的高速缓存之间的高效通信的方法和装置
CN109582605A (zh) 通过PCIe的一致性存储器设备
CN105988970B (zh) 共享存储数据的处理器和芯片
JP2021530813A (ja) 専用低レイテンシリンクを使用した複数のハードウェアアクセラレータのための統合されたアドレス空間
US20180181503A1 (en) Data flow computation using fifos
US8928677B2 (en) Low latency concurrent computation
CN103647807A (zh) 一种信息缓存方法、装置和通信设备
JP2005500621A (ja) デュアル・インライン・メモリモジュール・フォーマットにおいて一連のマルチアダプティブプロセッサを採用したクラスタ型コンピュータ用スイッチ/ネットワークアダプタポート
KR101056153B1 (ko) 배리어 동작들의 조건부 브로드캐스트를 위한 방법 및 장치
US9037669B2 (en) Remote processing and memory utilization
CN103999063B (zh) 处理器的存储器共享
JP2002222163A (ja) グローバルdmaアクセス用の結合サブシステムメモリバスを有するマルチコアdspデバイス
US8943449B1 (en) Method and apparatus of enabling direct memory access into a target system memory modeled in dual abstractions while ensuring coherency
US9141546B2 (en) System and method for managing transactions
EP4070204A1 (en) Data transfers between a memory and a distributed compute array
CN108241428A (zh) 电子器件及其操作方法
JP7470685B2 (ja) 集積回路中の算出ユニットをプログラムおよび制御すること
TW201303870A (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