Close

Choosing mining MCUs

A project log for STM32Miner

Mining cryptocurrency with a lot of STM32F030

ho-tuan-kietHo Tuan Kiet 02/02/2018 at 05:345 Comments

My requirements for the mining MCUs:

The first requirement is that the MCU must be available in a DIP package. This pretty much excludes all 32-bit MCU (like the STM32). Hashing relies on 32-bit arithmetic and yes, 8/16-bit MCUs have terrible 32-bit arithmetic performance, but I don't have the equipment necessary to solder SMD parts. Also DIP parts = easier to replace in case of failure.

Second requirement is to minimize the pin count (so that we can cram more MCUs onto one mining board). The best I could do is 8-DIP, and now only the ATtiny series and some PIC MCUs remains.

Third requirement is internal oscillator as I don't want to put a crystal next to every MCUs. Luckily all MCUs nowadays have internal oscillator.

Forth requirement is speed. While some PIC MCUs have very high internal clock speed (some up to 32MHz), they don't correlate to MIPS. A part might run at 32MHz but each instruction takes 125ns, which limits the MIPS to 8MIPS. Fortunately the ATtiny series can run up to 16MHz (with internal oscillator), and also they can do up to 1 instruction per clock cycle.

Fifth is SRAM capacity. I haven't figured out the minimum SRAM capacity needed, but we're amining for about 512 bytes so now only the ATTiny85 remains.

Discussions

K.C. Lee wrote 05/26/2018 at 21:12 point

BTW you can get SSOP-20 breakout boards at less than $0.1 a piece. 

https://hackaday.io/project/9469-misc-arm-projects/log/31229-stm32f030-breakout-board

 (Broken link for F030. Most of my vendors no longer sell chips.)

  Are you sure? yes | no

Ho Tuan Kiet wrote 05/27/2018 at 05:28 point

I've decided to just solder them directly; using breakout boards means wasting a lot of space on the PCB.

  Are you sure? yes | no

K.C. Lee wrote 05/26/2018 at 21:04 point

The big question is whether or not it has enough SRAM for what you need it to do?  You can barely mine on GPU with 2GB of VRAM these days.

  Are you sure? yes | no

Ho Tuan Kiet wrote 05/27/2018 at 05:25 point

Hi. As long as I avoid memory intensive algorithms (say Scrypt or Ethash), 4KB of SRAM is enough (SHA256d, X11 and its variants)

  Are you sure? yes | no

[deleted]

[this comment has been deleted]

Ho Tuan Kiet wrote 02/08/2018 at 05:28 point

Thanks for your suggestion. Yeah the LPC810 do meets some of the requirements but not all of them:

* It's $3 / piece, which turns me off immediately

* No distributors in my country stock it (the LPC series isn't popular here compared to the STM32 series), meaning I'll have to order it from Mouser/Digikey (and pay a hefty $25 for shipping) 

* For the first prototype I'd like to start with the ATtiny first as I don't have any experiences regarding the ARM architechture. If things go well then the next step is to replace the ATtiny with any of the Cortex-M microcontrollers.

Actually, talking about ARM, I'm aiming for the STM32F030F4P6. It meets all the requirements (super cheap at $0.7, available at local distributors, 48MHz internal oscillators, 4K SRAM etc etc). The only problem is the 20-TSSOP package, which will probably be a pain to solder. But that looks like a great opportunity to learn SMD soldering I think.

  Are you sure? yes | no