掌桥专利:专业的专利平台
掌桥专利
首页

一种DVFS控制策略仿真方法、装置、设备及存储介质

文献发布时间:2023-06-19 11:11:32


一种DVFS控制策略仿真方法、装置、设备及存储介质

技术领域

本发明实施例涉及芯片设计技术领域,尤其涉及一种DVFS控制策略仿真方法、装置、设备及存储介质。

背景技术

随着电子技术的发展,芯片的集成性以及复杂性变得越来越高,增加了芯片设计的复杂性以及周期。借助仿真环境评估芯片性能,高效设计开发芯片,成为一种重要手段。

针对目前芯片的集成度以及工作频率的提高,芯片高能耗日益突出的问题。现有技术中,通过动态电压频率调节(Dynamic Voltage Frequency Scaling,DVFS)控制策略在硬件芯片中的运行,实现芯片运行时频率以及电压的调节。在保证性能的前提下,降低芯片的工作频率以及电压,达到节能目的。

但是,不同的DVFS控制策略对芯片具有不同的效果,在芯片运行中确定优选DVFS控制策略是复杂的,需要芯片多次运行,存在硬件损耗以及成本消耗。

发明内容

本发明实施例提供了一种DVFS控制策略仿真方法、装置、设备及存储介质,可以在芯片仿真过程中实现对多种DVFS控制策略的仿真,达到芯片的软件与硬件的并行化开发,提高芯片开发效率并缩短研发周期。

第一方面,本发明实施例提供了一种DVFS控制策略仿真方法,由仿真平台执行,该方法包括:

在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接;

获取所述芯片功能仿真系统的当前状态信息,并将所述当前状态信息传输至所述DVFS功能仿真系统,以使所述DVFS功能仿真系统执行至少两种DVFS控制策略;

其中,各所述DVFS控制策略根据芯片功能仿真系统的当前状态信息,确定电压及频率调节控制指令;

获取所述DVFS功能仿真系统针对所述当前状态信息确定的电压及频率调节控制指令,并传输至所述芯片功能仿真系统,以使所述芯片功能仿真系统确定下一状态信息。

第二方面,本发明实施例还提供了一种DVFS控制策略仿真方法,由DVFS功能仿真系统执行,该方法包括:

在芯片仿真过程中,通过仿真平台与芯片功能仿真系统建立连接;

获取所述仿真平台转发的所述芯片功能仿真系统的当前状态信息,并执行至少两种DVFS控制策略,确定与所述当前状态信息对应的电压及频率调节控制指令;

将所述电压及频率调节控制指令经由所述仿真平台传输至所述芯片功能仿真系统,以使所述芯片功能仿真系统确定下一状态信息。

第三方面,本发明实施例还提供了一种DVFS控制策略仿真方法,由芯片功能仿真系统执行,该方法包括:

在芯片仿真过程中,通过仿真平台与DVFS功能仿真系统建立连接;

将当前状态信息经由所述仿真平台传输至所述DVFS功能仿真系统,并针对所述当前状态信息,获取所述DVFS功能仿真系统执行至少两种DVFS控制策略确定的电压及频率调节控制指令;

根据所述电压及频率调节控制指令和所述当前状态信息,确定下一状态信息。

第四方面,本发明实施例还提供了一种DVFS控制策略仿真装置,由仿真平台执行,该装置包括:

连接建立模块,用于在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接;

状态信息获取模块,用于获取所述芯片功能仿真系统的当前状态信息,并将所述当前状态信息传输至所述DVFS功能仿真系统,以使所述DVFS功能仿真系统执行至少两种DVFS控制策略;

其中,各所述DVFS控制策略根据芯片功能仿真系统的当前状态信息,确定电压及频率调节控制指令;

控制指令获取模块,用于获取所述DVFS功能仿真系统针对所述当前状态信息确定的电压及频率调节控制指令,并传输至所述芯片功能仿真系统,以使所述芯片功能仿真系统确定下一状态信息。

第五方面,本发明实施例还提供了一种DVFS控制策略仿真装置,由DVFS功能仿真系统执行,该装置包括:

连接建立模块,用于在芯片仿真过程中,通过仿真平台与芯片功能仿真系统建立连接;

控制指令确定模块,用于获取所述仿真平台转发的所述芯片功能仿真系统的当前状态信息,并执行至少两种DVFS控制策略,确定与所述当前状态信息对应的电压及频率调节控制指令;

控制指令传输模块,用于将所述电压及频率调节控制指令经由所述仿真平台传输至所述芯片功能仿真系统,以使所述芯片功能仿真系统确定下一状态信息。

第六方面,本发明实施例还提供了一种DVFS控制策略仿真装置,由芯片功能仿真系统执行,该装置包括:

连接建立模块,用于在芯片仿真过程中,通过仿真平台与DVFS功能仿真系统建立连接;

控制指令获取模块,用于将当前状态信息经由所述仿真平台传输至所述DVFS功能仿真系统,并针对所述当前状态信息,获取所述DVFS功能仿真系统执行至少两种DVFS控制策略确定的电压及频率调节控制指令;

状态信息确定模块,用于根据所述电压及频率调节控制指令和所述当前状态信息,确定下一状态信息。

第七方面,本发明实施例还提供了一种计算机设备,该设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所述的一种DVFS控制策略仿真方法。

第八方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所述的一种DVFS控制策略仿真方法。

本发明实施例的技术方案,通过在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接;获取芯片功能仿真系统的当前状态信息,并将当前状态信息传输至DVFS功能仿真系统以使DVFS功能仿真系统执行至少两种DVFS控制策略;其中,各DVFS控制策略根据芯片功能仿真系统的当前状态信息,确定电压及频率调节控制指令;获取DVFS功能仿真系统针对当前状态信息确定的电压及频率调节控制指令,并传输至芯片功能仿真系统,以使芯片功能仿真系统确定下一状态信息,解决了DVFS控制策略的预先仿真问题,实现了在芯片仿真过程中实现对多种DVFS控制策略的仿真,而无需等待芯片成品的生成,从而可以达到芯片的软件与硬件的并行化开发,提高芯片开发效率并缩短研发周期的效果。

附图说明

图1a是本发明实施例一提供的一种DVFS控制策略仿真方法的流程图;

图1b是本发明实施例一提供的一种芯片功能仿真系统与DVFS功能仿真系统的连接示意图;

图2是本发明实施例二提供的一种DVFS控制策略仿真方法的流程图;

图3是本发明实施例三提供的一种DVFS控制策略仿真方法的流程图;

图4是本发明实施例四提供的一种DVFS控制策略仿真装置的结构示意图;

图5是本发明实施例五提供的一种DVFS控制策略仿真装置的结构示意图;

图6是本发明实施例六提供的一种DVFS控制策略仿真装置的结构示意图;

图7是本发明实施例七提供的一种计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1a是本发明实施例一提供的一种DVFS控制策略仿真方法的流程图,本实施例可适用于在芯片仿真过程中对多种DVFS控制策略进行仿真,进行芯片设计的情况,该方法可以由DVFS控制策略仿真装置来执行,该装置可以通过软件,和/或硬件的方式实现,装置可以集成在计算机设备中,如设置有仿真平台的设备,如图1a所示,该方法具体包括:

步骤110、在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接。

其中,图1b是本发明实施例一提供的一种芯片功能仿真系统与DVFS功能仿真系统的连接示意图。如图1b所示,芯片功能仿真系统200与DVFS功能仿真系统300的各个单元之间可以建立联系,实现在芯片仿真中的DVFS控制策略仿真。

芯片功能仿真系统200可以是实现对芯片的常规功能进行仿真的系统。DVFS功能仿真系统300可以是实现对多种DVFS控制策略进行仿真,实现对芯片进行最优DVFS控制策略选择的系统。芯片功能仿真系统200与DVFS功能仿真系统300之间的连接可以是软件层次的连接,例如,通过函数调用实现芯片功能仿真系统200与DVFS功能仿真系统300之间的数据获取以及数据更新。

在本发明实施例的一个实施方式中,可选的,在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接,包括:在芯片仿真过程中,建立芯片功能仿真系统的初始化单元与DVFS功能仿真系统注册单元的交互连接。

其中,如图1b所示,初始化单元210可以是在芯片功能仿真系统200中实现对芯片的初始化状态设定的单元。注册单元310可以是将DVFS功能仿真系统300在芯片功能仿真系统200中进行注册,实现交互连接的单元。在初始化过程中,实现芯片功能仿真系统200与DVFS功能仿真系统300的连接,便于DVFS功能仿真系统300从芯片运行开始获取芯片功能仿真系统200的状态信息。通过芯片功能仿真系统200与DVFS功能仿真系统300的连接,可以通过DVFS功能仿真系统300实现对芯片状态的可配置性,便于对于定制化事件的捕捉特性。

示例性的,以SystemC(一种软/硬件协同设计语言)实现芯片功能仿真系统与DVFS功能仿真系统为例进行说明。

