# COM-HPC

COM-HPC is a computer-on-module form factor standard that targets high performance compute and high I/O levels. Each COM-HPC module integrates core CPU and memory functionality and input and output including USB up to Gen 4, audio (MIPI SoundWire, I2S and DMIC), graphics, (PCI Express) up to Gen. 5, and Ethernet up to 25 Gbit/s per lane. All I/O signals are mapped to two high density, high speed and low profile connectors on the bottom side of the module. COM-HPC employs a mezzanine-based approach. The COM modules plug into a carrier or base board that is typically customized to the application. Over time, the COM-HPC mezzanine modules can be upgraded to newer, backwards-compatible versions. COM-HPC targets Industrial, Military/Aerospace, Gaming, Medical, Transportation, IoT, and General Computing embedded applications and even scales up to RAM and performance hungry server or edge server applications.

## History

The PICMG work-group officially started in October 23, 2018.
* Rev. 1.00 Release date: Feb 19, 2021
* Rev. 1.10 added HD Audio as alternative for SoundWire, functional safetey signals and a second 5V standby power pin. Release date: Jan 21, 2022
* Rev. 1.20 added definition for the Mini. Release date: Oct. 3, 2023
* Rev. 1.30 work started June 25, 2024. Major topics for the workgroup are:
** Signal integrity for PCIe Gen 6
** Modern Standby S0ix
** CXL

## Types

There are 3 different pin outs defined in the specification.
Summary of COM-HPC IOs by Pinout Type :
| IO Type | Client Pinout | Server Pinout | Mini Pinout |
| PCIe | 49 (1 BMC dedicated lane) | 65 (1 BMC dedicated lane) | 16 (shared with 2xSATA and 2x ETH Serdes) |
| Ethernet | 2x NbaseT | 1x NbaseT | 2x NbaseT + 2x Serdes (shared with PCIe) |
| 25 Gigabit Ethernet KR | 2 | 8 | 0 |
| USB4 (Can also be used for USB 3.x or USB 2.0) | 4 | 2 | 4 (shared with DDI & USB3.2) |
| USB 2.0 | 8 | 8 | 8 |
| DDI (Digital Display Interface for HDMI or DisplayPort) | 3 | 0 | 2 (shared with USB4 and USB3.2) |
| eDP or MIPI DSI (for flat panel displays) | 1 | 0 | 1 |
| MIPI SoundWire or DMIC | 2 | 0 | 2 |
| I2S or MIPI SoundWire | 1 I2S (or 2 Soundwire) | 0 | 1 I2S (or 2 Soundwire) |
| MIPI CSI-3 (CSI-2 also supported) | 2 | 0 | 2 on flatfoil connector |
| SATA | 2 | 2 | 2 shared with PCIe |
| GPIO | 12 | 12 | 12 |
| UART | 2 | 2 | 2 |
| IPMB | 1 | 1 | 0 |
| eSPI (includes 2 Chip Select Pins) | 1 | 1 | 1 |
| SPI (for boot devices) | 2 | 2 | 2 |
| GP_SPI (includes 4 Chip Select Pins) | 1 | 1 | 1 |
| I2C | 2 | 2 | 2 |
| SMB | 1 | 1 | 1 |
| DC Power Input | 8-20 Volt | 12 Volt +/- 5% | 8-20 Volt |

## Size

The specification defines 6 module sizes:
* Size Mini: 95 × 70 mm (3.7 × 2.8 in)
The sizes A, B and C are typical Client Type sizes.
* Size A: 95 × 120 mm (3.7 × 4.7 in)
* Size B: 120 × 120 mm (4.7 × 4.7 in)
* Size C: 160 × 120 mm (6.3 × 4.7 in)
The larger D and E sizes are typical Server Type sizes to support full size DRAM modules
* Size D: 160 × 160 mm (6.3 × 6.3 in)
* Size E: 200 × 160 mm (7.9 × 6.3 in)

## Specification

The COM-HPC specification is hosted by PICMG. It is not freely available but may be purchased from the PICMG website. PICMG provides a preview version for free download. The COM-HPC hardware specification will be released Jan 2021. Further COM-HPC related documents will be released in 2021
* Carrier Board Design Guide for Ethernet KR
* Full Carrier Board Design Guide
* Platform Management Specification
* Embedded EEPROM Specification (EEEP)