精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

CHI架構的基礎知識

冬至子 ? 來源:子墨祭 ? 作者:子墨祭 ? 2023-10-30 14:39 ? 次閱讀

一、CHI架構

CHI架構是一個可擴展的、支持一致性的集線器接口和由多個組件使用的片上互連。根據系統要求的PPA(performance, power, and area),CHI體系結構允許組件連接的靈活拓撲結構。

1.1組件

基于CHI的系統組件可以包括:

1.2關鍵特性

該體系結構的主要特性是:

  • 可擴展的體系結構,支持從小型系統擴展到大型系統的模塊化設計。
  • 獨立的分層方法,包括協議層、網絡層和鏈路層,具有不同的功能。
  • 基于數據包的通信。
  • 所有的事務都由一個基于互連的Home節點處理,它可以協調所需的窺探snoop、緩存cache和內存memory訪問。
  • CHI一致性協議支持:

——cache line大小為64byte
——使用Snoop filter和基于directory的系統,用于減少不必要的snoop事務。
——MESI和MOESI緩存模型,并從任何緩存狀態轉發數據。
——增加了 partial 和empty的cache line狀態。

  • CHI事務集包括:

——豐富的事務類型以支持PPA高效的系統緩存實現。
——支持互連中的原子操作和同步。
——支持高效執行獨占訪問的功能。
——將數據移動到更接近預期的使用點來實現高效的數據移動和替換。
——通過分布式虛擬內存(DVM)操作進行虛擬內存管理

  • 支持Retry機制來管理協議層資源;
  • 支持端到端的Qos(Quality of Service);
  • 可配置的數據寬度來滿足系統需求;
  • 支持ARM TrustZone;
  • 低功耗信號,可以使能flit級別門控、組件之間的建斷鏈來支持時鐘門控和電源門控、協議層的活動信號來控制電源和時鐘;

1.3 CHI層次

CHI層次按功能可以劃分為:

  • ?協議層(Protocol)
  • ?網絡層(Network)
  • ?鏈路層(Link)

Layer Communication granularity Primary function
Protocal transaction 協議層是CHI架構里的最頂層,其功能有:
1、在協議節點產生并處理請求與響應;
2、定義協議節點允許的cache狀態和狀態轉換;
3、定義每個請求類型的傳輸流程;
4、管理協議層的流控;
Network packet 網絡層功能有:
1、打包協議層信息;
2、確定并增加源節點和目的節點的ID到packet中,確保這些packets能正確在互聯線上路由;
Link flit 鏈路層功能:
1、提供網絡設備之間的流控;
2、管理鏈路通道以提供跨網絡的無死鎖切換

二、拓撲結構

CHI架構主要是與拓撲無關的。然而,本規范中包含了某些與拓撲相關的優化,以使實現更高效。圖1-1顯示了三個拓撲示例,以顯示可用的互連帶寬和可擴展性選項的范圍。

Crossbar:
這個拓撲構建起來很簡單,并且自然地提供了一個具有低延遲的有序網絡。它適用于連線相對較小的地方。該拓撲結構適用于與少量節點的互連。
Ring:
這種拓撲提供了在互連布線效率和延遲之間的權衡。延遲隨環上節點的數量呈線性增加。這種拓撲結構適用于中等大小的互連。
Mesh:
這種拓撲以犧牲更多的連線為代價提供了更大的帶寬。它是非常模塊化的,并且可以通過添加更多的行和列的交換機來很容易地擴展到更大的系統。這種拓撲結構適用于更大規模的互連。

三、術語

術語 描述
Transaction 一個transaction執行一個單獨的操作,如一個transaction可以是讀memory或寫memory
Message 協議層術語,用于定義兩個組件之間交換信息的粒度,如:

  • ?Request
  • ?Data response
  • ?Snoop request

