i.MX
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]
Many devices use i.MX processors, such as Ford Sync, Kobo_eReader, Amazon Kindle, Sony Reader, Onyx Boox readers/tablets, SolidRun SOM's (including CuBox), some Logitech Harmony remote controls and Squeezebox radio, 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 solutions consist of hardware (processors and development boards) and software optimized for the processor.
i.MX 1 series
Launched in 2001/2002, the i.MX1x series is based on the ARM920T architecture.
- i.MX1 = 200 MHz ARM920T
- i.MXS = 100 MHz ARM920T
- i.MXL = 150-200 MHz ARM920T
i.MX 2 series
The i.MX2x series is a family of processors based on the ARM9 architecture (ARM926EJ-S), designed in CMOS 90 nm process.
i.MX 21 family
The i.MX21 family is designed for low power handheld devices. It was launched in 2003.
- i.MX21 = 266 MHz ARM9 platform + CIF VPU (decode/encode) + security
- i.MX21S = 266 MHz ARM9 platform + security
i.MX 27 family
The i.MX27 family is designed for videotelephony and video surveillance. It was launched in 2007.
- i.MX27 = 400 MHz ARM9 platform + D1 VPU (decode/encode) + IPU + security
- i.MX27L = 400 MHz ARM9 platform + IPU + security
i.MX 25 family
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.
- i.MX258 (industrial) = 400 MHz ARM9 platform + LCDC (with touch screen support) + security
- i.MX257 (consumer/industrial) = 400 MHz ARM9 platform + LCDC (with touch screen support)
- i.MX253 (consumer/industrial) = 400 MHz ARM9 platform + LCDC + security (no touch)
- i.MX255 (automotive) = 400 MHz ARM9 platform + LCDC (with touch screen support) + security
- i.MX251 (automotive) = 400 MHz ARM9 platform + security
i.MX 23 family
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. This unique integration removes the need for external power management chip and audio codec chip.
- i.MX233 (consumer) = 454 MHz ARM9 platform + LCD Controller (with touch screen support) + Pixel Pipeline + security + Power Management Unit + audio codec. Provided in 128LQFP or 169 BGA packages.
i.MX 28 family
The i.MX28 family was launched in 2010. It especially integrates key security features in hardware, an ADC and the power management unit. It supports mDDR, LV-DDR2, DDR2-SDRAM at 200 MHz.
- i.MX287 (industrial) = 454 MHz ARM9 platform + LCDC (with touch screen support) + security + power management + dual CAN interface + dual Ethernet + L2 Switch
- i.MX286 (industrial) = 454 MHz ARM9 platform + LCDC (with touch screen support) + security + power management + dual CAN interface + single Ethernet
- i.MX285 (automotive) = 454 MHz ARM9 platform + LCDC (with touch screen support) + security + power management + dual CAN interface
- i.MX283 (consumer/industrial) = 454 MHz ARM9 platform + LCDC (with touch screen support) + security + power management + single Ethernet
- i.MX281 (automotive) = 454 MHz ARM9 platform + security + power management + dual CAN interface + single Ethernet
- i.MX280 (consumer/industrial) = 454 MHz ARM9 platform + security + power management + single Ethernet
i.MX 3 series
The i.MX3x series is a family of processors based on the ARM11 architecture (ARM1136JF-S mainly), designed in CMOS 90 nm process.
i.MX 31 family
The i.MX31 was launched in 2005. It integrates a 532 MHz ARM1136 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.
- i.MX31 (consumer/industrial/automotive) = 532 MHz ARM1136 platform + VPU + 3D GPU + IPU + security
- i.MX31L (consumer/industrial/automotive) = 532 MHz ARM1136 platform + VPU + IPU + security
i.MX 37 family
The i.MX37 processor is designed for Portable Media Players. It was launched in 2008.
- i.MX 37 (consumer) = 532 MHz ARM1176 CPU platform + D1 VPU (multiformat D1 decode) + IPU + security block
It supports mDDR-SDRAM at 133 MHz.
i.MX 35 family
The i.MX35 family is the replacement of i.MX31. It was launched in 2009. The high-end member of the family, i.MX357, integrates an 532 MHz ARM1136 CPU platform (with Vector Floating Point unit, L1 caches and 128KB L2 cache) + 2.5D GPU (OpenVG 1.1) + IPU + security block It supports DDR2-SDRAM at 133 MHz.
- i.MX357 (consumer/industrial) = 532 MHz ARM1136 CPU platform + 2.5D GPU + IPU + security
- i.MX353 (consumer/industrial) = 532 MHz ARM1136 CPU platform + IPU + security
- i.MX356 (automotive) = 532 MHz ARM1136 CPU platform + 2.5D GPU + IPU + security
- i.MX355 (automotive) = 532 MHz ARM1136 CPU platform + IPU + security
- i.MX351 (automotive) = i.MX355 with no LCD interface
i.MX 5 series
The i.MX5x series is based on the ARM Cortex A8 core. It comprises 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 CMOS 65 nm process. Some models have an Imageon z460 GPU.
i.MX 51 family
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 3D GPU (OpenGL ES 2.0) + 2.5D GPU (OpenVG 1.1) + IPU + security block. It especially supports DDR2 SDRAM at 200 MHz. The imx51 family was launched in 2009.
- i.MX515 (consumer/industrial) = 800 MHz ARM Cortex A8 platform (600 MHz for industrial) + HD VPU + 3D GPU + 2.5D GPU + IPU + security
- i.MX513 (consumer/industrial) = 800 MHz ARM Cortex A8 platform (600 MHz for industrial) + HD VPU + IPU
- i.MX512 (consumer/industrial) = 800 MHz ARM Cortex A8 platform (600 MHz for industrial) + IPU
- i.MX516 (automotive) = 600 MHz ARM Cortex A8 platform + HD VPU + 3D GPU + 2.5D GPU + IPU + security block
- i.MX514 (automotive) = 600 MHz ARM Cortex A8 platform + 3D GPU + 2.5D GPU + IPU + security block
i.MX 50 family
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.MX508 (consumer) = 800 MHz ARM Cortex A8 platform + 2.5D GPU + Pixel Pipeline + E Ink display controller.
i.MX 53 family
i.MX535 was announced in June 2010. Shipped since the first quarter of 2011.
- i.MX537 (industrial) = 800 MHz ARM Cortex A8 platform + Full HD VPU (1080p decode) + 3D GPU + 2.5D GPU + IPU + security + IEEE1588
- i.MX535 (consumer) = 1 GHz ARM Cortex A8 platform + Full HD VPU (1080p decode) + 3D GPU + 2.5D GPU + IPU + security
- i.MX536 (automotive) = 800 MHz ARM Cortex A8 platform + Full HD VPU (1080p decode) + 3D GPU + 2.5D GPU + IPU + security
- i.MX534 (automotive) = 800 MHz ARM Cortex A8 platform + 3D GPU + 2.5D GPU + IPU + security
i.MX 6 series
The i.MX6 series are based on the ARM Cortex A9 solo, dual or quad cores and typically comes with one or more Vivante GPUs. It is designed in CMOS 40 nm process. i.MX6 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.MX6 UltraLite | 528 MHz (Cortex-A7) |
1 | 128 | 128 | 1x PXP | security | ||||
i.MX6 SoloLite | 1.0 GHz | 1 | 256 | 128 | Vivante GC320 | Vivante GC355 | 1x PXP | security | ||
i.MX6 SoloX | 1.0 GHz | 1 | 256 | 128 | Vivante GC400T / 1 / 720 | Vivante GC320 | Vivante GC355 | 1x PXP | Cortex-M4 core, security | |
i.MX6 Solo | 1.0 GHz | 1 | 512 | 128 | Vivante GC880 / 1 / 528 | Vivante GC320 | Full HD (1080p decode) | 1x IPUv3, 1x PXP | security | |
i.MX6 DualLite | 1.0 GHz | 2 | 512 | 128 | Vivante GC880 / 1 / 528 | Vivante GC320 | Full HD (1080p decode) | 1x IPUv3, 1x PXP | security | |
i.MX6 Dual | 1.2 GHz | 2 | 1024 | 256 | Vivante GC2000 / 4 / 594 | Vivante GC320 | Vivante GC355 | Full HD (1080p decode) | 2x IPUv3 | security |
i.MX6 Quad | 1.2 GHz | 4 | 1024 | 256 | Vivante GC2000 / 4 / 594 | Vivante GC320 | Vivante GC355 | dual Full HD (1080p decode) | 2x IPUv3 | security |
i.MX6 DualPlus | 1.0(1.2) GHz | 2 | 1024 | 512 | Vivante GC2000+ / 4 / 720 | Vivante GC320 | Vivante GC355 | Full HD (1080p decode) | 2x IPUv3 | security |
i.MX6 QuadPlus | 1.0(1.2) GHz | 4 | 1024 | 512 | Vivante GC2000+ / 4 / 720 | Vivante GC320 | Vivante GC355 | dual Full HD (1080p decode) | 2x IPUv3 | security |
- "Plus" versions with 1.2 GHz are currently only available via special request to NXP.[2]
- Vivante GC2000 achieves ~19 GFLOPS for a 594 MHz shader clock and ~23 GFLOPS for a 720 MHz shader clock.
i.MX 7 series
The i.MX7 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.[3] So far 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.[4][5]
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 |
i.MX 8 series
The i.MX8 series was announced in September 2013. The i.MX8 is based on CPU cores using the ARMv8-A 64-bit CPU architecture. NXP have written that the i.MX8 series is designed for Driver Information Systems (car computers) and applications have been released.[4][6]
In May 2016 the i.MX8 became available as a multisensory enablement kit (MEK) based on i.MX 8.[7][8][9] Slides from NXP FTF found on the web [10] 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.[11][12]
The i.MX8 was announced Q1 2017, based around 3 products.[13][14] All products include four Cortex-A53 and two Cortex-M4F CPU cores. The more powerful 'QuadPlus' and 'QuadMax' versions includes an additional one or two Cortex-A72 CPU cores, respectively. All i.MX8 SoCs include two Vivante GC7000 Series GPUs, with the lower end products 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 8QuadMax | 1.2GHz + 1.8GHz[15] | 4x Cortex-A53 + 2x Cortex-A72 | 2x 1MB | 2x Vivante GC7000/XSVX | h.265 decode 4K/2K, h.264 encode/decode 1080p | 2x Cortex-M4F (266Mhz) |
i.MX 8QuadPlus | 1.2GHz + 1.8GHz | 4x Cortex-A53 + 1x Cortex-A72 | 2x 1MB | 2x Vivante GC7000Lite/XSVX | h.265 decode 4K/2K, h.264 encode/decode 1080p | 2x Cortex-M4F (266Mhz) |
i.MX 8Quad | 1.5GHz | 4x Cortex-A53 | 1MB | 2x Vivante GC7000Lite/XSVX | h.265 decode 4K/2K, h.264 encode/decode 1080p | 2x Cortex-M4F (266Mhz) |
i.MX 8M
The i.MX 8M series were announced on January 4th at CES 2017.[16] Main features:[17]
- Up to four 1.5 GHz ARM Cortex-A53 processors
- Cortex-M4F for real-time processing
- LPDDR4, DDR4 and DDR3(L) memory support
- Two USB 3.0 interfaces with PHY and Type-C support
- Two PCIe interfaces (1-lane each) with L1 substates for fast wakeup and low power
- HDMI 2.0a and MIPI-DSI (4-lane) display interfaces • Up to two MIPI-CSI2 (4-lane) camera interfaces
- Gigabit Ethernet MAC with Audio Video Bridging (AVB) and EEE capability
- 4K UltraHD resolution and 10-bit High Dynamic Range (HDR) in h.264, h.265 and VP9 support
- Up to 4Kp60 resolution on the HDMI 2.0a output and 1080p60 resolution on the MIPI-DSI (4-lanes) interface
- OpenGL ES 3.1, OpenCL 1.2, OpenGL 3.0, OpenVG and Vulkan support
Feature | ARM Core | ARM Core | Audio | GPU | VPU | Camera |
---|---|---|---|---|---|---|
i.MX 8M Dual | 2x 1.5GHz Cortex-A53 | 1 x Cortex-M4F | 20 channels in/out;
32-bit up to 384 KHz, with DSD512 support |
GC7000Lite | 4Kp60, h.265 and VP9 | 2 x MIPI-CSI |
i.MX 8M Quad | 4x 1.5GHz Cortex-A53 | |||||
i.MX 8M QuadLite | - | |||||
i.MX 8M Solo | 1x 1.5GHz Cortex-A53 | GC7000nanoULTRA | - |
i.MX 8X
The i.MX 8X series were announced on March 14th 2017.[18] Main features:[19]
- Up to four (4) 1.2 GHz Cortex-A35 processors
- Cortex-M4F for real-time processing
- Latest cryptography standards (AES, flashless SHE, elliptical curve cryptography, key storage)
- ECC memory and Industrial Safety Integrity Level 3 (SIL 3) certification
- Tensilica HiFi 4 DSP for audio pre- and post- processing, key word detection and speech recognition
- 28nm FD-SOI process
Feature | ARM Core | ARM Core | DRAM | GPU | VPU | Ethernet | USB with PHY | |
---|---|---|---|---|---|---|---|---|
i.MX 8QuadXPlus | 4x 1.2GHz Cortex-A35 | 1 x Cortex-M4F | 32-bit | DDR3L (ECC option)
LPDDR4 (no ECC) |
GC7000Lite | 4K h.265 dec
1080p h.264 enc/dec |
2x Gigabit with AVB | 1x USB 3.0
1x USB 2.0 |
i.MX 8DualXPlus | 2x 1.2GHz Cortex-A35 | |||||||
i.MX 8DualX | 16-bit | GC7000UltraLite | 1080p h.264 enc/dec | 1x Gigabit with AVB
1x 10/100 |
2x USB 2.0 |
Related series
For the automotive market a very similar series currently using ARM Cortex-A53 and/or ARM Cortex-M4 cores got presented in mid 2015 using the prefix S32.
Software support
Freescale proposes 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 a portfolio of multimedia Codecs (ARM and Video processing unit accelerated). The i.MX solution also includes middleware with reuse of open source frameworks like multimedia framework plugins, power management, security/DRM or graphics (OpenGL/OpenVG).
All software solutions for i.MX are publicly available on the company website.
Linux
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.[20] Since Ubuntu 11.10 support for the i.MX53 Quickstart board is available as a preinstalled desktop or server SD card.[21]
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.
FreeBSD
Support for the Freescale i.MX51 was added to FreeBSD on 2013-03-20.[22] Support for other members of the i.MX5 family has been added since.
Support for the Freescale i.MX6 family was added to FreeBSD on 2013-10-31.[23]
NetBSD
NetBSD 6.0 comes with support for the Freescale i.MX51.[24] In version 7.0, support for i.MX6 based boards was added.[25]
OpenBSD
Support for the FreeScale's i.MX6 series SoC was added to [26] OpenBSD's head on the 2013-09-06.
Windows CE
Freescale i.MX development kits include WinCE.
Android
In February 2010, Freescale launched an Android platform for the i.MX5x family.[27]
Chromium
In early 2010 Freescale demoed Chromium OS running on the i.MX515 processor.[28] The company has not disclosed any further plans about Chromium or Chrome.
Real-time OS
Freescale has a range of partners providing real-time operating systems and software solutions running on the i.MX processors, such as Trinity Convergence, Adeneo, Thundersoft, Intrinsyc, Wind River Systems, QNX, Green Hills and Mentor Graphics.[29]
Reference designs
In January 2010, Freescale announced the first platform of its Smart Application Blueprint for Rapid Engineering (SABRE) series.[30] 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,[31] based on i.MX515.
Many more reference boards are mentioned and supported through the Freescale i.MX community website. These include:
- i.MX23EVK
- i.MX25PDK
- i.MX28EVK
- MX37PDK
- i.MX35PDK
- i.MX51EVK
- i.MX53QSB (LOCO)
See also
- List of Freescale Microcontrollers
- eBook reader
- Automotive infotainment
- Chumby
- Device tree
- Smartbook
- UDOO
- iWave System Technologies
References
- ↑ "Product Longevity|NXP". Freescale.com. Retrieved 2016-09-24.
- ↑ "i.MX6QP|i.MX 6QuadPlus Processors|Quad Core". NXP.com. Retrieved 2016-09-24.
- ↑ "Freescale, Cisco, Ciena Give Nod to FD-SOI". EE Times. Retrieved 2016-09-24.
- 1 2 "Freescale Launches i.MX 7 Series Cortex A7 + Cortex M4 Processors for IoT Applications". Cnx-software.com. 2015-06-23. Retrieved 2016-09-24.
- ↑ "Archived copy" (PDF). Archived from the original (PDF) on 2016-03-04. Retrieved 2016-02-23.
- ↑ Brad Linder. "Freescale unveils plans for i.MX 7, i.MX 8 chips". Liliputing.com. Retrieved 2016-09-24.
- ↑ "NXP Semiconductors :: Press Release". Media.nxp.com. 2016-05-17. Retrieved 2016-09-24.
- ↑ "i.MX 8 Multisensory Enablement Kit". NXP.com. Retrieved 2016-09-24.
- ↑ "NXP Unveils i.MX 8 Multisensory Enablement Kit with Hexa Core ARMv8 Processor". Cnx-software.com. 2016-05-17. Retrieved 2016-09-24.
- ↑ "拡大画像 013 | 【レポート】NXP FTF 2016 - 28nm FD-SOIで製造されるi.MX 8 (1) FTFがNX…… | マイナビニュース". News.mynavi.jp. Retrieved 2016-09-24.
- ↑ "NXP Unveils i.MX 8 Multisensory Enablement Kit with Hexa Core ARMv8 Processor". Cnx-software.com. 2016-05-17. Retrieved 2016-09-24.
- ↑ "i.MX 8 Multisensory Enablement Kit". NXP.com. Retrieved 2016-09-24.
- ↑ Linder, Brad (6 October 2016). "NXP’s 64-bit i.MX8 chips coming in Q1, 2017". Liliputing. Retrieved 6 October 2016.
- ↑ "i.MX8 Factsheet" (PDF). NXP. NXP. Retrieved 6 October 2016.
- ↑ "i.MX Presentation" (PDF). Retrieved 29 November 2016.
- ↑ "NXP Semiconductors :: Press Release". media.nxp.com. Retrieved 2017-04-09.
- ↑ "i.MX 8M Fact Sheet" (PDF).
- ↑ "NXP Semiconductors :: Press Release". media.nxp.com. Retrieved 2017-04-09.
- ↑ "i.MX 8X Fact Sheet" (PDF).
- ↑ "ARM/MaverickReleaseNotes - Ubuntu Wiki". Wiki.ubuntu.com. 2011-09-23. Retrieved 2016-09-24.
- ↑ "OneiricOcelot/ReleaseNotes - Ubuntu Wiki". Wiki.edubuntu.org. Retrieved 2016-09-24.
- ↑ "Svn commit: r248557 Controller". Lists.freebsd.org. Retrieved 2016-09-24.
- ↑ "Wandboard support". Lists.freebsd.org. Retrieved 2016-09-24.
- ↑ "Announcing NetBSD 6.0". Netbsd.org. Retrieved 2016-09-24.
- ↑ "NetBSD Blog". Blog.netbsd.org. 2014-11-06. Retrieved 2016-09-24.
- ↑ "'CVS: cvs.openbsd.org: src' - MARC". Marc.info. 2013-09-06. Retrieved 2016-09-24.
- ↑ "Android OS for i.MX Applications Processors|NXP". Freescale.com. Retrieved 2016-09-24.
- ↑ "Chromium OS on a $199 Tablet". YouTube. 2010-03-08. Retrieved 2016-09-24.
- ↑
- ↑
- ↑ "Archived copy". Archived from the original on 2011-06-07. Retrieved 2010-04-22.
External links
- i.MX Applications processor - Product page
- Freescale i.MX community website
- Freescale Public GIT - Linux Kernel and U-Boot.
- Chips&Media's video codec technology used in Freescale’s i.MX6 series