Bitcoin Forum
November 08, 2024, 04:43:14 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 [10] 11 12 »  All
  Print  
Author Topic: Open Source Avalon Gen2 55nm Board  (Read 35930 times)
S4VV4S
Hero Member
*****
Offline Offline

Activity: 1582
Merit: 502


View Profile
January 31, 2014, 03:06:25 PM
 #181

Has anyone built this?

Ostenbacken
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
January 31, 2014, 10:28:02 PM
Last edit: January 31, 2014, 10:39:07 PM by Ostenbacken
 #182

Hi guys,

good news. It took me and my friends about a week to debug the 16-chip board but now it's nearly finished. To be brief: there were quite some bugs in the firmware. Also we've fixed some suboptimalities in the firmware operation. But now it's very reliable and predictable with bfgminer: you tell the board how fast should it operate the chips, and you get exactly that speed all the way between 500Mh/s per chip to 1700MH/s per chip. With the 16-chip board modifications to bfgminer were also necessary: at high speeds the board completes its work queue too quickly so that a significant amount of time was lost in idle.

With careful thermal design and at 1.025V power, we can run the 16-chip board at 27.2GH/s rated speed. bfgminer currently reports 26.3GH/s but it may change due to averaging.

I'm going to post the firmware updates shortly. A question: what is the optimal way of posting the firmware updates? I could send it to the author of the original project to be incorporated in the github repository. The bfgminer software also has to be modified for operation at maximum speed.

The Texas Instruments voltage converter is pretty overloaded at these speeds. Both inductors and FETs on it heat a lot despite forced air coolong. At least, small heatsinks must be mounted on them. Also I'd recommend making 10-chip boards or placing less than 16 chips on the 16-chip boards such as 12-14 in order not to overload the voltage converter.

http://s020.radikal.ru/i719/1401/62/b501996fcfa8.png
form (OP)
Newbie
*
Offline Offline

Activity: 41
Merit: 0


View Profile
January 31, 2014, 10:54:13 PM
 #183

I'm going to post the firmware updates shortly. A question: what is the optimal way of posting the firmware updates? I could send it to the author of the original project to be incorporated in the github repository. The bfgminer software also has to be modified for operation at maximum speed.

Great work!
I can merge your code into the github-repo, or giving you direct access to it.
Can i just verify your work? Just send a PM with a link to an archive with your firmware and bfgminer-patch please.
BigJRepairs
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
February 01, 2014, 04:44:32 AM
 #184

It turns out Jeffery wasn't bluffing, he just didn't explain it well. He paid a developer $2000 USD for what turned out to not be what he expected. I believe that is what he meant by great contributers and he has emailed me what he has stable at 21 GH/S.

I don't see a reason to fork seeing as he paid for this and Ostenbacken and Form have this under control. Tips incoming when I get these running. I'm also leaving my offer open to flash free minus shipping for anyone that can't do it prior to this fiasco.
Ostenbacken
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
February 01, 2014, 11:14:04 PM
Last edit: February 03, 2014, 07:10:07 PM by Ostenbacken
 #185

Hi everybody,

here is the updated firmware:
firmware.rar

for the 10-chip board simply change the 'ChipCount' line to 10, we've checked it and it works.

Here is the updated Klondike driver for the bfgminer:

driver-klondike.rar

We are asking everybody who benefited from our firmware and driver troubleshooting, to support our incentive of sharing our achievements with the community by making a small BTC donation to:
19bWQt5ix6u7hgZyYUcADy72MLsuGzCRYn

The updated firmware supports speeds down to 500MHz. It is possible to implement support for lower frequencies as well by using nonzero values for the OD parameter. While making the updates we've hit some Microchip XC8 compiler bugs so that expression evaluations in the UpdateClock() resulted in wrong values. Updating the compiler to the latest version did not help. The workaround was to split big expression evaluations into smaller statements.

