You are on page 1of 4

A built-in self-test (BIST) or built-in test (BIT) is a mechanism that permits a machine to test itself.

Engineers design BISTs to meet requirements such as: high reliability lower repair cycle times

or constraints such as: limited technician accessibility cost of testing during manufacture

BIST is commonplace in weapons, avionics, medical devices, automotive electronics, complex machinery of all types, unattended machinery of all types, and integrated circuits.

Weapons
One of the first computer-controlled BIST systems was in the U.S.'s Minuteman Missile. Using an internal computer to control the testing reduced the weight of cables and connectors for testing. The Minuteman was one of the first major weapons systems to field a permanently installed computer-controlled self-test.

Avionics
Almost all avionics now incorporate BIST. In avionics, the purpose is to isolate failing line-replaceable units, which are then removed and repaired elsewhere, usually in depots or at the manufacturer. Commercial aircraft only make money when they fly, so they use BIST to minimize the time on the ground needed for repair and to increase the level of safety of the system which contains BIST. Similar arguments apply to military aircraft. When BIST is used in flight, a fault causes the system to switch to an alternative mode or equipment that still operates. Critical flight equipment is normally duplicated, or redundant. Less critical flight equipment, such as entertainment systems, might have a "limp mode" that provides some functions.

Safety-critical devices
Medical devices test themselves to assure their continued safety. Normally there are two tests. A power-on self-test will perform a comprehensive test. Then, a periodic test will assure that the device has not become unsafe since the poweron self test. Safety-critical devices normally define a "safety interval," a period of time too short for injury to occur. The self test of the most critical functions normally is completed at least once per safety interval. The periodic test is normally a subset of the power-on self test.

Automotive use
Automotive tests itself to enhance safety and reliability. For example, most vehicles with antilock brakes test them once per safety interval. If the antilock brake system has a broken wire or other fault, the brake system reverts to operating as a normal brake system. Most automotive engine controllers incorporate a "limp mode" for each sensor, so that the engine will continue to operate if the sensor or its wiring fails. Another, more trivial example of a limp mode is that some cars test door switches, and automatically turn lights on using seat-belt occupancy sensors if the door switches fail.

Computers
The typical personal computer tests itself at start-up (called POST) because it's a very complex piece of machinery. Since it includes a computer, a computerized self-test was an obvious, inexpensive feature. Most modern computers, including embedded systems, have self-tests of their computer, memory[1] and software.

Unattended machinery
Unattended machinery performs self-tests to discover whether it needs maintenance or repair. Typical tests are for temperature, humidity, bad communications, burglars, or a bad power supply. For example, power systems or batteries are often under stress, and can easily overheat or fail. So, they are often tested. Often the communication test is a critical item in a remote system. One of the most common, and unsung unattended system is the humble telephone concentrator box. This contains complex electronics to accumulate telephone lines or data and route it to a central switch. Telephone concentrators test for communications continuously, by verifying the presence of periodic data patterns called frames (See SONET). Frames repeat about 8,000 times per second. Remote systems often have tests to loop-back the communications locally, to test transmitter and receiver, and remotely, to test the communication link without using the computer or software at the remote unit. Where electronic loop-backs are absent, the software usually provides the facility. For example, IP defines a local address which is a software loopback (IP-Address 127.0.0.1, usually locally mapped to name "localhost"). Many remote systems have automatic reset features to restart their remote computers. These can be triggered by lack of communications, improper software operation or other critical events. Satellites have automatic reset, and add automatic restart systems for power and attitude control, as well.

Integrated circuits
In integrated circuits, BIST is used to make faster, less-expensive manufacturing tests. The IC has a function that verifies all or a portion of the internal functionality of the IC. In some cases, this is valuable to customers, as well. For example, a BIST mechanism is provided in advanced fieldbus systems to verify functionality. At a high level this can be viewed similar to the PC BIOS's power-on self-test (POST) that performs a self-test of the RAM and buses on power-up. The main purpose of BIST is to reduce the complexity, and thereby decrease the cost and reduce reliance upon external (pattern-programmed) test equipment. BIST reduces cost in two ways: (1) reduces test-cycle duration; and (2) reduces the complexity of the test/probe setup, by reducing the number of I/O signals that must be driven/examined under tester control. Both lead to a reduction in hourly charges for automated test equipment (ATE) service. The BIST name and concept originated with the idea of including a pseudo-random (PSR) number generator and CRC on the IC. If all the registers that hold state in an IC are on one or more internal scan chains, then the function of the registers and the combinational logic between them will generate a unique CRC signature over a large enough sample of random inputs. So all an IC need do is store the expected CRC signature and test for it after a large enough sample set from the PSR. The CRC comparison with expected signature or the actual resultant CRC signature is typically accessed via the JTAG IEEE 1149.1 standard. There are several specialized versions of BIST which are differentiated according to what they do or how they are implemented:

Programmable built-in self-test (pBIST) Memory built-in self-test (mBIST) - e.g. with the Marinescu algorithm Logic built-in self-test Analog and mixed-signal built-in self-test (AMBIST) Continuous built-in self-test (CBIST) Periodic built-in self-test Interrupt-driven built-in self-test (IBIST) or user-initiated built-in self-test Power-up built-in self-test (PupBIST) Automatic built-in self-test (ABIST)

Built-in Self Test, or BIST, is the technique of designing additional hardware and software features into integrated circuits to allow them to perform self-testing, i.e., testing of their own operation (functionally, parametrically, or both) using their own circuits, thereby reducing dependence on an external automated test equipment (ATE). BIST is a Design-for-Testability (DFT) technique, because it makes the electrical testing of a chip easier, faster, more efficient, and less costly. The concept of BIST is applicable to just about any kind of circuit, so its implementation can vary as widely as the product diversity that it caters to. As an example, a common BIST approach for DRAM's includes the incorporation onto the chip of additional circuits for pattern generation, timing, mode selection, and go-/no-go diagnostic tests. The main drivers for the widespread development of BIST techniques are the fast-rising costs of ATE testing and the growing complexity of integrated circuits. It is now common to see complex devices that have functionally diverse blocks built on different technologies inside them. Such complex devices require high-end mixed-signal testers that possess special digital and analog testing capabilities. BIST can be used to perform these special tests with additional on-chip test circuits, eliminating the need to acquire such high-end testers. BIST is also the solution to the testing of critical circuits that have no direct connections to external pins, such as embedded memories used internally by the devices. In the near future, even the most advanced tester may no longer be adequate for the fastest chip, a situation wherein self-testing may be the best solution for. Advantages of implementing BIST include: 1) lower cost of test, since the need for external electrical testing using an ATE will be reduced, if not eliminated; 2) better fault coverage, since special test structures can be incorporated onto the chips; 3) shorter test times if the BIST can be designed to test more structures in parallel; 4) easier customer support; and 5) capability to perform tests outside the production electrical testing environment. The last advantage mentioned can actually allow the consumers themselves to test the chips prior to mounting or even after these are in the application boards. Disadvantages of implementing BIST include: 1) additional silicon area and fab processing requirements for the BIST circuits; 2) reduced access times; 3) additional pin (and possibly bigger package size) requirements, since the BIST circuitry need a way to interface with the outside world to be effective; and 4) possible issues with the correctness of BIST results, since the on-chip testing hardware itself can fail. Issues that need to be considered when implementing BIST are: 1) faults to be covered by the BIST and how these will be tested for; 2) how much chip area will be occupied by the BIST circuits; 3) external supply and excitation requirements of the BIST; 4) test time and effectiveness of the BIST; 5) flexibility and changeability of the BIST (i.e., can the BIST be reprogrammed through an on-chip ROM?); 6) how the BIST will impact theproduction electrical test processes that are already in place. BIST techniques are classified in a number of ways, but two common classification of BIST are the Logic BIST (LBIST) and the Memory BIST (MBIST). LBIST, which is designed for testing random logic, typically employs a pseudo-random pattern generator(PRPG) to generate input patterns that are applied to the device's internal scan chain, and a multiple input signature register (MISR) for obtaining the response of the device to these test input patterns. An incorrect MISR output indicates a defect in the device.

MBIST, as its name implies, is used specifically for testing memories. It typically consists of test circuits that apply, read, and compare test patterns designed to expose defects in the memory device. There now exists a variety of industry-standard MBIST algorithms, such as the "March" algorithm, the checkerboard algorithm, and the varied pattern background algorithm. One may also encounter the acronym "ABIST", which stands for two totally different BIST techniques: the Array BIST, which is a form of MBIST used for embedded memories, and the Analog BIST, which is a BIST approach for analog circuits. BIST is fast becoming an alternative solution to the rising costs of external electrical testing and increasing complexity of devices. This approach will find greater deployment in a wider variety of circumstances as more and better BIST techniques are developed. This does not mean, however, that BIST will eventually replace external electrical testing altogether. Still, BIST proponents are optimistic that BIST will someday be the preferred mode of testing, instead of being merely an alternative to external ATE testing as it is today.

Because of the increasing complexity of digital circuits, it is becoming more and more difficult to determine whether a circuit is correct or faulty. Faults in a circuit can hardly be detected just by looking at the outside what the reaction of the circuit is to a certain input sequence. Fault tolerant computing can be a solution. Built-InSelf Test (BIST) techniques can also be used to verify whether the circuit is correct, not only during normal operation, but also during the early development periods. The result of using BIST techniques is a considerable reduction of time between design and the final product, and a reduction of maintenance time and cost. BIST is a test method of which the circuit can separate itself from the surrounding logic, and perform a test. After the self test, the circuit reports to the surrounding logic whether it is correct. The advantage of BIST is that it is a universal and systematic test method with a solid mathematical foundation. Based on the stuck-at fault model, it is possible to compute the fault coverage, which is the number of faults detected by the BIST method. The theory of BIST is described. A circuit is divided into combinational and sequential parts, which are tested separately. The sequential parts are tested with a so-called scan-path test. Alternative test methods to test the combinational parts are described. The method to compute the number of patterns needed to detect all faults with a certain probability as function of complexity of the circuit is given. The theory of CRC signature analyzers, and the probability of masking are also described and illustrated with some examples, which can directly be used in practice.

You might also like