
NXP LS1046A 硬件方案 LS1046AFPGA 異構加速架構實踐標簽LS1046ADPAA2FPGA異構工業(yè)網(wǎng)關SerDesPCIe3.0網(wǎng)絡處理器?閱讀時長10 分鐘 摘要LS1046A 作為 NXP Layerscape 系列高性能多核網(wǎng)絡處理器廣泛應用于工業(yè)網(wǎng)關、網(wǎng)絡安全、邊緣轉發(fā)設備。本文基于 LS1046A 單機完整硬件設計針對大流量 DPI、工業(yè)協(xié)議硬解析、國密加速等 CPU 瓶頸場景給出LS1046A 外接 FPGA 協(xié)處理的異構實現(xiàn)方案對比兩種架構差異整理 RCW、SerDes、電源時序等實際項目踩坑點。0 前言最近在做工業(yè)網(wǎng)絡設備方案評估拿到一份ZAA1204h_30G的 LS1046A 硬件原理圖。LS1046A 搭載 8 核 Cortex?A72內置 DPAA2 報文加速引擎多路 SerDes 可靈活配置為 RGMII/SGMII/PCIe/SATA天生適合做多網(wǎng)口嵌入式網(wǎng)絡設備。實際項目落地過程會發(fā)現(xiàn)單純依靠 ARM 內核 DPAA2處理深度報文解析、EtherCAT/Profinet 工業(yè)協(xié)議解析、國密流水線加密業(yè)務時大流量下 CPU 占用率會快速觸頂性能遇到明顯瓶頸。 因此就有了LS1046A FPGA 兩片式異構加速的架構思路。重要提醒LS1046A 不是 Zynq 系列ARM 與 FPGA 是兩顆獨立芯片依靠 PCIe SerDes 高速互聯(lián)和 Zynq 片內 AXI 總線架構有本質區(qū)別會引入 PCIe 傳輸延遲。1 LS1046A 單機硬件整體架構參考原理圖硬件框架整機由處理器核心、DDR4 內存、多路千兆 PHY、存儲子系統(tǒng)、高速外設、PMIC 電源樹、復位管理、調試接口組成。1.1 處理器核心單元器件型號LS1046A?SN8Q1A8 核 Cortex?A72主頻最高 1.8GHz內置 DPAA2 網(wǎng)絡數(shù)據(jù)包加速引擎硬件支持 IEEE1588 PTP 時間同步。系統(tǒng)差分時鐘DIFF_SYSCLK100MHz 差分系統(tǒng)時鐘PCB 要求差分阻抗 100Ω差分對內嚴格等長盡量減少過孔降低時鐘抖動。RTC 模塊32.768KHz 外部低速晶振搭配外置 RTC 芯片實現(xiàn)掉電時間保持。JTAG 調試接口標準 CPU JTAG用于 RCW 配置燒寫、U?Boot 固件調試關鍵引腳增加上拉電阻。??RCW 配置字是 LS1046A 的靈魂SerDes 通道分配、DDR 參數(shù)、啟動介質選擇全部由 RCW 決定RCW 配置錯誤會直接導致板子無法啟動。1.2 內存與啟動存儲子系統(tǒng)DDR4 內存支持 DDR4?UDIMM 內存條板載 SPD EEPROMI2C 地址0x51硬件支持 ECC 糾錯工業(yè)產品建議啟用 ECC 提升長期運行穩(wěn)定性。電源濾波電容必須緊貼電源引腳擺放DDR 地址、數(shù)據(jù)信號嚴格做等長匹配。啟動介質QSPI NOR Flash存放 RCW 配置、U?Boot 一級引導程序eMMC / NAND Flash存放 Linux 系統(tǒng)鏡像、業(yè)務應用、運行日志IFC 并行接口可擴展外接 NOR/NAND Flash作為備選啟動介質。1.3 網(wǎng)絡子系統(tǒng)RTL8211FSI?VS?CG PHY硬件一共引出 5 路千兆以太網(wǎng)混合 RGMII 與 SGMII 模式PHY 地址分別為 1/2/3/4/5所有 PHY 共享一組 MDC/MDIO 管理總線中斷信號為低電平有效向 CPU 上報鏈路狀態(tài)、PHY 異常告警。表格網(wǎng)口工作模式硬件說明EC1RGMII1RJ45 電口 / SFP 光口二選一EC2RGMII2RJ45 千兆電口EC3SGMII1SerDes 輸出 SGMII 千兆EC4SGMII2SerDes 輸出 SGMII 千兆EC5SGMII3SerDes 輸出 SGMII 千兆??PCB 硬性約束來自原理圖注釋硬件設計必看PHYDVDD33電源走線寬度≥40milREG_OUT輸出走線≥60milLx 功率電感、輸入輸出濾波電容距離 PHY 引腳控制在 200mil 以內功率回路盡量放在同一層DVDD33、REG_OUT走線盡量禁止打過孔LDO 輸出濾波電容選用 X5R 材質陶瓷電容保證 PHY 內置 LDO 穩(wěn)定工作。網(wǎng)口配置 Link/Activity 雙色指示燈硬件支持 IEEE1588 時間戳。1.4 高速外設接口PCIe3.0 x2SerDes 通道引出底板默認轉為 M.2 Key?M 接口用于 NVMe 固態(tài)硬盤該通道是外接 FPGA 的核心高速通道。SATA3.0LS1046A 內置 SATA 控制器外接 2.5 寸 SATA 硬盤用于數(shù)據(jù)包抓包、大容量日志存儲。USB3.0兩路 USB3.0 接口增加 ESD 浪涌保護一路 Micro?B 作為系統(tǒng) Console 調試口一路標準 USB可外接 4G/5G 通信模塊、U 盤。UART串口控制臺Linux 系統(tǒng)調試。風扇接口CPU 風扇、機箱風扇插座支持 PWM 調速。1.5 電源與復位系統(tǒng)整機供電輸入12V DC 適配器最大 9A 輸出主 PMICMC34VR500搭配 RTQ2820、RT6252、LTC 系列 DCDC/LDO 芯片電源域CPU 核心 VDD、DDR4 1.2V、IO 1.8V、外設 3.3V電流監(jiān)測INA220I2C 地址 0x40采集 CPU 供電電壓電流用于系統(tǒng)監(jiān)控與過流保護PowerGood 信號各路電源 PG 信號參與整機復位邏輯嚴格遵守 LS1046A 上電時序要求。復位樹設計CPU PORESET、HRESET、PHY 復位、eMMC 復位通過SN74LVC07、SN74LVC1G08緩沖驅動各路復位信號保障上電、掉電復位時序。1.6 基礎軟件棧RCW 硬件配置字U?Boot 二級引導NXP SDK Linux 內核DPAA2 網(wǎng)絡驅動業(yè)務應用轉發(fā)網(wǎng)關、防火墻、PTP 時間同步、工業(yè)協(xié)議轉換。?單機適用場景普通工業(yè)網(wǎng)關、多網(wǎng)口路由器、協(xié)議轉換器 ?存在短板高流量下深度報文處理、自定義算法會帶來很高 CPU 負載。2 進階方案LS1046A FPGA 異構加速架構2.1 架構分工思想LS1046A主控端運行 Linux 操作系統(tǒng)完成業(yè)務配置管理、存儲控制、上層業(yè)務邏輯、對外業(yè)務接口FPGA協(xié)處理端依靠硬件流水線完成報文預處理、協(xié)議解析、加解密運算、硬件時間戳打標數(shù)據(jù)交互鏈路PCIe3.0 x2/x4采用 DMA 方式完成高速數(shù)據(jù)傳輸。兩種硬件改造方案對比表格方案實現(xiàn)說明適用場景方案 A低成本改版復用現(xiàn)有 PCIe3.0 x2 通道直連 FPGA原 NVMe 改用 SATA 固態(tài)SerDes 通道不新增分配基于現(xiàn)有底板二次改版控制硬件成本方案 B性能最優(yōu)修改 RCW 重新分配 SerDes 資源分配 PCIe x4 給 FPGA保留 M.2 NVMe 接口追求 PCIe 帶寬PCB 改動大2.2 FPGA 側可以實現(xiàn)的功能報文硬件預處理五元組匹配、流量整形、硬件抓包卸載 DPAA2 的處理壓力工業(yè)協(xié)議硬件解析Modbus、EtherCAT、Profinet 硬件解析直接提取業(yè)務數(shù)據(jù)點國密硬件流水線AES、SM2/SM3/SM4 硬件加速多路 IEEE1588 硬件時間戳打標IO 擴展FPGA 擴展 LVDS、高速 AD/DA 等外部工業(yè)接口。2.3 軟硬件交互邏輯高速數(shù)據(jù)通道 PCIe DMAFPGA 將處理后的報文 DMA 寫入 LS1046A 內存LS1046A 向 FPGA 下發(fā)流表、配置寄存器低速控制通路GPIO / I2CFPGA 中斷信號經(jīng)過電平轉換接入 LS1046A 外部中斷FPGA 復位信號納入整機復位樹統(tǒng)一管控軟件驅動層Linux 實現(xiàn) PCIe 驅動使用 UIO 字符設備用戶態(tài)訪問 FPGA 寄存器打通 DPAA2 與 FPGA 之間的數(shù)據(jù)流。2.4 硬件改版關鍵注意點RCW 配置修改SerDes 通道從 M.2 切換為 FPGA PCIe同步修改 PLL 參數(shù)RCW 配置錯誤會直接造成 SerDes 通道失效FPGA 獨立電源域FPGA 各路電源 PG 信號接入整機復位時序獨立 FPGA?JTAG 調試接口與 LS1046 的 JTAG 分開方便分別調試FPGA 中斷信號做電平轉換匹配 LS1046 IO 電平時鐘來源FPGA 可以使用獨立晶振也可以復用 LS1046 輸出的差分參考時鐘。3 兩種架構綜合對比表格對比項LS1046A 單機方案LS1046A FPGA 異構方案開發(fā)難度低基于 NXP SDK 純 Linux 開發(fā)中等FPGA 邏輯 Linux PCIe 驅動雙開發(fā)報文處理性能DPAA28 核 A72復雜業(yè)務受 CPU 瓶頸限制FPGA 硬件流水線大流量、低延遲場景性能優(yōu)秀業(yè)務靈活性軟件迭代快高負載業(yè)務 CPU 占用高硬件負責加速策略規(guī)則支持軟件動態(tài)配置BOM 物料成本較低增加 FPGA 芯片整體 BOM 上升典型產品應用普通工業(yè)網(wǎng)關、路由轉發(fā)硬件 DPI 網(wǎng)關、工業(yè)實時協(xié)議網(wǎng)關、國密網(wǎng)絡設備、輕量級 UPF4 項目踩坑清單生產調試重點RCW 與 SerDes 資源沖突SerDes 通道是復用資源PCIe / SGMII / SATA 互相搶占通道硬件接口改動RCW 必須同步更新否則 SerDes 無法工作。上電時序風險LS1046A 與 FPGA 兩套獨立電源域PowerGood 信號必須接入復位樹防止電源未穩(wěn)定器件提前啟動。PCIe 信號完整性PCIe 差分信號阻抗嚴格控制 85Ω差分對內等長盡量減少過孔保障高速通信穩(wěn)定性。PTP 時間同步硬件時間同步鏈路需要控制時鐘布線路徑降低相位偏移。整機散熱評估LS1046A 八核 A72 本身功耗不低疊加 FPGA 后整機功耗明顯上漲散熱片、風扇方案需要重新評估。5 總結LS1046A 是一款綜合能力很強的網(wǎng)絡處理器依靠原生外設完全可以直接實現(xiàn)多千兆工業(yè)網(wǎng)關產品。 當業(yè)務面對大流量深度報文解析、自定義工業(yè)協(xié)議、國密硬件加速等需求時可以充分利用芯片 SerDes 資源外接 FPGA 協(xié)處理器搭建 ARMFPGA 異構平臺。既保留 LS1046 成熟 Linux 軟件生態(tài)同時獲得 FPGA 硬件并行加速能力。