一個數據響應message可能由多個packets組成
Packet 端到端跨越interconnect的傳輸粒度,一個message可能由一個或多個packets組成,每個packet包含有源和目的節點的ID來保證在interconnect上獨立路由
Flit 最小流控單位,一個packet可以由一個或多個flits組成,對于同一個packet的所有flits在interconnect上傳輸必須遵循同樣的路徑,對于CHI,所有的packets都是由一個flit組成
Phit 物理層傳輸單位,一個flit可以由一個或多個phits組成,phit定義為兩相鄰網絡設備之間的一個傳輸,對于CHI,所有的flits都是由一個phit組成
PoS Point of Serialization,位于ICN內,用于Requests之間的保序(HNF同時具有PoS和PoC的功能)
PoC Point of Coherence,一致性節點,用于保證所有訪問同一個memory地址的請求都可以得到同一份數據
PoP Point of Persistence(PoP)是內存系統中的一個點,當系統電源斷開時,會保持對內存的寫入,當電源恢復時,會可靠的恢復對內存的寫入。
PoPA Point of Physical Aliasing (PoPA),在一個物理地址空間(PAS)中的位置更新對所有其他物理地址空間可見。
Downstream cache downstream cache是以RN的視角定義的,RN的downstream cache可以通過CHI請求訪問
Requester Requester可以指獨立產生原始transactions的組件(master),也可以指ICN
Completer Completer可以指ICN,也可以是SN
Master 通常是一個系統中最上游的agent
Slave 通常是一個系統中最下游的agent
Endpoint slave的另一個名字,指的是一個transaction的最終目的地
Protocol Credit 一個P-credit用于保證completer有能力接收一個transaction
Link layer Credit 一個L-credit用于保證另一邊的link可以接受不了一個flit
ICN interconnect的簡稱,用于協議節點之間的通訊的CHI傳輸機構,ICN可能也包含協議節點,如HN和MN
IPA intermediate Physical Address,中間物理地址,在兩級地址系統中,第一級產生IPA,第二級產生物理地址
RN 請求節點,產生協議transaction,包含讀和寫
HN Home節點,位于ICN,用于接收來自RN的協議transaction,完成相應的一致性操作并返回一個響應
SN 從屬節點,用于接收來自HN的請求,完成相應的操作并返回一個響應
MN 其他節點,位于ICN,用于接收來自RN的DVM操作,完成相應的操作并返回一個響應
IO Coherent node IO一致性節點產生的snoop請求不會導致數據被cache,因此IO一致性節點也不會接收到任何snoop請求
snoopee 正在接收snoop的RN。
Write-Invalidate protocol 該協議是指當RN往一個共享地址寫數據時,必須先把所有共享的數據備份都無效掉,然后再進行寫操作,CHI采用的就是該協議
In a timely manner 協議中沒有定義在某個絕對的時間后,某件事必須發生,但是及時發生可以使系統效率更高
Don’t Care 表示該域段可以設置為任何值,包括非法值和保留值,任何組件收到的包中如果包含設為Don’t care的域段,都必須忽略該域段
Inapplicable 表示該域段值不會用于信息處理

四、事務類型

本規范(CHI issueF)所支持的協議事務及其主要分類:
(后續會再開一篇專門描述各種事務及其使用場景)

下表顯示了事務的表現形式:

五、一致性概述

硬件一致性使系統組件能夠共享內存,而不需要軟件緩存維護來保持一致性。
如果兩個組件往相同地址的memory發起寫操作,這些操作可以被所有的組件以相同的順序觀察到,那么這個memory區域就是一致性的。

5.1 coherency model

圖1-2所示為包含三個master組件的一致性系統,每個master組件包含一份loacl cache和一致性協議節點。CHI協議允許memory數據存放在一處或多處master cache當中。

一致性協議強制要求,當需要存數據時,先把所有其它masters的數據備份失效掉,這樣一致性協議可以使得所有的masters獲取到任何地址的正確的數據值。在存儲完成后,其它masters可以獲取到新的數據到自己local cache;

CHI協議允許(不強求)主存的數據不是實時更新,只有在所有master的cache都不需要該數據備份時,才把數據刷新到主存中;
協議使得master可以確定一份cacheline是否是唯一的或者存在多份拷貝。如果是唯一的,master可以直接改變它的值不需要知會系統中其它masters,如果不是唯一的,master必須使用恰當的transaction知會其它masters;
所有的一致性是以cacheline粒度對齊,cacheline在64bytes對齊存儲系統中大小為64bytes;

