The i.MX range is a family of Freescale Semiconductor (now part of NXP) proprietary microcontrollers for multimedia applications based on the ARM architecture and focused on low-power consumption. The i.MX application processors are SoCs (System-on-Chip) that integrate many processing units into one die, like the main CPU, a video processing unit, and a graphics processing unit for instance. The i.MX products are qualified for automotive, industrial, and consumer markets. Most of them are guaranteed for a production lifetime of 10 to 15 years.[1]
Devices that use i.MX processors include Ford Sync, the Amazon Kindle and Kobo eReader series of e-readers until 2021, Zune (except for Zune HD), Sony Reader, Onyx Boox readers/tablets, SolidRun SOM's (including CuBox), Purism's Librem 5, some Logitech Harmony remote controls and Squeezebox radio and some Toshiba Gigabeat MP4 players. The i.MX range was previously known as the "DragonBall MX" family, the fifth generation of DragonBall microcontrollers. i.MX originally stood for "innovative Multimedia eXtension".
The i.MX products consist of hardware (processors and development boards) and software optimized for the processor.
Launched in 2001/2002, the i.MX / MX-1 series is based on the ARM920T architecture.
The i.MX2x series is a family of processors based on the ARM9 architecture (ARM926EJ-S), designed in a 90 nm process.
The i.MX21 family is designed for low power handheld devices. It was launched in 2003.
The i.MX27 family is designed for videotelephony and video surveillance. It was launched in 2007.
The i.MX25 family was launched in 2009. It especially integrates key security features in hardware.The high-end member of the family, i.MX258, integrates a 400 MHz ARM9 CPU platform + LCDC (LCD controller) + security block and supports mDDR-SDRAM at 133 MHz.
The i.MX233 processor (formerly known as SigmaTel STMP3780 of the STMP37xx family), launched in 2009, integrates a Power Management Unit (PMU) and a stereo audio codec within the silicon, thus removing the need for external power management chip and audio codec chip.
The i.MX28 family was launched in 2010. It integrates key security features in hardware, an ADC, and the power management unit. It supports mDDR, LV-DDR2, and DDR2-SDRAM memory at 200 MHz.
The i.MX3x series is a family of processors based on the ARM11 architecture (ARM1136J(F)-S mainly), designed in a 90 nm process.
The i.MX31 was launched in 2005. It integrates a 532 MHz ARM1136JF-S CPU platform (with vector floating point unit, L1 caches and 128KB L2 caches) + Video Processing Unit (VPU) + 3D GPU (OpenGL ES 1.1) + IPU + security block. It supports mDDR-SDRAM at 133 MHz. The 3D and VPU acceleration is provided by the PowerVR MBX Lite.
The i.MX37 processor is designed for portable media players. It was launched in 2008.
It supports mDDR-SDRAM at 133 MHz.
The i.MX35 family was launched in 2009 and is the replacement for the i.MX31 series. The high-end member of the family, i.MX357, integrates a 532 MHz ARM1136J(F)-S CPU platform (with Vector Floating Point unit, L1 caches and 128KB L2 cache), a 2.5D GPU (OpenVG 1.1), a IPU, and a security block. It supports DDR2-SDRAM at 133 MHz.
The i.MX5x series is based on the ARM Cortex A8 core. It consists of two families: the i.MX51 family (high-end multimedia devices like smartbook or automotive infotainment) and the i.MX50 family (eReaders). It is designed in a 65 nm process. Freescale licensed ATI's Imageon technology in 2007,[2] and some i.MX5 models include an Imageon Z460 GPU.
The high-end member of the family, i.MX515, integrates an 800 MHz ARM Cortex A8 CPU platform (with NEON co-processor, Vector Floating Point Unit, L1 caches and 256KB L2 cache) + multi-format HD 720p decode / D1 encode hardware video codecs (VPU, Video Processing Unit) + Imageon Z430 3D GPU (OpenGL ES 2.0) + 2.5D GPU (OpenVG 1.1) + IPU + security block.[3] [4] It especially supports DDR2 SDRAM at 200 MHz. The imx51 family was launched in 2009.
The i.MX508 processor is the result of Freescale collaboration with E Ink. It is dedicated for eReaders. Launched in 2010, it integrates the E Ink display controller within the silicon to save both BOM cost and space on the PCB. It especially supports LP-DDR2 SDRAM at 400 MHz.
i.MX535 was announced in June 2010. Shipped since the first quarter of 2011.
The i.MX 6 series are based on the ARM Cortex A9 solo, dual or quad cores (in some cases Cortex A7) and typically comes with one or more Vivante GPUs. It is designed in the 40 nm process.i.MX 6 Solo, Dual and Quad were announced in January 2011, during Consumer Electronics Show in Las Vegas.
Name | Clock speed | CPU cores | L2 cache in kB | Embedded SRAM in kB | 3D GPU / shaders / shader clock in MHz | 2D GPU | Vector GPU | VPU | other graphics cores | other cores | |
---|---|---|---|---|---|---|---|---|---|---|---|
i.MX 6 ULL | 528 MHz (Cortex-A7) | 1 | 128 | 128 | security | ||||||
i.MX 6 UltraLite | 528/696 MHz (Cortex-A7) | 1 | 128 | 128 | security | ||||||
i.MX 6 SLL[6] | 800 MHz/1.0 GHz | 1 | 256 | 128 | security | ||||||
i.MX 6 SoloLite | 1.0 GHz | 1 | 256 | 128 | Vivante GC320 | Vivante GC355 | security | ||||
i.MX 6 SoloX | 1.0 GHz | 1 | 256 | 128 | / 1 / 720 | Vivante GC320 | Vivante GC355 | Cortex-M4 core, security | |||
i.MX 6 Solo | 1.0 GHz | 1 | 512 | 128 | / 1 / 528 | Vivante GC320 | Full HD (1080p decode) | security | |||
i.MX 6 DualLite | 1.0 GHz | 2 | 512 | 128 | / 1 / 528 | Vivante GC320 | Full HD (1080p decode) | security | |||
i.MX 6 Dual | 1.2 GHz | 2 | 1024 | 256 | / 4 / 594 | Vivante GC320 | Vivante GC355 | Full HD (1080p decode) | security | ||
i.MX 6 Quad | 1.2 GHz | 4 | 1024 | 256 | / 4 / 594 | Vivante GC320 | Vivante GC355 | dual Full HD (1080p decode) | security | ||
i.MX 6 DualPlus | 1.0 (1.2) GHz | 2 | 1024 | 512 | / 4 / 720 | Vivante GC320 | Vivante GC355 | Full HD (1080p decode) | security | ||
i.MX 6 QuadPlus | 1.0 (1.2) GHz | 4 | 1024 | 512 | / 4 / 720 | Vivante GC320 | Vivante GC355 | dual Full HD (1080p decode) | security |
The i.MX 7 series is based on the low-power ARM Cortex A7 CPU core with a secondary ARM Cortex M4 real-time co-processor. It is designed 28 nm fully depleted silicon on insulator (FDSOI) process.[8] Only low-powered single and dual-core models, designed for IoT applications, have been released. i.MX 7Solo and i.MX 7Dual were announced in September 2013.[9] [10]
Name | Clock speed (MHz) | CPU cores | L2 cache (KB) | 3D GPU | 2D GPU | Vector GPU | VPU | other graphics cores | other cores | |
---|---|---|---|---|---|---|---|---|---|---|
i.MX 7Solo | 800 | 1 | 512 | - | - | - | - | PXP | Secondary CPU – ARM Cortex M4 real-time co-processor | |
i.MX 7Dual | 1000 | 2 | 512 | - | - | - | - | PXP | Secondary CPU – ARM Cortex M4 real-time co-processor |
There are four major different series of the i.MX 8:
Each series differs significantly from each other and are not pin compatible. Within each series some versions are pin compatible.
Each series also has a suffix such as Quad, Dual, Plus, Max or a combination thereof, for example: QuadMax or DualPlus. The i.MX 8 series has many variants but it is not clear how the name corresponds to a feature set. In previous CPU series the naming convention clearly corresponds to a function or feature set, but this is not the case with i.MX 8.
The i.MX 8 series was announced in September 2013 and is based on the ARMv8-A 64-bit CPU architecture. According to NXP, the i.MX 8 series is designed for Driver Information Systems (car computers) and applications have been released.
In May 2016 the i.MX 8 became available as a multisensory enablement kit (MEK) based on i.MX 8.[11] [12] [13] Slides from NXP FTF found on the web [14] indicated an initial total of 5 variants (with a main level of categorization into "Dual" and "Quad") with varying the CPU and GPU capabilities. The CPU was suggested to include varying counts of Cortex-A72, Cortex-A53 and Cortex-M4, while the GPU is either 1 or 2 units of the Vivante GC7000VX. Other publications supported this general image, some even including photos of an evaluation kit that is named "Multisensory Enablement Kit" (MEK) that got later promoted as a development support product by NXP.[13] [12]
The i.MX 8 was announced Q1 2017, based around 3 products.[15] Two variants include four Cortex-A53. All versions includes one or two Cortex-A72 CPU cores and all versions includes two Cortex-M4F CPU cores.
All i.MX 8 SoCs include Vivante GC7000 Series GPUs. The QuadPlus is using GC7000Lite cores, while the 'QuadMax' includes two full GC7000 GPUs.
Name | Clock speed (MHz) | CPU cores | L2 cache | GPU | VPU | Other cores | |
---|---|---|---|---|---|---|---|
i.MX 8 QuadMax | 1.2 GHz + 1.6 GHz [16] | 4× Cortex-A53 + 2× Cortex-A72 | 2× 1 MB | 2× Vivante GC7000/XSVX | H.265 decode 4K/2K, H.264 encode/decode 1080p | 2× Cortex-M4F (266 MHz) | |
i.MX 8 QuadPlus | 1.2 GHz + 1.6 GHz | 4× Cortex-A53 + 1× Cortex-A72 | 2× 1 MB | 2× Vivante GC7000Lite/XSVX | H.265 decode 4K/2K, H.264 encode/decode 1080p | 2× Cortex-M4F (266 MHz) | |
i.MX 8 DualMax | 1.6 GHz | 2× Cortex-A72 | 1 MB | 1× Vivante GC7000/XSVX | H.265 decode 4K/2K, H.264 encode/decode 1080p | 2× Cortex-M4F (266 MHz) |
Standard Key Features: Advanced Security, Ethernet with AVB, USB 3.0 with PHY, MMC/SDIO, UART, SPI, I²C, I²S, Timers, Secure RTC, Media Processor Engine (Neon™), Integrated Power Management.
CPU, GPU and DSP | HMI & Multimedia | GPU Libraries and Extensions | Interfaces | Memory Types | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product Family | Cortex-A72 | Cortex-A53 | Cortex-A35 | Cortex-M4F | Cortex-M33 | DSP | GPU | Display Resolution and Interfaces: MIPI-DSI / Parallel / HDMI | Camera Interfaces: MIPI-CSI / Parallel / HDMI | Video Decode Resolution (Top Codecs) | Video Encode Resolution (Top Codecs) | OpenVX (vision) | OpenGL ES | OpenCL | Vulkan | PCIe | Gigabit Ethernet | LPDDR4 | DDR4 | DDR3L | ECC option | |
i.MX 8 Advanced Graphics, Performance and Virtualization | 2 | 4 | 2 | 1 | 2 | 4k + 1080p2 / 1 / 1 | 2 / 2 / 1 | 4K(h.265, h.264) | 1080p60(h.264) | 3.1 | 2.0 | 2 | 2x | |||||||||
i.MX 8M Advanced Audio, Voice and Video | 4 | 1 | 1 | 4k + 1080p1 / 0 / 1 | 2 / 0 / 0 | 4Kp60 withHigh Dynamic Range(h.265, VP9);4Kp30(h.264, VP8) | 1080p30(h.264) - SW | 3.1 | 1.2 | 2 | 1x | |||||||||||
i.MX 8M Mini Embedded Consumer and Industrial Applications | 4 | 1 | 1 | 1080p1 / 0 / 0 | 1 / 0 / 0 | 1080p60(h.265, VP9, h.264, VP8) | 1080p60(h.264) | 2.0 | 1 | 1x | ||||||||||||
| 2 | 1 | 1 | 2 | 1 / 1 / 0 | 1 / 1 / 0 | 3.1 | Yes | 0 | 0x | ||||||||||||
| 1 | 1 | 1 | 1 | 1 / 1 / 0 | 1 / 1 / 0 | 0 | 0x | ||||||||||||||
i.MX 8X Safety certifiable and efficient performance | 4 | 1 | 1 | 1 | 4K or 2x1080p2 / 1 / 0 | 1 / 1 / 0 | 4K (h.265);1080p60(h.264, VP8) | 1080p30(h.264) | 3.1 | 1.2 EP | 1 | 2x |
Feature | ARM core | DSP | GPU | PCIe 3.0 | ||
---|---|---|---|---|---|---|
i.MX 8 QuadMax | 2× Cortex-A72 | 4× Cortex-A53 | 2× Cortex-M4F | HiFi 4 DSP | 2 x GC7000XSVX | 1x (2-lane) |
i.MX 8 QuadPlus | 1× Cortex-A72 | 2 x GC7000Lite/XSVX | 1x (1-lane) |
The i.MX 8M series were announced on January 4 at CES 2017.[17] Main features:[18]
Feature | ARM core | ARM core | Audio | GPU | VPU | Camera |
---|---|---|---|---|---|---|
i.MX 8M Dual | 2× 1.5 GHz Cortex-A53 | 1× Cortex-M4F | 20 channels in/out;32-bit up to 384 kHz, with DSD512 support | GC7000Lite | 4Kp60, H.265 and VP9 | 2× MIPI-CSI |
i.MX 8M Quad | 4× 1.5 GHz Cortex-A53 | |||||
i.MX 8M QuadLite | - | |||||
i.MX 8M Solo | 1× 1.5 GHz Cortex-A53 | GC7000nanoULTRA | - |
The i.MX 8M Mini is NXP's first embedded multi-core heterogeneous applications processors built using 14LPC FinFET process technology.
At the heart is a scalable core complex of up to four Arm Cortex-A53 cores running up to 2 GHz plus Cortex-M4 based real-time processing domain at 400+MHz. i.MX 8M Mini core options are used for consumer, audio, industrial, machine learning training and inferencing across a range of cloud providers.
Features[19]
Feature | ARM core | ARM core | DRAM | Audio | GPU | Video Decode | Video Encode | Display | Camera | USB with PHY |
---|---|---|---|---|---|---|---|---|---|---|
i.MX 8M Mini | 1×, 2× or 4× Cortex-A53 | 1× Cortex-M4F | 32-bit LPDDR4/DDR4/DDR3(L) | 20x I2S32-bit up to 384 kHz with DSD512 and TDM support 8-ch PDM microphone inputs | 3D: GCNanoUltra 2D: GC320[20] | 1080p60 H.265, H.264, VP8, VP9 | 1080p60 H.264, VP8 | 1x MIPI-DSI | 1x MIPI-CSI | 1x PCIe 2.0 3x SDIO/eMMC 2x USB 2.0 1x GbE |
i.MX 8M Mini Lite | - | - |
The i.MX 8X series were announced on March 14, 2017.[21] Main features:[22]
Feature | ARM core | ARM core | DSP Core | DRAM | GPU | VPU | Ethernet | USB with PHY | |
---|---|---|---|---|---|---|---|---|---|
i.MX 8 QuadXPlus | 4× 1.2 GHz Cortex-A35 | 1× Cortex-M4F | Tensilica HiFi 4 DSP | 32-bit | DDR3L (ECC option)LPDDR4 (no ECC) | GC7000Lite | 4K H.265 dec 1080p H.264 enc/dec | 2× gigabit with AVB | 1× USB 3.01× USB 2.0 |
i.MX 8 DualXPlus | 2× 1.2 GHz Cortex-A35 | ||||||||
i.MX 8 DualX | 16-bit | GC7000UltraLite | 1080p H.264 enc/dec | 1× gigabit with AVB1× 10/100 | 2× USB 2.0 |
As of August 2020, this family consists of Cortex-M7 devices (400–600 MHz with up to 2 MB of SRAM) and Cortex-M33 devices (200–300 MHz with up to 5 MB of SRAM).
This series uses large amounts of SRAM instead of having flash memory.[23]
The series was introduced at up to 600 MHz on a 40 nm node, which was later upgraded to 1 GHz on a 28 nm node.[23]
The inaugural device from this series was the i.MX RT1050, introduced in the fall of 2017.[23] NXP supports the open source PyTorch Glow neural-network compiler in its eIQ machine learning software.[24] This especially targets IoT applications.
As of August 2020, the i.MX RT1170 is in preproduction status. It is slated for 1 GHz performance on the Cortex-M7, and provides an additional Cortex-M4 co-processor. For peripherals, the RT1170 provides two Gb Ethernet ports, not found elsewhere in this product family.[25] The part is fabricated in 28 nm FD-SOI. The processors run in separate clock and power domains, otherwise everything is shared between the two cores except for the private L1 caches.[26]
A very similar series designed for the automotive market currently using ARM Cortex-A53 and/or ARM Cortex-M4 cores was presented in mid-2015 using the prefix S32.
Freescale proposed a layered approach of software with selection of software components optimized for its chips. The i.MX board support packages (BSP), common across all i.MX nodes, consists of kernel optimization, hardware drivers, and unit tests. The company also provides multimedia codecs (ARM and Video processing unit accelerated). i.MX also includes middleware with reuse of open source frameworks like multimedia framework plugins, power management, security/DRM, or graphics (OpenGL/OpenVG).
Freescale i.MX development kits include a Linux software stack with a GNOME Mobile environment.
On the i.MX51 family, the reference user interface is Ubuntu. The last Ubuntu version supported is 10.04.1 (still available on mirrors). Ubuntu dropped the "official" i.MX51 family support since version 10.10.[27] Since Ubuntu 11.10 support for the i.MX53 Quickstart board is available as a preinstalled desktop or server SD card.[28]
The OpenEmbedded Linux distribution supports several i.MX platforms.
Commercial Linux support is available from companies like Lanedo, TimeSys, MontaVista, Wind River Systems and Mentor Graphics.
Support for the Freescale i.MX51 was added to FreeBSD on 2013-03-20.[29] Support for other members of the i.MX5 family has been added since.
Support for the Freescale i.MX 6 family was added to FreeBSD on 2013-10-31.[30]
NetBSD 6.0 comes with support for the Freescale i.MX51.[31] In version 7.0, support for i.MX 6 based boards was added.[32]
Support for the FreeScale's i.MX 6 series SoC was added to [33] OpenBSD's head on the 2013-09-06.
i.MX support in RISC OS has been available since 2015.
Freescale i.MX development kits include WinCE.
In February 2010, Freescale launched an Android platform for the i.MX5x family.[34]
In early 2010 Freescale demoed ChromiumOS running on the i.MX515 processor.[35] The company has not disclosed any further plans about Chromium or Chrome.
Freescale has a range of partners providing real-time operating systems and software running on the i.MX processors, such as Trinity Convergence, Adeneo, Thundersoft, Intrinsyc, Wind River Systems, QNX, Green Hills, SYSGO and Mentor Graphics.[36]
wolfSSL includes support for i.MX6 following all versions after (and including) wolfSSL v3.14.0. wolfSSL also provides additional support for using the Cryptographic Assistance and Assurance Module (CAAM) on the i.MX6.[37]
9front runs on MNT Reform (i.MX8) since mid-2022.[38]
In January 2010, Freescale announced the first platform of its Smart Application Blueprint for Rapid Engineering (SABRE) series.[39] It is a smartbook (tablet form factor with 7" touch screen resistive), running on i.MX515.
In February 2010, Freescale demoed the SABRE platform for eReaders,[40] based on i.MX515.
Many more reference boards are mentioned and supported through the Freescale i.MX community website.These include: