System for partitioning and testing submodule circuits of an integrated circuit

Abstract: A system for providing testing capability of individual submodules on an integrated circuit module. A test bus having a plurality of conductors is connected to selected internal ports of said submodules through three-way analog switches. Each three-way analog switch provides the capability to observe and control an internal port through combination of the ON/OFF status of two transmission gates. Test patterns for controlling the transmission gates may be provided by onboard D flip-flops which are externally programmed to control or observe ports of an individual submodule.

Description: The invention relates to a device containing analog electronic circuitry and a circuit for testing said circuitry, said circuit comprising a test bus having a plurality of conductors and: a) at least one three-way analog switch (14, 15), each switch comprising: i) an output connection (16) for connecting to an input of a succeeding module (10); ii) a bidirectional input/output connection for connecting to a test bus connection (18); iii) an input connection (12) for receiving input data from a preceding module (11); b) means for configuring (19, 20) the at least one three-way analog switch to assume either one of the following states: i) a first state in which the input connection is connected to the output connection, so that the input data reaches the succeeding module; ii) a second state in which the input/output connection is connected to the output connection, so that test data reaches the succeeding module; and iii) a third state in which the output of the preceding module is connected to the input of the succeeding module and to the input/output connection, so that the input data reaches the test bus. The reference EP-A-333 241 describes a system for analog testing, is provided with a parallel test bus, and has switches with a range of positions that allow inputting of test signals to the macros, outputting of result signals from the macros, as well as operating the macros under transparency of the test facilities. The reference does not describe details of the switch on the level of its electronic components. Moreover, for each switch, multiple test wires are required, leading to an extremely complex wiring pattern, as regarding the complexity of the device. A particular advantage of the present invention is to allow reducing the number of transmission gates necessary for realizing the switch proper, while raising the level of testability. The module may be tested as a single entity by placing known electrical signals on the module circuit input ports while observing output phenomena on the output ports. The disadvantage in testing the module device from external input and output ports results because the number of test cases required grows exponentially with the complexity of the module. Signal masking effects make it difficult to exercise all submodules, and the settling time varies greatly between submodules. This is especially significant for analog circuits. Various techniques have been proposed to employ a "divide and conquer" strategy by partitioning the module into submodules in order that each submodule may be effectively isolated from the other submodules, and tested in its isolated condition to determine that each submodule works correctly. Circuit techniques are employed on the individual module for gaining access to the internal ports of each submodule which has no direct connection to any external I/O pad of the module. These techniques have been employed for digital and analog circuit modules, as well as for modules which are mixed analog digital circuits. One such technique, is described in an article entitled "Design for Testability for Mixed Analog/Digital ASICS" IEEE, 1988, Custom Integrated Circuits Conference, pages 16.5.1-16.5.4. This technique divides a mixed analog/digital ASIC chip into analog blocks and digital blocks, and uses multiplexers connected to internal ports between the blocks, permitting that internal port to be either controlled or observed from external I/O pads, depending on test mode control signals applied to the multiplexers. In a paper entitled "Design for Testability of Mixed Signal Integrated Circuits" by Kenneth Wagner and T.W. Williams, 1988 International Test Conference, paper 39.1 pages 823-828, there is described a technique for providing macrotests on an integrated circuit. The circuit module is partitioned into a number of submodules, or macros, which define their own specific function. In carrying out the partitioning of the circuit module, analog macro inputs are isolated and controlled so that macro outputs may be observed, via the use of analog multiplexers. The use of multiplexers requires an undesirable amount of module layout area overhead, as well as the necessity of running numerous additional wires from the multiplexer to various internal ports. There is also a limitation on the number of test configurations which may be conducted. SUMMARY OF THE INVENTION It is an object of the present invention to provide a system for partitioning a circuit module into individual testable submodules. It is a more specific object of the invention to partition a circuit module using a minimum number of switching elements to preserve layout area. It is yet another object of this invention to provide for a system for dynamically partitioning submodules within a circuit module in accordance with the sequence of data input to the device. These and other objects of the invention are provided by a device containing analog electronic circuitry and a circuit for testing said circuitry, said circuit comprising: a) at least one three-way analog switch, each switch comprising: i) an output connection for connecting to an input of a succeeding module; ii) a bidirectional input/output connection for connecting to a test bus connection; iii) an input connection for receiving input data for a preceding module; b) means for configuring the at least one three-way analog switch to assume either one of the following states: i) a first state in which the input connection is connected to the output connection, so that the input data reaches the module; ii) a second state in which the input/output connection is connected to the output connection, so that test data reaches the module; and iii) a third state in which the input connection is connected to the input/output connection, so that the input data reaches the test bus. Extra circuitry is added to the circuit module which will partition the module into individual submodules. In a first embodiment of the invention, the circuit is characterized in that each switch further comprises first and second transmission gates connected together at one end. Thus carrying out the invention, analog switches consisting of transmission gates are used to access the normal signal paths between submodules. The transmission gates are advantageously located near an internal input port of a submodule in the path of a signal line connecting the internal port to another internal output port of a second submodule. The transmission gates are additionally connected to a conductor of a test bus. Each of the submodules having ports which are to be asserted or observed are connected through a transmission gate to the adjacent submodule. A logic circuit is provided for setting the switch state so that identified internal ports are either connected to a test bus conductor, which will supply an asserted condition to the input port, or the conductor is connected to the input port without disturbing the normal paths through the module, permitting observation of the signal conditions on the input port. Extra input/output paths may be added to the module circuit substrate to accommodate shifting in data to the logic circuit, as well as provide direct access to one of the test bus conductors. Brief Description of the Figures Figure 1 illustrates the system for testing, implemented between two submodules 10 and 11, in accordance with a preferred embodiment. The analog switch is implemented using two transmission gates 14 and 15. Figure 2 illustrates a three-transmission gate implementation of the analog switch, having additional test capability over the embodiment of Figure 1. Figure 3 shows an embodiment of the invention for providing an observability only function between two circuit submodules. Figure 4 illustrates an embodiment providing controllability only of an internal port of a submodule. Figure 5 illustrates a specific embodiment of the invention to partition a circuit module into two submodules. Figure 6 illustrates a specific embodiment of the invention for implementing a test scheme on a fluorescent light ballast integrated circuit. Description of the Preferred Embodiment Figure 1 illustrates in general terms how two submodules 10 and 11 may be partitioned from a circuit module in accordance with a test system of the preferred embodiment. The submodules 10 and 11 may be analog circuit blocks which exist on an integrated circuit as a single circuit. Partitioning the integrated circuit into submodules 10 and 11 permits the blocks to be tested in individual sections. The submodules 10 and 11 generally have an input port 16 and an output port 13. Usually such submodules would have more than one input, as well as more than one output. The partitioning is accomplished with an analog switch 17 which is disposed adjacent an input port 16 of a module 10. The analog switch 17 is controlled from a pair of D flip-flops 19 and 20. The analog switch 17 comprises two transmission gates 14 and 15. In CMOS fabrication processes, these transmission gates may be implemented by parallelly connected N-channel and P-channel transistors having gate connections connected through an inverter. These known transmission gates may be operated so that 14 is closed, and 15 is open, thus isolating output port 13 from input port 16, while connecting input port 16 to the bus conductor 18. A test signal can then be asserted to input port 16 via test pad 21. By keeping both transmission gates 14 and 15 closed, a signal from output port 13 may be routed to a test bus conductor 18. In the normal operation state, the input port 16 and output port 13 are connected together. This is done by keeping 15 closed and 14 open. Thus, it can be seen that the analog switch 17 permits both observability of input port 16 as well as the ability to assert a control signal on input port 16. The configuration shown will permit verifying the integrity of the normal signal path 12. In so doing, the output signal from submodule 11 may be observed at test pad 21, or a desired input signal may be asserted on test pad 21, and the output port 13 of submodule 10 may be observed through a pad 23. Control over the analog switch 17 is provided by D flip-flops 19 and 20. The D flip-flops 19 and 20 provide on their Q outputs an enable signal to transmission gate 14 and transmission gate 15. Thus, by programming the flip-flops 19 and 20, it is possible to establish controllability over port 16 or observability over port 13. The data for establishing a test condition is applied to a pad 28 on the integrated circuit. A clock pulse is supplied to a pad 26, clocking in serial data applied to the input pad 28. Thus, by clocking in two bits of input data, the transmission gates 14 and 15 may be set in accordance with the following Table. Transmission Gates Function Mode 14 15 1 OFF ON Normal operation: output 13 of module 11 goes to input 16 of module 10 via 15 2 ON OFF Control input of module 10:external test signal goes to input 16 via 14 3 ON ON Observe output of module 11: output 13 goes to test pad via 15 and 14 4 OFF OFF Isolation: both output 13 and input 16 are isolated It should be noted that mode 3 in Table 1 demonstrates that when the output 13 is observed, this output is observed with the usual loading presented at input terminal 16. The total load experienced by output 16 is the parallel combination of the normal load at port 16, and the extra load due to test pad 21 and external measuring instruments. However, for the most part, this mode permits accurate monitoring of the signal from output port 13 of submodule 11 under normal conditions. The foregoing embodiment using two transmission gates provides a reasonable compromise between conserving layout area on the integrated circuit surface and testability. It is possible to employ a third transmission gate 24 as shown in Figure 2. The third transmission gate 24 will permit isolating the output node 13 during an observe function from the input port 16. The third transmission gate 24 can shunt the normal output signal directly to the test bus conductor 18, while transmission gates 14 and 15 are open, effectively isolating input port 16 from output port 13. However, it is considered that the foregoing two transmission gate embodiment is preferred to conserve on layout space for the integrated circuit substrate in the face of only marginal increases in testability when transmission gate 24 is employed. Other adaptations of the embodiment shown in Figure 1 can be seen in Figures 3 and 4. In the case of Figure 3, this simplified version of the testing scheme in accordance with the invention permit observing the condition on output port 13 under actual operating conditions. In the case of Figure 4, the input port 16 may be asserted with a control signal from external test pad 18 while output port 13 is isolated. It must be emphasized that the embodiments of Figures 1, 2 and 3 permit testing of the normal signal path 12 for each submodule. Therefore, once each individual submodule has been verified as testing successfully, the continuity of the interconnections between submodules is insured. The sequence for testing the submodules 10 and 11 can be shown in Table II below, demonstrating the state of flip-flops 19 and 20 can be set by shifting in data sequentially to carry out the five functions noted. The two flip-flops 19 and 20 comprise a two-bit shift register which may be readily programmed through the data input 28 to implement the four described functions. A clock pulse 26, associated with shift registers, is applied to shift in each of the serial data bits. Flip-Flops Transm.Gates Action 20 19 14 15 Function RESET 0 0 OFF ON Normal operation Shift-in 1 1 0 ON ON Observe output of module 11 Shift-in 1 1 1 ON OFF Control input of module 10 Shift-in 0 0 1 OFF OFF Isolation Shift-in 0 0 0 OFF ON Back to normal operation A reset pad 27 is shown connected to reset inputs of the flip-flops 19 and 20. The reset permits restoring a circuit to its normal functioning condition, wherein transmission gates 14 and 15 are rendered in the unswitched state, with transmission gate 15 being conductive and transmission gate 14 being non-conductive. The foregoing principles of partitioning circuits within an integrated circuit into submodules using three-way analog switches are shown implemented in Figure 5 in a more realistic configuration of an integrated circuit. Figure 5 illustrates the probable connections from a subsequent submodule 10 to a preceding submodule 11. A second output port 13a is located in the succeeding submodule 10, and is connected through three-way analog switch 30 to the preceding submodule 11. Analog switch 30 has an input connected to the test bus conductor 31. The second bus conductor 31 may be employed to assert a signal condition on input 16a, or for routing the output 13a of submodule 10 to the bus conductor 31, depending on the state of analog switch 30. The switching states for the analog switch 30 is controlled by a pair of D flip-flops 32 serially connected with the aforesaid described D flip-flops 19 and 20 which control analog switch 17. There is also shown analog multiplexers 37 and 39, which also consist of two transmission gates each. These analog multiplexers permit the reduction in the number of circuit pads needed for the integrated circuit. The analog multiplexer 37 permits the input pad 22, depending on the states of D flip-flop 33, to be connected either to the test bus 18 or an input 16 of submodule 11. Thus, the required input and output pads are kept to a minimum, consistent with good integrated circuit design. An in/out pad 21 is shown which may also be connected through an analog multiplexer 38. This permits the input/output pad 21 to access either test bus conductor 31, or a port of another submodule, which is not shown in this Figure. A D flip-flop 35 is used to control the switching state of analog multiplexer 38. More than one test bus conductor can be accessed from a test pad by using larger multiplexers. For example, a 4 to 1 multiplexer can access either one of three bus conductors, or a port of some submodule. In this case, two flip-flops are necessary to control the switching state of the multiplexer. By mapping more of the test functions to a single input/ output pin, it is possible to hold the extra pad requirements to a minimum. However, it should be noted that only one internal output port at a time may be observed when using such multiplexing techniques. Thus, it may be necessary to assign more than one test mode for a given submodule. Using the foregoing test scheme, area overhead on the substrate arises from analog switches, multiplexers, and any additional I/O pads located on the substrate. There is extra channel area required for routing the test bus and the control lines for the flip-flop. However, for many applications, these sources of area overhead are advantageous over other techniques for analog testing. In applying the foregoing principles, it is clear that the number of conductors N in the test bus is proportional to the sum of the number of internal input ports which must be controlled simultaneously for a given submodule, and the number of internal output ports M which must be simultaneously observed for the testing of a submodule. Finally, a specific implementation of the principles of the invention are shown in Figure 6 for an integrated circuit serving as a ballast chip in a fluorescent lighting system. This common integrated circuit is exemplary only of how integrated circuits in general may be partitioned to permit submodule testing. In this particular design, the ballast chip consists of four submodules. These include the driver module 69, control module 66, power supply module 63 and protection module 65. In establishing partitioning use is made of the fact that this integrated circuit already includes subdivisions into the four submodules. The three-way analog switches will be located to control selected internal ports of each of the four submodules. In establishing internal ports which will be controlled or observed, the following summary of Table III can be made: Module.Port From Type Function CONTRL.PWMOFF PRTCN.PWMOFF Logic PWM on/off CONTRL.PPOFF PRTCTN.PPOFF Logic Push-Pull circuit on/off CONTRL.FSWP PRTCTN.FSWP Analog Sweeps oscillation freq. PRTCTN.VBE1 SUPPLY.VBE1 Analog Decreases w/temperature PRTCTN.WIDTH CONTRL.WIDTH Logic Anti-capacitive load Given the number of internal ports to be controlled or observed, the total number of conductors in the test bus is found through the following Table: Testing Module Control Input Observe Output # Wire CONTRL {PWMOFF, PPOFF, FSWP} {WIDTH} 4 PRTCTN {VBE1, WIDTH} {PWMOFF,PPOFF, FSWP} 5 Alternatively, we can observe outputs one at a time: {VBE1, WIDTH} {PWMOFF} {VBE1, WIDTH} {PPOFF} 3 {VBE1, WIDTH} {FSWP} SUPPLY {VBE1} 1 This Table will establish for each module which inputs are to be asserted simultaneously and which output ports are to be observed. The number of required bus conductors for each of the tests of Table IV can be reduced if ports are observed sequentially. Thus, when testing protection module PRTCN, by observing only one of PWMOFF, PPOFF, FSWP at a time, the number of conductors may be reduced to three, two for asserting control signals on VBE1, WIDTH and one for observing at different times PWMOFF, PPOFF and FSWP. This increases testing time for submodule PRTCTN since ports are being sequentially observed. The number of conductors adds chip area overhead to the module. This consideration must be balanced with the need for conserving testing time. Table V illustrates one solution which is considered a good compromise between the number of bus conductors and testing time. As Table V indicates, wires 46, 47 and 48 are connected to control FSWP, PWMOFF, PPOFF, while wire 45 observes the width during mode number 1. The remaining entries of the Table show three additional test modes, wherein the four wires of the bus are used to implement the indicated "C" control signals on the control ports, while simultaneously observing the indicated "O" signals on the observe ports. Having now decided which conductors of the bus are to be routed to a given port during a test, using the analog switches of Figure 6, it is possible to map each of the ports set forth in Table V to either an output multiplexer 49 for observing signals, or an input multiplexer 43 for asserting the control signals for each of the tests set forth in Table V. Mode Testing Wire #45 Wire #46 Wire #47 Wire #48 1 CONTRL WIDTH (o) FSWP (c) PWMOFF (c) PPOFF (c) 2 PRTCTN WIDTH (c) VBE1 (c) PWMOFF (o) PPOFF (o) 3 PRTCTN WIDTH (c) VBE1 (c) FSWP (o) 4 SUPPLY VBE1 (o) A multiplexer 43 is shown which multiplexes normal input signals OC (corresponding to an over-current sensed condition), OV (corresponding to an over-voltage condition), and VLAMP (corresponding to the voltage across the fluorescent lamp). These pins may additionally be used during tests of the integrated circuit to apply any three required control signals to any three test bus conductors 45, 46 and 47. The test bus conductors 45, 46, 47 and 48 are connected to respective transmission gates 61 and 62, 57, 58 and 59 for either observing or asserting a control condition on an internal port of the submodules. As can be seen, analog switches 57, 58 and 59 can assert the required control signal input from circuit pads 40, 41 and 42 on each of the inputs FSWP, PWMOFF, PPOFF of the control submodule 66. This assert condition is established by the states of flip-flops 75 and 73, such as to make sure the switches assume a state for asserting these conditions. The multiplexer 49 will permit observing an internal port condition on any of test buses 46, 47 and 48. The multiplexer 49 will, under control of flip-flop 72, connect circuit pad 50 with bus conductor 46, circuit pad 51 with bus conductor 47, and circuit pad 52 with bus conductor pad 48. An analog multiplexer 55 will permit circuit pad 53 to be connected to conductor 45. A circuit pad 54 will permit observation of bus 45 under control of flip-flop 71. As will be obvious, the circuit pads 40, 41 and 42 and 50, 51, 52, 53 and 54 are normal signal input and output connections for the integrated circuit of Figure 6. The use of the multiplexers 43, 49, 55 and 56 will therefore maintain the circuit pinout at a minimum. Additional analog switches 61 and 62 are connected to isolate the PRTCTN 65 from the CONTRL 66 submodule and from the supply 63 submodule. These gates are enabled by D flip-flop circuit 74. It will be obvious that flip-flop circuit 74 provides a four-bit output and flip-flop circuit 73 provides a three-bit output for controlling the respective analog switches. As will be evident from Table V, by appropriately setting each of the flip-flop circuits 73 and 74, the internal ports WIDTH and VBE1 can either be controlled or observed via the test bus conductors 45 and 46. As was described with the earlier Figures, three additional pads are employed for clocking in test pattern data to the flip-flops 71 through 75. This includes data input pad 28, a clock pad 26 and a mode pad 27 for resetting the flip-flops. In the reset condition, the integrated circuit is set for its normal operation. Thus, there is described with respect to several examples, implementation of a test scheme for integrated circuits. The test scheme is useful for testing to provide isolation of defects within the integrated circuit. This is useful in that integrated circuits may tend to have the same submodule defective. By early location of a particular defective submodule, corrections to the manufacturing process may be implemented at an early stage. Additionally, potential savings in testing time are recognized. This occurs as in analog circuits in particular, a settling time is necessary for each part of the entire circuit. By partitioning the circuit, variable time steps for testing of different portions may be utilized, rather than waiting a test time equal to that for the module having the longest required settling time. The system permits different tests to be executed during different portions of the manufacturing process. For instance, it is common to do a wafer probe test, followed by a package test in integrated circuit manufacture. It is possible to set up distinctly different tests using the foregoing programmable feature of the D flip-flops.