5.2 Cache state model

為了使得一個組件在訪問cache line時,可以確定是否該執行某操作,CHI協議定義了cache state。每個cache state基于如下的cache line特性:
cache state cache line characteristics
Valid,Invalid Valid表示該cache line存在于cache中,Invalid表示該cache line沒有放在cache中
Unique,Shared Unique表示cache line單獨存放于該cache中,Shared表示其它cache中也可能存在該cache line,但不保證一定有
Clean,Dirty Clean表示該cache沒有責任更新主存數據,Dirty表示該cache line數據相對于主存已經發生了改變,該cache必須確保最終主存的數據被更新
Full,Partial,Empty Full表示cacheline全部byte有效,Partial表示可能只有部分byte有效,不是全部有效;Empty表示沒有byte有效;

如下圖1-3所示為7種cache state model,注意一個valid的cache state不是Partial或Empty,而是Full。UC、UD、SC和SD全都是Full cache line狀態。

具體的狀態含義和狀態轉換將在后文詳細介紹。

六、組件名稱

根據CHI協議節點類型,可以將組件分類命名如下:
類別 組件名 功能
RN 請求節點。生成到互連的協議事務,包括讀取和寫操作。請求節點被進一步分類為:

RN-F 完全一致性請求節點:

?包含硬件一致性cache
?允許產生所有協議定義的transactions;
?支持所有的snoop transactions

RN-D IO一致性請求節點,支持DVM操作:

?不包含硬件一致性cache;
?可以接收DVM操作;
?可以產生協議定義的一部分transactions

RN-I IO一致性請求節點:

?不包含硬件一致性cache;
?不能接受DVM操作;
?可以產生一部分協議定義的transactions;
?不要求具有snoop功能
HN Home Node,位于從請求節點接收協議事務的互連器內的節點。
主節點被進一步歸類為:

HN-F 用于接收所有的請求操作,除了DVM操作:

1、POC點,通過監聽RN-Fs,管理各Master一致性,完成所有的snoop響應后,發送一個響應給發出請求的RN;
2、PoS點,用于管理多個memory請求的順序;
3、可能包含目錄或監聽過濾,以此來減少大量的snoop request

HN-I 處理有限的一部分協議定義的Request請求:

1、PoS點,管理訪問IO subsystem的順序;
2、不包含PoC點,也不具備處理snoop請求

MN 用于接收來自RN發送的DVM操作,完成相應的操作,并返回一個響應

SN Slave Node,用于接收來自HN的請求,完成相應的操作并返回一個響應;

SN-F 指的是Normal memory,可以處理Non-snoop讀寫請求、atomic請求、以及這些命令的其它形式、CMO請求
SN-I 指的是Peripheral或Normal Memory,可以處理Non-snoop讀寫、atomic操作、以及這些命令的其它形式、CMO請求

下圖1-4顯示了通過互連連接的各種協議節點類型:

七、讀數據來源

在基于CHI的系統中,讀請求的數據可以來自不同的地方,如下圖1-5所示,這些源有:
?Cache within ICN
?Slave Node
?Peer RN-F

對于RN-F或SN返回的讀數據,可以發送給HN,HN再轉發數據給原始的Requester;也可以直接跳過HN,返回數據給原始Requester,這樣可以減少讀數據的latency。這些技術可分類為:

DMT Direct Memory Transfer SN直接返回數據給原始的Requester
DCT Direct Cache Transfer Peer RN-F字節返回數據給原始Requester;
在DCT中,數據提供者需要通知HN它已經將數據發給原始Request了,在某些情況下,數據提供者也必須發送一份拷貝數據給HN。
DWT Direct Write-data Transfer 定義允許請求的請求節點直接向下級節點發送寫入數據的特性。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19170

    瀏覽量

    229187
  • 集線器
    +關注

    關注

    0

    文章

    383

    瀏覽量

    39459
  • 虛擬機
    +關注

    關注

    1

    文章

    908

    瀏覽量

    28109
  • PCIe接口
    +關注

    關注

    0

    文章

    120

    瀏覽量

    9680
  • PPA
    PPA
    +關注

    關注

    0

    文章

    20

    瀏覽量

    7484
