Raspberry Pi Compute Module 4 vs Compute Module 3
Raspberry Pi lançou o Compute Module 4, como um sucessor do Compute Module 3B+. O Compute Module 4 (CM4) é um chamado System on Module (SoM), que contém peças centrais que compõem um Raspberry Pi 4, por exemplo, e além desse eMMC Flash em diferentes tamanhos (variando de nenhum para a versão Lite do módulo até 32 GB).
O CM4 permite que os designers integrem uma poderosa solução informática nos seus produtos incorporados, sem ter de assinar NDAs com a Broadcom, comprometendo-se com elevados volumes de compra de SoC. Eles também se beneficiam da experiência de design da equipe de design de hardware e software Raspberry Pi, e, claro, da comunidade Raspberry Pi e ampla gama de suporte de software para a plataforma Raspberry Pi.
Principais diferenças na nova geração de módulos Compute
novo fator de forma
Em vez de ser DDR2-SODIMM mecanicamente compatível, como todos os módulos Compute anteriores (1, 3, 3+), o novo CM4 liga-se à sua placa portadora de módulos de computação usando dois conectores Hirose de 100 pinos de alta densidade.
Isto permite que ele tenha uma pegada menor (55 mm x 40 mm x 4,7 mm, com 4 x M2,5 furos de montagem), e fornece novas interfaces de alta velocidade. (Raspberry Pi teria ficado sem os pinos com a abordagem DDR2-SODIMM!)
novas capacidades e interfaces
O novo CM4 tem interfaces adicionais:
- uma porta HDMI adicional; ambas as portas HDMI são capazes de saída 4K, e suportam HDMI 2.0
- Interface PCI Express ( Gen 2 x1 = via única)
- GBit Ethernet interface (Broadcom BCM54210PE PHY está incluído a bordo do Módulo Compute) - tudo o que você precisa adicionar no seu design é um MagJack!
- suporte WLAN on-board (em versões WiFi), com antena de traço PCB e antena externa opcional!
projeto de fornecimento de energia significativamente simplificado
Você ficará chocado com a simplicidade do design do novo módulo de computação Raspberry Pi: um único fornecimento de +5V é tudo o que é necessário, e até fornecerá até 600 mA a 3,3V e 1,8V aos periféricos para você.
Chega de adicionar diferentes trilhos de alimentação e sequenciá-los cuidadosamente - isto simplificará muito o seu próprio design de placas de suporte.
Diferenças de pinout entre o Módulo de Cálculo 4 e o Módulo de Cálculo 3
Existem diferentes grupos de pinos nos módulos Compute, vamos olhar para cada um deles e suas diferenças entre as versões, por sua vez.
Diferenças de pinos GPIO entre os módulos de computação
Na tabela abaixo, relacionei os pinos GPIO disponíveis no módulo de computação 4 (CM4), no módulo de computação 3 (cm3) e no Raspberry Pi 4, com seus respectivos números de pinos.
Os pinos GPIO são divididos pelos bancos GPIO, no Raspberry Pi SoC, os pinos GPIO0 - GPIO27 estão no Banco GPIO 1, enquanto os pinos GPIO28 a GPIO45 estão no Banco GPIO 2. Os bancos GPIO, na CM3, podem ser conduzidos com tensões independentes (GPIO0-27_VREF e GPIO28-45_VREF).
Na CM4 e Pi 4 apenas o primeiro banco GPIO (GPIO0 - GPIO27) é exposto. Além disso, o CM4 expõe GPIO44 e GPIO45, que são normalmente utilizados para conduzir a(s) câmara(s) oficial(is) Raspberry Pi e o visor de 7". A CM4, portanto, não tem 16 pinos GPIO em comparação com a CM3!
GPIO BCM ID | CM4 Pin# | CM3 Pin# | Pi 4 Pin# | Nota |
GPIO0 | 36 (ID_SD) | 3 | 27 | ID_SD = SDA0 |
GPIO1 | 35 (ID_SC) | 5 | 28 | ID_SC = SCL0 |
GPIO2 | 58 | 9 | 3 | SDA1 |
GPIO3 | 56 | 11 | 5 | SCL1 |
GPIO4 | 54 | 15 | 7 | GPCLK0 |
GPIO5 | 34 | 17 | 29 | GPCLK1 |
GPIO6 | 30 | 21 | 31 | GPCLK2 |
GPIO7 | 37 | 23 | 26 | SPI0_CE1_N |
GPIO8 | 39 | 27 | 24 | SPI0_CE0_N |
GPIO9 | 40 | 29 | 21 | SPI0_MISO |
GPIO10 | 44 | 33 | 19 | SPI0_MOSI |
GPIO11 | 38 | 35 | 23 | SPI0_SCLK |
GPIO12 | 31 | 45 | 32 | PWM0 |
GPIO13 | 28 | 47 | 33 | PWM1 |
GPIO14 | 55 | 51 | 8 | TXD0 / TXD1 |
GPIO15 | 51 | 53 | 10 | RXD0 / RXD1 |
GPIO16 | 29 | 57 | 36 | |
GPIO17 | 50 | 59 | 11 | |
GPIO18 | 49 | 63 | 12 | PCM_CLK |
GPIO19 | 26 | 65 | 35 | PCM_FS |
GPIO20 | 27 | 69 | 38 | PCM_DIN |
GPIO21 | 25 | 71 | 40 | PCM_DOUT |
GPIO22 | 46 | 75 | 15 | |
GPIO23 | 47 | 77 | 16 | |
GPIO24 | 45 | 81 | 18 | |
GPIO25 | 41 | 83 | 22 | |
GPIO26 | 24 | 87 | 37 | |
GPIO27 | 48 | 89 | 13 | |
GPIO28 | 28 | SDA0 | ||
GPIO29 | 30 | SCL0 | ||
GPIO30 | 34 | |||
GPIO31 | 36 | |||
GPIO32 | 46 | GPCLK0 TXD0 / TXD1 | ||
GPIO33 | 48 | RXD0 / RXD1 | ||
GPIO34 | 52 | GPCLK0 | ||
GPIO35 | 54 | SPI0_CE1_N | ||
GPIO36 | 58 | SPI0_CE0_N TXD0 | ||
GPIO37 | 60 | SPI0_MISO RXD0 | ||
GPIO38 | 64 | SPI0_MOSI | ||
GPIO39 | 66 | SPI0_SCLK | ||
GPIO40 | 70 | PWM0 / TXD1 SPI2_MISO | ||
GPIO41 | 72 | PWM1 / RXD1 SPI2_MOSI | ||
GPIO42 | 76 | GPCLK1 SPI2_SCLK | ||
GPIO43 | 78 | GPCLK2 SPI2_CE0_N | ||
GPIO44 | 82 (SDA0) | 82 | came / disp SDA0 / SDA1 GPCLK1 SPI2_CE1_N | |
GPIO45 | 80 (SCL0) | 84 | came / disp SCL0 / SCL1 SPI2_CE2_N |
Existem dois ônibus especiais I2C - um no GPIO0 e GPIO1, que é usado para EEPROMs HAT (ID_SD / ID_SC), e um no GPIO44 e GPIO45, que é normalmente usado para conectar a câmera e o display.
Note também, que no CM4 você tem a capacidade de definir a tensão de saída GPIO, usando GPIO_VREF - esta pode ser conectada a +1.8V ou +3.3V para sinalização de 1.8V ou 3.3V, respectivamente. A partir da folha de dados, não é claro, no entanto, como isso irá afetar GPIO44 e GPIO45, como eles estão no Banco GPIO 1!
No CM4, GPIO2 e GPIO3 (usado para I2C) têm resistências de tracção de 1,8K.
O Módulo de Cálculo 3+ permite o acesso ao barramento SPI2, que não está exposto em nenhum outro lugar - no CM4, você só terá acesso ao SPI0 e ao SPI1.
CM4 irá não permitir o acesso simultâneo à UART0 (TXD0, RXD0) e à miniUART, UART1 (TXD1, RXD1). Aqui ambos são expostos em GPIO14 e GPIO15 como alternativas.
CM4, porém, como o Raspberry Pi 4, inclui UARTs adicionais (até 6 UARTs no total), portas SPI (até 6 portas SPI no total, cinco das quais estão expostas em Pi 4 e CM4) e portas I2C (até 6 x I2C). Estas estão disponíveis como opções adicionais de pinos mux no Banco GPIO 0.