Pages:
Author

Topic: Custom FPGA Board for Sale! - page 3. (Read 91678 times)

hero member
Activity: 560
Merit: 517
September 06, 2011, 07:30:28 PM
Quote
A quick guide how to synthesize a project in ISE WebPack 13.2 would also be very helpful. And for Altera users how to do it in Quartus...
I'm trying for 4 hours at least and nothing. Errors, errors... I've tried to synthesize LX150_makomk_Test. Becuse WebPack have limits I've change LOOP_LOG2 to 1. Any help?
TIA.
For ISE you simply load the xise project file, make sure fpgaminer_top is selected in the Hierarchy in the upper-left, and then double click "Generate Programming File" in Processes in the lower-left.

For Quartus you can just load the project and press Ctrl+L. There should also be a menu options under Processing.

Let me know what errors you are getting or what the specific trouble is. Please note that the LX150_makomk_Test project won't compile on WebPack. You'd have to target a different device (LX75 or below).
legendary
Activity: 1029
Merit: 1000
September 06, 2011, 05:01:28 PM
A quick guide how to synthesize a project in ISE WebPack 13.2 would also be very helpful. And for Altera users how to do it in Quartus...
I'm trying for 4 hours at least and nothing. Errors, errors... I've tried to synthesize LX150_makomk_Test. Becuse WebPack have limits I've change LOOP_LOG2 to 1. Any help?
TIA.
donator
Activity: 2772
Merit: 1019
September 06, 2011, 03:41:55 PM
hero member
Activity: 720
Merit: 525
September 06, 2011, 08:01:23 AM
Nice work, molecular! Do you mind if I put your guide up on fpgamining.com?

Sure, I mean: no, I don't mind.

Great! It is done: fpgamining.com/index.php?title=X5000_Guide
donator
Activity: 2772
Merit: 1019
September 06, 2011, 01:00:31 AM
Nice work, molecular! Do you mind if I put your guide up on fpgamining.com?

Sure, I mean: no, I don't mind.
hero member
Activity: 1118
Merit: 541
September 05, 2011, 12:39:01 PM

Do you have the capability to make a custom board once you get the FPGA design to 150+mhash/s?

I'd like 8 chips on a single width 1x pci-e slot . I'd be willing to pay 1$ per 0.75 mhash .. About 1600$ per card as long as you can get the design above 150mhash/s average.

I'd want 6 cards.

Also, Would you be able to build a board if I sent you the chips? I managed to find a Virtex 5 LX240T for 100$ and 4 Spartan 6 LX150s for < 150$.







hero member
Activity: 720
Merit: 525
September 05, 2011, 10:10:42 AM
Nice work, molecular! Do you mind if I put your guide up on fpgamining.com?

With the X6000/X6500, you don't need to program the FPGA chip, right? So we just need the mining script to work on the Mac. Does that script support the Mac? Anyone know? I'd love to be able to plug this into my iMac and start mining.

It still needs to be tested, of course, but I see no reason that the X6000/X6500s won't work on Mac, Linux, and Windows.

Where can I buy these boards? What range of boards can you offer?

This particular board is done, and the next generation is about to come out. Here's the thread for it: https://bitcointalksearch.org/topic/x6500-custom-fpga-miner-40058
legendary
Activity: 1022
Merit: 1000
Freelance videographer
September 05, 2011, 08:48:20 AM
Where can I buy these boards? What range of boards can you offer?
full member
Activity: 210
Merit: 100
September 04, 2011, 11:42:42 PM
Hey kazoo,

Thanks for the order! first of all. We haven't released any schematics yet. I don't imagine we will anytime soon, because FPGA's are turning into a hot field. Wouldn't want to give away our secret sauce. But, if you send me a PM, I'll answer almost any hardware question you want.
newbie
Activity: 12
Merit: 0
September 04, 2011, 07:04:19 PM
I'm on deck! I have my preorder in. Are hardware schematics available to study?
 Smiley
donator
Activity: 2772
Merit: 1019
September 04, 2011, 05:08:10 AM


Maybe I can wake someone up Wink
donator
Activity: 2772
Merit: 1019
August 31, 2011, 04:48:55 PM
Any ideas if the mining scripts will run on a mac?

Don't know osx a lot, but let me do some guessing from my experience with linux.

The script itself is in tcl, that should be no problem. Also probably libusb should be right there in osx, right, so it's a matter of compiling that "libusb-driver"? You'd also have to see about the firmware upload. Don't know about the Xilinx ISE or what else could be used to smolder the logic onto the chip.

