Friday, January 9, 2026

"Because they didn't know what to do with them."

I am Intel's biggest fan, but also one of its biggest critics. Last week I purchased a brand new 1st Generation Intel Galileo board, which were sold from 2013-2017, and a surplus can still be found on Ebay from a few sellers ($18 shipped- a deal if you're into embedded devices). There is also a more rare Quark D2000 Dev Kit, which occasionally pops up for a decent price. The seller quickly mailed the board, and I received it today. Plugged it in an it booted its lights, although I didn't test an OS yet. I had made plans to install a Yocto-based image, either one someone already developed, or a custom one from scratch.


In reading forums about the chip, I had read some comments stating that it didn't have an MMU. While I was aware that the D2000 didn't have an FPU (x87), I had assumed that the X1000 had at least an MMU. It also has an FPU. I stumbled on some comments saying this morning that there was no mention in the datasheets (which were fairly labyrinth to find on the website, now requiring a search box to find, more or less (direct links are often expired).  

Thanks to some experienced developers, they confirmed it actually does contain an MMU, and a single page mentions the word (MMU) on p. 137, while another datasheet refers to Memory Manager and paging, but not the full phrase.

 Some highlights of the Element14 forum comments:

  in reply to morgaine

This thread on the Intel Quark SoC is quite interesting, but theres one big piece of Quark that has been overlooked.  Having worked with Intel architectures for some time now, I'm familiar with the way they write their manuals.  And what isn't there is always more important that what is!

 

Unfortunately Intel confuses the discussion here quite a bit, because in the opening paragraph (page 37) of their full 920-page Quark datasheet they call the Quark SoC X1000 an "application processor".

 

and

Being a conventional microcontroller, the Quark has no MMU to support the flexible process separation and virtual memory of full operating systems like Linux. 

 

Actually, Quark does have an MMU, its just not described in the Datasheet.

 

The MMU is part of the CPU Core, which is described the Core Hardware Reference Manual and the Core Developer's Manual.   The Quark CPU Core is a complete IA32 implementation,  a little slow but with a few extras for the embedded micro market.  Check out page 20 of the hardware ref, it shows a block diagram of the core.  The three manuals together make up the Quark documentation.  You almost need a monitor for the datasheet, the hardware ref manual printed out and a second monitor for the developers manual to make sense of it all. image

 

Morgaine Dinova wrote:

 

Many thanks, Walt.  That makes all the difference in the world.  I guess Intel technical authors just have a warped sense of humour in not even mentioning the existence of an MMU as a bullet point in the SoC datasheet.  Perhaps there just wasn't room, they had only 920 pages after all ...

You have to view that datasheet much as you would the chipset hardware datasheet that intel would provide for something like the PCH as that's really what it is.  There's a single page (121) with cpu core details. Intel has traditionally done things this way, one doc covering the hardware side, another for the cpu internals/software/programming side.

 

Walt did well finding those manuals, I was coming up blank searching for them on the Intel site.

 And from this EEVblog forum:

 Re: Intel Quark / Curie vs PIC32, ARM etc...

« Reply #6 on: October 23, 2016, 12:29:01 pm »
Seems Intel have been trying to get into embedded for decades and haven't really succeeded yet
You are forgetting Intel came up with the 8051 and before that the 8048. The latter was used in every PC and PC keyboard until USB came around! And lets not forget you can find x86/x88 microcontrollers in various electronics (I've seen them in hard drives for example). All in all they must have sold billions of their microcontrollers. IMHO it is more accurate to say Intel has lost the embedded market a couple of decades ago.

edit: As coppice noted: Intel seems to lack the patience to grow a new business. IIRC Intel acquired several companies in the past decades and either killed them or sold them off again because they didn't know what to do with them.
« Last Edit: October 23, 2016, 12:31:05 pm by nctnico »

 

This criticism can be directed more towards the D2000 chips, which had excellent variability controls. I just learned today you could clock it to 1MHz and it would consume 1.5mW (down from 25mW on the 33MHz CPU). It supported a 4GB memory address, but the documentation was sparse on whether it could be mapped if SPI memory were attached (like in the ESP32, RP2030s, and Teensys with extra RAM attached). Unlike the D1000, it had x86 instructions, so theoretically it could support linux with enough RAM- whether it's noMMU or not (most likely it would need uclinux/noMMU since it might not be intended for applications like the X1000 at least could.).

A few days ago, I found that Electromaker still has 1429 Quark D2000's in Stock: https://www.electromaker.io/shop/product/quark-d2000-32-bit-mcu-32mhz 

 quark-d2000-32-bit-mcu-32mhz-image-0

While I was about to buy 2-10 of these for a slight volume discount, at the time, this afternoon, I thought that if it the X1000 doesn't have an MMU, then there is little purpose in trying to run linux on a difficult board. But at the same time, if someone is an embedded engineer and they've never heard of the Quark line, then I would be willing to mail them one if the cost is an issue. UPS ground is $7.99, and that's regardless if you order 1 or a thousand. I realize someone could pull a Sam Altman and order 40% of the remaining stock, so if you really want to make interesting tech, e-mail me at giovanni.los@proton.me so we can knock this project out of the park. On Ali Express you can find a  
Pocket 386 with 8MB RAM that runs Windows 3.1 or 95 (Linux could also run).
 

But these aren't really reliable- they have awkward controls and aren't as open source as a large Hackaday project could put together. There are so many loner Hackaday projects and developers it would be a lot more sensible to create a platform for an open source laptop that not only uses patent free architecture, but lowest power (and leading edge nodes- which at the Quark's time, was a 32nm chip). The Pocket 386 is probably built on a 130nm or possibly 90nm process- It can run on a battery, but it's not the most efficient system one can build. 

There is very low power RAM, such as FeRAM in modules as large (or larger than) as 1MB (8Mbit), which consumes 18mA and 150uA in standby. There might be other RAM that is in larger capacity and lower power but I can spend a day weeks researching through all of them, so I post them here periodically.

But it's unclear if the Quark D series supports memory management- Windows 3.1 seems to require at least a 386, which had one. The X1000, sold both in development boards and as a separate chip, which has an MMU, can at least be clocked at 1/2 speed and even at 1/4, or 100MHz, which would decrease the 2.2W power consumption to potentially just 500mW. Since the chip was discontinued nearly 10 years ago, it can only be found on third party resellers for around $17.00

Running the D2000 at 33Mhz allows it to consume just 25mW. If it supports an MMU. It could use a display, and a keyboard. and a PS/2 mouse perhaps.

90mAh lithium ion capacitor could run a laptop using a Memory In Pixel Display with several hours of charge, and indoor solar cells could recharge it in as little as 12 minutes.

Windows NT 3.1 and Windows CEneeded a minimum of 1MB of RAM, but benefited from as much as 4MB RAM. NT 3.1 and Windows CE used a little known hybrid microkernel that has some unique advantages at the low end of the memory spectrum. Remarkably, Windows CE, which launched in 1996 and was supported until 2023, is still being sold through 2028. Despite linux's ability to run without an MMU, a chip with an MMU and a tiny amount of RAM instead of hundreds of MB actually helps keep power consumption low while still having access to a large repository of legacy software. Many claims to the need or reliability for a monolithic kernel have often overshadowed the practicality of microkernels in not just microcontrollers but application processors like QNX (Blackberry), and EKA2/Symbian.

ONiO and Exeger showed off their batteryless solar powered keyboard at CES this week, bringing solar powered laptops one step closer to reality.

 No alternative text description for this image

There are some brilliant hackers out there that manage to solder low power chips to PCBs, like this Artemis chip:

artemis-2.jpg 

In 2013, I stopped being hopeful for a solar laptop that I described in 2012, specifically referencing the Quark-like Claremont that preceded it. The reason? I was unemployed in early 2013 and all of 2012. I needed to get a job- and I eventually found a full time one, and the first one with health insurance that spring. I was nearly 29 years old, and no one at Raspberry Pi or Intel reached out to me saying "that's a great idea." By the time I heard about near threshold voltage products in 2020, the Quark line was discontinued in 2019. Can you blame me for this memory hole? Perhaps the Borg managed to quarantine me into some corner of the Internet so I didn't even realize the algorithm kept me away from buying a Galileo. Plus in 2013, I had been single for over 7 years- and I got into my first relationship.

I prefer not to be a full time hacker. I needed to get a life. And I still do. But if you find anything interesting, let me know.    

Edit: Check out this spectacular presentation from 2016.


Note: Blogger chooses the thumbnails in my posts. The smiley face was just one among other photos that I included, and I am unable to select a different one. It looks awkward pixelated but it's preferable over other thumbnails.

 

 

No comments:

Post a Comment