在變成大家看到樣子之前,開發人員所見到的GPU是什麼樣子的
寫在正文開始之前:本文所涉及一切資料皆為網上已公開資料,來源包括並不僅限於Nvidia Blog,ElectronicDesign。
最近工作之餘,看了一些有趣的公開資料。GPU與CPU作為人們日常生活中所能接觸到的最複雜的兩大IC,一定會有很多人和我一樣好奇GPU架構在功能,性能設計完成後,在變成大家所看到的晶元之前在開發人員的的眼中是什麼樣的。
在變成老黃手裡拿著的核彈之前,最完整的Nvidia最新一代GPU架構是運行在標題圖的emulator 上的。
更具體一些是長這樣的,圖為NVIDIA Emulation engineering team 所維護的秘密武器「Indus」——5年前曾是世界上最大的emulator。
作為一個全功能的新架構GPU,自然是可以在PC上的使用及測試的,但是這個龐然大物的功能僅僅是顯卡的GPU晶元,而顯卡上其他配件是沒有的。所以為了將其連接到電腦上需要用特製的線纜把GPU的針腳連接到顯卡上,此時新一代全功能新架構的核彈廠最新初代顯卡就誕生了。
不過別急著高興,即使運行在最新GPU頂配架構上,此時也不能暢玩3A大作。因為emulator是為晶元驗證測試而製作的,工作頻率遠低於已製成顯卡晶元的工作頻率,其用來玩遊戲的性能除了新特性支持更全外,大概遠不如你現在操作的電腦或者手裡的手機。
那能插在顯卡GPU插槽上變身次世代核彈的emulator到底是什麼?
Emulators are designed to provide an exact replica of actual hardware. (Software tools, in comparison, simulate or mimic what a particular piece of hardware will do.) When an emulator is plugged in to a PC, it』s exactly like placing a physical chip on the motherboard. From then on, chip designers can test away.
—— Nvidia Blog
Emulator是設計來提供一個複製品來描述實際硬體是怎樣的。把emulator煉乳計算機就像把一個物理晶元插在母板上一樣。從那之後晶元設計者們就可以開始測試了。
—— Nvidia Blog
隨著晶元集成度的增加,晶元變得愈來愈複雜,驗證的證的重要性逐漸增加。即使不考慮流片的金錢成本,重複流片導致的時間成本也足以讓競爭激烈的IC公司倒閉。所以現在一般在完成設計之後,流片之前有三種主流的模擬測試方式,分別是RTL軟體模擬、FPGA模擬和emulator。
RTL軟體模擬的特點是調試方便,易於使用,但是模擬速度最慢,目前基本在kHz級別。同時因為其本質是串列執行的,並不能真正的完美模擬實際工作情況。
FPGA模擬的速度較快,但是需要數周才能搭建測試環境,調試能見度也差,用來調試的效率低。
Emulator速度比RTL軟體模擬快好幾個量級,同時各種設計使得其調試方便程度遠高於FPGA模擬,唯一美中不足的是其昂貴的價格。
在遊戲玩家絲滑享受3A大作之前,GPU的設計者們要使用巨大且笨重且無比緩慢的模擬器進行開發和測試。所以好好珍惜遊戲中看到的畫面吧,也許僅僅那一幀畫面,NVIDIA的GPU Architect們需要通過等待一周的時間才能看到。
最後打一下廣告,上海深圳北京NVIDIA招人啦,包括ArchitectSoftwareHardware,包括社招應屆實習。可以私信或郵箱找我推薦,lqin@nvidia.com。
最後我們組在招實習生,想搶先體驗最新架構的核彈嗎,都等著你呢。
Reference:
[1]Sneak peek: inside nvidia』s emulation lab, NVIDIA BLOG.
[2]Hardware Emulation: A Weapon of Mass Verification,ElectronicDesign.
推薦閱讀:
※2017工作小感
※聊聊開工這一周
※寫程序得女友——日本OJ Paiza Online Hackathon小遊戲"戀愛SLG"題解
※校園訪問(一):UMich 密歇根大學
※浙江大學-數據結構-應用實例:最大子列和問題-1.3