• 正文
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

芯片間互聯(lián)協(xié)議 -- CCIX協(xié)議介紹

3小時前
23
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

CCIX(Cache Coherent Interconnect for Accelerators)是一種高性能的芯片間互聯(lián)協(xié)議,用于連接CPU芯片和CPU芯片、加速器設(shè)備和CPU芯片等。它的主要目標(biāo)是提供高帶寬、低延遲、緩存一致性以及適應(yīng)各種加速器的連接標(biāo)準,以便更好地支持異構(gòu)計算。AMD、ARM、Mellanox、華為高通等多家公司聯(lián)合成立了CCIX聯(lián)盟,以推動CCIX技術(shù)的發(fā)展和應(yīng)用。

CCIX規(guī)范的最大優(yōu)勢之一是它建立在PCIe規(guī)范的基礎(chǔ)之上。CCIX的一致性協(xié)議只需很少修改或者無需修改就可以通過PCIe鏈路傳遞。

1. CCIX拓撲結(jié)構(gòu)
CCIX協(xié)議規(guī)范擴展了處理器和處理器,處理器和內(nèi)存,處理器和加速器,加速器和加速器之間的數(shù)據(jù)共享。CCIX支持多種靈活的拓撲結(jié)構(gòu),如下所示。
2. CCIX架構(gòu)模型CCIX擁有更低的latency。對于CCIX over PCIe,CCIX增強了PCIe,可以支持緩存一致性,以降低由PCIe事務(wù)層導(dǎo)致的latency影響。為了降低CCIX的latency,CCIX創(chuàng)建了一個輕量級的事務(wù)層,可以與PCIe事務(wù)層獨立共存。此外,CCIX鏈路層確保了CCIX協(xié)議消息的無死鎖通信所需的足夠的事務(wù)通道。CCIX擁有更高的帶寬?;赑CIe的CCIX利用公共的數(shù)據(jù)鏈路層物理層來傳輸PCIe和CCIX事務(wù)。CCIX支持PCIe規(guī)范中的所有標(biāo)準數(shù)據(jù)速率,另外還定義了兩種新的速率20GT/s和25GT/s。CCIX還規(guī)定了多個CCIX端口可以通過端口聚合(Port?Aggregation),提供超過單個接口的性能。CCIX架構(gòu)模型如下圖。CCIX協(xié)議規(guī)范包含CCIX協(xié)議層和CCIX Port。CCIX傳輸規(guī)范包含CCIX和PCIe事務(wù)層,PCIe數(shù)據(jù)鏈路層,CCIX/PCIe物理層。

CCIX協(xié)議層(CCIX Protocol Layer)。負責(zé)一致性協(xié)議,包括內(nèi)存的讀/寫操作等。

CCIX Port 鏈路層(CCIX Link Layer)。負責(zé)CCIX協(xié)議層定義的Agent之間消息的傳輸格式。這一層負責(zé)端口聚合(Port Aggregation),多個端口可聚合在一起提升帶寬。

CCIX和PCIe事務(wù)層。負責(zé)處理它們各自的數(shù)據(jù)包。CCIX可以傳輸標(biāo)準的PCIe包,或優(yōu)化之后的CCIX包。

PCIe數(shù)據(jù)鏈路層。執(zhí)行數(shù)據(jù)鏈路層的相關(guān)功能,包括CRC錯誤校驗、包確認和超時檢查,和credit初始化及交換等。

CCIX/PCIe物理層。CCIX擴展了物理層來支持20GT/s和25GT/s。稱為擴展速率模式(Extended Speed Mode,ESM)。

CCIX規(guī)范定義了一系列Agent,包括:請求代理(RA)、Home代理(HA)、Subordinate代理(SA)、DVM Agent(DA)、IO Coherent Request Agent (RAI)?和錯誤代理(EA)。

Request Agent(RA):RA可以發(fā)起讀和寫操作。RA可以對它已經(jīng)訪問的地址的數(shù)據(jù)進行緩存。每個RA可以有一個或多個加速器function作為內(nèi)部的請求發(fā)起者。

Home Agent(HA):HA負責(zé)管理指定的一段地址的cache一致性。當(dāng)cacheline的狀態(tài)需要改變時,HA向所需的RA發(fā)出snoop操作來保持cache一致性。

Subordinate?Agent(SA):CCIX支持擴展系統(tǒng)內(nèi)存,來包含外設(shè)所附的內(nèi)存。這種情況出現(xiàn)在HA在一個芯片上,而這個HA關(guān)聯(lián)的一些或全部物理內(nèi)存在另一個芯片上時。這種擴展內(nèi)存稱為SA。SA不會被RA直接訪問。RA總是先訪問一個HA,然后HA再訪問SA。

DVM Agent(DA):DVM Agent接收和處理DVM請求,并把請求傳給其他DVM Agent(如果需要的話)。每個chip上最多有一個DVM Agent。

IO Coherent Request Agent (RAI):RAI是一個只支持IO一致性的Request Agent,它不會發(fā)出需要緩存到cache的請求事務(wù)。

Error Agent:接收并處理協(xié)議錯誤信息。協(xié)議錯誤信息由CCIX組件發(fā)出。

 

以ARM的CMN片上互聯(lián)網(wǎng)絡(luò)為例,CMN會在CCG節(jié)點將CHI協(xié)議轉(zhuǎn)換為CCIX協(xié)議,然后通過Die2Die將CCIX的flit發(fā)送到對端die的CCG上,再恢復(fù)成CHI協(xié)議。

相關(guān)推薦