欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

通過儲(chǔ)存在序列存取內(nèi)存中的激活碼的計(jì)算機(jī)系統(tǒng)起始的制作方法

文檔序號(hào):6634983閱讀:468來源:國(guó)知局
專利名稱:通過儲(chǔ)存在序列存取內(nèi)存中的激活碼的計(jì)算機(jī)系統(tǒng)起始的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及電子數(shù)字計(jì)算機(jī)技術(shù),尤其涉及為一組激活碼儲(chǔ)存于序列存取內(nèi)存的計(jì)算機(jī)系統(tǒng)。
背景技術(shù)
常見的數(shù)字計(jì)算機(jī)系統(tǒng)包括含有激活碼指令的非揮發(fā)性只讀存儲(chǔ)器(non-volatile Read Only Memory,ROM)。此激活程序代碼乃是于操作系統(tǒng)或應(yīng)用程控系統(tǒng)前,用以設(shè)定系統(tǒng)低階硬件功能。
系統(tǒng)的中央處理單元(Central Processing Unit,CPU),通常為微控制器或微處理器,設(shè)定為跳至ROM內(nèi)的一預(yù)先決定的內(nèi)存地址,并于系統(tǒng)起始后(包括開啟電源或重新激活)開始執(zhí)行激活碼。激活碼使操作系統(tǒng)或起始應(yīng)用程序加載及執(zhí)行。
激活碼ROM一般而言為隨機(jī)存取內(nèi)存,其任何地址的指令或數(shù)據(jù)可直接及獨(dú)立地存取。此支持大多數(shù)程序的分支特性,使得分支后的指令可從內(nèi)存內(nèi)的任意地址讀取。于供給電源后,這些內(nèi)存亦很快地便可讀取。
相對(duì)于隨機(jī)存取內(nèi)存,發(fā)展的序列存取內(nèi)存亦具優(yōu)點(diǎn)及缺點(diǎn)。在序列存取內(nèi)存,個(gè)別地址無法直接使用。內(nèi)存以頁(yè)的方式組成,例如以512字節(jié)為一頁(yè),且為了獲得儲(chǔ)存于頁(yè)里任一特定地址的程序代碼,必須將整頁(yè)或半頁(yè)讀出。
可有效地利用于實(shí)行本發(fā)明的序列存取內(nèi)存為Am30LV0064DUltraNANDTM,可由Advanced Micro Devices,Inc.(AMD)of Snnyvale,CA取得。此內(nèi)存乃依據(jù)NAND結(jié)構(gòu)的快閃只讀存儲(chǔ)器裝置。
與序列存取非揮發(fā)性內(nèi)存相比,隨機(jī)存取ROMs需較多的外部接腳及連接,主要做為地址線,故對(duì)相同位密度而言,成本明顯增加,且無法如同序列存取內(nèi)存具如此高密度。
另一方面,序列存取內(nèi)存通常需將指令序列寫入裝置,以選擇及將數(shù)據(jù)設(shè)定為可讀取,故無法于供給電源后立即可讀取。直至寫入新的指令序列后,其才能由內(nèi)存內(nèi)的序列位置讀取數(shù)據(jù),故只能支持直線程序執(zhí)行。
當(dāng)計(jì)算機(jī)系統(tǒng)需使用較高密度及較低成本的非揮發(fā)性序列內(nèi)存時(shí),同時(shí)亦需提供非揮發(fā)性隨機(jī)存取內(nèi)存,至少足以支持起始程序的執(zhí)行,或稱為激活系統(tǒng)。起始程序需于非揮發(fā)性ROM執(zhí)行,直至序列存取內(nèi)存設(shè)定完成而可讀取,且序列存取內(nèi)存內(nèi)的程序可轉(zhuǎn)移至揮發(fā)性隨機(jī)存取內(nèi)存(volatile Random Access Memory,RAM)來執(zhí)行。
如上述,序列存取內(nèi)存比隨機(jī)存取內(nèi)存具較低的成本及較高的儲(chǔ)存密度。對(duì)于一個(gè)采用傾向序列存取內(nèi)存系統(tǒng)而言,為了降低系統(tǒng)成本及尺寸,最好能消除需使用額外的非揮發(fā)性隨機(jī)存取內(nèi)存來支持起始程序執(zhí)行的情形。然而,過去尚無技術(shù)能達(dá)到此功能。
發(fā)明概述如上述,本發(fā)明提供一個(gè)計(jì)算機(jī)系統(tǒng),此計(jì)算機(jī)系統(tǒng)的起始程序的執(zhí)行只使用序列存取內(nèi)存來完成,因此無須額外的非揮發(fā)性隨機(jī)存取內(nèi)存。
此可由本發(fā)明的計(jì)算機(jī)系統(tǒng)來達(dá)成,包括處理器,一個(gè)具有激活程序儲(chǔ)存其中的序列存取內(nèi)存,以及一個(gè)激活加載器(boot loader)。激活加載器包含狀態(tài)機(jī),可響應(yīng)計(jì)算機(jī)系統(tǒng)的起始,并控制序列存取內(nèi)存去讀取含有激活程序第一部份的序列內(nèi)存的第一頁(yè)。于設(shè)計(jì)激活碼第一部份時(shí),需了解序列內(nèi)存只能由內(nèi)存?zhèn)魉瓦B續(xù)的記憶字符至處理器。激活碼第一部份指示處理器將激活碼第二部分復(fù)制至揮發(fā)性RAM。一旦激活碼第二部分復(fù)制至RAM,激活碼第一部份執(zhí)行一分支(跳躍,jump)指令,將控制權(quán)轉(zhuǎn)移至RAM內(nèi)的激活碼第二部分。接著,激活碼第二部分便可利用RAM的隨機(jī)存取特性,得以執(zhí)行正常程序代碼,包括RAM內(nèi)激活碼的跳躍。激活碼第二部分便可產(chǎn)生適當(dāng)指令送至序列內(nèi)存,而將其它需要的程序代碼傳送至RAM。
對(duì)于此技藝的技術(shù)者而言,經(jīng)由下列詳細(xì)說明,并參照所附的圖式,其中,相同的參考數(shù)字對(duì)應(yīng)相同的部分,便可明白本發(fā)明的特征及優(yōu)點(diǎn)。


