WO2021258824A1 - 反相输出动态d触发器 - Google Patents

反相输出动态d触发器 Download PDF

Info

Publication number
WO2021258824A1
WO2021258824A1 PCT/CN2021/087622 CN2021087622W WO2021258824A1 WO 2021258824 A1 WO2021258824 A1 WO 2021258824A1 CN 2021087622 W CN2021087622 W CN 2021087622W WO 2021258824 A1 WO2021258824 A1 WO 2021258824A1
Authority
WO
WIPO (PCT)
Prior art keywords
latch
clock signal
data
flip
nmos transistor
Prior art date
Application number
PCT/CN2021/087622
Other languages
English (en)
French (fr)
Inventor
田文博
范志军
郭海丰
杨作兴
Original Assignee
深圳比特微电子科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳比特微电子科技有限公司 filed Critical 深圳比特微电子科技有限公司
Priority to CA3181301A priority Critical patent/CA3181301A1/en
Priority to US18/002,302 priority patent/US20230238947A1/en
Publication of WO2021258824A1 publication Critical patent/WO2021258824A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/353Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of field-effect transistors with internal or external positive feedback
    • H03K3/356Bistable circuits
    • H03K3/3562Bistable circuits of the master-slave type
    • H03K3/35625Bistable circuits of the master-slave type using complementary field-effect transistors
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/01Details
    • H03K3/012Modifications of generator to improve response time or to decrease power consumption
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/353Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of field-effect transistors with internal or external positive feedback
    • H03K3/356Bistable circuits
    • H03K3/356008Bistable circuits ensuring a predetermined initial state when the supply voltage has been applied; storing the actual state when the supply voltage fails
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/353Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of field-effect transistors with internal or external positive feedback
    • H03K3/356Bistable circuits
    • H03K3/3562Bistable circuits of the master-slave type

Definitions

  • the present disclosure generally relates to an inverting output dynamic D flip-flop.
  • Bitcoin is a virtual encrypted digital currency in the form of P2P (Peer-to-Peer). Its concept was originally proposed by Satoshi Nakamoto on November 1, 2008, and was officially born on January 3, 2009. The uniqueness of Bitcoin is that it does not rely on a specific currency institution to issue, but is generated through a large number of calculations based on a specific algorithm. Bitcoin transactions use a distributed database composed of many nodes in the entire P2P network to confirm and record all transaction behaviors, and use cryptographic design to ensure security.
  • Bitcoin miners used to use CPU products to mine, but because mining is a computationally intensive application, and the difficulty is gradually increasing with the continuous improvement of the number of miners and the performance of equipment, now there is almost no or even negative benefit to using CPU mining. .
  • mining machine equipment such as dedicated chip (ASIC) or field programmable gate array (FPGA).
  • the core of Bitcoin mining using digital processing equipment, such as digital currency mining machines, is to obtain rewards based on the computing power of the mining machine to calculate SHA-256.
  • chip size, chip operating speed and chip power consumption are the three most important factors that determine the performance of the mining machine. Among them, the chip size determines the chip cost, and the speed of the chip operation determines the operating speed of the mining machine.
  • the power consumption of the chip determines the degree of power consumption, that is, the cost of mining. In practical applications, the most important performance indicator to measure a mining machine is the power consumed per unit of computing power, that is, the power consumption ratio.
  • the mining process is a large number of repetitive logic calculations, which requires a large number of D flip-flops. Improper selection of D flip-flops will result in an increase in chip area, slower computing speed and increased power consumption. It will eventually cause the power consumption and hashrate ratio of the mining machine to deteriorate.
  • the D flip-flop itself is widely used, and can be used as a digital signal register, shift register, frequency division and waveform generator, etc.
  • the D flip-flop has two inputs, data (D) and clock (CLK), and one output (Q), which can write data to or read data from the D flip-flop.
  • an inverting output dynamic D flip-flop including an input terminal for receiving input data; an output terminal for providing output data in response to the input data; a clock signal terminal for receiving Clock signal; the first latch, used to latch the input data from the input terminal and under the control of the clock signal to invert the input data transmission; the second latch, used to latch the data from the first latch And under the control of the clock signal, the data latched by the first latch is inverted and transmitted; the inverter is used for inverting and outputting the data received from the second latch, wherein the first latch, The second latch and the inverter are sequentially connected in series between the input terminal and the output terminal.
  • a multi-channel parallel register which includes a plurality of input terminals for inputting data; a plurality of output terminals for outputting data; a clock signal terminal for receiving a clock signal; and a clock buffer A device for buffering the clock signal received by the clock signal terminal to provide a clock signal to a plurality of dynamic D flip-flops, and the plurality of dynamic D flip-flops are connected in parallel between the plurality of input terminals and the plurality of output terminals It is used to latch and/or read data under the control of a clock signal, wherein the dynamic D flip-flop is the inverting output dynamic D flip-flop as described above.
  • a device for executing a Bitcoin mining algorithm including the dynamic D flip-flop according to the above-mentioned inverting output or the multi-channel parallel register according to the above-mentioned.
  • Figure 1 shows an inverting output dynamic D flip-flop according to some embodiments of the present disclosure
  • FIG. 2 shows a clock buffer for inverting output dynamic D flip-flops according to some embodiments of the present disclosure
  • FIG. 3 shows a dynamic D flip-flop with inverted output with clock control according to some embodiments of the present disclosure
  • 4A, 4B, 4C, and 4D respectively show schematic circuit diagrams of inverting output dynamic D flip-flops according to some embodiments of the present disclosure
  • Fig. 5 shows a circuit timing diagram of the inverted output dynamic D flip-flop shown in Fig. 4A, Fig. 4B, Fig. 4C and Fig. 4D;
  • 6A, 6B, 6C, and 6D respectively show schematic circuit diagrams of inverted output dynamic D flip-flops according to other embodiments of the present disclosure
  • FIG. 7 shows a circuit timing diagram of the inverted output dynamic D flip-flop shown in FIG. 6A, FIG. 6B, FIG. 6C, and FIG. 6D;
  • Figure 8 shows a multi-path parallel register composed of multiple parallel inverted output dynamic D flip-flops.
  • the computing equipment used to mine virtual currency requires a large amount of repetitive logic calculations during the mining process, which requires a large number of D flip-flops for data storage, so the performance of the D flip-flop directly affects the performance of the computing chip, including the chip area , Power consumption, computing speed, etc.
  • the dynamic D flip-flop reduces the positive feedback circuit used to maintain the working state, and the circuit structure will be greatly simplified, which not only reduces the chip area, but also reduces the power consumption.
  • the present disclosure proposes a dynamic D flip-flop with inverted output.
  • the inverting output dynamic D flip-flop proposed in the present disclosure can effectively reduce the chip area and power consumption due to the omission of the one-stage inverter, which is very useful for virtual currency computing devices that use a large number of dynamic D flip-flops. important.
  • the present disclosure provides an inverting output dynamic D flip-flop for computing devices and a parallel register composed of multiple parallel inverting output dynamic D flip-flops, thereby effectively reducing the area and Reduce power consumption.
  • FIG. 1 shows an inverting output dynamic D flip-flop according to some embodiments of the present disclosure.
  • the inverting output dynamic D flip-flop 100 includes an input terminal 101 for receiving input data; an output terminal 102 for providing output data in response to the input data; a clock signal terminal 103 for receiving a clock signal; a first latch
  • the second latch 104 is used to latch the input data from the input terminal 101 and the input data is inverted and transmitted under the control of the clock signal;
  • the second latch 105 is used to latch the data from the first latch 104 and then The data latched by the first latch 104 is inverted and transmitted under the control of the clock signal;
  • the inverter 106 is used for inverting and outputting the data received from the second latch 105, wherein the first latch 104.
  • the second latch 105 and the inverter 106 are sequentially connected in series between the input terminal 101 and the output terminal 102, wherein the data of the output terminal 102 and the data of the input terminal 101 are inverted.
  • FIG. 2 shows a clock buffer used to provide a clock signal for an inverted output dynamic D flip-flop.
  • the clock buffer 200 is composed of two inverters 201 and 202 connected in series.
  • the inverters 201 and 202 respectively generate CLKN and CLKP signals for controlling the inverted output dynamic D flip-flop.
  • the clock buffer 200 buffers the input clock signal CK and provides the inverted clock signals CLKN and CLKP to the inverted output dynamic D flip-flop. Only two inverters are shown in FIG. 2. Of course, the number of inverters is not limited to two, and the number of inverters can be more.
  • FIG. 3 shows a dynamic D flip-flop 300 with inverting output with clock control.
  • the clock signal CK is buffered by the clock buffer 301 and then provides the clock signals CLKN and CLKP to the inverted output dynamic D flip-flop 300.
  • FIG. 4A shows a schematic circuit diagram of an inverting output dynamic D flip-flop according to some embodiments of the present disclosure.
  • the inverting output dynamic D flip-flop 400 receives input data from the input terminal 401 to the first latch 402, and the first latch 402 is a three-state inverter.
  • the first latch 402 includes a plurality of switching elements connected in series.
  • the first latch 402 includes a first PMOS transistor 403, a second PMOS transistor 404, a first NMOS transistor 405, and a second NMOS transistor 406.
  • the first PMOS transistor 403, the second The PMOS transistor 404, the first NMOS transistor 405, and the second NMOS transistor 406 are sequentially connected in series between the power supply VDD and the ground GND.
  • the source of the first PMOS transistor 403 is connected to the power supply VDD
  • the source of the second PMOS transistor 404 is connected to the drain of the first PMOS transistor 403
  • the drain of the first NMOS transistor 405 is connected to the second
  • the drain of the PMOS transistor 404 and the drain of the second NMOS transistor 406 are connected to the source of the first NMOS transistor 405, and the source of the second NMOS transistor 406 is connected to the ground GND.
  • the gate of the first PMOS transistor 403 and the gate of the second NMOS transistor 406 are connected together to receive input data from the input terminal.
  • the gate of the second PMOS transistor 404 is set to receive the clock signal CLKP
  • the gate of the first NMOS transistor 405 is set to receive the clock signal CLKN.
  • the second latch 408 is also a three-state inverter, and includes a plurality of switching elements connected in series. As shown in FIG. 4A, the second latch 408 includes a third PMOS transistor 409, a fourth PMOS transistor 410, a third NMOS transistor 411, and a fourth NMOS transistor 412 that are sequentially connected in series. The gate of the third PMOS transistor 409 and the gate of the fourth NMOS transistor 412 are connected together to receive data from the first latch 402. The gate of the fourth PMOS transistor 410 is set to receive the clock signal CLKN, and the gate of the third NMOS transistor 411 is set to receive the clock signal CLKP.
  • the output driving unit of the inverting output dynamic D flip-flop is an inverter 414.
  • the inverter 414 inverts the data received from the second latch 408 again, and finally transmits it to the output terminal 415. Since the data undergoes a total of three inversions from the first latch, the second latch, and the inverter, the data at the output terminal 415 of the inverted output dynamic D flip-flop is inverted compared to the input terminal 401.
  • the present disclosure omits the input inverter to change the output terminal to an inverted output.
  • the number of transistors in the dynamic D flip-flop is thus reduced from 12 Reducing to 10 reduces the chip area by about 16%; and because the one-stage inverter is reduced, the power will be reduced accordingly.
  • the input inverter is omitted, and the output inverter is retained.
  • This design has special considerations: Compared with omitting the output inverter, keeping the output inverter (that is, omitting the input inverter) can preserve the stronger drive of the dynamic D flip-flop to the subsequent circuit Ability, so that the dynamic D flip-flop can drive a larger load behind. Since the first stage of the inverting output dynamic D flip-flop of the present disclosure is a tri-state gate circuit with a small capacitance, and its driving difficulty is relatively small, it is not necessary to use a single-stage inverter for driving.
  • FIG. 4B shows a schematic circuit diagram of an inverting output dynamic D flip-flop according to some embodiments of the present disclosure.
  • the inverting output dynamic D flip-flop 400 receives input data from the input terminal 401 to the first latch 402, and the first latch 402 is a three-state inverter.
  • the first latch 402 includes a plurality of switching elements connected in series.
  • the first latch 402 includes a first PMOS transistor 403, a second PMOS transistor 404, a first NMOS transistor 405, and a second NMOS transistor 406.
  • the first PMOS transistor 403, the second The PMOS transistor 404, the first NMOS transistor 405, and the second NMOS transistor 406 are sequentially connected in series between the power supply VDD and the ground GND.
  • the source of the first PMOS transistor 403 is connected to the power supply VDD
  • the source of the second PMOS transistor 404 is connected to the drain of the first PMOS transistor 403, and the drain of the first NMOS transistor 405 is connected to the second PMOS.
  • the drain of the transistor 404 and the drain of the second NMOS transistor 406 are connected to the source of the first NMOS transistor 405, and the source of the second NMOS transistor 406 is connected to the ground GND.
  • the gate of the first PMOS transistor 403 and the gate of the second NMOS transistor 406 are connected together to receive input data from the input terminal.
  • the gate of the second PMOS transistor 404 is set to receive the clock signal CLKP
  • the gate of the first NMOS transistor 405 is set to receive the clock signal CLKN.
  • the second latch 408 is also a three-state inverter, and includes a plurality of switching elements connected in series. As shown in FIG. 4B, the second latch 408 includes a third PMOS transistor 409, a fourth PMOS transistor 410, a third NMOS transistor 411, and a fourth NMOS transistor 412 connected in series in sequence.
  • the gate of the fourth PMOS transistor 410 and the gate of the third NMOS transistor 411 are connected together to receive data from the first latch 402.
  • the gate of the third PMOS transistor 409 is set to receive the clock signal CLKN
  • the gate of the fourth NMOS transistor 412 is set to receive the clock signal CLKP.
  • the output driving unit of the inverting output dynamic D flip-flop is an inverter 414.
  • the inverter 414 inverts the data received from the second latch 408 again, and finally transmits it to the output terminal 415. Since the data undergoes a total of three inversions from the first latch, the second latch, and the inverter, the data at the output terminal 415 of the inverted output dynamic D flip-flop is inverted compared to the input terminal.
  • FIG. 4C shows a schematic circuit diagram of an inverting output dynamic D flip-flop according to some embodiments of the present disclosure.
  • the inverting output dynamic D flip-flop 400 receives input data from the input terminal 401 to the first latch 402, and the first latch 402 is a three-state inverter.
  • the first latch 402 includes a plurality of switching elements connected in series.
  • the first latch 402 includes a first PMOS transistor 403, a second PMOS transistor 404, a first NMOS transistor 405, and a second NMOS transistor 406.
  • the first PMOS transistor 403, the second The PMOS transistor 404, the first NMOS transistor 405, and the second NMOS transistor 406 are sequentially connected in series between the power supply VDD and the ground GND.
  • the source of the first PMOS transistor 403 is connected to the power supply VDD
  • the source of the second PMOS transistor 404 is connected to the drain of the first PMOS transistor 403
  • the drain of the first NMOS transistor 405 is connected to the second
  • the drain of the PMOS transistor 404 and the drain of the second NMOS transistor 406 are connected to the source of the first NMOS transistor 405, and the source of the second NMOS transistor 406 is connected to the ground GND.
  • the gate of the second PMOS transistor 404 and the gate of the first NMOS transistor 405 are connected together to receive input data from the input terminal.
  • the gate of the first PMOS transistor 403 is set to receive the clock signal CLKP
  • the gate of the second NMOS transistor 406 is set to receive the clock signal CLKN.
  • the second latch 408 is also a three-state inverter, and includes a plurality of switching elements connected in series. As shown in FIG. 4C, the second latch 408 includes a third PMOS transistor 409, a fourth PMOS transistor 410, a third NMOS transistor 411, and a fourth NMOS transistor 412 that are sequentially connected in series.
  • the gate of the third PMOS transistor 409 and the gate of the fourth NMOS transistor 412 are connected together to receive data from the first latch 402.
  • the gate of the fourth PMOS transistor 410 is set to receive the clock signal CLKN
  • the gate of the third NMOS transistor 411 is set to receive the clock signal CLKP.
  • the output driving unit of the inverting output dynamic D flip-flop is an inverter 414.
  • the inverter 414 inverts the data received from the second latch 408 again, and finally transmits it to the output terminal 415. Since the data undergoes a total of three inversions from the first latch, the second latch, and the inverter, the data at the output terminal 415 of the inverted output dynamic D flip-flop is inverted compared to the input terminal.
  • FIG. 4D shows a schematic circuit diagram of an inverting output dynamic D flip-flop according to some embodiments of the present disclosure.
  • the inverting output dynamic D flip-flop 400 receives input data from the input terminal 401 to the first latch 402, and the first latch 402 is a three-state inverter.
  • the first latch 402 includes a plurality of switching elements connected in series.
  • the first latch 402 includes a first PMOS transistor 403, a second PMOS transistor 404, a first NMOS transistor 405, and a second NMOS transistor 406.
  • the first PMOS transistor 403, the second The PMOS transistor 404, the first NMOS transistor 405, and the second NMOS transistor 406 are sequentially connected in series between the power supply VDD and the ground GND.
  • the source of the first PMOS transistor 403 is connected to the power supply VDD
  • the source of the second PMOS transistor 404 is connected to the drain of the first PMOS transistor 403
  • the drain of the first NMOS transistor 405 is connected to the second
  • the drain of the PMOS transistor 404 and the drain of the second NMOS transistor 406 are connected to the source of the first NMOS transistor 405, and the source of the second NMOS transistor 406 is connected to the ground GND.
  • the gate of the second PMOS transistor 404 and the gate of the first NMOS transistor 405 are connected together to receive input data from the input terminal.
  • the gate of the first PMOS transistor 403 is set to receive the clock signal CLKP
  • the gate of the second NMOS transistor 406 is set to receive the clock signal CLKN.
  • the second latch 408 is also a three-state inverter, and includes a plurality of switching elements connected in series. As shown in FIG. 4D, the second latch 408 includes a third PMOS transistor 409, a fourth PMOS transistor 410, a third NMOS transistor 411, and a fourth NMOS transistor 412 that are sequentially connected in series.
  • the gate of the fourth PMOS transistor 410 and the gate of the third NMOS transistor 411 are connected together to receive data from the first latch 402.
  • the gate of the third PMOS transistor 409 is set to receive the clock signal CLKN
  • the gate of the fourth NMOS transistor 412 is set to receive the clock signal CLKP.
  • the output driving unit of the inverting output dynamic D flip-flop is an inverter 414.
  • the inverter 414 inverts the data received from the second latch 408 again, and finally transmits it to the output terminal 415. Since the data undergoes a total of three inversions from the first latch, the second latch, and the inverter, the data at the output terminal 415 of the inverted output dynamic D flip-flop is inverted compared to the input terminal.
  • the inverting output dynamic D flip-flops shown in FIGS. 4A-4D are all variants of the present disclosure, and the difference lies in that the positions of the clocked transistors in the first latch 402 and the second latch 408 are different.
  • Figure 5 shows the circuit timing diagram of the inverted output dynamic D flip-flop shown in Figure 4A, Figure 4B, Figure 4C, and Figure 4D).
  • the transistors controlled by the clock signals CLKN and CLKP in the second latch 402 are turned on, and the second latch 408 is turned on and plays the role of inverting the data at its input terminal, thereby keeping it at the node
  • the data at 407 is inverted and output to the node 413, and then output to the output terminal 415 through the inverter 414.
  • the output state of the dynamic D flip-flop changes. Since the input data undergoes a total of three inversions, the output terminal outputs the inverted data of the input terminal. Therefore, as shown in Figure 5, when the rising edge of CK comes, when the input D is 1, the output QN jumps to 0; when the input D is 0, the output QN jumps to 1.
  • FIG. 7 shows timing diagrams of the circuits shown in FIG. 6A, FIG. 6B, FIG. 6C, and FIG. 6D.
  • FIG. 8 shows a multi-path parallel register applying the inverting output dynamic D flip-flop described in the embodiment of the present disclosure.
  • the multi-channel parallel register 800 includes a multi-channel parallel inverting output dynamic D flip-flop 801, a clock buffer 802, a clock signal terminal CK, a multiple input terminal D(n), and a multiple output terminal QN. (n), where n represents n input/output.
  • the multiple input terminal D(n) is used to input data; the multiple output terminal QN(n) is used to output data; the clock signal terminal CK is used to receive a clock signal; the clock buffer 802 is used to transfer the clock signal terminal CK After the received clock signal is buffered, a clock signal is provided to a plurality of inverting output dynamic D flip-flops 801, and the plurality of inverting output dynamic D flip-flops 801 are connected in parallel to the multiple input terminal D(n) and the multiple output terminal QN Between (n), used to latch and/or read data under the control of the clock signal CK, wherein the inverted output dynamic D flip-flop 801 is described in conjunction with FIGS. 1 to 7 according to an embodiment of the present disclosure Inverting output dynamic D flip-flop.
  • independent D flip-flops need a clock buffer to generate mutually inverted clock signals to control the clock input of the D flip-flop. If an independent clock buffer is configured for each D flip-flop, the clock buffer will consume considerable chip area and power consumption in applications that need to use multiple D flip-flops.
  • one clock buffer in the present disclosure simultaneously drives multiple dynamic D flip-flops, which can effectively reduce area and power consumption.
  • the present disclosure removes the first-stage inverter of the dynamic D flip-flop input, so that the number of transistors in each dynamic D flip-flop is reduced, the overall chip area is reduced, and the overall power is reduced. reduce. Under the combined effect of the above improvements, the register claimed in the present disclosure further has the advantages of reduced area and reduced power compared to traditional registers.
  • the present disclosure also provides a Bitcoin mining algorithm device, which includes the above-mentioned inverted output dynamic D flip-flop 400 or the above-mentioned inverted output dynamic D flip-flop with multiple parallel registers 800.
  • the word "exemplary” means “serving as an example, instance, or illustration” and not as a “model” to be accurately reproduced. Any implementation described exemplarily herein is not necessarily construed as being preferred or advantageous over other implementations. Moreover, the present disclosure is not limited by any expressed or implied theory given in the above technical field, background art, summary of the invention, or specific embodiments.
  • the word “substantially” means to include any minor changes caused by design or manufacturing defects, device or component tolerances, environmental influences, and/or other factors.
  • the word “substantially” also allows the difference between the perfect or ideal situation caused by parasitic effects, noise, and other practical considerations that may be present in the actual implementation.
  • connection means that one element/node/feature is electrically, mechanically, logically, or otherwise directly connected (or Direct communication).
  • coupled means that one element/node/feature can be directly or indirectly connected to another element/node/feature mechanically, electrically, logically, or in other ways. Interaction is allowed, even if the two features may not be directly connected. In other words, “coupled” is intended to include direct connection and indirect connection of elements or other features, including the connection of one or more intermediate elements.

Landscapes

  • Logic Circuits (AREA)
  • Amplifiers (AREA)
  • Dc Digital Transmission (AREA)

Abstract

一种反相输出动态D触发器,包括输入端(101),用以接收输入数据;输出端(102),用于提供输出数据来响应该输入数据;时钟信号端(103),用于接收时钟信号;第一锁存器(104),用于锁存来自输入端(101)的输入数据并在时钟信号的控制下将输入数据反相传输;第二锁存器(105),用于锁存来自第一锁存器(104)的数据并在时钟信号的控制下将第一锁存器(104)锁存的数据反相传输;反相器(106),用于反相输出从第二锁存器(105)接收到的数据,其中所述第一锁存器(104)、第二锁存器(105)和反相器(106)依次串接在输入端(101)和输出端(102)之间。

Description

反相输出动态D触发器
相关申请的交叉引用
本申请要求于2020年6月22递交的中国专利申请202010575350.6的优先权,并通过引用将其全文并入在此。
技术领域
本公开总体而言涉及一种反相输出动态D触发器。
背景技术
比特币是一种P2P(Peer-to-Peer)形式的虚拟加密数字货币,其概念最初由中本聪在2008年11月1日提出,并于2009年1月3日正式诞生。比特币的独特之处在于,它不依靠特定货币机构发行,而是依据特定算法通过大量运算来产生。比特币交易使用整个P2P网络中众多节点构成的分布式数据库来确认并记录所有的交易行为,并使用密码学设计来确保安全性。
比特币矿工过去是通过CPU产品来挖矿,但由于挖矿是运算密集型应用,且随着挖矿人数与设备性能的不断提升难度逐渐增加,现在使用CPU挖矿已近毫无甚至负利益。如今,矿工们大都开始采用专用芯片(ASIC)或者现场可编程门阵列(FPGA)等矿机设备。
使用数字处理设备,例如数字货币挖矿机,来进行比特币挖矿的核心是根据矿机计算SHA-256的运算能力来获得奖励。对于矿机而言,芯片尺寸、芯片运行速度和芯片功耗是决定矿机性能的至关重要的三个因素,其中,芯片尺寸决定芯片成本,芯片运行的速度决定矿机运行速度,即算力,芯片功耗决定耗电程度,即挖矿成本。在实际应用中,衡量矿机最为重要的性能指标是单位算力所消耗的功率,即功耗算力比。
对于挖矿而言,挖矿过程就是进行大量重复性的逻辑计算,这就需要用到大量的D触发器,D触发器选择不当则会导致芯片面积增大、运算速度变慢以及耗电增大,最终导致矿机功耗算力比变差。
D触发器本身应用非常广泛,可用作数字信号的寄存、移位寄存、分频和波形发生器等。D触发器具有数据(D)和时钟(CLK)两个输入,具有一个输出(Q),可将数据写入到D触发器中或者从D触发器中读取数据。
发明内容
根据本公开的一个方面,提供了一种反相输出动态D触发器,包括输入端,用以接收输入数据;输出端,用于提供输出数据来响应该输入数据;时钟信号端,用于接收时钟信号;第一锁存器,用于锁存来自输入端的输入数据并在时钟信号的控制下将输入数据反相传输;第二锁存器,用于锁存来自第一锁存器的数据并在时钟信号的控制下将第一锁存器锁存的数据反相传输;反相器,用于反相输出从第二锁存器接收到的数据,其中所述第一锁存器、第二锁存器和反相器依次串接在输入端和输出端之间。
根据本公开的一个方面,提供了一种多路并联的寄存器,包括多个输入端,用于输入数据;多个输出端,用于输出数据;时钟信号端,用于接收时钟信号;时钟缓冲器,用于将所述时钟信号端接收的时钟信号缓冲之后向多个动态D触发器提供时钟信号,多个动态D触发器并联连接在所述多个输入端和所述多个输出端之间,用于在时钟信号控制下锁存和/或读出数据,其中所述动态D触发器是如上所述的反相输出动态D触发器。
根据本公开的一个方面,提供了一种用于执行比特币挖矿算法的装置,包括根据以上所述的反相输出动态D触发器或者根据以上所述的多路并联的寄存器。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1示出了根据本公开的一些实施例的反相输出动态D触发器;
图2示出了根据本公开的一些实施例的用于反相输出动态D触发器的时钟缓冲器;
图3示出了根据本公开的一些实施例的含有时钟控制的反相输出动态D触发器;
图4A、4B、4C和4D分别示出了根据本公开的一些实施例的反相输出动态D触发器的电路示意图;
图5示出根据图4A、图4B、图4C和图4D所示的反相输出动态D触发器的电 路时序图;
图6A、6B、6C和6D分别示出了根据本公开的另一些实施例的反相输出动态D触发器的电路示意图;
图7示出根据图6A、图6B、图6C和图6D所示的反相输出动态D触发器的电路时序图;
图8示出由多路并联的反相输出动态D触发器组成的多路并联寄存器。
注意,在以下说明的实施方式中,有时在不同的附图之间共同使用同一附图标记来表示相同部分或具有相同功能的部分,而省略其重复说明。在本说明书中,使用相似的标号和字母表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为了便于理解,在附图等中所示的各结构的位置、尺寸及范围等有时不表示实际的位置、尺寸及范围等。因此,所公开的发明并不限于附图等所公开的位置、尺寸及范围等。此外,附图不必按比例绘制,一些特征可能被放大以示出具体组件的细节。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。也就是说,本文中的用于实现散列算法的电路和方法是以示例性的方式示出,来说明本公开中的电路或方法的不同实施例,而并非意图限制。本领域的技术人员将会理解,它们仅仅说明可以用来实施本公开的示例性方式,而不是穷尽的方式。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
用于挖掘虚拟货币的计算设备在挖矿过程中需要进行大量重复性的逻辑计算,这需要大量的D触发器进行数据存储,因此D触发器的性能直接影响了计算芯片的性能,包括芯片面积,功耗,运算速度等。
动态D触发器相对于静态D触发器,由于减少了用于保持工作状态的正反馈电路,电路结构会大幅度简化,这样既减小了芯片面积,又能降低功耗。在计算芯片的 逻辑设计中,有时会需要使用反相输出的D触发器,针对这种情况,本公开提出一种反相输出动态D触发器。本公开所提出的反相输出动态D触发器,由于省略了一级反相器,可以有效地减小芯片面积,降低功耗,这对于使用大量动态D触发器的虚拟货币计算设备来说十分重要。
因此,为了解决上述问题,本公开提供了一种用于计算设备的反相输出动态D触发器以及由多路并联的反相输出动态D触发器组成的并联寄存器,从而有效地减小面积和降低功耗。
图1示出了根据本公开的一些实施例的反相输出动态D触发器。该反相输出动态D触发器100包括输入端101,用以接收输入数据;输出端102,用于提供输出数据来响应该输入数据;时钟信号端103,用于接收时钟信号;第一锁存器104,用于锁存来自输入端101的输入数据并在时钟信号的控制下将输入数据反相传输;第二锁存器105,用于锁存来自第一锁存器104的数据并在时钟信号的控制下将第一锁存器104锁存的数据反相传输;反相器106,用于反相输出从第二锁存器105接收到的数据,其中所述第一锁存器104、第二锁存器105和反相器106依次串接在输入端101和输出端102之间,其中所述输出端102的数据与所述输入端101的数据呈反相。
图2示出了用于提供反相输出动态D触发器的时钟信号的时钟缓冲器。该时钟缓冲器200由两级串接的反相器201、202组成,反相器201、202分别产生CLKN和CLKP信号用于控制反相输出动态D触发器。时钟缓冲器200将输入的时钟信号CK进行缓冲,并向反相输出动态D触发器提供互为反相的时钟信号CLKN、CLKP。在图2中仅示出了2个反相器,当然反相器数量不限于2个,反相器的数量可以为更多个。
图3示出了含有时钟控制的反相输出动态D触发器300。如图3所示,时钟信号CK通过时钟缓冲器301缓冲后向反相输出动态D触发器300提供时钟信号CLKN、CLKP。
图4A示出了根据本公开的一些实施例的反相输出动态D触发器的电路示意图。反相输出动态D触发器400从输入端401接收输入数据至第一锁存器402,第一锁存器402为三态反相器。第一锁存器402包括多个相互串联的开关元件。在特定的实施例中,第一锁存器402包括第一PMOS晶体管403、第二PMOS晶体管404、第一NMOS晶体管405以及第二NMOS晶体管406,所述第一PMOS晶体管403、所述第二PMOS晶体管404、所述第一NMOS晶体管405以及所述第二NMOS晶体管406依次串接在电源VDD、地GND之间。
如图4A所示,第一PMOS晶体管403的源极连接至电源VDD、第二PMOS晶体管404的源极连接至第一PMOS晶体管403的漏极、第一NMOS晶体管405的漏极连接至第二PMOS晶体管404的漏极、第二NMOS晶体管406的漏极连接至第一NMOS晶体管405的源极、第二NMOS晶体管406的源极连接至地GND。第一PMOS晶体管403的栅极和第二NMOS晶体管406的栅极连接在一起以接收来自输入端的输入数据。第二PMOS晶体管404的栅极被设定来接收时钟信号CLKP,第一NMOS晶体管405的栅极被设定来接收时钟信号CLKN。
当CLKN为低电平时,CLKP为高电平,第二PMOS晶体管404与第一NMOS晶体管405均为不导通状态,第一锁存器402呈高阻状态,输入端401的数据不能通过第一锁存器402。由于输入端401处的数据不能通过第一锁存器402,节点407处的数据则可以被锁存在节点407,保持原来的状态,起到数据寄存的作用。当CLKN为高电平时,CLKP为低电平,第二PMOS晶体管404与第一NMOS晶体管405均为导通状态,第一锁存器402起到将其输入端401处的数据反相的作用,即将输入端401的数据进行反相,并输出到节点407,改写节点407处的数据。
类似地,第二锁存器408也为三态反相器,包括多个相互串联的开关元件。如图4A所示,第二锁存器408包括依次串联连接的第三PMOS晶体管409、第四PMOS晶体管410、第三NMOS晶体管411和第四NMOS晶体管412。第三PMOS晶体管409栅极和第四NMOS晶体管412栅极连接在一起以接收来自第一锁存器402的数据。第四PMOS晶体管410栅极被设定来接收时钟信号CLKN,第三NMOS晶体管411栅极被设定来接收时钟信号CLKP。
当CLKN为低电平时,CLKP为高电平,第四PMOS晶体管410与第三NMOS晶体管411均为导通状态,第二锁存器408起到将其输入端401处的数据反相的作用,即将节点407处的数据反相传输至节点413处,改写节点413处的数据。当CLKN为高电平时,CLKP为低电平,第二锁存器408呈高阻状态,节点407处的数据不能通过第二锁存器408,因此节点413处的数据此时被锁存在节点413,保持原来的状态,起到数据寄存的作用。
如图4A所示,反相输出动态D触发器的输出驱动单元是反相器414。反相器414将从第二锁存器408接收到的数据再次反相,从而最终传输到输出端415。由于数据从第一锁存器、第二锁存器、反相器经历了总共三次反相,因此反相输出动态D触发器输出端415的数据相比输入端401是反相的。
相比于传统的以反相器作为第一级的动态D触发器,本公开省去了输入反相器从而将输出端改为反相输出,该动态D触发器的晶体管数量因而从12个减少到10个,减小了大约16%的芯片面积;并且由于减少了一级反相器,功率也会相应降低。
另外,本公开的反相输出动态D触发器省去的是输入端反相器,保留的是输出端反相器。这样的设计有特别的考虑:与省去输出端反相器相比,保留输出端反相器(即,省去输入端反相器)可以保留动态D触发器对后续电路的较强的驱动能力,这样动态D触发器后面可以驱动较大的负载。由于本公开的反相输出动态D触发器的第一级为具有较小电容的三态门电路,其驱动难度比较小,因此不必单用一级反相器来进行驱动。
该有利的技术效果同样适用于之后图4B-4D、图6A-6D所示的反相输出动态D触发器。
图4B示出了根据本公开的一些实施例的反相输出动态D触发器的电路示意图。反相输出动态D触发器400从输入端401接收输入数据至第一锁存器402,第一锁存器402为三态反相器。第一锁存器402包括多个相互串联的开关元件。在特定的实施例中,第一锁存器402包括第一PMOS晶体管403、第二PMOS晶体管404、第一NMOS晶体管405以及第二NMOS晶体管406,所述第一PMOS晶体管403、所述第二PMOS晶体管404、所述第一NMOS晶体管405以及所述第二NMOS晶体管406依次串接在电源VDD、地GND之间。
如图4B示,第一PMOS晶体管403的源极连接至电源VDD、第二PMOS晶体管404的源极连接至第一PMOS晶体管403的漏极、第一NMOS晶体管405的漏极连接至第二PMOS晶体管404的漏极、第二NMOS晶体管406的漏极连接至第一NMOS晶体管405的源极、第二NMOS晶体管406的源极连接至地GND。第一PMOS晶体管403的栅极和第二NMOS晶体管406的栅极连接在一起以接收来自输入端的输入数据。第二PMOS晶体管404的栅极被设定来接收时钟信号CLKP,第一NMOS晶体管405的栅极被设定来接收时钟信号CLKN。
当CLKN为低电平时,CLKP为高电平,第二PMOS晶体管404与第一NMOS晶体管405均为不导通状态,第一锁存器402呈高阻状态,输入端401的数据不能通过第一锁存器402。由于输入端401处的数据不能通过第一锁存器402,节点407处的数据则可以被锁存在节点407,保持原来的状态,起到数据寄存的作用。当CLKN为高电平时,CLKP为低电平,第二PMOS晶体管404与第一NMOS晶体管405均 为导通状态,第一锁存器402起到将其输入端数据反相的作用,即将输入端401的数据进行反相,并输出到节点407,改写节点407处的数据。
类似地,第二锁存器408也为三态反相器,包括多个相互串联的开关元件。如图4B所示,第二锁存器408包括依次串联连接的第三PMOS晶体管409、第四PMOS晶体管410、第三NMOS晶体管411和第四NMOS晶体管412。第四PMOS晶体管410栅极和第三NMOS晶体管411栅极连接在一起以接收来自第一锁存器402的数据。第三PMOS晶体管409栅极被设定来接收时钟信号CLKN,第四NMOS晶体管412栅极被设定来接收时钟信号CLKP。
当CLKN为低电平时,CLKP为高电平,第三PMOS晶体管409与第四NMOS晶体管412均为导通状态,第二锁存器408起到将其输入端数据反相的作用,即将节点407处的数据反相传输至节点413处,改写节点413处的数据。当CLKN为高电平时,CLKP为低电平,第二锁存器408呈高阻状态,节点407处的数据不能通过第二锁存器408,因此节点413处的数据此时被锁存在节点413,保持原来的状态,起到数据寄存的作用。
如图4B所示,反相输出动态D触发器的输出驱动单元是反相器414。反相器414将从第二锁存器408接收到的数据再次反相,从而最终传输到输出端415。由于数据从第一锁存器、第二锁存器、反相器经历了总共三次反相,因此反相输出动态D触发器输出端415的数据相比输入端是反相的。
图4C示出了根据本公开的一些实施例的反相输出动态D触发器的电路示意图。反相输出动态D触发器400从输入端401接收输入数据至第一锁存器402,第一锁存器402为三态反相器。第一锁存器402包括多个相互串联的开关元件。在特定的实施例中,第一锁存器402包括第一PMOS晶体管403、第二PMOS晶体管404、第一NMOS晶体管405以及第二NMOS晶体管406,所述第一PMOS晶体管403、所述第二PMOS晶体管404、所述第一NMOS晶体管405以及所述第二NMOS晶体管406依次串接在电源VDD、地GND之间。
如图4C所示,第一PMOS晶体管403的源极连接至电源VDD、第二PMOS晶体管404的源极连接至第一PMOS晶体管403的漏极、第一NMOS晶体管405的漏极连接至第二PMOS晶体管404的漏极、第二NMOS晶体管406的漏极连接至第一NMOS晶体管405的源极、第二NMOS晶体管406的源极连接至地GND。第二PMOS晶体管404的栅极和第一NMOS晶体管405的栅极连接在一起以接收来自输入端的 输入数据。第一PMOS晶体管403的栅极被设定来接收时钟信号CLKP,第二NMOS晶体管406的栅极被设定来接收时钟信号CLKN。
当CLKN为低电平时,CLKP为高电平,第一PMOS晶体管403与第二NMOS晶体管406均为不导通状态,第一锁存器402呈高阻状态,输入端401的数据不能通过第一锁存器402。由于输入端401处的数据不能通过第一锁存器402,节点407处的数据则可以被锁存在节点407,保持原来的状态,起到数据寄存的作用。当CLKN为高电平时,CLKP为低电平,第一PMOS晶体管403与第二NMOS晶体管406均为导通状态,第一锁存器402起到将其输入端数据反相的作用,即将输入端401的数据进行反相,并输出到节点407,改写节点407处的数据。
类似地,第二锁存器408也为三态反相器,包括多个相互串联的开关元件。如图4C所示,第二锁存器408包括依次串联连接的第三PMOS晶体管409、第四PMOS晶体管410、第三NMOS晶体管411和第四NMOS晶体管412。第三PMOS晶体管409栅极和第四NMOS晶体管412栅极连接在一起以接收来自第一锁存器402的数据。第四PMOS晶体管410栅极被设定来接收时钟信号CLKN,第三NMOS晶体管411栅极被设定来接收时钟信号CLKP。
当CLKN为低电平时,CLKP为高电平,第四PMOS晶体管410与第三NMOS晶体管411均为导通状态,第二锁存器408起到将其输入端数据反相的作用,即将节点407处的数据反相传输至节点413处,改写节点413处的数据。当CLKN为高电平时,CLKP为低电平,第二锁存器408呈高阻状态,节点407处的数据不能通过第二锁存器408,因此节点413处的数据此时被锁存在节点413,保持原来的状态,起到数据寄存的作用。
如图4C所示,反相输出动态D触发器的输出驱动单元是反相器414。反相器414将从第二锁存器408接收到的数据再次反相,从而最终传输到输出端415。由于数据从第一锁存器、第二锁存器、反相器经历了总共三次反相,因此反相输出动态D触发器输出端415的数据相比输入端是反相的。
图4D示出了根据本公开的一些实施例的反相输出动态D触发器的电路示意图。反相输出动态D触发器400从输入端401接收输入数据至第一锁存器402,第一锁存器402为三态反相器。第一锁存器402包括多个相互串联的开关元件。在特定的实施例中,第一锁存器402包括第一PMOS晶体管403、第二PMOS晶体管404、第一NMOS晶体管405以及第二NMOS晶体管406,所述第一PMOS晶体管403、所述 第二PMOS晶体管404、所述第一NMOS晶体管405以及所述第二NMOS晶体管406依次串接在电源VDD、地GND之间。
如图4D所示,第一PMOS晶体管403的源极连接至电源VDD、第二PMOS晶体管404的源极连接至第一PMOS晶体管403的漏极、第一NMOS晶体管405的漏极连接至第二PMOS晶体管404的漏极、第二NMOS晶体管406的漏极连接至第一NMOS晶体管405的源极、第二NMOS晶体管406的源极连接至地GND。第二PMOS晶体管404的栅极和第一NMOS晶体管405的栅极连接在一起以接收来自输入端的输入数据。第一PMOS晶体管403的栅极被设定来接收时钟信号CLKP,第二NMOS晶体管406的栅极被设定来接收时钟信号CLKN。
当CLKN为低电平时,CLKP为高电平,第一PMOS晶体管403与第二NMOS晶体管406均为不导通状态,第一锁存器402呈高阻状态,输入端401的数据不能通过第一锁存器402。由于输入端401处的数据不能通过第一锁存器402,节点407处的数据则可以被锁存在节点407,保持原来的状态,起到数据寄存的作用。当CLKN为高电平时,CLKP为低电平,第一PMOS晶体管403与第二NMOS晶体管406均为导通状态,第一锁存器402起到将其输入端数据反相的作用,即将输入端401的数据进行反相,并输出到节点407,改写节点407处的数据。
类似地,第二锁存器408也为三态反相器,包括多个相互串联的开关元件。如图4D所示,第二锁存器408包括依次串联连接的第三PMOS晶体管409、第四PMOS晶体管410、第三NMOS晶体管411和第四NMOS晶体管412。第四PMOS晶体管410栅极和第三NMOS晶体管411栅极连接在一起以接收来自第一锁存器402的数据。第三PMOS晶体管409栅极被设定来接收时钟信号CLKN,第四NMOS晶体管412栅极被设定来接收时钟信号CLKP。
当CLKN为低电平时,CLKP为高电平,第三PMOS晶体管409与第四NMOS晶体管412均为导通状态,第二锁存器408起到将其输入端数据反相的作用,即将节点407处的数据反相传输至节点413处,改写节点413处的数据。当CLKN为高电平时,CLKP为低电平,第二锁存器408呈高阻状态,节点407处的数据不能通过第二锁存器408,因此节点413处的数据此时被锁存在节点413,保持原来的状态,起到数据寄存的作用。
如图4D所示,反相输出动态D触发器的输出驱动单元是反相器414。反相器414将从第二锁存器408接收到的数据再次反相,从而最终传输到输出端415。由于数据 从第一锁存器、第二锁存器、反相器经历了总共三次反相,因此反相输出动态D触发器输出端415的数据相比输入端是反相的。
图4A-4D所示的反相输出动态D触发器均为本公开的变体,区别在于第一锁存器402和第二锁存器408中时钟控制的晶体管位置不同。
以下根据反相输出动态D触发器的工作原理结合图5(图5示出根据图4A、图4B、图4C和图4D所示的反相输出动态D触发器的电路时序图)进行具体说明。
如图4A、4B、4C和4D所示,当CK为低电平时,CLKP为低电平,CLKN为高电平。第一锁存器402中受时钟信号CLKN、CLKP控制的晶体管为导通状态,第一锁存器402起到将其输入端数据反相的作用,即将输入端401的数据进行反相,并输出到节点407,改写节点407处的数据。例如,当输入数据D为0时,节点407处的数据将为1。当CLKP为低电平,CKLN为高电平时,第二锁存器408中受时钟信号CLKN、CLKP控制的晶体管为不导通状态,第二锁存器408呈高阻状态,节点407处的数据不能通过第二锁存器408。节点413处的数据则可以被锁存在节点413,保持原来的状态,起到数据寄存的作用,动态D触发器的输出保持原来的状态。
接下来,如图5所示,当CK的上升沿来临时,CLKP跳变为高电平,CLKN跳变为低电平。第一锁存器402中受时钟信号CLKN、CLKP控制的晶体管为不导通状态,第一锁存器402呈现高阻状态,输入端处的数据无法通过第一锁存器402,407处的数据被保持。此时,第二锁存器402中受时钟信号CLKN、CLKP控制的晶体管为导通状态,第二锁存器408导通并起到将其输入端数据反相的作用,从而将保持在节点407处的数据反相输出到节点413,并进而通过反相器414输出到输出端415。由此可见,当时钟信号CK的上升沿来临时,动态D触发器的输出状态发生变化。由于输入数据总共经历三次反相,因此输出端输出的是输入端的反相数据。因此,如图5所示,在CK的上升沿来临时,当输入端D为1时,输出端QN跳变为0;当输入端D为0时,输出端QN跳变为1。
也可以通过将动态D触发器的时钟控制信号互换位置(例如,第一锁存器402的NMOS晶体管被CLKP控制,PMOS晶体管被CLKN控制;第二锁存器408的PMOS晶体管被CLKP控制,NMOS晶体管被CLKN控制),来实现下降沿有效地动态D触发器。图6A、图6B、图6C和图6D分别示出时钟控制信号CLKP和CLKN互换位置后的四个不同变体。图7示出图6A、图6B、图6C和图6D所示的电路的时序图。
如图6A、图6B、图6C和图6D所示,当CK为高电平时,CLKP为高电平,CLKN为低电平。第一锁存器402中受时钟信号CLKN、CLKP控制的晶体管为导通状态,第一锁存器402起到将其输入端数据反相的作用,即将输入端401的数据进行反相,并输出到节点407,改写节点407处的数据。例如,当输入数据D为0时,节点407处的数据将为1。当CLKP为高电平,CKLN为低电平时,第二锁存器408中受时钟信号CLKN、CLKP控制的晶体管为不导通状态,第二锁存器408呈高阻状态,节点407处的数据不能通过第二锁存器408。节点413处的数据则可以被锁存在节点413,保持原来的状态,起到数据寄存的作用,动态D触发器的输出保持原来的状态。
当下降沿来临时,CLKP跳变为低电平,CLKN跳变为高电平。第一锁存器402中受时钟信号CLKN、CLKP控制的晶体管为不导通状态,第一锁存器402呈现高阻状态,输入端处的数据无法通过第一锁存器402,407处的数据被保持。此时,第二锁存器402中受时钟信号CLKN、CLKP控制的晶体管为导通状态,第二锁存器408导通并起到将其输入端数据反相的作用,从而将保持在节点407处的数据反相输出到节点413,并进而通过反相器414输出到输出端415。由此可见,当时钟信号CK的下降沿来临时,动态D触发器的输出状态发生变化。由于输入数据总共经历三次反相,因此输出端输出的是输入端的反相数据。因此,如图7所示,在CK的下降沿来临时,当输入端D为0时,输出端QN跳变为1;当输入端D为1时,输出端QN跳变为0。
图8示出应用本公开实施例所述的反相输出动态D触发器的多路并联的寄存器。如图8所示,多路并联的寄存器800包括多路并联的反相输出动态D触发器801、时钟缓冲器802、时钟信号端CK、多路输入端D(n)和多路输出端QN(n),其中n代表n路输入/输出。多路输入端D(n)用于输入数据;多路输出端QN(n)用于输出数据;时钟信号端CK用于接收时钟信号;时钟缓冲器802,用于将所述时钟信号端CK接收的时钟信号缓冲之后向多个反相输出动态D触发器801提供时钟信号,多个反相输出动态D触发器801并联连接在所述多路输入端D(n)和多路输出端QN(n)之间,用于在时钟信号CK控制下锁存和/或读出数据,其中所述反相输出动态D触发器801是根据本公开的实施例结合图1-图7所述的反相输出动态D触发器。
通常独立的D触发器需要一个时钟缓冲器产生相互反相的时钟信号控制D触发器的时钟输入端。如果为每个D触发器都配置独立的时钟缓冲器,则在需要使用多个D触发器的应用中,时钟缓冲器会耗费相当的芯片面积和功耗。为了解决这个问题,本公开中的一个时钟缓冲器同时驱动多个动态D触发器,可以有效地减小面积、降低 功耗。加之相比于传统的动态D触发器,本公开去掉了动态D触发器输入的第一级反相器,从而使得每个动态D触发器的晶体管数量减小,总体芯片面积减小,总体功率降低。在以上多点改进的综合作用下,本公开所要求保护的寄存器相比传统的寄存器进一步具有面积减小以及功率降低的优势。
本公开还提供一种比特币挖矿算法的装置,包括如上所述的反相输出动态D触发器400或者如上所述的应用反相输出动态D触发器的多路并联的寄存器800。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
在说明书及权利要求中的词语“前”、“后”、“顶”、“底”、“之上”、“之下”等,如果存在的话,用于描述性的目的而并不一定用于描述不变的相对位置。应当理解,这样使用的词语在适当的情况下是可互换的,使得在此所描述的本公开的实施例,例如,能够在与在此所示出的或另外描述的那些取向不同的其他取向上操作。
如在此所使用的,词语“示例性的”意指“用作示例、实例或说明”,而不是作为将被精确复制的“模型”。在此示例性描述的任意实现方式并不一定要被解释为比其它实现方式优选的或有利的。而且,本公开不受在上述技术领域、背景技术、发明内容或具体实施方式中所给出的任何所表述的或所暗示的理论所限定。
如在此所使用的,词语“基本上”意指包含由设计或制造的缺陷、器件或元件的容差、环境影响和/或其它因素所致的任意微小的变化。词语“基本上”还允许由寄生效应、噪音以及可能存在于实际的实现方式中的其它实际考虑因素所致的与完美的或理想的情形之间的差异。
上述描述可以指示被“连接”或“耦合”在一起的元件或节点或特征。如在此所使用的,除非另外明确说明,“连接”意指一个元件/节点/特征与另一种元件/节点/特征在电学上、机械上、逻辑上或以其它方式直接地连接(或者直接通信)。类似地,除非另外明确说明,“耦合”意指一个元件/节点/特征可以与另一元件/节点/特征以直接的或间接的方式在机械上、电学上、逻辑上或以其它方式连结以允许相互作用,即使这两个特征可能并没有直接连接也是如此。也就是说,“耦合”意图包含元件或其它特征的直接连结和间接连结,包括利用一个或多个中间元件的连接。
还应理解,“包括/包含”一词在本文中使用时,说明存在所指出的特征、整体、步骤、操作、单元和/或组件,但是并不排除存在或增加一个或多个其它特征、整体、步骤、操作、单元和/或组件以及/或者它们的组合。
本领域技术人员应当意识到,在上述操作之间的边界仅仅是说明性的。多个操作可以结合成单个操作,单个操作可以分布于附加的操作中,并且操作可以在时间上至少部分重叠地执行。而且,另选的实施例可以包括特定操作的多个实例,并且在其他各种实施例中可以改变操作顺序。但是,其它的修改、变化和替换同样是可能的。因此,本说明书和附图应当被看作是说明性的,而非限制性的。
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。在此公开的各实施例可以任意组合,而不脱离本公开的精神和范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本公开的范围和精神。本公开的范围由所附权利要求来限定。

Claims (10)

  1. 一种反相输出动态D触发器,其中,包括:
    输入端,用以接收输入数据
    输出端,用于提供输出数据来响应该输入数据;
    时钟信号端,用于接收时钟信号;
    第一锁存器,用于锁存来自输入端的输入数据并在时钟信号的控制下将输入数据反相传输;
    第二锁存器,用于锁存来自第一锁存器的数据并在时钟信号的控制下将第一锁存器锁存的数据反相传输;
    反相器,用于反相输出从第二锁存器接收到的数据,
    其中所述第一锁存器、第二锁存器和反相器依次串接在输入端和输出端之间。
  2. 如权利要求1所述的反相输出动态D触发器,其中:第一锁存器和第二锁存器为三态反相器。
  3. 如权利要求2所述的反相输出动态D触发器,其中:所述三态反相器进一步包括第一PMOS晶体管、第二PMOS晶体管、第一NMOS晶体管以及第二NMOS晶体管,所述第一PMOS晶体管、所述第二PMOS晶体管、所述第一NMOS晶体管以及所述第二NMOS晶体管依次串接在电源、地之间。
  4. 如权利要求3所述的反相输出动态D触发器,其中:还包括时钟缓冲器,用于向所述时钟信号端提供时钟信号,所述时钟信号包括第一时钟信号及第二时钟信号,所述第一时钟信号与所述第二时钟信号反相。
  5. 如权利要求3所述的反相输出动态D触发器,其中:所述第一锁存器的所述第二PMOS晶体管、所述第二锁存器的所述第一NMOS晶体管根据所述第一时钟信号进行开关控制;所述第一锁存器的所述第一NMOS晶体管、所述第二锁存器的所述第二PMOS晶体管根据所述第二时钟信号进行开关控制。
  6. 如权利要求3所述的反相输出动态D触发器,其中:所述第一锁存器的所述第二PMOS晶体管、所述第二锁存器的所述第二NMOS晶体管根据所述第一时钟信号进行开关控制;所述第一锁存器的所述第一NMOS晶体管、所述第二锁存器的所述第一PMOS晶体管根据所述第二时钟信号进行开关控制。
  7. 如权利要求3所述的反相输出动态D触发器,其中:所述第一锁存器的所述第一PMOS晶体管、所述第二锁存器的所述第一NMOS晶体管根据所述第一时钟信号进行开关控制;所述第一锁存器的所述第二NMOS晶体管、所述第二锁存器的所述第二PMOS晶体管根据所述第二时钟信号进行开关控制。
  8. 如权利要求3所述的反相输出动态D触发器,其中:所述第一锁存器的所述第一PMOS晶体管、所述第二锁存器的所述第二NMOS晶体管根据所述第一时钟信号进行开关控制;所述第一锁存器的所述第二NMOS晶体管、所述第二锁存器的所述第一PMOS晶体管根据所述第二时钟信号进行开关控制。
  9. 一种多路并联的寄存器,其中,包括
    多个输入端,用于输入数据;
    多个输出端,用于输出数据;
    时钟信号端,用于接收时钟信号;
    时钟缓冲器,用于将所述时钟信号端接收的时钟信号缓冲之后向多个动态D触发器提供时钟信号,多个动态D触发器并联连接在所述多个输入端和所述多个输出端之间,用于在时钟信号控制下锁存数据和读出数据中的至少一种,其中所述动态D触发器是如权利要求1-8所述的反相输出动态D触发器。
  10. 一种用于执行比特币挖矿算法的装置,包括根据权利要求1至8中任一项所述的反相输出动态D触发器或者根据权利要求9所述的寄存器。
