亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于閃存存儲器的存儲設(shè)備的多主機功率控制器(MHPC)的制作方法

文檔序號:12288522閱讀:338來源:國知局
基于閃存存儲器的存儲設(shè)備的多主機功率控制器(MHPC)的制作方法與工藝

本申請要求于2014年6月3日提交并且題為“MULTI-HOST POWER CONTROLLER OF A UNIVERSAL FLASH STORAGE(UFS)MEMORY DEVICE(通用閃存存儲(UFS)存儲器設(shè)備的多主機功率控制器)”的美國臨時專利申請序列號62/007,119的優(yōu)先權(quán),其內(nèi)容通過引用被全部納入于此。

本申請還要求于2015年6月2日提交并且題為“A MULTI-HOST POWER CONTROLLER(MHPC)OF A FLASH-MEMORY-BASED STORAGE DEVICE(基于閃存存儲器的存儲設(shè)備的多主機功率控制器(MHPC))”的美國專利申請序列號14/728,296的優(yōu)先權(quán),其內(nèi)容通過引用被全部納入于此。

背景

I.公開領(lǐng)域

本公開的技術(shù)一般涉及移動計算設(shè)備中的基于閃存存儲器的存儲。

II.

背景技術(shù):

閃存存儲器是至其的數(shù)據(jù)可被電子地寫入和擦除的非易失性數(shù)據(jù)存儲介質(zhì)。閃存存儲器當(dāng)前在各式各樣的基于閃存存儲器的存儲設(shè)備中使用,這些基于閃存存儲器的存儲設(shè)備包括存儲器卡、固態(tài)驅(qū)動器、以及通用串行總線(USB)閃存驅(qū)動器?;陂W存存儲器的存儲設(shè)備可以提供與動態(tài)隨機存取存儲器(RAM)相當(dāng)?shù)目焖僮x取和寫入時間,而同時提供高于常規(guī)硬盤的耐用性和沖擊電阻。

為了促成基于閃存存儲器的存儲設(shè)備的廣泛使用,數(shù)種標(biāo)準(zhǔn)已被開發(fā)或者當(dāng)前正在開發(fā)中。一種此類標(biāo)準(zhǔn)是由電子器件工程聯(lián)合委員會(JEDEC)所開發(fā)的用于移動計算設(shè)備(諸如,智能電話和平板計算機)中的基于閃存存儲器的存儲的通用閃存存儲(UFS)。UFS采用小型計算機系統(tǒng)接口(SCSI)架構(gòu)模型以及支持具有命令排隊特征的多個命令、由此實現(xiàn)多線程編程范例的命令協(xié)議。由JEDEC所開發(fā)的另一標(biāo)準(zhǔn)是嵌入式多媒體卡(eMMC)標(biāo)準(zhǔn),其提供了簡化應(yīng)用接口設(shè)計、較小封裝尺寸、以及較低功耗。eMMC的基于閃存存儲器的存儲設(shè)備當(dāng)前是移動設(shè)備中存儲的主要形式之一。

常規(guī)的基于閃存存儲器的存儲設(shè)備的標(biāo)準(zhǔn)(諸如UFS和eMMC)當(dāng)前被設(shè)計成用于供單個輸入/輸出(I/O)客戶端管理和使用。然而,許多現(xiàn)代計算設(shè)備能夠使用虛擬化環(huán)境來同時地支持多個I/O客戶端(例如,主機或其他處理器子系統(tǒng))。在此類虛擬化環(huán)境中,多個I/O客戶端可能各自需要與單個基于閃存存儲器的存儲設(shè)備交互,好像它是該基于閃存存儲器的存儲設(shè)備的唯一主機。類似地,基于閃存存儲器的存儲設(shè)備可能需要在它實際上正與多個I/O客戶端進(jìn)行通信時如同它正與唯一的單個I/O客戶端進(jìn)行通信那樣來操作。

具體而言,在基于閃存存儲器的存儲標(biāo)準(zhǔn)被擴(kuò)展到多主機環(huán)境時,基于閃存存儲器的存儲設(shè)備必須能夠維持有效的功率控制同時支持多個I/O客戶端。在與單個主機交互的常規(guī)的基于閃存存儲器的存儲設(shè)備中,功率控制因單個主機單獨地控制基于閃存存儲器的存儲設(shè)備的功率狀態(tài)而是相對簡單的。然而,為了在多主機環(huán)境中實現(xiàn)有效的功率控制,基于閃存存儲器的存儲設(shè)備可能需要響應(yīng)于接收到來自多個主機(而不是單個主機)的請求而在各功率模式之間轉(zhuǎn)變。

公開概述

詳細(xì)描述中所公開的諸方面包括基于閃存存儲器的存儲設(shè)備的多主機功率控制器(MHPC)。還公開了相關(guān)方法和系統(tǒng)。在一個方面,提供了用于控制基于閃存存儲器的存儲設(shè)備(作為非限定性示例,諸如通用閃存存儲(UFS)設(shè)備或嵌入式多媒體卡(eMMC)設(shè)備)的功率模式的多主機功率控制器(MHPC)。MHPC從多個輸入/輸出(I/O)客戶端中的每一者接收功率模式改變請求(作為非限定性示例,諸如小型計算機系統(tǒng)接口(SCSI)啟動停止單元(SSU)命令或eMMC休眠(CMD5)命令)。MHPC從功率模式改變請求提取并存儲“票決”或所請求的功率模式,并且隨后將票決邏輯應(yīng)用于所存儲的票決以確定是否將基于閃存存儲器的存儲設(shè)備在功率模式之間轉(zhuǎn)變。如果基于閃存存儲器的存儲設(shè)備當(dāng)前不以由MHPC確定的功率模式操作,則該MHPC被配置成向基于閃存存儲器的存儲設(shè)備發(fā)出功率模式改變命令以轉(zhuǎn)變至所確定的功率模式。在一些方面,多主機控制器被配置成跟蹤由此類功率模式引起的來自基于閃存存儲器的存儲設(shè)備的響應(yīng),并向相應(yīng)的I/O客戶端發(fā)送響應(yīng)。進(jìn)一步,一些方面可提供多主機控制器被配置成生成響應(yīng)并向其功率模式改變請求不會導(dǎo)致基于閃存存儲器的存儲設(shè)備的功率模式轉(zhuǎn)變的每個I/O客戶端發(fā)送該響應(yīng)。以此方式,多主機控制器能夠在從多個I/O客戶端接收直接功率模式改變請求時控制基于閃存存儲器的存儲設(shè)備的功率。