So: I wouldn't count on it and it might require some fiddling, but chances are it's doable, I'd say. You'd best need someone who knows his way around osx.
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
August 31, 2011, 04:29:57 PM
Any ideas if the mining scripts will run on a mac?
Nope, because none of the usual FPGA tools support Macs. (Someone I vaguely know was complaining about this on Twitter the other day.) It's possible someone will write an alternative that doesn't need them and works on Macs at some point but I wouldn't hold your breath...

With the X6000/X6500, you don't need to program the FPGA chip, right? So we just need the mining script to work on the Mac. Does that script support the Mac? Anyone know? I'd love to be able to plug this into my iMac and start mining.
hero member
Activity: 686
Merit: 564
August 31, 2011, 04:24:56 PM
Any ideas if the mining scripts will run on a mac?
Nope, because none of the usual FPGA tools support Macs. (Someone I vaguely know was complaining about this on Twitter the other day.) It's possible someone will write an alternative that doesn't need them and works on Macs at some point but I wouldn't hold your breath...

Edit: Of course the new board version and the scripts for that might, once they're finished, but...
donator
Activity: 1654
Merit: 1351
Creator of Litecoin. Cryptocurrency enthusiast.
August 31, 2011, 03:23:06 PM
Any ideas if the mining scripts will run on a mac?
sr. member
Activity: 445
Merit: 250
August 31, 2011, 03:13:55 PM
That's a fantastic guide, molecular.

Can't wait....
donator
Activity: 2772
Merit: 1019
August 31, 2011, 01:15:21 PM
I think it's fitting that molecular is about to become a Hero Member.    Cheesy

Lol. Thanks for the flowers, but not all of my 498 posts are as long and contentrich as the above one Wink

full member
Activity: 210
Merit: 100
August 31, 2011, 01:10:17 PM
I think it's fitting that molecular is about to become a Hero Member.    Cheesy

He's right about the variation on hash rate from our boards. They are pretty much hard-wired to run at 100 MHz right now, doing one hash per cycle. Any variation on that is due to latency communicating with the pool or something like that.
donator
Activity: 2772
Merit: 1019
August 31, 2011, 12:09:11 PM
Good job, please do share with the community what you've done to make it work. I'm sure it'll be an interesting read at least.

Allright, here we go: Linux guide to X5000 mining:

Step 1: start download of Xilinx ISE (it's development environment. There might be other ways to program the FPGA, but for now, I used this, as Li suggested in the windows version of the guide). The file is huge (4.6GB), so we start this now to avoid coffee breaks later.

Step 2: Get the USB Platform Cable to work (I use a USB platform cable here, there are others, this guide is for USB Platform cable, I have a "Model DLC9G")

Step 2 A: Plug the "Cable" (it's called cable, although it's a box, and I will just call it "Cable" or "Platform Cable") into a USB port. Better try without a hub first. Check if the USB portion of the device works:

Code:
#> lsusb
Bus 001 Device 120: ID 03fd:0008 Xilinx, Inc.

Step 2 B: Driver for Platform Cable

Before we start, lets make a directory to work in:

Code:
#> cd ~
#> mkdir x5000
#> cd x5000


My gentoo linux did not have any sort of driver coming with it and there is no module in vanilla kernel 2.6, at least not in mine.

The Xilinx ISE actually comes with source for a kernel mode driver, called "windrvr". I tried to compile this but I failed miserably.

I used this: http://rmdir.de/~michael/xilinx/. It's a usermode driver that uses libusb (or parport for parallel port cables) and emulated windrvr afaik. Download, unpack, compile it and check it created the lib we need:

Code:
x5000 #> wget http://git.zerfleddert.de/cgi-bin/gitweb.cgi/usb-driver?a=snapshot;h=HEAD;sf=tgz
x5000 #> tar -xzf usb-driver-HEAD-913cbbf.tar.gz
x5000 #> cd usb-driver-HEAD-913cbbf
usb-driver-HEAD-913cbbf #> make
usb-driver-HEAD-913cbbf #> ls libusb-driver.so
libusb-driver.so

Now, this software comes with a script that copies firmware-files from the Xilinx ISE install directory, this means we have to install the Xilinx ISE now:

Code:
downloads #> tar -x Xilinx_ISE_DS_Lin_13.2_O.61xd.0.0.tar
downloads #> Xilinx_ISE_DS_Lin_13.2_O.61xd.0.0/xsetup

I checked the option "install driver" here. First I ran this as user and after unzipping files for an hour, the installer told me I'm not root and therefor drivers could not be installed. I did the whole shebang again as root, and this time it told me that driver installation failed. Since we do not use the windrvr that comes with the ISE, screw it. You can try, though, maybe it works for you.

I chose /opt/Xilinx as install directory. You can choose any dir, just replace that in the following

Now let's run the above-mentioned setup-script:
Code:
#> cd ~/x5000/usb-driver-HEAD-913cbbf
#> ./setup_pcusb

This installs some udev-rules in /etc/udev/rules.d/xusbdfwu.rules by copying from xilinx folder somewhere. They already mod these xilinx-rules for newer udev versions, but it seems udev changed again, so I had to edit that file:

Code:
#> edit /etc/udev/rules.d/xusbdfwu.rules

change all occurences of "$tempnode" to "%N" (uppercase N)

you also need a tool called fxload to upload the firmware to the device, install it (this example is gentoo)

Code:
#> emerge fxload

now if you replug the USB Platoform Cable, the firmware should load and the LED on the device go from "maybe very dimly red" to "BRIGHT RED", when the firmware is loaded. If x5000 is connected, it will go green.

If it doesn't work for some reason, set udev_log="debug" in /etc/udev/udev.conf to see what's going on in the syslog when you replug.

You can also load the firmware manually (look in the rules file and lsusb which one by device id):

Code:
#> fxload /usr/share/xusb_....hex

At this point, the driver should be working and the LED on cable should be either GREEN or RED depending on wether x5000 is plugged in or not.

To check if driver works libusb and the firmware works, you can use another tool, urJTAG (http://urjtag.org/):

Code:
#> jtag
jtag> cable xpc_ext
jtag> detect

maybe we can even program with this tool, I don't know. Anyone?

Step 3: program the FPGA using ISE:

Now you can start impact, which can be used to program the X5000 fpga, preloading the usb driver:
Code:
#> LD_PRELOAD=~/x5000/usb-driver-HEAD-913cbbf/libusb-driver.so /opt/Xilinx/13.2/ISE_DS/ISE/bin/lin/impact

impact should start up and ask you some stuff about project folder. Just answer as you see fit. It also asks you "Configure devices using Boundary-Scan (JTAG)". You can try "Automatically connect to a cable...." here, but it never worked for me. Instead, I select "Enter a boundary-chain manually".

The gui starts now. Important: Do  "Menu: Output -> Reset Cable". This helped me to get the cable working at all. It did not work for me without doing this.

No you can select "boundary Scan" on the left and then Right Click on "Right click to Add Device....". and select "Cable Setup...". This is also in the "Output Menu".

If it says: "warning, windrvr not installed", you probably did something wrong with the LD_PRELOAD above.

Select "Platform Cble USB/II" (at least for me that's what I wanted) and then check out "Advanced USB Cable Setup", it should show an entry in the list of usb cables/ports. If it doesn't, exit that stuff and try "Output -> Reset Cables" again.

If it says: "this function requires a target to be set first", it's probably working Wink. Load the xxx.bit file from the miner.zip by right-clicking on the white "boundary scan" areay and selecting "Add xilinx device...". Then try again with the Cable Setup.

The cable works and a nice Xilinx image popped up in the white area? Then you can program the fpga by right-clicking the image and selecting "program". Took 11 seconds for me, the bar didn't go all the way to 100%.

Step 4: mine!

go to the directory where you unpacked Miner.zip and make a script, mine.sh

Code:
#> cd ~/x5000/Miner
Miner #> edit mine.sh

Quote from: mine.sh
#!/bin/sh
export PLATFORM=lin
#if ("`arch | grep -c "64"`" == "1") then <- fix this if you have 64 bit system
#    PLATFORM=${PLATFORM}64
#fi
export XIL_CSE_TCL=/opt/Xilinx/13.2/ISE_DS/ISE/cse/tcl
export XILINX=${XIL_CSE_TCL}/../..
export PATH=${XILINX}/lib/${PLATFORM}:${XILINX}/bin/${PLATFORM}:$PATH
export LD_LIBRARY_PATH=${XILINX}/lib/${PLATFORM}:${XILINX}/bin/${PLATFORM}

export LD_PRELOAD=~/x5000/usb-driver-HEAD-913cbbf/libusb-driver.so

tclsh mine.tcl

note that this script quite sucks, you probably have to change a couple of paths.

edit the configfile... and start to mine

Code:
Miner #> edit config.tcl
Miner #> ./mine.sh

you might get some errors. If tcl complains about missing packages, try installing tcllib.

Ok, that's it. Hope it helps someone.

donator
Activity: 2772
Merit: 1019
August 31, 2011, 11:03:13 AM
YESSSS!

I got it working, on LINUX! fucking hell yea!

You total legend!!  Grin  and 100 MH/s no less. Sweeeeeeet.  Cool

Yeah, well. Lots of luck in a 15 minutes measuring window. It goes from 80 to 130 if you look at 15 minute average. That's not the X5000, of course, that's just fortuna playing with it Wink
Pages:
Jump to: