Timing Driven Placement Reconfiguration for Fault Tolerance and Yield Enhancement in FPGAs

  • Authors:
  • Anmol Mathur;C. L. Liu

  • Affiliations:
  • Silicon Graphics Inc., 2011 N. Shoreline Blvd., Mountain View, CA;Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL

  • Venue:
  • EDTC '96 Proceedings of the 1996 European conference on Design and Test
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

A Field Programmable Gate Array (FPGA) consists of an array of identical configurable logic blocks (CLBs), each capable of implementing any boolean function with a bounded number of inputs. Such architectural regularity provides an inherent redundancy which can be exploited for fault tolerance and yield enhancement. In this paper we examine the problem of reconfiguring the placement of a circuit on an FPGA to tolerate a given fault pattern in the array of CLBs. The primary objective of the placement reconfiguration is to minimize timing degradation. The secondary objective is to minimize the amount of re-programming (both in the CLBs and in the routing switches) in the reconfiguration process. The concept of a slack neighborhood graph is introduced as a general tool for timing driven reconfiguration with a bounded increase in critical path delay. Our algorithm simultaneously achieves both provably low timing degradation and low reprogramming cost. Slack neighborhood graphs are of independent interest due to their possible applications to the timing driven placement problem. For a wide range of fault probabilities and circuits our algorithm successfully reconfigures the placement with less than 1% degradation in the circuit delay.