Στόχοι Μαθήματος: Οι στόχοι αυτού του μαθήματος είναι: (1) Nα αποκτήσουν οι φοιτητές εργαστηριακή hands-on εμπειρία στον σχεδιασμό ψηφιακών κυκλωμάτων και στην χρήση έτοιμων Ολοκληρωμένων Κυκλωμάτων (ICs) τόσο σε εκπαιδευτικά boards όσο και με CAD εργαλεία σε FPGAs. (1) Nα αποκτήσουν οι φοιτητές πρακτική γνώση και να εξασκηθούν στην χρήση των απαραίτητων σχεδιαστικών προσεγγίσεων για τον σχεδιασμό συστημάτων όπως η επαναχρησιμοποίηση, η ιεραρχική σχεδίαση, επίπεδα αφαιρετικότητας κ.α. (3) Nα αποκτήσουν οι φοιτητές πρακτική γνώση και να εξασκηθούν στις τεχνικές ελέγχου ορθής λειτουργίας και αποσφαλμάτωσης κατά την φάση σχεδιασμού (simulation). (4) Η μελέτη και κατανόηση των αρχών λειτουργίας των ψηφιακών συστημάτων και κυκλωμάτων, των παραμέτρων τους, τον σχεδιαστικών περιορισμών τους και των διάφορων τεχνολογιών υλοποίησης και σχεδίασης τους. (5) Η χρήση και κατανόηση της δομής και τρόπου λειτουργίας και αξιοποίησης των συσκευών FPGA, η σχηματική περιγραφή κυκλωμάτων συνδυαστικής και ακολουθιακής λογικής καθώς και η σύγκριση με την περιγραφή ψηφιακών κυκλωμάτων και συστημάτων με γλώσσες περιγραφής υλικού (HDLs). (6) H υλοποίηση τόσο σε εκπαιδευτικά boards όσο και με CAD εργαλεία σε FPGAs με ταυτόχρονη κατανόηση των αρχών που διέπουν τον σχεδιασμό κυκλωμάτων συνδυαστικής και ακολουθιακής λογικής καθώς και ο βέλτιστος σχεδιασμός τους και οι διάφορες παράμετροι υλοποίησης τους. (7) H ανάλυση, σχεδίαση και υλοποίηση απαριθμητών (σύγχρονων και ασύγχρονων) όπως και πιο πολύπλοκων σχεδιασμών όπως οι ALUs τόσο σε εκπαιδευτικά boards όσο και σε FPGAs μέσω CAD tools.
Μαθησιακά Αποτελέσματα: Στο τέλος αυτού του μαθήματος οι φοιτητές θα έχουν: (1) Αποκτήσει Ηands-on experience στον σχεδιασμό ψηφιακών κυκλωμάτων (συνδυαστικά και ακολουθιακά) και στην χρήση έτοιμων ολοκληρωμένων ICs τόσο σε CAD εργαλεία με τελική υλοποίηση σε FPGAs όσο και σε εκπαιδευτικά boards. (2) Αποκτήσει πρακτικές γνώσεις για να εφαρμόζουν τις απαραίτητες σχεδιαστικές τεχνικές όπως Eπαναχρησιμοποίηση, Ιεραρχικό σχεδιασμό, Επίπεδα αφαιρετικότητας κλπ για την αποδοτική υλοποίηση πολύπλοκων σχεδιασμών. (3) Αποκτήσει πρακτικές γνώσεις στο να κάνουν αποδοτικά έλεγχο ορθής λειτουργίας (simulation) και αποσφαλμάτωση των σχεδιασμών τους κατά την φάση σχεδιασμού. (4) Μελετήσει και κατανοήσει τις βασικές αρχές λειτουργίας και σχεδιασμού των ψηφιακών συστημάτων και κυκλωμάτων, τις παραμέτρους τους και σχεδιαστικούς περιορισμούς τους και τις διάφορες σχεδιαστικές επιλογές τους, τόσο σε FPGAs όσο και σε εκπαιδευτικά boards. (5) Κατανοήσει την εσωτερική δομή καθώς και την χρήση των FPGAs για σχεδιασμό συνδυαστικών και ακολουθιακών κυκλωμάτων. (6) Μάθει να χρησιμοποιούν CAD tools λογισμικά για τον σχεδιασμό, την εξομοίωση της λειτουργίας των ψηφιακών κυκλωμάτων καθώς και για την τελική υλοποίηση των σχεδιασμών τους σε FPGA. (7) Εκπαιδευτεί να χρησιμοποιούν άριστα τον εργαστηριακό εξοπλισμό για τους πειραματικούς σχεδιασμούς τους ήτοι τα breadboards, ICs, γεννήτριες συχνοτήτων, πολύμετρα, ψηφιακούς παλμογράφους κλπ. (8) Κατανοήσει την διαφορά μεταξύ υλοποίησης μέσω σχεδιαστικής περιγραφής και υλοποίησης μέσω γλωσσών περιγραφής υλικού HDL. (9) Υλοποιήσει σύνθετους σχεδιασμούς σε FPGAs, με διαχείριση της πολυπλοκότητας των σχεδιασμών και αποτίμηση των πλεονεκτημάτων/μειονεκτημάτων κάθε σχεδιαστικής προσέγγισης.
Περιεχόμενο Μαθήματος: Επεξήγηση εξοπλισμού, εξοικείωση με τις βασικές λογικές πύλες και σχεδιασμός και υλοποίηση κυκλωμάτων και εφαρμογών συνδυαστικής λογικής, με την χρήση ολοκληρωμένων SSI και MSI κυκλωμάτων. Σχεδιασμός και υλοποίηση Αθροιστών, Συγκριτή, Πολυπλεκτών, Αποκωδικοποιητών, Κωδικοποιητών κ.α., σε εκπαιδευτικό board. Εξοικείωση με Flip Flops: S-R flip flop, D flip flop και J-K flıp flop. Λειτουργίες Preset και Clear. Υλοποίηση απλών ακολουθιακών κυκλωμάτων και εφαρμογών (εκπαιδευτικό board). Σχεδιασμός και υλοποίηση Ασύγχρονων και Σύγχρονων απαριθμητών (εκπαιδευτικό board). Εισαγωγή στο πρόγραμμα σχεδιασμού ALTERA Quartus II, στις προγραμματιζόμενες συσκευές και στην υλοποίηση ψηφιακών κυκλωμάτων μέσω προγραμματισμού FPGA board. FPGΑs vs ICs, Σχηματική περιγραφή vs HDL περιγραφής, Simulation και Debugging στο Altera Quartus II, Κατέβασμα σχεδιασμού σε FPGA. Σχεδιασμός και υλοποίηση σε FPGA συνδυαστικών κυκλωμάτων: Αθροιστών, Συγκριτή, Πολυπλεκτών, Αποκωδικοποιητών, Κωδικοποιητών κ.α. Ιεραρχική σχεδίαση και αλυσιδωτή (cascade) σύνδεση. Τεχνική επαναχρησιμοποίησης. Σχεδιασμός και υλοποίηση σε FPGA ψηφιακών κυκλωμάτων ακολουθιακής λογικής: S-R flıp flop, D flıp flop και J-K flıp flop. Κυκλώματα Ασύγχρονων και Σύγχρονων απαριθμητών σε FPGAs. Ιεραρχική σχεδίαση και υλοποίηση σε FPGA board Αριθμητικής και Λογικής Μονάδας (ALU). Επίπεδα αφαιρετικότητας, πλεονεκτήματα και μειονεκτήματα. Σχηματική περιγραφή vs HDL περιγραφής