《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 在嵌入式多核集群中利用OCP處理高速緩沖器一致流量

在嵌入式多核集群中利用OCP處理高速緩沖器一致流量

2008-08-25
作者:Matthias Knoth

源于一種基于消息的存儲一致模型

?

  傳統上,多處理器系統中的存儲器一致性都是通過總線偵聽" title="總線偵聽">總線偵聽實現的,每個內核都與一個通用多層總線連接,能夠偵聽同級處理器的存儲器存取流量,以調節每個高速緩沖器行的一致狀態。這樣,每個內核都在本地保持了L1高速緩沖器行的一致狀態,并通過通用總線將狀態的改變通知同級處理器。

?

  SoC不斷增加的面積和復雜性導致了多層總線基本哲學的改變,以利于采用集中流量路由的本地點對點連接。由于負載的減少和段長的縮短,這將有助于顯著加速和推動現在的本地化總線段的改善。同時,也可以緩解總線爭用問題,同時增加了本地化數據交換吞吐量。為了滿足這一系統架構趨勢,出現了OCP(開放內核協議)標準,進一步鞏固了這一設計哲學。另外,IP供應商業務模式的出現催化了IP互連和設計方法的標準化,有利于在一個開放標準基礎上實現設計的復用。

?

  然而,與通過OCP互連段操控一樣,本地化總線執行將整個多核集群上的處理器分拆開。一致方案不能直接基于總線偵聽和依賴總線仲裁來確保存取排序,需要不同的通信方法來確保數據存取的一致性。在爭用L1行數據請求排序的過程中,其他挑戰也浮現出來。應對這些挑戰的一種方法是給每個處理單元增加一致消息通信,如圖1所示。這些消息提供了偵聽型緩沖器一致的方法。

圖 1? 一致處理系統

?

  一致消息包含了OCP協議中的一個新命令。處理器系統中的成員向一個集中一致管理器" title="管理器">管理器發送一致消息。該管理器提供存取排序(順序化)和消息路由,為同級成員提供偵聽型存取。這些同級成員將以其單獨的L1行狀態進行響應,并發出一個消息響應。根據這些響應,一致管理器發起對內核間一致數據的數據移動,將存取集中在更高級別的存儲器層,如L2和L3高速緩沖器。I/O" title="I/O">I/O一致單元還可提供一種方式逐漸采用/逐漸淘汰數據進/出一致地址空間的數據,它是一致消息交換的一部分。

?

  除了OCP協議中的新消息類命令外,還需要具體的處理器響應一致狀態請求,因此它們不只是總線處理的發動者(主控)。一致處理系統" title="處理系統">處理系統滿足這一要求的方法可能是通過提供一個OCP從端口來接收和響應一致管理器發送的消息。處理器的一致請求將利用OCP主端口。在處理集群內,內核間和一致管理器之間的一致消息交換被稱為“干預”。處理器的OCP從端口接收干預,因此稱為“干預端口”。

?

  如圖1所示,1004K系統的每個獨立處理器都是基于我們多線程處理器架構的,可以在單標量、9級流水線范圍內提供兩個獨立線程并處理上下文。復制的1級數據高速緩沖器標記陣列可同時用于存取CPU操作和干預查尋。一致處理系統可支持MESI型高速緩沖器行一致性。

?

  處理系統一致管理器通過其請求單元—OCP從端口,在每個CPU和I/O一致單元的推動下,接收進入的消息并對其進行串化。串化的消息按照其地址空間和上下文,或使用“存儲器接口單元”發送到更高級別的高速緩沖器層,或使用“偵聽代理”發送至同級處理器和I/O一致單元。偵聽代理發起OCP主處理(干預)來查尋每個處理器的一致L1高速緩沖器行狀態。干預返回到消息發起者,稱為自我干預,有助于發起者提供存取排序。對 CPU 發起的一致消息響應和數據響應是在“響應單元”內確立的,并發送到每個 CPU。

?

  一致OCP命令

?

  在1004K CPS中使用的OCP命令可以分成三類。

?

  第一類是保持MESI型高速緩沖器行狀態的一致消息。它們是CPU負載/存儲操作的結果,能夠發起CPU和/或存儲器子系統之間的數據移動。CPS(一致處理系統)的所有同級CPU將接收由一個發起者發送的一致消息,并根據它們的高速緩沖器行一致狀態做出響應。一致管理器將根據需要發起數據移動。

?

  一致高速緩沖器操作指令" title="操作指令">操作指令用于一致地址空間內高速緩沖器行的維護。I/O流量將新的一致行帶入該域,或將一致上下文從高速緩沖器行中移除。另外,還要進行存儲器層的同步化操作。

?

  第三類是非一致命令,在一致地址空間外的存儲區中執行OCP主端口處理。它們代表了OCP讀寫命令。

?

  一致消息

?

  一致處理系統可能執行四個一致消息,這四個消息是由CPU負載/存儲活動產生的L1高速緩沖器行狀態變化導致的。發起的CPU將這個消息以OCP主端口命令發送。系統的同級CPU接收基于該行狀態變化的干預,并以其本地高速緩沖器行狀態進行響應。

