Abstract:
In one of a digital circuit and a semiconductor device, each having a scan chain, a clock fed to a clock input terminal of a flipflop forming the scan chain is switched between during a shift mode and during a capture mode. The time interval from the last clock pulse of the clock signal selected during the shift mode to the first clock pulse of the clock signal selected during the capture mode is set to be shorter than the pulse interval (period) between adjacent pulses of the clock signal selected during the shift mode. In this arrangement, a low-speed tester operates at a substantially high speed, permitting scan-path testing to be carried out with low cost involved.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a digital circuit having a scan test circuit and, in particular, to a semiconductor device incorporating the scan test circuit. 
     2. Description of the Related Art 
     A scan-path testing method is known as a test facilitating technique for a semiconductor device. Flipflops in a sequential circuit in a semiconductor device are arranged to be a shift register that can be scanned (a shift register formed of a plurality of flipflops is referred to as a scan chain). In the scan-path testing method, test data is fed to an internal circuit (a combination circuit) by the flipflops while data is shifted through the shift register, and then, the shift register captures data from the internal circuit and shifts and outputs the data. In this way, the test is facilitated. 
     FIG. 8 shows a portion of a scan test circuit incorporated into a conventional semiconductor device. 
     A scan test circuit  1  shown in FIG. 8 includes selectors  12 _ 1  through  12 _ 4 , and flipflops  10 _ 1  through  10 _ 4 . Although scan test circuits typically include a number of selectors and flipflops, the scan test circuit  1  here includes four selectors and four flipflops for simplicity of explanation. 
     FIG. 8 also shows an internal circuit (a combination circuit)  11  which is tested by the scan test circuit  1 . 
     Each of the flipflops  10 _ 1  through  10 _ 4  in the scan test circuit  1  has a clock input terminal K, a data input terminal D, and a data output terminal Q. 
     Each of the selectors  12 _ 1  through  12 _ 4  in the scan test circuit  1  has two data input terminals “0” and “1”, a data output terminal, and a select terminal that receives a scan enable signal SE to be discussed later. 
     The terminals “0” of the selectors  12 _ 1  and  12 _ 2  are connected to the internal circuit (not shown). The terminal “1” of the selector  12 _ 1  is connected to an SIN (Serial In) terminal. The terminal “1” of the selector  12 _ 2  is connected to the data output terminal Q of the flipflop  10 _ 1 . 
     The terminals “0” of the selectors  12 _ 3  and  12 _ 4  are connected to the internal circuit  11 . The output terminals of the selectors  12 _ 1  through  12 _ 4  are respectively connected to the data input terminals D of the flipflops  10 _ 1  through  10 _ 4 . Each clock input terminal K of the flipflops receives a clock CLK from outside the scan test circuit  1 . 
     The data output terminals Q of the flipflops  10 _ 1  and  10 _ 2  are respectively connected to the internal circuit  11 . The data output terminal Q of the flipflop  10 _ 1  is also connected to the terminal “1”, of the selector  12 _ 2 . The data output terminal of the flipflop  10 _ 2  is also connected to the terminal “1” of the selector  12 _ 3 . The data output terminal Q of the flipflop  10 _ 3  is connected to the terminal “1” of the selector  12 _ 4  and the internal circuit (not shown). The data output terminal Q of the flipflop  10 _ 4  is connected to an SOUT (Serial Out) terminal discussed later and the internal circuit (not shown). 
     The scan test circuit  1  is set to be in a shift mode when the SE signal input to the selectors  12 _ 1  through  12 _ 4  remains at a high level. The scan test circuit  1  is set to be in a capture mode when the SE signal remains at a low level. 
     FIG. 9 is a timing diagram of the clock CLK and the SE signal input to the scan test circuit  1  shown in FIG.  8 . 
     FIG. 9 illustrates the SE signal that is transitioned from a high level to a low level, and from a low level to a high level, and clock pulses T 1  through T 5  of the clock CLK in the order of occurrence. 
     With the SE signal at a high level as illustrated in FIG. 9, clock pulses T 1  and T 2  are generated, and with the SE signal at a low level, clock pulse T 3  is generated. With the SE signal returning to a high level, clock pulses T 4  and T 5  are generated. 
     The procedure of the scan test using the scan test circuit  1  will now be explained. Referring to FIG. 9, in a state (the shift mode) during which a high-level SE signal is being input to the selectors  12 _ 1  through  12 _ 4  in the scan test circuit  1 , test data is sent to the flipflops  10 _ 1  through  10 _ 4  through the selectors  12 _ 1  through  12 _ 4  at the timing of the rising edge of each of the clock pulses T 1  and T 2 . The data that is sent to the flipflops  10 _ 1  and  10 _ 2  is also sent to the internal circuit  11 . 
     In a state (the capture mode) during which a low-level SE signal is being input to the selectors  12 _ 1  through  12 _ 4  in the scan test circuit  1 , the flipflops  10 _ 3  and  10 _ 4  capture the data, which has passed through the internal circuit  11 , at the timing of the rising edge of the clock pulse T 3  shown in FIG.  9 . 
     In a state during which a high-level SE signal is being input to the selectors  12 _ 1  through  12 _ 4  again, the data captured by the flipflops  10 _ 3  and  10 _ 4  from the internal circuit  11  is successively shifted at the timing of the rising edge of each of the clock pulses T 4  and T 5  illustrated in FIG.  9 . 
     The data shifted out from the flipflop  10 _ 4  is sent out through the SOUT (Serial Out) terminal illustrated in FIG.  8 . The data shifted out and the expected data are compared with each other to see if the internal circuit  11  operates normally. 
     The scan-path testing is thus performed on the internal circuit  11  as an object to be tested. 
     In step with high-speed operation, fine-line design and multi-layer wiring structure of current semiconductor devices, the probability of occurrence of signal delays due to high resistance arising from contact failure of contact holes (via holes) increases. 
     There is a pressing need for the scan-path testing in the high-speed operation environment to detect a signal delay failure taking place in an internal circuit. 
     To perform a scan-path test in a semiconductor device at a high speed in a high-speed operation environment, an expensive high-speed tester is required. This increases test costs. 
     SUMMARY OF THE INVENTION 
     Accordingly, it is an object of the present invention to provide a semiconductor device and a digital circuit, each including a scan test circuit which can perform a scan-path test at an operational environment higher in speed than the currently available environment while involving less test costs. 
     It is another object of the present invention to provide a method of testing a semiconductor device and a digital circuit with the semiconductor device and the digital circuit operated at a speed higher than that of a clock input from outside, by using a tester which generates a clock lower than the operational speed of the semiconductor device and the digital circuit. 
     To achieve the above objects, each of a semiconductor device and a digital circuit in one aspect of the present invention includes a scan chain including a plurality of pairs of a selector and a flipflop arranged in cascade, the scan chain performing a capture mode in which in response to a scan enable signal the flipflop captures data from an internal circuit in synchronization with a predetermined clock and a shift mode in which in response to the scan enable signal, one of the data stored in the flipflop and test data input from outside is shifted to a subsequent flipflop in synchronization with the predetermined clock, a clock generator which generates a clock signal in response to one of the rising edge and the falling edge of the clock pulse of another clock signal input from outside as a trigger, and a clock selector which receives the clock signal input from outside and the clock signal generated by the clock generator, and selects one of the two clock signals in response to the scan enable signal for switching between the shift mode and the capture mode, and then feeds the selected clock signal to the clock input terminal of at least one flipflop forming the scan chain. 
     Preferably, the clock generator generates a clock having one of the falling edge and the rising edge thereof coinciding with one of the rising edge and the falling edge of the clock signal input from outside. 
     Preferably, the clock generator generates a clock having one of the falling edge and the rising edge thereof delayed by a predetermined time from the timing of one of the rising edge and the falling edge of the clock signal input from outside. 
     A method of testing each of the semiconductor device and the digital circuit in another aspect of the present invention includes the steps of inputting the clock signal input from outside to the semiconductor device using a tester, and switching between the shift mode and the capture mode in response to the scan enable signal to test each of the semiconductor device and the digital circuit. 
     In each of the semiconductor device and the digital circuit of the present invention, the time interval from the last clock pulse of the clock signal selected in the shift mode to the first clock pulse of the clock signal selected in the capture mode when the shift mode is switched to the capture mode is set to be shorter than the pulse interval between adjacent pulses of the clock signal selected during the shift mode. The duration of time from the sending of data to an internal circuit to the capturing of data that has passed through the internal circuit is shorter than the time interval of the clock pulse supplied from a tester in use. A delay failure occurring in the internal circuit is thus detected using a low-cost tester when the internal circuit is operated at a speed higher than the highest frequency clock of the tester. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 illustrates a portion of a semiconductor device in accordance with one embodiment of the present invention; 
     FIG. 2 is a timing diagram illustrating the timings of signals in terminals of a flipflop in a clock generator shown in FIG. 1; 
     FIG. 3 is a timing diagram showing an SE signal, a clock CLK, a clock a, and a scan clock; 
     FIG. 4 illustrates another clock generator; 
     FIG. 5 is a timing diagram illustrating the timings of signals in the clock generator illustrated in FIG. 4; 
     FIG. 6 illustrates yet another clock generator; 
     FIG. 7 is a timing diagram illustrating the timings of signals in the clock generator illustrated in FIG. 6; 
     FIG. 8 illustrates a portion of a scan test circuit incorporated in a conventional semiconductor device; and 
     FIG. 9 is a timing diagram illustrating the timings of a clock and a scan enable signal in the scan test circuit illustrated in FIG.  8 . 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The embodiments of the present invention will now be described referring to the drawings. 
     FIG. 1 illustrates a portion of a semiconductor device in accordance with one embodiment of the present invention. 
     Referring to FIG. 1, the semiconductor device includes a portion of a scan test circuit  1 , a clock selector  2 , a clock generator  3 , and an internal circuit  11  to be tested by the scan test circuit  1 . The scan test circuit  1  remains identical to the conventional scan test circuit  1  shown in FIG. 8, and the explanation of a portion common to both circuits is omitted here. 
     The clock selector  2  receives a clock CLK identical to the clock CLK shown in FIG. 9, and a clock a (also designated CLKa) which has a rising edge coinciding with the falling edge of the clock pulse CLK, and which is generated by the clock generator  3 . The clock selector  2  also receives at the select terminal thereof an SE signal for switching the scan test circuit  1  between a shift mode and a capture mode. 
     The clock selector  2  receives the clock a at the terminal “1” thereof, and the clock CLK at the terminal “0” thereof, thereby selecting the clock a when a high-level SE signal is input thereto, and selecting the clock CLK when a low-level SE signal is input thereto. The clock (hereinafter referred to as a scan clock or a SCANCLK) input to the clock input terminals of the flipflops  10 _ 1  through  10 _ 4  from the clock selector  2  becomes the CLKa during the shift mode and the clock CLK during the capture mode. 
     The clock generator  3  includes a flipflop  5 , two inverters  6 _ 1  and  6 _ 2 , and an OR gate  7 . 
     A flipflop  5  in the clock generator  3  has a clock input terminal K 1 , an input terminal D 1 , output terminals Q 1  and Q 2 , and a reset terminal R 1 . 
     The clock input terminal K 1  of the flipflop  5  receives the clock CLK input from outside. The flipflop  5  operates at the falling edge of the clock CLK. The input terminal D 1 , connected to a power supply, always receives a high-level voltage. The output terminal Q 1 , connected to the terminal “1” of the clock selector  2 , outputs the clock CLKa. The output terminal Q 2  is connected to an input terminal of the OR gate  7  through inverters  6 _ 1  and  6 _ 2 . The output terminal Q 2  outputs an inverted version of the signal output from the output terminal Q 1 . The output of the OR gate  7  is connected to the reset terminal R 1  of the flipflop  5 . Upon receiving the falling edge of the signal output from the OR gate  7  at the reset terminal R 1 , the flipflop  5  is reset. 
     FIG. 2 is a timing diagram illustrating the timings of signals at the terminals of the flipflop  5 . 
     Referring to FIG. 2, there are shown the clock CLK input to the clock input terminal of the flipflop  5 , the signal input to the input terminal D 1  of the flipflop  5 , the signal output from the output terminal Q 2  of the flipflop  5 , the signal (designated T in FIG. 2) input to the OR gate  7 , and the signal input to the reset terminal R 1  of the flipflop  5 . 
     The generation of the clock a in the clock generator  3  shown in FIG. 1 is described below. 
     A high-level signal at the input terminal D 1  is output from the output terminal Q 1  at a timing  20  of the falling edge of the clock CLK shown in FIG.  2 . At the same moment, the flipflop  5  outputs, at the output terminal Q 2 , a low-level signal which is an inverted version of the signal output from the output terminal Q 1 . After passing through the two inverters  6 _ 1  and  6 _ 2 , a signal (designated T in FIG. 2) input to the OR gate  7  is delayed from the signal output from the output terminal Q 2 . The signal output to the reset terminal R 1  from the OR gate  7  is driven low at a timing  21 , and at the same moment, the flipflop  5  is reset. The signal output from the output terminal Q 1 , which was at a high level, is driven low at the timing  21 . At a timing  22  of the falling edge of the next clock CLK, the high-level signal input to the input terminal D 1  is output again from the output terminal Q 1 . The above operation is repeated, thereby generating the clock a. 
     FIG. 3 is a timing diagram showing the SE signal, the clocks CLK and CLKa, and the scan clock. 
     Referring to FIG. 3, there are shown the clock CLKa which is generated by the clock generator  3  in synchronization with the timing illustrated in FIG. 2, and the scan clock that is selected by the clock selector  2  in response to the SE signal and fed to the scan test circuit  1 . Clock pulses T 6 , T 7 , C 1 , T 8 , and T 9  of the scan clock are shown in the order of occurrence in FIG.  3 . 
     Referring to FIG. 3, clock pulses T 6  and T 7  are selected as the scan clock in the shift mode with the SE signal at a high level. Clock pulse C 1  is selected as the scan clock in the capture mode with the SE signal at a low level. Clock pulses T 8  and T 9  are selected with the SE signal returned to a high level again. 
     When the scan test circuit  1  performs a scan test, the high-level SE signal shown in FIG. 3 is input to the selectors  12 _ 1  through  12 _ 4  and the clock selector  2 . The scan test circuit  1  is switched to the shift mode, and the clock selector  2  selects the clock a, thereby successively feeding clock pulses T 6  and T 7  to the clock input terminals of the flipflops  10 _ 1  through  10 _ 4 . 
     Test data is successively sent to the flipflops  10 _ 1  through  10 _ 4  at the timing of rising edge of each of the clock pulses T 6  and T 7 . The test data is then fed to the internal circuit  11 . The scan test circuit  1  feeds the test data to the internal circuit  11  at the timing of the rising edge of the clock pulse T 7 , thereby completing the setting of the test data to the internal circuit  11 . Referring to FIG. 3, a duration of time from the rising edge of the clock pulse T 6  to the rising edge of the clock pulse T 7  is designated Ts. 
     The low-level SE signal is then input to the selectors  12 _ 1  through  12 _ 4  in the scan test circuit  1  and the clock selector  2 . In response, the shift mode is switched to the capture mode. The clock selector  2  selects the clock CLK, thereby feeding the clock pulse C 1  to the flipflops  10 _ 1  through  10 _ 4  at the clock input terminals thereof. Data that has passed through the scan test circuit  1  is captured in parallel by the flipflops  10 _ 3  and  10 _ 4  at the timing of the rising edge of the clock pulse C 1 . A duration of time from the rising edge of the clock pulse T 7  to the rising edge of the clock pulse C 1  is designated Tc. 
     The time duration Tc is set to be shorter than the time duration Ts, namely, the period of the clock CLK from the rising edge of the clock pulse T 6  to the rising edge of the clock pulse T 7 . 
     When the SE signal is transitioned from a low level to a high level, the scan test circuit  1  is switched from the capture mode back to the shift mode. At the same time, the clock selector  2  selects the clock a, thereby successively feeding clock pulses T 8  and T 9  shown in FIG. 3 to the clock input terminals of the flipflops  10 _ 1  through  10 _ 4 . The data captured by flipflops  10 _ 3  and  10 _ 4  from the internal circuit  11  is shifted out from the terminal SOUT at the timing of the rising edge of each of clock pulses T 8  and T 9 . 
     The data thus shifted out and the expected data are compared to each other to determine whether the internal circuit  11  operates normally. 
     Specifically, the scan test circuit  1  sets the test data to the internal circuit  11  and captures the data that has passed through the internal circuit  11  at the time interval Tc, which is shorter than the period Ts of the clock CLK input from outside. 
     Using a low-speed tester, a delay failure generated in the internal circuit  11  is detected with the internal circuit  11  operated at a speed higher than the maximum frequency of the clock of the tester. 
     FIG. 4 illustrates a clock generator  4 , which generates a clock having the rising edge thereof coinciding with the falling edge of the pulse of the clock CLK, like the clock a. 
     FIG. 4 shows a clock selector  2  in addition to the clock generator  4 . 
     The clock generator  4  includes three inverters  8 _ 1 ,  8 _ 2 , and  8 _ 3  and a NOR gate  9 . 
     The NOR gate  9  receives, at the inputs thereof, the clock CLK, and a signal U coming in through the three inverters. The output W of the NOR gate  9  is connected to the terminal “1” of the clock selector  2 . 
     FIG. 5 is a timing diagram illustrating the clock CLK, the signal U, and the signal W. Like the clock a, the signal W is a signal having the rising edge thereof coinciding with the falling edge of the clock CLK. 
     In the embodiments illustrated in FIGS. 1 and 4, the rising edge of the scan clock serves the operation timing of the flipflops forming the scan chain. Alternatively, the falling edge of the scan clock may serve the operation timing. 
     In the embodiments illustrated in FIGS. 1 and 4, the clock CLKa is selected during the shift mode while the clock CLK is selected during the capture mode. Alternatively, the clock CLK may be selected during the shift mode while the clock CLKa may be selected during the capture mode. 
     In the above-referenced embodiments, the clock a having the rising edge thereof coinciding with the falling edge of the clock CLK input from outside is generated, and one of the clock a and the clock CLK is selected. Alternatively, the clock selector  2  may generate one of a signal having the falling edge thereof coinciding with the rising edge of the clock CLK, a signal having the rising edge thereof coinciding with the rising edge of the clock CLK, and a signal having the falling edge thereof coinciding with the falling edge of the clock CLK, and may select the generated clock and the clock CLK. When the shift mode is switched to the capture mode, the time duration from the last clock pulse in the shift mode to the first clock pulse of the clock selected during the capture mode is set to be shorter than the period of the original clock CLK. 
     The clock generators generates the clock having one of the rising edge and the falling edge thereof delayed by a predetermined time from the timing of one of the rising edge and the falling edge of the clock CLK input from outside and the selector selects between the generated clock and the clock input from outside to switch between the shift mode and the capture mode. When the shift mode is switched to the capture mode, the time duration from the last clock pulse during the shift mode to the first clock pulse during the capture mode is thus set to be shorter than the period of the original clock CLK. 
     One such embodiment is described below. 
     FIG. 6 illustrates yet another clock generator of the present invention. A clock generator  14  generates a clock that rises after a predetermined delay time subsequent to the timing of the falling edge of the clock CLK. FIG. 6 shows a clock selector  2  in addition to the clock generator  14 . 
     The clock generator  14  includes five inverters  8 _ 1  through  8 _ 5  and a NOR gate. The clock generator  14  is different from the clock generator  4  shown in FIG. 4 in that two additional inverters  8 _ 4  and  8 _ 5  are used to delay the clock CLK, input from outside, by a predetermined time. Like components are designated with like reference numerals. FIG. 7 is a timing diagram illustrating the clock CLK, signal V, signal U, and signal W. The signal W rises after a delay time caused by the inverters  8 _ 4  and  8 _ 5  from the timing of the falling edge of the clock CLK, and remains high for a delay time caused by the inverters  8 _ 1  through  8 _ 3 . The clock selector  2  selects and outputs the signal W during the shift mode and the clock CLK during the capture mode. The time duration from the rising edge of the last clock pulse in the shift mode to the rising edge of the first clock pulse in the capture mode is further shortened. 
     As described above, in accordance with the semiconductor device and the digital circuit of the present invention, the data that has passed through the internal circuit is fast captured subsequent to the feeding of the test data to the internal circuit even when an inexpensive and low-speed tester is used to perform a scan test. The inexpensive tester can detect a delay failure during a high-speed operation of the internal circuit. Since circuits to be added in the semiconductor device and the digital circuit are a clock generator and a clock selector only, the present invention is free from an increase in chip area and degradation in circuit performance.