ΗΥ-120 - Ψηφιακή Σχεδίαση:
Περιγραφή του Μαθήματος
Στόχος του Μαθήματος:
Οι υπολογιστές (και οι αυτόνομοι και οι ενσωματωμένοι
σε άλλες μηχανές, π.χ. αυτοκίνητα, τηλεοράσεις, ιατρικές συσκευές, κλπ),
τα δίκτυα (π.χ. Internet),
και οι τηλεπικοινωνίες (τηλέφωνα, κινητά, ασύρματοι, κλπ)
είναι όλα κατασκευασμένα, σήμερα πιά, από μικροηλεκτρονικά chips
που στην συντριπτική τους πλειοψηφία είναι
ψηφιακά.
Αυτό το μάθημα μιλάει γιά τα ψηφιακά συστήματα
–γιά τη βάση δηλαδή όλης της σύγχρονης τεχνολογίας της πληροφορίας.
Ο στόχος του μαθήματος είναι να διδάξει
στη νέα φοιτήτρια και φοιτητή των υπολογιστών
το τι είναι ψηφιακό κύκλωμα,
τις βασικές και απαραίτητες έννοιες και στοιχεία της ψηφιακής σχεδίασης,
και πώς με αυτά μπορεί να φτιάξει κανείς
ένα σημαντικό και κεντρικό παράδειγμα ψηφιακού κυκλώματος:
έναν απλούστατο υπολογιστή.
Βέβαια, ο υπολογιστής που θα φτιάξουμε σε αυτό το πρώτο μάθημα
θα είναι υπεραπλουστευμένος (γι' αυτό και εξαιρετικά αργός)
αλλά παρ' όλα αυτά θα είναι ένας υπολογιστής!
Η συνέχεια του μαθήματος αυτού είναι το μάθημα
"Οργάνωση Υπολογιστών"
(ΗΥ-225),
στο εαρινό εξάμηνο του 2ου έτους,
όπου ο φοιτητής θα ακούσει γιά το πώς είναι
οι πραγματικοί σημερινοί υπολογιστες (όχι οι εδώ υπεραπλουστευμένοι),
πώς είναι η γλώσσα μηχανής τους,
η κατασκευή του επεξεργαστή και της μνήμης τους,
και πώς λειτουργεί η επικοινωνία τους με τον έξω κόσμο.
Το παρόν μάθημα (ΗΥ-120) και το ΗΥ-225
είναι τα δύο μαθήματα "κορμού" (υποχρεωτικά) του Τμήματός μας
στην περιοχή του υλικού (hardware)
των υπολογιστών και εν γένει των ψηφιακών συστημάτων,
και διδάσκουν όσα
όλοι οι απόφοιτοι πληροφορικής πρέπει να ξέρουν από αυτή την περιοχή,
σαν ελάχιστη βασική γνώση.
Γιά αυτούς που επιθυμούν να μάθουν περισσότερα
γύρω από το υλικό (hardware),
υπάρχουν τα μαθημάτα επιλογής:
–
ΗΥ-220
"Εργαστήριο Ψηφιακών Κυκλωμάτων"
(ακολουθεί το 120, δεν προϋπ. το 225),
–
ΗΥ-425
"Αρχιτεκτονική Υπολογιστών"
(προϋποθέτει το ΗΥ-225), και
–
ΗΥ-428
"Εργαστήριο Ενσωματωμένων Επεξεργαστών"
(προϋποθέτει το ΗΥ-225),
Περιεχόμενο του Μαθήματος:
-
Μάθημα Κορμού Επιστήμης Υπολογιστών
(δηλ. υποχρεωτικό).
-
Διδακτικές Μονάδες: Οκτώ (8) ECTS.
-
Προαπαιτούμενα: Κανένα.
Περιεχόμενο:
-
Εισαγωγή:
ταχεία επανάληψη των ηλεκτρικών κυκλωμάτων·
διακόπτες και οι λογικές πράξεις ΚΑΙ-Ή-ΟΧΙ·
πολύπλεξη και η δομή της μνήμης (αρχικά της ROM)·
συνδυασμοί και αποκωδικοποίηση·
αντιστροφή ενός αποκωδικοποιητή δένδρου ηλεκτρονόμων
γιά το σχηματισμό ενός πολυπλέκτη·
αναλογικά και ψηφιακά συστήματα,
πλεονεκτήματα και εφαρμογές των ψηφιακών συστημάτων·
απλά κυκλώματα με ηλεκτρονόμους (relays), ανάδραση και μνήμη.
-
Συνδυαστικά Κυκλώματα:
πράξεις AND-OR-NOT, πίνακες αληθείας, παραδείγματα,
λογικές πύλες, IC chips,
Άλγεβρα Boole, διαγράμματα Venn, χάρτες Karnaugh, απλοποίηση.
-
Δυαδικοί Ακέραιοι Αριθμοί και Προσαφαιρέσεις:
πλήθος συνδυασμών και δυαδική αρίθμηση,
μη προσημασμένοι ακέραιοι, δυαδική πρόσθεση,
συνδυαστικά κυκλώματα αθροιστή.
Πολλαπλασιασμός / διαίρεση / υπόλοιπο με δυνάμεις του 2,
δηλ. επιλογή πεδίων από bits.
Προσημασμένοι αριθμοί:
συστροφή (wrap-around), αναπαράσταση σε συμπλήρωμα ως προς 2,
προσημασμένη πρόσθεση, αντίθετος αριθμού,
κύκλωμα αθροιστή/αφαιρέτη.
-
Μνήμη:
ανάδραση, ασταθή και δισταθή κυκλώματα, ταλαντωτές·
μανταλωτές (latches) τύπων RS και D, μονόμπιτοι και πολύμπιτοι·
RAM, οργάνωση κατά λέξεις και κατά bits,
διευθύνσεις και αποκωδικοποίηση διευθύνσεων.
-
Ακολουθιακά Κυκλώματα:
αναχρησιμοποίηση υλικού, ανάγκη σημάτων χρονισμού, διφασικά ρολόγια,
παραδείγματα (μετρητής, ολίσθηση, μεταφορά καταχωρητών),
flip-flops αφέντη-σκλάβου.
-
Datapath:
καταχωρητές, πολυπλέκτες, ALU's, παραδείγματα απλών datapaths·
τρικατάστατοι οδηγητές, λεωφόροι (buses)·
μνήμες SRAM, έλεγχος εγγραφής και ενεργοποίηση εξόδου,
κατασκευή μεγαλυτέρων μνημών από πολλαπλά chips SRAM.
-
Ένας απλός Επεξεργαστής:
παράδειγμα datapath ενός απλού επεξεργαστή με ένα συσσωρευτή,
γλώσσα μηχανής και assembly του απλού επεξεργαστή &
παραδείγματα προγραμμάτων assembly:
σειριακός κώδικας, διακλαδώσεις και βρόχοι,
έμμεσες προσπελάσεις και πίνακες.
-
FSM και Έλεγχος:
μηχανές πεπερασμένων καταστάσεων (FSM) και παραδείγματα:
ελεγκτής κυκλοφορίας, δέκτης σειριακής επικοινωνίας,
FSM ελέγχου επεξεργαστή.
-
Τεχνολογία: σύντομη εισαγωγή στα
ολοκληρωμένα κυκλώματα CMOS, κόστος, ταχύτητα, κατανάλωση,
και παράγοντες που τα επηρεάζουν.
Εργαστήριο:
Το μάθημα περιλαμβάνει εβδομαδιαίες δίωρες εργαστηριακές ασκήσεις
με χρήση breadboard, διακοπτών, LED, ηλεκτρονόμων, chips (TTL, CMOS),
και ενός απλού datapath ενός υπολογιστή τύπου συσσωρευτή
με δύο χωριστές μνήμες (εντολών, δεδομένων)
και πλήθος ενδείκτικών λυχνιών 7-segment
γιά την παρακολούθηση της κατάστασής του,
το οποίο οι φοιτητές μετατρέπουν σε στοιχειώδη υπολογιστή
υλοποιώντας τον έλεγχό του στο breadboard.
-
Υπάρχουν 13 δίωρες εργαστηριακές ασκήσεις, μία ανά εβδομάδα
(εργ. 0 έως και 12).
Οι ασκήσεις είναι ατομικές: κάθε φοιτητής εργάζεται μόνος.
-
Κάθε εργαστηριακό τμήμα περιλαμβάνει έως 26 φοιτητές,
και εποπτεύεται και βαθμολογείται από δύο βοηθούς - μεταπτυχιακούς φοιτητές
υπό την επίβλεψη και συντονισμό του κ. Νίκου Κρασσά.
Τα εργαστηριακά τμήματα περιγράφονται στην
κεντρική σελίδα του μαθήματος.
-
Χώρος Εργαστηρίου: Αίθουσα A109.
-
Ελεύθερες Ώρες Εργαστηρίου:
κάθε Δευτέρα και Τρίτη, γιά αρκετές ώρες,
ο χώρος του εργαστηρίου παραμένει ανοικτός και διαθέσιμος
γιά οιοδήποτε φοιτητή του μαθήματος (μέχρι μεγίστου 30 κάθε φορά)
επιθυμεί να προετοιμαστεί (ελεύθερα και χωρίς βαθμολόγηση)
πριν το κανονικό του δίωρο εργαστήριο της βδομάδας (όπου βαθμολογείται).
Συνιστάται να κάνουν χρήση της ελεύθερης αυτής προετοιμασίας
κυρίως οι πρωτοετείς φοιτητές που αισθάνονται
λιγότερο εξοικειωμένοι, από το Γυμνάσιο-Λύκειο,
με τα ηλεκτρικά κυκλώματα ή με εργασία σε εργαστήριο.
-
Κάθε άσκηση από την 1 ως την 12 βαθμολογείται
ως προς την κατανόηση της σχετικής θεωρίας,
προετοιμασία, εκτέλεση, και ποιότητα·
η άσκηση 0 είναι εισαγωγική και δεν βαθμολογείται.
Απουσία από άσκηση βαθμολογείται με μηδέν.
Όμως, ο τελικός βαθμός εργαστηρίου προκύπτει σαν ο μέσος όρος
των 11 καλύτερων βαθμών ασκήσεων,
άρα μέχρι μία απουσία εργαστηρίου το εξάμηνο δεν έχει συνέπειες
(συμφέρει πάντως να μην απουσιάσετε στα σημαντικά εργαστήρια,
που έχουν υψηλότερο συντελεστή βάρους βαθμολογίας
–βλ. παρακάτω, ενότητα "Βαθμολογία").
-
Όλοι ανεξαιρέτως οι εγγεγραμμένοι στο μάθημα
υποχρεούνται να συμμετάσχουν στα εργαστήρια,
ανεξαρτήτως τυχόν παλαιότερης εγγραφής στο μάθημα.
Κανείς βαθμός εργαστηρίου από προηγούμενα έτη
δεν μεταφέρεται.
Ευχαριστούμε το Ινστιτούτο Πληροφορικής του ΙΤΕ,
και ιδιαίτερα τους Μιχαήλ Λυγεράκη και Γεώργιο Καλοκαιρινό,
γιά τη σχεδίαση και μεγάλο μέρος της κατασκευής
του εργαστηριακού εξοπλισμού του μαθήματος.
Επίσης ευχαριστούμε την εταιρεία
Altera
(University Program)
γιά τη δωρεά υλικών αξίας 10.000 Ευρώ
στο εργαστήριο του μαθήματος.
We deeply appreciate
Altera
University Program's
donation of 10 thousand Euro worth of hardware
to this course's lab.
Βιβλία:
Οι φοιτητές του μαθήματος έχουν επιλογή ανάμεσα στα εξής τέσσερα βιβλία:
-
William J. Dally, R. Curtis Harting: "Ψηφιακή Σχεδίαση",
Cambridge Univ. Press (2012),
Ελληνική μετάφραση: Πανεπιστημιακές Εκδόσεις Κρήτης (2015),
ISBN 978-960-524-445-3.
[Σύγγραμμα αριθμός 32998377 στο σύστημα "Εύδοξος":
https://service.eudoxus.gr/search/#a/id:32998377/0]
-
John Wakerly: "Ψηφιακή Σχεδίαση: Αρχές και Πρακτικές", τρίτη έκδοση,
Prentice Hall (2001),
Ελληνική μετάφραση: εκδόσεις Κλειδάριθμος (2002),
ISBN 960-209-728-0.
[Σύγγραμμα αριθμός 13946 στο σύστημα "Εύδοξος":
https://service.eudoxus.gr/search/#a/id:13946/0]
-
M. Morris Mano, Michael D. Ciletti: "Ψηφιακή Σχεδίαση", 6η έκδοση,
Αγγλικό πρωτότυπο:
"Digital Design" (Pearson, 2018, ISBN: 9780134549897),
Ελληνική μετάφραση: εκδόσεις Παπασωτηρίου (2018),
ISBN 978-960-491-113-4.
[Σύγγραμμα αριθμός 68406394 στο σύστημα "Εύδοξος":
https://service.eudoxus.gr/search/#a/id:68406394/0]
-
Stephen Brown, Zvonko Vranesic:
"Σχεδίαση Ψηφιακών Συστημάτων με τη Γλώσσα VHDL",
McGraw Hill (2011),
Ελληνική μετάφραση: Εκδόσεις Τζιόλα,
ISBN 978-960-418-340-1.
[Σύγγραμμα αριθμός 18548944 στο σύστημα "Εύδοξος":
https://service.eudoxus.gr/search/#a/id:18548944/0]
Ο διδάσκων συνιστά ένθερμα το
πρώτο βιβλίο, των Dally και Harting.
Παρ' ότι το επίπεδο αυτού του βιβλιου
είναι υψηλότερο από εκείνο του δικού μας μαθήματος,
όμως το βιβλιο αυτό είναι εξαιρετικό, θα κοσμεί τη βιβλιοθήκη σας,
και θα αποτελεί ένα θαυμάσιο εγχειρίδιο αναφοράς γιά σας
γιά αρκετά χρόνια στη μελλοντική σας σταδιοδρομία·
είναι σύγχρονο, και γραμμένο από έναν διεθνή ηγέτη της τεχνολογίας
(Chief Scientist της NVIDIA, και καθηγητή στο Stanford).
Εάν αναζητάτε ένα βιβλίο ευκολότερο στο διάβασμα,
τότε διαλέξτε ένα από τα άλλα τρία.
Το δεύτερο, του Wakerly,
έχει μεγαλύτερη ευρύτητα ύλης
και βαθύτερη/ωριμότερη παρουσίαση από τα άλλα δύο,
αλλά είναι και παλαιότερο,
και γιά όποιον αναζητά τέτοια χαρίσματα το πρώτο (Dally) είναι καλύτερο.
Το τρίτο, του Mano,
είναι πολύ δημοφιλές σαν απλό και ευκολοδιάβαστο διδακτικό βιβλίο,
και γιά εμάς εδώ στο Παν. Κρήτης και στο ΙΤΕ-ΙΠ,
έχει το πλεονέκτημα ότι χρησιμοποιεί τη γλώσσα Verilog
που και εμείς χρησιμοποιούμε (σε άλλα μαθήματα και στην έρευνά μας),
όπως επίσης κάνει και το πρώτο βιβλίο, του Dally,
έναντι της VHDL των δεύτερου και τέταρτου.
Και τα τέσσερα βιβλία καλύπτουν τα περισσότερα θέματα του μαθήματος,
εκτός –κυρίως– τους ηλεκτρονόμους, τα διφασικά ρολόγια,
και αρκετά παραδείγματα που θα χρησιμοποιήσουμε
–ιδιαίτερα το παράδειγμα απλού επεξεργαστή του μαθήματος.
Από την άλλη, το μάθημα δεν περιλαμβάνει
μερικά από τα θέματα στα βιβλία,
και θα επιμείνει λιγότερο σε αρκετά ειδικευμένα θέματα
που διδάσκονται στο ΗΥ-220 ή αλλού.
Γιά τους λόγους αυτούς, συνιστάται ένθερμα στους εγγεγραμμένους φοιτητές
να παρακολουθούν ανελλειπώς τις διαλέξεις του μαθήματος,
οι οποίες πιστεύεται ότι θα τους βοηθήσουν
σημαντικά περισσότερο απ' όσο τα βιβλία
στην κατανόηση των εννοιών και της χρήσης τους.
Σημαντικό βοήθημα θα αποτελέσουν και οι λεπτομερείς εκφωνήσεις
των εργαστηριακών ασκήσεων.
Πρόγραμμα Διδασκαλίας, Εξέτασης Προόδου:
-
Εβδομαδιαία:
Δευτέρες, Τετάρτες, και Παρασκευές 12:15 - 14:00
στο Αμφιθέατρο "Στέλιος Ορφανουδάκης".
Οι περισσότερες εβδομάδες του εξαμήνου
θα περιλαμβάνουν τρία δίωρα διαλέξεων (ΔεΤεΠα),
ενώ μερικές δύο – δείτε την ιστοσελίδα
του μαθήματος γιά τον προγραμματισμό.
-
Το Φθινόπ. 2013 το μάθημα είχε βιντεοσκοπηθεί,
και τα σχετικά video διατίθενται στον ιστότοπο:
elearn.uoc.gr/course/view.php?id=232
(δεν χρειάζεται password: μπορείτε να μπείτε σαν "επισκέπτης"
(ή με το password σας του Πανεπιστημίου)).
Φέτος, το μάθημα θα είναι παρόμοιο με τότε,
άρα μπορείτε να χρησιμοποιήσετε τα video αυτά.
Μία ιδέα είναι, ιδιαίτερα όσοι φοιτητές δυσκολεύονται περισσότερο,
να τα παρακολουθούν πριν από το μάθημα,
και στο μάθημα να ρωτούν τις ερωτήσεις που τους γεννήθηκαν.
-
Διαγωνισμός Προόδου: το
Σάββατο 3 Νοεμβρίου 2018, ώρα 12:10 - 14:00 (βδομάδα 6).
Η συμμετοχή των φοιτητών είναι υποχρεωτική κατά την έννοια ότι
ο βαθμός αυτής της εξέτασης πάντα μετράει
–χωρίς όμως να υπάρχει ελάχιστο όριο αυτού του βαθμού
που να απαιτείται γιά να περάσει ο φοιτητής το μάθημα.
Βαθμολογία:
-
30 % από τον (φετεινό) μέσο βάθμο εργαστηρίου,
αρκεί αυτός να είναι τουλάχιστο τέσσερα (4.0)
[κανείς βαθμός εργαστηρίου από προηγούμενα έτη δεν μεταφέρεται],
-
20 % από τον βαθμό του διαγωνισμού Προόδου, και
-
50 % από τον βαθμό τελικής εξέτασης (Α' ή Β' περιόδου),
αρκεί αυτός να είναι τουλάχιστο τρισήμισυ (3.5).
Βαθμός εργαστηρίου κάτω του 4.0
ή βαθμός τελικής εξέτασης κάτω του 3.5
προκαλεί αποτυχία στο μάθημα.
Οι εξετάσεις (προόδου & τελική) είναι με κλειστές σημειώσεις.
Κάθε αντιγραφή τιμωρείται αυστηρά.
Συνιστάται ένθερμα στους εγγεγραμμένους στο μάθημα
να διαβάζουν το μάθημα
καθ' όλη τη διάρκεια του εξαμήνου
–όχι μόνο κατά την εξεταστική περίοδο–
και να το περάσουν κατά την
Α' εξεταστική περίοδο
–η εμπειρία του διδάσκοντα δείχνει ότι
τα μαθήματα περνιούνται πολύ ευκολότερα τότε,
όταν η ύλη είναι ακόμη φρέσκια στη μνήμη.
Ο μέσος όρος βαθμών εργαστηρίου υπολογίζεται με συντελεστές βάρους,
διαφορετικούς γιά διάφορα εργαστήρια:
- 0.5 γιά το εργαστήριο 1,
- 0.7 γιά το εργαστήριο 2,
- 0.8 γιά το εργαστήριο 3,
- 1.0 γιά τα εργαστήρια 4 και 5,
- 0.9 γιά τα εργαστήρια 6, 7, 8,
- 1.2 γιά το εργαστήριο 9,
- 1.3 γιά το εργαστήριο 10,
- 1.4 γιά τα εργαστήρια 11 και 12.
Ο ακριβής τύπος υπολογισμού του μέσου βαθμού εργαστηρίων είναι:
Άθροισμα(W
i*B
i) γιά i=1,..12, μείον
Minimum(W
i*B
i) γιά i=1,..12,
και όλο διά έντεκα (11.0),
όπου W
i είναι ο συντελεστής βάρους του εργαστηρίου i, και
B
i είναι ο βαθμός του εργ. i.
Επομένως συμφέρει να μην απουσιάζετε
κατά τα εργαστήρια με μεγαλύτερο συντελεστή βάρους.
Διδάσκων, Βοηθοί:
-
Μανόλης Γ.Η. Κατεβαίνης, Καθηγητής, Τμ. Επ. Υπολογιστών,
Πανεπ. Κρήτης - ηλτά: kateveni - τηλ: 3564 - ώρες γραφείου (συνήθως)
Δευτέρες-Τετάρτες 10:00 - 11:20 (ή και άλλες),
κατά προτίμηση μετά από ηλτά/τηλ επιβεβαίωσης, στο γραφείο Κ329.
-
Νικόλαος Κρασσάς, μέλος ΕΤΕΠ/ΕΔΙΠ, Τμ. Επ. Υπολογιστών, Πανεπ. Κρήτης:
Υπεύθυνος Εξοπλισμού, Επίβλεψης, και Συντονισμού Βαθμολόγησης Εργαστηρίου
- ηλ-ταχ: nkrassas - Γραφείο: B217 - Τηλέφωνο: 2810.39.3595
-
Βοηθοί - Μεταπτυχιακοί Φοιτητές, Τμ. Επ. Υπολογιστών, Πανεπ. Κρήτης:
- Βάρδας, Ιωάννης – vardas
- Βουράκης, Ξενοφών – xvurakis
- Γιαουρτάς, Μιχαήλ – giaourtas
- Καλαεντζής, Γεώργιος Σάββας – kalaentzis
- Κιοστεράκης, Χαρίδημος – charkio
- Μαστοράκης, Ιάσων – csd3032
- Παπαγιάννης, Αναστάσιος – apapag
- Παυλιδάκης, Εμμανουήλ – manospavl
- Σκορδαλάκης, Εμμανουήλ – mskordal
- Σφακιαννάκης, Ιωάννης – jsfakian
- Τζανάκης-Αρναουτάκης, Λέανδρος – tzanakis
- Τοτόμης, Σωτήριος – csd3123
- Ψιστάκης, Αντώνιος – psistakis
- Επιπλέον βοήθεια (ελευθ. ώρες εργαστηρίου): Γ.-Α. Κονταξάκης
Ηλεκτρονική Επικοινωνία:
-
Ιστοσελίδα μαθήματος:
http://www.csd.uoc.gr/~hy120/
-
Κατάλογος ηλ-ταχ. βοηθών και διδάσκοντα:
hy120 παπάκι csd.uoc.gr
-
Κατάλογος ηλ-ταχ. φοιτητών, βοηθών, και διδάσκοντα:
hy120-list παπάκι csd.uoc.gr
Εγγραφείτε στέλνοντας e-mail στο
majordomo παπάκι csd.uoc.gr
που να περιέχει στο σώμα του μηνύματος (όχι στο θέμα)
τη γραμμή "subscribe hy120-list".