Computer-aided design and analysis of circuits and semiconductor – Nanotechnology related integrated circuit design
Reexamination Certificate
2001-09-07
2004-05-04
Smith, Matthew (Department: 2825)
Computer-aided design and analysis of circuits and semiconductor
Nanotechnology related integrated circuit design
C716S030000
Reexamination Certificate
active
06732348
ABSTRACT:
FIELD OF THE INVENTION
This invention relates to faults in integrated circuits, and more specifically to a method for locating faults in programmable logic devices.
BACKGROUND OF THE INVENTION
An important tool for semiconductor yield enhancement is fault localization. Conventional techniques of fault localization are applicable mainly to memory elements because they rely on a direct correspondence of memory address to a specific cell. It should be noted that using memory elements for failure analysis purpose is not limited to stand alone memory devices because many microprocessor or ASIC logic parts have some kind of on chip embedded or cache memory.
The memory cells in most semiconductor devices are built using two to three levels of metal. On the other hand, modern process technologies have more than eight layers of metals. Thus, memory yields are relatively insensitive to defects in higher level metals, thus cannot be relied on for yield enhancement for those levels.
One type of memory rich devices that use many levels of metal is field programmable gate arrays (FPGAs). A FPGA typically includes an array of configurable logic blocks (CLBs) surrounded by a ring of programmable input/output blocks (IOBs). The CLBs and IOBs are interconnected by programmable line segments (such as single length, intermediate length and long interconnect lines) that are controlled by a plurality of programmable interconnection points (PIPs). The CLBs, IOBs, and the PIPs are typically programmed by loading a stream of configuration data (bitstream) into internal configuration memory cells that define how the CLBs, IOBs, and PIPs are configured. The configuration data is typically organized into frames. The configuration bitstream may be read from an external memory (e.g., an external PROM). The collective states of the individual memory cells then determine the function of the FPGA. In addition to configuration memory, many FPGAs also have embedded memories (e.g., LUT RAMs and BLOCK RAMs).
In FPGA, the interconnect resources use all layers of metal. Unlike memories where fault localization is a matter of translating the faulty logical address to its corresponding physical location, interconnect faults do not have such direct correspondence. Thus, it is important to develop a new fault localization technique that can locate faults in multiple metal layers.
SUMMARY OF THE INVENTION
The present invention involves a method for locating faults in a programmable logic device. The programmable logic device contains a plurality of nets, and each net contains a plurality of line segments connected by PIPs. A faulty net (among the plurality of nets) is first identified using conventional methods. In order to locate a fault in a net, a new design is constructed by replacing one of the plurality of line segments or PIPs with an alternative line segment/PIP. The new design is tested to determine if the fault has been removed as a result of the replacement. If the fault is not removed, the previous line segment/PIP is restored, and another line segment/PIP is replaced. This process is repeated until a design without fault is found. The location of the fault should correspond to this line segment/PIP.
This method can be used to locate both open and short faults. In one embodiment of locating short faults, the line segments of two suspected nets may be shorted to each other. The above mentioned new designs are constructed and tested for each net. This allows the faulty line segment of each net to be individually located.
The above summary of the present invention is not intended to describe each disclosed embodiment of the present invention. The figures and detailed description that follow provide additional example embodiments and aspects of the present invention.
REFERENCES:
patent: 5050091 (1991-09-01), Rubin
patent: 5105425 (1992-04-01), Brewer
patent: 5161157 (1992-11-01), Owen et al.
patent: 5349248 (1994-09-01), Parlour et al.
patent: 5498979 (1996-03-01), Parlour et al.
patent: 5508636 (1996-04-01), Mange et al.
patent: 5777887 (1998-07-01), Marple et al.
patent: 6003150 (1999-12-01), Stroud et al.
patent: 6108806 (2000-08-01), Abramovici et al.
patent: 6167558 (2000-12-01), Trimberger
patent: 6181614 (2001-01-01), Aipperspach et al.
patent: 6209118 (2001-03-01), LaBerge
patent: 6237131 (2001-05-01), MacArthur et al.
patent: 6344755 (2002-02-01), Reddy et al.
patent: 6408402 (2002-06-01), Norman
patent: 6470485 (2002-10-01), Cote et al.
patent: 6512708 (2003-01-01), Hsuan et al.
patent: 6530071 (2003-03-01), Guccione et al.
patent: 6532579 (2003-03-01), Sato et al.
patent: 6539497 (2003-03-01), Swoboda et al.
patent: 6564367 (2003-05-01), Fujii et al.
patent: 2002/0157071 (2002-10-01), Schiefele et al.
patent: 2002/0166104 (2002-11-01), Wu et al.
patent: 2300950 (1996-11-01), None
patent: 10233677 (1998-09-01), None
Kelly et al., “Defect tolerant SRAM based FPGAs”, Proceedings of IEEE International Conference on Computer Design: VLSI in Computers and Process, Oct. 10, 1994, pp. 479-482.*
Feng et al., “Reconfiguration of one-time programmable FPGAs with faulty logic resources”, International Symposium on Defect and Falt Tolerance in VLSI Systems, Nov. 1, 1999, pp. 368-376.*
Roy et al., “On Routability for FPGAs under Faulty Conditions”, IEEE Transactions on Computers, vol. 44, No. 11, Nov. 1995, pp. 1296-1305.*
Lach et al., “Enhanced FPGA Reliability Through Efficient Run-Time Fault Reconfiguration”, IEEE Transactions on Reliability, vol. 49, No. 3, Sep. 2000, pp. 296-304.*
Howard et al., “The Yield Enhancement of Field-Programmable Gate Arrays”, IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 2, No. 1, Mar. 1994, pp. 115-123.*
Hanchek et al., “Design methodologies for tolerating cell interconnect faults in FPGAs”, 1996 IEEE International Conference on Computer Design: VLSI in Computers and Process, Oct. 7, 1996, pp. 326-331.*
Mathur et al., “Timing driven placement reconfiguration for fault tolerance and yield enhancement in FPGAs”, Proceedings of European Design and Test Conference, Mar. 11, 1996, pp. 165-169.*
Chapman, “FPGA design for decimeter scale integration (DMSI)”, 1998 IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems, Nov. 2, 1998, pp. 64-72.*
Lach et al., “Algorithms for efficient runtime fault recovery on diverse FPGA architectures”, International Symposium on Defect and Fault Tolerance in VLSI Systems, Nov. 1, 1999, pp. 386-394.
Tahoori Mehdi Baradaran
Toutounchi Shahin
Chan H. C.
Kik Phallaka
Xilinx , Inc.
LandOfFree
Method for locating faults in a programmable logic device does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method for locating faults in a programmable logic device, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method for locating faults in a programmable logic device will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3197927