[关闭]
@SiberiaBear 2016-04-07T15:09:34.000000Z 字数 3646 阅读 15108

关于RaspberryPi 3的CPU

raspberryPi

固定链接:https://www.zybuluo.com/SiberiaBear/note/336984


这是一篇翻译文章,翻译自树莓派官网的一篇对树莓派3的介绍,后边添加了一些自己的理解,用3一段时间了,也该了解一下了。
翻译网址:https://www.raspberrypi.org/products/raspberry-pi-3-model-b/

树莓派3是第三代树莓派,它在2016年2月份开始取代掉上一代的树莓派2B,树莓派3代的配置如下:

同时,它和Pi2具有同样的:

3代树莓派在外形上具有着和2代树莓派完全相同,以及完整的兼容树莓派1和2代。(应该是说在功能上和软件上兼容)

我们推荐在学校和一些常规场合使用树莓派3,如果需要将树莓派使用在嵌入式场合,比较推荐用Pi Zero(树莓派工业板)或Module A+,这样的板卡适合嵌入式工程以及低功耗领域。

完。

接下来我瞎聊聊,官网上对CPU的宣传是:

A 1.2GHz 64-bit quad-core ARM Cortex-A53 CPU (~10x the performance of Raspberry Pi 1)

再翻译一段:来自https://www.raspberrypi.org/blog/raspberry-pi-3-on-sale/

对于树莓派3,博通公司给我支持了一个新的芯片——BCM2837。这个芯片保留了与BCM2835和BCM2836完全相同的基础架构。所以,所有的树莓派工程和对树莓派硬件的准确描述教程都会完整的兼容。一个900MHz 32位的四核Cortex-A7 CPU被一个自定义的1.2GHz 64位四核Cortex-A53 ARM取代。这个新的芯片包含了增强33%的系统时钟速率以及各种架构上的增强,在性能上比树莓派2要提升50%-60%,或者粗略的说要比最原始的树莓派性能提升10倍。

James Adams用2015年的后半年时间设计了一系列的原型,将BCM2837芯片与BCM43438无线集成芯片相结合。他努力去将无线功能集成安装到和树莓派1代B+板和2代B板近乎一样的板卡上。唯一的改变是LED灯的位置,将他们的位置移到了SD插槽的另一边,从而为无线天线腾出空间。Roger Thornton奔波于许多无线一致性检测的调查(强调很贵),为树莓派3可以在全球几乎所有国家同时登陆。Phil Elwell开发了无线局域网和蓝牙的软件部分。

所有的连接器都在不变的位置并且功能也未变,板子仍然运行于一个5V供电的microUSB无线适配器。这一次,如果你需要在树莓派上连接高功率USB设备,我们推荐使用一个2.5A的适配器。

最重要的一句话:

At launch, we are using the same 32-bit Raspbian userland that we use on other Raspberry Pi devices; over the next few months we wil investigate whether there is value in moving to 64-bit mode.

就是说,现在依然是32位的Raspbian系统,在接下来的几个月会提供64位模式。

我在尝试查看我树莓派3的CPU(拿到手还不到2个星期):
第一种方法:

  1. cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

得到的结果是: 600000
第二种方法:

  1. vcgencmd get_config arm_freq

得到的结果是: arm_freq=800
第三种方法:

  1. lscpu

得到的结果是:
第四种方法:

  1. Architecture: armv7l
  2. Byte Order: Little Endian
  3. CPU(s): 4
  4. On-line CPU(s) list: 0-3
  5. Thread(s) per core: 1
  6. Core(s) per socket: 4
  7. Socket(s): 1
  8. Model name: ARMv7 Processor rev 4 (v7l)
  9. CPU max MHz: 800.0000
  10. CPU min MHz: 600.0000
  1. cat cpuinfo

得到的结果是:

  1. processor : 0
  2. model name : ARMv7 Processor rev 4 (v7l)
  3. BogoMIPS : 38.40
  4. Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
  5. CPU implementer : 0x41
  6. CPU architecture: 7
  7. CPU variant : 0x0
  8. CPU part : 0xd03
  9. CPU revision : 4
  10. processor : 1
  11. model name : ARMv7 Processor rev 4 (v7l)
  12. BogoMIPS : 38.40
  13. Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
  14. CPU implementer : 0x41
  15. CPU architecture: 7
  16. CPU variant : 0x0
  17. CPU part : 0xd03
  18. CPU revision : 4
  19. processor : 2
  20. model name : ARMv7 Processor rev 4 (v7l)
  21. BogoMIPS : 38.40
  22. Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
  23. CPU implementer : 0x41
  24. CPU architecture: 7
  25. CPU variant : 0x0
  26. CPU part : 0xd03
  27. CPU revision : 4
  28. processor : 3
  29. model name : ARMv7 Processor rev 4 (v7l)
  30. BogoMIPS : 38.40
  31. Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
  32. CPU implementer : 0x41
  33. CPU architecture: 7
  34. CPU variant : 0x0
  35. CPU part : 0xd03
  36. CPU revision : 4
  37. Hardware : BCM2709
  38. Revision : a22082
  39. Serial : 00000000972ee6f7

仅供参考。(对于工作频率,不要太纠结,我的这个板子是锁频了的,正常状态下最大时钟频率确实是1.2GHz,没问题)

对于为什么硬件是BCM2709而不是BCM2837,我在这篇文章中查到,一个是内核开发者的型号,一个是芯片发布者的型号,但从另外一个网站中发现,BCM2837对应的处理器族应该是BCM2710,这里依然是BCM2709是什么意思,我可以保证我的树莓派是3代,因为可以wifi和蓝牙,另外系列号是a22082,也是树莓派3,从启动日志(dmesg)中可以发现也有树莓派3代B板的输出。
可以从这个谷歌论坛找找答案,我没耐心看下去了,一些网友说可能是没有修改内核文件,不过我更赞同:

They can ship the same image, and use 32-bit by default, while adding
a 64-bit kernel in the repository, so then users can just install it
easily, without having to compile it themselves.

可能是因为为了兼容旧版本的软件和操作系统,在树莓派3上依然使用了ARMv7的32位指令集,即使芯片支持ARMv8指令集,但由于考虑到兼容性,现在还没有推出64位的系统和软件来运行,所以固件依然保留32位。刚才我翻译过了,后边官方会出64位的固件。(话说不知道会误导多少为了图新鲜买树莓派3却看着2代的图书和网络教程调试的童鞋,将来3代换了64位版本,官方还是要花大力气在教程和引导的环节的)

另外这个网址可以参考,里边对3个版本的树莓派CPU和性能进行了详细的对比。

这个网址是我最初开始思考并查看的论坛,名字是:我的Pi3给出了错误信息?可以参考。

另外一些题外话,用了一段时间,3代的板子确实发热严重,必须要配散热片,硬件设计上还有待考究,WIFI用起来比较方便,能省去一个USB口接外置无线网卡。还有,必须至少是2A的电源给它供电,由于有了无线模块,它需要更多电流。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注