To accelerate machine learning at the edge, device manufacturers designed application-specific integrated circuits to deliver high performance with low power requirements and maintain a compact form factor. Making it perfect for embedded IoT hardware, Google introduced the Edge TPU module featuring end-to-end AI infrastructure complementing the Cloud TPU and Google Cloud services. To provide a better hardware/software ecosystem, Google launched the in-house Coral development board for fast prototyping of on-device machine learning applications.
The Google Coral Development Board features the NXP i.MX 8M system-on-chip that comes with quad-core Cortex-A53 and Cortex-M4F tightly integrated with GC7000 Lite GPU. There are different memory options and currently, the hardware supports 1GB and 4GB LPDDR4 RAM with a possibility of release of a 2GB variant. To store large codes for machine learning inference at the edge, there is enough 8GB eMMC flash storage with the flexibility to expand through the MicroSD card slot. For wireless connectivity, Coral Development Board provides support for IEEE 802.11b/g/n/ac and Bluetooth 4.2.
Performance of Google Coral Development Board
In 2018, at the Google Next conference held in San Francisco, Injong Rhee, the Vice President of IoT, Google Cloud announced the release of two new edge TPU boards– Coral Development Board and Edge TPU accelerator. This article focuses on the popular and highly demanded Coral Development Board, an all-in-one development board allowing professional engineers and hackers to prototype ML systems. Google Coral Development board is a single-board computer idea for performing fast machine learning inference in a tiny form factor device. Leveraging the on-board edge TPU co-processor the hardware is capable of performing 4 trillion operations per second at just 0.5 watts of power for each TOPS. Google claims that the hardware ca execute mobile vision models like MobileNetV2 at almost 400 frames per seconds in a power efficient approach.
|Model Architecture||Desktop CPU + USB Accelerator||Development Board|
|MobileNet V2 SSD||7.2||14|
Evidently, the standalone Google Coral Development board performs at par with a Desktop CPU along with USB accelerator with edge TPU. However, the MobileNet V2 convolutional neural network architecture for mobile devices. For more details on the benchmarking, visit the documentation by Google.
Note: Desktop CPU is a Single 64-bit Intel(R) Xeon(R) Gold 6154 CPU @ 3.00GHz
Google Coral Development Board Specifications
Let us take a detailed look at the specifications of the Google Coral Development Board:
- CPU: NXP i.MX 8M SoC (quad Cortex-A53, Cortex-M4F)
- GPU: Integrated GC7000 Lite Graphics
- ML accelerator: Google Edge TPU coprocessor performing 4 TOPS (int8); 2 TOPS per watt
- Memory: 1GB LPDDR4 RAM
- Storage: 8 GB eMMC flash storage and expandable via MicroSD slot slot
- Wireless connectivity: IEEE 802.11b/g/n/ac 2.4/5GHz and Bluetooth 4.2
- USB: Type-C OTG; Type-C power; Type-A 3.0 host; Micro-B serial console
- LAN: Gigabit Ethernet port
- Audio: 3.5mm audio jack (CTIA compliant); Digital PDM microphone (x2); 2.54mm 4-pin terminal for stereo speakers
- Video: HDMI 2.0a (full size); 39-pin FFC connector for MIPI-DSI display (4-lane); 24-pin FFC connector for MIPI-CSI2 camera (4-lane)
- GPIOs: 3.3V power rail; 40 - 255 ohms programmable impedance; ~82 mA max current
- Power: 5V DC (USB Type-C)
- Dimensions: 88 mm x 60 mm x 24mm
Add-on boards for Google Coral Development Board
Specifically designed for Coral Development Board with a 24-pin FFC, the Google Coral Camera features ISP functions like automatic exposure control, automatic white balance, automatic band filter, and many more. For image quality control, the hardware features color saturation, hue, gamma, sharpness, less correction, and noise cancellation. At the heart of the camera is the 5-megapixel OmniVision sensor with a FOV of 84.0°/ 87.6°. The hardware is a good choice if you plan to perform real-time inference with a vision model.
Specifications of Coral Camera:
- Sensor: 5-megapixel OmniVision sensor
a. 1.4um x 1.4um pixel
b. Active array size 2582x1933
- Focus: Auto focus, focal length 2.5mm, range 10cm-infinit
- FOV: 84.0° / 87.6°
- Connections: MIPI-CSI, dual lane MIPI interface
- Dimensions: 25mm x 25mm
To interface a camera to the Coral Development Board it should either have a MIPI-CSI connector or should be a USB camera. If you already have a USB camera, you can save up on buying the official Coral camera.
Coral Environmental Sensor Board
Fitting well in the Coral hardware ecosystem, the Coral Environmental Sensor Board is a pHAT that adds sensing functionalities to the host Coral Development Board as well as Raspberry Pi SBCs. The capabilities include atmospheric data such as light level, barometric pressure, temperature, and humidity. Through grove connectors, the operator can additionally interface external sensors. Integrated secure cryptoprocessor with Google keys enable connectivity with Google Cloud IoT Core services.
Specifications of Coral Environmental Sensor Board
- Display: 128x32 OLED display
- Sensor: Ambient light sensor (OPT3002), Barometric pressure sensor (BMP280), Humidity / temperature sensor (HDC2010)
- Security: Cryptoprocessor (ATECC608A)
- GPIOs: 40-pin GPIO female connector
- Connectors: 4 Grove connectors: 1x UART, 1x I2C, 1x PWM, and 1x 3.3/5V analog
- Button: General purpose button
- LED: General purpose LED
How to Get Started with Google Coral Development Board
To get started with the Coral Development Board, you are required to flash the Mendel Linux operation system to the board and access the board’s shell terminal. You are required to have a host computer running Linux, Mac or Windows 10 operating system with Python 3 installed. One MicroSD card with at least 8 GB of storage and an adapter to connect it to the host computer. For power supply, one USB Type-C charger and one USB Type-C to USB Type-A cable. Preferably there needs to be a Wi-Fi connection or Ethernet cable available with you.
For a video demo of the edge TPU performance, there is a set of commands provided by the manufacturer to run a model using PyCoral API.
Final thoughts on Google Coral Development Board
In terms of the specifications and the customer response to the product, the hardware seems to have performed well, being one of the successful embedded hardware from Google with edge TPU. If you are looking for a compact form factor with edge TPU but can afford to lose some GPIOs pins, then the Coral USB accelerator can also be a considerably good option. The hardware is available to purchase on the Electromaker e-store at $218.75. Let us know what you think and comment if you have already developed a project using Google Coral Development Board.