欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

統(tǒng)一i/o適配器的制作方法

文檔序號:6361949閱讀:161來源:國知局
專利名稱:統(tǒng)一i/o適配器的制作方法
統(tǒng)一I/O適配器
相關(guān)申請的交叉引用
本公開內(nèi)容要求于2010年10月20日提交的美國臨時(shí)申請序列號61/405,091的權(quán)益,其通過引用的方式結(jié)合于此。
背景技術(shù)
這里出于一般地呈現(xiàn)本公開內(nèi)容的背景的目的而提供該背景技術(shù)的描述。當(dāng)前署名的發(fā)明人在該背景技術(shù)章節(jié)中所描述工作的程度的工作以及可能在提交時(shí)并不以其它方式限定為現(xiàn)有技術(shù)的描述的各方面既未明確地也未暗示地被承認(rèn)為相對于本公開內(nèi)容的現(xiàn)有技術(shù)。
輸入/輸出(I/O)瓶頸是會對計(jì)算系統(tǒng)中的性能造成不利影響的處理困難的一個(gè)示例。多核處理器是一種體驗(yàn)到I/o瓶頸的技術(shù)。
許多多核處理器通過對操作系統(tǒng)的多個(gè)實(shí)例進(jìn)行操作來改進(jìn)處理器的使用。多核處理器可以提供系統(tǒng)資源的多個(gè)虛擬實(shí)例以適應(yīng)來自不同操作系統(tǒng)實(shí)例的I/O請求。然而,雖然資源可以具有多個(gè)虛擬實(shí)例,但是仍然存在僅僅單一的物理資源。該矛盾由于物理資源無法同時(shí)服務(wù)多個(gè)請求而導(dǎo)致了 I/o瓶頸。
除了 I/O瓶頸的增加之外,虛擬化也會通過管理虛擬實(shí)例的軟件例程而引起處理開銷。因此,雖然多核處理器中的虛擬化會帶來更好的處理器利用,但是其也導(dǎo)致了若干的低效問題。發(fā)明內(nèi)容
在一個(gè)實(shí)施例中,一種裝置包括輸入/輸出(I/O)互連,被配置為與主機(jī)設(shè)備相連接并且提供與該主機(jī)設(shè)備的通信。該裝置還包括網(wǎng)絡(luò)適配器,連接至該I/O互連并且被配置為與網(wǎng)絡(luò)存儲進(jìn)行通信,以及連接至該I/O互連的主機(jī)適配器。該主機(jī)適配器被配置為與第一存儲設(shè)備和第二存儲設(shè)備進(jìn)行通信。第一存儲設(shè)備具有比第二存儲設(shè)備更高的延遲。該I/o互連被配置為通過在集成電路中實(shí)現(xiàn)的將該I/O互連與主機(jī)適配器和網(wǎng)絡(luò)適配器相連接的可切換連接路徑而提供在主機(jī)適配器、網(wǎng)絡(luò)適配器和主機(jī)設(shè)備之間的通信。
在一個(gè)實(shí)施例中,該I/O互連是外圍組件開關(guān),其被配置為在主機(jī)設(shè)備和主機(jī)適配器之間以及主機(jī)設(shè)備和網(wǎng)絡(luò)適配器之間有選擇地切換通信。該裝置進(jìn)一步包括存儲邏輯,其被配置為控制該I/o互連以使得來自主機(jī)設(shè)備的存儲訪問請求經(jīng)由主機(jī)適配器而被高速緩存在第二存儲設(shè)備中。該存儲邏輯被配置為控制該I/o互連以當(dāng)存儲訪問請求尋址到網(wǎng)絡(luò)存儲或第一存儲設(shè)備時(shí)對來自主機(jī)設(shè)備的存儲訪問請求重新定向以通過第二存儲設(shè)備中的高速緩存對該存儲訪問請求進(jìn)行服務(wù)。
在另一個(gè)實(shí)施例中,該裝置包括服務(wù)邏輯,其被配置為如果從在該第二存儲設(shè)備中高速緩存的該存儲訪問請求中選擇的請求尋址到該網(wǎng)絡(luò)存儲,則控制該主機(jī)適配器向網(wǎng)絡(luò)適配器發(fā)送該選擇的請求以進(jìn)行處理,并且如果該選擇的請求尋址到該第一存儲設(shè)備,則控制該主機(jī)適配器對該選擇的請求進(jìn)行處理。
在另一個(gè)實(shí)施例中,一種方法包括提供輸入/輸出(I/O)互連以在主機(jī)設(shè)備和主機(jī)適配器之間以及在主機(jī)設(shè)備和網(wǎng)絡(luò)適配器之間切換通信。該主機(jī)適配器與第一存儲設(shè)備和第二存儲設(shè)備進(jìn)行通信,并且該第一存儲設(shè)備具有比第二存儲設(shè)備更高的延遲。該網(wǎng)絡(luò)適配器與網(wǎng)絡(luò)存儲進(jìn)行通信。
該方法還包括將來自主機(jī)適配器的存儲訪問請求高速緩存在第二存儲設(shè)備中,并且如果該存儲訪問請求尋址到該第一存儲設(shè)備,則由該主機(jī)適配器對該存儲訪問請求進(jìn)行處理。該方法包括如果該存儲訪問請求尋址到該網(wǎng)絡(luò)存儲,則經(jīng)由該I/o互連將來自第二存儲設(shè)備的存儲訪問請求發(fā)送至網(wǎng)絡(luò)適配器以便進(jìn)行處理。
在一個(gè)實(shí)施例中,該方法包括使用在集成電路中實(shí)現(xiàn)的將該I/O互連與主機(jī)適配器和網(wǎng)絡(luò)適配器相連接的可切換連接路徑而提供經(jīng)由I/O互連的在主機(jī)適配器和網(wǎng)絡(luò)適配器之間的通信路徑。在另一個(gè)實(shí)施例中,該方法包括當(dāng)存儲訪問請求指向網(wǎng)絡(luò)存儲或第一存儲設(shè)備時(shí)將來自該I/o互連上的主機(jī)設(shè)備的存儲訪問請求重新定向至主機(jī)適配器。
在另一個(gè)實(shí)施例中,一種集成電路包括主機(jī)適配器,連接至輸入/輸出(I/O)互連并且被配置為與高延遲存儲設(shè)備和低延遲存儲設(shè)備進(jìn)行通信。該集成電路還包括存儲邏輯,其被配置為控制該I/o互連以使得讀/寫請求經(jīng)由主機(jī)適配器而被高速緩存在低延遲存儲設(shè)備中。在一個(gè)示例中,該主機(jī)設(shè)備是對通過該I/o互連與網(wǎng)絡(luò)適配器和主機(jī)適配器進(jìn)行通信的多個(gè)操作系統(tǒng)實(shí)例進(jìn)行操作的多核處理器。該I/o互連例如在被配置為與主機(jī)設(shè)備進(jìn)行通信的芯片上實(shí)現(xiàn)。此外,該存儲邏輯被配置為控制該I/o互連以當(dāng)讀/寫請求從主機(jī)設(shè)備發(fā)送至網(wǎng)絡(luò)存儲或高延遲存儲時(shí)重新定向該讀/寫請求以通過低延遲存儲設(shè)備對該讀/寫請求進(jìn)行服務(wù)。