PCT/CN2021/087622 2020-06-22 2021-04-16 反相输出动态d触发器 WO2021258824A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CA3181301A CA3181301A1 (en) 2020-06-22 2021-04-16 Inverting output dynamic d-flip-flop
US18/002,302 US20230238947A1 (en) 2020-06-22 2021-04-16 A dynamic d flip-flop with an inverted output

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010575350.6A CN111600577A (zh) 2020-06-22 2020-06-22 反相输出动态d触发器
CN202010575350.6 2020-06-22

Publications (1)

Publication Number Publication Date
WO2021258824A1 true WO2021258824A1 (zh) 2021-12-30

Family

ID=72191905

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/087622 WO2021258824A1 (zh) 2020-06-22 2021-04-16 反相输出动态d触发器

Country Status (5)

Country Link
US (1) US20230238947A1 (zh)
CN (1) CN111600577A (zh)
CA (1) CA3181301A1 (zh)
TW (1) TWI807305B (zh)
WO (1) WO2021258824A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111600577A (zh) * 2020-06-22 2020-08-28 深圳比特微电子科技有限公司 反相输出动态d触发器
CN114629469A (zh) * 2020-12-09 2022-06-14 深圳比特微电子科技有限公司 动态d触发器、寄存器、芯片和执行比特币挖矿的装置
CN114567298B (zh) * 2022-04-28 2022-08-09 深圳比特微电子科技有限公司 具有多路选择器功能的反相d触发器
CN114567296B (zh) * 2022-04-28 2022-09-09 深圳比特微电子科技有限公司 电路单元、逻辑电路、处理器和计算装置
CN114567301B (zh) * 2022-04-28 2022-08-23 深圳比特微电子科技有限公司 具有多路选择器功能的混合相位d触发器

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060197571A1 (en) * 2005-03-03 2006-09-07 Samsung Electronics Co., Ltd. High speed pulse based flip-flop with a scan function and a data retention function
CN110311655A (zh) * 2019-06-27 2019-10-08 北京嘉楠捷思信息技术有限公司 免保持动态d触发器、数据处理单元、芯片、算力板及计算设备
CN110635786A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 动态d触发器
CN110635784A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 免保持动态d触发器
CN110635783A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 正反馈动态d触发器
CN110635785A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 低漏电流动态d触发器
CN110633104A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 多路并联寄存器
CN111600577A (zh) * 2020-06-22 2020-08-28 深圳比特微电子科技有限公司 反相输出动态d触发器
CN212726968U (zh) * 2020-06-22 2021-03-16 深圳比特微电子科技有限公司 反相输出动态d触发器、多路并联寄存器及比特币挖矿算法的装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3629476A1 (en) * 2013-05-08 2020-04-01 QUALCOMM Incorporated Flip-flop for reducing dynamic power
US10142098B2 (en) * 2016-06-29 2018-11-27 Intel Corporation Optimized SHA-256 datapath for energy-efficient high-performance Bitcoin mining
US10467365B1 (en) * 2017-04-10 2019-11-05 Cadence Design Systems, Inc. Systems and methods for calculating common clock path pessimism for hierarchical timing analysis in an electronic design
WO2020000120A1 (zh) * 2018-06-25 2020-01-02 崛智科技有限公司 动态触发器及电子设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060197571A1 (en) * 2005-03-03 2006-09-07 Samsung Electronics Co., Ltd. High speed pulse based flip-flop with a scan function and a data retention function
CN110635786A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 动态d触发器
CN110635784A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 免保持动态d触发器
CN110635783A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 正反馈动态d触发器
CN110635785A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 低漏电流动态d触发器
CN110633104A (zh) * 2018-06-25 2019-12-31 北京嘉楠捷思信息技术有限公司 多路并联寄存器
CN110311655A (zh) * 2019-06-27 2019-10-08 北京嘉楠捷思信息技术有限公司 免保持动态d触发器、数据处理单元、芯片、算力板及计算设备
CN111600577A (zh) * 2020-06-22 2020-08-28 深圳比特微电子科技有限公司 反相输出动态d触发器
CN212726968U (zh) * 2020-06-22 2021-03-16 深圳比特微电子科技有限公司 反相输出动态d触发器、多路并联寄存器及比特币挖矿算法的装置

