芯片設計中優化數據移動

芯片設計中優化數據移動

文章圖片


應對更多數據時提升性能的問題與解決方案 。
【芯片設計中優化數據移動】對新型更優人工智能模型的需求催生了對更強處理能力和更高數據吞吐量的無盡需求 , 但這也帶來了一系列新挑戰 , 而這些挑戰并非總能找到理想的解決方案 。
這里的關鍵在于識別復雜芯片和先進封裝中可能出現的瓶頸點 , 需要清晰了解在特定工作負載下 , 設計中各元件間數據傳輸所需的帶寬 , 同時還需綜合評估數據在處理器、存儲器、輸入輸出設備甚至數據中心服務器機架等多元件間的吞吐量 。
新思科技(Synopsys)接口 IP 產品管理總監普里揚克?舒克拉(Priyank Shukla)指出:
“當客戶談論吞吐量和帶寬時 , 有時他們指的是整個集群 —— 即整個網絡作為計算集群 , 用于訓練大型 AI 模型 。 這些工程團隊希望了解集群的吞吐量和集群內不同互連的帶寬 , 進而定位瓶頸 。 數據中心包含多個機架單元 , 打開其中一個機架 , 可見機架單元內的處理器通過網絡接口卡(NIC)連接到不同機架 , 各個片上系統(SoC)之間也存在連接 。 ”
理解數據流動方式是優化數據傳輸的核心 。
舒克拉表示:“計算集群公司在訓練 AI 模型時 , 會從網絡獲取大量診斷信息 , 并能精準定位延遲點 。 例如 , 一個大型工作負載被分發到集群中 , 可能由 GPU 或加速器處理 。 但部分工作負載需先通過網絡連接的存儲設備傳輸至 GPU:數據從存儲設備中提取 , 通過 CPU 的直接內存訪問(DMA)功能傳輸 。 CPU 按順序運行算法或進程(如第一行、第二行、第三行) , 獲取數據塊后通過擴展網絡傳輸至某個加速器 , 多個加速器協同處理數據 。 ”
復雜設計中存在數千個互連 。 舒克拉提到:“就數據從存儲設備提取的場景而言 , 可能通過以太網經 DMA 傳輸至 CPU , 或通過擴展網絡傳輸至 GPU 。 所有這些互連的帶寬各不相同 —— 例如 , 基于 PCIe 7.x 標準的互連速度為 128 Gbps , 基于以太網的互連單通道速度為 112 或 224 Gbps 。 這些是各個互連的帶寬 , 但總吞吐量取決于整個集群的性能 。 ”
圖 1:數據中心中解決不同問題的架構 。 來源:新思科技
串行器 / 解串器(SerDes)串行器 / 解串器(SerDes)技術是解決這一問題的關鍵工具之一 。 它可將并行數據壓縮為串行數據傳輸 , 并在接收端還原 , 從而通過有限的物理通道(引腳)實現高速數據傳輸 。
Alphawave Semi 產品營銷經理托德?貝爾門索洛(Todd Bermensolo)表示:“數據無需通過寬通道即可實現更快傳輸 , 通過最少引腳實現最大數據吞吐量 , 更具經濟性 。 若需高數據吞吐量 , 還可增加引腳數量 。 ”
但這也增加了發送端和接收端的復雜性 。 貝爾門索洛稱:“目標是將數據壓縮到最少的物理通道中 。 為提升速度 , 發送端需通過多種技術壓縮數據 , 接收端則需逆向還原 —— 在實現高速、高效物理傳輸的同時 , 將數據擴展回低速寬通道格式 。 這一過程隨著計算集成的發展而興起 , 在物理層面變得至關重要 , 因為我們無法隨心所欲地用線纜連接所有設備 。 回想 1 Gbps 時代 , 發送端驅動簡單接收端即可實現高速傳輸 , 并行 - 串行轉換較為基礎 。 但如今我們已實現 100 Gbps 傳輸 , 過去 15 年里 , 這種簡單模式已發展至當前水平 。 接下來將是 200 Gbps , 隨后是 400 Gbps 。 對于 AI 應用而言 , 這種速度提升仍迫在眉睫 。 ”
然而 , 這種速度也帶來了新問題 。
“在串行器(發送端)和解串器(接收端)上 , 我們增加了發送端的復雜性 , 這可能會消耗更多功率 , ” 他說 , “因此 , 我們尋求更先進的硅工藝節點來縮小芯片尺寸 , 以獲取更高性能 , 同時在使用類似線纜的情況下不增加功耗 。 在接收端 , 我們增加了更多處理環節 —— 不再是簡單的差分比較 , 可能需要添加增益級、前饋均衡器、判決反饋均衡器等先進均衡技術 , 甚至最大似然序列檢測等新方法 。 我們需要維持物理通道性能 , 確保數據能通過 1-5 米的線纜(或千米級的光纖)傳輸 , 同時保持外形尺寸 。 但如果要讓數據傳輸速度每代翻倍 , 就必須通過更多計算和智能技術來幫助在超高速度下恢復信號 。 ”
緩存片外內存是 AI 訓練等數據密集型應用中的常見瓶頸 。 靜態隨機存取存儲器(SRAM)擴展速度不足 , 迫使芯片制造商依賴高帶寬內存(HBM)—— 即通過互連中更多數據通道堆疊的動態隨機存取存儲器(DRAM)—— 作為三級緩存(L3 Cache) 。 盡管這比其他形式的 DRAM 有所改進 , 但速度仍不及 SRAM , 進而形成所謂的 “內存墻” 。
在無需完全采用 3D IC(目前才剛剛開始設計)的情況下 , 仍有提升性能的方法 。 Arteris 產品管理和營銷總監里克?拜伊(Rick Bye)表示:“典型的解決方案是使用片上緩存 , 將常用數據存儲在速度極快的片上內存中 , 其訪問速度比片外 DRAM 快 10 到 100 倍 。 現代 SoC 可能采用分層緩存架構:CPU 核心內嵌入小而快的單周期訪問一級緩存(L1 Cache) , 通常分為程序緩存和數據緩存;此外可能有更大、稍慢的二級緩存(L2 Cache) , 用于存儲程序和數據;在多核系統中 , 可能有三級緩存(L3 Cache)為多個 CPU 核心服務;此外 , 還可能有末級緩存(LLC)或系統級緩存(SLC) , 供整個 SoC 共享 , 包括 CPU 核心、GPU、NPU、顯示處理器和連接攝像頭的圖像處理器等 。 ”
這在大多數情況下有效 , 但有時需要讀取的數據不在片上緩存中(稱為 “緩存未命中”) , 此時需訪問速度較慢的片外 DRAM 。 拜伊指出:“類似地 , 數據寫入(如攝像頭數據)可能導致緩存填滿速度超過后臺向片外 DRAM 寫入數據的速度 。 增加 DRAM 通道數量可緩解這一瓶頸 —— 例如 , 將單個片外 DRAM 擴展為四個 , 使 DRAM 帶寬提升四倍(但吞吐量未必同比提升) 。 但這僅在數據可通過內存交錯均勻分布到所有 DRAM 通道時有效 , 這增加了系統設計的復雜性 。 獨立緩存 IP 可用于分層架構中的任何緩存層級(尤其是 LLC/SLC) , 而緩存與片上網絡(NoC)結合的 IP 可管理兩個或多個處理器共享緩存數據的一致性 , 確保處理器不會讀寫‘過時’數據 。 ”
多芯片集成隨著 AI 數據處理需求的激增 , 將平面 SoC 分解為小芯片(Chiplet)的架構轉型 , 使數據移動成為關注焦點 。
Eliyan 戰略營銷副總裁凱文?唐納利(Kevin Donnelly)表示:“從片上連線幾乎無成本的范式轉變為多芯片架構后 , 片上連線纖細密集 , 而跨封裝的連線必然更粗且數量有限 , 這限制了小芯片間的數據傳輸量 。 若兩個小芯片之間的連線數量有限 , 就需要盡可能提升它們之間的帶寬 。 在標準 UCIe 或‘線束’(Bunch of Wires)接口中 , 每根線單向傳輸數據 —— 發送端向小芯片傳輸數據 , 另一端發送端再反向傳輸數據 。 這是常見模式 , 每根線提供一定帶寬 , 但如今我們需要處理的數據量遠超以往 。 ”
對于用于訓練 AI 模型或高性能計算的芯片 , 這些連線的利用率比過去高得多 。 唐納利稱:“芯片間帶寬需求的爆發式增長意味著 , 要么增加連線數量 , 要么提升單根連線的帶寬 。 提升單根連線帶寬需考慮連接的信號完整性(無論是 SerDes 還是芯片間連接) , 需根據互連距離、電容和電阻 , 結合奈奎斯特速率(Nyquist rate)確定互連中的運行速度 , 進而計算該介質可傳輸的帶寬 。 ”
一種解決方案是讓每根線同時雙向傳輸數據 , 在相同互連數量下實現雙倍帶寬 。 唐納利比喻道:“這就像每條道路都是雙車道 , 而非單向分道行駛 。 在所有物理層(PHY)中 , 數據均需并行輸入、串行傳輸 。 無論是單向還是我們所說的同步雙向傳輸 , 對用戶而言并無差異 —— 只是在相同面積下提供了更多并行線 , 因此硅片面積的帶寬效率更高 , 其余并無不同 。 一旦采用多芯片架構并需要連接芯片 , 就必須關注高速連接及其信號完整性和電源完整性 , 這些互連的模擬特性遠多于數字特性 。 ”
在封裝中添加小芯片有助于突破處理時鐘速度的限制 , 但也帶來其他挑戰 。 Alphawave 的貝爾門索洛表示:“從單片集成轉向小芯片設計后 , SerDes、計算單元和內存可采用最適合的硅工藝 , 無需在所有模塊中使用同一工藝 , 通過小芯片集成即可組合功能 。 但這也引入了新接口 —— 芯片間連接不使用 SerDes , 而是采用 UCIe 等標準 , 這增加了一定復雜性 。 因此 , 盡管多芯片架構解決了部分問題 , 卻也帶來了新挑戰 。 ”
相互交織的挑戰單獨解決每個問題已頗具挑戰(即 SoC 設計中經典的分而治之的思路) , 但在多芯片集成中 , 問題需在設計流程早期同步解決 , 這包括更大規模、更多次數的仿真以映射數據流動 , 以及為設計的前瞻性犧牲部分性能來換取靈活性 。
西門子 EDA(Siemens EDA)Tessent 產品經理維迪亞?尼爾昆達(Vidya Neerkundar)表示:“我們希望走向異構集成 , 即像購買 IP 一樣購買小芯片并進行集成 。 整個行業需要共同探索如何實現這一點 。 在 IP 領域 , 通過接口可檢查 IP 是否激活 , IP 供應商會提供可運行的測試模式 , 但小芯片目前尚未具備這一體系 , 設計套件正逐步發揮作用 , 我們需要明確最基本的需求 。 ”
建立數據路徑是一回事 , 確保其按預期工作則是另一回事 。 尼爾昆達稱:“連接方式包括硅通孔(TSV)、中介層(Interposer)、嵌入式多芯片互連橋(EMIB)等 , 選擇眾多 , 且測試路徑與晶圓級測試不同 —— 晶圓級測試使用犧牲性探針焊盤 , 而現在使用硅通孔 。 訪問小芯片的路徑不同 , 當前有掃描架構(Scan Fabric) , 可視為在小芯片間傳輸和收集測試數據的‘高速公路’ , 類似總線但功能有限 , 只能實現掃描輸出等基本操作 , 用于訪問不同小芯片的數據 。 但整個行業需要一個通用解決方案 。 ”
2.5D 或 3D IC 中的吞吐量極為復雜 , 除了需考慮的元件數量 , 還會因工作負載而異 , 并受噪聲、熱效應等物理因素影響 。
尼爾昆達指出:“組裝芯片堆疊時 , 需確保所有環節驗證到位 , 信號輸入輸出正常且建模準確 。 這涉及諸多環節 , 尤其是可能需要協調 150 個不同供應商(從晶圓廠到 TSV 工藝)才能讓整個堆疊正常運行 —— 組裝可能由第三方完成 , 軟件和顯微檢測也是如此 , 甚至凸點和材料可能來自不同供應商 。 這其中存在諸多變量 。 我相信 , 代理式 AI 至少可以檢查連接是否正常 , 為后續步驟奠定基礎 。 ”
挑戰不僅限于電信號 。 新思科技的舒克拉表示:“通過 UCIe 連接的電子芯片 , 也可能是光子芯片(光子集成電路) 。 這樣一來 , 數據傳輸距離可大幅延長 —— 我們需要 200 Gbps 帶寬來實現 1-2 米傳輸 , 因此接口標準需提升 。 而光子技術提供了高效的接口擴展方式 , 在 UCIe 接口中使用光子技術可延長傳輸距離 , 這項新技術將相應提升接口密度、總帶寬和吞吐量 。 ”
此外 , 在嘗試最大化接口密度時 , 還需考慮許多與硅相關的復雜性問題 。 舒克拉稱:“例如 , 若元件間距過近 , 需對多通道串擾效應進行建模和分析 。 如果架構師只關注盡可能密集地集成元件 , 而驗證流程或簽核流程未涉及這些因素 , 那么設計進入量產階段時將面臨挑戰 。 ”
所有依賴關系和交互都需要預先考慮 。 Arteris 的拜伊表示:“如果互連沒有足夠的吞吐量為 CPU 提供所需數據 , 那么即使擁有最新、最快的 CPU 核心和大而快的緩存也毫無意義 。 傳統交叉開關互連架構無法隨 CPU 和其他 IP 數量的增加而擴展 , 級聯小型交叉開關會迅速引入瓶頸 。 解決方案是使用分組化的片上網絡(NoC) , 其提供的吞吐量可確保任何 IP 都不會因缺乏數據而停滯 , 或因等待存儲已生成的數據而受阻 。 ”
結論優化數據移動一直是一項挑戰 , 但如今變得更為艱巨 。
Alphawave 的貝爾門索洛總結道:“從智能手機實時訪問數據中心 , 到跨數據中心的 AI 應用 , 系統規模不斷擴展 , 盡管許多環節亟待改進 , 但整體性能需從更高維度衡量 。 我們如何通過關注帶寬、功耗和延遲來改善這個龐大的宏觀問題?這不再是個體體驗 , 而是需要原本互不協作的團隊溝通與合作 , 因為我們已無法僅憑直覺判斷何為成功 。 大型數據中心開發者清楚電費成本 , 也清楚成功的標準 , 他們能將這些標準細化到每個 SerDes 互連或每個小芯片 。 當他們將系統規模擴展百萬或十億倍時 , 下一代開發的關鍵要素便一目了然 。 ”
對其他參與者而言 , 整合這些環節需要更多工作、更多標準 , 以及與傳統上各自為戰的團隊進行更多互動 。
*聲明:本文系原作者創作 。 文章內容系其個人觀點 , 我方轉載僅為分享與討論 , 不代表我方贊成或認同 , 如有異議 , 請聯系后臺 。
想要獲取半導體產業的前沿洞見、技術速遞、趨勢解析 , 關注我們!

    推薦閱讀