并入說明書中并且構(gòu)成其一部分的附示了本公開內(nèi)容的各種系統(tǒng)、方法和其它實(shí)施例。將理解,圖中所圖示的部件邊界(例如,框、框組或其它形狀)表示邊界的一個(gè)示例。在一些示例中,一個(gè)部件可以被設(shè)計(jì)為多個(gè)部件或者多個(gè)部件可以被設(shè)計(jì)為一個(gè)部件。在一些示例中,被示出為另一部件的內(nèi)部組件的部件可以被實(shí)施為外圍組件,并且反之亦然。此外,部件可能并未依比例進(jìn)行繪制。
圖1圖示了統(tǒng)一混合適配器的一個(gè)實(shí)施例。
圖2圖示了與統(tǒng)一混合適配器中的通信相關(guān)聯(lián)的方法的一個(gè)實(shí)施例。
圖3圖示了與統(tǒng)一混合適配器相關(guān)聯(lián)的網(wǎng)絡(luò)適配器的一個(gè)實(shí)施例。
圖4圖示了與統(tǒng)一混合適配器相關(guān)聯(lián)的主機(jī)適配器的一個(gè)實(shí)施例。
圖5圖示了在多個(gè)集成電路上實(shí)現(xiàn)的統(tǒng)一混合適配器第一個(gè)實(shí)施例。
具體實(shí)施方式
這里對與統(tǒng)一混合適配器中的通信相關(guān)聯(lián)的系統(tǒng)、方法和其它實(shí)施例的示例進(jìn)行描述。在一個(gè)實(shí)施例中,統(tǒng)一混合適配器通過在單個(gè)適配器中實(shí)施多個(gè)虛擬化資源來提高多核處理器的效率。以這種方式實(shí)施系統(tǒng)資源從處理器去除了 I/o瓶頸和處理管理開銷以提供對資源的有效訪問。
參考圖1,示出了統(tǒng)一混合適配器100的一個(gè)實(shí)施例,其在主機(jī)設(shè)備140和一個(gè)或多個(gè)系統(tǒng)資源之間提供輸入/輸出(I/o)互連130。在一個(gè)實(shí)施例中,統(tǒng)一混合適配器100可以在包括網(wǎng)絡(luò)適配器110和主機(jī)適配器120的具有系統(tǒng)資源的設(shè)備中實(shí)施。I/O互連130例如將主機(jī)適配器120和網(wǎng)絡(luò)適配器110連接至主機(jī)設(shè)備140。在一個(gè)實(shí)施例中,I/O互連130是外圍組件開關(guān),其有選擇地在諸如主機(jī)設(shè)備140和網(wǎng)絡(luò)適配器110之類的組件之間切換通信。網(wǎng)絡(luò)適配器110例如提供對網(wǎng)絡(luò)存儲170的網(wǎng)絡(luò)訪問。主機(jī)適配器120例如提供對高延遲存儲180和低延遲存儲190的訪問。在一個(gè)實(shí)施例中,統(tǒng)一混合適配器100還包括一個(gè)或多個(gè)邏輯。例如,統(tǒng)一混合適配器100包括存儲邏輯150和服務(wù)邏輯160。存儲邏輯150和服務(wù)邏輯160被配置為對主機(jī)設(shè)備140進(jìn)行操作并且在改善訪問延遲的同時(shí)向主機(jī)設(shè)備140提供對多個(gè)系統(tǒng)資源(例如,網(wǎng)絡(luò)存儲170和高延遲存儲180)的訪問。在一個(gè)實(shí)施例中,存儲邏輯150和服務(wù)邏輯160被配置為對主機(jī)設(shè)備140進(jìn)行操作并且向主機(jī)設(shè)備140提供對多個(gè)系統(tǒng)資源的訪問。將結(jié)合圖2對統(tǒng)一混合適配器100的功能細(xì)節(jié)進(jìn)行描述。參考圖2,圖示了與統(tǒng)一混合適配器100中的通信相關(guān)聯(lián)的方法200的一個(gè)實(shí)施例。從方法200由統(tǒng)一混合適配器100實(shí)施并執(zhí)行以對通過I/O互聯(lián)130發(fā)送的通信進(jìn)行控制的角度對圖2進(jìn)行討論。例如,在210,方法200提供I/O互連(例如,I/O互連130)。其進(jìn)行操作以在統(tǒng)一混合適配器100中的組件之間切換通信。I/O互連130和主機(jī)設(shè)備140之間的接口對從主機(jī)設(shè)備140到統(tǒng)一混合適配器100中的部件所傳輸?shù)耐ㄐ呕蛘邚慕y(tǒng)一混合適配器100中的部件到主機(jī)設(shè)備140所傳輸?shù)耐ㄐ胚M(jìn)行中繼。在一個(gè)實(shí)施例中,提供I/O互連130包括提供可在部件之間(例如,在主機(jī)適配器120、網(wǎng)絡(luò)適配器110和主機(jī)設(shè)備140之間)進(jìn)行切換的多個(gè)連接/通信路徑。例如,I/O互連130的可切換連接路徑能夠?qū)⒅鳈C(jī)適配器120和網(wǎng)絡(luò)適配器110連接至主機(jī)設(shè)備140并且還將網(wǎng)絡(luò)適配器110連接至主機(jī)適配器120。因此,在一個(gè)示例中,I/O互連130是基于用于在I/O互連130所接收的通信的目的地地址而有選擇地改變通信路徑的開關(guān)。如以下將要描述的,通信包括來自主機(jī)設(shè)備140并且指向網(wǎng)絡(luò)存儲170或高延遲存儲180的存儲訪問請求(例如,讀/寫請求)。I/O互連130對路徑進(jìn)行切換以將該讀/寫請求指向適當(dāng)組件。例如,I/O互連130是2x1開關(guān)、Nxl開關(guān)(其中N表示正整數(shù))、NxN開關(guān)等的開關(guān)。在一個(gè)實(shí)施例中,I/o互連130是與外圍組件互連快速(PCIe)標(biāo)準(zhǔn)相兼容和/或能夠被實(shí)施為與作為標(biāo)準(zhǔn)變化的PCIe標(biāo)準(zhǔn)衍生形式相兼容的開關(guān)。繼續(xù)圖2,在220,方法200通過I/O互連130將來自主機(jī)設(shè)備140的讀/寫請求指向主機(jī)適配器120。在一個(gè)示例中,控制邏輯150控制I/O互連130以將來自主機(jī)設(shè)備140的讀/寫請求指向主機(jī)適配器120而無論該讀/寫請求的目的地如何。然而,當(dāng)通信到達(dá)時(shí),適配器100并不了解該請求的類型是什么。例如,存儲邏輯120被配置為識別來自主機(jī)設(shè)備140的通信何時(shí)是讀/寫請求并且控制I/O互連130以切換連接路徑而將該讀/寫請求指向主機(jī)適配器120。在一個(gè)示例中,存儲邏輯150通過確定請求是否尋址到網(wǎng)絡(luò)存儲170或高延遲存儲180而將該請求識別為讀/寫請求。如果是,則該方法假定該請求為讀/寫請求。以這種方式,存儲邏輯150使得讀/寫請求被指向主機(jī)適配器120,而其它通信(例如,基本網(wǎng)絡(luò)通信、非存儲訪問請求)則如主機(jī)設(shè)備140原本所請求的那樣進(jìn)行定向。在230,方法200經(jīng)由主機(jī)適配器120將讀/寫請求高速緩存在低延遲存儲設(shè)備190中。在一個(gè)實(shí)施例中,主機(jī)適配器120自動將已經(jīng)從I/O互聯(lián)130指向低延遲設(shè)備190的讀/寫請求進(jìn)行轉(zhuǎn)發(fā)以進(jìn)行高速緩存。在另一個(gè)實(shí)施例中,主機(jī)適配器120和/或相關(guān)聯(lián)邏輯(例如,服務(wù)邏輯160)對讀/寫請求執(zhí)行高速緩存操作。例如,高速緩存操作可以包括確定讀/寫請求是否在低延遲存儲190中引起高速緩存錯(cuò)失事件、高速緩存命中事件或其它高速緩存事件。以這種方式,讀/寫請求被有效高速緩存在低延遲存儲190中。在一個(gè)實(shí)施例中,定向和高速緩存讀/寫請求對于主機(jī)設(shè)備140而言是透明的。好像該請求被引向所尋址的設(shè)備那樣,主機(jī)設(shè)備140例如進(jìn)行操作以向統(tǒng)一混合適配器100發(fā)送讀/寫請求或者從統(tǒng)一混合適配器100接收讀/寫請求。以這種方式,與例如到網(wǎng)絡(luò)存儲170的I/O請求相關(guān)聯(lián)的延遲得以改善。在一個(gè)實(shí)施例中,以這種方式對讀/寫請求(例如,存儲訪問請求)進(jìn)行定向和高速緩存提供了有所改進(jìn)的請求服務(wù)而并不對主機(jī)設(shè)備140的操作進(jìn)行修改。此外,統(tǒng)一混合適配器100對多于一個(gè)資源(例如,網(wǎng)絡(luò)存儲170、高延遲存儲180)提供訪問。典型地,單個(gè)適配器僅對單個(gè)資源提供訪問。由于請求被發(fā)送至單個(gè)而不是多個(gè)適配器,所以將多個(gè)適配器合并為統(tǒng)一混合適配器100緩解了來自主機(jī)設(shè)備140的處理開銷。因此,主機(jī)設(shè)備140對單個(gè)適配器的請求進(jìn)行處理以便對多個(gè)資源進(jìn)行訪問。統(tǒng)一混合適配器100在改進(jìn)主機(jī)設(shè)備140的操作的同時(shí)為主機(jī)設(shè)備140提供了對網(wǎng)絡(luò)適配器110和主機(jī)適配器120的透明訪問。一旦讀/寫請求被指向并高速緩存在低延遲存儲190中,請求就例如由它們所尋址的存儲設(shè)備有選擇地進(jìn)行處理。例如,考慮來自主機(jī)設(shè)備140的向網(wǎng)絡(luò)存儲170寫入信息塊的請求。在該示例中,該請求經(jīng)由I/O互連130而被指向(例如,在220)主機(jī)適配器而不是被發(fā)送至用于對網(wǎng)絡(luò)存儲170 (實(shí)際目的地)進(jìn)行訪問的網(wǎng)絡(luò)適配器110。反而在230,主機(jī)適配器120初始地將該請求高速緩存在低延遲存儲190中。在一個(gè)實(shí)施例中,在高速緩存了寫入請求之后,主機(jī)適配器可以好像從網(wǎng)絡(luò)存儲170發(fā)送的確認(rèn)那樣向主機(jī)設(shè)備140發(fā)送該信息已經(jīng)被存儲的確認(rèn)。以這種方式,主機(jī)設(shè)備140相信寫入請求已經(jīng)被處理,這允許主機(jī)設(shè)備140繼續(xù)并完成與該請求相關(guān)聯(lián)的任意剩余動作。由于將寫入請求處理至高速緩存中比將該請求處理至網(wǎng)絡(luò)存儲170中更快,所以這減少了與在網(wǎng)絡(luò)存儲170中處理該寫入請求相關(guān)聯(lián)的延遲。然而,雖然被高速緩存,但是由于數(shù)據(jù)還沒有實(shí)際被存儲在網(wǎng)絡(luò)存儲170中,所以寫入請求還沒有完成。相反,該請求被臨時(shí)高速緩存在低延遲存儲190中。因此,在一個(gè)實(shí)施例中,服務(wù)邏輯160從低延遲存儲190選擇寫入請求以如原始意圖的那樣實(shí)現(xiàn)該請求。月艮務(wù)邏輯160例如基于與請求相關(guān)聯(lián)的優(yōu)先級、服務(wù)質(zhì)量和/或到達(dá)順序或者其它所期望的選擇處理來選擇要實(shí)現(xiàn)的讀/寫請求。在240,方法200通過確定之前被高速緩存的所選擇的讀/寫請求是否尋址到高延遲存儲設(shè)備180而繼續(xù)。如果所選擇的請求尋址到高延遲存儲180,則該方法進(jìn)行至250并且主機(jī)適配器120對該請求進(jìn)行服務(wù)。在另一個(gè)實(shí)施例中,如果所選擇的請求尋址到連接至主機(jī)適配器120的任意存儲設(shè)備,則主機(jī)適配器120對該請求進(jìn)行服務(wù)。在240,如果該請求并未尋址到高延遲存儲,則該方法移動到260,其中方法200識別所選擇的讀/寫請求是否尋址到網(wǎng)絡(luò)存儲170。如果所選擇的讀/寫請求尋址到網(wǎng)絡(luò)存儲170,則方法200進(jìn)行至270并且經(jīng)由I/O互連130將所選擇的讀/寫請求發(fā)送至網(wǎng)絡(luò)適配器110以便進(jìn)行處理。網(wǎng)絡(luò)適配器110通過網(wǎng)絡(luò)連接與網(wǎng)絡(luò)存儲170和/或其它網(wǎng)絡(luò)存儲設(shè)備進(jìn)行通信。因此,網(wǎng)絡(luò)適配器110將所選擇的讀/寫請求傳輸至網(wǎng)絡(luò)存儲170以處理該請求。將請求從主機(jī)適配器120發(fā)送至網(wǎng)絡(luò)適配器110是I/O互連130如何在統(tǒng)一混合適配器100內(nèi)提供端對端通信的一個(gè)示例。端對端通信例如是主機(jī)適配器120和網(wǎng)絡(luò)適配器110之間的直接通信。當(dāng)以這種方式進(jìn)行通信時(shí),主機(jī)設(shè)備140并不作為中介而參與,這允許主機(jī)設(shè)備通過不執(zhí)行這樣的功能而減少處理開銷。雖然已經(jīng)關(guān)于方法200對要素240-270進(jìn)行了討論,但是在一個(gè)實(shí)施例中,服務(wù)邏輯160控制主機(jī)適配器120來執(zhí)行要素240至270。因此,在其它實(shí)施例中,方法200由統(tǒng)一混合適配器100中的一個(gè)或多個(gè)邏輯所執(zhí)行。參考圖3,圖示了網(wǎng)絡(luò)接口卡(NIC) 300的一個(gè)實(shí)施例。NIC300是圖1的網(wǎng)絡(luò)適配器110的一個(gè)實(shí)施例。如圖1所示,NIC300包括PCIe端點(diǎn)(EP)接口 310以與I/O互連130相連接。NIC300還包括一個(gè)或多個(gè)虛擬NIC320、虛擬開關(guān)330、網(wǎng)絡(luò)協(xié)議棧卸載引擎340、媒體訪問控制(MAC) 350以及提供到網(wǎng)絡(luò)的連接的以太網(wǎng)端口 360的連接。在一個(gè)實(shí)施例中,NIC300是與多核處理器一起操作以提高處理器性能的聚合網(wǎng)絡(luò)適配器(CNA)。例如,考慮經(jīng)由I/O互連130連接至NIC300的主機(jī)設(shè)備(例如,圖1中的主機(jī)設(shè)備140)是使用多核處理器的服務(wù)器。該多核處理器對多個(gè)操作系統(tǒng)實(shí)例進(jìn)行操作以提高處理器性能。操作系統(tǒng)實(shí)例與NIC300中的不同虛擬NIC320進(jìn)行通信以經(jīng)由以太網(wǎng)360獲得對網(wǎng)絡(luò)的訪問。除了為主機(jī)設(shè)備140上運(yùn)行的操作系統(tǒng)實(shí)例提供虛擬NIC320之夕卜,網(wǎng)絡(luò)協(xié)議棧卸載引擎340針對從主機(jī)設(shè)備所發(fā)送的通信執(zhí)行協(xié)議處理。以這種方式,處理從主機(jī)卸載到NIC300。虛擬開關(guān)330將通信從與不同操作系統(tǒng)實(shí)例進(jìn)行通信的不同虛擬NIC320切換至卸載引擎340。在一個(gè)實(shí)施例中,卸載引擎340是被用來將TCP/IP棧的處理卸載到NIC300的TCP卸載引擎(Τ0Ε)。卸載引擎340可以包括互聯(lián)網(wǎng)小型計(jì)算機(jī)系統(tǒng)接口(iSCSI)和/或以太網(wǎng)光纖通道(FCoE)以便使用IOGB以太網(wǎng)或更高速度進(jìn)行通信。此外,包括NIC300的網(wǎng)絡(luò)適配器110的實(shí)施例對圖1的網(wǎng)絡(luò)存儲170提供訪問。例如,在主機(jī)設(shè)備上運(yùn)行的操作系統(tǒng)實(shí)例通過向網(wǎng)絡(luò)適配器110發(fā)送讀/寫請求來訪問網(wǎng)絡(luò)存儲170。網(wǎng)絡(luò)存儲170例如是網(wǎng)絡(luò)附加存儲(NAS)、存儲域網(wǎng)絡(luò)(SAN)或可通過連接至網(wǎng)絡(luò)適配器110的網(wǎng)絡(luò)進(jìn)行訪問的其它存儲設(shè)備。在其它實(shí)施例中,網(wǎng)絡(luò)適配器110還提供向其它網(wǎng)絡(luò)設(shè)備或其它網(wǎng)絡(luò)存儲設(shè)備的網(wǎng)絡(luò)通信。繼續(xù)至圖4,圖示了圖1的主機(jī)適配器120的另一個(gè)實(shí)施例。在該實(shí)施例中,主機(jī)適配器120包括處理器410、PCIe端點(diǎn)連接420以及用于提供與附接于主機(jī)適配器120的SCSI存儲設(shè)備的通信的串行連接SCSI (SAS)核心控制器430。PCIe端點(diǎn)連接420提供到I/O互聯(lián)130的PCIe兼容連接。在一個(gè)實(shí)施例中,主機(jī)適配器120通過控制器420提供到多個(gè)存儲設(shè)備的連接。如圖4所示,SAS核心控制器430將主機(jī)適配器120與兩個(gè)存儲設(shè)備(即,SSD440和HDD450)相連接。固態(tài)設(shè)備(SSD)440是低延遲存儲設(shè)備,其提供用于對數(shù)據(jù)(例如,讀/寫請求)進(jìn)行高速緩存的低延遲訪問時(shí)間。硬盤驅(qū)動器(HDD)450是被主機(jī)設(shè)備140用來存儲信息的高延遲存儲設(shè)備。相對于SSD440的訪問速度,該延遲是“高”的。雖然主機(jī)適配器120被圖示為與兩個(gè)存儲設(shè)備相連接,但是應(yīng)當(dāng)理解的是,主機(jī)適配器120可以根據(jù)實(shí)施方式而連接至更大或更小數(shù)目的設(shè)備。例如,主機(jī)適配器120可以向包括硬盤驅(qū)動器、磁帶、磁帶庫等的高延遲存儲提供通信。主機(jī)適配器例如還向包括閃存、隨機(jī)訪問存儲、緩沖器、寄存器SSD等的低延遲存儲提供通信。在一個(gè)實(shí)施例中,主機(jī)適配器120通過控制器(例如,SAS控制器430)提供對存儲設(shè)備的訪問。該控制器例如是主機(jī)總線適配器(HBA)控制器、小型計(jì)算機(jī)系統(tǒng)接口(SCSI)控制器、光纖通道控制器、外部串行高級技術(shù)附件(eSATA)控制器、電子集成驅(qū)動器(IDE)控制器、火線控制器、通用串行總線(USB)控制器等。圖5圖示了來自圖1的統(tǒng)一混合適配器100的附加實(shí)施例,其配備有單獨(dú)的集成電路和/或芯片。在該實(shí)施例中,來自圖1的網(wǎng)絡(luò)適配器110被實(shí)現(xiàn)為單獨(dú)的集成電路500。此外,I/O互連130是獨(dú)立的集成電路510。另外,主機(jī)適配器120、存儲邏輯150和服務(wù)邏輯160也在獨(dú)立的集成電路520上實(shí)現(xiàn)。該電路經(jīng)由連接路徑進(jìn)行連接以傳輸信號。在集成電路510中實(shí)現(xiàn)的I/O互連130通過系統(tǒng)接口連接至主機(jī)設(shè)備140。該系統(tǒng)接口例如是PCIe接口、PCI接口、英特爾快速通道互連(QPI)接口、超傳輸(HT)接口等。I/O互連130的可切換連接路徑例如在將I/O互連130與主機(jī)適配器120和網(wǎng)絡(luò)適配器120相連接的集成電路510中實(shí)現(xiàn)。雖然集成電路500、510和520被圖示為分離的集成電路,但是它們可以被集成到共用電路板上。此外,與所圖示的相比,集成電路500、510和520可以被組合為更少的集成電路或者劃分為更多的集成電路。此外,在另一個(gè)實(shí)施例中,集成電路520中所圖示的邏輯150和160可以是單獨(dú)的電路或者被組合成單獨(dú)的專用集成電路。在其它實(shí)施例中,與邏輯150和160相關(guān)聯(lián)的功能可以被實(shí)現(xiàn)為由處理器(例如,圖4的處理器410)所執(zhí)行的固件。下文包括這里采用的所選擇術(shù)語的定義。該定義包括落入術(shù)語范圍之內(nèi)并且可以被用于實(shí)施的組件的各種示例和/或形式。該示例并非旨在于限制。術(shù)語的單數(shù)和復(fù)數(shù)形式都可以處于該定義之內(nèi)。對“一個(gè)實(shí)施例”、“實(shí)施例”、“一個(gè)示例”、“示例”等的引用指示這樣描述的(多個(gè))實(shí)施例或(多個(gè))示例可以包括特定特征、結(jié)構(gòu)、特性、性質(zhì)、要素或限制,但是并非每個(gè)實(shí)施例或示例都必然地包括該特定特征、結(jié)構(gòu)、特性、性質(zhì)、要素或限制。此外,短語“在一個(gè)實(shí)施例中”的重復(fù)使用雖然可以,但是并不必然指代相同的實(shí)施例。如這里所使用的“邏輯”包括但不限于用于執(zhí)行(多個(gè))功能或(多個(gè))動作,和/或引起來自另一邏輯、方法和/或系統(tǒng)的功能或動作的硬件、固件、在非瞬態(tài)介質(zhì)上存儲或在機(jī)器上執(zhí)行的指令和/或各項(xiàng)的組合。邏輯可以包括具有所編程指令的微處理器、離散邏輯(例如,ASIC)、模擬電路、數(shù)字電路、編程的邏輯設(shè)備、包含指令的存儲器設(shè)備等。邏輯可以包括一個(gè)或多個(gè)門電路、門電路組合,或者其它電路組件。在描述多個(gè)邏輯的情況下,可以有可能將多個(gè)邏輯整合為一個(gè)物理邏輯。類似地,在描述單個(gè)邏輯的情況下,可以有可能將該單個(gè)邏輯在多個(gè)物理邏輯之間進(jìn)行分布。這里所描述的一個(gè)或多個(gè)組件和功能可以使用一個(gè)或多個(gè)邏輯部件來實(shí)施。雖然出于說明簡化的目的而將所圖示的方法示出并描述為一系列的塊。但是方法并不被塊的順序所限制,因?yàn)橐恍K可以以不同于所示出和描述的順序和/或與其它塊同時(shí)出現(xiàn)。此外,可以使用比所有所圖示的塊更少的塊來實(shí)施示例方法。塊可以被組合或分離到多個(gè)組件之中。此外,附加和/或可替換方法可以采用附加的沒有圖示的塊。至于具體實(shí)施方式
或權(quán)利要求中所采用的術(shù)語“包含(include)”或“包含了(including)”的程度,其旨在以與術(shù)語“包括(comprise)”相似的方式具有包含意義,因?yàn)樵撔g(shù)語在采用時(shí)被解釋為在權(quán)利要求中的過渡詞。雖然已經(jīng)通過描述示例對示例系統(tǒng)、方法等進(jìn)行了舉例說明,并且雖然已經(jīng)相當(dāng)詳細(xì)地描述了示例,但是申請人的意圖并非是約束或者以任何方式將所附權(quán)利要求的范圍限制為這樣的細(xì)節(jié)。當(dāng)然,不可能出于描述這里所描述的系統(tǒng)、方法等的目的而對組件或方法的每一種可設(shè)想到的組合都進(jìn)行描述。因此,本公開內(nèi)容并不局限于所示出并描述的具體細(xì)節(jié)、有代表性的裝置和說明性示例。因此,本申請旨在涵蓋落入所附權(quán)利要求范圍內(nèi)的變更、修改和變化。
權(quán)利要求
1.一種裝置,包括: 輸入/輸出(I/o)互連(130),被配置為與主機(jī)設(shè)備(140)相連接并且提供與所述主機(jī)設(shè)備(140)的通信; 網(wǎng)絡(luò)適配器(I 10),連接至所述I/O互連(130)并且被配置為與網(wǎng)絡(luò)存儲(170)進(jìn)行通 目; 主機(jī)適配器(120),連接至所述I/O互連(130)并且被配置為與第一存儲設(shè)備(180)和第二存儲設(shè)備(190)進(jìn)行通信,其中所述第一存儲設(shè)備(180)比所述第二存儲設(shè)備(190)具有更高的延遲;以及 存儲邏輯(150),被配置為對所述I/O互連(130)進(jìn)行控制以使得來自所述主機(jī)設(shè)備(140)的存儲訪問請求經(jīng)由所述主機(jī)適配器(120)而被高速緩存在所述第二存儲設(shè)備(190)中。
2.根據(jù)權(quán)利要求1所述的裝置,進(jìn)一步包括: 服務(wù)邏輯(160),被配置為如果從在所述第二存儲設(shè)備(190)中高速緩存的所述存儲訪問請求中選擇的請求尋址到所述網(wǎng)絡(luò)存儲(170),則控制所述主機(jī)適配器(120)向網(wǎng)絡(luò)適配器(110)發(fā)送所述選擇的請求以進(jìn)行處理,并且如果所述選擇的請求尋址到所述第一存儲設(shè)備(180),則控制所述主機(jī)適配器(120)對所述選擇的請求進(jìn)行處理。
3.根據(jù)權(quán)利要求1所述的裝置,其中所述I/O互連(130)被配置為通過在集成電路中實(shí)現(xiàn)的將所述I/o互連與所述主機(jī)適配器和所述網(wǎng)絡(luò)適配器相連接的可切換連接路徑而在所述主機(jī)適配器、所述網(wǎng)絡(luò)適配器和所述主機(jī)設(shè)備之間提供通信。
4.根據(jù)權(quán)利要求1所述的裝置,其中所述主機(jī)設(shè)備是對通過所述I/O互連與所述網(wǎng)絡(luò)適配器和所述主機(jī)適配器進(jìn)行通信的多個(gè)操作系統(tǒng)實(shí)例進(jìn)行操作的多核處理器,并且其中所述I/O互連、所述主機(jī)適配器和所述網(wǎng)絡(luò)適配器在被配置為在與所述主機(jī)設(shè)備進(jìn)行通信的芯片上實(shí)現(xiàn)。
5.根據(jù)權(quán)利 要求1所述的裝置,其中所述存儲邏輯被配置為控制所述I/O互連以當(dāng)所述存儲訪問請求尋址到所述網(wǎng)絡(luò)存儲或所述第一存儲時(shí)對來自所述主機(jī)設(shè)備的所述存儲訪問請求重新定向以通過所述第二存儲設(shè)備中的高速緩存對所述存儲訪問請求進(jìn)行服務(wù)。
6.根據(jù)權(quán)利要求1所述的裝置,其中所述I/O互連被配置為向所述主機(jī)設(shè)備提供對所述網(wǎng)絡(luò)適配器和所述主機(jī)適配器的訪問,并且其中所述I/o互連被配置為在所述網(wǎng)絡(luò)適配器和所述主機(jī)適配器之間提供端對端通信。
7.根據(jù)權(quán)利要求1所述的裝置,其中所述I/O互連是外圍組件開關(guān),其被配置為在所述主機(jī)設(shè)備和所述主機(jī)適配器之間以及所述主機(jī)設(shè)備和所述網(wǎng)絡(luò)適配器之間有選擇地切換通信。
8.一種方法,包括: 提供(210)輸入/輸出(I/O)互連(130)以在主機(jī)設(shè)備(140)和主機(jī)適配器(120)之間以及在所述主機(jī)設(shè)備(140)和網(wǎng)絡(luò)適配器(110)之間切換通信, 其中所述主機(jī)適配器與第一存儲設(shè)備(180)和第二存儲設(shè)備(190)進(jìn)行通信,其中所述第一存儲設(shè)備(180)具有比所述第二存儲設(shè)備(190)更高的延遲,并且其中所述網(wǎng)絡(luò)適配器(110)與所述網(wǎng)絡(luò)存儲(170)進(jìn)行通信; 將來自所述主機(jī)適配器的存儲訪問請求高速緩存(230)在所述第二存儲設(shè)備中;如果所述存儲訪問請求尋址到所述第一存儲設(shè)備,則由所述主機(jī)適配器對所述存儲訪問請求進(jìn)行處理(250);以及 如果所述存儲訪問請求尋址到所述網(wǎng)絡(luò)存儲,則經(jīng)由所述I/O互連將來自所述第二存儲設(shè)備的所述存儲訪問請求發(fā)送(270)至所述網(wǎng)絡(luò)適配器以便進(jìn)行處理。
9.根據(jù)權(quán)利要求8所述的方法,進(jìn)一步包括: 提供經(jīng)由所述I/O互連的在所述主機(jī)適配器和所述網(wǎng)絡(luò)適配器之間的通信路徑。
10.根據(jù)權(quán)利要求9所述的方法,其中提供經(jīng)由所述I/O互連的在所述主機(jī)適配器和所述網(wǎng)絡(luò)適配器之間的通信路徑包括使用在集成電路中實(shí)現(xiàn)的將所述I/o互連與所述主機(jī)適配器和所述網(wǎng)絡(luò)適配器相連接的可切換連接路徑。
11.根據(jù)權(quán)利要求8所述的方法,進(jìn)一步包括: 通過與外圍組件互連快速(PCIe)標(biāo)準(zhǔn)相兼容的至所述主機(jī)設(shè)備的通信路徑在所述I/O互連中接收所述存儲訪問請求。
12.根據(jù)權(quán)利要求8所述的方法,進(jìn)一步包括: 從在所述主機(jī)設(shè)備中的多核處理器上操作并且通過所述I/O互連與所述網(wǎng)絡(luò)適配器和所述主機(jī)適配器進(jìn)行通信的操作系統(tǒng)實(shí)例接收所述存儲訪問請求,其中所述存儲訪問請求是來自所述多個(gè)操作系統(tǒng)實(shí)例中的一個(gè)操作系統(tǒng)實(shí)例的存儲器訪問請求。
13.根據(jù)權(quán)利要求8所述的方法,進(jìn)一步包括: 將來自所述I/o互連上的所述主機(jī)設(shè)備的所述存儲訪問請求重新定向至所述主機(jī)適配器。
14.根據(jù)權(quán)利要求13所述的方法,其中重新定向所述存儲訪問請求包括當(dāng)所述存儲訪問請求指向所述網(wǎng)絡(luò)存儲或 所述第一存儲設(shè)備時(shí)重新定向所述存儲訪問請求。
15.根據(jù)權(quán)利要求8所述的方法,進(jìn)一步包括: 經(jīng)由所述I/O互連在所述主機(jī)適配器和所述網(wǎng)絡(luò)適配器之間提供通信路徑以在所述網(wǎng)絡(luò)適配器和所述主機(jī)適配器之間促成端對端通信。
16.—種集成電路,包括: 主機(jī)適配器(120),連接至輸入/輸出(I/O)互連并且被配置為與第一存儲設(shè)備和第二存儲設(shè)備進(jìn)行通信,其中所述第一存儲設(shè)備具有比所述第二存儲設(shè)備更高的延遲;以及 存儲邏輯(150),被配置為控制所述I/O互連以使得所述讀/寫請求經(jīng)由所述主機(jī)適配器而被高速緩存在低延遲存儲設(shè)備中。
17.根據(jù)權(quán)利要求16所述的集成電路,進(jìn)一步包括: 服務(wù)邏輯,被配置為如果從在所述第二存儲設(shè)備中高速緩存的所述讀/寫請求中選擇的請求尋址到與網(wǎng)絡(luò)適配器進(jìn)行通信的網(wǎng)絡(luò)存儲,則控制所述主機(jī)適配器向所述網(wǎng)絡(luò)適配器發(fā)送所述選擇的請求,并且如果所述選擇的請求尋址到所述第一存儲設(shè)備,則控制所述主機(jī)適配器向所述第一存儲設(shè)備發(fā)送所述選擇的請求,并且其中所述網(wǎng)絡(luò)適配器連接至所述I/O互連。
18.根據(jù)權(quán)利要求16所述的集成電路,其中所述I/O互連被配置為通過在集成電路中實(shí)現(xiàn)的將所述I/O互連與所述主機(jī)適配器和所述網(wǎng)絡(luò)適配器相連接的可切換連接路徑而提供在所述主機(jī)適配器、網(wǎng)絡(luò)適配器和所述主機(jī)設(shè)備之間的通信,其中所述可切換連接路徑將所述I/O互連連接至被配置為與所述主機(jī)設(shè)備相連接的接口,并且其中所述I/O互連是被配置為在所述主機(jī)設(shè)備和所述主機(jī)適配器之間以及在所述主機(jī)設(shè)備和所述網(wǎng)絡(luò)適配器之間有選擇地切換通信的外圍組件開關(guān)。
19.根據(jù)權(quán)利要求16所述的集成電路,其中所述主機(jī)設(shè)備是對通過所述I/O互連與網(wǎng)絡(luò)適配器和所述主機(jī)適配器進(jìn)行通信的多個(gè)操作系統(tǒng)實(shí)例進(jìn)行操作的多核處理器,并且其中所述I/o互連在被配置為與所述主機(jī)設(shè)備進(jìn)行通信的芯片上實(shí)現(xiàn)。
20.根據(jù)權(quán)利要求16所述的集成電路,其中所述存儲邏輯被配置為對I/O互連進(jìn)行控制以當(dāng)所述讀/寫請求被從所述主機(jī)設(shè)備發(fā)送至網(wǎng)絡(luò)存儲或所述第一存儲時(shí)重新定向所述讀/寫請求以通過所述低延遲存儲設(shè)備中的高速緩存對所述讀/寫請求進(jìn)行服務(wù)。
21.根據(jù)權(quán)利要求16所述的集成電路,其中所述I/O互連被配置為向所述主機(jī)設(shè)備提供對網(wǎng)絡(luò)適配器和所述主機(jī)適配器的訪問,并且其中所述I/O互連被配置為在所述網(wǎng)絡(luò)適配器和所述主機(jī)適配器之間提供 端對端通信。
全文摘要
描述了與統(tǒng)一混合輸入/輸出適配器相關(guān)聯(lián)的系統(tǒng)、方法以及其它實(shí)施例。根據(jù)一個(gè)實(shí)施例,一種裝置包括輸入/輸出(I/O)互連(120),被配置為與主機(jī)設(shè)備(140)相連接并且提供與該主機(jī)設(shè)備(140)的通信。該裝置還包括網(wǎng)絡(luò)適配器(110),連接至該I/O互連(120)并且被配置為與網(wǎng)絡(luò)存儲(170)進(jìn)行通信。該裝置包括主機(jī)適配器(120),連接至該I/O互連(130)并且被配置為與第一存儲設(shè)備(180)和第二存儲設(shè)備(190)進(jìn)行通信。第一存儲設(shè)備(180)具有比第二存儲設(shè)備(190)更高的延遲。該裝置進(jìn)一步包括存儲邏輯(150),被配置為對I/O互連(130)進(jìn)行控制以使得來自主機(jī)設(shè)備(140)的存儲訪問請求經(jīng)由主機(jī)適配器(120)而被高速緩存在第二存儲設(shè)備(190)中。
文檔編號G06F13/40GK103154920SQ201180048076
公開日2013年6月12日 申請日期2011年10月17日 優(yōu)先權(quán)日2010年10月20日
發(fā)明者A·P·格利, P·蘇塔爾德加, D·格德斯 申請人:馬維爾國際貿(mào)易有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
巴彦淖尔市| 荣昌县| 栖霞市| 望奎县| 铁岭县| 巧家县| 祁连县| 肥西县| 绍兴市| 兴隆县| 格尔木市| 张家港市| 东辽县| 锡林郭勒盟| 山丹县| 阳东县| 杭州市| 东方市| 双辽市| 上饶市| 准格尔旗| 剑河县| 临沂市| 蓬溪县| 亳州市| 平度市| 鹤壁市| 辉县市| 湖州市| 格尔木市| 东源县| 绍兴县| 葵青区| 红安县| 互助| 吉安市| 宜宾市| 龙山县| 旬阳县| 务川| 旬阳县|