用于集成电路的初始操作模式的制作方法

文档序号:10624348阅读:460来源:国知局
用于集成电路的初始操作模式的制作方法
【专利摘要】本发明涉及用于集成电路的初始操作模式。一种集成电路(IC)及相关方法,支持使用前配置,用于为IC从多个操作模式中确定初始/优选的操作模式,所述多个操作模式是在IC的加电周期之后可以进入的操作模式。初始/优选的操作模式能够在IC的设计阶段之后确定,使得在IC操作期间,通过首先要求在IC在缺省操作模式中加电以及随后运行执行代码以对IC进行重新编程来进入对由IC集成商/用户使用的应用来说优选的操作模式,而不发生浪费的功率或者延迟。配置确定用于内核处理和/或外围模块的时钟频率和/或功率水平,以及允许相同IC设计/管芯被集成商/用户定位至为一系列不同的电力使用/性能应用。
【专利说明】
用于集成电路的初始操作模式
技术领域
[0001]本发明一般涉及集成电路(IC)加电(power-up)时的操作,以及更具体地,涉及预配置集成电路加电时要进入的初始操作模式的方法。
【背景技术】
[0002]在便携式的、电池供电的装置(诸如笔记本电脑和移动电话)中使用不同的集成电路,例如,微控制器和片上系统(SoC)。任何电池供电装置中一个重要的考虑是扩展在电池需要再次充电之前能够使用装置的时间量。
[0003]许多技术用于对这些装置内的不同的子系统提供电力管理,以节省电池电力以及满足能源之星(energy-star)要求。这些技术的大多数依赖于通过在硬件的处理子系统上执行代码来对各种子系统进行一些监控。例如,一些计算机系统,诸如在美国专利N0.4,980,836 ( “ ' 836专利”)中所公开的,利用对各种外围装置(诸如软盘驱动器和硬盘驱动器)进行集中式的电力管理控制,以节省电池电力。
[0004]更具体地,在,836专利中所公开的系统中,监控对各种外围装置(诸如软盘驱动器和硬盘驱动器)的访问。如果外围装置已经未被访问长达预定的时间量,则可以通过集中式的电力管理控制逻辑电路将外围装置和/或计算机系统设置在低功率状态。
[0005]为了获得低功率状态,可以降低系统时钟频率以减少装置的功率消耗。通过停止系统时钟,显著地降低了功率消耗,特别是因为在这些SoC中通常使用的COMS装置在零频率处使用极低功率。其他电力管理计划可以利用降低电压,或频率与电压管理计划的细合来在低功率模式节省电力。
[0006]然而,在上述的情况中,在系统加电时与在外围设备被设置成低功率状态时之间,可能经过大量时间。在这些时间期间,许多电力可能被不必要的损失了。
[0007]在其他的IC电力管理计划中,以片上系统(SoC)或多芯片模块(MCM)级别而不是系统级别管理电力。例如,美国专利N0.6,665,802公开一种非集中式的电力管理计划,其中外围设备自身控制它们自己的电力使用状态(如,高或低)。
[0008]在美国专利N0.7,181,188中,公开了一种用于SoC在来自电力控制器的触发之后进入低功率模式的方法和装置。
[0009]—些以高级时钟和电力管理技术为特征的示例的IC包括在1.MX280多媒体应用处理器系列中,由德克萨斯州的奥斯汀市的飞思卡尔半导体公司制造。该系列SoC的产品手册可以从以下地址下载 http://cache, freescale.com/files/32bit/doc/data_sheet/IMX28CEC.pdf ?.pspll = 10
[0010]IC由一系列步骤开发而成。在顶层,通常利用诸如Verilog或VHDL的硬件描述语言设计1C。该语言通过硬件编译器和仿真器运行,以及之后最终设计阶段以“流片(tape-out) ”结束,此时用于IC光掩模的原图被送到晶片制造工厂。在流片之后,制造包括一个或多个IC的副本的晶片,该副本被认为是半导体管芯。在晶片制造之后,进行晶片测试,那时从晶片切下IC管芯,接着完成管芯的测试、配置和封装。
[0011]对于一些1C,在设计阶段期间,IC以特定的应用(诸如遥感)为目标,其中电力非常重要。这种IC可以设计成在施加电力之后直接加电进入低功率模式。这些IC可能不具有灵活性以在它们启动之后运行代码来改变它们的操作模式。然而,即使它们能够在启动之后改变其操作模式,这些IC也将浪费时间(和功率)来从低功率及通常较低性能的操作模式改变为潜在地期望的较高性能的操作模式。
[0012]—些IC/SoC可以支撑许多种需要不同功率配置(power profile)的运行时间(run-time)应用,但是它们总是须在它们缺省的加电配置(power-up profile)中执行代码之后达到这些不同的功率配置。例如,在移动电话中使用的SoC可以在缺省的操作模式中加电,检查电池状态以及将其操作模式调整为低低功率模式,在低功率模式中,例如,使主要的图形显示驱动器断电。
[0013]不利地,这种SoC总是在将被编程进入较低功率、高性能或其它优选的状态之前,首先经过其缺省的操作模式,因此在正常的操作模式中以及在功率模式转换本身中所花费的时间中浪费了能量。而且,当优选的模式是高性能的模式时,启动至缺省模式的SoC在其能够变换为高性能模式之前比设计为直接启动至高性能模式的SoC将呈现更差的响应性。SoC可以设计为在低功率状态中运行,例如,用于人造卫星遥感系统的应用,但是该相同的SoC可能永远不会用于高功率的应用中。
[0014]因此,期望的是在使用用于各种功率/性能配置的相同的IC设计中的附加的灵活性,使得这样一个IC设计可以用于不同的应用中。
【附图说明】
[0015]通过举例示出本发明,并且本发明不受附图所限制,在附图中相似的附图标记指示相似的元件。为了简明和清楚而示出了附图中的元件,而不必按比例绘制附图中的元件。例如,可以为了清楚而放大区域和层的厚度。
[0016]图1是示出根据本发明的一个实施例的片上系统的框图;
[0017]图2是示出用于图1的SoC的可能的初始操作模式的真值表;
[0018]图3是示出根据本发明的另一个实施例的SoC的简化的框图;以及
[0019]图4是示出图3的SoC的一个可能操作的示例的流程图。

【发明内容】

[0020]本发明的一个方面公开了一种集成电路1C,包括:控制器模块;和多个组件模块,每个组件模块能在多个不同的功率模式下操作,其中所述IC被设计为被选择性地使用前配置成多个不同的能够选择的上电复位模式中的任何一个,所述上电复位模式包括:第一上电复位模式,对应于所述多个组件模块在第一组功率模式下操作;和第二上电复位模式,对应于所述多个组件模块在第二组功率模式下操作,所述第二组功率模式不同于所述笫一组功率模式,从而使得:如果以所述笫一上电复位模式对所述IC进行使用前配置,则当所述IC在所述使用前配置之后被加电时,所述控制器模块使得所述组件模块直接在所述笫一组功率模式下操作;以及如果以所述笫二上电复位模式对所述IC进行使用前配置,则当所述IC在所述使用前配置之后被加电时,所述控制器模块使得所述组件模块直接在所述笫二组功率模式下操作。
【具体实施方式】
[0021]文中公开了本发明的详细的说明性的实施例。然而文中公开的具体的结构和功能的细节仅仅是代表性的,用于描述本发明的示例的实施例的目的。本发明可以以许多替换的形式实现,而不应该被解释为仅限于文中所阐述的实施例。而且,文中所用术语的目的仅仅是为了描述特定的实施例,而非用来限制本发明的示例的实施例。
[0022]如文中所用,单数形式“一”和“所述”旨在也包括复数形式,除非上下文中明确有相反的指明。应当进一步理解的是,术语“组成”、“包含”、“包括”和/或“含有”指定存在所述的特征、步骤或组件,但并不排除一个或多个其他特征、步骤或组件的存在或增加。还应该注意的是,在一些替换的实施方式中,所提到的功能/动作可以不以在图中所示出的顺序发生。例如,连续示出的两个图实际上可以基本上同时地执行,或者有时可以以相反的顺序执行,这取决于所涉及的功能/动作。
[0023]图1是示出根据本发明的一个实施例的片上系统100的简化框图。SoC 100包括处理内核110和120、外围模块130和140、时钟源模块150、电源模块160和模式控制/上电复位(MCPOR)模块170。
[0024]在操作中,在将电力施加至SoC 100之后,并在SoC电路系统的主体从复位移出之前(即,当内核110和120以及外围设备130和140仍处在复位时),MCPOR模块170提供时钟源控制信号172至时钟源模块150以及提供电源控制信号174至电源模块160。
[0025]MCPOR模块170根据SoC 100的配置生成时钟源控制信号172以及电源控制信号174,其中在制造时执行SoC 100的配置(如,在流片之后,有可能在线接合、封装、测试时,或就在将SoC 100运送到组装商或集成商之前),或者由集成商在将SoC 100集成到模块、印刷电路板或产品时执行对SoC 100的配置。
[0026]可以通过以下方式实现该“使用前”配置:通过熔断SoC 100的电路系统中的一个或多个熔丝或SoC 100的电路系统中的一个或多个反熔丝(如,利用可编程逻辑器件编程器件或者利用可编程阵列逻辑编程器件,文中一般称为逻辑编程器件),通过在封装期间将SoC 100的某些输入接合至电力或接地面,通过在电路板组装期间或在系统集成或现场使用期间将SoC 100某些引线接线至电力/接地面(如,通过设置DIP开关),或者通过将MCPOR模块170内的非易失性存储器或寄存器预加载以与SoC 100的期望的使用前配置相对应的位模式,其中可以在芯片的加电期间读取非易失性配置存储器,以允许MCPOR模块170确定SoC 100在全局的上电复位解除断言(de-assert1n)之后将进入的初始操作状
??τ O
[0027]根据时钟源控制信号172,时钟源模块150可以为每一个处理内核模块110和120以及每一个外围模块130和140选择独立的时钟源(如,每个具有可能的不同的频率或占空比或选通功能)。通过这种方式,MCPOR模块170的使用前配置可以用于为每一个内核/外围模块110、120、130和140选择零频率、低频率、中频率、高频率的时钟,在选择与SoC100的初始操作模式相关的电力使用中提供了灵活性。
[0028]根据电源控制信号174,电源模块160可以为每一个处理内核模块110和120以及每一个外围模块130和140选择独立的电源(如,每个具有可能的不同的电压和电流特性)。通过这种方式,MCPOR模块170的使用前配置可以用于为每一个内核/外围模块选择不同的电源,在选择与SoC 100的初始操作模式相关的电力使用中提供了灵活性。
[0029]MCPOR模块170也可以通过命令/控制线(未示出)将其他命令直接传送至内核/外围模块110、120、130和140,这可以影响这些模块将要汲取的电力的量。例如,MCPOR模块170可在外围模块130移出上电复位之前,将“休眠直到中断”的命令传送至外围模块130。否则,如果外围模块130是,例如,以太网控制器接口,那么,在SoC 100加电时的时间,以及在加载实时操作系统并且实时操作系统有时间来甚至响应来自以太网控制器的通信请求和/或决定在给定的SoC 100的使用情景下以太网控制器应该被通知休眠还是被通知完全地关闭时的时间之间,外围模块130将汲取许多电力。
[0030]在另一个例子中,内核110可以是SoC的处理元件,被设计成运行产品(如,移动电话)的关键的“快速开机(quick-on)”用户界面功能。在此情景中,SoC10的使用前配置可以设置成使得MCPOR模块170为SoC 100选择初始操作模式,该操作模式超频内核110,同时降频内核120,使得平衡地,SoC 100耗费平均的电力总量,并且从终端用户视角来看,仍具有响应非常迅捷的启动和响应度特征,以允许终端用户访问高优先级特征,例如移动电话的诸如时钟、电力剩余、时间特征。这种使用前配置能够通过产品制造商、产品分销商或者甚至终端用户来设置。
[0031]为了简化,通常在这种类型的SoC中所常见的其他控制和数据信号、数据和代码总线和其他互连的电路系统已经从图1的框图中去掉了。
[0032]尽管在图1的框图中以分离元件示出了内核110和120、外围设备130和140、时钟源150、电源160以及MCPOR模块170的功能,但在各种其他实施例中,这些功能可以以适合于SoC 100的目的的方式而被不同地分配或组合。
[0033]例如,在一些实施例中,内核110和120或外围设备130和140中的一个或多个可以具有它们自己的时钟生成或电压调节电路系统,并且每一个可以独立地确定它的初始操作模式,只要按照本发明,根据用于SoC 100的使用前配置确定初始操作模式即可。在一些情况中,该使用前配置自身可以被分配以及独立地被应用于每个模块或模块的子集。
[0034]图2是示出根据本发明的一个实施例,根据两个使用前配置位PUC-O和PUC-1的值的用于图1的SoC 100的可能的初始操作模式的真值表。
[0035]行210详述了对应于使用前配置值{PUC-0,PUC_1}等于{0,0}的SoC 100的初始操作模式。对于这些使用前配置值,每次SoC 100移出上电复位(如,首次加电,和如果没有在操作期间修改使用前配置位或没有经过外部改变修改使用前配置位则在随后的每次加电时),内核110和120将加电,每个都以低频时钟运行,以及外围设备130和140两者将加电,从低压电源运行。在加电之后,SoC 100将在该初始操作模式中运行直到由固件/操作系统(OS)改变操作模式,所述固件/操作系统(OS)最终在SoC 100上启动,以及可能地基于用户、系统或外部输入改变操作模式。
[0036]在操作系统控制SoC 100之后,操作系统可以将SoC 100的一个或多个模块置为关闭或休眠模式,有可能关闭一个或多个内核以及将SoC 100置为非操作模式,其可以只通过收到例如中断、多个看门狗复位中的一个、或上电复位才能退出。假设基于使用前配置的没有出现初始操作模式选择逻辑的超驰(override),则在这种中断或复位之后,SoC 100将再次进入由行210定义的并且与使用前配置的设置对应的初始操作模式。
[0037]在示例性的真值表200的行中所详述的初始操作模式中,由行210详述的初始操作模式对应于最低功率操作模式。SoC集成商可以选择将{0,0}编程至电力使用配置寄存器位{PUC-0,PUC-1}中,以便在例如平板或移动电话应用中的操作中最小化SoC 100对电力的汲取。SoC 100的操作模式有时可以由终端用户改变,或者其可以结束,在大多数时间(如果不是总是)SoC 100 (可在SoC芯片工厂中或在集成期间通过设置与真值表200的行210对应的PUC位来设置SoC 100的使用前配置)在它的初始操作模式中运行,使初始操作模式对SoC 100而言为通常的或优选的操作模式。
[0038]在根据使用前配置在加电后进入的初始操作模式在之后没有被超驰的实施例中,SoC 100的初始操作模式也将是主要的操作模式。
[0039]行220详述了对应于使用前配置值{PUC-0,PUC_1}等于{0,1}的SoC 100的初始操作模式。对于这些使用前配置值,每次SoC 100移出上电复位,SoC 100将加电进入初始操作模式,其中内核110以低频时钟运行,内核120以正常频率时钟运行而外围设备130和140将分别以低压电源和高压电源加电运行。
[0040]行230详述了对应于使用前配置值{PUC-0,PUC-1}等于{1,0}的SoC 100的初始操作模式。对于这些使用前配置值,每次SoC 100移出上电复位,SoC 100将加电进入初始操作模式,其中内核110以正常频率时钟运行,内核120以低频时钟运行,而外围设备130和140将分别以高压电源和低压电源加电运行。
[0041]行240详述了对应于使用前配置值{PUC-0,PUC-1}等于{1,1}的SoC 100的初始操作模式。对于这些使用前配置值,每次SoC 100移出上电复位,SoC 100将加电进入初始操作模式,其中内核110和120将分别以高频和正常频率时钟操作,而外围设备130和140将以高压电源加电运行。
[0042]图3是示出根据本发明的实施例的SoC 300的简化框图。类似地来标记图3中与图1的SoC 100中的元件相似的元件。图3突出显示与MCPOR模块370连接的两个外部连接315和325,该连接分别对应于使用前控制输入/寄存器位PUC-O和PUC-1。
[0043]在该实施例中,对应于图2的真值表200的PUC-O的输入315连接到PWR(逻辑“ I”),而对应于图2的真值表200的PUC-1的输入325连接到GND (逻辑“O”)。该使用前配置可以在将SoC 300集成到产品(诸如笔记本电脑,移动电话,便携式音乐播放器或导航仪)时已经固定(如,通过硬件引线或DIP开关设置)。
[0044]该使用前配置{PUC-0,PUC_1} == {1,0}对应于图2中的行230。在这种情况中,如图3中所示出的,内核310将接收正常频率时钟335,而内核320将接收低频时钟345,并且外围设备330将接收高电压电源355,而外围设备340将接收低电压电源365。
[0045]在将多个时钟和多个电压共同直接地提供至每一个内核和外围模块的可替换的实施例中,时钟信号线335和345以及电压线355和365可以分别由时钟选择和电压选择控制信号替代,这些信号告知每个模块在对它们可用的各种频率和电压中使用哪个时钟和哪个电压。如之前所提到的,在一些实施例中,一些模块可以能够生成它们自己的时钟和电压,于是控制线用于控制这些电压和频率的选择。
[0046]在操作中,在将电力施加至SoC 300之后,以及在SoC电路系统的大部分移出复位之前(即,当内核310和320以及外围设备330和340仍在复位时),MCPOR模块370施加输入315和325至解码器逻辑,解码器逻辑利用这些输入生成时钟源控制信号372和电源控制信号374。可选或附加的是,输入315和325可以用于初始化NVM配置,NVM配置在随后的电力周期上被用作用于SoC的使用前配置,并且被解耦接(decouple)以免受外部输入315和325的进一步影响。
[0047]在任一情况中,时钟源控制信号372之后由时钟源模块350使用,以确定发送至内核310的时钟信号335的频率以及发送至内核320的时钟信号345的频率。另外,电源控制信号374由电源模块360使用以确定发送至外围设备330的电压电平355和发送至外围设备340的电压电平365。
[0048]注意的是,在这个实施例中,用于外围设备330和340的时钟频率以及用于内核310和320的电压电平不是由使用前配置指定的,因此在SoC 300的加电期间被设置成正常的缺省值。尽管这些特定的时钟频率和电压电平不是由使用前配置指定,而假设由缺省值开始,但在一些实施例中,附加地,它们可以是能够稍后地在SoC 300已经启动之后在操作系统的控制下由SoC 300编程的。
[0049]在本发明的一些实施例中,图1和3中的时钟源电路系统150/350可以被包含作为电源电路系统160/360中的一部分,反之亦然,或者被分配至内核和/或外围模块110/310、120/320、130/330 和 / 或 140/340 中的一个或多个。
[0050]在各种实施例中,时钟源模块150/350、电源模块160/360、MCP0R模块170/370、内核模块110/310和120/320以及外围模块130/330和140/340可以包括不同类型的电流消耗电路系统,所述电流消耗电路系统包括电压调节器、电流源、带隙调节器、电荷栗、模拟至数字转换器、数字至模拟转换器、射频电路、放大器电路系统、锁相环以及其他模拟或混合信号电路系统。
[0051]图4是描述图3的SoC 300的操作的一个可能的例子的流程图400。
[0052]流程始于步骤405。在步骤410中,用于SoC 300的第一操作模式被写入MCP0R370内的使用前配置非易失性存储器(NVM)(未示出)。例如,参考图2中真值表200,NVM可以被写入值{1,0},对应于{PUC-0, PUC-1}等于{1,0}以及与真值表200的行230相关联。
[0053]注意“第一”操作模式并不必对应于真值表200中所指定的第一操作模式,而是集成商已经为目标产品应用中的SoC 300选择的初始操作模式。相比能够为SoC 300选择的第二或第三操作模式来说,平均起来,该第一操作模式可以使用更多或更少的电力,或提供更高或更低的基准(benchmark)处理能力。
[0054]在图4的实施例中,构思在SoC300内的NVM内的位置写入使用前配置,其能够通过芯片编程步骤写入,类似于EPROM烧入(burn)步骤或边界扫描测试程序,由SoC 300外部发起。在其他实施例中,可以通过模块或电路板上的双列直插封装开关(dip switch)来设置使用前配置,或可以通过其他装置诸如SoC引线接合高或低来设置使用前配置,或可以引线连接至封装外部至合适的逻辑电压电平来设置使用前配置。
[0055]注意,在该例子中使用的第一操作模式与在参考图3所描述的本发明的示例性实施例中使用的初始操作模式是相同的。
[0056]在步骤415中,执行测试以确定电力是否已经施加到SoC 300。如果刚刚已经施加了电力,那么假设除了 MCPOR模块370以外全部电路系统都被保持在重置中,直到MCPOR模块370已经首次有了向SoC300应用配置的机会的时候。
[0057]在步骤420中,由MCPOR模块370从使用前配置NVM中读取与首次选择的操作模式对应的使用前配置,以及在步骤425中,读取的值用于为SoC 300的内核310和320以及外围设备330和340分别设置时钟频率和电压电平。
[0058]在步骤430中,内核310和320以及外围设备330和340从复位移出,以及SoC 300进入笫一操作模式。如之前所提到的,因为该第一操作模式与图3中本发明的实施例中所使用初始操作模式相同,因此驱动至内核310和320的时钟的频率以及驱动至外围设备330和340的电压将分别与图3中的例子相对应,并且为了避免重复,这里将不会进一步描述它们。
[0059]在步骤435中,SoC 300将以第一操作模式执行启动代码并可能执行操作系统加载器执行程序(loader executive),以及开始正常操作。注意,在这个步骤中或就在该步骤之前(如,在步骤430中甚至在某种程度上在步骤425中),MCPOR 170/370中的在SoC300的运行时操作期间不再需要的部分可以被选择性地关闭以节约电力。
[0060]在步骤440中,SoC 300在第一操作模式中继续操作(如,稳定状态)。
[0061]在步骤445中,在以第一操作模式运行的过程期间,SoC 300可能遇到硬件复位、电力损失或重启中断。如果遇到,则流程返回至步骤415,在步骤415执行对电力的测试,以及重复先前描述的用于读取使用前配置并进入笫一操作模式的步骤420、425、430、435和440。
[0062]如果SoC 300没有遇到复位或电力损失,则SoC 300将继续在第一操作模式中执行,直到SoC 300遇到如步骤450中发生的操作模式的软件发起的(software-1nitiated)改变,在这里操作模式从笫一操作模式改变为第三操作模式。
[0063]在多种实施例中,由于第三操作模式处于软件控制下,该操作模式可能会或也可能不会被限制为图2中真值表200指定的操作模式中的一个。例如,这种模式可以将至SoC300的内核320的时钟345关断,并将至内核310的时钟335改变至低频率。替代地或附加地,该模式可以通过将外围设备330的电压降低至低于在第一操作模式中使用的低压而使外围设备330处于超低功耗(extra-low-power)状态。在图4的例子中,假设第三操作模式不同于第一操作模式。
[0064]在步骤455中,在以第三操作模式运行的过程期间,SoC 300可能遇到硬件复位、电力损失或重启中断。如果遇到,则流程再次返回至步骤415,在步骤415执行对电力的测试,以及重复先前描述的用于读取使用前配置和进入第一操作模式的步骤420、425、430、435和440。注意,在该情况下,即使软件已经超驰了第一次施加电力后进入的第一操作模式,以及当前操作模式是笫三操作模式,在复位之后,SoC 300也将再次加电进入笫一操作模式。
[0065]在步骤450中软件将SoC 300置入笫三操作模式以及在第三操作模式中运行一段时间之后,如果在步骤455中SoC 300没有遇到复位或电力损失,则在步骤460中,第二(即不同于第一和第三)操作模式被软件写入使用前配置NVM,由此超驰由系统集成商设置的配置。可以是这样的:执行用于覆写该使用前配置的操作的权利可以被保留给SoC上运行的非常高的特权级别的处理,或者该权利对应于仅能够对于已经“越狱(jail-broken) ”的OS执行的操作。
[0066]即使在NVM中使用前配置已经改变,在步骤465中,SoC 300将继续在第三操作模式中运行,除非步骤470的测试确定复位或电力损失已经发生。如果步骤470的检测为假,则SoC 300将继续在第三操作模式下操作。如果步骤470的检测为真,则下一个步骤将是步骤475的检测,其确定电力是否已经恢复(至少对于MCPOR模块370)。如果已经恢复,则在步骤480中,将读取在步骤460中被写至使用前配置NVM的新写入的配置值(即第二操作模式)。在步骤485中,MCPOR模块370将使用这些值以确定分别用于内核310/320和外围设备330/340的新的时钟频率和电压电平。在步骤490中,SoC 300的内核和外围模块310、320、330和340移出复位,SoC 300开始第二操作模式。由于步骤480、485、490和495在由步骤470和475的组合确定的上电复位或硬件复位之后,因此,在步骤495中,SoC 300将再次执行其启动和OS加载器功能。
[0067]注意,图4中的流程图400代表示出本发明的SoC 100/300的操作中某个可能出现的情况的一个示例性的流程。然而,该流程不应该被认为是限制各种可能的模式或事件的顺序。
[0068]例如,在一些实施例中,SoC 100/300在第一操作模式中运行足够长来执行用于将自身编程进入新的操作模式的代码,SoC 100/300就可以立即将其自身编程进入不同于第一操作模式的该新的操作模式。另外,在步骤455的检测之后的在步骤460中的使用前配置NVM的覆写仅仅是说明性的例子,而不是必须的顺序。
[0069]附加地,在一些实施例中,在写入使用前配置NVM之后,操作系统可以迫使SoC100/300进入硬件复位以开始新的操作模式。替代的,对使用前配置NVM的写入可以引发硬件复位或其他的低级别复位。
[0070]权利要求中使用的“控制器模块”应该被理解为在范围上包含如在说明书中描述的MCP0R170/370,以及更一般的能够执行MCPOR的操作和使用诸如超低功率、电池供电、“总是接通(always-on) ”操作的相关技术的任何上电控制器。
[0071]在权利要求中,术语“组件模块”应该被理解为在范围上包括但不限于:如上所定义的控制器模块,以及内核110/310和120/320、外围模块130/330和140/340、时钟和电源模块 150/350 和 160/360。
[0072]在权利要求中,术语“上电复位模式”应该被理解为在范围上包括但不限于:在上电复位的解除断言之后就进入的装置的操作模式,其中上电复位的解除断言被理解为通常在将电力施加至IC之后,或因为由于中断、错误或编程步骤而导致的硬件复位而发生。
[0073]在下面的权利要求中,IC的“使用前配置”理解为包括在包含该IC的晶片的制造的时期之后的任何时间点处的该IC的配置。
[0074]在权利要求中,术语“熔丝”理解为包括熔丝和反熔丝,其各种变形在本领域中是已知的。
[0075]尽管已经在SoC的上下文中描述了发明,但该发明还可以以其他类型的集成电路和计算机系统实现。
[0076]本领域技术人员将理解,其他可能的顺序和情况对也在本发明的范围内。
[0077]除非另外说明,诸如“第一”、“第二”和“第三”的术语用来任意地在此类术语所描述的要素之间进行区分。因此,这些术语并不必然意图指示这些要素的时间上或其它的优先次序,并且不应解释为必然参考说明书的实施例中类似编号的要素。此外,在权利要求中的引语例如“至少一个”和“一个或多个”的使用不应被解释为暗指由不定冠词“一”(“a”or “an”)引入的其他权利要求要素将包含该引入的权利要求要素的任何特定权利要求限制为仅仅包含一个这种要素的发明,即使当同一权利要求包含引语“一个或多个”或者“至少一个”以及不定冠词例如“一”时也是如此。“所述”(定冠词)的使用也是如此。
[0078]尽管在文中参考具体实施例描述了本发明,但是能够做出各种修改和改变而不脱离如下面权利要求中阐述的本发明的范围。因而,说明书和附图应被认为是示例性的而非限制性的意思,并意图将所有的这些修改包含在本发明的范围内。在文中就有关具体实施例描述的所有利益、优点或问题的解决方案不应解释为任何或所有权利要求的关键的、必须的或实质性的特征或要素。
【主权项】
1.一种集成电路1C,包括: 控制器模块;和 多个组件模块,每个组件模块能在多个不同的功率模式下操作,其中所述IC被设计为被选择性地使用前配置成多个不同的能够选择的上电复位模式中的任何一个,所述上电复位模式包括: 第一上电复位模式,对应于所述多个组件模块在第一组功率模式下操作;和 第二上电复位模式,对应于所述多个组件模块在第二组功率模式下操作,所述第二组功率模式不同于所述第一组功率模式,从而使得: 如果以所述第一上电复位模式对所述IC进行使用前配置,则当所述IC在所述使用前配置之后被加电时,所述控制器模块使得所述组件模块直接在所述第一组功率模式下操作;以及 如果以所述第二上电复位模式对所述IC进行使用前配置,则当所述IC在所述使用前配置之后被加电时,所述控制器模块使得所述组件模块直接在所述第二组功率模式下操作。2.根据权利要求1所述的1C,所述IC在被使用前配置为具有所选择的上电复位模式之后,其中,在加电被使用前配置的IC之后,所述IC能够被编程以将所选择的使用前配置的上电复位模式改为第三上电复位模式,所述第三上电复位模式对应于所述多个组件模块在所述第三组功率模式下操作,使得在所述IC的随后上电复位时,所述控制器使得所述组件模块在第三组功率模式下操作。3.根据权利要求1所述的1C,其中如果以上电复位模式对所述IC进行使用前配置,则当所述IC在使用前配置之后被加电时,所述IC将随后选择性地关闭所述控制器模块的部分以节省功率。4.根据权利要求1所述的1C,其中,在所述IC的每次上电复位时,所述IC在所述使用前配置的所选择的上电复位模式下启动,直到通过对所述IC进行编程改变了所述使用前配置的所选择的上电复位模式。5.根据权利要求1所述的1C,其中: 所述第一组功率模式包括用于所述多个组件模块的第一组电压电平和时钟特性;以及 所述第二组功率模式包括用于所述多个组件模块的第二组电压电平和时钟特性,其中所述第二组功率模式的电压电平和时钟特性中的至少一个不同于所述第一组功率模式的对应的电压电平和对应的时钟特性中的至少一个。6.根据权利要求5所述的1C,其中所述时钟特性包括时钟频率和时钟选通中的至少一个。7.根据权利要求1所述的1C,其中所述IC是能够通过选择性地配置所述IC内的硬件而被使用前配置的。8.根据权利要求1所述的1C,其中所述IC是能够通过在选择性地烧所述IC内的一个或多个熔丝而被使用前配置的。9.根据权利要求1所述的1C,其中所述IC是能够通过选择性地配置所述IC的非易失性存储器而被使用前配置的。10.根据权利要求1所述的1C,其中所述IC是能够通过选择性地对至所述IC外部引 线进行配置而被使用前配置的。
【文档编号】G06F1/26GK105988548SQ201510143902
【公开日】2016年10月5日
【申请日】2015年2月5日
【发明人】顾闻, 崔璟, 章沙雁
【申请人】飞思卡尔半导体公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1