Intel Quark

Last updated
Intel Galileo-board with Quark-processor Embedded World 2014 Intel Galileo 01.jpg
Intel Galileo-board with Quark-processor

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]

Contents

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 the same as a Pentium (P54C/i586) CPU. [6]

History

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]

List of processors

"Lakemont" (32 nm)
The name Lakemont has been used in reference to the processor core in multiple Quark-series processors. [12] :4 [13] :42
"Clanton"
(The L2 cache column shows the size of the L1 cache.)
Model
number
sSpec
number
CoresFrequencyGPU
frequency
L2
cache
I/O bus Memory Voltage TDP Socket Release datePart
number(s)
Release
price (USD)
Quark X1000
  • SR1BY (A0)
1400 MHz16 KBDDR3-800
2.2 W
  • FC-BGA11E
Q4'13
  • DH8066101538300
$9.63
Quark X1001
  • SR1VB (A0)
1400 MHz16 KBDDR3-800
2.2 W
  • FC-BGA11E
Q2'14
  • DHQ1ET
$11.77
Quark X1010
  • SR1BZ (A0)
1400 MHz16 KBDDR3-800
2.2 W
  • FC-BGA11E
Q1'14
  • DH8066101555100
$10.16
Quark X1011
  • SR1VC (A0)
1400 MHz16 KBDDR3-800
2.2 W
  • FC-BGA11E
Q2'14
  • DHQ1ECCET
$12.31
Quark X1020
  • SR1VW (A0)
1400 MHz16 KBDDR3-800
2.2 W
  • FC-BGA11E
Q2'14
  • DHQ1ECCSECCTS1
$11.45
Quark X1020D
  • SR1BX (A0)
1400 MHz16 KBDDR3-800
2.2 W
  • FC-BGA11E
Q1'14
  • DH8066101531900
$10.70
Quark X1021
  • SR1WH (A0)
1400 MHz16 KBDDR3-800
2.2 W
  • FC-BGA11E
Q2'14
  • DHQ1ECCSECETS1
$13.39
Quark X1021D
  • SR1VA (A0)
1400 MHz16 KBDDR3-800
2.2 W
  • FC-BGA11E
Q2'14
  • DHQ1ECCSECET
$12.85
"Silver Butte"
Model
number
sSpec
number
CoresFrequencyGPU
frequency
L2
cache
I/O bus Memory Voltage TDP Socket Release datePart
number(s)
Release
price (USD)
Quark D1000
  • SLKMJ (B1)
132 MHz AHB-Lite, APB [14] :30 eSRAM 1.62–3.63 V
  • 0.025 W
Q3'15
DMNIAD01SLVBT
$2.54
"Mint Valley"
Model
number
sSpec
number
CoresFrequencyGPU
frequency
L2
cache
I/O bus Memory Voltage TDP Socket Release datePart
number(s)
Release
price (USD)
Quark D2000
  • SR2KF (A0)
132 MHzAHB-Lite, [13] :72APB [13] :96eSRAM1.62–3.63 V
0.025 W
  • QFN40
Q3'15
FND2000
$2.54
"Atlas Peak"
Model
number
sSpec
number
CoresFrequencyGPU
frequency
L2
cache
I/O bus Memory Voltage TDP Socket Release datePart
number(s)
Release
price (USD)
Quark SE C1000
  • SR2T6 (A0)
  • SR2TJ (A1)
132 MHz8 KBAHB-Lite, APBeSRAM1.8–3.3 V
0.025 W
  • VFBGA144
Q4'15
LMCQ1000
$10.32

Segfault bug

