Raspberry Pi Compute Module 4 vs Compute Module 3

Raspberry Pi a lancé le Compute Module 4, qui succède au Compute Module 3B+. Le Compute Module 4 (CM4) est ce que l'on appelle un System on Module (SoM), qui contient les éléments de base qui constituent un Raspberry Pi 4, par exemple, et en plus de cela des eMMC Flash de différentes tailles (allant de zéro pour la version Lite du module à 32 Go).

Le CM4 permet aux concepteurs d'intégrer une solution informatique puissante dans leurs produits embarqués, sans avoir à signer des accords de confidentialité avec Broadcom, ni à s'engager sur des volumes d'achat élevés de SoC. Ils bénéficient également de l'expérience de conception de l'équipe de conception matérielle et logicielle de Raspberry Pi, et bien sûr de la communauté Raspberry Pi et de la large gamme de support logiciel pour la plateforme Raspberry Pi.

Un module de calcul 4

Principales différences dans la nouvelle génération de modules Compute

nouveau facteur de forme

Au lieu d'être compatible mécaniquement avec les DDR2-SODIMM, comme tous les Compute Modules précédents (1, 3, 3+), le nouveau CM4 se connecte à la carte porteuse de votre Compute Module à l'aide de deux connecteurs Hirose haute densité à 100 broches.

Cela lui permet d'avoir un encombrement réduit (55 mm x 40 mm x 4,7 mm, avec 4 trous de montage M2,5) et de fournir de nouvelles interfaces à haut débit. (Le Raspberry Pi aurait autrement manqué de broches avec l'approche DDR2-SODIMM).

nouvelles capacités et interfaces

Le nouveau CM4 dispose d'interfaces supplémentaires :

  • un port HDMI supplémentaire ; les deux ports HDMI sont capables d'une sortie 4K et prennent en charge la norme HDMI 2.0.
  • Interface PCI Express ( Gen 2 x1 = single lane)
  • Interface Ethernet GBit (Broadcom BCM54210PE PHY est inclus à bord du Compute Module) - tout ce que vous devez ajouter dans votre conception est un MagJack !
  • Support WLAN embarqué (dans les versions WiFi), avec antenne sur circuit imprimé et antenne externe en option !
L'image montre l'antenne externe (une option fournie par Raspberry Pi, pré-certifiée !).

conception de l'alimentation électrique considérablement simplifiée

Vous serez étonné de voir à quel point il est simple de concevoir un module de calcul pour le nouveau Raspberry Pi : une seule alimentation +5V est tout ce qu'il faut, et il fournira même jusqu'à 600 mA à 3,3V et 1,8V aux périphériques pour vous.

Il n'est plus nécessaire d'ajouter différents rails d'alimentation et de les séquencer avec soin - cela simplifiera grandement la conception de votre propre carte porteuse.

La carte CM4IO, propre à Raspberry Pi, vous aidera à démarrer rapidement avec le CM4.

Différences de brochage entre le Compute Module 4 et le Compute Module 3

Il existe différents groupes de broches sur les modules Compute, nous allons examiner successivement chacun d'entre eux et leurs différences entre les versions.

Différences de broches GPIO entre les modules de calcul

Dans le tableau ci-dessous, j'ai listé les broches GPIO disponibles sur le module de calcul 4 (CM4), sur le module de calcul 3 (cm3), et sur le Raspberry Pi 4, avec leurs numéros de broches respectifs.

Les broches GPIO sont divisées par banques GPIO, sur le SoC Raspberry Pi, les broches GPIO0 - GPIO27 sont dans la banque GPIO 1, tandis que les broches GPIO28 à GPIO45 sont sur la banque GPIO 2. Les banques GPIO, sur CM3, peuvent être pilotées avec des tensions indépendantes (GPIO0-27_VREF et GPIO28-45_VREF).

Sur CM4 et Pi 4, seule la première banque de GPIO (GPIO0 - GPIO27) est exposée. En plus de cela, le CM4 expose GPIO44 et GPIO45, qui sont généralement utilisés pour piloter la ou les caméras officielles du Raspberry Pi et l'écran 7". Le CM4 manque donc de 16 broches GPIO par rapport au CM3 !

GPIO BCM IDCM4 Pin#CM3 Pin#Pi 4 Pin#Note
GPIO036 (ID_SD)327ID_SD = SDA0
GPIO135 (ID_SC)528ID_SC = SCL0
GPIO25893SDA1
GPIO356115SCL1
GPIO454157GPCLK0
GPIO5341729GPCLK1
GPIO6302131GPCLK2
GPIO7372326SPI0_CE1_N
GPIO8392724SPI0_CE0_N
GPIO9402921SPI0_MISO
GPIO10443319SPI0_MOSI
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
GPIO3246GPCLK0
TXD0 / TXD1
GPIO3348RXD0 / RXD1
GPIO3452GPCLK0
GPIO3554SPI0_CE1_N
GPIO3658SPI0_CE0_N
TXD0
GPIO3760SPI0_MISO
RXD0
GPIO3864SPI0_MOSI
GPIO3966SPI0_SCLK
GPIO4070PWM0 / TXD1
SPI2_MISO
GPIO4172PWM1 / RXD1
SPI2_MOSI
GPIO4276GPCLK1
SPI2_SCLK
GPIO4378GPCLK2
SPI2_CE0_N
GPIO4482 (SDA0)82cam / disp
SDA0 / SDA1
GPCLK1
SPI2_CE1_N
GPIO4580 (SCL0)84cam / disp
SCL0 / SCL1
SPI2_CE2_N
Comparaison du brochage GPIO entre CM4, CM3 et Raspbery Pi 4

Il existe deux bus I2C spéciaux - un sur GPIO0 et GPIO1, qui est utilisé pour les EEPROMs de la HAT (ID_SD / ID_SC), et un sur GPIO44 et GPIO45, qui est généralement utilisé pour connecter la caméra et l'écran.

Notez également que sur CM4 vous avez la possibilité de définir la tension de sortie GPIO, en utilisant GPIO_VREF - cela peut être connecté à +1.8V ou +3.3V pour une signalisation de 1.8V ou 3.3V respectivement. Dans la fiche technique, il n'est pas clair, cependant, comment cela affectera GPIO44 et GPIO45, car ils sont dans la banque GPIO 1 !

Sur CM4, GPIO2 et GPIO3 (utilisé pour I2C) ont des résistances pull up de 1.8K.

Le Compute Module 3+ permet d'accéder au bus SPI2, qui n'est exposé nulle part ailleurs - sur le CM4, vous n'aurez accès qu'à SPI0 et SPI1.

CM4 va pas permettent un accès simultané à UART0 (TXD0, RXD0) et au miniUART, UART1 (TXD1, RXD1). Ici, les deux sont exposés sur GPIO14 et GPIO15 comme alternatives.

CM4, cependant, comme le Raspberry Pi 4, inclut des UARTs supplémentaires (jusqu'à 6 UARTs au total), des ports SPI (jusqu'à 6 ports SPI au total, dont cinq sont exposés sur Pi 4 et CM4) et des ports I2C (jusqu'à 6 x I2C). Ceux-ci sont disponibles en tant qu'options supplémentaires de pin mux sur la banque GPIO 0.

Autres lectures