Bitcoin Forum

Bitcoin => Hardware => Topic started by: legendster on January 05, 2015, 11:43:54 AM



Title: A little naivety
Post by: legendster on January 05, 2015, 11:43:54 AM
Hello random people,

I was wondering how many times has this question which I am about to ask, has been asked on this forum. Subsequently I'd be obliged if anyone gave me the links to such resources.

Say I was a fresh high school pass out student and lets say I have acquired the unquenchable thirst for mining Cryptos.
I start with my high end graphics card and then waste my money on ordering some small scale miners.
But it isnt enough for me... so... now I want to build my own hardware.

[THE QUESTION :]

What must I study to get the basic knowledge of developing the modern day Bitcoin mining chips ? What technical knowledge does one need to understand the basic 'design principles' one must follow to EVENTUALLY build his own mining hardware ?


Title: Re: A little naivety
Post by: Remember remember the 5th of November on January 05, 2015, 12:32:44 PM
I've asked the same question before, alas without an answer. I suppose for one it must be knowing how to work with circuits, what are resistors, capacitors, SMD, basic electricity knowledge(rather than basic, think general knowledge).

And of course, transistors and logic gates and semiconductors (http://en.wikipedia.org/wiki/Semiconductor).

However, I am expecting somebody more qualified to answer this. And of course tools that can be used to design said chips.


Title: Re: A little naivety
Post by: dabura667 on January 05, 2015, 12:41:24 PM
Hello random people,

I was wondering how many times has this question which I am about to ask, has been asked on this forum. Subsequently I'd be obliged if anyone gave me the links to such resources.

Say I was a fresh high school pass out student and lets say I have acquired the unquenchable thirst for mining Cryptos.
I start with my high end graphics card and then waste my money on ordering some small scale miners.
But it isnt enough for me... so... now I want to build my own hardware.

[THE QUESTION :]

What must I study to get the basic knowledge of developing the modern day Bitcoin mining chips ? What technical knowledge does one need to understand the basic 'design principles' one must follow to EVENTUALLY build his own mining hardware ?

1. Understand how SHA256 works inside and out. (or whatever algorithm you want to design a board and chip for.
2. Understand all facets of electrical engineering in depth.
3. Learn everything you can about silicon chip manufacturing. <<< this is the hardest part, as the facilities are not cheap.

So in short:

Learn all about #1 and #2 and don't have any money to work with #3

or

Garner tons of money for #3 and hire a bunch of smart people who already know #1 and #2.


Title: Re: A little naivety
Post by: hhanh00 on January 05, 2015, 01:01:14 PM
Hello random people,

I was wondering how many times has this question which I am about to ask, has been asked on this forum. Subsequently I'd be obliged if anyone gave me the links to such resources.

Say I was a fresh high school pass out student and lets say I have acquired the unquenchable thirst for mining Cryptos.
I start with my high end graphics card and then waste my money on ordering some small scale miners.
But it isnt enough for me... so... now I want to build my own hardware.

[THE QUESTION :]

What must I study to get the basic knowledge of developing the modern day Bitcoin mining chips ? What technical knowledge does one need to understand the basic 'design principles' one must follow to EVENTUALLY build his own mining hardware ?

It depends on what knowledge you currently have. Mining is basically calculating a ton of hashes on same small chunk of bytes. The kinda of hash varies with the crypto currency you want to mine. Let's say you are dealing with Bitcoin, therefore it's SHA-256. Grab a book and learn what SHA does. It's basically a series of rounds. Each round does some bit manipulation on a block and then modifies some internal state.
If you want to go into hardware, the first step I recommend is to learn about FGPA. They are affordable. It costs a few 100$ to get an entry level board. Then get familiar with a hardware design language like Verilog structural. You can even try with a simulator if you don't want to invest in a development board.

It's hugely different than a programming language. Essentially, you are going to define the wiring and the logical gates of your FGPA. (Stay clear from Verilog behavior - it won't help you get to hardware).
Then you can "program" the chip - in fact it means that the chip will reconfigure its layout physically to match your design. So you will have to deal with clocks, timings, layout, number of gates, undefined levels and so on.

After that, you can decide if you want to go further and get into ASIC. Unfortunately for ASIC you have to spend 1 million $ but a FGPA would get you far in the right direction. Have fun!

PS: Of course ASIC will beat the crap of your FGPA design because they are not programmable and are built for a given layout. But it's like learning to program by edging 0 & 1 into a CDROM.


Title: Re: A little naivety
Post by: Remember remember the 5th of November on January 05, 2015, 01:11:10 PM
Hello random people,

I was wondering how many times has this question which I am about to ask, has been asked on this forum. Subsequently I'd be obliged if anyone gave me the links to such resources.

Say I was a fresh high school pass out student and lets say I have acquired the unquenchable thirst for mining Cryptos.
I start with my high end graphics card and then waste my money on ordering some small scale miners.
But it isnt enough for me... so... now I want to build my own hardware.

[THE QUESTION :]

What must I study to get the basic knowledge of developing the modern day Bitcoin mining chips ? What technical knowledge does one need to understand the basic 'design principles' one must follow to EVENTUALLY build his own mining hardware ?

It depends on what knowledge you currently have. Mining is basically calculating a ton of hashes on same small chunk of bytes. The kinda of hash varies with the crypto currency you want to mine. Let's say you are dealing with Bitcoin, therefore it's SHA-256. Grab a book and learn what SHA does. It's basically a series of rounds. Each round does some bit manipulation on a block and then modifies some internal state.
If you want to go into hardware, the first step I recommend is to learn about FGPA. They are affordable. It costs a few 100$ to get an entry level board. Then get familiar with a hardware design language like Verilog structural. You can even try with a simulator if you don't want to invest in a development board.

It's hugely different than a programming language. Essentially, you are going to define the wiring and the logical gates of your FGPA. (Stay clear from Verilog behavior - it won't help you get to hardware).
Then you can "program" the chip - in fact it means that the chip will reconfigure its layout physically to match your design. So you will have to deal with clocks, timings, layout, number of gates, undefined levels and so on.

After that, you can decide if you want to go further and get into ASIC. Unfortunately for ASIC you have to spend 1 million $ but a FGPA would get you far in the right direction. Have fun!

PS: Of course ASIC will beat the crap of your FGPA design because they are not programmable and are built for a given layout. But it's like learning to program by edging 0 & 1 into a CDROM.
He isn't talking about the programming aspect, but the low-level electrical engineering aspect.


Title: Re: A little naivety
Post by: hhanh00 on January 05, 2015, 01:15:42 PM
As far as I understand the question, it's about the chip design. Not the electrical wiring around the chip. The later is much easier.
It's a program that compiles into an integrated circuit mask that is then used to burn the chips.

Edit: Some links
http://en.wikipedia.org/wiki/Hardware_description_language
http://en.wikipedia.org/wiki/Verilog


Title: Re: A little naivety
Post by: hhanh00 on January 05, 2015, 02:31:15 PM
It just occurred to me that the OP could be talking about building a mining datacenter - for which my answer is completely off topic.


Title: Re: A little naivety
Post by: conizer14 on January 07, 2015, 04:49:27 PM
The time, money and effort that you would invest into developing your own hardware will certainly improve your knowledge but by the time you lean all of the needed info... miners will have evolved again and your technology could be obsolete.

I like your aspiration, but in reality you're better off buying hardware or using cloud mining.