目錄
摘要
DC-SCM是OCP硬件管理項(xiàng)目的一個(gè)子項(xiàng)目。DC-SCM實(shí)施模塊化服務(wù)器管理,包含了已存儲在典型處理器主板上的所有的固件狀態(tài)。DC-SCM通常將三個(gè)關(guān)鍵功能轉(zhuǎn)移到一個(gè)標(biāo)準(zhǔn)尺寸模塊(CFM)中。
- 管理——BMC功能和一個(gè)新的LTPI接口(低電壓差分信號通道協(xié)議和接口)
- 安全
- 控制
本文描述了DC-SCM的LTPI(服務(wù)器管理)、安全和控制三個(gè)方面。DC-SCM 2.0的所有三個(gè)關(guān)鍵功能都已經(jīng)在萊迪思半導(dǎo)體的單個(gè)FPGA中實(shí)現(xiàn)。
DC-SCM 2.0規(guī)范的一個(gè)重要變化就是引入了低電壓差分信號通道協(xié)議和接口(LTPI)。本文描述了DC-SCM及其在萊迪思FPGA解決方案中的LTPI實(shí)現(xiàn)。
DC-SCM的安全模塊稱為ROT(可信根),可以用來解決黑客在保密固件的閃存中安裝惡意代碼的安全問題。萊迪思PFR(平臺固件保護(hù)恢復(fù))解決方案可以作為DC-SCM的ROT,避免數(shù)據(jù)中心服務(wù)器中的此類漏洞。
萊迪思FPGA還包括了DC-SCM定義的控制功能,提供數(shù)據(jù)中心服務(wù)器所需的時(shí)序重置和電源管理功能。
DC-SCM是什么?
開放計(jì)算項(xiàng)目(OCP)是一個(gè)在公司之間共享服務(wù)器和數(shù)據(jù)中心產(chǎn)品設(shè)計(jì)和最佳實(shí)踐的組織。DC-SCM(Datacenter-ready Secure Control Module)是OCP硬件管理項(xiàng)目的一個(gè)子項(xiàng)目。它提供了將常見的服務(wù)器管理、安全和控制功能從主板轉(zhuǎn)移到標(biāo)準(zhǔn)尺寸模塊(CFM)的指南。
DC-SCM架構(gòu)定義了與CPU板互操作的輸入/輸出端口。DC-SCM服務(wù)器在HPM(主機(jī)處理器模塊)板上只有基本的中央計(jì)算元件(CPU)、高速存儲器和IO連接器,其他所有組件均在模塊化DC-SCM(安全、控制、管理)板上。
為什么要使用DC-SCM?
DC-SCM有諸多益處:
- DC-SCM能輕松實(shí)現(xiàn)CPU/存儲器的設(shè)計(jì)和部署,因?yàn)楣芾?、安全和控制功能都?dú)立于CPU/存儲器板的開發(fā)。
將BMC和RoT實(shí)施與服務(wù)器分離,實(shí)現(xiàn)獨(dú)立的開發(fā)和創(chuàng)新
通過將管理電路轉(zhuǎn)移到更小、更低價(jià)的PCB,從而節(jié)省成本
在多個(gè)項(xiàng)目和架構(gòu)中使用通用的DC-SCM設(shè)計(jì),節(jié)省驗(yàn)證時(shí)間
簡化HPM電路板布局,縮短開發(fā)時(shí)間
使用DC-SCM之后,拓展機(jī)箱只需根據(jù)CPU和SoC供應(yīng)商的指南進(jìn)行簡單的常規(guī)開發(fā)即可
- 系統(tǒng)管理和安全性能不斷發(fā)展且獨(dú)立于CPU的更新?lián)Q代。
DC-SCM可以在一代產(chǎn)品內(nèi)在平臺上部署管理和安全升級,無需重新設(shè)計(jì)更復(fù)雜的組件
- DC-SCM使用開源模塊化方法,輕松實(shí)現(xiàn)互操作性。
標(biāo)準(zhǔn)化的常用模塊
采用高速互連(PCIe)等通用接口
- DC-SCM的優(yōu)勢之一體現(xiàn)在服務(wù)器報(bào)廢時(shí)。模塊化設(shè)計(jì)的好處是可以單獨(dú)銷毀安全模塊,出售或回收報(bào)廢的服務(wù)器不會泄露安全數(shù)據(jù)/密鑰。
DC-SCM架構(gòu)
DC-SCM架構(gòu)主要包括以下幾個(gè)部分:
- BMC閃存:使用一個(gè)或等多個(gè)閃存器件(通常是兩個(gè))來存儲BMC固件鏡像
- BIOS閃存:使用一個(gè)或等多個(gè)閃存器件(通常是兩個(gè))來存儲BIOS固件鏡像
RoT安全處理器: 負(fù)責(zé)驗(yàn)證系統(tǒng)上的BMC、BIOS和/或其他固件鏡像的安全處理器
下圖是DC-SCM規(guī)范中所定義的DC-SCM架構(gòu)模塊框圖:
?
圖 1
DC-SCM LTPI
DC-SCM 2.0規(guī)范的一個(gè)重要變化是引入了低電壓差分信號通道協(xié)議和接口(LTPI)。LTPI解決了DC-SCM 1.0中的串行GPIO接口的缺點(diǎn)。
- LTPI比GPIO延遲更低
DC-SCM LTPI架構(gòu)
如下圖所示,LTPI接口采用了兩片F(xiàn)PGA/CPLD器件實(shí)現(xiàn)。
- HPM FPGA——提供本地HPM接口到LTPI的橋接
- SCM CPLD——提供LTPI到本地SCM接口的橋接
?
圖 2
LTPI接口用于在HPM和SCM之間傳輸各種低速信號。LVDS接口比DC-SCM 1.0中的SGPIO接口提供更高的帶寬和更好的擴(kuò)展性。它不僅支持GPIO,還支持SMBus、I2C和UART等低速串行接口的通道傳輸。它還可以通過額外的專有OEM接口進(jìn)行擴(kuò)展,并為HPM CPLD和SCM CPLD之間的原始數(shù)據(jù)通道傳輸提供支持。
萊迪思LTPI
萊迪思DC-SCM LVDS通道協(xié)議和接口IP核是兼容OCP、DC-SCM標(biāo)準(zhǔn)的解決方案。萊迪思LTPI IP全面支持符合DC-SCM 2.0協(xié)議規(guī)范的接口和協(xié)議。該LTPI IP具有以下特性:
- 符合DC-SCM 2.0協(xié)議規(guī)范
鏈路初始化、發(fā)現(xiàn)和協(xié)商
- 支持多通道串行接口
支持GPIO、I2C、UART、OEM和數(shù)據(jù)通道聚合
總共支持多達(dá)7個(gè)通道的聚合/解聚合
- 最高支持64位GPIO通道,采樣率高達(dá)90kHz(低延遲GPIO可達(dá)5 MHz)
- 對于I2C/SMBus接口,每一個(gè)接口都可以配置為主控、從動或同時(shí)配置為主控/從動(用于多主控)
- 支持LVDS和sub-LVDS
- LFMXO5器件LVDS數(shù)據(jù)速率高達(dá)1000Mbps?
萊迪思LTPI通道架構(gòu)
在DC-SCM LTPI規(guī)范的基礎(chǔ)上,萊迪思使用時(shí)分復(fù)用(TDM)高速LVDS全雙工鏈路在SCM和HPM之間發(fā)送和接收LTPI通道數(shù)據(jù)。
如下圖所示,對于每個(gè)相等的時(shí)隙 TN(下圖的示例幀T+1),都有一個(gè)LTPI幀在傳輸。在每個(gè)LVDS通道中都有部分LVDS幀在進(jìn)行雙向傳輸。通過LTPI接口發(fā)送的每個(gè)幀中分配給特定通道的比特?cái)?shù)與每個(gè)通道專用的LTPI帶寬成正比。
圖 3
萊迪思LTPI通道框圖
萊迪思LTPI參考設(shè)計(jì)的上層通道框圖如下所示。從外部通道接收的數(shù)據(jù)通過低壓差分信號(LVDS)接口在安全控制模塊(SCM)和主機(jī)處理器模塊(HPM)之間聚合和傳輸。來自LVDS接口的輸入數(shù)據(jù)被重新映射到相應(yīng)的目標(biāo)外部通道。
?
圖 4
DC-SCM/HPM LTPI IP由多路復(fù)用器、幀/數(shù)據(jù)包生成器/解析器、8b/10b編碼器/解碼器、字對齊器/鏈路同步器以及GDDR發(fā)送和接收模塊組成。
多路復(fù)用器
多路復(fù)用器連接外部通道。在鏈路訓(xùn)練和特性協(xié)商之后,多路復(fù)用器模塊在每個(gè)通道之間切換采樣,形成有效載荷。
數(shù)據(jù)包生成器/解析器
幀生成器和解析器生成鏈路訓(xùn)練和協(xié)商所需的數(shù)據(jù)包。TX使用幀生成器來生成要發(fā)送到通信接收器的幀。RX使用幀解析器來解析接收到的幀。
8b/10b編碼器/解碼器
LTPI IP對發(fā)送到接收主機(jī)/從接收主機(jī)接收到的數(shù)據(jù)執(zhí)行8b/10b編碼/解碼。對于TX,8位數(shù)據(jù)會根IEEE 802.3標(biāo)準(zhǔn)中指定的編碼規(guī)則轉(zhuǎn)換為10位數(shù)據(jù)。
數(shù)據(jù)以串行方式發(fā)送到接收主機(jī)。IP通過LFXMO5器件的通用DDR接口x5(10 bit:1 bit)和MachXO3L/LF/D器件的DDR接口x4(8 bit:1 bit)對數(shù)據(jù)進(jìn)行串行化。同樣,在RX模式下,數(shù)據(jù)通過DDR接口進(jìn)行解串。
萊迪思LTPI接口通道
萊迪思LTPI接口定義了以下通道:
- GPIO通道:該通道實(shí)現(xiàn)了GPIO信號在HPM和SCM之間的互傳。GPIO通道可以區(qū)分低延遲和正常延遲GPIO(串行GPIO),從而為對時(shí)序要求嚴(yán)格的GPIO信號分配更多帶寬,并擴(kuò)展傳輸?shù)腉PIO數(shù)量。
- I2C/SMBus通道:將I2C/SMBus鏈路數(shù)據(jù)從SCM傳輸?shù)紿PM,以及從HPM傳輸?shù)絊CM。
- UART通道:傳輸全雙工UART接口,支持SCM和HPM之間的流控制。
GPIO接口
正如DC-SCM規(guī)范中的定義,GPIO通道定義了低延遲和正常延遲GPIO(參見下圖)。這是萊迪思IP配置的一部分,這些接口模塊的每個(gè)實(shí)例都使用一個(gè)64位的通道。為了成功進(jìn)行發(fā)送和接收,SCM或HPM的發(fā)送通道的PID(數(shù)據(jù)包標(biāo)識符)應(yīng)與接收通道的PID相匹配,該P(yáng)ID在發(fā)送模塊上實(shí)例化。
圖 5
UART接口
UART接口通過GPIO接口發(fā)送,需要至少一個(gè)GPIO TX和一個(gè)GPIO RX通道的實(shí)例。
I2C接口
萊迪思LTPI IP使用I2C/SMBus通道通過LTPI接口為那些在SCM或HPM上只有一個(gè)控制器的鏈路傳輸I2C/SMBus總線數(shù)據(jù)。DC-SCM LTPI I2C/SMBus的主要用例如下圖所示,SCM上的BMC充當(dāng)目標(biāo)器件位于HPM上的I2C/SMBus鏈路的控制器。這些接口模塊的每個(gè)實(shí)例都使用一個(gè)通道。為了成功進(jìn)行發(fā)送和接收,SCM或HPM的I2C主控通道的PID應(yīng)與另一個(gè)模塊上實(shí)例化的I2C從通道的PID相匹配。
圖 6
萊迪思LTPI通道分配
萊迪思LTPI通道可對用于SCM和HPM之間通信的特定類型接口進(jìn)行功能分類。萊迪思LTPI還能實(shí)現(xiàn)接口映射的靈活性。LTPI的設(shè)計(jì)靈活性示例如下圖所示(參考DC-SCM LTPI規(guī)范)。在此示例中,GPIO通道被轉(zhuǎn)換為SGPIO接口,并在SCM CPLD中增加了額外的邏輯。
圖 7
萊迪思DC-SCM安全實(shí)現(xiàn)
企業(yè)服務(wù)器通常包含多個(gè)處理組件,每個(gè)組件都有自己的非易失性SPI閃存緩存,用于存儲其固件。黑客通過未經(jīng)授權(quán)訪問固件,可以暗中在組件的閃存中安裝惡意代碼。DC-SCM規(guī)范要求使用安全處理器來驗(yàn)證系統(tǒng)的BMC、BIOS和/或其他保密的固件鏡像。
圖 8
萊迪思安全/RoT(信任根)實(shí)現(xiàn)概述
為了解決黑客在保密固件的閃存中安裝惡意代碼的安全問題,美國國家標(biāo)準(zhǔn)與技術(shù)研究院(NIST)在2018年發(fā)布了NIST SP 800 193規(guī)范,定義了一種稱為平臺固件保護(hù)恢復(fù)(PFR)的統(tǒng)一保護(hù)機(jī)制。萊迪思的PFR解決方案可以作為DC-SCM的RoT來實(shí)現(xiàn),解決了企業(yè)服務(wù)器的此類漏洞。萊迪思RoT的實(shí)現(xiàn)基于以下三個(gè)指導(dǎo)原則:
- 保護(hù)——萊迪思已經(jīng)展示過基于狀態(tài)機(jī)的算法,能以納秒級響應(yīng)時(shí)間檢測SPI存儲器的安全漏洞。這可以防止未經(jīng)授權(quán)的訪問對SPI存儲器中固件的修改。該解決方案可通過簡單易用的數(shù)據(jù)庫進(jìn)行定制。通過使用PFR算法的安全通信,BMC能夠授權(quán)對SPI存儲器的修改以支持在系統(tǒng)更新。
- 檢測——對存儲在每個(gè)SPI存儲器中的固件進(jìn)行橢圓曲線加密(ECC)計(jì)算可以檢測所有未經(jīng)授權(quán)的修改。檢測方法獨(dú)立于該設(shè)計(jì)中當(dāng)前使用的固件安全方法。使用集成的電路板電源管理功能,可以在電路板啟動之前檢測到所有對固件未經(jīng)授權(quán)的更改。
- 恢復(fù)——如果檢測到安全漏洞,萊迪思的實(shí)現(xiàn)方案提供可定制化的恢復(fù)機(jī)制。這種機(jī)制可以執(zhí)行簡單的回滾操作,恢復(fù)到以前的固件版本,或者完全恢復(fù)到固件的最新授權(quán)版本。還可以自定義電源管理和控制PLD算法,應(yīng)對不同性質(zhì)的入侵,對任何電路板實(shí)施完全受信任的恢復(fù)過程。
方案特性
萊迪思的PFR解決方案擁有許多客戶和開發(fā)人員期望的特性。例如:
- 可擴(kuò)展——以納秒級響應(yīng)保護(hù)板上的所有固件。該解決方案還可以通過與相應(yīng)信任根的安全通信來保護(hù)其他附加的子系統(tǒng)
- 不可繞過——該解決方案實(shí)現(xiàn)了服務(wù)器主板的完整電源時(shí)序以及PFR,因此無法繞過它
- 自我保護(hù)——PFR實(shí)現(xiàn)革命性地使用了FPGA作為可信根。該FPGA可以動態(tài)控制其攻擊面并保護(hù)自身免受外部攻擊
- 自我檢測——可信根FPGA通過使用不可繞過的加密硬件模塊檢測其配置的任何安全漏洞
- 自我恢復(fù)——可信根FPGA在發(fā)現(xiàn)其活動配置遭到破壞時(shí)自動切換到已知完好的鏡像
萊迪思DC-SCM的控制實(shí)現(xiàn)
當(dāng)今幾乎所有服務(wù)器都使用萊迪思FPGA器件來實(shí)現(xiàn)控制PLD的功能,例如電源/復(fù)位時(shí)序、各種類型的串行總線(I2C、SPI、eSPI、SGPIO等)、調(diào)試端口、LED驅(qū)動器、FAN PWM驅(qū)動器、前端面板開關(guān)感應(yīng)和其他通用GPIO功能。萊迪思FPGA器件支持1 V信號,因而能夠執(zhí)行帶外信號集成,無需外部GTL收發(fā)器。
無中斷I/O
為了實(shí)現(xiàn)零停機(jī),萊迪思開發(fā)了無中斷I/O功能。通常情況下,控制PLD能讓設(shè)計(jì)人員顯著縮短產(chǎn)品上市時(shí)間,幫助他們應(yīng)對在規(guī)定時(shí)間內(nèi)推出新的定制硬件的市場壓力。 有時(shí),控制功能的實(shí)現(xiàn)或整個(gè)系統(tǒng)架構(gòu)中可能存在錯誤,也可能需要引入新功能。完成設(shè)計(jì)修改的一種常見方法是通過在系統(tǒng)更新和電源重啟讓新編程的鏡像投入使用。為確保高可用性(High Availability )系統(tǒng)的持續(xù)運(yùn)行,萊迪思FPGA器件可以在進(jìn)行配置刷新時(shí)保持I/O狀態(tài)不變,然后初始化新配置。
萊迪思產(chǎn)品革新:一種方案三種關(guān)鍵特性
萊迪思FPGA提供了將DC-SCM的三個(gè)關(guān)鍵功能集成到萊迪思解決方案中的獨(dú)特優(yōu)勢:
- LTPI(管理功能)
- 安全(動態(tài)、實(shí)時(shí)、端到端的保護(hù))
- 控制(可編程系統(tǒng)控制)
萊迪思FPGA非??煽?,在基于FPGA的低功耗應(yīng)用方面處于行業(yè)領(lǐng)先地位,其抗軟錯誤率(SER)性能是CMOS技術(shù)的100倍。萊迪思FPGA具有可靠的標(biāo)準(zhǔn)并遵循DC-SCM協(xié)議規(guī)范。Propel工具還為開發(fā)人員提供了便捷的拖放操作界面,大大簡化了配置。
支持DC-SCM的萊迪思產(chǎn)品
萊迪思非常重視DC-SCM。萊迪思擁有一系列支持DC-SCM、可信根和用戶電源控制邏輯的FPGA產(chǎn)品。以下是支持DC-SCM的現(xiàn)有產(chǎn)品列表。
表 1
使用萊迪思SupplyGuard?實(shí)現(xiàn)端到端的保護(hù)
萊迪思SupplyGuard?為每個(gè)客戶分配唯一的訂購部件編號。這些編號對應(yīng)鎖定萊迪思FPGA的加密憑證 并,并將平臺可信根保護(hù)擴(kuò)展到整個(gè)供應(yīng)鏈,從IC制造到產(chǎn)品最終報(bào)廢。萊迪思SupplyGuardTM的特性包括:
- 防止過度制造、克隆、偽造和未經(jīng)授權(quán)的硬件修改
- 能夠在整個(gè)供應(yīng)鏈中追蹤器件
- OEM或ODM不需要特殊的高度安全的編程設(shè)備、流程或設(shè)施
- 外部IC的驗(yàn)證憑證作為客戶加密配置位流的一部分被編程到萊迪思器件。這可以在工廠編程期間將系統(tǒng)中萊迪思FPGA的加密所有權(quán)安全地轉(zhuǎn)移給客戶
結(jié)論
萊迪思半導(dǎo)體致力于DC-SCM 2.0的推廣。萊迪思通過可行的單芯片解決方案實(shí)現(xiàn)并優(yōu)化了DC-SCM的三個(gè)關(guān)鍵功能。
萊迪思擁有經(jīng)過充分驗(yàn)證的DC-SCM參考設(shè)計(jì),可供更廣泛的DC-SCM客戶和電路板設(shè)計(jì)人員使用,幫助他們輕松實(shí)現(xiàn)DC-SCM。萊迪思緊密集成的解決方案可以為電路板設(shè)計(jì)人員提供統(tǒng)一的單個(gè)FPGA解決方案,而無需針對LTPI、安全和控制提出不同的解決方案組合。萊迪思完善的DC-SCM解決方案可以提高性能,降低功耗,且在電路板上占用很小的空間。
萊迪思針對三個(gè)關(guān)鍵的DC-SCM功能提供了一個(gè)包括GUI和非GUI工具的框架。系統(tǒng)架構(gòu)師和電路板設(shè)計(jì)人員可以從下拉列表中輕松實(shí)現(xiàn)特性。我們的集成設(shè)計(jì)工具可以在一個(gè)面板視圖中為架構(gòu)師/設(shè)計(jì)師提供中整個(gè)解決方案,實(shí)現(xiàn)DC-SCM的三大特性。
參考文獻(xiàn) https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-193.pdf
https://drive.google.com/file/d/14mypJ0Pvej35Q64PkDeK-sixrOIzvnKG/view
https://www.youtube.com/watch?v=SQy7Ztf3nGU https://www.youtube.com/watch?v=eI9k3j-L-_0&t=8s
https://2020ocpvirtualsummit.sched.com/event/bXZu/dc-scm-base-specification-and-design-details-
presented-by-microsoft
https://www.intel.com/content/www/us/en/products/docs/processors/xeon/platform-firmware-resilience.
?