專利名稱:主機請求映射的系統(tǒng)和方法
技術領域:
本公開一般涉及將主機存儲器訪問請求映射到設備外圍命令。
背景技術:
在供電周期之間保持數(shù)據的非易失性存儲器器件、比如通用串行總線(USB)閃存器件或可移除存儲卡已考慮到數(shù)據和軟件應用的增加的可移植性(portability)。當主機可訪問多個器件、比如存儲器陣列和在可移除存儲卡中的開關或按鈕時,存儲卡可以實現(xiàn)用于存儲器陣列的大容量存儲類(Mass Storage Class, MSC)和用于開關或按鈕的人機接口設備(Human Interface Device, HID)類。使能對產品的多個USB器件的主機訪問通常增加了由該產品使用的USB端點的數(shù)量和該產品中的緩沖器的數(shù)量。
發(fā)明內容
公開了映射主機訪問請求的系統(tǒng)和方法。主機訪問請求可以被標識為與被映射到除了存儲器以外的設備的存儲器地址對應的存儲器訪問請求。例如,存儲器訪問請求可以被映射到諸如數(shù)據存儲器件內的開關或總線控制器的外圍設備,或可以被映射到數(shù)據存儲器件外部的外部設備。在通用串行總線(USB)實現(xiàn)方式中,該映射可以使得主機能夠訪問或控制映射的設備,而不用實現(xiàn)另外的USB器件類。
圖1是映射主機訪問請求的系統(tǒng)的第一具體實施例的方框圖;圖2是映射主機訪問請求的系統(tǒng)的第二具體實施例的方框圖;圖3是圖示映射主機訪問請求的系統(tǒng)的數(shù)據地址空間的圖;圖4是圖示將主機訪問請求映射到外部設備的系統(tǒng)的具體實施例的圖;圖5是映射主機訪問請求的方法的第一具體實施例的流程圖;圖6是映射主機訪問請求的方法的第二具體實施例的流程圖;以及圖7是映射主機訪問請求的方法的第三具體實施例的流程圖。
具體實施例方式參考圖1,描述了映射主機訪問請求的系統(tǒng)的具體實施例,且總的表示為100。系統(tǒng)100包括耦接于數(shù)據存儲器件104的主機102。數(shù)據存儲器件104包括控制器122和器件地址空間130,器件地址空間130包括第一地址區(qū)域132和第二地址區(qū)域134??刂破?122被配置以通過在諸如非易失性存儲器陣列IM的存儲器陣列處開始存儲器操作來響應訪問第一地址區(qū)域132的請求,并通過將存儲器訪問請求映射到映射的設備1 來響應訪問第二地址區(qū)域134的請求。因為第一地址區(qū)域132對應于在非易失性存儲器陣列IM處的可尋址存儲器,但第二地址區(qū)域134可能不對應于在非易失性存儲器陣列IM處的可尋址存儲器,因此器件地址空間130可以包括超過非易失性存儲器陣列124的存儲器的可尋址量的地址范圍。在一個具體實施例中,主機102包括可由主機存儲器地址空間尋址的存儲器110。 主機102可以具有操作系統(tǒng)162。在一些實施例中,主機102還可以包括在主機存儲器地址空間中的至少一個文件164。主機102被配置以生成對于數(shù)據存儲器件104的一個或多個請求。例如,請求106可以向數(shù)據存儲器件104的映射的設備1 發(fā)送設置或值,或可以從數(shù)據存儲器件104的映射的設備1 請求狀態(tài)或值。主機102還被配置以從數(shù)據存儲器件 104接收數(shù)據,比如包括由映射的設備1 生成的數(shù)據的映射的設備數(shù)據108。數(shù)據存儲器件104包括主機接口 120、控制器122、非易失性存儲器陣列124、和映射的設備126。主機接口 120適用于將數(shù)據存儲器件104耦接于主機102。在一個具體實施例中,主機接口 120包括可從主機102拆卸的通用串行總線(USB)接口。雖然主機接口 120 被描繪為與控制器122分離,在其他實施例中,主機接口 120的至少一部分是控制器122的組件。在一個具體實施例中,非易失性存儲器陣列IM包括閃存陣列。非易失性存儲器陣列IM可經由器件地址空間130的第一地址區(qū)域132尋址。在一個具體實施例中,器件地址空間130與主機存儲器地址空間無關。器件地址空間130包括第一地址區(qū)域132和第二地址區(qū)域134。第一地址區(qū)域132被映射到非易失性存儲器陣列124的存儲器位置, 用于數(shù)據存儲和取回。例如,從主機102接收的到第一地址區(qū)域132的存儲請求由控制器 122映射到在非易失性存儲器陣列IM處的存儲器存儲操作。第二地址區(qū)域134對應于映射的設備126且與第一地址區(qū)域132不同。如所示,第二地址區(qū)域134包括在非易失性存儲器陣列124的可用存儲器扇區(qū)以外的存儲器地址區(qū)域。如在此使用的,非易失性存儲器陣列124的“可用存儲器扇區(qū)”是用戶可見或用戶可訪問的非易失性存儲器陣列124的扇區(qū),比如在非易失性存儲器陣列124的公共區(qū)中的扇區(qū)或在驗證或授權處理之后用戶可訪問的非公共區(qū)中的扇區(qū),作為例示的非限制性的例子。在一個具體實施例中,第一地址區(qū)域 132可以對應于非易失性存儲器陣列IM的所有可用的存儲器扇區(qū)(即,用戶可見或用戶可訪問的存儲器扇區(qū)),且在第二地址區(qū)域134內沒有存儲器地址可以對應于存儲器陣列IM 的可用位置。在另一實施例中,非易失性存儲器陣列124的至少一個可用扇區(qū)可經由第二地址區(qū)域134訪問,但不可經由第一地址區(qū)域132訪問。在一個具體實施例中,第二地址區(qū)域134與隱藏的存儲區(qū)內的存儲器相關聯(lián)。隱藏的存儲區(qū)可以包括不可用于存儲用戶數(shù)據且不可作為文件系統(tǒng)的部分而對主機102可見的非易失性存儲器陣列124的一部分。例如,隱藏的存儲區(qū)包括U3隱藏區(qū)、受信快閃 (TrustedFlash )隱藏區(qū)、受信快閃安全數(shù)據對象(SDO)和可由電氣和電子工程師協(xié)會 IEEE 1667存儲倉(silo)命令尋址的存儲位置中的至少一個。控制器122被配置以從主機102經由主機接口 120接收請求,且控制對非易失性存儲器陣列124的讀和寫訪問。控制器122還被配置以選擇性地映射來自主機102的讀和寫請求到映射的設備126。例如,當請求106包括對第二地址區(qū)域134的寫訪問的請求時, 控制器122可以適配為響應于請求106將請求136導向映射的設備1 作為來自主機的請求。請求136可以包括要應用于映射的設備126的設置或值,比如由主機102隨請求106 提供的值160。作為另一例子,當請求106包括對第二地址區(qū)域134的讀訪問的請求時,控制器122可以適配為響應于請求106,將請求136導向映射的設備126,請求136包括對與映射的設備126對應的數(shù)據的請求。在一個具體實施例中,控制器122被配置以將經由請求106接收的數(shù)據、比如值 160存儲在非易失性存儲器陣列IM處,并在初始化處理期間向映射的設備1 提供存儲的數(shù)據。例如,控制器122可以在對應于第一地址區(qū)域132或第二地址區(qū)域134的非易失性存儲器陣列124的存儲器位置處存儲用于映射的設備126的設置,且可以在通電處理期間向映射的設備126提供存儲的設置。映射的設備1 提供未由對第一地址區(qū)域132的通用串行總線(USB)大容量存儲類訪問提供的功能。例如,所述映射的設備126可以包括用戶輸入設備、打印機、掃描儀、攝像機、蜂鳴器、發(fā)光二極管(LED)、警報器、智能卡、溫度傳感器、光傳感器、化學傳感器、模擬到數(shù)字轉換器件、時鐘、計時器、加速計、開關、繼電器和數(shù)字到模擬轉換器件。在一個具體實施例中,映射的設備1 是總線控制器,比如用于外圍組件互連(PCI)總線、集成電路間 (I2C)總線、一布線(OneWire )總線、串行總線、并行總線、任何其他總線類型、或其任意組合的控制器。在操作期間,數(shù)據存儲器件104可以被配置以響應于來自主機102的對第二地址區(qū)域134的讀訪問的請求來提供映射的設備1 的值。數(shù)據存儲器件104還可以被配置以響應于來自主機102的對第二地址區(qū)域134的寫訪問的請求來設置映射的設備126的值。 因此,通過提供經由存儲器映射對映射的設備126的訪問,數(shù)據存儲器件104可被主機102 訪問,作為單個端點和作為大容量存儲類(MSC)器件。在USB實施方式中,主機102可以使用MSC器件類來訪問非易失性存儲器陣列IM的功能,且還可以不安裝用于映射的設備126 的另外的USB器件類驅動器而訪問映射的設備126的非MSC功能。USB器件類可以利用多個邏輯信道或“管線(pipe)”用于通信,每個管線被分配到USB器件處的對應端點。在USB 實施方式中,可用于器件的管線的總數(shù)可能受限,且每個管線可能需要在主機102處或在數(shù)據存儲器件104處的緩沖器來緩沖用于經由USB總線傳輸?shù)臄?shù)據。相比于實現(xiàn)多個器件類,通過實現(xiàn)用于數(shù)據存儲器件104的MSC器件類且使能經由存儲器映射來訪問映射的設備126,管線、器件驅動器和緩沖器的數(shù)量可以減少。為了例示,在一個具體實施例中,當請求106是包括要寫入第二地址區(qū)域134的值 160的寫請求時,控制器122使用值160來調整映射的設備126的一個或多個參數(shù)。當請求106是讀第二地址區(qū)域134的讀請求時,控制器122將該請求106翻譯為從映射的設備 126讀數(shù)據的指令,并向映射的設備發(fā)送請求136。映射的設備1 可以響應于讀請求136 而提供映射的設備126的值作為映射的設備數(shù)據138。例如,作為映射的設備數(shù)據138而提供的值可以包括狀態(tài)指示符、開關設置或任何其他設備信息。映射的設備數(shù)據138可以從映射的設備1 提供給控制器122,且控制器 122可以被配置以將映射的設備數(shù)據138作為映射的設備數(shù)據108發(fā)送給主機102。在另一實施例中,映射的設備數(shù)據138可以被存儲在非易失性存儲器陣列IM處。 例如,在第二地址區(qū)域134與非易失性存儲器陣列IM的可用存儲器相關聯(lián)的實施例中,映射的設備數(shù)據138可以被存儲在第二地址區(qū)域134,以由主機102經由訪問第二地址區(qū)域 134的存儲器讀請求來取回。作為另一例子,比如當?shù)诙刂穮^(qū)域134不對應于可用存儲器時,映射的設備數(shù)據138可以被存儲在第一地址區(qū)域132處。在第一地址區(qū)域132處的映射的設備數(shù)據138的位置可以被主機102所知,且可經由主機102發(fā)起的對該具體位置的存儲器讀請求而訪問。或者,控制器122可以以對主機102透明的方式管理從第一地址區(qū)域132取回映射的設備數(shù)據138。在一個具體實施例中,第二地址區(qū)域134由主機102使用文件164間接訪問。可以通過主機102的操作系統(tǒng)162將文件164與第二地址區(qū)域134相關聯(lián)。在另一實施例中, 第二地址區(qū)域134由主機102直接訪問,而不使用文件164。在一個具體實施方式
中,來自主機102的命令由控制器122映射到在非易失性存儲器陣列1 外部的映射的設備126??梢砸勒瞻踩珔f(xié)議來傳送該命令,且控制器122從主機102接收與映射的設備1 器件相關聯(lián)的標識符。在一個具體實施例中,安全協(xié)議是小型計算機系統(tǒng)接口(SCSI)協(xié)議。該命令符合電氣和電子工程師協(xié)會IEEE標準1667。例如,數(shù)據存儲器件104可以包括可尋址內容目標(ACT),其包括依照IEEE 1667 的第一存儲倉。探測(probe)命令可以向主機102返回對于在ACT中實施的每個存儲倉的存儲倉類型標識符,包括用于映射的設備126的第二存儲倉的存儲倉類型標識符。主機102 可以經由第二存儲倉的存儲倉類型標識符確定映射的設備126的存在,且還可以確定為該存儲倉類型定義的命令以提供接口來訪問第二地址區(qū)域134。在SCSI安全協(xié)議實施方式中,主機102可以生成包括標識映射的設備的存儲倉的 SCSI安全協(xié)議出命令的請求106,該SCSI安全協(xié)議出命令是存儲倉類型支持的設備命令, 且可以包括諸如值160的一個或多個值??刂破?22可以翻譯請求106,且經由請求136向映射的設備126提供設備命令。主機102還可以向數(shù)據存儲器件104發(fā)送SCSI安全協(xié)議入命令。安全協(xié)議入命令可以被控制器122翻譯為讀取響應于設備命令而提供的映射的設備數(shù)據138的請求??刂破?22可以開始以由映射的設備126的存儲倉類型指定的格式向主機102發(fā)送映射的設備數(shù)據108。在數(shù)據存儲器件104包括或支持諸如外圍設備的多個設備的實施例中,非易失性存儲器陣列1 可以包括與各設備相關聯(lián)以使能由主機102訪問的多個存儲倉類型,和/或與多個設備相關聯(lián)的單個存儲倉類型。如將參考圖3所討論的,器件地址空間130還可以包括一個或多個另外的地址區(qū)域。例如,所述器件地址空間130可以包括第三地址區(qū)域,且來自主機102的訪問第三地址區(qū)域的請求可以被控制器122映射到第二映射的設備。如參考圖4將討論的,映射的設備 1 可以是經由設備接口耦接于數(shù)據存儲器件104的第一外部設備,且第二映射的設備可以是經由第二設備接口耦接于數(shù)據存儲器件104的第二外部設備。通過將對于第二地址區(qū)域134的訪問請求映射到映射的設備1 來使能主機對非易失性存儲器陣列124的訪問以及還使能主機對映射的設備126的訪問,不同器件類的數(shù)據存儲器件102的多個組件對于主機102而言可使用單個連接端點訪問。例如,在USB實施方式中,經由單個MSC設備接口可訪問非易失性存儲器陣列IM和映射的設備126。這種實施方式可以減小支持映射的設備126作為單獨的USB類可能需要的USB端點和緩沖器的數(shù)量。參考圖2,描繪了映射主機訪問請求的系統(tǒng)的第二具體實施例,且其總的表示為 200。系統(tǒng)200包括耦接于數(shù)據存儲器件204的主機202。主機202包括可由主機存儲器地址空間訪問的主機存儲器210。數(shù)據存儲器件204包括與主機存儲器地址空間無關的器件地址空間230。器件地址空間230包括被映射到非易失性存儲器陣列224的第一地址區(qū)域 232和被映射到映射的設備226的第二地址區(qū)域234。在一個具體實施例中,系統(tǒng)200的一個或多個組件可以基本類似于圖1的系統(tǒng)100的對應組件而工作。映射的設備2 可由主機202經由訪問第二地址區(qū)域234的請求206而訪問??刂破?22被配置以將請求206標識為對第二地址區(qū)域234的寫或讀請求且向映射的設備 2 發(fā)送請求236。當請求206是寫請求時,請求236可以設置映射的設備226的參數(shù)。當請求206是讀請求時,請求236可以指示對于來自映射的設備226的設置或其他數(shù)據的值的請求。映射的設備2 被配置以生成要發(fā)送到主機202的請求M0。請求240可以包括訪問第二地址區(qū)域234的請求。請求240可以被控制器222映射到主機202,且控制器222 可以開始經由主機接口 220向主機202發(fā)送請求M2。請求242可以對應于請求MO。在一個具體實施例中,請求240可以被存儲在非易失性存儲器陣列224處以在存儲器讀請求期間由主機202訪問。在另一實施例中,比如在主機接口 220包括使USB器件能夠向USB主機發(fā)送請求的USB3. 0接口的情況下,請求240可以由映射的設備2 提供給控制器222,且控制器222可以開始經由主機接口 220向主機202發(fā)送請求對2。參考圖3,繪出了映射存儲器請求的系統(tǒng)的具體實施例,且其總的表示為300。系統(tǒng)300包括數(shù)據地址空間302,該數(shù)據地址空間302包括第一地址區(qū)域304、第二地址區(qū)域 306和第三地址區(qū)域308。第一地址區(qū)域304可以包括對應于在數(shù)據存儲器件、比如圖1的數(shù)據存儲器件104或圖2的數(shù)據存儲器件204中的可用物理存儲器的地址范圍。第二地址區(qū)域306和第三地址區(qū)域308越過了最后可用的存儲器地址310。第二地址區(qū)域306可以被存儲器控制器映射為對應于物理存儲器外部的具體設備,比如圖1的映射的設備1 或圖2的映射的設備226。類似地,第三地址區(qū)域208可以被存儲器控制器標識為被映射到第二設備。雖然圖3描述第二地址區(qū)域306和第三地址區(qū)域308,但是在其他實施例中,數(shù)據地址空間302可以包括越過最后可用存儲器地址310的單個地址區(qū)域、或在最后可用存儲器地址310之外的三個或更多地址區(qū)域。在USB實施方式中,數(shù)據地址空間302可以對應于經由USB MSC設備接口訪問的存儲器器件。在存儲器外部的多個設備可以被映射,以便它們可由主機設備訪問,而不用被添加為USB器件。參考圖4,描繪了映射主機訪問請求的系統(tǒng)的具體實施例,且其總的表示為400。 系統(tǒng)400包括耦接于數(shù)據存儲器件404的主機402。數(shù)據存儲器件404耦接于外部設備406 和第二外部設備408,比如一個或多個外圍設備。在例示實施例中,數(shù)據存儲器件404是圖 1的數(shù)據存儲器件104或圖2的數(shù)據存儲器件204。在一個具體實施例中,數(shù)據存儲器件404包括主機接口 420、非易失性存儲器陣列 424、設備接口 450和第二設備接口 452。主機接口 420被配置以將數(shù)據存儲器件404耦接于主機402。主機接口 420還被配置以使主機402能夠向數(shù)據存儲器件404發(fā)送存儲器訪問請求。主機接口 420還被配置以向主機402提供數(shù)據,比如從非易失性存儲器陣列424 取回的數(shù)據、經由設備接口 450取回的數(shù)據、或經由第二設備接口 452取回的數(shù)據。在一個具體實施例中,主機接口 420包括適配為將數(shù)據存儲器件404可拆卸地耦接于主機402的 USB 接口。在一個具體實施例中,設備接口 450適配為耦接于外部設備406,且第二設備接口 452適配為耦接于第二外部設備408。主機接口 420可以實施USB接口,且數(shù)據存儲器件404可以使主機402能夠通過將訪問請求映射到非易失性存儲器陣列似4來訪問外部設備406 和第二外部設備408。因此,設備接口 450和第二設備接口 452不代表(r印resent) USB端
點ο在一個具體實施例中,數(shù)據存儲器件404被配置以將來自主機402的命令映射到非易失性存儲器陣列4M或映射到外部設備406或第二外部設備408,而不將第一外部設備406和第二外部設備408實現(xiàn)為另外的USB器件。例如,第一外部設備406和第二外部設備408可以由從主機402發(fā)送的對分別被映射到第一外部設備406和第二外部設備408 的地址范圍的存儲器訪問請求來訪問。例如,非易失性存儲器陣列4M可以由圖3的數(shù)據地址空間302訪問,以便外部設備406可經由對第二地址區(qū)域306的訪問請求而訪問,且第二外部設備408可經由對第三地址區(qū)域308的訪問請求而訪問。參考圖5,描繪了映射主機訪問請求的方法的第一具體實施例,且其總的表示為 500。在一個具體實施例中,方法500可以由圖1的數(shù)據存儲器件104、圖2的數(shù)據存儲器件 204、或圖4的數(shù)據存儲器件404進行。在502,在通用串行總線(USB)閃存器件處接收來自主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求。例如,閃存地址區(qū)域可以對應于圖1的數(shù)據存儲器件104的第二地址區(qū)域134,且外圍設備可以對應于圖1的映射的設備126。在另一具體實施例中,外部設備可以對應于圖4的外部設備406。前進到504,來自主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求被映射到所述外圍設備。例如,當該請求是寫請求時,該請求可以被映射為向外圍設備發(fā)送的用于設置在外圍設備處的參數(shù)的命令。作為另一例子,當該請求是讀請求時,該請求可以被映射為向外圍設備發(fā)送的用于讀外圍設備的配置或狀態(tài)信息的命令。因此,主機可以使用訪問在器件地址空間內的存儲器的請求來訪問外圍設備,且該請求被映射到外圍設備。因此,不需要支持外圍設備的USB設備接口以使能主機的訪問。參考圖6,描繪了映射主機訪問請求的方法的第二具體實施例,且其通常被指定為 600。方法600包括在602處,在通用串行總線(USB)閃存器件處接收來自主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求。USB閃存器件包括與存儲器陣列地址空間相關聯(lián)的存儲器陣列。與外圍設備相關聯(lián)的閃存地址區(qū)域在該存儲器陣列地址空間以外。例如,可以在圖1的數(shù)據存儲器件404、圖2的數(shù)據存儲器件204或圖4的數(shù)據存儲器件404處接收請求。前進到604,來自主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求被映射到所述外圍設備。在一個具體實施例中,與外圍設備相關聯(lián)的閃存地址區(qū)域可由主機訪問,作為單個端點以及作為大容量類(MSC)器件。移動到606,可以在USB閃存器件處接收來自外圍設備的訪問與該外圍設備相關聯(lián)的閃存地址區(qū)域的請求。繼續(xù)到608,來自外圍設備的訪問與該外圍設備相關聯(lián)的閃存地址區(qū)域的請求可以被映射到主機。在一個具體實施例中,來自外圍設備的請求是經由圖 2的請求242被映射到主機202的請求M0。繼續(xù)到610,與外圍設備相關聯(lián)的一個或多個設置可以被存儲在與外圍設備相關聯(lián)的閃存地址區(qū)域處的USB閃存器件處。前進到612,USB閃存器件可以從主機拆卸,且移動到614,USB閃存器件可以附接到第二主機。繼續(xù)到616,可以在USB閃存器件處接收來自第二主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求。繼續(xù)到618,來自第二主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求可以被映射到該外圍設備。因此,USB閃存器件可以通過映射訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求來使多個主機能夠訪問外圍設備。參考圖7,描繪了映射主機訪問請求的方法的第三例示實施例,且其通常被指定為 700。在702,在通用串行總線(USB)兼容的數(shù)據存儲器件處接收來自主機的訪問目標外圍設備的請求,其中,該請求符合安全協(xié)議且包括與目標外圍設備相關聯(lián)的標識符。數(shù)據存儲器件可以是諸如快閃器件的大容量存儲器件。安全協(xié)議可以是小型計算機系統(tǒng)接口(SCSI)兼容的。例如,來自主機的命令可以包括小型計算機系統(tǒng)接口(SCSI)安全協(xié)議的入命令和出命令之一。該請求可以依照電氣和電子工程師協(xié)會IEEE標準1667。在一個具體實施例中,標識符是存儲倉類型標識符。該標識符可以指示對應于目標外圍設備的類型的存儲倉類型。例如,所述存儲倉類型可以對應于發(fā)光二極管(LED)。繼續(xù)到704,來自主機的請求被映射到要被發(fā)送到目標外圍設備的命令。前進到 706,從目標外圍設備接收的數(shù)據被傳送到主機。使用SCSI安全協(xié)議的出命令來傳輸數(shù)據。通過使用符合安全協(xié)議的請求,主機可以經由數(shù)據存儲器件與目標外圍設備通信,而不用數(shù)據存儲器件實現(xiàn)用于目標外圍設備的USB設備接口。例如,數(shù)據存儲器件可以是在使得主機能夠訪問目標外圍設備時可由主機訪問作為單個端點和作為大容量類(MSC) 器件的閃存器件。雖然在此描述的各個組件被圖示為塊組件且按通用的術語而描述,但是這種組件可以包括一個或多個微處理器、狀態(tài)機或被配置以使得圖1的數(shù)據存儲器件104或圖2的數(shù)據存儲器件204能夠進行歸屬于這種組件的具體功能的其他電路,或其任意組合。例如, 圖1的主機120、控制器122或其兩者可以表示物理組件,比如控制器、狀態(tài)機、邏輯電路、或使得數(shù)據存儲器件104能夠接收來自主機設備或來自其他外部設備的數(shù)據請求且通過將對第二地址區(qū)域134的主機請求映射到映射的設備1 來響應于該數(shù)據請求的其他結構。例如,可以使用被編程以確定來自主機的存儲器訪問請求是否對應于第二地址區(qū)域134并當該請求對應于第二地址區(qū)域134時向映射的設備1 發(fā)送該請求的微處理器或微控制器來實施圖1的控制器122。在一個具體實施例中,圖1的控制器122包括由處理器執(zhí)行的可執(zhí)行指令,且這些指令被存儲在存儲器指令1 處?;蛘?,或另外,由處理器執(zhí)行的可執(zhí)行指令可以被存儲在不是存儲器指令104的部分的分離的存儲器位置處,比如存儲在控制器122處的只讀存儲器(ROM)(未示出)處。在一個具體實施例中,數(shù)據存儲器件104可以是被配置以選擇性地耦接于一個或多個外部設備的便攜式設備。但是,在其他實施例中,數(shù)據存儲器件可以被附接或嵌入在一個或多個主機設備內,比如在便攜式通信設備的外殼內。例如,數(shù)據存儲器件可以在諸如無線電話、個人數(shù)字助理(PDA)、游戲設備或控制臺、便攜式導航設備或使用內部非易失性存儲器的其他設備的包裝的裝置內。在一個具體實施例中,數(shù)據存儲器件104包括非易失性存儲器,比如閃存(例如NAND、N0R、多級單元(MLC)、劃分的位線NOR(DINOR)、AND、高電容耦合比(HiCR)、非對稱無接觸晶體管(ACT)或其他閃存)、可擦除可編程只讀存儲器(EPROM)、 電可擦除可編程只讀存儲器(EEPROM)、只讀存儲器(ROM)、一次可編程存儲器(OTP)或任意其他類型的存儲器。在此描述的實施例的例示意圖提供各個實施例的結構的大體理解。這些例示不意圖用作對使用在此描述的結構或方法的裝置和系統(tǒng)的所有元素和特征的完整描述。在瀏覽本公開后,許多其他實施例對本領域技術人員而言將是顯而易見的??梢岳闷渌麑嵤├?且其可以從本公開中得出,以便可以不脫離本公開的范圍而做出結構和邏輯上的替換和改變。雖然已經在此例示和描述了具體實施例,但是應該理解,針對所示的具體實施例,可以替換被設計以實現(xiàn)相同或類似目的的任何隨后布置。本公開意圖覆蓋各種實施例的任意和所有隨后的適用或變型。在瀏覽本說明書后,上述實施例的組合以及未在此具體描述的其他實施例對本領域技術人員將是顯而易見的。因此,本公開和附圖將被視為是例示性的而不是限制性的。提交了本公開的摘要,理解其將不用于解釋或限制權利要求的范圍或意思。另外, 在前述具體實施方式
中,為了使本公開流線化的目的,各種特征可以被分組到一起或在單個實施例中描述。本公開不將被解釋為反映所要求保護的實施例需要比在每個權利要求中明確列出的更多特征的意圖。而是,如以下權利要求反映的,可以指示本發(fā)明的主題少于任意公開的實施例中的所有特征。上述主題將被認為是例示的而不是限制的,且所附權利要求意圖覆蓋落入本公開的范圍內的所有這種修改、改進和其他實施例。因此,達法律允許的最大限度,本發(fā)明的范圍要由以下權利要求及其等同物的最大可允許解釋來確定,且不應該被前述詳細描述限制或局限。
權利要求
1.一種數(shù)據存儲器件,包括主機接口,其中,所述主機接口適配為將數(shù)據存儲器件耦接于主機,所述主機包括可由主機存儲器地址空間尋址的存儲器;與主機存儲器地址空間無關的器件地址空間,所述器件地址空間包括第一地址區(qū)域和第二地址區(qū)域,其中,所述第二地址區(qū)域不同于所述第一地址區(qū)域;非易失性存儲器陣列;以及控制器,耦接于所述非易失性存儲器陣列且還耦接于映射的設備;其中,所述控制器適配為響應于來自主機的訪問所述器件地址空間的第一地址區(qū)域的第一請求,在所述非易失性存儲器陣列處進行存儲器訪問操作,以及其中,所述控制器還適配為響應于來自主機的訪問所述器件地址空間的第二地址區(qū)域的第二請求,將所述第二請求映射到所述映射的設備。
2.根據權利要求1的數(shù)據存儲器件,其中,響應于對第二地址區(qū)域的讀訪問的請求,所述數(shù)據存儲器件提供所述映射的設備的值。
3.根據權利要求2的數(shù)據存儲器件,響應于對第二地址區(qū)域的寫訪問的請求,所述控制器使用所述值調整所述映射的設備的一個或多個參數(shù)。
4.根據權利要求3的數(shù)據存儲器件,其中,所述控制器被配置以將經由對第二地址區(qū)域的寫訪問的請求而接收的數(shù)據存儲在所述非易失性存儲器處,并在初始化處理期間將存儲的數(shù)據提供給所述映射的設備。
5.根據權利要求1的數(shù)據存儲器件,其中,由控制器將來自所述映射的設備的訪問第二地址區(qū)域的請求映射到所述主機。
6.根據權利要求1所述的數(shù)據存儲器件,其中,所述主機接口包括可從主機拆卸的通用串行總線USB接口。
7.根據權利要求1的數(shù)據存儲器件,其中,所述非易失性存儲器陣列包括閃存陣列。
8.根據權利要求1的數(shù)據存儲器件,其中,所述數(shù)據存儲器件可由主機訪問,作為單個端點以及作為大容量類MSC器件。
9.根據權利要求1的數(shù)據存儲器件,其中,第一地址區(qū)域適配為存儲數(shù)據,且其中,由控制器將存儲請求映射到第一地址區(qū)域。
10.根據權利要求1的數(shù)據存儲器件,其中,所述第二地址區(qū)域包括非易失性存儲器陣列的可用存儲器扇區(qū)。
11.根據權利要求1的數(shù)據存儲器件,其中,所述第二地址區(qū)域包括除了非易失性存儲器陣列的可用存儲器扇區(qū)以外的存儲器地址區(qū)域。
12.根據權利要求1的數(shù)據存儲器件,其中,所述第二地址區(qū)域與隱藏存儲區(qū)內的存儲器相關聯(lián)。
13.根據權利要求12的數(shù)據存儲器件,其中,所述隱藏存儲區(qū)包括以下的至少一個U3 隱藏區(qū)、受信快閃隱藏區(qū)、受信快閃安全數(shù)據對象SDO和可由電氣和電子工程師協(xié)會IEEE 1667存儲倉命令尋址的存儲位置。
14.根據權利要求1的數(shù)據存儲器件,其中,所述第二地址區(qū)域由主機直接訪問。
15.根據權利要求1的數(shù)據存儲器件,其中,所述第二地址區(qū)域由主機使用通過主機的操作系統(tǒng)與第二地址區(qū)域相關聯(lián)的至少一個文件來間接訪問。
16.根據權利要求1的數(shù)據存儲器件,其中,所述器件地址空間還包括第三地址區(qū)域, 且其中由控制器將來自主機的訪問第三地址區(qū)域的請求映射到第二映射的設備。
17.根據權利要求16的數(shù)據存儲器件,其中,所述映射的設備是經由設備接口耦接于數(shù)據存儲器件的第一外部設備,且其中第二映射的設備是經由第二設備接口耦接于數(shù)據存儲器件的第二外部設備。
18.根據權利要求1的數(shù)據存儲器件,其中,所述映射的設備與除了大容量存儲類以外的通用串行總線USB類相關聯(lián)。
19.根據權利要求18的數(shù)據存儲器件,其中,所述映射的設備包括以下之一用戶輸入設備、打印機、掃描儀、攝像機、蜂鳴器、發(fā)光二極管LED、警報器、智能卡、溫度傳感器、光傳感器、化學傳感器、模擬到數(shù)字轉換器件、時鐘、計時器、加速計、開關、繼電器和數(shù)字到模擬轉換器件。
20.根據權利要求18的數(shù)據存儲器件,其中,所述映射的設備是總線控制器。
21.一種裝置,包括控制器,其中,所述控制器被配置以耦接于可由與主機存儲器地址空間無關的器件地址空間的第一地址區(qū)域尋址的非易失性存儲器陣列,所述器件地址空間包括第一地址區(qū)域和第二地址區(qū)域;其中,所述控制器被配置以經由主機接口從主機接收訪問第二地址區(qū)域的請求;以及其中,所述控制器被配置以將所述請求映射到非易失性存儲器陣列外部的設備。
22.根據權利要求21的裝置,還包括耦接于所述控制器的非易失性存儲器陣列。
23.一種方法,包括在通用串行總線USB閃存器件處接收來自主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求,其中,所述USB閃存器件包括與存儲器陣列地址空間相關聯(lián)的存儲器陣列,且其中,與外圍設備相關聯(lián)的所述閃存地址區(qū)域在所述存儲器陣列地址空間以外;以及將來自主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求映射到所述外圍設備。
24.根據權利要求23的方法,其中,與外圍設備相關聯(lián)的閃存地址區(qū)域可由主機訪問, 作為單個端點以及作為大容量類MSC器件。
25.根據權利要求23的方法,還包括在USB閃存器件處接收來自外圍設備的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求;以及將來自外圍設備的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求映射到所述主機。
26.根據權利要求23的方法,還包括將與外圍設備相關聯(lián)的一個或多個設置存儲在與外圍設備相關聯(lián)的閃存地址區(qū)域處的USB閃存器件處。
27.根據權利要求沈的方法,還包括將USB閃存器件從主機拆卸;將USB閃存器件附接到第二主機;在USB閃存器件處接收來自第二主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求;以及將來自第二主機的訪問與外圍設備相關聯(lián)的閃存地址區(qū)域的請求映射到所述外圍設
28.—種可拆卸通用串行總線USB閃存器件,包括USB接口,適配為將可拆卸USB閃存器件耦接于主機,所述主機包括可由主機存儲器地址空間尋址的存儲器;設備接口,適配為將可拆卸USB閃存器件耦接于外圍設備,其中,所述設備接口不同于所述主機接口;與器件地址空間的第一地址區(qū)域相關聯(lián)的閃存陣列;以及耦接于閃存陣列的控制器;其中,所述控制器適配為響應于來自主機的訪問器件地址空間的第二地址區(qū)域的請求,將來自主機的請求經由所述設備接口映射到所述外圍設備,其中,所述第二地址區(qū)域不同于所述第一地址區(qū)域,以及其中,所述控制器還適配為響應于來自外圍設備的訪問第二地址區(qū)域的請求,將來自外圍設備的請求經由USB接口映射到所述主機。
29.一種方法,包括在通用串行總線USB兼容的數(shù)據存儲器件處,接收來自主機的訪問目標外圍設備的請求,其中,所述請求符合安全協(xié)議,且包括與目標外圍設備相關聯(lián)的標識符,其中所述數(shù)據存儲器件是大容量存儲器件;以及將來自主機的請求映射到要被發(fā)送到所述目標外圍設備的命令。
30.根據權利要求四的方法,其中,所述標識符是存儲倉類型標識符。
31.根據權利要求四的方法,其中,所述請求符合電氣和電子工程師協(xié)會IEEE標準 1667。
32.根據權利要求四的方法,其中,所述安全協(xié)議是小型計算機系統(tǒng)接口SCSI兼容的。
33.根據權利要求四的方法,還包括將從目標外圍設備接收的數(shù)據傳送給主機。
34.根據權利要求33的方法,其中,使用小型計算機系統(tǒng)接口SCSI安全協(xié)議的出命令來傳送所述數(shù)據。
35.根據權利要求四的方法,其中,來自主機的命令包括小型計算機系統(tǒng)接口SCSI安全協(xié)議的入命令和出命令之一。
36.根據權利要求35的方法,其中,所述標識符指示對應于目標外圍設備的類型的存儲倉類型。
37.根據權利要求36的方法,其中,所述存儲倉類型對應于發(fā)光二極管LED。
38.根據權利要求四的方法,其中,數(shù)據存儲器件是可由主機訪問作為單個端點或作為大容量類MSC器件的閃存器件。
39.一種數(shù)據存儲器件,包括主機接口,其中所述主機接口適配為將數(shù)據存儲器件耦接于主機;非易失性存儲器陣列;以及耦接于所述非易失性存儲器陣列的控制器;其中,所述控制器被配置以將來自主機的命令映射到外部設備,其中,依照安全協(xié)議傳送所述命令,且其中,所述控制器從主機接收與外部設備相關聯(lián)的標識符。
40.根據權利要求39的數(shù)據存儲器件,其中,所述數(shù)據存儲器件是大容量存儲器件,且其中所述外部設備具有人機接口設備HID的類。
全文摘要
公開了用于讀數(shù)據的系統(tǒng)和方法。在一個具體實施例中,數(shù)據存儲器件包括適配為將數(shù)據存儲器件耦接于主機的主機接口。主機包括可由主機存儲器地址空間尋址的存儲器。數(shù)據存儲器件還包括與主機存儲器地址空間無關的器件地址空間。該器件地址空間包括第一地址區(qū)域和第二地址區(qū)域,其中,第二地址區(qū)域不同于第一地址區(qū)域。數(shù)據存儲器件還包括非易失性存儲器陣列和耦接于非易失性存儲器陣列且還耦接于映射的設備的控制器。該控制器適配為響應于來自主機的訪問器件地址空間的第一地址區(qū)域的第一請求,在非易失性存儲器陣列處進行存儲器訪問操作。所述控制器還適配為響應于來自主機的訪問器件地址空間的第二地址區(qū)域的第二請求,將該第二請求映射到映射的設備。
文檔編號G06F12/02GK102301348SQ201080005925
公開日2011年12月28日 申請日期2010年1月8日 優(yōu)先權日2009年2月11日
發(fā)明者D.R.布賴恩特-里奇 申請人:桑迪士克以色列有限公司