在另一方面,提供了一種多主機控制器的MHPC。該MHPC被通信地耦合到多個I/O客戶端和基于閃存存儲器的存儲設(shè)備。該MHPC包括配置成指示用于多個I/O客戶端中的每個I/O客戶端的最后所請求功率模式的MHPC請求狀態(tài)寄存器。該MHPC被配置成經(jīng)由多主機控制器的傳輸請求(TR)過濾電路從多個I/O客戶端中的I/O客戶端接收功率模式改變請求。該MHPC被進(jìn)一步配置成從功率模式改變請求提取功率模式票決,該功率模式票決指示I/O客戶端所請求的功率模式。該MHPC還被配置成將功率模式票決存儲在MHPC的MHPC請求狀態(tài)寄存器中。該MHPC被附加地配置成將票決邏輯應(yīng)用于MHPC請求狀態(tài)寄存器以確定基于閃存存儲器的存儲設(shè)備的功率模式是否應(yīng)當(dāng)被改變。該MHPC被進(jìn)一步配置成響應(yīng)于確定功率模式應(yīng)當(dāng)被改變而向基于閃存存儲器的存儲設(shè)備發(fā)出來自該MHPC的功率模式改變命令以改變功率模式。

在另一方面,提供了一種用于控制用于多個主機的基于閃存存儲器的存儲設(shè)備的功率模式的方法。該方法包括由MHPC經(jīng)由多主機控制器的TR過濾電路從多個I/O客戶端中的I/O客戶端接收功率模式改變請求。該方法進(jìn)一步包括由MHPC從功率模式改變請求提取功率模式票決,該功率模式票決指示I/O客戶端所請求的功率模式。該方法還包括由MHPC將功率模式票決存儲在MHPC的MHPC請求狀態(tài)寄存器中,該MHPC請求狀態(tài)寄存器指示用于多個I/O客戶端中的每個I/O客戶端的最后所請求的功率模式。該方法附加地包括由MHPC將票決邏輯應(yīng)用于MHPC請求狀態(tài)寄存器以確定基于閃存存儲器的存儲設(shè)備的功率模式是否應(yīng)當(dāng)被改變。該方法進(jìn)一步包括響應(yīng)于確定功率模式應(yīng)當(dāng)被改變而向基于閃存存儲器的存儲設(shè)備發(fā)出來自MHPC的功率模式改變命令以改變功率模式。

在另一方面,提供了一種多主機控制器的MHPC。該MHPC包括用于從多個I/O客戶端中的I/O客戶端接收功率模式改變請求的裝置。該MHPC進(jìn)一步包括用于從功率模式改變請求提取功率模式票決的裝置,該功率模式票決指示I/O客戶端所請求的功率模式。該MHPC還包括用于將功率模式票決存儲在MHPC的MHPC請求狀態(tài)寄存器中的裝置,MHPC請求狀態(tài)寄存器指示用于多個I/O客戶端中的每個I/O客戶端的最后所請求的功率模式。該MHPC附加地包括用于將票決邏輯應(yīng)用于MHPC請求狀態(tài)寄存器以確定基于閃存存儲器的存儲設(shè)備的功率模式是否應(yīng)當(dāng)被改變的裝置。該MHPC進(jìn)一步包括用于響應(yīng)于確定功率模式應(yīng)當(dāng)被改變而向基于閃存存儲器的存儲設(shè)備發(fā)出來自MHPC的功率模式改變命令以改變功率模式的裝置。

附圖簡述

圖1是基于閃存存儲器的示例性存儲設(shè)備以及采用多個主機和多主機控制器的示例性片上系統(tǒng)(SoC)的框圖;

圖2是采用多主機功率控制器(MHPC)的示例性多主機控制器的框圖;

圖3是解說圖2的MHPC的示例性組成元件的框圖;

圖4A-4E是解說用于接收功率模式改變請求、應(yīng)用票決邏輯以控制基于閃存存儲器的存儲設(shè)備的功率模式、以及生成對請求方輸入/輸出(I/O)客戶端的響應(yīng)的圖2和3的MHPC的操作的框圖;

圖5A和5B是解說用于控制基于閃存存儲器的存儲設(shè)備的功率模式的圖2和3的MHPC的示例性操作的流程圖;以及

圖6是可包括采用多主機控制器內(nèi)的圖2和3的MHPC的SoC的示例性計算設(shè)備的框圖。

詳細(xì)描述

現(xiàn)在參照附圖,描述了本公開的若干示例性方面。措辭“示例性”在本文中用于表示“用作示例、實例或解說”。本文中描述為“示例性”的任何實施例不必被解釋為優(yōu)于或勝過其他方面。

