文章图片
图4/17
TPU 是让 Google Tensor 被称为 Tensor 的地方 。 Google 已经用自研TPU 好几年了 , 在驱动层面 , Google 把 Tensor 的 TPU 称作 Edge TPU( 端侧边缘 TPU) 。 这是相当有趣的信号 , 因为它应该和 Google 2018 年发布的 Edge TPU 有关 , 后者是 Google 为边缘推理而设计的 ASIC 芯片(官网 cloud.google.com/edge-tpu) 。
当年的 Edge TPU 宣称在 2W 功耗下可以提供 4TOPS 的算力 , 但 Google 并未公布 Tensor 的 TPU 性能指标 , 但是在一些测试中可以看到它的最大功率是 5W 左右 。 因此如果它们确实是有关联的 , 考虑到这几年的制程和 IP 上的进步 , Google Tensor 的 TPU 性能应该有明显提升了 。
这个 TPU 是谷歌芯片团队的骄傲 , 它正在使用最新的机器学习处理架构 , 这个架构针对 Google 内部运行机器学习的方式进行过优化 , 并且表示它可以允许开发新的、独特的用例 , 这是 Google 做定制 SoC 的主要目标和出发点之一 。 在后面的测试中 , 这个 TPU 的性能指标确实也是令人印象深刻的 。 因为 TPU 的信息不多 , 我们只能基于它的驱动程序做简单猜测 , 它可能包含四核心的 Cortex-A32 CPU 。
其他模块
在媒体编码器方面 , Google Tensor 使用了三星的多功能编解码器(与 Exynos 系列同款) , 还有一个看起来像是用于 AV1 解码的自研 IP 块 。 这有点奇怪 , 因为三星的宣传中 , Exynos 2100 是有 AV1 解码功能的 , 而且这个功能貌似也在内核驱动程序里面 。 但在 Galaxy S21 系列中 , 这个 AV1 解码功能从未在 Android 的层面实现过 。
谷歌加入的这个专用的 AV1 解码器被他们称做“BigOcean” , 它能让 Android 系统具备 AV1 硬解能力 。 但非常奇怪的是 , 它真的就只负责 AV1 , 其他格式编解码还是由三星的 MFC 负责 。
Google Tensor 的音频子系统也不同 , Google 用自己设计的 IP 块代替了三星的低功耗音频解码子系统 , 它们可以在无需全部唤醒 SoC 的情况下进行低功耗的音频播放 。 我们认为这部分也是当协处理器用的 , 这也是 Google Tensor 和 Exynos 不同的地方 。
Google 还用了一种称为 Emerald Hill 的硬件内存压缩器 , 对内存页面进行 LZ77 压缩加速 , 反过来也可以用来加速交换中的 ZRAM 的卸载过程 。 现在还不确定 Pixel 系列是否已经启用这个模块 , 但能确认在“/sys/block/zram0/comp_algorithm”目录中有“lz77eh” 。 作为课外资料 , 三星早在 5 年前 , 就在 SoC 里集成了类似的硬件压缩 IP 模块 。 但出于某些原因 , 这些模块从未被启用过 , 也许是能效比并没有他们预想中的高 。

文章图片
图5/17
图源 PBKreviews
另外 , Google 还用三星的 Exynos 基带 , 做出了第一台非高通的毫米波手机 。 Pixel 6 系列用的是三星的 Exynos 5123 基带(译者:为遵循国内的习惯 , 这里把调制解调器称为基带) 。 三星在 2019 年就提到自己的毫米波射频和天线模块 , 说 2020 年会出现在量产机上(不知道当时是否计划让 Pixel 6 在 2020 年上市) 。 Pixel 6 系列的峰值速度可以达到 3200Mbps , 但很多测试中 , 它的网速只有高通产品的一半左右 。
虽然是同一个基带 , 但它不是像 Exynos 2100 那样集成在 SoC 里 , 而是外挂的 。 可能是因为 Google Tensor 的 GPU 和 CPU 规模太大了 , 而且 TPU 的规模也是未知数 。 毕竟就算是把基带外挂出去 , Google Tensor 的规模也是相当大了 , 即便是和对比 Exynos 2100 的情况下 。
总的来看 , Google 确实设计和定义了 Tensor, 同时有很多 Google 特有的设计 , 是整体的芯片上的差异化 。 但从更底层的角度看 , Tensor 和 Exynos 有很多共通之处 , 用了很多三星特有的基础模块 , 因此叫它“半定制”或许会更合适 。
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