圖1為本發(fā)明簡(jiǎn)化的區(qū)塊圖,用以說明計(jì)算機(jī)系統(tǒng);圖2為電路圖標(biāo),用以說明圖1的計(jì)算機(jī)系統(tǒng)的激活加載器及序列存取內(nèi)存;圖3為激活加載器的接腳圖標(biāo);圖4為用以說明本發(fā)明方法的流程圖;圖5為激活加載器的狀態(tài)機(jī)的狀態(tài)圖標(biāo);圖6為本系統(tǒng)的時(shí)間安排圖標(biāo);圖7為激活加載器及序列存取內(nèi)存較詳細(xì)的電路圖標(biāo);以及圖8為簡(jiǎn)化的區(qū)塊圖標(biāo),用以說明將激活加載器及序列存取內(nèi)存置于單一集成電路。
具體實(shí)施例方式
圖1所示為本發(fā)明的計(jì)算機(jī)系統(tǒng)10,其中包含主機(jī)板12。處理器或中央處理單元(Central Processing Unit,CPU)14,或稱為微控制器或微處理器,揮發(fā)性隨機(jī)存取內(nèi)存(volatile Random Access Memory)16,以及電源供應(yīng)器18,依常見操作方式配置于主機(jī)板12。輸入/輸出(Input/Output,I/O)單元20提供主機(jī)板12至典型I/O裝置,如顯示監(jiān)視器22,鍵盤24,以及一個(gè)或多個(gè)磁盤驅(qū)動(dòng)器26間的連接。這些組件經(jīng)由信號(hào)總線、電源線、連接插頭等連接,共同地顯示于28。
依照本發(fā)明,系統(tǒng)10還包含電源良好或重新激活信號(hào)產(chǎn)生器30,于電源供應(yīng)器18激活且操作電壓達(dá)到適當(dāng)程度后,其產(chǎn)生一PWRGOOD(或RESET)信號(hào)。系統(tǒng)10更包含序列存取內(nèi)存32及激活加載器34。
內(nèi)存32最好采用UltraNANDTM內(nèi)存,可由Advanced Micro Devices(AMD)of Sunnyvale,CA.取得。此范例所顯示的內(nèi)存32為根據(jù)NAND結(jié)構(gòu)的Am30LV0064D UltraNANDTM快閃電子可拭除式可程序只讀存儲(chǔ)器(FlashElectrically Erasable Programmable Read Only Memory,EEPROM)裝置,并可儲(chǔ)存64兆位數(shù)據(jù)。數(shù)據(jù)儲(chǔ)存于16,384內(nèi)存頁(yè)里,每頁(yè)含有512字節(jié)的正常數(shù)據(jù)及16字節(jié)的備用數(shù)據(jù)。依照本發(fā)明,內(nèi)存32由其最低的內(nèi)存頁(yè)開始儲(chǔ)存激活碼指令,并于計(jì)算機(jī)系統(tǒng)10起始后(開啟電源或重新激活)開始執(zhí)行。且無使用非揮發(fā)性RAM作為此用途。
圖2所示為激活加載器34及內(nèi)存32,且激活加載器34的接腳圖標(biāo)顯示于圖3。激活加載器34最好采用AmPALLV16V8-10SC可程序邏輯裝置(Programmable Logic Device,PLD),可由Vantis Corporation ofSunnyvale,CA取得。內(nèi)存32及激活加載器34的詳細(xì)結(jié)構(gòu)及操作將于下列說明的。
圖4為流程圖,用以說明本發(fā)明以系統(tǒng)10執(zhí)行激活帶(bootstrap)加載方法。于起始后,激活加載器34抑制處理機(jī)14,從而防止其嘗試執(zhí)行指令。激活加載器34偵測(cè)到PWRGOOD信號(hào)后,且PWRGOOD信號(hào)顯示電源供應(yīng)器18產(chǎn)生適當(dāng)操作電壓時(shí),將變?yōu)榧せ睢?br> 激活加載器34具內(nèi)部狀態(tài)機(jī),且置入程序化邏輯于其中。于能夠讀取數(shù)據(jù)前,內(nèi)存32需設(shè)定指令寫入其中。激活加載器34的狀態(tài)機(jī)產(chǎn)生這些設(shè)定指令并寫入內(nèi)存32。首先,單元34寫入讀取指令至內(nèi)存32的指令閂。接著激活加載器34寫入地址至內(nèi)存32的地址閂。
此范例乃使用無間隔-讀取(Gapless-read)指令。無間隔-讀取指令為UltraNAND內(nèi)存32的超集指令,可使連續(xù)地輸出多路的內(nèi)存頁(yè)。亦可使用正常讀取指令,其一次可讀取一頁(yè),且當(dāng)每頁(yè)加載至528位輸出數(shù)據(jù)輸入器(output data register)時(shí),具有7微秒等待時(shí)間。無間隔-讀取指令消除了頁(yè)與頁(yè)之間的等待時(shí)間,而只有當(dāng)?shù)谝豁?yè)加載時(shí)有一個(gè)7微秒等待時(shí)間。如此,不需再送任何讀取指令至內(nèi)存,激活碼即可延伸至多路的內(nèi)存頁(yè)。激活加載器34加載至內(nèi)存32地址閂的地址,為內(nèi)存32的第一頁(yè)的地址。然而,于本發(fā)明范疇內(nèi),正常讀取指令可取代使用。
于下一步,UltraNAND內(nèi)存32由其內(nèi)部結(jié)構(gòu)讀取激活碼的第一頁(yè)至其輸出數(shù)據(jù)輸入器,并藉由設(shè)定其準(zhǔn)備好/忙碌(RY/BY#)信號(hào)至準(zhǔn)備好(Ready)狀態(tài),來指示此頁(yè)讀取操作的完成。接著激活加載器34的狀態(tài)機(jī)藉由將INIT#改為無效,以激活處理器14,使其繼續(xù)執(zhí)行指令。處理器14含有常見的狀態(tài)機(jī)或硬微碼(hard microcode),使其跳至預(yù)先決定,處理器可讀取到系統(tǒng)的激活碼的地址。系統(tǒng)會(huì)譯解此地址以便選擇內(nèi)存32。接著處理器會(huì)開始由內(nèi)存32的輸出數(shù)據(jù)輸入器內(nèi)的內(nèi)存頁(yè)讀取并執(zhí)行激活碼指令。
注意處理器會(huì)接受來自內(nèi)存激活碼指令的任何數(shù)據(jù)。處理器所顯示的激活碼地址將為內(nèi)存所忽略。此意謂相同的第一內(nèi)存頁(yè)可用于任何處理器,無論處理器使用低或高數(shù)值地址來選擇激活碼。然而,激活碼必須知道處理器用以選擇激活碼的地址。在處理器使用高內(nèi)存地址做為激活碼第一字符的情形下,激活碼必須包含跳躍指令,使得處理器的地址改變至較低地址。此地址仍須位于系統(tǒng)所譯解,用以選擇內(nèi)存32的地址范圍內(nèi)。若無跳躍指令,處理器會(huì)增加其地址,至某一點(diǎn)后,會(huì)回復(fù)至不再選擇激活內(nèi)存32的低內(nèi)存地址。所用的實(shí)際地址并不要緊,因UltraNAND裝置僅會(huì)傳送和地址總線無關(guān)的連續(xù)指令流。然而,跳躍終點(diǎn)地址必須遠(yuǎn)低于內(nèi)存頂端,以使地址維持于內(nèi)存32地址空間,直至激活碼第一部份跳至復(fù)制至RAM的激活碼第二部分。
激活碼亦需知道處理器如何讀取指令。許多處理器具有指令讀取狀態(tài)機(jī),于處理器的指令執(zhí)行狀態(tài)機(jī)實(shí)際使用指令前,會(huì)讀取指令至緩沖器。此通常稱為指令的預(yù)先讀取(prefetching)。當(dāng)執(zhí)行跳躍指令時(shí),將忽略預(yù)先讀取指令。當(dāng)跳躍指令由下一個(gè)將執(zhí)行的指令改變地址時(shí),任何預(yù)先讀取,且置于預(yù)先讀取換沖器的指令,將不執(zhí)行。此點(diǎn)很重要,因序列存取內(nèi)存會(huì)忽略處理器地址。每當(dāng)內(nèi)存讀取完成時(shí),序列地址內(nèi)存只由內(nèi)存?zhèn)魉拖乱恢噶睢R蛑噶铑A(yù)先讀取狀態(tài)機(jī)于跳躍指令執(zhí)行且清除預(yù)先讀取緩沖器前,可由內(nèi)存取得數(shù)個(gè)指令,激活碼必須知道內(nèi)存中有多少字符會(huì)為跳躍指令所摒棄。下一個(gè)需于跳躍之后執(zhí)行的指令,不可在跳躍指令之后,會(huì)在由預(yù)先讀取緩沖器被清除的范圍內(nèi)。若無法精確預(yù)測(cè)必須跳過多少字符,則在跳躍指令后,激活碼需含有足夠的不操作(No-operation,NOP)指令,以確保不會(huì)摒棄跳躍后的指令。直到下一個(gè)有效指令送達(dá)激活碼前,皆可安全地執(zhí)行跳躍后的任何NOP指令。所讀取以及稍后由預(yù)先讀取緩沖器所清除的NOP指令數(shù)目,并不會(huì)影響或干擾剩余激活碼的執(zhí)行。
處理完上述有關(guān)指令地址讀取的調(diào)整后,下一步乃是將激活碼第二部分復(fù)制至RAM。激活碼的下一指令最好為“字符串復(fù)制”(stringcopy)操作,使得內(nèi)存32中一連串緊接的字符復(fù)制至原處執(zhí)行(Executein Place,XIP)揮發(fā)性隨機(jī)存取內(nèi)存。這些指令為和激活碼第一部份相連的激活碼第二部分。XIP內(nèi)存可為RAM 16,快取緩沖儲(chǔ)存區(qū),或是處理器14里的其它內(nèi)存。
再者,因有些處理器會(huì)執(zhí)行指令預(yù)先讀取,故也許需在字符串讀取指令及激活碼第二部分起點(diǎn)間插入NOP指令。此在于確保,字符串復(fù)制開始由內(nèi)存讀取字符前,激活碼的第二部分不會(huì)讀取至預(yù)先讀取緩沖器。也許無法預(yù)測(cè)已經(jīng)在預(yù)先讀取緩沖器內(nèi)的字符,和最先由字符串復(fù)制指令所復(fù)制的字符,兩者的起始分界。因此,欲復(fù)制的字符串末端必須接著額外的NOP指令,且復(fù)制的長(zhǎng)度需確保會(huì)復(fù)制所有激活碼的第二部分。故所復(fù)制的字符串也許會(huì)包含一些NOP指令的起點(diǎn)或末端。NOP指令不會(huì)影響激活碼第一或第二部分所執(zhí)行的操作。然而,他們使已執(zhí)行的指令及已復(fù)制的字符串間的分界更有彈性。
因無法得知字符串復(fù)制里程序代碼的確切校正,故須使用已加載至XIP內(nèi)存里,部分激活帶程序內(nèi)的相對(duì)分支。
為集合XIP內(nèi)存里的激活碼第二部分,亦可使用一連串的立即移動(dòng)(move immediate)指令。如此可對(duì)程序代碼校正有較多的控制。然而,此舉將使程序代碼變大且更難設(shè)計(jì),因程序代碼第二部分需由指令流轉(zhuǎn)換至立即移動(dòng)指令流,而其欲移動(dòng)的數(shù)據(jù)為激活碼第二部分的映像。
激活碼第二部分儲(chǔ)存至XIP內(nèi)存后,由內(nèi)存32執(zhí)行的激活碼第一部份的最后一個(gè)指令,使處理器14跳至XIP內(nèi)存里的一個(gè)地址。接著,處理器開始執(zhí)行由內(nèi)存32復(fù)制而來的激活碼第二部分。此為激活帶過程,可分為幾個(gè)階段。第一階段為由序列存取內(nèi)存32執(zhí)行的激活碼。下一階段以及其后的任意階段為起始碼的額外區(qū)塊,這些區(qū)塊由內(nèi)存32復(fù)制至XIP內(nèi)存,接著跳至此執(zhí)行。雖然并未明確闡明,激活帶過程亦會(huì)繼續(xù)由硬盤加載及激活操作系統(tǒng),或是一個(gè)或多個(gè)應(yīng)用程序。
狀態(tài)機(jī)及激活加載器34相關(guān)功能最好能夠和序列存取內(nèi)存置于單一集成電路40,如圖8所示的32’及34’。此部分,例如,可藉由增加足夠的邏輯電路至序列存取內(nèi)存來執(zhí)行所需的激活加載器功能而達(dá)成。此實(shí)施例,和序列內(nèi)存需結(jié)合一小部份隨機(jī)存取內(nèi)存的方式相比,較為簡(jiǎn)單且需少裝置的修改。此乃因狀態(tài)機(jī)不需任何額外處理步驟或額外地址接腳。UltraNAND或其它序列存取內(nèi)存仍可和其它相似種類的內(nèi)存的接腳兼容。
下列為本發(fā)明的詳細(xì)功能說明概要UltraNAND生產(chǎn)線乃Advanced Micor Devices,Inc.(AMD)為滿足高密度非揮發(fā)性內(nèi)存需求所發(fā)展。應(yīng)用對(duì)象包括于固定或可移動(dòng)媒體系統(tǒng)的程序代碼及數(shù)據(jù)儲(chǔ)存。以下為激活加載器PLD和UltraNAND內(nèi)存共同使用的詳細(xì)說明。
使用微控制器系統(tǒng)通常具可程序輸入/輸出接腳(ProgrammableInput/Output,PIO),可用于直接提供UltraNAND控制信號(hào)。若無這些PIO接腳,則必須具額外的邏輯接口,以做為處理器,激活加載器,以及序列內(nèi)存間的適當(dāng)連接。激活加載器PLD可設(shè)計(jì)置于單一AmPALLV16V8-10SC芯片,其目的在于支持于激活電源后,需直接由UltraNAND裝置激活的激活碼儲(chǔ)存應(yīng)用。
ULTRANAND程序代碼儲(chǔ)存的相關(guān)優(yōu)點(diǎn)UltraNAND設(shè)計(jì)為和在市面已可取得的NAND結(jié)構(gòu)閃存,不論在硬件或軟件均可完全兼容。然而,UltraNAND為一改進(jìn)產(chǎn)品,可提供100,000次寫入程序/清除,而不需錯(cuò)誤修正電路(Error CorrectionCircuits,ECC)。UltranNAND亦具有100%良好區(qū)塊,而無須損壞區(qū)塊檢測(cè)。
每位成本較低(低于NOR Flash),不需ECC即可增加寫入程序/清除次數(shù),且具有100%的良好裝置,使得UltraNAND為理想的程序代碼儲(chǔ)存應(yīng)用。尤其是系統(tǒng)碼儲(chǔ)存于UltraNAND閃存,并轉(zhuǎn)移或投影至高速內(nèi)存資源,例如同步動(dòng)態(tài)隨機(jī)存取內(nèi)存(synchronous DRAM),以作為快速隨機(jī)存取或執(zhí)行。
激活加載器PLD對(duì)于需要直接由UltraNAND激活的程序代碼儲(chǔ)存應(yīng)用,UltraNAND起始需有某種的激活加載器。此乃因激活電源后,UltraNAND數(shù)據(jù)輸入器并無有效數(shù)據(jù)。本激活加載器PLD 34隔絕處理器和總線間連接,并提供激活所需的控制信號(hào)序列,最高可激活兩個(gè)UltraNAND快閃裝置。
起始過程釋出AMD超集無間隔讀取指令(02h)(AMD supersetGapless Read command(02h))至每個(gè)UltraNAND裝置,以預(yù)先加載含有激活碼的第一閃存頁(yè)至內(nèi)部UltraNAND數(shù)據(jù)輸入器。此可使系統(tǒng)的微控制器或處理器14于激活電源后,由內(nèi)存32讀取并執(zhí)行序列系統(tǒng)激活碼。對(duì)程序儲(chǔ)存應(yīng)用而言,系統(tǒng)的微控制器可由UltraNAND裝置32激活,接著將儲(chǔ)存于UltraNAND內(nèi)的程序代碼剩余部分轉(zhuǎn)移至RAM,以執(zhí)行程序代碼。因程序代碼可由RAM執(zhí)行,故稱的為原處執(zhí)行(Execute-in-Place,XIP)內(nèi)存。
激活存取的ULTRANAND接口需求UltraNAND內(nèi)存32采用多路傳輸?shù)刂?數(shù)據(jù)總線。所有指令、地址、以及數(shù)據(jù)經(jīng)由I/O
(八位I/O端口)傳入或傳出裝置。裝置所提供的控制信號(hào)有CE#(芯片激活,Chip Enable)、CLE(指令閂激活,Command Latch Enable)、ALE(地址閂激活,Address Latch Enable)、WE#(寫入激活,Write Enable)、SE#(備用區(qū)域激活,Spare Area Enable)、以及WP#(寫入保護(hù),Write Protect)。此外亦有開啟汲極RY/BY#(準(zhǔn)備好/忙碌,Ready/Busy)輸出接腳,用于指示何時(shí)裝置正在忙于內(nèi)部操作。
使用UltraNAND的系統(tǒng)應(yīng)用必須產(chǎn)生適當(dāng)控制信號(hào)給裝置,而這些裝置,在很多情形下并未被其它系統(tǒng)資源所使用。此處所述的激活加載器PLD 34,提供裝置起始時(shí),UltraNAND內(nèi)存32所需的全部獨(dú)特信號(hào)。
為了將UltraNAND裝置內(nèi)所含的一頁(yè)數(shù)據(jù)轉(zhuǎn)移至內(nèi)部數(shù)據(jù)輸入器,需執(zhí)行指令及地址序列。于指令及地址輸入之后,UltraNAND裝置會(huì)于7微秒的讀取等待時(shí)間周期內(nèi)(最壞情形),將數(shù)據(jù)由適當(dāng)?shù)目扉W頁(yè)轉(zhuǎn)移至數(shù)據(jù)輸入器,且在此時(shí)裝置會(huì)顯示忙碌。一旦非揮發(fā)性頁(yè)的數(shù)據(jù)成功地轉(zhuǎn)移至數(shù)據(jù)輸入器,UltraNAND裝置會(huì)預(yù)備好,且系統(tǒng)可連續(xù)地以最快每字節(jié)50奈秒的速度,由快閃裝置32讀取有效數(shù)據(jù)。
系統(tǒng)接口說明于此范例,激活加載器PLD單元34支持單一UltraNAND裝置32。于激活加載過程中,激活加載器PLD暫時(shí)變?yōu)橛蒛ltraNAND快閃所需的正常系統(tǒng)控制信號(hào)來源。激活加載器PLD接著便可產(chǎn)生UltraNAND起始所需的信號(hào)序列。
電源良好信號(hào)產(chǎn)生器30提供PWRGOOD輸入信號(hào)至激活加載器PLD 34,其仍維持在低點(diǎn),直至Vcc有效。當(dāng)PWRGOOD由無效狀態(tài)(低點(diǎn),low)過渡至有效狀態(tài)(高點(diǎn),high),激活加載器PLD 34偵測(cè)到此過渡并起始UltraNAND裝置32。
于某些無PWRGOOD信號(hào)的應(yīng)用,可使用系統(tǒng)RESET#信號(hào)。激活加載器PLD所產(chǎn)生的INIT#(起始)信號(hào),乃用于指示激活加載器PLD34正忙于起始UltraNAND裝置32。系統(tǒng)10必須監(jiān)控INIT#信號(hào),并隔絕系統(tǒng)微控制器14和總線間的連接,直至INIT#變?yōu)闊o效(高點(diǎn))。一旦INIT#指示UltraNAND激活過程已完成,系統(tǒng)10便可允許微控制器14由UltraNAND裝置讀取數(shù)據(jù)。
許多情形下,INIT#信號(hào)可作為系統(tǒng)10其它部分的重新激活信號(hào)。正常系統(tǒng)RESET#信號(hào)只到達(dá)激活加載器PLD 34,且激活加載器使用INIT#信號(hào)使系統(tǒng)10的其余部分維持在重新激活狀態(tài),直到UltraNAND裝置32可開始讀取為止。
于激活加載器過程的地址階段,直到裝置變?yōu)槊β禒顟B(tài)前,地址字節(jié)會(huì)寫入U(xiǎn)ltraNAND。如此可使激活加載器34支持需三個(gè)或以上地址脈沖的裝置。于激活加載器起始過程后,激活加載器會(huì)三態(tài)(tri-state)WE#、CLE、ALE、及I/O1,并將CE0#及CE1#由系統(tǒng)總線28傳至UltraNAND裝置。
激活加載器信號(hào)說明UltraNAND激活加載器34利用無間隔讀取指令序列產(chǎn)生起始一或二個(gè)UltraNAND裝置所需的所有信號(hào)。PLD 34內(nèi)的簡(jiǎn)易狀態(tài)機(jī)控制INIT#、WE#、CLE、ALE、及I/O1,藉此控制UltraNAND的起始。為了啟始激活加載器PLD,系統(tǒng)需提供SYSCLK(系統(tǒng)時(shí)間,SystemClock)及PWRGOOD(電源良好指示)。所有適用信號(hào)的定義用于產(chǎn)生信號(hào)的來源均列于下表。激活加載器起始順序的時(shí)間圖標(biāo)表示于圖6。