Also Published As

Publication number Publication date
CN111600577A (zh) 2020-08-28
US20230238947A1 (en) 2023-07-27
TWI807305B (zh) 2023-07-01
TW202135467A (zh) 2021-09-16
CA3181301A1 (en) 2021-12-30

Similar Documents

Publication Publication Date Title
WO2021258824A1 (zh) 反相输出动态d触发器
CN212726968U (zh) 反相输出动态d触发器、多路并联寄存器及比特币挖矿算法的装置
TWI575875B (zh) 正反器電路
US8188780B2 (en) Pulsed static flip-flop
US7301381B2 (en) Clocked state devices including master-slave terminal transmission gates and methods of operating same
US20090309641A1 (en) Dual mode edge triggered flip-flop
CN214154471U (zh) 动态d触发器、寄存器、芯片和执行比特币挖矿的装置
WO2020001167A1 (zh) 动态d触发器、数据运算单元、芯片、算力板及计算设备
US6696874B2 (en) Single-event upset immune flip-flop circuit
WO2022121365A1 (zh) 动态d触发器、寄存器、芯片和数据处理装置
JPH11186882A (ja) Dフリップフロップ
WO2023207339A1 (zh) D触发器以及包括d触发器的处理器和计算装置
CN110635783A (zh) 正反馈动态d触发器
CN100576742C (zh) 静态锁存器
CN110635784A (zh) 免保持动态d触发器
WO2023207351A1 (zh) 锁存器以及包括锁存器的处理器和计算装置
WO2023207586A1 (zh) 电路单元、逻辑电路、处理器和计算装置
KR100630765B1 (ko) 동작속도가 향상된 플립플롭
KR102643441B1 (ko) 반도체 장치의 클럭 생성 회로
CN210745099U (zh) 免保持动态d触发器、数据运算单元、芯片、算力板及计算设备
KR20090006577A (ko) 반도체메모리소자의 입력 버퍼
TWI840149B (zh) D觸發器以及包括d觸發器的處理器和計算裝置
KR100585085B1 (ko) 고속 메모리 장치의 데이타 독출 경로에 구비되는 데이타전송 회로
TWI664819B (zh) 動態正反器及電子設備
KR20220167567A (ko) 플립플롭 회로

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21828230

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 3181301

Country of ref document: CA

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 16/05/2023)

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 16-05-2023)

122 Ep: pct application non-entry in european phase

Ref document number: 21828230

Country of ref document: EP

Kind code of ref document: A1