TWI845926B - 記憶體系統 - Google Patents
記憶體系統 Download PDFInfo
- Publication number
- TWI845926B TWI845926B TW111115234A TW111115234A TWI845926B TW I845926 B TWI845926 B TW I845926B TW 111115234 A TW111115234 A TW 111115234A TW 111115234 A TW111115234 A TW 111115234A TW I845926 B TWI845926 B TW I845926B
- Authority
- TW
- Taiwan
- Prior art keywords
- link
- controller
- busy signal
- host
- state
- Prior art date
Links
- 230000009471 action Effects 0.000 claims description 29
- 230000004044 response Effects 0.000 claims description 20
- 238000000034 method Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 abstract description 46
- 230000006870 function Effects 0.000 description 25
- 230000007704 transition Effects 0.000 description 16
- 238000012545 processing Methods 0.000 description 13
- 230000010365 information processing Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 238000007726 management method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000000052 comparative effect Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 3
- 238000013523 data management Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Abstract
實現一種當被利用有複數之鏈結的情況時能夠降低消耗電力之記憶體系統。
若依據實施形態,則記憶體系統,係具備有第1控制器、第2控制器以及第3控制器。第1控制器,係將第1主機與記憶體系統之間之第1鏈結,設定為動作狀態與低消耗電力狀態之其中一者。第2控制器,係將第2主機與記憶體系統之間之第2鏈結,設定為動作狀態與低消耗電力狀態之其中一者。第3控制器,係當預測到有經由第1以及第2鏈結之其中一者而來之封包之傳輸的情況時,對於第1以及第2控制器而送出繁忙訊號,第1控制器,當第1鏈結係為低消耗電力狀態,並且並未經由第1鏈結而收訊包含有被傳輸至第3控制器處的資料之封包的情況時,係藉由將繁忙訊號無效化,來將第1鏈結維持於低消耗電力狀態。
Description
本發明之實施形態,係有關於記憶體系統。
[關連申請案]
本申請案,係享受以日本專利申請2022-014219號(申請日:2022年2月1日)作為基礎申請之優先權。本申請案,係藉由參照此基礎申請案,而包含基礎申請案之所有的內容。
作為用以將資訊處理裝置與裝置作連接的介面規格之其中一者,係周知有PCI Express(PCIe)(註冊商標)規格。藉由準據於PCIe規格之介面,資訊處理裝置與裝置係經由被稱作鏈結(link)之傳輸路徑而被作連接。在鏈結上,係使用封包來傳輸資料。使用封包而被作傳輸之資料,例如,係包含有從資訊處理裝置所對於裝置之要求、從裝置所對於資訊處理裝置之回應、或者是使用者資料。
在PCIe規格中,係規定有就算是裝置乃為動作狀態也能夠將鏈結設定為低消耗電力狀態的功能。此功能,係被稱作主動狀態電源管理(Active State Power Management,ASPM)。
當在特定之期間中而不存在有經由有鏈結之封包傳輸的情況時,係藉由ASPM功能,而使鏈結從通常動作狀態來變遷至低消耗電力狀態。在PCIe規格中,通常動作狀態,例如,係被規定為鏈結功率狀態L0。又,低消耗電力動作狀態,例如,係被規定為鏈結功率狀態L1。
當鏈結從低消耗電力狀態而回到通常動作狀態的情況時,例如,係會產生數微秒(μs)之延遲。起因於此延遲,經由有鏈結之封包傳輸的性能係可能會降低。因此,當預測到會有經由鏈結而來之封包之傳輸的情況時,在裝置處,係進行有用以使鏈結不會變遷至低消耗電力狀態之控制。
又,裝置,係會有具備有複數之準據於PCIe規格的介面之埠(port)的情形。例如,具備有2個的埠之裝置,係能夠經由2個的鏈結,來在自身與2個的資訊處理裝置之各者之間而進行封包傳輸。
其中一個實施形態,係實現一種當被利用有用以進行封包傳輸之複數之鏈結的情況時能夠降低消耗電力之記憶體系統。
若依據實施形態,則記憶體系統,係能夠經由序列介面而與複數之主機分別作連接。記憶體系統,係具備有非揮發性記憶體、第1控制器、第2控制器以及第3控制器。第1控制器,係將第1主機與記憶體系統之間之第1鏈結,設定為動作狀態和消耗電力為較動作狀態而更低的低消耗電力狀態之其中一者。第2控制器,係將第2主機與記憶體系統之間之第2鏈結,設定為動作狀態與低消耗電力狀態之其中一者。第3控制器,係使用在經由第1鏈結以及第2鏈結所收訊的封包中所包含之資料,來對於針對非揮發性記憶體之要求進行處理。第3控制器,係當預測到有經由第1鏈結與第2鏈結之其中一者而來之封包之傳輸的情況時,對於第1控制器與第2控制器而送出繁忙訊號。第1控制器,當第1鏈結係為低消耗電力狀態,並且並未經由第1鏈結而收訊包含有被傳輸至第3控制器處的資料之封包的情況時,係藉由將繁忙訊號無效化,來將第1鏈結維持於低消耗電力狀態。第1控制器,當第1鏈結係為動作狀態,並且並未經由第1鏈結而收訊包含有被傳輸至第3控制器處的資料之封包的情況時,係藉由將繁忙訊號無效化,來因應於在第1期間中而不存在有經由第1鏈結而被傳輸之封包一事,而使第1鏈結變遷至低消耗電力狀態。
以下,參考圖面,針對實施形態作說明。
首先,參考圖1,針對包含實施形態之記憶體系統的資訊處理系統1之構成作說明。資訊處理系統1,係包含有第1主機裝置2-1、和第2主機裝置2-2、以及記憶體系統3。以下,係將第1主機裝置2-1,稱作第1主機2-1。係將第2主機裝置2-2,稱作第2主機2-2。又,在並不對於第1主機2-1、第2主機2-2作區別的情況時,係將此些稱作主機2。另外,資訊處理系統1,係亦可包含有3個以上的主機2。
第1主機2-1以及第2主機2-2,係分別可為將大量且多樣化的使用者資料保存於記憶體系統3中之儲存伺服器,亦可為個人電腦。
記憶體系統3,係為以對於如同NAND型快閃記憶體一般之非揮發性記憶體而寫入使用者資料並從非揮發性記憶體而將使用者資料讀出的方式所構成之半導體儲存裝置。記憶體系統3,係亦被稱作儲存裝置。記憶體系統3,例如係可作為固態硬碟(SSD)而被實現。
記憶體系統3,係可作為第1主機2-1以及第2主機2-2之儲存設備而被作使用。記憶體系統3,係分別被與第1主機2-1以及第2主機2-2作連接。
用以將第1主機2-1以及第2主機2-2分別與記憶體系統3相互作連接之介面,係準據於PCI Express (PCIe)(註冊商標)、NVM Express(NVMe)(註冊商標)等之規格。
第1主機2-1,係具備有PCIe PHY21-1。第2主機2-2,係具備有PCIe PHY21-2。PCIe PHY21-1、21-2,係為相當於藉由PCIe規格所規定的物理層之電路。PCIe PHY21-1、21-2,係具備有準據於PCIe規格之物理性的連接形式。
記憶體系統3,例如,係具備有控制器4、NAND型快閃記憶體5以及動態隨機存取記憶體(DRAM) 6。
NAND型快閃記憶體5,係包含有1個以上的記憶體晶片。各記憶體晶片,係包含有複數之區塊。1個的區塊,係作為資料刪除動作之最小單位而起作用。區塊,係亦會有被稱作「刪除區塊」或者是「物理區塊」的情形。複數之區塊之各者,係包含有複數之頁面。複數之頁面之各者,係包含有被與單一之字元線作了連接的複數之記憶體胞。1個的頁面,係作為資料寫入動作以及資料讀取動作之單位而起作用。另外,係亦可使字元線作為資料寫入動作以及資料讀出動作之單位而起作用。
在針對各區塊之程式化/抹除循環數(P/E循環數)中,係存在有上限,而被稱作最大P/E循環數。某一區塊之1次的P/E循環,係包含有用以將此區塊內之所有的記憶體胞設為刪除狀態之刪除動作、和將資料寫入至此區塊之各頁面中的寫入動作。
DRAM6,係為揮發性之記憶體。在DRAM6等之RAM中,例如,係被設置有韌體(FW)之儲存區域、邏輯物理位址轉換表之快取區域。
控制器4,係可藉由如同SoC(System-on-a-chip)一般之電路來實現之。控制器4,係亦可內藏有SRAM(靜態隨機存取記憶體)。於此情況,在記憶體系統3處係亦可並不設置DRAM6。又,DRAM6係亦可被內藏於控制器4中。控制器4,係作為以對於NAND型快閃記憶體5進行控制的方式所構成之記憶體控制器而起作用。
控制器4,係亦可作為以實行NAND型快閃記憶體5之資料管理以及區塊管理的方式所構成之快閃記憶體轉換層(Flash Translation Layer,FTL)而起作用。在此藉由FTL而被實行的資料管理中,係包含有(1)對於代表邏輯位址之各者與NAND型快閃記憶體5之物理位址之各者之間的對應關係之映射資訊之管理以及(2)用以將頁面單位之資料讀出動作/資料寫入動作和區塊單位之資料刪除動作之間之差異作隱蔽之處理。在區塊管理中,係包含有不良區塊之管理、耗損平均技術以及垃圾回收。
邏輯位址,係為了對於記憶體系統3之記憶區域進行位址指定,而被主機2所使用。邏輯位址,例如係為邏輯區塊位址(LBA)。
邏輯位址之各者與物理位址之各者之間的映射之管理,例如,係使用邏輯物理位址轉換表而被實行。控制器4,係使用邏輯物理位址轉換表,來針對邏輯位址之各者與物理位址之各者之間的映射而以特定之管理容量單位來作管理。對應於某一邏輯位址之物理位址,係代表對應於此邏輯位址之使用者資料所被作寫入的NAND型快閃記憶體5內之物理記憶位置。邏輯物理位址轉換表,係亦可在記憶體系統3之啟動時而被從NAND型快閃記憶體5來載入至DRAM6處。
對於1個的頁面之資料寫入,係在1次的P/E循環中而僅能進行1次。因此,控制器4,係將對應於某一邏輯位址之更新使用者資料,並非寫入至對應於此邏輯位址之以前的使用者資料所被作儲存之物理記憶位置處,而是寫入至其他的物理記憶位置處。之後,控制器4,係藉由以將此邏輯位址與此其他之物理記憶位置相互附加關連的方式來對於邏輯物理位址轉換表進行更新,而將以前之使用者資料無效化。
控制器4,例如,係包含有主機介面(主機I/F)11、CPU15、NAND介面(NAND I/F)16以及DRAM介面(DRAM I/F)17。此些之主機I/F11、CPU15、NAND I/F16以及DRAM I/F17,係亦可經由匯流排10而被作連接。
CPU15,係身為以對於主機I/F11、NAND I/F16以及DRAM I/F17作控制的方式而被構成之處理器。CPU15,係藉由實行從NAND型快閃記憶體5而被載入至DRAM6中之FW,而進行各種之處理。FW,係為包含有用以使CPU15實行各種之處理的命令群之控制程式。CPU15,係能夠實行用以對於從主機2而來之各種指令進行處理的指令處理等。CPU15之動作,係藉由被CPU15所實行的FW而被作控制。
NAND I/F16,係將控制器4與NAND型快閃記憶體5作電性連接。NAND I/F16,係對應於Toggle DDR、Open NAND Flash Interface(ONFI)等之介面規格。
NAND I/F16,係作為以對於NAND型快閃記憶體5進行控制的方式而被構成之NAND控制電路來起作用。NAND I/F16,係亦可經由複數之通道(Ch),來分別被與NAND型快閃記憶體5內之複數之記憶體晶片作連接。藉由使複數之記憶體晶片被平行地驅動,係能夠將對於NAND型快閃記憶體5全體之存取寬頻帶化。
DRAM I/F17,係作為以對於針對DRAM6之存取來進行控制的方式而被構成之DRAM控制電路而起作用。
主機I/F11,係為作為對於記憶體系統3與複數之主機2-1、2-2之各者之間之通訊作控制的介面而起作用之電路。主機I/F11,係包含有用以從第1主機2-1以及第2主機2-2之各者而收訊封包之電路。封包,例如,係為準據於PCIe規格之封包。被收訊之封包,係包含有各種之指令、例如包含有輸入輸出(I/O)指令、各種控制指令。
又,主機I/F11,係包含有用以對於第1主機2-1以及第2主機2-2之各者而送訊封包之電路。被送訊之封包,例如,係包含有針對指令之回應和使用者資料。
主機I/F11,例如,係具備有PCIe PHY12-1、12-2、PCIe鏈結控制器13-1、13-2、以及NVMe控制器14。
PCIe PHY12-1、12-2,係為相當於藉由PCIe規格所規定的物理層之電路。PCIe PHY12-1、12-2,例如,係具備有準據於PCIe規格之物理性的連接形式。
PCIe PHY12-1,係經由序列介面而例如被與第1主機2-1之PCIe PHY21-1作連接。此序列介面,係包含有能夠將PCIe PHY12-1與PCIe PHY21-1相互作連接之鏈結31(以下,稱作第1鏈結31)。PCIe PHY12-1以及PCIe PHY21-1,係進行經由第1鏈結31而將資料物理性地送、收訊之介面動作。
PCIe PHY12-2,係經由序列介面而例如被與第2主機2-2之PCIe PHY21-2作連接。此序列介面,係包含有能夠將PCIe PHY12-2與PCIe PHY21-2相互作連接之鏈結32(以下,稱作第2鏈結32)。PCIe PHY12-2以及PCIe PHY21-2,係進行經由第2鏈結32而將資料物理性地送、收訊之介面動作。在第1鏈結31以及第2鏈結32之各者處,係以封包之形態來傳輸資料。
PCIe鏈結控制器13-1,係為管理第1鏈結31並進行用以在PCIe PHY12-1與NVMe控制器14之間而將資料作交換的處理之電路。更具體而言,PCIe鏈結控制器13-1,係經由第1鏈結31以及PCIe PHY12-1而從第1主機2-1收訊封包。PCIe鏈結控制器13-1,係對於封包進行處理並例如取得應被送出至NVMe控制器14處的資料。PCIe鏈結控制器13-1,係將所取得的資料對於NVMe控制器14作送出。應被送出至NVMe控制器14處之資料,例如,係為關連於對於NAND型快閃記憶體5之存取的資料。更詳細而言,應被送出至NVMe控制器14處之資料,例如,係為對於NAND型快閃記憶體5之寫入要求、讀出要求以及廠商自定義訊息Vendor Defined Message(VDM)。
PCIe鏈結控制器13-2,係為管理第2鏈結32並進行用以在PCIe PHY12-2與NVMe控制器14之間而將資料作交換的處理之電路。更具體而言,PCIe鏈結控制器13-2,係經由第2鏈結32以及PCIe PHY12-2而從第2主機2-2收訊封包。PCIe鏈結控制器13-2,係對於封包進行處理並例如取得應被送出至NVMe控制器14處的資料。PCIe鏈結控制器13-2,係將所取得的資料對於NVMe控制器14作送出。
NVMe控制器14,係為針對像是對於NAND型快閃記憶體5之寫入要求、讀出要求或者是VDM一般的交易(transaction)進行處理之電路。NVMe控制器14,係進行「與在經由PCIe PHY12-1以及PCIe鏈結控制器13-1所收訊的資料中所包含之要求相對應之動作」和「與在經由PCIe PHY12-2以及PCIe鏈結控制器13-2所收訊的資料中所包含之要求相對應之動作」和「用以經由PCIe PHY12-1以及PCIe鏈結控制器13-1而將包含有針對要求之回應的資料作送訊之動作」以及「用以經由PCIe PHY12-2以及PCIe鏈結控制器13-2而將包含有針對要求之回應的資料作送訊之動作」。由NVMe控制器14所致之動作,例如,係準據於NVMe規格。
如此這般,PCIe PHY12-1、PCIe鏈結控制器13-1以及NVMe控制器14,係對於第1主機2-1與記憶體系統3之間之資料傳輸作控制。又,PCIe PHY12-2、PCIe鏈結控制器13-2以及NVMe控制器14,係對於第2主機2-2與記憶體系統3之間之資料傳輸作控制。亦即是,記憶體系統3,係具備有用以與第1主機2-1進行資料傳輸之埠(以下,亦稱作埠0)、和用以與第2主機2-2進行資料傳輸之埠(以下,亦稱作埠1)。
另外,控制器4內之各部之功能,係可藉由控制器4內之專用硬體來實現之,亦可藉由使CPU15實行FW一事來實現之。
於此,針對對於鏈結所設定的鏈結功率狀態進行說明。鏈結功率狀態,係為對於鏈結所設定的電力狀態。鏈結功率狀態,例如,係藉由以PCIe規格所規定的ASPM功能而被作設定。ASPM功能,係為就算是裝置(例如,記憶體系統3)乃為動作狀態也能夠將鏈結設定為低消耗電力狀態的功能。作為鏈結功率狀態,例如,係存在有鏈結功率狀態L0與鏈結功率狀態L1。鏈結功率狀態L0,係為通常動作狀態(active狀態)。鏈結功率狀態L1,係為低消耗電力動作狀態(inactive狀態)。鏈結功率狀態L1,係亦被稱作ASPM L1。
當變遷至了鏈結功率狀態L1之鏈結回到鏈結功率狀態L0的情況時,例如,係會產生數微秒之延遲(exit latency)。起因於此延遲,經由有鏈結之封包傳輸的性能係可能會降低。因此,在裝置處,當預測到會有經由鏈結而來之封包之傳輸的情況時,係進行有用以使鏈結不會變遷至鏈結功率狀態L1之控制。
針對鏈結功率狀態之控制例,使用第1以及第2比較例來作說明。
(第1比較例)
第1比較例之記憶體系統,係進行與1個的主機之間之資料傳輸。
圖2,係對於在第1比較例的記憶體系統3A中之與主機2A間之鏈結31A為被維持於鏈結功率狀態L0(通常動作狀態)之動作之例作展示。
記憶體系統3A,係具備有用以與1個的主機2A作連接之1個的埠。具體而言,記憶體系統3A,係具備有PCIe PHY12A、PCIe鏈結控制器13A、以及NVMe控制器14A。
PCIe PHY12A,係經由序列介面而被與主機2A之PCIe PHY21A作連接。此序列介面,係包含有能夠將PCIe PHY12A與PCIe PHY21A相互作連接之鏈結31A。
PCIe鏈結控制器13A,係管理PCIe PHY12A與PCIe PHY21A之間之鏈結31A,並進行用以在PCIe PHY12A與NVMe控制器14A之間而將資料作交換的處理。
NVMe控制器14,係進行「與在經由PCIe PHY12A以及PCIe鏈結控制器13A所收訊的資料中所包含之要求相對應之動作」和「用以經由PCIe PHY12A以及PCIe鏈結控制器13A而將包含有針對要求之回應的資料作送訊之動作」。
如此這般,PCIe PHY12A、PCIe鏈結控制器13A以及NVMe控制器14A,係對於主機2A與記憶體系統3A之間之資料傳輸作控制。
於此,針對在記憶體系統3A中而對於鏈結功率狀態作控制的構成進行說明。
PCIe鏈結控制器13A,係具備有ASPM L1計時器/控制器131A。
ASPM L1計時器/控制器131A,係為具備有ASPM功能之電路。ASPM L1計時器/控制器131A,係藉由ASPM功能,來對於鏈結31A之鏈結功率狀態作控制。更具體而言,ASPM L1計時器/控制器131A,當鏈結31A係被設定為鏈結功率狀態L0的情況時,係能夠作為對於「並不存在有經由鏈結31A所傳輸而來之封包」的狀態所持續的時間進行計測之計時器而起作用。當所計測到的時間係超過了臨限值的情況時(亦即是,當計時結束的情況時),ASPM L1計時器/控制器131A,係使鏈結31A從鏈結功率狀態L0而變遷至鏈結功率狀態L1。藉由此,鏈結31A係成為低消耗電力狀態。
NVMe控制器14A,係當預測到有經由鏈結31A之封包之傳輸的情況時,對於ASPM L1計時器/控制器131A送出繁忙(busy)訊號。繁忙訊號,係代表NVMe控制器14A乃身為繁忙狀態。身為繁忙狀態之NVMe控制器14A,係預測到有經由鏈結31A而來之封包之傳輸。
ASPM L1計時器/控制器131A,當在鏈結31A為被設定為鏈結功率狀態L1的期間中係藉由NVMe控制器14A而被送出有繁忙訊號的情況時,係使鏈結31A變遷至鏈結功率狀態L0。又,ASPM L1計時器/控制器131A,在鏈結31A為被設定為鏈結功率狀態L0並且係正藉由NVMe控制器14A而被送出有繁忙訊號的期間中(亦即是,繁忙訊號係為active的期間中),係並不針對「並未被進行有經由鏈結31A之封包傳輸」的狀態所持續之時間進行計測。故而,在正藉由NVMe控制器14A而被送出有繁忙訊號的期間中,ASPM L1計時器/控制器131A係並不會有使鏈結31A從鏈結功率狀態L0而變遷至鏈結功率狀態L1的情形。
藉由此種與繁忙訊號相對應的ASPM L1計時器/控制器131A之動作,當預測到有經由鏈結31A之封包之傳輸的情況時,鏈結31A係並不會從鏈結功率狀態L0而變遷至鏈結功率狀態L1。因此,於在正收訊有繁忙訊號之期間中的ASPM L1計時器/控制器131A之動作中,係並不會發生「被設定為鏈結功率狀態L0之鏈結31A變遷至鏈結功率狀態L1,被設定為鏈結功率狀態L1之鏈結31A回到鏈結功率狀態L0」的動作。故而,係並不會產生起因於從鏈結功率狀態L1而至鏈結功率狀態L0之變遷所導致的延遲。因此,當預測到有經由鏈結31A之封包之傳輸的情況時,係能夠防止在經由有鏈結31A之封包傳輸中的性能之降低。
(第2比較例)
第2比較例之記憶體系統,係進行與2個的主機之各者之間之資料傳輸。
圖3,係對於在第2比較例的記憶體系統3B中之「主機2-1B之鏈結31B和主機2-2B之鏈結31B之雙方均為被維持於鏈結功率狀態L0(通常動作狀態)」之動作之例作展示。
記憶體系統3B,係具備有用以與2個的主機2-1B以及2-2B分別作連接之2個的埠。具體而言,記憶體系統3B,係具備有PCIe PHY12-1B以及12-2B、PCIe鏈結控制器13-1B以及13-2B、還有NVMe控制器14B。
PCIe PHY12-1B,係經由序列介面而被與主機2-1B之PCIe PHY21-1B作連接。此序列介面,係包含有能夠將PCIe PHY12-1B與PCIe PHY21-1B相互作連接之鏈結31B(以下,稱作第1鏈結31B)。
PCIe PHY12-2B,係經由序列介面而被與主機2-2B之PCIe PHY21-2B作連接。此序列介面,係包含有能夠將PCIe PHY12-2B與PCIe PHY21-2B相互作連接之鏈結32B(以下,稱作第2鏈結32B)。
PCIe鏈結控制器13-1B,係管理第1鏈結31B並進行用以在PCIe PHY12-1B與NVMe控制器14B之間而將資料作交換的處理。
PCIe鏈結控制器13-2B,係管理第2鏈結32B並進行用以在PCIe PHY12-2B與NVMe控制器14B之間而將資料作交換的處理。
NVMe控制器14B,係進行「與在經由PCIe PHY12-1B以及PCIe鏈結控制器13-1B和PCIe PHY12-2B以及PCIe鏈結控制器13-2B之其中一者所收訊的資料中所包含之指令相對應之動作」和「用以經由PCIe PHY12-1B以及PCIe鏈結控制器13-1B和PCIe PHY12-2B以及PCIe鏈結控制器13-2B之其中一者而將包含有針對指令之回應的資料作送訊之動作」。
如此這般,PCIe PHY12-1B、PCIe鏈結控制器13-1B以及NVMe控制器14B,係對於主機2-1B與記憶體系統3B之間之資料傳輸作控制。PCIe PHY12-2B、PCIe鏈結控制器13-2B以及NVMe控制器14B,係對於主機2-2B與記憶體系統3B之間之資料傳輸作控制。
於此,針對在記憶體系統3B中而對於鏈結功率狀態作控制的構成進行說明。
PCIe鏈結控制器13-1B,係具備有ASPM L1計時器/控制器131-1B。
ASPM L1計時器/控制器131-1B,係為具備有對於第1鏈結31B之鏈結功率狀態作控制的ASPM功能之電路。更具體而言,ASPM L1計時器/控制器131-1B,當第1鏈結31B係被設定為鏈結功率狀態L0的情況時,係能夠作為對於「並不存在有經由第1鏈結31B所傳輸而來之封包」的狀態所持續的時間進行計測之計時器而起作用。當所計測到的時間係超過了臨限值的情況時,ASPM L1計時器/控制器131-1B,係使第1鏈結31B之鏈結功率狀態從鏈結功率狀態L0而變遷至鏈結功率狀態L1。藉由此,第1鏈結31B係成為低消耗電力狀態。
PCIe鏈結控制器13-2B,係具備有ASPM L1計時器/控制器131-2B。ASPM L1計時器/控制器131-2B,係與ASPM L1計時器/控制器131-1B相同的,對於第2鏈結32B之鏈結功率狀態作控制。
NVMe控制器14B,係當預測到有經由鏈結31B或鏈結32B之封包之傳輸的情況時,係對於ASPM L1計時器/控制器131-1B和ASPM L1計時器/控制器131-2B之雙方送出繁忙訊號。繁忙訊號,係代表NVMe控制器14B乃身為繁忙狀態。身為繁忙狀態之NVMe控制器14B,係預測到有經由鏈結31B或32B而來之封包之傳輸。
ASPM L1計時器/控制器131-1B,當在第1鏈結31B為被設定為鏈結功率狀態L1的期間中係藉由NVMe控制器14B而被送出有繁忙訊號的情況時,係使第1鏈結31B變遷至鏈結功率狀態L0。又,ASPM L1計時器/控制器131-1B,在第1鏈結31B為被設定為鏈結功率狀態L0並且係正藉由NVMe控制器14B而被送出有繁忙訊號的期間中,係並不針對「並未被進行有經由第1鏈結31B之封包傳輸」的狀態所持續之時間進行計測。故而,在正藉由NVMe控制器14B而被送出有繁忙訊號的期間中,ASPM L1計時器/控制器131-1B係並不會有使第1鏈結31B從鏈結功率狀態L0而變遷至鏈結功率狀態L1的情形。
ASPM L1計時器/控制器131-2B,當在第2鏈結32B為被設定為鏈結功率狀態L1的期間中係藉由NVMe控制器14B而被送出有繁忙訊號的情況時,係使第2鏈結32B變遷至鏈結功率狀態L0。又,ASPM L1計時器/控制器131-2B,在第2鏈結32B為被設定為鏈結功率狀態L0並且係正藉由NVMe控制器14B而被送出有繁忙訊號的期間中,係並不針對「並未被進行有經由第2鏈結32B之封包傳輸」的狀態所持續之時間進行計測。故而,在正藉由NVMe控制器14B而被送出有繁忙訊號的期間中,ASPM L1計時器/控制器131-2B係並不會有使第2鏈結32B從鏈結功率狀態L0而變遷至鏈結功率狀態L1的情形。
藉由此種與繁忙訊號相對應的ASPM L1計時器/控制器131-1B以及131-2B之動作,當預測到有經由鏈結31B或32B之封包之傳輸的情況時,鏈結31B以及32B係均不會從鏈結功率狀態L0而變遷至鏈結功率狀態L1。因此,在因應於繁忙訊號所致的ASPM L1計時器/控制器131-1B之動作中,係並不會發生「被設定為鏈結功率狀態L0之鏈結31B變遷至鏈結功率狀態L1,並回到鏈結功率狀態L0」的動作。又,在因應於繁忙訊號所致的ASPM L1計時器/控制器131-2B之動作中,係並不會發生「被設定為鏈結功率狀態L0之鏈結32B變遷至鏈結功率狀態L1,並回到鏈結功率狀態L0」的動作。故而,係並不會產生起因於從鏈結功率狀態L1而至鏈結功率狀態L0之變遷所導致的延遲。因此,當預測到有經由鏈結31B或32B之封包之傳輸的情況時,係能夠防止在經由有鏈結31B或32B之封包傳輸中的性能之降低。
另外,NVMe控制器14B,係構成為並不針對「預測到會發生的封包傳輸是經由第1鏈結31B還是經由第2鏈結32B而來者」一事進行判別。因此,NVMe控制器14B,就算是當預測到會發生的封包傳輸乃是經由第1鏈結31B與第2鏈結32B之其中一方而來者的情況時,也會對於ASPM L1計時器/控制器131-1B和ASPM L1計時器/控制器131-2B之雙方送出繁忙訊號。
由於係對於ASPM L1計時器/控制器131-1B和ASPM L1計時器/控制器131-2B之雙方送出繁忙訊號,因此,在記憶體系統3B處,就算是當預測到會發生的封包傳輸乃是經由2個的鏈結31B與32B之其中一方之鏈結而來並且並非為經由另外一方之鏈結而來者的情況時,係並不僅會使其中一方之鏈結不會從鏈結功率狀態L0而變遷至鏈結功率狀態L1,而也會使另外一方之鏈結不會從鏈結功率狀態L0而變遷至鏈結功率狀態L1。
例如,當預測到會發生的封包傳輸乃是經由第1鏈結31B而來者並且並非為經由第2鏈結32B而來的情況時,起因於與繁忙訊號相對應的ASPM L1計時器/控制器131-2B之動作,就算是在特定之期間中並不存在有經由第2鏈結32B所傳輸而來之封包,第2鏈結32B也並不會從鏈結功率狀態L0而變遷至鏈結功率狀態L1。因此,係無法得到起因於第2鏈結32B變遷至鏈結功率狀態L1一事所導致的消耗電力之降低。
相對於此,在本實施形態之記憶體系統3中,係在2個的PCIe鏈結控制器13-1以及13-2處,分別設置有「因應於是否檢測出包含有從2個的主機2-1以及2-2之各者所分別傳輸至NVMe控制器14處之資料之封包一事,來將從NVMe控制器14所送出的繁忙訊號有效化或無效化之電路(以下,稱作繁忙訊號控制電路)」。在記憶體系統3處,係基於藉由繁忙訊號控制電路而被作了有效化或無效化之繁忙訊號,來對於2個的鏈結31以及32之各別的鏈結功率狀態作控制。藉由此,在記憶體系統3處,當預測到會發生的封包傳輸乃是經由2個的鏈結31以及32之其中一方之鏈結而來並且並非為經由另外一方之鏈結而來者的情況時,係能夠使該另外一方之鏈結從鏈結功率狀態L0而變遷至鏈結功率狀態L1。故而,係能夠藉由使該另外一方之鏈結變遷至鏈結功率狀態L1,來將消耗電力降低。
參照圖4,針對在本實施形態之記憶體系統3中而對於鏈結功率狀態作控制的構成進行具體性的說明。
PCIe鏈結控制器13-1,係具備有ASPM L1計時器/控制器131-1和繁忙訊號控制電路132-1。PCIe鏈結控制器13-2,係具備有ASPM L1計時器/控制器131-2和繁忙訊號控制電路132-2。
NVMe控制器14,係當預測到有經由鏈結31與鏈結32之其中一者而來之封包之傳輸的情況時,對於PCIe鏈結控制器13-1和PCIe鏈結控制器13-2送出繁忙訊號。另外,係亦將「送出繁忙訊號」一事稱作「將繁忙訊號設為active」。又,係亦將「並不送出繁忙訊號」一事稱作「將繁忙訊號設為inactive」。例如,NVMe控制器14,當並未將針對從主機2-1以及2-2所受理了的所有的要求結束的情況(例如,並未將針對要求之回應全部作回送的情況)時,係送出繁忙訊號。藉由NVMe控制器14所被送出的繁忙訊號,係並非僅被ASPM L1計時器/控制器131-1以及131-2所收訊,而亦被繁忙訊號控制電路132-1以及132-2所收訊。繁忙訊號,係代表NVMe控制器14乃身為繁忙狀態。身為繁忙狀態之NVMe控制器14,係預測到有經由鏈結31以及32之其中一者而來之封包之傳輸。
NVMe控制器14,例如,當從PCIe鏈結控制器13-1而接收了在從第1主機2-1而經由第1鏈結31所傳輸而來的封包中所包含之資料的情況時,或者是當從PCIe鏈結控制器13-2而接收了在從第2主機2-2而經由第2鏈結32所傳輸而來的封包中所包含之資料的情況時,係預測到經由鏈結31與鏈結32之其中一者而來之封包之傳輸。另外,在NVMe控制器14處,係並不針對「預測到會發生的封包傳輸是經由第1鏈結31還是經由第2鏈結32而來者」一事進行判別。
NVMe控制器14,當並未預測到有經由鏈結31而來之封包之傳輸與經由鏈結32而來之封包之傳輸之任一者的情況時,係對於PCIe鏈結控制器13-1和PCIe鏈結控制器13-2之雙方而均不送出繁忙訊號。例如,NVMe控制器14,當將針對從主機2-1以及2-2所受理了的所有的要求結束了的情況(例如,將針對要求之回應全部作了回送的情況)時,係結束繁忙訊號之送出。亦即是,係將繁忙訊號從active而設為inactive。
繁忙訊號控制電路132-1,係為「因應於是否檢測出包含有從第1主機2-1經由第1鏈結31所傳輸至NVMe控制器14處之資料之封包」一事,來將從NVMe控制器14所送出的繁忙訊號有效化或無效化之電路。以下,係將包含有從第1主機2-1與第2主機2-2之其中一者起而被傳輸至NVMe控制器14處的資料之封包,亦稱作對象封包。
繁忙訊號控制電路132-1,係檢測出對象封包。更具體而言,繁忙訊號控制電路132-1,當PCIe鏈結控制器13-1經由第1鏈結31以及PCIe PHY12-1而收訊了封包的情況時,例如,係判定該封包是否包含有應被送出至NVMe控制器14處的資料。當封包為包含有應被送出至NVMe控制器14處的資料的情況時,繁忙訊號控制電路132-1,係將該封包作為對象封包而檢測出來。
或者是,繁忙訊號控制電路132-1,當PCIe鏈結控制器13-1收訊了封包的情況時,係亦可判定該封包是否包含有關連於對於NAND型快閃記憶體5之存取的資料。於此情況,繁忙訊號控制電路132-1,係將包含有關連於對於NAND型快閃記憶體5之存取的資料之封包,作為對象封包而檢測出來。
關連於對於NAND型快閃記憶體5之存取的資料,例如,係為在之後才使經由第1鏈結31之封包傳輸發生的型態之資料。在之後才使經由第1鏈結31之封包傳輸發生的型態之資料,例如,係為對於NAND型快閃記憶體5之寫入要求、讀出要求或者是VDM。繁忙訊號控制電路132-1,係亦可將包含有在之後才使經由第1鏈結31之封包傳輸發生的型態之資料之封包,作為對象封包而檢測出來。於此情況,繁忙訊號控制電路132-1,係能夠僅當在之後會發生經由第1鏈結31之封包傳輸的情況時,而將繁忙訊號有效化。
繁忙訊號控制電路132-1,當檢測出了對象封包的情況時,係將繁忙訊號有效化。亦即是,在檢測出了對象封包的情況時,繁忙訊號控制電路132-1,係將藉由NVMe控制器14所被送出的繁忙訊號直接對於ASPM L1計時器/控制器131-1作送出。
更詳細而言,繁忙訊號控制電路132-1,在檢測出了對象封包之後,當藉由NVMe控制器14所被送出的繁忙訊號從inactive而變化為active的情況時,係以將繁忙訊號有效化的方式而動作。又,繁忙訊號控制電路132-1,在檢測出了對象封包的情況時,就算是當藉由NVMe控制器14所被送出的繁忙訊號已身為active的情況時,亦係以將繁忙訊號有效化的方式而動作。之後,若是繁忙訊號從active而變化為inactive,則繁忙訊號控制電路132-1係將狀態作重置(reset)。使狀態被作了重置後的繁忙訊號控制電路132-1,係以將繁忙訊號無效化的方式而動作。
另一方面,當並未檢測出對象封包的情況時,繁忙訊號控制電路132-1係將繁忙訊號無效化。亦即是,在並未檢測出對象封包的情況時,繁忙訊號控制電路132-1,係並不將藉由NVMe控制器14所被送出的繁忙訊號對於ASPM L1計時器/控制器131-1作送出。
ASPM L1計時器/控制器131-1,係為具備有ASPM功能之電路。ASPM L1計時器/控制器131-1,係藉由ASPM功能,來對於第1鏈結31之鏈結功率狀態作控制。
具體而言,ASPM L1計時器/控制器131-1,當第1鏈結31係被設定為鏈結功率狀態L0的情況時,係能夠作為對於「並不存在有經由第1鏈結31所傳輸而來之封包」的狀態所持續的時間進行計測之計時器而起作用。當所計測到的時間係超過了臨限值的情況時,ASPM L1計時器/控制器131-1,係使第1鏈結31之鏈結功率狀態從鏈結功率狀態L0而變遷至鏈結功率狀態L1。藉由此,第1鏈結31係成為低消耗電力狀態。
另外,將第1鏈結31設為低消耗電力狀態,係包含使進行第1鏈結31之管理以及控制的記憶體系統3內之構成之至少一部分以低消耗電力狀態來動作。又,將第1鏈結31設為通常動作狀態,係包含使進行第1鏈結31之管理以及控制的記憶體系統3內之構成以通常動作狀態來動作。進行第1鏈結31之管理以及控制的記憶體系統3內之構成,例如,係為PCIe PHY12-1和PCIe鏈結控制器13-1。
ASPM L1計時器/控制器131-1,當在第1鏈結31為被設定為鏈結功率狀態L1的期間中而從繁忙訊號控制電路132-1接收了繁忙訊號的情況時,係使第1鏈結31變遷至鏈結功率狀態L0。另外,在第1鏈結31為被設定為鏈結功率狀態L1的期間中,若是ASPM L1計時器/控制器131-1並未接收繁忙訊號,則第1鏈結31係被維持為鏈結功率狀態L1。ASPM L1計時器/控制器131-1,當NVMe控制器14並未送出繁忙訊號、或者是當繁忙訊號控制電路132-1將藉由NVMe控制器14所被送出的繁忙訊號無效化的情況時,係並不接收繁忙訊號。
ASPM L1計時器/控制器131-1,在第1鏈結31為被設定為鏈結功率狀態L0並且係正從繁忙訊號控制電路132-1而接收有繁忙訊號的期間中,係並不針對「並未被進行有經由第1鏈結31之封包傳輸」的狀態所持續之時間進行計測。故而,在正藉由繁忙訊號控制電路132-1而被送出有繁忙訊號的期間中,ASPM L1計時器/控制器131-1係並不會有使第1鏈結31從鏈結功率狀態L0而變遷至鏈結功率狀態L1的情形。
ASPM L1計時器/控制器131-1,在第1鏈結31為被設定為鏈結功率狀態L0並且係並未從繁忙訊號控制電路132-1而接收有繁忙訊號的期間中,係針對「並不存在有經由第1鏈結31而被傳輸之封包」的狀態所持續之時間進行計測。當所計測到的時間係超過了臨限值的情況時,ASPM L1計時器/控制器131-1,係使第1鏈結31之鏈結功率狀態從鏈結功率狀態L0而變遷至鏈結功率狀態L1。藉由此,不僅是當NVMe控制器14並未送出繁忙訊號的情況,就算是當繁忙訊號控制電路132-1將藉由NVMe控制器14所被送出的繁忙訊號無效化的情況時,亦同樣的,ASPM L1計時器/控制器131-1,若是「並不存在有經由第1鏈結31而被傳輸之封包」的狀態所持續之時間為超過臨限值,則係能夠使第1鏈結31變遷至鏈結功率狀態L1。
故而,當並未藉由繁忙訊號控制電路132-1而被檢測出對象封包的情況時、亦即是當預測到會發生的封包傳輸乃是經由第2鏈結32而來者並且並非為經由第1鏈結31而來的情況時,係能夠將使第1鏈結31成為鏈結功率狀態L1之期間延長,並且能夠將使第1鏈結31變遷至鏈結功率狀態L1的可能性提高。藉由此,當利用有複數之鏈結31以及32的情況時,係能夠降低消耗電力。
另外,由「PCIe鏈結控制器13-2內之繁忙訊號控制電路132-2以及ASPM L1計時器/控制器131-2」和NVMe控制器14所致之針對第2鏈結32之動作,係與前述之由「PCIe鏈結控制器13-1內之繁忙訊號控制電路132-1以及ASPM L1計時器/控制器131-1」和NVMe控制器14所致之針對第1鏈結31之動作相同。
參照圖5以及圖6,針對在記憶體系統3中而2個的鏈結31以及32之鏈結功率狀態被作控制的具體性之例子進行說明。
圖5,係對於「第1鏈結31(埠0)從鏈結功率狀態L1而變遷至鏈結功率狀態L0,第2鏈結32(埠1)被維持為鏈結功率狀態L1」的動作之例作展示。在此動作之開始時間點處,第1鏈結31與第2鏈結32係均被設定為鏈結功率狀態L1(圖5中之(1))。另外,在此開始時間點處,藉由NVMe控制器14所被送出的繁忙訊號,係可為active,亦可為inactive。
第1主機2-1,係因應於產生了應被送訊至記憶體系統3處之資料一事,而實行用以使第1鏈結31變遷至鏈結功率狀態L0之變遷序列(圖5中之(2))。此變遷序列,例如,係包含有像是第1主機2-1與記憶體系統3之間之時脈訊號之同步一般的為了使第1鏈結31成為可利用的訓練(training)處理。
PCIe鏈結控制器13-1,係起因於變遷序列被實行一事,而使第1鏈結31變遷至鏈結功率狀態L0(圖5中之(3))。
第1主機2-1,在第1鏈結31變遷至鏈結功率狀態L0之後,係將包含有應被送訊至記憶體系統3處之資料的封包,經由第1鏈結31來送訊至記憶體系統3處(圖5中之(4))。
PCIe鏈結控制器13-1,係經由PCIe PHY12-1而收訊封包。PCIe鏈結控制器13-1,係對於所收訊的封包進行處理,並例如取得應被送出至NVMe控制器14處的資料。PCIe鏈結控制器13-1,係將所取得的資料對於NVMe控制器14作送出。
繁忙訊號控制電路132-1,係檢測出包含有從第1主機2-1經由第1鏈結31所傳輸至NVMe控制器14處之資料之封包(對象封包)(圖5中之(5))。繁忙訊號控制電路132-1,例如,當藉由PCIe鏈結控制器13-1所收訊的封包係包含有應被送出至NVMe控制器14處之資料的情況時,係將該封包作為對象封包而檢測出來。
NVMe控制器14,係接收藉由PCIe鏈結控制器13-1而被送出的封包內之資料。NVMe控制器14,係基於所接收了的資料,來判定是否預測到有經由鏈結31或32而來之封包之傳輸。於此,針對係預測到有經由鏈結31或32而來之封包之傳輸的情況作考慮。於此情況,NVMe控制器14,係將繁忙訊號設為active(圖5中之(6))。另外,當繁忙訊號係已身為active的情況時,NVMe控制器14,係將繁忙訊號維持於active。身為active之繁忙訊號,係藉由繁忙訊號控制電路132-1和繁忙訊號控制電路132-2而被作收訊。
繁忙訊號控制電路132-1,由於係檢測出了對象封包,因此,係將從NVMe控制器14所收訊了的繁忙訊號有效化(圖5中之(7-1))。亦即是,繁忙訊號控制電路132-1,係將繁忙訊號對於ASPM L1計時器/控制器131-1作送出。
ASPM L1計時器/控制器131-1,由於係收訊有繁忙訊號,因此,係將第1鏈結31維持為鏈結功率狀態L0(圖5中之(8-1))。
如此這般,繁忙訊號控制電路132-1,當檢測出了對象封包的情況時,由於係將繁忙訊號有效化,因此,藉由ASPM L1計時器/控制器131-1之動作,第1鏈結31係並不會變遷至鏈結功率狀態L1。故而,係能夠防止起因於第1鏈結31從鏈結功率狀態L1而回到鏈結功率狀態L0一事所導致的延遲。
另一方面,繁忙訊號控制電路132-2,由於係並未檢測出對象封包,因此,係將從NVMe控制器14所收訊了的繁忙訊號無效化(圖5中之(7-2))。亦即是,繁忙訊號控制電路132-2,係並不將繁忙訊號對於ASPM L1計時器/控制器131-2作送出。
ASPM L1計時器/控制器131-2,由於係並未收訊有繁忙訊號,因此,係將第2鏈結32維持為鏈結功率狀態L1(圖5中之(8-2))。
如此這般,繁忙訊號控制電路132-2,當並未檢測出對象封包的情況時,由於係將繁忙訊號無效化,因此,藉由ASPM L1計時器/控制器131-2之動作,第2鏈結32係並不會變遷至鏈結功率狀態L0。亦即是,第2鏈結32係被維持為鏈結功率狀態L1。故而,係能夠防止起因於「預測到了經由鏈結31或32而來之封包之傳輸的NVMe控制器14將繁忙訊號作送出」一事所導致的第2鏈結32之變遷至鏈結功率狀態L0的情形。故而,相較於並未設置有將繁忙訊號無效化之繁忙訊號控制電路132-2的情況,係能夠將使第2鏈結32被維持於鏈結功率狀態L1的期間作延長。藉由此,係能夠降低消耗電力。
圖6,係對於「第1鏈結31被維持為鏈結功率狀態L0,第2鏈結32從鏈結功率狀態L0而變遷至鏈結功率狀態L1」的動作之例作展示。在此動作之開始時間點處,第1鏈結31與第2鏈結32係均被設定為鏈結功率狀態L0,藉由NVMe控制器14而被送出的繁忙訊號係身為inactive(圖6中之(1))。
第1主機2-1,係將包含有應被送訊至記憶體系統3處之資料的封包,經由第1鏈結31來送訊至記憶體系統3處(圖6中之(2))。
PCIe鏈結控制器13-1,係經由PCIe PHY12-1而收訊封包。PCIe鏈結控制器13-1,係對於所收訊的封包進行處理,並例如取得應被送出至NVMe控制器14處的資料。PCIe鏈結控制器13-1,係將所取得的資料對於NVMe控制器14作送出。
繁忙訊號控制電路132-1,係檢測出包含有從第1主機2-1經由第1鏈結31所傳輸至NVMe控制器14處之資料之封包(對象封包)(圖6中之(3))。繁忙訊號控制電路132-1,例如,當藉由PCIe鏈結控制器13-1所收訊的封包係包含有應被送出至NVMe控制器14處之資料的情況時,係將該封包作為對象封包而檢測出來。
NVMe控制器14,係接收藉由PCIe鏈結控制器13-1而被送出的封包內之資料。NVMe控制器14,係基於所接收了的資料,來判定是否預測到有經由鏈結31或32而來之封包之傳輸。於此,針對係預測到有經由鏈結31或32而來之封包之傳輸的情況作考慮。於此情況,NVMe控制器14,係將繁忙訊號設為active(圖6中之(4))。被設為active之繁忙訊號,係藉由繁忙訊號控制電路132-1和繁忙訊號控制電路132-2而被作收訊。
繁忙訊號控制電路132-1,由於係檢測出了對象封包,因此,係將從NVMe控制器14所收訊了的繁忙訊號有效化(圖6中之(5-1))。亦即是,繁忙訊號控制電路132-1,係將繁忙訊號對於ASPM L1計時器/控制器131-1作送出。
ASPM L1計時器/控制器131-1,由於係收訊有繁忙訊號,因此,係將第1鏈結31維持為鏈結功率狀態L0(圖6中之(6-1))。
如此這般,繁忙訊號控制電路132-1,當檢測出了對象封包的情況時,由於係將繁忙訊號有效化,因此,藉由ASPM L1計時器/控制器131-1之動作,第1鏈結31係並不會變遷至鏈結功率狀態L1。故而,係能夠防止起因於第1鏈結31從鏈結功率狀態L1而回到鏈結功率狀態L0一事所導致的延遲。
另一方面,繁忙訊號控制電路132-2,由於係並未檢測出對象封包,因此,係將從NVMe控制器14所收訊了的繁忙訊號無效化(圖6中之(5-2))。亦即是,繁忙訊號控制電路132-2,係並不將繁忙訊號對於ASPM L1計時器/控制器131-2作送出。
ASPM L1計時器/控制器131-2,由於係並未收訊有繁忙訊號,因此,係維持針對「並不存在有經由第2鏈結32而被作傳輸的封包」之狀態所持續的時間之計測。之後,ASPM L1計時器/控制器131-2,當所計測到的時間係超過了控制器的情況時,係使第2鏈結32從鏈結功率狀態L0而變遷至鏈結功率狀態L1(圖6中之(6-2))。
如此這般,繁忙訊號控制電路132-2,當並未檢測出對象封包的情況時,由於係將繁忙訊號無效化,因此,ASPM L1計時器/控制器131-2,係能夠使第2鏈結32變遷至鏈結功率狀態L1。亦即是,就算是在NVMe控制器14預測到有經由鏈結31或32而來之封包傳輸並且將繁忙訊號作了送出的情況時,ASPM L1計時器/控制器131-2也能夠使第2鏈結32變遷至鏈結功率狀態L1。故而,相較於並未設置有將繁忙訊號無效化之繁忙訊號控制電路132-2的情況,由於使第2鏈結32變遷至鏈結功率狀態L1的可能性係提高,因此,係能夠降低消耗電力。
如同以上所作了說明一般,若依據本實施形態,則當被利用有用以進行封包傳輸之複數之鏈結的情況時,係能夠降低消耗電力。PCIe鏈結控制器13-1,係將第1主機2-1與記憶體系統3之間之第1鏈結31,設定為動作狀態和消耗電力為較動作狀態而更低的低消耗電力狀態之其中一者。PCIe鏈結控制器13-2,係將第2主機2-2與記憶體系統3之間之第2鏈結32,設定為動作狀態與低消耗電力狀態之其中一者。NVMe控制器14,係使用在經由第1鏈結31以及第2鏈結32所收訊的封包中所包含之資料,來處理針對非揮發性記憶體(例如,NAND型快閃記憶體5)之要求。NVMe控制器14,係當預測到有經由第1鏈結31與第2鏈結32之其中一者而來之封包之傳輸的情況時,對於PCIe鏈結控制器13-1和PCIe鏈結控制器13-2送出繁忙訊號。PCIe鏈結控制器13-1,當第1鏈結31係為低消耗電力狀態,並且並未經由第1鏈結31而收訊包含有被傳輸至NVMe控制器14處的資料之封包的情況時,係藉由將繁忙訊號無效化,來將第1鏈結31維持於低消耗電力狀態。PCIe鏈結控制器13-1,當第1鏈結31係為動作狀態,並且並未經由第1鏈結31而收訊包含有被傳輸至NVMe控制器14處的資料之封包的情況時,係藉由將繁忙訊號無效化,來因應於在第1期間中而不存在有經由第1鏈結31而被傳輸之封包一事,而使第1鏈結31變遷至低消耗電力狀態。
藉由上述構成,例如,當預測到有經由第2鏈結32而來之封包之傳輸的情況時,就算是NVMe控制器14將用以設定為動作狀態之繁忙訊號對於PCIe鏈結控制器13-1作送出,PCIe鏈結控制器13-1(更詳細而言,繁忙訊號控制電路132-1)亦係將繁忙訊號無效化。因此,係能夠將第1鏈結31之身為低消耗電力狀態的期間延長,並且能夠將使第1鏈結31變遷至低消耗電力狀態的可能性提高。故而,當被利用有用以進行封包傳輸之複數之鏈結的情況時,係能夠降低消耗電力。
在本實施形態中所記載之各種之功能的各者,係亦可藉由電路(處理電路)而被實現。在處理電路之例中,係包含有如同中央處理裝置(CPU)一般之被作了程式化的處理器。此處理器,係藉由實行被儲存於記憶體中之電腦程式(命令群),而實行所記載的各者之功能。此處理器,係亦可為包含有電性電路之微處理器。在處理電路之例中,係亦包含有數位訊號處理器(DSP)、特殊應用積體電路(ASIC)、微控制器、控制器、其他之電性電路零件。在本實施形態中所記載之CPU以外的其他之組件(component)之各者,係亦可藉由處理電路而被實現。
雖係針對本發明之數種實施形態作了說明,但是,該些實施形態,係僅為作為例子所提示者,而並非為對於本發明之範圍作限定者。此些之新穎的實施形態,係可藉由其他之各種形態來實施,在不脫離發明之要旨的範圍內,係可進行各種之省略、置換、變更。此些之實施形態或其變形,係亦被包含於發明之範圍或要旨中,並且亦被包含在申請專利範圍中所記載的發明及其均等範圍內。
1:資訊處理系統
2-1:第1主機
2-2:第2主機
21-1,21-2:PCIe PHY
3:記憶體系統
4:控制器
5:NAND型快閃記憶體
6:DRAM
11:主機I/F
12-1,12-2:PCIe PHY
13-1,13-2:PCIe鏈結控制器
14:NVMe控制器
15:CPU
16:NAND I/F
17:DRAM I/F
131-1,131-2:ASPM L1計時器/控制器
132-1,132-2:繁忙訊號控制電路
31:第1鏈結
32:第2鏈結
[圖1]係為對於包含有實施形態的記憶體系統之資訊處理系統之構成之例作展示之區塊圖。
[圖2]係為對於在第1比較例的記憶體系統中之與主機間之鏈結為被維持於通常動作狀態(鏈結功率狀態L0)之動作之例作展示之圖。
[圖3]係為對於在第2比較例的記憶體系統中之與2個的主機之各者間之鏈結為被維持於通常動作狀態之動作之例作展示之圖。
[圖4]係為針對在該實施形態的記憶體系統中之對於鏈結功率狀態作控制的構成之例作展示之區塊圖。
[圖5]係為對於在該實施形態的記憶體系統中之使其中一方之鏈結從低消耗電力狀態來變遷至通常動作狀態並使另外一方之鏈結維持於低消耗電力狀態(鏈結功率狀態L1)之動作之例作展示之圖。
[圖6]係為對於在該實施形態的記憶體系統中之使其中一方之鏈結維持於通常動作狀態並使另外一方之鏈結從通常動作狀態而變遷至低消耗電力狀態之動作之例作展示之圖。
2-1:第1主機
2-2:第2主機
21-1,21-2:PCIe PHY
3:記憶體系統
12-1,12-2:PCIe PHY
13-1,13-2:PCIe鏈結控制器
14:NVMe控制器
131-1,131-2:ASPM L1計時器/控制器
132-1,132-2:繁忙訊號控制電路
31:第1鏈結
32:第2鏈結
Claims (9)
- 一種記憶體系統,係為能夠經由序列介面而與複數之主機分別作連接之記憶體系統,並具備有:非揮發性記憶體;和第1控制器,係將第1主機與前述記憶體系統之間之第1鏈結,設定為動作狀態和消耗電力為較前述動作狀態而更低的低消耗電力狀態之其中一者;和第2控制器,係將第2主機與前述記憶體系統之間之第2鏈結,設定為前述動作狀態和前述低消耗電力狀態之其中一者;和第3控制器,係使用在經由前述第1鏈結以及前述第2鏈結所收訊的封包中所包含之資料,來對於針對前述非揮發性記憶體之要求進行處理,並當預測到有經由前述第1鏈結與前述第2鏈結之其中一者而來之封包之傳輸的情況時,對於前述第1控制器與前述第2控制器而送出繁忙訊號,前述第1控制器,當前述第1鏈結係為前述低消耗電力狀態,並且並未經由前述第1鏈結而收訊包含有被傳輸至前述第3控制器處的資料之封包的情況時,係藉由將前述繁忙訊號無效化,來將前述第1鏈結維持於前述低消耗電力狀態,當前述第1鏈結係為前述動作狀態,並且並未經由前述第1鏈結而收訊包含有被傳輸至前述第3控制器處的資料之封包的情況時,係藉由將前述繁忙訊號無效化,來因應於在第1期間中而不存在有經由前述第1鏈結而被傳輸 之封包一事,而使前述第1鏈結變遷至前述低消耗電力狀態。
- 如請求項1所記載之記憶體系統,其中,前述第2控制器,當前述第2鏈結係為前述低消耗電力狀態,並且經由前述第2鏈結而收訊了包含有被傳輸至前述第3控制器處的資料之封包的情況時,係因應於前述繁忙訊號,來使前述第2鏈結從前述低消耗電力狀態而變遷至前述動作狀態。
- 如請求項1或2所記載之記憶體系統,其中,前述第2控制器,當前述第2鏈結係為前述動作狀態,並且經由前述第2鏈結而收訊了包含有被傳輸至前述第3控制器處的資料之封包的情況時,係將前述繁忙訊號有效化,而將前述第2鏈結維持為前述動作狀態。
- 如請求項1或2所記載之記憶體系統,其中,前述第1控制器,當前述第1鏈結係為前述動作狀態,並且結束了由前述第3控制器所致之前述繁忙訊號之送出的情況時,係因應於在前述第1期間中而不存在有經由前述第1鏈結而被傳輸之封包一事,而使前述第1鏈結變遷至前述低消耗電力狀態。
- 如請求項1或2所記載之記憶體系統,其中,前述第1控制器,係包含有: 第1繁忙訊號控制電路,係當經由前述第1鏈結而收訊了包含有被傳輸至前述第3控制器處的資料之封包的情況時,將前述繁忙訊號有效化,並當並未經由前述第1鏈結而收訊包含有被傳輸至前述第3控制器處的資料之封包的情況時,將前述繁忙訊號無效化,前述第2控制器,係包含有:第2繁忙控制電路,係當經由前述第2鏈結而收訊了包含有被傳輸至前述第3控制器處的資料之封包的情況時,將前述繁忙訊號有效化,並當並未經由前述第2鏈結而收訊包含有被傳輸至前述第3控制器處的資料之封包的情況時,將前述繁忙訊號無效化。
- 如請求項1或2所記載之記憶體系統,其中,前述第1控制器,當經由前述第1鏈結而收訊了包含有被傳輸至前述第3控制器處的第1資料之封包的情況時,係將前述第1資料對於前述第3控制器而送出,前述第2控制器,當經由前述第2鏈結而收訊了包含有被傳輸至前述第3控制器處的第2資料之封包的情況時,係將前述第2資料對於前述第3控制器而送出,前述第3控制器,係因應於收訊了前述第1資料與前述第2資料之其中一者一事,而將前述繁忙訊號對於前述第1控制器與前述第2控制器作送出。
- 如請求項6所記載之記憶體系統,其中,前述第3控制器,當並未將針對從前述第1主機或前述 第2主機所受理了的所有的要求之回應對於前述第1主機或前述第2主機作回送的情況時,係將前述繁忙訊號對於前述第1控制器以及前述第2控制器作送出,當將針對從前述第1主機或前述第2主機所受理了的所有的要求之回應對於前述第1主機或前述第2主機而作了回送的情況時,係結束前述繁忙訊號之對於前述第1控制器以及前述第2控制器之送出。
- 如請求項6所記載之記憶體系統,其中,前述第1資料與前述第2資料之各者,係包含有針對前述非揮發性記憶體之寫入要求、讀出要求以及廠商自定義訊息(Vendor Defined Message,VDM)之其中一者。
- 如請求項1或2所記載之記憶體系統,其中,前述序列介面,係為準據於PCI Express規格之序列介面。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022014219A JP2023112427A (ja) | 2022-02-01 | 2022-02-01 | メモリシステム |
JP2022-014219 | 2022-02-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202333063A TW202333063A (zh) | 2023-08-16 |
TWI845926B true TWI845926B (zh) | 2024-06-21 |
Family
ID=
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100325463A1 (en) | 2009-06-23 | 2010-12-23 | Steven Lindsay | Method and System for Optimized Power Management for a Network Device Supporting PCI-E and Energy Efficient Ethernet |
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100325463A1 (en) | 2009-06-23 | 2010-12-23 | Steven Lindsay | Method and System for Optimized Power Management for a Network Device Supporting PCI-E and Energy Efficient Ethernet |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106909313B (zh) | 存储器***及控制方法 | |
US8751732B2 (en) | System and method for increasing capacity, performance, and flexibility of flash storage | |
US10209894B2 (en) | Memory system and method for controlling nonvolatile memory | |
TWI578156B (zh) | 非依電性隨機存取記憶磁碟 | |
US9128618B2 (en) | Non-volatile memory controller processing new request before completing current operation, system including same, and method | |
US11960749B2 (en) | Data migration method, host, and solid state disk | |
US20110107012A1 (en) | Non-volatile semiconductor memory comprising power fail circuitry for flushing write data in response to a power fail signal | |
TWI698749B (zh) | 資料儲存裝置與資料處理方法 | |
CN111108488B (zh) | 内存块回收方法和装置 | |
TWI828963B (zh) | 用於控制不同類型儲存單元的裝置及電腦程式產品 | |
KR20130112210A (ko) | 메모리 시스템 및 그것의 페이지 교체 방법 | |
TW202101227A (zh) | 閃存實體資源集合管理裝置及方法以及電腦程式產品 | |
TWI709074B (zh) | 用於計數器更新操作之設備及方法 | |
CN112306401A (zh) | 存储装置和数据存储方法 | |
TWI845926B (zh) | 記憶體系統 | |
KR102425470B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR20230071730A (ko) | 데이터 프로세싱 장치 및 그것의 동작 방법 | |
JP2023137515A (ja) | 半導体記憶装置 | |
TW202333063A (zh) | 記憶體系統 | |
US20240036731A1 (en) | Memory system and method of operating the same | |
KR20230071714A (ko) | 데이터 저장을 위한 방법 및 장치 | |
KR20240003648A (ko) | 메모리 시스템 및 그에 포함된 메모리 컨트롤러의 동작 방법 |