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

多端口共享存儲器的制造方法

文檔序號:10663581閱讀:484來源:國知局
多端口共享存儲器的制造方法
【專利摘要】本公開的某些實施例提供了一種系統(tǒng),該系統(tǒng)包括:共享存儲器單元和仲裁器,該仲裁器被配置為生成時鐘信號,接收關于多個代理的每個代理的帶寬的信息,以及確定用于在多個代理中選擇單個代理的時鐘頻率或順序,以允許單個代理在時鐘信號的單個時鐘周期中從共享存儲器單元/向共享存儲器單元并行傳送數(shù)據(jù),其中順序至少部分基于多個代理的每個代理的帶寬。該仲裁器還被配置為循環(huán)通過所確定的用于在多個代理中選擇單個代理的順序,以允許單個代理在單個時鐘周期中從共享存儲器單元/向共享存儲器單元傳送數(shù)據(jù)。
【專利說明】多端口共享存儲器
[0001]相關申請的交叉引用
[0002]本申請要求2014年12月15日提交的、名稱為“Multiple Port Shared Memory”的美國專利申請?zhí)?4/570,886的優(yōu)先權,其要求2013年12月17日提交的、名稱為“Multiple-port Shared Memory with Port Base Programmable Bandwidth” 的美國臨時專利申請?zhí)?1/917,229的權益和優(yōu)先權,其通過引用并入于此。
技術領域
[0003]本公開的各實施例涉及存儲器設備,并且更具體地涉及共享存儲器設備。
【背景技術】
[0004]除非本文中另外指出,否則這一部分所描述的方法并不通過包括在這一部分中而是本公開內容的權利要求的現(xiàn)有技術或者被承認是現(xiàn)有技術。
[0005]存儲器設備可以在許多類型的電子設備中被采用,僅舉若干示例,諸如計算機、蜂窩電話、個人數(shù)字助理(PDA)、數(shù)據(jù)記錄器和導航裝置。在這些電子設備中,各種類型的非易失性存儲器設備可以被采用,僅舉若干示例,諸如NAND或NOR閃存、靜態(tài)隨機訪問存儲器(SRAM)、動態(tài)隨機訪問存儲器(DRAM)和相變存儲器。通常,寫入或編程過程可以用于在這種存儲器設備中存儲信息,而讀取過程可以用于獲取所存儲的信息。
[0006]在某些應用中,存儲器設備可以在多個中央處理單元(CPU)和信息處理器(IP)之間共享。在這種共享存儲器設備上存儲的信息可以在多個CPU和IP之間交換。片上系統(tǒng)(SOC)是將計算機或其他電子系統(tǒng)的多個部件集成到單個芯片襯底的集成電路(IC) AOC可以包括共享存儲器設備和訪問共享存儲器設備用于數(shù)據(jù)通信的多個CPU。例如,通過共享端口訪問具有輪轉仲裁的共享存儲器設備可能具有長且不可預測的延遲。一種用于在系統(tǒng)中多個CPU之間共享存儲器設備的更有效技術可以增加系統(tǒng)帶寬并且減少功耗。

【發(fā)明內容】

