CN111930504B - 处理器时钟频率的确定方法、装置及计算机可读存储介质 - Google Patents
处理器时钟频率的确定方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111930504B CN111930504B CN202010790344.2A CN202010790344A CN111930504B CN 111930504 B CN111930504 B CN 111930504B CN 202010790344 A CN202010790344 A CN 202010790344A CN 111930504 B CN111930504 B CN 111930504B
- Authority
- CN
- China
- Prior art keywords
- processor
- gate
- level circuit
- clock frequency
- value
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请公开了一种处理器时钟频率的确定方法、装置及计算机可读存储介质。其中,方法包括读取处理器的寄存器传输级代码,从寄存器传输级代码中确定不可综合的目标代码,将目标代码映射至预设工艺技术库中的门级电路;根据环境设置指令和约束设置指令配置门级电路的各工作环境参数、各预设细节参数和门级电路中低于预设电压阈值的分立器件在门级电路中的当前占比值,当前占比值基于芯片性能需求、处理器时钟频率与门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系进行确定。根据各工作环境参数、各预设细节参数和当前占比值优化后的门级电路确定处理器时钟频率,可简单、高效地提高了SoC处理器时钟频率,有效提升芯片性能。
Description
技术领域
本申请涉及芯片技术领域,特别是涉及一种处理器时钟频率的确定方法、装置及计算机可读存储介质。
背景技术
随着半导体工艺技术的不断发展,芯片的复杂度不断提高且应用领域不断拓展。在当前芯片产业中,SoC(System on a Chip,系统级芯片)逐渐成为一种主流趋势。相比于常规芯片,SoC具备明显优势,如集成度更高、使用灵活性更大、可靠性更好等。在本质上,SoC属于由处理器、内存、接口等构成的片上系统。其中,处理器是整个SoC核心,负责SoC的程序执行以及数据处理。ARM Cortex系列处理器为目前主流的SoC处理器。由于处理器的核心地位,SoC的性能依赖于处理器的性能,而处理器时钟频率是处理器性能的重要指征。时钟频率越大,意味着处理器的性能越好。因此,为了保证SoC性能,处理器应该具有足够的时钟频率。而在相关技术中,当处理器的时钟频率实际值不能保证SoC具有高性能,也无法通过提升处理器的时钟频率值来满足芯片的性能需求。
鉴于此,如何基于芯片性能需求改善处理器的时钟频率,是所属领域技术人员需要解决的技术问题。
发明内容
本申请提供了一种处理器时钟频率的确定方法、装置及计算机可读存储介质,可简单、高效地提高SoC处理器时钟频率,从而有效地提升芯片性能。
为解决上述技术问题,本发明实施例提供以下技术方案:
本发明实施例一方面提供了一种处理器时钟频率的确定方法,包括:
读取处理器的寄存器传输级代码,并从所述寄存器传输级代码中确定不可综合的目标代码;
将所述目标代码映射至预设工艺技术库中的门级电路;
根据环境设置指令配置所述门级电路的各个工作环境参数;
根据约束设置指令配置所述门级电路的各预设细节参数和所述门级电路中低于预设电压阈值的分立器件在所述门级电路中的当前占比值,以用于基于各工作环境参数、各预设细节参数和所述当前占比值优化后的所述门级电路确定所述处理器的时钟频率;
其中,所述当前占比值基于所述处理器所属芯片的性能需求、所述处理器时钟频率与所述门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系进行确定。
可选的,所述根据约束设置指令配置所述门级电路的各预设细节参数和所述门级电路中低于预设电压阈值的分立器件在所述门级电路中的当前占比值之后,还包括:
输出不低于1%且不高于60%的多个占比值,作为候选占比值组;
根据占比值选定指令从所述候选占比值组选取相匹配的占比值,作为所述当前占比值。
可选的,所述根据环境设置指令配置所述门级电路的各个工作环境参数包括:
根据所述环境设置指令配置所述门级电路的目标工作温度、目标工作电压、工艺、输入端口的驱动单元、输出端口的驱动单元、转换时间和线性负载模型。
可选的,所述根据约束设置指令配置所述门级电路的各预设细节参数包括:
根据所述约束设置指令配置所述门级电路的电容值、扇入值、扇出值、时序和面积。
可选的,所述根据约束设置指令配置所述门级电路中低于预设电压阈值的分立器件在所述门级电路中的当前占比值包括:
所述处理器时钟频率随着所述门级电路中低于预设电压阈值的分立器件的占比值呈抛物线的数值关系,所述抛物线包括第一端点、第二端点和顶点;
若所述处理器所属芯片的性能需求为高性能需求,将所述当前占比值设置为所述顶点对应的占比值;
若所述处理器所属芯片的性能需求为高性能且功率不高于预设功率阈值的需求,将所述当前占比值设置为大于所述第一端点对应占比值但小于所述顶点对应占比值,或大于所述顶点对应占比值但小于所述第二端点对应占比值。
本发明实施例另一方面提供了一种处理器时钟频率的确定装置,包括:
代码读取模块,用于读取处理器的寄存器传输级代码,并从所述寄存器传输级代码中确定不可综合的目标代码;
目标库映射模块,用于将所述目标代码映射至预设工艺技术库中的门级电路;
环境搭建模块,用于根据环境设置指令配置所述门级电路的各个工作环境参数;
约束设置模块,用于根据约束设置指令配置所述门级电路的各预设细节参数和所述门级电路中低于预设电压阈值的分立器件在所述门级电路中的当前占比值;所述当前占比值基于所述处理器所属芯片的性能需求、所述处理器时钟频率与所述门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系进行确定。
综合优化模块,用于基于各工作环境参数、各预设细节参数和所述当前占比值对所述门级电路进行综合优化;
时钟频率确定模块,用于根据所述门级电路的综合优化结果确定所述处理器的时钟频率。
可选的,所述约束设置模块包括低阈值器件设置子模块,所述低阈值器件设置子模块包括:
输出单元,用于输出不低于1%且不高于60%的多个占比值,作为候选占比值组;
占比值确定单元,用于根据占比值选定指令从所述候选占比值组选取相匹配的占比值,作为所述当前占比值。
可选的,所述约束设置模块具体用于:
所述处理器时钟频率随着所述门级电路中低于预设电压阈值的分立器件的占比值呈抛物线的数值关系,所述抛物线包括第一端点、第二端点和顶点;
若所述处理器所属芯片的性能需求为高性能需求,将所述当前占比值设置为所述顶点对应的占比值;
若所述处理器所属芯片的性能需求为高性能且功率不高于预设功率阈值的需求,将所述当前占比值设置为大于所述第一端点对应占比值但小于所述顶点对应占比值,或大于所述顶点对应占比值但小于所述第二端点对应占比值。
本发明实施例还提供了一种处理器时钟频率的确定装置,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如前任一项所述处理器时钟频率的确定方法的步骤。
本发明实施例最后还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有处理器时钟频率的确定程序,所述处理器时钟频率的确定程序被处理器执行时实现如前任一项所述处理器时钟频率的确定方法的步骤。
本申请提供的技术方案的优点在于,通过设计代码读取、指定目标库、搭建综合环境、约束设置、综合优化和输出综合优化结果最终确定为保证SoC性能,其处理器应该具有的时钟频率。在处理器时钟频率与门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系确定之后,基于SoC性能需求通过调节门级电路中低阈值器件也即低于预设电压阈值的分立器件在整个门级电路的比例值,在芯片的逻辑综合过程中提高了其处理器的时钟频率,从而有效提升SoC性能,整个过程操作简单,而且易于实现。
此外,本发明实施例还针对处理器时钟频率的确定方法提供了相应的实现装置及计算机可读存储介质,进一步使得所述方法更具有实用性,所述装置及计算机可读存储介质具有相应的优点。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
为了更清楚的说明本发明实施例或相关技术的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种处理器时钟频率的确定方法的流程示意图;
图2为本发明实施例提供的处理器时钟频率与低阈值器件比例所呈抛物线关系示意图;
图3为本发明实施例提供的低阈值器件比例的合理区间示意图;
图4为本发明实施例提供的面向SoC不同需求时能够得到更好效果的低阈值器件比例示意图;
图5为本发明实施例提供的一个示意性例子的不同低阈值器件比例下SoC处理器时钟频率的示意图;
图6为本发明实施例提供的另一个示意性例子的不同低阈值器件比例下SoC处理器时钟频率的示意图;
图7为本发明实施例提供的再一个示意性例子的不同低阈值器件比例下SoC处理器时钟频率的示意图;
图8为本发明实施例提供的处理器时钟频率的确定装置的一种具体实施方式结构图;
图9为本发明实施例提供的处理器时钟频率的确定装置的另一种具体实施方式结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
在介绍了本发明实施例的技术方案后,下面详细的说明本申请的各种非限制性实施方式。
首先参见图1,图1为本发明实施例提供的一种处理器时钟频率的确定方法的流程示意图,本发明实施例可包括以下内容:
S101:读取处理器的寄存器传输级代码,并从寄存器传输级代码中确定不可综合的目标代码。
在本步骤中,处理器是指待提升性能芯片中处理器,如SoC的处理器。可利用逻辑综合工具读取SoC放入处理器放入设计代码,此处的设计代码是指RTL(Register TransferLevel,寄存器传输级)代码,RTL代码用于描述数字电路操作的抽象级。在RTL级,集成电路是由一组寄存器以及寄存器之间的逻辑操作构成。然后对RTL代码进行简要分析,通过简要分析,可以找到RTL代码中不可综合的若干部分,也即本步骤中的目标代码。
S102:将目标代码映射至预设工艺技术库中的门级电路。
在S101步骤读取设计代码完成后,需要指定SoC处理器的综合目标库,综合目标库为指由半导体制造厂商提供的工艺技术库。综合目标库为逻辑综合策略的基础,综合目标库例如可为中芯国际40nm工艺技术库。可以理解的是,在整个芯片产业链中,芯片研发生产流程包括前端设计、后端设计、芯片制造、封装测试等,在这些流程中,前端设计在整个流程中负责实现芯片功能,是整个生产研发流程的关键一环。前端设计包括逻辑设计、功能验证、逻辑综合三个步骤。其中,逻辑综合是指将RTL代码映射至半导体制造厂商工艺技术库中的门级电路,进而形成门级网表的过程。只有得到门级网表,芯片后端设计才能开展。显然,逻辑综合在芯片设计中发挥着承上启下作用。本申请在前端设计的逻辑综合阶段改善处理器的时钟频率,SoC处理器的逻辑综合就是将处理器RTL代码映射至如中芯国际40nm工艺技术库中门级电路并实现优化的过程。其中,门级电路用以实现基本逻辑运算和复合逻辑运算的单元电路,在逻辑功能上有与门、或门、非门、与非门、或非门、与或非门、异或门等几种,门级电路中包含多个分立器件。
S103:根据环境设置指令配置门级电路的各个工作环境参数。
S104:根据约束设置指令配置门级电路的各预设细节参数和门级电路中低于预设电压阈值的分立器件在门级电路中的当前占比值,以用于基于各工作环境参数、各预设细节参数和当前占比值优化后的门级电路确定处理器的时钟频率。
在本申请中,随着SoC处理器综合目标库的指定,可继续为映射RTL代码的门级电路进行综合环境搭建以及约束设置,SoC处理器的综合优化依据所搭建工作环境、所设置的约束条件来实现。也就是说,SoC处理器逻辑综合可以视为由工作环境、约束条件所驱动。综合环境搭建是指针对SoC处理器所映射的门级电路,设置其所处的工作环境,工作环境参数例如可为工作温度、工作电压、工艺,输入/输出端口的驱动单元、转换时间、线性负载模型等。相应的,在S103步骤中,可根据环境设置指令配置门级电路的目标工作温度、目标工作电压、工艺、输入端口的驱动单元、输出端口的驱动单元、转换时间和线性负载模型,环境设置指令中携带待配置工作环境的参数及对应参数值,系统在接收到指令中,解析指令并对相应的工作参数进行赋值。约束设置指令用于对SoC处理器所映射门级电路的设计细节进行目标设定,进而实现对门级电路设计细节的限制。对于门级电路,其设计细节通常包括四个方面,分别为门级电路的电容、扇入/扇出、时序、面积,相应的,根据约束设置指令可配置门级电路的电容值、扇入值、扇出值、时序和面积。约束设置指令中携带待配置的预设细节参数及对应参数值,系统在接收到指令中,解析指令并对相应的预设细节参数进行赋值。在此基础上,本申请在约束设置中还对低于预设电压阈值的分立器件即低阈值器件的个数进行配置,以对所映射门级电路的器件组成加以限制。为了便于描述,在附图及后续表述中将低于预设电压阈值的分立器件称为低阈值器件,随着低阈值器件比例增加,处理器的时钟频率先增加、后减少。处理器时钟频率与低阈值器件比例可呈现抛物线关系,如附图2所示。基于抛物线基本知识可知,抛物线上半部分对应的处理器时钟频率相比不作任何处理时的处理器时钟频率值要大,但下半部分对应的处理器时钟频率相比不作任何处理时的处理器时钟频率要低,也就是说,要想提高处理器时钟频率的值,那么横坐标对应的低阈值器件占比值要限制在合理区间,合理区间也即使得处理器时钟频率相比不作任何处理时的时钟频率值得到提升的取值区间。至于低阈值器件在合理区间中取哪个值或哪些值,可根据芯片的性能需求进行确定,也就是说,当前占比值基于处理器所属芯片的性能需求、处理器时钟频率与门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系共同确定。如附图3所示,低阈值器件比例限定在合理区间如低阈值器件占比为1%至60%使处理器时钟频率位于抛物线上半部分进而保证处理器时钟频率得到有效提高。基于综合环境搭建以及约束设置,SoC处理器所映射门级电路进行综合优化,进而得到综合结果。最终,由得到综合结果可知处理器时钟频率。
在本发明实施例提供的技术方案中,通过设计代码读取、指定目标库、搭建综合环境、约束设置、综合优化和输出综合优化结果最终确定为保证SoC性能,其处理器应该具有的时钟频率。在处理器时钟频率与门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系确定之后,基于SoC性能需求通过调节门级电路中低阈值器件也即低于预设电压阈值的分立器件在整个门级电路的比例值,在芯片的逻辑综合过程中提高了其处理器的时钟频率,从而有效提升SoC性能,整个过程操作简单,而且易于实现。
需要说明的是,本申请中各步骤之间没有严格的先后执行顺序,只要符合逻辑上的顺序,则这些步骤可以同时执行,也可按照某种预设顺序执行,图1只是一种示意方式,并不代表只能是这样的执行顺序。
作为一种可选的实施方式,为了提高系统灵活性,在S104之后,还包括:
输出不低于1%且不高于60%的多个占比值,作为候选占比值组;
根据占比值选定指令从候选占比值组选取相匹配的占比值,作为当前占比值。
在本实施例中,约束设置指令中可并不携带低阈值器件的占比值,但是要将处理器所属芯片的性能需求进行下发,处理器时钟频率与低阈值器件比例的数值关系可随约束设置指令进行下发也可预先存储至系统本地,在接收到约束设置指令后调用本地存储的处理器时钟频率与低阈值器件比例的数值关系并结合性能需求来确定低阈值器件比例值,然后输出可以提高处理器时钟频率的低阈值器件比例值,用户可基于门级电路的实际情况和应用场景从中选定一个占比值,系统在接收到用户的占比值指定指令后从候选占比值组中选定该值,以用于后续对门级电路的综合优化过程,从而提高用户使用灵活性,应用性更强。
可以理解的是,有些芯片只是单独的追求高性能,还有些芯片在追求高性能的同时还需要规避功率过高所致潜在风险,作为另外一种可选的实施方式,在上述实施例有效改善SoC处理器时钟频率,且易于实现的基础上,门级电路中低于预设电压阈值的分立器件在门级电路中的当前占比值的确定过程还可包括:
处理器时钟频率随着门级电路中低于预设电压阈值的分立器件的占比值的数值关系呈抛物线,抛物线包括第一端点、第二端点和顶点;若处理器所属芯片的性能需求为高性能需求,将当前占比值设置为顶点对应的占比值;若处理器所属芯片的性能需求为高性能且功率不高于预设功率阈值的需求,将当前占比值设置为大于第一端点对应占比值但小于顶点对应占比值,或大于顶点对应占比值但小于第二端点对应占比值。
在本实施例中,由于时钟频率与低阈值器件比例的抛物线关系,若SoC单纯追求高性能,低阈值器件比例位于抛物线顶点附近如图4所得效果更好。若SoC在确保性能的同时还需规避功率过高所致潜在风险,则在本申请的逻辑综合过程中,低阈值器件比例值可位于合理区间的端点附近,为了使本领域技术人员更加清楚本申请技术方案,下述以多个示意性实施例描述本实施例的技术方案,可包括下述内容:
在第一个示意性实施例中,本实施例中SoC的处理器型号为Cortex A7,针对Cortex A7处理器,执行本申请技术方案。其中,指定中芯国际40nm工艺技术库为综合目标库。在约束设置中,分别设定低阈值器件比例为1%、25%、44%、56%、60%、65%。不同低阈值器件比例下SoC处理器时钟频率,如附图5所示。由附图5可知,SoC处理器时钟频率与低阈值器件比例呈现抛物线关系。低阈值器件比例为1%、25%、44%、56%、60%、65%时,Cortex A7处理器时钟频率分别为500MHz、565MHz、708MHz、623MHz、494MHz、411MHz。不采用本申请技术方案的情况下,Cortex A7处理器时钟频率为452MHz,分别低于1%低阈值器件所对应时钟频率(500MHz)、60%低阈值器件所对应时钟频率494MHz,但高于65%低阈值器件所对应时钟频率411MHz。因此,将低阈值器件占比限定在合理区间即1%至60%,可以保证Cortex A7处理器时钟频率得到有效提高。考虑到本实施例中SoC单纯追求高性能,本实施例在执行本申请技术方案的逻辑综合过程中,将低阈值器件比例设定为44%也即抛物线顶点附近,所得效果更好。
在第二个示意性实施例中,本实施例中SoC的处理器型号为Cortex A9。针对Cortex A9处理器,执行本申请技术方案。其中,指定中芯国际40nm工艺技术库为综合目标库。在约束设置中,分别设定低阈值器件比例为1%、10%、30%、50%、60%、65%。不同低阈值器件比例下SoC处理器时钟频率,如附图6所示。由附图6可知,SoC处理器时钟频率与低阈值器件比例呈现抛物线关系。低阈值器件比例为1%、10%、30%、50%、60%、65%时,Cortex A9处理器时钟频率分别为549MHz、574MHz、625MHz、762MHz、568MHz、413MHz。不采用本申请技术方案的情况下,Cortex A9处理器时钟频率为480MHz,分别低于1%低阈值器件所对应时钟频率549MHz、60%低阈值器件所对应时钟频率568MHz,但高于65%低阈值器件所对应时钟频率413MHz。因此,将低阈值器件占比限定在合理区间即1%至60%,可以保证Cortex A9处理器时钟频率得到有效提高。考虑到本实施例中SoC在确保性能的同时,需规避功率过高所致潜在风险,本实施例在执行逻辑综合过程中,可将低阈值器件比例设定为1%或10%或60%,也即合理区间的两个端点附近,所得效果更好。
在第三个实施例中,本实施例中SoC的处理器型号为Cortex M7。针对Cortex M7处理器,执行本申请技术方案。其中,指定中芯国际40nm工艺技术库为综合目标库。在约束设置中,分别设定低阈值器件比例为1%、15%、27%、39%、49%、60%、65%。不同低阈值器件比例下SoC处理器时钟频率,如附图7所示。由附图7可知,SoC处理器时钟频率与低阈值器件比例呈现抛物线关系。低阈值器件比例为1%、15%、27%、39%、49%、60%、65%时,CortexM7处理器时钟频率分别为402MHz、451MHz、494MHz、589MHz、513MHz、380MHz、313MHz。不采用本申请技术方案情况下,Cortex M7处理器时钟频率为336MHz,分别低于1%低阈值器件所对应时钟频率402MHz、60%低阈值器件所对应时钟频率380MHz,但高于65%低阈值器件所对应时钟频率313MHz。因此,可将低阈值器件占比限定在合理区间即1%至60%,可以保证Cortex M7处理器时钟频率得到有效提高。考虑到本实施例中SoC单纯追求高性能,本实施例执行的逻辑综合策略中,将低阈值器件比例设定为39%,也即抛物线顶点附近,所得效果更好。
由上可知,本申请在约束设置过程中将低阈值器件比例限定在合理区间,即1%至60%,进而保证处理器时钟频率得到有效提高。若SoC单纯追求高性能,则低阈值器件比例位于抛物线顶点附近所得效果更好。若SoC在确保性能的同时,需规避功率过高所致潜在风险,则低阈值器件比例位于合理区间端点附近所得效果更好。
本发明实施例还针对处理器时钟频率的确定方法提供了相应的装置,进一步使得所述方法更具有实用性。其中,装置可从功能模块的角度和硬件的角度分别说明。下面对本发明实施例提供的处理器时钟频率的确定装置进行介绍,下文描述的处理器时钟频率的确定装置与上文描述的处理器时钟频率的确定方法可相互对应参照。
基于功能模块的角度,参见图8,图8为本发明实施例提供的处理器时钟频率的确定装置在一种具体实施方式下的结构图,该装置可包括:
代码读取模块801,用于读取处理器的寄存器传输级代码,并从寄存器传输级代码中确定不可综合的目标代码。
目标库映射模块802,用于将目标代码映射至预设工艺技术库中的门级电路。
环境搭建模块803,用于根据环境设置指令配置门级电路的各个工作环境参数。
约束设置模块804,用于根据约束设置指令配置门级电路的各预设细节参数和门级电路中低于预设电压阈值的分立器件在门级电路中的当前占比值;当前占比值基于处理器所属芯片的性能需求、处理器时钟频率与门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系进行确定。
综合优化模块805,用于基于各工作环境参数、各预设细节参数和当前占比值对门级电路进行综合优化;
时钟频率确定模块806,用于根据门级电路的综合优化结果确定处理器的时钟频率。
可选的,在本实施例的一些实施方式中,所述约束设置模块804可包括低阈值器件设置子模块,低阈值器件设置子模块可包括:
输出单元,用于输出不低于1%且不高于60%的多个占比值,作为候选占比值组;
占比值确定单元,用于根据占比值选定指令从候选占比值组选取相匹配的占比值,作为当前占比值。
在本发明实施例的其他一些实施方式中,所述约束设置模块804还可具体用于:
处理器时钟频率随着门级电路中低于预设电压阈值的分立器件的占比值呈抛物线的数值关系,抛物线包括第一端点、第二端点和顶点;
若处理器所属芯片的性能需求为高性能需求,将当前占比值设置为顶点对应的占比值;
若处理器所属芯片的性能需求为高性能且功率不高于预设功率阈值的需求,将当前占比值设置为大于第一端点对应占比值但小于顶点对应占比值,或大于顶点对应占比值但小于第二端点对应占比值。
在本发明实施例的其他一些实施方式中,所述约束设置模块804还可为根据约束设置指令配置门级电路的电容值、扇入值、扇出值、时序和面积的模块。
可选的,在本实施例的另一些实施方式中,所述环境搭建模块803还可为根据环境设置指令配置门级电路的目标工作温度、目标工作电压、工艺、输入端口的驱动单元、输出端口的驱动单元、转换时间和线性负载模型的模块。
本发明实施例所述处理器时钟频率的确定装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
由上可知,本发明实施例可简单、高效地提高SoC处理器时钟频率,从而有效地提升芯片性能。
上文中提到的处理器时钟频率的确定装置是从功能模块的角度描述,进一步的,本申请还提供一种处理器时钟频率的确定装置,是从硬件角度描述。图9为本申请实施例提供的另一种处理器时钟频率的确定装置的结构图。如图9所示,该装置包括存储器90,用于存储计算机程序;
处理器91,用于执行计算机程序时实现如上述实施例提到的处理器时钟频率的确定方法的步骤。
其中,处理器91可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器91可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器91也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器91可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器91还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器90可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器90还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器90至少用于存储以下计算机程序901,其中,该计算机程序被处理器91加载并执行之后,能够实现前述任一实施例公开的处理器时钟频率的确定方法的相关步骤。另外,存储器90所存储的资源还可以包括操作系统902和数据903等,存储方式可以是短暂存储或者永久存储。其中,操作系统902可以包括Windows、Unix、Linux等。数据903可以包括但不限于处理器时钟频率的确定结果对应的数据等。
在一些实施例中,处理器时钟频率的确定装置还可包括有显示屏92、输入输出接口93、通信接口94、电源95以及通信总线96。
本领域技术人员可以理解,图9中示出的结构并不构成对处理器时钟频率的确定装置的限定,可以包括比图示更多或更少的组件,例如还可包括传感器97。
本发明实施例所述处理器时钟频率的确定装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
由上可知,本发明实施例可简单、高效地提高SoC处理器时钟频率,从而有效地提升芯片性能。
可以理解的是,如果上述实施例中的处理器时钟频率的确定方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、磁碟或者光盘等各种可以存储程序代码的介质。
基于此,本发明实施例还提供了一种计算机可读存储介质,存储有处理器时钟频率的确定程序,所述处理器时钟频率的确定程序被处理器执行时如上任意一实施例所述处理器时钟频率的确定方法的步骤。
本发明实施例所述计算机可读存储介质的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
由上可知,本发明实施例可简单、高效地提高SoC处理器时钟频率,从而有效地提升芯片性能。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上对本申请所提供的一种处理器时钟频率的确定方法、装置及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种处理器时钟频率的确定方法,其特征在于,包括:
读取处理器的寄存器传输级代码,并从所述寄存器传输级代码中确定不可综合的目标代码;
将所述目标代码映射至预设工艺技术库中的门级电路;
根据环境设置指令配置所述门级电路的各个工作环境参数;
根据约束设置指令配置所述门级电路的各预设细节参数和所述门级电路中低于预设电压阈值的分立器件在所述门级电路中的当前占比值,以用于基于各工作环境参数、各预设细节参数和所述当前占比值优化后的所述门级电路确定所述处理器的时钟频率;
其中,所述当前占比值基于所述处理器所属芯片的性能需求、所述处理器时钟频率与所述门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系进行确定。
2.根据权利要求1所述的处理器时钟频率的确定方法,其特征在于,所述根据约束设置指令配置所述门级电路的各预设细节参数和所述门级电路中低于预设电压阈值的分立器件在所述门级电路中的当前占比值之后,还包括:
输出不低于1%且不高于60%的多个占比值,作为候选占比值组;
根据占比值选定指令从所述候选占比值组选取相匹配的占比值,作为所述当前占比值。
3.根据权利要求2所述的处理器时钟频率的确定方法,其特征在于,所述根据环境设置指令配置所述门级电路的各个工作环境参数包括:
根据所述环境设置指令配置所述门级电路的目标工作温度、目标工作电压、工艺、输入端口的驱动单元、输出端口的驱动单元、转换时间和线性负载模型。
4.根据权利要求2所述的处理器时钟频率的确定方法,其特征在于,所述根据约束设置指令配置所述门级电路的各预设细节参数包括:
根据所述约束设置指令配置所述门级电路的电容值、扇入值、扇出值、时序和面积。
5.根据权利要求1至4任意一项所述的处理器时钟频率的确定方法,其特征在于,所述根据约束设置指令配置所述门级电路中低于预设电压阈值的分立器件在所述门级电路中的当前占比值包括:
所述处理器时钟频率随着所述门级电路中低于预设电压阈值的分立器件的占比值呈抛物线的数值关系,所述抛物线包括第一端点、第二端点和顶点;
若所述处理器所属芯片的性能需求为高性能需求,将所述当前占比值设置为所述顶点对应的占比值;
若所述处理器所属芯片的性能需求为高性能且功率不高于预设功率阈值的需求,将所述当前占比值设置为大于所述第一端点对应占比值但小于所述顶点对应占比值,或大于所述顶点对应占比值但小于所述第二端点对应占比值。
6.一种处理器时钟频率的确定装置,其特征在于,包括:
代码读取模块,用于读取处理器的寄存器传输级代码,并从所述寄存器传输级代码中确定不可综合的目标代码;
目标库映射模块,用于将所述目标代码映射至预设工艺技术库中的门级电路;
环境搭建模块,用于根据环境设置指令配置所述门级电路的各个工作环境参数;
约束设置模块,用于根据约束设置指令配置所述门级电路的各预设细节参数和所述门级电路中低于预设电压阈值的分立器件在所述门级电路中的当前占比值;所述当前占比值基于所述处理器所属芯片的性能需求、所述处理器时钟频率与所述门级电路中低于预设电压阈值的分立器件的占比值之间的数值关系进行确定;
综合优化模块,用于基于各工作环境参数、各预设细节参数和所述当前占比值对所述门级电路进行综合优化;
时钟频率确定模块,用于根据所述门级电路的综合优化结果确定所述处理器的时钟频率。
7.根据权利要求6所述的处理器时钟频率的确定装置,其特征在于,所述约束设置模块包括低阈值器件设置子模块,所述低阈值器件设置子模块包括:
输出单元,用于输出不低于1%且不高于60%的多个占比值,作为候选占比值组;
占比值确定单元,用于根据占比值选定指令从所述候选占比值组选取相匹配的占比值,作为所述当前占比值。
8.根据权利要求6或7所述的处理器时钟频率的确定装置,其特征在于,所述约束设置模块具体用于:
所述处理器时钟频率随着所述门级电路中低于预设电压阈值的分立器件的占比值呈抛物线的数值关系,所述抛物线包括第一端点、第二端点和顶点;
若所述处理器所属芯片的性能需求为高性能需求,将所述当前占比值设置为所述顶点对应的占比值;
若所述处理器所属芯片的性能需求为高性能且功率不高于预设功率阈值的需求,将所述当前占比值设置为大于所述第一端点对应占比值但小于所述顶点对应占比值,或大于所述顶点对应占比值但小于所述第二端点对应占比值。
9.一种处理器时钟频率的确定装置,其特征在于,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至5任一项所述处理器时钟频率的确定方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有处理器时钟频率的确定程序,所述处理器时钟频率的确定程序被处理器执行时实现如权利要求1至5任一项所述处理器时钟频率的确定方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010790344.2A CN111930504B (zh) | 2020-08-07 | 2020-08-07 | 处理器时钟频率的确定方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010790344.2A CN111930504B (zh) | 2020-08-07 | 2020-08-07 | 处理器时钟频率的确定方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111930504A CN111930504A (zh) | 2020-11-13 |
CN111930504B true CN111930504B (zh) | 2022-07-08 |
Family
ID=73307053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010790344.2A Active CN111930504B (zh) | 2020-08-07 | 2020-08-07 | 处理器时钟频率的确定方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111930504B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113359935B (zh) * | 2021-06-10 | 2022-09-09 | 海光信息技术股份有限公司 | Soc电源域的电压调节方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866291A (zh) * | 2012-08-27 | 2013-01-09 | 中国科学院微电子研究所 | 基于硬件平台的门级功耗分析装置及方法 |
CN103412990A (zh) * | 2013-08-05 | 2013-11-27 | 北京航空航天大学 | 一种多层次协同低功耗设计方法 |
CN110134215A (zh) * | 2019-05-24 | 2019-08-16 | 广东中兴新支点技术有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8566768B1 (en) * | 2012-04-06 | 2013-10-22 | International Business Machines Corporation | Best clock frequency search for FPGA-based design |
US10409319B2 (en) * | 2017-04-17 | 2019-09-10 | Intel Corporation | System, apparatus and method for providing a local clock signal for a memory array |
-
2020
- 2020-08-07 CN CN202010790344.2A patent/CN111930504B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866291A (zh) * | 2012-08-27 | 2013-01-09 | 中国科学院微电子研究所 | 基于硬件平台的门级功耗分析装置及方法 |
CN103412990A (zh) * | 2013-08-05 | 2013-11-27 | 北京航空航天大学 | 一种多层次协同低功耗设计方法 |
CN110134215A (zh) * | 2019-05-24 | 2019-08-16 | 广东中兴新支点技术有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
Non-Patent Citations (4)
Title |
---|
Design of a Low Power Processor for Embedded System Applications;K. Pinyotrakool and B. Supmonchai;《2020 8th International Electrical Engineering Congress》;20200427;第1-4页 * |
Multivariable voltage and frequency control for DVFS management;W. Lombardi et al.;《2014 IEEE Conference on Control Applications》;20141211;第2028-2033页 * |
低功耗数字实时时钟的设计与实现;刘驰;《中国优秀硕士学位论文全文数据库-信息科技辑》;20200215;第2020年卷(第2期);全文 * |
基于IP包处理的多线程流水线处理器ASIC设计与实现;巩洪湖;《中国优秀硕士学位论文全文数据库-信息科技辑》;20130315;第2013年卷(第3期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111930504A (zh) | 2020-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102160054B (zh) | 用于设计使用自适应电压和调节优化的集成电路的系统和方法 | |
US8051397B2 (en) | Method and system for conducting design explorations of an integrated circuit | |
CN109804385A (zh) | 可编程集成电路上的二值神经网络 | |
CN107784136B (zh) | 一种标准单元库的创建方法及系统 | |
US7269815B2 (en) | Modifying a design to reveal the data flow of the design in order to create a more favorable input for block placement | |
CN112270148A (zh) | 一种门级网表生成方法及相关装置 | |
US6993738B2 (en) | Method for allocating spare cells in auto-place-route blocks | |
JPH1173302A (ja) | グリッチ分析と低減に重点をおいたレジスタトランスファレベルの電力消費最適化回路、方法、及び記録媒体 | |
CN111027266A (zh) | 一种多个fpga的设计分割的方法、系统、存储介质及终端 | |
Chen et al. | Routability-constrained multi-bit flip-flop construction for clock power reduction | |
CN111930504B (zh) | 处理器时钟频率的确定方法、装置及计算机可读存储介质 | |
US9110689B2 (en) | Automatic pipeline stage insertion | |
CN113408224A (zh) | 利用网表局部再综合实现布局合法化的fpga布局方法 | |
US20040150427A1 (en) | Clock gating for synchronous circuits | |
US8136073B1 (en) | Circuit design fitting | |
US10606972B2 (en) | Method, design program, and design apparatus of a high level synthesis process of a circuit | |
US7194708B2 (en) | Generation of clock gating function for synchronous circuit | |
US10963620B1 (en) | Buffer insertion technique to consider edge spacing and stack via design rules | |
US11520959B1 (en) | Pruning of buffering candidates for improved efficiency of evaluation | |
US7131090B2 (en) | Clocked gating based on measured performance | |
US20040153977A1 (en) | Clock gating for hierarchical structure | |
US9032356B2 (en) | Programmable clock spreading | |
US20020116695A1 (en) | Modeling blocks of an integrated circuit for timing verification | |
US20040230923A1 (en) | Generation of improved input function for clocked element in synchronous circuit | |
US8219957B1 (en) | Global placement legalization for complex packing rules |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |