專利名稱:依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種開機(jī)的方法,尤其是指一種可自動(dòng)找出可進(jìn)行開機(jī)的記憶體模組,以避免無法開機(jī)的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法。
背景技術(shù):
雙直列記憶體模組(Dual In-line Memory Module,簡稱DIMM)與單直列記憶體模組(Single In-line Memory Module,簡稱SIMM)是含有多組記憶體芯片(Memory Chip)的小型電路板。雙直列記憶體模組的配置格式有72、144及168個(gè)端子(pin),所謂“雙(Dual)”表示金手指的左右邊接到不同的信號(hào),其內(nèi)含隨機(jī)存取記憶體(Random Access Memory,簡稱RAM)芯片,可以說是由兩個(gè)單直列記憶體模型合并而成,它像單直列記憶體模組一樣,也可以單面或雙面制造。若將雙直列記憶體模組安裝在一主機(jī)板上,并不需成對(duì)的添加雙直列記憶體模組,可以混合配對(duì)。例如,您可以將一條64兆字節(jié)(Mega Byte,簡稱MB)的雙直列記憶體模組,加裝在32MB雙直列記憶體模組旁邊的插槽上。雙直列記憶體模組與單直列記憶體模組的差異在于,前者的電路板兩側(cè)的端子,各有其獨(dú)立電路,而后者兩側(cè)的端子的電路相連在一起,意即,雙直列記憶體模組兩側(cè)的端子,各有其特殊定義,而使其提供較寬的存取路徑,讓它的數(shù)據(jù)傳輸速度較單直列記憶體模組快。
以168個(gè)端子的雙直列記憶體模組而言,對(duì)其記憶體芯片的存取路徑為64位元(bit)。若中央處理器(Central Processing Unit,簡稱CPU)的總線(BUS)一樣是64位的存取路徑,便只需要對(duì)記憶體做一次完整存取(Access)動(dòng)作,所以一個(gè)主機(jī)板(Main Board,或稱Mother Board)上,只需要一個(gè)雙直列記憶體模組。且該雙直列記憶體模組內(nèi)還包括一個(gè)抹除式只讀存儲(chǔ)器(Erasable Programmable Read-Only Memory,簡稱EPROM)供基本輸出入系統(tǒng)(Basic Input Output System,簡稱BIOS)儲(chǔ)存各種參數(shù),并根據(jù)該等參數(shù),設(shè)定一芯片組(Chip set)達(dá)到最佳狀態(tài)。在高階個(gè)人電腦或是工作站上,使用的雙直列記憶體模組則以200接腳為主,提供七十二位的存取總線,其中六十四位為資料本身,其余八位作為錯(cuò)誤偵測碼(Error Checking and CorrectionCode,簡稱ECC)使用。
而基本輸出入系統(tǒng)是電腦開機(jī)啟動(dòng)中最基本的軟件,為主機(jī)板出廠時(shí),將開機(jī)的各種基本參數(shù)或程序燒錄在Flash ROM中,意即其最基本的功能就是用來記憶電腦的基本設(shè)定值,同時(shí)使用者也可以透過基本輸出入系統(tǒng)來設(shè)定開機(jī)模式及該電腦中各硬件的相關(guān)參數(shù)。一般電腦在開機(jī)時(shí),該基本輸出入系統(tǒng)會(huì)進(jìn)行開機(jī)的檢測工作(Power On Self Test),以確定電腦各硬件的基本組態(tài)。譬如,一般電腦開機(jī)時(shí),該基本輸出入系統(tǒng)會(huì)對(duì)記憶體進(jìn)行三次的存取測試(若設(shè)成enabled之后則只會(huì)做一次,可加快開機(jī)的時(shí)間),然后再將其儲(chǔ)存的各種參數(shù),載入該雙直列記憶體模組的抹除式只讀存儲(chǔ)器中,令后續(xù)啟動(dòng)的軟件(如操作系統(tǒng)),可取得該電腦的各硬件的組態(tài)設(shè)定值。
惟,目前大部份電腦而言,請(qǐng)參閱圖1所示,其基本輸出入系統(tǒng)將儲(chǔ)存的各種參數(shù),加載到記億體模塊的方式,是依下列的步驟進(jìn)行處理(101)記憶體模組初始化n=0;(102)讀取該記憶體模組的第n位記憶體模組的注冊(cè)資料;(103)判斷該第n位記憶體模組是否存在?若存在,進(jìn)行步驟(101);否則,繼續(xù)下列的步驟(104);(104)將n的數(shù)目加1;(105)判斷第n位的數(shù)目是否≤該系統(tǒng)所支持最大記憶體模組數(shù)?若是,進(jìn)行步驟(102);否則,繼續(xù)下列的步驟(106);(106)復(fù)制基本輸出入系統(tǒng)的參數(shù)至首位記憶體模組;(107)比對(duì)該首位記憶體模組中所儲(chǔ)存的參數(shù),是否與該基本輸出入系統(tǒng)的原始參數(shù)相符合?若是,繼續(xù)下列的步驟(108);否則,進(jìn)行步驟(109);(108)利用該首位記憶體模組所儲(chǔ)存的參數(shù),進(jìn)行后續(xù)的開機(jī)作業(yè),然后再結(jié)束;(109)停機(jī);(110)將該第n位記憶體模組的資料設(shè)置于一記憶體控制器中,然后再進(jìn)行步驟(104)。
因此可知,若該首位記憶體模組種所儲(chǔ)存的參數(shù)與該基本輸出入系統(tǒng)的原始參數(shù)不符合,即該首位記憶體模組無法正常儲(chǔ)存該基本輸出入系統(tǒng)的參數(shù),則該基本輸出入系統(tǒng)將不會(huì)把其所儲(chǔ)存的各種參數(shù)載入該等記憶體模組中,令該電腦無法順利完成開機(jī)程序,造成電腦停機(jī),程序無法繼續(xù)執(zhí)行,無畫面,且系統(tǒng)無任何的提示字符,非常不方便。
有鑒于前述公知開機(jī)模式于首位記憶體模組發(fā)生故障時(shí),即無法開機(jī)的缺陷,本發(fā)明人乃依其從事電腦及服務(wù)器的制造經(jīng)驗(yàn)和技術(shù)累積,針對(duì)上述缺陷悉心研究各種解決的方法,在經(jīng)過不斷的研究、實(shí)驗(yàn)與改進(jìn)后,終于開發(fā)設(shè)計(jì)出本發(fā)明的一種依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,以克服公知技術(shù)所衍生的缺陷。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,以可自動(dòng)找出可進(jìn)行開機(jī)的記憶體模組,而免除無法開機(jī)的缺失。
本發(fā)明的技術(shù)解決方案是一種依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,該方法是于該電腦的基本輸出入系統(tǒng)(BIOS)將其所儲(chǔ)存的各種參數(shù),載入該電腦的主機(jī)板的記憶體模組插槽上所安裝的記憶體模組前,先對(duì)該等記憶體模組依序進(jìn)行偵測,以挑選出可使用的記憶體模組;再將該基本輸出入系統(tǒng)的各種參數(shù),載入該等可使用記憶體模組的首位記憶體模組中;
然后,再進(jìn)行比對(duì)該首位記憶體模組中所儲(chǔ)存的參數(shù),與該基本輸出入系統(tǒng)的原始參數(shù)是否相符合,若比對(duì)結(jié)果為符合,則利用該首位記憶體模組所儲(chǔ)存的參數(shù),進(jìn)行后續(xù)的開機(jī)作業(yè);否則將該首位記憶體模組標(biāo)示為故障記憶體模組,并舍棄該故障的記憶體模組,而將該等參數(shù)載入下一組首位記憶體模組中,并進(jìn)行該下一組首位記憶體模組的比對(duì),如此,依序不斷地進(jìn)行比對(duì),直到找出可進(jìn)行開機(jī)的記憶體模組為止。
如上所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其中當(dāng)該電腦進(jìn)行后續(xù)的開機(jī)作業(yè)時(shí),該基本輸出入系統(tǒng)可將無法正常存取的記憶體模組的信息,傳送到該電腦的主機(jī)板所設(shè)的控制電路,令該電腦的顯示器可顯示一錯(cuò)誤信息畫面,使該畫面可供觀察,并作為維修該電腦的依據(jù)。
如上所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其中該記憶體模組可為一雙直列記憶體模組。
如上所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其中該電腦可為一個(gè)人電腦。
如上所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其中該電腦可為一伺服機(jī)。
如上所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其中該記憶體模組設(shè)有至少一個(gè)模塊,該電腦以「bit0」表示第1位記憶體模組(DIMM#1)、以「bit1」表示第2位記憶體模組(DIMM#2)、以「bit(n-1)」表示第n位記億體模塊(DIMM#n),另外,增加一字節(jié)旗標(biāo)記錄記憶體模組的好壞,以將好的記憶體模組以旗標(biāo)值為0來表示,故障的記憶體模組則以旗標(biāo)值為1來表示。
本發(fā)明的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,電腦的基本輸出入系統(tǒng)將其所儲(chǔ)存的各種參數(shù)載入該電腦的記憶體模組時(shí),將參數(shù)載入該等記憶體模組的首位記憶體模組中,再進(jìn)行比對(duì)該首位記憶體模組中所儲(chǔ)存的參數(shù)與該基本輸出入系統(tǒng)的原始參數(shù)是否相符合,若比對(duì)結(jié)果為符合,則進(jìn)行后續(xù)的開機(jī)作業(yè),否則將該首位記憶體模組標(biāo)示為故障記憶體模組,并舍棄該故障的記億體模塊,而將該等參數(shù)載入下一組首位記憶體模組中,進(jìn)行該下一組首位記憶體模組的比對(duì),如此,依序進(jìn)行比對(duì),直到找出可進(jìn)行開機(jī)的記憶體模組為止。電腦僅在所有可進(jìn)行開機(jī)作業(yè)的記憶體模組都損壞時(shí),才會(huì)發(fā)生無法開機(jī)的情形。因此,可免除傳統(tǒng)開機(jī)模式于首位記憶體模組發(fā)生故障時(shí)即無法開機(jī)的情況。
圖1為公知開機(jī)模式的動(dòng)作流程圖。
圖2為本發(fā)明開機(jī)模式的動(dòng)作流程圖。
具體實(shí)施例方式
為了能對(duì)本發(fā)明的技術(shù)方案、形狀、構(gòu)造裝置特征及其功效,做更進(jìn)一步的認(rèn)識(shí)與了解,茲舉實(shí)施例配合附圖,詳細(xì)說明如下本發(fā)明為一種依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,該方法于該電腦(如個(gè)人電腦、伺服機(jī)…等)的基本輸出入系統(tǒng)(BIOS)將其所儲(chǔ)存的各種參數(shù),加載到該電腦的主機(jī)板的記憶體模組插槽上所安裝的記憶體模組(如雙直列記憶體模組)前,先對(duì)該等記憶體模組依序進(jìn)行偵測,以挑選出可使用的記憶體模組,再將該基本輸出入系統(tǒng)的各種參數(shù),載入該等可使用記憶體模組的首位記憶體模組中,然后再進(jìn)行比對(duì)該首位記憶體模組中所儲(chǔ)存的參數(shù)與該基本輸出入系統(tǒng)的原始參數(shù)是否相符合,若比對(duì)結(jié)果為符合(表示該首位記憶體模組可正常存取參數(shù)),則利用該首位記憶體模組所儲(chǔ)存的參數(shù),進(jìn)行后續(xù)的開機(jī)作業(yè),否則將該首位記憶體模組標(biāo)示為故障記憶體模組,并舍棄該故障的記憶體模組,而將該等參數(shù)載入下一組首位記憶體模組中,并進(jìn)行該下一組首位記憶體模組的比對(duì),如此,依序不斷地進(jìn)行比對(duì),直到找出可進(jìn)行開機(jī)的記憶體模組為止,該電腦僅在所有可進(jìn)行開機(jī)作業(yè)的記憶體模組都損壞的情況下,才會(huì)發(fā)生無法開機(jī)的情形,因此,可免除傳統(tǒng)開機(jī)模式于首位記憶體模組發(fā)生故障時(shí),即無法開機(jī)的情況。
在本發(fā)明中,當(dāng)該電腦進(jìn)行后續(xù)的開機(jī)作業(yè)時(shí),該基本輸出入系統(tǒng)可將無法正常存取的記憶體模組的信息,傳送到該電腦的主機(jī)板所設(shè)的控制電路,令該電腦的顯示器可顯示一錯(cuò)誤信息畫面,使該畫面可供使用者觀察,并作為維修該電腦的依據(jù)。
在本發(fā)明中,該記憶體模組設(shè)有至少一個(gè)模塊(如設(shè)有四個(gè)模塊),其中該電腦以「bit0」表示第1位記憶體模組(DIMM#1),以「bit1」表示第2位記憶體模組(DIMM#2)、以「bit2」表示第3位記憶體模組(DIMM#3)、以「bit3」表示第4位記憶體模組(DIMM#4),以「bit(n-1)」表示第n位記憶體模組(DIMM#n),另外,該記憶體模組好壞的標(biāo)示方式,可利用增加一字節(jié)旗標(biāo)方式表示,將好的記憶體模組以旗標(biāo)值為0來表示,故障的記憶體模組則以旗標(biāo)值為1來表示。(例如標(biāo)示第1位記憶體模組為故障時(shí),以bit0旗標(biāo)值1來表示),在本發(fā)明的一實(shí)施例中,請(qǐng)參閱圖2所示,當(dāng)該電腦進(jìn)行開機(jī)處理時(shí),其基本輸出入系統(tǒng)將依下列的步驟進(jìn)行處理(201)記憶體模組初始化n=0;(202)讀取該記憶體模組的第n位記憶體模組的注冊(cè)資料;(203)判斷該第n位記憶體模組是否存在?若存在,進(jìn)行步驟(210);否則,進(jìn)行步驟(204);(204)將n的數(shù)目加1;(205)判斷第n位的數(shù)目是否≤該系統(tǒng)所支持最大記憶體模組數(shù)?若是,進(jìn)行步驟(202);否則,繼續(xù)下列的步驟(206);(206)復(fù)制基本輸出入系統(tǒng)的參數(shù)至可使用的記憶體模組的首位記憶體模組中;(207)比對(duì)該首位記憶體模組中所儲(chǔ)存的參數(shù),是否與該基本輸出入系統(tǒng)的原始參數(shù)相符合?若是,繼續(xù)下列的步驟(208);否則,進(jìn)行步驟(209);(208)將該首位記憶體模組標(biāo)示為好的模塊(旗標(biāo)值為0),并利用該首位記憶體模組所儲(chǔ)存的參數(shù),進(jìn)行后續(xù)的開機(jī)作業(yè),然后再結(jié)束;(209)將該首位記憶體模組標(biāo)示為故障的模塊(旗標(biāo)值為1),令舍棄該故障的記憶體模組,并設(shè)置n的數(shù)目等于0,以及清除記憶體控制器中的資料,然后再進(jìn)行步驟(202);(210)將該第n位記憶體模組的資料設(shè)置于一記憶體控制器中,然后再進(jìn)行步驟(204)。
據(jù)上述可知,本發(fā)明的方法可于該電腦的復(fù)數(shù)個(gè)記憶體模組中,自動(dòng)進(jìn)行比對(duì),而找出可進(jìn)行開機(jī)的記憶體模組,令后續(xù)啟動(dòng)的軟件(如操作系統(tǒng)),可取得該電腦的各硬件的組態(tài)設(shè)定值,免除傳統(tǒng)開機(jī)模式于首位記憶體模組發(fā)生故障時(shí),即無法開機(jī)的情況。而且本發(fā)明并可將無法正常存取的記憶體模組的信息(即發(fā)生故障的記憶體模組),顯示于顯示器上,供維修者維修該電腦的參考,可謂便捷無比。
雖然本發(fā)明已以具體實(shí)施例揭示,但其并非用以限定本發(fā)明,任何本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明的構(gòu)思和范圍的前提下或依本發(fā)明專利保護(hù)范圍所作的等同變化與修飾,皆應(yīng)仍屬本專利涵蓋之范疇。
權(quán)利要求
1.一種依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,該方法是于該電腦的基本輸出入系統(tǒng)將其所儲(chǔ)存的各種參數(shù),載入該電腦的主機(jī)板的記憶體模組插槽上所安裝的記憶體模組前,先對(duì)該等記憶體模組依序進(jìn)行偵測,以挑選出可使用的記憶體模組;再將該基本輸出入系統(tǒng)的各種參數(shù),載入該等可使用記憶體模組的首位記憶體模組中;然后,再進(jìn)行比對(duì)該首位記憶體模組中所儲(chǔ)存的參數(shù),與該基本輸出入系統(tǒng)的原始參數(shù)是否相符合,若比對(duì)結(jié)果為符合,則利用該首位記憶體模組所儲(chǔ)存的參數(shù),進(jìn)行后續(xù)的開機(jī)作業(yè);否則將該首位記憶體模組標(biāo)示為故障記憶體模組,并舍棄該故障的記憶體模組,而將該等參數(shù)載入下一組首位記憶體模組中,并進(jìn)行該下一組首位記憶體模組的比對(duì),如此,依序不斷地進(jìn)行比對(duì),直到找出可進(jìn)行開機(jī)的記憶體模組為止。
2.如權(quán)利要求1所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其特征在于當(dāng)該電腦進(jìn)行后續(xù)的開機(jī)作業(yè)時(shí),該基本輸出入系統(tǒng)可將無法正常存取的記憶體模組的信息,傳送到該電腦的主機(jī)板所設(shè)的控制電路,令該電腦的顯示器可顯示一錯(cuò)誤信息畫面,使該畫面可供觀察,并作為維修該電腦的依據(jù)。
3.如權(quán)利要求1所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其特征在于該記憶體模組可為一雙直列記憶體模組。
4.如權(quán)利要求1所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其特征在于該電腦可為一個(gè)人電腦。
5.如權(quán)利要求1所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其特征在于該電腦可為一伺服機(jī)。
6.如權(quán)利要求1所述的依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,其特征在于該記憶體模組設(shè)有至少一個(gè)模塊,該電腦以「bit0」表示第1位記憶體模組(DIMM#1)、以「bit1」表示第2位記憶體模組(DIMM#2)、以「bit(n-1)」表示第n位記億體模塊(DIMM#n),另外,增加一字節(jié)旗標(biāo)記錄記憶體模組的好壞,以將好的記憶體模組以旗標(biāo)值為0來表示,故障的記憶體模組則以旗標(biāo)值為1來表示。
全文摘要
一種依序選擇可開機(jī)的記憶體模組進(jìn)行開機(jī)的方法,電腦的基本輸出入系統(tǒng)的參數(shù)載入該等記憶體模組的首位記憶體模組中,進(jìn)行比對(duì)該首位記憶體模組中所儲(chǔ)存的參數(shù)與該基本輸出入系統(tǒng)的原始參數(shù)是否相符合,若比對(duì)結(jié)果為符合,則進(jìn)行后續(xù)的開機(jī)作業(yè),否則將該首位記憶體模組標(biāo)示為故障記憶體模組,并舍棄該故障的記億體模塊,而將該等參數(shù)載入下一組首位記憶體模組中,進(jìn)行該下一組首位記憶體模組的比對(duì),如此,依序進(jìn)行比對(duì),直到找出可進(jìn)行開機(jī)的記憶體模組為止。電腦僅在所有可進(jìn)行開機(jī)作業(yè)的記憶體模組都損壞時(shí),才會(huì)發(fā)生無法開機(jī)的情形。因此,可免除傳統(tǒng)開機(jī)模式于首位記憶體模組發(fā)生故障時(shí)即無法開機(jī)的情況。
文檔編號(hào)G06F9/445GK1719411SQ20041006243
公開日2006年1月11日 申請(qǐng)日期2004年7月7日 優(yōu)先權(quán)日2004年7月7日
發(fā)明者陳志偉 申請(qǐng)人:英業(yè)達(dá)股份有限公司