芯片功能仿真系统反映芯片的执行时间和输入、输出端口上的状态变化。例如,芯片功能仿真系统中可以包括主入口函数(如sc_main)、线程生产系统调用函数(sc_spawn)、绑定系统调用函数(sc_bind)、芯片仿真功能实现函数(host::dispatch)以及连接DVFS功能仿真系统的连接函数(connect_dvfs)。

具体的,芯片功能仿真系统的函数代码框架可以是:

FUNCTION sc_main(argc,argv)

……

sc_spawn(sc_bind(&host::dispatch,this,i));

……

END

FUNCTION host::dispatch()

……

connect_dvfs(dvfs_inst);

……

END

DVFS功能仿真系统可以通过派生自类线程(sc_module)实现,添加至SystemC的仿真系统中。其中,DVFS功能仿真系统可以通过线程处理函数(thread_process)函数实现。DVFS功能仿真系统中可以包括DVFS构造函数、DVFS注册函数以及thread_process等。

具体的,DVFS功能仿真系统与芯片功能仿真系统的进行注册并建立连接的代码框架可以是:FUNCTION dvfs::dvfs(sc_module,name_)

register_event(domain_name,domain_inst);

SC_THREAD(thread_process);

……

END

通过上述的芯片功能仿真系统的函数代码框架中的connect_dvfs函数,以及DVFS功能仿真系统与芯片功能仿真系统的进行注册并建立连接的代码框架,可以实现将DVFS功能仿真系统的实例注册到芯片功能仿真系统中。

步骤120、获取芯片功能仿真系统的当前状态信息,并将当前状态信息传输至DVFS功能仿真系统,以使DVFS功能仿真系统执行至少两种DVFS控制策略。

示例性的,DVFS功能仿真系统的函数代码框架可以是:

其中,通过上述的芯片功能仿真系统的函数代码框架以及DVFS功能仿真系统的函数代码框架中的芯片状态获取(evaluate_power)函数调用,可以实现芯片功能仿真系统的状态信息传输至DVFS功能仿真系统。

状态信息可以反映芯片功能仿真系统在初始状态上的执行结果,例如,芯片的执行时间和输入、输出端口上的状态变化等。具体的,状态信息可以是执行时间、执行功耗以及负载的大小及特征等。

在本发明实施例的一个实施方式中,可选的,获取芯片功能仿真系统的当前状态信息,并将当前状态信息传输至DVFS功能仿真系统,包括:获取DVFS功能仿真系统的时钟信息;在时钟信息满足触发条件时,获取芯片功能仿真系统的当前状态信息,并将当前状态信息传输至DVFS功能仿真系统。

其中,DVFS仿真系统的时钟信息可以是与芯片功能仿真系统相同或者不同的。触发条件可以是当前时钟信息是否到达对芯片功能仿真系统的控制时机。例如,DVFS仿真系统的时钟信息的触发条件可以是与芯片功能仿真系统的时间间隔周期相同,如在一个芯片功能仿真系统的时钟周期触发一次对芯片功能仿真系统的控制。或者,DVFS仿真系统的时钟信息的触发条件可以是与芯片功能仿真系统的时间间隔周期不同,如在多个芯片功能仿真系统的时钟周期(示例性的,1毫秒)触发一次对芯片功能仿真系统的控制。

示例性的,可以通过等待触发函数(wait)进行触发控制。如通过wait函数中的周期控制变量(m_period_ps)实现通过时钟信息对DVFS功能仿真系统触发,进行DVFS控制策略的调整。

触发条件的确定取决于DVFS功能仿真系统中的DVFS控制策略是在每个时钟周期进行执行还是在更多的时钟周期进行执行。具体的,DVFS控制策略的执行周期可以通过如图1b中所示的定时器320控制。定时器320的最小控制单位可以是一个芯片功能仿真系统的时钟周期。DVFS功能仿真系统中可以包括多个定时器,实现对DVFS控制策略的组合控制。

在本发明实施例的一个具体实现方式中,除了对DVFS功能仿真系统的时钟触发之外,还可以通过芯片功能仿真系统的状态变化触发。例如,根据状态信息确定芯片功能仿真系统的工作负荷超过门限值时,可以触发DVFS功能仿真系统,进行DVFS控制策略的调整。

示例性的,可以通过等待触发函数(wait)进行触发控制。如通过wait函数中的系统状态变量(m_evt_stop)实现通过状态信息对DVFS功能仿真系统触发,进行DVFS控制策略的调整。

具体的,DVFS控制策略的控制可以通过上述的芯片功能仿真系统的函数代码框架以及DVFS功能仿真系统的函数代码框架中的m_period_ps进行控制。而芯片功能仿真系统的状态变化对DVFS控制策略的控制触发,可以通过上述的芯片功能仿真系统的函数代码框架以及DVFS功能仿真系统的函数代码框架中m_evt_stop控制。