詳細(xì)描述中所公開的諸方面包括基于閃存存儲器的存儲設(shè)備的多主機功率控制器(MHPC)。還公開了相關(guān)方法和系統(tǒng)。在一個方面,提供了用于控制基于閃存存儲器的存儲設(shè)備(作為非限定性示例,諸如通用閃存存儲(UFS)設(shè)備或嵌入式多媒體卡(eMMC)設(shè)備)的功率模式的多主機功率控制器(MHPC)。MHPC從多個輸入/輸出((I/O)客戶端中的每一者接收功率模式改變請求(作為非限定性示例,諸如小型計算機系統(tǒng)接口(SCSI)啟動停止單元(SSU)命令或eMMC休眠(CMD5)命令)。MHPC從功率模式改變請求提取并存儲“票決”或所請求的功率模式,并且隨后將票決邏輯應(yīng)用于所存儲的票決以確定是否使基于閃存存儲器的存儲設(shè)備在各功率模式之間轉(zhuǎn)變。如果基于閃存存儲器的存儲設(shè)備當(dāng)前不以由MHPC確定的功率模式操作,則該MHPC被配置成向基于閃存存儲器的存儲設(shè)備發(fā)出功率模式改變命令以轉(zhuǎn)變至所確定的功率模式。在一些方面,多主機控制器被配置成跟蹤由此類功率模式引起的來自基于閃存存儲器的存儲設(shè)備的響應(yīng),并向相應(yīng)的I/O客戶端發(fā)送響應(yīng)。進(jìn)一步,一些方面可提供多主機控制器被配置成生成響應(yīng)并向其功率模式改變請求不會導(dǎo)致基于閃存存儲器的存儲設(shè)備的功率模式轉(zhuǎn)變的每個I/O客戶端發(fā)送該響應(yīng)。以此方式,多主機控制器能夠控制基于閃存存儲器的存儲設(shè)備的功率同時從多個I/O客戶端接收直接功率模式改變請求。

就此而言,圖1是包括多主機控制器102的示例性片上系統(tǒng)(SoC)100的框圖。在圖1的示例中,提供多主機控制器102以使得多個I/O客戶端104(0)-104(N)訪問單個基于閃存存儲器的存儲設(shè)備106。在一些方面,作為非限定性示例,基于閃存存儲器的存儲設(shè)備106可包括通用閃存存儲(UFS)設(shè)備或嵌入式多媒體卡(eMMC)設(shè)備。值得注意的是,雖然在該方面,基于閃存存儲器的存儲設(shè)備106毗鄰于SoC 100嵌入在移動設(shè)備內(nèi),但是其他方面可在將基于閃存存儲器的存儲設(shè)備106采用為可移動存儲器設(shè)備時達(dá)成類似功能性。

SoC 100還包括虛擬機管理器(VMM)108,其提供了用于I/O客戶端104(0)-104(N)的虛擬化功能性以及管理。VMM 108可以是由SoC 100的處理器(未示出)執(zhí)行并且按需或按期望駐留在SoC 100的系統(tǒng)存儲器或其他存儲器位置中的軟件模塊。I/O客戶端104(0)-104(N)中的每一者可包括主機軟件實體(諸如圖1的I/O客戶端104(0)和I/O客戶端104(1)),其在SoC 100的處理器上和/或SoC 100的處理器子系統(tǒng)(未示出)上執(zhí)行。多主機控制器102可以充當(dāng)I/O客戶端104(0)-104(N)與基于閃存存儲器的存儲設(shè)備106之間的中間物。以此方式,多主機控制器102可以控制I/O客戶端104(0)-104(N)與基于閃存存儲器的存儲設(shè)備106之間的交互,以使得I/O客戶端104(0)-104(N)各自與基于閃存存儲器的存儲設(shè)備106交互,如同它是與基于閃存存儲器的存儲設(shè)備106進(jìn)行通信的唯一I/O客戶端104(0)-104(N)那樣。類似地,多主機控制器102可被配置成在它實際上正與多個I/O客戶端104(0)-104(N)進(jìn)行通信時使得基于閃存存儲器的存儲設(shè)備106如同它正與唯一的單個I/O客戶端104(0)-104(N)進(jìn)行通信那樣來操作。

為了更好地解說根據(jù)一些方面的圖1的多主機控制器102的示例性組成元件,提供了圖2。將理解,根據(jù)使用中的基于閃存存儲器的存儲設(shè)備的標(biāo)準(zhǔn)(作為非限定性示例,例如UFS或eMMC)的需求,多主機控制器102可包括比圖2中所解說更多或更少的元件。如圖2中所見,多主機控制102包括基寄存器接口(BRI)200,圖1的VMM 108可通過BRI 200與多主機控制器102通信。多主機控制器102還包括客戶端寄存器接口(CRI)202(0)-202(N)。CRI 202(0)-202(N)中的每一者表示供圖1的I/O客戶端104(0)-104(N)中的對應(yīng)一些客戶端將傳輸請求(TR)(未示出)傳送給多主機控制器102的接口。根據(jù)本文所公開的一些方面,TR可包括功率模式改變請求(諸如SCSI SSU命令或eMMC休眠(CMD5)命令)、和/或其他請求。CRI 202(0)-202(N)還可用來傳送其他非TR請求(諸如查詢或不操作(NOP)指令)。

如圖2中所見,CRI 202(0)-202(N)通信地耦合到多主機控制器102的TR獲取電路(TR FETCH CIRC)204,如分別由箭頭206、208和210所指示的。在一些方面,TR獲取電路204可以負(fù)責(zé)從系統(tǒng)存儲器獲取傳輸協(xié)議描述符(諸如UFS傳輸協(xié)議(UTP)的傳輸請求描述符(UTRD)(未示出)或eMMC任務(wù)描述符(TD)),并且將該傳輸協(xié)議描述符解碼以確定命令描述符(諸如UTP命令描述符(UCD)(未示出))的位置。TR獲取電路204可隨后從系統(tǒng)存儲器212獲取命令描述符的TR片段(未示出),如由箭頭214所指示的。

在常規(guī)主機控制器中,TR獲取電路204隨后將從TR提取參數(shù)(例如,在基于UFS標(biāo)準(zhǔn)的諸方面為事務(wù)代碼(TC)和SCSI操作代碼(OPC)、或者在基于eMMC標(biāo)準(zhǔn)的諸方面為命令索引和命令自變量)。TR獲取電路204隨后將整個TR轉(zhuǎn)發(fā)至傳輸協(xié)議引擎216(例如,UTP引擎或eMMC傳輸協(xié)議引擎)以供處理。然而,在多客戶端環(huán)境中,可能要求TR的附加檢查和處理。例如,可能期望向不同類型的TR提供定制處置,或者捕集或終止TR。相應(yīng)地,多主機控制器102被配置成提供命令捕集功能性。多主機控制器102由此包括用于TR檢查和處理的TR過濾電路218、用于命令捕集的TR陷阱220、以及用于促成至I/O客戶端104(0)-104(N)的響應(yīng)傳輸?shù)捻憫?yīng)生成電路222。TR過濾電路218、TR陷阱220、以及響應(yīng)生成電路222的操作在以下更詳細(xì)地討論。

