以來(lái)已經(jīng)被寫(xiě)入有數(shù)據(jù)時(shí)設(shè)置刷新標(biāo)記。因此,設(shè)置的刷新標(biāo)記指示(一個(gè)或多個(gè))存儲(chǔ)器裝置140中的所有邏輯塊地址自最近電力重置操作以來(lái)已經(jīng)被寫(xiě)入有新數(shù)據(jù)。
[0030]如果,在操作425,沒(méi)有設(shè)置刷新標(biāo)記,則(一個(gè)或多個(gè))存儲(chǔ)器裝置140中的數(shù)據(jù)中的一些自最近電力重置操作以來(lái)沒(méi)被重新寫(xiě)入。在這種情況下,控制轉(zhuǎn)到操作430,并且控制器122將零寫(xiě)入至(一個(gè)或多個(gè))存儲(chǔ)器裝置140的邏輯地址空間中的所有地址,實(shí)質(zhì)上迫使(一個(gè)或多個(gè))存儲(chǔ)器裝置140的非易失性存儲(chǔ)器響應(yīng)于電力重置而仿真易失性存儲(chǔ)器的調(diào)零功能。這在圖5A中圖示。
[0031]控制然后轉(zhuǎn)到操作435,并且清除刷新標(biāo)記。在操作440,全局序列號(hào)包纏回至零,并且在操作445,系列位反轉(zhuǎn)。
[0032]相反,如果在操作425,設(shè)置了刷新標(biāo)記,則不存在將零寫(xiě)入至(一個(gè)或多個(gè))存儲(chǔ)器裝置140中的非易失性存儲(chǔ)器的需要,并且控制可以直接轉(zhuǎn)到操作435-445。這在圖5B中圖示。
[0033]因此,圖4中描繪的操作確保包纏回至零的全局序列號(hào)不導(dǎo)致數(shù)據(jù)從具有高于全局序列號(hào)的介質(zhì)序列號(hào)的(一個(gè)或多個(gè))存儲(chǔ)器裝置140中的邏輯塊地址的錯(cuò)誤讀取。
[0034]如上所述,在一些實(shí)施例中,電子裝置可以體現(xiàn)為計(jì)算機(jī)系統(tǒng)。圖6圖示了根據(jù)本發(fā)明的實(shí)施例的計(jì)算系統(tǒng)600的框圖。計(jì)算系統(tǒng)600可以包括經(jīng)由互連網(wǎng)絡(luò)(或總線)604通信的一個(gè)或多個(gè)中央處理單元(CPU)602或處理器。處理器602可以包括通用處理器,網(wǎng)絡(luò)處理器(其處理通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)603通信的數(shù)據(jù)),或者其它類型的處理器(包括簡(jiǎn)化指令集計(jì)算機(jī)(RISC)處理器或復(fù)雜指令集計(jì)算機(jī)(CISC))。此外,處理器602可以具有單核或多核設(shè)計(jì)。具有多核設(shè)計(jì)的處理器602可以在相同的集成電路(1C)管芯上集成不同類型的處理器內(nèi)核。而且,具有多核設(shè)計(jì)的處理器602可以被實(shí)現(xiàn)為對(duì)稱或非對(duì)稱多處理器。在實(shí)施例中,處理器602中的一個(gè)或多個(gè)可以與圖1中的處理器102相同或類似。例如,處理器602中的一個(gè)或多個(gè)可以包括參考圖1-3討論的控制單元120。而且,參考圖3-5討論的操作可以由系統(tǒng)600的一個(gè)或多個(gè)部件執(zhí)行。
[0035]芯片組606也可以與互連網(wǎng)絡(luò)604通信。芯片組606可以包括存儲(chǔ)器控制集線器(MCH)608oMCH 608可以包括與存儲(chǔ)器612(其可以與圖1的存儲(chǔ)器130相同或類似)通信的存儲(chǔ)器控制器610。存儲(chǔ)器412可以存儲(chǔ)包括指令的序列的數(shù)據(jù),所述數(shù)據(jù)可以由CPU 602或包括在計(jì)算系統(tǒng)600中的任何其它裝置執(zhí)行。在本發(fā)明的一個(gè)實(shí)施例中,存儲(chǔ)器612可以包括一個(gè)或多個(gè)易失性存儲(chǔ)(或存儲(chǔ)器)裝置,諸如隨機(jī)存取存儲(chǔ)器(RAM)、動(dòng)態(tài)RAM(DRAM)、同步DRAM(SDRAM)、靜態(tài)RAM(SRAM)、或其它類型的存儲(chǔ)裝置。也可以利用非易失性存儲(chǔ)器,諸如硬盤(pán)。附加的裝置(諸如多個(gè)CPU和/或多個(gè)系統(tǒng)存儲(chǔ)器)可以經(jīng)由互連網(wǎng)絡(luò)604通信。
[0036]MCH 608也可以包括與顯示裝置616通信的圖形接口614。在本發(fā)明的一個(gè)實(shí)施例中,圖形接口 614可以經(jīng)由加速圖形端口(AGP)與顯示裝置616通信。在本發(fā)明的實(shí)施例中,顯示器616(諸如平板顯示器)可以通過(guò)例如信號(hào)轉(zhuǎn)換器來(lái)與圖形接口 614通信,所述信號(hào)轉(zhuǎn)換器將存儲(chǔ)在存儲(chǔ)裝置(諸如視頻存儲(chǔ)器或系統(tǒng)存儲(chǔ)器)中的圖像的數(shù)字表示轉(zhuǎn)化為由顯示器616解譯且顯示的顯示信號(hào)。由顯示裝置產(chǎn)生的顯示信號(hào)可以在由顯示器616解譯且隨后顯示在顯示器616上之前經(jīng)過(guò)各種控制裝置。
[0037]集線器接口618可以允許MCH 608和輸入/輸出控制集線器(ICH)620進(jìn)行通信。ICH620可以提供到與計(jì)算系統(tǒng)600通信的(一個(gè)或多個(gè))1/0裝置的接口。ICH 620可以通過(guò)外圍橋(或控制器)624與總線622通信,所述外圍橋(或控制器)624諸如是外圍部件互連(PCI)橋、通用串行總線(USB)控制器、或其它類型的外圍橋或控制器。橋624可以提供在CPU 602與外圍裝置之間的數(shù)據(jù)路徑??梢岳闷渌愋偷耐?fù)?。而且,多個(gè)總線可以例如通過(guò)多個(gè)橋或控制器與ICH 620通信。此外,在本發(fā)明的各種實(shí)施例中,與ICH 620通信的其它外圍設(shè)備可以包括集成驅(qū)動(dòng)電子設(shè)備(IDE)或(一個(gè)或多個(gè))小計(jì)算機(jī)系統(tǒng)接口(SCSI)硬驅(qū)動(dòng)、(一個(gè)或多個(gè))USB端口、鍵盤(pán)、鼠標(biāo)、(一個(gè)或多個(gè))并行端口、( 一個(gè)或多個(gè))串行端口、( 一個(gè)或多個(gè))軟盤(pán)驅(qū)動(dòng)、數(shù)字輸出支持(例如,數(shù)字視頻接口(DVI))、或者其它裝置。
[0038]總線622可以與音頻裝置626、一個(gè)或多個(gè)磁盤(pán)驅(qū)動(dòng)628和網(wǎng)絡(luò)接口裝置630(其處于與計(jì)算機(jī)網(wǎng)絡(luò)603的通信中)通信。其它裝置可以經(jīng)由總線622進(jìn)行通信。而且,在本發(fā)明的一些實(shí)施例中,各種部件(諸如網(wǎng)絡(luò)接口裝置630)可以與MCH 608通信。此外,處理器602和本文中討論的一個(gè)或多個(gè)其它部件可以組合以形成單個(gè)芯片(例如,以提供片上系統(tǒng)(S0C))。此外,在本發(fā)明的其它實(shí)施例中,圖形加速器616可以被包括在MCH 608內(nèi)。
[0039]此外,計(jì)算系統(tǒng)600可以包括易失性和/或非易失性存儲(chǔ)器(或存儲(chǔ)設(shè)備)。例如,非易失性存儲(chǔ)器可以包括以下的一個(gè)或多個(gè):只讀存儲(chǔ)器(R0M)、可編程ROM(PROM)、可擦除PROM(EPROM)、電EPROM(EEPROM)、磁盤(pán)驅(qū)動(dòng)(例如,628)、軟盤(pán)、光盤(pán) ROM(CD-ROM)、數(shù)字通用盤(pán)(DVD)、閃速存儲(chǔ)器、磁光盤(pán)、或能夠存儲(chǔ)電子數(shù)據(jù)(例如,包括指令)的其它類型的非易失性機(jī)器可讀介質(zhì)。
[0040]圖7圖示了根據(jù)本發(fā)明的實(shí)施例的計(jì)算系統(tǒng)700的框圖。系統(tǒng)700可以包括一個(gè)或多個(gè)處理器702-1至702-N(本文中一般被稱為“多個(gè)處理器702”或“一個(gè)處理器702”)。處理器702可以經(jīng)由互連網(wǎng)絡(luò)或總線704通信。每一個(gè)處理器可以包括各種部件,為了清楚起見(jiàn)所述各種部件中的一些僅參考處理器702-1討論。因此,剩余處理器702-2至702-N中的每一個(gè)可以包括參考處理器702-1討論的相同或類似的部件。
[0041 ] 在實(shí)施例中,處理器702-1可以包括一個(gè)或多個(gè)處理器內(nèi)核706-1至706_M(本文中被稱為“多個(gè)內(nèi)核706”,或更一般地被稱為“一個(gè)內(nèi)核706” )、共享高速緩存708、路由器710、和/或處理器控制邏輯或單元720。處理器內(nèi)核706可以被實(shí)現(xiàn)在單個(gè)集成電路(1C)芯片上。此外,芯片可以包括一個(gè)或多個(gè)共享和/或私有高速緩存(諸如高速緩存708)、總線或互連(諸如總線或互連網(wǎng)絡(luò)712)、存儲(chǔ)器控制器、或其它部件。
[0042]在一個(gè)實(shí)施例中,路由器710可以用于在處理器702-1和/或系統(tǒng)700的各種部件之間通信。此外,處理器702-1可以包括多于一個(gè)路由器710。此外,該許多個(gè)路由器710可以進(jìn)行通信以實(shí)現(xiàn)在處理器702-1內(nèi)部或外部的各種部件之間的數(shù)據(jù)路由。
[0043]共享高速緩存708可以存儲(chǔ)數(shù)據(jù)(例如,包括指令),所述數(shù)據(jù)由處理器702-1的一個(gè)或多個(gè)部件(諸如內(nèi)核706)利用。例如,共享高速緩存708可以對(duì)存儲(chǔ)在存儲(chǔ)器714中的數(shù)據(jù)進(jìn)行本地緩存以用于由處理器702的部件進(jìn)行的更快的存取。在實(shí)施例中,高速緩存708可以包括中間級(jí)高速緩存(諸如2級(jí)(L2)、3級(jí)(L3)、4級(jí)(L4)、或其它級(jí)別的高速緩存)、末級(jí)高速緩存(LLC)、和/或其組合。此外,處理器702-1的各種部件可以通過(guò)總線(例如,總線712)和/或存儲(chǔ)器控制器或集線器直接與共享高速緩存708通信。如圖7中所示,在一些實(shí)施例中,內(nèi)核706中的一個(gè)或多個(gè)可以包括1級(jí)(L1)高速緩存716-1(本文中一般被稱為“L1高速緩存716”)。在一個(gè)實(shí)施例中,控制單元720可以包括邏輯以實(shí)現(xiàn)上面參考圖2中的存儲(chǔ)器控制器122描述的操作。
[0044]圖8圖示根據(jù)本發(fā)明的實(shí)施例的處理器內(nèi)核706的部分和計(jì)算系統(tǒng)的其它部件的框圖。在一個(gè)實(shí)施例中,圖8中示出的箭頭圖示指令通過(guò)內(nèi)核706的流動(dòng)方向。一個(gè)或多個(gè)處理器內(nèi)核(諸如處理器內(nèi)核706)可以被實(shí)現(xiàn)在諸如參考圖7討論的單個(gè)集成電路芯片(或管芯)上。此外,芯片可以包括一個(gè)或多個(gè)共享和/或私有高速緩存(例如,圖7的高速緩存708)、互連(例如,圖7的互連704和/或112)、控制單元、存儲(chǔ)器控制器或其它部件。
[0045]如圖8中圖示的,處理器內(nèi)核706可以包括提取單元802以提取用于由內(nèi)核706執(zhí)行的指令(包括具有條件分支的指令)。該指令可以提取自任何存儲(chǔ)裝置,諸如存儲(chǔ)器714。內(nèi)核706也可以包括解碼單元804以對(duì)所提取的指令進(jìn)行解碼。例如,解碼單元804可以將所提取的指令解碼為多個(gè)uop(微操作)。
[0046]此外,內(nèi)核706可以包括調(diào)度單元806。調(diào)度單元806可以執(zhí)行與存儲(chǔ)解碼后的指令(例如,接收自解碼單元804)相關(guān)聯(lián)的各種操作,直到指令準(zhǔn)備好分派為止,例如直到解碼后的指令的所有源值變得可用為止。在一個(gè)實(shí)施例中,調(diào)度單元806可以調(diào)度和/或發(fā)布(或分派)解碼后的指令到執(zhí)行單元808以用于執(zhí)行。執(zhí)行單元808在分派的指令被解碼(例如,通過(guò)解碼單元804)和分派(例如,通過(guò)調(diào)度單元806)之后可以執(zhí)行分派的指令。在實(shí)施例中,執(zhí)行單元808可以包括多于一個(gè)執(zhí)行單元。執(zhí)行單元808也可以執(zhí)行各種算法操作,諸如加、減、乘、和/或除,并且可以包括一個(gè)或多個(gè)算法邏輯單元(ALU)。在實(shí)施例中,協(xié)處理器(未示出)可以結(jié)合執(zhí)行單元808執(zhí)行各種算法操作。
[0047]此外,執(zhí)行單元808可以無(wú)序執(zhí)行指令。因此,在一個(gè)實(shí)施例中,處理器內(nèi)核706可以是無(wú)序處理器內(nèi)核。內(nèi)核706也