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

主機看到的設(shè)備固件更新效果的管理的制作方法

文檔序號:8942858閱讀:275來源:國知局
主機看到的設(shè)備固件更新效果的管理的制作方法
【專利說明】主機看到的設(shè)備固件更新效果的管理 分案申請的相關(guān)信息 本申請是國際申請日為2012年6月6日、國際申請?zhí)枮镻CT/US2012/041088、發(fā)明 名稱為"主機看到的設(shè)備固件更新效果的管理"的PCT申請進入中國國家階段申請?zhí)枮?201280031049. 2的發(fā)明專利申請的分案申請。
[0001] 相關(guān)申請的交叉引用
[0002] 在所附的申請書數(shù)據(jù)頁、請求書和傳送信(視情況,如果有的話)中列出了對該申 請的優(yōu)先權(quán)權(quán)益要求。在即時申請的類型所允許的范圍內(nèi),在提出本發(fā)明時,為了所有目 的,本申請通過引用并入在做出本發(fā)明時與本即時申請的共同擁有的下列申請:
[0003] 于2011年6月7日提交的美國臨時申請(案號為SF至11至12,序列號為 61/494, 262),第一署名發(fā)明人為 Ross John STENF0RT,且題為"MANAGEMENT OF DEVICE FIRMWARE UPDATE EFFECTS AS SEEN BY A HOST"。
技術(shù)領(lǐng)域
[0004] 存儲技術(shù)的進步對于提供性能、效率和使用實用性的提高是必要的。
【背景技術(shù)】
[0005] 除非被明確認定為被公開或眾所周知,否則為了上下文、定義或比較的目的而包 括的本文所提到的技術(shù)和概念不應(yīng)被解釋為承認這些技術(shù)和概念是以前公開為已知的或 者是現(xiàn)有技術(shù)的一部分。為了所有目的,包括專利、專利申請和出版物的本文中所引用的所 有參考文獻(如有的話)通過引用被整體并入,而無論是否指定并入。

【發(fā)明內(nèi)容】