在本发明实施例的一个实施方式中,可选的,在时钟信息满足触发条件时,获取芯片功能仿真系统的当前状态信息,并将当前状态信息传输至DVFS功能仿真系统,包括:在时钟信息满足触发条件时,通过芯片状态获取接口将芯片功能仿真系统中状态单元的当前状态信息,传输至DVFS功能仿真系统中的状态获取单元。

其中,芯片状态获取接口可以是软件层次的接口,如应用程序编程接口(Application Programming Interface,API)。如图1b所示,可以通过芯片状态获取接口410将芯片功能仿真系统200中状态单元220的状态信息传输至DVFS功能仿真系统300中的状态获取单元330。

具体的,可以通过上述的芯片功能仿真系统的函数代码框架以及DVFS功能仿真系统的函数代码框架中的evaluate_power函数调用芯片状态获取接口获取状态单元的当前状态信息。

在本发明实施例的一个可选实施方式中,将当前状态信息传输至DVFS功能仿真系统,以使DVFS功能仿真系统执行至少两种DVFS控制策略,包括:将当前状态信息传输至DVFS功能仿真系统,以使DVFS功能仿真系统在与芯片功能仿真系统匹配的至少两种DVFS控制策略中,逐次确定目标DVFS控制策略进行执行。

其中,DVFS功能仿真系统中可以预先存储与状态信息对应的多种DVFS控制策略。DVFS功能仿真系统可以逐次将多种DVFS控制策略中的一种作为目标DVFS控制策略进行执行,确定与当前状态信息对应的电压及频率调节控制指令。通过DVFS功能仿真系统可以实现对多种DVFS控制策略的仿真,便于根据各DVFS控制策略下芯片功能仿真系统的性能进行综合评判,确定最优的DVFS控制策略。本发明实施例可以在芯片仿真中对多种DVFS控制策略进行仿真,为芯片确定与状态信息对应的最优DVFS控制策略,节省芯片设计开发成本,无需等待芯片成品生成时,即可对芯片的软件与硬件进行并行化开发,提高芯片开发效率并缩短研发周期。

步骤130、获取DVFS功能仿真系统针对当前状态信息确定的电压及频率调节控制指令,并传输至芯片功能仿真系统,以使芯片功能仿真系统确定下一状态信息。

其中,当前状态信息中可以包括多方面的子状态信息。不同子状态信息的组合可以作为当前状态信息。例如,当前状态信息中的执行功耗以及负载的大小及特征等可以作为DVFS功能仿真系统的输入。DVFS功能仿真系统可以执行DVFS控制策略,根据当前状态信息确定电压及频率调节控制指令。电压及频率调节控制指令可以指示当前芯片功能仿真系统的电压和频率的调节大小。

具体的,可以通过上述的芯片功能仿真系统的函数代码框架以及DVFS功能仿真系统的函数代码框架中的decide_clock函数执行DVFS控制策略对应的算法,根据当前状态信息计算下一刻的电压和频率值(next_volt_freq),进而确定电压及频率的调节控制指令(set_clock)。其中,DVFS控制策略对应的算法可以是多种的。一种示例性的DVFS控制策略可以是Linux(一种操作系统)内核模块CPUFreq(处理器频率)的ondemand governer(按需调节器)策略等。

在本发明实施例的一个实施方式中,可选的,获取DVFS功能仿真系统针对当前状态信息确定的电压及频率调节控制指令,并传输至芯片功能仿真系统,包括:获取DVFS功能仿真系统中电压及频率控制单元输出的电压及频率调节控制指令,通过电压及频率控制接口传输至芯片功能仿真系统中的功能仿真执行单元。

其中,电压及频率控制接口可以是软件层次的接口,如API接口。如图1b所示,可以通过电压及频率控制接口420,将DVFS功能仿真系统300中电压及频率控制单元350输出的电压及频率的调节控制指令传输至芯片功能仿真系统200中的功能仿真执行单元230中。电压及频率的调节控制指令可以是DVFS策略控制单元340执行DVFS控制策略的算法确定的。

具体的,芯片功能仿真系统可以通过上述的芯片功能仿真系统的函数代码框架以及DVFS功能仿真系统的函数代码框架中的set_clock函数将电压及频率控制接口传输电压及频率的调节控制指令进行具体设置。

如图1b所示,芯片功能仿真系统200可以在设置电压及频率后,通过功能仿真执行单元230进行具体的芯片仿真执行,依据当前状态信息以及电压及频率调节控制指令确定下一状态信息。

