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

用于非易失性存儲器的優(yōu)化的冷引導(dǎo)的制作方法

文檔序號:6485398閱讀:188來源:國知局
用于非易失性存儲器的優(yōu)化的冷引導(dǎo)的制作方法
【專利摘要】各種實施例針對用于更快的固態(tài)驅(qū)動器(SSD)啟動的裝置和方法。在啟動時,SSD控制算法可以加載上下文的非邏輯到物理(L2P)部分并且發(fā)信號通知系統(tǒng):SSD就緒。上下文可以包括關(guān)于SSD的各種狀態(tài)數(shù)據(jù)。在發(fā)信號通知SSD可以預(yù)備接收訪問請求之后,SSD控制算法可以開始順序地加載L2P表的段。然而,當所請求的段尚未被加載時可以阻止對L2P表的訪問。在這樣的情況下,SSD控制算法然后可以不按順序加載所請求的段并且然后服務(wù)于所述訪問請求。
【專利說明】用于非易失性存儲器的優(yōu)化的冷引導(dǎo)
【背景技術(shù)】
[0001]當前的固態(tài)驅(qū)動器(SSD)具有在數(shù)秒量級上的啟動(boot-up)時間,這意味著驅(qū)動器在被通電的數(shù)秒之后預(yù)備服務(wù)于輸入/輸出(1)請求。針對SSD的啟動時間可以用以下各項的總和表征:(i)硬件加電啟動時間;(ii)ROM啟動時間;(iii)引導(dǎo)裝入程序(bootloader)啟動時間;以及(iv)固件初始化時間。以上中的最長時間可能花費在固件初始化階段中。固件初始化需要較多的時間是因為它需要讀入邏輯到物理(L2P)間接表,其可能典型地在數(shù)百兆字節(jié)的量級上。除了 L2P表之外,固件還可能需要恢復(fù)描述NAND和固件狀態(tài)的某些其它數(shù)據(jù)。該狀態(tài)數(shù)據(jù)可以被共同稱作為“上下文”。
[0002]固件可以在干凈關(guān)機(clean shutdown)時將上下文保存到非易失性存儲器并且可以在加電時讀回上下文。L2P表形成壓倒性的(overwhelming)上下文塊。其余上下文的大小在數(shù)百千字節(jié)的量級上,其顯著小于L2P表的數(shù)百兆字節(jié)。因此,L2P表加載時間主要包括針對SSD的通電啟動時間。
[0003]當前SSD在空閑時也消耗數(shù)十毫瓦的功率(典型地為100mW),因為SSD內(nèi)部的SSD控制器和動態(tài)隨機存取存儲器(DRAM)二者必須保持通電以維持SSD狀態(tài)。因此,可能存在對解決這些和其它問題的改進技術(shù)的需要。
【專利附圖】

