處理器大神的逆轉局——Jim Keller自述芯片設計職業生涯
這是計算機歷史博物館(Computer History Museum,簡稱CHM)對Jim Keller的視頻採訪,採訪者爲Douglas Fairbair,Doug是CHM半導體組的負責人。在其 40 多年的硅谷職業生涯中,Doug擔任過多個工程和管理職位。1971 年,Doug從斯坦福大學獲得電子工程碩士學位後,就職於施樂帕洛阿爾託研究中心。1980 年,Doug協助創立了超大規模集成電路技術公司(VLSI Technology),並在那裡擔任負責ASIC開發的高級副總裁。1990 年,他創立了Redwood Design Automation並擔任首席執行官,該公司於 1994 年被Cadence收購。自 1998 年起,Doug以顧問和董事會成員的身份,爲多家公司提供服務。
因爲是圈內人,所以Doug對Jim的採訪駕輕就熟,雙方不需要鋪墊基礎知識,在這個一個多小時的採訪中,Jim完整講述了自己的職業經歷,從一個小時候有閱讀障礙,大學一開始也是普通學生的半學渣,到發現自己的職業興趣並開始努力學習,逐漸在職場嶄露頭角,Jim的主要工作經歷在DEC->AMD->SiByte(Broadcom)->P.A.Semi->蘋果->AMD->特斯拉->英特爾,到最後加入創業公司Tenstorrent,Jim的職業生涯經歷了美國處理器發展的幾個關鍵節點,例如從32位處理器向64位轉變,例如參與蘋果處理器的早期研發,例如全力投入RISC-V生態等,在不斷升級打怪過程中,Jim自己也成長爲處理器設計領域的大神。
以下是各節的視頻及簡介,感謝CHM對Jim的採訪。
第一節
從閱讀障礙到大學畢業
第一節:從閱讀障礙到大學畢業
Jim Keller是工程師父親+教師母親的家庭組合,其父母6個孩子中的老二,從小有閱讀障礙,小學二年級還不能閱讀,到三四年級才逐漸開竅。
高中畢業考到賓州大學,是因爲看到一個心儀的女孩子去了賓大,高中成績都是B,在大學裡一開始也延續這一優良傳統,修雙學位被哲學系主任給勸退,把精力集中在電子工程上以後,又一次開竅,成績從全B躍升到全A。IBM當時給賓大捐了一條2寸線,所以Jim在大學裡就開始自己製作晶體管了。不過那時候他的電磁場學得好,覺得自己會是一個RF工程師,第一份工作職位是邏輯電路設計工程師,但去了之後做的最多的工作是修電路板,修公司裡各種出了問題的電路板,這也讓Jim具備了極強的動手能力,以及對高速電路板的深刻理解。
在1982年(加入DEC的時間)以前,他就做了一塊40MHz的PCB。雖然一直在修電路板,但是這些技能卻也讓他誤打誤撞進入了DEC。
第二節
在DEC開始處理器研發工作
第二節:在DEC開始處理器研發工作
Jim憑藉開發電路板的能力進入了DEC。這一節是Jim在DEC的工作回顧,在DEC,他跟對了老闆,整個項目組都對這個勤學好問的小老弟有好感,在DEC他既做邏輯設計,又做板級開發,甚至還自己動手寫CAD工具。因爲CAD不是他的本職工作,所以只好晚上花時間來寫CAD。在DEC的各位技術大拿的帶領下,Jim成長很快。DEC當時開發的第一代Alpha(EV4)芯片,時鐘頻率166MHz-200MHz,比市場上其他處理器的速度快三四倍。Jim大概是從第二代Alpha芯片,也即代號EV5的項目,真正有所貢獻的。此後又完成了EV6的開發,到EV7流片時,他已經離開了DEC。
Jim談到的在DEC的幾個趣事:
爲了debug EV5,他們幾個核心組員在實驗室住了1年。
雖然最後量產的芯片性能表現優異。但作爲架構師,且參與了從寄存器級到板級開發任務的Jim,還是覺得這顆產品到處有bug,到處有妥協。
在開發EV6時,Jim同事的性能模型代碼量有三萬多行,但是這個同事說可以把代碼壓縮到1100行,然後Jim就做了一個1000行代碼的性能模型,並且運行得很好。最後那個同事才說,其實他並沒有做出1100行的性能模型,但他知道Jim有致命的好勝欲,所以被激將法觸動的Jim爆發出了強大的產出能力。
第三節
Jim初進AMD
第二節:Jim初進AMD
這一節主要是講述Jim在AMD的工作經歷。上節說到,Jim Keller追隨自己在DEC的上司跳到了AMD,在AMD,Jim參與了K7的開發,並主導了K8項目,Jim認爲,他的AMD的主要貢獻之一是合作制定了x86-64位規範以及HyperTransport 規範。Jim在AMD待了三年,然後就在互聯網泡沫期衝入了初創公司。
他在AMD幾個亮點:
Jim認爲AMD的286、386和486 basically were mask copies of Intel processors. 到K5纔有自己真正的設計。
K7大量借鑑了DEC EV6的設計
那個時代是美國處理器架構百花齊放的時期,Power、PA RISC和Sun等各領風騷
AMD的stand cell methodology 當時就很好了
第四節
SiByte與Broadcom
第四節:SiByte與Broadcom
這一節講述Jim加入創業公司SiByte,以及SiByte被Broadcom收購以後,在Broadcom工作的經歷。在1999年泡沫期,Jim離開AMD,追隨他的上司加入創業公司SiByte,該公司主要業務是網路專用處理器(network-oriented processor),用現在的術語那就是NPU,SiByte裡面源自於DEC的人很多,他們開發了PCIe PHY等技術。在SiByte,Jim開始接觸客戶,並享受與客戶的交流,通過和客戶交流,他能夠挖掘出客戶的真正需求,以及客戶正在做什麼產品。這段時間,Jim系統設計的能力得到了大幅提升,也認識到芯片規格制定要多與用戶交流,而不能閉門造車。
SiByte很幸運地在泡沫末期賣給了Broadcom(2000年11月),在Broadcom,Jim對Henry Samueli非常折服,Samueli才氣橫溢,狂傲不羈。
Jim 和Henry一起跑客戶,開始產品介紹由Jim來做,但是三天以後Henry忍不了就說我來吧,結果Jim發現Henry講得比他自己之前講的好太多。
採訪者問了一個有趣的問題,即大公司和小公司對Jim有何影響?Jim認爲,即使在DEC和AMD,雖然公司人很多,但他在的項目組人都不多,大概也就100多人。Jim說,在當時他有一個理論,而且有數據佐證,開發一個計算機(芯片)項目,400人需4年,300人需3年,200人需2年,100人需1年半。所以Jim當時的看法是,在基本人員數量之上,芯片開發並不是人越多時間就越少,實際上反而會因爲增加人手而降低效率,超過400人,甚至項目(因爲內部溝通合作之損耗)都無法完成。
所以,當時英特爾的Itanium項目有800人,而且按時完成了開發任務,曾經讓Jim驚歎不已。
當然,隨着芯片規模不斷加大,合理團隊規模還是擴大了,Jim二進宮AMD時,所在CPU團隊人數就超過了500人。
這一節其他幾個亮點:
Jim剛入行時處理器時鐘頻率是幾十到百兆赫,在博通第一次見到10GHz示波器時非常驚訝:最早做100MHz都很難,到現在10GHz都實現了。回顧這一路走來,Jim認爲工程師們創造了太多奇蹟, 將很多不可能變成可能。
Jim(2000年-2004年在Broadcom)問Henry Samueli,何時可實現Gbps無線網絡,Henry當時就給Jim演算起來,他通盤考慮了工藝進步、晶體管尺寸、封裝和所需資金,對Jim說,如果當下就想實現千兆無線網,要花1萬億美元,但如可以等五年,就只要花1000億美元。Henry預測5G在2018年可以實現,結果預言成真。
1980年代,摩爾定律還未人所皆知。但優秀人才通過優化各種因素,可用0.5微米工藝實現200MHz的處理器
第五節
P.A.Semi
第五節:P.A.Semi
這一節講的是Jim從Broadcom出來加入創業公司P.A.Semi的經歷。2004年,Jim加入P.A.Semi任工程副總裁,P.A.Semi在某種程度上來說,是SiByte人員的二次創業,SiByte的三位核心人員Dan Dobberpuhl, Amarjit Gill和Leo Joseph創立了P.A.Semi,Jim和另外五個人算是聯創。
P.A.Semi開發了一款處理器,採用亂序執行的 PowerPC 內核,在架構設計上更爲激進,能實現數據的流暢傳輸。爲了讓性能得以發揮,數據必須從 10 千兆端口流入,進入片上緩存或內存,無需再訪問主存就能完成處理,然後進行一些關鍵操作,再將其發送出去。所以,從架構角度來看,這是一款更具突破性的產品。在設計的某些方面,它劃分出了處理器區域、前端模塊、內存控制器、PCI Express 以及通用的網絡模塊,此外還有網絡加速模塊。我們打造的這款產品,有兩種投產方式。一種是作爲面向思科等企業的網絡處理器,另一種是將其作爲獨立產品,它本可以成爲蘋果個人電腦的組件。
在這款產品流片之後,Jim就加入了蘋果(2008年),不過他在蘋果的一次機會,促成了蘋果收購P.A.Semi。那時候三星在與蘋果合作開發一款1GHz運行頻率的Arm核處理器,當時的工程師搞不定,就來請教Jim,Jim說我已經在蘋果工作了,這個問題你可以請教P.A.Semi的Dan,Dan能夠幫你解決,Jim讓蘋果工程師去請教Dan是爲了給P.A.Semi找個大客戶。Dan弄清楚了情況之後,就直接給喬布斯打了個電話,說服喬布斯收購了P.A.Semi
第六節
蘋果處理器與喬布斯
第六節:蘋果處理器與喬布斯
這一節,是Jim在蘋果工作的經歷。又是他在DEC的老同事拉他進入蘋果。在這一節有蘋果芯片早期開發的趣事。蘋果第一代芯片的架構師,就像IP使用者,給大家的文檔就是一份IP清單,這份清單通過後交給三星,由三星集成開發生產出來,居然也能工作。不過,內存延遲嚴重,性能也弱,軟件幾乎難以運行,但軟件團隊的人很厲害,他們把 OSX 系統大力精簡後,讓其能在這款芯片上運行。通過對軟件進行優化並儘可能壓縮,軟件人員功力大增,後來他們得到更快的芯片時,軟件就能真正發揮了。Jim認同:iOS 和安卓最大區別在於,安卓被移植到芯片上時,手機芯片已經相當不錯,所以它從未像 iOS 那樣進行深度精簡。
Jim參與了 H2 項目,任H3項目的共同架構師,此後在H4、H5與H6的開發中也擔重任。當時的蘋果,在創新上非常激進,率先採用 64 位技術,率先實現高分辨率顯示屏。在 H4 芯片中,其集成的 GPU 規模是其他競品GPU 的五倍。這其中部分理念源自喬布斯和Mike Culbert。喬布斯認爲,要打造最出色的技術,就得用最好的組件;要做出最棒的產品,就要最先進的技術和最優質的組件。後來,蘋果團隊在涉足觸摸屏和視覺應用程序領域時,便大力投入到高分辨率、強大圖形處理性能等方面。
蘋果公司在芯片設計上的獨創性,在Jim看來,團隊新反而是好事。隨着蘋果設計團隊不斷壯大,成員來自五湖四海 :英偉達、英特爾、AMD以及一些小公司。他們在研究設計方法學時,並沒有因循守舊地沿用資深工程師過去一直在用的設計方法,而是思考 “從每個人所採用的不同設計方法中,能提煉出哪些最佳特性?” Jim一度覺得,蘋果公司或許擁有行業內最出色的設計方法,因爲團隊成員背景各異,想法層出不窮,有一種“混合優勢”。
Jim在蘋果公司工作時,與喬布斯直接交流的機會並不多,但Jim顯然也受到了喬布斯“超現實引力場”的影響,他十分細緻地觀察喬布斯的做事方法,Jim說喬布斯不會告訴員工具體怎麼做。他會說 “這是我想要的,你們能做到什麼程度?” 以及 “告訴我你們能做到什麼,然後咱們看看基於此能做出什麼成果。” 蘋果的公司文化,和Jim之前待過的DEC、AMD和SiByte都不一樣,那些公司的文化都如出一轍:“我們是優秀的工程師,知道如何製造電腦” 工程師文化。蘋果更像是秉持 “我想做這件事,然後我們要不遺餘力地去實現它” 的產品經理理念。
第七節
AMD二進宮
第七節:AMD二進宮
這一節Jim講述了二進宮AMD的經歷。這次還是離不開老同事的幫助,Jim在P.A.Semi的前同事Mark Papermaster後來也在蘋果與Jim共事,但Mark因“天線門” 被喬布斯解僱,之後就去了AMD。在Jim萌生去意時找了Mark,Mark便將Jim介紹給時任AMD CEO Rory Read,Jim很欣賞Rory,就二次加入AMD,Rory對Jim說:“我負責業務,你負責技術。我會確保公司資金不斷,但你得設計出好芯片。”Jim在AMD最開始的職位是彙報給Mark。
據Rory給Jim分享,AMD 的服務器業務,從Opteron處理器起步,市場份額從 0 增長到 35%,然後又跌回了 4% 左右,他問Jim爲什麼會這樣,Jim直言當時AMD產品不行,所以沒人買。
如第三節所講,Jim在第一段AMD工作時,和同事一起爲AMD打造了K6、K7及K8等優秀的處理器。Jim離開之後,AMD的研發人員想更進一步提高頻率,且又引入了大量定製設計,並採用了有問題的架構特性。結果後續的產品既沒有達成頻率目標,架構特性也不如人意。與此同時,AMD 在晶圓製造方面也困難重重,最終將這部分業務剝離出去,成立了Global Foundries。Jim說AMD“只能依靠二流的代工廠和二流的架構。所以,我被招來擔任 ‘Zen’ 架構的設計師,負責重建架構。”
在Jim看來,AMD當時的產品設計方法糟糕、團隊組織混亂、芯片架構也差勁。團隊還反饋給Jim說無法與英特爾競爭是因爲工藝製程跟不上英特爾。Jim則迴應,現在AMD芯片的IPC只有英特爾的一半,如果能在IPC上趕上英特爾,我就能讓AMD的工藝也和英特爾相當,如果IPC沒搞好,就別抱怨工藝不好。
在真正開展工作時,Jim告訴Rory準備停掉當時所有的項目,Rory支持了Jim的計劃,對Jim說你想怎麼做就怎麼做,不過他問Jim走上正軌要多久,Jim說要四年,Rory說我可能沒有那麼多時間,最終董事會對Rory失去耐心,Rory不得不離開AMD。
Jim在Rory支持下,對AMD產品線做了大刀闊斧的改變,他對指標要求嚴格,例如定指標時會提出芯片面積 10 平方毫米、功耗 5 W、頻率 3.5 GHz,但團隊成員會來求寬鬆,比如他們會說面積能做到 10 平方毫米,但頻率只能達到 3 吉赫茲。Jim對這種協商一般都是回答“沒門兒”。在Jim的推動下,新的芯片架構路線圖發展很不錯,不過他自己在不想離開卻不得不離開(或許因爲強硬的個性)AMD了。
Jim和Lisa Su共事約3年,Jim二進宮AMD時,Lisa Su恰好從飛思卡爾加盟AMD,並於2014年10月任AMD CEO,取代Rory,Jim在2015年9月離開AMD
第八節
特斯拉與馬斯克
第八節:特斯拉與馬斯克
這一節,Jim講述了自己在特斯拉的經歷。如上節所述,Jim最後在AMD的日子不是很開心,在他心生離意之後,之前在蘋果合作過的Doug Field等幾個前同事都慫恿他去特斯拉,在2015年前後,智駕概念還不像現在這麼普及,所以Jim剛聽到汽車會是一種計算平臺的觀點覺得很新奇,經過調研,他感覺智駕這條路線有潛力,而且當時Elon Musk也“小有名氣”,於是Jim在前同事安排下,參加了馬斯克親自出馬的面試。面試地點在SpaceX辦公室,Jim父親是某衛星項目總工程師,他小時候對火箭和衛星也很感興趣,有了這個基礎,兩人相談甚歡。Jim告訴馬斯克,他能在 18 個月內打造出一款用於汽車的大芯片,馬斯克貌似敷衍地回了句:“行。”在後來,Jim發現爲什麼馬斯克這樣回答,因爲他對芯片幾乎可以說是一竅不通。Jim原話這麼評價馬斯克在芯片方面的認知:對於很多芯片相關的內容,我需要向Elon解釋,他會很感興趣,但在這方面並沒有太多自己的想法。
當然,在系統集成上馬斯克有天才的直覺,Jim也對馬斯克的第一性原理推崇備至,他認爲,馬斯克對第一性原理的理解遠超世人。
說回Jim在特斯拉的工作,他主持開發了特斯拉Hardware 3硬件平臺的核心芯片,只花了18個月。當然,這離不開他從AMD拉來的幾位老同事的鼎力支持,Jim簽了35個IP授權協議, 用了14 個月時間完成芯片流片,製造時間花了4個月,再用2個月在樣片上跑軟件,這款芯片上車一共只花了20個月的時間。Jim對這款芯片非常自豪,他認爲這款芯片在其產品銷售的生命週期,即從2018年到2023年9月,都是全球最出色的智駕芯片。
在談及第二段在AMD工作經歷時,Jim就自認爲脾氣不大好,馬斯克又是強勢的人,因此兩個人在蜜月期之後的合作,自然免不了磕絆,這在Hardware 3開發階段就有端倪:馬斯克管理風格造成的特斯拉較高的人員流動率,給Jim的管理帶來了一定的麻煩。但Jim心生去意還是在Hardware 3量產後的空檔期,在Jim看來,第一代產品量產出貨了,就要準備第二代產品迭代,但馬斯克傾向於 “邁一大步,充分利用這次投入的成果,然後再邁一大步”的風格,所以從Hardware 3 到Hardware 4,在馬斯克的規劃中,是四五年才升級,這就相當於這四五年裡,Jim工作量不大,而到下一代準備要時,又要拼命衝刺。說實話,馬斯克的做法不太符合芯片規律,而Jim習慣的小步快跑、平穩迭代更適合芯片開發,於是Jim就又有了新下家。
第九節
英特爾
第九節:英特爾
Jim講述了在英特爾的經歷。他從技術人員視角,道出英特爾衰落的一個因素:因循守舊——當然這是所有行業老大都可能會犯的錯誤。
回到Jim的講述。英特爾邀請他擔任高級副總裁,負責芯片工程團隊,Jim覺得很棒,因爲英特爾擁有最出色的工藝,還有一大堆先進技術。
內心充滿希望的Jim本想帶人着手研發下一代高端服務器,但幾乎什麼都沒幹成,他在英特爾的歲月,都陷在內耗中了。之前,Jim所在團隊最大規模也就2500人,而在英特爾,Jim那個業務組有 1 萬人。但後來Jim逐漸發現,英特爾當時技術雖領先,但也受困於老舊的CAD和過時的設計流程。Jim的任務似乎從開發新技術變成了 “要如何對這麼大的一個組織進行重新規劃,使其正確定位?”
英特爾也發現了問題,也嘗試調整。比如當時,其客戶端產品CPU 團隊、內存控制器團隊、PCIe團隊都歸同一個人領導,大家協同工作,打造同一款產品。後來,時任執行副總裁Murthy Renduchintala(從高通過來)說 “我們要成立 IP 團隊、SoC 團隊和 CPU 團隊”,就把原來團隊拆了。但並沒有重構好。比如,IP 團隊算不上真正的 IP 團隊,更個設計小組,把設計成果交給 SoC 團隊,再由 SoC 團隊測試。所以,英特爾的轉型大都處於這種半吊子狀態。
Jim面臨的挑戰是 “如何重新規劃並解決 CAD 問題?”有一次 Jim接到Aart de Geus(時任新思科技CEO)的電話,他問:“(你們)以色列團隊正在使用我們的新 CAD ,你們還在搞毛?” 我說:“太多爭論了。”可見Jim在英特爾推行新設計方法學困難重重,他原話如下:那些人都很厲害。他們打造出了全球最出色的設計流程,並沿用了 25 年。但世界已經向前發展,變革即將到來, 有人會說 “我們已經準備好了”,但也有些人對此反應很大。要知道,工程師可是花了一輩子心血打造這些流程。
採訪者直接問Jim,你是因爲要管理一萬名員工感到疲憊不堪而離開?Jim回答不是。他認爲英特爾需要進行的調整,比CEO所設想的要大得多。Jim其實挺欣賞時任CEO Bob Swan,他說:“我們曾是同事,但對於需要做的事情,我倆願景天差地別,但我沒有感到疲憊不堪。”
其實真正讓他離開的還是與CEO在關鍵決策上的不一致。Jim說他意識到得與公司的最高決策一致,不能在開會的時候不能在開會時說 “我們需要這麼做”,結果別人迴應 “CEO說的恰恰相反”,Jim回憶起在AMD時Rory對他言聽計從的美好往事還唏噓不已。
第十節
Tenstorrent
第十節:英特爾
Tenstorrent 這一節就是Jim創業的經歷了。在特斯拉失意之後,Jim對自己職業生涯的規劃,放在了去初創公司或者自己創業上,最終他加入自己投資的Tenstorrent,做CTO,但之後又成爲該公司的CEO,終於補上了創業經歷。
本節的幾個亮點:
Jim認爲,很多創業公司都有可能有不錯的技術或產品構思,但創業公司要想真正成長起來,只有技術與創意是不夠的,需要極強的工程化能力,確保交付的產品能夠爲客戶搜需要。這也是Jim帶給Tenstorrent的價值。
本市場焦點都被英偉達等巨鱷所在千億美元市場所吸引,但但實際上,到處都有數十億美元規模的業務。英偉達對一個年採購額100萬美元的新客戶不會投入精力,但Jim會,Jim認爲,找到10個百萬美元採購額的客戶,就組成了實打實的千萬美元銷售額,
Jim在SiByte 設計芯片的時候,他們公司一度有 上百個設計方案,後來SiByte被Broadcom收購,其中一些芯片成爲Broadcom相當重要的產品線,但一開始根本看不出哪些設計會脫穎而出。
把自己的軟件開源爲Tenstrorrent開闢了一個極佳的招聘渠道,很多人在開源社區看到Tenstorrent的代碼,拿過來用,這些研究過Tenstorrent代碼的人,有些就跑過來應聘。Jim說:“我們不是行業巨頭,不搞專有技術,秉持開放的態度,所以能接觸到巨頭們接觸不到的各類人才。”
採訪者問Jim對員工靈活辦公的看法,Jim也真實表達了一個老闆該有的看法
第十一節
個人與家庭
這是本次採訪的最後一段,有關Jim的個人與家庭。Jim結婚很晚,在40歲生日宴上遇到了自己朋友的妹妹,兩人一見鍾情,於是結婚,很快生下兩個孩子,一個大二,一個2024年秋季入大學。
Jim喜歡舉重和滑雪,不再跑步是因爲他的膝蓋壞掉了。在膝蓋壞掉之前,Jim也是跑者,他跟採訪者開了一個玩笑,說有一次認識了兩個老年跑者,Jim就問這兩個人打算跑到什麼時候,其中一個說我要早點退跑,我準備80歲以後就不跑了。從這個笑話來看,Jim對他的膝蓋還是有點意難平。
Jim是喜歡讀書的,不忙的時候一週可以看好幾本書。採訪者問Jim有沒有從之前共事過的CEO那裡習得管理經驗,Jim又說了個笑話,他說在AMD時他問過周邊的高管,讀過幾本管理方面的書籍,20多個人的回答,平均值接近0。而那時候Jim已經看了20多本管理類的書,以一己之力拉高了平均數。
不過Jim還是點了幾個他認爲很優秀的管理者,Doug Fields,管理方式受人喜歡,也照顧自己的組員;Bob Mansfield,極其聰明,下屬很難糊弄他;Elon Musk,但Jim認爲Elon的管理天分是天授的,很難習得。
注:準備這篇文章才知道,一篇公衆號文章,最多隻能插入10個視頻號視頻的鏈接,奇怪的知識又增加了。所以不是最後一個視頻我們忘記加了,而是系統限制我們加不了。