示例性的,当前状态信息是执行时间为1秒,频率调节控制指令为频率调大一倍;功能仿真执行单元可以确定下一状态信息为执行时间为0.5秒。

又一示例性的,当前状态信息是执行功耗的大小,电压调节控制指令为电压调小一倍;功能仿真执行单元可以根据电压与电流的大小确定下一状态信息中的执行功耗大小。

本实施例的技术方案,通过在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接;获取芯片功能仿真系统的当前状态信息,并将当前状态信息传输至DVFS功能仿真系统,以使DVFS功能仿真系统执行至少两种DVFS控制策略;获取DVFS功能仿真系统针对当前状态信息确定的电压及频率调节控制指令,并传输至芯片功能仿真系统,以使芯片功能仿真系统确定下一状态信息,解决了多种DVFS控制策略的预先仿真问题,实现了在芯片仿真过程中实现对多种DVFS控制策略的仿真,而无需等待芯片成品的生成,从而可以达到芯片的软件与硬件的并行化开发,提高芯片开发效率并缩短研发周期的效果。

如图1b所示,本发明实施例提供的DVFS仿真方法的一个完整执行过程如下:

芯片功能仿真系统200的初始化单元210可以与DVFS功能仿真系统300的注册单元310建立交互连接,用于实现将芯片功能仿真系统200的状态信息传输至DVFS功能仿真系统300。

芯片功能仿真系统200可以抽象为状态机,当前状态信息可以保留在芯片功能仿真系统200中的状态单元220。功能仿真执行单元230确定的下一时刻的状态信息可以反馈至状态单元220进行下一时刻的更新。可以在整个芯片仿真过程中,持续对状态信息进行更新。

DVFS功能仿真系统300中可以通过定时器320触发状态获取单元330通过芯片状态获取接口410获取芯片功能仿真系统300中状态单元320的当前状态信息。DVFS策略控制单元340可以确定目标DVFS控制策略,并根据当前状态信息运行目标DVFS控制策略确定电压和频率值。电压及频率控制单元350可以针对电压和频率值生成电压及频率调节控制指令。

功能仿真执行单元230可以通过电压及频率控制接口420获取电压及频率控制单元350的电压及频率调节控制指令。功能仿真执行单元230可以根据电压及频率调节控制指令以及当前状态信息确定下一时刻的状态信息。

在本发明实施例中,功能仿真执行单元230确定下一时刻的状态信息后,可以将下一时刻的状态信息作为当前状态信息,继续执行上述过程,直至状态信息稳定。其中,在重复执行上述过程时,目标DVFS控制策略是不变的。即本发明实施例可以逐次进行多种DVFS控制策略从当前状态信息至稳定状态信息的仿真,可以通过对稳定状态信息时芯片的具体情况如功耗、温度或者运行时间等,在多种DVFS控制策略中确定最优DVFS控制策略。

通过上述过程,本发明实施例的技术方案,提供了芯片DVFS功能的仿真开发环境。相比于传统技术中的物理芯片开发,可以节省开发环境中的硬件芯片开发成本。根据状态信息(执行时间或执行功耗)可以确定芯片是否存在故障,从而可以在开发过程中了解芯片的性能,便于在早期开发过程中及时发现芯片问题。本发明实施例的技术方案通过对DVFS控制策略的仿真可以避免现有技术中仅通过文档算法估计方式确定优选DVFS控制策略。

此外,对于因遗漏某个子状态信息,导致的不足以确定DVFS调整的时机以及幅度;或者,状态变量位宽预留不足,导致计算精度不够等情况,均可以在DVFS仿真过程中进行避免,达到闭环验证目的。

实施例二

图2是本发明实施例二提供的一种DVFS控制策略仿真方法的流程图,本实施例可适用于在芯片仿真过程中对多种DVFS控制策略进行仿真,进行芯片设计的情况,该方法可以由DVFS控制策略仿真装置来执行,该装置可以通过软件,和/或硬件的方式实现,装置可以集成在计算机设备中,如设置有DVFS功能仿真系统的设备,如图2所示,该方法具体包括:

步骤510、在芯片仿真过程中,通过仿真平台与芯片功能仿真系统建立连接。

可选的,在芯片仿真过程中,通过仿真平台与芯片功能仿真系统建立连接,包括:在芯片仿真过程中,通过仿真平台将注册单元与芯片功能仿真系统的初始化单元建立交互连接。

步骤520、获取仿真平台转发的芯片功能仿真系统的当前状态信息,并执行至少两种DVFS控制策略,确定与当前状态信息对应的电压及频率调节控制指令。

