存儲(chǔ)器網(wǎng)絡(luò)的制作方法
【專(zhuān)利摘要】根據(jù)示例,存儲(chǔ)器網(wǎng)絡(luò)包括存儲(chǔ)器節(jié)點(diǎn)。存儲(chǔ)器節(jié)點(diǎn)中的每一個(gè)可以包括存儲(chǔ)器和控制邏輯??刂七壿嬁梢圆僮髯鳛橛蛇B接到存儲(chǔ)器網(wǎng)絡(luò)的處理器調(diào)用的存儲(chǔ)器訪(fǎng)問(wèn)的目的地的存儲(chǔ)器節(jié)點(diǎn),并可以操作作為路由器的存儲(chǔ)器節(jié)點(diǎn)以將數(shù)據(jù)或存儲(chǔ)器訪(fǎng)問(wèn)命令路由到存儲(chǔ)器網(wǎng)絡(luò)中的目的地。
【專(zhuān)利說(shuō)明】存儲(chǔ)器網(wǎng)絡(luò)
[0001]相關(guān)申請(qǐng)的交叉引用
[0002]本申請(qǐng)涉及Barron等人的標(biāo)題為“Memory Network to Route Memory Trafficand 1/0 Traffic”的專(zhuān)利申請(qǐng)(代理人案卷號(hào)83210550),以及涉及Li等人的標(biāo)題為“Memory Node Error Correct1n”的專(zhuān)利申請(qǐng)(代理人案卷號(hào)83210563),這兩者都與本申請(qǐng)同時(shí)提交,并轉(zhuǎn)讓給與本申請(qǐng)相同的受讓人。
【背景技術(shù)】
[0003]計(jì)算機(jī)網(wǎng)絡(luò)和系統(tǒng)已經(jīng)成為現(xiàn)代企業(yè)不可或缺的工具。如今幾乎每一個(gè)可以想象的主題的萬(wàn)億字節(jié)信息跨網(wǎng)絡(luò)存儲(chǔ)和訪(fǎng)問(wèn)。一些應(yīng)用(諸如,電信網(wǎng)絡(luò)應(yīng)用、移動(dòng)廣告、社交媒體應(yīng)用等)需要對(duì)它們數(shù)據(jù)的短響應(yīng)時(shí)間。結(jié)果,程序的新的基于存儲(chǔ)器的實(shí)現(xiàn)方式(諸如,內(nèi)存數(shù)據(jù)庫(kù))被采用,用于努力提供所期望的較快響應(yīng)時(shí)間。這些存儲(chǔ)器密集型程序主要依靠大量的直接尋址的物理存儲(chǔ)器(例如,隨機(jī)存取存儲(chǔ)器)來(lái)存儲(chǔ)萬(wàn)億字節(jié)的數(shù)據(jù),而不是傳統(tǒng)的硬盤(pán)驅(qū)動(dòng)器,以減少響應(yīng)時(shí)間。
【附圖說(shuō)明】
[0004]在以下描述中,參照以下附圖中所示的示例詳細(xì)描述各實(shí)施例。
[0005]圖1示出存儲(chǔ)器網(wǎng)絡(luò)。
[0006]圖2示出存儲(chǔ)器節(jié)點(diǎn)的框圖。
[0007]圖3示出堆疊的存儲(chǔ)器節(jié)點(diǎn)。
[0008]圖4示出具有多個(gè)堆疊存儲(chǔ)器的存儲(chǔ)器節(jié)點(diǎn)。
[0009]圖5示出存儲(chǔ)器網(wǎng)絡(luò)中的存儲(chǔ)器訪(fǎng)問(wèn)的流程圖。
【具體實(shí)施方式】
[0010]為了簡(jiǎn)單和說(shuō)明的目的,主要通過(guò)參考其示例描述實(shí)施例的原理。在下面的描述中,闡述許多具體細(xì)節(jié),以便提供實(shí)施例的透徹理解。清楚的是,可在不限于所有的具體細(xì)節(jié)的情況下實(shí)踐實(shí)施例。而且,實(shí)施例可以在各種組合中一起使用。
[0011]根據(jù)示例,存儲(chǔ)器網(wǎng)絡(luò)包括經(jīng)由高速互連(諸如,高速點(diǎn)對(duì)點(diǎn)鏈路)連接的存儲(chǔ)器節(jié)點(diǎn)。每個(gè)存儲(chǔ)器節(jié)點(diǎn)可以是包括存儲(chǔ)器控制器和用于存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器的存儲(chǔ)器子系統(tǒng)。存儲(chǔ)器節(jié)點(diǎn)還可以包括路由邏輯,用于向目的地路由數(shù)據(jù)或存儲(chǔ)器訪(fǎng)問(wèn)命令,該目的地可以是存儲(chǔ)器網(wǎng)絡(luò)中的另一個(gè)存儲(chǔ)器節(jié)點(diǎn)。存儲(chǔ)器網(wǎng)絡(luò)可以是用于處理器的存儲(chǔ)器子系統(tǒng)。例如,用于處理器的主存儲(chǔ)器控制器可以經(jīng)由點(diǎn)對(duì)點(diǎn)鏈路連接到存儲(chǔ)器網(wǎng)絡(luò)中的存儲(chǔ)器節(jié)點(diǎn)。主存儲(chǔ)器控制器可以在存儲(chǔ)器網(wǎng)絡(luò)的存儲(chǔ)器節(jié)點(diǎn)中存儲(chǔ)數(shù)據(jù)。而且,處理器可以實(shí)現(xiàn)存儲(chǔ)器頁(yè)面管理機(jī)制,以最小化存儲(chǔ)器訪(fǎng)問(wèn)的時(shí)延。因此,存儲(chǔ)器網(wǎng)絡(luò)可以既充當(dāng)可擴(kuò)展的高性能存儲(chǔ)器池,又充當(dāng)用于支持在存儲(chǔ)器網(wǎng)絡(luò)中的存儲(chǔ)器節(jié)點(diǎn)之間以及處理器和存儲(chǔ)器節(jié)點(diǎn)之間的數(shù)據(jù)傳輸?shù)木W(wǎng)絡(luò)。
[0012]存儲(chǔ)器網(wǎng)絡(luò)促進(jìn)存儲(chǔ)容量的擴(kuò)展性,并實(shí)現(xiàn)連接到存儲(chǔ)器網(wǎng)絡(luò)的系統(tǒng)間的容易數(shù)據(jù)共享。為了擴(kuò)展存儲(chǔ)器網(wǎng)絡(luò),附加的存儲(chǔ)器節(jié)點(diǎn)可被添加到存儲(chǔ)器網(wǎng)絡(luò),并例如經(jīng)由點(diǎn)對(duì)點(diǎn)鏈路連接到現(xiàn)有的存儲(chǔ)器節(jié)點(diǎn)。鑒于它的可擴(kuò)展性,存儲(chǔ)器網(wǎng)絡(luò)可支持大容量且高帶寬、大數(shù)據(jù)應(yīng)用,諸如內(nèi)存數(shù)據(jù)庫(kù)。而且,存儲(chǔ)器網(wǎng)絡(luò)可以通過(guò)利用解耦合的存儲(chǔ)器接口而支持異構(gòu)存儲(chǔ)器技術(shù)和動(dòng)態(tài)鏈路帶寬。解耦合的存儲(chǔ)器接口可以包括提供用于每個(gè)存儲(chǔ)器節(jié)點(diǎn)的存儲(chǔ)器控制器。
[0013]圖1示出存儲(chǔ)器網(wǎng)絡(luò)100的示例。處理器110a-b和主存儲(chǔ)器控制器llla-b例如使用點(diǎn)對(duì)點(diǎn)鏈路1I連接到存儲(chǔ)器網(wǎng)絡(luò)100。點(diǎn)對(duì)點(diǎn)鏈路是電線(xiàn)或鏈接兩個(gè)電路的其他連接介質(zhì)。在一個(gè)示例中,點(diǎn)對(duì)點(diǎn)鏈路連接僅僅兩個(gè)電路,其不像連接兩個(gè)以上的電路或設(shè)備的共享總線(xiàn)或縱橫開(kāi)關(guān)。連接到存儲(chǔ)器網(wǎng)絡(luò)100的處理器和主存儲(chǔ)器控制器(諸如,IlOa和Illa或IlOb和Illb)可以提供在同一芯片上,或可以提供在分離的芯片上。而且,比圖1所示更多或更少的處理器、主存儲(chǔ)器控制器和存儲(chǔ)器節(jié)點(diǎn)可用于存儲(chǔ)器網(wǎng)絡(luò)100中。而且,除了處理器110a-b,可使用存儲(chǔ)器的任何電路112可連接到存儲(chǔ)器網(wǎng)絡(luò)100。處理器110a-b中的每個(gè)運(yùn)行操作系統(tǒng)(OS),該操作系統(tǒng)可以執(zhí)行下文描述的頁(yè)面管理機(jī)制并執(zhí)行其他功能。
[0014]在存儲(chǔ)器網(wǎng)絡(luò)100內(nèi),存儲(chǔ)器節(jié)點(diǎn)130也可以經(jīng)由點(diǎn)對(duì)點(diǎn)鏈路131連接在一起,該點(diǎn)對(duì)點(diǎn)鏈路131是節(jié)點(diǎn)間點(diǎn)對(duì)點(diǎn)鏈路。每個(gè)存儲(chǔ)器節(jié)點(diǎn)可以操作為存儲(chǔ)器訪(fǎng)問(wèn)的目的地(如果要訪(fǎng)問(wèn)的數(shù)據(jù)存儲(chǔ)在該存儲(chǔ)器節(jié)點(diǎn)處的話(huà)),并可以操作為將存儲(chǔ)器訪(fǎng)問(wèn)命令轉(zhuǎn)發(fā)到其適當(dāng)?shù)哪康牡卮鎯?chǔ)器節(jié)點(diǎn)的路由器(如果要訪(fǎng)問(wèn)的數(shù)據(jù)在不同的存儲(chǔ)器節(jié)點(diǎn)處的話(huà))。例如,主存儲(chǔ)器控制器llla-b可向存儲(chǔ)器節(jié)點(diǎn)130發(fā)送存儲(chǔ)器訪(fǎng)問(wèn)命令(例如,讀取、寫(xiě)入、拷貝等),以執(zhí)行用于處理器110a-b的存儲(chǔ)器訪(fǎng)問(wèn)。接收命令的每個(gè)存儲(chǔ)器節(jié)點(diǎn)可以執(zhí)行命令(如果它是目的地的話(huà))或?qū)⒚盥酚傻狡淠康牡卮鎯?chǔ)器節(jié)點(diǎn),如下面進(jìn)一步描述的那樣。存儲(chǔ)器網(wǎng)絡(luò)100通過(guò)點(diǎn)對(duì)點(diǎn)鏈路131并通過(guò)根據(jù)需要添加存儲(chǔ)器節(jié)點(diǎn)的能力而提供存儲(chǔ)器可擴(kuò)展性,這滿(mǎn)足了大數(shù)據(jù)工作負(fù)荷的存儲(chǔ)器容量的要求。在存儲(chǔ)器網(wǎng)絡(luò)100中擴(kuò)大存儲(chǔ)器容量和級(jí)聯(lián)附加的存儲(chǔ)器節(jié)點(diǎn)一樣簡(jiǎn)單。此外,由于在存儲(chǔ)器網(wǎng)絡(luò)100中存儲(chǔ)器容量的擴(kuò)張是通過(guò)存儲(chǔ)器通道(例如,點(diǎn)對(duì)點(diǎn)鏈路131)而不是專(zhuān)用的I/O通道,所以它需要對(duì)硬件和操作系統(tǒng)的最小修改。
[0015]圖2示出存儲(chǔ)器節(jié)點(diǎn)200的框圖,存儲(chǔ)器節(jié)點(diǎn)200可表示圖1所示的存儲(chǔ)器節(jié)點(diǎn)130中的任何一個(gè)。存儲(chǔ)器節(jié)點(diǎn)200包括控制邏輯210和存儲(chǔ)器215。存儲(chǔ)器215可以是動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)或是易失性或非易失性的任何類(lèi)型的半導(dǎo)體存儲(chǔ)器??刂七壿?10可以包括存儲(chǔ)器控制器邏輯211和路由邏輯212。存儲(chǔ)器控制器邏輯211也被稱(chēng)為共位(co-located) 存儲(chǔ)器控制器或協(xié)同存儲(chǔ)器控制器??刂七壿?210 可以包括硬件和 / 或在存儲(chǔ)介質(zhì)上存儲(chǔ)并由硬件可執(zhí)行的機(jī)器可讀指令。存儲(chǔ)器控制器邏輯211和路由邏輯212可以由兩個(gè)單獨(dú)的硬件電路或同一電路來(lái)實(shí)現(xiàn)。存儲(chǔ)器控制器邏輯211執(zhí)行針對(duì)存儲(chǔ)器215的存儲(chǔ)器控制器的操作,包括存儲(chǔ)器訪(fǎng)問(wèn)操作。路由邏輯212接收存儲(chǔ)器訪(fǎng)問(wèn)命令,確定它是否是目的地,并如果它是目的地,則將存儲(chǔ)器訪(fǎng)問(wèn)命令發(fā)送到存儲(chǔ)器控制器邏輯211以供執(zhí)行。如果存儲(chǔ)器節(jié)點(diǎn)不是目的地,路由邏輯212朝目的地將存儲(chǔ)器訪(fǎng)問(wèn)命令發(fā)送到存儲(chǔ)器網(wǎng)絡(luò)中的下一跳。各種路由協(xié)議可用于路由。
[0016]在一個(gè)示例中,存儲(chǔ)器節(jié)點(diǎn)200可以是封裝在單個(gè)組件中的多個(gè)存儲(chǔ)器芯片的集合,諸如三維(3D)或2.層疊動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)。存儲(chǔ)器網(wǎng)絡(luò)100可使用堆疊存儲(chǔ)器或任何形式的共同封裝存儲(chǔ)器。圖3示出3D堆疊DRAM的示例。例如,3D堆疊DRAM 300可包括多層密集存儲(chǔ)器管芯301與基本邏輯層302。30堆疊DRAM 300可包括穿透硅通孔(TSV)通道,用于將來(lái)自存儲(chǔ)器管芯301中的DRAM的數(shù)據(jù)傳送到基本邏輯層302?;具壿媽?02包括圖1所示的控制邏輯210。
[0017]圖3示出單個(gè)堆疊存儲(chǔ)器節(jié)點(diǎn)示例。在另一示例中,存儲(chǔ)器節(jié)點(diǎn)200可以包括多個(gè)存儲(chǔ)器堆疊,以及每個(gè)存儲(chǔ)器堆疊經(jīng)由節(jié)點(diǎn)內(nèi)鏈路連接。例如,圖4示出可被用作存儲(chǔ)器網(wǎng)絡(luò)100中的存儲(chǔ)器節(jié)點(diǎn)的多堆疊存儲(chǔ)器節(jié)點(diǎn)400的框圖。在該示例中,存儲(chǔ)器節(jié)點(diǎn)400包括存儲(chǔ)器堆疊401-404,但是存儲(chǔ)器節(jié)點(diǎn)可具有少于四個(gè)或多于四個(gè)的存儲(chǔ)器堆疊。至少一個(gè)堆疊具有存儲(chǔ)器側(cè)協(xié)同存儲(chǔ)器控制器。例如,堆疊401包括基本邏輯層,諸如如圖3所示?;具壿媽涌砂刂七壿?10,其包括圖2的存儲(chǔ)器控制器邏輯211和路由邏輯212。其他堆疊可以或可以不包括控制邏輯。例如,堆疊404是沒(méi)有控制邏輯的普通DRAM堆疊,并且堆疊403具有控制邏輯。堆疊401 -404經(jīng)由節(jié)點(diǎn)內(nèi)鏈路405進(jìn)行連接。
[0018]存儲(chǔ)器網(wǎng)絡(luò)100包括在分層次的存儲(chǔ)器子系統(tǒng)中。例如,層次的較上等級(jí)包括用于處理器110a-b的存儲(chǔ)器子系統(tǒng),其可包括主存儲(chǔ)器控制器llla-b,并且存儲(chǔ)器節(jié)點(diǎn)130操作為用于主存儲(chǔ)器控制器11 la-b的存儲(chǔ)器。層次的較低等級(jí)包括每個(gè)存儲(chǔ)器節(jié)點(diǎn)中的存儲(chǔ)器子系統(tǒng)。圖2-4示出用于存儲(chǔ)器節(jié)點(diǎn)130的存儲(chǔ)器子系統(tǒng)的示例。而且,在所有等級(jí)的存儲(chǔ)器的拓?fù)涫庆`活的。拓?fù)涞氖纠梢园?D網(wǎng)格、環(huán)形、樹(shù)等。存儲(chǔ)器網(wǎng)絡(luò)100在圖1中被示為2D網(wǎng)格作為示例。
[0019]解耦合的存儲(chǔ)器接口用于該分層次的存儲(chǔ)器子系統(tǒng)。解耦合的存儲(chǔ)器接口例如意指:沒(méi)有用于所有存儲(chǔ)器子系統(tǒng)的單個(gè)中央存儲(chǔ)器控制器。替代地,存儲(chǔ)器控制器被分布,諸如用于處理器110a-b的主存儲(chǔ)器控制器llla-b和用于存儲(chǔ)器節(jié)點(diǎn)130的每個(gè)的存儲(chǔ)器控制器邏輯211(即,協(xié)同存儲(chǔ)器控制器)。而且,在存儲(chǔ)器網(wǎng)絡(luò)100中的存儲(chǔ)器訪(fǎng)問(wèn)請(qǐng)求是異步和非確定性的,因?yàn)獒槍?duì)存儲(chǔ)器訪(fǎng)問(wèn)請(qǐng)求接收響應(yīng)的時(shí)間可能不是預(yù)先確定的,這諸如歸因于存儲(chǔ)器網(wǎng)絡(luò)中存儲(chǔ)器訪(fǎng)問(wèn)請(qǐng)求的路由。這不同于常規(guī)的存儲(chǔ)器系統(tǒng),在常規(guī)的存儲(chǔ)器系統(tǒng)中,控制器典型地預(yù)期在某個(gè)數(shù)目的周期中對(duì)存儲(chǔ)器訪(fǎng)問(wèn)命令的響應(yīng)。
[0020]在由該分層次的存儲(chǔ)器子系統(tǒng)采用的解耦合的存儲(chǔ)器接口設(shè)計(jì)中,處理器的主存儲(chǔ)器控制器和存儲(chǔ)器節(jié)點(diǎn)130的協(xié)同存儲(chǔ)器控制器使用抽象協(xié)議進(jìn)行通信。例如,處理器側(cè)主存儲(chǔ)器控制器(例如,主存儲(chǔ)器控制器Illa或Illb)負(fù)責(zé)從處理器向存儲(chǔ)器網(wǎng)絡(luò)100發(fā)送高級(jí)存儲(chǔ)器訪(fǎng)問(wèn)命令(諸如,讀取、寫(xiě)入和塊拷貝),在存儲(chǔ)器網(wǎng)絡(luò)100中,它被路由到目的地存儲(chǔ)器節(jié)點(diǎn)。讀取、寫(xiě)入和塊拷貝命令比常規(guī)的RAS/CAS(基于行/列)存儲(chǔ)器命令簡(jiǎn)單得多,因?yàn)樘幚砥鱾?cè)主存儲(chǔ)器控制器不必知道存儲(chǔ)設(shè)備架構(gòu)的詳細(xì)細(xì)節(jié),也不必通過(guò)詳細(xì)的存儲(chǔ)器命令序列(諸如,激活、預(yù)充電等)控制存儲(chǔ)器定時(shí)。
[0021]在存儲(chǔ)器節(jié)點(diǎn)130,協(xié)同存儲(chǔ)器控制器解碼分組,以提取存儲(chǔ)器訪(fǎng)問(wèn)命令和施行可以實(shí)現(xiàn)的存儲(chǔ)器管理機(jī)制,以及來(lái)自本地存儲(chǔ)器的讀取、寫(xiě)入和塊拷貝命令的實(shí)際執(zhí)行。例如,在從處理器的主存儲(chǔ)器控制器接收讀取命令之后,在目的地存儲(chǔ)器節(jié)點(diǎn)的協(xié)同存儲(chǔ)器控制器從本地存儲(chǔ)器取得數(shù)據(jù),并通知主存儲(chǔ)器控制器該數(shù)據(jù)已準(zhǔn)備好得到,或?qū)⒕哂惺聞?wù)ID和請(qǐng)求的數(shù)據(jù)的分組直接發(fā)送回源主存儲(chǔ)器控制器。這些機(jī)制取決于在節(jié)點(diǎn)中采用的存儲(chǔ)器技術(shù)的特定類(lèi)型;例如,用于DRAM的存儲(chǔ)器側(cè)協(xié)同存儲(chǔ)器控制器不同于用于DRAM堆疊、用于閃速存儲(chǔ)器或用于其他形式的非易失性存儲(chǔ)器的協(xié)同存儲(chǔ)器控制器。
[0022]處理器側(cè)主存儲(chǔ)器控制器和存儲(chǔ)器節(jié)點(diǎn)協(xié)同存儲(chǔ)器控制器二者被允許協(xié)同調(diào)度存儲(chǔ)器請(qǐng)求,以改進(jìn)整個(gè)系統(tǒng)的性能。例如,處理器側(cè)主存儲(chǔ)器控制器可以用優(yōu)先級(jí)信息標(biāo)記存儲(chǔ)器請(qǐng)求,以表示必須盡快返回或可以延遲而不會(huì)引起系統(tǒng)性能降級(jí)的存儲(chǔ)器請(qǐng)求。存儲(chǔ)器節(jié)點(diǎn)協(xié)同存儲(chǔ)器控制器可以根據(jù)本地存儲(chǔ)器設(shè)備狀態(tài)(例如,打開(kāi)行或關(guān)閉行狀態(tài))重新調(diào)度存儲(chǔ)器請(qǐng)求。當(dāng)重新調(diào)度時(shí),在存儲(chǔ)器節(jié)點(diǎn)的協(xié)同存儲(chǔ)器控制器可將重新調(diào)度請(qǐng)求限制為在同一優(yōu)先級(jí)等級(jí)內(nèi)的請(qǐng)求,以確保具有較高優(yōu)先級(jí)的存儲(chǔ)器請(qǐng)求被首先處理,而不管本地存儲(chǔ)器設(shè)備狀態(tài)。
[0023]解耦合的存儲(chǔ)器接口設(shè)計(jì)顯著減少了用于管理通道、列(rank)和存儲(chǔ)體(bank)的處理器側(cè)存儲(chǔ)器控制器的復(fù)雜性,并且實(shí)現(xiàn)了具有高并行性的大規(guī)模存儲(chǔ)器網(wǎng)絡(luò)。而且,在解耦合的存儲(chǔ)器接口設(shè)計(jì)中,在存儲(chǔ)器節(jié)點(diǎn)的協(xié)同存儲(chǔ)器控制器可以自主地管理本地存儲(chǔ)器、隱藏介質(zhì)級(jí)細(xì)節(jié),以及提供高度抽象接口。例如,存儲(chǔ)器節(jié)點(diǎn)協(xié)同存儲(chǔ)器控制器可以在本地執(zhí)行DRAM的刷新,而不用涉及主存儲(chǔ)器控制器。因此,解耦合的存儲(chǔ)器接口可以支持異構(gòu)存儲(chǔ)器技術(shù),包括非易失性存儲(chǔ)器(NVM)和DRAM,并且每個(gè)存儲(chǔ)器節(jié)點(diǎn)中的協(xié)同存儲(chǔ)器控制器負(fù)責(zé)特定存儲(chǔ)器技術(shù)的定時(shí)和信令接口。因此,存儲(chǔ)器網(wǎng)絡(luò)100隔離對(duì)于每存儲(chǔ)器模塊協(xié)同存儲(chǔ)器控制器的介質(zhì)特定控制操作,這減少了復(fù)雜性同時(shí)在時(shí)延和帶寬方面提高了性會(huì)K。
[0024]此外,根據(jù)每個(gè)存儲(chǔ)器技術(shù)和系統(tǒng)配置的帶寬要求,鏈路帶寬可以通過(guò)在主存儲(chǔ)器控制器和存儲(chǔ)器節(jié)點(diǎn)協(xié)同存儲(chǔ)器控制器之間的協(xié)商進(jìn)行調(diào)整,以最好地利用可用存儲(chǔ)器帶寬,并且動(dòng)態(tài)供應(yīng)的鏈路帶寬(例如,通過(guò)為不同鏈路分配不同數(shù)目的通路(lane))可被實(shí)現(xiàn)。
[0025]存儲(chǔ)器網(wǎng)絡(luò)100具有用于存儲(chǔ)和檢索數(shù)據(jù)的不同的路徑和目的地;這導(dǎo)致通過(guò)網(wǎng)絡(luò)的訪(fǎng)問(wèn)以不同的時(shí)延被服務(wù)。例如,多個(gè)路徑可在任意源和目的地之間存在。連接到存儲(chǔ)器網(wǎng)絡(luò)100的處理器(諸如,處理器110a-b)可以基于時(shí)延和/或距離(例如,跳數(shù))將存儲(chǔ)器節(jié)點(diǎn)130分類(lèi)為近存儲(chǔ)器節(jié)點(diǎn)或遠(yuǎn)存儲(chǔ)器節(jié)點(diǎn)。為了確??蓴U(kuò)展存儲(chǔ)器網(wǎng)絡(luò)100的高性能,可以實(shí)現(xiàn)提供簡(jiǎn)單性和高性能之間的權(quán)衡的頁(yè)面管理機(jī)制。
[0026]在一個(gè)示例中,全局存儲(chǔ)器地址空間可使用高速緩存塊粒度或頁(yè)面級(jí)粒度跨所有存儲(chǔ)器節(jié)點(diǎn)均勻分布。然后,存儲(chǔ)器訪(fǎng)問(wèn)直接路由到合適的存儲(chǔ)器節(jié)點(diǎn)。例如,包含所有存儲(chǔ)器節(jié)點(diǎn)130的全局統(tǒng)一存儲(chǔ)器地址空間由連接到存儲(chǔ)器網(wǎng)絡(luò)100的所有處理器使用。以這種方式,可以不要求對(duì)處理器硬件或OS的修改,并且可以擴(kuò)張存儲(chǔ)器空間。如果相同地對(duì)待近和遠(yuǎn)存儲(chǔ)器,則可能導(dǎo)致對(duì)于具有大存儲(chǔ)器覆蓋區(qū)(footprint)的工作負(fù)荷的性能降級(jí),這是因?yàn)樵L(fǎng)問(wèn)遠(yuǎn)存儲(chǔ)器單元需要較長(zhǎng)時(shí)延。當(dāng)重復(fù)訪(fǎng)問(wèn)遠(yuǎn)存儲(chǔ)器區(qū)域時(shí),性能降級(jí)可能變得更加嚴(yán)重。
[0027]取代相同地對(duì)待近和遠(yuǎn)存儲(chǔ)器的是,OS(或管理程序或應(yīng)用軟件)可以智能地在近存儲(chǔ)器中映射熱存儲(chǔ)器頁(yè)面(被經(jīng)常訪(fǎng)問(wèn)的存儲(chǔ)器頁(yè)面)和將冷存儲(chǔ)器頁(yè)面(很少被訪(fǎng)問(wèn)的存儲(chǔ)器頁(yè)面)映射到遠(yuǎn)存儲(chǔ)器。
[0028]在可實(shí)現(xiàn)的頁(yè)面管理機(jī)制的另一示例中,類(lèi)似地對(duì)待遠(yuǎn)存儲(chǔ)器,以從次級(jí)存儲(chǔ)設(shè)備(諸如,硬盤(pán))尋呼。然而,在這種情況下,近存儲(chǔ)器和遠(yuǎn)存儲(chǔ)器二者共享相同的物理存儲(chǔ)器地址空間。例如,該系統(tǒng)可以建立通過(guò)其近和遠(yuǎn)存儲(chǔ)器地址可以被分別分配在存儲(chǔ)器地址空間的底部和頂部的約定。在存儲(chǔ)器地址空間中的每個(gè)存儲(chǔ)器地址被指示為近的或遠(yuǎn)的。對(duì)于大數(shù)據(jù)工作負(fù)荷或其覆蓋區(qū)超出近存儲(chǔ)器容量的其他應(yīng)用,可以執(zhí)行頁(yè)面管理,以取得和重新定位遠(yuǎn)存儲(chǔ)器頁(yè)面到近存儲(chǔ)器。
[0029]信號(hào)通知給執(zhí)行存儲(chǔ)器訪(fǎng)問(wèn)的處理器的“遠(yuǎn)程存儲(chǔ)器中”的頁(yè)面錯(cuò)誤可用于將頁(yè)面帶到近存儲(chǔ)器(如果確定所請(qǐng)求的頁(yè)面不是已經(jīng)在近存儲(chǔ)器中),并如果需要?jiǎng)t觸發(fā)近存儲(chǔ)器和遠(yuǎn)存儲(chǔ)器之間的頁(yè)面交換。例如,如果需要執(zhí)行頁(yè)面交換,則可添加額外的比特,以指示“遠(yuǎn)程存儲(chǔ)器中”的頁(yè)面錯(cuò)誤。多個(gè)比特也可用于將存儲(chǔ)器空間劃分成具有到處理器不同距離的多個(gè)區(qū)域?!斑h(yuǎn)程存儲(chǔ)器中”的頁(yè)面錯(cuò)誤不同于由處理器的虛擬存儲(chǔ)器系統(tǒng)正常實(shí)現(xiàn)的標(biāo)準(zhǔn)頁(yè)面錯(cuò)誤,在所述標(biāo)準(zhǔn)頁(yè)面錯(cuò)誤的情況中,所請(qǐng)求的存儲(chǔ)器頁(yè)面在硬盤(pán)上而不是在存儲(chǔ)器網(wǎng)絡(luò)100上。一有“在遠(yuǎn)程存儲(chǔ)器中”的頁(yè)面錯(cuò)誤,OS就可以發(fā)起近和遠(yuǎn)存儲(chǔ)區(qū)域之間的頁(yè)面交換操作。
[0030]為了維持近存儲(chǔ)器和遠(yuǎn)存儲(chǔ)器之間的存儲(chǔ)器一致性和連貫性,由OS維持的每個(gè)頁(yè)表?xiàng)l目包括有效比特、臟比特和額外的待決替換比特。OS對(duì)于近存儲(chǔ)器區(qū)域維持待決替換頁(yè)面隊(duì)列。當(dāng)有“在遠(yuǎn)程存儲(chǔ)器中”的頁(yè)面錯(cuò)誤時(shí),首先檢查待決替換頁(yè)面隊(duì)列,查看是否有用于遠(yuǎn)存儲(chǔ)器頁(yè)面的現(xiàn)有條目。如果有,則指示當(dāng)前頁(yè)面錯(cuò)誤是錯(cuò)誤后的錯(cuò)誤(fault-after-fault),并因此當(dāng)前“在遠(yuǎn)程存儲(chǔ)器中”的頁(yè)面錯(cuò)誤與現(xiàn)有的頁(yè)面錯(cuò)誤組合。如果沒(méi)有,則選擇來(lái)自近存儲(chǔ)器頁(yè)表的條目用于替換,并且新的請(qǐng)求被添加到待決替換頁(yè)面隊(duì)列。OS還可以維持針對(duì)近存儲(chǔ)器頁(yè)面的最近最少使用(LRU)替換(也可以使用其他替換策略)列表,以選擇用于頁(yè)面調(diào)出替換的犧牲者。一旦對(duì)應(yīng)頁(yè)面被選擇為替換候選,頁(yè)表?xiàng)l目中的待決替換比特被設(shè)置。這允許主存儲(chǔ)器控制器中待決的收回頁(yè)面的任何先前存儲(chǔ)器事務(wù)繼續(xù),直到實(shí)際替換發(fā)生。當(dāng)要被替換的頁(yè)面到達(dá)待決更換頁(yè)面隊(duì)列的頭部時(shí),實(shí)際的頁(yè)面替換/寫(xiě)回發(fā)生。有效比特在數(shù)據(jù)傳送期間標(biāo)志為假,以防止來(lái)自其他處理器的意外頁(yè)面訪(fǎng)問(wèn)。
[0031]—旦OS發(fā)起頁(yè)面交換,OS可以執(zhí)行上下文切換,而不用等待頁(yè)面交換完成。OS可以使用現(xiàn)有策略,以選擇被頁(yè)面調(diào)出的犧牲存儲(chǔ)器頁(yè)面,并且在源和目的地存儲(chǔ)器節(jié)點(diǎn)的存儲(chǔ)器節(jié)點(diǎn)協(xié)同存儲(chǔ)器控制器使用這兩個(gè)存儲(chǔ)器節(jié)點(diǎn)之間的直接存儲(chǔ)器訪(fǎng)問(wèn)執(zhí)行實(shí)際的頁(yè)面交換。一旦頁(yè)面交換完成,對(duì)相同頁(yè)面的后續(xù)訪(fǎng)問(wèn)從近存儲(chǔ)器被服務(wù),其顯著減少存儲(chǔ)器訪(fǎng)問(wèn)時(shí)延并改進(jìn)系統(tǒng)性能。在數(shù)據(jù)管理中支持不同的頁(yè)面大小。較小的頁(yè)面(例如64KB)可以減少由頁(yè)面迀移引起的存儲(chǔ)器頁(yè)面阻塞時(shí)間,而大存儲(chǔ)器頁(yè)面(例如1GB)可以以良好的空間局部性改進(jìn)應(yīng)用的性能。
[0032]可實(shí)現(xiàn)的頁(yè)面管理機(jī)制的另一示例是用于近-遠(yuǎn)存儲(chǔ)器的高速緩存樣式管理機(jī)制,其中近存儲(chǔ)器可以作為用于遠(yuǎn)存儲(chǔ)器節(jié)點(diǎn)的“高速緩存”工作。在該示例中,在相同存儲(chǔ)器網(wǎng)絡(luò)中存在“緩存的”存儲(chǔ)器頁(yè)面的兩個(gè)副本,一個(gè)在近存儲(chǔ)器中以及一個(gè)在遠(yuǎn)存儲(chǔ)器中。在一定程度上,高速緩存樣式管理機(jī)制是上面描述的采用“在遠(yuǎn)程存儲(chǔ)器中”的頁(yè)面錯(cuò)誤的示例的變型,但用系統(tǒng)性能交換存儲(chǔ)器容量。具體地,高速緩存樣式管理維持緩存的頁(yè)面的兩個(gè)包含式拷貝,因此減少了總的可用存儲(chǔ)器容量。另一方面,當(dāng)從近存儲(chǔ)器中收回時(shí),干凈的緩存的頁(yè)面可以簡(jiǎn)單地被丟棄而不是被送回遠(yuǎn)存儲(chǔ)器,這可以節(jié)省存儲(chǔ)器帶寬并減少歸因于頁(yè)面迀移的存儲(chǔ)器阻塞時(shí)間,并因此減少存儲(chǔ)器時(shí)延和改進(jìn)整個(gè)系統(tǒng)的性能。在該示例中也可使用相同OS數(shù)據(jù)結(jié)構(gòu)(例如,頁(yè)表、地址映射、替換頁(yè)列表等)。主要區(qū)別在于:干凈的頁(yè)面被丟棄而不被寫(xiě)回到遠(yuǎn)存儲(chǔ)器區(qū)域。
[0033]替代如在上面示例中所描述的按需執(zhí)行存儲(chǔ)器頁(yè)面迀移的是,頁(yè)面管理機(jī)制的另一示例主動(dòng)在遠(yuǎn)近存儲(chǔ)器之間迀移頁(yè)面。在主動(dòng)的熱-冷頁(yè)面管理方法中,監(jiān)視存儲(chǔ)器頁(yè)面訪(fǎng)問(wèn)模式。在執(zhí)行的每個(gè)被監(jiān)視間隔中,熱和冷頁(yè)面被標(biāo)識(shí)為最近最多使用(MRU)和LRU頁(yè)面。在基于軟件的方法中,由OS管理的計(jì)數(shù)器(S卩,在現(xiàn)代處理器中使用的偽LRU計(jì)數(shù)器和多隊(duì)列計(jì)數(shù)器)用于確定在近存儲(chǔ)器和遠(yuǎn)存儲(chǔ)器中的LRU頁(yè)面和MRU頁(yè)面。OS周期性地監(jiān)視熱/冷頁(yè)面,發(fā)送針對(duì)近-冷和遠(yuǎn)-熱頁(yè)面的交換指令,并然后更新頁(yè)表。主動(dòng)熱-冷頁(yè)面管理對(duì)于其中存儲(chǔ)器訪(fǎng)問(wèn)對(duì)于存儲(chǔ)器頁(yè)面不是均勻的情況下特別有效。基于間隔的主動(dòng)熱-冷頁(yè)面管理可以保持從遠(yuǎn)程存儲(chǔ)器帶來(lái)熱頁(yè)面,并從近存儲(chǔ)器收回冷頁(yè)面。在其中存儲(chǔ)器側(cè)協(xié)同存儲(chǔ)器控制器在存儲(chǔ)器網(wǎng)絡(luò)中可以自主發(fā)出存儲(chǔ)器訪(fǎng)問(wèn)的情況中,按需頁(yè)面管理機(jī)制的實(shí)現(xiàn)也可分布和卸載到存儲(chǔ)器側(cè)協(xié)同存儲(chǔ)器控制器,使得它們可以為處理器解除顯式地管理頁(yè)面交換的一些細(xì)節(jié)。
[0034]圖5示出根據(jù)示例的用于在存儲(chǔ)器網(wǎng)絡(luò)100中執(zhí)行存儲(chǔ)器訪(fǎng)問(wèn)的方法500。在該示例中,存儲(chǔ)器訪(fǎng)問(wèn)用于讀取操作。在501,連接到存儲(chǔ)器網(wǎng)絡(luò)100的處理器(諸如,圖1所示的處理器IlOa)確定要從存儲(chǔ)器網(wǎng)絡(luò)100讀取的數(shù)據(jù)的地址。在一個(gè)示例中,該地址是包括存儲(chǔ)器網(wǎng)絡(luò)100中的所有存儲(chǔ)器單元的全局地址空間中的地址。如果處理器IlOa正在使用并入近和遠(yuǎn)存儲(chǔ)器的頁(yè)面管理機(jī)制,諸如如上所述的,則如果包含所期望數(shù)據(jù)的頁(yè)面在遠(yuǎn)存儲(chǔ)器中,那么它可以從遠(yuǎn)存儲(chǔ)器移動(dòng)到近存儲(chǔ)器。
[0035]在502,處理器IlOa生成具有讀取請(qǐng)求的分組,以發(fā)送到存儲(chǔ)器網(wǎng)絡(luò)100中的目的地節(jié)點(diǎn)。該分組可以包括處理器IlOa的源地址和目的地地址以及該分組用于讀取操作的指示。該分組可以包括要從存儲(chǔ)器網(wǎng)絡(luò)100讀取的數(shù)據(jù)的全局地址。在步驟503,存儲(chǔ)器控制器Illa(例如,處理器IlOa的主存儲(chǔ)器控制器)將分組發(fā)送到存儲(chǔ)器網(wǎng)絡(luò)100中的存儲(chǔ)器節(jié)點(diǎn)。
[0036]在504,在存儲(chǔ)器網(wǎng)絡(luò)100中的存儲(chǔ)器節(jié)點(diǎn)接收分組。圖2中示出的用于存儲(chǔ)器節(jié)點(diǎn)200的路由邏輯212可以在存儲(chǔ)器網(wǎng)絡(luò)100中發(fā)送和接收分組。在505,存儲(chǔ)器節(jié)點(diǎn)確定它是否是分組的目的地。例如,存儲(chǔ)器節(jié)點(diǎn)確定它是否存儲(chǔ)了針對(duì)分組中指定的全局地址的數(shù)據(jù)。圖2中所示的控制邏輯210可包括數(shù)據(jù)存儲(chǔ)設(shè)備,其存儲(chǔ)指派給存儲(chǔ)器節(jié)點(diǎn)的全局地址和用于本地存儲(chǔ)器訪(fǎng)問(wèn)的任何表。存儲(chǔ)器控制器邏輯211可確定存儲(chǔ)器節(jié)點(diǎn)是否被指派給分組中的全局存儲(chǔ)器地址。
[0037]如果存儲(chǔ)器節(jié)點(diǎn)是目的地,在506,存儲(chǔ)器節(jié)點(diǎn)可以從它的本地存儲(chǔ)器檢索數(shù)據(jù),以發(fā)送到處理器110a。例如,存儲(chǔ)器控制器邏輯211確定對(duì)應(yīng)于分組中的全局地址的圖2中所示的存儲(chǔ)器215的本地地址,并從本地存儲(chǔ)器215檢索數(shù)據(jù),以發(fā)送到處理器110a。
[0038]在507,存儲(chǔ)器控制器邏輯211生成具有檢索到的數(shù)據(jù)的分組,并且在508,路由邏輯212經(jīng)由存儲(chǔ)器網(wǎng)絡(luò)100將分組發(fā)送到處理器110a。
[0039]在509,如果存儲(chǔ)器節(jié)點(diǎn)確定它不是分組的目的地,存儲(chǔ)器節(jié)點(diǎn)確定用于發(fā)送分組的下一跳。例如,路由邏輯212可以包括路由表,其基于分組中的源和/或目的地地址標(biāo)識(shí)下一跳??梢允褂萌魏温酚蓞f(xié)議。在510,存儲(chǔ)器節(jié)點(diǎn)將分組發(fā)送到其下一跳。步驟509和510可以重復(fù),直到分組到達(dá)存儲(chǔ)器網(wǎng)絡(luò)100中的其目的地存儲(chǔ)器節(jié)點(diǎn)。
[0040]類(lèi)似地執(zhí)行寫(xiě)入操作。在數(shù)據(jù)被寫(xiě)入目的地存儲(chǔ)器節(jié)點(diǎn)中的本地存儲(chǔ)器之后,存儲(chǔ)器節(jié)點(diǎn)將確認(rèn)發(fā)送到請(qǐng)求寫(xiě)入操作的處理器,以指示數(shù)據(jù)已被寫(xiě)入存儲(chǔ)器。在另一示例中,存儲(chǔ)器節(jié)點(diǎn)將數(shù)據(jù)寫(xiě)入其本地存儲(chǔ)器,而不發(fā)送確認(rèn)到處理器,并且處理器假定數(shù)據(jù)被可靠地寫(xiě)入。
[0041]雖然已經(jīng)參考示例描述了實(shí)施例,但是可以對(duì)所描述的實(shí)施例做出各種修改,而不脫離所要求保護(hù)特征的范圍。
【主權(quán)項(xiàng)】
1.一種存儲(chǔ)器網(wǎng)絡(luò),包括: 存儲(chǔ)器節(jié)點(diǎn),其中,每個(gè)存儲(chǔ)器節(jié)點(diǎn)包括存儲(chǔ)器和控制邏輯; 節(jié)點(diǎn)間點(diǎn)對(duì)點(diǎn)鏈路,其將存儲(chǔ)器節(jié)點(diǎn)彼此連接;以及 點(diǎn)對(duì)點(diǎn)鏈路,其將處理器的存儲(chǔ)器控制器連接到存儲(chǔ)器節(jié)點(diǎn)之一, 其中,每個(gè)存儲(chǔ)器節(jié)點(diǎn)的控制邏輯要執(zhí)行由處理器的存儲(chǔ)器控制器調(diào)用的存儲(chǔ)器訪(fǎng)問(wèn),并且要將數(shù)據(jù)或存儲(chǔ)器訪(fǎng)問(wèn)命令路由到所述存儲(chǔ)器網(wǎng)絡(luò)中的目的地。2.如權(quán)利要求1所述的存儲(chǔ)器網(wǎng)絡(luò),其中,存儲(chǔ)器節(jié)點(diǎn)的控制邏輯包括: 存儲(chǔ)器控制器邏輯,用于針對(duì)存儲(chǔ)器節(jié)點(diǎn)執(zhí)行存儲(chǔ)器上的存儲(chǔ)器訪(fǎng)問(wèn);以及 路由邏輯,用于接收來(lái)自另一存儲(chǔ)器節(jié)點(diǎn)或處理器的存儲(chǔ)器控制器的存儲(chǔ)器訪(fǎng)問(wèn)命令,確定存儲(chǔ)器節(jié)點(diǎn)是否是存儲(chǔ)器訪(fǎng)問(wèn)命令的目的地,并且如果存儲(chǔ)器節(jié)點(diǎn)不是目的地,則朝目的地將數(shù)據(jù)或存儲(chǔ)器訪(fǎng)問(wèn)命令轉(zhuǎn)發(fā)到存儲(chǔ)器網(wǎng)絡(luò)中的下一跳。3.如權(quán)利要求1所述的存儲(chǔ)器網(wǎng)絡(luò),其中,處理器的存儲(chǔ)器控制器要優(yōu)先化去往存儲(chǔ)器節(jié)點(diǎn)的存儲(chǔ)器訪(fǎng)問(wèn)請(qǐng)求,并用其優(yōu)先級(jí)標(biāo)記每個(gè)存儲(chǔ)器訪(fǎng)問(wèn)請(qǐng)求,并且存儲(chǔ)器節(jié)點(diǎn)要根據(jù)它們的優(yōu)先級(jí)執(zhí)行所請(qǐng)求的存儲(chǔ)器訪(fǎng)問(wèn)。4.如權(quán)利要求1所述的存儲(chǔ)器網(wǎng)絡(luò),其中,存儲(chǔ)器節(jié)點(diǎn)的控制邏輯要根據(jù)存儲(chǔ)器節(jié)點(diǎn)的存儲(chǔ)器的本地存儲(chǔ)器設(shè)備狀態(tài),調(diào)度來(lái)自處理器的存儲(chǔ)器控制器的存儲(chǔ)器請(qǐng)求的存儲(chǔ)器訪(fǎng)問(wèn)的執(zhí)行。5.如權(quán)利要求1所述的存儲(chǔ)器網(wǎng)絡(luò),其中,控制邏輯要調(diào)度具有相同標(biāo)記的優(yōu)先級(jí)等級(jí)的存儲(chǔ)器訪(fǎng)問(wèn)的執(zhí)行,以確保具有較高優(yōu)先級(jí)的存儲(chǔ)器訪(fǎng)問(wèn)被首先處理,而不管本地存儲(chǔ)器設(shè)備狀態(tài)。6.如權(quán)利要求1所述的存儲(chǔ)器網(wǎng)絡(luò),其中,處理器要根據(jù)由針對(duì)處理器的存儲(chǔ)器節(jié)點(diǎn)執(zhí)行的存儲(chǔ)器訪(fǎng)問(wèn)的時(shí)延或距離,將與存儲(chǔ)器節(jié)點(diǎn)相關(guān)聯(lián)的地址歸類(lèi)為近存儲(chǔ)器或遠(yuǎn)存儲(chǔ)器。7.如權(quán)利要求6所述的存儲(chǔ)器網(wǎng)絡(luò),其中,處理器要確定針對(duì)要執(zhí)行的存儲(chǔ)器訪(fǎng)問(wèn)的數(shù)據(jù)是在近存儲(chǔ)器模式的地址中還是在遠(yuǎn)存儲(chǔ)器節(jié)點(diǎn)的地址中,并且如果數(shù)據(jù)是在遠(yuǎn)存儲(chǔ)器節(jié)點(diǎn)中,則將數(shù)據(jù)移動(dòng)到近存儲(chǔ)器節(jié)點(diǎn)以執(zhí)行存儲(chǔ)器訪(fǎng)問(wèn)。8.如權(quán)利要求7所述的存儲(chǔ)器網(wǎng)絡(luò),其中,如果沒(méi)有足夠的容量將針對(duì)存儲(chǔ)器訪(fǎng)問(wèn)的數(shù)據(jù)存儲(chǔ)在近存儲(chǔ)器中,則處理器要將來(lái)自近存儲(chǔ)器節(jié)點(diǎn)的數(shù)據(jù)交換到遠(yuǎn)存儲(chǔ)器節(jié)點(diǎn)。9.如權(quán)利要求6所述的存儲(chǔ)器網(wǎng)絡(luò),其中,處理器要預(yù)測(cè)將來(lái)的存儲(chǔ)器訪(fǎng)問(wèn),并將針對(duì)所預(yù)測(cè)的將來(lái)的存儲(chǔ)器訪(fǎng)問(wèn)的數(shù)據(jù)拷貝到近存儲(chǔ)器節(jié)點(diǎn),其中,拷貝到近存儲(chǔ)器節(jié)點(diǎn)的數(shù)據(jù)也被存儲(chǔ)在遠(yuǎn)存儲(chǔ)器節(jié)點(diǎn)中。10.如權(quán)利要求6所述的存儲(chǔ)器網(wǎng)絡(luò),其中,處理器要在近-遠(yuǎn)頁(yè)面交換期間確定在近存儲(chǔ)器模式中的數(shù)據(jù)是否是臟的,并且僅臟數(shù)據(jù)頁(yè)面在其從近存儲(chǔ)器節(jié)點(diǎn)收回時(shí)被發(fā)送回遠(yuǎn)存儲(chǔ)器節(jié)點(diǎn)。11.一種在存儲(chǔ)器網(wǎng)絡(luò)中的存儲(chǔ)器節(jié)點(diǎn),所述存儲(chǔ)器節(jié)點(diǎn)包括:控制邏輯;以及存儲(chǔ)器,其中,控制邏輯要操作作為由處理器的存儲(chǔ)器控制器調(diào)用的存儲(chǔ)器訪(fǎng)問(wèn)的目的地的存儲(chǔ)器節(jié)點(diǎn),并要操作作為路由器的存儲(chǔ)器節(jié)點(diǎn)以將存儲(chǔ)器訪(fǎng)問(wèn)命令路由到存儲(chǔ)器網(wǎng)絡(luò)中的目的地。12.如權(quán)利要求11所述的存儲(chǔ)器節(jié)點(diǎn),其中,所述存儲(chǔ)器節(jié)點(diǎn)的控制邏輯包括: 存儲(chǔ)器控制器邏輯,用于針對(duì)所述存儲(chǔ)器節(jié)點(diǎn)執(zhí)行存儲(chǔ)器上的存儲(chǔ)器訪(fǎng)問(wèn);以及 路由邏輯,用于接收來(lái)自另一存儲(chǔ)器節(jié)點(diǎn)或處理器的存儲(chǔ)器控制器的存儲(chǔ)器訪(fǎng)問(wèn)命令,確定存儲(chǔ)器節(jié)點(diǎn)是否是存儲(chǔ)器訪(fǎng)問(wèn)命令的目的地,并且如果所述存儲(chǔ)器節(jié)點(diǎn)不是目的地,則朝目的地將存儲(chǔ)器訪(fǎng)問(wèn)命令轉(zhuǎn)發(fā)到存儲(chǔ)器網(wǎng)絡(luò)中的下一跳。13.如權(quán)利要求11所述的存儲(chǔ)器節(jié)點(diǎn),其中,存儲(chǔ)器包括共同封裝在單個(gè)組件中的存儲(chǔ)器芯片的一個(gè)集合。14.如權(quán)利要求11所述的存儲(chǔ)器節(jié)點(diǎn),其中,存儲(chǔ)器包括共同封裝在單個(gè)組件中的存儲(chǔ)器芯片的多個(gè)集合。15.—種集成電路,包括: 處理器;以及 用于經(jīng)由點(diǎn)對(duì)點(diǎn)鏈路連接至存儲(chǔ)器網(wǎng)絡(luò)的處理器的存儲(chǔ)器控制器,其中,存儲(chǔ)器網(wǎng)絡(luò)包括存儲(chǔ)器節(jié)點(diǎn)和將存儲(chǔ)器節(jié)點(diǎn)彼此連接的節(jié)點(diǎn)間點(diǎn)對(duì)點(diǎn)鏈路,每個(gè)存儲(chǔ)器節(jié)點(diǎn)包括存儲(chǔ)器和控制邏輯,并且每個(gè)存儲(chǔ)器節(jié)點(diǎn)的控制邏輯要操作作為由處理器的存儲(chǔ)器控制器調(diào)用的存儲(chǔ)器訪(fǎng)問(wèn)的目的地的存儲(chǔ)器節(jié)點(diǎn),并要操作作為路由器的存儲(chǔ)器節(jié)點(diǎn)以將數(shù)據(jù)或存儲(chǔ)器訪(fǎng)問(wèn)命令路由到目的地,并且 其中,處理器要優(yōu)先化存儲(chǔ)器網(wǎng)絡(luò)中的存儲(chǔ)器訪(fǎng)問(wèn),或者要將針對(duì)存儲(chǔ)器訪(fǎng)問(wèn)的數(shù)據(jù)移動(dòng)到存儲(chǔ)器網(wǎng)絡(luò)中的近存儲(chǔ)器,以最小化存儲(chǔ)器訪(fǎng)問(wèn)的時(shí)延。
【文檔編號(hào)】G06F13/14GK106030553SQ201380076253
【公開(kāi)日】2016年10月12日
【申請(qǐng)日】2013年4月30日
【發(fā)明人】S·李, N·P·朱皮, P·法拉博施, M·R·克勞斯
【申請(qǐng)人】惠普發(fā)展公司,有限責(zé)任合伙企業(yè)