《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > EDA與制造 > 業(yè)界動(dòng)態(tài) > 深度解構(gòu)谷歌首款自研手機(jī)芯片

深度解構(gòu)谷歌首款自研手機(jī)芯片

2021-11-03
來源:半導(dǎo)體行業(yè)觀察
關(guān)鍵詞: 谷歌 手機(jī)芯片

  自 Google 正式發(fā)布Pixel 6 和 Pixel 6 Pro 形式的最新旗艦設(shè)備以來,,已經(jīng)過去了大約兩周時(shí)間,。這兩款新 Pixel 手機(jī)無疑是自 Pixel 系列推出以來,谷歌最大的一次轉(zhuǎn)變,,它們基本上展示了設(shè)備各個(gè)方面的重大變化,。準(zhǔn)確來說,,其實(shí)除了 Pixel 名稱之外,谷歌的新旗艦與它們的前輩幾乎沒有什么共同之處,。

  這些手機(jī)采用全新的顯示屏,、攝像頭系統(tǒng)、機(jī)身設(shè)計(jì)和內(nèi)部硬件,,價(jià)格看似極具競爭力,,這讓該系列手機(jī)有了一個(gè)非常好的新開端。

  其中,,最大的變化之一,,也是我們的讀者最感興趣的變化之一,那就是 Pixel 6 和 Pixel 6 Pro 由谷歌自己的“Tensor”SoC 賦能,。人們對(duì)tensor究竟是一個(gè)怎樣的存在也有相當(dāng)多的困惑,。谷歌解釋說,Tensor 是谷歌尋求支持新型工作負(fù)載的旅程的開始,,用公司的話來說,,這是“標(biāo)準(zhǔn)”商用芯片解決方案根本不可能或無法實(shí)現(xiàn)的?;诠狙芯慷嗄甑臋C(jī)器學(xué)習(xí)經(jīng)驗(yàn),,谷歌打造了一款專注于 ML ,并以其為其主要差異化功能的芯片,,據(jù)說它允許 Pixel 6 手機(jī)擁有許多獨(dú)有的新獨(dú)特功能,。

  今天,我們將仔細(xì)研究 TensorSoC,。這包括嘗試記錄它的確切組成,,展示市場上其他 SoC 之間的差異或相似之處,以及更好地了解Google 已將哪些類型的 IP 集成到芯片中以使其獨(dú)一無二并保證將其稱為 Google SoC,。

  芯片出處

  根據(jù)谷歌自己的材料,,Tensor 是由谷歌公司自主設(shè)計(jì)的一款 SoC。雖然這一切的真相會(huì)因您對(duì)“設(shè)計(jì)”的定義而不同,,但我們可以看到,,該芯片遵循 Google 和三星 LSI 之間看似密切的合作,在此過程中也模糊了傳統(tǒng)定制設(shè)計(jì)和半定制設(shè)計(jì)之間的界限,。

  從最高級(jí)別開始,,我們有 SoC 的實(shí)際名稱?!肮雀鑄ensor”比較抽象,,目前官方?jīng)]有給這款芯片貼上具體的型號(hào)。因此,下一代是否會(huì)推出“Tensor 2”或其他產(chǎn)品還有待觀察,。在內(nèi)部,,Google 稱該芯片為“GS101”,雖然我在這里不完全確定 GS 代表什么,,但很可能是 Google SoC 或 Google Silicon,。很長一段時(shí)間以來,我們還聽到了“Whitechapel”的報(bào)道,,但我們不能確認(rèn),。

  在硅片方面,該芯片有另一個(gè)型號(hào),,SoC的融合芯片標(biāo)識(shí)遵循三星的 Exynos命名方案,。在這里,我們發(fā)現(xiàn)芯片的 ID為“0x09845000”,,它對(duì)應(yīng)于 S5E9845(編輯:它實(shí)際上是 S5P9845),。三星最新的 LSI SoC 是 Exynos 2100,標(biāo)識(shí)為 S5E9840,。

  為什么 Google SoC 會(huì)遵循 Exynos 內(nèi)部命名方案,?這就是我們可以開始看到設(shè)計(jì)的一些出處的地方。一段時(shí)間以來,,廣泛報(bào)道稱,,幾年前,三星向半定制硅設(shè)計(jì)產(chǎn)品敞開了大門,。2020年八月,,ETNews也詳細(xì)地描述三星的業(yè)務(wù)計(jì)劃,,以及它如何涉及到谷歌的芯片(以及描述思科的design win):

  具體而言,,三星不是簡單地作為一個(gè)純粹的合同制造商,而是作為一個(gè)完全參與硅設(shè)計(jì)的一方,。這在很大程度上可以與 ASIC 設(shè)計(jì)服務(wù)相提并論,,除了三星也是商業(yè) SoC 供應(yīng)商和芯片制造商之外,這在行業(yè)中是非常獨(dú)特的,,因此屬于特殊情況,。

  現(xiàn)在有了芯片,并且對(duì)它的特性有了開源洞察,,我們可以開始分解 Google Tensor 到底是什么:

  類似的設(shè)計(jì),?

  在 SoC 的基本構(gòu)建中,Google Tensor 緊跟三星的Exynos SoC 系列,。除了人們傾向于在 SoC 中談?wù)摰某R姼呒?jí)模塊(例如 CPU,、GPU、NPU 和其他主要特性)之外,還有芯片的基礎(chǔ)模塊:這些是結(jié)構(gòu)模塊和 IP,,時(shí)鐘管理架構(gòu),、電源管理架構(gòu),以及將這些部分實(shí)現(xiàn)到實(shí)際芯片中的設(shè)計(jì)方法,。在紙面上,,三星 Exynos、聯(lián)發(fā)科天璣或海思麒麟,,甚至高通驍龍(在 CPU 方面)可能在規(guī)格方面具有相似的設(shè)計(jì)——具有相同的高級(jí) IP,,例如 Cortex CPU 或 Mali GPU來自 Arm——由于底層 SoC 架構(gòu)非常不同,這些芯片最終仍會(huì)表現(xiàn)不同,。

  Tensor則將其設(shè)計(jì)建立在三星在其 Exynos SoC 上使用的 IP 基礎(chǔ)上,,利用相同的時(shí)鐘管理和電源管理架構(gòu)。在 IP 層次結(jié)構(gòu)中,,我們發(fā)現(xiàn)高級(jí) IP 模塊之間的其他相似之處,,例如內(nèi)存控制器、結(jié)構(gòu) IP,、用于各種面向外部的接口的 PHYIP,,甚至更大的 IP 功能塊,例如 ISP 或媒體解碼器/編碼器,。有趣的是,,這些東西現(xiàn)在可以公開審查,并且可以在結(jié)構(gòu)方面與其他 Exynos SoC 進(jìn)行 1:1 的比較,。

  這使得我們對(duì) Google 聲稱 Tensor 是他們自己的設(shè)計(jì)這一說法表示懷疑你——這在一定程度上是正確的,,但根據(jù)您對(duì)“設(shè)計(jì)”的定義以及您想要進(jìn)行的深入程度,其真實(shí)性可能會(huì)有所不同,。盡管 Tensor/GS101 建立在 Exynos 基礎(chǔ)模塊和 IP 之上——甚至可能被三星集成和流片——但 SoC的定義是在谷歌的控制之下完成,,因?yàn)檫@是他們的產(chǎn)品。雖然在 Tensor 的基礎(chǔ)和最低層塊方面與 Exynos2100 非常相似,,但在結(jié)構(gòu)和內(nèi)部互連方面,,谷歌的設(shè)計(jì)卻有所不同。這意味著各種 IP 塊如何相互交互的蜘蛛網(wǎng)(spiderweb)與三星自己的 SoC 不同,。

  這方面的一個(gè)實(shí)際示例是如何將 CPU 內(nèi)核集成到 SoC 中,。雖然在 Exynos 2100 上,CPU 集群似乎非常明顯地位于更小,、更明確的三星相干互連中,,但 Tensor SoC 將 CPU 集群集成在更大的 CCI 中,這似乎是一種非常不同的互連設(shè)置配置,,或者是一個(gè)完全不同的IP,。與此同時(shí),,仍有一些相似之處,例如將一條主要的內(nèi)存流量總線連接到內(nèi)存控制器,,并將另一條流量較低的“內(nèi)部”總線連接到其他 IP,,這就是 Exynos SoC 傾向于分離事物的方式。應(yīng)該可以對(duì) SoC 進(jìn)行更詳細(xì)的逆向工程和映射,,但這是一件非常耗時(shí)的事情,,超出了本文的范圍。

  CPU 設(shè)置:2x X1 + 2x A76 + 4x A55

  雖然我們可以繼續(xù)討論 SoC 架構(gòu),,但讓我們暫時(shí)停止討論,。我們從 CPU 集群開始,深入探討 Tenor SoC 更明顯和更實(shí)際的差異,。

  Google 的 CPU 設(shè)置與其他 SoC 不同,,因?yàn)樗哂?2+2+4 配置。雖然這并不是真正的例外——因?yàn)槿菍?duì) Exynos 9820 和 Exynos 990 也采用了同樣的設(shè)置——但 Tensor 上的 X1+A76+A55 配置目前在市場上是獨(dú)一無二的,。大多數(shù)其他供應(yīng)商和實(shí)現(xiàn)已經(jīng)轉(zhuǎn)移到 1+3+4 的大 + 中 + 小 CPU 配置,。

  在 Cortex-X1 方面,谷歌使用一對(duì)核心意味著,,理論上,,具有兩個(gè)重線程的芯片的性能應(yīng)該高于任何其他只有一個(gè)大性能核心的 Android SoC。X1 對(duì)的頻率為 2.8GHz,,略低于 Snapdragon 888 的 2.86GHz 和 Exynos 2100 X1 內(nèi)核的 2.91GHz,。谷歌為內(nèi)核配備了完整的 1MB 二級(jí)緩存,類似于 S888,,這個(gè)參數(shù)是 E2100 配置的兩倍,。

  至于中間核心,谷歌采用了Cortex-A76核心,,這一直是一個(gè)熱門話題,。乍一看,考慮到 Cortex-A77 和 A78 都提供更高的性能和更高的能效,,這似乎有點(diǎn)不合理,。內(nèi)核的時(shí)鐘頻率為 2.25GHz,,并帶有 256KB 的 L2,。我們還沒有從谷歌那里得到關(guān)于他們?yōu)槭裁词褂?A76 的明確解釋,但我認(rèn)為很可能在設(shè)計(jì)芯片時(shí),,三星沒有準(zhǔn)備好集成更新的 IP,。該芯片已經(jīng)醞釀了一段時(shí)間,雖然它確實(shí)具有 X1 內(nèi)核,,但也許在這個(gè)過程中轉(zhuǎn)移到更新的中間內(nèi)核為時(shí)已晚,。我不認(rèn)為使用 A76 內(nèi)核而不是 A78 是有目的的選擇,,因?yàn)檎缥覀儗⒃谖覀兊男阅芑鶞?zhǔn)測試中看到的那樣,舊的設(shè)計(jì)表現(xiàn)不佳,。

  在小核心上,,有 4 個(gè) 1.8GHz 的 A55 核心。與三星自家的 Exynos 芯片相比,,谷歌決定為內(nèi)核配備 128KB 的 L2 緩存,,而不僅僅是 64KB,因此它們更符合驍龍 888 的配置,。谷歌的一個(gè)奇怪選擇是集群的 L3 緩存與 A55 內(nèi)核在同一時(shí)鐘平面上,,這會(huì)影響延遲和功耗。這也與我們?cè)?Exynos 2100 上看到的專用 L3 時(shí)鐘平面不一致,。

  另一個(gè) Fat MaliGPU:高時(shí)鐘的G78MP20

  早些時(shí)候關(guān)于 SoC 的傳言表明它將配備 Mali-G78 GPU,,但我們不知道該設(shè)計(jì)的確切核心數(shù)或時(shí)鐘。谷歌此后確認(rèn)了其 MP20 配置,,這是第二大的Mali GPU 配置,,僅次于麒麟 9000 及其龐大的 24 核單元。我最初的理論是,,Google 可能會(huì)以低頻率運(yùn)行 GPU 以優(yōu)化能效,,但最終我震驚地發(fā)現(xiàn)他們?nèi)栽谝?848MHz 的峰值時(shí)鐘速度運(yùn)行 GPU,用于著色器內(nèi)核,,和 996MHz 為 tiler 和 L2,。如果我沒記錯(cuò)的話,GoogleTensor 似乎是第一個(gè)確認(rèn)的 G78 實(shí)現(xiàn),,實(shí)際上利用了 Arm 對(duì) G78 的分離時(shí)鐘平面設(shè)計(jì),,

  實(shí)際頻率非常高。Exynos 2100的 G78MP14 已經(jīng)運(yùn)行在 854MHz,,我們認(rèn)為這是一款峰值功率非常高的芯片,;但在這里,谷歌增加了 42% 的內(nèi)核,,并且不會(huì)降低頻率,。因此,就 GPU 峰值功率而言,,這是非常令人擔(dān)憂的問題,,我們將在后面的 GPU 評(píng)估部分中看到這些問題。

  LPDDR5,,8MB SLC 緩存

  GoogleTensor 上的內(nèi)存控制器似乎與 Exynos2100 上的相同,,在 4x 16 位通道配置中支持LPDDR5,總峰值理論帶寬為 51.2GB/s,。

  Google 還集成了 8MB 的系統(tǒng)緩存,,對(duì)我來說,,這是否與三星在 Exynos 2100 上使用的 IP 相同并不清楚??雌饋硭鼈兌际?8MB,,但我傾向于說這是不同的 IP,或者至少是 IP 的不同版本,,因?yàn)樗募軜?gòu)方式和行為方式存在一些真正的差異,。

  谷歌在這里非常廣泛地使用 SLC 來提高 SoC 塊的性能,包括他們自己的自定義塊,。SLC 允許對(duì)自身進(jìn)行分區(qū),,并將 SRAM 區(qū)域?qū)S糜?SoC 上的特定 IP 塊,使它們能夠在不同的用例情況下獨(dú)占訪問全部或部分緩存,。

  自定義混合 ISP pipeline

  通常當(dāng)人們或公司談?wù)?SoC ISP 時(shí),,它們總是被描述為單個(gè)單片 IP 塊。實(shí)際上,,我們所說的“ISP”是不同專用 IP 塊的組合,,每個(gè)塊在我們所說的成像pipeline中處理不同的任務(wù)。這里的 Google Tensor 很有趣,,因?yàn)樗捎昧巳窃谄?Exynos 芯片上使用的零碎部分,,并將定制的 Google 開發(fā)的塊集成到pipelline中——這實(shí)際上是 Google 在他們的 SoC 演示中談到的。

  成像系統(tǒng)使用與 Exynos 成像流水線相對(duì)應(yīng)的 IP 塊,,例如像素相位檢測處理單元,、對(duì)比度自動(dòng)對(duì)焦處理單元、圖像縮放器,、失真校正處理塊和視圖相關(guān)的遮擋紋理功能處理塊,。這里缺少的是缺少其他一些處理塊,我認(rèn)為這與三星使用的更多后處理計(jì)算塊有關(guān),。

  谷歌在ISP鏈上開發(fā)的IP塊似乎是他們自己的3AA IP(Auto-Exposure,,Auto-White Balance,Auto-Focus),,以及一對(duì)定制的時(shí)間降噪IP塊,,能夠?qū)R和合并圖像。這些可能是谷歌在說他們開發(fā)的塊有助于加速他們用作 Pixel 系列計(jì)算攝影的一部分的圖像處理類型時(shí)所談?wù)摰淖远x塊,,并且無可爭議地代表了圖像處理管道的非常重要的部分,。

  Google 的 edgeTPU :讓Tensor成為Tensor

  到目前為止,很明顯,,谷歌 Tensor的核心話題一直是它的 TPU——或者說它的 Tensor 處理單元,。顧名思義,TPU 是谷歌開發(fā)的定制 IP 塊,,該公司已經(jīng)研究了幾年,。到目前為止,谷歌只是將其稱為 Tensor SoC 內(nèi)的 TPU,,但在驅(qū)動(dòng)程序級(jí)別,,該公司將該塊稱為“edgeTPU”。這很有趣,,因?yàn)樵搲K與ASIC“Edge TPU”相關(guān)的信號(hào)谷歌早在 2018 年就宣布了這一點(diǎn),。該分立芯片曾以 4 TOPs 的處理能力和 2 瓦的功率做廣告,雖然谷歌沒有在 Tensor 內(nèi)的 TPU 上宣傳任何性能指標(biāo),,但有條目展示了這個(gè)塊高達(dá) 5W 的功率,。因此,如果兩者確實(shí)相關(guān),,那么鑒于顯著的工藝節(jié)點(diǎn)優(yōu)勢和整體更新的 IP,,Tensor TPU (sic) 的性能數(shù)據(jù)應(yīng)該非常重要。

  該模塊是 Google 芯片團(tuán)隊(duì)的驕傲,,它告訴我們它使用最新的 ML 處理架構(gòu),,該架構(gòu)針對(duì) Google 的研發(fā)團(tuán)隊(duì)在公司內(nèi)部運(yùn)行機(jī)器學(xué)習(xí)的方式進(jìn)行了優(yōu)化,并承諾允許開辟新的以及獨(dú)特的用例,,這些用例是最初制作定制 SoC 的主要目標(biāo),。稍后我們將在更側(cè)重于 Pixel 的評(píng)論中討論產(chǎn)品端用例,但 TPU 的性能指標(biāo)確實(shí)令人印象深刻,。

  TPU 塊似乎也帶有某種被 Google 稱為“GSA”的塊,。這只是我基于驅(qū)動(dòng)程序的推測,但這似乎是某種負(fù)責(zé)操作 TPU 固件的控制塊,,我認(rèn)為包含一個(gè)四核 Cortex-A32 CPU 設(shè)置,。

  媒體編碼器,其他東西

  在媒體編碼器方面,,Tensor SoC 使用三星自己的多功能編解碼器 IP 塊(與 Exynos 系列上使用的相同)以及似乎是專用于 AV1 解碼的 Google IP 塊?,F(xiàn)在這有點(diǎn)奇怪,因?yàn)槿谴_實(shí)宣傳 Exynos 2100 具有 AV1 解碼能力,,而且該功能似乎確實(shí)存在于內(nèi)核驅(qū)動(dòng)程序中,。然而,在 Galaxy S21 系列上,,此功能從未在 Android 框架級(jí)別上實(shí)現(xiàn),。我在這里沒有很好的解釋為什么 - 也許 IP 不能與 AV1 一起正常工作。

  該公司稱之為“BigOcean”的谷歌 IP 塊是一個(gè)專用的 AV1 解碼器,,這實(shí)際上將 AV1 解碼能力暴露給了 Android 框架,。這里非常奇怪的是,它所做的只是 AV1——其他格式的所有其他編碼和解碼都留給了三星 MFC,。這是一個(gè)有趣的情況,,我想知道下一代 SoC 的發(fā)展方向,。

  Tensor SoC 的其他差異是例如音頻子系統(tǒng)。三星的 SoC 低功耗音頻解碼子系統(tǒng)被谷歌自己的塊設(shè)計(jì)所取代,,我沒有過多地討論它,,但通常兩個(gè)塊都有相同的任務(wù),即允許低功耗音頻播放而無需喚醒大部件SoC 的,。我認(rèn)為這個(gè)塊(或 GSA)也負(fù)責(zé)作為傳感器數(shù)據(jù)聚合的永遠(yuǎn)在線的上下文中心,,這里的 Tensor 使用谷歌的 IP 和做事方式,而不是同一塊的 Exynos 變體,。

  谷歌還采用了一個(gè)名為 Emerald Hill 的塊形式的固定功能硬件內(nèi)存壓縮器,,它為內(nèi)存頁面提供 LZ77 壓縮加速,并且可以反過來用于加速交換中的 ZRAM 卸載,。我不確定 Pixels 目前是否開箱即用,,但應(yīng)該能夠通過在

  /sys/block/zram0/comp_algorithm 中看到“l(fā)z77eh”來確認(rèn),如果有人能夠讀出它,。

  有一個(gè)軼事,,早在 5 年前,三星就將類似的硬件壓縮 IP 模塊集成到他們的 SoC 中以完成相同的任務(wù),,但由于某種原因,,這些模塊從未被用于出貨設(shè)備。也許能源效率并沒有像他們想象的那樣成功,。

  外置 Exynos 調(diào)制解調(diào)器:第一款非高通毫米波手機(jī),?

  由于它是手機(jī) SoC,因此 Tensor 自然需要某種蜂窩連接,。這是谷歌依賴三星的另一個(gè)領(lǐng)域,,使用該公司的 Exynos 調(diào)制解調(diào)器 5123。但是,,與 Exynos 2100 及其集成調(diào)制解調(diào)器不同,,Tensor 使用獨(dú)立的外部變體。至于為什么它是獨(dú)立的,,很可能是由于具有巨大的 GPU,、更大的 CPU 設(shè)置(兩個(gè) X1 具有完整的 1MB L2)以及未知的 TPU 大小,Tensor 芯片即使與 Exynos 2100 相比也相當(dāng)大,。

  我這邊的另一個(gè)理論是,,谷歌仍會(huì)以某種方式在美國網(wǎng)絡(luò)上與高通聯(lián)系在一起——無論是 CDMA 還是毫米波 5G 連接。令人驚訝的是,,情況似乎并非如此,,因?yàn)?Pixel 6 系列在全球范圍內(nèi)隨附了 Exynos 調(diào)制解調(diào)器。這使得 Pixel 6 系列特別有趣,因?yàn)檫@似乎是第一個(gè)非高通毫米波實(shí)現(xiàn),。作為參考,,三星曾談到他們的毫米波 RFIC 和天線模塊早在 2019 年就表示有計(jì)劃 2020 年推出的設(shè)備。這是否意味著從 2020 年開始的設(shè)計(jì)(Pixel 6 系列將是)或商業(yè)可用性當(dāng)時(shí)尚不清楚,,但似乎這些是第一款采用該解決方案的商用手機(jī),。我不希望再過幾年在這里為自己提供毫米波覆蓋,,但第三方報(bào)告顯示這款手機(jī)的速度高達(dá) 3200Mbps,,而其他現(xiàn)場測試顯示高通設(shè)備實(shí)際速度的一半左右。我希望在接下來的幾周和幾個(gè)月里,,更多的人將有機(jī)會(huì)深入了解調(diào)制解調(diào)器的性能特征,。

  總的來說,谷歌 Tensor 最終幾乎與我們預(yù)期的芯片完全一樣,,這是谷歌和三星合作的最早報(bào)道,。是谷歌芯片嗎?是的,,他們?cè)诙x它的意義上設(shè)計(jì)了它,,同時(shí)還創(chuàng)建了許多谷歌獨(dú)特的塊,這些塊是芯片差異化不可或缺的一部分,。

  它是三星 Exynos 芯片嗎,?同樣是的,從更基礎(chǔ)的 SoC 架構(gòu)級(jí)別來看,,Tensor 與三星的 Exynos 設(shè)計(jì)有很多共同點(diǎn),。

  在 Tensor 的幾個(gè)領(lǐng)域,有三星設(shè)計(jì)獨(dú)有的架構(gòu)和行為元素,,在其他任何地方都找不到,。為此,將 Google Tensor 稱為半定制設(shè)計(jì)似乎非常適合它的本質(zhì),。也就是說,,讓我們看看Tensor 的行為方式——以及它在性能和效率方面的表現(xiàn)。




電子技術(shù)圖片.png

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。