Here is the performance achieved with two 10-chip boards and one 16-chip board running at speed 1717 (rated 1.717GH/s per chip). Again, careful thermal design is mandatory to achieve this performance. Heatsinks are required on both sides of the PCB with high-performance rubber inserts between the heatsink and PCB/chips. You can look up overclockers' resources for tips in thermal design.
http://s020.radikal.ru/i710/1402/a6/818c5c336781.png
drinkmorecoffee
Newbie
*
Offline Offline

Activity: 58
Merit: 0



View Profile WWW
February 02, 2014, 05:48:14 AM
 #186

Hi everybody,

here is the updated firmware:
firmware.rar

for the 10-chip board simply change the 'ChipCount' line to 10, we've checked it and it works.

Here is the updated Klondike driver for the bfgminer:

driver-klondike.rar



Excellent work, guys!

One question: There has been a lot of back-and-forth on the firmware, but little discussion on the PCB itself.  Which PCB design file/s are you guys using for your boards?  I just don't want to risk building up an old PCB with current firmware.
BigJRepairs
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
February 02, 2014, 06:57:31 AM
 #187

Ok, what I did:
- bought Pickit3, downloaded MPLAB X, installed it
- download latest firmware once from
     github.com/formtapez/avalon and from
     github.com/zipiju/k16-firmware
-connected Pickit3 to computer, drivers have been installed
- started Pickit3
- choosen as device: PIC16LF1459
- pressed connect
- warning window pops up to check wether the choose device is correct or not. => checked it chip on board
   is PIC16LF1459 => pressed ok
- warning window pops up: Target Device ID (0x0) does not match the expected Device ID (0x3027). Would
  you like to continue? => press ok => CONNECTION WILL BE ESTABLISHED
- choose downloaded .hex-file => press Program
- error message comes up: failed to program device

What am I doing wrong? For me it seems that I have the .hex-files? Is this correct?

Does hongkongapple1 gave is latest firmware to anyone of you? I asked him twice for the .hex-file for 25GHs and he gave me no response nor the files.

Can anybody help me a little bit?
 

My guess is you're using headers with ext cable. Take them off and plug debugger straight into board.
Ostenbacken
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
February 02, 2014, 10:19:13 AM
 #188

Which PCB design file/s are you guys using for your boards?  I just don't want to risk building up an old PCB with current firmware.
PCB changes were minor, so any PCB design version, if it works at all, should also work with the latest firmware (the one that I posted). I would NOT recommend building the 16-chip board for the reason of overloading the voltage converter. Or if you build it, mount 10-12 chips on it. With chips working in turbo mode, it's 2.5W per GH. At 1.6GH the power per chip is 4W which corresponds to 4A current draw per chip. So with 12 chips you'll get 48A which is just below the maximum rated load (50A) of the voltage converter module. This way your circuit should run safely. To have a little extra margin, 10 chips would be even better.
DrZeck
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
February 02, 2014, 06:06:08 PM
 #189

Hi Folks,

did anyone tried I2C board chain ? Is it working ?

Cheers,
BigJRepairs
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
February 02, 2014, 07:53:54 PM
 #190

Hi everybody,

here is the updated firmware:
firmware.rar

for the 10-chip board simply change the 'ChipCount' line to 10, we've checked it and it works.

Here is the updated Klondike driver for the bfgminer:

driver-klondike.rar

The updated firmware supports speeds down to 500MHz. It is possible to implement support for lower frequencies as well by using nonzero values for the OD parameter. While making the updates we've hit some Microchip XC8 compiler bugs so that expression evaluations in the UpdateClock() resulted in wrong values. Updating the compiler to the latest version did not help. The workaround was to split big expression evaluations into smaller statements.

Here is the performance achieved with two 10-chip boards and one 16-chip board running at speed 1717 (rated 1.717GH/s per chip). Again, careful thermal design is mandatory to achieve this performance. Heatsinks are required on both sides of the PCB with high-performance rubber inserts between the heatsink and PCB/chips. You can look up overclockers' resources for tips in thermal design.

The firmware loaded fine but I can't get BFGminer to compile that driver. I think it's due to the .o file but I'm not sure how to fix that.

make -C lib
make[3]: Entering directory '/home/bfgminer/lib'
make  all-recursive
make[4]: Entering directory '/home/bfgminer/lib'
make[5]: Entering directory '/home/bfgminer/lib'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/home/bfgminer/lib'
make[4]: Leaving directory '/home/bfgminer/lib'
make[3]: Leaving directory '/home/bfgminer/lib'
cd libblkmaker && make
make[3]: Entering directory '/home/bfgminer/libblkmaker'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/bfgminer/libblkmaker'
  CCLD     bfgminer
bfgminer-driver-klondike.o: In function `klondike_init':
/home/bfgminer/driver-klondike.c:772: undefined reference to `opt_klondike_options'
collect2: error: ld returned 1 exit status
Makefile:922: recipe for target 'bfgminer' failed
make[2]: *** [bfgminer] Error 1
make[2]: Leaving directory '/home/bfgminer'
Makefile:1964: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/bfgminer'
Makefile:815: recipe for target 'all' failed
form (OP)
Newbie
*
Offline Offline

Activity: 41
Merit: 0


View Profile
February 02, 2014, 08:32:53 PM
 #191

The firmware loaded fine but I can't get BFGminer to compile that driver. I think it's due to the .o file but I'm not sure how to fix that.

It seemed he used an older version of bfgminer.
You can use the normal version and just change 2 lines:

#define MAX_WORK_COUNT 8
#define LATE_UPDATE_MS ((int)(0.5 * 1000))

These changes did a good job for me. I never saw a duplicate/idle message anymore since that, even with the board-firmware from before. (Including a slightly higher hashrate)
His new firmware for the board didnt work so well for me, the old one is faster at even lower frequencies, but i still have to debug it a little further...
Ostenbacken
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
February 02, 2014, 09:28:17 PM
Last edit: February 03, 2014, 06:57:18 PM by Ostenbacken
 #192

His new firmware for the board didnt work so well for me, the old one is faster at even lower frequencies, but i still have to debug it a little further...
Can you post any details? The frequency formula in the original firmware was incorrect, so you had to pick frequencies without any clear understanding how frequency relates to the hashrate. With my firmware, speeds 1650-1717 yield maximum performance, while lower speeds (down to 500MHz) also work well and in a predictable fashion so that the actual hashrate matches with the speed you specify, i.e. speed 500 -> 500MH per chip and so on. Here's a screenshot:
http://s019.radikal.ru/i601/1402/ca/70cccdc0e4bc.png
Here's an example command line:
./bfgminer -o stratum+tcp://stratum.mining.eligius.st:3334 -u <username> -p <password> --klondike-options 1718:70
substitute your pool credentials, username and password where appropriate.
BigJRepairs
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
February 03, 2014, 05:46:37 AM
Last edit: February 03, 2014, 08:59:36 AM by BigJRepairs
 #193

Quote
#define MAX_WORK_COUNT 8
#define LATE_UPDATE_MS ((int)(0.5 * 1000))


I was able to compile bfgminer with this change but the git firmware is just giving a bunch of request work updates, I'm going to leave it running a while, unless you meant a different firmware?
Ostenbacken
Newbie
*
Offline Offline

Activity: 16
Merit: 0


View Profile
February 03, 2014, 07:01:48 PM
 #194

It seemed he used an older version of bfgminer.
You can use the normal version and just change 2 lines:

#define MAX_WORK_COUNT 8
#define LATE_UPDATE_MS ((int)(0.5 * 1000))
That's right. We didn't make any more changes in the driver. However, please note: we recently figured out that more optimal LATE_UPDATE_MS delays are:
#define LATE_UPDATE_MS ((int)(0.7 * 1000))
for 16-chip boards, and
#define LATE_UPDATE_MS ((int)(1.5 * 1000))
for 10-chip boards.

