我們正處于人工智能 (AI) 處理將迅速發展并變得無處不在的時代的開端。雖然人工智能的概念——賦予機器模仿認知功能以學習和解決問題然后采取行動的能力——自 1950 年代中期以來一直是一門學科,但直到最近五年,人工智能處理,主要是以機器學習 (ML) 的形式,可以走出昏暗的研究大廳和一次性的超級計算機,轉向實際的日常使用。為什么?
僅從互聯網和數十億智能設備產生的數據量就為我們提供了足夠的數據來收集大量數據集,我們可以使用這些數據集進行 ML 過濾和訓練基于 ML 的系統以供使用。此外,今天我們在智能設備和高帶寬通信基礎設施中擁有足夠的無處不在的高性能計算能力,可以快速處理和傳輸海量數據集。這種計算能力還為我們提供了為特定任務開發更復雜、更專業的算法的畫布,進一步擴展了 AI/ML 的應用。
更重要的是,今天有許多殺手級應用程序,從加速的信息基礎設施和數據中心到數十億的邊緣設備,AI/ML 處理可以使智能產品變得更智能——甚至是自主的。AI/ML 已經被用于數據中心、數據挖掘、醫學成像分析設備、汽車 ADAS 和自主系統、計算機視覺系統、機器人和移動設備,例如最新的智能手機。AI/ML 技術的商業和創新機會似乎是無限的。
這種指數級 AI/ML 演進的核心將是為更智能的片上系統 (SoC) 和更智能的 AI 驅動的獨立處理器開發專門的 AI/ML 處理器 IP。對 ML 半導體初創公司的投資遠遠超過對任何其他半導體領域的投資,包括 5G 和加密貨幣。
提供創新的 AI/ML 處理器 IP 和 IC 需要工程團隊使用更新、更快的工具來增強他們的設計方法。幸運的是,EDA 行業也在擁抱 AI/ML,并開始將其整合到其工具中,以使它們更準確、更快。讓我們看看 AI/ML 處理器設計的方法論挑戰,然后看看 Mentor 等 EDA 公司正在做些什么來幫助工程師更快地交付更智能的創新。
AI/ML 處理器設計挑戰
AI/ML 在很大程度上是一門數學和軟件工程學科——數學家使用數學工具開發算法并將算法轉換為 C++ 代碼以在處理器上執行。在標準單線程微處理器上運行算法一直是一個挑戰,因為算法的某些部分可能無法以最佳方式運行。
為了克服這一瓶頸,公司在過去五年中轉向了加速器架構。其中最早將多用途/現成的 MPU 設備與多用途/現成的 GPU 或現場可編程門陣列 (FPGA) 配對,以更有效地執行并行處理。隨著加速器架構的進步,公司已經開始將 GPU 和 FPGA IP 塊集成到他們的 SoC 中。其中最早使用 2.5D 硅中介層或系統級封裝 (SiP) 配置。
在任何這些配置中使用通用 GPU 和 FPGA 都會在功率、熱量和性能方面進行一些重大權衡。為了減輕這些權衡,許多公司,尤其是初創公司,已經開始開發專門的 AI/ML 處理器架構,以將 IP 集成到邊緣設備的 SoC 中——作為物聯網 (IoT) 的一部分——以及開發用于數據基礎設施(服務器、數據中心等)的龐然大物專用獨立 AI/ML 處理器,以使它們更高效地執行特定任務。甚至提供 GPU 和 FPGA 等標準產品的公司也在開發更專業用于 AI/ML 處理的衍生產品。
架構
AI/ML 處理器 IP 和 IC 設計具有某些對傳統工具流程征稅的特征。傳統上,IC 設計流程從寄存器傳輸級別 (RTL) 開始,其中硬件設計團隊使用 SystemVerilog 或 VHDL(VHSIC 硬件描述語言)等硬件描述語言開發其 IP 或 IC 設計的邏輯。
然而,許多 AI/ML 架構一開始是一個復雜的算法,需要工程團隊從開發算法的 C++ 表示開始。然后,他們必須發現他們算法的哪些部分在通用處理器上的軟件中運行得最好,哪些部分運行緩慢,這樣他們就可以讓硬件工程師開發獨特的邏輯塊來加速算法中較慢的部分,從而提出優化的系統架構。以 RTL 優先的方法開發獨特的硬件(手動開發 RTL)是一個漫長的過程,并且可能會限制設計團隊集中在最佳 SoC 架構上以運行其目標算法的可能性。
幸運的是,現在有高級綜合工具使公司能夠直接從他們的 C++ 代碼快速開發硬件邏輯。例如,使用 Xilinx Zynq SoC 開發板(在同一芯片上具有 Arm 處理器和 FPGA 邏輯),設計團隊可以在 Xilinx Zynq SoC 的嵌入式 Arm 處理器上運行算法,并分析算法的哪些部分運行緩慢僅在處理器上運行。然后,他們可以將這些慢速部分實現到硬件邏輯中,以查看性能是否有所提高。他們可以調整算法或調整硬件/軟件邏輯組合,并使用 C++ 綜合來生成軟件和硬件的多個實例,這比使用 RTL 流程要快得多。
容量
AI/ML 處理器 IP 和 IC 包括許多獨特的切片層來存儲訓練數據。然后,他們利用推理得出結論(正確識別對象、識別模式和數據序列等)并進行處理以觸發動作。瓦片和處理功能還需要大量的本地化片上存儲器。所有這一切都意味著 AI/ML 處理器 IP 和 IC 往往具有大量門數。SoC 可以達到數十億個門的范圍。這對工具容量和性能提出了更高的要求,因為團隊仍然需要在合理的時間內執行 IC 設計流程中的各個步驟(最長的最好是一夜之間,大約八小時)。
必須處理這種能力的設計團隊越來越多地轉向仿真,以對 AI 驅動的 IP 和 IC 執行功能驗證。仿真系統可以仿真超過 150 億個門設計——比軟件模擬器多幾個數量級的門。此外,仿真使設計團隊能夠運行 ML 基準套件/框架,以確保他們的設計滿足性能預期。由于仿真執行邏輯驗證的速度比仿真快一個數量級,它還使公司能夠以合理的運行速度開發和測試軟件,以確保他們的算法在將設計發送到布局并最終進入制造之前按預期運行。
功率預算
無論 AI/ML 設備是在數據中心內的卡中運行的獨立處理器,還是在邊緣設備和車輛中運行電池供電的 SoC,功耗都是 AI/ML 開發的主要設計考慮因素。數據中心 AI/ML 應用的關鍵是每瓦性能 (PPW) — 以最小的能源足跡獲得最高性能。數據中心運行和冷卻消耗大量能源。
在提高性能的同時減少設備的能源足跡可以為數據中心節省數百萬美元的 OPEX,因此具有最佳 PPW 的設備通常會在每一代數據中心中獲勝。同樣,AI/ML 邊緣設備將執行高速計算并需要快速傳輸數據。這兩種操作都對電力征稅,如果邊緣設備由電池供電,這將成為一個更大的問題。
為了解決這個問題,設計團隊需要能夠幫助他們在整個設計流程中構建和監控電源效率的工具。在 AI/ML 流程中,這應該從 C++ 架構甚至 RT 層面開始,從邏輯驗證綜合、布局布線、物理驗證和測試的每一步開始。
高速 I/O
無論是數據中心數百萬卡的核心,還是物聯網邊緣的手機或攝像頭,支持 AI/ML 的設備都需要快速高效地接收和傳輸數據。這意味著 AI/ML 設備將需要高速 I/O,甚至可能在數據中心發展為硅光子互連。這意味著絕大多數 AI/ML 處理器實際上也將是混合信號處理器。這將要求公司在 AMS 設計和驗證流程的每個步驟中越來越多地使用一流的工具。
為了實現最大性能,這還需要 EDA 供應商和半導體制造商加快硅光子工具的開發,以幫助將硅光子從實驗室研究轉變為商業現實。為了使硅光子學成為商業現實——同時還要處理摩爾定律對許多應用具有挑戰性的事實——設計團隊需要更加熟悉替代方案,例如 2.5D、封裝設計中的 CoWoS/系統,甚至 3D,以實現越冒險。
AI/ML 現在正在發生,通過一些獨創性和協作,我們可以利用 AI/ML 讓一切“更智能”更快——甚至是我們的 EDA 工具。我期待看到您在未來幾年將提供哪些更智能的創新。
Joseph Sawicki 是 IC 納米設計和制造挑戰方面的專家。Sawicki 以前負責 Mentor 的芯片設計產品,包括 Calibre 物理驗證和 DFM 平臺以及 Mentor 的 Tessent 設計測試產品線,現在負責管理 Mentor IC 部門的所有業務部門。