In simple terms the RPi Compute Module is a Raspberry Pi Model A without PSU etc circuitry, connectors and with a 4GB Flash IC instead of the SD card socket.
On the PCB:
BCM2835 processor with 512Mbyte of RAM (as used on the Raspberry Pi)
4Gbyte eMMC Flash IC, instead of the SD card used on the Raspberry Pi (when comparing costs bear in mind this is an extra cost for the RPi).
All remaining processor interfaces are available to the user via the connector pins, so many more GPIOs and interfaces are available compared to the Raspberry Pi.
There are 46 free GPIOs. They can be used as general I/O or configured as I2C/SPI/PCM/UART/PWM/GPCLKs etc like the (more limited) subset on the Pi.
Fits into a standard DDR2 SODIMM connector (as used for laptop memory).
2nd Camera Interface
The Compute Module gives access to the second camera interface of the BCM2835. 3D camera systems become possible.
USB Boot Interface
The ‘USB BOOT’ interface is there to get data onto the on-board Flash. The Compute Module can read its boot code over USB as a slave using provided software which runs on a Raspberry Pi that acts as a host.
You can force the module to boot as a slave over USB and therefore have full control of the Flash, even if you have corrupted it and it won’t boot normally (i.e. you won't 'brick' it).
The Compute Module IO Board is 6 layers, but only because they had to route out all the interfaces in a convenient fashion. A 4 layer board is likely to be sufficient for many projects.
BCM2835 SMPS that generates the processor 1.2V core voltage. It can be powered from ~2.5-5V (various batteries will give you this including a single cell li-ion).
Unconfirmed by us as yet – from the schematics, looks like you need to provide at least VBAT, +1V8 & +3V3 to the compute module (and +2V5 if you want to use composite video).
The BCM2835 does not have any analog input pins so a ADC is still needed for analog inputs.
Forum question: How does the flash memory compare in speed to a class 10 SD Card?
Our internal testing shows it is definitely at the upper end of the speed scale. eMMC is also specifically designed and optimised for embedded filesystems.
Difficult to compare to a class 10 SD card as all SD cards speed are dependent on the internal Flash controller implementation (note that some class 10 cards are in fact slower than lower class cards when used in a Pi as they are only optimised for large streaming writes – perfect for your camcorder, not so good for a filesystem which has lots of small random reads).
High Speed Data Interfaces
The Broadcom SoC doesn’t support SATA, PCIe or Gigabith Ethernet.
Forum question: Would it be possible to connect a SATA controller to the compute module and get reasonable I/O performance?
The USB is the only high speed data interface which the BCM2835 has. It has very high speed video ports (CSI and DSI) each can run ~1 GBITS/sec physically. However getting those to transport data is difficult and will not give you the full 1G bandwidth. But it is not impossible…
Forum question: The single USB bus of the Raspberry Pi is a bandwidth choke point if you want to use a Pi as a NAS. With the extra I/O pins exposed by the Compute Module will it be possible to connect a gigabit ethernet controller and possibly some additional storage controller directly to the BCM2835? Can the ARM core in the BCM2835 handle higher speed peripherals?
In the short term, no. In the longer term if Broadcom release more information about some of the undocumented interfaces then maybe
Raspberry Pi Model B = $35
Compute Module (same processor and same amount of RAM but also has 4GByte Flash) = $30.
Bear in mind the foundation view this product as a way to help people who want to use the RPi in bespoke products, but also as a revenue generator for the foundation to carry out their core aims in the education market. The Raspberry Pi remains the core product of theirs – this is simply a spin off which can generate more income to promote education and help commercial users at the same time.