CN101901155B - 计算设备及其启动方法 - Google Patents
计算设备及其启动方法 Download PDFInfo
- Publication number
- CN101901155B CN101901155B CN201010229183.6A CN201010229183A CN101901155B CN 101901155 B CN101901155 B CN 101901155B CN 201010229183 A CN201010229183 A CN 201010229183A CN 101901155 B CN101901155 B CN 101901155B
- Authority
- CN
- China
- Prior art keywords
- interface
- computing equipment
- steering order
- clock signal
- computing
- 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
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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4403—Processor initialisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Microcomputers (AREA)
- Information Transfer Systems (AREA)
- Electric Clocks (AREA)
Abstract
本发明涉及一种计算设备,包括计算单元和引导存储器,计算单元包括工作存储器和处理单元,引导存储器包括用于操作计算设备的控制指令,控制指令在计算设备启动时被传送到计算单元。
Description
技术领域
本发明涉及一种计算设备和一种操作计算设备的方法。特别的,本发明涉及具有改进的启动性能的计算设备。
背景技术
计算机平台在大范围的电子设备中使用,这些电子设备诸如是便携式电子设备,包括便携式计算机、移动互联网设备、智能电话等。此外,计算平台在汽车中使用,其中计算平台可以控制大范围的汽车功能。在所有这些应用中,都希望计算平台能够快速启动,以便用户在能够操作该设备之前面对的是最小的延迟。特别是在有关汽车的应用中需要快速启动时间,因为由计算设备控制的汽车功能应该在汽车一启动时就可用。例如,倒车报警声应该在启动汽车后立即可用。此外,可能还有关于例如提前的音频和视频的特殊的要求。
对于以上应用,可以采用一种计算平台,例如使用Intel AtomTM处理器的IntelCentrino AtomTM平台,也称为Menlow或MenlowXL平台。
当启动计算设备时,通常向中央处理单元提供一个重置信号。当使用同步重置时,对于Intel Centrino平台,需要时钟信号以便由CPU识别和处理重置信号。在传统的***中,时钟信号是由所谓的实时时钟(RTC)来生成,这种实时时钟包括32kHz石英振荡器。这种石英振荡器典型地具有800ms或更多的振荡建立时间(build-up time)。CPU在能够处理重置信号之前不得不等待这段时间。如果重置信号在计算设备的***控制器集线器可获得有效RTC时钟信号之前被变得无效(deactivate),那么会产生未定义的动作。因此,使重置信号无效的操作需要被延迟直至RTC石英的振荡建立完成。因此在计算设备的启动阶段引入了附加的延迟。加上通过相对慢的低引脚数(LPC)总线进行的初始程序装入(IPL)和启动程序引起的延迟,这种传统的计算设备启动的延迟不再满足汽车环境的需要。
基于这种平台的计算***一般需要大约两秒钟来进行启动,大小约为两兆字节(MB)的***应用程序在引导程序(IPL)期间被装入。对于汽车应用所提出的要求而言,直到计算设备变得可以操作以前的这段持续时间太长了。
发明内容
因此,存在改善计算设备的启动性能的需求。特别是,希望能减少计算设备变得可操作所需的时间。
这种需求可由独立权利要求的特征满足。从属权利要求描述了本发明的优选实施例。
根据本发明的第一方面,提供了一种包括计算单元和引导存储器的计算设备。计算单元包括工作存储器和处理单元。引导存储器包括用于操作计算设备的控制指令,这些控制指令在计算设备启动时被传送到计算单元。计算设备还包括引导控制单元,引导控制单元通过至少第一接口和第二接口与计算单元连接,并通过第三接口与引导存储器连接。引导控制单元被配置为经由第一接口将控制指令的第一部分从引导存储器传送到计算单元,以及经由第二接口将控制指令的第二部分从引导存储器传送到计算单元。
通过利用两个接口将控制指令从引导存储器传送到计算单元,传送可以更快执行,且计算设备启动所需的时间可以减少。
根据本发明的实施例,控制指令的第二部分可以大于第一部分,且第二接口被配置为以比第一接口更快的速率传送数据。控制指令例如是在计算设备启动时被传送的引导应用程序的部分。由于引导应用程序数据的尺寸更大的第二部分通过两个接口中较快的一个传送,因此初始程序装入需更较少的时间,且启动性能因此提高。
引导控制单元可以包括直接存储器存取(DMA)控制器,用于经由第二接口将控制指令的第二部分传送到计算单元的工作存储器。因此,当传送控制指令的第二部分时,不需要涉及计算单元的处理单元。因此,控制指令的第二部分可以由DMA控制器直接传送到工作存储器,例如经由南桥或者计算单元的***控制器集线器。因此可以快速且有效的执行传送,而不需要涉及处理单元。
引导控制单元可以包括现场可编程门阵列(FPGA)或者专用集成电路(ASIC)。利用像FPGA或者像ASIC的引导控制单元的实施,可以实现控制指令经由所述第一接口和所述第二接口从引导存储器到计算单元的快速传送。引导控制单元可以不利用缓冲器或者仅仅利用一个小的缓冲器,执行控制指令的逐位传送。
第一接口可以是低引脚数(LPC)总线。第二接口可以是周边元件互连快速(PCIe)总线。在引导存储器和引导控制单元之间的第三接口可以是并行总线,例如八位并行总线。因为仅仅是控制指令的较小的部分通过相对慢的LPC总线来传送,而控制指令的更大部分通过快速的PCIe总线来传送,因此初始程序装入的性能可以被显著提高。
控制信息的第一部分可包括用于初始化第二接口的控制指令。引导控制单元可以被配置为在第二接口的初始化之后传送控制指令的第二部分。例如,引导控制单元可以通过LPC总线传送控制指令的第一部分,LPC总线在计算设备加电时就直接可用,响应于计算单元初始化PCIe总线。在传送第一部分和初始化之后,控制指令的第二部分接着通过快速的PCIe总线传送。
计算单元还可以包括***控制器集线器(SHC),***控制器集线器提供第一接口和第二接口,并连接工作存储器。通过SHC,引导控制单元可以因此直接的将控制指令的第二部分传送到工作存储器。SHC可以是例如Intel生产的Poulsbo或者Poulsbo XL***控制器集线器。
引导存储器可以包括闪存。它可以是容量相对小(例如4MB到32MB之间)的闪存,比如大约8MB或大约16MB,引导存储器还可以是诸如硬盘驱动器或存储卡这样的较大存储器的一部分。计算单元可以包括具有上述***控制器集线器的Intel Menlow或者Menlow XL平台。处理单元可以是X86兼容微处理器。特别是,可以侦用Intel AtomTM微处理器。
根据本发明的另一方面,提供了一种操作计算设备的方法,该计算设备包括计算单元、引导存储器,和引导控制单元。其中,计算单元具有工作存储器和处理单元;引导存储器包括用于操作计算设备的控制指令,该控制指令在计算设备启动时被传送到计算单元;引导控制单元通过至少第一接口和一个第二接口与计算单元连接,且通过第三接口与引导存储器连接。该方法包括以下步骤,通过引导控制单元从引导控制器取得控制指令,经由第一接口将控制指令的第一部分传送到计算单元,以及经由第二接口将控制指令的第二部分传送到计算单元。
该方法可以在计算设备启动时执行,例如在计算设备通电后不久执行。根据实施例,控制指令以压缩格式存储在引导存储器中,且该方法还包括以下步骤,在计算单元处接收到压缩的控制指令后,由处理单元解压缩该控制指令。
由所述方法操作的计算设备可以配置成如上所述那样。
利用操作计算设备的方法,控制指令可以经由所述两个接口更快地从引导存储器传送到计算单元,使得计算设备的启动性能被改善。
根据本发明的第二方面,提供了一种计算设备,包括具有***控制器、工作存储单元和处理单元的计算单元,***控制器包括用于接收时钟信号的时钟接口,其中***控制器还被配置为在计算设备启动时向处理单元提供接收到的时钟信号和重置信号。处理单元被配置为使用所提供的时钟信号来处理重置信号。计算设备还包括连接***控制器的时钟信号的***管理控制器(SMC),其中***管理控制器用于通过时钟接口向***控制器提供时钟信号。
在传统计算设备中,时钟信号通常由实时时钟(RTC)提供,实时时钟包括的石英振荡器运行在32kHz且需要相当多的时间来进行振荡建立。通过向计算单元提供***管理控制器的时钟信号,可以减少识别重置信号所需的时间,因此可减少启动计算设备所需的时间。
根据实施例,计算设备还包括用于生成时钟信号的电子振荡器,电子振荡器被连接到***管理控制器。电子振荡器可以是例如操作在比32kHz高很多的频率的石英晶体振荡器,而传统RTC振荡器操作在32kHz。因此,振荡建立会更快发生,且在打开计算设备后的很短一段时间,例如在10ms到50ms之内,时钟信号就变得可用了。
电子振荡器可以包括石英晶体振荡器,且可以生成频率大于1MHz的时钟信号,其中***控制器用于利用频率低于1MHz的时钟信号进行操作。电子振荡器可以例如在1MHz到1GHz之间的范围内操作,其中***控制器可能需要在10kHz到100kHz之间的范围内的时钟信号,例如32.8kHz的时钟信号。
***管理控制器可包括分频器,该分频器用于划分电子振荡器生成的时钟信号的频率,以便使时钟信号的频率适合***控制器要求的频率。那样,可以使用具有快速振荡建立的高频振荡器,同时***控制器仍可具有频率恰当的时钟信号。
***控制器可以是***控制器集线器(SCH),例如Intel生产的Poulsbo或Poulsbo XL***控制器集线器。如上所述,计算单元可包括Intel Menlow或者Menlow XL平台,且处理单元可以是X86兼容微处理器。SMC可以是小版本的输入/输出(I/O)控制器,或者是包括I/O控制器功能、供电功能和***时钟功能的集成组合芯片。
根据本发明第二方面的计算设备还可以配置成以上针对本发明的第一方面所提到的那样。特别是,计算设备可包括引导控制单元,该引导控制单元与引导存储器连接并通过至少第一接口和第二接口与计算单元连接,用于将存储在引导存储器中的控制指令部分通过第一接口好通过第二接口传送到计算单元。
根据本发明的又一方面,提供了一种操作包括计算单元的计算设备的方法,该计算单元包括***控制器、工作存储器和处理单元。***控制器包括用于接收时钟信号的时钟接口,计算设备还包括与***控制器的时钟接口连接的***管理控制器(SMC)。该方法包括以下步骤,在计算设备启动时通过时钟接口将时钟信号从***管理控制器提供到***控制器,由***控制器将接收的时钟信号和重置信号提供到处理单元,在处理单元,利用所提供的时钟信号来处理重置信号。
以上针对根据本发明的第二方面的设备所列出的优点也可以由这个方法实现。特别是,由于来自***管理控制器的时钟信号在计算设备加电之后很短时间内就可用了,因此在***控制器和处理单元对重置信号的识别以及重置信号的重置可以更快执行。
根据实施例,该方法还包括由连接到***管理控制器的电子振荡器或石英生成时钟信号,将由所述***管理控制器中的电子振荡器或石英生成的时钟信号的频率进行分频,以使得时钟信号的频率适合***控制器所需的频率。
该方法还可包括将重置信号从***管理控制器提供到***控制器,以及在处理单元处理了重置信号后使重置信号无效。由于使重置信号无效的操作可以通过以上方法较快地执行,因此启动计算设备所需的时间可以减少。
此外,计算设备可以配置为以上针对本发明的第一和/或第二方面所描述的那样。特别是,计算设备可以进一步配置为以上针对本发明的第一方面所描述的那样,方法可进一步包括针对本发明的第一方面所描述的方法的步骤。例如,在执行上述重置操作后,该方法还可以包括借助于引导控制单元的方式,经由第一接口和第二接口将控制指令从引导存储器传送到计算单元。通过组合这些方法,启动计算设备所需的时间可以被进一步减少。启动性能的改善可以使计算设备能够满足汽车应用的***启动要求。
除非有相反指示,否则本发明的以上方面和实施例的特征可以相互结合。
附图说明
通过结合附图阅读以下详细描述,本发明的前述和其它特征和优点将变得更加清楚。在附图中,相同的附图标记表示相同的元件。
图1是示出了根据本发明实施例的计算设备的示意性框图。
图2是示出了相据本发明实施例的方法的流程图。
图3是示出了根据本发明第二方面的方法的实施例的流程图。
图4是示出了根据本发明第一方面的方法的实施例的流程图。
具体实施方式
可以理解,给出实施例的以下描述仅仅是为了说明的目的,而不意味着限制。应该注意到,附图仅仅是被认为示意性的图形表示,附图中的元件也不一定是相互之间的比例。相反,各种元件的图形表示被选择成使得它们的功能和一般目的对于本领域技术人员而言变得明显。在附图中所示的功能块或单元中的实施例的分割并不解释为这些单元必须是作为物理上分离的单元来实现的,但是所示或所描述的功能块可以被实现为分离的单元、电路、芯片或电路元件,但是一个或多个功能块或单元也可以被实现为一个共同的电路、芯片、电路元件或单元。
图1的示意性框图示出了计算设备100,该计算设备包括计算单元101。计算单元101包括中央处理单元102、***控制器集线器103和工作存储器104。在图1的实施例中,计算设备100是基于Intel Centrino AtomTM平台的,特别是基于Menlow或者Menlow XL平台,且***控制器集线器103是Poulsbo或者Poulsbo XL控制器集线器。CPU 102是Intel AtomTM处理器。应该清楚的是,包括不同的处理器和***控制器的其它平台也是可以用于本发明。存储器104包括多个双倍数据速率(data rate)2(DDR2)随机存取存储器(RAM)模块,它还可以包括其它类型的存储器。
计算设备100还包括***管理控制器(SMC)105。SMC 105可以控制例如功率通量和风扇速度的功能。在当前实施例中,它还可以用于用信号通知一个重置事件给计算单元101。它还可以例如用信号通知给SCH 103和平台的其它元件要求一个重置信号。SMC 105可以包括时钟114和电源115,且可以在一个组合的芯片方案中实现。
当启动计算设备100时,第一启动阶段通常由硬件控制。该阶段包括识别重置信号,这是通过同步重置接口的有效时钟信号的可用性控制的。除了时钟信号,重置信号不能被计算单元101处理。
在传统***中,实时时钟石英被用于生成例如32.8KHz频率的时钟信号,这种RTC石英要求大于800ms的振荡增强时间。这种高振荡增强时间在自动化环境中特别会遇到,此时电池是不能用来运行RTC石英的。
附图1的当前实施例不使用RTC石英的时钟信号,但是使用SMC 105的时钟信号。SMC 105可以自己包括石英振荡器,或者可以连接振荡器在SMC 105的外部(附图1未示出)。连接到SMC 105的石英振荡器与RTC石英相比操作在更高的频率,例如在MHz范围。结果,连接到SMC 105的振荡器的振荡增强时间比RTC石英的要短,可以是像10ms到20ms这么短。***管理控制器105包括一个或多个分频器,用来降低时钟信号的频率。SCH 103还可以要求具有32.768kHz频率的时钟信号,这通常是由RTC的石英振荡器生成的频率。SMC 105使时钟信号的频率适于SCH 103所要求的这个频率。
由于SMC 105提供给SCH 103的时钟信号比传统RTC的时钟信号更早的可用,因此SCH 103能够更早地开始对重置信号进行处理,且使重置信号无效的时间间隔会明显减少。SCH 103在启动时向CPU 102提供重置信号和时钟信号。在计算设备100的操作期间,SMC 105继续向SCH 103提供时钟信号。
由于SMC 105生成重置信号,在传统***中SMC 105被提供以RTC时钟信号。由于在当前实施例中,SMC 105自己生成时钟信号,这种将RTC时钟信号反馈给SMC 105的操作在本实施例中是不需要的。
在上述的启动阶段,可根据本领域已知的任意方法来执行计算设备100的进一步的初始化。这可包括存储器104的初始化,等。
计算设备100的启动还要求将控制指令装入到计算单元101中。这种包括这些控制指令的引导代码或引导应用程序被存储在引导存储器106中,在本实施例中引导存储器106可以被实现为闪存。在计算设备100的启动期间引导代码的装入还可以称作“初始程序装入”(IPL)。在传统计算设备中,引导代码的装入处理是通过相对慢的低引脚代码(LPC)总线107来执行的,这种总线可以达到大约2MB每秒的速度,并直接连接到具有LPC接口的闪存。因此在传统***中,装入引导应用程序所需的时间是由LPC接口107的带宽确定的。
在图1的实施例中,提供了引导控制单元108,它通过并行接口109与引导存储器106连接。并行接口109可以是例如8位接口。引导控制单元108是现场可编程门阵列(FPGA)或专用集成电路(ASIC)。这些单元都可以被配置成用于快速有效地执行特定功能。引导控制单元108可以例如被配置为包括直接存储器存取(DMA)控制器110。引导控制单元108通过LPC总线107和通过PCIe总线111连接SCH 103。PCIe总线111提供的数据传送率比LPC总线107的明显高很多。但,PCIe接口111在计算设备100启动时通常是不可用的,因为它必须被初始化。
这样,引导控制单元108访问引导存储器106,且通过LPC总线107将存储在引导存储器106上的控制指令的第一部分传送到SCH 103。这些指令被执行且初始化PCIe接口111。在这个初始引导期间,例如100kB到300kB的引导代码可以被传送到SCH 103。在初始引导之后,引导控制单元108切换到PCIe接口111。由于通过并行接口109和PCIe接口111的在引导存储器106、引导控制单元108和SCH103之间的连接的带宽高很多,因此引导代码的剩余部分可以与通过标准LPC总线相比高很多的速率传送。例如,当使用2MB大小的引导代码时,与通过LPC总线直接从引导闪存装入数据相比,传送加快了约900ms。引导数据还可以从其它可DMA的大容量存储设备装入,例如硬盘驱动器、SD卡或其它类型的存储卡等,这种大容量存储设备可具有数量级为几百毫秒的时延。与通过LPC总线从安全数字(SD)卡装入数据相比,本发明的计算设备仍能够实现使从引导闪存106进行的引导数据的装入加快300ms。
如上所述,引导控制单元108可以被实现为ASIC或FPGA。与利用FPGA实现相比,FPGA本身需要一定时间用于初始化,ASIC装入时间大约要短150ms-300ms。
所有或者部分的控制指令可以被提供为引导存储器106中的压缩引导图象。在通过PCIe 111进行的引导图象的DMA传送期间,中央处理单元102可以解压缩引导图象数据。这种解压缩可以相对较快的执行,使得在引导图象被传送到存储器104之后不久,就可以获得解压缩格式的相应数据。
通过由***管理控制器105提供重置所需的RTC时钟信号和通过经由LPC总线107和PCIe总线111传送引导应用程序,当前实施例的计算设备100可实现约500ms-1000ms甚至更多的启动性能的提高。启动计算设备100所需的时间因此可以减半。结果,计算设备100能够满足对汽车应用的计算设备提出的严格要求。
应该清楚,在其它实施例中,SCH 103可以从标准RTC时钟接收时钟信号,同时如上所述那样传送引导设备100所需的控制指令。在其它实施例中,标准的引导过程可例如仅仅经由LPC总线从引导存储器传送引导应用程序来实现,同时如上所述那样由SMC 105提供时钟信号。与传统计算设备相比,这样的实施例仍可以提供提高的启动性能,但图1的设备会实现甚至更好的性能。
计算设备100可以包括更多的对于传统计算设备而言很常用的组件。这些组件对于本领域技术人员是公知的,因此在这里没有更详细的描述。这样的例子包括串行高级技术附件(SATA)接口112和连接的硬盘驱动器(HDD)113、用于生成其它时钟信号的时钟114、以及提供电能给计算设备100的电源115。时钟114可以例如用于向CPU 102和PCIe组件提供时钟信号。要注意,时钟114提供的时钟信号与在计算设备100启动时处理重置信号所需的时钟信号不同。SMC 105提供的和处理重置信号时使用的时钟信号还可以在计算设备100的整个操作中提供。
此外,提供视频输出,以及用于将串行数字视频输出(SDVO)信号转换为低压差分信号(LVDS)的转换器116。该信号可以提供给显示器。应该清楚,图1所示的某些组件是可选的,例如单元112-116,以及其它的LVDS、USB、SDIO和SM总线。
计算设备100可以例如被实现为车辆的控制单元。例如它可以控制车辆的灯光、声音或与引擎相关的功能。但计算设备100也可以在诸如便携式计算设备的其它设备中实现,比加便携式计算机、智能电话、移动因特网设备、个人数字助理等。本领域的技术人员会提出其它的实施方式,且本发明的范围并不限于上述实施方式。
图2示出了根据本发明的实施例的方法的流程图。该方法可以在图1所示的计算设备100上实现。该方法包括为计算设备加电(步骤200)并执行重置操作(步骤300)。重置操作300将在以下相对于图3更加详细地描述。在步骤400,执行初始程序装入。初始程序装入在以下相对于图4中更加详细地描述。在这些启动操作后,根据计算设备特定的功能性,计算设备可以操作了,且可以在步骤500中操作。
应该清楚,图2所示的启动过程可以包括其它对于计算设备的启动过程很常见的步骤。这种附加的步骤可以包括其它初始化阶段,例如初始化计算设备的芯片组,该芯片组比如包括南桥和北桥,执行存储器初始化等。这种过程对于技术人员而言是公知的,在这里没有进行更详细的描述。
图3示出了根据本发明的第二方面的实施例的方法的流程图。在步骤301中,连接到SMC 105的电子振荡器被启动来生成时钟信号。在SMC 105中,执行分频以使时钟信号的频率适合SCH 103所需的频率(步骤302)。在步骤303,将重置信号从SMC 105提供到SCH 103。此外,在步骤304,由SMC 105中的分频生成的时钟信号被提供到***控制器集线器103。SCH 103将重置信号(步骤305)和时钟信号(步骤306)提供到处理单元102。注意,将重置信号和时钟信号提供到SCH和提供到处理单元的顺序可以是不同的,例如颠倒的。这些信号可以被异步提供。对重置的识别通常在经过一定数目的时钟周期之后发生。因此,重置的识别可以同步发生。由于来自SMC 105的时钟信号在计算设备100加电后不久就可用了,因此CPU 102可以在经过非常短的延迟后就开始处理重置信号(步骤307)。
然后在步骤308,使重置信号无效。与使用来自实时时钟的时钟信号来处理重置信号的***相比,重置信号可以提前几百微秒被无效。在重置信号被变得无效之后,计算设备100的启动程序会继续(步骤309)。
附图4是根据本发明第一方面的实施例的方法的流程图。在步骤401,引导控制单元108访问存储在引导存储器106中的控制指令的第一部分。引导控制单元108将控制指令的第一部分经由LPC总线107传送到计算单元101。在图1的实施例中,指令被传送到SCH 103,尽管应该清楚的,其它控制器或单元可以被用于提供LPC接口。这种传送可以是例如逐位发生的,而不需要将所述控制指令的更大部分缓冲在引导控制单元108中。控制指令的第一部分可以例如包括100kB-300kB的数据。在步骤403,例如由SCH 103和CPU 102处理控制指令的第一部分。处理结果是,PCIe总线111在步骤104中被初始化。在PCIe总线初始化之后,引导应用程序的传送被切换到PCIe总线。因此,引导控制单元将控制指令的第二部分经由PCIe总线111从引导存储器106传送到计算单元101(步骤405)。控制指令的第二部分的传送可以由DMA控制器110来控制,且可以直接(即,经由SCH 103)传送到计算单元101的存储器104中。如果控制指令以压缩格式存储在引导存储器106中,CPU 102可以在DMA传送期间解压缩数据(步骤406)。因为解压缩可以与数据传送并行执行,因此解压缩产生的延迟可以忽略不计。在引导应用程序被装入存储器104中之后,计算设备100可以根据这些控制指令进行操作(步骤407)。控制指令可以同样包括计算设备100的基本操作***。
针对图3和图4所描述的方法可以包括其它步骤,这些步骤在***重启期间或者在引导应用程序的装入期间通常是分别执行的。这些步骤也可以采用不同顺序或者并行执行。例如,可以并行执行时钟信号的生成和在步骤304中提供时钟信号给SCH以及在步骤305中提供重置信号给SCH。
概括的说,本发明提供了一种启动性能被改进的计算设备。可以利用本发明实现的这种改进使得计算设备可以用于汽车应用中,因为这种计算设备能够满足这种环境的要求。
尽管在此公开了本发明的特定实施例,但可以进行各种变化和修改,而不会脱离本发明的范围。本发明的实施例在所有方面被考虑为示意性的而不是限制性的,并且权利要求的含义和相同范围内进行的所有变化都意味着包含于其中。
Claims (18)
1.一种计算设备,包括:
计算单元,包括工作存储器和处理单元,
引导存储器,包括用于操作所述计算机设备的控制指令,该控制指令在所述计算设备启动时被传送到所述计算单元,和
引导控制单元,通过至少第一接口和第二接口连接所述计算单元,且通过第三接口连接所述引导存储器,
其中所述引导控制单元被配置为经由所述第一接口将所述控制指令的第一部分从所述引导存储器传送到所述计算单元,以及经由所述第二接口将所述控制指令的第二部分从所述引导存储器传送到所述计算单元,
其中所述控制指令的第二部分的数据的尺寸比所述第一部分大,且其中所述第二接口被配置为以比所述第一接口更快的速度传送数据,并且
其中所述控制指令的第一部分包括用于初始化所述第二接口的控制指令,所述引导控制单元被配置为在所述第二接口初始化后传送所述控制指令的第二部分。
2.根据权利要求1所述的计算设备,其中所述引导控制单元包括直接存储器存取控制器,该直接存储器存取控制器用于经由所述第二接口将所述控制指令的所述第二部分传送到所述计算单元的工作存储器中。
3.根据权利要求1所述的计算设备,其中所述引导控制单元包括现场可编程门阵列或者专用集成电路。
4.根据权利要求1所述的计算设备,其中所述第一接口是低引脚数总线,且所述第二接口是周边元件互连快速总线。
5.根据权利要求1所述的计算设备,其中所述计算单元包括***控制器集线器,该***控制器集线器提供所述第一接口和所述第二接口,且连接所述工作存储器。
6.根据权利要求5所述的计算设备,其中所述引导存储器包括闪存,所述计算单元包括具有所述***控制器集线器的Menlow平台,且所述处理单元是x86兼容微处理器。
7.根据前述任一项权利要求所述的计算设备,其中:
计算单元进一步包括***控制器,所述***控制器包括用于接收时钟信号的时钟接口,所述***控制器还被配置为在所述计算设备启动时将重置信号和接收的时钟信号提供给所述处理单元,所述处理单元被配置为使用所提供的时钟信号处理所述重置信号,并且其中所述计算设备进一步包括
***管理控制器,连接所述***控制器的所述时钟接口,其中所述***管理控制器用于经由所述时钟接口向所述***控制器提供时钟信号。
8.根据权利要求7所述的计算设备,还包括用于生成所述时钟信号的电子振荡器,该电子振荡器连接到所述***管理控制器。
9.根据权利要求8所述的计算设备,其中所述电子振荡器包括石英晶体振荡器,并生成频率大于1MHz的时钟信号,所述***控制器用于操作频率低于1MHz的时钟信号。
10.根据权利要求9所述的计算设备,其中所述***管理控制器包括分频器,该分频器用于将所述电子振荡器生成的时钟信号分频,以使得所述时钟信号的频率适合所述***控制器所需的频率。
11.根据权利要求7所述的计算设备,其中所述***控制器是***控制器集线器,其中所述计算单元包括Menlow平台,且其中所述处理单元是x86兼容微处理器。
12.一种操作计算设备的方法,该计算设备包括计算单元、引导存储器和引导控制单元,其中所述计算单元包括工作存储器和处理单元,所述引导存储器包括用于操作所述计算设备的控制指令,该控制指令在所述计算设备启动时被传送到所述计算单元,所述引导控制单元通过至少第一接口和第二接口与所述计算单元连接,且通过第三接口与所述引导存储器连接,所述方法包括以下步骤:
通过所述引导控制单元从所述引导存储器取得所述控制指令,
经由所述第一接口将所述控制指令的第一部分传送到所述计算单元,和
经由所述第二接口将所述控制指令的第二部分传送到所述计算单元,
其中所述控制指令的第二部分的数据的尺寸比所述第一部分大,且其中所述第二接口被配置为以比所述第一接口更快的速度传送数据,并且
其中所述控制指令的第一部分包括用于初始化所述第二接口的控制指令,所述引导控制单元被配置为在所述第二接口初始化后传送所述控制指令的第二部分。
13.根据权利要求12所述的方法,其中,所述控制指令以压缩格式存储在所述引导存储器中,所述方法还包括以下步骤:
在压缩的控制指令在所述计算单元处被接收到之后,由所述处理单元解压缩所述控制指令。
14.根据权利要求12所述的方法,其中所述计算设备根据权利要求1—6中任一项配置。
15.根据权利要求12-14中任一项所述的方法,其中所述计算单元进一步包括***控制器,所述***控制器包括用于接收时钟信号的时钟接口,所述计算设备还包括与所述***控制器的所述时钟接口连接的***管理控制器,该方法还包括以下步骤:
在所述计算设备启动时经由所述时钟接口将时钟信号从所述***管理控制器提供到所述***控制器,
由所述***控制器向所述处理单元提供重置信号和接收的时钟信号,和
在所述处理单元,利用所提供的时钟信号处理所述重置信号。
16.根据权利要求15所述的方法,还包括:
通过连接到所述***管理控制器的电子振荡器或石英生成所述时钟信号,
在所述***管理控制器中对所述电子振荡器或石英生成的时钟信号进行分频,以使所述时钟信号的频率适合所述***控制器所需的频率。
17.根据权利要求15所述的方法,还包括:
将所述重置信号从所述***管理控制器提供到所述***控制器,以及
在所述处理单元处理所述重置信号后,使所述重置信号无效。
18.根据权利要求15所述的方法,其中所述计算设备根据权利要求7—11中任一项配置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP09003545A EP2228718A1 (en) | 2009-03-11 | 2009-03-11 | Computing device and start-up method therefor |
EP09003545.2 | 2009-03-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101901155A CN101901155A (zh) | 2010-12-01 |
CN101901155B true CN101901155B (zh) | 2014-08-27 |
Family
ID=40823412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010229183.6A Active CN101901155B (zh) | 2009-03-11 | 2010-03-11 | 计算设备及其启动方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8621193B2 (zh) |
EP (2) | EP2228718A1 (zh) |
JP (1) | JP5588200B2 (zh) |
KR (1) | KR101664322B1 (zh) |
CN (1) | CN101901155B (zh) |
CA (1) | CA2695883C (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112009004062T5 (de) * | 2009-02-03 | 2012-06-21 | Hewlett-Packard Development Co., L.P. | Elektronische vorrichtung mit überlappendenhochlade-aufgaben-abrufvorgängen und hochlade-aufgaben-ausführung |
KR101678571B1 (ko) * | 2010-10-05 | 2016-11-22 | 삼성전자주식회사 | 컴퓨팅 시스템의 부팅방법 |
US9904559B2 (en) * | 2012-10-25 | 2018-02-27 | Canon Kabushiki Kaisha | Information processing apparatus and activation method therefor for processing data of a hibernation image |
US9135472B2 (en) | 2013-10-31 | 2015-09-15 | Square, Inc. | Systems and methods for secure processing with embedded cryptographic unit |
US10095435B1 (en) | 2015-01-09 | 2018-10-09 | Altera Corporation | Methods for initializing memory devices |
US10585674B2 (en) * | 2016-08-22 | 2020-03-10 | Hewlett-Packard Development Company, L.P. | Connected devices information |
US10410202B1 (en) * | 2016-12-31 | 2019-09-10 | Square, Inc. | Expedited booting with brownout monitoring |
US10410189B2 (en) | 2017-09-30 | 2019-09-10 | Square, Inc. | Scanning system with direct access to memory |
CN108845880A (zh) * | 2018-05-25 | 2018-11-20 | 郑州云海信息技术有限公司 | 一种服务器池化产品开关机***及方法 |
JP7206693B2 (ja) * | 2018-08-24 | 2023-01-18 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置 |
TWI715433B (zh) * | 2020-02-06 | 2021-01-01 | 瑞昱半導體股份有限公司 | 啟動電路、啟動方法以及啟動系統 |
WO2021200926A1 (ja) * | 2020-04-01 | 2021-10-07 | パナソニックIpマネジメント株式会社 | ストレージシステム |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093446A (zh) * | 2006-06-21 | 2007-12-26 | 鸿富锦精密工业(深圳)有限公司 | 操作***引导装置、方法及其应用的电脑*** |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08166834A (ja) * | 1994-12-14 | 1996-06-25 | Mitsubishi Electric Corp | クロック発生回路及びマイクロコンピュータ |
GB2304209B (en) * | 1995-08-04 | 2000-03-01 | Motorola Ltd | Processor system and method of starting-up a processor system |
US6058474A (en) * | 1997-01-24 | 2000-05-02 | Texas Instruments Incorporated | Method and apparatus for DMA boot loading a microprocessor without an internal ROM |
JP3851064B2 (ja) * | 1999-06-30 | 2006-11-29 | インフィネオン テクノロジース アクチエンゲゼルシャフト | Pllシンセサイザ |
US6754759B1 (en) * | 2000-03-08 | 2004-06-22 | Intel Corporation | Transfer of information between devices on different buses |
TW530203B (en) * | 2000-04-19 | 2003-05-01 | Ali Corp | Data processing system |
US6560685B1 (en) * | 2000-09-27 | 2003-05-06 | Sony Corporation | System and method to improve speed and reduce memory allocation for set top box boot-up |
US6883037B2 (en) * | 2001-03-21 | 2005-04-19 | Microsoft Corporation | Fast data decoder that operates with reduced output buffer bounds checking |
KR100448905B1 (ko) * | 2002-07-29 | 2004-09-16 | 삼성전자주식회사 | 낸드플래쉬메모리를 시스템구동 및 저장용으로 사용하는장치 |
US20040139297A1 (en) * | 2003-01-10 | 2004-07-15 | Huppenthal Jon M. | System and method for scalable interconnection of adaptive processor nodes for clustered computer systems |
US7100038B2 (en) * | 2003-03-13 | 2006-08-29 | Sun Microsystems, Inc. | System and method for device parameter persistence |
US7073013B2 (en) * | 2003-07-03 | 2006-07-04 | H-Systems Flash Disk Pioneers Ltd. | Mass storage device with boot code |
US7076646B2 (en) * | 2003-11-05 | 2006-07-11 | Mitac Technology Corp. | Selective quick booting a partial set of devices corresponding to an event code via the BIOS |
US20060085629A1 (en) * | 2003-12-24 | 2006-04-20 | Intel Corporation | Mapping a reset vector |
US20080279098A1 (en) * | 2004-04-02 | 2008-11-13 | Heonchul Park | Wireless Receiver Code Download and Boot Sequence |
US7340595B2 (en) * | 2005-01-07 | 2008-03-04 | International Business Machines Corporation | Multiplex execution-path system |
KR100693924B1 (ko) * | 2005-01-31 | 2007-03-12 | 삼성전자주식회사 | 고속 직렬 인터페이스를 이용하는 부팅 시스템 및 부팅 방법 |
JP2006285738A (ja) * | 2005-04-01 | 2006-10-19 | Canon Inc | 複合機のソフトウェア起動方式 |
KR100708128B1 (ko) * | 2005-04-30 | 2007-04-17 | 삼성전자주식회사 | 낸드 플래시 메모리 제어 장치 및 방법 |
US20060282602A1 (en) * | 2005-06-09 | 2006-12-14 | Tse-Hsine Liao | Data transmission device and method thereof |
JP2007122653A (ja) * | 2005-10-31 | 2007-05-17 | Toshiba Corp | 情報処理装置及び起動制御方法 |
US20070101168A1 (en) * | 2005-10-31 | 2007-05-03 | Lee Atkinson | Method and system of controlling data transfer speed and power consumption of a bus |
US8260968B2 (en) * | 2006-01-23 | 2012-09-04 | Lantiq Deutschland Gmbh | Method and system for booting a software package on a network processor |
US7490177B2 (en) * | 2006-01-23 | 2009-02-10 | Infineon Technologies Ag | System method for performing a direct memory access for automatically copying initialization boot code in a new memory architecture |
JP2007206885A (ja) * | 2006-01-31 | 2007-08-16 | Toshiba Corp | コンピュータシステム及びシステム起動方法 |
JP2007206933A (ja) * | 2006-02-01 | 2007-08-16 | Matsushita Electric Ind Co Ltd | 情報処理装置、情報処理装置におけるブートローダ生成方法およびプログラム転送方法 |
TW200825915A (en) * | 2006-12-07 | 2008-06-16 | Wistron Corp | Computer system and related method for preventing from failing to update BIOS program |
JP2008172491A (ja) * | 2007-01-11 | 2008-07-24 | Seiko Epson Corp | ファクシミリ |
JP2008269288A (ja) * | 2007-04-20 | 2008-11-06 | Hewlett-Packard Development Co Lp | 起動システム、起動プログラムおよびその方法。 |
TW200847022A (en) * | 2007-05-30 | 2008-12-01 | Micro Star Intl Co Ltd | Basic input/output system with memory simulation module |
US20090006708A1 (en) * | 2007-06-29 | 2009-01-01 | Henry Lee Teck Lim | Proportional control of pci express platforms |
EP2026240A1 (en) * | 2007-08-03 | 2009-02-18 | Axalto S.A. | Method for booting portable objects with multiple communication interface |
DK2822341T3 (en) * | 2008-03-25 | 2018-01-08 | ERICSSON TELEFON AB L M (publ) | Timing of component carriers in wireless multi-carrier networks |
US8984653B2 (en) * | 2008-04-03 | 2015-03-17 | Microsoft Technology Licensing, Llc | Client controlled lock for electronic devices |
US8356168B2 (en) * | 2008-06-19 | 2013-01-15 | Intel Corporation | Non-blocking UEFI I/O channel enhancements |
-
2009
- 2009-03-11 EP EP09003545A patent/EP2228718A1/en not_active Ceased
- 2009-03-11 EP EP10007859A patent/EP2244186A3/en not_active Ceased
-
2010
- 2010-03-08 CA CA2695883A patent/CA2695883C/en active Active
- 2010-03-10 JP JP2010053642A patent/JP5588200B2/ja active Active
- 2010-03-11 CN CN201010229183.6A patent/CN101901155B/zh active Active
- 2010-03-11 US US12/722,468 patent/US8621193B2/en active Active
- 2010-03-11 KR KR1020100021571A patent/KR101664322B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093446A (zh) * | 2006-06-21 | 2007-12-26 | 鸿富锦精密工业(深圳)有限公司 | 操作***引导装置、方法及其应用的电脑*** |
Also Published As
Publication number | Publication date |
---|---|
KR20100102562A (ko) | 2010-09-24 |
KR101664322B1 (ko) | 2016-10-24 |
EP2244186A3 (en) | 2010-11-10 |
JP2010211799A (ja) | 2010-09-24 |
EP2228718A1 (en) | 2010-09-15 |
JP5588200B2 (ja) | 2014-09-10 |
CA2695883C (en) | 2015-12-29 |
CN101901155A (zh) | 2010-12-01 |
US20100235618A1 (en) | 2010-09-16 |
CA2695883A1 (en) | 2010-09-11 |
US8621193B2 (en) | 2013-12-31 |
EP2244186A2 (en) | 2010-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101901155B (zh) | 计算设备及其启动方法 | |
CN107403638B (zh) | 能够调节操作电压的存储器设备和控制其的应用处理器 | |
CN100354793C (zh) | 集成电路器件 | |
CN106200760B (zh) | 时钟管理电路、芯片上***、时钟管理的方法 | |
US7277976B2 (en) | Multilayer system and clock control method | |
US8892935B2 (en) | Dynamic bus clock rate adjusting method and device | |
CN108304334B (zh) | 应用处理器和包括中断控制器的集成电路 | |
CN111512266A (zh) | 用于低功率状态转换的握手协议的***、装置和方法 | |
CN116737244A (zh) | 芯片多硬件域启动方法及装置 | |
WO2015172391A1 (zh) | 快速数据读写方法和装置 | |
EP1625507B1 (en) | Method and apparatus with memory protocol for connecting to the memory | |
CN110377272B (zh) | 一种基于tbox的sdk的实现方法及装置 | |
EP0783148A2 (en) | Power conserving clocking system | |
CN110308764B (zh) | 时间获取方法及其处理器、处理***和存储装置 | |
CN112564924A (zh) | 计算机扩展卡及区块链终端设备 | |
CN115079807B (zh) | 一种通信装置、通信装置的存储器访问方法及电子设备 | |
CN117435141B (zh) | 一种存储器激活方法、电子设备及存储介质 | |
CN116661678B (zh) | 数据转储方法及电子设备 | |
CN117116258B (zh) | 一种语音唤醒方法及电子设备 | |
US20060215288A1 (en) | Image forming apparatus with power-saving mode | |
CN1679008A (zh) | 传输信息的方法和装置 | |
KR100891390B1 (ko) | 마이크로 컨트롤러 및 업데이트 방법 | |
JP2007207121A (ja) | データ処理装置及びその制御方法 | |
CN100362493C (zh) | 可令手持电子装置产生虚拟储存空间的方法 | |
CN117435141A (zh) | 一种存储器激活方法、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |