Intel Quark is a line of 32-bit x86 SoCs and microcontrollers by Intel, designed for small size and low power consumption, and targeted at new markets including wearable devices. The line was introduced at Intel Developer Forum in 2013, and discontinued in January 2019. [1]
Quark processors, while slower than Atom processors, are much smaller and consume less power. They lack support for SIMD instruction sets (such as MMX and SSE) [2] and only support embedded operating systems.
Quark powers the (now discontinued) Intel Galileo developer microcontroller board. [3] In 2016 Arduino released the Arduino 101 board that includes an Intel Quark SoC. [4] [5] The CPU instruction set is, for most models, the same as a Pentium (P54C/i586) CPU. [6]
The first product in the Quark line is the single-core 32 nm X1000 SoC with a clock rate of up to 400 MHz. The system includes several interfaces, including PCI Express, serial UART, I²C, Fast Ethernet, USB 2.0, SDIO, power management controller, and GPIO. There are 16 kB of on-chip embedded SRAM and an integrated DDR3 memory controller. [7] [8]
A second Intel product that includes Quark core, the Intel Edison microcomputer, was presented in January 2014. It has a form factor close to the size of an SD card, and is capable of wireless networking using Wi-Fi or Bluetooth. [9]
In January 2015, Intel announced the sub-miniature Intel Curie module for wearable applications, based on a Quark SE core with 80 kB SRAM and 384 kB flash. [10] At the size of a button, it also features a 6-axis accelerometer, a DSP sensor hub, a Bluetooth LE unit and a battery charge controller.
Intel announced the end-of-life of its Quark products in January 2019, with orders accepted until July 2019 and final shipments set for July 2022. [1] [11]
This section contains instructions, advice, or how-to content .(September 2021) |
The name Lakemont has been used in reference to the processor core in multiple Quark-series processors. [12] : 4 [13] : 42
Source: [14]
(The L2 cache column shows the size of the L1 cache.)
Model | sSpec number | Cores | Clock rate | GPU frequency | L2 cache | I/O bus | Memory | Voltage | TDP | Socket | Release date | Part number(s) | Release price (USD) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Quark X1000 |
| 1 | 400 MHz | — | 16 KB | PCIe | DDR3-800 | 0.95–1.1 V | 2.2 W |
| Q4'13 |
| $9.63 |
Quark X1001 |
| 1 | 400 MHz | — | 16 KB | PCIe | DDR3-800 | 0.95–1.1 V | 2.2 W |
| Q2'14 |
| $11.77 |
Quark X1010 |
| 1 | 400 MHz | — | 16 KB | PCIe | DDR3-800 (ECC) | 0.95–1.1 V | 2.2 W |
| Q1'14 |
| $10.16 |
Quark X1011 |
| 1 | 400 MHz | — | 16 KB | PCIe | DDR3-800 (ECC) | 0.95–1.1 V | 2.2 W |
| Q2'14 |
| $12.31 |
Quark X1020 |
| 1 | 400 MHz | — | 16 KB | PCIe | DDR3-800 (ECC) | 0.95–1.1 V | 2.2 W |
| Q2'14 |
| $11.45 |
Quark X1020D |
| 1 | 400 MHz | — | 16 KB | PCIe | DDR3-800 (ECC) | 0.95–1.1 V | 2.2 W |
| Q1'14 |
| $10.70 |
Quark X1021 |
| 1 | 400 MHz | — | 16 KB | PCIe | DDR3-800 (ECC) | 0.95–1.1 V | 2.2 W |
| Q2'14 |
| $13.39 |
Quark X1021D |
| 1 | 400 MHz | — | 16 KB | PCIe | DDR3-800 (ECC) | 0.95–1.1 V | 2.2 W |
| Q2'14 |
| $12.85 |
XCHG
are not supported) [15] Model | sSpec number | Cores | Clock rate | GPU frequency | L2 cache | I/O bus | Memory | Voltage | TDP | Socket | Release date | Part number(s) | Release price (USD) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Quark D1000 |
| 1 | 32 MHz | — | AHB-Lite, APB [16] : 30 | eSRAM | 1.62–3.63 V |
|
| Q3'15 | DMNIAD01SLVBT | $2.54 |
Model | sSpec number | Cores | Clock rate | GPU frequency | L2 cache | I/O bus | Memory | Voltage | TDP | Socket | Release date | Part number(s) | Release price (USD) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Quark D2000 |
| 1 | 32 MHz | — | AHB-Lite, [13] : 72 APB [13] : 96 | eSRAM | 1.62–3.63 V | 0.025 W |
| Q3'15 | FND2000 | $2.54 |
Model | sSpec number | Cores | Clock rate | GPU frequency | L2 cache | I/O bus | Memory | Voltage | TDP | Socket | Release date | Part number(s) | Release price (USD) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Quark SE C1000 |
| 1 | 32 MHz | — | 8 KB | AHB-Lite, APB | eSRAM | 1.8–3.3 V | 0.025 W |
| Q4'15 | LMCQ1000 | $10.32 |
Intel Quark SoC X1000 contains a bug (#71538) [17] that "under specific circumstances" results in a type of crash known as a segfault. The workaround implemented by Intel is to omit LOCK prefixes (not required on single-threaded processors) in the compiled code. [18] While source-based embedded systems like those built using the Yocto Project can incorporate this workaround at compile time, general purpose Linux distributions such as Debian are deeply affected by the bug. Such a workaround is not easy to implement in binaries meant to support multithreading too as they require LOCK prefixes to function properly. [19]
IA-32 is the 32-bit version of the x86 instruction set architecture, designed by Intel and first implemented in the 80386 microprocessor in 1985. IA-32 is the first incarnation of x86 that supports 32-bit computing; as a result, the "IA-32" term may be used as a metonym to refer to all x86 versions that support 32-bit computing.
The Intel 80186, also known as the iAPX 186, or just 186, is a microprocessor and microcontroller introduced in 1982. It was based on the Intel 8086 and, like it, had a 16-bit external data bus multiplexed with a 20-bit address bus. The 80188 variant, with an 8-bit external data bus was also available.
x86 is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel, based on the 8086 microprocessor and its 8-bit-external-bus variant, the 8088. The 8086 was introduced in 1978 as a fully 16-bit extension of 8-bit Intel's 8080 microprocessor, with memory segmentation as a solution for addressing more memory than can be covered by a plain 16-bit address. The term "x86" came into being because the names of several successors to Intel's 8086 processor end in "86", including the 80186, 80286, 80386 and 80486. Colloquially, their names were "186", "286", "386" and "486".
The Intel MCS-51 is a single-chip microcontroller (MCU) series developed by Intel in 1980 for use in embedded systems. The architect of the Intel MCS-51 instruction set was John H. Wharton. Intel's original versions were popular in the 1980s and early 1990s, and enhanced binary compatible derivatives remain popular today. It is a complex instruction set computer with separate memory spaces for program instructions and data.
The MCS-48 microcontroller series, Intel's first microcontroller, was originally released in 1976. Its first members were 8048, 8035 and 8748. The 8048 is arguably the most prominent member of the family. Initially, this family was produced using NMOS technology. In the early 1980s, it became available in CMOS technology. It was manufactured into the 1990s to support older designs that still used it.
AVR is a family of microcontrollers developed since 1996 by Atmel, acquired by Microchip Technology in 2016. These are modified Harvard architecture 8-bit RISC single-chip microcontrollers. AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other microcontrollers at the time.
PIC is a family of microcontrollers made by Microchip Technology, derived from the PIC1640 originally developed by General Instrument's Microelectronics Division. The name PIC initially referred to Peripheral Interface Controller, and was subsequently expanded for a short time to include Programmable Intelligent Computer, though the name PIC is no longer used as an acronym for any term. The first parts of the family were available in 1976; by 2013 the company had shipped more than twelve billion individual parts, used in a wide variety of embedded systems.
x86-64 is a 64-bit extension of the x86 instruction set architecture first announced in 1999. It introduces two new operating modes: 64-bit mode and compatibility mode, along with a new four-level paging mechanism.
SSE2 is one of the Intel SIMD processor supplementary instruction sets introduced by Intel with the initial version of the Pentium 4 in 2000. SSE2 instructions allow the use of XMM (SIMD) registers on x86 instruction set architecture processors. These registers can load up to 128 bits of data and perform instructions, such as vector addition and multiplication, simultaneously.
x87 is a floating-point-related subset of the x86 architecture instruction set. It originated as an extension of the 8086 instruction set in the form of optional floating-point coprocessors that work in tandem with corresponding x86 CPUs. These microchips have names ending in "87". This is also known as the NPX. Like other extensions to the basic instruction set, x87 instructions are not strictly needed to construct working programs, but provide hardware and microcode implementations of common numerical tasks, allowing these tasks to be performed much faster than corresponding machine code routines can. The x87 instruction set includes instructions for basic floating-point operations such as addition, subtraction and comparison, but also for more complex numerical operations, such as the computation of the tangent function and its inverse, for example.
Atmel ARM-based processors are microcontrollers and microprocessors integrated circuits, by Microchip Technology, that are based on various 32-bit ARM processor cores, with in-house designed peripherals and tool support.
A single-board microcontroller is a microcontroller built onto a single printed circuit board. This board provides all of the circuitry necessary for a useful control task: a microprocessor, I/O circuits, a clock generator, RAM, stored program memory and any necessary support ICs. The intention is that the board is immediately useful to an application developer, without requiring them to spend time and effort to develop controller hardware.
LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals. The earliest LPC series were based on the Intel 8-bit 80C51 core. As of February 2011, NXP had shipped over one billion ARM processor-based chips.
Intel Galileo is the first in a line of Arduino-certified development boards based on Intel x86 architecture and is designed for the maker and education communities. Intel released two versions of Galileo, referred to as Gen 1 and Gen 2. These development boards are sometimes called "Breakout boards".
The Intel Edison is a computer-on-module that was offered by Intel as a development system for wearable devices and Internet of Things devices. The system was initially announced to be the same size and shape as an SD card and containing a dual-core Intel Quark x86 CPU at 400 MHz communicating via Bluetooth and Wi-Fi. A later announcement changed the CPU to a 500 MHz Silvermont dual-core Intel Atom CPU, and in September 2014 a second version of Edison was shown at IDF, which was bigger and thicker than a standard SD card.
The Arduino Uno is an open-source microcontroller board based on the Microchip ATmega328P microcontroller (MCU) and developed by Arduino.cc and initially released in 2010. The microcontroller board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (shields) and other circuits. The board has 14 digital I/O pins, 6 analog I/O pins, and is programmable with the Arduino IDE, via a type B USB cable. It can be powered by a USB cable or a barrel connector that accepts voltages between 7 and 20 volts, such as a rectangular 9-volt battery. It has the same microcontroller as the Arduino Nano board, and the same headers as the Leonardo board. The hardware reference design is distributed under a Creative Commons Attribution Share-Alike 2.5 license and is available on the Arduino website. Layout and production files for some versions of the hardware are also available.
The ESP8266 is a low-cost Wi-Fi microcontroller, with built-in TCP/IP networking software, and microcontroller capability, produced by Espressif Systems in Shanghai, China.
ESP32 is a series of low-cost, low-power system-on-chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series employs either a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations, an Xtensa LX7 dual-core microprocessor, or a single-core RISC-V microprocessor and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power-management modules. It is commonly found either on device-specific PCBs or on a range of development boards with GPIO pins and various connectors depending on the model and manufacturer of the board.
RP2040 is a 32-bit dual ARM Cortex-M0+ microcontroller integrated circuit by Raspberry Pi Ltd. In January 2021, it was released as part of the Raspberry Pi Pico board. Its successor is the RP2350 series.
RP2350 is a 32-bit dual ARM Cortex-M33 and Hazard3 RISC-V microcontroller integrated circuit by Raspberry Pi Ltd. In August 2024, it was released as part of the Raspberry Pi Pico 2 board.