主从式soc芯片低功耗控制电路的制作方法

文档序号:10697439阅读:854来源:国知局
主从式soc芯片低功耗控制电路的制作方法
【专利摘要】本发明提供一种主从式SOC芯片低功耗控制电路,包括控制器、片外CPU和SOC芯片内的片内CPU,控制器分别与片外CPU和所述片内CPU连接,用于根据片外CPU和/或片内CPU输出的配置信息,针对配置信息中的每个配置对象分别生成控制信号,并将对应的控制信号发送给SOC芯片中对应片内CPU的电源控制端。本发明通过设置片外CPU和控制器,并使控制器根据片外CPU和/或SOC芯片内的片内CPU输出的配置信息生成控制信号,来控制SOC芯片内对应片内CPU电源的开关,可以在片内CPU不需要工作时完全关闭,从而可以降低SOC芯片内片内CPU的功耗,从而降低整个SOC芯片的功耗。
【专利说明】
主从式SOC芯片低功耗控制电路
技术领域
[0001 ]本发明属于S0C(System on Chip,系统级芯片)芯片领域,具体涉及一种主从式SOC芯片低功耗控制电路。
【背景技术】
[0002]随着深亚微米芯片技术的发展,芯片的规模越来越大、功能越来越多、而对低功耗的要求越来越高。芯片功耗的问题最近几年得到了越来越多的重视,主要来源于:90nm以下,随着设计流程的发展,芯片的集成度达到了百万门级,规模越来越大。这就产生了芯片封装成本、电源成本和可靠性问题。SOC芯片功耗过大的话,将产生如下的危害:
[0003]籲消耗能源;
[0004]?限制电池的使用时间;
[0005]?增加芯片制造成本、散热问题变得非常严重;
[0006]?降低芯片可靠性;
[0007 ] 隹限制芯片性能提尚;
[0008]?影响高性能数字SOC系统的设计和市场应用。
[0009]现在项目所用工艺尺寸越来越小,特别是在90nm以下工艺,静态功耗占的比重越来越大。而客户对功耗的要求越来越苛刻。因此,必须开展深亚微米下低功耗技术的研究以满足客户对芯片的功耗要求。目前,SOC芯片在运行过程中仍然存在功耗较大的问题。

【发明内容】

