IP Library Granted Patent US 11,770,256
Granted Patent B1
US 11,770,256 · App. 16/447,865 · Granted Sep 26, 2023

System and method for bitcoin mining with reduced power

Inventor: David A. Carlson (Haslet, TX)
Assignee: Marvell Asia Pte, Ltd.
H04L9/3236G06F21/76G06Q20/0658H04L9/50H04L2209/56
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,770,256
App. No.
16/447,865
Granted
Sep 26, 2023
Kind
B1
Abstract

A circuit and corresponding method enable bitcoin mining in a blockchain network. The circuit comprises a nonce generator that generates a nonce value, on a cycle-by-cycle basis, and changes only one binary digit of the nonce value per cycle. The circuit further comprises a hash engine that inserts, on the cycle-by-cycle basis, the nonce value into a block header of a block candidate and generates a digest by applying a hash function to the block header. The block header includes a representation of a target value. The circuit further comprises a validator that compares, on the cycle-by-cycle basis, the digest to the target value. In an event the digest satisfies the target value, the validator submits the block candidate to the blockchain network, causing newly minted bitcoin to be mined from the blockchain network. Changing only one binary digit of the nonce value, per cycle, reduces power consumption of the circuit.

Claims (35)

1 . A circuit for bitcoin mining in a blockchain network, the circuit comprising:

a nonce generator configured to generate a nonce value, on a cycle-by-cycle basis, and to change only one binary digit of the nonce value per cycle;

a hash engine configured to insert, on the cycle-by-cycle basis, the nonce value into a block header of a block candidate and generate a digest by applying a hash function to the block header, the block header including a representation of a target value; and

a validator circuit configured to compare, on the cycle-by-cycle basis, the digest to the target value and, in an event the digest satisfies the target value, submit the block candidate with the nonce value to the blockchain network, causing bitcoin to be mined from the blockchain network.

2 . The circuit of claim 1 , wherein the nonce generator is a gray code counter and wherein the nonce value is a 32-bit gray code value output from the gray code counter.

3 . The circuit of claim 2 , wherein generating the nonce value via the gray code counter reduces power consumption of the circuit relative to using a binary counter to generate the nonce value.

4 . The circuit of claim 1 , wherein, to apply the hash function to the block header, the hash engine is further configured to:

compute a first hash value by hashing the block header via the hash function; and

compute a second hash value by hashing the first hash value via the hash function, wherein the digest is the second hash value.

5 . The circuit of claim 1 , wherein a length of the digest is 256 bits.

6 . The circuit of claim 1 , wherein, the validator is further configured to convert the representation to the target value and, in an event the digest is less than or equal to the target value, the validator is further configured to conclude that the digest satisfies the target value based on comparing the digest to the target value.

7 . The circuit of claim 6 , further comprising a reset controller configured to reset the nonce generator in the event the validator concludes that the digest satisfies the target value.

8 . The circuit of claim 6 , wherein the circuit further comprises a block generator configured to generate the block candidate for input to the hash engine and, in the event the validator concludes that the digest satisfies the target value, the block generator is further configured to change the block candidate generated to a different block candidate for use by the hash engine.

9 . The circuit of claim 1 , wherein the circuit is an application-specific integrated circuit (ASIC).

10 . A method for bitcoin mining in a blockchain network, the method comprising:

generating a nonce value, on a cycle-by-cycle basis, changing only one binary digit of the nonce value per cycle;

inserting, on the cycle-by-cycle basis, the nonce value into a block header of a block candidate and generating a digest by applying a hash function to the block header, the block header including a representation of a target value; and

comparing, on the cycle-by-cycle basis, the digest to the target value and, in an event the digest satisfies the target value, submitting the block candidate with the nonce value to the blockchain network, causing bitcoin to be mined from the blockchain network.

11 . The method of claim 10 , wherein generating the nonce value includes incrementing a gray code counter on the cycle-by-cycle basis and wherein the nonce value is a 32-bit gray code value output from the gray code counter.

12 . The method of claim 10 , wherein the generating consumes less power relative to generating the nonce value via a binary counter.

13 . The method of claim 10 , wherein applying the hash function includes:

computing a first hash value by hashing the block header via the hash function; and

computing a second hash value by hashing the first hash value via the hash function, wherein the digest is the second hash value.

14 . The method of claim 10 , wherein a length of the digest is 256 bits.

15 . The method of claim 10 further comprising converting the representation to the target value and wherein, in an event the digest is less than or equal to the target value, the comparing includes concluding that the digest satisfies the target value.

16 . The method of claim 10 , further comprising resetting the nonce generator in the event the digest satisfies the target value.

17 . The method of claim 10 , wherein the method further comprises generating the block candidate and, in the event the digest satisfies the target value, changing the block candidate generated to a different block candidate for the inserting.

18 . An application-specific integrated circuit (ASIC) for bitcoin mining in a blockchain network, the ASIC comprising:

a gray code counter configured to output a gray code on a cycle-by-cycle basis; and

a hash engine configured to insert, on the cycle-by-cycle basis, the gray code into a nonce field of a block header of a block candidate and generate a digest by applying a hash function to the block header, the block header including a representation of a target value; and

a validator circuit configured to compare the digest to the target value and, in an event the digest generated satisfies the target value, submit the block candidate with the gray code to the blockchain network, causing bitcoin to be mined from the blockchain network.

19 . The ASIC of claim 18 , wherein, to apply the hash function to the block header, the hash engine is further configured to:

compute a first hash value by hashing the block header via the hash function; and

compute a second hash value by hashing the first hash value via the hash function, wherein the digest is the second hash value.

20 . The ASIC of claim 18 , wherein a length of the digest generated is 256 bits.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053475/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2020
From: MARVELL INTERNATIONAL LTD.
To: CAVIUM INTERNATIONAL
Reel/Frame 052918/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2019
From: CARLSON, DAVID A.
To: MARVELL SEMICONDUCTOR, INC.
Reel/Frame 050108/0579 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2019
From: MARVELL SEMICONDUCTOR, INC.
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 050108/0607 →
Cited By (4)
US 12,261,939 US 12,346,857 US 12,621,175 US 12,647,273