WO2022152032A1 - 测试电路、测试方法和包括测试电路的计算系统 - Google Patents
测试电路、测试方法和包括测试电路的计算系统 Download PDFInfo
- Publication number
- WO2022152032A1 WO2022152032A1 PCT/CN2022/070473 CN2022070473W WO2022152032A1 WO 2022152032 A1 WO2022152032 A1 WO 2022152032A1 CN 2022070473 W CN2022070473 W CN 2022070473W WO 2022152032 A1 WO2022152032 A1 WO 2022152032A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- clock
- tested
- paths
- clock signal
- test circuit
- Prior art date
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 126
- 238000010998 test method Methods 0.000 title claims description 7
- 238000012795 verification Methods 0.000 claims abstract description 13
- 238000013461 design Methods 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 16
- 230000003111 delayed effect Effects 0.000 claims description 9
- 101150071746 Pbsn gene Proteins 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 29
- 230000001934 delay Effects 0.000 description 13
- 239000000872 buffer Substances 0.000 description 12
- 238000004088 simulation Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000000630 rising effect Effects 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000005065 mining Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 239000006185 dispersion Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 235000013599 spices Nutrition 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31725—Timing aspects, e.g. clock distribution, skew, propagation delay
- G01R31/31726—Synchronization, e.g. of test, clock or strobe signals; Signals in different clock domains; Generation of Vernier signals; Comparison and adjustment of the signals
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31727—Clock circuits aspects, e.g. test clock circuit details, timing aspects for signal generation, circuits for testing clocks
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318392—Generation of test inputs, e.g. test vectors, patterns or sequences for sequential circuits
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318522—Test of Sequential circuits
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318522—Test of Sequential circuits
- G01R31/318525—Test of flip-flops or latches
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318522—Test of Sequential circuits
- G01R31/31853—Test of registers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/14—Implementation of control logic, e.g. test mode decoders
Definitions
- the present disclosure relates to test circuits, test methods, and computing systems including test circuits.
- the design of mining machine processors usually adopts a pipeline structure.
- the operation logic is divided into several stages of pipelines, and each stage of pipelines has similar functional design and operation structure.
- Each stage of the pipeline needs to input a working clock, that is, a pulse clock.
- the optimization design of flip-flops is one of the core directions to improve the performance of bitcoin chips and reduce power consumption.
- different flip-flops will be used according to their own conditions.
- the direction of the clock tree and the internal structure of the clock tree that connect the multi-stage pipelines at the same time depend on experience and analysis to choose.
- the clock tree structure selected by the chip is usually conservative and not necessarily optimal.
- test circuits including test circuits.
- a test circuit comprising: a test sequence providing module for providing a test sequence to a sequential device to be tested; a clock driving module for providing a clock signal to the sequential device to be tested , which includes a first clock drive circuit, the first clock drive circuit includes: a plurality of first clock paths, respectively providing corresponding clock signals; and a logic unit, based on the clock signals provided by the plurality of first clock paths. At least a part of the first clock signal with pulse width adjustment is generated for the sequential device to be tested; and a verification module is used to verify the output of the sequential device to be tested.
- the verification module includes a reference sequential device, the test sequence is provided to the reference sequential device and the sequential device to be tested synchronously, and the first clock drive circuit further provides a second a clock signal to the reference sequential device; and a comparison module that compares the output of the reference sequential device with the output of the sequential device to be tested.
- the plurality of first clock paths receive a common clock input and respectively provide clock signals of different phases based on the clock input.
- At least one of the first clock paths further includes: a first selector for selecting a clock signal from clock signals provided by a plurality of sub-paths of the corresponding first clock path, and providing the selected clock signal to the logic unit.
- the clock driving module further comprises a second clock driving circuit, wherein the second clock driving circuit comprises: a plurality of second clock paths, which respectively provide clock signals of different phases, the plurality of first clock paths At least one of the two clock paths provides a clock signal based on the first clock signal; and a second selector selects a clock signal from the clock signals provided by the plurality of second clock paths for the test to be tested timing device.
- the second clock driving circuit comprises: a plurality of second clock paths, which respectively provide clock signals of different phases, the plurality of first clock paths At least one of the two clock paths provides a clock signal based on the first clock signal; and a second selector selects a clock signal from the clock signals provided by the plurality of second clock paths for the test to be tested timing device.
- the clock driving module further includes a third clock driving circuit, wherein the third clock driving circuit includes: a plurality of third clock paths, which respectively provide clock signals of different phases; and a third selector , for selecting a clock signal from the clock signals provided by the plurality of third clock paths for at least one of the plurality of first clock paths.
- the plurality of first clock paths include at least a first path and a second path, the first path providing the selected clock signal to the logic unit, and the second path providing an An inverted version or an inverted and delayed version of the selected clock signal to the logic unit.
- the second path includes: an inverter that receives the selected clock signal and generates a clock signal that is inverted to the selected clock signal; one or more sub-paths for respectively providing respective versions of the inverted clock signal to a fourth selector; and the fourth selector selecting from the different versions of the inverted clock signal and providing the selected version to the logic unit.
- the one or more sub-paths each provide differently delayed versions of the inverted clock signal to the fourth selector.
- the logic unit is an AND gate or an OR gate.
- the test sequence providing module provides a test sequence with a check code to the to-be-tested sequential device
- the test circuit further includes a check module that uses the check code for the to-be-tested device. The output of the tested sequential device is verified.
- the sequential devices are flip-flops or latches.
- the test circuit further includes additional sequential devices associated with the sequential device to be tested.
- test circuit being the test circuit according to any embodiment of the present disclosure, the method comprising: providing different configurations through the clock driving module providing a test sequence to the input of the sequential device to be tested; and detecting whether the output of the sequential device to be tested meets the requirements under each configured clock signal.
- the method further includes: determining a corresponding clock configuration or a range of clock configurations that meets the requirements; determining a predetermined range of timing parameters designed for the sequential device to be tested and the satisfying requirements determined through testing and modify the circuit design of the sequential device to be tested and/or the process parameters for preparing the sequential device to be tested according to the difference.
- FIG. 1 shows a schematic diagram of an exemplary pipeline
- FIG. 2A shows a schematic diagram of an exemplary circuit including a sequential device-sequential device path
- Figure 2B shows a timing diagram for the settling time of the circuit shown in Figure 2A;
- Figure 2C shows a timing diagram for hold times for the circuit shown in Figure 2A;
- Figure 2D shows a schematic timing diagram of a pipelined forward clock tree
- Figure 2E shows a schematic timing diagram of a pipelined reverse clock tree
- FIG. 3A shows a schematic diagram of a test circuit according to one embodiment of the present disclosure
- 3B shows a schematic diagram of a test circuit according to another embodiment of the present disclosure.
- FIG. 4 shows a schematic diagram of a test circuit according to yet another embodiment of the present disclosure
- FIG. 5 shows a schematic diagram of a test circuit according to yet another embodiment of the present disclosure
- FIG. 6 shows a schematic diagram of a test circuit according to another embodiment of the present disclosure.
- FIG. 7 shows a schematic diagram of a test circuit according to yet another embodiment of the present disclosure.
- FIG. 8 shows a schematic diagram of a test circuit according to one embodiment of the present disclosure.
- Pipeline technology is a quasi-parallel processing implementation technology in which multiple instructions overlap and operate during program execution.
- the pipeline stage of a processor often has one or more sequential devices, such as flip-flops. Choosing to use latches as sequential devices in the pipeline can effectively reduce power consumption and area overhead, and improve the competitiveness of mining machine products.
- each sequential device will have a corresponding clock to control.
- FIG. 1 shows a schematic diagram for an exemplary pipelined processor.
- the pipeline in the processor can include multiple pipeline stages, and the working clock of each pipeline stage usually comes from the same clock source, which is passed between the various stages of the pipeline through the clock driving circuits for each stage of the pipeline, as shown in Figure 1. Show.
- Pipelining technology can be applied to processors in the field of digital currency.
- Bitcoin uses the hash SHA256 algorithm.
- the SHA256 algorithm can be divided into several pipeline computing units to form an operation pipeline.
- the usual pipeline can be divided into 32 stages, 64 stages, 128 stages and so on.
- sampling is generally only performed on the rising or falling edge of the clock.
- the design tool will perform static timing analysis on the synthesis results to determine whether the relative relationship between clock and data meets the requirements.
- the following is an example of a circuit that includes a sequential device-sequential device and a path between them.
- 2A shows a schematic diagram of an exemplary circuit including sequential device-to-sequential device paths.
- This diagram is a common circuit diagram for digital system design.
- it is necessary to ensure that data can be correctly transmitted between the two flip-flops, thereby determining the range of the transmission delay of the intermediate combinational logic circuit Comb.
- FIG. 2B shows a timing diagram for the settling time for the circuit shown in Figure 2A.
- D1 represents the input to the preceding flip-flop (referred to as a launch flip-flop) in FIG. 2A.
- the trigger trigger in FIG. 2A collects the D1 signal, a high level is input to the trigger, and reaches the combinational logic circuit Comb after the trigger output delay Tco.
- Tcomb of the combinational logic circuit Comb here, it is assumed that the combinational logic circuit does not change the level of the signal at this time, so it can be considered as a buffer
- the signal on the D2 data line must satisfy the stability time > the setup time Tsu of the flip-flop,
- the hold time is described.
- a timing diagram for explaining the hold time of the circuit shown in FIG. 2A is shown in FIG. 2C , and each signal thereof is the same as that shown in FIG. 2B .
- the previous trigger trigger captures the low level on D1, which is expressed on Q1 after the delay of Tco.
- This low level reaches D2 after the combinational circuit delay Tcomb.
- the stabilization time of the original high level on D2 after the arrival of the rising edge of the second clock needs to be greater than the holding time Th of the second flip-flop.
- the subsequent flip-flops can stably receive the high level originally transmitted by D1. which is,
- the premise of the normal operation of the synchronous sequential circuit is that both the setup time and the hold time of the flip-flop are satisfied.
- the hold time is the more important indicator that must be met. If the hold time is not met, the chip may not work properly.
- each sequential device will have a corresponding clock to control.
- All sequential devices cannot be controlled by the same clock (the load capacity of the clock is not enough), and an inverter (inv) or a buffer (buffer, abbreviated as buf) is required to transmit the clock signal.
- inv inverter
- buf buffer
- FIG. 2D shows the delay time of the clock driving circuit (Tclk delay time, which is represented by Tclklatency here).
- Tclk can be smaller and the cycle is smaller, the frequency of the chip can be faster and achieve higher performance. But the forward clock tree has a disadvantage, the hold time is not easy to satisfy.
- FIG. 2E shows the delay of the clock driving circuit (Tclk delay, which is represented by Tclklatency here).
- Tclk becomes larger, the period is larger, the frequency of the chip becomes slower, and the performance decreases.
- the advantage of the inverted clock tree is that the flip-flop hold times are easier to satisfy.
- the clocks between adjacent pipelines need to meet certain phase requirements to meet latch-specific timing requirements, such as latch hold timing requirements and latch minimum
- latch-specific timing requirements such as latch hold timing requirements and latch minimum
- FIG. 3A shows a schematic diagram of a test circuit according to one embodiment of the present disclosure.
- the test circuit 300 is used to test the sequential device 303 to be tested.
- the sequential devices to be tested may include (but are not limited to) any device that needs to be clocked, such as registers, flip-flops, or latches.
- the sequential device to be tested is shown as a multi-bit flip-flop (MBFF).
- MBFF multi-bit flip-flop
- the test circuit 300 further includes a clock driving module 307 for providing a clock signal to the sequential device to be tested.
- the test circuit 300 further includes a verification module 305 for verifying the output of the sequential device to be tested.
- the test circuit 300 ′ may also include other timing devices, such as the timing devices upstream and downstream of the timing device 303 to be tested.
- Devices 309 and 311 One or more of sequential devices 309 and 311 may be included in the same pipeline stage 350 along with sequential device 303 to be tested.
- FIG. 4 shows a schematic diagram of a test circuit according to yet another embodiment of the present disclosure.
- the test circuit 400 includes a test sequence providing module 301 for providing a test sequence to the sequential device 303 to be tested.
- the test sequence may include, for example, a pseudo-random bit sequence (PRBS) or a pseudo-random bit sequence including a check code.
- PRBS pseudo-random bit sequence
- FIG. 4 shows an additional intermediate sequential device 309, shown as MBFF (indicated by MBFF1), while the sequential device under test 303 is shown as MBFF (indicated by MBFF2).
- the clock signal is used for the sequential device to be tested
- the clock signal can be directly used (for example, directly provided to) the sequential device to be tested, or the clock
- the signals may be used indirectly (eg, indirectly rather than directly provided) to the sequential device under test.
- an intermediate module or device may exist between the clock signal and the sequential device to be tested, and the intermediate module or device may provide a clock to the sequential device to be tested based on the clock signal.
- only two clock paths are shown here, it should be understood that more clock paths may be provided.
- clock paths 421 and 423 may receive a common clock input and provide clock signals of various phases based on the clock input, respectively.
- the clock path 421 in the figure has 4 phase adjustment units 425 (eg, inverters (as shown) or buffers, etc.), thereby providing a delay of 4 units relative to the incoming clock.
- the clock path 423 provides no additional delay.
- the delay of the passive line itself is not considered, but only the delay brought by the device or unit.
- each clock path may or may not have a phase adjustment unit, or may have more or fewer phase adjustment units.
- the respective phase adjustment units may be the same or different, or may be configured together or individually.
- the reference timing device 411 may have the same circuit structure or the same circuit design as the timing device to be tested, but the reference timing device 411 may be based on the standard cell library, IP provided by the manufacturer or design manufacturer or a third party Prepared by library or craft corner.
- the present disclosure is not limited thereto.
- a so-called reference timing device may also be custom-made, or empirically designed or fabricated, as long as it can be used as a reference.
- the second clock signal can be obtained from any part of any first clock path, or from a clock input or other source, as long as a subsequent comparison module can compare the output of the reference sequential device with the output of the sequential device to be tested.
- the comparison module 413 can compare the output of the reference timing device and the output of the timing device to be tested based on certain criteria, for example, whether the output of the reference timing device and the output of the timing device to be tested are synchronized, consistent or meet timing requirements, or Whether the logical value corresponds, and so on. Thus, the result of the test is determined by the comparison module 413 .
- the clock driving module 407 may also include an additional phase adjustment unit, such as the phase adjustment unit 429 shown in FIG. 4 .
- the phase adjustment unit 429 is shown as an inverter 429 downstream of the logic unit 427; but it should be understood that this is only exemplary and not limiting; the type, location, number of said additional phase adjustment units All are not limited to this.
- inverter 429 may be eliminated and additional inverters may be added in clock paths 421 and 423, respectively.
- the intermediate device 309 may be in the same or a different pipeline stage than the sequential device 303 to be tested.
- the reference device 411 may be in the same pipeline stage as the sequential device 303 to be tested.
- the sequential device 303 to be tested may be located outside the pipeline stage, eg, outside the pipeline stage where the intermediate device 309 or 311 or the reference device 411 is located, eg, at a location Can be adjacent to the pipeline stage. In this case, the device under test will not participate in the actual instruction operations of the pipeline. Thus, the effects of devices and test operations on the pipeline stage can be tested, and the effects on the pipeline can be minimized while increasing the convenience of testing.
- the selector 529 may be the multiplexer MUX0, but the present disclosure is not limited thereto.
- the selector 529 may select from the plurality of sub-paths 525 and 527 , etc. based on the control signal Se10 to provide the clock signal on the selected path to the logic unit 427 .
- the clock signal for the device under test can be flexibly configured, thereby providing flexibility and convenience for testing.
- FIG. 6 shows a schematic diagram of a test circuit according to another embodiment of the present disclosure.
- the test circuit 600 shown in FIG. 6 is basically the same as the test circuit 500 shown above except for the clock driving module 607 .
- the same components as those shown in the previous figures are denoted by the same reference numerals; and the description of the same components will not be repeated here.
- each second clock path may be provided with one or more phase adjustment units, such as inverters or buffers, or some paths may not be provided with a phase adjustment unit.
- path 621 has one inverter and path 623 has three inverters.
- the second clock driving circuit 620 may further include a selector (second selector) 625 for selecting a clock signal from the clock signals provided by the plurality of second clock paths for the sequential device to be tested.
- the selector 625 may select a clock signal from the clock signals provided by the plurality of second clock paths based on the control signal Sel1.
- the selector 625 is shown as the multiplexer MUX1, although the present disclosure is not limited thereto.
- the clock signal used for the device under test can be configured more flexibly, and clock signals with different delays and phases are provided, thereby providing flexibility and convenience for testing.
- FIG. 7 shows a schematic diagram of a test circuit according to yet another embodiment of the present disclosure.
- the test circuit 700 shown in FIG. 7 is basically the same as the test circuit shown above except for the clock driving module 707 .
- the same components as those shown in the previous figures are denoted by the same reference numerals; and the description of the same components will not be repeated here.
- the clock driving module 707 used for the test circuit 700 will be described in detail below.
- the clock driving module 707 may include a clock driving circuit (first clock driving circuit) 710 and a clock driving circuit (third clock driving circuit) 750 .
- the clock drive circuit 710 is configured to adjust the pulse width of the clock signal and to provide the pulse width adjusted clock signal for the sequential device under test (eg, the sequential device 303 in the figure).
- the clock driver circuit 710 may also include the clock driver circuit described in the previous embodiments, but instead use the clock output of the clock driver circuit 750 as its clock input.
- clock path 751 has one buffer (assuming delay ⁇ ) and an inverter (for inverting), and clock path 753 has two buffers (assuming delay ⁇ respectively) and an inverter (for performing inversion) Inverted), thereby delaying the input clock differently, thereby providing an inverted and delayed version of the clock signal by ⁇ and a version of the clock signal inverted and delayed by 2 ⁇ , respectively.
- a clock path in which the conditioning unit 755 is not provided may also be provided.
- the selection signal (signal 0) can be used to determine which clock signal is used as the output clock to meet the timing requirements of the sequential device to be tested, such as latch hold timing and minimum clock pulse width requirements.
- clocks with different delays on clock paths 751 and 753 arrive at the two input terminals of MUX0.
- the selection signal 0 can be set as required to select one of the two clock paths as the clock output to transmit to the current sequential device to be tested and/or the clock drive circuit of the next stage of the pipeline.
- the clock phases in the adjacent two-stage pipelines can be adjusted separately (each with two (or more) different delays), so as to better meet the timing requirements of the latches in the sequential devices to be tested.
- the clock driving circuit 710 may include multiple clock paths (also referred to as fourth clock paths) 711 , 713 , etc., which respectively provide clock signals of different phases to the logic unit 715 .
- the plurality of fourth clock paths may receive clock signals 759 from clock drive circuitry 750 and provide clock signals of different phases to logic unit 715 on the respective fourth clock paths based on the received clock signals .
- the clock drive circuit 710 may also include a logic unit 715 .
- the logic unit 715 may generate a pulse width adjusted clock signal for the sequential device 303 to be tested based on at least a part of the clock signals of different phases.
- the logic unit 715 may be an AND gate or an OR gate; the present disclosure is not limited thereto.
- the plurality of fourth clock paths may include at least a first path and a second path.
- the first path 711 may be configured to provide the clock input 759 directly to the logic unit 715 .
- the second path 713 may be configured to provide a further conditioned version (eg, an inverted version or an inverted and delayed version) to the logic unit 715 based on the received clock input 759 .
- the second path 713 may include an inverter 717 .
- Inverter 717 receives a clock input (eg, an input clock or a clock output from an intermediate circuit) 759 and generates a clock signal that is inverted from this clock input 759 .
- the second path 713 may also include one or more sub-paths, such as the sub-paths 719 and 721 shown in the figure.
- Sub-paths 719 and 721 provide respective versions of the inverted clock signal to selector (also referred to as a fourth selector in some cases) 723, respectively.
- selector also referred to as a fourth selector in some cases
- a selector MUX1 723 selects from the different versions of the inverted clock signal and provides the selected version to the logic unit.
- MUX1 can select an appropriate clock path delay to meet the pulse width requirements of the sequential device (eg, latch) to be tested.
- the clock provided to the sequential device under test may be clocked through a logic unit (eg, an OR gate or an AND gate) by the clock output signal of the driver circuit 750 and the inverted clock of different versions of the clock output signal. logic) generated. Since the sequential device to be tested can be located in the corresponding pipeline stage, the pulse width of the clock provided to the sequential device to be tested at this stage can be determined by the inversion of the output signal of the clock driver circuit 750 of the pipeline at this stage and its selected version The phase of the clock (ie, the delay time of this version of the inverted clock relative to the clock output signal) determines.
- a logic unit eg, an OR gate or an AND gate
- the selector MUX1 can select one of the two (may be more) sub-clock paths as one of the inputs of the logic unit 715 according to the selection signal 1, and the other input of the logic unit 715 is the clock output of the clock drive circuit of the pipeline of this stage Signal. In this way, the output signal of the logic unit 715 is used as a clock signal for the pipeline of this stage (especially the latch device therein), so that the duty cycle width can be adjusted.
- the test circuit 800 includes a test sequence providing module 801 for providing a test sequence to the sequential device 303 to be tested.
- the test sequence may include, for example, a pseudo-random bit sequence (PRBS) or a pseudo-random bit sequence including a check code.
- PRBS pseudo-random bit sequence
- the test circuit 800 further includes a clock driving module 807 for providing a clock signal to the timing device to be tested.
- the test circuit 800 further includes a verification module 805, which uses the verification code to verify the output of the sequential device to be tested.
- test circuit, processor or computing system can be used for digital currency processing or calculation.
- digital currencies can be, for example, Bitcoin, Litecoin, Ethereum, and other digital currencies.
- test circuit may be as described in any of the embodiments disclosed herein.
- the method may include the following steps.
- step S901 clock signals of different configurations are provided to the sequential device to be tested through the clock driving module.
- step S903 the input of the test sequence to the sequential device to be tested is provided.
- step S905 it is detected whether the output of the sequential device to be tested meets the requirements under each configured clock signal.
- test circuits, computing systems, and test methods are provided.
- Test circuits, computing systems and testing methods according to the present disclosure can be used for processing and computing of digital currency or virtual currency, and testing circuits or systems for digital currency or virtual currency.
- a flexibly configured clock path is provided, and multiple clock options are provided for pipeline-level testing.
- the more paths, the more options are provided.
- flexibly configured clocks can be provided for the pipelines at all levels, thereby greatly improving the design and testing flexibility of the mining machine processor, and directly or indirectly improving the product yield.
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Tests Of Electronic Circuits (AREA)
- Advance Control (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
Description
Claims (16)
- 一种测试电路,包括:测试序列提供模块,用于提供测试序列到待测试的时序器件;时钟驱动模块,用于提供时钟信号到所述待测试的时序器件,其包括第一时钟驱动电路,所述第一时钟驱动电路包括:多个第一时钟路径,分别提供对应的时钟信号;以及逻辑单元,基于所述多个第一时钟路径提供的时钟信号中的至少一部分,产生脉宽调节的第一时钟信号以用于所述待测试的时序器件;以及验证模块,用于对所述待测试的时序器件的输出进行验证。
- 根据权利要求1所述的测试电路,其中,所述验证模块包括:基准时序器件,所述测试序列被同步提供到所述基准时序器件和所述待测试的时序器件,以及所述第一时钟驱动电路还提供第二时钟信号到所述基准时序器件;以及比较模块,其对所述基准时序器件的输出和所述待测试的时序器件的输出进行比较。
- 根据权利要求1所述的测试电路,其中所述多个第一时钟路径接收共同的时钟输入,并基于所述时钟输入分别提供不同相位的时钟信号。
- 根据权利要求1所述的测试电路,其中,所述第一时钟路径中的至少一个还包括:第一选择器,用于从对应的第一时钟路径的多个子路径所提供的时钟信号中选择时钟信号,并提供所选择的时钟信号到所述逻辑单元。
- 根据权利要求1所述的测试电路,其中,所述时钟驱动模块还包括第二时钟驱动电路,其中所述第二时钟驱动电路包括:多个第二时钟路径,其分别提供不同相位的时钟信号,所述多个第二时钟路径中的至少一个基于所述第一时钟信号提供时钟信号;以及第二选择器,从所述多个第二时钟路径所提供的时钟信号中选择时钟信号以用于 所述待测试的时序器件。
- 根据权利要求1所述的测试电路,其中,所述时钟驱动模块还包括第三时钟驱动电路,其中所述第三时钟驱动电路包括:多个第三时钟路径,其分别提供不同相位的时钟信号;以及第三选择器,用于从所述多个第三时钟路径所提供的时钟信号中选择时钟信号,以用于所述多个第一时钟路径中的至少一个。
- 根据权利要求6所述的测试电路,其中所述多个第一时钟路径至少包括第一路径和第二路径,所述第一路径提供所述选择的时钟信号到所述逻辑单元,以及所述第二路径提供与所选择的时钟信号的反相版本或反相并延时的版本到所述逻辑单元。
- 根据权利要求7中所述的测试电路,其中所述第二路径包括:反相器,其接收所述选择的时钟信号,并产生与所述选择的时钟信号反相的时钟信号;一个或多个子路径,用于分别提供所述反相的时钟信号的相应版本到第四选择器;以及所述第四选择器,从所述反相的时钟信号的不同的版本中选择,并提供所选择的版本到所述逻辑单元。
- 根据权利要求8所述的测试电路,其中所述一个或多个子路径分别提供所述反相的时钟信号的不同延时的版本到所述第四选择器。
- 根据权利要求1所述的测试电路,其中所述逻辑单元是与门或或门。
- 根据权利要求1所述的测试电路,其中所述测试序列提供模块提供具有校验码的测试序列到所述待测试的时序器件,所述测试电路还包括校验模块,其利用所述校验码对所述待测试的时序器件的输 出进行校验。
- 根据权利要求1所述的测试电路,其中,所述时序器件是触发器或锁存器。
- 根据权利要求1所述的测试电路,还包括与所述待测试的时序器件关联的另外的时序器件。
- 一种计算系统,其包括如权利要求1-13中任一项所述的测试电路。
- 一种测试电路的测试方法,其中,所述测试电路是如权利要求1-13中任一项所述的测试电路,所述方法包括:通过所述时钟驱动模块提供不同配置的时钟信号到所述待测试的时序器件;提供测试序列到所述待测试的时序器件的输入;以及检测在每种配置的时钟信号下所述待测试的时序器件的输出是否满足要求。
- 如权利要求15所述的方法,还包括:确定满足要求的对应的时钟配置或时钟配置范围;确定预先确定的被设计用于该待测试的时序器件的时序参数范围与通过测试确定的满足要求的对应的时钟配置之间的差异;以及根据所述差异修改所述待测试的时序器件的电路设计和/或用于制备所述待测试的时序器件的工艺参数。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/268,517 US20240036113A1 (en) | 2021-01-14 | 2022-01-06 | Test circuit, test method, and computing system comprising test circuit |
KR1020237027506A KR20230131255A (ko) | 2021-01-14 | 2022-01-06 | 테스트 회로, 테스트 방법 및 테스트 회로를 포함하는계산 시스템 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110048109.2A CN114764118A (zh) | 2021-01-14 | 2021-01-14 | 测试电路、测试方法和包括测试电路的计算系统 |
CN202110048109.2 | 2021-01-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022152032A1 true WO2022152032A1 (zh) | 2022-07-21 |
Family
ID=82363518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/070473 WO2022152032A1 (zh) | 2021-01-14 | 2022-01-06 | 测试电路、测试方法和包括测试电路的计算系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240036113A1 (zh) |
KR (1) | KR20230131255A (zh) |
CN (1) | CN114764118A (zh) |
TW (1) | TWI806340B (zh) |
WO (1) | WO2022152032A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111510137A (zh) * | 2020-06-04 | 2020-08-07 | 深圳比特微电子科技有限公司 | 时钟电路、计算芯片、算力板和数字货币挖矿机 |
CN114765455A (zh) * | 2021-01-14 | 2022-07-19 | 深圳比特微电子科技有限公司 | 处理器和计算系统 |
CN116094497B (zh) * | 2023-04-11 | 2023-07-25 | 长鑫存储技术有限公司 | 一种采样测试电路 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020136064A1 (en) * | 2001-03-26 | 2002-09-26 | Kawasaki Microelectronics, Inc. | Semiconductor device having scan test circuit that switches clock signal between shift mode and capture mode, and method of testing the semiconductor device |
CN1849518A (zh) * | 2003-09-12 | 2006-10-18 | 爱德万测试株式会社 | 测试装置及测试方法 |
US20080218179A1 (en) * | 2005-04-28 | 2008-09-11 | Advantest Corporation | Test apparatus and test method |
US7526694B1 (en) * | 2006-08-03 | 2009-04-28 | Xilinx, Inc. | Integrated circuit internal test circuit and method of testing therewith |
US20100039157A1 (en) * | 2006-09-13 | 2010-02-18 | Shunichi Kaeriyama | Clock adjusting circuit and semiconductor integrated circuit device |
US8726114B1 (en) * | 2012-11-09 | 2014-05-13 | Oracle International Corporation | Testing of SRAMS |
US20140176167A1 (en) * | 2012-12-24 | 2014-06-26 | SK Hynix Inc. | Semiconductor apparatus |
CN104698370A (zh) * | 2013-12-10 | 2015-06-10 | 展讯通信(上海)有限公司 | 芯片中电路的时序测试方法、装置及rtl仿真设备 |
CN111736059A (zh) * | 2020-07-02 | 2020-10-02 | 深圳比特微电子科技有限公司 | 芯片测试方法、测试设备和测试系统 |
CN215180689U (zh) * | 2021-01-14 | 2021-12-14 | 深圳比特微电子科技有限公司 | 测试电路和包括测试电路的计算系统 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW576997B (en) * | 2001-10-24 | 2004-02-21 | Herng-Jer Lee | Method and apparatus for rapidly selecting types of buffers which are inserted in the clock tree for high-speed VLSI design |
US7725792B2 (en) * | 2006-03-01 | 2010-05-25 | Qualcomm Incorporated | Dual-path, multimode sequential storage element |
CN102169515B (zh) * | 2010-02-26 | 2014-04-16 | 国际商业机器公司 | 一种专用集成电路中时钟树延迟时间的估计方法和系统 |
WO2012132220A1 (ja) * | 2011-03-31 | 2012-10-04 | ルネサスエレクトロニクス株式会社 | 電圧監視モジュール及びこれを用いた電圧監視システム |
CN102254062A (zh) * | 2011-06-10 | 2011-11-23 | 中国航天科技集团公司第九研究院第七七一研究所 | 标准单元时序数据测试方法 |
CN107291421A (zh) * | 2017-06-09 | 2017-10-24 | 中国电子科技集团公司第四十研究所 | 一种可编程图形序列发生系统及方法 |
CN109660232B (zh) * | 2018-12-07 | 2023-01-24 | 龙芯中科技术股份有限公司 | 脉冲触发器电路 |
-
2021
- 2021-01-14 CN CN202110048109.2A patent/CN114764118A/zh active Pending
-
2022
- 2022-01-06 WO PCT/CN2022/070473 patent/WO2022152032A1/zh active Application Filing
- 2022-01-06 TW TW111100571A patent/TWI806340B/zh active
- 2022-01-06 KR KR1020237027506A patent/KR20230131255A/ko active Search and Examination
- 2022-01-06 US US18/268,517 patent/US20240036113A1/en active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020136064A1 (en) * | 2001-03-26 | 2002-09-26 | Kawasaki Microelectronics, Inc. | Semiconductor device having scan test circuit that switches clock signal between shift mode and capture mode, and method of testing the semiconductor device |
CN1849518A (zh) * | 2003-09-12 | 2006-10-18 | 爱德万测试株式会社 | 测试装置及测试方法 |
US20080218179A1 (en) * | 2005-04-28 | 2008-09-11 | Advantest Corporation | Test apparatus and test method |
US7526694B1 (en) * | 2006-08-03 | 2009-04-28 | Xilinx, Inc. | Integrated circuit internal test circuit and method of testing therewith |
US20100039157A1 (en) * | 2006-09-13 | 2010-02-18 | Shunichi Kaeriyama | Clock adjusting circuit and semiconductor integrated circuit device |
US8726114B1 (en) * | 2012-11-09 | 2014-05-13 | Oracle International Corporation | Testing of SRAMS |
US20140176167A1 (en) * | 2012-12-24 | 2014-06-26 | SK Hynix Inc. | Semiconductor apparatus |
CN104698370A (zh) * | 2013-12-10 | 2015-06-10 | 展讯通信(上海)有限公司 | 芯片中电路的时序测试方法、装置及rtl仿真设备 |
CN111736059A (zh) * | 2020-07-02 | 2020-10-02 | 深圳比特微电子科技有限公司 | 芯片测试方法、测试设备和测试系统 |
CN215180689U (zh) * | 2021-01-14 | 2021-12-14 | 深圳比特微电子科技有限公司 | 测试电路和包括测试电路的计算系统 |
Also Published As
Publication number | Publication date |
---|---|
TW202230132A (zh) | 2022-08-01 |
US20240036113A1 (en) | 2024-02-01 |
KR20230131255A (ko) | 2023-09-12 |
TWI806340B (zh) | 2023-06-21 |
CN114764118A (zh) | 2022-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022152032A1 (zh) | 测试电路、测试方法和包括测试电路的计算系统 | |
US8196076B2 (en) | Optimal flow in designing a circuit operable in multiple timing modes | |
US6065126A (en) | Method and apparatus for executing plurality of operations per clock cycle in a single processing unit with a self-timed and self-enabled distributed clock | |
CN213879787U (zh) | 处理器和计算系统 | |
US7284143B2 (en) | System and method for reducing clock skew | |
WO2022152051A1 (zh) | 处理器和计算系统 | |
US9110689B2 (en) | Automatic pipeline stage insertion | |
WO2023279341A1 (zh) | 用于设计异步电路的方法和电子设备 | |
CN215180689U (zh) | 测试电路和包括测试电路的计算系统 | |
JP2002083000A (ja) | 論理回路設計方法及び論理回路 | |
JP5107080B2 (ja) | 半導体装置 | |
US7302657B2 (en) | Optimization of the design of a synchronous digital circuit | |
US10276258B2 (en) | Memory controller for selecting read clock signal | |
JP2009180532A (ja) | 標準セルおよび半導体装置 | |
Poornima et al. | Functional verification of clock domain crossing in register transfer level | |
US20100315886A1 (en) | Data transfer apparatus, and method, and semiconductor circuit | |
US7047392B2 (en) | Data processing apparatus and method for controlling staged multi-pipeline processing | |
JP2008198003A (ja) | アレイ型プロセッサ | |
EP1308862B1 (en) | Optimization of the design of a synchronous digital circuit | |
US20040246037A1 (en) | Low skew, power efficient local clock signal generation system | |
US11467620B1 (en) | Architecture and methodology for tuning clock phases to minimize latency in a serial interface | |
Suzuki et al. | Instruction rearrangement and path limitation for ALU cascading | |
US8850256B2 (en) | Communication circuit and communication method | |
Kra et al. | Wavepro: clock-less wave-propagated pipeline compiler for low-power and high-throughput computation | |
Prabakar et al. | SOPC based asynchronous pipelined DCT with self test capability |
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: 22738913 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18268517 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 20237027506 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020237027506 Country of ref document: KR |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22738913 Country of ref document: EP Kind code of ref document: A1 |