0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文詳細(xì)了解CCIX規(guī)范

安芯教育科技 ? 來源:老秦談芯 ? 作者:老秦談芯 ? 2022-06-23 09:20 ? 次閱讀

正文開始前,閑扯幾句。在接下來分析CCIX規(guī)范的過程中,大家會(huì)發(fā)現(xiàn)CCIX里面有太多ARM的影子,尤其是協(xié)議層的一致性協(xié)議部分,你會(huì)看到有很多跟CHI相似的東西。另外,在CCIX規(guī)范的底層,基本全是復(fù)用和遵循PCIe規(guī)范。

說到PCIe,就必須先提一提PCI。PCI是Peripheral Component Interconnect的縮寫,它是一種由英特爾公司1991年推出的局部總線標(biāo)準(zhǔn)。最早提出的PCI總線工作在33MHz頻率之下,傳輸帶寬達(dá)到132MB/s,基本上滿足了當(dāng)時(shí)處理器的發(fā)展需要。后來,隨著對(duì)更高性能的要求,不斷把PCI 總線的頻率提升。 PCI使用共享并行總線架構(gòu),其中PCI主機(jī)和所有設(shè)備共享一組通用的地址,數(shù)據(jù)和控制線。 這種并行架構(gòu)天然決定了PCI的時(shí)鐘頻率不可能一直提升。因?yàn)殡S著時(shí)鐘頻率的不斷提升,并行總線間的信號(hào)干擾(EMI)會(huì)越來越嚴(yán)重。所以PCI后期已經(jīng)不能適應(yīng)高速發(fā)展的數(shù)據(jù)傳輸需求。

PCI-Express(Peripheral Component Interconnect express,簡(jiǎn)稱PCIe)應(yīng)運(yùn)而生。PCIe是一種高速串行計(jì)算機(jī)擴(kuò)展總線標(biāo)準(zhǔn),它原來的名稱為“3GIO”,是由英特爾在2001年提出的,旨在替代舊的PCI,PCI-X和AGP總線標(biāo)準(zhǔn)。PCIe屬于高速串行點(diǎn)對(duì)點(diǎn)雙通道高帶寬傳輸,所連接的設(shè)備分配獨(dú)享通道帶寬,不共享總線帶寬。它的主要優(yōu)勢(shì)就是數(shù)據(jù)傳輸速率高。目前,PCIe交由PCI-SIG組織負(fù)責(zé)維護(hù)和發(fā)布。市場(chǎng)已經(jīng)有支持PCIe 5.0標(biāo)準(zhǔn)的控制器和設(shè)備,相信不久之后,PCIe 6.0將會(huì)大規(guī)模商用。

由于PCIe標(biāo)準(zhǔn)極其復(fù)雜,本人能力有限,對(duì)PCIe標(biāo)準(zhǔn)還處于學(xué)習(xí)階段。所以后面跟PCIe相關(guān)的部分一帶而過,主要介紹一下CCIX獨(dú)有的部分,重點(diǎn)是規(guī)范中的第三章。

如果有小伙伴精通PCIe,還望不吝賜教。

接下來,我們按照CCIX規(guī)范的章節(jié)過一遍,主要是對(duì)規(guī)范內(nèi)容的理解和歸納。CCIX規(guī)范本身比較晦澀難懂,而且通篇看下來感覺有一些段落前后順序有些顛倒。比如我發(fā)現(xiàn)有一些概念是先用后解釋,造成的后果就是初看前面的時(shí)候一頭霧水,看到后面的章節(jié)才明白前面大概在說啥。如果大家也有類似的感覺,不妨多看幾遍。本系列文章中盡量避免這些問題,但是由于本人水平有限,難免會(huì)漏掉一些細(xì)節(jié)或者有理解不準(zhǔn)確的地方,請(qǐng)見諒,一切以spec為準(zhǔn)。

1. 文檔概述

CCIX規(guī)范定義了一些術(shù)語(yǔ):

Port:端口與物理引腳關(guān)聯(lián),并有兩個(gè)子層,CCIX Port和Transport Port。CCIX端口充當(dāng)來自CCIX設(shè)備的CCIX協(xié)議層消息的入口(Ingress)和出口(Egress)。傳輸端口是充當(dāng)傳輸層數(shù)據(jù)包進(jìn)出網(wǎng)關(guān)的控制器。

CCIX Link:CCIX鏈路是一對(duì)CCIX端口之間的邏輯連接。

PCIe Link:PCIe鏈路是PCIe端口的物理連接。

Transport Link:傳輸鏈路是指?jìng)鬏攲右?guī)范中用于覆蓋CCIX協(xié)議層的物理鏈路。

CCIX Components:CCIX組件是定義CCIX一致性協(xié)議所需的模塊。

Acceleration Function:加速功能(簡(jiǎn)稱AF)是針對(duì)一致性協(xié)議的內(nèi)存訪問請(qǐng)求的特定實(shí)現(xiàn)源,該協(xié)議由CCIX請(qǐng)求代理表示,用于通過CCIX一致性層進(jìn)行通信,后文中會(huì)經(jīng)常提到AF。

CCIX Device:CCIX設(shè)備是由一個(gè)或多個(gè)符合CCIX協(xié)議的CCIX組件組成的物理實(shí)體。

CCIX Agent:CCIX代理,在規(guī)范中分為四類,Request Agent(RA),RA是讀寫事物的源端;Home Agent(HA)負(fù)責(zé)管理給定地址范圍內(nèi)的一致性和內(nèi)存訪問;Slave Agent(SA),處理HA的事務(wù),擴(kuò)展系統(tǒng)內(nèi)存,包括連接到外圍設(shè)備的存儲(chǔ);Error Agent(EA),接受和處理協(xié)議錯(cuò)誤消息。

CCIX Function Blocks:定義CCIX組件功能所需的構(gòu)建模塊。

CCIX Switch:一種CCIX設(shè)備,由兩個(gè)或多個(gè)CCIX ports組成,支持端口到端口的轉(zhuǎn)發(fā)。

Packet:獨(dú)立路由的數(shù)據(jù)傳輸單元。

SAM:System Address Map,系統(tǒng)地址映射。

G-SAM:Global System Address Map。

G-RSAM:Global Request Agent System Address Map。

G-HSAM:Global Home Agent System Address Map。

RSAM:請(qǐng)求代理視角的SAM。

HSAM:主代理視角的SAM。

PSAM:端口相關(guān)的SAM。

EDR:Extended Data Rate,除了PCI Express基本規(guī)范定義的標(biāo)準(zhǔn)PHY速度之外的PHY的數(shù)據(jù)速率。

ESM:Extended Speed Mode,ESM是一種允許PCIe鏈路速度在標(biāo)準(zhǔn)PCIe速度和EDR速度之間轉(zhuǎn)換的機(jī)制。

CCIX Consortium Identifier(CCID) :CCIX DVSEC結(jié)構(gòu)和CCIX PCIe兼容頭協(xié)議消息中的16位公共標(biāo)識(shí)符。

CCIX Consortium Unique Value(CCUV) :CCIX DVSEC結(jié)構(gòu)和CCIX PCIe兼容頭協(xié)議消息中的硬件默認(rèn)16位值。

2. CCIX概述

CCIX規(guī)范擴(kuò)展了處理器-處理器,處理器-內(nèi)存,處理器-加速器,加速器-加速器之間的數(shù)據(jù)共享。CCIX允許所有處理實(shí)體之間的一組公共虛擬地址(VA)引用所有數(shù)據(jù)結(jié)構(gòu)。為了實(shí)現(xiàn)這些功能,CCIX擴(kuò)展了共享虛擬內(nèi)存(Shared Virtual Memory,SVM)模型。

擴(kuò)展系統(tǒng)內(nèi)存:CCIX允許將系統(tǒng)內(nèi)存域擴(kuò)展到主機(jī)連接內(nèi)存之外。作為系統(tǒng)內(nèi)存的一部分,主機(jī)內(nèi)存管理器可以選擇以與主機(jī)內(nèi)存分配和管理相同的方式,去分配和管理外圍連接的內(nèi)存。因此,通過CCIX內(nèi)存擴(kuò)展,主機(jī)可以擴(kuò)展其內(nèi)存容量和/或支持新的內(nèi)存技術(shù)。主機(jī)的外圍連接內(nèi)存視圖與多節(jié)點(diǎn)主機(jī)系統(tǒng)中現(xiàn)有的內(nèi)存視圖一致,即非統(tǒng)一內(nèi)存訪問(NUMA)內(nèi)存模型。

基于處理器或加速器的應(yīng)用程序訪問模式的軟件透明數(shù)據(jù)移動(dòng):CCIX在加速器中支持硬件一致性緩存,并為處理器和加速器訪問維護(hù)共享數(shù)據(jù)的一致視圖,而無需軟件干預(yù)。在CCIX系統(tǒng)中,緩存允許根據(jù)處理器或加速器的訪問模式隱式移動(dòng)共享數(shù)據(jù),以便進(jìn)一步重復(fù)使用或修改,而無需在它們之間遷移或維護(hù)多個(gè)或修改后的副本。