【附圖說明】
[0004]圖1A圖示了根據(jù)實施例的其中主機可以與固態(tài)驅(qū)動器(SSD)通信的系統(tǒng)的框圖。
[0005]圖1B圖示了根據(jù)實施例的其中主機可以與固態(tài)驅(qū)動器(SSD)通信的系統(tǒng)的框圖。
[0006]圖1C圖示了根據(jù)實施例的其中主機可以與固態(tài)驅(qū)動器(SSD)通信的系統(tǒng)的框圖。
[0007]圖2圖示了根據(jù)實施例的邏輯到物理(L2P)段表的一個實施例。
[0008]圖3圖示了根據(jù)實施例的邏輯流的一個實施例。
[0009]圖4圖示了根據(jù)實施例的邏輯流的一個實施例。
[0010]圖5圖示了可以適于實現(xiàn)本公開的實施例的系統(tǒng)的實施例。
[0011]圖6圖示了圖5的系統(tǒng)可以包含在其中的小形狀因子設(shè)備的實施例。
【具體實施方式】
[0012]公開了顯著加速針對非易失性存儲器(NVM)設(shè)備(例如SSD)的啟動過程并且將NVM設(shè)備的空閑功率消耗降低至接近于零的各種實施例。NVM設(shè)備可以在系統(tǒng)空閑狀態(tài)期間斷電并且被加電并可以幾乎立即開始服務(wù)于請求。因為啟動時間可以被顯著降低,所以對NVM設(shè)備進行斷電和加電在時間方面可能不成明顯的問題。這可能對利用其內(nèi)的NVM設(shè)備的電池供電移動設(shè)備尤其具吸引力。
[0013]現(xiàn)在對附圖做出參考,其中,貫穿各圖,相同的附圖標記被用來指相同的元件。在以下描述中,出于解釋的目的,陳述大量特定細節(jié)以便提供其全面的理解。然而,可能顯而易見的是,新穎實施例可以在沒有這些特定細節(jié)的情況下實踐。在其它實例中,眾所周知的結(jié)構(gòu)和設(shè)備以框圖形式示出,以便促進其描述。意圖是覆蓋落在所要求保護的主題的精神和范圍內(nèi)的所有修改、等價物和替換。
[0014]圖1A圖示了根據(jù)實施例的其中主機110可以與固態(tài)驅(qū)動器(SSD) 130通信的系統(tǒng)100的框圖。主機110可以是較大系統(tǒng)100的一部分并且可以包括處理器115、操作系統(tǒng)(OS) 120以及一個或多個應(yīng)用125。應(yīng)用125和操作系統(tǒng)120可以在處理器115的控制之下進行操作。系統(tǒng)100還可以包括在SSD控制器155的控制之下的固態(tài)驅(qū)動器(SSD)130。SSD 130可以包括動態(tài)隨機存取存儲器(DRAM)組件145、引導(dǎo)裝入程序135、只讀存儲器(ROM) 140、固件150、邏輯到物理(L2P)間接表165以及NAND (或其它NVM) 160。電源105可以被用于向主機110及其組件以及SSD 130及其組件提供電力。
[0015]依據(jù)本文描述的實施例,SSD 130可以將加載L2P表165 165推遲直到在引導(dǎo)(boot)之后為止。此外,當檢測到空閑時間時可以將L2P表165 165出頁面到NAND,從而允許在空閑時間期間將SSD 130斷電。
[0016]L2P表165可以將邏輯塊地址(LBA)映射到實際上將數(shù)據(jù)存儲到SSD 130內(nèi)的存儲器中的物理地址。為了將數(shù)據(jù)存取(例如讀取或?qū)懭?到存儲器中,必須加載L2P表165(其將在函數(shù)調(diào)用中所使用的LBA映射到數(shù)據(jù)被或?qū)⒈淮鎯υ诘奈锢泶鎯ζ鞯刂?。
[0017]如先前描述的,針對諸如SSD 130之類的NVM設(shè)備的啟動時間可以由硬件加電啟動時間、ROM啟動時間、引導(dǎo)裝入程序啟動時間和固件初始化時間的總和來表征。最長的時間可能花費在固件初始化階段中。固件初始化需要較多的時間是因為它需要讀入(例如加載)L2P表165。除了 L2P表165之外,固件還可能需要恢復(fù)描述NAND和NVM設(shè)備的固件狀態(tài)的某些其它數(shù)據(jù)。該狀態(tài)數(shù)據(jù)可以被共同稱作為NVM設(shè)備的“上下文”(后文為“上下文”)。固件150可以在干凈關(guān)機時將上下文保存到NVM設(shè)備內(nèi)的非易失性存儲器并且可以在加電時讀回上下文。L2P表165形成壓倒性的上下文塊。其余上下文的大小在數(shù)百千字節(jié)的量級上,其顯著小于L 2P表165的數(shù)百兆字節(jié)。因此,L2P表165加載時間包括壓倒性多數(shù)的針對SSD 130或其它NVM設(shè)備的通電啟動時間。
[0018]由于L2P表165可以存儲在一個或多個NAND頁160中,因此可能不需要被一次全部加載。L2P表165可以被劃分成段。表段可以是在一次操作中可以從NAND加載的數(shù)據(jù)單元。例如,段大小可以是一個物理NAND頁160的大小。段的實際大小可以取決于實現(xiàn)方式。
[0019]在啟動時,SSD控制算法可以加載上下文的非L2P部分并且發(fā)信號通知系統(tǒng)100:SSD 130就緒。SSD控制算法可以由處理器電路運行。運行SSD控制算法的處理器電路可以以各種方式來實現(xiàn)。在圖1A中圖示的一個實施例中,運行SSD控制算法的處理器電路可以實現(xiàn)在SSD 130內(nèi)的嵌入式處理器上的固件150內(nèi)。在圖1B中圖示的另一實施例中,運行SSD控制算法的處理器電路可以實現(xiàn)在SSD 130內(nèi)的硬件(HW)狀態(tài)機170內(nèi)。在圖1C中圖示的又一實施例中,運行SSD控制算法的處理器電路可以在處理器115的控制之下由主機110實現(xiàn)為SSD算法代碼175。不考慮實現(xiàn)方式,SSD控制算法管理SSD 130的某些方面。
[0020]參照圖1A,在加載上下文的非L2P部分之后,固件150可以運行SSD控制算法以發(fā)信號通知主機I1 =SSD 130預(yù)備接受訪問請求。固件150然后可以運行SSD控制算法以開始加載L2P表165的段。稱為“段表”的數(shù)據(jù)結(jié)構(gòu)可以追蹤段的狀態(tài)。段表可以具有每段一個條目,其指示段的狀態(tài)。段狀態(tài)可以包括以下之一:未加載;加載中;或已加載。[0021 ] 當包含訪問請求內(nèi)的LBA的段尚未被加載到L2P表165時,可以阻止對L2P表165的訪問請求。固件150可以運行SSD控制算法以順序地加載段,除非在尚未被加載的段上存在L2P訪問請求。在這種情況下,可以不按順序地加載(例如按需加載)相關(guān)段。對被阻止的L2P表請求的代價相對較小(例如100微秒)。對于可以不按順序加載的訪問請求的數(shù)量相對小的情況,等待時間的增加對用戶而言可能不易察覺。
[0022]參照圖1B,在加載上下文的非L2P部分之后,HW狀態(tài)機170可以運行SSD控制算法以發(fā)信號通知主機110 =SSD 130預(yù)備接受訪問請求。HW狀態(tài)機170然后可以運行SSD控制算法以開始加載L2P表165的段。稱為“段表”的數(shù)據(jù)結(jié)構(gòu)可以追蹤段的狀態(tài)。段表可以具有指示段的狀態(tài)的每段一個條目。段狀態(tài)可以包括以下之一:未加載;加載中;已加載。
[0023]當包含訪問請求內(nèi)的LBA的段尚未被加載到L2P表165中時,可以阻止對L2P表165的訪問請求。HW狀態(tài)機170可以運行SSD控制算法以順序地加載段,除非在尚未被加載的段上存在L2P訪問請求。在這種情況下,可以不按順序加載(例如按需加載)相關(guān)段。
[0024]參照圖1C,在加載上下文的非L2P部分之后,處理器115可以運行SSD控制算法代碼以使SSD發(fā)信號通知主機110:其預(yù)備接受訪問請求。處理器115可以運行SSD控制算法代碼以開始加載L2P表165的段。稱為“段表”的數(shù)據(jù)結(jié)構(gòu)可以追蹤段的狀態(tài)。段表可以具有指示段的狀態(tài)的每段一個條目。段狀態(tài)可以包括以下之一:未加載;加載中;已加載。
[0025]當包含訪問請求內(nèi)的LBA的段尚未被加載到L2P表165中時,可以阻止對L2P表165的訪問請求。處理器115可以運行SSD控制算法代碼以順序地加載段,除非在尚未被加載的段上存在L2P訪問請求。在這種情況下,可以不按順序加載(例如按需加載)相關(guān)段。
[0026]順序加載可以利用當SSD 130可能空閑時的時間,使得更有可能在段被訪問時它們已經(jīng)被加載。按需加載可以降低在所請求的段尚未被加載的情況下請求可能忍受的等待時間。對于許多應(yīng)用,I/o訪問具有高局域性程度,這意味著相繼的訪問通常命中(hit)相同段。在這種情況下,只有第一訪問可能需要遭受段未命中(miss)代價。因此,按需加載確保等待時間被最小化而順序加載確保只有最早的訪問(例如當驅(qū)動器剛剛被引導(dǎo)時)可能遭受未命中。在運行時期間,檢查段是否被加載招致最小的開銷。
[0027]該方法還可以通過在訪問段時預(yù)取多個段而被優(yōu)化。預(yù)取可以加速順序的I/O。另外,典型地在引導(dǎo)時被訪問的段可以被檢測并且可以甚至在從系統(tǒng)100發(fā)出第一 I/O之前開始從NAND頁160中取。
[0028]為了功率節(jié)省,通過在斷電之前在觸發(fā)時首先將上下文信息保存到NAND,SSD 130可以進入零功率狀態(tài)。SSD 130然后可以在再加電(power back up)時如以上描述的那樣快速恢復(fù)。當系統(tǒng)100不需要SSD 130保持帶電時,觸發(fā)可以來自系統(tǒng)100。可替換地,觸發(fā)可以由SSD 130自身在其檢測到空閑時間(例如自上次I/O起過去閾值量的時間)時發(fā)起。在后一種情況的一些實現(xiàn)方式中,SSD 130可能需要發(fā)信號通知系統(tǒng)100以請求系統(tǒng)100使SSD 130 斷電。
[0029]本文描述的實施例確保SSD 130在SSD 130通電之后快得多地預(yù)備服務(wù)于I/O請求而在L2P表165的段尚未被加載到非易失性存儲器時不招致高等待時間。本文描述的實施例還實現(xiàn)SSD 130空閑時間期間的零功率狀態(tài)。
[0030]圖2圖示了根據(jù)實施例的邏輯到物理(L2P)段表200的一個實施例。L2P段表200可以存儲在NAND頁中,其可以被劃分成段。表段可以涵蓋多個邏輯塊地址(LBA)。表段可以在一次操作中從NAND加載。例如,表段大小(例如LBA的數(shù)量)可以是一個物理NAND頁的大小。表段的實際大小可以取決于實現(xiàn)方式。段表200可以追蹤包括表200的段的狀態(tài)。段表200可以具有指示段的狀態(tài)的每段一個條目。段狀態(tài)可以包括以下之一:未加載;加載中;或已加載。
[0031]根據(jù)示例性L2P段表200,段號1_6已經(jīng)被加載。段7當前可以正在加載中。剩余段可以具有“未加載”的狀態(tài)。一個例外可以是段12,其圖示有“已加載”的狀態(tài)??梢曰凇鞍葱琛闭埱蠖呀?jīng)不按順序地加載段12。
[0032]本文所包括的是表示用于執(zhí)行所公開的架構(gòu)的新穎方面的示例性方法的一組流程圖。雖然出于簡化解釋的目的,本文所示的一個或多個方法(例如以流程圖或流程圖表的形式)被示出和描述為一系列動作,但是要理解和領(lǐng)會的是,方法不受限于動作的次序,因為依照于此,一些動作可以以不同的次序發(fā)生和/或與從本文示出和描述的其它動作同時發(fā)生。例如,本領(lǐng)域技術(shù)人員將理解和領(lǐng)會到,方法可以可替換地表示為一系列關(guān)聯(lián)狀態(tài)或事件,諸如在狀態(tài)圖中。而且,并非在方法中說明的所有動作對于新穎實現(xiàn)方式都是必需的。
[0033]圖3圖示了邏輯流300的一個示例。邏輯流300可以表示由可以實現(xiàn)加載諸如SSD 130之類的非易失性存儲器中的L2P表165的本文描述的一個或多個實施例所運行的一些或全部操作。SSD控制算法可以執(zhí)行L2P表165的加載和訪問。SSD控制算法可以實現(xiàn)在固件150、一個或多個HW狀態(tài)機170或運行SSD控制算法代碼的處理器115內(nèi)。 [0034]可以最初加載上下文的非L2P組件。由于上下文的這部分在大小上的數(shù)量級小于L2P表165,因此這部分的啟動過程相對較快。一旦已經(jīng)加載上下文的非L2P組件,SSD 130可以發(fā)信號通知主機:其預(yù)備開始逐段加載L2P表165。在進入將加載和增加每個后續(xù)段的循環(huán)之前,段表可以被初始化成加載第一段。這可以被稱作順序加載。有時,訪問請求將引用尚未被加載的段。在這樣的情況下,可以以“按需”的方式不按順序地加載所請求的段。在不按順序的段加載之后,該過程可以返回到在執(zhí)行“按需”的段加載之前的順序加載中的點。
[0035]在圖3中示出的所圖示的實施例中,邏輯流300可以在塊310處加載上下文的非L2P組件。例如,在啟動時,SSD控制算法可以加載上下文的非L2P部分。針對SSD 130的啟動時間可以由硬件加電啟動時間、ROM啟動時間、引導(dǎo)裝入程序啟動時間和固件初始化時間的總和來表征。最長時間可能花費在固件初始化階段中。固件初始化需要較多的時間是因為它需要讀入L2P表165。除L2P表165之外,固件還可能需要恢復(fù)描述NAND和固件狀態(tài)的某些其它數(shù)據(jù)。該狀態(tài)數(shù)據(jù)可以被共同稱作為“上下文”。L2P表165形成壓倒性的上下文塊。其余上下文的大小在數(shù)百千字節(jié)的量級上,其顯著小于L2P表165的數(shù)百兆字節(jié)。在加載L2P表165之前,SSD控制算法可以加載上下文的剩余組件。實施例在該上下文中不受限。
[0036]邏輯流300可以發(fā)信號通知主機110 =SSD 130在塊315處就緒。例如,SSD控制算法可以確定SSD 130預(yù)備一旦已經(jīng)加載上下文的非L2P組件就接收和處理訪問請求。雖然L2P表165可能尚未被完全加載,不過主機110還是告知SSD 130預(yù)備接收訪問請求。如果接收到針對L2P表165的尚未被加載的段的訪問請求,邏輯流(如以下所描述的)可以不按順序加載段。實施例在該上下文中不受限。
[0037]邏輯流300可以在塊320處將Next_segment參數(shù)設(shè)置成“O”。例如,L2P表165可以包括多個段,其可以例如從I到η順序編號。最初,L2P表165中的每個段的狀態(tài)將是“未加載”。默認加載方法是以段號I開始順序的。因此,加載循環(huán)被初始化,使得第一段(例如Segment_number=l)將首先被加載。實施例在該上下文中不受限。
[0038]邏輯流300可以在塊325處確定是否L2P表165的所有段已經(jīng)被加載。例如,循環(huán)的第一步驟可以是確定是否已經(jīng)加載L2P表165的所有段。如果確定已經(jīng)加載L2P表165的所有段,則邏輯流300在塊330處自然終止。如果確定尚未加載L2P表165的所有段,則邏輯流300前進到塊335。實施例在該上下文中不受限。
[0039]接下來,邏輯流300可以在塊335處確定是否存在未解決的L2P訪問請求。例如,SSD控制算法可以基于是否存在對L2P表165未決的訪問請求來將邏輯流300的控制引導(dǎo)到合適的塊。在可能接收到對L2P表165的訪問請求時,邏輯流300可以執(zhí)行順序加載。在這樣的情況下,邏輯流300可以將控制引導(dǎo)到塊340,其中可以執(zhí)行“按需”段加載。如果不存在未決的L2P訪問請求,則順序加載過程繼續(xù)并且在塊345處,要加載的段號被設(shè)置成“Next_segment”。在塊 345 處將段號設(shè)置成值 “Next_segment” 之后,“Next_segment” 的值在塊350處可以增加I以確保通過循環(huán)的下一迭代將加載下一段號。實施例在該上下文中不受限。
[0040]邏 輯流300可以跳到與訪問請求相關(guān)聯(lián)的段號,在塊340處。例如,在完全加載L2P表165之前可能已經(jīng)接收對L2P表165的訪問請求。訪問請求可以是讀請求或?qū)懻埱蟆0c請求相關(guān)聯(lián)的一個或多個邏輯塊地址的段可能尚未被加載。如果請求要等待直到L2P表165順序地加載段為止,那么可能將不合期望的等待時間引入到系統(tǒng)中。與其允許等待時間發(fā)生,SSD控制器155可以跳過與對隊列前面的訪問請求相關(guān)聯(lián)的段。實施例在該上下文中不受限。
[0041]邏輯流300可以在塊355處確定L2P表165的段是否已經(jīng)被加載。例如,塊350可以接收來自順序段加載控制路徑(例如塊350)或不按順序段加載控制路徑(例如塊340)二者的輸入。在任何一種方式下,SSD控制器155可以確定是否已經(jīng)加載了要加載的當前排隊的段。如果當前排隊的段已經(jīng)被加載到L2P表165中,則SSD控制器155可以將控制重定向回循環(huán)的頂部而到塊325處,其中確定是否已經(jīng)加載所有段。如果當前排隊的段尚未被加載到L2P表165,則SSD控制算法可以將控制重定向到塊360。SSD控制算法確保沒有L2P表165中的段被加載多于一次。實施例在該上下文中不受限。
[0042]邏輯流300可以在塊360處為L2P表165加載當前排隊的段。例如,SSD控制器155可以在確定段尚未被加載時將當前排隊的段加載到L2P表165中。一旦SSD控制器155結(jié)束將段加載到L2P表165中,它可以將控制重定向回循環(huán)的頂部而到塊325,其中確定是否已經(jīng)加載所有段。實施例在該上下文中不受限。
[0043]圖4圖示了邏輯流400的一個實施例。邏輯流400可以表示本文所描述的一個或多個實施例所運行的一些或全部操作,其可以訪問L2P表165,即便所述L2P表165尚未被完全加載。L2P表165可以接收訪問請求,盡管事實是它可能在請求時尚未被完全加載。在這樣的情況下,SSD控制器可以確定L2P表165內(nèi)的哪段可能與訪問請求相關(guān)聯(lián)。SSD控制器然后可以確定該段是否已經(jīng)被加載到L2P表165中。如果是,則可以正常服務(wù)該訪問請求。如果該段尚未被加載,則SSD控制器155確定對加載該特定段的請求是否未決。如果不是,則SSD控制器155將這樣的請求排入隊列以不按順序加載該段。
[0044]在圖4中所示的圖示實施例中,邏輯流400可以在塊405處從函數(shù)接收訪問請求。例如,代表應(yīng)用的處理器115、操作系統(tǒng)150 (或其它系統(tǒng)100組件)可以做出函數(shù)調(diào)用以訪問L2P表165。該函數(shù)調(diào)用可以包括L2P表165內(nèi)的特定邏輯塊地址(LBA)。實施例在這方面不受限。
[0045]邏輯流400可以在塊410處確定與包含在函數(shù)調(diào)用中的邏輯塊地址(LBA)相關(guān)聯(lián)的段號。例如,SSD控制器155可以接收具有相關(guān)聯(lián)的邏輯塊地址(LBA)的函數(shù)調(diào)用。SSD控制器155可以確定哪段包括期望的邏輯塊地址(LBA)。確定哪段包括期望的邏輯塊地址(LBA)可以是用所請求的LBA (LBA可以從I到η順序編號)除以每段的LBA數(shù)量的問題?;叵氲矫慷慰梢员硎径x數(shù)量的LBA。該除法的截短結(jié)果可以產(chǎn)生與在塊405處接收的訪問請求的LBA相關(guān)聯(lián)的段號。實施例在該上下文中不受限。
[0046]邏輯流400可以在塊415處確定在塊410處確定的段是否已經(jīng)被加載。例如,SSD控制器155可以確定在塊410處確定的段號是否已經(jīng)被加載到L2P表165。如果段號已經(jīng)被加載到L2P表165,則在塊420處可以正常服務(wù)該訪問請求。如果段號尚未被加載到L2P表165中,則訪問請求可以被轉(zhuǎn)發(fā)到判定塊425。實施例在該上下文中不受限。
[0047]邏輯流400可以在塊425處確定對于加載在塊410處所確定的段號的請求是否已經(jīng)被放入到請求隊列。例如,SSD控制器155可以確定對于加載在塊410處所確定的段號的請求是否已經(jīng)被放入到請求隊列。如果對于加載該段號的請求已經(jīng)做出并且在處理中,則邏輯流400在將控制返回到塊415之前將在塊430處等待指定時間段以驗證段已經(jīng)被加載。如果尚未做出對于加載段號的請求,則邏輯流400將控制發(fā)送到塊435。實施例在該上下文中不受限。
[0048]邏輯流400可以在塊435處創(chuàng)建對于加載段號的請求并且將其排入隊列。例如,SSD控制器可以創(chuàng)建對于加載在塊410處所確定的段號的請求并且將其排入隊列。該請求可以在圖3的塊335處被接收。圖3可以負責加載L2P表165,如以上描述的那樣。塊335可以接收對尚未被加載的段的L2P訪問請求,但是可以能夠不按順序加載段以防止等待時間問題使I/O訪問請求延遲。一旦已經(jīng)將對于加載該端的請求轉(zhuǎn)發(fā)到與圖3相關(guān)聯(lián)的邏輯,則SSD控制器155可以將控制返回到判定塊415,其中確定是否已經(jīng)加載所請求的段。實施例在該上下文中不受限。
[0049]剛剛參照圖3-4描述的過程準許與SSD 130相關(guān)聯(lián)的L2P表165的順序和不按順序的加載。L2P表165可以被分解成段,其中每一段可以包括邏輯塊地址的范圍??梢詫⒚總€表段設(shè)定大小成與用于特定實現(xiàn)方式的NAND頁160所容納的數(shù)據(jù)量對應(yīng)。然后可以按照默認順序加載表段。然而,SSD控制算法可以告知主機110 SSD 130預(yù)備被訪問,即便L2P表165尚未被完全加載。因此,通過在完全引導(dǎo)之前向主機發(fā)信號通知:SSD 130就緒,可以大幅降低引導(dǎo)時間。當針對尚未被加載的L2P表165的一部分做出L2P訪問請求時,不按順序加載包含所請求的邏輯塊地址(LBA)的段以防止過度等待時間的問題??傮w結(jié)果是比等待完全引導(dǎo)快得多地允許對L2P表165的訪問。甚至在尋求訪問L2P表165的未加載的部分的情況下,等待時間可以通過不按順序加載所請求的段而得以降低。
[0050]可以基于針對尚未被加載的L2P表165中的段的訪問請求而加載不按順序的段以降低等待時間??梢酝ㄟ^不按順序加載多個相繼段而進一步降低等待時間。例如,可以接收針對尚未被加載的段的請求,使所請求的段不按順序被加載。然而,對于許多應(yīng)用,I/o訪問具有高本地性程度,這意味著相繼訪問通常命中相同段或附近段。在這樣的情況下,當不按順序加載所請求的段時加載多個相繼段可能是謹慎的。
[0051]因為SSD 130的啟動時間可以顯著降低,所以在不經(jīng)歷顯著的等待時間問題的情況下在系統(tǒng)空閑時間期間使SSD 130斷電成為可能。在空閑時間期間使SSD 130斷電可能導(dǎo)致對總體系統(tǒng)100的顯著節(jié)電,這可能對實現(xiàn)在電池供電設(shè)備內(nèi)的系統(tǒng)100尤其有利。當SSD 130被斷電時,針對SSD 130的上下文信息可以保存到NAND。當被再加電時,非L2P上下文信息和L2P表165可以如以上實施例中所描述的那樣被加載。
[0052]各種實施例公開了用于實現(xiàn)針對SSD 130的啟動過程的裝置、系統(tǒng)和方法。系統(tǒng)可以包括與附加系統(tǒng)組件通信耦合并且操作以運行軟件程序的處理器115。SSD 130可以包括L2P表165,其包括用于將邏輯塊地址(LBA)轉(zhuǎn)換到SSD 130中的物理地址的地址映射模式。L2P表165可以被分成多個表段,其中多個段中的每一個可以包括LBA的順序成組。與處理器115通信耦合的SSD控制算法可以操作成對SSD循環(huán)供電。可以執(zhí)行針對SSD 130的部分啟動。
[0053]部分啟動不包括L2P表165的加載。一旦部分啟動完成,可以發(fā)信號通知主機110:SSD 130預(yù)備處理訪問請求。訪問請求可以是由處理器115處理的函數(shù)調(diào)用并且借助于SSD控制算法和SSD控制器155而被轉(zhuǎn)發(fā)到SSD 130。SSD控制算法可以使以順序方式將多個段加載到L2P表165中。在加載表段的同時,可以在SSD 130處接收指定未加載的段內(nèi)的LBA的訪問請求。SSD 130可以通過在恢復(fù)以順序方式將多個段加載到L2P表165之前將未加載的段不按順序地加載到L2P表165來處理訪問請求。
[0054]在另一個實施例中,SSD控制算法可以操作成將多個附加的未加載段加載到L2P表165中。多個附加的未加載段可以相繼于未加載的段。
[0055]SSD控制算法還可以操作成通過在用所請求的LBA除以每段的LBA數(shù)量之后取整數(shù)值來確定與LBA相關(guān)聯(lián)的段,其中LBA從I到η順序編號。關(guān)于是否已經(jīng)加載特定段的確定可以在加載特定段之前執(zhí)行。
[0056]SSD 130可能能夠接收訪問請求,其中所述訪問請求包括LBA。當確定與LBA相關(guān)聯(lián)的段時,可以驗證與訪問請求中的LBA相關(guān)聯(lián)的段是否已經(jīng)被加載。如果段已經(jīng)被加載,SSD 130然后可以服務(wù)于針對特定段的訪問請求。
[0057]SSD 130可以在不使用時被斷電。例如,在處理器115確定SSD 130的空閑狀態(tài)時或者在SSD 130自身確定空閑狀態(tài)的情況下SSD 130可以被斷電。當處理器115或其它系統(tǒng)組件確定需要SSD 130時,SSD 130可以被再加電。
[0058]可以使用硬件元件、軟件元件或者二者的組合實現(xiàn)各種實施例。硬件元件的示例可以包括處理器、微處理器、電路、電路元件(例如晶體管、電阻器、電容器、電感器等等)、集成電路、專用集成電路(ASIC)、可編程邏輯設(shè)備(PLD)、數(shù)字信號處理器(DSP)、現(xiàn)場可編程門陣列(FPGA)、邏輯門、寄存器、半導(dǎo)體設(shè)備、芯片、微芯片、芯片組等等。軟件的示例可以包括軟件組件、程序、應(yīng)用、計算機程序、應(yīng)用程序、系統(tǒng)程序、機器程序、操作系統(tǒng)軟件、中間件、固件、軟件模塊、例程、子例程、功能、方法、過程、軟件接口、應(yīng)用程序接口(API)、指令集、計算代碼、計算機代碼、代碼段、計算機代碼段、字、值、符號或其任何組合。確定是否使用硬件元件和/或軟件元件來實現(xiàn)實施例可以依照任何數(shù)量的因素而變化,諸如期望的計算速率、功率水平、耐熱性、處理循環(huán)預(yù)算、輸入數(shù)據(jù)速率、輸出數(shù)據(jù)速率、存儲器資源、數(shù)據(jù)總線速度和其它設(shè)計或性能約束。
[0059]圖5圖示了可以適于實現(xiàn)本公開的NVM引導(dǎo)加載實施例的系統(tǒng)500的實施例。在實施例中,系統(tǒng)500可以是能夠?qū)崿F(xiàn)以上描述的NVM引導(dǎo)加載實施例的系統(tǒng),盡管系統(tǒng)500不受限于該上下文。例如,系統(tǒng)500可以并入到個人計算機(PC)、膝上型計算機、超膝上型計算機、平板、觸摸板、便攜式計算機、手持式計算機、掌上計算機、個人數(shù)字助理(PDA)、蜂窩電話、組合蜂窩電話/PDA、電視、智能設(shè)備(例如智能電話、智能平板或智能電視)、移動互聯(lián)網(wǎng)設(shè)備(MID)、消息傳遞設(shè)備、數(shù)據(jù)通信設(shè)備等等。
[0060]在實施例中,系統(tǒng)500包括耦合到顯示器520的平臺502。平臺502可以從諸如一個或多個內(nèi)容服務(wù)設(shè)備530或一個或多個內(nèi)容遞送設(shè)備540或其它類似內(nèi)容源之類的內(nèi)容設(shè)備接收內(nèi)容。包括一個或多個導(dǎo)航特征的導(dǎo)航控制器550可以被用于與例如平臺502和/或顯示器520交互。在以下更加詳細地描述這些組件中的每一個。
[0061]在實施例中,系統(tǒng)500包括耦合到顯示器520的平臺502。平臺502可以從諸如一個或多個內(nèi)容服務(wù)設(shè)備530或一個或多個內(nèi)容遞送設(shè)備540或其它類似內(nèi)容源之類的內(nèi)容設(shè)備接收內(nèi)容。包括一個或多個導(dǎo)航特征的導(dǎo)航控制器550可以被用于與例如平臺502和/或顯示器520交互。在以下更加詳細地描述這些組件中的每一個。
[0062]在實施例中,平臺502可以包括芯片組505、一個或多個處理器510、存儲器512、儲存514、圖形子系統(tǒng)515、應(yīng)用516和/或無線電設(shè)備518的任何組合。芯片組505可以提供處理器510、存儲器512、儲存514、圖形子系統(tǒng)515、應(yīng)用516和/或無線電518之中的互通信。例如,芯片 組505可以包括能夠提供與儲存514的互通信的存儲適配器(未描繪)。
[0063]一個或多個處理器510可以被實現(xiàn)為復(fù)雜指令集計算機(CISC)或精簡指令集計算機(RISC)處理器、x86指令集兼容處理器、多核或任何其它的微處理器或中央處理單元(CPU)。在實施例中,一個或多個處理器510可以包括一個或多個雙核處理器、一個或多個雙核移動處理器等等。
[0064]存儲器512可以被實現(xiàn)為易失性存儲器設(shè)備,諸如,但不限于,隨機存儲存儲器(RAM)、動態(tài)隨機存取存儲器(DRAM)或靜態(tài)RAM (SRAM)0
[0065]儲存514可以被實現(xiàn)為非易失性存儲設(shè)備,諸如,但不限于,磁盤驅(qū)動器、光盤驅(qū)動器、磁帶驅(qū)動器、內(nèi)部存儲設(shè)備、附接存儲設(shè)備、閃速存儲器、備有電池的SDRAM (同步DRAM)、網(wǎng)絡(luò)可訪問存儲設(shè)備。在實施例中,儲存514可以包括當例如包括多個硬驅(qū)動器時增加針對有價值的數(shù)字媒體的存儲性能增強保護的技術(shù)。
[0066]圖形子系統(tǒng)515可以執(zhí)行諸如靜止的或視頻的圖像的處理以供顯示。圖形子系統(tǒng)515可以是例如圖形處理單元(GPU)或視覺處理單元(VPU)。模擬或數(shù)字接口可以被用于通信耦合圖形子系統(tǒng)515和顯示器520。例如,接口可以是高清晰度多媒體接口、顯示端口、無線HDMI和/或無線HD依從技術(shù)中的任何一個。圖形子系統(tǒng)515可以集成到處理器510或芯片組505中。圖形子系統(tǒng)515可以是通信耦合到芯片組505的獨立卡。
[0067]本文描述的圖形和/或視頻處理技術(shù)可以以各種硬件架構(gòu)實現(xiàn)。例如,圖形和/或視頻功能可以集成在芯片組內(nèi)??商鎿Q地,可以使用離散圖形和/或視頻處理器。作為又一實施例,圖形和/或視頻功能可以通過包括多核處理器的通用處理器來實現(xiàn)。在另外的實施例中,功能可以以消費電子設(shè)備來實現(xiàn)。
[0068]無線電設(shè)備518可以包括能夠通過使用各種適合的無線通信技術(shù)發(fā)射和接收信號的一個或多個無線電設(shè)備。這樣的技術(shù)可以涉及跨一個或多個無線網(wǎng)絡(luò)的通信。示例性無線網(wǎng)絡(luò)包括(但不限于)無線局域網(wǎng)(WLAN)、無線個域網(wǎng)(WPAN)、無線城域網(wǎng)(WMAN)、蜂窩網(wǎng)絡(luò)、蜂窩數(shù)據(jù)網(wǎng)絡(luò)(例如3G、LTE)和衛(wèi)星網(wǎng)絡(luò)。在跨這樣的網(wǎng)絡(luò)的通信中,無線電設(shè)備518可以依照任何版本中的一個或多個適用標準進行操作。
[0069]在實施例中,顯示器520可以包括任何電視類型的監(jiān)視器或顯示器。顯示器520可以包括例如計算機顯示屏、觸摸屏顯示器、視頻監(jiān)視器、類電視設(shè)備和/或電視。顯示器520可以是數(shù)字和/或模擬的。在實施例中,顯示器520可以是全息顯示。顯示器520還可以是接收視覺投影的透明表面。這樣的投影可以傳達各種形式的信息、圖像和/或?qū)ο蟆@?,這樣的投影可以是用于移動增強現(xiàn)實(MAR)應(yīng)用的視覺重疊。在一個或多個軟件應(yīng)用516的控制之下,平臺502可以在顯示器520上示出用戶接口 522。
[0070]在實施例中,一個或多個內(nèi)容服務(wù)設(shè)備530可以由任何國家、國際和/或獨立服務(wù)來主管并且因此經(jīng)由例如因特網(wǎng)對平臺502可訪問。一個或多個內(nèi)容服務(wù)設(shè)備530可以耦合到平臺502和/或顯示器520。平臺502和/或一個或多個內(nèi)容服務(wù)設(shè)備530可以耦合到網(wǎng)絡(luò)560以向網(wǎng)絡(luò)560和從網(wǎng)絡(luò)560傳送(例如發(fā)送和/或接收)媒體信息。一個或多個內(nèi)容遞送設(shè)備540也可以耦合到平臺502和/或顯示器520。
[0071]在實施例中,一個或多個內(nèi)容服務(wù)設(shè)備530可以包括有線電視盒、個人計算機、網(wǎng)絡(luò)、電話、支持因特網(wǎng)的設(shè)備或能夠遞送數(shù)字信息和/或內(nèi)容的裝置以及能夠在內(nèi)容提供商與平臺502和/顯示器520之間經(jīng)由網(wǎng)絡(luò)560或直接地單向或雙向傳送內(nèi)容的任何其它的類似設(shè)備。將領(lǐng)會到內(nèi)容可以經(jīng)由網(wǎng)絡(luò)560單向和/或雙向地傳送到系統(tǒng)500中的任何一個組件和內(nèi)容提供商或從 其進行傳送。內(nèi)容的示例可以包括任何媒體信息,包括例如,視頻、音樂、醫(yī)學和游戲信息等等。
[0072]一個或多個內(nèi)容服務(wù)設(shè)備530接收包括媒體信息、數(shù)字信息和/或其它內(nèi)容的諸如有線電視節(jié)目之類的內(nèi)容。內(nèi)容提供商的示例可以包括任何有線或衛(wèi)星電視或無線電或因特網(wǎng)內(nèi)容提供商。所提供的示例并不意指限制本發(fā)明的實施例。
[0073]在實施例中,平臺502可以從具有一個或多個導(dǎo)航特征的導(dǎo)航控制器550接收控制信號??刂破?50的導(dǎo)航特征可以被用于例如與用戶接口 522交互。在實施例中,導(dǎo)航控制器550可以是定點設(shè)備,其可以是允許用戶將空間(例如連續(xù)的和多維的)數(shù)據(jù)輸入到計算機中的計算機硬件組件(特別地,人類接口設(shè)備)。諸如圖形用戶界面(GUI)之類的許多系統(tǒng)和電視以及監(jiān)視器允許用戶通過使用身體姿勢控制并向計算機或電視提供數(shù)據(jù)。
[0074]控制器550的導(dǎo)航特征的移動可以通過在顯示器上示出的指針、光標、聚焦環(huán)或其它視覺指示器的移動而在顯示器(例如顯示器520)上被回送。例如,在軟件應(yīng)用516的控制之下,位于導(dǎo)航控制器550上的導(dǎo)航特征可以被映射到顯示在例如用戶接口 522上的虛擬導(dǎo)航特征。在實施例中,控制器550可能不是分離的組件,而是被集成到平臺502和/或顯示器520中。然而,實施例不限于或者在上下文中示出或者在本文中描述的元件。
[0075]在實施例中,驅(qū)動器(未示出)可以包括使得用戶能夠例如利用在初始啟動之后的按鈕觸摸(在被啟用時)來即時開啟和關(guān)閉像是電視的平臺502。在平臺被“關(guān)閉”時,程序邏輯可以允許平臺502將內(nèi)容串流到媒體適配器或一個或多個其它內(nèi)容服務(wù)設(shè)備530或一個或多個內(nèi)容遞送設(shè)備540。此外,芯片組505可以包括用于例如5.1環(huán)繞立體聲和/或高清5.1環(huán)繞立體聲的硬件和/或軟件支持。驅(qū)動器可以包括用于集成圖形平臺的圖形驅(qū)動器。在實施例中,圖形驅(qū)動器可以包括高速外圍組件互連(PCI)圖形卡。
[0076]在各種實施例中,可以集成系統(tǒng)500中示出的任何一個或多個組件。例如,可以集成平臺502和一個或多個內(nèi)容服務(wù)設(shè)備530,或者可以集成平臺502和一個或多個內(nèi)容遞送設(shè)備540,或者例如可以集成平臺502、一個或多個內(nèi)容服務(wù)設(shè)備530和一個或多個內(nèi)容遞送設(shè)備540。在各種實施例中,平臺502和顯示器520可以是集成單元。例如,可以集成顯示器520和一個或多個內(nèi)容服務(wù)設(shè)備530,或者可以集成顯示器520和一個或多個內(nèi)容遞送設(shè)備540。這些示例并不意指限制本發(fā)明。
[0077]在各種實施例中,系統(tǒng)500可以實現(xiàn)為無線系統(tǒng)、有線系統(tǒng)或這二者的組合。當實現(xiàn)為無線系統(tǒng)時,系統(tǒng)500可以包括適于通過無線共享介質(zhì)進行通信的組件和接口,諸如一個或多個天線、發(fā)射器、接收器、收發(fā)器、放大器、濾波器、控制邏輯等等。無線共享介質(zhì)的示例可以包括無線頻譜的部分,諸如RF頻譜等等。當實現(xiàn)為有線系統(tǒng)時,系統(tǒng)500可以包括適于通過有線通信介質(zhì)進行通信的組件和接口,諸如輸入/輸出(I/O)適配器、將I/O適配器與對應(yīng)的有線通信介質(zhì)連接的物理連接器、網(wǎng)絡(luò)接口卡(NIC)、盤控制器、視頻控制器、音頻控制器等等。有線通信介質(zhì)的示例可以包括導(dǎo)線、線纜、金屬引線、印刷電路板(PCB)、背板、交換結(jié)構(gòu)、半導(dǎo)體材料、雙紐線、同軸線纜、光纖等等。
[0078]平臺502可以建立一個或多個邏輯或物理信道以傳送信息。信息可以包括媒體信息和控制信息。媒體信息可以是指表示用于用戶的內(nèi)容的任何數(shù)據(jù)。內(nèi)容的示例可以包括,例如,來自語音對話的數(shù)據(jù)、視頻會議、流視頻、電子郵件(“ emai I ”)消息、語音郵件消息、文字數(shù)字符號、圖形、圖像、視頻、文本等等。來自語音對話的數(shù)據(jù)可以是,例如,話音信息、靜默周期、背景噪聲、舒適噪聲、音調(diào)等等??刂菩畔⒖梢允侵副硎居糜谧詣踊到y(tǒng)的命令、指令或控制字的任何數(shù)據(jù)。例如,控制信息可以被用于路由媒體信息通過系統(tǒng),或者指示節(jié)點以預(yù)確定的方式處理媒體信息。然而,實施例不受限于或者在上下文中示出或者在圖5中描述的元件。
[0079]如以上所描述的,系統(tǒng)500可以以變化的物理樣式或形狀因子來體現(xiàn)。圖6圖示了其中可以體現(xiàn)系統(tǒng)500的小形狀因子設(shè)備600的實施例。在實施例中,例如,設(shè)備600可以被實現(xiàn)為具有無線能力的移動計算設(shè)備。例如,移動計算設(shè)備可以是指具有處理系統(tǒng)和諸如一個或多個電池之類的移動電源或供應(yīng)的任何設(shè)備。
[0080]如以上所描述的,移動計算設(shè)備的示例可以包括個人計算機(PC)、膝上型計算機、超膝上型計算機、平板、觸摸板、便攜式計算機、手持式計算機、掌上計算機、個人數(shù)字助理(PDA)、蜂窩電話、組合蜂窩電話/PDA、電視、智能設(shè)備(例如智能電話、智能平板或智能電視)、移動互聯(lián)網(wǎng)設(shè)備(MID)、消息傳遞設(shè)備、數(shù)據(jù)通信設(shè)備等等。
[0081]移動計算設(shè)備的示例還可以包括被設(shè)置成由人穿戴的計算機,諸如手腕計算機、手指計算機、戒指計算機、眼鏡計算機、腰帶扣計算機、臂章計算機、鞋子計算機、衣物計算機以及其它可穿戴計算機。在實施例中,例如,移動計算設(shè)備可以被實現(xiàn)為能夠運行計算機應(yīng)用以及語音通信和/或數(shù)據(jù)通信的智能電話。盡管一些實施例可以通過作為示例被實現(xiàn)為智能電話的移動計算設(shè)備進行描述,但是可以領(lǐng)會到,其它實施例也可以通過使用其它無線移動計算設(shè)備來實現(xiàn)。實施例在該上下文中不受限。[0082]如圖6中所示,設(shè)備600可以包括外殼602、顯示器604、輸入/輸出(I/O)設(shè)備606以及天線608。設(shè)備600還可以包括導(dǎo)航特征612。顯示器604可以包括用于顯示適于移動計算設(shè)備的信息的任何適合的顯示單元。I/O設(shè)備606可以包括用于將信息輸入到移動計算設(shè)備中的任何適合的I/O設(shè)備。I/O設(shè)備606的示例可以包括文字數(shù)字鍵盤、數(shù)字小鍵盤、觸摸板、輸入鍵、按鈕、開關(guān)、搖臂開關(guān)、麥克風、揚聲器、語音識別設(shè)備和軟件等等。信息還可以借助于麥克風輸入到設(shè)備600中。這樣的信息可以通過語音識別設(shè)備被數(shù)字化。實施例在該上下文中不受限。
[0083]可以使用硬件元件、軟件元件或這二者的組合來實現(xiàn)各種實施例。硬件元件的示例可以包括處理器、微處理器、電路、電路元件(例如晶體管、電阻器、電容器、電感器等等)、集成電路、專用集成電路(ASIC)、可編程邏輯設(shè)備(PLD)、數(shù)字信號處理器(DSP)、現(xiàn)場可編程門陣列(FPGA)、邏輯門、寄存器、半導(dǎo)體設(shè)備、芯片、微芯片、芯片組等等。軟件的示例可以包括軟件組件、程序、應(yīng)用、計算機程序、應(yīng)用程序、系統(tǒng)程序、機器程序、操作系統(tǒng)軟件、中間件、固件、軟件模塊、例程、子例程、功能、方法、過程、軟件接口、應(yīng)用程序接口(API)、指令集、計算代碼、計算機代碼、代碼段、計算機代碼段、字、值、符號或其任何組合。確定是否使用硬件元件和/或軟件元件來實現(xiàn)實施例可以依照任何數(shù)量的因素而變化,諸如期望的計算速率、功率水平、耐熱性、處理循環(huán)預(yù)算、輸入數(shù)據(jù)速率、輸出數(shù)據(jù)速率、存儲器資源、數(shù)據(jù)總線速度和其它設(shè)計或性能約束。
[0084]至少一個實施例的一個或多個方面可以通過存儲在機器可讀介質(zhì)上的代表指令實現(xiàn),其表示處理器內(nèi)的各種邏輯,當被機器讀取時使機器構(gòu)造邏輯以執(zhí)行本文所描述的技術(shù)。稱作“IP核 ”的這樣的表示可以存儲在有形、機器可讀介質(zhì)上并且供應(yīng)給各種客戶或制造機構(gòu)以加載到實際上制作邏輯或處理器的構(gòu)造機器中。
[0085]至少一個實施例的一個或多個方面可以通過存儲在機器可讀介質(zhì)上的代表指令實現(xiàn),其表示處理器內(nèi)的各種邏輯,當被機器讀取時使機器構(gòu)造邏輯以執(zhí)行本文所描述的技術(shù)。稱作“IP核”的這樣的表示可以存儲在有形、機器可讀介質(zhì)上并且供應(yīng)給各種客戶或制造機構(gòu)以加載到實際上制作邏輯或處理器的構(gòu)造機器中。
[0086]可以使用表述“一個實施例”或“實施例”連同它們的衍生物來描述一些實施例。這些術(shù)語意味著關(guān)于該實施例描述的特定特征、結(jié)構(gòu)或特性包括在至少一個實施例中。短語“在一個實施例中”在本說明書中的各個位置的出現(xiàn)不一定都是指相同的實施例。另外,可以使用表述“耦合”和“連接”連同它們的衍生物來描述一些實施例。這些術(shù)語不一定意圖作為彼此的同義詞。例如,可以使用術(shù)語“連接”和/或“耦合”來描述一些實施例以指示兩個或更多元件與彼此直接物理或電氣接觸。然而,術(shù)語“耦合”還可能意味著兩個或更多元件并未與彼此直接接觸,但仍然與彼此合作或交互。
[0087]要強調(diào)的是,提供本公開的摘要以允許讀者快速確認技術(shù)公開的性質(zhì)。其在將不被用于解釋或限制權(quán)利要求的范圍或意義的理解上被提交。此外,在前文的【具體實施方式】中可以看到,出于簡化本公開的目的而使各種特征一起組成在單個實施例中。這種公開的方法不應(yīng)被解釋為反映所要求保護的實施例需要比明確記載在每個權(quán)利要求中的特征更多的特征這一意圖。而是,如以下權(quán)利要求反映的,發(fā)明主題在于比單個公開的實施例的所有特征少。因此以下權(quán)利要求以此方式被并入到【具體實施方式】中,其中每個權(quán)利要求獨立地作為單獨的實施例。在隨附權(quán)利要求中,術(shù)語“包含”和“在其中”分別被用作相應(yīng)術(shù)語“包括”和“其中”的簡明語言等同物。另外,術(shù)語“第一”、“第二”、“第三”等等僅僅被用作標記,并且不旨在將數(shù)字需要強加在它們的對象上。
[0088]已經(jīng)在以上描述的包括所公開的架構(gòu)的示例。當然,不可能描述組件和/或方法的每一個可想到的組合,但是本領(lǐng)域普通技術(shù)人員可以認識到許多另外的組合和排列是可能的。因此,新穎架構(gòu)旨在涵蓋落在隨附權(quán)利要求的精神和范圍內(nèi)的所有這樣的替換、修改和變 型。
【權(quán)利要求】
1.一種裝置,包括: 運行固態(tài)驅(qū)動器(SSD)控制算法的處理器電路,其操作成: 對固態(tài)驅(qū)動器(SSD)循環(huán)供電,SSD包括邏輯到物理(L2P)表,其包括用于將邏輯塊地址(LBA)轉(zhuǎn)換成SSD中的物理地址的地址映射模式,L2P表被分成多個表段,所述多個段中的每一個包括LBA的順序成組; 執(zhí)行針對SSD的部分啟動,所述部分啟動不包括L2P表的加載; 在完成所述部分啟動時發(fā)信號通知:SSD預(yù)備對訪問請求進行處理; 以順序方式將所述多個段加載到L2P表中;以及 處理指定未加載的段內(nèi)的LBA的訪問請求。
2.權(quán)利要求1的裝置,所述處理器電路操作成: 將所述未加載的段加載到L2P表中;以及 一旦所述未加載的段已經(jīng)被加載到L2P表中,就恢復(fù)以順序方式將所述多個段加載到L2P表中。
3.權(quán)利要求2的裝置,所述處理器電路操作成將多個附加的未加載段加載到L2P表中,所述多個附加的未加 載段相繼于所述未加載的段。
4.權(quán)利要求2的裝置,所述處理器電路操作成通過在用所請求的LBA除以每段的LBA數(shù)量之后取整數(shù)值來確定與LBA相關(guān)聯(lián)的段,其中LBA從I到η順序編號。
5.權(quán)利要求2的裝置,所述處理器電路操作成在加載特定段之前確定所述特定段是否已經(jīng)被加載。
6.權(quán)利要求2的裝置,所述處理器電路操作成: 接收訪問請求,所述訪問請求包括LBA ; 驗證與所述訪問請求中的LBA相關(guān)聯(lián)的段已經(jīng)被加載;以及 在驗證到所述段已經(jīng)被加載到L2P表中時,服務(wù)于針對特定段的訪問請求。
7.權(quán)利要求1的裝置,所述處理器電路操作成當所述處理器確定針對SSD的空閑狀態(tài)時使SSD斷電。
8.權(quán)利要求1的裝置,所述SSD操作成當SSD確定其在空閑狀態(tài)中時發(fā)信號通知所述處理器電路:使SSD斷電。
9.權(quán)利要求7的裝置,所述處理器電路操作成當所述處理器確定需要SSD時使SSD加電。
10.權(quán)利要求1的裝置,所述處理器電路被實現(xiàn)為SSD內(nèi)的嵌入式處理器上的固件。
11.權(quán)利要求1的裝置,所述處理器電路被實現(xiàn)為SSD內(nèi)的硬件狀態(tài)機。
12.權(quán)利要求1的裝置,其中所述處理器運行SSD控制算法。
13.—種方法,包括: 使固態(tài)驅(qū)動器(SSD)通電; 執(zhí)行針對SSD的部分啟動,所述部分啟動不包括針對SSD的邏輯到物理(L2P)表的加載,所述L2P表包括用于將邏輯塊地址(LBA)轉(zhuǎn)換成SSD中的物理地址的地址映射模式,所述L2P表被分成多個表段,所述多個段中的每一個包括LBA的順序成組; 在完成所述部分啟動時發(fā)信號通知=SSD預(yù)備對訪問請求進行處理; 以順序方式將所述多個段加載到L2P表中;以及中斷所述多個段到L2P表中的順序加載以處理指定未加載的段內(nèi)的LBA的訪問請求。
14.權(quán)利要求13的方法,包括: 將所述未加載的段加載到L2P表中;以及 一旦所述未加載的段已經(jīng)被加載到L2P表中,就恢復(fù)以順序方式將所述多個段加載到L2P表中。
15.權(quán)利要求14的方法,包括將多個附加的未加載段加載到L2P表中,所述多個附加的未加載段相繼于所述未加載的段。
16.權(quán)利要求13的方法,包括通過在用所請求的LBA除以每段的LBA數(shù)量之后取整數(shù)值來確定與指定LBA的訪問請求相關(guān)聯(lián)的未加載段,其中LBA從I到η順序編號。
17.權(quán)利要求13的方法,包括在加載特定段之前確定所述特定段是否已經(jīng)被加載。
18.權(quán)利要求17的方法,包括: 接收訪問請求,所述訪問請求包括LBA ; 驗證與所述訪問請求中的LBA相關(guān)聯(lián)的段已經(jīng)被加載;以及 在驗證到所述段已經(jīng)被加載時,服務(wù)于針對特定段的訪問請求。
19.一種系統(tǒng),包括: 處理器,其與附加系統(tǒng)組件通信耦合并且操作成運行軟件程序; 固態(tài)驅(qū)動器(SSD),SSD包括邏輯到物理(L2P)表,其包括用于將邏輯塊地址(LBA)轉(zhuǎn)換成SSD中的物理地址的地址映射模式,L2P表被分成多個表段,所述多個段中的每一個包括LBA的順序成組;以及 運行固態(tài)驅(qū)動器(SSD)控制算法的處理器電路,其操作成: 對SSD循環(huán)供電; 執(zhí)行針對SSD的部分啟動,所述部分啟動不包括L2P表的加載; 在完成所述部分啟動時發(fā)信號通知:SSD預(yù)備對訪問請求進行處理; 以順序方式將所述多個段加載到L2P表中;以及 處理指定未加載的段內(nèi)的LBA的訪問請求。
20.權(quán)利要求19的系統(tǒng),所述處理器電路操作成: 將所述未加載的段加載到L2P表中;以及 一旦所述未加載的段已經(jīng)被加載到L2P表中,就恢復(fù)以順序方式將所述多個段加載到L2P表中。
21.權(quán)利要求20的系統(tǒng),所述處理器電路操作成將多個附加的未加載段加載到L2P表中,所述多個附加的未加載段相繼于所述未加載的段。
22.權(quán)利要求20的系統(tǒng),所述處理器電路操作成通過在用所請求的LBA除以每段的LBA數(shù)量之后取整數(shù)值來確定與LBA相關(guān)聯(lián)的段,其中LBA從I到η順序編號。
23.權(quán)利要求20的系統(tǒng),所述處理器電路操作成在加載特定段之前確定所述特定段是否已經(jīng)被加載。
24.權(quán)利要求20的系統(tǒng),所述處理器電路操作成: 接收訪問請求,所述訪問請求包括LBA ; 驗證與所述訪問請求中的LBA相關(guān)聯(lián)的段已經(jīng)被加載;以及 在驗證到所述段已經(jīng)被加載時,服務(wù)于針對特定段的訪問請求。
25.權(quán)利要求19的系統(tǒng),所述處理器電路操作成當處理器確定針對SSD的空閑狀態(tài)時使SSD斷電。
26.權(quán)利要求19的系統(tǒng),所述SSD操作成當SSD確定其在空閑狀態(tài)中時發(fā)信號通知所述處理器電路:使SSD斷電。
27.權(quán)利要求19的系統(tǒng),所述處理器電路操作成當處理器確定需要SSD時使SSD加電。
28.權(quán)利要求19的系統(tǒng),所述處理器電路被實現(xiàn)為SSD內(nèi)的嵌入式處理器上的固件。
29.權(quán)利要求19的系統(tǒng),所述處理器電路被實現(xiàn)為SSD內(nèi)的硬件狀態(tài)機。
30.權(quán)利要求19的系統(tǒng),其中所述處理器運行SSD控制算法。
31.包括指令的至少一個計算機可讀存儲介質(zhì),當被運行時所述指令使系統(tǒng)進行以下動作: 執(zhí)行針對SSD的部分啟動,所述部分啟動不包括針對SSD的邏輯到物理(L2P)表的加載,L2P表包括用于將邏輯塊地址(LBA)轉(zhuǎn)換成SSD中的物理地址的地址映射模式,L2P表被分成多個表段,所述多個段中的每一個包括LBA的順序成組; 在完成所述部分啟動時發(fā)信號通知:SSD預(yù)備對訪問請求進行處理; 以順序方式將所述多個段加載到L2P表中;以及 當接收到指定未加載的段內(nèi)的LBA的訪問請求時,將所述未加載的段加載到L2P表。
32.權(quán)利要求31的計算機可讀存儲介質(zhì),包含指令,當被運行時所述指令使系統(tǒng)在一旦所述未加載的段已經(jīng)被加載到L2P表時恢復(fù)以順序方式將所述多個段加載到L2P表中。
33.權(quán)利要求32的計算機可讀存儲介質(zhì),包含指令,當被運行時所述指令使系統(tǒng)將多個附加的未加載段加載到L2P表中,所述多個附加的未加載段相繼于所述未加載的段。
34.權(quán)利要求34的計算機可讀存儲介質(zhì),包含指令,當被運行時所述指令使系統(tǒng)通過在用所請求的LBA除以每段的LBA數(shù)量之后取整數(shù)值來確定與LBA相關(guān)聯(lián)的段,其中LBA從I到η順序編號。
35.權(quán)利要求31的計算機可讀存儲介質(zhì),包含指令,當被運行時所述指令使系統(tǒng)在加載特定段之前確定所述特定段是否已經(jīng)被加載。
36.權(quán)利要求35的計算機可讀存儲介質(zhì),包含指令,當被運行時所述指令使系統(tǒng)進行以下動作: 接收訪問請求,所述訪問請求包括LBA ; 驗證與所述訪問請求中的LBA相關(guān)聯(lián)的段已經(jīng)被加載;以及 在驗證到所述段已經(jīng)被加載時,服務(wù)于針對特定段的訪問請求。
【文檔編號】G06F12/00GK104040483SQ201180075991
【公開日】2014年9月10日 申請日期:2011年12月27日 優(yōu)先權(quán)日:2011年12月27日
【發(fā)明者】P.拉特恩, R.J.小羅耶, S.納亞克, S.N.特里卡 申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
台安县| 望江县| 建水县| 抚州市| 涡阳县| 楚雄市| 仙游县| 咸阳市| 全州县| 城步| 济南市| 贡嘎县| 平泉县| 建湖县| 沙坪坝区| 九龙县| 阳春市| 滨州市| 互助| 西盟| 阿坝| 社旗县| 天镇县| 龙陵县| 庐江县| 疏勒县| 仁寿县| 寿宁县| 绵竹市| 巨鹿县| 安丘市| 东至县| 磐安县| 庄浪县| 化德县| 山阴县| 台安县| 通山县| 博客| 宁明县| 甘德县|