專利名稱:電子設(shè)備和提供電子設(shè)備的固件的方法
技術(shù)領(lǐng)域:
本發(fā)明構(gòu)思涉及一種為執(zhí)行電子設(shè)備的多種功能的組件提供固件的電子設(shè)備,并還涉及一種將固件提供給電子設(shè)備的方法。
背景技術(shù):
電子設(shè)備通常在單個板子上有若干組件,每個組件執(zhí)行多種功能。由于在這樣的設(shè)備的單個板子上的組件的數(shù)量可以很多,因此板子占用的空間也必然增加。此外,因為很多存儲器空間通常必須包含于電子設(shè)備的這樣的單個板子上,所以這樣的電子設(shè)備的設(shè)計 變得復(fù)雜。 將參照圖I解釋這樣的電子設(shè)備。如圖I所示,電子設(shè)備100包括系統(tǒng)總線110、
主控制單元120、主存儲器單元130、多個組件140-1.....140-n和多個組件存儲器單元
150-1、、150_no在這個示例中,主存儲器單元130存儲在電子設(shè)備100中執(zhí)行的主程序,并且多個組件存儲器單元150-1、 、150-n存儲多個組件140-1、 、140_n的固件。也就是說,包含于電子設(shè)備100中的主控制單元120和多個組件140-1、. . .、140_n
訪問主存儲器單元130,并還各自訪問它們自己的多個組件存儲器單元150-1.....150-n,
并執(zhí)行存儲于其中的程序和固件,從而電子設(shè)備100可通過利用系統(tǒng)總線110交換數(shù)據(jù)有機(jī)地操作。然而,提供單獨(dú)的組件存儲器單元150-1、. . .、150-n以存儲多個組件140-1、...、140-n的固件使板子復(fù)雜,需要在每個生產(chǎn)過程中以及每當(dāng)軟件更新的時候?qū)γ總€個別的存儲器單元進(jìn)行適當(dāng)?shù)靥幚怼?br>
發(fā)明內(nèi)容
一個或更多的示例提供了一種電子設(shè)備,當(dāng)電子設(shè)備被啟動,并且多個組件使用啟動代碼與系統(tǒng)總線連接時,控制單元通過系統(tǒng)總線,從通用存儲器單元將對應(yīng)的固件提供給每個組件。這方面還涉及這樣一種提供所提及的固件的方法。根據(jù)示例性實施例的一方面,提供了一種電子設(shè)備,包括多個組件,執(zhí)行設(shè)備的多種功能;通用存儲器單元,存儲組件的固件;系統(tǒng)總線,連接組件和通用存儲器單元;控制單元,當(dāng)電子設(shè)備被啟動時,將對應(yīng)于每個組件的固件發(fā)送到組件本身,其中,當(dāng)電子設(shè)備被啟動時,使用啟動代碼將組件與系統(tǒng)總線連接。如果電子設(shè)備被啟動,則多個組件可使用啟動代碼初始化系統(tǒng)總線并嘗試與系統(tǒng)總線連接。啟動代碼可包括用于初始化組件的信息和用于初始化系統(tǒng)總線的信息。
啟動代碼可以是存儲于組件內(nèi)的屏蔽式ROM的代碼,并在制造組件時被設(shè)定。系統(tǒng)總線可以是任意數(shù)量的種類,包括但不限于PCI總線、USB總線、IDE總線、SATA總線和IEEE 1394總線。多個組件的固件可存儲于通用存儲器單元的指定的預(yù)定區(qū)域。一旦系統(tǒng)總線確認(rèn)組件的連接,控制單元可從其在通用存儲器單元的指定區(qū)域的存儲器發(fā)送已連接的組件的固件。多個組件中的每個組件可具有各自的閃存,在閃存中存儲了各自的發(fā)送的固件。根據(jù)另一示例性實施例的一方面,提供了一種提供電子設(shè)備的固件的方法,該方法包括當(dāng)電子設(shè)備被啟動時,經(jīng)由系統(tǒng)總線與多個組件中的每個組件建立連接;從通用
存儲器單元經(jīng)由系統(tǒng)總線將各自的固件發(fā)送到多個組件中的每個組件;多個組件執(zhí)行每個接收到的各自的固件,其中,通用存儲器單元存儲并支持多個組件中的每個組件的固件。如果電子設(shè)備被啟動,則連接可包括使用啟動代碼初始化系統(tǒng)總線,并且多個組件嘗試連接系統(tǒng)總線。啟動代碼可包括用于初始化組件的信息和用于初始化系統(tǒng)總線的信息。啟動代碼可以是存儲于組件內(nèi)的屏蔽式ROM的代碼,并在組件被制造時被設(shè)定。系統(tǒng)總線可以是任意數(shù)量的種類,包括但不限于PCI總線、USB總線、IDE總線、SATA總線和IEEE 1394總線。組件的固件可存儲于通用存儲器單元的指定區(qū)域。一旦組件通過系統(tǒng)總線的連接被確認(rèn),固件的接收可包括從其在通用存儲器單元的指定區(qū)域的存儲器接收對應(yīng)于組件的固件。該方法還可包括將接收的固件存儲在多個組件中的每個組件各自的閃存中。
通過參照附圖對特定的示例性實施例進(jìn)行描述,上述和/或其它方面將會更加清楚,其中圖I是示出相關(guān)的電子設(shè)備的框圖;圖2是示出根據(jù)示例性實施例的電子設(shè)備的框圖;圖3是示出根據(jù)示例性實施例的電子設(shè)備的固件的配置的視圖;圖4是以簡化的形式示出根據(jù)示例性實施例的提供電子設(shè)備的固件的方法的流程圖;以及圖5是以簡化的形式示出根據(jù)示例性實施例的組件接收固件的方法的流程圖。
具體實施例方式以下,參照附圖來更詳細(xì)地說明特定示例性實施例。在接下來的說明中,即使在不同的附圖中,相同的附圖標(biāo)號通常用于表示相同的元件。在說明中闡述的細(xì)節(jié)(諸如詳細(xì)的構(gòu)造和元件)被提供,以幫助讀者獲得對本發(fā)明構(gòu)思和示例性實施例的全面了解。然而,本發(fā)明構(gòu)思自身比示例性實施例更廣泛,因此應(yīng)理解很多細(xì)節(jié)僅僅是為了解釋和教導(dǎo)而被提供;很多下文所述的特定細(xì)節(jié)不應(yīng)被視為實踐本發(fā)明構(gòu)思的必須。此外,為了避免在不必要的細(xì)節(jié)上使發(fā)明構(gòu)思的討論難以理解,公知的功能或構(gòu)造將不做詳細(xì)說明。圖2是示出根據(jù)示例性實施例的電子設(shè)備200的框圖。如圖2所示,根據(jù)示例性實施例的電子設(shè)備200可包括系統(tǒng)總線210、主控制單元220、通用存儲器單元230和多個
組件240-1.....240-n。在這種情況下,根據(jù)示例性實施例的電子設(shè)備200可被認(rèn)為是任
意數(shù)量的現(xiàn)代電子設(shè)備(諸如,計算機(jī)、平板電腦、智能電視、智能手機(jī)等)。系統(tǒng)總線210將主控制單元220、通用存儲器單元230和多個組件240_1、...、240-n互相連接。在此,“連接”可被理解為意味著系統(tǒng)總線提供了電子通路,主控制單元220、通用存儲器單元230和多個組件240-1、. . .、240_n可通過該電子通路進(jìn)行通信。具體地講,在控制單元220的控制下,系統(tǒng)總線210將通用存儲器單元230和多個組
件240-1.....240-n連接,用作將存儲在通用存儲器單元230的指定區(qū)域中的多個組件 240-1、 、240-n的固件發(fā)送到多個對應(yīng)組件240-1、 ,240-n的通路。在這種情況下,PCI總線、USB總線、IDE總線、AGP總線、SATA總線和IEEE 1394總線中的至少一種可被用作系統(tǒng)總線210。例如,如果組件240是圖形卡,則PCI總線或SATA總線可被用作系統(tǒng)總線210,如果組件240是Wi-Fi模塊,則USB總線可被用作系統(tǒng)總線210,并且如果組件240是掃描儀或打印機(jī),則IEEE 1394總線可被用作系統(tǒng)總線210。然而,系統(tǒng)總線210不限于上面提到的系統(tǒng)總線,并且本發(fā)明構(gòu)思可被應(yīng)用于多種系統(tǒng)總線。例如,也可使用工業(yè)標(biāo)準(zhǔn)架構(gòu)(ISA)總線、微通道架構(gòu)(MCA)總線、擴(kuò)展工業(yè)標(biāo)準(zhǔn)架構(gòu)(EISA)總線或加速圖形端口(AGP)總線。此外,提供示出部分之間的通信通路的結(jié)構(gòu)可以以任何形式的硬件來實現(xiàn),包括任何類型的實際的總線或互連。多級的總線也可被實現(xiàn),并且所有的這些合在一起可被理解為在系統(tǒng)總線的范圍內(nèi)。主控制單元220控制電子設(shè)備200,并且可被理解為包括物理計算機(jī)處理器。可根據(jù)通過用戶輸入單元(未示出)輸入的用戶的命令執(zhí)行控制。具體地講,主控制單元220根據(jù)用戶的命令控制存儲于通用存儲器單元230中的主程序。此外,當(dāng)電子設(shè)備200被啟動時,主控制單元220被通電。當(dāng)主控制單元220被通電時,主控制單元220初始化通用存儲器單元230并檢查通用存儲器單元230。也就是說,主控制單元220通過系統(tǒng)總線210與通用存儲器單元230建立連接。接下來,當(dāng)組件240通過例如執(zhí)行啟動代碼程序與系統(tǒng)總線210建立連接時,主控制單元220檢查組件240并控制通用存儲器單元230以發(fā)送對應(yīng)于多個組件240-1、...、240-n中的至少一個的固件。在這種情況下,固件代表存儲于存儲介質(zhì)中用于控制硬件的程序。此外,主控制單元220可通過將組件各自的固件發(fā)送到組件來控制組件的復(fù)位時序。在這種情況下,主控制單元220可被實施為中央處理單元(CPU)或應(yīng)用處理器(AP)。通用存儲器單元230存儲多種程序和數(shù)據(jù)。具體地講,通用存儲器單元230不僅
可存儲主控制單元220執(zhí)行的主程序,還可存儲多個組件240-1.....240-n的固件。這樣
的固件可存儲在指定區(qū)域。將固件存儲在通用存儲器單元230的指定區(qū)域使快速發(fā)送固件成為可能。在這種情況下,通用存儲器單元230可被實施為例如閃存或硬盤。
組件240執(zhí)行電子設(shè)備200的多種功能。在示例性實施例中,所述設(shè)備200是通用計算機(jī)等,根據(jù)示例性實施例的組件240可被理解為不僅包括光學(xué)設(shè)備(諸如CD-ROM和DVD-ROM),還包括圖形卡、音頻編解碼器、Wi-Fi模塊、掃描儀、打印機(jī)、鍵盤、鼠標(biāo)等。具體地講,組件240不包括用于在外部存儲固件的單獨(dú)的存儲器,而是接收存儲于通用存儲器單元230的固件并操作接收到的固件。具體地講,當(dāng)電子設(shè)備200被啟動時,組件240被通電。一旦組件240被通電,組件240使用存儲在屏蔽式ROM等中的啟動代碼與系統(tǒng)總線建立連接。在這種情況下,啟動代碼是從組件240被制造開始就存儲于組件240的屏蔽式ROM中的代碼,并且是訪問基本的系統(tǒng)程序的代碼。具體地講,啟動代碼存儲組件240和系統(tǒng)總線210的 初始化信息,并使用組件240和系統(tǒng)總線210的初始化信息連接到系統(tǒng)總線210。當(dāng)組件240與系統(tǒng)總線210建立連接時,在主控制單元220的控制之下,組件240從通用存儲器單元230的其指定的存儲區(qū)域接收固件。將參照圖3解釋多個組件
240-1.....240-n接收固件的方法。圖3是用于解釋根據(jù)示例性實施例的組件接收固件的
方法的視圖。如圖3所示,多個組件240-1、. . .、240-n的固件存儲在通用存儲器單元230的指定區(qū)域。當(dāng)?shù)谝唤M件240-1與系統(tǒng)總線210連接(即,建立連接)時,第一組件240-1從通用存儲器單元230接收對應(yīng)的第一組件固件(F/W I),并且當(dāng)?shù)诙M件240-2與系統(tǒng)總線210連接時,第二組件240-2從通用存儲器單元230接收對應(yīng)的第二組件固件(F/W 2)。以此類推,當(dāng)?shù)趎組件240-n與系統(tǒng)總線210連接時,第n組件240_n從通用存儲器單元230接收對應(yīng)的第n組件固件(F/W n)。當(dāng)組件240接收固件時,組件240執(zhí)行接收到的固件。此外,組件240可包括組件內(nèi)的閃存,并在閃存中存儲接收到的固件。如上所述,組件240不需要具有單獨(dú)的組件存儲器單元,并且通過接收先前存儲在通用存儲器單元230的固件來進(jìn)行操作。在一示例性實施例中,每個固件程序在制造過程中以集成的形式被存儲在儲存存儲器中。在這個實施例中,不需要單獨(dú)的輸入設(shè)備或存儲固件的輸入方法。此外,當(dāng)通電時,組件240可迅速操作。另外,組件240可在自己的閃存中存儲接收到的固件。此外,由于每個固件和程序被存儲在一個通用存儲器單元230中,因此當(dāng)更新固件時,不需要逐個更新固件,而且可通過僅僅更新通用存儲器單元230來更新每個固件。以下,將參照圖4解釋用于提供電子設(shè)備200的固件的方法。圖4是用于解釋根據(jù)示例性實施例的提供電子設(shè)備200的固件的方法的流程圖。當(dāng)電子設(shè)備100被啟動時,主控制單元220和組件240分別被通電(S410)。當(dāng)主控制單元220被通電時,主控制單元220檢查通過系統(tǒng)總線210連接的通用存儲器單元230 (S420)。也就是說,主控制單元220與系統(tǒng)總線210連接并控制通用存儲器單元230。此外,當(dāng)組件240被通電時,組件240操作啟動代碼(S430)以與系統(tǒng)總線210建立連接。在這種情況下,啟動代碼是從組件240被制造開始存儲于例如組件240的屏蔽式ROM中的代碼,并且是訪問基本系統(tǒng)程序的代碼。具體地講,啟動代碼存儲組件240和系統(tǒng)總線210的初始化信息,并使用組件240和系統(tǒng)總線210的初始化信息連接到系統(tǒng)總線210。
當(dāng)組件240使用啟動代碼與系統(tǒng)總線210連接時,主控制單元220檢查組件(S450),并且組件240檢查主控制單元220 (S455)。也就是說,隨著主控制單元220和組件240與系統(tǒng)總線210連接,它們互相識別。當(dāng)主控制單元220識別組件240時,主控制單元220將固件從通用存儲器單元230的指定區(qū)域發(fā)送到對應(yīng)的組件240 (S460)。例如,當(dāng)組件240是圖形卡時,主控制單元220可使用PCI總線或AGP總線將圖形卡的固件發(fā)送到圖形卡。當(dāng)組件240是Wi-Fi模塊時,主控制單元220可使用USB總線將Wi-Fi模塊的固件發(fā)送到Wi-Fi模塊。這樣,主控制單元220可使用系統(tǒng)總線210將多種組件的固件發(fā)送到對應(yīng)的組件。當(dāng)主控制單元220發(fā)送對應(yīng)的固件時,組件240可執(zhí)行復(fù)位操作并隨后執(zhí)行固件(S470)。在這種情況下,組件240可將發(fā)送的固件存儲在其自有的閃存中。如上所述,因為組件240已被提供組件240的固件,所以組件240不需要具有單獨(dú)的存儲器。這不僅簡化了板子的制造過程,還使更新固件的過程更簡單更快。、
接下來,將參照圖5解釋組件240接收固件的方法。圖5是用于解釋根據(jù)示例性實施例的組件240接收固件的方法的流程圖。首先,組件240確定電子設(shè)備200是否被啟動(S510)。當(dāng)電子設(shè)備200被啟動時(S510-是),組件240被通電(S520)。當(dāng)組件240被通電時,使用啟動代碼將組件240與系統(tǒng)總線210連接(S530)。具體地講,組件240使用組件240和系統(tǒng)總線210的初始化信息來初始化系統(tǒng)總線210,并與系統(tǒng)總線210連接。當(dāng)組件240與系統(tǒng)總線210連接時,在主控制單元220的控制下,組件240接收固件(S540)。當(dāng)組件240接收固件時,組件240執(zhí)行接收到的固件(S550)。如上所述,根據(jù)示例性實施例的提供固件的方法允許組件240通過使用啟動代碼與系統(tǒng)總線210連接,從通用存儲器單元230而不是單獨(dú)的存儲器接收固件。因此,因為對于單獨(dú)的存儲器的需求緩解,所以不必為這樣的組件在板子上提供空間,從而降低了制造成本。此外,因為整個軟件和固件可被存儲于單個通用存儲器,生產(chǎn)率可被提高并且維護(hù)也可被簡化。另外,可降低電子設(shè)備的配置的復(fù)雜度,因此降低了制造過程的復(fù)雜度和制造時間。再者,當(dāng)使用高速系統(tǒng)總線時,可減少發(fā)送裝置程序的時間。雖然若干示例性實施例已被示出并描述,但是本領(lǐng)域的技術(shù)人員將理解,在不脫離本發(fā)明構(gòu)思的原理和精神的情況下,可對示例性實施例進(jìn)行改變,本發(fā)明構(gòu)思的范圍在權(quán)利要求及其等同物中限定。
權(quán)利要求
1.一種電子設(shè)備,包括 多個組件,執(zhí)行電子設(shè)備的各個功能; 通用存儲器單元,存儲對應(yīng)于所述多個組件的固件; 系統(tǒng)總線,連接通用存儲器單元和所述多個組件;以及 控制單元,當(dāng)電子設(shè)備被啟動時,將對應(yīng)的固件從通用存儲器單元發(fā)送到所述多個組件中的每個組件, 其中,當(dāng)電子設(shè)備被啟動時,所述多個組件通過執(zhí)行啟動代碼來與系統(tǒng)總線連接。
2.如權(quán)利要求I所述的設(shè)備,其中,當(dāng)電子設(shè)備被啟動時,所述多個組件使用啟動代碼初始化系統(tǒng)總線并嘗試與系統(tǒng)總線連接。
3.如權(quán)利要求I所述的設(shè)備,其中,啟動代碼包括用于初始化組件的信息和用于初始化系統(tǒng)總線的信息。
4.如權(quán)利要求I所述的設(shè)備,其中,啟動代碼是存儲于組件內(nèi)的屏蔽式ROM的代碼,并且在制造組件時被設(shè)定。
5.如權(quán)利要求I所述的設(shè)備,其中,系統(tǒng)總線包括PCI總線、USB總線、IDE總線、SATA總線和IEEE 1394總線中的至少一個。
6.如權(quán)利要求I所述的設(shè)備,其中,所述多個組件的固件存儲于通用存儲器單元的預(yù)定區(qū)域, 其中,當(dāng)系統(tǒng)總線確認(rèn)了組件的連接時,所述的控制單元從通用存儲器單元的所述預(yù)定區(qū)域發(fā)送固件。
7.如權(quán)利要求I所述的設(shè)備,其中,所述多個組件將所述的控制單元發(fā)送的固件存儲在所述多個組件各自的閃存單元中。
8.一種提供電子設(shè)備的固件的方法,該方法包括 當(dāng)電子設(shè)備被啟動時,為用于執(zhí)行電子設(shè)備的功能的多個組件建立與系統(tǒng)總線的連接; 所述多個組件從與系統(tǒng)總線連接的通用存儲器單元接收對應(yīng)于所述多個組件中的每個組件的固件;以及 所述多個組件執(zhí)行每個接收到的固件, 其中,通用存儲器單元存儲并支持所述多個組件中的每個組件的固件。
9.如權(quán)利要求8所述的方法,其中,所述連接步驟包括當(dāng)電子設(shè)備被啟動時,使用啟動代碼初始化系統(tǒng)總線并且所述多個組件嘗試與總線連接。
10.如權(quán)利要求8所述的方法,其中,啟動代碼包含用于初始化組件的信息和用于初始化系統(tǒng)總線的信息。
11.如權(quán)利要求8所述的方法,其中,啟動代碼是存儲于組件內(nèi)的屏蔽ROM的代碼,并且在制造組件時被設(shè)定。
12.如權(quán)利要求8所述的方法,其中,系統(tǒng)總線包含PCI總線、USB總線、IDE總線、SATA總線和IEEE 1394總線中的至少一個。
13.如權(quán)利要求8所述的方法,其中,組件各自的固件存儲于通用存儲器單元的預(yù)定區(qū)域, 其中,所述接收步驟包括當(dāng)系統(tǒng)總線確認(rèn)了組件的連接時,所述組件從通用存儲器單元的所述預(yù)定區(qū)域接收組件的固件。
14.如權(quán)利要求8所述的方法,還包括 將接收的固件存儲在所述多個組件各自的閃存中。
全文摘要
提供了一種電子設(shè)備和提供電子設(shè)備的固件的方法。電子設(shè)備包括多個組件,執(zhí)行電子設(shè)備功能;通用存儲器單元,存儲所述多個組件中的每個組件各自的固件;系統(tǒng)總線,連接通用存儲器單元和多個組件;以及控制單元,在設(shè)備啟動之后,從通用存儲器單元發(fā)送對應(yīng)于多個組件中的每個組件的固件,其中,當(dāng)電子設(shè)備被啟動時,所述多個組件中的每個組件通過執(zhí)行啟動代碼與系統(tǒng)總線建立各自的連接。
文檔編號G06F13/36GK102760112SQ20121008549
公開日2012年10月31日 申請日期2012年3月28日 優(yōu)先權(quán)日2011年4月28日
發(fā)明者朱泳妊, 樸柱永, 樸秉權(quán), 白智善, 羅在成, 金相完 申請人:三星電子株式會社