繼續(xù)參照圖2,對由TR獲取電路204獲取的每一個TR的檢查和處理是由多主機控制器102的TR過濾電路218來執(zhí)行的。TR過濾電路218確定如何基于TR的內(nèi)容來處理TR。

如果TR的內(nèi)容指示TR對應(yīng)于讀取或?qū)懭朊睿瑒tTR可由TR過濾電路218轉(zhuǎn)發(fā)至訪問控制電路224,如由箭頭226所指示的。訪問控制電路224向邏輯單元(未示出)提供讀/寫訪問規(guī)則的硬件實施。如果TR被訪問控制電路224驗證,則TR被傳遞到傳輸協(xié)議引擎216上,如由箭頭228所指示的。被訪問控制電路224拒絕的TR被捕集以供軟件處理,如由箭頭230所指示的。

如果TR的內(nèi)容指示TR對應(yīng)于功率模式改變請求,則TR被TR過濾電路218發(fā)送至MHPC 232,如由箭頭234所指示的。如上所述,在一些方面,作為非限定性示例,功率模式改變請求可包括SCSI SSU命令或eMMC休眠(CMD5)命令。在其中基于閃存存儲器的存儲設(shè)備106是UFS存儲設(shè)備的一些方面,功率模式改變請求可包括功率狀況(PC)字段,其具有表示活躍功率模式的值一(1)、表示休眠功率模式的值二(2)以及表示下電功率模式的值三(3)。根據(jù)其中基于閃存存儲器的存儲設(shè)備106是eMMC存儲設(shè)備的一些方面,功率模式改變請求可包括休眠和活躍功率模式中的一者的一比特指示。

圖2的MHPC 232是實現(xiàn)I/O客戶端104(0)-104(N)之間的票決機制以控制基于閃存存儲器的存儲設(shè)備106的功率模式的硬件狀態(tài)機,并在下文更詳細(xì)地解釋。如果TR被MHPC 232成功處理,則TR可被傳遞到傳輸協(xié)議引擎216,如由箭頭236所指示的。傳輸協(xié)議引擎216隨后經(jīng)由互連238和總線240與基于閃存存儲器的存儲設(shè)備106傳達(dá)功率模式改變命令和響應(yīng)。否則,MHPC 232可靜默地丟棄TR,或者可捕集TR以供軟件處理,如由箭頭242所指示的。MHPC 232還可在被基于閃存存儲器的存儲設(shè)備106通知所請求的功率模式改變不成功之際生成錯誤中斷244。如果TR包括其他命令,則TR可被TR過濾電路218截取和捕集,如由箭頭246所指示的。

如圖2中所見,由多主機控制器102提供TR陷阱220以存儲所捕集的TR。在TR陷阱220內(nèi)的是命令(CMD)鏡248(0)-248(N),其各自與CRI 202(0)-202(N)之一相關(guān)聯(lián)。所捕集的TR被存儲在從其接收到TR的CRI 202(0)-202(N)的CMD鏡248(0)-248(N)中。中斷(由箭頭250和252表示)被生成以經(jīng)由BRI 200給VMM 108以指示TR被捕集。VMM 108可隨后通過讀取恰適的CMD鏡248(0)-248(N)的內(nèi)容來進(jìn)一步處理TR以提取信息,并且生成對始發(fā)CRI 202(0)-202(N)的響應(yīng)。

一旦TR被捕集,TR獲取電路204就完成了其處理,并且可繼續(xù)獲取另一CRI 202(0)-202(N)的下一個TR。直到所捕集的TR由VMM 108處理,才從TR獲取仲裁中移除與所捕集的TR相關(guān)聯(lián)的CRI 202(0)-202(N)。只有在VMM 108通過對多主機控制器102重新排序以轉(zhuǎn)發(fā)或丟棄TR來處理TR時,來自相同CRI 202(0)-202(N)的后續(xù)TR才可由TR獲取電路204所獲取。

圖3解說了圖2的MHPC 232的示例性組成元件,其用于針對多個I/O客戶端104(0)-104(N)控制圖1和2的基于閃存存儲器的存儲設(shè)備106的功率模式改變。值得注意的是,在本文所公開的示例性方面,MHPC 232包括用于將票決規(guī)則應(yīng)用于所請求的功率模式改變的票決邏輯300,其在以下關(guān)于圖4A-4E來更詳細(xì)地討論。

