Table of Contents
Θεμελιώδη της Boolean Algebra σε ψηφιακό σχεδιασμό
Η Boolean άλγεβρα, που εισήχθη από τον George Boole τον 19ο αιώνα, παρέχει το μαθηματικό θεμέλιο για τον ψηφιακό σχεδιασμό λογικής. Λειτουργεί σε δυαδικές μεταβλητές που μπορούν να λάβουν μόνο δύο τιμές: 0] (ψευδής, χαμηλής τάσης) και 1 (αληθινή, υψηλή τάση). Οι τρεις βασικές λειτουργίες — AND] (σύνδεσμος, που αντιπροσωπεύεται από · ή ⁇ ), OR (διαφορά, που αντιπροσωπεύεται από + ή ⁇ ), και NOT (αρνησία, που αντιπροσωπεύεται από ένα μπαρ ή ⁇ ) — ένα σύνολο από αξίες και θεματολόγια που περιλαμβάνουν την κοινοπραξία, ως εταιρία, ως λειτουργικότητα, η λειτουργικότητα, η οποία επιτρέπει την έκφραση των λειτουργικών κυκλωμάτων [αρίων] [αρίων] [η οποία είναι η ανάγκη για τη χρήση των
Ο ρόλος της παραγωγής προτύπων δοκιμής στην ψηφιακή επαλήθευση κυκλωμάτων
Μετά την κατασκευή ενός ψηφιακού κυκλώματος, πρέπει να δοκιμαστεί για να εξασφαλιστούν σωματικά ελαττώματα — όπως σορτσάκια, ανοίγματα ή τρανζίστορ κολλημένα σε σφάλματα — να συμβιβαστεί η λειτουργικότητά του. Λογική παραγωγή προτύπων δοκιμών είναι η διαδικασία δημιουργίας ενός συνόλου διανυσματικών εισόδου που, όταν εφαρμόζεται στο κύκλωμα, παράγουν εξόδους που μπορούν να συγκριθούν με τις αναμενόμενες τιμές. Ο στόχος είναι να επιτευχθεί υψηλή κάλυψη ελαττωμάτων με ελάχιστο μήκος δοκιμών. Η πρώιμη παραγωγή χειρωνακτικής δοκιμής ήταν μη πρακτική για σύνθετα σχέδια, έτσι ώστε να αναπτυχθούν αυτοματοποιημένα εργαλεία (ATPG — Αυτόματη παραγωγή προτύπων δοκιμών). Η boolean άλγεβρα είναι η ραχοκοκαλιά αυτών των εργαλείων επειδή παρέχει έναν τυπικό, αλγοριθμικό τρόπο να αντληθούν πρότυπα δοκιμών με συλλογισμό σχετικά με τη λογική συμπεριφορά του κυκλώματος υπό συνθήκες βλάβης.
Μοντέλα βλάβης και η δυαδική τους αναπαράσταση
Το πιο κοινό μοντέλο σφάλματος είναι το stackstuck-at fability[[LFT:1]], όπου μια γραμμή σήματος είναι μόνιμα κολλημένη στη λογική 0 ή στη λογική 1. Για ένα δεδομένο κύκλωμα, ένα κολλημένο-at fabit μετατρέπει την αρχική λειτουργία Boolean σε μια ελαττωματική λειτουργία. Boolean άλγεβρα επιτρέπει στους μηχανικούς δοκιμής να υπολογίσουν την κατάσταση κάτω από την οποία διαφέρουν οι σωστές και ελαττωματικές εξόδους — αυτή η διαφορά ονομάζεται [ fatult effect[[[LFT:3]]]. Για παράδειγμα, αν ένα δίχτυ [[LFT:2]] είναι κολλημένο στο 1, το ελαττωματικό κύκλωμα συμπεριφέρεται σαν [ ανεξάρτητα από την προβλεπόμενη λογική. Το πρότυπο δοκιμής πρέπει να ευαισθητοποιήσει μια διαδρομή από το σημείο βλάβης σε μια κύρια έξοδο, ενώ ελέγχει τις απαραίτητες τιμές node.
Άλλα μοντέλα ελαττωμάτων περιλαμβάνουν τα ρήγματα γεφύρωσης[ (σύντομα κυκλώματα μεταξύ δύο διχτυών) και τα ελαττώματα καθυστέρησης], τα οποία και τα δύο μπορούν να εκφραστούν χρησιμοποιώντας τη Boolean άλγεβρα κατά την μοντελοποίηση της ελαττωματικής συμπεριφοράς ως μια τροποποιημένη λογική λειτουργία. Το Boolean Alfense πλαίσιο κλίμακες καλά: σύνθετα αποτελέσματα ελαττωμάτων λαμβάνονται με την προσθήκη περιορισμών στο πρόβλημα της γενιάς δοκιμών.
Συστηματικά βήματα για την αυτοματοποίηση της παραγωγής προτύπων δοκιμής χρησιμοποιώντας Boolean Algebra
Σύγχρονοι αλγόριθμοι ATPG βασίζονται στη Boolean άλγεβρα σε κάθε βήμα. Η γενική ροή μπορεί να σπάσει σε τέσσερις φάσεις, αλλά πίσω από κάθε βρίσκεται αλγεβρική λογική.
1. Μοντελοποίηση του κυκλώματος ως Boolean εκφράσεις
Για μια απλή πύλη και με εισόδους και και έξοδο , η έκφραση είναι [. Για έναν εσωτερικό κόμβο που ανεμιστήρες έξω σε πολλαπλές πύλες, κάθε κλάδος fanout φέρει την ίδια λογική τιμή εκτός αν υπάρχει κάποιο σφάλμα. Το εργαλείο ATPG δημιουργεί ένα ]Boolean διαφορά μοντέλο: το μέρος παράγωγο της εξόδου σε σχέση με ένα σήμα, το οποίο δείχνει αν μια αλλαγή στο σήμα επηρεάζει την έξοδο. Η διαφορά Boolean υπολογίζεται χρησιμοποιώντας XOR και AND λειτουργίες, επιτρέποντας ανάλυση διάδοσης ελαττωμάτων.
2. Απλοποίηση εκφράσεων με Boolean Algebra
Πριν από τη δημιουργία προτύπων δοκιμών, οι Boolean εκφράσεις του κυκλώματος συχνά απλοποιούνται για τη μείωση της πλεονασματικής ικανότητας. Αυτό δεν είναι μόνο για τη βελτιστοποίηση υλικού - απλοποιημένες εκφράσεις κάνουν επίσης το πρόβλημα της παραγωγής δοκιμής ευκολότερο να λύσει. Τεχνικές όπως Karnaugh χάρτες και Quine-McCluskey αλγόριθμος[ χρησιμοποιούνται για την ελαχιστοποίηση του αθροίσματος των προϊόντων ή των μορφών προϊόντων-των . Για παράδειγμα, η έκφραση απλοποιεί . Λιγότεροι όροι προϊόντος σημαίνουν λιγότερους κύβους δοκιμών για την κάλυψη όλων των ελαττωμάτων.
3. Απορρίπτοντας διανυσματικά τεστ μέσω της δυαδικής λογικής
Μόλις το κύκλωμα μοντελοποιηθεί και απλοποιηθεί, το εργαλείο ATPG διαμορφώνει τη γενιά δοκιμής ως πρόβλημα Ικανοποιησιμότητα (SAT) ή χρησιμοποιεί αλγόριθμους όπως ο D-algorithm, PODEM (Path-Oried Decision Making), ή FAN (Fanout-Oriiented). Όλες αυτές οι μέθοδοι βασίζονται στη Boolean άλγεβρα για να εκχωρήσουν τιμές σε πρωτογενείς εισροές, έτσι ώστε το φαινόμενο σφάλματος να πολλαπλασιάζεται σε μια παρατηρήσιμη έξοδο. Για παράδειγμα, ο D-algorithm εισάγει τη σημειογραφία D (D = 1 σε καλό κύκλωμα, 0 σε ελαττωματικό κύκλωμα, D ⁇ = 0 καλό, 1 ελαττωματικό).
Παράδειγμα: Κόλλησε-at-0 βλάβη σε έξοδο πύλης NAND
Εξετάστε μια πύλη NAND δύο εισόδου με είσοδο και , έξοδος . Καλό κύκλωμα: . Σφάλμα κολλημένη στο 0: ελαττωματικό κύκλωμα πάντα εξόδους 0. Για να ανιχνεύσουμε αυτό το σφάλμα, χρειαζόμαστε εισόδους που να κάνουν την καλή έξοδο 1 (οπότε η ελαττωματική έξοδος διαφέρει). Αυτό απαιτεί (δηλαδή, τουλάχιστον μία είσοδος είναι 0) και επίσης ότι η ελαττωματική τιμή 0 διαδίδεται σε μια κύρια έξοδο. Χρήση της Boolean άλγεβρας: συνθήκη δοκιμής . Έτσι, κάθε συνδυασμός εισόδου όπου λειτουργεί — δηλαδή ή ή .
4. Αυτοματοποίηση της παραγωγής προτύπων και συμπίεσης
Μετά την εξαγωγή μεμονωμένων διανυσματικών δοκιμών για κάθε σφάλμα, το εργαλείο ATPG χρησιμοποιεί [[LPT:0]] προσομοίωση σφαλμάτων[[LFT:1]] για να αξιολογήσει ποια διανυσματικά όργανα καλύπτουν επιπλέον ελαττώματα. Η δυαδική άλγεβρα παίζει ξανά ρόλο: η προσομοίωση ελαττωμάτων επιταχύνεται αξιολογώντας τις Boolean λειτουργίες σε πολλά μοτίβα εισόδου ταυτόχρονα χρησιμοποιώντας λειτουργίες bitwise. Εργαλεία όπως [[LFT:2]]Οι Synophys Tetramax[[LFT:3]] ή [[LFT:4] Οι Mentor Graphics FastScan[[LFT:5]] εφαρμόζουν αυτές τις τεχνικές. Το τελικό σύνολο των προτύπων συμπιέζεται — αφαιρώντας περιττά διανυσματικά διανυσματικά όργανα — χρησιμοποιώντας τη Boolean συλλογιστική για να ανιχνεύσει ότι ένα υποσύνολο προτύπων εξακολουθεί να εξοργίζει και να διαδίδει όλα τα σφάλματα στόχου.
Οφέλη της Boolean Algebra σε δοκιμή Αυτοματισμού Μοτίβο
- Μειωμένο μέγεθος σετ δοκιμών: Η δυαδική απλοποίηση εξαλείφει τους περιττούς κύβους δοκιμών, οδηγώντας σε λιγότερους κύκλους δοκιμών και χαμηλότερο κόστος δοκιμής.
- Υψηλή κάλυψη σφαλμάτων: Οι επίσημες αλγεβρικές μέθοδοι εγγυώνται ότι δεν λείπουν μη ανιχνεύσιμα ελαττώματα (υπό την προϋπόθεση ότι το μοντέλο σφάλματος είναι ακριβές).
- Αλγοριθμική Απόδοση: Οι λύτες SAT και τα BDD (Διγράμματα Binary Decision Diagrams) που είναι χτισμένα πάνω στη Boolean άλγεβρα μπορούν να χειριστούν κυκλώματα με εκατομμύρια πύλες.
- Ευθυντότητα: Η δυαδική άλγεβρα υποστηρίζει πολλαπλά μοντέλα ελαττωμάτων και ιεραρχική γενιά δοκιμών χωρίς να αλλάζει ριζικά τα υποκείμενα μαθηματικά.
- Αυτοματισμός εργαλείων: Τα εργαλεία ATPG μπορούν να τρέξουν αφύλακτα, δημιουργώντας πρότυπα δοκιμών σε λεπτά που θα χρειαστούν εβδομάδες στους ανθρώπινους μηχανικούς.
Προκλήσεις και Σύγχρονες Βελτιώσεις
Ενώ η Boolean άλγεβρα παρέχει ένα ισχυρό θεωρητικό πλαίσιο, πρακτικά η ATPG αντιμετωπίζει προκλήσεις. Η εκθετική πολυπλοκότητα της Boolean satifiability μπορεί να προκαλέσει εργαλεία για να τρέξει επ' αόριστον για κάποια δυσδοκιμαστικά σφάλματα. Οι μηχανικοί αντιμετωπίζουν αυτό το πρόβλημα χρησιμοποιώντας ] την παραγωγή δοκιμών κατά τύχη σε συνδυασμό με την αλγεβρική ευαισθητοποίηση, ή χρησιμοποιώντας την συλλογιστική βάσει BDD[ που συμπαγεί τις Boolean εκφράσεις σε μια κανονική μορφή. Μια άλλη πρόκληση είναι ο χειρισμός σειχηματικά κυκλώματα [ με στοιχεία μνήμης (flip-flops). Εδώ, η Boolean alefster επεκτείνεται σε μεταβάσεις υπό μορφή μοντέλου — ένα πρότυπο δοκιμής γίνεται μια αλληλουχία διανυστήρων, που απαιτεί επαναλαμβανόμενες αλγεβρικές λειτουργίες με το χρόνο.
Συμπέρασμα
Η Boolean άλγεβρα παραμένει απαραίτητο εργαλείο για την αυτοματοποίηση της παραγωγής προτύπων δοκιμής λογικής. Από τα κυκλώματα μοντελοποίησης και τα ελαττώματα μέχρι τα όργανα παραγωγής και συμπύκνωσης, οι αλγεβρικοί κανόνες της παρέχουν μια τυπική, κλιμακούμενη μέθοδο για την εξασφάλιση της ορθότητας των ψηφιακών συστημάτων. Καθώς τα ολοκληρωμένα κυκλώματα αναπτύσσονται πυκνότερα —με δισεκατομμύρια τρανζίστορ και προηγμένους κόμβους κατασκευής ⁇ ο ρόλος της Boolean άλγεβρας στην ATPG θα συνεχίσει να εξελίσσεται, ενσωματώνοντας την εκμάθηση των μηχανών και πιο εξελιγμένους λύτες SAT, αλλά πάντα ριζωμένα στο ίδιο λογικό θεμέλιο που ο George Boole έθεσε πριν από περισσότερα από 150 χρόνια. Οι μηχανικοί που κατέχουν αυτές τις έννοιες είναι καλύτερα εξοπλισμένοι για να σχεδιάσουν αξιόπιστα ηλεκτρονικά και να διαχειριστούν την ολοένα αυξανόμενη πολυπλοκότητα των δοκιμών. Για περαιτέρω ανάγνωση στο θέμα, συμβουλευτείτε αυτή την επισκόπηση IEE των σύγχρονων αλγορίθμων ATPG και [FL:2] την επιστημονική εγγραφή στο Booleanalen άλγεβρα στο test[Επιπρόσθεντικές πληροφορίες για τα μοντέλα ελαττωμάτων ελαττωμάτων ελαττωμάτων [F]