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

片上系統(tǒng)結構塊的控制的制作方法

文檔序號:6348779閱讀:287來源:國知局

專利名稱::片上系統(tǒng)結構塊的控制的制作方法
技術領域
:本公開一般涉及電子學領域。更特別地,本發(fā)明的實施例涉及用于控制片上系統(tǒng)結構(On-DieSystemFabric)(OSF)塊的技術。
背景技術
:在電子設計中,半導體知識產(chǎn)權(IP)塊(也被稱為“IP核”或“邏輯核”或更一般地稱為“邏輯塊”)是邏輯電路、單元或芯片布局設計的可再用的部件。例如,可以使用或再使用這樣的邏輯塊作為各種芯片或邏輯設計中的構建塊。隨著IP塊數(shù)量的增加,將它們集成到系統(tǒng)中變得更加有挑戰(zhàn)性。同樣地,通過設計,IP塊可以不包括復雜的電路(例如,為了抑制成本)。為此目的,一些與地址處理相關的任務可能需要由主機處理器執(zhí)行而不是由IP塊中的邏輯來執(zhí)行。這可能通過在主機處理器的用戶和核模式之間的頻繁切換而引起例如與地址處理相關的時延。參考附圖提供了詳細的描述。在圖中,附圖標記的最左邊的(一個或多個)數(shù)字標識在其中附圖標記首次出現(xiàn)的圖。在不同圖中使用相同的附圖標記指示類似的或相同的項目。圖1和圖6-7圖示了可以用于實現(xiàn)在本文中所討論的各種實施例的計算系統(tǒng)的實施例的方框圖。圖2圖示了根據(jù)實施例的用戶級代碼片段。圖4圖示了根據(jù)某些實施例的、在OS頁表和TLB中的樣本條目。圖3和圖5圖示了根據(jù)某些實施例的方法的流程圖。具體實施例方式在以下描述中,為了提供對各種實施例的徹底理解,陳述了很多具體細節(jié)。然而,某些實施例可以在沒有該具體細節(jié)的情況下加以實現(xiàn)。在其它實例中,沒有詳細地描述公知的方法、程序、組件以及電路以便不使特定實施例模糊。某些實施例涉及用于控制經(jīng)由片上系統(tǒng)結構(OSF)耦合的IP塊或邏輯塊的技術。在實施例中,可以在用戶級斷言該控制。此外,OSF可以將(一個或多個)處理器核對接至IP塊(諸如某些實施例中的輸入/輸出設備)。例如,因為成本的原因,IP塊一般可能不包括存儲器管理單元(MMU),因此OSF需要將物理地址傳遞給IP塊。為地址處理提供支持的一種方式是使用用于IP塊的核內(nèi)設備驅(qū)動器。此類設備驅(qū)動器可以具有基于物理地址來操作的特權。然而,由于在用戶和核模式之間的頻繁切換和/或頁表遍歷(pagetablewalk)的高成本的原因,對于較細粒度的加速而言,該模塊可能是效率低下的。然而,用戶級控制面臨著如何將物理地址傳遞給IP塊的挑戰(zhàn)。為此目的,實施例利用物理地址影蔽(physicaladdressshadowing)來處理這個挑戰(zhàn)。例如,可以在操作系統(tǒng)(OS)中實現(xiàn)系統(tǒng)調(diào)用以創(chuàng)建物理頁號或地址的影子(shadow)(例如,使用另外無效的物理地址范圍),其在本文中也被稱為“重映射”。進一步地,硬件(例如,在處于與OSF通信的位置處)可以從影子地址提取實際的物理地址(在本文中也被稱為“逆重映射(remap’”。在實施例中,用于逆重映射的硬件可以包括翻轉(zhuǎn)或反轉(zhuǎn)地址的最高的一個位或兩個位。在一個實施例中,(例如在用戶級運行的)應用可以使用來自用戶空間的普通x86存儲(store)以將存儲地址和其它參數(shù)傳遞給IP塊。這將比陷入核中以訪問頁表要快一個數(shù)量級,并且比在IP塊中構建額外的MMU要便宜幾個數(shù)量級。此外,在某些實施例中,用戶應用可以觸發(fā)IP塊運行,其具有四個特征(1)無指令集架構(ISA)擴展;(2)無過多的用戶一核模式切換;(3)無額外的MMU;和/或(4)處理器核和IP塊可以共享不固定但是只有在運行時間時才知道的地址。此類特征可以導致IP塊的更少受限的使用。這還可以通過OSF來允許細粒度加速器的更廣泛部署。在本文中所討論的技術可以被應用于各種計算系統(tǒng)中,諸如參照圖1和6-7所討論的那些。更特別地,圖1圖示了根據(jù)本發(fā)明的實施例的計算系統(tǒng)100的方框圖。該系統(tǒng)100可以包括一個或多個代理102-1至102-M(在本文中被共同稱為“各代理102”或更一般地稱為“代理102”)。在實施例中,各代理102中的一個或多個可以是計算系統(tǒng)(諸如參照圖6-7所討論的計算系統(tǒng))的各組件中的任一個。如圖1中所圖示的那樣,各代理102可以經(jīng)由諸如OSF的結構104進行通信。因此,在實施例中各代理102和結構104可以存在于相同的集成電路片上。如在本文中所討論的那樣,“0SF”可以指代可擴縮的、可配置的、和/或特定于產(chǎn)品的片上系統(tǒng)結構。例如,各代理102中的每一個都可以是經(jīng)由結構104耦合的橋接器(例如,用于耦合至另一結構)、IP塊、或電子設備的另一組件。在一個實施例中,結構104可以包括允許各種代理(諸如計算設備)傳送數(shù)據(jù)的計算機網(wǎng)絡。在實施例中,結構104可以包括經(jīng)由串行(例如,點到點)鏈路和/或共享的通信網(wǎng)絡進行通信的一個或多個互連(或互連網(wǎng)絡)。例如,某些實施例可以有助于在允許與全緩存雙列直插式存儲器模塊(FBD)通信的鏈路上的組件調(diào)試或確認,例如,其中FBD鏈路是用于將存儲器模塊耦合至主機控制器設備(諸如處理器或存儲器集線器)的串行鏈路??梢詮腇BD通道主機(channelhost)發(fā)送調(diào)試信息,從而使得可以通過通道流量追蹤俘獲工具(諸如一個或多個邏輯分析器)來沿著通道觀測所述調(diào)試信息。在一個實施例中,系統(tǒng)100可以支持分層協(xié)議方案,其可以包括物理層、鏈路層、路由層、傳輸層和/或協(xié)議層。對于點到點或共享網(wǎng)絡而言,結構104可以進一步有助于從一個協(xié)議(例如,超高速緩存處理器或超高速緩存感知存儲器控制器)到另一協(xié)議的數(shù)據(jù)的傳輸(例如,以分組形式)。同樣地,在某些實施例中,結構104可以提供遵守一個或多個超高速緩存一致性協(xié)議的通信。可替換地,結構104可以遵守非一致性協(xié)議。此外,如由圖1中箭頭方向所示出的那樣,各代理102可以經(jīng)由結構104發(fā)送和/或接收數(shù)據(jù)。因此,某些代理可以利用單向鏈路而其它代理可以利用雙向鏈路進行通信。例如,一個或多個代理(諸如代理102-M)可以發(fā)送數(shù)據(jù)(例如,經(jīng)由單向鏈路106),其它(一個或多個)代理(諸如代理102-2)可以接收數(shù)據(jù)(例如,經(jīng)由單向鏈路108),而某(一個或多個)代理(諸如代理102-1)(例如,經(jīng)由雙向鏈路110)既可以發(fā)送數(shù)據(jù)又可以接收數(shù)據(jù)。在某些實施例中,鏈路106-110可以是提供協(xié)議和/或信令以允許IP塊跨越多種設計交互操作的OSF接口。在實施例中,耦合各代理102的OSF接口(例如,鏈路106-110)可以提供稱為主通道和邊帶通道的兩個端口。該主通道可以(a)是用于在各同位體(peer)和/或上游之間的數(shù)據(jù)傳輸?shù)母咝阅芙涌冢?b)支持存儲(例如,32位、64位)、輸入/輸出(10)、配置以及消息事務;(c)支持外設部件互連(PCI)排序規(guī)則和/或枚舉;(d)支持分割事務協(xié)議(splittransactionprotocol);和/或(e)映射PCI_e頭信息。邊帶通道可以(i)提供標準接口以傳送所有邊帶信息并且除去專用線;(ii)提供點到點網(wǎng)絡;(iii)用于狀態(tài)、電源管理、配置影蔽(configurationshadow)、測試模式、等等;和/或(iv)用于低性能(例如,不旨在用于主數(shù)據(jù)傳送)。圖2圖示了根據(jù)某些實施例的、采用和不采用OSF附屬的IP塊的快速傅里葉變換(FFT)的用戶級代碼片段。部分c)由本發(fā)明的實施例來實現(xiàn),如在本文中進一步討論的那樣。核內(nèi)設備驅(qū)動器、IP塊可以通過諸如OSF的基于分組的互連與處理器核進行通信??梢杂蒓S的設備驅(qū)動器控制IP塊。在諸如網(wǎng)絡接口卡(NIC)驅(qū)動器的特殊情況下,存儲緩沖器可以是固定的,從而使得將起始地址傳遞給驅(qū)動器的任務是無實際意義的。在某些實施例中,更常規(guī)的使用情況是被尋址,例如,每次在IP塊上調(diào)用函數(shù)時,“緩沖器”地址就改變。為了在從任意用戶空間虛擬地址(VA)開始的IP塊上調(diào)用執(zhí)行,用戶應用可以進行系統(tǒng)調(diào)用,其陷入核中并且觸發(fā)設備驅(qū)動器(參見例如圖2b))。設備驅(qū)動器(諸如圖6的設備驅(qū)動器)通過在存儲器中的頁表中查詢物理地址(PA)(而不是通過使用翻譯后援緩沖器(TLB))來獲得物理地址(PA)。其然后將PA傳遞到IP塊。然而,頻繁的用戶一核模式切換和頁表遍歷能夠輕易地占用成千上萬的處理器時鐘,這嚴重地抵消了IP塊中加速的性能利益。此外,某些用于10設備的用戶級設備驅(qū)動器可以強迫應用和核共享某些預分配的、固定的存儲緩沖器或要求存儲系統(tǒng)中的額外的MMU將應用虛擬地址翻譯成物理地址。參照圖2,部分c)示出了依照一個實施例提供的編程模型。例如,應用在malIoc()之后進行一個系統(tǒng)調(diào)用。其后,其將能夠針對用戶空間虛擬地址(圖2中的va_alias)使用普通(例如,x86)存儲指令以將數(shù)據(jù)地址傳遞至IP塊。下一個圖將示出IP塊可以如何接收支持應用虛擬地址的物理存儲地址的示例。更具體地,圖3圖示了根據(jù)實施例的、執(zhí)行重映射操作的方法300的流程圖。重映射操作可以被實現(xiàn)為OS中的系統(tǒng)調(diào)用以例如使用另外無效或未使用的物理地址范圍來創(chuàng)建物理頁號或物理地址的影子。在一個實施例中,參考方法300所討論的數(shù)據(jù)或命令通信可以通過參考圖1所討論的主通道來加以執(zhí)行。在實施例中,在圖3的重映射執(zhí)行之后,逆重映射操作可以使用OSF中的從影子地址提取實際的物理地址的硬件。在一個實施例中,逆重映射操作可以通過翻轉(zhuǎn)地址的最高位的一個位或兩個位(或者在某些實施例中超過兩個位)來加以實現(xiàn)。在某些實施例中,在諸如在系統(tǒng)互連中或在IP塊內(nèi)部使用物理地址的任何地方都可以執(zhí)行逆重映射操作(影子到實際的物理變換)。在某些情形下,在系統(tǒng)互連中執(zhí)行這個操作可能將這個操作放到并非預期到IP塊的存儲事務的關鍵路徑上。在加速器內(nèi)部執(zhí)行這個操作可以要求將逆重映射邏輯構建于每個IP塊中??商鎿Q地,可以在OSF中提供這樣的硬件。采用該支持,應用可以使用單X86存儲指令來為IP塊指定存儲地址以供使用。參考圖1-3,在操作302處,可以在用戶的地址空間中為VA的別名(Alias_VA,在本文中也被可互換地稱為“VA_Alias”)分配多個字節(jié)(例如,圖2c中的“size”)。在操作304處,可以確定用于VA的PA。在操作306處,可以基于PA確定SA(影子地址)。例如,在操作306處,Remap_t0_Shad0W()可以提供具有簡單逆函數(shù)的映射,從而使得OSF可以容易地提取真實的物理地址。在某些系統(tǒng)中,實際安裝的存儲器小于物理地址空間的一半。在這樣的機器上,RemapO和Remap—1()函數(shù)二者都可以通過翻轉(zhuǎn)地址的最高的一個或兩個位來加以實現(xiàn)。例如,其中Remap(PA)=0x80000000異或PARemap-1(SA)=0x80000000異或SA。在某些實施例中,應用的未加速部分可以繼續(xù)使用原始的VA。進一步地,syscall0SF_remap()可以在mall0C()之后(例如,在應用初始化階段)被僅執(zhí)行一次(例如,參見圖2c))。在實施例中,可以由OSF硬件在IP塊函數(shù)的每一次調(diào)用時執(zhí)行Remap—1(SA)。在實施例中,OS需要使影子頁表與原始頁表一致。在操作308處,可以添加針對Alias_VA和SA的頁表條目。在一個實施例中,條目的頁屬性可以在操作308處被設置為不可緩存的(諸如參照圖4所討論的)。在操作310處,如果到達了操作302的所分配的大小(size)的末端,則可以返回Alias_VA;否則,在操作314處可以更新VA和Alias_VA(例如,VA和Alias_VA可以被增加選擇頁大小。在操作314之后,方法300以操作304重新開始。圖4圖示了根據(jù)某些實施例的、在OS頁表和TLB中的樣本條目。例如,0x0200400是由syscall_OSF_remap()所分配的用戶虛擬地址。作為VAOxOOOObOOO的別名,其由物理頁0x30a07000來支持。但是在頁表中,我們有意地翻轉(zhuǎn)最高位,因此物理頁變成0xb0a07000(0x80000000異或0x30a07000=0xb0a07000)。在實施例中,TLB和TLB缺失處理器(misshandler)不關心PA是否是影子。如圖4中所示出的那樣,由于進行了系統(tǒng)調(diào)用,所以針對調(diào)用的應用而改變地址映射。在這個示例中,高于0x40000000的任何PA在基線平臺中都是無效的。別名虛擬地址全部被映射到物理地址空間的無效區(qū)域402。兩個系統(tǒng)中的有效PA范圍0x0-0x40000000(包括安裝的存儲器和存儲器映射IO(MMIO))。圖5圖示了當應用在采用和不采用OSF中的特殊邏輯的平臺上執(zhí)行X86存儲指令“stregister->0x02004000”時(分別是圖5的(B)部分和(A)部分)的比較。在兩種情況下,處理器(CPU)MMU基于圖4(B)中所示出的頁表將VA翻譯成PA0xb0a07000。因為頁的屬性位指示不可緩存,所以寫會繞過處理器超高速緩存并且直接到達系統(tǒng)互連(圖5中的操作2)。在圖5(A)中,因為PA是在有效的PA地址范圍(例如,其中有效的PA范圍是0x0-0x40000000(包括安裝的存儲器和匪10))之外,所以硬件提高異常。在圖5(B)中,OSF挑選另外的無效物理地址0xb0a07000(操作3)、對其執(zhí)行逆重映射(操作4)、并且將寫事務轉(zhuǎn)換成命令分組,IP塊將從該命令分組得到真實的物理地址0x30a07000(操作5)。各種類型的計算系統(tǒng)可以被用來實現(xiàn)在本文中所討論的實施例(諸如參照圖1-5所討論的那些實施例)。例如,圖6圖示了計算系統(tǒng)600的實施例的方框圖。圖1的各代理102中的一個或多個可以包括計算系統(tǒng)600的一個或多個部件。計算系統(tǒng)600可以包括一個或多個耦合至互連網(wǎng)絡(或總線)604的(一個或多個)中央處理單元(CPU)602(其在本文中可以被共同稱為“各處理器602”或更一般地稱為“處理器602”)。各處理器602可以是任何類型的處理器,諸如通用處理器、網(wǎng)絡處理器(其可以處理通過計算機網(wǎng)絡605傳送的數(shù)據(jù))等等(包括精簡指令集計算機(RISC)處理器或者復雜指令集計算機(CISC))。此外,各處理器602可以具有單個或多個核設計。采用多核設計的各處理器602可以將不同類型的處理器核集成在相同的集成電路(IC)片上。同樣地,采用多核設計的各處理器602可以被實現(xiàn)為對稱或不對稱的多處理器。處理器602可以包括一個或多個超高速緩存和/或存儲器管理單元(MMU,諸如參照圖1-5所討論的)(未示出)。在各種實施例中,超高速緩存可以是專用的和/或共享的。一般地,超高速緩存存儲與在別處存儲的或較早地計算的原始數(shù)據(jù)相對應的數(shù)據(jù)。為了減少存儲器訪問時延,一旦數(shù)據(jù)被存儲在超高速緩存中,則以后的使用可以通過訪問超高速緩存的副本而不是通過重取或再計算原始數(shù)據(jù)來進行。(一個或多個)超高速緩存可以是任何類型的超高速緩存,諸如一級(Li)超高速緩存,二級(L2)超高速緩存,三級(L3),中級超高速緩存,末級超高速緩存(LLC)、等等,以存儲被系統(tǒng)600的一個或多個部件利用的電子數(shù)據(jù)(例如,包括指令)。如圖6中所示,OSF104可以被(例如通過互連604)耦合在一個或多個IP塊603與(一個或多個)處理器602之間。如參照圖1-5所討論的那樣,OSF104可以包括用于執(zhí)行逆重映射操作的邏輯。芯片組606可以被另外耦合至互連網(wǎng)絡604。進一步地,芯片組606可以包括存儲器控制集線器(MCH)608。MCH608可以包括耦合至存儲器612的存儲器控制器610。存儲器612可以存儲數(shù)據(jù),例如,其包括由處理器602或與計算系統(tǒng)600的部件通信的任何其它設備執(zhí)行的指令序列。在實施例中,存儲器612可以用來存儲諸如參照圖1-5所討論的數(shù)據(jù)(諸如頁表)。同樣地,在本發(fā)明的一個實施例中,存儲器612可以包括一個或多個易失性存貯(或存儲)設備,諸如隨機存取存儲器(RAM)、動態(tài)RAM(DRAM)、同步DRAM(SDRAM)、靜態(tài)RAM(SRAM)、等等。也可以利用非易失性存儲器,諸如硬盤。附加的設備可以被耦合至互連網(wǎng)絡604,諸如多處理器和/或多系統(tǒng)存儲器。MCH608可以進一步包括(例如,在實施例中經(jīng)由圖形加速器)耦合至顯示設備616的圖形接口614。在一個實施例中,圖形接口614可以經(jīng)由加速圖形端口(AGP)耦合至顯示設備616。在本發(fā)明的實施例中,顯示設備616(諸如平板顯示器)可以通過例如信號轉(zhuǎn)換器耦合至圖形接口614,所述信號轉(zhuǎn)換器將在諸如視頻存儲器或系統(tǒng)存儲器(例如,存儲器612)之類的存儲設備中存儲的圖像的數(shù)字表示轉(zhuǎn)化成由顯示器616來解釋并且顯示的顯不信號。如圖6中所示,集線器接口618可以將MCH608耦合至輸入/輸出控制集線器(ICH)620。ICH620可以將接口提供給耦合至計算系統(tǒng)600的輸入/輸出(I/O或10)設備。ICH620可以通過諸如可以符合PCIe規(guī)范的外設部件互連(PCI)橋接器、通用串行總線(USB)控制器等等的外設橋接器(或控制器)624耦合至總線622。橋接器6M可以提供在處理器602和外圍設備之間的數(shù)據(jù)通路。可以利用其它類型的拓撲。同樣地,多條總線可以例如通過多個橋接器或控制器耦合至ICH620。例如,總線622可以遵守可從PCI利益集團(PCISpecialInterestGroup),Portland,Oregon,U.S.A獲得的PCI局部總線規(guī)范(LocalBusSpecification),第3.0修訂本,2004年(在下文中被稱為“PCI總線”)。可替換地,總線622可以包括遵守可從前面提到的PCI利益集團,Portland,Oregon,U.S.A獲得的PCI-X規(guī)范第3.Oa修訂本,2003年(在下文中被稱為“PCI-X總線”)和/或PCIExpress(PCIe)規(guī)范(PCIe規(guī)范,第2.0修訂本,2006年)的總線。進一步地,總線622可以包括其它類型和配置的總線系統(tǒng)。而且,在本發(fā)明的各種實施例中,耦合至ICH620的其它外部設備可以包括集成驅(qū)動電子設備(IDE)或(一個或多個)小型計算機系統(tǒng)接口(SCSI)硬盤驅(qū)動器、(一個或多個)USB端口、鍵盤、鼠標、(一個或多個)并行端口、(一個或多個)串行端口、(一個或多個)軟盤驅(qū)動器、數(shù)字輸出支持(例如,數(shù)字視頻接口(DVI))、寸寸??偩€622可以被耦合至音頻設備626、一個或多個盤驅(qū)動器6和網(wǎng)絡適配器630(在實施例中網(wǎng)絡適配器630可以是NIC)。在一個實施例中,網(wǎng)絡適配器630或耦合至總線622的其它設備可以經(jīng)由切換邏輯612(在某些實施例中,其可以與圖4的邏輯412相同或類似)與芯片組606進行通信。其它設備可以被耦合至總線622。同樣地,在本發(fā)明的某些實施例中,各種部件(諸如網(wǎng)絡適配器630)可以被耦合至MCH608。此外,處理器602和MCH608可以被組合從而形成單個芯片。此外,計算系統(tǒng)600可以包括易失性和/或非易失性存儲器(或存貯器)。例如,非易失性存儲器可以包括以下各項中的一個或多個只讀存儲器(ROM),可編程ROM(PROM),可擦除PROM(EPROM),電EPROM(EEPROM),盤驅(qū)動器(例如628)、軟盤、光盤ROM(CD-ROM)、數(shù)字多用盤(DVD)、閃速存儲器、磁光盤或其它類型的能夠存儲電子數(shù)據(jù)(例如,包括指令)的非易失性機器可讀媒體。在實施例中,存儲器612可以包括以下各項中的一個或多個操作系統(tǒng)(0/S)632、應用634、和/或設備驅(qū)動器636(諸如0S、(一個或多個)應用、和/或參照圖1_5所討論的設備驅(qū)動器)。存儲器612還可以包括專用于MMIO操作的區(qū)域。在存儲器612中存儲的程序和/或數(shù)據(jù)可以被交換到盤驅(qū)動器628中作為存儲器管理操作的一部分。(一個或多個)應用634可以(例如在(一個或多個)處理器602上)運行以與耦合至網(wǎng)絡605的一個或多個計算設備傳送一個或多個分組。在實施例中,分組可以是可由(例如通過諸如網(wǎng)絡605之類的網(wǎng)絡)從至少一個發(fā)送器傳輸?shù)街辽僖粋€接收器的一個或多個電信號編碼的一個或多個符號和/或值的序列。例如,每個分組可以具有包括可以在路由和/或處理該分組的過程中利用的各種信息的報頭,所述各種信息諸如源地址、目的地址、分組類型、等等。每個分組還可以具有包括分組正通過計算機網(wǎng)絡(諸如網(wǎng)絡605)在各計算設備之間傳送的原始數(shù)據(jù)(或內(nèi)容)的有效負荷。在實施例中,應用634可以利用0/S632以例如通過設備驅(qū)動器636與系統(tǒng)600的各種部件進行通信。因此,設備驅(qū)動器636可以包括網(wǎng)絡適配器(530)專用命令,以例如經(jīng)由芯片組606提供在0/S632與網(wǎng)絡適配器630、或其它耦合至系統(tǒng)600的1/0設備之間的通信接口。在實施例中,0/S632可以包括網(wǎng)絡協(xié)議棧。協(xié)議棧一般指代可以被執(zhí)行以處理通過網(wǎng)絡(605)發(fā)送的分組的一組過程或程序,其中分組可以符合指定的協(xié)議。例如,可以使用TCP/IP棧來處理TCP/IP(傳輸控制協(xié)議/因特網(wǎng)協(xié)議)分組。設備驅(qū)動器636可以例如經(jīng)由協(xié)議棧來指示待處理的緩沖器638。網(wǎng)絡605可以包括任何類型的計算機網(wǎng)絡。網(wǎng)絡適配器630可以進一步包括直接存儲器存取(DMA)引擎652,其將分組寫入分配給可用描述符(例如存儲在存儲器612中)的緩沖器(例如存儲在存儲器612中)以通過網(wǎng)絡605來發(fā)送和/或接收數(shù)據(jù)。圖7圖示了布置在根據(jù)本發(fā)明的實施例的點到點(PtP)配置中的計算系統(tǒng)700。特別地,圖7示出了其中處理器、存儲器以及輸入/輸出設備被通過多個點到點接口互連的系統(tǒng)。參照圖1-6所討論的操作可以通過系統(tǒng)700的一個或多個部件來加以執(zhí)行。如圖7中所圖示的那樣,系統(tǒng)700可以包括多個處理器,其中為了清楚只示出了兩個處理器702和704。處理器702和704中的每個都可以包括局部存儲器控制器集線器(MCH)706和708,以使能夠與存儲器710和712(其可以存儲諸如參照權利要求2_3所討論的MMIO區(qū)域)進行通信。存儲器710和/或712可以存儲諸如參照圖6的存儲器612所討論的那些的各種數(shù)據(jù)。如圖7中所示出的那樣,處理器702和704還可以包括諸如參照圖4和6所討論的那些的一個或多個超高速緩存。在實施例中,處理器702和704可以是參照圖6所討論的各處理器602中的一個。處理器702和704可以分別使用PtP接口電路716和718經(jīng)由點到點(PtP)接口714交換數(shù)據(jù)。同樣地,處理器702和704中的每個都可以使用點到點接口電路726、728、730以及732經(jīng)由各個PtP接口722和7M與芯片組720交換數(shù)據(jù)。芯片組720可以進一步例如使用PtP接口電路737經(jīng)由高性能圖形接口736與高性能圖形電路734交換數(shù)據(jù)。在至少一個實施例中,OSF104可以將處理器702、704(例如通過PtP接口)耦合至一個或多個IP塊603。然而,本發(fā)明的其它實施例可以存在于圖7的系統(tǒng)700之內(nèi)的其它電路、邏輯單元或設備中。此外,本發(fā)明的其它實施例可以被遍及圖7中所圖示的多個電路、邏輯單元或設備進行分布。同樣地,(一個或多個)處理器702、704可以包括(一個或多個)MMU(諸如參照圖5所討論的)。進一步地,0SF104可以包括逆重映射邏輯或邏輯可以位于系統(tǒng)700中諸如在芯片組720、(一個或多個)通信設備746、耦合至總線740/744的設備等等內(nèi)的其它地方。芯片組720可以使用PtP接口電路741與總線740進行通信??偩€740可以具有與其通信的一個或多個設備,諸如總線橋接器742和I/O設備743。經(jīng)由總線744,總線橋接器742可以與其它設備進行通信,所述其它設備諸如鍵盤/鼠標745、通信設備746(諸如調(diào)制解調(diào)器、網(wǎng)絡接口設備、或可以與計算機網(wǎng)絡605進行通信的其它通信設備)、音頻I/O設備和/或數(shù)據(jù)存儲設備748。數(shù)據(jù)存儲設備748可以存儲可由處理器702和/或704執(zhí)行的代碼749。在本發(fā)明的各種實施例中,在本文中例如參照圖1-7所討論的操作可以被實現(xiàn)為硬件(例如,電路)、軟件、固件、微碼、或其組合,其可以被提供為計算機程序產(chǎn)品,例如包括在其上存儲有用來對計算機編程以執(zhí)行本文中所討論的處理的指令(或軟件程序)的機器可讀介質(zhì)或計算機可讀介質(zhì)。同樣地,術語“邏輯”可以通過舉例的方式包括軟件、硬件或軟件和硬件的組合。機器可讀介質(zhì)可以包括諸如參照圖1-7所討論的那些的存儲設備。此外,這樣的計算機可讀介質(zhì)可以被下載作為計算機程序產(chǎn)品,其中所述程序可以被經(jīng)由通信鏈路(例如總線、調(diào)制解調(diào)器或網(wǎng)絡連接)通過在載波或其它傳播媒質(zhì)中提供的數(shù)據(jù)信號從遠程計算機(例如,服務器)傳送到請求計算機(例如,客戶端)。在說明書中對“一個實施例”或“實施例”的提及意指與實施例相關地描述的特定的特征、結構、或特性可以被包括在至少一個實施方式中。在說明書中的許多地方中的措辭“在一個實施例中”的出現(xiàn)可以或可以不全部指代相同的實施例。同樣地,在說明書和權利要求書中可以使用術語“耦合”和“連接”以及它們的派生詞。在本發(fā)明的某些實施例中,“連接”可以用來指示兩個或更多個元件彼此處于直接的物理接觸或電接觸?!榜詈稀笨梢砸庵竷蓚€或更多個元件處于直接的物理接觸或電接觸。然而,“耦合”還可以意指兩個或更多個元件可以不彼此直接接觸,但是仍然可以彼此協(xié)作或相互作用。因此,盡管本發(fā)明的實施例已經(jīng)以特定于結構特征和/或方法行為的語言來加以描述,但是要理解的是,所請求保護的主題可以不限于所描述的特定特征或行為。而是,特定特征和行為被公開作為實現(xiàn)所請求保護的主題的樣本形式。權利要求1.一種裝置,包括片上系統(tǒng)結構(OSF),其用于將處理器耦合至邏輯塊;和存儲器,其用于響應于用戶級請求存儲與物理地址相對應的影子地址,其中所述OSF將包括用于從所述影子地址確定所述物理地址的邏輯。2.根據(jù)權利要求1所述的裝置,其中,所述存儲器將存儲與所述物理地址相對應的虛擬地址和與所述影子地址相對應的別名虛擬地址。3.根據(jù)權利要求2所述的裝置,其中,所述存儲器將存儲頁表,其中所述頁表將包括與所述別名虛擬地址和所述影子地址相對應的條目。4.根據(jù)權利要求1所述的裝置,其中,所述存儲器將存儲用于所述影子地址和所述物理地址的可緩存的指示。5.根據(jù)權利要求1所述的裝置,其中,所述處理器和所述邏輯塊共享只有在運行時間時才知道的地址。6.根據(jù)權利要求1所述的裝置,其中,所述處理器和所述邏輯塊共享不固定并且只有在運行時間時才知道的地址。7.根據(jù)權利要求1所述的裝置,其中,所述邏輯將反轉(zhuǎn)所述影子地址的最高位中的一個或多個以確定所述物理地址。8.根據(jù)權利要求1所述的裝置,其中,所述存儲器將存儲應用以生成用戶級請求。9.根據(jù)權利要求1所述的裝置,其中,所述存儲器將存儲應用以生成存儲操作,所述存儲操作將存儲器地址或其它參數(shù)傳遞到所述邏輯塊。10.根據(jù)權利要求1所述的裝置,其中,所述OSF和所述存儲器都在相同的集成電路片上。11.根據(jù)權利要求1所述的裝置,其中,所述處理器將包括經(jīng)由所述OSF與所述邏輯塊進行通信的多個處理器。12.根據(jù)權利要求11所述的裝置,其中,所述多個處理器核、所述存儲器以及所述OSF都在相同的集成電路片上。13.根據(jù)權利要求1所述的裝置,進一步包括用于將所述OSF耦合至所述處理器的第一接口和用于將所述OSF耦合至所述邏輯塊的第二接口,其中所述第一接口和所述第二接口中的每個都包括主通道和邊帶通道,并且其中,所述邏輯塊和所述處理器將通過所述第一和第二接口的主通道進行通信。14.一種方法,包括響應于用戶級請求分配存儲器的一部分以用于存儲與物理地址相對應的影子地址;以及在OSF處,從所述影子地址來確定所述物理地址。15.根據(jù)權利要求14所述的方法,進一步包括將與所述物理地址相對應的虛擬地址和與所述影子地址相對應的別名虛擬地址存儲在存儲器中。16.根據(jù)權利要求15所述的方法,進一步包括將頁表存儲在存儲器中,其中所述頁表將包括與所述別名虛擬地址和所述影子地址相對應的條目。17.根據(jù)權利要求14所述的方法,其中,分配所述存儲器的一部分包括分配無效的物理地址范圍。18.根據(jù)權利要求14所述的方法,進一步包括將用于所述影子地址和所述物理地址的可緩存的指示存儲在所述存儲器中。19.根據(jù)權利要求14所述的方法,進一步包括反轉(zhuǎn)所述影子地址的最高位中的一個或多個以確定所述物理地址。20.根據(jù)權利要求14所述的方法,進一步包括將應用存儲在所述存儲器中;以及所述應用生成所述用戶級請求。21.根據(jù)權利要求14所述的方法,進一步包括將應用存儲在所述存儲器中;以及所述應用生成存儲操作,所述存儲操作將存儲器地址或其它參數(shù)傳遞到邏輯塊。22.根據(jù)權利要求21所述的方法,進一步包括經(jīng)由所述OSF將處理器耦合至所述邏輯塊。23.—種系統(tǒng),包括輸入/輸出(IO)設備;片上系統(tǒng)結構(0SF),其用于將處理器耦合至所述IO設備;以及存儲器,其用于響應于用戶級請求存儲與物理地址相對應的影子地址,其中所述OSF將包括用于從所述影子地址來確定所述物理地址的邏輯。24.根據(jù)權利要求23所述的系統(tǒng),其中,所述存儲器將存儲與所述物理地址相對應的虛擬地址和與所述影子地址相對應的別名虛擬地址。25.根據(jù)權利要求M所述的系統(tǒng),其中,所述存儲器將存儲頁表,其中所述頁表將包括與所述別名虛擬地址和所述影子地址相對應的條目。26.根據(jù)權利要求23所述的系統(tǒng),其中,所述存儲器將存儲用于所述影子地址和所述物理地址中的每一個的可緩存的指示。27.根據(jù)權利要求23所述的系統(tǒng),其中,所述處理器和所述邏輯塊共享只有在運行時間時才知道的地址。28.根據(jù)權利要求1所述的裝置,其中,所述邏輯將反轉(zhuǎn)所述影子地址的最高位中的一個或多個以確定所述物理地址。29.根據(jù)權利要求23所述的系統(tǒng),其中,所述存儲器將存儲應用以生成所述用戶級請求。30.根據(jù)權利要求23所述的系統(tǒng),其中,所述存儲器將存儲應用以生成存儲操作,所述存儲操作將存儲器地址或其它參數(shù)傳遞到所述IO設備。全文摘要描述了用于控制片上系統(tǒng)結構(OSF)塊的方法和裝置。在一個實施例中,可以響應于用戶級請求存儲與物理地址相對應的影子地址并且(例如存在于OSF中的)邏輯電路可以從所述影子地址來確定物理地址。還公開了其它的實施例。文檔編號G06F12/02GK102378968SQ201080014512公開日2012年3月14日申請日期2010年3月3日優(yōu)先權日2009年3月31日發(fā)明者阿賈諾維克J.,E.埃斯皮格M.,瓦赫M.,艾爾R.,方Z.申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
武清区| 罗甸县| 桐梓县| 湾仔区| 广水市| 正阳县| 慈利县| 安岳县| 股票| 德清县| 平邑县| 虹口区| 山东省| 勃利县| 平南县| 滨州市| 景洪市| 佛山市| 黑水县| 修水县| 五华县| 谷城县| 昆明市| 镇平县| 莱阳市| 赤壁市| 霍山县| 高青县| 汤原县| 汶上县| 永清县| 长沙市| 古田县| 刚察县| 原阳县| 渭南市| 措美县| 石屏县| 巧家县| 湖南省| 普安县|