【ZiDongHua 之方案應(yīng)用場收錄關(guān)鍵詞: 新思科技 Arm 加速器 數(shù)據(jù)中心】
  
  新思科技與Arm持續(xù)合作,助力多家數(shù)據(jù)中心順利完成流片
  
  Arm最近發(fā)布了AMBA CHI C2C(芯片到芯片)規(guī)范。這是AMBA CHI架構(gòu)在(小)芯片到(?。┬酒瑢用娴臄U展,稱為“AMBA CHI C2C協(xié)議”。本文將深入探討AMBA CHI C2C協(xié)議的細節(jié),并介紹新思科技為滿足行業(yè)需求而量身打造的相關(guān)驗證解決方案。
  
  AMBA CHI C2C協(xié)議還可擴展到即將發(fā)布的AMBA CHI標準的重大修訂版本,而不僅僅是針對CHI Issue F(CHI-F)。
  
  CHI C2C協(xié)議支持使用CHI協(xié)議構(gòu)建包含多個CPU、加速器或其他器件芯片或小芯片的系統(tǒng)。
  
  CHI C2C協(xié)議的主要用例
  
  CHI C2C協(xié)議涵蓋的兩個主要用例如下:
  
  多芯片對稱多處理器(SMP)拓撲結(jié)構(gòu):將少量功能相似的芯片緊密相連。通常情況下,每個芯片都是一個SoC,帶有多個處理內(nèi)核和附加內(nèi)存,芯片上的所有處理內(nèi)核一致地共享其中的附加內(nèi)存。
  
  多芯片相干加速器連接拓撲結(jié)構(gòu):一個或多個全相干或I/O相干加速器與主機芯片連接。
  
 
  
  CHI C2C概念圖
  
  下面的概念圖說明了兩個小芯片通過UCIe連接的情況。每個小芯片都展示了從片上CHI到相應(yīng)CHI C2C層的邏輯流,在功能上遵循UCIe串流協(xié)議層標準。C2C接口(如AMBA CXS)在串流協(xié)議層和UCIe傳輸層之間建立連接。
  
  
  
  片上CHI接口與消息經(jīng)過的芯片引腳之間的功能邏輯由多個功能層組成??蛇x用新思科技驗證IP組件來構(gòu)建下文提到的每一層,具體可根據(jù)目標DUT和所需的驗證拓撲結(jié)構(gòu)靈活調(diào)整。例如:新思科技的驗證IP可以搭建“小芯片0”的UCIe串流協(xié)議層、C2C I/F TxRx、UCIe傳輸層。而“小芯片0”上的片上CHI邏輯和整個“小芯片1”則可以使用DUT組件來構(gòu)建。
  
  CHI C2C協(xié)議層
  
  — 從片上CHI邏輯接收CHI FLIT,將它們轉(zhuǎn)化為適當?shù)膫鞒鯟2C消息,并將這些C2C消息發(fā)送到C2C分組層。
  
  — 接收來自C2C分組層的傳入C2C消息,隨后將其轉(zhuǎn)換為CHI FLIT,并將這些CHI FLIT傳輸?shù)狡螩HI邏輯。
  
  — 對于每個片上信道,都存在一個相應(yīng)的C2C消息類,即REQ、RSP、DAT、SNP。此外,還有一個雜項C2C消息類,用于管理C2C協(xié)議的其他方面,如初始化、流量控制、屬性交換等。
  
  CHI C2C分組層
  
  — 接受來自C2C協(xié)議層的傳出C2C消息,將其封裝為固定大小的出站容器,并通過C2C接口將這些容器發(fā)送到鏈路層。
  
  — 通過C2C接口接收來自鏈路層的固定大小傳入容器,從中提取C2C消息,并將這些C2C消息傳輸?shù)紺2C協(xié)議層。
  
  C2C接口
  
  — 在本文中,鏈路層和物理層合稱為“傳輸層”。當傳輸層可用時,它會在CHI C2C層和傳輸?shù)逆溌穼又g建立連接。
  
  — 在基于Arm的系統(tǒng)中,常用的C2C接口是AMBA CXS接口。
  
  — 在沒有傳輸層的情況下,它將本地CHI C2C層連接到遠程C2C組件的C2C層。
  
  傳輸層:鏈路層和物理層
  
  — 鏈路層負責(zé)以FLIT粒度傳輸消息,確保數(shù)據(jù)完整性和錯誤檢測,并通過重試機制促進恢復(fù)。物理層負責(zé)確保兩個互連芯片或小芯片之間形成可靠的電氣連接。
  
  — 小芯片到小芯片之間指定采用UCIe傳輸數(shù)據(jù)。
  
  — 而芯片到芯片或路到路之間則指定采用CXL來傳輸。
  
  有傳輸層時,C2C分組層可根據(jù)具體的傳輸層,為打包和解包C2C消息提供兩種容器格式:
  
  格式X:與UCIe傳輸一起用于小芯片到小芯片拓撲結(jié)構(gòu),與UCIe 256B延遲優(yōu)化模式兼容,提供可選字節(jié)。
  
  格式Y(jié):與CXL傳輸一起用于芯片到芯片拓撲結(jié)構(gòu),與CXL 256B延遲優(yōu)化FLIT格式兼容。
  
  C2C協(xié)議初始化
  
  在下圖中,兩個小芯片通過UCIe在系統(tǒng)級封裝(SiP)內(nèi)相互連接。該圖說明了C2C協(xié)議的初始化流程,其中以AMBA CXS作為C2C接口。 
  
 
  
  C2C接口初始化
  
  必須進行C2C接口初始化,才能發(fā)送和接收C2C協(xié)議消息。其中包括:
  
  與鏈路層協(xié)調(diào),以啟動C2C接口,并檢查遠程鏈路伙伴C2C協(xié)議層是否啟動。
  
  使用適當?shù)腃2C消息來交換接口屬性,設(shè)置接口以開始交換消息信用,然后交換協(xié)議消息。 
 
  C2C流量控制
  
  本地和遠程C2C協(xié)議層采用信用交換機制來控制C2C消息流。這種機制對于本地發(fā)射器至關(guān)重要,它可以管理相關(guān)的遠程接收器緩沖區(qū)大小,類似于片上CHI的每個信道信用機制。
  
  C2C協(xié)議還引入了“資源平面(Resource Plane,RP)”的概念,以進一步對消息類中的消息進行分類。每個RP都被分配了一個獨立的消息類信用池,允許繼續(xù)推進來自一個RP的消息,而來自另一個RP的消息則可能無法推進。這種方法有助于滿足系統(tǒng)對服務(wù)質(zhì)量(QoS)的要求,類似于PCIe協(xié)議中的TC-VC映射。
  
  接口初始化完成后,在發(fā)送任何協(xié)議消息之前,必須雙向交換每個邏輯鏈路的接口屬性。這些屬性包括:
  
  片上CHI有效載荷字段的存在性/寬度,例如:MEC_Support_Rx、MEC_Support_Tx、RSVDC_REQ_Rx、RSVDC_REQ_Tx
  
  片上CHI操作碼/流,例如:RME_Support_Rx、RME_Support_Tx
  
  針對C2C,例如:Container_Format、NUM_RP_REQ_Rx、NUM_RP_REQ_Tx
  
  其他主要功能
  
  C2C協(xié)議提供硬件流量來管理接口的連接狀態(tài),從而管理以下消息流的鏈路:全相干消息、DVM消息、所有協(xié)議消息。
  
  RME-DA、RME-CDA:在多芯片相干加速器連接配置中,I/O相干和全相干器件加速器連接到主機。RME-DA、RME-CDA是Realm管理擴展(RME)架構(gòu)的一部分,可用于安全分配此類可分配的器件接口。此功能與即將發(fā)布的CHI協(xié)議版本相一致,可支持基于CHI接口的加速器。
  
  通過C2C接口來支持片上CHI DVM事務(wù),借助經(jīng)優(yōu)化的信息流來減少C2C消息的數(shù)量。
  
  總結(jié)
  
  Arm和新思科技繼續(xù)就AMBA協(xié)議系列的最新擴展密切合作,以確保雙方的共同客戶能夠從使用AMBA CHI C2C協(xié)議中獲益,同時確保小芯片和Multi-Die設(shè)計符合協(xié)議標準。
  
  新思科技針對基于CHI主機的SMP拓撲結(jié)構(gòu)和CHI主機到CXL高速緩存/內(nèi)存器件的拓撲結(jié)構(gòu)開發(fā)了多款A(yù)MBA驗證IP及多芯片驗證解決方案,幫助多位HPC和數(shù)據(jù)中心客戶順利完成了流片。