可选的,获取仿真平台转发的芯片功能仿真系统的当前状态信息,包括:将时钟信息传输至仿真平台,并获取仿真平台针对时钟信息确定满足触发条件时,反馈的芯片功能仿真系统的当前状态信息。

可选的,获取仿真平台针对时钟信息确定满足触发条件时,反馈的芯片功能仿真系统的当前状态信息,包括:在仿真平台针对时钟信息确定满足触发条件时,通过状态获取单元获取仿真平台通过芯片状态获取接口反馈的芯片功能仿真系统中状态单元的当前状态信息。

可选的,执行至少两种DVFS控制策略,确定与当前状态信息对应的电压及频率调节控制指令,包括:在与芯片功能仿真系统匹配的至少两种DVFS控制策略中,逐次确定目标DVFS控制策略进行执行,确定与当前状态信息对应的电压及频率调节控制指令。

其中,DVFS功能仿真系统可以针对同一当前状态信息按照逐次确定的目标DVFS控制策略进行多次运行,确定与同一当前状态信息对应的多个电压及频率调节控制指令。对于多种DVFS控制策略,可以使芯片功能仿真系统根据对应的多个电压及频率调节控制指令确定对应的多个稳定的状态信息,便于根据对应的多个稳定的状态信息确定最优的DVFS控制策略。多次运行可以是并行方式运行,或者可以是串行方式运行,本发明实施例对此不做具体限定。

步骤530、将电压及频率调节控制指令经由仿真平台传输至芯片功能仿真系统,以使芯片功能仿真系统确定下一状态信息。

可选的,将电压及频率调节控制指令经由仿真平台传输至芯片功能仿真系统,包括:将电压及频率控制单元输出的电压及频率调节控制指令,经由仿真平台通过电压及频率控制接口传输至芯片功能仿真系统中的功能仿真执行单元。

本发明实施例的技术方案,通过在芯片仿真过程中,通过仿真平台与芯片功能仿真系统建立连接;获取仿真平台转发的芯片功能仿真系统的当前状态信息,并执行至少两种DVFS控制策略,确定与当前状态信息对应的电压及频率调节控制指令;将电压及频率调节控制指令经由仿真平台传输至芯片功能仿真系统,以使芯片功能仿真系统确定下一状态信息,解决了多种DVFS控制策略的预先仿真问题,实现了芯片的软件与硬件的并行化开发,提高芯片开发效率并缩短研发周期,并在芯片开发中提早发现设计中的问题,以进行及时调整,避免芯片流片后才发现问题的效果。

实施例三

图3是本发明实施例三提供的一种DVFS控制策略仿真方法的流程图,本实施例可适用于在芯片仿真过程中对多种DVFS控制策略进行仿真,进行芯片设计的情况,该方法可以由DVFS控制策略仿真装置来执行,该装置可以通过软件,和/或硬件的方式实现,装置可以集成在计算机设备中,如设置有芯片功能仿真系统的设备,如图3所示,该方法具体包括:

步骤610、在芯片仿真过程中,通过仿真平台与DVFS功能仿真系统建立连接。

可选的,在芯片仿真过程中,通过仿真平台与DVFS功能仿真系统建立连接,包括:在芯片仿真过程中,通过仿真平台将初始化单元与DVFS功能仿真系统注册单元的交互连接。

步骤620、将当前状态信息经由仿真平台传输至DVFS功能仿真系统,并针对当前状态信息,获取DVFS功能仿真系统执行至少两种DVFS控制策略确定的电压及频率调节控制指令。

可选的,将当前状态信息经由仿真平台传输至DVFS功能仿真系统,包括:响应于仿真平台确定时钟信息满足触发条件时的当前状态信息获取请求,将当前状态信息经由仿真平台传输至DVFS功能仿真系统。

可选的,响应于仿真平台确定时钟信息满足触发条件时的当前状态信息获取请求,将当前状态信息经由仿真平台传输至DVFS功能仿真系统,包括:响应于仿真平台确定时钟信息满足触发条件时的当前状态信息获取请求,将状态单元的当前状态信息经由仿真平台传输至DVFS功能仿真系统的状态获取单元。

可选的,针对当前状态信息,获取DVFS功能仿真系统执行至少两种DVFS控制策略确定的电压及频率调节控制指令,包括:针对当前状态信息,经由仿真平台通过电压及频率控制接口获取DVFS功能仿真系统中电压及频率控制单元输出的电压及频率调节控制指令。

其中,DVFS功能仿真系统执行至少两种DVFS控制策略的方式与前述实施例中所阐述内容相同,此处不再赘述。

