專利名稱:公平令牌仲裁系統(tǒng)和方法
技術領域:
本發(fā)明的實施例涉及光學設備和仲裁。
背景技術:
現(xiàn)代分布式計算機系統(tǒng)通常由多個獨立的操作節(jié)點構成。節(jié)點可以是處理器、存儲器、電路板、服務器、存儲服務器、外部網(wǎng)絡連接或任何其它數(shù)據(jù)處理、存儲或傳輸設備。 通常情況下,這些獨立的操作節(jié)點需要訪問相同的資源。資源可以是用于傳輸信息的電磁輻射的頻率信道(即信道),或者資源可以是諸如廣播總線的設備。例如,兩個節(jié)點可能需要使用一個特定信道來傳輸信息。在沒有協(xié)調的情況下,這兩個節(jié)點可能同時嘗試使用相同的信道,從而導致丟失由兩個節(jié)點發(fā)送的信息。為了協(xié)調對共享資源的訪問,計算機系統(tǒng)常常采用被稱為“仲裁”的沖突解決方案,以防止兩個或兩個以上節(jié)點同時使用相同的資源。在若干個節(jié)點同時請求對資源訪問時,使用仲裁選擇和授予這些節(jié)點之一對資源訪問。仲裁對于計算機系統(tǒng)的性能是關鍵的。 然而,許多仲裁器常常造成時延,所述時延會不利地影響系統(tǒng)性能、增加服務時間以及降低資源的利用率。另外,許多仲裁器造成不公平的資源共享,并且在節(jié)點和/或資源的數(shù)量增長時,可能無法充分地擴縮。工程師繼續(xù)尋找能夠提供具有很低的仲裁時延、很低的功耗以及降低的硬件成本的高利用率和公平的資源共享的仲裁系統(tǒng)和方法。
圖1示出表示根據(jù)本發(fā)明的一個或多個實施例的注入器和探測器的“導通”和“截止”狀態(tài)的表;圖2示出根據(jù)本發(fā)明的一個或多個實施例的從波導提取的光脈沖的示例;圖3示出根據(jù)本發(fā)明的一個或多個實施例所配置的令牌時隙仲裁系統(tǒng)的示例;圖4A-圖4B示出根據(jù)本發(fā)明的兩個或更多實施例的令牌和對應的信道時隙的兩個示例性表示;圖5A-圖5C示出根據(jù)本發(fā)明的一個或多個實施例在示例性操作期間令牌時隙仲裁系統(tǒng)的瞬態(tài)圖;圖6示出根據(jù)本發(fā)明的一個或多個實施例所配置的公平令牌時隙仲裁系統(tǒng)的示例;圖7示出根據(jù)本發(fā)明的一個或多個實施例請求節(jié)點在仲裁期間經過的三個狀態(tài)的示例性狀態(tài)圖;圖8示出根據(jù)本發(fā)明的實施例資源在仲裁期間經過的兩個狀態(tài)的示例性狀態(tài)圖;圖9A-圖9D示出根據(jù)本發(fā)明的一個或多個實施例在示例性操作期間公平令牌時隙仲裁系統(tǒng)的瞬態(tài)圖;圖10示出根據(jù)本發(fā)明的一個或多個實施例總結了由請求節(jié)點和主節(jié)點所進行的步驟的示例性控制流程圖;圖11示出根據(jù)本發(fā)明的一個或多個實施例具有通過每個核心的光路的示例性16 核心芯片的示意性表示。
具體實施例方式本發(fā)明的各種實施例涉及仲裁系統(tǒng)和方法。實施例包括能夠用于分配節(jié)點對共享資源獨占式訪問的連續(xù)的、全光學令牌環(huán)仲裁方案。系統(tǒng)實施例可以采用三個連續(xù)的環(huán)路波導來實施,每個波導跨越全部的節(jié)點,最大限度的減小時延開銷。當兩個或更多節(jié)點同時請求權利以使用資源時,仲裁選擇這些請求節(jié)點之一,并授予該節(jié)點對資源的訪問。在授予節(jié)點對資源的訪問中,本發(fā)明的仲裁系統(tǒng)和方法的實施例滿足以下要求。(1)仲裁是頻繁的。例如在高速緩存一致性多核心系統(tǒng)中,消息可以是高速緩存線的大小或更小。面積高效納米光子波導和密集波分復用使能很寬的信道,所述很寬的信道能夠在一個或兩個時鐘周期傳輸高速緩存線。因此,在幾乎每個時鐘周期仲裁幾乎每個信道。( 仲裁是快速的。仲裁實施例通過將仲裁時延與通信時延相匹配來不增加不必要或過度的消息傳遞時間。(3) 仲裁是有效的。仲裁實施例生成很高的資源利用率。端對端流量控制可以通過避免由于緩沖器溢出造成的故障傳輸來進一步提高帶寬利用率。為了解決這個問題,本發(fā)明的實施例允許將流程控制信息(即,信用)包括在仲裁信號中。(4)仲裁是公平的。對于資源具有相等需要的節(jié)點接收對資源相等的訪問,并且沒有節(jié)點被剝奪或缺乏對資源的訪問。仲裁中的偏置可能造成來自不公平對待的節(jié)點的更長的分組排隊延遲。當該系統(tǒng)探測到提供給節(jié)點的服務中出現(xiàn)不平衡時,本發(fā)明的實施例通過動態(tài)調整仲裁的優(yōu)先級來確保公平性。以下描述由四個分部組成。第一分部描述了光學組件,并引入光學仲裁。第二分部提供光學令牌時隙仲裁的一般描述。第三分部提供本發(fā)明的光學公平令牌時隙仲裁系統(tǒng)和方法的實施例的描述。第四分部提供該仲裁系統(tǒng)和方法的可擴縮性的描述。應注意,術語“光學”表示在電磁頻譜的可視和非可視兩部分中操作的設備。還應該注意,盡管用于描述本發(fā)明的各種系統(tǒng)和方法實施例的示例由四個節(jié)點構成,然而這僅是示例性的,并且本發(fā)明的各種實施例絕非限定于僅提供針對具有恰好四個節(jié)點的系統(tǒng)的仲裁。仲裁系統(tǒng)和方法實施例可以放大或縮小以提供針對具有多于或少于四個節(jié)點的系統(tǒng)的仲裁。光學仲裁本發(fā)明的系統(tǒng)實施例采用諸如波導和波長選擇性元件(“WSE”)的光學通信結構。 在某些實施例中,WSE和波導可以是微環(huán)共振器和脊形波導。在其它實施例中,WSE和波導可以是光子晶體共振腔和光子晶體波導。波導將光限制于具有忽略不計損耗的單向行進, 并且多個波長可以無干擾的使用相同的波導。WSE可以配置有與光的特定波長基本相匹配的共振波長,以使得通過將WSE相鄰于波導中行進的光的漸逝場并且在該光的漸逝場內放置,來將WSE漸逝地耦合來自波導的光的波長,并且俘獲該光一段時間??梢噪娮忧袚QWSE 的共振波長與由相鄰波導攜載的光的波長進入和退出共振,從而能夠將WSE操作為相鄰波導中行進的光的調制器或探測器,或者能夠操作WSE,以將光從該波導轉向至另一個波導。在以下描述中,將配置為探測由相鄰波導攜載的特定波長的光的WSE稱為“探測器”,并且將配置為將特定波長的光轉向相鄰波導的WSE稱為“注入器”。圖1示出表示根
5據(jù)本發(fā)明的一個或多個實施例的注入器和探測器的“導通”和“截止”狀態(tài)的表。如圖1所示,注入器由實線環(huán)來表示,并且探測器由虛線環(huán)來表示。在WSE變?yōu)椤皩ā睍r,WSE與光的特定波長共振,并且將光從相鄰波導耦合到WSE。在注入器的情況中,隨后可以將光注入到另一個相鄰的波導中;而在探測器的情況中,光在探測器內被俘獲,并且產生可以用于指示已經從相鄰的波導提取該光的電子信號。在另一方面,當WSE變?yōu)椤敖刂埂睍r,WSE并不與光的波長共振,并且該光未受干擾地通過WSE。應注意圖1中的表示出注入器和探測器的標識為“亮”和“不亮”的兩種不同的“導通”狀態(tài)。加號102指示W(wǎng)SE變?yōu)椤皩ā辈蕚漶詈蟻碜韵噜彶▽У墓?,但并沒有光被轉向。實線圈104表示W(wǎng)SE變?yōu)椤皩ā辈⑶夜庹龔南噜彽牟▽мD向到WSE。在某些實施例中,可以配置和操作WSE,以使得在將適當?shù)碾妷菏┘拥絎SE時 WSE “導通”,并在電壓不再施加時WSE “截止”。在其它實施例中,可以配置和操作WSE,以使得在將適當?shù)碾妷菏┘拥絎SE時,WSE “截止”,并在電壓不再施加時,WSE “導通”。圖2示出根據(jù)本發(fā)明的一個或多個實施例的從波導202提取的光脈沖的示例。六個探測器配置為具有與光脈沖的波長的共振,在變?yōu)椤皩ā睍r,該光脈沖由方向箭頭204 來表示。如圖2的示例所示,六個探測器中的兩個206和208變?yōu)椤皩ā薄C}沖204沿著波導202在一個方向行進,并由探測器206耦合離開波導202,因為探測器206是脈沖204 沿著波導202遇到的第一個“導通”探測器。注意,因為探測器206從波導202中提取脈沖204,所以雖然探測器208保持“導通”,但無法探測到脈沖204。探測器配置為從相鄰的波導提取基本上全部的對應光,并且產生可以用于確認光已從波導中提取的對應的電子信號。因此,探測器的輸出是靠近脈沖源設置的所有探測器的狀態(tài)的邏輯函數(shù)。這種有線或類似的組合操作被執(zhí)行,而除了波導中光的飛行時間以外沒有任何延遲。因為光在波導中的一個方向中流動,所以術語“上游”和“下游”可以用于描述沿著波導的探測器和節(jié)點的相對位置。例如,再次參照圖2,因為脈沖204在它到達節(jié)點208之前到達探測器206,所以節(jié)點206可以稱為節(jié)點208的“上游”,可替換地,節(jié)點208可以稱為節(jié)點206的“下游”。圖2還表示了根據(jù)本發(fā)明的一個或多個實施例的用于光學仲裁的簡單方法。光脈沖204能夠表示單個比特的信息,并且波導202可以表示仲裁波導的一部分。具體來說,光脈沖204的存在表示資源的可用性并且被稱為“令牌”。當令牌存在時,資源是可用的,而當令牌不在時,資源是不可用的。六個探測器中的每一個均可以電子地耦合到不同的節(jié)點 (未圖示)。期望使用資源的節(jié)點“導通”它們相應的探測器。不想使用資源的節(jié)點使其相應的探測器“截止”。因此,如圖2的示例中所示,電子地耦合到探測器206的節(jié)點提取整個令牌,取得對相應資源的獨占式訪問,而電子地耦合到下游的探測器208的節(jié)點必須等待下一個可用的令牌。光學令牌時隙仲裁圖3示出根據(jù)本發(fā)明的一個或多個實施例配置的仲裁系統(tǒng)300的示例。仲裁系統(tǒng) 300使得四個節(jié)點P0,P1,P2以及P3中的每一個均能夠控制對于特定資源的訪問。仲裁系統(tǒng)300包括通過四個節(jié)點中每一個的環(huán)路波導302。每個節(jié)點包括相鄰設置并位于波導302 中行進的光的漸逝場內的注入器。例如,節(jié)點PO包括標記為IO的注入器,節(jié)點Pl包括注入器II,等等。每個節(jié)點還包括標記為D0,D1,D2以及D3的一組四個的探測器。這些探測器也相鄰波導302設置,并且位于波導302中行進的光的漸逝場內。每個注入器和每個探測器配置為在“導通”時具有與光的特定波長的共振。例如, 注入器10,II,12以及13在“導通”時,分別與波長Xci, X1, λ 2以及λ 3共振,并且探測器 D0,D1,D2以及D3在導通時也分別與波長λ。,A1, λ 2以及λ3共振。操作注入器以將令牌(即光脈沖)放置到波導302上,該令牌向其它節(jié)點指示由該節(jié)點控制的資源是可獲得來使用的。例如,在由節(jié)點PO控制的資源可以由節(jié)點Pl,Ρ2以及Ρ3使用時,節(jié)點PO將注入器10變?yōu)椤皩ā币欢螘r間,并且將具有波長λ ^的令牌放置在波導302上。在某些實施例中,可以由來自相鄰于注入器IO設置的功率波導(未圖示)的漸逝耦合光將令牌注入到波導中。功率波導可以配置為環(huán)繞仲裁波導的外部,并且光耦合至諸如激光器或發(fā)光二極管(“LED”)的光源,該光源提供了具有波長Xci, λ” λ 2以及λ 3的連續(xù)光源。在其它實施例中,光源可以相鄰于注入器IO設置,并且經由注入器IO將光從光源漸逝地耦合到仲裁波導。期望使用資源的節(jié)點“導通”與資源相關聯(lián)的令牌相對應的探測器,并且等待提取和探測波導302上的令牌。資源可以位于諸如輸出端口的特定節(jié)點,或者資源可以是能夠由多于一個的節(jié)點使用的共同或共享的資源,諸如總線波導或用于傳輸在光學信號中編碼的信息的被稱為 “信道”的特定頻率的光。具有可用資源的節(jié)點被稱為“主節(jié)點”,并且將任何需要使用資源的節(jié)點稱為“請求節(jié)點”。術語“主節(jié)點,,和“請求節(jié)點,,是相對的術語,并且用于區(qū)分具有可用資源的節(jié)點與需要使用資源的其它節(jié)點。例如,在一個時刻,第一節(jié)點可以是第二節(jié)點的主節(jié)點,并且在隨后的時刻,第一節(jié)點可以是對于第三節(jié)點的請求節(jié)點。在令牌時隙仲裁中,令牌的持續(xù)時間可以與其中請求節(jié)點得到對于可用資源的訪問的時隙或時長相對應,或者令牌的物理長度可以與固定長度或物理時隙或部分信道相對應。在仲裁波導上循環(huán)的令牌與這些時隙一一對應。例如,一個信息分組可以表示一個時隙。圖4Α示出根據(jù)本發(fā)明的一個或多個實施例的令牌和相應的信道時隙的第一示例。圖 4Α包括請求節(jié)點的本地時鐘信號402。線段404表示令牌。在圖4Α的示例中,令牌404具有4個時鐘周期的持續(xù)時間,但是因為令牌是在仲裁波導中行進的光脈沖,所以令牌也具有物理長度。在某些實施例中,令牌404的長度可以對應于信道中由請求節(jié)點用來將信息傳輸給主節(jié)點的時隙的物理長度。矩形406表示信道中與相應的令牌404具有大致相同的物理長度的時隙。請求節(jié)點等待令牌404的到達,移除令牌404,并且在相應時隙406中調制信道的光。在本實施例中,令牌能夠相距約四個時鐘周期間隔。時隙406可以表示一個信息分組。注意,令牌404的到達先于時隙406 —些固定數(shù)量的時鐘周期,諸如兩個或兩個以上的時鐘周期,該時鐘周期用來設置用于傳輸?shù)臄?shù)據(jù)。還應注意令牌404與時隙406的兩個時鐘周期相重疊。這允許提供還尚未與信息編碼的令牌。可以經由單獨的波導將信道攜載至主節(jié)點。時隙406由調制光(S卩,數(shù)據(jù))占用,直到時隙到達主節(jié)點,該主節(jié)點移除數(shù)據(jù),釋放時隙。同時,主節(jié)點繼續(xù)注入令牌。本發(fā)明的實施例并不限于持續(xù)時間或長度與信道的時隙相同或者具有與資源可以使用的持續(xù)時間相同的持續(xù)時間的令牌。在實踐中,由主節(jié)點產生的令牌可以具有任意適當?shù)拈L度。圖4Β示出根據(jù)本發(fā)明的一個或多個實施例的令牌和相應的信道時隙的第二示例。在該實例中,與時隙406相對應的令牌408大約是一個時鐘周期。請求節(jié)點等待令牌408的到達,移除令牌408并在相應的時隙406中調制光。
圖5A-圖5C示出根據(jù)本發(fā)明的一個或多個實施例在示例性操作期間仲裁系統(tǒng)300 的瞬態(tài)圖。在圖5A-圖5C中示出的示例中,節(jié)點PO是控制對資源訪問的主節(jié)點,由節(jié)點P1, P2以及P3使用這樣的信道發(fā)送信息至節(jié)點P0。為了簡潔和簡單,僅示出了 PO的用于放置與資源相對應的令牌的注入器,并且僅示出了節(jié)點Pl,P2以及P3的用于提取由節(jié)點PO產生的令牌的探測器。如圖5A的瞬態(tài)圖中所示,節(jié)點PO將由方向箭頭501-505表示的令牌放置到仲裁波導302上。令牌501-505在時間和距離上大致有規(guī)律地間隔,并且具有大致相同的長度。令牌可以與資源的時隙一一對應。假設過了一段時間后,節(jié)點P2需要使用由節(jié)點PO控制的資源。如圖5B的瞬態(tài)圖中所示,節(jié)點P2 “導通”探測器508,并且開始從波導302提取令牌510。節(jié)點P2如上文參照圖4所述的那樣開始使用資源。如圖5C的瞬態(tài)圖中所示,由節(jié)點P2提取的令牌不通過節(jié)點P3。因此,節(jié)點P3并未具有對與由節(jié)點P2提取的令牌510相關聯(lián)的資源的訪問。例如,在資源是用于將信息傳輸給節(jié)點PO的信道的情況下,因為令牌510已經由節(jié)點P2提取,所以在該信道中的相應時隙不能由節(jié)點P3用來將信息發(fā)送給節(jié)點P0。如果節(jié)點P3想要將信息發(fā)送給節(jié)點P0,則節(jié)點P3必須等待下一個可用的令牌,從波導302中提取令牌,并且調制信道中相應的時隙以編碼信息。僅當資源可用時,令牌時隙仲裁才通過簡單地發(fā)出令牌來編碼流程控制信息。因此,每一個令牌表示單個信用,并且如果請求節(jié)點移除了令牌,則它也已經保留了對主節(jié)點的資源的訪問。當放棄訪問時,主節(jié)點發(fā)出令牌。例如假設對于信道帶寬的總需求小于其固有的最大帶寬和主節(jié)點釋放緩沖時隙的速率兩者。上述令牌時隙仲裁可以公平地滿足該需求。然而,在請求節(jié)點的總需求超過該最大可實現(xiàn)的服務速率時,會產生公平問題。在實踐中,滿輸入緩沖器將抑制請求節(jié)點, 以使得它們的總分組插入速率接近但從不超過該速率。光學公平令牌時隙仲裁在上述令牌時隙仲裁中,上游節(jié)點(即,沿著波導靠近主節(jié)點的節(jié)點)在獲取令牌時優(yōu)先于位于更遠的下游的節(jié)點。由上游節(jié)點取得令牌阻止了下游節(jié)點獲取對主節(jié)點所提供的所需資源或服務的訪問。被上游節(jié)點剝奪了資源的下游請求節(jié)點被稱為“饑餓” (hungry)節(jié)點。例如,回到圖5A-圖5C所示的示例,如果節(jié)點Pl和P2獲得由主節(jié)點 PO注入到波導中的令牌,則會拒絕請求節(jié)點P3對于由節(jié)點PO所提供的資源和服務的訪問, 并且節(jié)點P3成為“饑餓”節(jié)點。因此,上述令牌時隙仲裁固有地不公平,因為它給了上游節(jié)點更高的優(yōu)先級。在另一方面,本發(fā)明的公平令牌時隙仲裁實施例確保了公平性,因為通過在返回到令牌時隙仲裁之前探測饑餓節(jié)點并且隨后以某個次序為這些節(jié)點中的每個服務一次,來幾乎同等地對待每個請求節(jié)點?;舅枷胧窃谏鲜隽钆茣r隙仲裁和以循環(huán)的方式將信用分配給發(fā)送者的替代之間進行切換。換句話說,在對于資源的需求很少的時段期間,使用上述令牌時隙仲裁。然而,當出現(xiàn)了對于資源的較高需求時,請求節(jié)點可能接收小于它們所需的服務。在返回到令牌時隙仲裁之前,公平令牌時隙仲裁每個周期一次地將固定量的信用提供給服務下的請求節(jié)點。圖6示出根據(jù)本發(fā)明的一個或多個實施例配置的公平令牌時隙仲裁系統(tǒng)600的示例。系統(tǒng)600包括仲裁波導602,饑餓波導603以及廣播波導604。如圖6所示,仲裁、饑餓以及廣播波導是通過每一個節(jié)點的環(huán)形波導。系統(tǒng)600使得主節(jié)點PO能夠控制對提供給節(jié)點P1,P2以及P3的資源的訪問。系統(tǒng)600包括由主節(jié)點PO操作并電子耦合到主節(jié)點PO 的注入器608-610以及探測器612-614。如圖6的示例中所示,注入器608-610分別漸逝地耦合到仲裁、饑餓以及廣播波導602-604,并且探測器612-614也分別漸逝地耦合到仲裁、 饑餓以及廣播波導602-604。系統(tǒng)600還包括電子耦合到節(jié)點Pl以及分別漸逝地耦合到波導602-604的探測器616-618 ;電子耦合到節(jié)點P2以及分別漸逝地耦合到波導602-604 的探測器622-624 ;以及電子耦合到節(jié)點P3以及分別漸逝地耦合到波導602-604的探測器626-628。主節(jié)點PO將令牌注入到仲裁波導602,并將光注入到饑餓和廣播波導603和 604,所述令牌和光在由方向箭頭630標識的同一方向行進。注意,廣播波導604包括分別將由廣播波導604攜載的部分光轉向到探測器620,624以及628的分離分配器(fractional splitter)632-634。在某些實施例中,可以通過漸逝地耦合來自相鄰于注入器608-610設置的單獨功率波導(未圖示)的光,將令牌和光注入到波導602、603以及604中。功率波導可以配置為環(huán)繞在相應的波導602-604的外部,并且光耦合至諸如激光器或LED的光源。在其它實施例中,可以將光源相鄰于注入器608-610布置,并且經由注入器608-610分別將光從光源漸逝地耦合進波導602-604。WSE和波導可以由諸如(“Si”)和鍺(“Ge”)的元素半導體或III-V化合物半導體來構成,其中羅馬數(shù)字III和V表示元素周期表的第三欄和第五欄中的元素?;衔锇雽w可以由諸如鋁(“Al”)、鎵("Ga")以及銦("In")的第三欄元素與諸如氮(“N”)、 磷(“P”)、砷(“As”)以及銻(“Sb”)的第五欄元素組合來構成?;衔锇雽w也可以根據(jù)III和V元素的相對量來進一步地分類。例如,二元半導體化合物包括具有經驗式GaAs, InP, InAs,以及GaP的半導體;三元化合物半導體包括具有經驗式GaAsyPh的半導體,其中 y的范圍從大于0到小于1 ;以及四元化合物半導體包括具有經驗式MxGahAsyPh的半導體,其中兩者獨立的χ和y的范圍從大于ο到小于1。適合的化合物半導體的其它類型包括 II-VI材料,其中II和VI表示在周期表的第II欄和第VI欄中的元素。例如,CdSe,a^e, ZnS,以及ZnO是示例性的二元II-VI化合物半導體的經驗式。可以將WSE配置為p-i-n結,并且電子地操作WSE,以控制與在相鄰波導602-604 中行進的光的特定波長的共振。在某些實施例中,可以通過使用合適的P型和η型雜質摻雜圍繞WSE的基底的內部和外部區(qū)域,來電子地操作本征(intrinSiC)WSE。P型雜質可以是將被稱為“空穴”的空的電子能級引入WSE的電子帶隙的原子。這些雜質也稱為“電子受主”。N型雜質可以是將填充電子能級引入WSE的電子帶隙的原子。這些雜質也可以稱為 “電子施主”。例如,硼(“B”)、A1和( 是將空的電子能級引入Si的價帶附近的ρ型雜質; 而P,As,以及Sb是將填充電子能級引入Si的導帶附近的η型雜質。在III-V化合物半導體中,第VI欄雜質代替III-V格中第V欄的位置,并且用作η型雜質,并且第II欄雜質代替III-V格中第III欄的原子,以形成ρ型雜質。WSE的適度摻雜可以具有超過大約IO15雜質/cm3的雜質濃度,而核心404的更重摻雜可以具有超過大約IO19雜質/cm3的雜質濃度??梢允褂糜糜谛纬杉{米級光學設備的納米印刷技術、反應離子刻蝕、聚焦波束銑削(milling)或任何其它眾所周知的方法來形成系統(tǒng)600的波導和WSE。圖7示出根據(jù)本發(fā)明的一個或多個實施例的請求節(jié)點在仲裁期間經過的三個狀態(tài)的示例性狀態(tài)圖。如圖7的示例中所示,每個請求節(jié)點處于三個可能狀態(tài)之一滿意701、饑餓702以及暫停703。如由方向箭頭706-708所指示,請求節(jié)點從滿意701到饑餓702到暫停703周期性的遍歷狀態(tài)圖。當節(jié)點能夠從仲裁波導提取令牌并由此使用資源時,請求節(jié)點處于滿意狀態(tài)701。在節(jié)點必須訪問由主節(jié)點提供的資源或其它服務但又無法訪問時, 請求節(jié)點進入饑餓狀態(tài)702。例如,滿意節(jié)點可以根據(jù)局部準則進入饑餓狀態(tài)702,所述局部準則例如節(jié)點正在存儲至少一個已在該節(jié)點存儲長于某個時間閾值W的老分組,或者滿意節(jié)點可以當其輸入隊列長度超過某個隊列長度閾值時進入饑餓狀態(tài)702,這是因為在進入饑餓狀態(tài)的請求節(jié)點的隊列中的分組數(shù)上可能存在上限。一旦饑餓請求節(jié)點已能夠訪問由主節(jié)點提供的資源或服務,請求節(jié)點進入其中該節(jié)點傳遞所有令牌的暫停狀態(tài)703。饑餓節(jié)點并非無限期地保持在饑餓狀態(tài)中,并且它們處于饑餓狀態(tài)的時間可以受約束。暫停狀態(tài)使得其它饑餓下游節(jié)點輪流訪問令牌。下文參照圖9A-圖9D中的具體示例來更加詳細地描述在公平令牌時隙仲裁中的經過狀態(tài)701-703。圖8示出根據(jù)本發(fā)明的實施例資源在仲裁期間經過的兩個狀態(tài)的示例性狀態(tài)圖。 資源由主節(jié)點來控制,并且交替地通過由主節(jié)點分配的充裕和饑荒狀態(tài)802和804。當主節(jié)點經由饑餓波導來接收至少一個請求節(jié)點處于饑餓狀態(tài)702的通知時,出現(xiàn)饑荒狀態(tài)802。 使用廣播波導來將饑荒狀態(tài)804通報給節(jié)點,其中除了饑餓請求節(jié)點以外的所有節(jié)點均停止試圖從仲裁波導提取令牌。在饑荒狀態(tài)期間注入仲裁波導的令牌稱為“饑荒令牌”。在饑荒狀態(tài)804期間,僅饑餓請求節(jié)點可以提取饑荒令牌,而其它節(jié)點讓饑餓令牌不受干擾地通過。在饑荒狀態(tài)期間,每個饑餓節(jié)點按從最近的上游饑餓節(jié)點至最遠的下游饑餓節(jié)點的順序獲得對資源的訪問。當饑餓節(jié)點完成使用資源時,饑餓節(jié)點進入暫停狀態(tài)。一旦所有饑餓節(jié)點已完成使用資源,并且進入暫停狀態(tài)703,主節(jié)點通過饑餓波導接收通知,并且資源進入充裕狀態(tài)802。在充裕狀態(tài)期間注入仲裁波導中的令牌稱為“充裕令牌”。重新開始令牌時隙仲裁,并且任何節(jié)點均能夠取得可用的充裕令牌。下文參照圖9A-圖9D中的具體示例來更加詳細地描述在公平令牌時隙仲裁中的經過狀態(tài)802和804以及使用饑餓和廣播波導。現(xiàn)在參照圖7、圖8以及圖9A-圖9D來描述使用上文參照圖6描述的示例性仲裁系統(tǒng)600進行的公平令牌時隙仲裁的示例。圖9A-圖9D示出根據(jù)本發(fā)明的一個或多個實施例在示例性操作期間仲裁系統(tǒng)600的瞬態(tài)圖。在以下描述中,假定資源是由節(jié)點PI、P2 以及P3用來發(fā)送信息至節(jié)點PO的信道。換句話說,節(jié)點PO是主節(jié)點,并且節(jié)點PI、P2以及P3可以是請求節(jié)點。信道可以在單獨的波導(未圖示)上攜載,該單獨的波導通過節(jié)點 PU P2以及P3的每一個并且在節(jié)點PO終止。應當注意,以下描述的仲裁系統(tǒng)和方法并不限于提供信道的仲裁,還可以用于控制對諸如總線、輸入和輸出端口以及其它共享設備和由主節(jié)點提供的服務的其它資源的訪問。假設初始時節(jié)點P1、P2以及P3處于圖7中所示的滿意狀態(tài)701,并且信道處于圖8 中所示的充裕狀態(tài)。如圖9A的瞬態(tài)圖中所示,因為主節(jié)點PO控制對信道的訪問,所以節(jié)點 PO “導通”注入器609,以便將持續(xù)的光流902注入饑餓波導603,并且“導通”探測器613, 以便提取饑餓波導603上的光902并確認光902的存在。當在探測器613處探測到光時, 如上文參照圖4-圖5所述那樣在仲裁波導602上執(zhí)行令牌時隙仲裁。節(jié)點PO “導通”探測器612,以便從仲裁波導提取任何未提取的令牌。如圖9A的瞬態(tài)圖中所示,節(jié)點Pl處于以下過程中提取令牌904,獲得對于在信道中用于將信息發(fā)送至節(jié)點PO的相應時隙的獨占式訪問。注意,節(jié)點P1、P2以及P3已經分別“導通”探測器620、624以及628,并且等待廣播波導604上來自節(jié)點PO的廣播?,F(xiàn)在假設當節(jié)點Pl已從仲裁波導提取令牌,則節(jié)點P2已進入饑餓狀態(tài),這是因為在節(jié)點P2能夠從仲裁波導提取令牌之前,無法發(fā)送去往節(jié)點PO的分組。換句話說,分組已經在節(jié)點P2存儲長于W,或節(jié)點P2的隊列長度大于L。返回圖7,節(jié)點P2從滿意狀態(tài)701 轉變到饑餓狀態(tài)702,并且標記存儲在用于信道的輸入隊列中的分組。如圖9B所示,節(jié)點 P2導通探測器622-624,并且開始從饑餓波導603提取光902。返回圖8,當節(jié)點PO在探測器613處不再探測到光時,節(jié)點PO將信道設置在饑荒狀態(tài)804,并且開始在廣播波導上將饑荒狀態(tài)廣播至節(jié)點P1、P2以及P3。如圖9C所示,當節(jié)點PO使信道進入饑荒狀態(tài)時,節(jié)點PO “導通”注入器610以及探測器614,并且將光906 注入廣播波導604。由探測器620、624以及擬8來轉向光906的一部分,從而向節(jié)點Pl、P2 以及P3變更信道是饑荒狀態(tài)。因為節(jié)點Pl并沒處于饑餓狀態(tài),所以節(jié)點Pl “截止”探測器618,并且節(jié)點P3使得探測器626 “截止”。在另一方面,節(jié)點P2使得探測器622和623 導通,并且從仲裁波導提取令牌908,并且繼續(xù)從饑餓波導提取光902。節(jié)點P2連續(xù)地提取令牌直到刷新標記的分組為止。盡管有在已經宣布饑餓狀態(tài)之后到達節(jié)點P2的任何分組加入隊列,但這些分組不會在饑荒狀態(tài)期間被標記和發(fā)送。一旦節(jié)點P2發(fā)送最后的標記分組,節(jié)點P2進入圖7中所示的暫停狀態(tài)703,其中節(jié)點P2 “截止”探測器623和622,允許光902在饑餓波導603上通過,并且節(jié)點P2傳遞所有的饑荒令牌,或在饑荒狀態(tài)期間發(fā)送的令牌。返回至圖8,當節(jié)點PO在饑餓波導上探測到光時,節(jié)點PO重新進入充裕狀態(tài)802。如圖9D的瞬態(tài)圖中所示,節(jié)點P2已“截止”探測器 622和623,恢復饑餓波導603上的光902。當節(jié)點PO在探測器613處探測到光時,節(jié)點PO 截止注入器610,隨后節(jié)點PI、P2以及P3不再探測到廣播波導604上的廣播,并且節(jié)點P2 會進入滿意狀態(tài),并且令牌時隙仲裁再次恢復。在下一個時鐘周期,如果節(jié)點P2需要,節(jié)點 P2能夠轉變?yōu)轲囸I狀態(tài)。一般而言,沒有節(jié)點能夠無限期地保持在饑餓狀態(tài)。例如,假設節(jié)點h變?yōu)轲囸I。 其如上所述那樣斷言它的饑餓,該饑餓到達主節(jié)點并且轉變?yōu)轲嚮臓顟B(tài)。在以下討論中,術語“當前饑荒”表示連續(xù)時鐘周期的時期,其包括節(jié)點h的饑餓信號到達主節(jié)點的時鐘周期,主節(jié)點發(fā)出饑荒令牌的時鐘周期。在節(jié)點h處于饑餓狀態(tài)的同時,隨后進入饑餓狀態(tài)的其它上游饑餓節(jié)點可以取得當前饑荒的饑荒令牌。這些節(jié)點中沒有任何一個在當前饑荒期間將取得多于L的令牌,因為取得L的任何節(jié)點必須已經刷新其緩沖器,并且進入暫停狀態(tài),在隊列中保持新到達的分組。在先前的饑餓上游節(jié)點已進入暫停狀態(tài)之后,節(jié)點h將最終接收足夠的分組以刷新來自其輸入隊列的標記分組,進入暫停狀態(tài),并對饑餓取消斷言 (de-assert)。在節(jié)點變?yōu)轲囸I時進入了饑餓狀態(tài)的所有節(jié)點進入暫停狀態(tài)之前,沒有節(jié)點返回到饑餓狀態(tài)。圖10示出根據(jù)本發(fā)明的一個或多個實施例總結了在通過圖7和圖8中所示的狀態(tài)圖的轉變中由請求節(jié)點和主節(jié)點所進行的步驟的示例性控制流程圖。在步驟1001中,主節(jié)點將令牌注入到仲裁波導。在步驟1002中,主節(jié)點將光注入到饑餓波導。在步驟1003 中,請求節(jié)點識別用于進入饑餓狀態(tài)的準則。例如,請求節(jié)點可能實現(xiàn)分組等待時間大于W 或者輸入隊列長度大于L。在步驟1004中,如上文參照圖9B所述的那樣,請求節(jié)點“導通”將光從饑餓波導轉向的探測器。在步驟1005中,主節(jié)點在饑餓波導上沒有探測到光,并進入饑荒狀態(tài)。在步驟1006中,如上文參照圖9C所述的那樣,主節(jié)點在廣播波導上進行廣播,以使得其它非饑餓節(jié)點停止從仲裁波導取得令牌。在步驟1007中,饑餓請求節(jié)點從仲裁波導提取令牌。在步驟1008中,請求節(jié)點使用資源。在步驟1009中,請求節(jié)點進入暫停狀態(tài),并且停止將光從饑餓波導和從仲裁波導偏向。在步驟1010中,主節(jié)點探測到饑餓波導上的光,并進入充裕狀態(tài)。在步驟1011中,主節(jié)點停止在廣播波導上廣播。在步驟1012 中,請求節(jié)點不再探測到廣播波導上的光,這指示饑荒狀態(tài)已經結束,并且進入其中節(jié)點能夠從仲裁波導提取令牌的滿意狀態(tài)。在步驟1013中,當令牌可用時,請求節(jié)點能夠使用資源??蓴U縮性本發(fā)明的仲裁系統(tǒng)和方法實施例并不限于具有恰好四個節(jié)點的系統(tǒng)。仲裁系統(tǒng)和方法可以放到或縮小,以便容納任意數(shù)量的節(jié)點。例如,可以將系統(tǒng)和方法實施例應用到多核心處理器。因為當核心數(shù)隨著摩爾定律增長時芯片面積基本固定,所以在N核心芯片中的每個核心具有與1/N成比例的面積,并且具有與成比例的長度和寬度。仲裁、饑餓、 廣播以及功率波導可以配置為沿著拜訪所有N個核心的路徑。圖11示出根據(jù)本發(fā)明的一個或多個實施例具有由虛線1102標識的通過每個核心的路徑的示例性16核心芯片的示意性表示。路徑1102表示通過每個核心的仲裁、饑餓、廣播以及功率波導。波導在長度上按
照一個核心的NX寬度(即,= 0(、/ \Γ|)而擴縮。例如,在具有5GHz時鐘的576mm2芯片上
N等于64時,飛行時間是8個時鐘周期。電子令牌仲裁器延遲在每個節(jié)點的令牌,并因而具有較高的時延。為了解釋,前述描述使用特定的術語,以提供對本發(fā)明的透徹理解。然而,對于本領域技術人員顯而易見的是,為了實施本發(fā)明,這些特定細節(jié)并非必需的。為了說明和描述的目的,給出了本發(fā)明的特定實施例的前述描述。它們并不旨在是本發(fā)明的詳盡描述,或者將本發(fā)明限制于所公開的精確形式。顯而易見的是,根據(jù)上面的教導能夠進行許多修改和變型。示出和描述這些實施例,以便最好地解釋本發(fā)明的原理以及其實際應用,從而使得本領域其他技術人員能夠最好地利用本發(fā)明,以及具有適于所設想的具體使用的各種修改的各種實施例。旨在由所附權利要求及其等價體來限定本發(fā)明的范圍。
權利要求
1.一種仲裁系統(tǒng),包括環(huán)形仲裁波導(602);環(huán)形饑餓波導(603);以及環(huán)形廣播波導(604),其中將所述仲裁波導、所述饑餓波導以及所述廣播波導光耦合至主節(jié)點以及多個請求節(jié)點,所述仲裁波導傳輸由所述主節(jié)點注入的令牌,由請求節(jié)點提取的每個令牌獲得在所述令牌的持續(xù)時間或長度內對于資源的訪問,所述饑餓波導傳輸由所述主節(jié)點注入的光,并且該光被在饑餓狀態(tài)中的請求節(jié)點提取,以及所述廣播波導傳輸由所述主節(jié)點注入的光,用于指示未處于饑餓狀態(tài)的請求節(jié)點停止從所述仲裁波導提取令牌。
2.根據(jù)權利要求1所述的系統(tǒng),還包括光耦合至所述仲裁波導的第一注入器(608);光耦合至所述饑餓波導的第二注入器(609);光耦合至所述廣播波導的第三注入器(610),其中所述第一注入器、所述第二注入器以及所述第三注入器電子耦合至所述主節(jié)點并由所述主節(jié)點操作,以使得操作所述第一注入器以將令牌注入到所述仲裁波導,操作所述第二注入器以將光注入到所述饑餓波導,以及操作所述第三注入器以將光注入到所述廣播波導。
3.根據(jù)權利要求1所述的系統(tǒng),其中對于每個節(jié)點,所述仲裁系統(tǒng)還包括光耦合至所述仲裁波導的第一探測器(612,618);光耦合至所述饑餓波導的第二探測器(613,619);光耦合至所述廣播波導的第三探測器(614,620),其中所述第一探測器、所述第二探測器以及所述第三探測器電子耦合至所述節(jié)點并由所述節(jié)點操作,以使得操作所述第一探測器以從所述仲裁波導提取令牌,操作所述第二探測器以從所述饑餓波導提取光,以及操作所述第三探測器以從所述廣播波導提取光。
4.根據(jù)權利要求1所述的系統(tǒng),其中令牌是具有有限持續(xù)時間和長度的光脈沖004)。
5.根據(jù)權利要求1所述的系統(tǒng),其中所述廣播波導還包括所述請求節(jié)點處的分離分配器(632-634),每個分配器配置為將由所述廣播波導攜載的光的一部分轉向到所述請求節(jié)點ο
6.一種主節(jié)點控制對于資源的訪問的方法,該資源被提供給多個請求節(jié)點使用,所述方法包括將令牌注入到環(huán)形仲裁波導(1001);將光注入到環(huán)形饑餓波導(1002);當注入到所述饑餓波導的所述光沒有沿著所述饑餓波導返回到所述主節(jié)點時,僅授予饑餓狀態(tài)中的請求節(jié)點對于所述令牌的獨占式訪問(1005,1006);以及當注入到所述饑餓波導的所述光沿著所述饑餓波導返回到所述主節(jié)點時,授予所述請求節(jié)點對于所述令牌的訪問(1010,1011)。
7.根據(jù)權利要求6所述的方法,其中將令牌注入到所述仲裁波導還包括將具有有限持續(xù)時間和長度的光脈沖(404)注入到所述仲裁波導。
8.根據(jù)權利要求6所述的方法,其中授予請求節(jié)點對于所述令牌的訪問還包括執(zhí)行令牌時隙仲裁。
9.根據(jù)權利要求6所述的方法,其中當注入到所述饑餓波導的所述光沒有沿著所述饑餓波導返回到所述主節(jié)點時還包括由饑餓狀態(tài)中的所述請求節(jié)點提取所述饑餓波導上的所述光。
10.根據(jù)權利要求6所述的方法,其中僅授予饑餓請求節(jié)點對于所述令牌的獨占式訪問還包括將光注入到廣播波導,用于指示未處于所述饑餓狀態(tài)的請求節(jié)點停止從所述仲裁波導提取令牌。
11.一種用于授予請求節(jié)點訪問由主節(jié)點控制的資源的方法,所述方法包括 識別用于使所述請求節(jié)點進入饑餓狀態(tài)的準則(1003);向所述主節(jié)點通知所述請求節(jié)點處于所述饑餓狀態(tài)(1004),其中所述主節(jié)點授予所述請求節(jié)點對于在環(huán)形仲裁波導中傳輸?shù)囊粋€或多個令牌的獨占式訪問;以及從所述仲裁波導提取一個或多個令牌(1007),每個令牌授予所述請求節(jié)點在所述令牌的持續(xù)時間或長度內對所述資源的獨占式訪問。
12.根據(jù)權利要求11所述的方法,其中識別用于使所述請求節(jié)點進入饑餓狀態(tài)的準則還包括至少以下之一確定分組何時已經在所述請求節(jié)點處存儲得長于時間閾值;以及確定所述請求節(jié)點的輸入隊列長度何時超過隊列長度閾值。
13.根據(jù)權利要求11所述的方法,還包括周期性轉變所述請求節(jié)點通過所述饑餓狀態(tài) (702)、暫停狀態(tài)(703)以及滿意狀態(tài)(701)。
14.根據(jù)權利要求11所述的方法,其中向所述主節(jié)點通知所述請求節(jié)點處于所述饑餓狀態(tài)(1009)還包括在所述請求節(jié)點處從饑餓波導提取光,其中由所述主節(jié)點注入所述光。
15.根據(jù)權利要求11所述的方法,其中從所述仲裁波導提取令牌還包括導通相鄰于所述仲裁波導設置的探測器,所述探測器配置為從所述仲裁波導提取所述令牌。
全文摘要
本發(fā)明的各種實施例涉及仲裁系統(tǒng)和方法。在一個實施例中,仲裁系統(tǒng)包括環(huán)形仲裁波導(602)、環(huán)形饑餓波導(603)以及環(huán)形廣播波導(604)。將所述仲裁、饑餓以及廣播波導光耦合至主節(jié)點以及多個請求節(jié)點。所述仲裁波導傳輸由所述主節(jié)點注入的令牌。由請求節(jié)點提取的令牌授予該節(jié)點在所述令牌的持續(xù)時間和長度內對于資源的訪問。所述饑餓波導傳輸由所述主節(jié)點注入的光。在饑餓狀態(tài)中的請求節(jié)點從所述饑餓波導提取所述光。所述廣播波導傳輸由所述主節(jié)點注入的光,以使得所述光指示未處于饑餓狀態(tài)的請求節(jié)點停止從所述仲裁波導提取令牌。
文檔編號G06F13/364GK102483727SQ200980161282
公開日2012年5月30日 申請日期2009年12月10日 優(yōu)先權日2009年12月10日
發(fā)明者N·L·賓格特, R·S·施雷博 申請人:惠普開發(fā)有限公司