Di bawah naungan Bitfury Clarke - cara kerja chip penambangan baru kami

Pada akhir September, kami memperkenalkan chip ASIC baru yang dikembangkan khusus untuk penambangan SHA256 di jaringan Bitcoin. Hari ini kami akan memberi tahu Anda apa yang ada di dalamnya.


Gambar: Grup Bitfury

Beberapa kata tentang penambangan bitcoin


Tujuan penambangan adalah untuk melindungi jaringan blockchain. Penambang menggunakan perangkat keras mereka untuk memecahkan masalah komputasi yang kompleks yang menjamin integritas transaksi dalam jaringan dan menghilangkan serangan pengeluaran ganda . Secara paralel, penambangan bertindak sebagai mekanisme untuk menghasilkan mata uang kripto, yang diterima penambang sebagai hadiah (sekarang - 12,5 bitcoin per blok).

Tugas komputasi yang dimaksud terkait dengan pemilihan hash yang cocok dengan transaksi di blok. Nilai yang diinginkan dibentuk berdasarkan hash dari blok sebelumnya, angka acak (disebut nonce), dan jumlah hash transaksi selama sepuluh menit terakhir. Dalam hal ini, dua kondisi harus dipenuhi: hash harus mematuhi kompleksitas penambangan yang dinyatakan dan memiliki jumlah bit nol yang ditentukan secara ketat di awal. Untuk mengevaluasi kompleksitas , ekspansi dalam seri Taylor yang dimodifikasi digunakan.

Hash dalam blockchain Bitcoin dihitung menggunakan algoritma SHA256. Ini termasuk 64 iterasi, di mana bit transaksi "dicampur" di blok menggunakan operasi shift dan "penambahan modulo 2". Hasil penerapan fungsi SHA256 dianggap ireversibel, karena alasan ini hash target ditemukan oleh brute force. Kami menulis lebih detail tentang penambangan dan kolam penambangan, di mana peserta jaringan blockchain bersatu untuk mempercepat keputusan blok.

Sebelumnya, CPU dan GPU digunakan untuk mengurutkan nonce dan hash, tetapi seiring waktu, karena kompleksitas penambangan yang terus meningkat (itu berubah tergantung pada total daya komputasi semua peserta dalam jaringan bitcoin), ASIC khusus dirancang.
Kami di Bitfury juga mengembangkan solusi semacam itu. Secara total, kami menciptakan lima generasi chip penambangan, dan pada bulan September kami menghadirkan yang keenam - kami berbicara tentang ASIC Clarke, yang dirancang khusus untuk memecahkan hash SHA256.

Bagaimana kabar Clarke?


Clarke diproduksi menggunakan teknologi proses 14-nm dan diimplementasikan dalam faktor bentuk FC- LGA 35L 6x6 mm. Kasing kedua memiliki kabel sirkuit daya yang lebih efisien di papan. Chip ini menyelesaikan 120 gigabytes per detik, tetapi memungkinkan untuk menyesuaikan kinerja tergantung pada apa yang dibutuhkan penambang - hashrate yang lebih besar atau konsumsi daya yang rendah. Secara khusus, adalah mungkin untuk mencapai faktor efisiensi energi sebesar 55 mJ / gigahesh, karena 0,3 volt cukup untuk memberi daya pada chip. Struktur Clarke terlihat seperti ini:


Generator Jam Ini mengatur jam untuk chip. Level tegangan : VSS = 0, VDD = 1.

Antarmuka kontrol serial terhubung ke pengontrol eksternal dengan bus serial. Itu terlihat seperti bus SPI dengan kontak transfer data MOSI dan MISO (digunakan untuk mentransfer data dari master ke slave dan sebaliknya), dihubungkan oleh jalur SDATA.

Antarmuka bertanggung jawab untuk mengirimkan perintah. Berikut adalah beberapa di antaranya: tugas menulis untuk menulis tugas baru, memaksa sakelar tugas untuk memaksa penyangga beralih, membaca nonces untuk membaca nilai nonce, dll. Semua perintah memiliki satu templat dan berisi kode, panjang, bidang data, byte status chip, data dari buffer nonce dan checksum.