步骤630、根据电压及频率调节控制指令和当前状态信息,确定下一状态信息。

本发明实施例的技术方案,在芯片仿真过程中,通过仿真平台与DVFS功能仿真系统建立连接;将当前状态信息经由仿真平台传输至DVFS功能仿真系统,并针对当前状态信息,获取DVFS功能仿真系统执行至少两种DVFS控制策略确定的电压及频率调节控制指令;根据电压及频率调节控制指令和当前状态信息,确定下一状态信息,解决了多种DVFS控制策略的预先仿真问题,通过DVFS功能仿真系统与芯片功能仿真系统构成的闭环控制系统,对芯片进行最优DVFS控制策略的选取与控制,实现了在芯片仿真过程中对多种DVFS控制策略的仿真,无需等待芯片成品的生成,从而可以达到芯片的软件与硬件的并行化开发,提高芯片开发效率并缩短研发周期的效果。

实施例四

图4是本发明实施例四提供的一种DVFS控制策略仿真装置的结构示意图,该装置可以设置于仿真平台900。结合图4,该装置包括:连接建立模块910,状态信息获取模块920和控制指令获取模块930。其中:

连接建立模块910,用于在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接;

状态信息获取模块920,用于获取芯片功能仿真系统的当前状态信息,并将当前状态信息传输至DVFS功能仿真系统,以使DVFS功能仿真系统执行至少两种DVFS控制策略;

其中,各DVFS控制策略根据芯片功能仿真系统的当前状态信息,确定电压及频率调节控制指令;

控制指令获取模块930,用于获取DVFS功能仿真系统针对当前状态信息确定的电压及频率调节控制指令,并传输至芯片功能仿真系统,以使芯片功能仿真系统确定下一状态信息。

可选的,连接建立模块910,包括:

连接单元,用于在芯片仿真过程中,建立芯片功能仿真系统的初始化单元与DVFS功能仿真系统注册单元的交互连接。

可选的,状态信息获取模块920,包括:

时钟信息获取单元,用于获取DVFS功能仿真系统的时钟信息;

状态信息获取单元,用于在时钟信息满足触发条件时,获取芯片功能仿真系统的当前状态信息,并将当前状态信息传输至DVFS功能仿真系统。

可选的,状态信息获取单元,具体用于:

在时钟信息满足触发条件时,通过芯片状态获取接口将芯片功能仿真系统中状态单元的当前状态信息,传输至DVFS功能仿真系统中的状态获取单元。

可选的,状态信息获取模块920,包括:

将当前状态信息传输至DVFS功能仿真系统,以使DVFS功能仿真系统在与芯片功能仿真系统匹配的至少两种DVFS控制策略中,逐次确定目标DVFS控制策略进行执行。

可选的,控制指令获取模块930,包括:

控制指令获取单元,用于获取DVFS功能仿真系统中电压及频率控制单元输出的电压及频率调节控制指令,通过电压及频率控制接口传输至芯片功能仿真系统中的功能仿真执行单元。

本发明实施例所提供的DVFS仿真装置可执行本发明任意实施例所提供的DVFS仿真方法,具备执行方法相应的功能模块和有益效果。

实施例五

图5是本发明实施例五提供的一种DVFS控制策略仿真装置的结构示意图,该装置可以设置于DVFS功能仿真系统300。结合图5,该装置包括:连接建立模块710,控制指令确定模块720和控制指令传输模块730。其中:

连接建立模块710,用于在芯片仿真过程中,通过仿真平台与芯片功能仿真系统建立连接;

控制指令确定模块720,用于获取仿真平台转发的芯片功能仿真系统的当前状态信息,并执行至少两种DVFS控制策略,确定与当前状态信息对应的电压及频率调节控制指令;

控制指令传输模块730,用于将电压及频率调节控制指令经由仿真平台传输至芯片功能仿真系统,以使芯片功能仿真系统确定下一状态信息。

本发明实施例所提供的DVFS仿真装置可执行本发明任意实施例所提供的DVFS仿真方法,具备执行方法相应的功能模块和有益效果。

实施例六

图6是本发明实施例六提供的一种DVFS控制策略仿真装置的结构示意图,该装置可以设置于芯片功能仿真系统200。结合图6,该装置包括:连接建立模块810,控制指令确定模块820和状态信息确定模块830。其中:

连接建立模块810,用于在芯片仿真过程中,通过仿真平台与DVFS功能仿真系统建立连接;

控制指令获取模块820,用于将当前状态信息经由仿真平台传输至DVFS功能仿真系统,并针对当前状态信息,获取DVFS功能仿真系统执行至少两种DVFS控制策略确定的电压及频率调节控制指令;

