Enterpoint Cainmore CM1 port
https://github.com/kramble/FPGA-Blakecoin-Miner/tree/master/experimental/CM1This code is derived from the HashVoodoo FPGA Bitcoin Miner Project
https://github.com/pmumby/hashvoodoo-fpga-bitcoin-minerLicensed under GPL. My thanks to Paul Mumby (Glasswalker), makomk and TheSeven.
Test bitstream
https://www.dropbox.com/s/m901icq7pt9nl4l/CM1-hv-v04a-80MHz-ucf-75-fmax-78.bitFaster version
https://www.dropbox.com/s/xm8gjm7b2qnhgig/CM1-hv-v04a-120MHz-ucf-100-fmax-103.bitFaster version
https://www.dropbox.com/s/ledl95oolt7lgts/CM1-hv-v04a-150MHz-ucf-130-fmax-140.bitFaster version
https://www.dropbox.com/s/bbevqb8792emll9/CM1-hv-v04a-175MHz-ucf-150-fmax-161.bitNB This requires the hashvoodo firmware from
https://github.com/pmumby/hashvoodoo-fpga-bitcoin-miner/downloadsUse hashvoodoo_controller_25.bit from any of the later releases, NOT the 08_04_2012.
Some useful instructions at
https://en.bitcoin.it/wiki/CM1Quickstart (these are for bitcoin but the programming guide is relevant).
It was rather temperamental and may require multiple attempts at programming to get the bitstreams to load. I would recommend just loading the bitstream and not attempting to flash the configuration ROMs.
What I find to work is the following [EDIT
After RTFM I took out the -I switch which was causing most of my problems, it works a lot better now] ...
Boot the VirtualBox machine and copy the bitstream (I use "nc" rather than fiddling with usb sticks, ftp also works but needs passive mode).
Power up the CM1 board wait for it to fully load
Set switch 3 OFF (configuration mode) then connect the USB cable.
Execute "xc3sprog -c cm1 -v -p0 CM1-hv-v04a-80MHz-ucf-75-fmax-78.bit" for each fpga in turn p0, p1, p2, p3
This takes about 20 seconds, successful loading is indicated by bright red and yellow LEDs, with a short flash of green.
Return switch 3 to "on", the red LEDs will now flash slowly.
Shutdown VirtualBox (run "init 0"), disconnect then reconnect the USB cable, then start cgminer. I have supplied two windows versions and also on
github (uses updated driver_icarus.c).
https://www.dropbox.com/s/m18kr3kgrl102w2/cgminer-311-2013-11-16-CM1.exehttps://www.dropbox.com/s/d3gbhpqboo9itei/cgminer-311-2013-11-16-CM1-notest.exeThe second one is a fallback if the fpgas are not detected as valid icarus devices (the icarus detect result is ignored).
NOTE, these are rather buggy (the -T switch is required else it crashes in libcurses). Run them as follows on windows (using the relevant COM ports for your system) ...
cgminer -T --disable-gpu --icarus-timing long -S \\.\COM20 -S \\.\COM21 -S \\.\COM22 -S \\.\COM23 --url localhost:8772 --userpass username:password 2>log.txt
I've swapped the green and blue LED designations, green is now the I/O indicator and blue is a valid hash (it made more sense as blue is much brighter).
Its all very rough and the current speed is very slow (80MHz) but this will improve in future builds. Dynamic clock is enabled in the bitstream but not supported by this version of of cgminer.
Good Luck!
[Edited for typos etc, I was a bit rushed yesterday]