《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 解決方案 > 基帶處理芯片共享高速存儲器模塊設計

基帶處理芯片共享高速存儲器模塊設計

2017-07-24
作者:張業強,唐芳福,張志國,韓俊,趙厲
來源:珠海歐比特控制工程股份有限公司

摘要:  高速緩存作為中央處理器 (CPU) 與主存之間的小規模快速存儲器,解決了兩者數據處理速度的平衡和匹配問題,有助于提高系統整體性能。多處理器 (SMP) 支持共享和私有數據的緩存,Cache 一致性協議用于維護由于多個處理器共享數據引發的多處理器數據一致性問題。論述了一個適用于64位多核處理器的共享緩存設計,包括如何實現多處理器緩存一致性及其全定制后端實現。

關鍵詞: 共享高速存儲器;多核處理器;AMBA總線;

中圖分類號:TP332       文獻標識碼:A 

文章編號:

0. 引言

本文介紹了一種共享高速存儲器模塊的設計。該高速存儲器能夠實現多核處理器間的數據交換,同時占用較小的電路面積。相比傳統的多核處理器數據交換方式,本設計可以更好地提升系統性能。是一種有市場競爭力的電路設計結構;

1. 共享緩存結構設計

1.1 總體考慮

在多核 CPU中共享高速緩存主要負責緩存多個處理器核的數據,處理訪問這些數據的缺失請求并向 DRAM 控制器發送請求以獲得 DRAM 返回的數據。共享高速緩存通過交叉開關總線與各個處理器核互連,通過交叉開關總線轉發通信數據包進行數據通信。共享高速緩存分為四個緩存組,每個緩存組采用組相聯地址映射。每個處理核心都可以發送數據包到任意一個緩存組,同數據包也可以反方向發送從任意一個緩存組到任意一個處理核心。

共享緩存采用四路組相聯映射,將緩存分1024 組。緩存塊的物理地址分為3部分,包括標簽塊、索引塊以及塊內偏移。索引部分用于確定緩存塊所在的組。通過比較物理地址的標簽塊和所選中組內的四路標簽,可以確定訪問的命中或者缺失。在命中時,比較的結果作為路選擇向量發往數據陣列。緩存通過路選擇向量和組選擇向量確定

1.2 緩存一致性

對稱式共享存儲器多處理器系統中多處理器2高速緩存子系統共享同一個物理存儲器,通過總線連接,對于所有的處理器訪問存儲器的時間一致,即均勻存儲訪問 (UMA)。對稱式共享存儲器系統支持共享和私有數據的緩存。私有數據被單個處理器使用,而共享數據則被多個處理器使用,通過讀寫共享數據完成處理器之間的通信。共享數據在多個緩存中形成副本,減少了訪問時延、降低了對存儲器帶寬的要求并減少多個處理器讀取共享數據時的競爭現象。然而,共享數據帶來了緩存一致性問題,實現緩存一致性關鍵在于跟蹤所有共享數據塊的狀態。目前為了實現緩存一致性而廣泛采用的有目錄式以及監聽式這兩種協議。該設計采用目錄式緩存一致性協議 ,把物理存儲器的共享狀態放在目錄表中,根據目錄跟蹤哪一個以及緩存擁有二級緩存塊的副本。一級緩存是寫直達的,只有無效信息被要求,共享緩存是寫回的,數據總可以從共享緩存中重新得到。為減少目錄的開銷,將目錄放在緩存中而不是存儲器中。

當一個塊還未被緩存有 2 種可能的目錄請求:

1) 讀缺失:共享緩存向發出請求的處理器送回所要求的數據,發送請求的節點成為唯一的共享節點。塊的狀態設為共享。

2) 寫缺失:向發出請求的處理器送回數據并使它成為共享節點。數據塊設為獨占狀態,指明這是唯一有效的緩存副本。共享者集合中指明所有者。當數據塊處于共享狀態時,共享緩存中的值是最新的,有 2 種可能的目錄請求:

1) 讀缺失:共享緩存向發送請求的處理器送回所要求的數據,并將發送請求的處理器放到共享集中。

2) 寫缺失:向發送請求的處理器送回數據,無效共享集合中的處理器緩存塊,保存發送請求的處理器標識,將數據塊設置成獨占狀態。

當數據塊處于獨占狀態時,塊的當前值保存在共享者集所指明的處理器的緩存中,有 3 種可能的目錄請求:

1) 讀缺失:向所有者處理器發送數據消息,將緩存塊狀態設為共享。由所有者向目錄發送數據,將數據寫入共享緩存并發送回發出請求的處理器。再將發出請求的處理器添加到共享者集合中,這時集合中仍然會有其他所有者處理器。

2) 數據寫回:執行寫回操作,更新存儲器副本 ,共享者集合為空。

3) 寫缺失:數據塊有了新的所有者。向舊的所有者發送消息,使緩存將該數據塊設置為無效,并把值發送到目錄中,再通過目錄把數值發送到發出請求的處理器上。發出請求的處理器成為新的所有者。共享者集合只保留新所有者的標識,而塊仍然處于獨占狀態。

2. 高速共享緩存模塊

用戶RAM大小為2MB,掛接在雙核之間的AHB總線上,兩個內核訪問區域可以任意配置。其內部是一塊 SRAM 和AHB總線從接口電路,如圖2-1所示。讀訪問有一個周期的延遲,寫訪問無延遲。讀寫訪問時序見圖2-2、圖2-3。讀寫都支持字節(byte)訪問、半字(half-word)訪問或字(word)訪問。

用戶RAM所在的地址空間范圍為0xA0000000 ~ 0xA01FFFFF。

圖片1.png

圖 21 用戶RAM結構示意圖

假設CPU0寫數據到用戶RAM,接著CPU1從用戶RAM讀數據。這種情況下,CPU0首先寫數據,然后將標志變量置1,表示用戶RAM內的數據已更新。標志變量地址位于用戶RAM地址范圍內。接著CPU1讀標志變量,若變量為1,則從用戶RAM內對應地址讀取CPU0寫入的數據,并將標志變量置0;若標志變量為0,則表示用戶RAM內數據已被CPU1讀取過。

     使用以上方法可實現核間數據交互。由于同一時刻AHB總線上只能有一個設備利用總線進行讀寫,所以可以保證讀寫操作的原子性,即標志變量不可能被CPU0和CPU1同時訪問。從而保證了標志變量的有效性。

圖片2.png

圖 22 用戶RAM讀時序

圖片3.png

圖 23 用戶RAM寫時序

參 考 文 獻
[1 ]John L . Hennessy , David A. Patterson , Computer Architecture : A Quantitative Approach , Fourth Edition [ M ]. Ap professional ,1990
[2 ] Sun Microsystems Inc. OpenSPARC T1 Microarchitecture Specification[ R]. 2006
[3 ]David A. Patterson , John L . Hennessy , Computer organization and design[ M ]. Morgan Kaufmann ,2004
[4 ] Michael D. Ciletti , Advanced digital design with the Verilog HDL [ M ]. Pearson ,2005
[5 ]周立. 計算機系統結構 [ M ]. 北京 :清華大學出版 社 ,2006


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 波多野结衣久久精品免费播放 | 丁香激情五月 | 亚洲欧美在线观看首页 | 欧美日韩国产手机在线观看视频 | 九九在线精品视频xxx | 日韩精品一区二区三区中文 | 欧美午夜影视 | 美女黄色免费在线观看 | 最近中文字幕国语免费完整 | 国产成人一区二区在线不卡 | 韩国一区二区三区 | 国产美女在线一区二区三区 | 国产在线播放网址 | 日韩欧美理论 | 久草欧美视频 | 日韩黄色大片免费看 | 欧美极品欧美精品欧美视频 | 黄色网址免费在线 | 成人免费国产gav视频在线 | 日韩 欧美 综合 在线 制服 | 国产在线精品一区二区中文 | 欧美一级手机免费观看片 | 色人阁导航 | 国产精品欧美亚洲韩国日本久久 | 日本一区二区视频在线观看 | 在线看日韩 | 99精品影视| 成年在线观看网站免费视频 | 欧美大胆性生话 | 久久精品免看国产 | 午夜寂寞影院在线观看 | 日本夜夜夜| 国产盗摄精品一区二区 | 荡女淫春未删减在线观看 | 免费无遮挡嘿嘿嘿视频动态 | 欧美成人手机视频免费播放 | 亚洲综合网美国十次 | 91久久精品日日躁夜夜躁欧美 | 欧美日韩一区二区视频图片 | 有b吗在线视频 | 亚洲欧美精品久久 |