Table of contents
- Google Edge TPU ML accelerator
- Standard Half-Mini PCIe card
- Supports Debian Linux and other variants on host CPU
Photo shows the card with shield can removed
The Coral Mini PCIe Accelerator is a PCIe module that brings the Edge TPU coprocessor to existing systems and products.
The Edge TPU is a small ASIC designed by Google that provides high performance ML inferencing with low power requirements: it's capable of performing 4 trillion operations (tera-operations) per second (TOPS), using 0.5 watts for each TOPS (2 TOPS per watt). For example, it can execute state-of-the-art mobile vision models such as MobileNet v2 at 400 FPS, in a power efficient manner. This on-device processing reduces latency, increases data privacy, and removes the need for constant high-bandwidth connectivity.
The Mini PCIe Accelerator is a half-size Mini PCIe card designed to fit in any standard Mini PCIe slot. This form-factor enables easy integration into ARM and x86 platforms so you can add local ML acceleration to products such as embedded platforms, mini-PCs, and industrial gateways.
The Coral Mini PCIe Accelerator must be connected to a host computer with the following specifications:
- Any Linux computer with a compatible Mini PCIe module slot
- Debian 6.0 or higher, or any derivative thereof (such as Ubuntu 10.0+)
- System architecture of either x86-64 or ARM32/64 with ARMv8 instruction set
For software required on the host, see the software and operation section.
The design of the Mini PCIe Accelerator adheres to the PCI-SIG's electromechanical specification for the PCI Express Mini Card. For in-depth mechanical details, refer to that specification.
|Dimensions||30 x 26.8 x 2.5 mm|
|Hardware interface||Half-Mini PCIe card|
|Serial interface||PCIe Gen2 x1|
|DC supply||3.3V +/- 10 %|
|Temperature 1||-40 ~ 85° C (storage)
-20 ~ 70° C (operating)
|Relative humidity||0 ~ 100% (non-condensing)|
|Op-shock||100 G, 11ms (persistent)
1000 G, 0.5 ms (stress)
1000 G, 1.0 ms (stress)
|Op-vibe (random)||0.5 Grms, 5 - 500 Hz (persistent)
3 Grms, 5 - 800 Hz (stress)
|Op-vibe (sinusoidal)||0.5 Grms, 5 - 500 Hz (persistent)
3 Grms, 5 - 800 Hz (stress)
|Countries2||Unit shipped as component. Certification/compliance to be done by customer.|
|ESD 3||1kV HBM, 250V CDM|
1 Operational temperature range depends on the power
consumption and thermal
management in your system.
2 We can provide certification example to demonstrate that a reasonably designed system meets certification requirements.
3 Always handle in static safe environment.
- Total size: 30 x 26.80 x 2.5 mm
- PCB size: 30 x 26.80 x 1.0 mm
- Top-side component height (max): 1.5 mm
- Bottom-side component height: 0 mm
For in-depth mechanical specs, refer to the PCI Express Mini Card Electromechanical Specification.
The Mini PCIe Accelerator is powered by 3.3V as shown in the connector pinout. Typical power consumption depends on the model architecture and operating parameters, but some sample power consumption is shown in table 2. See the below section for information about the different operating frequencies.
|Low operating frequency||Nominal operating frequency||Max operating frequency|
|MobileNet v2||0.6 W (7.1 ms @ 141 fps)||0.9 W (3.9 ms @ 256 fps)||1.4 W (2.4 ms @ 416 fps)|
|Inception v3||0.5 W (58.7 ms @ 17 fps)||0.6 W (51.7 ms @ 19.3 fps)||0.7 W (48.2 ms @ 20.7 fps)|
Thermal limit and operating frequency
The thermal resistance and max allowed temperature of the Edge TPU stack-up is as follows:
- Thermal resistance (junction to top of shield can): 11 °C/W
- Maximum Edge TPU junction temperature: 100 °C
The Mini PCIe Accelerator does not include a thermal solution to dissipate heat from the system. In order to sustain maximum performance from the Edge TPU, it's important that you design your system so the Edge TPU operates well below the maximum Edge TPU temperature. If the Edge TPU gets too hot, it slowly reduces the operating frequency and may reset to avoid permanent damage.
The PCIe driver includes a power throttling mechanism (also known as dynamic frequency scaling) and an emergency shutdown mechanism, based on temperature readings from the Edge TPU. By default, this system checks the Edge TPU die temperature every 5 seconds and responds as follows:
- If the Edge TPU is below 85°C, continue at the "maximum" operating frequency.
- If the Edge TPU reaches 85°C, reduce the operating frequency 50% (from "maximum" to "normal").
- If the Edge TPU reaches 90°C, reduce the operating frequency another 50% (from "normal" to "low").
- If the Edge TPU reaches 95°C, reduce the operating frequency yet another 50% (from "low" to "lowest").
- If the Edge TPU reaches 100°C, reset the Edge TPU.
By reducing the operating frequency, the Edge TPU's inferencing speed becomes slower, but it also consumes less power and hopefully avoids reaching the hardware reset threshold.
As long as the Edge TPU does not reset and the Edge TPU temperature returns to lower levels, the system restores the operating frequency in the reverse manner—ultimately returning to the maximum operating frequency when the Edge TPU is below 85°C.
|Top side pins||Bottom side pins|
Software and operation
The host system must be running Debian Linux 6.0 or higher, or any derivative thereof, and have the Edge TPU runtime and API library installed.
The PCIe kernel driver is already upstreamed to kernel.org with source, since version 4.19.
For earlier versions, dkms driver is available via gasket-dkms deb package at
https://packages.cloud.google.com/apt coral-edgetpu-stable main.
To learn how to create models and run inferences the Edge TPU, read TensorFlow models on the Edge TPU.
Is this content helpful?