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