Raspberry Pi rekenmodule 4 vs rekenmodule 3

Raspberry Pi heeft Compute Module 4 gelanceerd, als opvolger van Compute Module 3B+. De Compute Module 4 (CM4) is een zogenaamde System on Module (SoM), die kernonderdelen bevat waaruit bijvoorbeeld een Raspberry Pi 4 is opgebouwd, en daarnaast eMMC Flash in verschillende groottes (variërend van geen voor de Lite module versie tot 32 GB).

Met de CM4 kunnen ontwerpers een krachtige rekenoplossing integreren in hun embedded producten, zonder dat ze NDA's met Broadcom hoeven te ondertekenen of zich hoeven vast te leggen op grote SoC-afnamevolumes. Ze profiteren ook van de ontwerpervaring van het Raspberry Pi hardware en software ontwerpteam, en natuurlijk van de Raspberry Pi gemeenschap en het brede scala aan software ondersteuning voor het Raspberry Pi platform.

Een rekenmodule 4

Belangrijkste verschillen in de nieuwe generatie Compute-modules

nieuwe vormfactor

In plaats van mechanisch compatibel te zijn met DDR2-SODIMM, zoals alle voorgaande Compute Modules (1, 3, 3+), wordt de nieuwe CM4 aangesloten op uw computermodule draagkaart met behulp van twee 100-pins Hirose-connectoren met hoge dichtheid.

Hierdoor is de footprint kleiner (55 mm x 40 mm x 4,7 mm, met 4 x M2,5 montagegaten), en zijn nieuwe hogesnelheidsinterfaces mogelijk. (Raspberry Pi zou anders pinnen tekort zijn gekomen met de DDR2-SODIMM-benadering)!

nieuwe mogelijkheden en interfaces

De nieuwe CM4 heeft extra interfaces:

  • een extra HDMI-poort; beide HDMI-poorten zijn geschikt voor 4K-uitvoer, en ondersteunen HDMI 2.0
  • PCI Express-interface (Gen 2 x1 = enkelbaans)
  • GBit Ethernet-interface (Broadcom BCM54210PE PHY is inbegrepen aan boord van de Compute Module) - het enige wat u in uw ontwerp hoeft toe te voegen is een MagJack!
  • on-board WLAN-ondersteuning (in WiFi-versies), met PCB-spoorantenne en optionele externe antenne!
De afbeelding toont de externe antenne (een door Raspberry Pi geleverde optie, voor-gecertificeerd!)

aanzienlijk vereenvoudigd ontwerp van de voeding

U zult versteld staan hoe eenvoudig het is om een ontwerp te maken voor de nieuwe Raspberry Pi rekenmodule: één enkele +5V voeding is alles wat nodig is, en hij zal zelfs tot 600 mA bij 3,3 V en 1,8 V aan randapparatuur voor u leveren.

U hoeft niet langer verschillende stroomrails toe te voegen en ze zorgvuldig te rangschikken - dit zal uw eigen draagkaartontwerp sterk vereenvoudigen.

Raspberry Pi's eigen CM4IO bord zal u helpen om snel aan de slag te gaan met de CM4

Pinout verschillen tussen Compute Module 4 en Compute Module 3

Er zijn verschillende groepen pinnen op de Compute modules, we zullen elk van hen en hun verschillen tussen de versies achtereenvolgens bekijken.

GPIO pin verschillen tussen de rekenmodules

In de tabel hieronder staan de beschikbare GPIO pinnen op computermodule 4 (CM4), op computermodule 3 (cm3), en op de Raspberry Pi 4, met hun respectievelijke pinnummers.

GPIO pinnen zijn verdeeld in GPIO banken, op de Raspberry Pi SoC, pinnen GPIO0 - GPIO27 bevinden zich in GPIO Bank 1, terwijl pinnen GPIO28 tot GPIO45 zich op GPIO Bank 2 bevinden. De GPIO banken, op CM3, kunnen worden aangestuurd met onafhankelijke spanningen (GPIO0-27_VREF en GPIO28-45_VREF).

Op CM4 en Pi 4 is alleen de eerste GPIO-bank (GPIO0 - GPIO27) zichtbaar. Bovendien stelt de CM4 GPIO44 en GPIO45 bloot, die gewoonlijk worden gebruikt voor het aansturen van de officiële Raspberry Pi camera('s) en het 7" display. De CM4 mist dus 16 GPIO pinnen in vergelijking met de CM3!

GPIO BCM IDCM4 Pin#CM3 Pen#Pi 4 Pen#Noot
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)82nok / disp
SDA0 / SDA1
GPCLK1
SPI2_CE1_N
GPIO4580 (SCL0)84nok / disp
SCL0 / SCL1
SPI2_CE2_N
GPIO pinout vergeleken tussen CM4, CM3, Raspbery Pi 4

Er zijn twee speciale I2C-bussen - één op GPIO0 en GPIO1, die wordt gebruikt voor HAT EEPROMs (ID_SD / ID_SC), en één op GPIO44 en GPIO45, die gewoonlijk wordt gebruikt om de camera en het display aan te sluiten.

Merk ook op dat je op CM4 de mogelijkheid hebt om de GPIO uitgangsspanning in te stellen, met GPIO_VREF - deze kan worden aangesloten op +1.8V of +3.3V voor respectievelijk 1.8V of 3.3V signalering. Uit de datasheet is echter niet duidelijk op welke wijze dit van invloed is op GPIO44 en GPIO45, aangezien deze zich in de GPIO Bank 1 bevinden!

Op CM4, GPIO2 en GPIO3 (gebruikt voor I2C) hebben 1.8K pull up weerstanden.

Compute Module 3+ geeft toegang tot de SPI2 bus, die nergens anders zichtbaar is - op CM4, heeft u alleen toegang tot SPI0 en SPI1.

CM4 zal niet bieden gelijktijdige toegang tot UART0 (TXD0, RXD0) en de miniUART, UART1 (TXD1, RXD1). Hier worden beide blootgelegd op GPIO14 en GPIO15 als alternatieven.

CM4 bevat echter, net als de Raspberry Pi 4, extra UART's (tot 6 UART's in totaal), SPI-poorten (tot 6 SPI-poorten in totaal, waarvan er vijf zichtbaar zijn op Pi 4 en CM4) en I2C-poorten (tot 6 x I2C). Deze zijn beschikbaar als extra pin mux opties op de GPIO Bank 0.

Verdere lectuur