A system for testing an integrated circuit, and particularly a gate array,
is disclosed which includes, prior to coupling the array to form a
user-designed circuit, predesigned logic that enables testing of the
user-designed circuit. The predesigned logic allows logic blocks in the
array to operate in "freeze" mode or to operate in normal mode, where
normal mode is defined by the user-designed circuit. Much of the same
circuitry in the logic blocks is, in fact, used in both modes of
operation, thus minimizing circuitry added due to test. When the logic
blocks are selected to be frozen, the logic blocks behave as a series of
daisy-chained master-slave flip-flops. Stimulus data is shifted into the
array and captured data is shifted out of the array through the
daisy-chained flip-flops. Nonetheless, when data is shifted into and out
of the daisy-chained flip-flops, the master latch and the slave latch of
each flip-flop can be set to receive independent values and the data
captured by each of the master and slave latches can be independently
shifted out and analyzed. Although when frozen, the logic blocks behave as
daisy-chained flip-flops, use of the logic blocks for testing purposes
does not depend upon placement of sequential elements in the user-designed
circuit in the logic blocks. In other words, in normal mode, a logic block
can implement combinational, sequential, or other functions and still
later be used to drive out stimulus values or capture results. Moreover,
each logic block is further equipped for addressable mode control,
allowing selected logic blocks to be exercised in isolation once stimulus
data is shifted in, simplifying test generation and improving fault
coverage. Using a logic block in accordance with the invention results in
a high level of fault coverage, while placing few limitations on the
user's circuit design.
Ένα σύστημα για ένα ολοκληρωμένο κύκλωμα, και ιδιαίτερα μια σειρά πυλών, αποκαλύπτονται που περιλαμβάνει, πριν από την ένωση της σειράς για να διαμορφώσουν ένα χρήστης-σχεδιασμένο κύκλωμα, η λογική που επιτρέπει τη δοκιμή του χρήστης-σχεδιασμένου κυκλώματος. Η λογική επιτρέπει στους φραγμούς λογικής στη σειρά για να λειτουργήσει στον τρόπο "παγώματοσ" ή για να λειτουργήσει στον κανονικό τρόπο, όπου ο κανονικός τρόπος καθορίζεται από το χρήστης-σχεδιασμένο κύκλωμα. Ένα μεγάλο μέρος των ίδιων στοιχείων κυκλώματος στους φραγμούς λογικής, στην πραγματικότητα, χρησιμοποιείται και στους δύο τρόπους λειτουργίας, ελαχιστοποιώντας κατά συνέπεια τα στοιχεία κυκλώματος που προστίθενται λόγω στη δοκιμή. Όταν οι φραγμοί λογικής επιλέγονται για να παγώσουν, οι φραγμοί λογικής συμπεριφέρονται ως σειρά μαργαρίτα-αλυσοδεμένα master-slave flip-flops. Το στοιχείο ερεθισμάτων μετατοπίζεται στη σειρά και το συλλήφθείτ στοιχείο μετατοπίζεται από τη σειρά μέσω μαργαρίτα-αλυσοδεμένα flip-flops. Εν τούτοις, όταν μετατοπίζεται το στοιχείο σε και από μαργαρίτα-αλυσοδεμένα flip-flops, ο κύριος σύρτης και ο σύρτης σκλάβων κάθε flip-flop μπορούν να τεθούν ως στόχος να λάβουν τις ανεξάρτητες τιμές και συλλοίδα δεδομένων από κάθε έναν από τους σύρτες κυρίου και σκλάβων μπορεί να μετατοπιστεί ανεξάρτητα έξω και να αναλυθεί. Αν και όταν παγώνουν, οι φραγμοί λογικής συμπεριφέρονται ως μαργαρίτα-αλυσοδεμένα flip-flops, η χρήση των φραγμών λογικής για εξεταστικούς λόγους δεν εξαρτάται από την τοποθέτηση των διαδοχικών στοιχείων στο χρήστης-σχεδιασμένο κύκλωμα στους φραγμούς λογικής. Με άλλα λόγια, στον κανονικό τρόπο, ένας φραγμός λογικής μπορεί να εφαρμόσει τις συνδυαστικές, διαδοχικές, ή άλλες λειτουργίες και ακόμα αργότερα να χρησιμοποιηθεί για να διώξει τις τιμές ερεθισμάτων ή να συλλάβει τα αποτελέσματα. Επιπλέον, κάθε φραγμός λογικής είναι περαιτέρω εξοπλισμένος για τον προσπελάσιμο έλεγχο τρόπου, που επιτρέπει στους επιλεγμένους φραγμούς λογικής για να ασκηθεί μεμονωμένα μόλις μετατοπιστεί μέσα το στοιχείο ερεθισμάτων, απλοποιώντας την παραγωγή δοκιμής και βελτιώνοντας την κάλυψη ελαττωμάτων. Η χρησιμοποίηση ενός φραγμού λογικής σύμφωνα με την εφεύρεση οδηγεί σε ένα υψηλό επίπεδο κάλυψης ελαττωμάτων, τοποθετώντας λίγους περιορισμούς στο σχέδιο κυκλωμάτων του χρήστη.