Abstract:
A method for testing a plurality of functional circuit blocks of a system LSI, including dividing the plurality of functional circuit blocks into at least a first test group and a second test group, wherein the first test group is tested before the second test group and wherein testing of a functional circuit block in the second test group is started immediately after testing of a functional circuit block in the first test group is finished.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    The present invention relates, in general, to testing techniques and, more particularly, to a method for testing a plurality of functional circuit blocks, wherein each of the functional circuit blocks is designed as an existing semiconductor integrated circuit.  
           [0003]    This claims priority under 35 USC §119 to Japanese patent application Serial Number 371925/2001, filed Dec. 5, 2001, the subject matter of which is incorporated herein by reference in its entirely for all purposes.  
         DESCRIPTION OF THE RELATED ART  
         [0004]    In recent years, a system LSI comprises many functional circuit blocks. The functional circuit block which is a core of the system LSI, is called as intellectual property (IP), macro cell or so on. The IP is a block which is designed in the state of hardware or software and executes a specific operation.  
           [0005]    A conventional method for testing the functional circuit blocks in the system LSI sets a plurality of test groups each comprising a plurality of the functional circuit blocks to be tested simultaneously, using a combination of a parallel access method and a serial access method. The conventional method tests the test groups in turn. The concept of the parallel access method is shown in FIG. 14. As shown in FIG. 14, each of the input and output terminals of each of IP  1401  and  1402  connects with the outer terminals of the system LSI  1400  with one-one relation. The parallel access method tests a plurality of IP parallel using the outer terminals of the system LSI, by inputting a signal to IP from the outer terminals directly and observing an output signal output by the outer terminals directly. The concept of the serial access method is shown in FIG. 15. As shown in FIG. 15, there are a serial-parallel converter  1501  and a parallel-serial converter  1502  between the outer terminals of the system LSI  1500  and the input and output terminals of IP  1503  and  1504 . The serial access method tests a plurality of IP serially using the outer terminals of the system LSI, by inputting a signal to IP from the outer terminals through the serial-parallel converter  1501  and observing an output signal output by the outer terminals through the parallel-serial converter  1502 .  
           [0006]    An operation of the conventional method for testing the functional circuits in the system LSI will be described with reference to FIG. 16. The vertical axis shows the range of the number of pins of the system LSI necessary for testing. The horizontal axis shows test time necessary for testing. Six functional circuit blocks IP(A)-IP(F) are shown in FIG. 16. A vertical length of each functional circuit block is indicative of the number of pins of the system LSI necessary for testing. A horizontal length of each functional circuit block is indicative of test time necessary for testing.  
           [0007]    The conventional test method divides the functional circuit blocks into a plurality of test groups. In FIG. 16, the functional circuit blocks are divided into four test groups. A first test group comprises the functional circuit blocks IP(A) and IP(B). A second test group comprises the functional circuit blocks IP(C) and IP(D). A third test group comprises the functional circuit block IP(E). A fourth test group comprises the functional circuit block IP(F).  
           [0008]    The conventional test method tests the functional circuit blocks by test groups. First, the first test group is tested. Next, the second test group is tested, after the test in the first test group is finished. Correspondingly, the third test group is tested, after the test in the second test group is finished. The fourth test group is tested, after the test in the third test group is finished.  
           [0009]    However, each of the functional circuit blocks in each test group does not always have the same test time as the other functional circuit blocks in the corresponding test group. The test time of the functional circuit block IP(A) is longer than that of the functional circuit block IP(B). The non-used pins of the system LSI for testing exist uselessly, from the time of finishing the test in the functional circuit block IP(A) until finishing the test in the functional circuit block IP(B). The testing of the second test group can not start immediately after the test of the functional circuit block IP(B) is finished, because the test in the functional circuit block IP(A) has not been finished yet. Therefore, the conventional test method does not use the non-used pins of the system LSI effectively.  
         SUMMARY OF THE INVENTION  
         [0010]    According to one aspect of the present invention, there is provided a method for testing a plurality of the functional circuit blocks in the system LSI, the method comprising dividing a plurality of the functional circuit blocks into at least a first test group and a second test group, wherein the first test group is tested before the second test group, and starting testing of one functional circuit block in the second test group immediately after one functional circuit block in the first test group is finished being tested.  
           [0011]    The novel features of the invention will more fully appear from the following detailed description, appended claims and the accompanying drawings. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0012]    [0012]FIG. 1 is an operational diagram showing a method for testing functional circuit blocks according to a first preferred embodiment of the present invention.  
         [0013]    [0013]FIG. 2 is a block diagram showing the number of LSI pins and testing time according to the first preferred embodiment of the present invention.  
         [0014]    [0014]FIG. 3 is a block diagram showing a test circuit according to the first preferred embodiment of the present invention.  
         [0015]    [0015]FIG. 4 is a timing chart showing necessary time for testing each functional circuit block shown in FIG. 2.  
         [0016]    [0016]FIG. 5 is an operational diagram showing a method for testing functional circuit blocks according to a second preferred embodiment of the present invention.  
         [0017]    [0017]FIG. 6 is a block diagram showing the number of LSI pins and testing time according to the second preferred embodiment of the present invention.  
         [0018]    [0018]FIG. 7 is a block diagram showing a test circuit according to the second preferred embodiment of the present invention.  
         [0019]    [0019]FIG. 8 is a timing chart showing necessary time for testing each functional circuit block shown in FIG. 6.  
         [0020]    [0020]FIG. 9 is an operational diagram showing a method for testing functional circuit blocks according to a third preferred embodiment of the present invention.  
         [0021]    [0021]FIG. 10 is a block diagram showing the number of LSI pins and testing time according to the third preferred embodiment of the present invention.  
         [0022]    [0022]FIG. 11 is a block diagram showing a test circuit according to the third preferred embodiment of the present invention.  
         [0023]    [0023]FIG. 12 is a timing chart showing necessary time for testing each functional circuit block shown in FIG. 10.  
         [0024]    [0024]FIG. 13 is an operational diagram showing a method for testing functional circuit blocks according to a fourth preferred embodiment of the present invention.  
         [0025]    [0025]FIG. 14 is a block diagram for describing a parallel access method.  
         [0026]    [0026]FIG. 15 is a block diagram for describing a serial access method.  
         [0027]    [0027]FIG. 16 is a block diagram showing the number of LSI pins and testing time according to a conventional method for testing functional circuit blocks. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0028]    A method for testing functional circuit blocks of the present invention will be explained with reference to the preferred embodiments of the present invention. Moreover, not all the combinations of the characteristics of the present invention described in the embodiments are essential to the problem solving means of the present invention.  
         [0029]    A method for testing the functional circuit blocks according to a first preferred embodiment of the present invention will be described with reference to FIGS.  1 - 4 . FIG. 1 is an operational diagram showing the method for testing the functional circuit blocks according to the first preferred embodiment of the present invention. FIG. 2 is a block diagram showing the number of LSI pins and testing time according to the first preferred embodiment of the present invention. FIG. 3 is a block diagram showing a test circuit according to the first preferred embodiment of the present invention. FIG. 4 is a timing chart showing time necessary for testing each functional circuit block shown in FIG. 2.  
         [0030]    First, an operation of the method for testing the functional circuit blocks according to the first preferred embodiment of the present invention will be explained with reference to FIGS. 1 and 2. In FIG. 2, the vertical axis P shows the range of the number of pins of the system LSI which are available for testing the functional circuit blocks. The horizontal axis T shows test time to finish testing in the functional circuit blocks. The functional circuit blocks are shown as IP(i). IP(i)t shows test time necessary for testing the functional circuit block IP(i) and IP(i)p shows the number of pins of the system LSI necessary for testing.  
         [0031]    In step S 101 , each test time necessary for testing each functional circuit block and each of the number of pins of the system LSI necessary for testing each functional circuit blocks, are determined. In FIG. 2, each test time IP(A)t-IP(F)t and each of the number of pins IP(A)p-IP(F)p are determined. In addition, in step S 101 , the functional circuit block having the longest test time among the functional circuit blocks, is selected. In FIG. 2, the functional circuit block IP(A) having test time IP(A)t is selected. As shown in FIG. 2, test time IP(A)t has the longest horizontal length.  
         [0032]    In step S 102 , one of the functional circuit blocks is selected from among the non-selected functional circuit blocks of step S 101  in consideration of the number of pins of the system LSI which are available for starting testing in parallel with the functional circuit block selected in step S 101 . In FIG. 2, the functional circuit block IP(B) is selected. The following relationship is considered:  
           P=IP ( A ) p+IP ( B ) p+ΔP 1  [1],  
         [0033]    wherein ΔP1 is the number of unused pins of the LSI when the functional circuit blocks IP(A) and IP(B) are simultaneously tested. The smaller the value ΔP1 is, the more efficient the method for testing becomes. The other functional circuit blocks IP(C)-IP(F) are not selected, because testing of the other functional circuit blocks IP(C)-IP(F) can not be started with the functional circuit block IP(A) at the same time out of consideration of the number of pins of the system LSI. Also, if for the example the functional circuit block IP(D) is selected instead of the functional circuit block IP(B), ΔP2 (=P−IP(A)p−IP(D)p) is larger than ΔP1. The method for testing becomes inefficient if the functional circuit block IP(D) is selected in step S 102  instead of functional circuit block IP(B).  
         [0034]    In step S 103 , the functional circuit blocks selected in steps S 102  and S 103  are set as one test group. These set functional circuit blocks can be tested by the parallel access method at the same time. In FIG. 2, the functional circuit blocks IP(A) and IP(B) are set as one test group (1st test group).  
         [0035]    In step S 104 , it is determined whether there is the non-selected functional circuit block or not. If there is a non-selected functional circuit block, steps S 101 -S 103  are repeated. If not, step S 105  is executed. In FIG. 2, the functional circuit blocks IP(C) and IP(D) are set as one test group (2nd test group). The functional circuit block IP(E) is set as one test group (3rd test group) and the functional circuit block IP(F) is set as one test group (4th test group). In FIG. 2, there are four test groups.  
         [0036]    By the way, in the 1st test group, test time IP(B)t is shorter than test time IP(A)t. So, the test process for the functional circuit block IP(B) is finished faster than the test process for the functional circuit block IP(A). When the test process for the functional circuit block IP(B) is finished, the number of non-used pins ΔP3 (=P−IP(A)p)&gt;ΔP1 exists until the test process for the functional circuit block IP(A) is finished.  
         [0037]    So, in step S 105 , it is determined whether there is a functional circuit block among the next test group which is available as a pretest group for starting to test using the non-used pins of the system LSI during the test process of the first test group. If such a functional circuit block is determined as available in step S 105 , step S 106  is executed, and if not, step S 107  is executed. In more detail with reference to FIG. 2, according to the relationship between the 1 st test group and the 2nd test group, the functional circuit block IP(D) in the 2nd test group is available for starting to test using the non-used pins of the system LSI during the test process for the 1st test group. So, the functional circuit block IP(D) is selected out of consideration for the test time. Usually, the functional circuit block having the longest test time is selected.  
         [0038]    In step S 106 , the functional circuit block which is selected in step S 105 , is added to the pre-test-group. Therefore, immediately after the test process for one functional circuit block in the first test group is finished, the test process for the functional circuit block which is selected in step S 105  in the pretest group is started. In FIG. 2, the functional circuit block IP(D) is selected as in the pretest group and is thus added to the 1st test group. Therefore, immediately after the test process for the functional circuit block IP(B) is finished, the test process for the functional circuit block IP(D) is started.  
         [0039]    In step S 107 , it is determined whether there is the non-selected test group or not. If there is a non-selected test group, steps S 105  and S 106  are executed. If not, step S 108  is executed. In FIG. 2, there are 3rd test group and 4th test group. Steps S 105  and S 106  are executed for the 3rd test group and 4th test group.  
         [0040]    In step S 108 , a test circuit is provided for each test group as shown in FIG.  3 . The test circuit has a test control circuit  310  and the functional circuit blocks  320 - 370 . The test control circuit  310  and the functional circuit blocks  320 - 370  are connected to each other by the control bus. Each of the functional circuit blocks  320 - 370  is controlled through the control bus by the test control circuit  310 . In addition, the test control circuit  310  has a test access circuit and so on. As shown in FIG. 3, each functional circuit block is tested by the parallel access method. Returning to FIG. 3, the test process for the functional circuit blocks is executed.  
         [0041]    In FIG. 4, each wave form shows the testing status of each functional circuit block. The rising part of the wave form shows the status of being tested. The falling part of the wave shows the status of not being tested. As shown in FIG. 4, the test process for the functional circuit blocks IP(A) and IP(B) are started at the same time. Next, immediately after the test process for the functional circuit block IP(B) is finished, the test process for the functional circuit block IP(D) is started. Next, immediately after the test process for the functional circuit block IP(A) is finished, the test process for the functional circuit block IP(C) is started. Next, immediately after the test process for the functional circuit blocks IP(C) and IP(D) is finished, the test process for the functional circuit block IP(E) is started. Next, immediately after the test process for the functional circuit block IP(E) is finished, the test process for the functional circuit block IP(F) is started. Therefore, total test time is the sum of IP(B)t, IP(D)t, IP(E)t and IP(F)t. On the other hand, total test time of the conventional test method is the sum of IP(A)t, IP(D)t, IP(E)t and IP(F)t. Thus, total test time of the first preferred embodiment of the present invention is shorter than total test time of the conventional test method by the difference between IP(A)t and IP(B)t.  
         [0042]    The method for testing the functional circuit blocks according to the first preferred embodiment of the present invention starts to test next test group without waiting for finishing all of test processes of the previous test group. The method for testing the functional circuit blocks according to the first preferred embodiment of the present invention saves the time necessary for finishing all of the test processes of the previous test group. Therefore, the method for testing the functional circuit blocks according to the first preferred embodiment of the present invention reduces test time for the functional circuit blocks of the system LSI in comparison with the conventional method.  
         [0043]    A method for testing the functional circuit blocks according to a second preferred embodiment of the present invention will be described with reference to FIGS.  5 - 8 . FIG. 5 is an operational diagram showing the method for testing the functional circuit blocks according to the second preferred embodiment of the present invention. FIG. 6 is a block diagram showing the number of LSI pins and testing time according to the second preferred embodiment of the present invention. FIG. 7 is a block diagram showing a test circuit according to the second preferred embodiment of the present invention. FIG. 8 is a timing chart showing necessary time for testing each functional circuit block shown in FIG. 6. Like elements are given like or corresponding reference numerals in the first and second preferred embodiments. Thus, dual explanations of the same elements are avoided.  
         [0044]    First, an operation of the method for testing the functional circuit blocks according to the second preferred embodiment of the present invention will be explained with reference to FIG. 5. The steps S 501 -S 505  shown in FIG. 5 are added between step S 107  and step S 108  shown in FIG. 1.  
         [0045]    In step S 501 , it is determined whether the test group comprises only one functional circuit block or not. If the test group comprises only one functional circuit block, step S 502  is executed, and if not, step S 505  is executed.  
         [0046]    In step S 502 , whether or not the functional circuit block can be tested in parallel with test processes of another test group by the serial access method is determined, based on consideration of the number of pins of the system LSI. If it can be tested, step S 503  is executed. If not, step S 505  is executed.  
         [0047]    In step S 503 , it is determined whether test time of the functional circuit block to be tested by the serial access method is shorter than total test time of the other test groups or not. If it is, step S 504  is executed. If not, step S 505  is executed. In step S 504 , the functional circuit block is added to another test group. Then, step S 505  is executed.  
         [0048]    In step S 505 , it is determined whether additional test groups exist or not. If it is, step S 501  is executed again. If not, step S 108  is executed.  
         [0049]    Next, an operation of the method for testing the functional circuit blocks according to the second preferred embodiment of the present invention will be explained with reference to FIG. 6 concretely.  
         [0050]    In step S 501 , first, the 1st test group is checked. The 1st test group comprises two functional circuit blocks IP(A) and IP(B), so step S 505  is executed. In step S 505 , additional test groups (2nd, 3rd, 4th test groups) exist, so step S 501  is executed again. The process of the 2nd test group is omitted for the same reason as the 1st test group. In step S 501  again, the 3rd test group is checked. The 3rd test group comprises only one functional circuit block IP(E), so step S 502  is executed. It is determined that the 3rd test group can be tested by the serial access method in parallel with other test groups, so step S 503  is executed. Test time of the functional circuit block IP(E) of the 3rd test group to be tested by the serial access method is shorter than total test time of the other test groups, so step S 504  is executed. In step S 504 , the functional circuit block IP(E) of the 3rd test group is added to other test groups (1st, 2nd and 4th test groups) and is shown as IP(E 1 ) in FIG. 6. In step S 505 , the 4th test group is checked, the 4th test group is checked in step S 501  again. The 4th test group comprises only one functional circuit block IP(F), so step S 502  is executed. In step S 502 , it is determined that the 4th test group can not be tested in parallel with another test groups, so step S 505  is executed. In step S 505 , additional test group do not exist, so step S 108  is executed.  
         [0051]    In step S 108 , a test circuit is provided for each test group as shown in FIG. 7. The test circuit has a test control circuit  710  and the functional circuit blocks  720 - 770 . The test control circuit  710  and the functional circuit blocks  720 - 770  are connected to each other by the control bus. Each functional circuit block  720 - 770  is controlled through the control bus by the test control circuit  710 . In addition, the test control circuit  710  has a test access circuit and so on. As shown in FIG. 7, all functional circuit blocks except for the functional circuit block IP(E 1 ) are tested by the parallel access method, the functional circuit block IP(E 1 ) is tested by the serial access method. Returning to FIG. 7, the test process for the functional circuit blocks is executed.  
         [0052]    In FIG. 8, each wave form shows the testing status of each functional circuit block. The rising part of the wave form shows the status of being tested. The falling part of the wave shows the status of not being tested. As shown in FIG. 8, the test process for the functional circuit blocks IP(A), IP(B) and IP(E 1 ) are started at the same time. Next, immediately after the test process for the functional circuit block IP(B) is finished, the test process for the functional circuit block IP(D) is started. Next, immediately after the test process for the functional circuit block IP(A) is finished, the test process for the functional circuit block IP(C) is started. Next, immediately after the test process for the functional circuit blocks IP(C) and IP(D) is finished, the test process for the functional circuit block IP(F) is started. Therefore, total test time is the sum of IP(B)t, IP(D)t and IP(F)t. On the other hand, total test time of the conventional test method is the sum of IP(A)t, IP(D)t, IP(E)t and IP(F)t. Thus, total test time of the second preferred embodiment of the present invention is shorter than total test time of the conventional test method by the difference IP(A)t+IP(E)t−IP(B)t. In addition, total test time of the first preferred embodiment of the present invention is the sum of IP(B)t, IP(D)t, IP(E)t and IP(F)t. Therefore, total test time of the second preferred embodiment of the present invention is shorter than total test time of the first preferred embodiment by the difference IP(E)t.  
         [0053]    As the method for testing the functional circuit blocks according the first preferred embodiment of the present invention, the method for testing the functional circuit blocks according to the second preferred embodiment of the present invention can start to test next test group without waiting for finishing all of test processes of previous test group. The method for testing the functional circuit blocks according to the second preferred embodiment of the present invention saves the time necessary for finishing all of the test processes of the previous test group. Therefore, the method for testing the functional circuit blocks according to the second preferred embodiment of the present invention reduces test time for the functional circuit blocks of the system LSI in comparison with the conventional method.  
         [0054]    Furthermore, the method for testing the functional circuit blocks according to the second preferred embodiment of the present invention tests the functional circuit blocks using a combination of the parallel access method and the serial access method. Therefore, the method for testing the functional circuit blocks according to the second preferred embodiment of the present invention reduces test time for the functional circuit blocks of the system LSI in comparison with the method according to the first preferred embodiment of the present invention.  
         [0055]    A method for testing the functional circuit blocks according to a third preferred embodiment of the present invention will be described with reference to FIGS.  9 - 12 . FIG. 9 is an operational diagram showing the method for testing the functional circuit blocks according to the third preferred embodiment of the present invention. FIG. 10 is a block diagram showing the number of LSI pins and testing time according to the third preferred embodiment of the present invention. FIG.  11  is a block diagram showing a test circuit according to the third preferred embodiment of the present invention. FIG. 12 is a timing chart showing necessary time for testing each functional circuit block shown in FIG. 10. Like elements are given like or corresponding reference numerals in the above preferred embodiments. Thus, dual explanations of the same elements are avoided.  
         [0056]    First, an operation of the method for testing the functional circuit blocks according to the third preferred embodiment of the present invention will be explained with reference to FIG. 9. The steps S 901 -S 905  shown in FIG. 9 are added between step S 505  and step S 108  shown in FIG. 5.  
         [0057]    In step S 901 , it is determined whether the test group comprises only one functional circuit block or not. If the test group has only one functional circuit block, step S 902  is executed. If not, step S 905  is executed.  
         [0058]    In step S 902 , whether or not the functional circuit block can be tested in parallel with test processes of another test group by a parallel/serial combination access method is determined, based on consideration of the number of pins of the system LSI. If it can be tested, step S 903  is executed. If not, step S 905  is executed.  
         [0059]    In step S 903 , it is determined whether or not test time of the functional circuit block to be tested by the parallel/serial combination access method is shorter than total test time of the other test groups. If it is, step S 904  is executed. If not, step S 905  is executed. In step S 904 , the functional circuit block is added to other test groups. Then, step S 905  is executed.  
         [0060]    In step S 905 , it is determined whether additional test groups exist or not. If additional test groups exist, step S 901  is executed again. If not, step S 108  is executed.  
         [0061]    Next, an operation of the method for testing the functional circuit blocks according to the third preferred embodiment of the present invention will be explained with reference to FIG. 10 concretely.  
         [0062]    In step S 901 , first, the 1st test group is checked. The 1st test group is comprised with two functional circuit blocks IP(A) and IP(B), so step S 905  is executed. In step S 905 , the additional test groups (2nd, 3rd, 4th test groups) exist, so step S 901  is executed again. The process of the 2nd test group is omitted for the same reason as the 1st test group. In step S 901  again, the 3rd test group is checked. The 3rd test group is comprised with only one functional circuit block IP(E 1 ), so step S 902  is executed. As explained above in the preferred embodiment, the 3rd test group is decided to be tested by the serial access method, so step S 905  is executed. After step S 905 , in step S 901  again, the 4th test group is checked. The 4th test group is comprised with only one functional circuit block IP(F), so step S 902  is executed. It is determined that the 4th test group can be tested by the parallel/serial combination access method in parallel with other test groups, so step S 903  is executed. Test time of the functional circuit block IP(F) of 4th test group to be tested by the parallel/serial combination access method is shorter than total test time of the other test groups, so step S 904  is executed. In step S 904 , the functional circuit block IP(F) of 4th test group is added to other test groups (1st, 2nd and 3rd test groups) and is shown as IP(F 1 ) in FIG. 10. In step S 905 , the additional test groups do not exist, so step S 108  is executed.  
         [0063]    In step S 108 , a test circuit is provided for each test group as shown in FIG. 11. The test circuit has a test control circuit  1101  and the functional circuit blocks  1102 - 1107 . The test control circuit  1101  and the functional circuit blocks  1102 - 1107  are connected with the control bus to each other. Each functional circuit block  1102 - 1107  is controlled through the control bus by the test control circuit  1101 . In addition, the test control circuit  1101  has a test access circuit and so on. As shown in FIG. 11, the functional circuit blocks IP(A)-IP(D) are tested by the parallel access method, the functional circuit block IP(E 1 ) is tested by the serial access method and the functional circuit block IP(F 1 ) is tested by the parallel/serial combination method. Then, the test process for the functional circuit blocks is executed.  
         [0064]    In FIG. 12, each wave form shows the testing status of each functional circuit block. The rising part of the wave form shows the status of being tested. The falling part of the wave shows the status of not being tested. As shown in FIG. 12, the test process for the functional circuit blocks IP(A), IP(B), IP(E 1 ) and IP(F 1 ) are started at the same time. Next, immediately after the test process for the functional circuit block IP(B) is finished, the test process for the functional circuit block IP(D) is started. Next, immediately after the test process for the functional circuit block IP(A) is finished, the test process for the functional circuit block IP(C) is started. Therefore, total test time is the sum IP(E 1 )t of IP(B)t, IP(D) and Δα. On the other hand, total test time of the conventional test method is the sum of IP(A)t, IP(D)t, IP(E)t and IP(F)t. Thus, total test time of the third preferred embodiment of the present invention is shorter than total test time of the conventional test method by the difference IP(A)t+IP(E)t+IP(F)t−IP(B)−Δα. In addition, total test time of the first preferred embodiment of the present invention is the sum of IP(B)t, IP(D)t, IP(E)t and IP(F)t. Therefore, total test time of the third preferred embodiment of the present invention is shorter than total test time of the first preferred embodiment by the difference IP(E)t+IP(F)t−Δα. Furthermore, total test time of the second preferred embodiment of the present invention is the sum of IP(B)t, IP(D)t and IP(F)t. Therefore, total test time of the third preferred embodiment of the present invention is shorter than total test time of the second preferred embodiment by the difference IP(F)t−Δα.  
         [0065]    As the method for testing the functional circuit blocks according the first and second preferred embodiments of the present invention, the method for testing the functional circuit blocks according to the third preferred embodiment of the present invention starts to test next test group without waiting for finishing all of test processes of previous test group. The method for testing the functional circuit blocks according to the third preferred embodiment of the present invention saves the time needed to wait for finishing all of test processes of previous test group. Therefore, the method for testing the functional circuit blocks according to the third preferred embodiment of the present invention reduces test time for the functional circuit blocks of the system LSI in comparison with the conventional method.  
         [0066]    Furthermore, the method for the method for testing the functional circuit blocks according to the third preferred embodiment of the present invention tests the functional circuit blocks using a combination of the parallel access method, the serial access method and parallel/serial combination access method. Therefore, the method for testing the functional circuit blocks according to the third preferred embodiment of the present invention reduces test time for the functional circuit blocks of the system LSI in comparison with the method according to the first and second preferred embodiments of the present invention.  
         [0067]    A method for testing the functional circuit blocks according to a fourth preferred embodiment of the present invention will be described with reference to FIG. 13. FIG. 13 is an operational diagram showing the method for testing the functional circuit blocks according to the fourth preferred embodiment of the present invention. The method for testing the functional circuit blocks according to the fourth preferred embodiment of the present invention provides an improvement of the first preferred embodiment. The method for testing the functional circuit blocks according to the first preferred embodiment of the present invention decides all test groups and then adjusts the relationship among the test groups. However, the method for testing the functional circuit blocks according to the fourth preferred embodiment of the present invention adjusts the relationship between predecided test group and newly decided test groups every newly decided test group.  
         [0068]    An operation of the method for testing the functional circuit blocks according to the fourth preferred embodiment of the present invention will be explained with reference to FIG. 13.  
         [0069]    In step S 1301 , test time necessary for testing each functional circuit block and the number of pins of the system LSI necessary for testing each functional circuit block are calculated.  
         [0070]    In step S 1302 , the functional circuit block of which test time is the longest test time among all functional circuit blocks, is selected.  
         [0071]    In step S 1303 , it is determined whether or not there is the functional circuit block which can be tested in parallel with the functional circuit block selected in step S 1302  among the non-selected functional circuit blocks out of consideration for the number of pins of the system LSI. If there is, step S 1304  is executed, and the functional circuit block is selected. Steps S 1303  and S 1304  are repeated until there is no functional circuit block which can be tested in parallel with the functional circuit block selected in step S 1302 . If the decision in step S 1303  is no, step S 1305  is executed and the functional circuit blocks selected in steps S 1302 -S 1304  are set as one test group. Next, step S 1306  is executed.  
         [0072]    In step S 1306 , it is determined whether or not there is the non-selected functional circuit block. If there is, step S 1307  is executed. If not, step S 1309  is executed.  
         [0073]    In step S 1307 , it is determined whether or not there is a functional circuit block among the non-selected functional circuit blocks which is available for starting to test using the non-used pins of the system LSI at test process for a predecided test group. If there is, step S 1308  is executed. If not, step S 1302  is executed.  
         [0074]    In step S 1308 , the functional circuit block is added to the predecided test group. Therefore, immediately after the test process for one functional circuit block in the predecided test group is finished, the test process for the added functional circuit block is started. Next, step S 1306  is executed.  
         [0075]    Step S 1309  is equal to step S 108 . In step S 1309 , a test circuit is provided for each test group.  
         [0076]    As the method for testing the functional circuit blocks according the first preferred embodiments of the present invention, a method for testing the functional circuit blocks according to a fourth preferred embodiment of the present invention starts to test a next test group without waiting for finishing all of test processes of previous test group. The method for testing the functional circuit blocks according to the fourth preferred embodiment of the present invention saves the time needed to wait for finishing all of test processes of previous test group. Therefore, the method for testing the functional circuit blocks according to the fourth preferred embodiment of the present invention reduces test time for the functional circuit blocks of the system LSI in comparison with the conventional method.  
         [0077]    Furthermore, the method for testing the functional circuit blocks according to the fourth preferred embodiment of the present invention adjusts the relationship between predecided test group and newly decided test group for every newly decided test group.  
         [0078]    While the preferred form of the present invention has been described, it is to be understood that modifications will be apparent to those skilled in the art without departing from the spirit of the invention.  
         [0079]    The scope of the invention, therefore, is to be determined solely by the following claims.