收藏 人收藏

    評論

    相關推薦

    labview基礎知識

    labview基礎知識labview基礎知識labview基礎知識labview基礎知識
    發表于 03-08 17:56

    ARM架構基礎知識小結

    從單片機轉到ARM ―― ARM架構基礎知識小結
    發表于 12-29 06:16

    【HarmonyOS基礎知識】HarmonyOS系統架構

    這個視頻帶大家揭秘HarmonyOS基礎知識之HarmonyOS系統架構,一起來看看?
    發表于 01-19 18:32

    Cortex-A7 MPCore架構基礎知識點匯總,不看肯定后悔

    Cortex-A7 MPCore架構基礎知識點匯總,不看肯定后悔
    發表于 11-30 06:45

    ARM架構基礎知識點匯總

    之所以更復雜,當然是為了跑更快以及更好地支持片上系統,所以在某種程度上來說對片上系統不是很了解的話那對于ARM架構的理解也不會那么深。ARM架構基礎知識小結通用寄存器R13通常被用作棧指針,進入異...
    發表于 12-13 06:26

    AMBA CHI協議介紹

    相干集線器接口(CHI)是AXI相干擴展(ACE)協議的演進。它是Arm提供的高級微控制器總線架構(AMBA)的一部分。AMBA是一個自由的可用的、全球采用的、開放的功能塊連接和管理標準在片上系統
    發表于 08-02 13:40

    AMBA 5 CHI架構規范

    CHI架構是一種可擴展、連貫的集線器接口和片上互連,可供多個組件使用。CHI架構允許根據性能、電源和區域系統要求靈活地進行組件連接拓撲。
    發表于 08-08 07:46

    SoC Designer Plus AMBA CHI協議包的用戶指南

    協議代表了接口組成方面的范式轉變。 AMBA CHI采用節點和接口的概念,而不是以前的AMBA協議使用的主/從范例。 Amba CHI節點和接口信號通常是彼此的鏡像(注意例外),并且兩者支持的方法是相同的。 有關更多信息,請參閱ARM AMBA5
    發表于 08-17 07:08

    通信基礎知識教程

    通信基礎知識 1、電信基礎知識2、通信電源技術3、配線設備結構、原理與防護4、防雷基礎知識5、EMC基礎知識6、防腐蝕原理與技術7、產品安
    發表于 03-04 16:48 ?33次下載

    電池基礎知識(集全版)

    電池基礎知識(集全版)  電池基礎知識
    發表于 11-10 14:19 ?2500次閱讀

    計算機基礎知識介紹

    計算機基礎知識計算機基礎知識計算機基礎知識
    發表于 12-03 16:13 ?0次下載

    使用Eclipse基礎知識

    使用Eclipse 基礎知識 使用Eclipse 基礎知識 適合初學者學習使用
    發表于 02-26 10:30 ?0次下載

    電源管理基礎知識電源管理基礎知識電源管理基礎知識

    電源管理基礎知識電源管理基礎知識電源管理基礎知識
    發表于 09-15 14:36 ?76次下載
    電源管理<b class='flag-5'>基礎知識</b>電源管理<b class='flag-5'>基礎知識</b>電源管理<b class='flag-5'>基礎知識</b>

    優質LDO基礎知識分享

    本節分享下LDO的基礎知識,主要來源于Ti的文檔《LDO基礎知識》。
    的頭像 發表于 03-26 11:03 ?1319次閱讀

    架構模式的基礎知識

    ????作為軟件工程師,為什么至少要學習基本的架構模式? ????我相信有很多人回答了這個問題,但我會給你一些考慮的理由。 ????首先,如果您了解架構模式的基礎知識,那么您就更容易遵循架構
    的頭像 發表于 06-13 16:13 ?710次閱讀
    <b class='flag-5'>架構</b>模式的<b class='flag-5'>基礎知識</b>