在1月22日于加州圣何塞舉行的下一次FPGA平臺活動上,英特爾 PSG CTO的Jose Alvarez概述了異構集成的三個層次。這是一個簡單的分類。首先,在芯片級(設備級)存在異構集成。其次,在系統級別存在異構集成。第三,軟件層面的異質性。所有三個層次的異質性導致了系統的可重構性。
第一層 芯片異構
芯片級別的異構性是設備包內部的異構集成,與芯片概念密切相關。我們正在建造更復雜的系統,更大的系統,用大的,單片半導體建造更大的系統是很困難的。大模的產量不如小?;蛐∑暮?。用更小的部件來建造這些系統更實用,更經濟。從系統的角度來看,我們可以使用晶片來做出更好的半導體設計決策,因為我們不必重新設計從一個半導體工藝節點到下一個的每個晶片。有些函數在其現有形式下工作得非常好。當新的技術節點上線時,沒有理由重新設計這些功能。
異構集成已經在生產中。這是一項非常重要的技術,英特爾致力于基于芯片的設計策略。例如,Intel®layx®10 FPGAs和Intel®Agilex™FPGAs是基于異構集成的,這些設備目前正在生產中。事實上,Intel的statix 10 FPGAs已經批量生產很多年了。
基于芯片的集成電路設計和制造允許英特爾構建具有硅證明功能的系統,包括高速串行收發器、內存接口、以太網和PCIe端口等。基于芯片的設計還允許Intel針對不同的工作負載開發目標體系結構,并使其更快地推向市場。
基于這些原因,英特爾正積極鼓勵開發基于chiplets的行業生態系統。我們有好幾種方法。例如:
無巧不成書的是,英特爾的創始人之一戈登·摩爾(Gordon Moore)在1965年發表了一篇題為《在集成電路中填入更多元件》的論文。“那是一篇很短的論文;只有四頁,包括圖片,它變得非常出名。這篇著名論文的第二頁有一段后來被稱為摩爾定律的陳述:
“最低零部件成本的復雜性以每年大約兩倍的速度增加。當然,在短期內,這一比率即使不會上升,也會持續下去。從長期來看,增長率的不確定性更大一些,盡管沒有理由相信它至少在10年內不會保持接近不變。”
摩爾的聲明預測了半導體技術的指數增長,這種增長現在已經持續了50多年,而不是10年!Moore論文的第三頁繼續提到,也許,使用集成到單個包中的較小組件來構建更大的系統會更好:
“事實可能會證明,用較小的功能構建大型系統更經濟,這些功能是分開封裝和相互連接的。”大型功能的可用性,再加上功能設計和構造,應使大型系統制造商能夠迅速和經濟地設計和構造各種各樣的設備。”
早在1965年,戈登·摩爾就知道芯片級別的異構集成將是一種前進的方式。這就是英特爾今天所做的:使用先進的封裝技術,將公司的所有技術集成到一個集成電路中。
第二個層次 系統異構
第二個異構集成級別是在系統級。我們生活在一個以數據為中心的世界。到處都是數據。英特爾在系統層面進行了大量創新,以應對海量數據。需要對這些數據做很多事情:移動它、存儲它、處理它。與這些任務相關的工作負載需要許多解決方案,Intel開發并制造了大量的設備來執行這些任務——cpu、gpu、asic、fpga——我們使用它們來構建異構系統。
這些不同的工作負載需要不同的處理架構。標量工作負載在cpu上運行良好。向量工作負載在gpu上運行良好。包括人工智能和機器學習在內的矩陣工作負載通常在特定于工作負載的asic上運行得最好。最后,最好在FPGA上運行空間工作負載。因此,讓所有這些異構體系結構都可用來為數據中心中的特定工作負載提供正確的體系結構非常重要。將cpu、gpu、fpga和專門的加速器結合在一起,可以讓Intel和它的客戶聰明而高效地解決問題。
第三個層次 軟件同質化
第三種異構集成是在軟件級別。這個很難。英特爾的方法被稱為oneAPI計劃,這是一個跨行業的、開放的、基于標準的統一編程模型,它解決了我們今天構建軟件的基本方式,類似于烹飪。在廚房里,你不會問廚師他們是否有一種特定的“制作”食物的方法。他們有許許多多使用工具的方法,選擇食材,準備食物,創造出無限豐富的食物。
類似地,我認為我們將來會繼續使用大量的編程和描述語言。開發人員看重的是一個單一的、統一的開發環境。這正是英特爾通過oneAPI計劃所追求的。這是視覺。這種設想解決了前面提到的四種工作負載類型:標量、向量、矩陣和空間。oneAPI計劃提供了一個抽象級別,因此,原則上,軟件開發人員可以在一個層中開發代碼,然后將該代碼部署到上面提到的許多處理體系結構中。
今天,這只是一個開始。英特爾幾周前剛剛宣布了開源oneAPI項目,同時發布了測試版產品Intel®oneAPI工具包。我們期待英特爾oneAPI工具包的開發將是一個漫長的過程,我們絕對理解我們正在進行的旅程。
今天,我們有數據并行c++和用于Intel oneAPI工具包的庫。數據并行c++集成了來自Khronos組的SYCL,支持數據并行和異構編程。Data Parallel c++允許開發人員基于熟悉的c++結構,使用“單源代碼”風格為異構處理器編寫代碼。
三種異構共存
在英特爾,我們知道這三個層次的異構性對整個行業非常重要。這就是為什么我們在芯片級別關注高級封裝技術,在系統級別關注多個處理架構,在軟件級別關注oneAPI和Intel oneAPI統一編程環境以及數據并行c++編程語言。英特爾認為,在新興市場——例如機器學習、人工智能和5G——需要在快速變化的接口和工作負載方面具有靈活性的地方,半導體是一個連續體。FPGA在這些市場的早期階段發揮了作用,因為它們具有極大的靈活性。
隨著這些市場的增長,為這些市場開發系統的公司通常會開發定制的asic。英特爾通過Intel®eASIC®結構化asic和全定制asic服務于這些市場,提供更低的功耗和更好的性能。隨著市場的成熟和生產量的增長,Intel的開發流程允許從FPGA到與pin兼容的Intel eASIC設備的平穩發展,并最終進入ASIC。
Intel eASIC設備在數據中心也能很好地工作,因為有特定工作負載的多個應用程序需要加速。利用FPGA實現的加速器設計可以成為基于Intel eASIC技術的芯片。與FPGA相比,該芯片速度更快,功耗更低,并且可以使用AIB或其他互連方法與其他設備集成到一個包中。
可編程解決方案組副總裁兼FPGA生態系統開發和運營總經理Lakecia Gunter說,所有這些都為FPGA擴展奠定了更廣闊的基礎。
“數據中心的FPGA加速的未來不僅僅是FPGA硬件供應商或云服務提供商的故事,而是一個生態系統的故事,”她說。
在Gunter看來,“生態系統對于數據中心FPGA的增長和采用至關重要。英特爾著手建立一個多樣化的生態系統,包括商業伙伴、開發者、研究和學術界,以及大大小小的ISV,以加速創新。該網絡允許合作伙伴在FPGA上優化他們的軟件,同時與英特爾的專家和關鍵渠道合作伙伴合作,在市場上大規模交付解決方案。向渠道合作伙伴、研究機構和學術界,以及英特爾自己的專家學習。”
作為這一過程的下一步,我們啟動了FPGA合作伙伴計劃,使我們的合作伙伴社區能夠利用英特爾提供的所有資源——技術培訓、產品開發、聯合營銷、聯合GTM和銷售,以及其他獎勵和獎勵。此外,oneAPI和現有的FPGA開發人員云將使我們能夠在FPGA上創建一個廣泛的開發人員生態系統。對于像Intel這樣的FPGA供應商來說,開發人員和通道合作伙伴是至關重要的,因為他們能夠將突破性的解決方案引入到現代數據中心的基礎設施中。"