树莓派偷偷换上新 SoC,解决了 RAM 寻址问题

近日,国外一位名叫 Jeff Geerling 的开发者购买了一块新的 Raspberry Pi 4 Model B,无意间发现树莓派在该型号上“偷偷”换上了新的 SoC,解决了两个此前存在的 RAM 处理有关的问题。

Jeff Geerling 在个人博客中表示:“由于我用于测试的 Raspberry Pi 4 Model B 发生了故障,我不得不去买一个新的 Raspberry Pi 4。当地的经销商「Micro Center」只有 8GB 型号的库存,在我购买后经过检查发现该型号所搭载的博通 SoC 跟以往的型号有一些不同之处。”(如下图)

树莓派偷偷换上新 SoC,解决了 RAM 寻址问题

你能发现它的不同之处吗?这块 Raspberry Pi 4 Model B 上的 BCM2711 芯片的型号是 2711ZPKFSB06C0T,与 Raspberry Pi 400 上的芯片相同。

而 Raspberry Pi 4 Model B 最初所采用的芯片型号为 2711ZPKFSB06B0T,区别在于倒数第三个字符,即 C 与 B 的区别。

至于 Raspberry Pi 4 Model B 到底是何时换上了这个新款 SoC,目前并没有一个官方的说明。但根据目前 Twitter 网友 Lucas 的评论来看,他在今年一月购买的 8GB 型号上并没有采用新款 SoC,而在四月购买的 2GB 型号上反而使用了。

树莓派偷偷换上新 SoC,解决了 RAM 寻址问题

识别树莓派上的步进等级

如果你想知道你的树莓派上是否采用了更新的 BCM2711 SoC,那么有以下两种方法:

树莓派偷偷换上新 SoC,解决了 RAM 寻址问题

最简单的方法就是直接查看树莓派 SoC 上所蚀刻的型号。如果它的末尾是 "B0T",那就是旧型号。如果是 “C0T“,则是较新的型号;

如果你是将树莓派安装在设备内部,或者为树莓派套了一个外壳不能直接看到 SoC 的话,则可以通过运行以下命令来确定—— od -An -tx1 /proc/device-tree/emmc2bus/dma-ranges,返回结果如下:

  1. #B0
  2. pi@raspberrypi:~$od-An-tx1/proc/device-tree/emmc2bus/dma-ranges
  3. 00000000c00000000000000000000000
  4. 40000000
  5.  
  6. #C0
  7. pi@raspberrypi:~$od-An-tx1/proc/device-tree/emmc2bus/dma-ranges
  8. 00000000000000000000000000000000
  9. fc000000

C0 步进等级中更新了什么?

在 BCM2711 的案例中,树莓派并没有为该版本增加新的功能,也没有提升性能,而是主要修复了两个与 RAM 寻址有关的问题:

  • EMMC2 总线只能直接寻址前 1GB;
  • PCIe 接口只能直接寻址前 3GB;

尤其是后者可能会影响磁盘的吞吐量,而该问题对 Raspberry Pi 4 Model B 的低端型号的影响并不大,仅对采用了 8GB 内存的型号有较大的改进。

本文地址:https://www.oschina.net/news/162218/raspberry-pi-4-model-b-c0-stepping

未经允许不得转载:VPS服务器 » 树莓派偷偷换上新 SoC,解决了 RAM 寻址问题

分享到: 生成海报