I am reading the Intel D1000 micro-controller specs, it says:

...Intel® Quark™ microcontroller D1000 target - a configurable and fully synthesizable accelerator and microcontroller core...

I am not much of EE background. So:

  • What does synthesizable mean?
  • What's the difference between accelerator and micro-controller?
  • \$\begingroup\$ You don't care about "synthesizable". If you intended to design your own integrated circuit using the D1000 as a core, only then would you care whether it was synthesizable. \$\endgroup\$
    – Mark
    Jul 3 '16 at 8:08
  • \$\begingroup\$ @Mark In this context, I think synthesizable was a reference to the ability of the neural network accelerator to do machine learning, and thus synthesize its own circuit. \$\endgroup\$
    – tcrosley
    Jul 3 '16 at 8:17
  • \$\begingroup\$ @tcrosley. Maybe, but I took the cue from the terms 'core' and 'configurable', and the fact that Intel is targeting the product at SoC solutions. The wording (and Intel's marketing) seems aimed at ASIC people. (I personally would not use a core that wasn't synthesizable). \$\endgroup\$
    – Mark
    Jul 3 '16 at 8:30
  • \$\begingroup\$ @Mark The market for these devices is IoT and wearables. Nothing to do with ASIC. \$\endgroup\$
    – tcrosley
    Jul 3 '16 at 8:35
  • \$\begingroup\$ Unfortunately HDL languages like VHDL and Verilog have the ability not only to make logic but to test that logic. So you could for example have a printf() like statement, which is clearly not synthesizable, it is "behavioral". Synthesizable means the logic can be "compiled" into individual logic components that are wired together, ands and ors and nots and such. Any IP that is not synthesizable is useless for making chips, so it is silly to put that in the marketing information, unless someone has been burned before on unusable logic. \$\endgroup\$
    – old_timer
    Jul 3 '16 at 11:29

As far as I know, the Intel D1000 (or the D2000) does not have the functionality you mentioned.

The Intel Curie, also part of the Quark series, does have a pattern-matching accelerator that allows it to recognize patterns from various incoming sensor data. For example, you could program it to use its accelerometer to tell if a person is walking or running or has fallen, or if worn on the wrist to detect hand gestures. The accelerator runs independent of the Curie processor itself.

I think the synthesizable reference refers to the ability of the 128 node neural network pattern matching circuitry to perform machine learning, and thus synthesize its own circuit.

The Intel Curie module is a SoC (system on chip) based on Intel Quark SE, with the processor, accelerometer, gyroscope, and BLE in one module. It has 384K of Flash, 80K of RAM, and runs the x86 instruction set.

You can get an Arduino board with an Intel Curie (the Arduino 101) for just $30. I am currently using the Curie module in a project. The Arduino 101 is mostly compatible with standard Arduino I/O, including accessing the BLE, however as far as I know you can not currently access the accelerometer and the pattern matching hardware using normal Arduino programming.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.