激活加載器PLD操作原理此節(jié)將說明激活加載器PLD 34的設(shè)計(jì)及操作。激活加載器PLD 34使用flip-flops作為狀態(tài)機(jī)及I_01。組合邏輯用于產(chǎn)生控制最高為兩個(gè)UltraNAND 32裝置的其它所有信號(hào)。本節(jié)所指定的裝置參考指示顯示于圖7,其為“支持兩個(gè)UltraNAND裝置的典型激活加載器應(yīng)用”的圖例。
輸出信號(hào)產(chǎn)生INIT#為一組合輸出信號(hào),用于通知系統(tǒng)激活加載器PLD 34正處于起始UltraNAND 32數(shù)組狀態(tài)。當(dāng)INIT#激活,系統(tǒng)10必須維持三態(tài)系統(tǒng)信號(hào)(如地址線或PIO接腳),這些信號(hào)使用于正常系統(tǒng)操作,用以驅(qū)動(dòng)UltraNAND CLE、ALE、WE#、及I/O
信號(hào)。許多情形下,INIT#信號(hào)可作為至其它系統(tǒng)組件的重新激活信號(hào),因重新激活狀態(tài)通常會(huì)使處理器輸出維持在三態(tài)狀態(tài)。
于INIT#時(shí)期,PLD 34將指令及地址數(shù)據(jù)送至UltraNAND 32數(shù)據(jù)總線,并控制UltraNAND起始所需的CLE、ALE、及WE#。于指令階段,CLE激活,且I_01用于將02h值送至UltraNAND 32數(shù)據(jù)總線,以將無間隔讀取指令寫入U(xiǎn)ltraNAND 32。于地址階段,CLE關(guān)閉,ALE激活,將00h值送至UltraNAND 32數(shù)據(jù)總線。
藉此激活加載器PLD 34可將區(qū)塊0,頁(yè)0,字節(jié)0的地址加載至UltraNAND 32裝置,使系統(tǒng)于起始后由第一字節(jié)開始讀取。于INIT#,不管芯片激活輸入的狀態(tài)為何,PLD 32會(huì)激活輸出芯片激活。此可使激活加載器PLD 34于激活加載器操作時(shí),同時(shí)起始最高可達(dá)兩個(gè)的UltraNAND 32裝置。
I_01為三態(tài)登錄輸出,于激活加載器PLD 34起始階段時(shí),用以將無間隔讀取指令寫入U(xiǎn)ltraNAND 32裝置。當(dāng)INIT#激活時(shí),系統(tǒng)需將UltraNAND 32數(shù)據(jù)總線,I/O
維持在三態(tài)。當(dāng)下拉電阻R4使其它所有數(shù)據(jù)位維持在低點(diǎn),I_01便可于指令階段變?yōu)楦唿c(diǎn),并將02hop-code寫入至UltraNAND 32。于地址階段,I_01處于低點(diǎn),使得所有地址周期將00h值寫入U(xiǎn)ltraNAND 32地址登錄器。OUTCE
#為激活UltraNAND 32裝置所需的兩個(gè)芯片激活輸出。
于激活加載器運(yùn)作的INIT#時(shí)期,芯片激活必須強(qiáng)迫激活。一旦INIT#變?yōu)殛P(guān)閉(高點(diǎn)),芯片激活輸出乃由芯片激活輸入所決定。ST
為四個(gè)三態(tài)登錄狀態(tài)位,用于定義狀態(tài)機(jī)狀態(tài),最高可至16個(gè)狀態(tài),其中9個(gè)狀態(tài)為實(shí)際使用的。于INIT#激活時(shí)期,亦激活這些位,當(dāng)INIT#關(guān)閉時(shí),則處于三態(tài)。
其中三個(gè)狀態(tài)位用于定義WE#(ST0)、CLE(ST1)、及ALE(ST2)。激活加載器PLD 34內(nèi)的狀態(tài)機(jī)為典型米力(Mealy)機(jī),其中PLD輸出乃依據(jù)電流狀態(tài)及輸入條件。AmPALLV16V8-10SC裝置34激活時(shí),所有登錄輸出位于高點(diǎn)狀態(tài)。因此,狀態(tài)機(jī)定義IDLE狀態(tài)為所有均為輸出條件。
狀態(tài)01至狀態(tài)09為灰階編碼變化(gray coded variations),以消除組合輸出的噪聲脈沖,并避免不同步輸入所導(dǎo)致的競(jìng)爭(zhēng)情形。狀態(tài)機(jī)的流程圖顯示于圖5。
ST0,如同WE#,乃是于起始時(shí),用于將數(shù)據(jù)寫入U(xiǎn)ltraNAND 32快閃。于起始時(shí)期,系統(tǒng)必須使系統(tǒng)WE#輸入至UltraNAND 32維持三態(tài)。一旦起始完成,激活加載器PLD 34會(huì)三態(tài)其WE#輸出,接著系統(tǒng)10需要時(shí)便可驅(qū)動(dòng)WE#。
ST1,如同CLE,乃于起始時(shí),用于激活寫入至UltraNAND快閃Flash 32的指令。于起始時(shí)期,系統(tǒng)必須使系統(tǒng)CLE輸入至UltraNAND 32維持三態(tài)。一旦起始完成,激活加載器PLD 34會(huì)三態(tài)其CLE輸出,接著系統(tǒng)10需要時(shí)便可驅(qū)動(dòng)CLE。
ST2,如同ALE,乃于起始時(shí),用于激活寫入至UltraNAND快閃Flash 32的地址。于起始階段,系統(tǒng)必須使系統(tǒng)ALE輸入至UltraNAND32維持三態(tài)。一旦起始完成,激活加載器PLD 34會(huì)三態(tài)其ALE輸出,接著系統(tǒng)10需要時(shí)便可驅(qū)動(dòng)ALE。
其它信號(hào)CE
#乃由系統(tǒng)10所產(chǎn)生的兩個(gè)芯片激活輸入信號(hào),用以選擇UltraNAND 32裝置。于起始過程,CE
#輸入被激活加載器PLD 34所忽略,且OUTCE
#激活,以選擇所用的UltraNAND 32裝置。一旦起始完成,激活加載器PLD 34只將系統(tǒng)10的CE
#信號(hào)經(jīng)由OUTCE
#輸出,傳至UltraNAND 32裝置。
PWRGOOD為系統(tǒng)所產(chǎn)生的信號(hào),用以指示激活加載器PLD 34何時(shí)該起始UltraNAND 32快閃裝置。激活電源時(shí),PWRGOOD維持在無效(低點(diǎn)),直至Vcc有效。激活加載器PLD 34供給電源后,狀態(tài)機(jī)變?yōu)镮DLE狀態(tài),直到PWRGOOD變?yōu)榧せ?高點(diǎn))才解除。一旦激活加載器PLD 34偵測(cè)到PWRGOOD由低點(diǎn)到高點(diǎn)的變化,激活加載器PLD 34便會(huì)繼續(xù)起始UltraNAND閃存32。
若系統(tǒng)無PWRGOOD信號(hào),系統(tǒng)的RESET#信號(hào)亦可執(zhí)行相同功能。當(dāng)RESET#變?yōu)榧せ?低點(diǎn))以重新激活系統(tǒng)時(shí),激活加載器的狀態(tài)機(jī)會(huì)進(jìn)入IDLE狀態(tài)。當(dāng)RESET#關(guān)閉時(shí)(高點(diǎn)),激活加載器便會(huì)起始UltraNAND 32裝置。
RY/BY#乃由UltraNAND 32裝置所產(chǎn)生,用以指示何時(shí)裝置正忙于內(nèi)部操作。系統(tǒng)10亦可使用RY/BY#硬件信號(hào),或讀取狀態(tài)登錄機(jī)內(nèi)的RY/BY#狀態(tài)位,以決定何時(shí)操作正在進(jìn)行,或是已經(jīng)完成。激活加載器PLD 34經(jīng)由READY輸入,監(jiān)控RT/BY#信號(hào),以決定何時(shí)UltraNAND快閃32已完成將數(shù)據(jù)由內(nèi)部快閃數(shù)組轉(zhuǎn)移至內(nèi)部數(shù)據(jù)輸入器。于此時(shí),起始內(nèi)存32,且控制權(quán)可轉(zhuǎn)移至系統(tǒng)10。
SYSCLK為激活加載器PLD 34所需,用以驅(qū)動(dòng)裝置狀態(tài)機(jī)。因UltraNAND 32具有最小寫入脈沖寬度規(guī)格25奈秒,SYSCLK的最大頻率為40兆赫。
激活加載器狀態(tài)機(jī)激活加載器PLD 34中具有簡(jiǎn)易的狀態(tài)機(jī),用以執(zhí)行UltraNAN起始。激活加載器狀態(tài)機(jī)驅(qū)動(dòng)激活加載器PLD 34輸出,以提供用于起始一個(gè)或兩個(gè)UltraNAND 32裝置時(shí)所需的適當(dāng)信號(hào)。激活加載器PLD狀態(tài)機(jī)的流程圖示于圖5。
實(shí)行細(xì)節(jié)如此處所述的激活加載器PLD,于激活電源后,PLD最高可起始兩個(gè)UltraNAND裝置。當(dāng)使用激活加載器PLD時(shí),一些基本系統(tǒng)接口考量亦需考慮。
CLE、ALE、WE#、及I/O
的三態(tài)控制于激活電源后,當(dāng)激活加載器PLD正在起始UltraNAND快閃時(shí),激活加載器過程必須必須控制I/O
、CLE、ALE、以及系統(tǒng)WE#信號(hào)。因此,當(dāng)INIT#有效時(shí)(低點(diǎn))系統(tǒng)必須使這些信號(hào)處于三態(tài)狀態(tài)。一旦INIT#變?yōu)楦唿c(diǎn),表示激活加載器起始已經(jīng)完成,系統(tǒng)接著便可適當(dāng)?shù)仳?qū)動(dòng)這些信號(hào)。
序列激活碼范例因系統(tǒng)位置總線并非直接決定UltraNAND快閃讀取地址,故頂端或底端激活微控制器不需不同的PLD。系統(tǒng)的地址譯碼器邏輯僅需保證當(dāng)激活電源及快閃起始后,UltraNAND可開始讓微控制器讀取程序代碼。以下的范例為在x86等級(jí)微控制器中,系統(tǒng)激活碼如何儲(chǔ)存于UltraNAND快閃激活區(qū)域。
一旦起始UltraNAND,系統(tǒng)微控制器便可連續(xù)地直接由UltraNAND數(shù)據(jù)輸入器開始讀取程序代碼。
如果系統(tǒng)里的處理器使用低內(nèi)存地址作為激活碼的起點(diǎn),儲(chǔ)存于快閃裝置的激活碼不會(huì)使微控制器來回分支或跳躍。此舉可確保,由任何處理器的指令預(yù)先讀取邏輯自UltraNAND所讀取的指令,以及實(shí)際指令執(zhí)行順序,彼此之間沒有中斷。
如果處理器使用高內(nèi)存地址作為激活碼的第一字符,程序代碼必須包含跳躍指令,使得處理器的地址變?yōu)檩^低的地址,但仍須位于系統(tǒng)所譯解,用以選擇內(nèi)存32的地址范圍內(nèi)。若無跳躍指令,處理器會(huì)增加其地址,至某一點(diǎn)后,會(huì)回復(fù)至不再選擇激活內(nèi)存32的低內(nèi)存地址。
當(dāng)預(yù)先讀取緩沖器被跳躍所清除時(shí),跳躍會(huì)使一些由預(yù)先讀取的指令流所得的字節(jié)被摒棄。因無法得知預(yù)先讀取緩沖器里有多少數(shù)目的字節(jié)會(huì)被跳躍所摒棄,故于跳躍填滿整個(gè)預(yù)先讀取緩沖器后,需有足夠的NOP指令。
最先直接由UltraNAND裝置所執(zhí)行的激活碼僅由UltraNAND裝置加載較為廣泛的激活帶程序至XIP內(nèi)存資源,如靜態(tài)隨機(jī)存儲(chǔ)器(SRAM)或動(dòng)態(tài)隨機(jī)存取內(nèi)存(DRAM)。加載激活帶程序代碼可藉由字符串移動(dòng)或連續(xù)立即移動(dòng)指令來完成。
若使用字符串移動(dòng),字符串指令后的指令流于起點(diǎn)及末端必須具足夠的NOP指令,以填滿處理器所使用的指令預(yù)先讀取緩沖器。此舉可確保由字符串移動(dòng)讀取操作所取得的程序代碼流,由預(yù)先讀取緩沖器填滿后的位置開始。因無法預(yù)測(cè)預(yù)先讀取緩沖器停止由UltraNAND讀取字節(jié)的確切位置,以及字符串移動(dòng)操作開始讀取字節(jié)的位置,故加載至XIP內(nèi)存資源的程序代碼或許會(huì)開始于一些余留的NOP指令。
因無法控制程序碼的確切校正,故須使用已加載至XIP內(nèi)存里,部分激活帶程序內(nèi)的相對(duì)分支。對(duì)需要嚴(yán)格控制程序碼字節(jié)校正的處理器而言,立即移動(dòng)指令流或許為較好的方式來加載激活帶程序代碼至XIP內(nèi)存。
一旦激活碼于XIP內(nèi)存組集合之后,最后一個(gè)指令會(huì)使微控制器跳至激活碼執(zhí)行。下列的范例包含以組合程序代碼形式的x86激活碼序列,其將會(huì)于起始后,由Ultra NAND連續(xù)地執(zhí)行。
定義

