專利名稱:可編程的芯片選擇的制作方法
背景技術:
一種計算設備可包含初始化該計算設備的組件的固件例程。一旦系統(tǒng)啟動,該計算設備可激活具有固件例程的非易失性存儲器設備的芯片選擇。該計算設備然后可從非易失性存儲器設備中檢索并執(zhí)行該固件例程。
這里描述的本發(fā)明通過結合附圖,作為例子而非限制地進行說明。為了說明的簡化和清楚,附圖中說明的元件并不必然是按比例繪制的。一些元件的尺寸可相對其他元件放大,以便清楚。而且,考慮適當情況,附圖中重復參考標記,以指示相應或類似的元件。
圖1說明沒有芯片選擇譯碼器的計算設備的實施例。
圖2說明具有芯片選擇譯碼器的計算設備的實施例。
圖3說明圖1和圖2的計算設備可以執(zhí)行的啟動方法。
具體實施例下面的描寫描述了用于訪問帶有編碼和未編碼的芯片選擇字的非易失性存儲器的技術。在下面的描述中,許多特定的細節(jié),如邏輯實現(xiàn)、操作碼。指定操作碼的裝置、資源劃分/共享/復制的實現(xiàn)、系統(tǒng)組件的類型和相互關系、以及邏輯劃分/集成選擇,以便提供對本發(fā)明的更為全面的了解。然而,應該認識到,對本領域的技術人員而言,沒有這些特定細節(jié),本發(fā)明也可以實施。在其他實例中,控制結構、門級電路以及全軟件指令序列沒有被詳細示出,以便不使本發(fā)明模糊。本領域的技術人員用所包括的這些描述將能實現(xiàn)適當?shù)墓δ埽挥眠^度的實驗。
說明書中參考的“一個實施例”、“實施例”、“示例實施例”等等指示所描述的實施例可包括特殊特性、結構或特征,但每個實施例并不必然包括特殊的特性、結構或特征。而且,這些短語并不必然涉及相同的實施例。進一步,當連同實施例描述特殊的特性、結構或特征時,要提出的是,可在本領域的技術人員知識范圍內結合其他實施例來實施這些特定的特性、結構或特征,無論這些實施例是否清楚說明。
本發(fā)明的實施例可在硬件、固件、軟件、或它們的任何組合中實現(xiàn)。本發(fā)明的實施例也可以作為存儲在機器可讀的介質中、可由一個或多個處理器讀取并執(zhí)行的指令來實現(xiàn)。機器可讀的介質可包括用于存儲或傳輸以機器(例如,計算設備)可讀形式的信息的任何介質。例如,機器可讀介質可包括只讀存儲器(ROM)、隨機存取存儲器(RAM)、磁性磁盤存儲介質、光盤存儲介質、閃存設備、電、光、聲或其他形式的可傳播信號(例如,載波、紅外線信號、數(shù)字信號等等),以及其他介質。而且,固件、軟件、例程、指令在這里可作為執(zhí)行某些動作來描述。然而,應該認識到,這些描述只是為了方便,且這些動作實際上由計算設備、處理器、控制器、或執(zhí)行該固件、軟件、例程、指令等等的其他設備產(chǎn)生。
圖1和圖2示出了計算設備100的例子實施例。作為說明,計算設備100可包含一個或多個處理器102。處理器102可響應于操作系統(tǒng)104、應用程序106、基本輸入/輸出系統(tǒng)(BIOS)固件108、和/或一些其他軟件或固件模塊的執(zhí)行指令而執(zhí)行動作。
計算設備100還可包含通過處理器總線耦合到處理器102的芯片集110。芯片集110可包含耦合處理器102到計算設備100的其他組件的一個或多個集成電路插件(package)或芯片。特別是,芯片集110可包含通過存儲器總線耦合到易失性存儲器114的易失性存儲器控制器112。芯片集110還包含通過地址/數(shù)據(jù)總線120、芯片選擇線1220、1221……122N,和/或其他總線和控制線(未示出),如,例如行地址選通、列地址選通、寫使能(write enable)等等耦合到非易失性存儲器118的非易失性存儲器控制器116。
圖1和圖2說明帶有單獨的易失和非易失性存儲器控制器112、116的計算設備100的實施例。然而,其他實施例可包含單個存儲器控制器,以訪問易失性存儲器114和非易失性存儲器118。又一個實施例中,可實現(xiàn)沒有易失性存儲器114和易失性存儲器控制器112的計算設備100。
易失性存儲器114可包含具有可從中讀寫的可設地址的存儲器位置的易失性存儲器設備(未示出)。該易失性存儲器設備可包含一個或多個不同類型的易失性存儲器,如,例如RAM(隨機存儲器存儲器)設備、SRAM(靜態(tài)RAM)設備、DRAM(動態(tài)RAM存儲器)設備、SDRAM(同步DRAM)設備、DDR(雙倍數(shù)據(jù)率)SDRAM設備等等。非易失性存儲器118可包含具有可從中讀寫的可設地址的存儲器位置的非易失性存儲器設備124(未示出)。非易失性存儲器設備124可包含一個或多個不同類型的非易失性存儲器,如,例如閃存設備、ROM(只讀存儲器)設備、PROM(可編程只讀存儲器)設備、EPROM(可擦寫PROM)設備、EEPROM(電可擦寫PROM)設備、鐵電存儲器設備、電池后備的(backed)存儲器設備等等。
非易失性存儲器控制器116可包含可編程的配置存儲器126。計算設備100可更新或編程配置存儲器126,以定義非易失性存儲器控制器116的操作。一個實施例中,配置存儲器126可為已編碼的芯片選擇模式或未編碼的芯片選擇模式配置非易失性存儲器控制器116。而且,配置存儲器126可為各種非易失性存儲器構造配置非易失的存儲器控制器116。例如,通過配置存儲器126,非易失性存儲器控制器116可支持多個存儲器類型、存儲器容量、存儲器定時等等。
一個實施例中,配置存儲器126可默認非易失性存儲器控制器116為已編碼芯片選擇模式。配置存儲器126還默認非易失性存儲器控制器為存儲器配置,它假設非易失性存儲器設備118耦合到預定的芯片選擇線122(例如,芯片選擇線1220),非易失性存儲器設備118包含由非易失性存儲器設備124支持的最小的存儲容量(例如,1兆字節(jié)),把引導代碼塊地址映射到存儲在預定的非易失性存儲器設備118中的引導代碼塊128,以及把地址翻轉到預定的非易失性存儲器設備,以確保所有地址以預定的非易失性存儲器設備124為目標,直到另外配置。
非易失性存儲器控制器116可包含地址譯碼器130,以把地址解碼到選擇非易失性存儲器設備以服務事務的芯片選擇字、解碼到選擇已選擇的非易失性存儲器設備124的適當行的行地址、以及解碼到選擇已選擇的行的適當列的列地址。響應于未編碼的芯片選擇模式,非易失性存儲器控制器116可生成未編碼的芯片選擇字132(圖1)。地址譯碼器130可生成未編碼的芯片選擇字132,以便未編碼的芯片選擇字132只激活單個芯片選擇線122并使其他芯片選擇線122無效。在這個實施例中,活動的芯片選擇線122可選擇相關聯(lián)的非易失性存儲器設備124或一組相關聯(lián)的非易失性存儲器設備124,以服務事務,而不活動的芯片選擇線122可解除對其他不服務該事務的非易失性存儲器118的非易失性存儲器124的選擇。
響應于已編碼的芯片選擇模式,地址譯碼器130還可生成已編碼的芯片選擇字134(圖2),并向芯片選擇譯碼器136提供已編碼芯片選擇字134。芯片選擇譯碼器136可從接收的已編碼芯片選擇字134中生成只激活單個芯片選擇線122且使其他芯片選擇線122無效的未編碼芯片選擇字132。在這個實施例中,活動的芯片選擇線122可選擇相關聯(lián)的非易失性存儲器設備124或一組相關聯(lián)的非易失性存儲器設備124,以服務事務,而不活動的芯片選擇線122可取消選定不服務該事務的非易失性存儲器118的其他非易失性存儲器設備124。
在支持達八個非易失性存儲器設備124的實施例中,根據(jù)表1,地址譯碼器130可生成未編碼和已編碼芯片選擇字132、134。而且,芯片選擇譯碼器136可響應于從地址譯碼器130接收相應的已編碼芯片選擇字134,生成未編碼芯片選擇字134。特別是,地址譯碼器130和芯片選擇譯碼器136可生成CS_Word_X,以選擇耦合到芯片選擇線122x的非易失性存儲器設備124。而且,表1中的二進制0指示芯片選擇字的不活動位,而二進制1指示芯片選擇字的活動位。活動位可對應于高信號,而不活動位可對應于低信號。然而,其他信號編碼可用于如,例如表示具有低信號的活動位和具有高信號的不活動位。
表1
如表1所示,已編碼芯片選擇字CS_Word_0的三個最低位[2:0]和未編碼芯片選擇字CS_Word_0的三個最低位[2:0]是相同的,且包括單個活動位。假設有效的平臺,則地址譯碼器130可選擇通過生成未編碼芯片選擇字CS_Word_0或已編碼芯片選擇字CS_Word_0耦合到芯片選擇線的非易失性存儲器設備124。例如,如果計算設備100不包括芯片選擇譯碼器136(見圖1),則未編碼或已編碼芯片選擇字CS_Word_0的單個活動位可激活芯片選擇線1220,并可選擇相應的非易失性存儲器設備124。類似地,如果計算設備100包括芯片選擇譯碼器136(見圖2),則芯片選擇譯碼器136可從由地址譯碼器130生成的未編碼芯片選擇字CS_Word_0或已編碼芯片選擇字CS_Word_0的一部分(例如,三個最低位CS[2:0])中生成未編碼芯片選擇字CS_Word_0。由芯片選擇譯碼器136生成的未編碼芯片選擇字CS_Word_0的單個活動位然后可激活芯片選擇線1220,并可選擇相應的非易失性存儲器設備124。
在一個實施例中,BIOS固件108可包含計算設備100可在系統(tǒng)啟動期間執(zhí)行的例程,以便初始化處理器102、芯片集110、以及計算設備100的其他組件。而且,BIOS固件108可包含計算設備可執(zhí)行以與計算設備100的一個或多個組件通信的例程或驅動程序。在一個實施例中,配置非易失性控制器116的例程,且可包含BIOS固件108可包含引導代碼塊128,以配置計算設備100的組件。在一個實施例中,引導代碼塊128可更新配置存儲器126以編程,無論地址譯碼器130生成已編碼還是未編碼芯片選擇字132、134。BIOS固件108還可更新配置存儲器126,以指示那條芯片選擇線1220,1221……122N耦合到非易失性存儲器設備118,且指示每個非易失性存儲器設備118的容量。
如圖1所示,引導代碼塊128可駐留在與預定芯片選擇線(例如,芯片選擇線1220)相關聯(lián)的非易失性存儲器設備124。而且,圖1的計算設備100描述BIOS固件108可跨越多于一個的非易失性存儲器設備124。在這樣一個實施例中,計算設備100可執(zhí)行引導代碼塊128,以便配置非易失性存儲器控制器118,并能訪問其他非易失性存儲器設備127和駐留在其他非易失性存儲器設備124中的BIOS固件108的啟動例程。然而,在其他實施例中,BIOS固件108可駐留在單個非易失性存儲器設備124中。
芯片集110還可包含通過總線耦合到I/O設備138(例如,鼠標、鍵盤、視頻控制器、網(wǎng)絡接口控制器、硬盤、軟盤、無線接收機、無線發(fā)射機等等)的輸入/輸出(I/O)控制器(未示出)。例如,芯片集110可包含外圍組件互連(PCI)控制器、加速圖形端口(AGP)控制器、通用串行總線(USB)控制器、低引腳計數(shù)(LPC)總線控制器、和/或其他輸入和/或輸出(I/O)控制器,以通過各條總線控制和傳遞數(shù)據(jù)。
現(xiàn)在參考圖3,示出了圖1或圖2的計算設備100的啟動方法可響應于系統(tǒng)加電(power-up)、系統(tǒng)重啟、或一些其他事件來執(zhí)行。框200中的處理器102可跳至引導代碼塊地址(例如,F(xiàn)FFF_FFFFh)。地址譯碼器130可解碼啟動代碼塊地址,并生成具有單個活動位芯片選擇字132、134(例如,未編碼或已編碼芯片選擇字CS_Word_0),以選擇包含框202中的引導代碼塊128的預定的非易失性存儲器設備124。地址譯碼器130還可生成非易失性存儲器控制器116可用于檢索存儲在引導代碼塊地址的引導代碼塊128部分的行地址和列地址。
如果計算設備100沒有芯片選擇譯碼器136,則由地址譯碼器130生成的已編碼或未編碼芯片選擇字132、134的活動位可選擇包含框204中的引導代碼塊128的預定的非易失性存儲器設備124。然而,如果計算設備100包含芯片選擇譯碼器136,則框206中的芯片選擇譯碼器136可解碼地址譯碼器130的已編碼或未編碼芯片選擇字132、134,并可生成具有單個活動位的未編碼芯片選擇字(例如,未編碼芯片選擇字CS_Word_0),以選擇包含引導代碼塊128的預定的非易失性存儲器設備124。由芯片選擇譯碼器136生成的未編碼芯片選擇字的活動位可在框208內選擇包含引導代碼塊128的預定的非易失性存儲器設備124。
框210內的處理器102可從已選擇的非易失性存儲器設備124中檢索并執(zhí)行引導代碼塊128。在一個實施例中,處理器102可響應于執(zhí)行引導代碼塊128,配置計算設備100,如,例如非易失性存儲器控制器124的組件。特別是,如果處理器102確定計算設備100包含芯片選擇譯碼器136,則處理器102可為已編碼芯片選擇模式更新配置存儲器126?;蛘?,如果處理器102確定計算設備100不包括芯片選擇譯碼器,則處理器102可為未編碼芯片選擇模式更新配置存儲器126。
而且,處理器102可更新配置存儲器126,以為響應于執(zhí)行引導代碼塊128而由處理器102檢測到的非易失性存儲器設備124的類型和容量配置非易失性存儲器控制器116。處理器102還可更新配置存儲器126,以使地址不能翻轉到包含引導代碼塊128的預定的非易失性存儲器設備124。配置非易失性存儲器控制器116后,處理器102響應于執(zhí)行引導代碼塊128或BIOS固件108,可重新分配未使用的芯片選擇引腳,用于其他目的,如通用事件(GPE)。
盡管已經(jīng)參考例子實施例描述了本發(fā)明的某些特性,但該描述并不意圖限制本發(fā)明。屬于本發(fā)明、對本領域的技術人員明顯的例子實施例和本發(fā)明的其他實施例的各種修正被認為是落在本發(fā)明的精神和范圍之內。
權利要求
1.一種裝置,該裝置包含在已編碼芯片選擇模式和未編碼芯片選擇模式之間選擇的配置存儲器,以及響應于未編碼芯片選擇模式,生成未編碼芯片選擇字,以及響應于已編碼芯片選擇模式,生成已編碼芯片選擇字的地址譯碼器。
2.如權利要求1所述的裝置,其特征在于,所述地址譯碼器響應于引導代碼塊的地址,不管是在未編碼芯片選擇模式還是已編碼芯片選擇模式下操作,都生成選擇相同存儲器設備的芯片選擇字。
3.如權利要求1所述的裝置,其特征在于,所述地址譯碼器響應于引導代碼塊的地址,當處于已編碼芯片選擇模式時,生成選擇包含引導代碼塊的預定存儲器設備的已編碼芯片選擇字,且當處于未編碼芯片選擇模式時,生成選擇包含引導代碼塊的預定存儲器設備的未編碼芯片選擇字。
4.如權利要求1所述的裝置,其特征在于,所述地址譯碼器響應于引導代碼塊的地址,為該地址生成未編碼芯片選擇字,使得未編碼芯片選擇字包含用于該地址的已編碼芯片選擇字。
5.如權利要求1所述的裝置,其特征在于,所述地址譯碼器響應于引導代碼塊的地址,為該地址生成已編碼芯片選擇字,使得已編碼芯片選擇字正好包含一個活動芯片選擇位,且為該地址生成未編碼芯片選擇字,使得未編碼芯片選擇字正好包含一個活動芯片選擇位。
6.如權利要求1所述的裝置,其特征在于,所述地址譯碼器響應于引導代碼塊的地址,為該地址生成已編碼芯片選擇字,使得已編碼芯片選擇字正好包含對應用于選擇包含引導代碼塊的存儲器設備的預定芯片選擇線的一個活動芯片選擇位,且為該地址生成未編碼芯片選擇字,使得未編碼芯片選擇字正好包含對應于該預定芯片選擇線的一個活動芯片選擇位。
7.如權利要求1所述的裝置,其特征在于,所述地址譯碼器響應于引導代碼塊的地址,生成已編碼芯片選擇字,使得已編碼芯片選擇字的最低位是已編碼芯片選擇字的唯一活動位,且生成未編碼芯片選擇字,使得未編碼芯片選擇字的最低位是未編碼芯片選擇字的唯一活動位。
8.一種系統(tǒng),該系統(tǒng)包含包含具有引導代碼塊的存儲器設備的多個存儲器設備,以及一種裝置,該裝置用于響應于引導代碼塊的地址和已編碼芯片選擇模式,生成選擇具有引導代碼塊的存儲器設備的已編碼芯片選擇字,以及響應于引導代碼塊的地址和未編碼芯片選擇模式,生成包含引導代碼塊的未編碼芯片選擇字的未編碼芯片選擇字。
9.如權利要求8所述的系統(tǒng),其特征在于,所述具有引導代碼塊的存儲器設備通過預定的芯片選擇線耦合到所述裝置,以及所述多個存儲器設備的每個其他存儲設備通過單獨的芯片選擇線被耦合到所述裝置。
10.如權利要求8所述的系統(tǒng),還包含通過單獨的芯片選擇線耦合到所述裝置以及耦合到多個存儲器設備的每個存儲器設備的芯片選擇譯碼器,其中該芯片選擇譯碼器響應于從所述裝置接收用于所述地址的已編碼芯片選擇字,激活具有引導代碼塊的存儲器設備的芯片選擇線。
11.如權利要求10所述的系統(tǒng),其特征在于,所述芯片選擇譯碼器響應于從所述裝置接收用于所述地址的未編碼芯片選擇字,激活具有引導代碼塊的存儲器設備的芯片選擇線。
12.如權利要求8所述的系統(tǒng),還包含通過單獨的芯片選擇線耦合到所述裝置以及耦合到多個存儲器設備的每一個存儲器設備的芯片選擇譯碼器,其中該芯片選擇譯碼器響應于從由所述裝置為引導代碼塊的地址生成的未編碼芯片選擇字接收用于所述引導代碼塊的地址的已編碼芯片選擇字,激活具有引導代碼塊的存儲器設備的芯片選擇線。
13.一種方法,該方法包含響應于引導代碼塊的地址和已編碼芯片選擇模式,生成選擇具有引導代碼塊的存儲器設備的已編碼芯片選擇字,以及響應于引導代碼塊的地址和未編碼芯片選擇模式,生成包含該引導代碼塊的已編碼芯片選擇字的未編碼芯片選擇字。
14.如權利要求13所述的方法,還包含更新操作模式到已編碼芯片選擇模式和未編碼芯片選擇模式的其中一種。
15.如權利要求13所述的方法,還包含執(zhí)行引導代碼塊,以及響應于執(zhí)行該引導代碼塊,更新操作模式到已編碼芯片選擇模式和未編碼芯片選擇模式的其中一種。
16.如權利要求13所述的方法,還包含執(zhí)行引導代碼塊,以及響應于執(zhí)行該引導代碼塊,更新操作模式到已編碼芯片選擇模式,以及在更新操作模式后,重新分配未用于傳送已編碼芯片選擇字的芯片選擇引腳。
17.如權利要求13所述的方法,其特征在于,生成已編碼芯片選擇字包括生成已編碼芯片選擇字,使得已編碼芯片選擇字正好包含一個活動芯片選擇位,以及生成未編碼芯片選擇字包括生成未編碼芯片選擇字,使得未編碼芯片選擇字正好包含一個活動芯片選擇位。
18.如權利要求13所述的方法,其特征在于,生成已編碼芯片選擇字包括生成已編碼芯片選擇字,使得已編碼芯片選擇字正好包含對應于用于選擇具有引導代碼塊的存儲器設備的預定芯片選擇線的一個活動芯片選擇位,以及生成未編碼芯片選擇字包括生成未編碼芯片選擇字,使得未編碼芯片選擇字正好包含對應于預定芯片選擇線的一個活動芯片選擇位。
19.如權利要求13所述的方法,其特征在于,生成已編碼芯片選擇字包括生成已編碼芯片選擇字,使得已編碼芯片選擇字的最低位是已編碼芯片選擇字的唯一活動位,以及生成未編碼芯片選擇字包括生成未編碼芯片選擇字,使得未編碼芯片選擇字的最低位是已編碼芯片選擇字的唯一活動位。
20.一種包含多個指令的機器可讀介質,響應于執(zhí)行這些指令,導致裝置響應于引導代碼塊的地址和已編碼芯片選擇模式,生成選擇具有該引導代碼塊的存儲器設備的已編碼芯片選擇字,以及響應于引導代碼塊的地址和未編碼芯片選擇模式,生成包含該引導代碼塊的已編碼芯片選擇字的未編碼芯片選擇字。
21.如權利要求20所述的機器可讀介質,其特征在于,所述多個指令還導致裝置生成已編碼芯片選擇字,使得已編碼芯片選擇字正好包含一個活動選擇位,以及生成未編碼芯片選擇字,使得未編碼芯片選擇字正好包含一個活動選擇位。
22.如權利要求20所述的機器可讀介質,其特征在于,所述多個指令還包含導致裝置生成已編碼芯片選擇字,使得已編碼芯片選擇字正好包含對應于用于選擇具有引導代碼塊的存儲器設備的預定芯片選擇線的一個活動芯片選擇位,以及生成未編碼芯片選擇字,使得未編碼芯片選擇字正好包含對應于預定芯片選擇線的一個活動芯片選擇位。
23.如權利要求20所述的機器可讀介質,其特征在于,所述多個指令還包含導致裝置生成已編碼芯片選擇字,使得已編碼芯片選擇字的最低位是已編碼芯片選擇字的唯一活動位,以及生成未編碼芯片選擇字,使得未編碼芯片選擇字的最低位是未編碼芯片選擇字的唯一活動位。
全文摘要
揭示了生成芯片選擇字(132)的機器可讀的介質、方法和裝置。在一個實施例中,當處于解碼的芯片選擇模式中時,地址譯碼器(130)可生成解碼的芯片選擇字,以選擇存儲器設備(124)。當處于未解碼的芯片選擇模式中時,地址譯碼器也可以生成未解碼的芯片選擇字,以選擇存儲器設備。在一個實施例中,地址譯碼器響應于引導代碼塊(128)可生成選擇相同存儲器設備的芯片選擇字,而不論地址譯碼器是以解碼還是以未解碼芯片選擇模式操作。
文檔編號G06F12/06GK1826657SQ200480021223
公開日2006年8月30日 申請日期2004年7月8日 優(yōu)先權日2003年7月22日
發(fā)明者P·孟古亞, E·王 申請人:英特爾公司