應(yīng)用程序管理的數(shù)據(jù)從主機(jī)移動(dòng)到加速器連接的內(nèi)存:CCIX使應(yīng)用程序能夠協(xié)調(diào)從一個(gè)內(nèi)存節(jié)點(diǎn)到另一個(gè)內(nèi)存節(jié)點(diǎn)的數(shù)據(jù)移動(dòng),而無需任何操作系統(tǒng)協(xié)助。這允許數(shù)據(jù)生產(chǎn)者將數(shù)據(jù)放在作為數(shù)據(jù)消費(fèi)者的計(jì)算實(shí)體(處理器或加速功能)旁邊。

以上所說的這幾點(diǎn)構(gòu)成了主機(jī)內(nèi)存和處理器、外設(shè)連接內(nèi)存和加速器之間無縫數(shù)據(jù)共享的基礎(chǔ)。擴(kuò)展系統(tǒng)內(nèi)存沒什么好解釋的了;CCIX規(guī)范支持在多芯片的處理器內(nèi)核之間共享緩存數(shù)據(jù),這種共享是通過一致性協(xié)議來完成的,對(duì)軟件來說是完全透明的;至于應(yīng)用程序管理數(shù)據(jù),我的理解是類似于CHI中的cache stashing。CCIX標(biāo)準(zhǔn)支持多種拓?fù)浣Y(jié)構(gòu):tree,mesh,ring等等。比如下圖中的直接連接拓?fù)洌?/p>

1e420b72-f291-11ec-ba43-dac502259ad0.png

全連接拓?fù)洌?/p>

1e624f86-f291-11ec-ba43-dac502259ad0.png

上一篇中介紹過了CCIX規(guī)范的分層架構(gòu)模型,這里就不再重復(fù)了。放張圖幫助大家回憶。

1e8c93cc-f291-11ec-ba43-dac502259ad0.png

每個(gè)CCIX端口都與一個(gè)傳輸端口(Transport Port)相關(guān)聯(lián)。傳輸端口僅限于PCIe端口。CCIX端口負(fù)責(zé)創(chuàng)建與PCIe兼容的供應(yīng)商定義消息(VDM)事務(wù)層數(shù)據(jù)包(TLP),或具有優(yōu)化報(bào)頭的CCIX數(shù)據(jù)包。CCIX協(xié)議消息在PCIe兼容或優(yōu)化TLP的有效負(fù)載中承載。每個(gè)CCIX端口可以與一個(gè)或多個(gè)CCIX端口通信。

1eb44afc-f291-11ec-ba43-dac502259ad0.png

CCIX可以通過選擇性地聚合多個(gè)CCIX端口,在兩個(gè)CCIX設(shè)備之間實(shí)現(xiàn)更高的帶寬連接。CCIX體系結(jié)構(gòu)定義了一種跨多個(gè)CCIX端口分配內(nèi)存訪問請(qǐng)求和監(jiān)聽的方法,當(dāng)PCIe用作傳輸時(shí),每個(gè)CCIX端口映射到一個(gè)PCIe控制器,以有效地在CCIX代理之間實(shí)現(xiàn)更高的帶寬。端口聚合(Port Aggregation)通常用于單個(gè)端口的可用吞吐量不足以滿足兩個(gè)芯片之間的通信需求的情況。如下圖所示,右側(cè)芯片的RA的請(qǐng)求可以通過兩個(gè)CCIX端口(圖中的Port 0和Port 1)發(fā)給左側(cè)芯片的HA,達(dá)到增加兩個(gè)芯片數(shù)據(jù)共享的帶寬。

1ee0f854-f291-11ec-ba43-dac502259ad0.png

CCIX設(shè)備可以作為PCIe設(shè)備被主機(jī)發(fā)現(xiàn)和管理。組件及其功能通過PCIe配置空間中指定的特定供應(yīng)商的擴(kuò)展功能(DVSEC)部分被主機(jī)識(shí)別。CCIX DVSEC在PCIe配置頭的DVSEC供應(yīng)商ID字段中攜帶通用CCIX ID(CCID)。CCIX DVSEC定義了功能,還提供了控制和狀態(tài)字段。CCIX一致性互連通過標(biāo)準(zhǔn)CCIX驅(qū)動(dòng)程序進(jìn)行管理。AFs通過供應(yīng)商提供的驅(qū)動(dòng)程序作為PCIe功能進(jìn)行管理。CCIX允許加速器連接的內(nèi)存成為整個(gè)系統(tǒng)內(nèi)存的一部分。然后,內(nèi)核內(nèi)存管理器將其作為可分配系統(tǒng)內(nèi)存進(jìn)行管理。