具體而言,MHPC 232的一些方面可包括指示在多主機控制器102中是否支持MHPC 232的MHPC能力字段302。一旦初始化多主機控制器102,虛擬化管理軟件(諸如舉例而言VMM 108)可讀取MHPC能力字段302。如果MHPC能力字段302存儲邏輯“0”值,則不支持MHPC 232,給虛擬化管理軟件留下兩個選項。第一,虛擬化管理軟件可將TR過濾電路218配置成將所有的功率模式改變請求從I/O客戶端104(0)-104(N)中的每一者傳遞給基于閃存存儲器的存儲設(shè)備106,并且執(zhí)行被設(shè)計成使得僅一個I/O客戶端104(0)-104(N)可傳送此類功率模式改變請求的軟件。替換地,虛擬化管理軟件可將TR過濾電路218配置成捕集所有的功率模式改變請求,并且在虛擬化管理軟件中實現(xiàn)軟件票決算法。然而,如果MHPC能力字段302存儲邏輯“1”值,則虛擬化管理軟件可在I/O客戶端104(0)-104(N)中的每一個I/O客戶端的引導(dǎo)過程期間或在虛擬機創(chuàng)建期間為該I/O客戶端啟用MHPC 232。具體而言,當(dāng)虛擬機被創(chuàng)建或客戶端子系統(tǒng)引導(dǎo)時,虛擬機或子系統(tǒng)被指派客戶端標(biāo)識符(ID)并被分配CRI(諸如圖2的多主機控制器102的CRI 202(0)-202(N)中的一個)。

在一些方面,MHPC 232還可包括被虛擬化管理軟件(作為非限定性示例,諸如VMM 108)使用的MHPC控制寄存器304以指示I/O客戶端104(0)-104(N)中的哪些被準(zhǔn)許票決對基于閃存存儲器的存儲設(shè)備106的功率模式控制,如以下所描述的。例如,被準(zhǔn)許票決功率控制的I/O客戶端104(0)-104(N)中的一者的功率模式改變請求(未示出)由MHPC 232硬件解碼和處理。然而,I/O客戶端104(0)-104(N)中不被準(zhǔn)許票決功率控制的一個I/O客戶端的功率模式改變請求被“捕集”,如以上關(guān)于圖2所描述的。進(jìn)一步,根據(jù)一些方面,MHPC 232可包括MHPC狀態(tài)寄存器306,其向虛擬化管理軟件告知MHPC 232硬件的各種狀態(tài)度量(作為非限定性示例,例如當(dāng)前功率狀況和/或所接收到的最后請求)。MHPC 232還包括MHPC請求狀態(tài)寄存器308,其向虛擬化管理軟件告知由I/O客戶端104(0)-104(N)中的每一者請求的功率狀況/模式。

如上所述,在處理由I/O客戶端104(0)-104(N)發(fā)出的功率模式改變請求時,MHPC 232應(yīng)用由票決邏輯300實施的規(guī)則?,F(xiàn)在更詳細(xì)地描述票決邏輯300。具體而言,票決邏輯300實現(xiàn)其中基于閃存存儲器的存儲設(shè)備106按照由所有參與方I/O客戶端104(0)-104(N)準(zhǔn)許的最低功率模式或者替換地由參與方I/O客戶端104(0)-104(N)中的任一者所請求的最高功率模式操作的策略。如本文所使用的,“參與方”I/O客戶端104(0)-104(N)被定義為被準(zhǔn)許票決且其功率模式票決分別被存儲在MHPC請求狀態(tài)寄存器308中的I/O客戶端104(0)-104(N)。如以上所指示的,在票決過程期間(例如,在一些方面,通過捕集命令)由不被準(zhǔn)許參與票決的I/O客戶端104(0)-104(N)發(fā)出的功率模式改變請求被忽略。以此方式,如果存在至少一個其所請求的功率模式是活躍的參與方I/O客戶端104(0)-104(N),則基于閃存存儲器的存儲設(shè)備106以活躍功率模式操作。否則,如果存在至少一個其所請求的功率模式是休眠的參與方I/O客戶端104(0)-104(N),則基于閃存存儲器的存儲設(shè)備106以休眠功率模式操作。根據(jù)基于諸如UFS之類的標(biāo)準(zhǔn)的諸方面,其中除活躍功率模式和休眠功率模式以外的功率模式可以是可用的,基于閃存存儲器的存儲設(shè)備106可在不存在請求活躍或休眠功率模式的參與方I/O客戶端104(0)-104(N)的情況下或者在不存在任何參與方I/O客戶端104(0)-104(N)的情況下以下電功率模式操作。在基于諸如eMMC之類的標(biāo)準(zhǔn)的諸方面,其中僅活躍功率模式和休眠功率模式是可用的,基于閃存存儲器的存儲設(shè)備106可在被至少一個參與方I/O客戶端104(0)-104(N)請求的情況下以活躍功率模式操作,并且否則可保持在休眠功率模式中。

就此而言,采用上述功率模式控制過程的MHPC 232的示例在圖4A-4E中提供。為清楚起見,在描述圖4A-4B中引述圖1-3的諸元件。在圖4A中所解說的初始狀態(tài)中,I/O客戶端104(0)-104(2)是分別存儲在MHPC 232的MHPC控制寄存器304中的當(dāng)前參與方I/O客戶端104(0)-104(2),如由比特值406、408和410所指示的。MHPC 232的MHPC請求狀態(tài)寄存器308存儲最新近從相應(yīng)的I/O客戶端104(0)-104(2)的功率模式改變請求(未示出)提取的功率模式票決400、402和404。在圖4A-4E的示例中,基于閃存存儲器的存儲設(shè)備106是UFS存儲設(shè)備,對其的功率模式票決400、402和404的值一(1)表示活躍功率模式,值二(2)表示休眠功率模式,并且值三(3)表示下電功率模式。相應(yīng)地,功率模式票決400、402和404指示I/O客戶端104(0)是活躍的,I/O客戶端104(1)具有所請求的下電功率模式,并且I/O客戶端104(2)是活躍的。