[0010]本发明提供一种主从式SOC芯片低功耗控制电路,以解决目前SOC芯片在运行过程中存在的功耗较大的问题。
[0011]根据本发明实施例的第一方面,提供一种SOC芯片低功耗控制电路,包括控制器、片夕卜CPU和SOC芯片内的片内CPU,所述控制器分别与片外CPU和所述片内CPU连接,用于根据所述片外CHJ和/或片内CPU输出的配置信息,针对所述配置信息中的每个配置对象分别生成控制信号,并将对应的控制信号发送给所述SOC芯片中对应片内CPU的电源控制端。
[0012]在一种可选的实现方式中,所述控制器还用于将对应的控制信号发送给所述SOC芯片内对应功能模块的电源控制端和/或时钟信号端。
[0013]在另一种可选的实现方式中,所述控制器用于判断是否同时接收到所述片外CPU和所述片内CPU输出的配置信息,若否,则根据当时接收到的所述片外CPU或所述片内CPU输出的配置信息生成控制信号。
[0014]在另一种可选的实现方式中,所述控制器还用于若同时接收到所述片外CPU和所述片内CR]输出的配置信息,则判断所述片外CPU和所述片内CPU输出的配置信息是否相同,若相同,则根据所述片外CR]或所述片内CPU输出的配置信息生成控制信号。
[0015]在另一种可选的实现方式中,所述控制器还用于若所述片外CPU和所述片内CPU输出的配置信息不相同,则判断所述片外CPU和所述片内CPU输出的配置信息中是否存在重叠配置对象,若存在,则针对所述重叠配置对象,根据所述片外CPU输出的配置信息生成控制信号,针对非重叠配置对象,根据所述片外CPU和所述片内CPU的配置信息分别生成对应的控制信号。
[0016]在另一种可选的实现方式中,所述控制器还用于若所述片外CPU和所述片内CPU输出的配置信息不存在重叠配置对象,则根据所述片外(PU和所述片内CPU的配置信息分别生成对应的控制信号。
[0017]在另一种可选的实现方式中,所述控制器用于针对所述配置信息中的每个配置对象,从预先存储的配置对象的标识信息与所述控制器输出端口的对应关系中,查找出所述控制器中与该配置对象的标识信息对应的输出端口,并将对应的控制信号从查找出的所述输出端口输出。
[0018]本发明的有益效果是:
[0019]1、目前SOC芯片内的片内CPU通常处于常上电状态,即便处于sleep/idle状态,仍然需要消耗电流,造成能源浪费,本发明通过设置片外CPU和控制器,并使控制器根据片外CPU和/或SOC芯片内的片内CPU输出的配置信息生成控制信号,来控制SOC芯片内对应片内CPU电源的开关,可以在片内CPU不需要工作时完全关闭,从而可以降低SOC芯片内片内CPU的功耗;
[0020]2、本发明不仅可以对片内CPU的电源开关进行控制,还可以代替片内CPU对SOC芯片中各个功能模块的电源开关和/或时钟开关进行控制,由此可以减轻片内CPU的负担,提高片内CPU的运行速度,从而可以提高SOC芯片的整体性能,实现SOC芯片中电源时钟开关统一控制;
[0021]3、本发明通过在控制器同时接收到片外CPU和片内CPU的配置信息时,针对两者配置信息中的重叠配置对象,根据片外CPU的配置信息生成控制信号,可以使片外CPU的配置优先级尚于片内CPU的配置优先级,从而可以在提尚SOC芯片外控能力的基础上,提尚SOC芯片中各片内CPU和功能模块的配置准确度,进而可以降低SOC芯片的功耗;
[0022]4、本发明通过在控制器同时接收到片外CPU和片内CPU的配置信息时,针对两者配置信息中的非重叠配置对象,根据片外CPU和片内CTU的配置信息分别生成对应的控制信号,以对非重叠配置对象进行分别配置,由此可以提高配置对象的配置成功率,从而可以降低功耗;
[0023]5、本发明通过在控制器同时接收到片外CPU和片内CPU的配置信息,且两者配置信息中不存在重叠配置对象时,根据片外CPU和片内CTU的配置信息分别生成对应的控制信号,以对各个配置对象进行分别配置,由此可以提高配置对象的配置成功率,从而可以降低功耗。
【附图说明】
[0024]图1是本发明主从式SOC芯片低功耗控制电路的一个实施例电路示意图;
[0025]图2是本发明主从式SOC芯片低功耗控制电路的另一个实施例电路示意图;
[0026]图3是图2中控制器的一个实施例电路示意图。
【具体实施方式】
[0027]为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
[0028]在本发明的描述中,除非另有规定和限定,需要说明的是,术语“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
[0029]参见图1,为本发明主从式SOC芯片低功耗控制电路的一个实施例电路示意图。该主从式SOC芯片低功耗控制电路可以包括控制器110、片外CPlKCentral Processing Unit,中央处理单元)130和SOC芯片120内的片内CPU 140,控制器110可以分别与片外CPU130和片内CPU 140连接,用于根据片外CPU 130和/或片内CPU 140输出的配置信息,针对配置信息中的每个配置对象生成控制信号,并将对应的控制信号发送给SOC芯片120中对应片内CPU140的电源控制端。
[0030]本实施例中,控制器110除了可以生成对SOC芯片120中对应片内CPU的电源开关进行控制的信号,还可以生成对SOC芯片120中对应功能模块150的电源开关和/或时钟开关进行控制的信号,并对应地,将这些信号发送给对应功能模块150的电源控制端和/或时钟控制端。本发明不仅可以对片内CPU的电源开关进行控制,还可以代替片内CPU对SOC芯片中各个功能申旲块的电源开关和/或时钟开关进彳丁控制,由此可以减轻片内CPU的负担,提尚片内CPU的运行速度,从而可以提高SOC芯片的整体性能,实现SOC芯片中电源时钟开关统一控制。
[0031]控制器110在根据片外CPU130和/或片内CPU 140输出的配置信息生成控制信号时,可以首先判断是否同时接收到所述片外CPU 130和所述片内CPU 140输出的配置信息,若同时接收到所述片外CPU 130和所述片内CPU 140输出的配置信息,则判断所述片外CPU130和所述片内CPU 140输出的配置信息是否相同,若相同,则根据所述片外CPU 130或所述片内CPU 140输出的配置信息生成控制信号,若不相同,则进一步判断所述片外CPU 130和所述片内CPU 140输出的配置信息中是否存在重叠配置对象,若存在重叠配置对象,则针对所述重叠配置对象,根据所述片外CPU 130输出的配置信息生成用于控制该重叠配置对象的控制信号,针对非重叠配置对象,根据所述片外CPU 130和所述片内CPU 140的配置信息分别生成对应的控制信号;若不存在重叠配置对象,则根据所述片外CPU 130和所述片内CPU 140的配置信息分别生成对应的控制信号。若不同时接收到所述片外CPU 130和所述片内CPU 140输出的配置信息,则可以根据当时接收到的所述片外CPU 130或所述片内CPU140输出的配置信息生成控制信号。
[0032]需要注意的是:上述配置信息中可以包括配置对象的标识信息(可以为该配置对象所在片内CPU或功能模块的地址信息及其在该片内CPU或功能模块上的端口信息)和配置对象的操作信息,其中配置对象可以包括对应片内CPU的电源控制端口、SOC芯片中对应功能模块的电源控制端口和时钟控制端口,且配置对象可以根据配置信息中配置对象的标识信息来确定。控制器在判断片外CPU和片内CPU输出的配置信息中是否存在重叠配置对象时,可以判断配置信息中对应配置对象所在片内CPU或功能模块的地址信息以及该配置对象在该片内CPU或功能模块上的端口信息是否相同,若都相同,则可以确定该配置对象为重叠配置对象,否则,可以确定该配置对象为非重叠配置对象。
[0033]本发明通过在控制器同时接收到片外CPU和片内CPU的配置信息时,针对两者配置信息中的重叠配置对象,根据片外CPU的配置信息生成控制信号,可以使片外CPU的配置优先级尚于片内CPU的配置优先级,从而可以在提尚SOC芯片外控能力的基础上,提尚SOC芯片中各片内CPU和功能模块的配置准确度,进而可以降低SOC芯片的功耗。本发明通过在控制器同时接收到片外CPU和片内CPU的配置信息时,针对两者配置信息中的非重叠配置对象,根据片外CR]和片内CPU的配置信息分别生成对应的控制信号,以对非重叠配置对象进行分别配置,由此可以提高配置对象的配置成功率,从而可以降低功耗。另外,本发明通过在控制器同时接收到片外CPU和片内CPU的配置信息,且两者配置信息中不存在重叠配置对象时,根据片外CPU和片内CPU的配置信息分别生成对应的控制信号,以对各个配置对象进行分别配置,由此可以提高配置对象的配置成功率,从而可以降低功耗。
[0034]需要注意的是:由于SOC芯片设计中各个片内CPU之间可能存在逻辑控制关系,例如某个片内CPU可以根据检测到的特定条件控制另一个片内CPU电源的开关,因此上述发送给片内CPU的电源控制端,用于控制片内CPU电源关闭的信号可以基于片外CPU输出的配置信息生成,也可以基于片内CPU输出的配置信息生成。此外,当SOC芯片内所有片内CPU均处于关闭状态时,上述发送给片内CPU的电源控制端,用于控制片内CPU电源打开的信号可以基于片外CPU输出的配置信息生成;当SOC芯片内部分片内CPU处于关闭状态时,发送给片内CPU的电源控制端,用于控制片内CPU电源打开的信号可以基于片外CPU和/或片内CPU输出的配置信息生成。
[0035]由于在控制器对SOC芯片内的片内CPU和功能模块进行配置时,有可能不需要对所有的片内CPU和功能模块进行配置,因而为了对片内CPU和功能模块进行准确配置,控制器110在本地可以预先存储片内CPU和功能模块的片选信息。控制器110在生成控制信号的过程中,可以首先判断配置信息中配置对象所在片内CPU或功能模块的地址信息是否在预先存储的片选地址信息内,若在预先存储的片选地址信息内,则进一步判断配置信息中配置对象的操作信息是否为空,若不为空,则根据配置信息中配置对象的操作信息生成控制信号。
[0036]为了准确地将控制信号发送给对应的片内CPU140和对应的功能模块150,对应片内CPU 140的电源控制端和对应功能模块150的电源控制端、时钟控制端可以分别与控制器110上对应的输出端口连接。在本实施例中,控制器110在本地可以预先存储有各个配置对象的标识信息与控制器110的输出端口的对应关系。控制器110在生成控制信号后,针对配置信息中的每个配置对象,可以首先从配置对象的标识信息与控制器输出端口的对应关系中查找出与该配置对象的标识信息对应的输出端口,然后将对应的控制信号从该输出端口输出。
[0037]由上述实施例可见,目前SOC芯片内的片内CHJ通常处于常上电状态,即便处于sleep/idle状态,仍然需要消耗电流,造成能源浪费。本发明通过设置片外CPU和控制器,并使控制器根据片外(PU和/或SOC芯片内的片内CPU输出的配置信息生成控制信号,来控制SOC芯片内对应片内CPU电源的开关,可以在片内CPU不需要工作时完全关闭,从而可以降低SOC芯片内片内CPU的功耗,从而降低SOC芯片的功耗。
[0038]参见图2,为本发明主从式SOC芯片低功耗控制电路的另一个实施例电路示意图。图2与图1所示主从式SOC芯片低功耗控制电路的区别在于,该控制器110可以输入时钟信号和复位信号,其中时钟信号持续输入至控制器110,复位信号在必要的时候输入至控制器110,当时钟信号上升沿来临时,控制器110可以根据片外CPU和/或片内CPU的配置信息生成控制信号。此外,图2中AXI(Advanced extensible Interface,高级可扩展接口)总线下方的各个组块均为SOC芯片的功能模块,其中包括与AHB(Advanced Highperformance Bus,高级高性能总线)总线连接的功能模块DMA和MEMCTL,还包括与APB总线直接连接并通过AHBto APB Bridge(AHB至AI3B桥链接)与AHB间接连接的功能模块WDG,Timers,UART、12C和SPI等。
[0039]控制器II O上可以设置有符合A X I标准协议的第一接口以及符合I n t e I(intelligence,英特尔)模式的第二接口,该第一接口和第二接口均可以支持读写操作。其中该第一接口可以通过AXI总线与SOC芯片120中的片内CPU 140连接,用于通过AXI总线接收片内CPU 140输出的配置信息(此时第一接口执行写操作);该第二接口可以与片外CPU130连接,用于基于Intel模式接收片外CPU 130输出的配置信息(此时第二接口执行写操作)。
[0040]在第一接口的写操作执行结束后,片外CPU130可以通过第一接口对控制器110执行读操作,以从控制器110中读取配置信息,此后片外CPU 130可以根据读取的配置信息来确定控制器110是否成功接收到其发送的配置信息,若否,则继续向控制器110发送配置信息。在第二接口的写操作执行结束后,片内CPU 140可以通过第二接口对控制器110执行读操作,以从控制器110中读取配置信息,此后片内CPU 140可以根据读取的配置信息来确定控制器110是否成功接收到其发送的配置信息,若否,则继续向控制器110发送配置信息。本发明通过使第一接口和第二接口同时支持读写操作,可以保证片外CPU和片内CPU输出的配置信息成功发送给控制器。由于可以采用现有的AXI标准和Intel模式来进行数据的读写,因而在此不再赘述。
[0041]控制器110内可以设置有三个输出控制寄存器,如图3所示,其中第一输出控制寄存器可以用于对片内CPU 140的电源开关的控制信号进行配置,第二输出控制寄存器可以用于对功能模块的电源开关的控制信号进行配置,第三输出控制寄存器可以用于对功能模块的时钟开关的控制信号进行配置。对应片内CPU 140的电源控制端可以与第一输出控制寄存器上的第一输出接口连接,对应功能模块150的电源控制端可以与第二输出控制寄存器上的第二输出接口连接,对应功能模块150的时钟控制端可以与第三输出控制寄存器上的第三输出接口连接,并且控制器110在本地可以预先存储配置对象的标识信息分别与第一输出接口、第二输出接口和第三输出接口的对应关系。需要注意的是:在控制器110中除了可以采用控制寄存器的形式来对控制信号进行存储,还可以采用锁存器或者RAM的形式来对控制信号进行存储。
[0042]由于在控制器对SOC芯片内的片内CPU和功能模块进行配置控制,有可能不需要对所有的片内CPU和功能模块进行配置控制,因而为了对片内CPU和功能模块进行准确控制,控制器110在本地可以预先存储配置对象的片选信息。控制器110在生成控制信号的过程中,可以首先判断配置信息中配置对象所在片内CPU或功能模块的地址信息是否在预先存储的片选地址信息内,若在预先存储的片选地址信息内,则进一步判断配置信息中配置对象的操作信息是否为空,若不为空,则进一步根据配置信息中配置对象所在片内CPU或功能模块的地址信息以及该配置对象在片内CPU或功能模块三的端口信息,判断该配置信息用于对片内CPU的电源开关进行配置,还是对功能模块的电源开关或时钟开关进行控制。
[0043]若配置信息用于对片内CPU的电源开关进行配置,则将偏移地址置为第一输出控制寄存器的地址(诸如O),以将配置信息发送给第一输出控制寄存器,若配置信息用于对功能模块的电源开关进行控制,则将偏移地址置为第二输出控制寄存器的地址(诸如I),以将配置信息发送给第二输出控制寄存器,若配置信息用于对功能模块的时钟开关进行控制,则将偏移地址置为第三输出控制寄存器的地址(诸如2),以将该配置信息发送给第三输出控制寄存器。
[0044]第一输出控制寄存器在接收到配置信息后,可以根据配置信息中配置对象的操作信息生成控制信号CPU_powerctl_l?CPU_powerctl_n,例如当该配置对象的操作信息显示为控制对应片内CPU的电源打开,则可以将该控制信号置为低电平,当该配置对象的操作信息显示为控制对应片内CPU的电源关闭,则可以将该控制信号置为高电平。第一输出控制寄存器在生成控制信号后,可以首先从配置对象的标识信息与第一输出接口的对应关系中,查找出与该配置信息中配置对象的标识信息对应的第一输出接口,然后将该控制信号从查找出的第一输出接口输出。
[0045]第二输出控制寄存器在接收到配置信息后,可以根据配置信息中配置对象的操作信息生成控制信号Mod_powerctl_l?Mod_powerctl_n,例如当该配置对象的操作信息显示为控制对应功能模块的电源打开,则可以将该控制信号置为低电平,当该配置对象的操作信息显示为控制对应功能模块的电源关闭,则可以将该控制信号置为高电平。第二输出控制寄存器在生成控制信号后,可以首先从配置对象的标识信息与第二输出接口的对应关系中,查找出与该配置信息中配置对象的地址信息对应的第二输出接口,然后将该控制信号从查找出的第二输出接口输出。
[0046]第三输出控制寄存器在接收到配置信息后,可以根据配置信息中配置对象的操作信息生成控制信号Clk_ctl_l?Clk_ctl_n,例如当该配置对象的操作信息显示为控制对应功能模块的时钟打开,则可以将该控制信号置为低电平,当该配置对象的操作信息显示为控制对应功能模块的时钟关闭,则可以将该控制信号置为高电平。第三输出控制寄存器在生成控制信号后,可以首先从配置对象的标识信息与第三输出接口的对应关系中,查找出与该配置信息中配置对象的地址信息对应的第三输出接口,然后将该控制信号从查找出的第三输出接口输出。
[0047]需要注意的是:上述第一输出控制寄存器、第二输出控制寄存器和第三输出控制寄存器内可以分别定义一个parameter变量来对第一输出控制寄存器、第二输出控制寄存器和第三输出控制寄存器中可控配置对象的个数进行调整,由此可以提高配置的灵活性。另外,本发明采用第一输出控制寄存器、第二输出控制寄存器和第三输出控制寄存器对应地对片内CPU的电源控制端、SOC芯片中功能模块的电源控制端和时钟控制端进行配置,可以提高配置的稳定性,保证成功完成相应配置,从而进一步保证降低SOC芯片的能耗。
[0048]由上述实施例可见,目前SOC芯片内的片内CHJ通常处于常上电状态,即便处于sleep/idle状态,仍然需要消耗电流,造成能源浪费。本发明通过设置片外CPU和控制器,并使控制器根据片外(PU和/或SOC芯片内的片内CPU输出的配置信息生成控制信号,来控制SOC芯片内对应片内CPU电源的开关,可以在片内CPU不需要工作时完全关闭,从而可以降低SOC芯片内片内CPU的功耗,从而降低SOC芯片的功耗。
[0049]本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
[0050]应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
【主权项】
1.一种主从式SOC芯片低功耗控制电路,其特征在于,包括控制器、片外CI3U和SOC芯片内的片内CPU,所述控制器分别与片外CPU和所述片内CPU连接,用于根据所述片外CPU和/或所述片内CPU输出的配置信息,针对所述配置信息中的每个配置对象分别生成控制信号,并将对应的控制信号发送给所述SOC芯片中对应片内CPU的电源控制端。2.根据权利要求1所述的电路,其特征在于,所述控制器还用于将对应的控制信号发送给所述SOC芯片内对应功能模块的电源控制端和/或时钟信号端。3.根据权利要求1所述的电路,其特征在于,所述控制器用于判断是否同时接收到所述片外CPU和所述片内CPU输出的配置信息,若否,则根据当时接收到的所述片外CPU或所述片内CPU输出的配置信息生成控制信号。4.根据权利要求3所述的电路,其特征在于,所述控制器还用于若同时接收到所述片外CPU和所述片内CPU输出的配置信息,则判断所述片外CPU和所述片内CPU输出的配置信息是否相同,若相同,则根据所述片外CR]或所述片内CPU输出的配置信息生成控制信号。5.根据权利要求4所述的电路,其特征在于,所述控制器还用于若所述片外CPU和所述片内CPU输出的配置信息不相同,则判断所述片外CPU和所述片内CPU输出的配置信息中是否存在重叠配置对象,若存在,则针对所述重叠配置对象,根据所述片外CPU输出的配置信息生成控制信号,针对非重叠配置对象,根据所述片外CPU和所述片内CPU的配置信息分别生成对应的控制信号。6.根据权利要求5所述的电路,其特征在于,所述控制器还用于若所述片外CPU和所述片内CPU输出的配置信息不存在重叠配置对象,则根据所述片外CPU和所述片内CPU的配置信息分别生成对应的控制信号。7.根据权利要求1或2所述的电路,其特征在于,所述控制器用于针对所述配置信息中的每个配置对象,从预先存储的配置对象的标识信息与所述控制器输出端口的第三接口对应关系中,查找出所述控制器中与该配置对象的标识信息对应的第三接口输出端口,并将对应的控制信号从查找出的第三接口所述输出端口输出。
【文档编号】G06F1/32GK106066684SQ201610368549
【公开日】2016年11月2日
【申请日】2016年5月27日 公开号201610368549.5, CN 106066684 A, CN 106066684A, CN 201610368549, CN-A-106066684, CN106066684 A, CN106066684A, CN201610368549, CN201610368549.5
【发明人】付驿如, 刘林涛, 雷昕, 刘伦才, 李煜璟
【申请人】中国电子科技集团公司第二十四研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1