專利名稱:計(jì)算設(shè)備及其啟動(dòng)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計(jì)算設(shè)備和一種操作計(jì)算設(shè)備的方法。特別的,本發(fā)明涉及具有 改進(jìn)的啟動(dòng)性能的計(jì)算設(shè)備。
背景技術(shù):
計(jì)算機(jī)平臺(tái)在大范圍的電子設(shè)備中使用,這些電子設(shè)備諸如是便攜式電子設(shè)備, 包括便攜式計(jì)算機(jī)、移動(dòng)互聯(lián)網(wǎng)設(shè)備、智能電話等。此外,計(jì)算平臺(tái)在汽車中使用,其中計(jì)算 平臺(tái)可以控制大范圍的汽車功能。在所有這些應(yīng)用中,都希望計(jì)算平臺(tái)能夠快速啟動(dòng),以便 用戶在能夠操作該設(shè)備之前面對的是最小的延遲。特別是在有關(guān)汽車的應(yīng)用中需要快速啟 動(dòng)時(shí)間,因?yàn)橛捎?jì)算設(shè)備控制的汽車功能應(yīng)該在汽車一啟動(dòng)時(shí)就可用。例如,倒車報(bào)警聲應(yīng) 該在啟動(dòng)汽車后立即可用。此外,可能還有關(guān)于例如提前的音頻和視頻的特殊的要求。對于以上應(yīng)用,可以采用一種計(jì)算平臺(tái),例如使用Intel Atom 處理器的 Intel . Centrino 丨 Atom 平臺(tái),也稱為 Menlow 或 MenlowXL 平臺(tái)。當(dāng)啟動(dòng)計(jì)算設(shè)備時(shí),通常向中央處理單元提供一個(gè)重置信號。當(dāng)使用同步重置時(shí), 對于Intel Centrino 平臺(tái),需要時(shí)鐘信號以便由CPU識別和處理重置信號。在傳統(tǒng) 的系統(tǒng)中,時(shí)鐘信號是由所謂的實(shí)時(shí)時(shí)鐘(RTC)來生成,這種實(shí)時(shí)時(shí)鐘包括32kHz石英振蕩 器。這種石英振蕩器典型地具有800ms或更多的振蕩建立時(shí)間(build-up time)。CPU在 能夠處理重置信號之前不得不等待這段時(shí)間。如果重置信號在計(jì)算設(shè)備的系統(tǒng)控制器集線 器可獲得有效RTC時(shí)鐘信號之前被變得無效(deactivate),那么會(huì)產(chǎn)生未定義的動(dòng)作。因 此,使重置信號無效的操作需要被延遲直至RTC石英的振蕩建立完成。因此在計(jì)算設(shè)備的 啟動(dòng)階段引入了附加的延遲。加上通過相對慢的低引腳數(shù)(LPC)總線進(jìn)行的初始程序裝入 (IPL)和啟動(dòng)程序引起的延遲,這種傳統(tǒng)的計(jì)算設(shè)備啟動(dòng)的延遲不再滿足汽車環(huán)境的需要?;谶@種平臺(tái)的計(jì)算系統(tǒng)一般需要大約兩秒鐘來進(jìn)行啟動(dòng),大小約為兩兆字節(jié) (MB)的系統(tǒng)應(yīng)用程序在引導(dǎo)程序(IPL)期間被裝入。對于汽車應(yīng)用所提出的要求而言,直 到計(jì)算設(shè)備變得可以操作以前的這段持續(xù)時(shí)間太長了。
發(fā)明內(nèi)容
因此,存在改善計(jì)算設(shè)備的啟動(dòng)性能的需求。特別是,希望能減少計(jì)算設(shè)備變得可 操作所需的時(shí)間。這種需求可由獨(dú)立權(quán)利要求的特征滿足。從屬權(quán)利要求描述了本發(fā)明的優(yōu)選實(shí)施 例。根據(jù)本發(fā)明的第一方面,提供了一種包括計(jì)算單元和引導(dǎo)存儲(chǔ)器的計(jì)算設(shè)備。計(jì) 算單元包括工作存儲(chǔ)器和處理單元。引導(dǎo)存儲(chǔ)器包括用于操作計(jì)算設(shè)備的控制指令,這些 控制指令在計(jì)算設(shè)備啟動(dòng)時(shí)被傳送到計(jì)算單元。計(jì)算設(shè)備還包括弓I導(dǎo)控制單元,弓I導(dǎo)控制 單元通過至少第一接口和第二接口與計(jì)算單元連接,并通過第三接口與引導(dǎo)存儲(chǔ)器連接。 引導(dǎo)控制單元被配置為經(jīng)由第一接口將控制指令的第一部分從引導(dǎo)存儲(chǔ)器傳送到計(jì)算單元,以及經(jīng)由第二接口將控制指令的第二部分從引導(dǎo)存儲(chǔ)器傳送到計(jì)算單元。通過利用兩個(gè)接口將控制指令從引導(dǎo)存儲(chǔ)器傳送到計(jì)算單元,傳送可以更快執(zhí) 行,且計(jì)算設(shè)備啟動(dòng)所需的時(shí)間可以減少。根據(jù)本發(fā)明的實(shí)施例,控制指令的第二部分可以大于第一部分,且第二接口被配 置為以比第一接口更快的速率傳送數(shù)據(jù)??刂浦噶罾缡窃谟?jì)算設(shè)備啟動(dòng)時(shí)被傳送的引導(dǎo) 應(yīng)用程序的部分。由于引導(dǎo)應(yīng)用程序數(shù)據(jù)的尺寸更大的第二部分通過兩個(gè)接口中較快的一 個(gè)傳送,因此初始程序裝入需更較少的時(shí)間,且啟動(dòng)性能因此提高。引導(dǎo)控制單元可以包括直接存儲(chǔ)器存取(DMA)控制器,用于經(jīng)由第二接口將控制 指令的第二部分傳送到計(jì)算單元的工作存儲(chǔ)器。因此,當(dāng)傳送控制指令的第二部分時(shí),不需 要涉及計(jì)算單元的處理單元。因此,控制指令的第二部分可以由DMA控制器直接傳送到工 作存儲(chǔ)器,例如經(jīng)由南橋或者計(jì)算單元的系統(tǒng)控制器集線器。因此可以快速且有效的執(zhí)行 傳送,而不需要涉及處理單元。引導(dǎo)控制單元可以包括現(xiàn)場可編程門陣列(FPGA)或者專用集成電路(ASIC)。利 用像FPGA或者像ASIC的引導(dǎo)控制單元的實(shí)施,可以實(shí)現(xiàn)控制指令經(jīng)由所述第一接口和所 述第二接口從引導(dǎo)存儲(chǔ)器到計(jì)算單元的快速傳送。弓丨導(dǎo)控制單元可以不利用緩沖器或者僅 僅利用一個(gè)小的緩沖器,執(zhí)行控制指令的逐位傳送。第一接口可以是低引腳數(shù)(LPC)總線。第二接口可以是周邊元件互連快速(PCIe) 總線。在引導(dǎo)存儲(chǔ)器和引導(dǎo)控制單元之間的第三接口可以是并行總線,例如八位并行總線。 因?yàn)閮H僅是控制指令的較小的部分通過相對慢的LPC總線來傳送,而控制指令的更大部分 通過快速的PCIe總線來傳送,因此初始程序裝入的性能可以被顯著提高。控制信息的第一部分可包括用于初始化第二接口的控制指令。引導(dǎo)控制單元可以 被配置為在第二接口的初始化之后傳送控制指令的第二部分。例如,引導(dǎo)控制單元可以通 過LPC總線傳送控制指令的第一部分,LPC總線在計(jì)算設(shè)備加電時(shí)就直接可用,響應(yīng)于計(jì)算 單元初始化PCIe總線。在傳送第一部分和初始化之后,控制指令的第二部分接著通過快速 的PCIe總線傳送。計(jì)算單元還可以包括系統(tǒng)控制器集線器(SHC),系統(tǒng)控制器集線器提供第一接口 和第二接口,并連接工作存儲(chǔ)器。通過SHC,引導(dǎo)控制單元可以因此直接的將控制指令的第 二部分傳送到工作存儲(chǔ)器。SHC可以是例如Intel 生產(chǎn)的Poulsbo或者Poulsbo XL系統(tǒng) 控制器集線器。引導(dǎo)存儲(chǔ)器可以包括閃存。它可以是容量相對小(例如4MB到32MB之間)的閃 存,比如大約8MB或大約16MB,引導(dǎo)存儲(chǔ)器還可以是諸如硬盤驅(qū)動(dòng)器或存儲(chǔ)卡這樣的較大 存儲(chǔ)器的一部分。計(jì)算單元可以包括具有上述系統(tǒng)控制器集線器的Intel Menlow或者 Menlow XL平臺(tái)。處理單元可以是X86兼容微處理器。特別是,可以偵用Intel . Atom 微處理器。根據(jù)本發(fā)明的另一方面,提供了一種操作計(jì)算設(shè)備的方法,該計(jì)算設(shè)備包括計(jì)算 單元、引導(dǎo)存儲(chǔ)器,和弓I導(dǎo)控制單元。其中,計(jì)算單元具有工作存儲(chǔ)器和處理單元;弓I導(dǎo)存儲(chǔ) 器包括用于操作計(jì)算設(shè)備的控制指令,該控制指令在計(jì)算設(shè)備啟動(dòng)時(shí)被傳送到計(jì)算單元; 引導(dǎo)控制單元通過至少第一接口和一個(gè)第二接口與計(jì)算單元連接,且通過第三接口與引導(dǎo) 存儲(chǔ)器連接。該方法包括以下步驟,通過弓I導(dǎo)控制單元從弓I導(dǎo)控制器取得控制指令,經(jīng)由第
6一接口將控制指令的第一部分傳送到計(jì)算單元,以及經(jīng)由第二接口將控制指令的第二部分 傳送到計(jì)算單元。該方法可以在計(jì)算設(shè)備啟動(dòng)時(shí)執(zhí)行,例如在計(jì)算設(shè)備通電后不久執(zhí)行。根據(jù)實(shí)施 例,控制指令以壓縮格式存儲(chǔ)在引導(dǎo)存儲(chǔ)器中,且該方法還包括以下步驟,在計(jì)算單元處接 收到壓縮的控制指令后,由處理單元解壓縮該控制指令。由所述方法操作的計(jì)算設(shè)備可以配置成如上所述那樣。利用操作計(jì)算設(shè)備的方法,控制指令可以經(jīng)由所述兩個(gè)接口更快地從引導(dǎo)存儲(chǔ)器 傳送到計(jì)算單元,使得計(jì)算設(shè)備的啟動(dòng)性能被改善。根據(jù)本發(fā)明的第二方面,提供了一種計(jì)算設(shè)備,包括具有系統(tǒng)控制器、工作存儲(chǔ)單 元和處理單元的計(jì)算單元,系統(tǒng)控制器包括用于接收時(shí)鐘信號的時(shí)鐘接口,其中系統(tǒng)控制 器還被配置為在計(jì)算設(shè)備啟動(dòng)時(shí)向處理單元提供接收到的時(shí)鐘信號和重置信號。處理單元 被配置為使用所提供的時(shí)鐘信號來處理重置信號。計(jì)算設(shè)備還包括連接系統(tǒng)控制器的時(shí)鐘 信號的系統(tǒng)管理控制器(SMC),其中系統(tǒng)管理控制器用于通過時(shí)鐘接口向系統(tǒng)控制器提供 時(shí)鐘信號。在傳統(tǒng)計(jì)算設(shè)備中,時(shí)鐘信號通常由實(shí)時(shí)時(shí)鐘(RTC)提供,實(shí)時(shí)時(shí)鐘包括的石英 振蕩器運(yùn)行在32kHz且需要相當(dāng)多的時(shí)間來進(jìn)行振蕩建立。通過向計(jì)算單元提供系統(tǒng)管理 控制器的時(shí)鐘信號,可以減少識別重置信號所需的時(shí)間,因此可減少啟動(dòng)計(jì)算設(shè)備所需的 時(shí)間。根據(jù)實(shí)施例,計(jì)算設(shè)備還包括用于生成時(shí)鐘信號的電子振蕩器,電子振蕩器被連 接到系統(tǒng)管理控制器。電子振蕩器可以是例如操作在比32kHz高很多的頻率的石英晶體振 蕩器,而傳統(tǒng)RTC振蕩器操作在32kHz。因此,振蕩建立會(huì)更快發(fā)生,且在打開計(jì)算設(shè)備后的 很短一段時(shí)間,例如在IOms到50ms之內(nèi),時(shí)鐘信號就變得可用了。電子振蕩器可以包括石英晶體振蕩器,且可以生成頻率大于IMHz的時(shí)鐘信號,其 中系統(tǒng)控制器用于利用頻率低于IMHz的時(shí)鐘信號進(jìn)行操作。電子振蕩器可以例如在IMHz 到IGHz之間的范圍內(nèi)操作,其中系統(tǒng)控制器可能需要在IOkHz到IOOkHz之間的范圍內(nèi)的 時(shí)鐘信號,例如32. 8kHz的時(shí)鐘信號。系統(tǒng)管理控制器可包括分頻器,該分頻器用于劃分電子振蕩器生成的時(shí)鐘信號的 頻率,以便使時(shí)鐘信號的頻率適合系統(tǒng)控制器要求的頻率。那樣,可以使用具有快速振蕩建 立的高頻振蕩器,同時(shí)系統(tǒng)控制器仍可具有頻率恰當(dāng)?shù)臅r(shí)鐘信號。系統(tǒng)控制器可以是系統(tǒng)控制器集線器(SCH),例如Intel. 生產(chǎn)的Poulsbo或 Poulsbo XL系統(tǒng)控制器集線器。如上所述,計(jì)算單元可包括Intel Menlow或者M(jìn)enlow XL平臺(tái),且處理單元可以是X86兼容微處理器。SMC可以是小版本的輸入/輸出(I/O)控 制器,或者是包括I/O控制器功能、供電功能和系統(tǒng)時(shí)鐘功能的集成組合芯片。根據(jù)本發(fā)明第二方面的計(jì)算設(shè)備還可以配置成以上針對本發(fā)明的第一方面所提 到的那樣。特別是,計(jì)算設(shè)備可包括引導(dǎo)控制單元,該引導(dǎo)控制單元與引導(dǎo)存儲(chǔ)器連接并通 過至少第一接口和第二接口與計(jì)算單元連接,用于將存儲(chǔ)在引導(dǎo)存儲(chǔ)器中的控制指令部分 通過第一接口好通過第二接口傳送到計(jì)算單元。根據(jù)本發(fā)明的又一方面,提供了一種操作包括計(jì)算單元的計(jì)算設(shè)備的方法,該計(jì) 算單元包括系統(tǒng)控制器、工作存儲(chǔ)器和處理單元。系統(tǒng)控制器包括用于接收時(shí)鐘信號的時(shí)鐘接口,計(jì)算設(shè)備還包括與系統(tǒng)控制器的時(shí)鐘接口連接的系統(tǒng)管理控制器(SMC)。該方法包 括以下步驟,在計(jì)算設(shè)備啟動(dòng)時(shí)通過時(shí)鐘接口將時(shí)鐘信號從系統(tǒng)管理控制器提供到系統(tǒng)控 制器,由系統(tǒng)控制器將接收的時(shí)鐘信號和重置信號提供到處理單元,在處理單元,利用所提 供的時(shí)鐘信號來處理重置信號。以上針對根據(jù)本發(fā)明的第二方面的設(shè)備所列出的優(yōu)點(diǎn)也可以由這個(gè)方法實(shí)現(xiàn)。特 別是,由于來自系統(tǒng)管理控制器的時(shí)鐘信號在計(jì)算設(shè)備加電之后很短時(shí)間內(nèi)就可用了,因 此在系統(tǒng)控制器和處理單元對重置信號的識別以及重置信號的重置可以更快執(zhí)行。根據(jù)實(shí)施例,該方法還包括由連接到系統(tǒng)管理控制器的電子振蕩器或石英生成時(shí) 鐘信號,將由所述系統(tǒng)管理控制器中的電子振蕩器或石英生成的時(shí)鐘信號的頻率進(jìn)行分 頻,以使得時(shí)鐘信號的頻率適合系統(tǒng)控制器所需的頻率。該方法還可包括將重置信號從系統(tǒng)管理控制器提供到系統(tǒng)控制器,以及在處理單 元處理了重置信號后使重置信號無效。由于使重置信號無效的操作可以通過以上方法較快 地執(zhí)行,因此啟動(dòng)計(jì)算設(shè)備所需的時(shí)間可以減少。此外,計(jì)算設(shè)備可以配置為以上針對本發(fā)明的第一和/或第二方面所描述的那 樣。特別是,計(jì)算設(shè)備可以進(jìn)一步配置為以上針對本發(fā)明的第一方面所描述的那樣,方法可 進(jìn)一步包括針對本發(fā)明的第一方面所描述的方法的步驟。例如,在執(zhí)行上述重置操作后,該 方法還可以包括借助于引導(dǎo)控制單元的方式,經(jīng)由第一接口和第二接口將控制指令從引導(dǎo) 存儲(chǔ)器傳送到計(jì)算單元。通過組合這些方法,啟動(dòng)計(jì)算設(shè)備所需的時(shí)間可以被進(jìn)一步減少。 啟動(dòng)性能的改善可以使計(jì)算設(shè)備能夠滿足汽車應(yīng)用的系統(tǒng)啟動(dòng)要求。除非有相反指示,否則本發(fā)明的以上方面和實(shí)施例的特征可以相互結(jié)合。
通過結(jié)合附圖閱讀以下詳細(xì)描述,本發(fā)明的前述和其它特征和優(yōu)點(diǎn)將變得更加清 楚。在附圖中,相同的附圖標(biāo)記表示相同的元件。圖1是示出了根據(jù)本發(fā)明實(shí)施例的計(jì)算設(shè)備的示意性框圖。圖2是示出了相據(jù)本發(fā)明實(shí)施例的方法的流程圖。圖3是示出了根據(jù)本發(fā)明第二方面的方法的實(shí)施例的流程圖。圖4是示出了根據(jù)本發(fā)明第一方面的方法的實(shí)施例的流程圖。
具體實(shí)施例方式可以理解,給出實(shí)施例的以下描述僅僅是為了說明的目的,而不意味著限制。應(yīng)該 注意到,附圖僅僅是被認(rèn)為示意性的圖形表示,附圖中的元件也不一定是相互之間的比例。 相反,各種元件的圖形表示被選擇成使得它們的功能和一般目的對于本領(lǐng)域技術(shù)人員而言 變得明顯。在附圖中所示的功能塊或單元中的實(shí)施例的分割并不解釋為這些單元必須是 作為物理上分離的單元來實(shí)現(xiàn)的,但是所示或所描述的功能塊可以被實(shí)現(xiàn)為分離的單元、 電路、芯片或電路元件,但是一個(gè)或多個(gè)功能塊或單元也可以被實(shí)現(xiàn)為一個(gè)共同的電路、芯 片、電路元件或單元。圖1的示意性框圖示出了計(jì)算設(shè)備100,該計(jì)算設(shè)備包括計(jì)算單元101。計(jì)算單元 101包括中央處理單元102、系統(tǒng)控制器集線器103和工作存儲(chǔ)器104。在圖1的實(shí)施例中,計(jì)算設(shè)備100是基于Intel. Centrino Atom 平臺(tái)的,特別是基于Menlow或者M(jìn)enlow XL平臺(tái),且系統(tǒng)控制器集線器103是Poulsbo或者Poulsbo XL控制器集線器。CPU 102是 Intel Atom 處理器。應(yīng)該清楚的是,包括不同的處理器和系統(tǒng)控制器的其它平臺(tái)也是 可以用于本發(fā)明。存儲(chǔ)器104包括多個(gè)雙倍數(shù)據(jù)速率(data rate) 2 (DDR2)隨機(jī)存取存儲(chǔ) 器(RAM)模塊,它還可以包括其它類型的存儲(chǔ)器。計(jì)算設(shè)備100還包括系統(tǒng)管理控制器(SMC) 105。SMC 105可以控制例如功率通量 和風(fēng)扇速度的功能。在當(dāng)前實(shí)施例中,它還可以用于用信號通知一個(gè)重置事件給計(jì)算單元 101。它還可以例如用信號通知給SCH 103和平臺(tái)的其它元件要求一個(gè)重置信號。SMC 105 可以包括時(shí)鐘114和電源115,且可以在一個(gè)組合的芯片方案中實(shí)現(xiàn)。當(dāng)啟動(dòng)計(jì)算設(shè)備100時(shí),第一啟動(dòng)階段通常由硬件控制。該階段包括識別重置信 號,這是通過同步重置接口的有效時(shí)鐘信號的可用性控制的。除了時(shí)鐘信號,重置信號不能 被計(jì)算單元101處理。在傳統(tǒng)系統(tǒng)中,實(shí)時(shí)時(shí)鐘石英被用于生成例如32. SKHz頻率的時(shí)鐘信號,這種RTC 石英要求大于800ms的振蕩增強(qiáng)時(shí)間。這種高振蕩增強(qiáng)時(shí)間在自動(dòng)化環(huán)境中特別會(huì)遇到, 此時(shí)電池是不能用來運(yùn)行RTC石英的。附圖1的當(dāng)前實(shí)施例不使用RTC石英的時(shí)鐘信號,但是使用SMC 105的時(shí)鐘信號。 SMC 105可以自己包括石英振蕩器,或者可以連接振蕩器在SMC 105的外部(附圖1未示 出)。連接到SMC 105的石英振蕩器與RTC石英相比操作在更高的頻率,例如在MHz范圍。 結(jié)果,連接到SMC 105的振蕩器的振蕩增強(qiáng)時(shí)間比RTC石英的要短,可以是像IOms到20ms 這么短。系統(tǒng)管理控制器105包括一個(gè)或多個(gè)分頻器,用來降低時(shí)鐘信號的頻率。SCH 103 還可以要求具有32. 768kHz頻率的時(shí)鐘信號,這通常是由RTC的石英振蕩器生成的頻率。 SMC 105使時(shí)鐘信號的頻率適于SCH 103所要求的這個(gè)頻率。由于SMC 105提供給SCH 103的時(shí)鐘信號比傳統(tǒng)RTC的時(shí)鐘信號更早的可用,因 此SCH 103能夠更早地開始對重置信號進(jìn)行處理,且使重置信號無效的時(shí)間間隔會(huì)明顯減 少。SCH 103在啟動(dòng)時(shí)向CPU 102提供重置信號和時(shí)鐘信號。在計(jì)算設(shè)備100的操作期間, SMC 105繼續(xù)向SCH 103提供時(shí)鐘信號。由于SMC 105生成重置信號,在傳統(tǒng)系統(tǒng)中SMC 105被提供以RTC時(shí)鐘信號。由 于在當(dāng)前實(shí)施例中,SMC 105自己生成時(shí)鐘信號,這種將RTC時(shí)鐘信號反饋給SMC 105的操 作在本實(shí)施例中是不需要的。在上述的啟動(dòng)階段,可根據(jù)本領(lǐng)域已知的任意方法來執(zhí)行計(jì)算設(shè)備100的進(jìn)一步 的初始化。這可包括存儲(chǔ)器104的初始化,等。計(jì)算設(shè)備100的啟動(dòng)還要求將控制指令裝入到計(jì)算單元101中。這種包括這些控 制指令的引導(dǎo)代碼或引導(dǎo)應(yīng)用程序被存儲(chǔ)在引導(dǎo)存儲(chǔ)器106中,在本實(shí)施例中引導(dǎo)存儲(chǔ)器 106可以被實(shí)現(xiàn)為閃存。在計(jì)算設(shè)備100的啟動(dòng)期間引導(dǎo)代碼的裝入還可以稱作“初始程序 裝入”(PL)。在傳統(tǒng)計(jì)算設(shè)備中,引導(dǎo)代碼的裝入處理是通過相對慢的低引腳代碼(LPC) 總線107來執(zhí)行的,這種總線可以達(dá)到大約2MB每秒的速度,并直接連接到具有LPC接口的 閃存。因此在傳統(tǒng)系統(tǒng)中,裝入引導(dǎo)應(yīng)用程序所需的時(shí)間是由LPC接口 107的帶寬確定的。在圖1的實(shí)施例中,提供了引導(dǎo)控制單元108,它通過并行接口 109與引導(dǎo)存儲(chǔ)器 106連接。并行接口 109可以是例如8位接口。引導(dǎo)控制單元108是現(xiàn)場可編程門陣列(FPGA)或?qū)S眉呻娐?ASIC)。這些單元都可以被配置成用于快速有效地執(zhí)行特定功能。 引導(dǎo)控制單元108可以例如被配置為包括直接存儲(chǔ)器存取(DMA)控制器110。引導(dǎo)控制單 元108通過LPC總線107和通過PCIe總線111連接SCH 103。PCIe總線111提供的數(shù)據(jù) 傳送率比LPC總線107的明顯高很多。但,PCIe接口 111在計(jì)算設(shè)備100啟動(dòng)時(shí)通常是不 可用的,因?yàn)樗仨毐怀跏蓟_@樣,引導(dǎo)控制單元108訪問引導(dǎo)存儲(chǔ)器106,且通過LPC總線107將存儲(chǔ)在引導(dǎo) 存儲(chǔ)器106上的控制指令的第一部分傳送到SCH 103。這些指令被執(zhí)行且初始化PCIe接口 111。在這個(gè)初始引導(dǎo)期間,例如IOOkB到300kB的引導(dǎo)代碼可以被傳送到SCH 103。在初 始引導(dǎo)之后,引導(dǎo)控制單元108切換到PCIe接口 111。由于通過并行接口 109和PCIe接口 111的在引導(dǎo)存儲(chǔ)器106、引導(dǎo)控制單元108和SCH103之間的連接的帶寬高很多,因此引導(dǎo) 代碼的剩余部分可以與通過標(biāo)準(zhǔn)LPC總線相比高很多的速率傳送。例如,當(dāng)使用2MB大小 的引導(dǎo)代碼時(shí),與通過LPC總線直接從引導(dǎo)閃存裝入數(shù)據(jù)相比,傳送加快了約900ms。引導(dǎo) 數(shù)據(jù)還可以從其它可DMA的大容量存儲(chǔ)設(shè)備裝入,例如硬盤驅(qū)動(dòng)器、SD卡或其它類型的存 儲(chǔ)卡等,這種大容量存儲(chǔ)設(shè)備可具有數(shù)量級為幾百毫秒的時(shí)延。與通過LPC總線從安全數(shù) 字(SD)卡裝入數(shù)據(jù)相比,本發(fā)明的計(jì)算設(shè)備仍能夠?qū)崿F(xiàn)使從引導(dǎo)閃存106進(jìn)行的引導(dǎo)數(shù)據(jù) 的裝入加快300ms。如上所述,引導(dǎo)控制單元108可以被實(shí)現(xiàn)為ASIC或FPGA。與利用FPGA實(shí)現(xiàn)相比, FPGA本身需要一定時(shí)間用于初始化,ASIC裝入時(shí)間大約要短150ms-300ms。所有或者部分的控制指令可以被提供為引導(dǎo)存儲(chǔ)器106中的壓縮引導(dǎo)圖象。在通 過PCIe 111進(jìn)行的引導(dǎo)圖象的DMA傳送期間,中央處理單元102可以解壓縮引導(dǎo)圖象數(shù) 據(jù)。這種解壓縮可以相對較快的執(zhí)行,使得在引導(dǎo)圖象被傳送到存儲(chǔ)器104之后不久,就可 以獲得解壓縮格式的相應(yīng)數(shù)據(jù)。通過由系統(tǒng)管理控制器105提供重置所需的RTC時(shí)鐘信號和通過經(jīng)由LPC 總線107和PCIe總線111傳送引導(dǎo)應(yīng)用程序,當(dāng)前實(shí)施例的計(jì)算設(shè)備100可實(shí)現(xiàn)約 500ms-1000ms甚至更多的啟動(dòng)性能的提高。啟動(dòng)計(jì)算設(shè)備100所需的時(shí)間因此可以減半。 結(jié)果,計(jì)算設(shè)備100能夠滿足對汽車應(yīng)用的計(jì)算設(shè)備提出的嚴(yán)格要求。應(yīng)該清楚,在其它實(shí)施例中,SCH 103可以從標(biāo)準(zhǔn)RTC時(shí)鐘接收時(shí)鐘信號,同時(shí)如 上所述那樣傳送引導(dǎo)設(shè)備100所需的控制指令。在其它實(shí)施例中,標(biāo)準(zhǔn)的引導(dǎo)過程可例如 僅僅經(jīng)由LPC總線從引導(dǎo)存儲(chǔ)器傳送引導(dǎo)應(yīng)用程序來實(shí)現(xiàn),同時(shí)如上所述那樣由SMC 105 提供時(shí)鐘信號。與傳統(tǒng)計(jì)算設(shè)備相比,這樣的實(shí)施例仍可以提供提高的啟動(dòng)性能,但圖1的 設(shè)備會(huì)實(shí)現(xiàn)甚至更好的性能。計(jì)算設(shè)備100可以包括更多的對于傳統(tǒng)計(jì)算設(shè)備而言很常用的組件。這些組件 對于本領(lǐng)域技術(shù)人員是公知的,因此在這里沒有更詳細(xì)的描述。這樣的例子包括串行高級 技術(shù)附件(SATA)接口 112和連接的硬盤驅(qū)動(dòng)器(HDD) 113、用于生成其它時(shí)鐘信號的時(shí)鐘 114、以及提供電能給計(jì)算設(shè)備100的電源115。時(shí)鐘114可以例如用于向CPU 102和PCIe 組件提供時(shí)鐘信號。要注意,時(shí)鐘114提供的時(shí)鐘信號與在計(jì)算設(shè)備100啟動(dòng)時(shí)處理重置 信號所需的時(shí)鐘信號不同。SMC 105提供的和處理重置信號時(shí)使用的時(shí)鐘信號還可以在計(jì) 算設(shè)備100的整個(gè)操作中提供。此外,提供視頻輸出,以及用于將串行數(shù)字視頻輸出(SDVO)信號轉(zhuǎn)換為低壓差分信號(LVDS)的轉(zhuǎn)換器116。該信號可以提供給顯示器。應(yīng)該清楚,圖1所示的某些組件是 可選的,例如單元112-116,以及其它的LVDS、USB、SDI0和SM總線。計(jì)算設(shè)備100可以例如被實(shí)現(xiàn)為車輛的控制單元。例如它可以控制車輛的燈光、 聲音或與引擎相關(guān)的功能。但計(jì)算設(shè)備100也可以在諸如便攜式計(jì)算設(shè)備的其它設(shè)備中實(shí) 現(xiàn),比加便攜式計(jì)算機(jī)、智能電話、移動(dòng)因特網(wǎng)設(shè)備、個(gè)人數(shù)字助理等。本領(lǐng)域的技術(shù)人員會(huì) 提出其它的實(shí)施方式,且本發(fā)明的范圍并不限于上述實(shí)施方式。圖2示出了根據(jù)本發(fā)明的實(shí)施例的方法的流程圖。該方法可以在圖1所示的計(jì)算 設(shè)備100上實(shí)現(xiàn)。該方法包括為計(jì)算設(shè)備加電(步驟200)并執(zhí)行重置操作(步驟300)。 重置操作300將在以下相對于圖3更加詳細(xì)地描述。在步驟400,執(zhí)行初始程序裝入。初始 程序裝入在以下相對于圖4中更加詳細(xì)地描述。在這些啟動(dòng)操作后,根據(jù)計(jì)算設(shè)備特定的 功能性,計(jì)算設(shè)備可以操作了,且可以在步驟500中操作。應(yīng)該清楚,圖2所示的啟動(dòng)過程可以包括其它對于計(jì)算設(shè)備的啟動(dòng)過程很常見的 步驟。這種附加的步驟可以包括其它初始化階段,例如初始化計(jì)算設(shè)備的芯片組,該芯片組 比如包括南橋和北橋,執(zhí)行存儲(chǔ)器初始化等。這種過程對于技術(shù)人員而言是公知的,在這里 沒有進(jìn)行更詳細(xì)的描述。圖3示出了根據(jù)本發(fā)明的第二方面的實(shí)施例的方法的流程圖。在步驟301中,連接 到SMC 105的電子振蕩器被啟動(dòng)來生成時(shí)鐘信號。在SMC 105中,執(zhí)行分頻以使時(shí)鐘信號 的頻率適合SCH 103所需的頻率(步驟302)。在步驟303,將重置信號從SMC 105提供到 SCH 103。此外,在步驟304,由SMC 105中的分頻生成的時(shí)鐘信號被提供到系統(tǒng)控制器集線 器103。SCH 103將重置信號(步驟305)和時(shí)鐘信號(步驟306)提供到處理單元102。注 意,將重置信號和時(shí)鐘信號提供到SCH和提供到處理單元的順序可以是不同的,例如顛倒 的。這些信號可以被異步提供。對重置的識別通常在經(jīng)過一定數(shù)目的時(shí)鐘周期之后發(fā)生。 因此,重置的識別可以同步發(fā)生。由于來自SMC 105的時(shí)鐘信號在計(jì)算設(shè)備100加電后不 久就可用了,因此CPU 102可以在經(jīng)過非常短的延遲后就開始處理重置信號(步驟307)。然后在步驟308,使重置信號無效。與使用來自實(shí)時(shí)時(shí)鐘的時(shí)鐘信號來處理重置信 號的系統(tǒng)相比,重置信號可以提前幾百微秒被無效。在重置信號被變得無效之后,計(jì)算設(shè)備 100的啟動(dòng)程序會(huì)繼續(xù)(步驟309)。附圖4是根據(jù)本發(fā)明第一方面的實(shí)施例的方法的流程圖。在步驟401,引導(dǎo)控制 單元108訪問存儲(chǔ)在引導(dǎo)存儲(chǔ)器106中的控制指令的第一部分。引導(dǎo)控制單元108將控制 指令的第一部分經(jīng)由LPC總線107傳送到計(jì)算單元101。在圖1的實(shí)施例中,指令被傳送 到SCH 103,盡管應(yīng)該清楚的,其它控制器或單元可以被用于提供LPC接口。這種傳送可以 是例如逐位發(fā)生的,而不需要將所述控制指令的更大部分緩沖在引導(dǎo)控制單元108中???制指令的第一部分可以例如包括100kB-300kB的數(shù)據(jù)。在步驟403,例如由SCH 103和CPU 102處理控制指令的第一部分。處理結(jié)果是,PCIe總線111在步驟104中被初始化。在PCIe 總線初始化之后,引導(dǎo)應(yīng)用程序的傳送被切換到PCIe總線。因此,引導(dǎo)控制單元將控制指 令的第二部分經(jīng)由PCIe總線111從引導(dǎo)存儲(chǔ)器106傳送到計(jì)算單元101 (步驟405)。控制 指令的第二部分的傳送可以由DMA控制器110來控制,且可以直接(S卩,經(jīng)由SCH 103)傳 送到計(jì)算單元101的存儲(chǔ)器104中。如果控制指令以壓縮格式存儲(chǔ)在引導(dǎo)存儲(chǔ)器106中, CPU 102可以在DMA傳送期間解壓縮數(shù)據(jù)(步驟406)。因?yàn)榻鈮嚎s可以與數(shù)據(jù)傳送并行執(zhí)行,因此解壓縮產(chǎn)生的延遲可以忽略不計(jì)。在引導(dǎo)應(yīng)用程序被裝入存儲(chǔ)器104中之后,計(jì)算 設(shè)備100可以根據(jù)這些控制指令進(jìn)行操作(步驟407)??刂浦噶羁梢酝瑯影ㄓ?jì)算設(shè)備 100的基本操作系統(tǒng)。針對圖3和圖4所描述的方法可以包括其它步驟,這些步驟在系統(tǒng)重啟期間或者 在引導(dǎo)應(yīng)用程序的裝入期間通常是分別執(zhí)行的。這些步驟也可以采用不同順序或者并行執(zhí) 行。例如,可以并行執(zhí)行時(shí)鐘信號的生成和在步驟304中提供時(shí)鐘信號給SCH以及在步驟 305中提供重置信號給SCH。概括的說,本發(fā)明提供了一種啟動(dòng)性能被改進(jìn)的計(jì)算設(shè)備??梢岳帽景l(fā)明實(shí)現(xiàn) 的這種改進(jìn)使得計(jì)算設(shè)備可以用于汽車應(yīng)用中,因?yàn)檫@種計(jì)算設(shè)備能夠滿足這種環(huán)境的要 求。盡管在此公開了本發(fā)明的特定實(shí)施例,但可以進(jìn)行各種變化和修改,而不會(huì)脫離 本發(fā)明的范圍。本發(fā)明的實(shí)施例在所有方面被考慮為示意性的而不是限制性的,并且權(quán)利 要求的含義和相同范圍內(nèi)進(jìn)行的所有變化都意味著包含于其中。
權(quán)利要求
一種計(jì)算設(shè)備,包括計(jì)算單元,包括工作存儲(chǔ)器和處理單元,引導(dǎo)存儲(chǔ)器,包括用于操作所述計(jì)算機(jī)設(shè)備的控制指令,該控制指令在所述計(jì)算設(shè)備啟動(dòng)時(shí)被傳送到所述計(jì)算單元,和引導(dǎo)控制單元,通過至少第一接口和第二接口連接所述計(jì)算單元,且通過第三接口連接所述引導(dǎo)存儲(chǔ)器,其中所述引導(dǎo)控制單元被配置為經(jīng)由所述第一接口將所述控制指令的第一部分從所述引導(dǎo)存儲(chǔ)器傳送到所述計(jì)算單元,以及經(jīng)由所述第二接口將所述控制指令的第二部分從所述引導(dǎo)存儲(chǔ)器傳送到所述計(jì)算單元。
2.根據(jù)權(quán)利要求1所述的計(jì)算設(shè)備,其中所述控制指令的第二部分比所述第一部分 大,且其中所述第二接口被配置為以比所述第一接口更快的速度傳送數(shù)據(jù)。
3.根據(jù)權(quán)利要求1所述的計(jì)算設(shè)備,其中所述引導(dǎo)控制單元包括直接存儲(chǔ)器存取控制 器,該直接存儲(chǔ)器存取控制器用于經(jīng)由所述第二接口將所述控制指令的所述第二部分傳送 到所述計(jì)算單元的工作存儲(chǔ)器中。
4.根據(jù)權(quán)利要求1所述的計(jì)算設(shè)備,其中所述引導(dǎo)控制單元包括現(xiàn)場可編程門陣列或 者專用集成電路。
5.根據(jù)權(quán)利要求1所述的計(jì)算設(shè)備,其中所述第一接口是低引腳數(shù)總線,且所述第二 接口是周邊元件互連快速總線。
6.根據(jù)權(quán)利要求1所述的計(jì)算設(shè)備,其中所述計(jì)算單元包括系統(tǒng)控制器集線器,該系 統(tǒng)控制器集線器提供所述第一接口和所述第二接口,且連接所述工作存儲(chǔ)器。
7.根據(jù)權(quán)利要求6所述的計(jì)算設(shè)備,其中所述引導(dǎo)存儲(chǔ)器包括閃存,所述計(jì)算單元包 括具有所述系統(tǒng)控制器集線器的Intel Menlow平臺(tái),且所述處理單元是x86兼容微處理
8.根據(jù)權(quán)利要求1所述的計(jì)算設(shè)備,其中所述控制指令的第一部分包括用于初始化所 述第二接口的控制指令,所述引導(dǎo)控制單元被配置為在所述第二接口初始化后傳送所述控 制指令的第二部分。
9.一種操作計(jì)算設(shè)備的方法,該計(jì)算設(shè)備包括計(jì)算單元、引導(dǎo)存儲(chǔ)器和引導(dǎo)控制單元, 其中所述計(jì)算單元包括工作存儲(chǔ)器和處理單元,所述引導(dǎo)存儲(chǔ)器包括用于操作所述計(jì)算設(shè) 備的控制指令,該控制指令在所述計(jì)算設(shè)備啟動(dòng)時(shí)被傳送到所述計(jì)算單元,所述引導(dǎo)控制 單元通過至少第一接口和第二接口與所述計(jì)算單元連接,且通過第三接口與所述弓I導(dǎo)存儲(chǔ) 器連接,所述方法包括以下步驟通過所述弓I導(dǎo)控制單元從所述弓I導(dǎo)存儲(chǔ)器取得所述控制指令,經(jīng)由所述第一接口將所述控制指令的第一部分傳送到所述計(jì)算單元,和經(jīng)由所述第二接口將所述控制指令的第二部分傳送到所述計(jì)算單元。
10.根據(jù)權(quán)利要求9所述的方法,其中,所述控制指令以壓縮格式存儲(chǔ)在所述引導(dǎo)存儲(chǔ) 器中,所述方法還包括以下步驟在所述壓縮的控制指令在所述計(jì)算單元處被接收到之后,由所述處理單元解壓縮所述 控制指令。
11.根據(jù)權(quán)利要求9所述的方法,其中所述計(jì)算單元還包括系統(tǒng)控制器集線器,該系統(tǒng)控制器集線器提供所述第一接口和所述第二接口,并與所述工作存儲(chǔ)器連接。
12.—種計(jì)算設(shè)備,包括計(jì)算單元,包括系統(tǒng)控制器、工作存儲(chǔ)器和處理單元,所述系統(tǒng)控制器包括用于接收時(shí) 鐘信號的時(shí)鐘接口,所述系統(tǒng)控制器還被配置為在所述計(jì)算設(shè)備啟動(dòng)時(shí)將重置信號和接收 的時(shí)鐘信號提供給所述處理單元,所述處理單元被配置為使用所提供的時(shí)鐘信號處理所述 重置信號,和系統(tǒng)管理控制器,連接所述系統(tǒng)控制器的所述時(shí)鐘接口,其中所述系統(tǒng)管理控制器用 于經(jīng)由所述時(shí)鐘接口向所述系統(tǒng)控制器提供時(shí)鐘信號。
13.根據(jù)權(quán)利要求12所述的計(jì)算設(shè)備,還包括用于生成所述時(shí)鐘信號的電子振蕩器, 該電子振蕩器連接到所述系統(tǒng)管理控制器。
14.根據(jù)權(quán)利要求13所述的計(jì)算設(shè)備,其中所述電子振蕩器包括石英晶體振蕩器,并 生成頻率大于IMHz的時(shí)鐘信號,所述系統(tǒng)控制器用于操作頻率低于IMHz的時(shí)鐘信號。
15.根據(jù)權(quán)利要求14所述的計(jì)算設(shè)備,其中所述系統(tǒng)管理控制器包括分頻器,該分頻 器用于將所述電子振蕩器生成的時(shí)鐘信號分頻,以使得所述時(shí)鐘信號的頻率適合所述系統(tǒng) 控制器所需的頻率。
16.根據(jù)權(quán)利要求12所述的計(jì)算設(shè)備,其中所述系統(tǒng)控制器是系統(tǒng)控制器集線器,其 中所述計(jì)算單元包括Intel Menlow平臺(tái),且其中所述處理單元是x86兼容微處理器。
17.根據(jù)權(quán)利要求12所述的計(jì)算設(shè)備,其中所述系統(tǒng)管理控制器用于向所述系統(tǒng)控制 器提供所述重置信號。
18.一種操作計(jì)算設(shè)備的方法,該計(jì)算設(shè)備包括計(jì)算單元,該計(jì)算單元包括系統(tǒng)控制 器、工作存儲(chǔ)器和處理單元,所述系統(tǒng)控制器包括用于接收時(shí)鐘信號的時(shí)鐘接口,所述計(jì)算 設(shè)備還包括與所述系統(tǒng)控制器的所述時(shí)鐘接口連接的系統(tǒng)管理控制器,該方法包括以下步 驟在所述計(jì)算設(shè)備啟動(dòng)時(shí)經(jīng)由所述時(shí)鐘接口將時(shí)鐘信號從所述系統(tǒng)管理控制器提供到 所述系統(tǒng)控制器,由所述系統(tǒng)控制器向所述處理單元提供重置信號和接收的時(shí)鐘信號,和在所述處理單元,利用所提供的時(shí)鐘信號處理所述重置信號。
19.根據(jù)權(quán)利要求18所述的方法,還包括通過連接到所述系統(tǒng)管理控制器的電子振蕩器或石英生成所述時(shí)鐘信號,在所述系統(tǒng)管理控制器中對所述電子振蕩器或石英生成的時(shí)鐘信號進(jìn)行分頻,以使所 述時(shí)鐘信號的頻率適合所述系統(tǒng)控制器所需的頻率。
20.根據(jù)權(quán)利要求18或19所述的方法,還包括將所述重置信號從所述系統(tǒng)管理控制器提供到所述系統(tǒng)控制器,以及在所述處理單元處理所述重置信號后,使所述重置信號無效。
21.一種計(jì)算設(shè)備,包括計(jì)算單元,包括工作存儲(chǔ)器、處理單元,以及連接所述存儲(chǔ)器和所述處理單元的系統(tǒng)控 制器集線器,引導(dǎo)存儲(chǔ)器,包括用于操作所述計(jì)算設(shè)備的控制指令,該控制指令在所述計(jì)算設(shè)備啟 動(dòng)時(shí)被傳送到所述計(jì)算單元,和引導(dǎo)控制單元,通過至少第一接口和第二接口連接所述計(jì)算單元的系統(tǒng)控制器集線 器,且通過第三接口連接所述引導(dǎo)存儲(chǔ)器,其中所述引導(dǎo)控制單元被配置為通過所述第一接口將所述控制指令的第一部分從所 述引導(dǎo)存儲(chǔ)器傳送到所述計(jì)算單元,以及通過所述第二接口將所述控制指令的第二部分從 所述弓I導(dǎo)存儲(chǔ)器傳送到所述計(jì)算單元,所述第二接口被配置為以比所述第一接口更快的速 度傳送數(shù)據(jù)。
全文摘要
本發(fā)明涉及一種計(jì)算設(shè)備,包括計(jì)算單元和引導(dǎo)存儲(chǔ)器,計(jì)算單元包括工作存儲(chǔ)器和處理單元,引導(dǎo)存儲(chǔ)器包括用于操作計(jì)算設(shè)備的控制指令,控制指令在計(jì)算設(shè)備啟動(dòng)時(shí)被傳送到計(jì)算單元。
文檔編號G06F9/445GK101901155SQ20101022918
公開日2010年12月1日 申請日期2010年3月11日 優(yōu)先權(quán)日2009年3月11日
發(fā)明者岡瑟·克拉夫特, 布魯諾·阿喬爾, 彼得·基斯, 托馬斯·厄福思, 阿爾諾·庫茨基 申請人:哈曼貝克自動(dòng)系統(tǒng)股份有限公司