動態(tài)raid控制器功率管理的制作方法
【專利說明】
【背景技術(shù)】
[0001]由于在小體積內(nèi)放置大量生熱裝置,因此小型化文件服務(wù)器具有挑戰(zhàn)性的氣流和熱管理需求。此類小型化文件服務(wù)器的設(shè)計(jì)和操作中的關(guān)鍵挑戰(zhàn)中的一個是在其各種操作模式上管理電功率和產(chǎn)生的熱行為。
【附圖說明】
[0002]圖1是根據(jù)一個實(shí)施例的獨(dú)立磁盤冗余陣列(RAID)系統(tǒng)的框圖。
[0003]圖2是根據(jù)一個實(shí)施例的用于降低由存儲陣列中的存儲陣列控制器消耗的功率的方法的流程圖。
【具體實(shí)施方式】
[0004]—個實(shí)施例提供存儲系統(tǒng)中的數(shù)據(jù)存儲裝置檢測和控制器功率管理,其導(dǎo)致降低的功率需求、改善的系統(tǒng)熱特征、和較低的風(fēng)扇噪聲。實(shí)際上,一個實(shí)施例是用于降低由存儲陣列中的存儲陣列控制器消耗的功率的方法,該存儲陣列控制器包括多個物理通信接口。該方法可以包括監(jiān)控多個物理通信接口中的每個。對于多個物理通信接口中的每個,可以確定的是數(shù)據(jù)存儲裝置是否耦接到此。數(shù)據(jù)存儲裝置未耦接到的每個物理通信接口或耦接到已關(guān)斷的數(shù)據(jù)存儲裝置的每個物理通信接口可以單獨(dú)且獨(dú)立地關(guān)斷。這降低了控制器中的功率耗散和其溫度。
[0005]存儲陣列的一個實(shí)施例可以包括控制器板、耦接到控制器板的背板,該控制器板包括處理器,該背板包括微控制器。存儲陣列也可以包括存儲陣列控制器和多個數(shù)據(jù)存儲裝置,該存儲陣列控制器包括多個物理通信接口,該多個數(shù)據(jù)存儲裝置中的每個耦接到多個物理通信接口中的一個。根據(jù)一個實(shí)施例,存儲陣列控制器可以經(jīng)配置檢測數(shù)據(jù)存儲裝置在物理通信接口中的每個上的存在,并停用其上未檢測到數(shù)據(jù)存儲裝置的物理通信接口或已關(guān)斷的數(shù)據(jù)存儲裝置耦接到的物理通信接口。
[0006]圖1是根據(jù)一個實(shí)施例的獨(dú)立磁盤冗余陣列(RAID)系統(tǒng)的框圖。如所示,背板102可以包括一個或更多個驅(qū)動器電源104和微控制器106。背板102也可以包括存儲陣列(例如RAID)控制器114,其可以經(jīng)由物理通信接口(PHY) 103耦接到一個或更多個數(shù)據(jù)存儲裝置108和一個或更多個引導(dǎo)數(shù)據(jù)存儲裝置110。數(shù)據(jù)存儲裝置108、110可以包括硬盤驅(qū)動器、混合磁盤驅(qū)動器和固態(tài)存儲裝置。在一個示例性實(shí)施方式中,RAID控制器114可以由控制器板116上的處理器120使用PCIeX8通道接口經(jīng)例如PCIe協(xié)議118尋址。RAID控制器114可以支持例如八⑶個(例如SATA)物理通信接口 103。根據(jù)通信協(xié)議配置物理通信接口 103。在圖1所示的實(shí)施方式中,通信協(xié)議可以包括串行先進(jìn)技術(shù)附件(SATA)協(xié)議。
[0007]在背板102上的微控制器106 (在一個實(shí)施方式中其可以是16位TI MSP430獨(dú)立微控制器)可以經(jīng)配置使用例如在每個SATA接口上的數(shù)據(jù)存儲裝置接地引腳來監(jiān)控驅(qū)動器存在信號124 (其表示在物理通信接口中的每個上是否存在驅(qū)動器)。該微控制器106可以經(jīng)配置經(jīng)總線122(其可以配置為例如SMBus/I2C總線)與在控制器板116上的處理器120通信,以檢測并報告數(shù)據(jù)驅(qū)動器108中的每個和引導(dǎo)驅(qū)動器110中的每個(在一個實(shí)施方式中,每個為2.5”小型數(shù)據(jù)存儲裝置諸如硬盤驅(qū)動器(HDD))的存在。微控制器106可以被耦接到并控制驅(qū)動器電源104。驅(qū)動器電源104可以被耦接到數(shù)據(jù)存儲裝置108、110中的每個并可以經(jīng)配置選擇性關(guān)斷和接通驅(qū)動器108、110中的任一個。根據(jù)一個實(shí)施例,微控制器106可以經(jīng)配置控制驅(qū)動器電源104,以選擇性地關(guān)斷和接通在數(shù)據(jù)存儲裝置108、110中的每個中的一個或更多個電源電壓。例如,數(shù)據(jù)存儲裝置中的每個可能需要例如向驅(qū)動器的主軸電機(jī)供電的12伏電壓饋送,以及用于在驅(qū)動器的印刷電路板上的驅(qū)動器控制器和相關(guān)聯(lián)電子裝置的5伏電壓饋送二者。
[0008]在一些實(shí)施方式中,諸如RAID控制器的存儲陣列控制器可以包括比所需更多的數(shù)量(例如,八個)的物理通信接口。例如,如圖1所示,存儲服務(wù)器可以包括兩個引導(dǎo)驅(qū)動器110和四個數(shù)據(jù)驅(qū)動器108,它們在八個物理通信接口控制器114的情況下,留下兩個未使用的物理通信接口 103。存儲陣列控制器114(在一個實(shí)施方式中,例如由Marvell半導(dǎo)體有限公司制造)可能未被配置用于支持被置于在待用的低功率耗散狀態(tài)中,即使保持在連續(xù)復(fù)位中。實(shí)際上,在任何給定時間處,存儲服務(wù)器的存儲陣列控制器114中的所有的物理通信接口 103 (例如SATA)可以連續(xù)地進(jìn)行加電,即使可能不是所有的物理通信接口 103處于使用(即,沒有數(shù)據(jù)存儲裝置108、110耦接到它或它被關(guān)斷)中。
[0009]例如,存儲陣列控制器114可以吸取大約5瓦(W)的功率一即使在待用狀態(tài)中(事實(shí)上,控制器甚至可以沒有待用功率降低模式)。在待用狀態(tài)中,該功率消耗導(dǎo)致在存儲陣列控制器114處的芯片溫度升至高水平(例如,高于90°C ),這可以導(dǎo)致存儲陣列封裝中的一個或更多個風(fēng)扇被更快地驅(qū)動,以將所生成的熱轉(zhuǎn)移出存儲陣列控制器114。然而,提高風(fēng)扇轉(zhuǎn)速吸取更多功率并可以導(dǎo)致令人討厭的風(fēng)扇噪聲。最終,由于通過耦接到存儲陣列控制器114的散熱器的不足的空氣流,由此提高存儲陣列控制器114上的芯片溫度可以導(dǎo)致熱關(guān)機(jī)。此外,這種熱關(guān)機(jī)經(jīng)常不能通過更強(qiáng)驅(qū)動一個或更多個風(fēng)扇來避免,因?yàn)樽罡唢L(fēng)扇轉(zhuǎn)速可以是低于使生成的熱耗散必要的轉(zhuǎn)速。當(dāng)這種系統(tǒng)從待用中喚醒時,由于存儲陣列控制器114因?yàn)槠淙赃^熱而不能安全操作已經(jīng)被關(guān)斷,因此該系統(tǒng)經(jīng)常是不能運(yùn)行的。
[0010]一個實(shí)施例是用于控制器降低服務(wù)器中的功率耗散的方法,其根據(jù)驅(qū)動器是否存在于物理通信接口 103 (在圖1中示為物理層PHY (例如,用于每個接口 103的導(dǎo)體的接收對和發(fā)送對))上,通過選擇性啟用和停用存儲陣列控制器114的物理通信接口 103(例如SAS/SATA)中的一個或更多個來降低服務(wù)器中的功率耗散,以節(jié)省總體芯片功率耗散。根據(jù)一個實(shí)施例,選擇性啟用和停用可以基于經(jīng)驅(qū)動器連接器接收的物理驅(qū)動器存在檢測信號124,該驅(qū)動器連接器耦接到數(shù)據(jù)存儲裝置108、110中的每個和感測(例如,SAS/SATA)驅(qū)動器鏈接存在的存儲陣列控制器114。例如,該選擇性啟用和停用可以基于經(jīng)驅(qū)動器連接器接收的物理驅(qū)動器存在檢測信號124,該驅(qū)動器連接器耦接到數(shù)據(jù)存儲裝置108、110中的每個和在功率被施加到驅(qū)動器后的設(shè)定超時期間內(nèi)感測(例如SAS/SATA)驅(qū)動器鏈接存在的存儲陣列控制器114。實(shí)際上,存儲陣列控制器114可以經(jīng)配置使每個物理通信接口 103能夠在任何時間處單獨(dú)且獨(dú)立地關(guān)斷。
[0011]例如,在一個實(shí)施方式中,如果存儲陣列控制器114具有兩個未使用的物理通信接口 103,則這些未使用的物理通信接口 103可以被關(guān)斷,由此降低總芯片功率約0.625W,并因此降低芯片溫度。這(任選地與更強(qiáng)大的散熱器一起)可以引起芯片溫度降至可接受的水平,考慮到與待用模式更相容的風(fēng)扇轉(zhuǎn)速。
[0012]根據(jù)一個實(shí)施例,如果沒有驅(qū)動器存在信號124是可訪問的,則存儲陣列控制器114可以經(jīng)配置周期性地并且在一個實(shí)施例中循序地啟用其物理通信接口 103,以在設(shè)定超時時期內(nèi)輪詢鏈接的存在,并然后停用數(shù)據(jù)存儲裝置108、110未耦接到的任何物理通信接口 103的鏈接,由此節(jié)省芯片功率并降低熱耗散。根據(jù)一個實(shí)施例,如果在存儲陣列加電時或在復(fù)位前移除或替換數(shù)據(jù)存儲裝置,則微控制器106可以經(jīng)配置動態(tài)響應(yīng)于缺失數(shù)據(jù)存儲裝置108、110,經(jīng)總線122(例如,SMBus/I2C)發(fā)送消息回到控制器板116的處理器120,以關(guān)斷對應(yīng)的一個或更多個物理通信接口并因此管理物理通信接口功率。
[0013]根據(jù)一個實(shí)施例,對于沒有可用的微控制器106的數(shù)據(jù)存儲陣列,驅(qū)動器存在信號124的狀態(tài)可以由存儲陣列控制器114經(jīng)由通用輸入輸出端口(GP10)詮釋。該端口可編程為輸入并在驅(qū)動器存在信號124的狀態(tài)改變時生成用于控制器板116的處理器120的中斷。此外,存儲陣列可以經(jīng)配置當(dāng)一個或更多個物理通信接口 103不再使用時降低一個或更多個風(fēng)扇的轉(zhuǎn)速。進(jìn)而,該更低轉(zhuǎn)速降低了源自存儲陣列的可聽見的噪聲。
[0014]顯著地,實(shí)施例使得能夠?qū)崿F(xiàn)用于給定數(shù)據(jù)存儲裝置配置的動態(tài)最優(yōu)化的功率、用于存儲陣列控制器114的更低的熱特征,以及改善的風(fēng)扇平均故障間隔時間(MTBF)。
[0015]圖2是根據(jù)一個實(shí)施例的用于降低由存儲陣列中的存儲陣列控制器消耗的功率的方法的流程圖,該存儲陣列控制器包括多個物理通信接口。如其中所示,方框B21要求監(jiān)控存儲陣列控制器的每個物理通信接口。在方框B22中,對于受監(jiān)控的物理通信接口中的每個,確定數(shù)據(jù)存儲裝置(例如,HDD)是否耦接到它。最后,如在B23所示,數(shù)據(jù)存儲裝置未耦接到的存儲陣列控制器的每個物理通信接口可以被關(guān)斷,以降低存儲陣列控制器中的功率耗散并降低其溫度。
[0016]根據(jù)一個實(shí)施例,方框B21的監(jiān)控可以在將功率施加到存儲陣列后的預(yù)定時期內(nèi)執(zhí)行。確定