在圖4B中,I/O客戶端104(0)發(fā)出請求基于閃存存儲器的存儲設(shè)備106轉(zhuǎn)變至休眠模式的功率模式改變命令412。在確認(rèn)I/O客戶端104(0)仍是參與方I/O客戶端104(0)之后,MHPC 232提取具有對應(yīng)于休眠模式的值二(2)的功率模式票決414。功率模式票決414作為功率模式票決400存儲在MHPC請求狀態(tài)寄存器308中。如以上所描述的,MHPC 232隨后將票決邏輯300應(yīng)用于MHPC請求狀態(tài)寄存器308以確定基于閃存存儲器的存儲設(shè)備106的功率模式是否應(yīng)當(dāng)被改變。在圖4B的示例中,沒有功率模式轉(zhuǎn)變被發(fā)起,因為I/O客戶端104(2)仍是活躍的。由此,具有指示成功的功率模式改變的“良好”狀態(tài)的響應(yīng)消息416被傳送至I/O客戶端104(0)。

現(xiàn)在轉(zhuǎn)向圖4C,I/O客戶端104(2)然后發(fā)出請求基于閃存存儲器的存儲設(shè)備106轉(zhuǎn)變至下電功率模式的功率模式改變請求418。MHPC 232基于比特值410確定I/O客戶端104(2)是參與方I/O客戶端104(2),并且隨后提取具有對應(yīng)于下電功率模式的值三(3)的功率模式票決420。MHPC 232將功率模式票決420作為功率模式票決404存儲在MHPC請求狀態(tài)寄存器308中,并且將票決邏輯300應(yīng)用于MHPC請求狀態(tài)寄存器308以確定基于閃存存儲器的存儲設(shè)備106的功率模式是否應(yīng)當(dāng)被改變。如圖4C中所見,因為I/O客戶端104(0)先前請求了休眠功率模式(例如,比由I/O客戶端104(2)所請求的下電功率模式更高的功率模式),如由功率模式票決400所指示的,MHPC 232確定基于閃存存儲器的存儲設(shè)備106的功率模式應(yīng)當(dāng)被改變。相應(yīng)地,功率模式改變命令422被發(fā)送給基于閃存存儲器的存儲設(shè)備106以請求功率模式轉(zhuǎn)變至休眠功率模式。具有指示成功的功率模式改變的“良好”狀態(tài)的響應(yīng)消息424從基于閃存存儲器的存儲設(shè)備106接收,并且作為指示成功的功率模式改變的響應(yīng)消息426被傳送至I/O客戶端104(2)。

在圖4D中,對應(yīng)于I/O客戶端104(0)的比特值406已被關(guān)閉,由此使得I/O客戶端104(0)為非參與方I/O客戶端104(0)。MHPC 232由此基于對應(yīng)于參與方I/O客戶端104(1)、104(2)的MHPC請求狀態(tài)寄存器308中的功率模式票決402、404應(yīng)用票決邏輯300。因為參與方I/O客戶端104(1)、104(2)兩者均請求了下電功率模式,所以MHPC 232確定基于閃存存儲器的存儲設(shè)備106應(yīng)當(dāng)轉(zhuǎn)變至下電功率模式。由此,MHPC 232向基于閃存存儲器的存儲設(shè)備106發(fā)送功率模式改變命令428以請求轉(zhuǎn)變至下電功率模式,并且作為響應(yīng),接收具有指示成功的功率模式改變的“良好”狀態(tài)的響應(yīng)消息430。

現(xiàn)在轉(zhuǎn)向圖4E,I/O客戶端104(1)發(fā)送請求基于閃存存儲器的存儲設(shè)備106轉(zhuǎn)變至活躍功率模式的功率模式改變請求432。在確認(rèn)I/O客戶端104(1)仍是參與方I/O客戶端104(1)之后,MHPC 232提取具有對應(yīng)于活躍模式的值一(1)的功率模式票決434。功率模式票決434作為功率模式票決402被存儲在MHPC請求狀態(tài)寄存器308中。如以上所描述的,MHPC 232隨后將票決邏輯300應(yīng)用于MHPC請求狀態(tài)寄存器308以確定基于閃存存儲器的存儲設(shè)備106的功率模式是否應(yīng)當(dāng)被改變。在此示例中,活躍功率模式是最高的所請求功率模式,并且由此功率模式改變命令436被發(fā)送至基于閃存存儲器的存儲設(shè)備106以請求轉(zhuǎn)變至活躍功率模式。具有指示成功的功率模式改變的“良好”狀態(tài)的響應(yīng)消息438從基于閃存存儲器的存儲設(shè)備106接收,并且作為指示成功的功率模式改變的響應(yīng)消息440被傳送至I/O客戶端104(1)。

為了解說用于控制圖1的基于閃存存儲器的存儲設(shè)備106的功率模式的圖2和3的MHPC 232的示例性操作,提供了圖5A和5B。在描述圖5A和5B中,為清楚起見而引述圖1-3和圖4A-4E的諸元件。在圖5A中,操作開始于MHPC 232經(jīng)由多主機控制器102的TR過濾電路218從多個I/O客戶端104(0)-104(2)中的I/O客戶端(諸如I/O客戶端104(2))接收功率模式改變請求418(框500)。在一些方面,作為非限定性示例,功率模式改變請求418可包括SCSI SSU命令或eMMC休眠(CMD5)命令。MHPC 232由此在本文中可被稱為“用于接收功率模式改變請求的裝置”。