[0006] 本發(fā)明可以以多種方式實現(xiàn)為例如過程、制品、裝置、系統(tǒng)、物質(zhì)組分和計算機可 讀介質(zhì)(比如計算機可讀存儲介質(zhì)(例如,光學(xué)和/或磁性大容量存儲設(shè)備中的介質(zhì)(比 如磁盤),或具有比如閃存存儲器的非易失性存儲器的集成電路)或通過光學(xué)或電子通信 鏈路發(fā)送程序指令的計算機網(wǎng)絡(luò)?!揪唧w實施方式】提供了能實現(xiàn)在上文認定的領(lǐng)域中的成本 的改善、盈利、性能、效率和使用實用性的提高的本發(fā)明的一種或多種實施方式的論述。具 體實施方式包括用于促進對【具體實施方式】的其余部分的理解的緒論。該緒論包括根據(jù)本文 描述的概念的系統(tǒng)、方法、制品和計算機可讀介質(zhì)中的一個或多個的示例性實施方式。如在 結(jié)論中更詳細討論,本發(fā)明涵蓋所公布的權(quán)利要求的范圍內(nèi)的所有可能修改和變更。
【附圖說明】
[0007] 圖IA示出了包括提供主機看到的設(shè)備固件更新效果的管理的固態(tài)磁盤(SSD)控 制器的SSD的實施方式的所選細節(jié)。
[0008] 圖IB示出了包括圖IA的SSD的系統(tǒng)的一個實施方式的所選細節(jié)。
[0009] 圖IC示出了包括圖IA的SSD的系統(tǒng)的另一個實施方式的所選細節(jié)。
[0010] 圖2示出了主機看到的設(shè)備固件更新效果的管理的一個實施方式的所選細節(jié)的 流程圖。
[0011] 圖3示出了主機看到的設(shè)備固件更新效果的管理的另一個實施方式的所選細節(jié) 的流程圖。
[0012] 附圖中的附圖標記列表
[0013]
[0014]
[0015]

【具體實施方式】
[0016] 以下將伴隨示出本發(fā)明的所選細節(jié)的附圖一起提供對本發(fā)明的一個或多個實施 方式的詳細描述。將結(jié)合實施方式來描述本發(fā)明。本文的實施方式應(yīng)被理解為僅是示例性 的,本發(fā)明不明確限于本文的任何或所有實施方式或者受到其限制,且本發(fā)明涵蓋許多替 代、修改和等同物。為避免闡述單調(diào),各種字標簽(包括但不限于:第一、最后、某些、各種、 進一步、其他、特定的、選擇、一些和顯著的)可應(yīng)用于獨立的實施方式組;如本文所使用 的,這些標簽并不明確地意指傳送質(zhì)量或任何形式的偏愛或偏見,而只是為了方便在獨立 組之間區(qū)分。所公開的過程的一些操作順序在本發(fā)明的范圍內(nèi)是可變的。無論在什么位置 多個實施方式用于描述過程、方法和/或程序指令特征的變化,其他實施方式均被設(shè)想為 根據(jù)預(yù)定的或動態(tài)確定的標準執(zhí)行分別對應(yīng)于多個實施方式的多個操作模式中的一個的 靜態(tài)和/或動態(tài)選擇。許多具體細節(jié)列于以下描述中,以提供對本發(fā)明的透徹理解。為示 例的目的而提供細節(jié),且本發(fā)明可根據(jù)未列出一些或所有細節(jié)的權(quán)利要求來實踐。為了清 晰起見,與本發(fā)明相關(guān)的技術(shù)領(lǐng)域中已知的技術(shù)資料未被詳細描述,使得本發(fā)明未被不必 要模糊。
[0017] 緒論
[0018] 該緒論僅包括以便于更迅速理解【具體實施方式】;本發(fā)明不限于在緒論中提出的概 念(包括明確的示例,如有的話),因為任何緒論的段落均是整個主題的縮略,且不意味著 是詳盡或限制的描述。例如,以下緒論僅對某些實施方式提供由空間和組織限定的概述信 息。有許多其他實施方式,包括最終將針對其描繪權(quán)利要求的那些實施方式,在整個說明書 的其余部分中討論。
[0019] 縮略語
[0020] 本文中定義的各種速記縮寫(例如,首字母縮寫詞)中的至少一些是指本文所使 用的某些元件。
[0021]
[0022]
UiN 丄 Λ J I / ΟΔ
[0023] 比如在OS會遇到不可恢復(fù)的錯誤和崩潰而沒有可見性延遲的背景下,例如經(jīng)由 顯示固件更新的效果的至少一部分的可見性,計算主機看到的設(shè)備固件更新效果的管理使 得能夠在設(shè)備固件更新過程中在主機上繼續(xù)運行0S。例如,設(shè)備(例如,SATA兼容SSD)與 運行未修改版Windows的計算主機耦接。設(shè)備上的固件比如通過被啟動和/或通過使得可 訪問以執(zhí)行固件的一個或多個庫和或/表來更新/激活。信息的否則會變得對OS來說立 即可見的一部分的可見性(在激活更新固件時)被延遲直至設(shè)備電力循環(huán)為止。如果該部 分包括例如固件修訂標識符,則延遲的可見性能夠在固件更新/激活過程中繼續(xù)運行OS而 不重新啟動OS。
[0024] 設(shè)備的固件被更新,并且固件更新的一個或多個效果被如計算主機所看到的任選 進行管理,比如經(jīng)由延遲對在主機上運行且訪問該設(shè)備的OS的更新的效果的至少一部分 的可見性。繼續(xù)延遲直至發(fā)生結(jié)束可見性延遲的特定事件。特定事件的示例為:設(shè)備被電力 循環(huán)(例如,移除電力,然后再施加電力),設(shè)備的所有或任意部分從一種電力模式轉(zhuǎn)換至 另一種電力模式(例如,退出休眠模式或PHY電力管理模式),設(shè)備接收供應(yīng)商特定命令,設(shè) 備接收特定參數(shù)和/或代碼作為固件更新的一部分,并且重置使設(shè)備與主機耦接的鏈路。 (例如,經(jīng)由對設(shè)備的命令可通過主機訪問的)設(shè)備的模式信息任選可選擇地確定前述哪 些示例事件對應(yīng)于結(jié)束可見性延遲的事件。
[0025] 例如,設(shè)備是具有控制器的SATA兼容SSD,該控制器具有更新的固件。更新的提 供固件修訂標識符的這部分的可見性被延遲直至SSD電力循環(huán)。因此,在設(shè)備電力循環(huán)之 前,對于OS來說,在更新(至少相對于固件修訂標識符)之前SSD似乎利用固件進行操作。 如果 OS 是某些版本的 Windows (例如,95、98、ME、NT、XP、2000、Server、Vista 和 7)中的一 個,則在某些實施方式和/或使用場景下,延遲更新固件修訂標識符的可見性可防止OS遇 到讓OS在不進行重新啟動和/或電力循環(huán)的情況下不能繼續(xù)運行(例如,用戶應(yīng)用程序) 的不可恢復(fù)的錯誤。固件修訂標識符對OS來說是可見的,例如響應(yīng)于返回設(shè)備的vro數(shù)據(jù) 的SATA '(識別(IDENTIFY))'命令,或可替代地響應(yīng)于SCSI/SAS讀取VPD命令。例如,在 SATA的背景下,固件修訂標識符包括在識別設(shè)備數(shù)據(jù)字中。再如,在SCSI的背景下,固件修 訂標識符包括在設(shè)備組成vro頁面中,比如包括在產(chǎn)品修訂級別條目中。
[0026] 延遲固件更新的至少一部分的可見性例如對應(yīng)于延遲身份和/或識別信息的一 個或多個變化的可見性。設(shè)備(例如,存儲設(shè)備)的固件被更新且被激活(例如,經(jīng)由啟動 更新固件的存儲設(shè)備的控制器),并在固件更新之前將經(jīng)引用以將身份和/或識別信息返 回計算主機(例如,運行OS比如Windows的計算機)的身份/識別數(shù)據(jù)結(jié)構(gòu)的所有或任意 部分保存在與固件對應(yīng)的狀態(tài)下??刂破鲗⒅当A粼诒4鏍顟B(tài)下的所保存的身份/識別數(shù) 據(jù)結(jié)構(gòu)中直至結(jié)束延遲可見性的事件由控制器檢測(或者其通知提供給控制器)。在此事 件之后,控制器啟動更新固件但不再保存身份/識別數(shù)據(jù)結(jié)構(gòu),而是根據(jù)更新固件重新構(gòu) 建身份/識別數(shù)據(jù)結(jié)構(gòu)。
[0027] 身份和/或識別信息包括識別在固件、產(chǎn)品、產(chǎn)品線和其特定實例的版本之間改 變的信息、操作參數(shù)和其他信息的所有或任意部分的任意組合。識別信息的示例是固件修 訂標識符、固件修訂號、以及特定SSD或采用該SSD的產(chǎn)品的識別。識別信息的額外示例是 特定實例特有的參考(例如,序列號)、特定類型的實例特有的參考(例如,修訂標識符/級 別或產(chǎn)品ID)、以及特定制造商/公司特有的參考(例如,供應(yīng)商ID)。操作參數(shù)的示例包 括進行SSP的一個或多個參數(shù),比如在C0MINIT/C0MRESET命令、固件更新、鏈路重置、PHY電 力管理模式轉(zhuǎn)換和/或電力循環(huán)過程中未另外保存的SSP參數(shù)。
[0028] 身份/識別數(shù)據(jù)結(jié)構(gòu)經(jīng)由幾項技術(shù)的一個或任意組合進行保存。對于第一示例性 技術(shù),控制器例如經(jīng)由在啟動期間直至結(jié)束延遲可見性的事件防止修改分配給數(shù)據(jù)結(jié)構(gòu)的 存儲位置,或可替代地經(jīng)由只針對與結(jié)束延遲可見性的事件相關(guān)聯(lián)的啟動允許修改存儲位 置來保護身份/識別數(shù)據(jù)結(jié)構(gòu)免受修改。任選地,將已經(jīng)存儲在身份/識別數(shù)據(jù)結(jié)構(gòu)中的 信息存儲在例如與供應(yīng)商特定數(shù)據(jù)結(jié)構(gòu)(比如VPD區(qū)域中的一個或多個供應(yīng)商特定字段) 對應(yīng)的其他數(shù)據(jù)結(jié)構(gòu)中。
[0029] 對于第二示例性技術(shù),在下載、激活和/或啟動新固件之前,結(jié)合主機上的驅(qū)動程 序操作的控制器將信息從身份/識別數(shù)據(jù)結(jié)構(gòu)提供至驅(qū)動程序。作為下載、激活和/或啟 動(在不發(fā)生結(jié)束延遲可見性的事件的情況下)新固件的一部分,驅(qū)動程序?qū)⑹孪忍峁┑?身份/識別數(shù)據(jù)結(jié)構(gòu)信息提供給控制器,并且該控制器用所提供的信息來填充分配給身份 /識別數(shù)據(jù)結(jié)構(gòu)的存儲位置。
[0030] 對于第三示例性技術(shù),主機上的驅(qū)動程序?qū)⑿畔⑻峁┙o設(shè)備以便設(shè)備用此來填充 身份/識別數(shù)據(jù)結(jié)構(gòu)。驅(qū)動程序在固件更新之后且在設(shè)備響應(yīng)于來自主機的取決于填充的 身份/識別數(shù)據(jù)結(jié)構(gòu)的任意命令之前提供信息。例如,信息對應(yīng)于進行SSP的一個或多個 參數(shù)。
[0031] 任選地,結(jié)合任意前述技術(shù),設(shè)備經(jīng)啟用以向主機提供另外僅是為了在結(jié)束延遲 可見性的事件之后在身份/識別數(shù)據(jù)結(jié)構(gòu)中變得可見的信息。作為具體示例,存儲設(shè)備的 固件在主機的指導(dǎo)下進行更新,并保存固件修訂標識符。因此,相對于由在主機上執(zhí)行的 OS (例如,一個版本的Windows)感知的識別幀,固件修訂標識符在固件更新過程中保持不 變,從而防止OS由于新固件修訂標識符在沒有重新啟動和/或電力循環(huán)的情況下變得可 見而導(dǎo)致的不可恢復(fù)的錯誤(例如,"崩潰")。在固件更新之后,在主機上執(zhí)行的代理程序 (例如,應(yīng)用程序或驅(qū)動程序)進行檢查以確定存儲設(shè)備上的固件是否是最新版本。代理 程序?qū)⑻囟睿ɡ?,讀取供應(yīng)商特定身份/識別信息,該讀取不同于可返回識別幀的讀 ?。┌l(fā)送至存儲設(shè)備,并且作為響應(yīng),該存儲設(shè)備提供新固件修訂標識符。代理程序然后對 新固件修訂標識符與最新固件修訂標識符進行比較以確定存儲設(shè)備是否具有最新固件。
[0032] 響應(yīng)于代理程序所發(fā)送的以確定該設(shè)備正在運行哪個固件版本的特定命令,在固 件啟動時,例如從更新有與在固件啟動時的固件版本對應(yīng)的固件修訂標識符(無論固件是 "新的"還是"舊的",并且無論啟動是否與結(jié)束延遲可見性的事件相關(guān)聯(lián))的"陰影"VPD區(qū) 域提供新固件修訂標識符。可替代地,在固件啟動時,從寫入有與啟動版本的固件對應(yīng)的固 件修訂標識符的"日志"提供新固件修訂標識符。
[0033] 任選地,將先前固件版本標識符存儲在陰影vro區(qū)域中。進一步任選地,設(shè)備中的 模式信息(例如,該設(shè)備通過主機經(jīng)由命令可訪問的)可選地確定陰影VPD區(qū)域是否關(guān)于 結(jié)束延遲可見性的事件來更新。例如,模式信息設(shè)置為防止關(guān)于電力循環(huán)對陰影VPD區(qū)域 進行更新,從而使固件修訂標識符在系統(tǒng)中保持不變,這個變化在該系統(tǒng)中另外會導(dǎo)致錯 誤。陰影VPD區(qū)域任選可經(jīng)由SMART日志和/或供應(yīng)商特定機制比如供應(yīng)商特定命令訪問。 [0034] 雖然前述特定實例是針對固件修訂標識符的,但是其他實施方式也以類似的方式 處理進行SSP的參數(shù),以及保存的身份/識別信息,且更一般地對OS進行延遲可見性處理 的固件更新的任意部分。
[0035] 任選地,單獨地或與任意前述技術(shù)結(jié)合地,設(shè)備經(jīng)啟用以存儲并隨后向主機提供 最新固件更新和/或一個或多個先前固件更新的結(jié)果。存儲和提供例如允許"回滾"至一 個或多個先前版本的固件,以根據(jù)一個或多個先前版本的固件的執(zhí)行來訪問身份/識別信 息,或以根據(jù)當前版本的固件(比如固件標識符和/或進行SSP的另外進行延遲可見性的 一個或多個參數(shù))的執(zhí)行來訪問身份/識別信息。
[0036] 固件更新的示例是當設(shè)備使用的固件的所有或任意部分(比如通過利用設(shè)備的 處理器執(zhí)行固件)用新固件替換時,該設(shè)備利用新固件起作用(比如通過啟動,然后執(zhí)行新 固件,和/或通過可用于執(zhí)行固件的一個或多個庫和/或表)。該替換任選包括例如(重 寫)寫入分配給剩余固件的非易失性(例如閃存)(例如用于存儲固件)。
[0037] 在某些實施方式中,訪問NVM中不同大小量子的壓縮數(shù)據(jù)在某些使用場景下具有 提高的存儲效率。例如,SSD控制器從計算主機接收(未壓縮)數(shù)據(jù)(例如,與磁盤寫入命 令相關(guān)),壓縮該數(shù)據(jù),并將壓縮后的數(shù)據(jù)存儲到閃存中。響應(yīng)于來自計算主機的后續(xù)請求 (例如,與磁盤讀取命令相關(guān)),SSD控制器從閃存中讀取壓縮數(shù)據(jù),對壓縮數(shù)據(jù)進行解壓, 并向計算主機提供未壓縮數(shù)據(jù)。根據(jù)不同大小量子將壓縮數(shù)據(jù)存儲在閃存中,量子大小由 于壓縮算法、操作模式和各種數(shù)據(jù)的壓縮效率等而變化。SSD控制器通過查閱所包括的映射 表對數(shù)據(jù)進行部分解壓以確定報頭存儲在閃存中的位置。SSD控制器解析從閃存獲得的報 頭以確定適當?shù)模▔嚎s)數(shù)據(jù)存儲在閃存中的位置。SSD控制器對來自閃存的適當?shù)臄?shù)據(jù) 進行解壓以產(chǎn)生未壓縮數(shù)據(jù)并將其提供給計算主機。在即時應(yīng)用中,解壓(及其變型)與 減壓(及其變型)同義。
[0038] 在各種實施方式中,SSD控制器包括與計算主機交互(interfacing)的主機接口、 與NVM比如閃存交互的接口以及用于控制接口并進行(和/或控制進行的各方面)壓縮和 解壓,以及較低級糾錯、較高級糾錯及利用獨立硅元件的動態(tài)較高級冗余模式管理的電路。
[0039] 根據(jù)各種實施方式,某些主機接口與USB接口標準、CF接口標準、MMC接口標準、 SD接口標準、記憶棒接口標準、xD圖片卡接口標準、IDE接口標準、SATA接口標準、SCSI接 口標準、SAS接口標準和PCIe接口標準中的一個或多個兼容。根據(jù)各種實施方式,計算主 機是計算機、工作站計算機、服務(wù)器計算機、存儲服務(wù)器、PC、膝上電腦、筆記本電腦、上網(wǎng)本 電腦、PDA、媒體播放器、媒體記錄器、數(shù)碼相機、蜂窩手機、無繩電話手機和電子游戲機中的 所有或任意部分。在某些實施方式中,接口主機(比如SAS/SATA橋接器)作為計算主機和 /或作為計算主機的橋接器進行操作。
[0040] 根據(jù)各種實施方式,某些SSD與由磁性和/或光學(xué)非易失性存儲器(比如,HDD、 CD驅(qū)動器及DVD驅(qū)動器)所使用的形狀因數(shù)、電接口和/或協(xié)議兼容。在各種實施方式中, SSD使用零個以上的奇偶碼、零個以上的RS碼、零個以上的BCH碼、零個以上的維特比或其 他格子碼及零個以上的LDPC碼。
[0041] 示例性實施方式
[0042] 在結(jié)束【具體實施方式】的緒論時,接下來是示例性實施方式的集合,包括明確列舉 為"EC"(示例性組合)的至少一些實施方式,根據(jù)本文所述的概念提供對各種實施方式類 型的額外描述;這些示例并不意味著是相互排斥的、詳盡無遺的或限制性的;且本發(fā)明并 不限于這些示例性實施方式,而是涵蓋所公布的權(quán)利要求的范圍內(nèi)的所有可能的修改和變 更。
[0043] EC1) -種方法,包括:
[0044] (a)根據(jù)與當前選擇識別信息相關(guān)聯(lián)的當前固件來操作設(shè)備,(a)的操作包括將 當前選擇識別信息返回與設(shè)備通信的計算主機;
[0045] (
當前第1頁1 2 3 4 5 6 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
德钦县| 如皋市| 营口市| 稻城县| 宾川县| 清水河县| 彩票| SHOW| 房山区| 岳池县| 正宁县| 荆州市| 马鞍山市| 灵武市| 安龙县| 英山县| 中西区| 弥渡县| 屏东市| 湘乡市| 福安市| 吐鲁番市| 定远县| 宁晋县| 定西市| 会泽县| 天镇县| 巴林右旗| 大方县| 全南县| 盐边县| 墨竹工卡县| 徐汇区| 耒阳市| 大足县| 龙游县| 济源市| 彭阳县| 胶州市| 红安县| 抚顺县|