CCIX定義了服務(wù)器級(jí)可靠性、可用性和可維護(hù)性(Reliability Availability Serviceability,RAS)功能集。CCIX的RAS體系結(jié)構(gòu)通過PCI Express基本規(guī)范中定義的高級(jí)錯(cuò)誤報(bào)告(Advanced Error Reporting,AER)機(jī)制維護(hù)PCIe傳輸錯(cuò)誤的報(bào)告。與CCIX一致性互連相關(guān)的錯(cuò)誤通過一個(gè)單獨(dú)的并行機(jī)制報(bào)告給AER。這個(gè)記錄和報(bào)告協(xié)議錯(cuò)誤的新機(jī)制稱為協(xié)議錯(cuò)誤報(bào)告(Protocol ErrorReporting,PER)機(jī)制。CCIX設(shè)備中的PER錯(cuò)誤記錄在協(xié)議DVSEC中。

CCIX利用PCIe的地址轉(zhuǎn)換服務(wù)(Address Translation Service,ATS)標(biāo)準(zhǔn),允許CCIX設(shè)備將虛擬地址(VA)映射到其相關(guān)的物理地址(PA),并提供每頁(yè)的訪問控制。CCIX規(guī)范要求,所有CCIX設(shè)備需要提供以下保證:CCIX設(shè)備通過地址轉(zhuǎn)換服務(wù)確保來自AFs的所有請(qǐng)求受訪問權(quán)限控制

CCIX設(shè)備確保在設(shè)備上的固件受信任

CCIX可以使用PCIe標(biāo)準(zhǔn)的消息信令中斷(MSI/MSI-X)將事件從加速器發(fā)送到主機(jī)處理器。在前面講ARM中斷控制器的時(shí)候介紹過一些MSI的知識(shí),想了解更多的話,往前翻一翻,或者去看看PCIe的規(guī)范。通過這兩次的學(xué)習(xí),我們對(duì)CCIX的大體輪廓有了一個(gè)認(rèn)識(shí)。CCIX是在PCIe規(guī)范的基礎(chǔ)上發(fā)展出來的,在復(fù)用了大量PCIe規(guī)范的同時(shí)添加了CCIX協(xié)議層,CCIX鏈路層和CCIX事務(wù)層,并通過這三層定義了緩存一致性協(xié)議和所需的CCIX消息,以及消息傳遞機(jī)制。這三層往下就是復(fù)用PCIe的分層結(jié)構(gòu)了。另外,CCIX規(guī)范擴(kuò)展了PCIe的物理層數(shù)據(jù)傳輸速率。

原文標(biāo)題:技術(shù)分享 | CCIX(二)

文章出處:【微信公眾號(hào):安芯教育科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    18927

    瀏覽量

    227260
  • 加速器
    +關(guān)注

    關(guān)注

    2

    文章

    785

    瀏覽量

    37156
  • PCIe
    +關(guān)注

    關(guān)注

    15

    文章

    1165

    瀏覽量

    81996

原文標(biāo)題:技術(shù)分享 | CCIX(二)