Checksum adalah jumlah aritmatika dari byte, dimulai dengan nol. Sebagai contoh, checksum dari perintah 04 03 03 8c 18 00 akan sama dengan AE.

Sistem kontrol nonce. Mengontrol proses perhitungan hash berdasarkan mask. Topeng "terletak" di buffer tugas dan digunakan untuk mengatur rentang perhitungan. Ini mendefinisikan bit dalam nonce yang akan tetap tidak berubah saat mencari nilai baru.

Buffer tugas. Diperlukan untuk menghitung hash (panjangnya 20 kata ganda). Ada dua buffer secara total, yang memungkinkan Anda untuk beralih antar tugas dengan cepat. Sementara buffer pertama sibuk dengan solusi hash, yang kedua menulis data untuk perhitungan berikut.

8154 kernel hash ring. Mereka menggunakan algoritma ganda SHA256.

Nonce buffer. Ini adalah 12 cincin buffer kata ganda di mana keputusan hash ditulis. Sebagai contoh, kami telah memberikan proses pertukaran data dalam chip yang terjadi selama perhitungan hash (dalam spoiler di bawah):

Pertukaran data chip (dalam bahasa Inggris)
// Program clock generator ke nilai 0x20 dan prescaler = 1 (dinonaktifkan) Kirim: 0803038c1800
Recv: f0b200b2
// Tetapkan topeng nonce ke 0x00000000
Kirim: 200300000000 Recv: f0230023
// Paksa pengalihan tugas Kirim: 020000
Recv: f0020002
// Kirim tugas
Wi 0 = CD3F992C 1 = 037F8197 2 = A58E091A
MS0 A = 0CAD7CD1 B = CBE38FD9 C = D14DC164 D = F90EB10B E = 819621CF F = 358D45CD G = 8C14CAE3 H = 538EF887 MS3 A = 5FF18CDD B = 8CDA24A4 C = 180266F9 D = 0C6CA7 NONCE = D5D0E8B9
Kirim: _014fa607d67b614925737be76bce53a41ba12b3c8b659f27ef6726be6049f924522d2b3c8b659c78616c779 a13c81a609
35067953386a9d52b3d0f24a3b0a607d67bb2a8cc5326708e0ef55b267700000000 Recv: 0fb200b2
// Paksa sakelar tugas
Kirim: 020000
Pindah: 0f020002
// Baca nonce buffer
Kirim: 040000 Recv: _0f04000000000000000000000000000000000000000000000000000000000000003fffffc7f7a42132ffffffc 1ffffffc0001ffbf8c
FIFO [0] = aaaaaaaa
FIFO [1] = aaaaaaaa
FIFO [2] = aaaaaaaa
FIFO [3] = aaaaaaaa
FIFO [4] = aaaaaaaa
FIFO [5] = aaaaaaaa
FIFO [6] = aaaaaaaa
FIFO [7] = 3ffffffc
FIFO [8] = d5d0e8b9 <- nilai nonce
FIFO [9] = 2ffffffc <- penanda sakelar tugas
FIFO [A] = 1ffffffc <- penanda sakelar tugas
FIFO [B] = aaab5515



Di mana chip akan digunakan


Sekarang kami memasang perangkat baru di server penambangan kami sendiri dan pusat data seluler BlockBox . Kami juga memodifikasi pertanian bitcoin di Kanada, Islandia, Georgia, dan Norwegia ( diluncurkan pada awal tahun ).

Keripik Clarke akan tersedia sebagai produk komersial. Secara khusus, mereka datang dengan penambang Bitfury Tardis yang dirancang untuk organisasi besar. Di Tardis, 5-8 papan cocok, mampu menghitung hingga 80 terahesh per detik. Penambang ini dapat ditingkatkan - di masa mendatang, ASIC Clarke yang terpasang di dalamnya akan diganti dengan chip baru.



Ini adalah video singkat kami yang memperkenalkan konsep chip baru:

Source: https://habr.com/ru/post/id428788/


All Articles