?

  第一種消息類型是CohReadOwn,表示在嘗試修改高速緩沖器行時發生的高速緩沖器的不命中。同級內核遇到處于“修改”狀態的該行時,會強制回寫到存儲器子系統中,并執行本地失效。作為優化,本地遇到的行數據將被轉發到請求方 CPU,以降低存取延遲。請求方CPU將使該行作為“專有”行,并執行行修改指令。然后,高速緩沖器行狀態將變成“修改過的”。在等待行重新填滿的時候,請求方CPU將繼續另一個線程的執行。

?

?? 一致讀取共享(CohReadShared)消息表明在讀行操作過程中發生的高速緩沖器不命中。不需要行修改。遇到“已修改”狀態的該行的同級內核將強制回寫到存儲器子系統。命中的同級行將轉換到“共享”狀態。命中數據將被轉發到請求方內核,并以“共享”狀態安裝。然后執行讀行操作。在等待行重新填滿的時候,請求方CPU將繼續另外一個線程的執行。

?

  一致升級(CohUpgrade)消息表明遇到命中“共享”行的一個高速緩沖器行修改指令。同級內核將收到通知取消命中行。在修改指令執行完以后,“共享”行會隨之升級為“修改”行。

?

  最終,一致回寫(CohWriteBack)消息表示驅逐了一個一致高速緩沖器行。一致管理器將通過干預端口發起數據移動,并將數據轉發到存儲器子系統。被驅逐的高速緩沖器行隨后便由一個新的—可能是一致的—地址取代。在這種情況下,CohReadOwn或CohReadShared導致了這個驅逐。

?

  一致高速緩沖器操作指令

?

  為了響應高速緩沖器操作,需要發起一致消息,并發送到同級內核。

  CohCopyBack—將一致高速緩沖器行回寫到存儲子系統。
  CohInvalidate—清除一致高速緩沖器行,而不是將其內容回寫到存儲子系統。
  CohWriteInvalidate—I/O一致單元在一個新的高速緩沖器行注入一致域。
  CohReadInvalidate — I/O一致單元通知系統,高速緩沖器行將離開一致域。
  CohCompletionSync—無數據的命令可以保持排序。


  非一致命令

?

  傳統的OCP命令,如“讀取”和“寫入”命令是由整個一致處理系統支持的,以處理非一致存儲器存取的數據存取。當高速緩存的、非一致地址內的命中失敗,或者非高速緩存存取引發存儲子系統內的讀取操作時,就會發出讀命令。如果響應數據是作為非一致高速緩存安裝的話,那么非高速緩存數據就會直接被消耗掉。提取和負載/存儲活動可導致讀取處理。當高速緩存的、非一致逐出數據或非高速緩存地址范圍存儲被寫入存儲子系統時,即發出寫入命令。內核的 OCP 主端口執行命令和數據階段的處理。

?

  實例—一致讀取共享消息

?

  CPU0 在一致高速緩存行上遇到負載不命中,并發起 cohReadShared 消息(無修改意圖)。一致管理器將干預消息發送到所有內核,在此內核 1 將響應“修改”的命中。一致管理器現在發起了一個修改行回寫,將行數據從內核 1 中的干預端口移動到存儲子系統。命中的內核 1 高速緩存行轉移到“共享”狀態(見圖2)。行數據移動也會轉發到內核 0,在此它可在“共享”狀態下安裝。

圖2? 一致讀取共享消息

?

  結語

?

  OCP互連有助于支持基于消息的一致方案。集中的一致管理器可以串化從單獨內核發出的一致消息,并詢問同級內核的一致狀態。內核之間的數據轉發可減少存取延遲和對更高級別的存儲器層的流量。單個內核支持OCP主端口發起數據存取和OCP從端口接收來自一致管理器的詢問。

?

  參考文獻:

  1.OCP規范2.2,2006 OCP-IP協會,版權所有

  2.OCP一致擴展,第二部分:信號和解碼(未發表、初稿)

  3.MIPS32 1004K一致處理系統用戶手冊,MIPS科技公司


?

?

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 成人午夜爽爽爽免费视频 | 日本一区二区高清不卡 | 高清视频黄色录像免费 | 黄站免费| 精品毛片视频 | 一区二区不卡在线观看 | 免费污污视频在线观看 | 亚洲欧美在线综合一区二区三区 | 99久久精品国产亚洲 | 2021国产精品视频一区 | 亚洲成网站www久久九 | 亚洲福利视频一区 | 国产欧美日韩精品第一区 | 亚洲综合在线另类色区奇米 | 日韩欧美精品综合一区二区三区 | 激情影院a | 日日操日日插 | 中文亚洲日韩欧美 | 久久精品国产999久久久 | 亚洲污网站 | 欧美性导航| 亚洲日韩中文字幕天堂不卡 | 亚洲人成网站在线观看90影院 | 99re视频在线观看 | 青草草在线 | 性刺激欧美三级在线观看 | 99视频全部免费 | 52精品免费视频国产专区 | 一级a性色生活片久久毛片 一级a美女毛片 | 国产成人欧美一区二区三区vr | 成人永久福利免费观看 | 深夜福利亚洲 | 国产伦精品一区三区视频 | 欧美日韩精品免费一区二区三区 | 国产成人综合亚洲 | 视频一区二区在线 | 亚洲成人中文字幕 | 狠狠香蕉 | 日本三级一区二区 | 日本69xxx18hd| 免费一区二区三区视频狠狠 |