文章出處:【微信號(hào):Ithingedu,微信公眾號(hào):安芯教育科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    IPC-6012E CN 2020中 CN 剛性印制板的鑒定及性能規(guī)范

    *附件:IPC-6012E CN 2020中 CN 剛性印制板的鑒定及性能規(guī)范.pdf IPC-6012E CN 2020中 CN 剛性印制板的鑒定及性能規(guī)范
    發(fā)表于 07-27 10:16

    帶你詳細(xì)了解工業(yè)電腦

    扇設(shè)計(jì)、承受振動(dòng)和惡劣環(huán)境的能力、輕松配置、全面的I/O選項(xiàng)、延長(zhǎng)生命周期、耐用的組件。了解如何為您的應(yīng)用選擇工業(yè)電腦對(duì)提高設(shè)施的生產(chǎn)力和效率至關(guān)重要。詳細(xì)了解
    的頭像 發(fā)表于 06-12 14:24 ?240次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>帶你<b class='flag-5'>詳細(xì)了解</b>工業(yè)電腦

    pcb應(yīng)變測(cè)試有多重要?了解!

    pcb應(yīng)變測(cè)試有多重要?了解!
    的頭像 發(fā)表于 02-24 16:26 ?914次閱讀

    帶您詳細(xì)了解IEEE802.3bt(PoE++)的有關(guān)特點(diǎn)

    Hqst華強(qiáng)盛(盈盛電子)導(dǎo)讀:帶您詳細(xì)了解IEEE802.3bt(PoE++)的有關(guān)特點(diǎn),讓我們對(duì)IEEE802.3bt(PoE++)協(xié)議有更具體的了解
    的頭像 發(fā)表于 01-04 11:26 ?1528次閱讀
    帶您<b class='flag-5'>一</b>起<b class='flag-5'>詳細(xì)了解</b>IEEE802.3bt(PoE++)的有關(guān)特點(diǎn)

    帶你了解 DAC

    了解 DAC
    的頭像 發(fā)表于 12-07 15:10 ?7973次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>帶你<b class='flag-5'>了解</b> DAC

    了解相控陣天線中的真時(shí)延

    了解相控陣天線中的真時(shí)延
    的頭像 發(fā)表于 12-06 18:09 ?1572次閱讀

    【迪COF結(jié)構(gòu)智能屏試用體驗(yàn)】基于串口通信的電子相冊(cè)(動(dòng)態(tài)平滑、完整代碼)

    非常感謝迪的妍姐,給我提供了塊COF智能屏測(cè)試,經(jīng)過番摸索,詳細(xì)了解了串口通訊的具體用法,結(jié)合上位機(jī),試用Python腳本來進(jìn)行通訊,實(shí)現(xiàn)了
    發(fā)表于 12-06 15:58

    了解單向晶閘管的結(jié)構(gòu)及導(dǎo)電特性

    了解單向晶閘管的結(jié)構(gòu)及導(dǎo)電特性
    的頭像 發(fā)表于 12-05 15:52 ?903次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>了解</b>單向晶閘管的結(jié)構(gòu)及導(dǎo)電特性

    了解剛?cè)峤Y(jié)合制造過程

    了解剛?cè)峤Y(jié)合制造過程
    的頭像 發(fā)表于 12-04 16:22 ?557次閱讀

    了解 PCB 的有效導(dǎo)熱系數(shù)

    了解 PCB 的有效導(dǎo)熱系數(shù)
    的頭像 發(fā)表于 11-24 15:48 ?1595次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>了解</b> PCB 的有效導(dǎo)熱系數(shù)

    了解皮膚電活動(dòng)測(cè)量系統(tǒng)的設(shè)計(jì)、開發(fā)與評(píng)估

    電子發(fā)燒友網(wǎng)站提供《了解皮膚電活動(dòng)測(cè)量系統(tǒng)的設(shè)計(jì)、開發(fā)與評(píng)估.pdf》資料免費(fèi)下載
    發(fā)表于 11-24 10:42 ?0次下載
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>了解</b>皮膚電活動(dòng)測(cè)量系統(tǒng)的設(shè)計(jì)、開發(fā)與評(píng)估

    了解pcb電路板加急打樣流程

    了解pcb電路板加急打樣流程
    的頭像 發(fā)表于 11-08 14:21 ?6067次閱讀

    非常詳細(xì)的PCB設(shè)計(jì)規(guī)范

    非常詳細(xì)的PCB設(shè)計(jì)規(guī)范
    發(fā)表于 10-11 18:06 ?46次下載

    了解LED有關(guān)的光源定義?

    了解LED有關(guān)的光源定義?光源的定義是很廣泛的,LED 陣列、LED 模塊以及LED 燈都屬于光源。
    發(fā)表于 10-11 15:51 ?575次閱讀

    帶你詳細(xì)了解傳感器及其相關(guān)產(chǎn)業(yè)

    本文來自公眾號(hào)【信熹資本】,這是篇整理的非常細(xì)致的傳感器產(chǎn)業(yè)介紹內(nèi)容,涵蓋了傳感器的相關(guān)概念、發(fā)展歷史、分類方式、產(chǎn)業(yè)鏈和市場(chǎng)情況等信息。與其他籠統(tǒng)介紹傳感器產(chǎn)業(yè)的研報(bào)資料不同,本文具體而微,詳細(xì)
    的頭像 發(fā)表于 10-07 09:41 ?1530次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>帶你<b class='flag-5'>詳細(xì)了解</b>傳感器及其相關(guān)產(chǎn)業(yè)