Also we checked the most recent bfgminer sources. The reduced value of the LATE_UPDATE_MS delay is not yet incorporated in it, so you have to do it yourself.

---

One more thing. We are asking everybody who benefited from our firmware and driver troubleshooting, to support our incentive of sharing our achievements with the community by making a small BTC donation to:
19bWQt5ix6u7hgZyYUcADy72MLsuGzCRYn
BigJRepairs
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
February 05, 2014, 04:36:37 PM
 #195

It turned out the request work updates were due to a short in the board. So 4/5 running not bad I guess. I am having a strange issue with the raspberry pi. It doesn't seem to like more than 2 of these connected at once. The cards aren't bad because I can interchange them. Anyone else run into this? Mabey, just too much for the little guy.
BigJRepairs
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
February 05, 2014, 04:46:48 PM
Last edit: February 05, 2014, 05:30:01 PM by BigJRepairs
 #196

Hi Folks,

did anyone tried I2C board chain ? Is it working ?

Cheers,

Im interested in giving this a shot. I hope no one saw my original comment it was seriously retarded. I can breadboard it out. The design below the ISP on the schematic is reference for the chain right?
DrZeck
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
February 05, 2014, 06:48:42 PM
 #197

Hi Folks,

did anyone tried I2C board chain ? Is it working ?

Cheers,

Im interested in giving this a shot. I hope no one saw my original comment it was seriously retarded. I can breadboard it out. The design below the ISP on the schematic is reference for the chain right?

Yes, that is for chaining boards, the pads are located here: https://www.dropbox.com/s/f486v7mr564iy7d/board-layer01-top-name.png

i have build different boards and leave a connector for that but i am still waiting boards to arrive so i dont have 2 to try, i have one for debugging only: https://www.dropbox.com/s/9ojltfykb4v6sdb/IMG_20140205_192247.jpg

it is strange that this is working at all with pic connected like that bit i did not have qfn pic at the time.

this is the board with very poor dc dc design  Grin : https://www.dropbox.com/s/uisskylqk1uu1z1/IMG_20140117_134651.jpg

and the new Board: https://www.dropbox.com/s/pzs0ex8tyo5gyqh/HashMaster%201.8.png

So, i will try everything when i get boards, i will post results here.

If you try i2c chain please post some news, you need to connect SDA , SCL and GND for that to work, in parallel. Do not connect 3.3v pin.

So:

TP6 - 3.3V - DO NOT CONNECT

TP7 - SCL - CONNECT TO TP7 ON NEXT BOARD

TP8 - SDA - CONNECT TO TP8 ON NEXT BOARD

TP9 - GND - THIS IS GROUND, if you running boards on same power supply they are already connected so you can connect just signal lines ( SCL and SDA )

Good Luck









BigJRepairs
Newbie
*
Offline Offline

Activity: 58
Merit: 0


View Profile
February 05, 2014, 09:12:21 PM
 #198

One last retarded question before I move to the chain. The fifth board is bothering me. What 2 points are you measuring to adjust voltage? TP1 to ground?
form (OP)
Newbie
*
Offline Offline

Activity: 41
Merit: 0


View Profile
February 05, 2014, 09:30:12 PM
 #199

One last retarded question before I move to the chain. The fifth board is bothering me. What 2 points are you measuring to adjust voltage? TP1 to ground?

yes
DrZeck
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
February 05, 2014, 09:40:24 PM
 #200

One last retarded question before I move to the chain. The fifth board is bothering me. What 2 points are you measuring to adjust voltage? TP1 to ground?

Ok, form has answered on that question. one more thing, if you connect fan to the board cut the yellow wire, it will reset PIC16LF1459 all the time. everything else is ok on that side.

@form what we need to change in the code for tach to working ? i have removed it from hardware completely, but it can be used for some alarm when the fan stop working or something like that ... is it big change or minor ? Thanks,

Cheers,

Pages: « 1 2 3 4 5 6 7 8 9 [10] 11 12 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!