[發(fā)明專利]一種多核處理器CAS/SWAP原子操作實現(xiàn)方法有效
| 申請?zhí)枺?/td> | 201210322804.4 | 申請日: | 2012-09-04 |
| 公開(公告)號: | CN102880584A | 公開(公告)日: | 2013-01-16 |
| 發(fā)明(設(shè)計)人: | 鄧讓鈺;衣曉飛;李永進;周宏偉;晏小波;張英;竇強;曾坤;謝倫國;馬卓 | 申請(專利權(quán))人: | 中國人民解放軍國防科學(xué)技術(shù)大學(xué) |
| 主分類號: | G06F15/167 | 分類號: | G06F15/167 |
| 代理公司: | 湖南兆弘專利事務(wù)所 43008 | 代理人: | 趙洪;周長清 |
| 地址: | 410073 湖南省長沙市硯瓦池正*** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 多核 處理器 cas swap 原子 操作 實現(xiàn) 方法 | ||
1.一種多核處理器CAS/SWAP原子操作實現(xiàn)方法,其特征在于,步驟為:
(1)最外層私有Cache?LLPC接收到對稱處理核SPC的CAS/SWAP原子操作請求后:
若Cache命中,且原子操作滿足數(shù)據(jù)交換條件,向目錄控制器DCU發(fā)送LLPC?Atomic?Update?Request請求,該請求中攜帶交換的數(shù)據(jù),置Cache塊狀態(tài)為鎖定態(tài)A;所述Cache塊處于鎖定態(tài)A時,表示該Cache塊被占用或處于中間狀態(tài),不能被替換;
若Cache失效,則向目錄控制器DCU發(fā)送LLPC?Atomic?Read?Shared?Request請求,需要分配Cache塊,且置Cache塊為鎖定態(tài)A;
(2)目錄控制器DCU處理最外層私有Cache?LLPC與原子請求操作相關(guān)的請求:
如果目錄控制器DCU對應(yīng)位向量處于忙狀態(tài),則根據(jù)請求類型LLPC?Atomic?Read?Shared?Request和LLPC?Atomic?Update?Request分別返回DCU?Atomic?Read?Shared?NRSP和DCU?Atomic?Update?NRSP響應(yīng)給源請求LLPC;
若目錄控制器DCU對應(yīng)位向量處于不忙狀態(tài),且請求是LLPC?Atomic?Read?Shared?Request,目錄控制器DCU從LLPC數(shù)據(jù)副本和memory數(shù)據(jù)副本中選取最新副本,向請求源返回DCU?Atomic?Read?Shared?RSP響應(yīng),并置對應(yīng)位向量;
若目錄控制器DCU對應(yīng)位向量處于不忙狀態(tài),且請求是LLPC?Atomic?Update?Request,目錄控制器DCU向各個LLPC副本發(fā)送DCU?Atomic?Update?Snp監(jiān)聽請求,同時還需要更新Memory副本;
(3)最外層私有Cache?LLPC收到目錄控制器DCU的更新監(jiān)聽請求后:
最外層私有Cache?LLPC收到目錄控制器DCU的DCU?Atomic?Update?Snp監(jiān)聽請求后,用監(jiān)聽報文中的數(shù)據(jù)更新Cache塊數(shù)據(jù),然后向源目錄控制器DCU發(fā)送LLPC?Atomic?Update?Snp?Ack更新完成應(yīng)答;
(4)目錄控制器DCU收到最外層私有Cache?LLPC的更新完成應(yīng)答后:
等待所有副本的LLPC的LLPC?Atomic?Update?Snp?Ack更新完成應(yīng)答;所有副本的更新完成時,產(chǎn)生完成DCU?A?tomic?Update?Cmpl?Rsp響應(yīng)給源請求LLPC;
(5)最外層私有Cache?LLPC收到目錄控制器DCU的響應(yīng)后:
若最外層私有Cache?LLPC接收到目錄控制器DCU產(chǎn)生的DCU?Atomic?Read?Shared?NRSP和DCU?Atomic?Update?NRSP響應(yīng),重發(fā)原請求;
若最外層私有Cache?LLPC接收到目錄控制器DCU產(chǎn)生的DCU?Atomic?Read?Shared?RSP響應(yīng),重新處理CAS/SWAP原子操作請求;
若最外層私有Cache?LLPC接收到目錄控制器DCU產(chǎn)生的DCU?Atomic?Update?Cmpl?Rsp響應(yīng),完成數(shù)據(jù)交換操作,置Cache塊狀態(tài)為共享態(tài)S,并向目錄控制器DCU發(fā)送LLPC?Atomic?Update?Cmpl?Rsp?ACK;所述Cache塊處于共享態(tài)S時,表示該Cache數(shù)據(jù)有多個副本;
(6)目錄控制器DCU處理LLPC?Atomic?Update?Cmpl?Rsp?ACK:
目錄控制器DCU接收到LLPC?Atomic?Update?Cmpl?Rsp?ACK后,清空對應(yīng)位向量的狀態(tài)位。
2.根據(jù)權(quán)利要求1所述的多核處理器CAS/SWAP原子操作實現(xiàn)方法,其特征在于,所述目錄控制器DCU記錄加載到最外層私有Cache?LLPC中的所有Cache塊的情況;每個進入最外層私有Cache?LLPC的數(shù)據(jù)副本對應(yīng)一個位向量,該位向量中的每一位對應(yīng)數(shù)據(jù)塊的一個或多個LLPC副本。
3.根據(jù)權(quán)利要求1或2所述的多核處理器CAS/SWAP原子操作實現(xiàn)方法,其特征在于,所述多核處理器的結(jié)構(gòu)包括多個對稱處理核SPC、每個對稱處理核SPC上均有的最外層私有Cache?LLPC、目錄控制器DCU以及網(wǎng)絡(luò)NOC,所述對稱處理核SPC用于發(fā)送CAS/SWAP原子操作請求到最外層私有Cache?LLPC,最外層私有Cache?LLPC和目錄控制器DCU將會協(xié)同完成Cache一致性協(xié)議;所述最外層私有Cache?LLPC負責(zé)加載數(shù)據(jù)并處理原子操作請求,所述目錄控制器DCU負責(zé)記錄加載到各個最外層私有Cache?LLPC的所有Cache塊的信息,并控制對LLC/memory的訪問;所述網(wǎng)絡(luò)NOC負責(zé)最外層私有Cache?LLPC和目錄控制器DCU之間的通信。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國人民解放軍國防科學(xué)技術(shù)大學(xué),未經(jīng)中國人民解放軍國防科學(xué)技術(shù)大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210322804.4/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字數(shù)據(jù)處理
G06F15-00 通用數(shù)字計算機
G06F15-02 .通過鍵盤輸入的手動操作,以及應(yīng)用機內(nèi)程序的計算,例如,袖珍計算器
G06F15-04 .在引入被處理的數(shù)據(jù)的同時,進行編制程序的,例如,在同一記錄載體上
G06F15-08 .應(yīng)用插接板編制程序的
G06F15-16 .兩個或多個數(shù)字計算機的組合,其中每臺至少具有一個運算器、一個程序器及一個寄存器,例如,用于數(shù)個程序的同時處理
G06F15-18 .其中,根據(jù)計算機本身在一個完整的運行期間內(nèi)所取得的經(jīng)驗來改變程序的;學(xué)習(xí)機器