Claims: A device containing analog electronic circuitry and a circuit for testing said circuitry, said circuit comprising a test bus having a plurality of conductors and: a) at least one three-way analog switch (14, 15), each switch comprising: i) an output connection (16) for connecting to an input of a succeeding module (10); ii) a bidirectional input/output connection for connecting to a test bus connection (18); iii) an input connection (12) for receiving input data from a preceding module (11); b) means for configuring (19, 20) the at least one three-way analog switch to assume either one of the following states: i) a first state in which the input connection is connected to the output connection, so that the input data reaches the succeeding module; ii) a second state in which the input/output connection is connected to the output connection, so that test data reaches the succeeding module; and iii) a third state in which the output of the preceding module is connected to the input of the succeeding module and to the input/output connection, so that the input data reaches the test bus. A device as claimed in Claim 1, wherein said switch comprises first and second transmission gates (14, 15) connected together at one end, thereby having three electrodes that form said input connection, said output connection, and said bidirectional input/output connection respectively. A device as claimed in Claim 2, wherein said switch further comprises a third transmission gate (24) coupled between the input connection of the switch and the input/output connection of the switch. A device as claimed in Claims 1, 2 or 3, wherein the means for configuring the at least one switch comprise a plurality of flipflops (19, 20), each associated with at least one said transmission gates, said flipflops being arranged in series to receive on a data-in conductor (25) a data bit pattern, the first and second transmission gates within a single switch being associated with separate ones among the flipflops. A device as claimed in Claim 4, wherein said flipflops are D-type flipflops that have a common clock input (26). A device as claimed in any of claims 1 to 5, having multiple said circuits interconnected between respective submodules of the circuitry. A device as claimed in any of Claims 1 to 6, having a plurality of test wires (46-48) in said test bus that are connected to the input/output connections of respective said switches. A device as claimed in Claim 7, wherein said test wires have mutually separate test pads (40-42). A device as claimed in any of Claims 1 to 8 and disposed on a single solid-state substrate. A device as claimed in an of Claims 1 to 9, and having an input analog demultiplexer (37) fed by a signal input pad (22) of the device and with outputs connected to a particular test bus conductor and to an input of a first circuitry module, respectively, said device having an output analog multiplexer (39) with inputs connected to an output of a second circuitry module and to said particular test bus conductor, respectively, and an output connected to a signal output pad (23) of the device, said first and second circuitry modules being connected to an input and an output, respectively, of an intermediary said switch. A device as claimed in Claim 10, and having respective said switches at all inputs and outputs of a particular submodule, thereby to allow full isolating of the submodule in question. A device as claimed in any of Claims 1 to 11 and comprising various test control flipflops, and having a control data input path for receiving control data for said test control flipflops. A device as claimed in Claim 12, and having a reset pad (27) for receiving a reset signal thereby to establish a normal configuration of said circuitry and terminating a test state. A device as claimed in Claim 12 or 13, wherein said flipflops are connected in series for a receiving test data configuration control pattern. A device as claimed in Claims 12, 13 or 14, wherein said flipflops are clocked via a common test clock pad (26).

Inventors: LEE NAI CHI, LEE, NAI CHI
Applicants: PHILIPS ELECTRONICS NV, PHILIPS ELECTRONICS N.V.
Application year: 1990
Main classification: G06F11
IPC codes: G06F11, H01L21, G01R31, H01L27