树莓派计算模块4 VS 计算模块3

Raspberry Pi推出了计算模块4,作为计算模块3B+的后继者。计算模块4(CM4)是一个所谓的系统模块(SoM),它包含构成树莓派4的核心部件,例如,除此之外,还有不同尺寸的eMMC闪存(从Lite模块版本的无到32GB)。

CM4使设计者能够将强大的计算解决方案集成到他们的嵌入式产品中,而不必与Broadcom签署NDA,也不必承诺购买大量的SoC。他们还可以受益于Raspberry Pi硬件和软件设计团队的设计经验,当然还有Raspberry Pi社区和Raspberry Pi平台的广泛软件支持。

一个计算模块 4

新一代计算模块的最大区别

新的形式因素

新的CM4没有像以前所有的计算模块(1、3、3+)那样机械地兼容DDR2-SODIMM,而是使用两个100针高密度Hirose连接器连接到你的计算模块承载板上。

这使得它的占地面积更小(55 mm x 40 mm x 4.7 mm,有4个M2.5安装孔),并提供新的高速接口。(如果采用DDR2-SODIMM的方法,Raspberry Pi的引脚就会用完!)

新的能力和界面

新的CM4有额外的接口。

  • 一个额外的HDMI端口;两个HDMI端口都能进行4K输出,并支持HDMI 2.0
  • PCI Express接口(Gen 2 x1 = 单通道)
  • GBit以太网接口(Broadcom BCM54210PE PHY包含在计算模块的板上)--你需要在你的设计中添加的只是一个MagJack!
  • 板载WLAN支持(在WiFi版本中),带有PCB追踪天线和可选的外部天线
图片显示的是外部天线(Raspberry Pi提供的选项,预先认证的!)。

显著简化的电源设计

你会震惊于为新的Raspberry Pi计算模块进行设计是如此简单。 一个单一的+5V电源 就可以了,它甚至可以在3.3V和1.8V下为你的外围设备提供高达600mA的电流。

不再需要添加不同的电源轨和仔细排序 - 这将大大简化你自己的载波板设计。

Raspberry Pi自己的CM4IO板将帮助你快速开始使用CM4

计算模块4和计算模块3的引脚差异

计算模块上有不同的针脚组,我们将依次看一下每个针脚组以及它们在不同版本之间的区别。

计算模块之间的GPIO引脚差异

在下表中,我列出了计算模块4(CM4)、计算模块3(cm3)和Raspberry Pi 4上的可用GPIO引脚,以及它们各自的引脚编号。

GPIO引脚按GPIO库划分,在Raspberry Pi SoC上,GPIO0-GPIO27引脚在GPIO库1,而GPIO28至GPIO45引脚在GPIO库2。CM3上的GPIO库可以用独立的电压驱动(GPIO0-27_VREF和GPIO28-45_VREF)。

在CM4和Pi 4上,只有第一个GPIO组(GPIO0 - GPIO27)被暴露。除此之外,CM4还暴露了GPIO44和GPIO45,它们通常用于驱动官方Raspberry Pi的摄像头和7英寸显示屏。因此,与CM3相比,CM4缺少了16个GPIO针脚。

GPIO BCM IDCM4 引脚#CM3 Pin#Pi 4 Pin#注意事项
GPIO036 (ID_SD)327ID_SD = SDA0
GPIO135 (ID_SC)528ID_SC = SCL0
GPIO25893SDA1
GPIO356115卫星导航系统(SCL1)
GPIO454157辽宁省
GPIO5341729辽宁省
GPIO6302131辽宁省
GPIO7372326SPI0_CE1_N
GPIO8392724芯片
GPIO9402921SPI0_MISO
GPIO10443319芯片
GPIO11383523SPI0_SCLK
GPIO12314532PWM0
GPIO13284733PWM1
GPIO1455518TXD0 / TXD1
GPIO15515310RXD0 / RXD1
GPIO16295736
GPIO17505911
GPIO18496312PCM_CLK
GPIO19266535PCM_FS
GPIO20276938PCM_DIN
GPIO21257140PCM_DOUT
GPIO22467515
GPIO23477716
GPIO24458118
GPIO25418322
GPIO26248737
GPIO27488913
GPIO2828SDA0
GPIO2930SCL0
GPIO3034
GPIO3136
GPIO3246辽宁省
TXD0 / TXD1
芯片48RXD0 / RXD1
GPIO3452辽宁省
GPIO3554SPI0_CE1_N
GPIO3658芯片
TXD0
芯片60SPI0_MISO
读取数据
GPIO3864芯片
GPIO3966SPI0_SCLK
GPIO4070PWM0 / TXD1
芯片组:SPI2_MISO
GPIO4172PWM1 / RXD1
芯片组: 芯片组: 芯片组: 芯片组: SPI2_MOSI
GPIO4276辽宁省
芯片
GPIO4378辽宁省
芯片
芯片82 (SDA0)82凸轮/分配
SDA0 / SDA1
辽宁省
芯片
芯片80 (SCL0)84凸轮/分配
SCL0 / SCL1
芯片
CM4、CM3、Raspbery Pi 4之间的GPIO引脚比较

有两条特殊的I2C总线--一条在GPIO0和GPIO1上,用于HAT EEPROM(ID_SD / ID_SC),另一条在GPIO44和GPIO45上,通常用于连接摄像机和显示器。

还要注意的是,在CM4上,你可以通过GPIO_VREF来设置GPIO输出电压,这可以连接到+1.8V或+3.3V,分别用于1.8V或3.3V信号。从数据手册上看,不清楚这将如何影响GPIO44和GPIO45,因为它们都在GPIO Bank 1中。

在CM4上,GPIO2和GPIO3(用于I2C)有1.8K的上拉电阻。

计算模块3+允许访问SPI2总线,这在其他任何地方都没有暴露 - 在CM4上,你只能访问SPI0和SPI1。

CM4将 不是 允许同时访问UART0(TXD0,RXD0)和迷你UART,UART1(TXD1,RXD1)。在这里,两者都暴露在GPIO14和GPIO15上作为替代。

然而,CM4和Raspberry Pi 4一样,包括额外的UART(总共多达6个UART)、SPI端口(总共多达6个SPI端口,其中5个在Pi 4和CM4上暴露)和I2C端口(多达6个I2C)。这些都可以作为GPIO Bank 0上的额外引脚复用选项。

进一步阅读