程序代碼范例

總結(jié)上述,本發(fā)明提供一組只使用序列存取內(nèi)存,便完成起始程序執(zhí)行的計(jì)算機(jī)系統(tǒng),因此,不需獨(dú)立的非揮發(fā)性隨機(jī)存取內(nèi)存。
對(duì)于此技藝的技術(shù)者而言,于了解本揭示之后,只要不背離本發(fā)明的范疇,便可做不同的修改。
權(quán)利要求
1.一種計(jì)算機(jī)系統(tǒng),包含一個(gè)處理器;一個(gè)用于儲(chǔ)存激活程序的序列存取內(nèi)存;以及一個(gè)激活加載器,用以控制序列存取內(nèi)存,以讀取激活程序,并控制該處理器,以便執(zhí)行該序列存取內(nèi)存里的激活程序,響應(yīng)計(jì)算機(jī)系統(tǒng)的起始。
2.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活加載器配置為可輸入讀取指令及地址至序列存取內(nèi)存,接著控制該序列存取內(nèi)存執(zhí)行讀取指令。
3.如權(quán)利要求2所述的計(jì)算機(jī)系統(tǒng),其中序列存取內(nèi)存配置為儲(chǔ)存激活程序于至少一個(gè)內(nèi)存頁(yè);以及讀取指令使讀取內(nèi)存第一頁(yè)。
4.如權(quán)利要求3所述的計(jì)算機(jī)系統(tǒng),其中,該讀取指令為無間隔讀取指令。
5.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中該激活加載器配置為可抑制處理器,直至序列存取內(nèi)存使部份激活程序可讀取,并致能處理器;以及致能該處理器后,由該序列存取內(nèi)存讀取及執(zhí)行激活程序。
6.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活加載器配置為于計(jì)算機(jī)系統(tǒng)起始后會(huì)被激活。
7.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活加載器包含可程序邏輯裝置。
8.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活加載器包含狀態(tài)機(jī)。
9.如權(quán)利要求8所述的計(jì)算機(jī)系統(tǒng),其中,該激活加載器包含可程序邏輯裝置,且狀態(tài)機(jī)置于其中。
10.如權(quán)利要求8所述的計(jì)算機(jī)系統(tǒng),其中,該狀態(tài)機(jī)配置為可輸入讀取指令及地址至序列存取內(nèi)存,接著控制該序列存取內(nèi)存執(zhí)行讀取指令。
11.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活程序配置為可控制處理器將激活碼由序列存取內(nèi)存轉(zhuǎn)移至揮發(fā)性隨機(jī)存取內(nèi)存(RAM),接著跳至隨機(jī)存取內(nèi)存(RAM)里的激活碼。
12.如權(quán)利要求11所述的計(jì)算機(jī)系統(tǒng),其中,該隨機(jī)存取內(nèi)存(RAM)包含在處理器里的快速緩沖貯存內(nèi)存。
13.如權(quán)利要求11所述的計(jì)算機(jī)系統(tǒng),其中,該隨機(jī)存取內(nèi)存(RAM)包含與該處理器分離的原處執(zhí)行內(nèi)存(Execute-inPlace,XIP)。
14.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該序列存取內(nèi)存及激活加載器置于單一集成電路中。
15.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活程序配置為可預(yù)測(cè)處理器的程序地址邏輯行為,以使處理器地址保持在選擇序列存取內(nèi)存的地址范圍內(nèi)。
16.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活程序配置為可預(yù)測(cè)任何程序代碼預(yù)先讀取邏輯的行為,并確保必要的指令絕不會(huì)為預(yù)先讀取邏輯所預(yù)先讀取及摒棄。
17.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活程序配置為包含不操作(No-operation,NOP)指令,以作為程序代碼區(qū)塊間的填料,此處,程序代碼流會(huì)因預(yù)先讀取緩沖器邏輯造成中斷。
18.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中該激活程序配置為控制處理器由序列存取內(nèi)存將激活碼轉(zhuǎn)移至揮發(fā)性隨機(jī)存取內(nèi)存(volatileRandomMemory),接著跳至隨機(jī)存取內(nèi)存里的激活碼;以及激活程序更進(jìn)一步配置為,隨機(jī)存取內(nèi)存(RAM)里的激活碼內(nèi)的分支為相對(duì)的。
19.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其中,該激活程序配置為控制處理器,使用立即移動(dòng)指令,由序列存取內(nèi)存將激活碼轉(zhuǎn)移至揮發(fā)性隨機(jī)存取內(nèi)存,接著跳至隨機(jī)存取內(nèi)存里的激活碼。
20.一種用于計(jì)算機(jī)系統(tǒng)起始程序執(zhí)行的方法,其中,包含處理器及序列存取內(nèi)存,所包括的步驟有(a)儲(chǔ)存激活程序于序列存取內(nèi)存;(b)提供激活加載器,用以控制序列存取內(nèi)存,使讀取激活程序,并控制處理器,以便響應(yīng)計(jì)算機(jī)系統(tǒng)的起始,跳至序列存取內(nèi)存里的激活程序;以及(c)起始計(jì)算機(jī)系統(tǒng)。
21.如權(quán)利要求20所述的方法,其中,步驟(b)包含配置激活加載器,使輸入讀取指令以及地址至序列存取內(nèi)存,接著控制該序列存取內(nèi)存執(zhí)行讀取指令。
22.如權(quán)利要求21所述的方法,其中;步驟(a)包含配置序列存取內(nèi)存,以儲(chǔ)存激活程序于至少一內(nèi)存頁(yè);以及步驟(b)包含配置激活加載器,使得讀取指令能使讀取第一內(nèi)存頁(yè)。
23.如權(quán)利要求22所述的方法,其中,該讀取指令為無間隔讀取指令。
24.如權(quán)利要求20所述的方法,其中;步驟(b)包含配置激活加載器,以抑制處理器,直到序列存取內(nèi)存至少讀取部份的激活程序,接著致能處理器;以及致能處理器后,執(zhí)行序列存取內(nèi)存里的激活程序。
25.如權(quán)利要求20所述的方法,其中,步驟(b)包含配置激活加載器于計(jì)算機(jī)系統(tǒng)起始后被激活。
26.如權(quán)利要求20所述的方法,其中,步驟(b)包含配置激活加載器,此激活加載器包含可程序邏輯裝置。
27.如權(quán)利要求20所述的方法,其中,步驟(b)包含配置激活加載器,此激活加載器包含狀態(tài)機(jī)。
28.如權(quán)利要求27所述的方法,其中,步驟(b)包含配置激活加載器,此激活加載器包含可程序邏輯裝置,且狀態(tài)機(jī)置于其中。
29.如權(quán)利要求27所述的方法,其中,該狀態(tài)機(jī)配置為輸入讀取指令以及地址至序列存取內(nèi)存,接著控制序列存取內(nèi)存執(zhí)行讀取指令。
30.如權(quán)利要求20所述的方法,更進(jìn)一步包含有步驟(d)設(shè)有揮發(fā)性隨機(jī)存取內(nèi)存,其中步驟(a)包含配置激活程序,以控制處理器以將激活碼由序列存取內(nèi)存轉(zhuǎn)移至隨機(jī)存取內(nèi)存(RAM),接著跳至隨機(jī)存取內(nèi)存里的激活碼。
31.如權(quán)利要求30所述的方法,其中,步驟(d)包含設(shè)有隨機(jī)存取內(nèi)存,此隨機(jī)存取內(nèi)存包含處理器里的快速緩沖貯存內(nèi)存。
32.如權(quán)利要求30所述的方法,其中,步驟(d)包含設(shè)有隨機(jī)存取內(nèi)存,此隨機(jī)存取內(nèi)存包含和處理器分離的原處執(zhí)行內(nèi)存(Execute-in-Place,XIP)。
33.如權(quán)利要求20所述的方法,其中,步驟(b)包含將激活加載器及序列存取內(nèi)存置于單一集成電路。
34.如權(quán)利要求20所述的方法,其中,步驟(a)包含配置激活程序,使能預(yù)測(cè)處理器的程序地址邏輯行為,以便使處理器地址保持在選擇序列存取內(nèi)存的地址范圍內(nèi)。
35.如權(quán)利要求20所述的方法,其中,步驟(a)包含配置激活程序,使能預(yù)測(cè)任何程序代碼預(yù)先讀取邏輯的行為,并確保必要的指令絕不會(huì)被預(yù)先讀取邏輯所預(yù)先讀取及摒棄。
36.如權(quán)利要求20所述的方法,其中,步驟(a)包含配置激活程序,使包含不操作(No-operation,NOP)指令,以作為程序代碼區(qū)塊間的填料,此處,程序代碼流會(huì)因預(yù)先讀取緩沖器邏輯造成中斷。
37.如權(quán)利要求20所述的方法,其中步驟(a)包含配置激活程序,以控制處理器由序列存取內(nèi)存將激活碼轉(zhuǎn)移至揮發(fā)性隨機(jī)存取內(nèi)存,接著跳至隨機(jī)存取內(nèi)存里的激活碼;以及步驟(a)更進(jìn)一步包含配置激活程序,使隨機(jī)存取內(nèi)存里的激活碼內(nèi)的分支為相對(duì)的。
38.如權(quán)利要求20所述的方法,其中,步驟(a)包含配置激活程序,以控制處理器使用立即移動(dòng)指令,由序列存取內(nèi)存將激活碼轉(zhuǎn)移至揮發(fā)性隨機(jī)存取內(nèi)存,接著跳至隨機(jī)存取內(nèi)存里的激活碼。
全文摘要
本發(fā)明提供一種計(jì)算機(jī)系統(tǒng),包含處理器,以及具有激活程序儲(chǔ)存于其中的序列存取內(nèi)存。激活加載器包含狀態(tài)機(jī),可響應(yīng)計(jì)算機(jī)系統(tǒng)的起始,并控制序列存取內(nèi)存,以讀取激活程序,接著控制處理器,使跳至序列內(nèi)存的激活程序。激活程序的第一內(nèi)存頁(yè)更進(jìn)一步使激活碼轉(zhuǎn)移至隨機(jī)存取內(nèi)存(RAM)。處理器接著跳至RAM里的程序代碼,使得剩余的激活碼由序列存取內(nèi)存轉(zhuǎn)移至RAM并執(zhí)行。
文檔編號(hào)G06F9/445GK1556950SQ00818342
公開日2004年12月22日 申請(qǐng)日期2000年12月15日 優(yōu)先權(quán)日2000年1月14日
發(fā)明者瑞夫·E·吉普森, 羅南·J·雪林斯基, 馬克·A·麥克林, A 麥克林, J 雪林斯基, 瑞夫 E 吉普森 申請(qǐng)人:先進(jìn)微裝置公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
凤庆县| 库伦旗| 瓮安县| 桂平市| 忻城县| 临泉县| 葫芦岛市| 荆门市| 肃宁县| 即墨市| 芒康县| 洛浦县| 西丰县| 鄂托克前旗| 广南县| 苏州市| 云林县| 凭祥市| 康定县| 黄大仙区| 阿拉善左旗| 双峰县| 凌海市| 周口市| 晋州市| 乡宁县| 乐平市| 巨野县| 双峰县| 陇西县| 甘德县| 英吉沙县| 云和县| 同仁县| 襄汾县| 蛟河市| 屏边| 屏边| 华坪县| 凤凰县| 玉环县|