Bitcoin Forum
December 02, 2016, 06:19:20 PM *
News: To be able to use the next phase of the beta forum software, please ensure that your email address is correct/functional.
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: FPGA-to-USB interface for mining  (Read 2846 times)
makomk
Hero Member
*****
Offline Offline

Activity: 686


View Profile
April 26, 2012, 10:28:42 AM
 #1

For the past few weeks I've been mining by hooking my DE0-Nano up to my PC directly via USB - no JTAG or microcontrollers or USB-to-serial, just full speed native USB. The code to do this has actually been publicly available in my git repository for about that long too, but I'm not entirely happy with it for various reasons. The licensing on the USB function core from OpenCores it uses is a bit odd, the code quality isn't that great, and I'm interfacing the FPGA pins directly to the USB port when I should really be using something like a TUSB1106 chip for better reliability and to protect the FPGA from being damaged by shorts to +5V.

Anyway, if anyone's got a use for this the Quartus project is in the projects/DE0_nano_USB directory of the de0-nano-usb branch, and the code to mine using this is in the usb-miner branch of afpgabm. You'll need to connect USB ground directly to pin 30 of JP1 on the DE0-nano, D+ to pin 25 and D- to pin 23 through say 10 to 47 ohm resistors (not sure what the exact resistor value should be), and connect a 1.5k pull-up resistor from D+ to a source of 3.3V that's only enabled when the 5V USB power is on. Better yet, rip out the fake USB transceiver logic from fpgaminer_top.v and use a TUSB1106 or similar. Users of expensive Spartan-6 boards should always use a real transceiver chip, partly to stop your hardware getting damaged and partly because some of them run on non-USB-compatible IO voltages that need to be converted.

Quad XC6SLX150 Board: 860 MHash/s or so.
SIGS ABOUT BUTTERFLY LABS ARE PAID ADS
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1480702760
Hero Member
*
Offline Offline

Posts: 1480702760

View Profile Personal Message (Offline)

Ignore
1480702760
Reply with quote  #2

1480702760
Report to moderator
1480702760
Hero Member
*
Offline Offline

Posts: 1480702760

View Profile Personal Message (Offline)

Ignore
1480702760
Reply with quote  #2

1480702760
Report to moderator
1480702760
Hero Member
*
Offline Offline

Posts: 1480702760

View Profile Personal Message (Offline)

Ignore
1480702760
Reply with quote  #2

1480702760
Report to moderator
dirtycat
Sr. Member
****
Offline Offline

Activity: 455



View Profile
April 26, 2012, 10:57:28 AM
 #2

how hot does the little de0 get.. hot enough to take off the plastics and add a heatsink?

poop!
makomk
Hero Member
*****
Offline Offline

Activity: 686


View Profile
April 26, 2012, 12:47:14 PM
 #3

how hot does the little de0 get.. hot enough to take off the plastics and add a heatsink?
Definitely. Also, the power regulation circuitry on it's horribly inefficient and I'm not sure it can cope with full-speed mining - I'm actually running a modified board with an external power supply. To be honest, it's probably not worth the effort for mining on. The only reason I run one is for development purposes.

Quad XC6SLX150 Board: 860 MHash/s or so.
SIGS ABOUT BUTTERFLY LABS ARE PAID ADS
abeaulieu
Sr. Member
****
Offline Offline

Activity: 295



View Profile
May 01, 2012, 12:58:40 PM
 #4

how hot does the little de0 get.. hot enough to take off the plastics and add a heatsink?
Definitely. Also, the power regulation circuitry on it's horribly inefficient and I'm not sure it can cope with full-speed mining - I'm actually running a modified board with an external power supply. To be honest, it's probably not worth the effort for mining on. The only reason I run one is for development purposes.

If you haven't already it probably would be pretty easy to modify the input to the 1.2V regulator powering the FPGA and give it something closer to the 1.2V that it wants. Right now it takes the input voltage -> 5V -> 3.3V -> 1.2V. And it's done with just regulators (so 1Amp of current from the 1.2V translates to 1Amp of current from the input voltage). [See page 25 of the user manual]
makomk
Hero Member
*****
Offline Offline

Activity: 686


View Profile
May 01, 2012, 11:26:56 PM
 #5

If you haven't already it probably would be pretty easy to modify the input to the 1.2V regulator powering the FPGA and give it something closer to the 1.2V that it wants. Right now it takes the input voltage -> 5V -> 3.3V -> 1.2V. And it's done with just regulators (so 1Amp of current from the 1.2V translates to 1Amp of current from the input voltage). [See page 25 of the user manual]
Yeah, I considered that after noticing the handy removable jumpers on the inputs to the regulators (intended for current measurement, I believe) - ended up just disabling the 1.2V regulator totally and feeding it from an external buck converter board though.

Quad XC6SLX150 Board: 860 MHash/s or so.
SIGS ABOUT BUTTERFLY LABS ARE PAID ADS
Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!