Intel Quark SoC X1000 contains a bug (#71538) [15] 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. [16] 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. [17]

See also

Related Research Articles

<span class="mw-page-title-main">Microprocessor</span> Computer processor contained on an integrated-circuit chip

A microprocessor is a computer processor where the data processing logic and control is included on a single integrated circuit, or a small number of integrated circuits. The microprocessor contains the arithmetic, logic, and control circuitry required to perform the functions of a computer's central processing unit. The integrated circuit is capable of interpreting and executing program instructions and performing arithmetic operations. The microprocessor is a multipurpose, clock-driven, register-based, digital integrated circuit that accepts binary data as input, processes it according to instructions stored in its memory, and provides results as output. Microprocessors contain both combinational logic and sequential digital logic, and operate on numbers and symbols represented in the binary number system.

<span class="mw-page-title-main">Microcontroller</span> Small computer on a single integrated circuit

A microcontroller is a small computer on a single VLSI integrated circuit (IC) chip. A microcontroller contains one or more CPUs along with memory and programmable input/output peripherals. Program memory in the form of ferroelectric RAM, NOR flash or OTP ROM is also often included on chip, as well as a small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general purpose applications consisting of various discrete chips.

<span class="mw-page-title-main">System on a chip</span> Micro-electronic component

A system on a chip or system-on-chip is an integrated circuit that integrates most or all components of a computer or other electronic system. These components almost always include a central processing unit (CPU), memory interfaces, on-chip input/output devices, input/output interfaces, and secondary storage interfaces, often alongside other components such as radio modems and a graphics processing unit (GPU) – all on a single substrate or microchip. It may contain digital, analog, mixed-signal, and often radio frequency signal processing functions.

XScale is a microarchitecture for central processing units initially designed by Intel implementing the ARM architecture instruction set. XScale comprises several distinct families: IXP, IXC, IOP, PXA and CE, with some later models designed as SoCs. Intel sold the PXA family to Marvell Technology Group in June 2006. Marvell then extended the brand to include processors with other microarchitectures, like ARM's Cortex.

<span class="mw-page-title-main">Xeon</span> Line of Intel server processors

Xeon is a brand of x86 microprocessors designed, manufactured, and marketed by Intel, targeted at the non-consumer workstation, server, and embedded system markets. It was introduced in June 1998. Xeon processors are based on the same architecture as regular desktop-grade CPUs, but have advanced features such as support for ECC memory, higher core counts, more PCI Express lanes, support for larger amounts of RAM, larger cache memory and extra provision for enterprise-grade reliability, availability and serviceability (RAS) features responsible for handling hardware exceptions through the Machine Check Architecture. They are often capable of safely continuing execution where a normal processor cannot due to these extra RAS features, depending on the type and severity of the machine-check exception (MCE). Some also support multi-socket systems with two, four, or eight sockets through use of the Ultra Path Interconnect (UPI) bus.

In computer architecture, 4-bit integers, or other data units are those that are 4 bits wide. Also, 4-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on registers, or data buses of that size. Memory addresses (and thus address buses) for 4-bit CPUs are generally much larger than 4-bit (since only 16 memory locations would be very restrictive), such as 12-bit or more, while they could in theory be 8-bit. A group of four bits is also called a nibble and has 24 = 16 possible values.

Alchemy is a family of ultra low power embedded microprocessors originally designed by Alchemy Semiconductor for communication and media devices. Alchemy processors are SoCs integrating a CPU core, a memory controller, and a varying set of peripherals. All members of the family use the Au1 CPU core implementing the MIPS32 instruction set by MIPS Technologies.

<span class="mw-page-title-main">Multi-core processor</span> Microprocessor with more than one processing unit

A multi-core processor is a microprocessor on a single integrated circuit with two or more separate processing units, called cores, each of which reads and executes program instructions. The instructions are ordinary CPU instructions but the single processor can run instructions on separate cores at the same time, increasing overall speed for programs that support multithreading or other parallel computing techniques. Manufacturers typically integrate the cores onto a single integrated circuit die or onto multiple dies in a single chip package. The microprocessors currently used in almost all personal computers are multi-core.

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.

Pentium is a brand used for a series of x86 architecture-compatible microprocessors produced by Intel. The original Pentium was released in 1993. After that, the Pentium II and Pentium III were released.

<span class="mw-page-title-main">Intel Atom</span> Microprocessor brand name by Intel

Intel Atom is the brand name for a line of IA-32 and x86-64 instruction set ultra-low-voltage processors by Intel Corporation designed to reduce electric consumption and power dissipation in comparison with ordinary processors of the Intel Core series. Atom is mainly used in netbooks, nettops, embedded applications ranging from health care to advanced robotics, mobile Internet devices (MIDs) and phones. The line was originally designed in 45 nm complementary metal–oxide–semiconductor (CMOS) technology and subsequent models, codenamed Cedar, used a 32 nm process.

Bonnell is a CPU microarchitecture used by Intel Atom processors which can execute up to two instructions per cycle. Like many other x86 microprocessors, it translates x86 instructions into simpler internal operations prior to execution. The majority of instructions produce one micro-op when translated, with around 4% of instructions used in typical programs producing multiple micro-ops. The number of instructions that produce more than one micro-op is significantly fewer than the P6 and NetBurst microarchitectures. In the Bonnell microarchitecture, internal micro-ops can contain both a memory load and a memory store in connection with an ALU operation, thus being more similar to the x86 level and more powerful than the micro-ops used in previous designs. This enables relatively good performance with only two integer ALUs, and without any instruction reordering, speculative execution or register renaming. A side effect of having no speculative execution is invulnerability against Meltdown and Spectre.

Silvermont is a microarchitecture for low-power Atom, Celeron and Pentium branded processors used in systems on a chip (SoCs) made by Intel. Silvermont forms the basis for a total of four SoC families:

<span class="mw-page-title-main">Intel Galileo</span>

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".

<span class="mw-page-title-main">Intel Edison</span>

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.

<span class="mw-page-title-main">ESP32</span> Low-cost, low-power SoC microcontrollers with Bluetooth and Wi-Fi

ESP32 is a series of low-cost, low-power system on a 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, 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. ESP32 is created and developed by Espressif Systems, a Shanghai-based Chinese company, and is manufactured by TSMC using their 40 nm process. It is a successor to the ESP8266 microcontroller.

<span class="mw-page-title-main">RP2040</span> ARM-architecture microcontroller by the Raspberry Pi Foundation

The RP2040 is a 32-bit dual ARM Cortex-M0+ microcontroller integrated circuit by Raspberry Pi Ltd. At the same time, it was released as part of the Raspberry Pi Pico board.

References

  1. 1 2 "Product Change Notification 116715-00" (PDF). Intel Quality Document Management System. Intel. 2019-01-18. Retrieved 2020-09-29.
  2. Turley, Jim (October 16, 2013). "Intel Quark Provides Spin, Charm, and Strange New Low-end x86 MCU Line Emerging from the Lab". EEJournal. Archived from the original on January 8, 2014.
  3. Intel® Galileo Datasheet
  4. "Arduino 101".
  5. JavaFX 9 by Example, Chapter on Arduino
  6. "Intel Quark SoC X1000 Core - Developer's Manual". Archived from the original on 2014-10-19. Retrieved 2014-10-19.
  7. Flaherty, Nick (2013-10-07). "Intel Tackles SoC With Quark". EETimes. Archived from the original on 29 February 2016. Retrieved 9 October 2013.
  8. Intel® Quark SoC X1000 (16K Cache, 400 MHz) Specifications, Intel
  9. Gareth Halfacree (7 January 2014). "Intel unveils Quark-based Edison microcomputer". BitTech. Retrieved 2014-01-07.
  10. "Intel® Curie Module: Unleashing Wearable Device Innovation". Intel. 2015-01-06. Retrieved 12 April 2015.
  11. Shilov, Anton (2019-01-22). "Intel Discontinues Quark SoCs and Microcontrollers". AnandTech . Retrieved 2020-09-29.
  12. Intel Quark SoC X1000 Debug Operations. Intel Corporation. 2014.
  13. 1 2 3 Intel Quark microcontroller D2000. Intel Corporation. 2015.
  14. Intel Quark Microcontroller D1000 Datasheet. Intel Corporation. 2015.
  15. "Intel Quark SoC X1000 Software - Release Notes" (PDF). Revision 002. 22 May 2014. p. 21.
  16. "debian-glibc@lists.debian.org: Bug#738575: pthread: segfault in libpthread on Intel Galileo board".
  17. "#738575 - pthread: Segfault in libpthread on Intel Galileo board - Debian Bug report logs".