[0007]在各種實施例中,本公開提供了一種包括共享存儲器單元和仲裁器的系統(tǒng),該仲裁器可以被稱為時隙仲裁器或調度器,但在下文被稱為“仲裁器”。該仲裁器被配置為生成時鐘信號,接收關于多個代理的每個代理的帶寬的信息,以及確定用于在多個代理中選擇單個代理的時鐘頻率或順序,以允許單個代理在時鐘信號的單個時鐘周期中從共享存儲器單元/向共享存儲器單元并行傳送數(shù)據(jù)。該順序至少部分基于多個代理的每個代理的帶寬。該仲裁器進一步被配置為循環(huán)通過所確定的用于在多個代理中選擇單個代理的順序,以允許單個代理在單個時鐘周期中從共享存儲器單元/向共享存儲器單元傳送數(shù)據(jù)。
[0008]在某些實施例中,一種方法,包括:生成時鐘信號;接收關于多個代理的每個代理的帶寬的信息;以及確定用于在多個代理中選擇單個代理的時鐘頻率或順序,以允許單個代理在時鐘信號的單個時鐘周期中從共享存儲器單元/向共享存儲器單元并行傳送數(shù)據(jù)。該順序至少部分基于多個代理的每個代理的帶寬。該方法進一步包括循環(huán)通過所確定的用于在多個代理中選擇單個代理的順序,以允許單個代理在單個時鐘周期中從共享存儲器單元/向共享存儲器單元傳送數(shù)據(jù)。
[0009]在某些實施例中,一種存儲有計算機可執(zhí)行指令的計算機可讀存儲介質,當計算機可執(zhí)行指令由處理器執(zhí)行時,配置處理器執(zhí)行以下操作,包括:生成時鐘信號;確定用于在多個代理中選擇單個代理的時鐘頻率或順序,以允許單個代理在時鐘信號的單個時鐘周期中從共享存儲器單元/向共享存儲器單元并行傳送數(shù)據(jù),其中順序至少部分基于多個代理的每個代理的帶寬;以及循環(huán)通過所確定的用于在多個代理中選擇單個代理的順序,以允許單個代理在單個時鐘周期中從共享存儲器單元/向共享存儲器單元傳送數(shù)據(jù)。
【附圖說明】
[0010]在下面的詳細描述中,對形成本文一部分的附圖進行參考,其中相似的附圖標記始終指代相似的部分,并且其中通過實施例的方式示出本公開內容的原理。應當理解,可以利用其它實施例,并且可以在不偏離本公開內容的范圍的情況下做出結構或者邏輯更改。因此,應當在限制性意義上來理解以下詳細描述,并且根據(jù)本公開內容的實施例的范圍由所附權利要求及其等同來限定。
[0011 ]圖1是根據(jù)某些實施例的計算系統(tǒng)的框圖;
[0012]圖2是根據(jù)某些實施例圖示了向共享存儲器單元寫入數(shù)據(jù)的過程的數(shù)據(jù)傳送的框圖;
[0013]圖3是根據(jù)某些實施例圖示了從共享存儲器單元讀取數(shù)據(jù)的過程的數(shù)據(jù)傳送的框圖;
[0014]圖4是根據(jù)某些實施例圖示了從共享存儲器單元讀取數(shù)據(jù)的過程的時間流圖;
[0015]圖5是根據(jù)其他實施例圖示了從共享存儲器單元讀取數(shù)據(jù)的過程的時間流圖;以及
[0016]圖6是根據(jù)其他實施例由多個代理管理對共享存儲器單元的訪問的過程的流程圖。
【具體實施方式】
[0017]共享存儲器單元(SMU)可以由多個中央處理單元(CPU)或硬件IP(例如,媒體控制單元)共享,下文被稱為“代理”。例如,多個代理可以通過多個代理共享的總線(例如,“共享總線”)來訪問SMU以從SMU讀取或向SMU寫入。在某些實施例中,每次只有一個代理可以訪問SMU。因此,存儲器仲裁器模塊(其可以被稱為時隙仲裁器或調度器,但下文被稱為“仲裁器”)可以用于協(xié)調多個代理中可以在任意特定時間訪問SMU的代理。仲裁器可以基于若干因素來執(zhí)行這種協(xié)調,諸如例如每個代理的帶寬以及仲裁器與SMU之間總線的寬度。在本文中,總線的寬度可以被定義為該總線中包括的單獨導電體或排線(例如,線)的數(shù)目。例如,128位寬總線可以包括128個排線,其單獨地承載一位數(shù)據(jù)。代理的帶寬可以被定義為在單個時間單元(諸如時鐘周期)中向代理傳送或從代理傳送的數(shù)據(jù)的平均位數(shù)。在某些情況下,代理的帶寬還可以被定義為該代理的輸出端口和/或輸入端口的單獨導電體(例如,管腳)的數(shù)目。例如,如果代理具有32位寬的輸入端口和/或輸出端口,則代理可以具有32位的帶寬。代理可以在每個時鐘周期或其他時間單元(諸如每納秒(如果納秒是針對系統(tǒng)選定的參考時間單元))執(zhí)行讀取或寫入操作。在另一示例中,代理可以具有32位帶寬,如果代理經由64位寬電纜或總線連接到外部實體(諸如系統(tǒng)總線、仲裁器或存儲器設備),則讀取或寫入操作可以每2納秒被執(zhí)行。然而,所要求保護的主題不限于這些方面。
[0018]圖1圖示了根據(jù)各種實施例并入SMU102和仲裁器104的計算系統(tǒng)100。僅列出若干示例,SMU 102可以包括閃存、SRAM、DRAM或固態(tài)驅動(SSD)。計算系統(tǒng)100包括提供SMU 102與仲裁器104之間通信路徑的存儲器總線106。計算系統(tǒng)100還包括多個代理108A-108D。雖然圖1中圖示了并且在本文若干實施例中描述了四個代理,但是任意數(shù)目的代理可以呈現(xiàn)在計算系統(tǒng)100中,并且所要求保護的主題不限于此方面。例如,代理108A-108D可以單獨包括一個或多個處理器。在某些實現(xiàn)方式中,代理108A-108D可以經由代理總線110A-110D與仲裁器104通信(例如,傳送數(shù)據(jù))。代理總線的寬度可以至少部分取決于代理的特定設計以及代理總線的帶寬,并且代理的帶寬可以彼此相等或者不相等。例如,如果代理108A的帶寬是32位,則針對代理108B的代理總線的寬度可以是64位。每個代理108的帶寬可以彼此相等或者不相等。
[0019]雖然未圖示,但是計算系統(tǒng)100可以包括其他部件,諸如顯示器設備、輸入設備和聯(lián)網設備。
[0020]在某些實現(xiàn)方式中,SMU102可以包括單個芯片或裸片。在其他實現(xiàn)方式中,SMU102可以包括形成芯片集的多芯片模塊或多個分立部件。在某些實現(xiàn)方式中,雖然所要求保護的主題沒有這樣的限制,但是計算系統(tǒng)100可以在單個封裝中的單個芯片上實現(xiàn)。
[0021]仲裁器104可以包括一個或多個處理器或存儲器控制器112,并且可以被并入SMU102作為能夠施加對SMU 102進行控制的單個芯片或單獨部件。仲裁器104可以被配置為控制在SMU 102上執(zhí)行的若干過程,諸如格式化可尋址數(shù)據(jù)位置、對易失性或非易失性存儲器的存儲器單元或塊進行分區(qū)、存儲數(shù)據(jù)、讀取數(shù)據(jù)以及擦除數(shù)據(jù)。在傳統(tǒng)輪轉仲裁器中,每個代理可以在其請求被授權時訪問存儲器,同時其他代理需要等待直到授權代理完成其與存儲器的當前事務。至少部分取決于其事務的釋放量,等待周期可以是任意數(shù)目的周期。因此,延遲可能是不可預測的并且可能相對較大。另一方面,(時隙)仲裁器104可以控制與每個代理相關聯(lián)的時隙,使得每個代理可以在其時隙命中時訪問存儲器。換言之,命中的代理不需要等待其他代理。此方法允許每個代理彼此獨立地訪問存儲器,并且通過循環(huán)通過確定的序列來維持針對讀取操作的固定最差延遲。
[0022]在各種實施例中,仲裁器104可以被配置為控制或調整與每個代理相關聯(lián)的時隙數(shù)目。例如,仲裁器104可以針對總共六個時隙將與代理108A相關聯(lián)的時隙調整為0.4、將與代理108B相關聯(lián)的時隙調整為0.1、將與代理108C相關聯(lián)的時隙調整為2.5以及將與代理108D相關聯(lián)的時隙調整為3。
[0023]仲裁器104可以包括高速緩存存儲器112和時鐘114。高速緩存存儲器112可以包括任意若干類型的易失性或非易失性存儲器。高速緩存存儲器112可以在向SMU 102寫入的過程期間經由代理總線110接收并臨時存儲來自代理108的數(shù)據(jù)。另一方面,高速緩存存儲器112可以在從SMU 102讀取的過程期間經由存儲器總線106接收并臨時存儲來自SMU 102的數(shù)據(jù)。時鐘114例如可以生成與計算系統(tǒng)100中任意其他時鐘(諸如與代理108相關聯(lián)的時鐘)異步的周期電信號。在某些實現(xiàn)方式中,為了簡化系統(tǒng)設計,時鐘114可以與SMU 102的時鐘同步。
[0024]圖2是根據(jù)某些示例實施例圖示了向SMU202寫入數(shù)據(jù)的過程200的系統(tǒng)中數(shù)據(jù)傳送的框圖。圖2中圖示的系統(tǒng)的一個或多個元件可以與圖1的系統(tǒng)100中圖示的對應元件相同或相似。例如,代理O至代理3的每個代理可以與每個代理108相同或相似。仲裁器204可以與仲裁器104相同或相似。SMU 202可以與SMU 102相同或相似等。在過程200中,代理O至代理3的每個代理可以包括產生待向SMU 202寫入的數(shù)據(jù)d0-d3的一個或多個處理器。代理O至代理3的每個代理經由代理總線206向仲裁器204提供數(shù)據(jù)d0-d3。每個代理總線206專用于承載針對代理O至代理3的特定代理的數(shù)據(jù)。雖然所要求保護的主題不限于任意特定總線寬度或處理器帶寬,但是過程200是特定示例實現(xiàn)方式,其中每個代理總線206是32位寬并且代理O至代理3的每個代理具有32位帶寬。換言之,代理O至代理3的每個代理產生每時間單元32位寬的數(shù)據(jù)。代理O至代理3的每個代理可以將32位寬(例如,并行)數(shù)據(jù)置于代理總線206 上。
[0025]為了清楚起見,過程200針對代理O進行了具體的詳細描述。應當理解以下針對代理O的描述應用于代理1、代理2、代理3以及可以包括在系統(tǒng)100中的任意其他代理。
[0026]來自代理O的數(shù)據(jù)可以經由代理總線206以連續(xù)32位寬數(shù)據(jù)分組提供給仲裁器204。四個這樣的數(shù)據(jù)分組被圖示為代理總線206上的數(shù)據(jù)d0-d3,即便任意數(shù)目的數(shù)據(jù)分組可以在任意特定時間出現(xiàn)在代理總線206上。因此,仲裁器204可以接收數(shù)據(jù)d0(32位)隨后數(shù)據(jù)dl(32位),以此類推。在某些實現(xiàn)方式中,仲裁器204可以包括高速緩存存儲器208用于在向SMU 202寫入的過程期間經由代理總線206接收并臨時存儲來自代理O的數(shù)據(jù)。在某些實現(xiàn)方式中,高速緩存存儲器208可以在任意特定時間存儲多于數(shù)據(jù)d0-d3。高速緩存存儲器208可以包括任意若干類型的易失性或非易失性存儲器。
[0027]例如,仲裁器204可以包括時鐘210用于生成與關聯(lián)于代理O的任意時鐘異步的周期電信號。仲裁器204可以基于時鐘210的時鐘信號來執(zhí)行若干過程。在某些實現(xiàn)方式中,時鐘210可以與仲裁器204連接(例如,有線或無線)的一個或多個部件(例如,CPU、其他存儲器)同步。
[0028]至少部分基于代理O至代理3的帶寬,仲裁器204可以被配置為控制或調整SMU 202中存儲的可尋址數(shù)據(jù)的時鐘或寬度。例如,仲裁器204可以將SMU 202中存儲的數(shù)據(jù)的寬度調整為32位寬。換言之,一個存儲器地址可以用于唯一地標識SMU 202中存儲的32位數(shù)據(jù)。在另一示例中,如果仲裁器204將SMU 202中存儲的數(shù)據(jù)的寬度調整為128位寬,則一個存儲器地址可以用于唯一地標識SMU 202中存儲的128位數(shù)據(jù)。此外,至少部分基于代理O至代理3的帶寬,仲裁器204可以被配置為控制或調整存儲器總線212的寬度。例如,仲裁器204可以四個32位數(shù)據(jù)分組數(shù)據(jù)d0-d3組裝成128位寬(4乘以32)的單個數(shù)據(jù)分組。在將128位數(shù)據(jù)分組置于存儲器總線212上之前,仲裁器204可以配置存儲器總線212在單個時鐘周期(例如,基于時鐘210)中將128位數(shù)據(jù)分組承載到SMU 202。因此,存儲器總線212可以是128排線寬。在某些實現(xiàn)方式中,存儲器總線212的排線數(shù)目可以大于存儲器總線212上承載的數(shù)據(jù)的寬度。在這種情況下,仲裁器204可以控制存儲器總線212的排線數(shù)目以用于向SMU 202承載數(shù)據(jù)/WSMU 202承載數(shù)據(jù)。
[0029]仲裁器204允許每次一個代理至少部分基于時隙方案來訪問SMU 202。例如,代理I可以在時隙I訪問SMU 202,而代理O可以在時隙O訪問SMU 202。仲裁器204確定多個代理中的哪個代理被授權在特定時隙值訪問SMU 202。時隙值可以每個時鐘周期增加并且可以在到達最大值時回環(huán)到O。針對每個代理的每個訪問周期允許來自該代理的特定數(shù)目的并行數(shù)據(jù)位經由存儲器總線212傳入到SMU 202。在本示例實施例中,仲裁器204允許針對代理O的數(shù)據(jù)d0-d3傳入(例如,被寫入)SMU 202。
[0030]然而,在數(shù)據(jù)d0-d3可以被置于存儲器總線214上之前,仲裁器204將四個32位寬分組數(shù)據(jù)d0-d3組裝成單個128位寬數(shù)據(jù)分組。換言之,所有128位數(shù)據(jù)被彼此并行放置,并且被隨后置于存儲器總線212上。如圖2所示,系統(tǒng)對于仲裁器204的左邊是基于32位數(shù)據(jù)寬度,而系統(tǒng)對于仲裁器204的右邊是基于128位數(shù)據(jù)寬度。
[0031]通常,可以存在多于數(shù)據(jù)d0-d3被從代理O寫入SMU 202。仲裁器204可以授權代理O對SMU 202的訪問,其對于待被寫入SMU 202的數(shù)據(jù)d0-d3足夠長(例如,一個時鐘周期)。附加數(shù)據(jù)可以在仲裁器204授權其他代理訪問SMU 202之后被寫入SMU 202。因此,例如,在代理O的數(shù)據(jù)d0-d3被寫入SMU 202之后,仲裁器204可以授權代理I訪問SMU 202。代理I的數(shù)據(jù)d0-d3繼而可以被寫入SMU 202。接下來,在代理I的數(shù)據(jù)d0-d3被寫入SMU 202之后,仲裁器204可以授權代理2訪問SMU 202。代理2的數(shù)據(jù)d0-d3繼而可以被寫入SMU 202。接下來,在代理2的數(shù)據(jù)d0-d3被寫入SMU 202之后,仲裁器204可以授權代理3訪問SMU 202。代理3的數(shù)據(jù)d0-d3繼而可以被寫入SMU 202。接下來,在代理3的數(shù)據(jù)d0-d3被寫入SMU 202之后,仲裁器204可以開始重復授權代理訪問SMU 202的循環(huán)并且再次授權代理O訪問SMU 202。代理O的新數(shù)據(jù)集d0-d3(相比于在第一授權周期已經被寫入SMU 202的代理O的數(shù)據(jù)d0-d3)繼而可以被寫入SMU 202。接下來,代理I被授權訪問SMU 202,以此類推。
[0032]圖3是根據(jù)某些示例實施例圖示從SMU302讀取數(shù)據(jù)的過程300的系統(tǒng)中數(shù)據(jù)傳送的框圖。圖3中圖示的系統(tǒng)的一個或多個元件可以與圖1的系統(tǒng)100以及圖2所示系統(tǒng)中圖示的對應元件相同或相似。例如,代理O至代理3的每個代理可以與每個代理108相同或相似。仲裁器304可以與仲裁器104相同或相似。SMU 302可以與SMU 102相同或相似等。
[0033]雖然所要求保護的主題不限于任意特定總線寬度或處理器帶寬,但是過程300是特定示例實現(xiàn)方式,其中存儲器總線306是128位寬、代理O至代理3的每個代理具有32位帶寬以及每個代理總線308是32位寬。換言之,代理O至代理3的每個代理讀取并處理32位寬的數(shù)據(jù)。
[0034]在過程300,SMU 302正在存儲待由代理O至代理3的每個代理讀取的數(shù)據(jù)。所存儲的數(shù)據(jù)可以被每次讀取一個數(shù)據(jù)分組。在本示例實施例中,一個數(shù)據(jù)分組時128位寬,以便數(shù)據(jù)的128個并行位從SMU 302—次讀取。期望仲裁器304將并行數(shù)據(jù)的128位分區(qū)的過程,在圖3中數(shù)據(jù)的第一 32位被標識為d0,數(shù)據(jù)的第二 32位被標識為dl,數(shù)據(jù)的第三32位被標識為d2,以及數(shù)據(jù)的第四32位被標識為d3。因此,在讀取過程期間,SMU 302中存儲的數(shù)據(jù)以包括數(shù)據(jù)d0-d3的128位并行數(shù)據(jù)分組被置于存儲器總線306上。例如,即使代理可以請求從SMU 302讀取多于128位數(shù)據(jù),數(shù)據(jù)也是一次被讀取128位。
[0035]為了清楚起見,過程200針對代理O進行了具體的詳細描述。應當理解以下針對代理O的描述應用于代理1、代理2、代理3以及可以包括在系統(tǒng)100中的任意其他代理。
[0036]針對代理O讀取的數(shù)據(jù)可以經由存儲器總線306以128位數(shù)據(jù)分組從SMU 302提供給仲裁器304。在接收128位并行數(shù)據(jù)之后,仲裁器304可以將128位并行數(shù)據(jù)分區(qū)成并行數(shù)據(jù)d0-d3的四個32位寬分組。數(shù)據(jù)d0-d3的分組經由代理總線308被連續(xù)提供給代理O。四個這樣的數(shù)據(jù)分組被圖示為代理總線308上的數(shù)據(jù)d0-d3,即便任意數(shù)目的數(shù)據(jù)分組可以在任意特定時間出現(xiàn)在代理總線308上。因此,代理O可以接收讀取數(shù)據(jù)d0(32位),隨后讀取數(shù)據(jù)dl(32位)以此類推。在某些實現(xiàn)方式中,仲裁器304可以包括高速緩存存儲器310用于在從SMU 302讀取的過程期間經由存儲器總線306接收并臨時存儲來自SMU 302的讀取數(shù)據(jù)。在某些實現(xiàn)方式中,高速緩存存儲器310可以在任意特定時間存儲多于數(shù)據(jù)d0-d3。高速緩存存儲器310可以包括任意若干類型的易失性或非易失性存儲器。
[0037]仲裁器304可以包括時鐘312用于生成與SMU102的時鐘同步的周期電信號,其例如可以與關聯(lián)于代理O或SMU 302的任意時鐘異步。仲裁器304可以基于時鐘312的時鐘信號來執(zhí)行若干過程。
[0038]至少部分基于代理O至代理3的帶寬,仲裁器304可以被配置為控制或調整從SMU302讀取的可尋址數(shù)據(jù)的時鐘或寬度。例如,仲裁器304可以將從SMU 302讀取的數(shù)據(jù)的寬度調整為128位寬。因此,一個存儲器地址可以用于唯一標識SMU 302中存儲的128位數(shù)據(jù)。此夕卜,至少部分基于代理O至代理3的帶寬,仲裁器304可以讀取四個32位數(shù)據(jù)分組數(shù)據(jù)d0-d3作為128位寬(4乘以32)的單個數(shù)據(jù)分組。在從SMU 302讀取128位數(shù)據(jù)分組并將該128位數(shù)據(jù)分組置于存儲器總線306上之前,仲裁器304可以配置存儲器總線306以在單個時鐘周期(例如,基于時鐘310)中將128位數(shù)據(jù)分組從SMU 302承載到仲裁器304。因此,如在本示例實施例中,存儲器總線306可以是128排線寬。在某些實現(xiàn)方式中,存儲器總線306的排線數(shù)目可以大于存儲器總線306上正在承載的數(shù)據(jù)的寬度。在這種情況下,仲裁器304可以控制存儲器總線306的排線數(shù)目以用于向SMU 302承載數(shù)據(jù)/WSMU 302承載數(shù)據(jù)。
[0039]仲裁器304允許一次一個代理至少部分基于時隙方案從SMU 302讀取。例如,代理I可以在時隙I從SMU 302讀取,而代理O在時隙O訪問SMU 302。仲裁器304確定多個代理中的哪個代理被授權訪問以在特定時隙值從SMU 302讀取。時隙值可以每個時鐘周期增加并且可以在到達最大值時回環(huán)到O。針對每個代理的每個訪問周期允許來自該代理的特定數(shù)目的并行數(shù)據(jù)位經由存儲器總線306從SMU 302讀取。在本示例實施例中,仲裁器304允許代理O從SMU 302讀取數(shù)據(jù)d0-d3。
[0040]仲裁器304從SMU 302接收被配置為單個128位并行數(shù)據(jù)分組的讀取數(shù)據(jù)d0_d3。在該128位并行數(shù)據(jù)分組被置于代理總線308上之前,仲裁器304將該128位并行數(shù)據(jù)分組分區(qū)成相應地連續(xù)四個32位寬并行數(shù)據(jù)分組數(shù)據(jù)d0-d3。如圖3所示,系統(tǒng)對于仲裁器304的左邊是基于32位數(shù)據(jù)寬度,而系統(tǒng)對于仲裁器304的右邊是基于128位數(shù)據(jù)寬度。
[0041 ]如早先提到的,可以存在多于數(shù)據(jù)d0-d3由特定代理從SMU 302讀取。例如,仲裁器304可以授權代理O訪問SMU 302以從SMU 302讀取128位數(shù)據(jù)。在仲裁器304授權其他代理訪問SMU 302之后,代理O可以從SMU 302讀取附加數(shù)據(jù)。因此,例如,在128位數(shù)據(jù)由代理O從SMU 302讀取之后,仲裁器304可以授權代理I訪問SMU 302。128位數(shù)據(jù)繼而可以由代理I從SMU 302讀取。接下來,在128位數(shù)據(jù)由代理I從SMU 302讀取之后,仲裁器304可以授權代理2訪問SMU 302。128位數(shù)據(jù)繼而可以由代理2從SMU 302讀取。接下來,在128位數(shù)據(jù)由代理2從SMU 302讀取之后,仲裁器304可以授權代理3訪問SMU 302。128位數(shù)據(jù)繼而可以由代理3從SMU 302讀取。接下來,在128位數(shù)據(jù)由代理3從SMU 302讀取之后,仲裁器304可以開始重復授權代理訪問SMU 302的循環(huán)并且再次授權代理O訪問SMU 302。另一128位數(shù)據(jù)(在第一授權周期中由代理O已經讀取的128位數(shù)據(jù)之后)繼而可以由代理O從SMU 302讀取。接下來,代理I被授權訪問SMU 302以此類推。
[0042]圖4是根據(jù)某些實施例圖示了用于從SMU讀取數(shù)據(jù)的過程400的時間流圖。執(zhí)行過程400的仲裁器可以接收關于多個代理(諸如圖3中所示的代理O至代理3)的每個代理的帶寬的信息。在某些實現(xiàn)方式中,這種信息可以由單獨代理提供給仲裁器。例如,仲裁器可以在握手過程中仲裁器與代理之間的連接之后向代理提供信息。仲裁器可以確定用于在多個代理中選擇單個代理的順序以允許該單個代理在單個時鐘周期中從SMU讀取數(shù)據(jù)。該順序可以至少部分基于多個代理中每個代理的帶寬。在某些實現(xiàn)方式中,仲裁器可以維持針對讀取操作的恒定延遲,同時循環(huán)通過所確定的順序。
[0043]雖然過程400可以涉及任意帶寬,但是為了簡化以下描述,從SMU讀取數(shù)據(jù)的每個代理的帶寬被假設為32位。時鐘信號402由仲裁器和存儲器(SMU)中或與其相關聯(lián)的時鐘電路生成,諸如圖3所示仲裁器304中的時鐘312。時隙404標識由仲裁器管理的讀取周期的一部分。例如,讀取周期的開始在時鐘周期I并且被標識為T0,讀取周期的結束在時鐘周期4并且被標識為T3,下一讀取周期的開始在時鐘周期5并且被標識為TO以此類推。包括針對每個代理的一個讀取周期的讀取周期由仲裁器管理。代理授權行406標識哪個代理被授權在特定時間(例如,時鐘周期)訪問SMU?!癆0”對應于代理O,“Al”對應于代理I以此類推。例如,在時鐘周期1、5、9…出現(xiàn)的時隙T O,代理A O被授權訪問以從SMU讀取。在時鐘周期2、6、1…出現(xiàn)的時隙Tl,代理Al被授權訪問以從SMU讀取以此類推。其中單獨代理被授權訪問SMU的順序至少部分基于多個代理的每個代理的帶寬(在本示例實施例中32位)由仲裁器確定。此夕卜,仲裁器可以響應于多個代理的一個或多個代理的帶寬的變化而改變該順序。例如,如果具有第一帶寬的代理被具有不同于該第一帶寬的第二帶寬的另一代理代替,則仲裁器可以改變順序。在另一示例中,如果代理被添加到已經存在的代理,則仲裁器可以對應地改變順序。
[0044]當代理AO被授權在時隙TO訪問SMU時,代理AO從SMU讀取數(shù)據(jù)AO。因為每個代理AO-A3的帶寬是32位,因此在本示例實施例中存在四個代理,SMU中存儲的AO數(shù)據(jù)是128位寬(32位乘以4)。因此,如早先所述,128位寬AO數(shù)據(jù)可以被置于存儲器總線408,其可以與圖3所示的存儲器總線306相同或相似。具體地,128位寬AO數(shù)據(jù)被置于存儲器總線上使得所有128位并行,并且該128位占有存儲器總線一個時鐘周期。在下一時鐘周期,由代理Al讀取的128位寬Al數(shù)據(jù)將占有存儲器總線。在第三時鐘周期,由代理A2讀取的128位寬A2數(shù)據(jù)將占有存儲器總線。在第四時鐘周期,由代理A3讀取的128位寬A3數(shù)據(jù)將占有存儲器總線。在第五時鐘周期,在第一時鐘周期早先讀取的128位寬AO數(shù)據(jù)之后的128位寬AO數(shù)據(jù)由代理AO讀取并且將占有存儲器總線以此類推。
[0045]針對仲裁器的每個讀取周期,位于存儲器總線上的128位寬數(shù)據(jù)在該128位被分區(qū)成四個32位寬數(shù)據(jù)分組d0-d3之后傳至單獨代理總線。例如,在時隙T0,128位寬AO數(shù)據(jù)從存儲器總線408傳至代理O總線410作為四個連續(xù)的32位寬數(shù)據(jù)分組d0、dl、d2和d3。仲裁器管理這種從存儲器總線向代理總線的數(shù)據(jù)傳送。這種數(shù)據(jù)傳送由箭頭412指示。在另一示例中,在時隙Tl,128位寬Al數(shù)據(jù)從存儲器總線408傳至代理I總線414作為四個連續(xù)的32位寬數(shù)據(jù)分組d0、dl、d2和d3。這種數(shù)據(jù)傳送由箭頭括號對416指示。在又一示例中,在時隙T2,128位寬A2數(shù)據(jù)從存儲器總線408傳至代理2總線418作為四個連續(xù)的32位寬數(shù)據(jù)分組d0、dl、d2和d3。這種數(shù)據(jù)傳送由箭頭括號對420指示。在又一示例中,在時隙T3,128位寬A3數(shù)據(jù)從存儲器總線408傳至代理3總線422作為四個連續(xù)的32位寬數(shù)據(jù)分組d0、dl、d2和d3。這種數(shù)據(jù)傳送由箭頭括號對424指示。
[0046]仲裁器管理將讀取數(shù)據(jù)同時置于不止一個代理數(shù)據(jù)總線的過程。例如,在時鐘周期1,仲裁器將AO數(shù)據(jù)的第一 32位部分(即數(shù)據(jù)分組d0)置于代理O總線410上。在時鐘周期2,仲裁器將Al數(shù)據(jù)的第一 32位部分(即數(shù)據(jù)分組d0)置于代理I總線414上并且將AO數(shù)據(jù)的第二 32位部分(即數(shù)據(jù)分組dl)置于代理O總線410上。在時鐘周期3,仲裁器將A2數(shù)據(jù)的第一 32位部分(即數(shù)據(jù)分組d0)置于代理2總線418上,將Al數(shù)據(jù)的第二 32位部分(即數(shù)據(jù)分組dl)置于代理I總線414上,以及將AO數(shù)據(jù)的第三32位部分(即數(shù)據(jù)分組d2)置于代理O總線410上。在時鐘周期4,仲裁器將A3數(shù)據(jù)的第一 32位部分(即數(shù)據(jù)分組d0)置于代理3總線422上,將A2數(shù)據(jù)的第二 32位部分(即數(shù)據(jù)分組dl)置于代理2總線418上,將Al數(shù)據(jù)的第三32位部分(SP數(shù)據(jù)分組d2)置于代理I總線414上,以及將AO數(shù)據(jù)的第四32位部分(即數(shù)據(jù)分組d3)置于代理O總線410上以此類推。通過這種方式,仲裁器允許單獨代理接收并處理讀取數(shù)據(jù)同時其他代理當前正在從SMU讀取。
[0047]過程400被圖示為特定實施例,其中如早先提到的,每個代理具有32位帶寬并且存在四個代理。所要求保護的主題并不限于此方面。例如,與過程400相同或相似的過程可以涉及具有相同或不同帶寬的任意數(shù)目的代理。
[0048]圖5是根據(jù)某些實施例圖示了用于從SMU讀取數(shù)據(jù)的過程500的時間流圖。過程500可以與過程400相同或相似,除了不是所有代理都具有相同帶寬。例如,代理AO和代理Al可以具有彼此相等的帶寬,并且是代理A2和代理A3各自帶寬的兩倍。在這種情況下,仲裁器可以向代理AO和代理Al的每個代理授權訪問,其在頻率上是向代理A2和代理A3的每個代理授權訪問量的兩倍。雖然過程500可以涉及帶寬和總線寬度的任意組合,但為了簡化以下描述,從SMU讀取數(shù)據(jù)的代理AO和代理Al的每個代理的帶寬被假設為64位,代理A2和代理A3的每個代理的帶寬被假設為32位,針對每個代理A0-A3的代理總線和存儲器總線被假設為32位。時鐘信號502由仲裁器中(或其相關聯(lián))的時鐘電路生成,諸如圖3中所示仲裁器304中的時鐘312。時隙504標識由仲裁器管理的讀取時鐘的一部分。例如,讀取周期的開始在時鐘周期I并且被標識為T0,讀取周期的結束在時鐘周期6并且被標識為T5,下一讀取周期的開始在時鐘周期7并且被標識為TO以此類推。例如,過程500的讀取周期包括針對代理AO的兩個時隙,針對代理Al的兩個時隙,以及針對代理A2和代理A3的每個代理的單個時隙。由于代理AO和代理Al的帶寬是代理A2和代理A3的帶寬的兩倍,因此兩個時隙用于代理AO和代理Al。這與早先描述的過程400相反,該過程400涉及包括針對每個代理的一個讀取周期的讀取周期,這是因為每個代理具有彼此相等的帶寬。
[0049]代理授權行506標識哪個代理被授權在特定時間(例如,時鐘周期)訪問SMU。例如,在時鐘周期I和時鐘周期7出現(xiàn)的時隙TO,代理AO被授權訪問以從SMU讀取。在時鐘周期2和時鐘周期8出現(xiàn)的時隙TI,代理Al被授權訪問以從SMU讀取以此類推。其中單獨代理被授權訪問SMU的順序至少部分基于多個代理的每個代理的帶寬由仲裁器確定。在本示例實施例中,代理AO和代理Al的每個代理具有32位帶寬,而代理A2和代理A3的每個代理具有16位帶寬。為了優(yōu)化功率,仲裁器時鐘頻率例如可以被選擇為每個代理的時鐘頻率的3/4。因此,如代理授權行506中指示的順序不同于圖4中所示的代理授權行406中指示的順序,后者涉及代理各自具有相同的帶寬。此外,仲裁器可以響應于多個代理的一個或多個代理的帶寬的變化而改變時鐘頻率或順序。例如,如果具有第一帶寬的代理被具有不同于該第一帶寬的第二帶寬的另一代理代替,則仲裁器可以改變順序。在另一示例中,如果代理被添加到已經存在的代理,則仲裁器可以對應地改變順序。在某些實現(xiàn)方式中,仲裁器可以維持針對讀取操作的恒定延遲,同時循環(huán)通過所確定的順序。
[0050]當代理AO被授權在時隙TO訪問SMU時,代理AO從SMU讀取數(shù)據(jù)A0。在本示例中,在SMU中存儲的AO數(shù)據(jù)是128位寬。因此,128位寬AO數(shù)據(jù)可以被置于存儲器總線508上,該存儲器總線508與圖3中所示的存儲器總線308相同或相似。具體地,128位寬AO數(shù)據(jù)被置于存儲器總線上使得所有128位并行,并且該128位占有存儲器總線一個時鐘周期。在下一時鐘周期,由代理Al讀取的128位寬Al數(shù)據(jù)將占有存儲器總線。在第三時鐘周期,由代理A2讀取的128位寬A2數(shù)據(jù)將占有存儲器總線。在第四時鐘周期,在第一時鐘周期早先讀取的128位寬AO數(shù)據(jù)之后的128位寬AO數(shù)據(jù)由代理AO讀取并且將占有存儲器總線。在第五時鐘周期,在第二時鐘周期早先讀取的128位寬Al數(shù)據(jù)之后的128位寬Al數(shù)據(jù)由代理Al讀取并且將占有存儲器總線。在第六時鐘周期,128位寬A3數(shù)據(jù)由代理A3讀取并且將占有存儲器總線以此類推。
[0051]針對仲裁器的每個讀取周期,位于存儲器總線上的128位寬數(shù)據(jù)在該128位被分區(qū)成四個32位寬數(shù)據(jù)分組d0-d3之后至少部分基于代理時鐘傳至單獨代理總線。例如,在時隙TO,128位寬AO數(shù)據(jù)從存儲器總線508傳至代理O總線510作為四個連續(xù)的32位寬數(shù)據(jù)分組d0、dl、d2和d3。仲裁器管理這種從存儲器總線向代理總線的數(shù)據(jù)傳送。這種數(shù)據(jù)傳送由箭頭512指示。在另一示例中,在時隙Tl,128位寬Al數(shù)據(jù)從存儲器總線508傳至代理I總線514作為四個連續(xù)的32位寬數(shù)據(jù)分組d0、dl、d2和d3。這種數(shù)據(jù)傳送由箭頭括號對516指示。在又一示例中,在時隙T2,128位寬A2數(shù)據(jù)從存儲器總線508傳至代理2總線518作為四個連續(xù)的32位寬數(shù)據(jù)分組d0、dl、d2和d3。這種數(shù)據(jù)傳送由箭頭括號對520指示。在又一示例中,在時隙T5,128位寬A3數(shù)據(jù)從存儲器總線508傳至代理3總線522作為四個連續(xù)的32位寬數(shù)據(jù)分組d0、dl、d2和d3。這種數(shù)據(jù)傳送由箭頭括號對524指示。
[0052]仲裁器管理將讀取數(shù)據(jù)同時置于不止一個代理數(shù)據(jù)總線的過程。例如,在時鐘周期1(代理時鐘周期),仲裁器將AO數(shù)據(jù)的第一 32位部分(即數(shù)據(jù)分組d0)置于代理O總線510上。在時鐘周期2,仲裁器將Al數(shù)據(jù)的第一 32位部分(即數(shù)據(jù)分組d0)置于代理I總線514上并且將AO數(shù)據(jù)的第二 32位部分(即數(shù)據(jù)分組dl)置于代理O總線510上。在時鐘周期3,仲裁器將A2數(shù)據(jù)的第一32位部分(即數(shù)據(jù)分組d0)置于代理2總線518上,將Al數(shù)據(jù)的第二32位部分(即數(shù)據(jù)分組dl)置于代理I總線514上,以及將AO數(shù)據(jù)的第三32位部分(即數(shù)據(jù)分組d2)置于代理O總線510上。在時鐘周期4,仲裁器將A2數(shù)據(jù)的第二 32位部分(即數(shù)據(jù)分組dl)置于代理2總線518上,將Al數(shù)據(jù)的第三32位部分(即數(shù)據(jù)分組d2)置于代理I總線514上,以及將AO數(shù)據(jù)的第四32位部分(即數(shù)據(jù)分組d3)置于代理O總線510上以此類推。這里,代理2和代理3的數(shù)據(jù)輪流(代理3的{(10,(11,(12,(13}跟著代理2的{(10,(11,(12,(13}),這是因為其帶寬為代理0和代理I的一半。通過這種方式,仲裁器允許單獨代理接收并處理讀取數(shù)據(jù)同時其他代理當前正在從SMU讀取。
[0053]雖然描述了特定數(shù)目的代理以及相關聯(lián)的帶寬,但是過程500可以涉及具有相等或不同帶寬的任意數(shù)目的代理,并且所要求保護的主題不限于此方面。
[0054]圖6是根據(jù)其他實施例由多個代理管理對SMU的訪問的過程600的流程圖。例如,過程600可以與過程400或過程500相似或相同,并且分別由諸如圖1、圖2和圖3中圖示的仲裁器104、仲裁器204或仲裁器304之類的仲裁器執(zhí)行。仲裁器可以至少部分基于如在框602中所示由仲裁器生成的時鐘信號來執(zhí)行過程600。
[0055]在框604,仲裁器接收關于多個代理(諸如圖2和圖3中圖示的代理O至代理3)的每個代理的帶寬的信息。在某些實現(xiàn)方式中,這種信息可以由單獨代理提供給仲裁器。例如,仲裁器可以在握手過程中仲裁器與代理之間的連接之后向代理提供信息。在其他實現(xiàn)方式中,這種信息例如可以經由輸入設備(未示出)由仲裁器的用戶提供給仲裁器。
[0056]在框606,仲裁器確定用于在多個代理中選擇單個代理的順序以允許單個代理在時鐘信號的單個時鐘周期中向SMU/從SMU并行傳送數(shù)據(jù)。例如,這種數(shù)據(jù)傳送可以涉及讀取操作或寫入操作。該順序可以至少部分基于多個代理的每個代理的帶寬。仲裁器還可以至少部分基于用于優(yōu)化功率的整體帶寬需求來調整其時鐘頻率。在框608,仲裁器循環(huán)通過所確定的順序,從而在多個代理中選擇單個代理以允許單個代理在單個時鐘周期從SMU讀取或向SMU寫入。
[0057]過程600并入了本文所述的技術,其中一個或多個步驟可以由仲裁器、一個或多個處理器和/或存儲器控制器實現(xiàn)。此過程(以及貫穿全文所述的其他方法、過程和技術)被圖示為邏輯流圖,其中每個操作表示可以部分或全部以硬件、軟件或其組合實現(xiàn)的一序列操作。在軟件上下文中,操作表示一個或多個有形計算機可讀存儲介質上存儲的計算機可執(zhí)行指令,當由一個或多個處理器執(zhí)行時,執(zhí)行所記載的操作。通常,計算機可執(zhí)行指令包括執(zhí)行特定功能或實現(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、部件、數(shù)據(jù)結構等。其中操作被描述的順序不旨在構成限制,任意數(shù)目的所述操作可以以任何順序組合和/或并行來實現(xiàn)所述過程。此外,雖然本文所述的架構和技術已經針對服務器和用戶設備進行了描述,但是該架構和技術等同地可用于其他環(huán)境和計算設備中的處理器和處理內核。
[0058]如本文中所使用的,術語“模塊”或“框”可以指代以下各項、可以是以下各項的一部分或者可以包括以下各項:執(zhí)行一個或多個軟件或固件程序的專用集成電路(ASIC)、電子電路、處理器(共享的、專用的、或者組)和/或存儲器(共享的、專用的、或者組)、組合邏輯電路、和/或提供所描述的功能的其他合適的部件。
[0059]描述包括使用短語“在一個實施例中”或者“在各種實施例中”,其可以各自指代相同或者不同實施例中的一個或多個實施例。另外,關于本公開內容的實施例所使用的術語“包括”、“包含”、“具有”等是同義的。
[0060]可以按照對于理解要求保護的主題最有用的方式來將各種操作描述為按照順序執(zhí)行的多個離散的動作或者操作。然而,不應當將描述的順序理解為暗示這些操作必須依賴于順序。特別地,這些操作可以不按照呈現(xiàn)的順序來執(zhí)行。所描述的操作可以按照與所描述的實施例不同的順序來執(zhí)行。在另外的實施例中,可以執(zhí)行各種另外的操作和/或可以省略所描述的操作。
[0061]雖然已經在本文中圖示和描述了特定實施例,然而應當注意,可以用各種備選和/或等同實現(xiàn)來替代所示出和所描述的特定實施例而不偏離本公開內容的范圍。本公開內容覆蓋在字面上或者在等同的教示下落入所附權利要求的范圍內的所有方法、裝置和制造品。本申請意在覆蓋本文中所公開的實施例的任何適配或變化。因此,證明并且意在本公開內容僅受權利要求及其等同的限制。
【主權項】
1.一種系統(tǒng),包括: 共享存儲器單元;以及 仲裁器,被配置為 生成時鐘信號, 接收關于多個代理的每個代理的帶寬的信息, 確定用于在所述多個代理中選擇單個代理的時鐘頻率或順序,以允許所述單個代理在所述時鐘信號的單個時鐘周期中從所述共享存儲器單元/向所述共享存儲器單元并行傳送數(shù)據(jù),其中所述順序至少部分基于所述多個代理的每個代理的所述帶寬,以及 循環(huán)通過所確定的用于在所述多個代理中選擇所述單個代理的順序,以允許所述單個代理在所述單個時鐘周期中從所述共享存儲器單元/向所述共享存儲器單元傳送數(shù)據(jù)。2.根據(jù)權利要求1所述的系統(tǒng),進一步包括: 在所述仲裁器與所述共享存儲器單元之間的η導體寬并行總線,其中 η是整數(shù),以及 η至少部分基于多個代理的每個代理的所述帶寬。3.根據(jù)權利要求1所述的系統(tǒng),其中所述仲裁器進一步被配置為響應于所述多個代理的一個或多個代理的帶寬的變化,修改用于從所述共享存儲器單元/向所述共享存儲器單元傳送數(shù)據(jù)的η導體寬并行總線的導體的數(shù)目。4.根據(jù)權利要求1所述的系統(tǒng),其中所述仲裁器進一步被配置為響應于所述多個代理的一個或多個代理的帶寬的變化,改變所述時鐘頻率以優(yōu)化功率。5.根據(jù)權利要求1所述的系統(tǒng),其中所述仲裁器進一步被配置為響應于所述多個代理的一個或多個代理的帶寬的變化,改變所述順序。6.根據(jù)權利要求1所述的系統(tǒng),其中所述仲裁器進一步被配置為至少部分基于多個代理的每個代理的所述帶寬,配置所述共享存儲器單元中可尋址存儲器位置的寬度。7.根據(jù)權利要求1所述的系統(tǒng),其中所述仲裁器進一步被配置為維持針對讀取操作的恒定最壞延遲,同時循環(huán)通過所確定的用于在所述多個代理中選擇所述單個代理的順序。8.根據(jù)權利要求1所述的系統(tǒng),其中所述仲裁器進一步被配置為當所述多個代理的至少一部分具有與所述多個代理的至少另一部分的帶寬不同的帶寬時,在所述多個代理中仲裁對所述共享存儲器單元的訪問。9.一種方法,包括: 生成時鐘信號; 接收關于多個代理的每個代理的帶寬的信息; 確定用于在所述多個代理中選擇單個代理的時鐘頻率或順序,以允許所述單個代理在所述時鐘信號的單個時鐘周期中從共享存儲器單元/向共享存儲器單元并行傳送數(shù)據(jù),其中所述順序至少部分基于所述多個代理的每個代理的所述帶寬;以及 循環(huán)通過所確定的用于在所述多個代理中選擇所述單個代理的順序,以允許所述單個代理在所述單個時鐘周期中從所述共享存儲器單元/向所述共享存儲器單元傳送數(shù)據(jù)。10.根據(jù)權利要求9所述的方法,進一步包括: 響應于所述多個代理的一個或多個代理的帶寬的變化,修改用于從所述共享存儲器單元/向所述共享存儲器單元傳送數(shù)據(jù)的η導體寬并行總線的導體的數(shù)目。11.根據(jù)權利要求9所述的方法,進一步包括: 響應于所述多個代理的一個或多個代理的帶寬的變化,改變所述時鐘頻率以優(yōu)化功率。12.根據(jù)權利要求9所述的方法,進一步包括: 響應于所述多個代理的一個或多個代理的帶寬的變化,改變所述順序。13.根據(jù)權利要求9所述的方法,進一步包括: 至少部分基于多個代理的每個代理的所述帶寬,配置所述共享存儲器單元中可尋址存儲器位置的寬度。14.根據(jù)權利要求9所述的方法,進一步包括: 維持針對讀取操作的恒定最壞延遲,同時循環(huán)通過所確定的用于在所述多個代理中選擇所述單個代理的順序。15.根據(jù)權利要求9所述的方法,進一步包括: 當所述多個代理的至少一部分具有與所述多個代理的至少另一部分的帶寬不同的帶寬時,在所述多個代理中仲裁對所述共享存儲器單元的訪問。16.一種存儲有計算機可執(zhí)行指令的計算機可讀存儲介質,當所述計算機可執(zhí)行指令由處理器執(zhí)行時,配置所述處理器執(zhí)行以下操作,包括: 生成時鐘信號; 確定用于在多個代理中選擇單個代理的時鐘頻率或順序,以允許所述單個代理在所述時鐘信號的單個時鐘周期中從共享存儲器單元/向共享存儲器單元并行傳送數(shù)據(jù),其中所述順序至少部分基于所述多個代理的每個代理的帶寬;以及 循環(huán)通過所確定的用于在所述多個代理中選擇所述單個代理的順序,以允許所述單個代理在所述單個時鐘周期中從所述共享存儲器單元/向所述共享存儲器單元傳送數(shù)據(jù)。17.根據(jù)權利要求16所述的計算機可讀存儲介質,所述操作進一步包括: 響應于所述多個代理的一個或多個代理的帶寬的變化,修改用于從所述共享存儲器單元/向所述共享存儲器單元傳送數(shù)據(jù)的η導體寬并行總線的導體的數(shù)目。18.根據(jù)權利要求16所述的計算機可讀存儲介質,所述操作進一步包括: 響應于所述多個代理的一個或多個代理的帶寬的變化,改變所述時鐘頻率以優(yōu)化功率。19.根據(jù)權利要求16所述的計算機可讀存儲介質,所述操作進一步包括: 響應于所述多個代理的一個或多個代理的帶寬的變化,改變所述順序。20.根據(jù)權利要求16所述的計算機可讀存儲介質,所述操作進一步包括: 至少部分基于多個代理的每個代理的所述帶寬,配置所述共享存儲器單元中可尋址存儲器位置的寬度。21.根據(jù)權利要求16所述的計算機可讀存儲介質,所述操作進一步包括: 維持針對讀取操作的恒定最壞延遲,同時循環(huán)通過所確定的用于在所述多個代理中選擇所述單個代理的順序。22.根據(jù)權利要求16所述的計算機可讀存儲介質,所述操作進一步包括: 當所述多個代理的至少一部分具有與所述多個代理的至少另一部分的帶寬不同的帶寬時,在所述多個代理中仲裁對所述共享存儲器單元的訪問。
【文檔編號】G06F13/16GK106030557SQ201480075682
【公開日】2016年10月12日
【申請日】2014年12月16日
【發(fā)明人】鄧素芝, J·M·Y·蔣
【申請人】馬維爾國際貿易有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
鸡东县| 宽城| 乌审旗| 大名县| 枣强县| 永济市| 剑河县| 茌平县| 黔西县| 铅山县| 绥中县| 高陵县| 望江县| 西乌珠穆沁旗| 汉阴县| 鄱阳县| 福泉市| 五原县| 平顶山市| 开封市| 石棉县| 北安市| 焦作市| 郓城县| 崇文区| 台北市| 酉阳| 佛坪县| 永仁县| 郧西县| 蓬安县| 鹤岗市| 长寿区| 连平县| 买车| 称多县| 广元市| 高州市| 同心县| 谢通门县| 海兴县|