根據(jù)一些方面,MHPC 232然后可基于MHPC控制寄存器304的內(nèi)容來確定I/O客戶端104(2)是否被準(zhǔn)許票決(框502)。如果MHPC控制寄存器304指示I/O客戶端104(2)不是參與方I/O客戶端104(2),則功率模式改變請求418可被捕集并相應(yīng)地處理(框504)。然而,如果MHPC 232在判定框502處確定I/O客戶端104(2)被準(zhǔn)許票決,則MHPC 232從功率模式改變請求418提取功率模式票決420,功率模式票決420指示由I/O客戶端104(2)所請求的功率模式(框506)。相應(yīng)地,MHPC 232在本文中可被稱為“用于提取功率模式票決的裝置”。在其中基于閃存存儲器的存儲設(shè)備106是UFS存儲設(shè)備的一些方面,功率模式票決420可表示SCSI SSU PC字段的內(nèi)容,其具有表示活躍功率模式的值一(1)、表示休眠功率模式的值二(2)以及表示下電功率模式的值三(3)。根據(jù)其中基于閃存存儲器的存儲設(shè)備106是eMMC存儲設(shè)備的一些方面,功率模式票決420可包括休眠和活躍功率模式中的一者的一比特指示。功率模式票決420隨后被MHPC 232存儲在MHPC 232的MHPC請求狀態(tài)寄存器308中,MHPC請求狀態(tài)寄存器308指示多個I/O客戶端104(0)-104(2)中的每個I/O客戶端104(2)的最后所請求的功率模式(框508)。

MHPC 232隨后將票決邏輯300(作為非限定性示例,諸如所請求最高功率電平規(guī)則)應(yīng)用于MHPC請求狀態(tài)寄存器308以確定基于閃存存儲器的存儲設(shè)備106的功率模式是否應(yīng)當(dāng)被改變(框510)。在一些方面,票決邏輯300實現(xiàn)其中基于閃存存儲器的存儲設(shè)備106按照被所有參與方I/O客戶端104(0)-104(N)準(zhǔn)許的最低功率模式或者替換地被參與方I/O客戶端104(0)-104(N)中的任一者所請求的最高功率模式操作的策略。就此而言,MHPC 232在本文中可被稱為“用于將票決邏輯應(yīng)用于MHPC請求狀態(tài)寄存器的裝置”。

現(xiàn)在轉(zhuǎn)到圖5B,MHPC 232基于應(yīng)用票決邏輯300確定功率模式是否應(yīng)當(dāng)被改變(框512)。如果MHPC 232在判定框512處確定基于閃存存儲器的存儲設(shè)備106的當(dāng)前功率模式應(yīng)當(dāng)被維持,則MHPC 232向I/O客戶端104(2)傳送指示成功的功率模式改變的響應(yīng)消息426而實際上不改變功率模式(框514)。然而,如果在判定框512處確定基于閃存存儲器的存儲設(shè)備106的當(dāng)前功率模式應(yīng)當(dāng)被改變,則MHPC 232向基于閃存存儲器的存儲設(shè)備106發(fā)出功率模式改變命令422以改變功率模式(框516)。由此,MHPC 232在本文中可被稱為“用于發(fā)出功率模式改變命令的裝置”。

在一些方面,MHPC 232可隨后從基于閃存存儲器的存儲設(shè)備106接收響應(yīng)消息424(框518)。相應(yīng)地,MHPC 232在本文中可被稱為“用于從基于閃存存儲器的存儲設(shè)備接收響應(yīng)消息的裝置”。響應(yīng)消息424可被MHPC 232評估以確定響應(yīng)消息424是否指示基于閃存的存儲設(shè)備106作出的成功的功率模式改變(框520)。如果在判定框520處確定成功的功率模式改變被響應(yīng)消息424指示,則MHPC 232向I/O客戶端104(2)傳送指示成功的功率模式改變的響應(yīng)消息426(框514)。就此而言,MHPC 232在本文中可被稱為“用于向I/O客戶端傳送來自MHPC的指示成功的功率模式改變的響應(yīng)消息的裝置”。如果功率模式改變不成功,則MHPC 232可生成給I/O客戶端104(2)的錯誤中斷250。MHPC 232由此在本文中可被稱為“用于生成給I/O客戶端的錯誤中斷的裝置”。

根據(jù)本文所公開的諸方面的基于閃存存儲器的存儲設(shè)備的多主機功率控制器的可提供在或集成到任何基于處理器的設(shè)備中。不作為限定的示例包括機頂盒、娛樂單元、導(dǎo)航設(shè)備、通信設(shè)備、固定位置數(shù)據(jù)單元、移動位置數(shù)據(jù)單元、移動電話、蜂窩電話、計算機、便攜式計算機、臺式計算機、個人數(shù)字助理(PDA)、監(jiān)視器、計算機監(jiān)視器、電視機、調(diào)諧器、無線電、衛(wèi)星無線電、音樂播放器、數(shù)字音樂播放器、便攜式音樂播放器、數(shù)字視頻播放器、視頻播放器、數(shù)字視頻碟(DVD)播放器、以及便攜式數(shù)字視頻播放器。

就此而言,圖6解說了可采用具有圖3中所解說的MHPC 232的圖2的SoC 100的基于處理器的系統(tǒng)600的示例。在此示例中,基于處理器的系統(tǒng)600包括一個或多個中央處理單元(CPU)602,其各自包括一個或多個處理器604。(諸)CPU 602可具有耦合到(諸)處理器604以用于對臨時存儲的數(shù)據(jù)快速訪問的高速緩存存儲器606。(諸)CPU 602被耦合到系統(tǒng)總線608,且可將基于處理器的系統(tǒng)600中所包括的設(shè)備互耦。如眾所周知的,(諸)CPU 602通過在系統(tǒng)總線608上交換地址、控制、以及數(shù)據(jù)信息來與這些其他設(shè)備通信。例如,(諸)CPU 602可向作為從設(shè)備的示例的存儲器控制器610傳達(dá)總線事務(wù)請求。盡管在圖6中未解說,但可以提供多個系統(tǒng)總線608。

