基帶處理芯片共享高速存儲(chǔ)器模塊設(shè)計(jì)
發(fā)布時(shí)間:2017-07-31 責(zé)任編輯:susan
【導(dǎo)讀】本文介紹了一種共享高速存儲(chǔ)器模塊的設(shè)計(jì)。該高速存儲(chǔ)器能夠?qū)崿F(xiàn)多核處理器間的數(shù)據(jù)交換,同時(shí)占用較小的電路面積。相比傳統(tǒng)的多核處理器數(shù)據(jù)交換方式,本設(shè)計(jì)可以更好地提升系統(tǒng)性能。是一種有市場(chǎng)競(jìng)爭(zhēng)力的電路設(shè)計(jì)結(jié)構(gòu)。
高速緩存作為中央處理器 (CPU) 與主存之間的小規(guī)??焖俅鎯?chǔ)器,解決了兩者數(shù)據(jù)處理速度的平衡和匹配問(wèn)題,有助于提高系統(tǒng)整體性能。多處理器 (SMP) 支持共享和私有數(shù)據(jù)的緩存,Cache 一致性協(xié)議用于維護(hù)由于多個(gè)處理器共享數(shù)據(jù)引發(fā)的多處理器數(shù)據(jù)一致性問(wèn)題。論述了一個(gè)適用于64位多核處理器的共享緩存設(shè)計(jì),包括如何實(shí)現(xiàn)多處理器緩存一致性及其全定制后端實(shí)現(xiàn)。
1.共享緩存結(jié)構(gòu)設(shè)計(jì)
1.1 總體考慮
在多核 CPU中共享高速緩存主要負(fù)責(zé)緩存多個(gè)處理器核的數(shù)據(jù),處理訪問(wèn)這些數(shù)據(jù)的缺失請(qǐng)求并向 DRAM 控制器發(fā)送請(qǐng)求以獲得 DRAM 返回的數(shù)據(jù)。共享高速緩存通過(guò)交叉開(kāi)關(guān)總線與各個(gè)處理器核互連,通過(guò)交叉開(kāi)關(guān)總線轉(zhuǎn)發(fā)通信數(shù)據(jù)包進(jìn)行數(shù)據(jù)通信。共享高速緩存分為四個(gè)緩存組,每個(gè)緩存組采用組相聯(lián)地址映射。每個(gè)處理核心都可以發(fā)送數(shù)據(jù)包到任意一個(gè)緩存組,同數(shù)據(jù)包也可以反方向發(fā)送從任意一個(gè)緩存組到任意一個(gè)處理核心。
共享緩存采用四路組相聯(lián)映射,將緩存分1024 組。緩存塊的物理地址分為3部分,包括標(biāo)簽塊、索引塊以及塊內(nèi)偏移。索引部分用于確定緩存塊所在的組。通過(guò)比較物理地址的標(biāo)簽塊和所選中組內(nèi)的四路標(biāo)簽,可以確定訪問(wèn)的命中或者缺失。在命中時(shí),比較的結(jié)果作為路選擇向量發(fā)往數(shù)據(jù)陣列。緩存通過(guò)路選擇向量和組選擇向量確定。
1.2 緩存一致性
對(duì)稱(chēng)式共享存儲(chǔ)器多處理器系統(tǒng)中多處理器2高速緩存子系統(tǒng)共享同一個(gè)物理存儲(chǔ)器,通過(guò)總線連接,對(duì)于所有的處理器訪問(wèn)存儲(chǔ)器的時(shí)間一致,即均勻存儲(chǔ)訪問(wèn) (UMA)。對(duì)稱(chēng)式共享存儲(chǔ)器系統(tǒng)支持共享和私有數(shù)據(jù)的緩存。私有數(shù)據(jù)被單個(gè)處理器使用,而共享數(shù)據(jù)則被多個(gè)處理器使用,通過(guò)讀寫(xiě)共享數(shù)據(jù)完成處理器之間的通信。共享數(shù)據(jù)在多個(gè)緩存中形成副本,減少了訪問(wèn)時(shí)延、降低了對(duì)存儲(chǔ)器帶寬的要求并減少多個(gè)處理器讀取共享數(shù)據(jù)時(shí)的競(jìng)爭(zhēng)現(xiàn)象。然而,共享數(shù)據(jù)帶來(lái)了緩存一致性問(wèn)題,實(shí)現(xiàn)緩存一致性關(guān)鍵在于跟蹤所有共享數(shù)據(jù)塊的狀態(tài)。目前為了實(shí)現(xiàn)緩存一致性而廣泛采用的有目錄式以及監(jiān)聽(tīng)式這兩種協(xié)議。該設(shè)計(jì)采用目錄式緩存一致性協(xié)議 ,把物理存儲(chǔ)器的共享狀態(tài)放在目錄表中,根據(jù)目錄跟蹤哪一個(gè)以及緩存擁有二級(jí)緩存塊的副本。一級(jí)緩存是寫(xiě)直達(dá)的,只有無(wú)效信息被要求,共享緩存是寫(xiě)回的,數(shù)據(jù)總可以從共享緩存中重新得到。為減少目錄的開(kāi)銷(xiāo),將目錄放在緩存中而不是存儲(chǔ)器中。
當(dāng)一個(gè)塊還未被緩存有 2 種可能的目錄請(qǐng)求:
1) 讀缺失:共享緩存向發(fā)出請(qǐng)求的處理器送回所要求的數(shù)據(jù),發(fā)送請(qǐng)求的節(jié)點(diǎn)成為唯一的共享節(jié)點(diǎn)。塊的狀態(tài)設(shè)為共享。
2) 寫(xiě)缺失:向發(fā)出請(qǐng)求的處理器送回?cái)?shù)據(jù)并使它成為共享節(jié)點(diǎn)。數(shù)據(jù)塊設(shè)為獨(dú)占狀態(tài),指明這是唯一有效的緩存副本。共享者集合中指明所有者。當(dāng)數(shù)據(jù)塊處于共享狀態(tài)時(shí),共享緩存中的值是最新的,有 2 種可能的目錄請(qǐng)求:
1) 讀缺失:共享緩存向發(fā)送請(qǐng)求的處理器送回所要求的數(shù)據(jù),并將發(fā)送請(qǐng)求的處理器放到共享集中。
2) 寫(xiě)缺失:向發(fā)送請(qǐng)求的處理器送回?cái)?shù)據(jù),無(wú)效共享集合中的處理器緩存塊,保存發(fā)送請(qǐng)求的處理器標(biāo)識(shí),將數(shù)據(jù)塊設(shè)置成獨(dú)占狀態(tài)。
當(dāng)數(shù)據(jù)塊處于獨(dú)占狀態(tài)時(shí),塊的當(dāng)前值保存在共享者集所指明的處理器的緩存中,有 3 種可能的目錄請(qǐng)求:
1) 讀缺失:向所有者處理器發(fā)送數(shù)據(jù)消息,將緩存塊狀態(tài)設(shè)為共享。由所有者向目錄發(fā)送數(shù)據(jù),將數(shù)據(jù)寫(xiě)入共享緩存并發(fā)送回發(fā)出請(qǐng)求的處理器。再將發(fā)出請(qǐng)求的處理器添加到共享者集合中,這時(shí)集合中仍然會(huì)有其他所有者處理器。
2) 數(shù)據(jù)寫(xiě)回:執(zhí)行寫(xiě)回操作,更新存儲(chǔ)器副本 ,共享者集合為空。
3) 寫(xiě)缺失:數(shù)據(jù)塊有了新的所有者。向舊的所有者發(fā)送消息,使緩存將該數(shù)據(jù)塊設(shè)置為無(wú)效,并把值發(fā)送到目錄中,再通過(guò)目錄把數(shù)值發(fā)送到發(fā)出請(qǐng)求的處理器上。發(fā)出請(qǐng)求的處理器成為新的所有者。共享者集合只保留新所有者的標(biāo)識(shí),而塊仍然處于獨(dú)占狀態(tài)。
2.高速共享緩存模塊
用戶RAM大小為2MB,掛接在雙核之間的AHB總線上,兩個(gè)內(nèi)核訪問(wèn)區(qū)域可以任意配置。其內(nèi)部是一塊 SRAM 和AHB總線從接口電路,如圖2-1所示。讀訪問(wèn)有一個(gè)周期的延遲,寫(xiě)訪問(wèn)無(wú)延遲。讀寫(xiě)訪問(wèn)時(shí)序見(jiàn)圖2-2、圖2-3。讀寫(xiě)都支持字節(jié)(byte)訪問(wèn)、半字(half-word)訪問(wèn)或字(word)訪問(wèn)。
用戶RAM所在的地址空間范圍為0xA0000000 ~ 0xA01FFFFF。
圖 2?1 用戶RAM結(jié)構(gòu)示意圖
假設(shè)CPU0寫(xiě)數(shù)據(jù)到用戶RAM,接著CPU1從用戶RAM讀數(shù)據(jù)。這種情況下,CPU0首先寫(xiě)數(shù)據(jù),然后將標(biāo)志變量置1,表示用戶RAM內(nèi)的數(shù)據(jù)已更新。標(biāo)志變量地址位于用戶RAM地址范圍內(nèi)。接著CPU1讀標(biāo)志變量,若變量為1,則從用戶RAM內(nèi)對(duì)應(yīng)地址讀取CPU0寫(xiě)入的數(shù)據(jù),并將標(biāo)志變量置0;若標(biāo)志變量為0,則表示用戶RAM內(nèi)數(shù)據(jù)已被CPU1讀取過(guò)。
使用以上方法可實(shí)現(xiàn)核間數(shù)據(jù)交互。由于同一時(shí)刻AHB總線上只能有一個(gè)設(shè)備利用總線進(jìn)行讀寫(xiě),所以可以保證讀寫(xiě)操作的原子性,即標(biāo)志變量不可能被CPU0和CPU1同時(shí)訪問(wèn)。從而保證了標(biāo)志變量的有效性。
圖 2?2 用戶RAM讀時(shí)序
圖 2?3 用戶RAM寫(xiě)時(shí)序
特別推薦
- 車(chē)用開(kāi)關(guān)電源的開(kāi)關(guān)頻率定多高才不影響EMC?
- 大聯(lián)大世平集團(tuán)的駕駛員監(jiān)控系統(tǒng)(DMS)方案榮獲第六屆“金輯獎(jiǎng)之最佳技術(shù)實(shí)踐應(yīng)用”獎(jiǎng)
- 貿(mào)澤推出針對(duì)基礎(chǔ)設(shè)施和智慧城市的工程技術(shù)資源中心
- 大普技術(shù)自主可控、高精度、小型化TCXO——對(duì)講機(jī)應(yīng)用
- Melexis創(chuàng)新推出集成喚醒功能的汽車(chē)制動(dòng)踏板位置傳感器芯片方案
- Vishay推出的新款高能浪涌限流PTC熱敏電阻,可提高有源充放電電路性能
- 美芯晟推出支持ALS和Flicker的小尺寸閃爍光傳感器芯片
技術(shù)文章更多>>
- 遠(yuǎn)山半導(dǎo)體發(fā)布新一代高壓氮化鎵功率器件
- Kvaser發(fā)布全新軟件CanKing 7:便捷CAN總線診斷與分析!
- 6秒速測(cè)!瑞典森爾(Senseair)高精度酒精檢測(cè)儀,守護(hù)公路貨運(yùn)安全,嚴(yán)防酒駕醉駕
- APSME 2025 亞洲國(guó)際功率半導(dǎo)體、材料及裝備技術(shù)展覽會(huì)
- 汽車(chē)電子展︱AUTO TECH 2025 廣州國(guó)際汽車(chē)電子技術(shù)展覽會(huì)
技術(shù)白皮書(shū)下載更多>>
- 車(chē)規(guī)與基于V2X的車(chē)輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車(chē)安全隔離的新挑戰(zhàn)
- 汽車(chē)模塊拋負(fù)載的解決方案
- 車(chē)用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門(mén)搜索
繞線電感
繞線設(shè)備
熱繼電器
熱敏電阻
熔斷器
融斷電阻
柔性PCB
銳迪科
瑞薩
賽普拉斯
三端穩(wěn)壓管
三極管
色環(huán)電感
上海豐寶
攝像頭
生產(chǎn)測(cè)試
聲表諧振器
聲傳感器
濕度傳感器
石英機(jī)械表
石英石危害
時(shí)間繼電器
時(shí)鐘IC
世強(qiáng)電訊
示波器
視頻IC
視頻監(jiān)控
收發(fā)器
手機(jī)開(kāi)發(fā)
受話器