9.1 CXL啟動和復位概覽
9.1.1 總體
CXL設備的三種復位:
這三種復位被歸納為傳統(tǒng)(Conventional)復位。Function級復位和CXL復位不是傳統(tǒng)復位。
9.1.2 對比CXL和PCIe行為
- Warning:即將到來的事件的早期通知
- Signaling:實際啟動狀態(tài)轉換
9.2 CXL設備啟動流程
CXL設備將沿用PCIe的Warm reset和Cold reset。
9.3 CXL系統(tǒng)復位進入流程
在系統(tǒng)復位過程中,主機發(fā)送下列CXL PM VDM給CXL設備。
?PM Logical Opcode[7:0]=RESETPREP
?Parameter[15:0]=REQUEST
?ResetType = Warm Reset
?PrepType = General Prep
CXL設備應向主機刷新任何相關上下文,清理為主機服務的數(shù)據(jù),并將連接到CXL設備的內(nèi)存置于安全狀態(tài)。所有復位準備完成后,CXL設備發(fā)出下列CXL PM VDM給主機。
?PM Logical Opcode[7:0]=RESETPREP
?Parameter[15:0]=RESPONSE
?ResetType = Warm Reset
?PrepType = General Prep
9.4 CXL設備睡眠狀態(tài)進入流程
9.5 Function-level復位(FLR)
PCIe的FLR機制使軟件能夠以Function-level粒度停止和復位Endpoint硬件。CXL設備向主機軟件公開一個或多個PCIe Function。這些Function可以向主機呈現(xiàn)FLR能力,從而現(xiàn)有的PCIe兼容軟件可以向這些Function發(fā)出FLR。
9.6 緩存管理
舊有的操作系統(tǒng)或舊有的PCIe總線驅動程序不知道CXL.cache功能。所以,設備驅動程序應該提供CXL.cache功能的支持,以管理CXL緩存。
系統(tǒng)軟件可能希望在不復位系統(tǒng)或整個設備的情況下,確保支持CXLcache的設備不包含任何有效的緩存行。由于不需要設備通過FLR清除緩存內(nèi)容,因此為此定義了單獨的控制位和狀態(tài)位。此功能對于所有支持CXL 2.0 CXLcache的設備都是必需的。軟件通過下面的步驟保證設備內(nèi)沒有有效的緩存行:
9.7 CXL復位
9.7.1 對易失性HDM的影響
由于易失性HDM(Host-managed Device Memory)范圍的所有權可能在CXL復位后發(fā)生變化,因此必須確保CXL復位之前存在的易失性內(nèi)存內(nèi)容沒有泄漏。
兩種情況需要考慮:
- 設備繼續(xù)綁定到同一主機,但是系統(tǒng)軟件將易失性HDM分配給其它的軟件實體。
- 設備被遷移到另外一個主機。
9.7.2 軟件動作
在執(zhí)行CXL復位時,系統(tǒng)軟件應遵循以下步驟:
重新初始化和聯(lián)機設備時,系統(tǒng)軟件應遵循以下步驟:
9.8 全局持久刷新(Global Persistent Flush,GPF)
全局持久性刷新(GPF)是一種基于硬件的機制,用于將緩存和內(nèi)存緩沖區(qū)刷新到持久性域(Persistent Domain)。持久性域定義為一個位置,用于保證重新啟動設備時保留其數(shù)據(jù)內(nèi)容,而不是丟棄數(shù)據(jù)。比如,當發(fā)生突然斷電,主機可以啟動GPF以確保未完成的數(shù)據(jù)被寫回持久介質中。
9.8.1 主機和交換機職責
所有支持CXL 2.0的主機和交換機都需要支持GPF。GPF流程包含兩個階段:GPF Phase 1和GPF Phase 2。在Phase 1,設備停止新的傳輸,寫回緩存;在Phase 2,持久性設備刷新本地的寫緩沖區(qū)里的數(shù)據(jù)到持久性域。在兩個階段之間,主機必須確保停止注入新的CXL.cache事務,并在進入Phase 2之前寫回到本地緩存。
9.8.2 設備職責
所有CXL 2.0及更高版本的設備都需要支持GPF,且應在其AGENT_INFO響應中設置CAPABILITY_VECTOR字段的第1個bit。
收到GPF Phase 1請求消息后,CXL設備應按指定順序執(zhí)行以下步驟:
收到GPF Phase 2請求消息后,CXL設備應按指定順序執(zhí)行以下步驟:
9.8.3 能量預算
通常有必要評估系統(tǒng)是否有足夠的能量在斷電情況下處理GPF。系統(tǒng)軟件可能會通過使用各種CXL DVSEC寄存器中的可用信息,和系統(tǒng)其余部分的信息來確定。
9.9 熱插拔
CXL 1.1主機和CXL 1.1設備不支持熱插拔。CXL 2.0根端口、CXL 2.0設備和CXL交換機需要支持Hot-Add和Hot-Remove。
支持熱插拔需要什么流程?需要看PCIe協(xié)議。
9.10 軟件枚舉
CXL 2.0設備呈現(xiàn)給主機軟件的是一個或多個PCIe Endpoint。CXL 1.1設備則呈現(xiàn)為RCiEP(Root Complex Integrated Endpoints)。CXL設備的發(fā)現(xiàn)遵循PCIe規(guī)范,但CXL 1.1層次結構和CXL 2.0虛擬層次結構之間存在一些差異。
9.11 CXL 1.1 層次
暫時略過。
9.12 CXL 2.0 枚舉
支持CXL 2.0的主機可以在系統(tǒng)軟件中表示為零個或多個CXL 2.0主機橋(Host Bridge),零個或多個CXL 1.1主機橋,零個或多個PCIe主機橋。主機橋是一種軟件概念,它表示根端口的集合。
9.12.1 CXL 2.0根端口(Root Port)
每個CXL 2.0主機橋與基本總線號(Base Bus Number)關聯(lián),該總線號應包含一個或多個支持CXL 2.0的根端口。這些根端口顯示在PCIe配置空間中。根端口可以處于以下四種狀態(tài)之一:
- 1.斷開連接
- 2.連接到CXL 2.0設備/交換機
- 3.連接到CXL 1.1設備
- 4.連接到PCIe設備/交換機
9.12.2 CXL 2.0虛擬層次
在CXL 2.0模式下運行的根端口可以直接連接到CXL 2.0設備或CXL交換機。這些根端口形成CXL 2.0虛擬層次結構(Virtual Hierarchy,VH)。
9.12.3 枚舉支持CXL 2.0的下游端口
軟件可以使用下游端口配置空間中的Link Status寄存器和CXL DVSEC ID 7結構的組合來確定具有CXL 2.0功能的下游端口處于哪個狀態(tài)。
其它內(nèi)容暫時略。
9.13 HDM的軟件視圖
HDM作為正常存儲呈現(xiàn)給OS/VMM,但是與主機內(nèi)存相比,HDM可能具有不同的性能/延遲屬性。因此,具有CXL.mem設備的系統(tǒng)可以被視為異構存儲器系統(tǒng)。ACPI HMAT表是為此類系統(tǒng)引入的,可以報告不同內(nèi)存范圍的延遲和帶寬特性。
9.13.1 內(nèi)存交織
內(nèi)存交織允許以統(tǒng)一的間隔將連續(xù)的內(nèi)存地址映射到不同的CXL設備。
9.13.2 CXL內(nèi)存設備標簽存儲區(qū)
暫時略過。
9.14 CXL OS固件接口擴展
9.14.1 CXL Early Discovery Table (CEDT)
CXL早期發(fā)現(xiàn)表(CXL Early Discovery Table)使操作系統(tǒng)能夠在啟動期間的早期,即在分析ACPI命名空間之前,找到CXL主機橋和主機橋寄存器的位置。此表中的信息可由早期啟動代碼用于執(zhí)行CXL主機的預初始化,例如配置CXLcache和CXLmem。
9.14.2 CXL_OSC
暫時略過
9.15 CXL設備可操作性模型(Manageability Model)
可管理性是被管理實體向管理實體公開的一組功能。CXL設備是被管理實體。這些能力通常分為sensor和effector。性能計數(shù)器是sensor的一個示例,而更新設備固件的能力是effector的一個示例。Sensor和effector可以在帶內(nèi)(即通過駐留OS/VMM的軟件)訪問,也可以在帶外(即通過運行在獨立于OS的管理控制器上的固件)訪問。
帶內(nèi)軟件可以通過發(fā)出PCIe配置讀/寫或MMIO讀/寫事務來訪問CXL設備的可管理性功能。S0狀態(tài)下的帶外可管理性可以在PCI Express基礎架構上利用MCTP。
-
控制器
+關注
關注
114文章
17113瀏覽量
184311 -
寄存器
+關注
關注
31文章
5434瀏覽量
124507 -
交換機
+關注
關注
22文章
2747瀏覽量
101925 -
PCIe
+關注
關注
16文章
1342瀏覽量
85150 -
HDM
+關注
關注
0文章
9瀏覽量
10621 -
PCIe接口
+關注
關注
0文章
121瀏覽量
10131
發(fā)布評論請先 登錄
IAR系統(tǒng)啟動流程及修改方法
請問怎樣去設計嵌入式系統(tǒng)啟動程序?
詳細分析嵌入式Linux系統(tǒng)啟動流程
Linux文件系統(tǒng)啟動流程
系統(tǒng)啟動過程
嵌入式Linux系統(tǒng)的啟動時序和快速啟動的優(yōu)化方法分析

評論