状态信息确定模块830,用于根据电压及频率调节控制指令和当前状态信息,确定下一状态信息。

本发明实施例所提供的DVFS仿真装置可执行本发明任意实施例所提供的DVFS仿真方法,具备执行方法相应的功能模块和有益效果。

实施例七

图7是本发明实施例七提供的一种计算机设备的结构示意图,如图7所示,该设备包括:

一个或多个处理器1010,图7中以一个处理器1010为例;

存储器1020;

所述设备还可以包括:输入装置1030和输出装置1040。

所述设备中的处理器1010、存储器1020、输入装置1030和输出装置1040可以通过总线或者其他方式连接,图7中以通过总线连接为例。

存储器1020作为一种非暂态计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的一种DVFS仿真方法对应的程序指令/模块(例如,附图4所示的连接建立模块910,状态信息获取模块920和控制指令获取模块930;或者,附图5所示的连接建立模块710,控制指令确定模块720和控制指令传输模块730;或者,附图6所示的连接建立模块810,控制指令确定模块820和状态信息确定模块830)。处理器1010通过运行存储在存储器1020中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述方法实施例的一种DVFS控制策略仿真方法,即:

在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接;

获取所述芯片功能仿真系统的当前状态信息,并将所述当前状态信息传输至所述DVFS功能仿真系统,以使所述DVFS功能仿真系统执行至少两种DVFS控制策略;

其中,各所述DVFS控制策略根据芯片功能仿真系统的当前状态信息,确定电压及频率调节控制指令;

获取所述DVFS功能仿真系统针对所述当前状态信息确定的电压及频率调节控制指令,并传输至所述芯片功能仿真系统,以使所述芯片功能仿真系统确定下一状态信息。或者,

在芯片仿真过程中,通过仿真平台与芯片功能仿真系统建立连接;

获取所述仿真平台转发的所述芯片功能仿真系统的当前状态信息,并执行至少两种DVFS控制策略,确定与所述当前状态信息对应的电压及频率调节控制指令;

将所述电压及频率调节控制指令经由所述仿真平台传输至所述芯片功能仿真系统,以使所述芯片功能仿真系统确定下一状态信息。或者,

在芯片仿真过程中,通过仿真平台与DVFS功能仿真系统建立连接;

将当前状态信息经由所述仿真平台传输至所述DVFS功能仿真系统,并针对所述当前状态信息,获取所述DVFS功能仿真系统执行至少两种DVFS控制策略确定的电压及频率调节控制指令;

根据所述电压及频率调节控制指令和所述当前状态信息,确定下一状态信息。

存储器1020可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非暂态性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态性固态存储器件。在一些实施例中,存储器1020可选包括相对于处理器1010远程设置的存储器,这些远程存储器可以通过网络连接至终端设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置1030可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置1040可包括显示屏等显示设备。

实施例八

本发明实施例八提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的一种DVFS控制策略仿真方法:

在芯片仿真过程中,将芯片功能仿真系统与DVFS功能仿真系统建立连接;

获取所述芯片功能仿真系统的当前状态信息,并将所述当前状态信息传输至所述DVFS功能仿真系统,以使所述DVFS功能仿真系统执行至少两种DVFS控制策略;

其中,各所述DVFS控制策略根据芯片功能仿真系统的当前状态信息,确定电压及频率调节控制指令;

获取所述DVFS功能仿真系统针对所述当前状态信息确定的电压及频率调节控制指令,并传输至所述芯片功能仿真系统,以使所述芯片功能仿真系统确定下一状态信息。或者,

在芯片仿真过程中,通过仿真平台与芯片功能仿真系统建立连接;

获取所述仿真平台转发的所述芯片功能仿真系统的当前状态信息,并执行至少两种DVFS控制策略,确定与所述当前状态信息对应的电压及频率调节控制指令;

将所述电压及频率调节控制指令经由所述仿真平台传输至所述芯片功能仿真系统,以使所述芯片功能仿真系统确定下一状态信息。或者,

在芯片仿真过程中,通过仿真平台与DVFS功能仿真系统建立连接;

将当前状态信息经由所述仿真平台传输至所述DVFS功能仿真系统,并针对所述当前状态信息,获取所述DVFS功能仿真系统执行至少两种DVFS控制策略确定的电压及频率调节控制指令;

根据所述电压及频率调节控制指令和所述当前状态信息,确定下一状态信息。

可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

相关技术
  • 一种DVFS控制策略仿真方法、装置、设备及存储介质
  • 一种综合能源系统的仿真方法、装置、设备及存储介质
技术分类

06120112836565