其它設(shè)備可被連接至系統(tǒng)總線608。如圖6中所解說的,作為示例,這些設(shè)備可包括存儲器系統(tǒng)612、一個或多個輸入設(shè)備614、一個或多個輸出設(shè)備616、一個或多個網(wǎng)絡(luò)接口設(shè)備618、以及一個或多個顯示器控制器620。(諸)輸入設(shè)備614可包括任何類型的輸入設(shè)備,包括但不限于輸入鍵、開關(guān)、語音處理器等。(諸)輸出設(shè)備616可包括任何類型的輸出設(shè)備,包括但不限于音頻、視頻、其他視覺指示器等。(諸)網(wǎng)絡(luò)接口設(shè)備618可以是被配置成允許往來于網(wǎng)絡(luò)622的數(shù)據(jù)交換的任何設(shè)備。網(wǎng)絡(luò)622可以是任何類型的網(wǎng)絡(luò),包括但不限于:有線或無線網(wǎng)絡(luò)、私有或公共網(wǎng)絡(luò)、局域網(wǎng)(LAN)、廣域網(wǎng)、無線局域網(wǎng)、藍(lán)牙(BT)、以及因特網(wǎng)。(諸)網(wǎng)絡(luò)接口設(shè)備618可被配置成支持所期望的任何類型的通信協(xié)議。存儲器系統(tǒng)612可包括一個或多個存儲器單元624(0)-624(N)。

(諸)CPU 602還可被配置成通過系統(tǒng)總線608來訪問(諸)顯示器控制器620以控制發(fā)送給一個或多個顯示器626的信息。(諸)顯示器控制器620經(jīng)由一個或多個視頻處理器628向(諸)顯示器626發(fā)送要顯示的信息,視頻處理器628將要顯示的信息處理成適于(諸)顯示器626的格式。(諸)顯示器626可包括任何類型的顯示器,包括但不限于:陰極射線管(CRT)、液晶顯示器(LCD)、發(fā)光二極管(LED)顯示器、等離子顯示器等。

本領(lǐng)域技術(shù)人員將進(jìn)一步領(lǐng)會,結(jié)合本文所公開的諸方面描述的各種解說性邏輯塊、模塊、電路和算法可被實現(xiàn)為電子硬件、存儲在存儲器中或另一計算機可讀介質(zhì)中并由處理器或其它處理設(shè)備執(zhí)行的指令、或這兩者的組合。作為示例,本文中描述的設(shè)備可被用在任何電路、硬件組件、集成電路(IC)、或IC芯片中。本文所公開的存儲器可以是任何類型和大小的存儲器,且可被配置成存儲所需的任何類型的信息。為清楚地解說這種可互換性,以上已經(jīng)以其功能性的形式一般地描述了各種解說性組件、框、模塊、電路和步驟。此類功能性如何被實現(xiàn)取決于具體應(yīng)用、設(shè)計選擇、和/或加諸于整體系統(tǒng)上的設(shè)計約束。技術(shù)人員可針對每種特定應(yīng)用以不同方式來實現(xiàn)所描述的功能性,但此類實現(xiàn)決策不應(yīng)被解讀為致使脫離本公開的范圍。

結(jié)合本文中公開的諸方面描述的各種解說性邏輯塊、模塊、以及電路可用設(shè)計成執(zhí)行本文中描述的功能的處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或其他可編程邏輯器件、分立的門或晶體管邏輯、分立的硬件組件、或其任何組合來實現(xiàn)或執(zhí)行。處理器可以是微處理器,但在替代方案中,處理器可以是任何常規(guī)處理器、控制器、微控制器或狀態(tài)機。處理器還可以被實現(xiàn)為計算設(shè)備的組合,例如DSP與微處理器的組合、多個微處理器、與DSP核心協(xié)同的一個或多個微處理器、或任何其它此類配置。

本文所公開的諸方面可被實施在硬件和存儲在硬件中的指令中,并且可駐留在例如隨機存取存儲器(RAM)、閃存、只讀存儲器(ROM)、電可編程ROM(EPROM)、電可擦可編程ROM(EEPROM)、寄存器、硬盤、可移動盤、CD-ROM,或本領(lǐng)域中所知的任何其它形式的計算機可讀介質(zhì)中。示例性存儲介質(zhì)被耦合到處理器,以使得處理器能從/向該存儲介質(zhì)讀取/寫入信息。在替換方案中,存儲介質(zhì)可以被整合到處理器。處理器和存儲介質(zhì)可駐留在ASIC中。ASIC可駐留在遠(yuǎn)程站中。在替換方案中,處理器和存儲介質(zhì)可作為分立組件駐留在遠(yuǎn)程站、基站或服務(wù)器中。

還注意到,本文任何示例性方面中描述的操作步驟是為了提供示例和討論而被描述的。所描述的操作可按除了所解說的順序之外的眾多不同順序來執(zhí)行。進(jìn)一步,在單個操作步驟中描述的操作實際上可在多個不同步驟中執(zhí)行。另外,示例性方面中討論的一個或多個操作步驟可被組合。將理解,如對本領(lǐng)域技術(shù)人員顯而易見地,在流程圖中解說的操作步驟可進(jìn)行眾多不同的修改。本領(lǐng)域技術(shù)人員還將理解,可使用各種不同技術(shù)中的任何一種來表示信息和信號。例如,貫穿上面描述始終可能被述及的數(shù)據(jù)、指令、命令、信息、信號、位(比特)、碼元、以及碼片可由電壓、電流、電磁波、磁場或磁粒子、光場或光粒子、或其任何組合來表示。

提供對本公開的先前描述是為使得本領(lǐng)域任何技術(shù)人員皆能夠制作或使用本公開。對本公開的各種修改對本領(lǐng)域技術(shù)人員而言將容易是顯而易見的,并且本文中所定義的普適原理可被應(yīng)用到其他變型而不會脫離本公開的精神或范圍。由此,本公開并非旨在被限定于本文中所描述的示例和設(shè)計,而是應(yīng)被授予與本文中所公開的原理和新穎特征一致的最廣義的范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1