G06F7/46

SYSTEMS AND METHODS FOR NON-PARALLELISED MINING ON A PROOF-OF-WORK BLOCKCHAIN NETWORK

The present disclosure provides methods and systems for ensuring the security of a blockchain and associated network, and for enabling the establishment of consensus regarding the state of the blockchain. A method of the disclosure may be implemented by one or more nodes on a blockchain network, using a non-parallelisable algorithm to calculate an output based on a computational difficulty parameter, a hash of at least one blockchain transaction; and/or a hash of at least one blockchain block header. The non-parallelisable, inherently sequential algorithm comprises at least one of the following operations or a combination thereof: a recursive operation, a modular exponentiation and/or a repeated squaring operation.

Global number range generation
11269593 · 2022-03-08 · ·

A system, a method, and a computer program product for generation and consumption of global numbers. A range of global numbers for consumption by a plurality of processes of a software application in a plurality of software applications is generated. The range of global numbers is generated in accordance with one or more requirements of the software application and includes a plurality of blocks of global numbers. The generated range of global numbers is provided to the software application for consumption by the plurality of processes. Each process is assigned a block of global numbers in the plurality of blocks of global numbers and consumes the assigned block of global numbers. A count of global numbers in the global number range consumed by each process in the plurality of processes is determined. Another range of global numbers is generated upon determination of the count being below a predefined threshold.

Global number range generation
11269593 · 2022-03-08 · ·

A system, a method, and a computer program product for generation and consumption of global numbers. A range of global numbers for consumption by a plurality of processes of a software application in a plurality of software applications is generated. The range of global numbers is generated in accordance with one or more requirements of the software application and includes a plurality of blocks of global numbers. The generated range of global numbers is provided to the software application for consumption by the plurality of processes. Each process is assigned a block of global numbers in the plurality of blocks of global numbers and consumes the assigned block of global numbers. A count of global numbers in the global number range consumed by each process in the plurality of processes is determined. Another range of global numbers is generated upon determination of the count being below a predefined threshold.

COMPUTE-IN-MEMORY (CIM) BINARY MULTIPLIER
20210279036 · 2021-09-09 ·

Certain aspects provide methods and apparatus for binary computation. An example circuit for such computation generally includes a memory cell having at least one of a bit-line or a complementary bit-line; a computation circuit coupled to a computation input node of the circuit and the bit-line or the complementary bit-line; and an adder coupled to the computation circuit, wherein the computation circuit comprises a first n-type metal-oxide-semiconductor (NMOS) transistor coupled to the memory cell, and a first p-type metal-oxide-semiconductor (PMOS) transistor coupled to the memory cell, drains of the first NMOS and PMOS transistors being coupled to the adder, wherein a source of the first PMOS transistor is coupled to a reference potential node, and wherein a source of the first NMOS transistor is coupled to the computation input node.

METHOD AND APPARATUS FOR OUTPUTTING SIGNALS
20210103311 · 2021-04-08 ·

This application relates to a method and apparatus for outputting signals. In one aspect, the apparatus includes a signal control unit configured to generate two or more control signals upon two or more conditions, which respectively correspond to the two or more control signals being satisfied. The apparatus also includes a signal output unit configured to output a final output signal depending on the two or more control signals upon an input signal being inputted into the signal output unit.

Neural network accelerating device and method of controlling the same
10990354 · 2021-04-27 · ·

An accelerating device includes a signal detector that converts a first input signal and a second input signal into a first converted input signal and a second converted input signal, respectively, and that generates a final zero-value flag signal, a first one-value flag signal, and a second one-value flag signal. The accelerating device further includes a processing element (PE) that processes the first converted input signal and the second converted input signal based on the final zero-value flag signal, the first one-value flag signal, and the second one-value flag signal and that skips a first arithmetic operation and a second arithmetic operation when the final zero-value flag signal has a first value. The first value of the final zero-value flag signal indicates that the first input signal, or the second input signal, or both have a value of 0.

NEURAL NETWORK ACCELERATING DEVICE AND METHOD OF CONTROLLING THE SAME
20200301665 · 2020-09-24 ·

An accelerating device includes a signal detector that converts a first input signal and a second input signal into a first converted input signal and a second converted input signal, respectively, and that generates a final zero-value flag signal, a first one-value flag signal, and a second one-value flag signal. The accelerating device further includes a processing element (PE) that processes the first converted input signal and the second converted input signal based on the final zero-value flag signal, the first one-value flag signal, and the second one-value flag signal and that skips a first arithmetic operation and a second arithmetic operation when the final zero-value flag signal has a first value. The first value of the final zero-value flag signal indicates that the first input signal, or the second input signal, or both have a value of 0.

GLOBAL NUMBER RANGE GENERATION
20200233641 · 2020-07-23 · ·

A system, a method, and a computer program product for generation and consumption of global numbers. A range of global numbers for consumption by a plurality of processes of a software application in a plurality of software applications is generated. The range of global numbers is generated in accordance with one or more requirements of the software application and includes a plurality of blocks of global numbers. The generated range of global numbers is provided to the software application for consumption by the plurality of processes. Each process is assigned a block of global numbers in the plurality of blocks of global numbers and consumes the assigned block of global numbers. A count of global numbers in the global number range consumed by each process in the plurality of processes is determined. Another range of global numbers is generated upon determination of the count being below a predefined threshold.

GLOBAL NUMBER RANGE GENERATION
20200233641 · 2020-07-23 · ·

A system, a method, and a computer program product for generation and consumption of global numbers. A range of global numbers for consumption by a plurality of processes of a software application in a plurality of software applications is generated. The range of global numbers is generated in accordance with one or more requirements of the software application and includes a plurality of blocks of global numbers. The generated range of global numbers is provided to the software application for consumption by the plurality of processes. Each process is assigned a block of global numbers in the plurality of blocks of global numbers and consumes the assigned block of global numbers. A count of global numbers in the global number range consumed by each process in the plurality of processes is determined. Another range of global numbers is generated upon determination of the count being below a predefined threshold.

PROCESSING APPARATUS AND PROCESSING METHOD
20200117976 · 2020-04-16 ·

The present disclosure provides a processing device and method. The device includes: an input/output module, a controller module, a computing module, and a storage module. The input/output module is configured to store and transmit input and output data; the controller module is configured to decode a computation instruction into a control signal to control other modules to perform operation; the computing module is configured to perform four arithmetic operation, logical operation, shift operation, and complement operation on data; and the storage module is configured to temporarily store instructions and data. The present disclosure can execute a composite scalar instruction accurately and efficiently.