-- Έκδοση 1B --

«Φέρνοντας» τον αθέατο κόσμο ενός μικροεπεξεργαστή στην πραγματική ζωή

 
 
Είναι δυνατόν να αγγίξουμε τα εσωτερικά συστατικά ενός μικροτσίπ?

Ο Δρ. Πάνος Παπάζογλου συνδυάζει φαντασία, τέχνη και μηχανική για να δημιουργήσει μοναδικά εκπαιδευτικά εργαλεία και να απομυθοποιήσει σύνθετα ζητήματα στην ακαδημαϊκή τάξη.

Ο Καθηγητής Π. Παπαζόγλου είναι επίσης ενεργός σχεδιαστής και προγραμματιστής υλικού και λογισμικού, με ερευνητικά ενδιαφέροντα στους τομείς των τεχνολογιών εμβύθισης για τον μετασχηματισμό των συμβατικών προσεγγίσεων στην εκπαίδευση και το παιχνίδι.

Η έκδοση 1 παρουσιάστηκε στο διεθνές συνέδριο IEEE EDUCON2024 τον Μάϊο του 2024.

Ανακαλύψτε ένα καινοτόμο εργαλείο για εκμάθηση μικροεπεξεργαστών:

Υλικοκεντρικός
Προσομοιωτής Μικροεπεξεργαστών (HOMS)




Open-Source έργο

  • Ένας πλήρως λειτουργικός υλικοκεντρικός προσομοιωτής
  • Προσομοιωτής μικροεπεξεργαστή/Μικροϋπολογιστή
  • Εκπαιδευτικό εργαλείο
  • Βασισμένος στην πλατφόρμα Arduino
  • Εύκολη αναπαραγωγή
  • Προσαρμοσμένα εκπαιδευτικά σενάρια
  • Κατάλληλο για ακαδημαϊκούς δασκάλους και ερευνητές στο πεδίο της εκπαίδευσης μηχανικών

Δείτε την άδεια

Κάθε εσωτερική μονάδα του μικροεπεξεργαστή
έχει υλοποιηθεί ως τρισδιάστατο φυσικό αντικείμενο

  • Καταχωρητές Γενικής Χρήσης (GPR)
  • Καταχωρητές Ειδικής Χρήσης (SPR)
  • Αριθμητική & Λογική Μονάδα (ALU) / SR
  • Μονάδα Ελέγχου (CU)
  • Μνήμη – Σύστημα Ε/Ε
Λογισμικό προγραμματισμού

  • Οι εντολές προγράμματος που θα εκτελεστούν από το πειραματικό μοντέλο του μικροεπεξεργαστή, εισάγονται σε ειδικό γραφικό περιβάλλον στο PC με μερικά κλικ του ποντικιού
  • Η χρήστης επιλέγει την επιθυμητή εντολή από μία λίστα και την αποθηκεύει στη μνήμη αντλώντας την αντίστοιχη αρχική διεύθυνση επίσης από μία λίστα
  • Τα byte που αποτελούν το τελικό πρόγραμμα του χρήστη, μεταφορτώνονται στη μονάδα μνήμης του HOMS (μέσω USB σύνδεσης)
  • Η γραφική διεπαφή χρήστη μπορεί να εμφανίζεται και με υψηλή αντίθεση (λευκό σε μαύρο ή μαύρο σε λευκό)
  • Ένα έτοιμο πρόγραμμα για λόγους δοκιμής, μπορεί να φορτωθεί αυτόματα στη μνήμη χρησιμοποιώντας το κουμπί [Demo Prog]

Μοναδικά χαρακτηριστικά

Προσαρμόσιμη αρχιτεκτονική

Ο εκπαιδευτής ή ο εκπαιδευόμενος μπορεί να υλοποιήσει τη δική του αρχιτεκτονική χρησιμοποιώντας περισσότερα ή λιγότερα μπλοκ (φυσικά αντικείμενα).

Επαναχρησιμοποίηση των μπλοκ

Οι μονάδες του πειραματικού μικροεπεξεργαστή βασίζονται στην ίδια πλατφόρμα και η συμπεριφορά του καθορίζεται αποκλειστικά από το ενσωματωμένο λογισμικό.

Προγραμματιζόμενη λειτουργία

Βάσει του ενσωματωμένου λογισμικού, ένα μπλοκ μπορεί να λειτουργεί ως καταχωρητής, μονάδα ελέγχου, κλπ.

Πειραματική αρχιτεκτονική

Βάσει του αριθμού και του τύπου των μπλοκ, ο εκπαιδευτής ή ο εκπαιδευόμενος δοκιμάζει την πρωτότυπη αρχιτεκτονική ή διαιρεί μια λειτουργία σε μικρότερα στάδια και μπλοκ.

Ανάπτυξη εντολών Assembly

Μπορούν να αναπτυχθούν οι επιθυμητές εντολές Assembly, τις οποίες θα υποστηρίζει η πειραματική αρχιτεκτονική, ενώ προσφέρονται πολλαπλοί ρόλοι κατά την προσέγγιση του τελικού λειτουργικού μοντέλου: Προγραμματιστής/Χρήστης, Σχεδιαστής λογισμικού/υλικού, κλπ

Από την οπτική γωνία του υλικού

Το εργαλείο HOMS, δίνει έμφαση στο επίπεδο του υλικού, το οποίο είναι κρυμμένο στα υπάρχοντα εργαλεία προσομοίωσης. Έτσι, η «σύνδεση», εντολής, λειτουργίας και υλοποίησης στο υλικό είναι πιο ξεκάθαρη στο μυαλό των εκπαιδευόμενων

Πολλαπλές οπτικές γωνίες

Ο χρήστης του HOMS είναι ελεύθερος να αναπτ’υξει οποιαδήποτε εντολή assembly, η οποία υποστηρίζεται από το ενσωματωμένο λογισμικό.

Εκπαιδευτικά σενάρια

Χρησιμοποιώντας την βασική αρχιτεκτονική του εργαλείου HOMS, οι εκπαιδευτές μπορούν να αναπτύξουν τις επιθυμητές εντολές assembly, ώστε να διαμορφώσουν διαφορετικά εκπαιδευτικά σενάρια.

Standalone tool

Το εργαλείο HOMS δεν χρειάζεται υπολογιστή, αφού λειτουργεί αυτόνομα. Έτσι, αποτελεί ένα πιο φορητό εργαλείο για το εργαστήριο.

Εύκολη αναπαραγωγή

Οι μονάδες/εξαρτήματα υλικού του HOMS, μπορούν να βρεθούν εύκολα στην αγορά. Επίσης, η χρήση πανομοιότυπων μπλοκ, κάνει ευκολότερη τη διαδικασία αναπαραγωγής.

Ανοιχτότητα

Το κύριο πλεονέκτημα του εργαλείου HOMS είναι η αντικειμενοστρεφής προσέγγιση και η ανοιχτότητα του υλικού, δίνοντας ελεύθερα την ευκαιρία για υλοποίηση και πειραματισμό σε κάθε ενδιαφερόμενο.

Τι νέο υπάρχει στην έκδοση 1Β

  • 1. Η μονάδα μνήμης/καταχώρησης δεδομένων έχει αντικατασταθεί από ένα απλό μπλοκ με οθόνη TFT (όπως η μονάδα ελέγχου και η αριθμητική & Λογική μονάδα)
  • 2. Η ανάπτυξη του πηγαίου κώδικα και η αποθήκευση στη μνήμη, γίνεται μέσω της γραφικής διεπαφής χρήστη (εφαρμογή Windows)
  • 3. Κάθε μονάδα (μπλοκ) έχει το δικό της κουμπί RESET button
  • 4. Η νέα έκδοση έχει μόνο δύο τύπους μπλοκ (τέσσερις τύπους είχε η πρώτη έκδοση), ενώ όλα τα μπλοκ βασίζονται στο Arduino UNO
  • 5. Η οθόνη επτά τμημάτων των δύο ψηφίων, έχει αντικατασταθεί από μια μαυρόασπρη οθόνη επτά τμημάτων, των τεσσάρων ψηφίων
  • 6. Τα δύο ψηφία που εμφανίζονται στις οθόνες επτά τμημάτων, είναι διαχωρισμένα σε απόσταση ενός ψηφίου για ευκολότερη ανάγνωση (μόνο δύο από τα τέσσερα ψηφία χρησιμοποιούνται)
  • 7. Κάθε μπλοκ καταχωρητή, έχει το δικό του ρυθμιστικό φωτεινότητας, ώστε ο χρήστης να μπορεί να εστιάσει στο φωτεινότερο από αυτά.
  • 8. Τα μπλοκ που υλοποιούν τις μονάδες, μνήμης, ελέγχου και ALU/SR, διαθέτουν TFT οθόνες, στις οποίες ρυθμίζεται το χρώμα φόντου και κειμένου
  • 9. Γράμματα Braille letters έχουν επίσης τοποθετηθεί σε κάθε μπλοκ για ευκολότερη αναγνώριση της κάθε μονάδας
  • 10. Στην έκδοση 1B, υπάρχουν 8 μπλοκ (σε αντίθεση με τα 11 μπλοκ της πρώτης έκδοσης). Ο καταχωρητής C έχει αφαιρεθεί, όπως και οι προσωρινοί καταχωρητές T1 και T2, που ανήκουν στη μονάδα ALU/SR ως εσωτερικά στοιχεία. Έτσι, το μοντέλο αυτής της έκδοσης είναι περισσότερο απλοποιημένο
  • 11. Το PCB (πλακέτα) έχει σχεδιαστεί ως Arduino shiled και υποστηρίζει την οθόνη επτά τμημάτων (προαιρετικά)
  • 12. Προγραμματιζόμενη περιμετρική RGB LED-Strip στη βάση

Τι νέο υπάρχει (συλλογή φωτογραφιών)

Αντικατάσταση Μονάδας μνήμης/δεδομένων
Λογισμικό προγραμματισμού και μεταφόρτωσης
Διαμόρφωση νέου μπλοκ καταχωρητή
Διαμόρφωση καταχωρητή (v.1/1B)
Νέα μπλοκ (Μνήμη, ALU/SR, CU)
Διαμόρφωση ειδικού καταχωρητή (v.1/1B)
Οπτικά χαρακτηριστικά & Οπτικά βοηθήματα
Μπλοκ ΜΝΗΜΗΣ
Λευκό σε μαύρο
  • Επάνω ρυθμιστικό: τέρμα αριστερά
  • Κάτω ρυθμιστικό: τέρμα δεξιά
  • Φόντο: Μαύρο
  • Κείμενο: Λευκό
Μαύρο σε λευκό
  • Επάνω ρυθμιστικό: τέρμα δεξιά
  • Κάτω ρυθμιστικό: τέρμα αριστερά
  • Φόντο: Λευκό
  • Κείμενο: Μαύρο
Μαύρο σε πράσινο
  • Επάνω ρυθμιστικό: όλες οι θέσεις εκτός από τα όρια
  • Κάτω ρυθμιστικό: όλες οι θέσεις εκτός από τα όρια
  • Φόντο: Πράσινο
  • Κείμενο: Μαύρο
Μπλοκ μονάδας ελέγχου
Λευκό σε μάυρο
  • Επάνω ρυθμιστικό: τέρμα αριστερά
  • Κάτω ρυθμιστικό: τέρμα δεξιά
  • Φόντο: Μαύρο
  • Κείμενο: Λευκό
Μαύρο σε λευκό
  • Επάνω ρυθμιστικό: τέρμα δεξιά
  • Κάτω ρυθμιστικό: τέρμα αριστερά
  • Φόντο: Λευκό
  • Κείμενο: Μαύρο
Λευκό σε κόκκινο
  • Επάνω ρυθμιστικό: όλες οι θέσεις εκτός από τα όρια
  • Κάτω ρυθμιστικό: όλες οι θέσεις εκτός από τα όρια
  • Φόντο: Κόκκινο
  • Κείμενο: Μαύρο
ALU/SR Unit block
Λευκό σε μαύρο
  • Επάνω ρυθμιστικό: τέρμα αριστερά
  • Κάτω ρυθμιστικό: τέρμα δεξιά
  • Φόντο: Μαύρο
  • Κείμενο: Λευκό
Μαύρο σε λευκό
  • Επάνω ρυθμιστικό: τέρμα δεξιά
  • Κάτω ρυθμιστικό: τέρμα αριστερά
  • Φόντο: Λευκό
  • Κείμενο: Μαύρο
Λευκό σε μπλε
  • Επάνω ρυθμιστικό: όλες οι θέσεις εκτός από τα όρια
  • Κάτω ρυθμιστικό: όλες οι θέσεις εκτός από τα όρια
  • Φόντο: Μπλε
  • Κείμενο: Μαύρο
Φωτεινότητα μπλοκ καταχωρητή
Κανονική φωτεινότητα
Υψηλή φωτεινότητα
Προσαρμοσμένη φωτεινότητα μεταξύ των μπλοκ
Χρώματα Λογισμικού/GUI
Χρώμα φωτεινό-μπλε
Υψηλή αντίθεση (Λευκό σε μαύρο)
Υψηλή αντίθεση (Μαύρο σε λευκό)

Πλήρης επίδειξη

Δείτε/Κατεβάστε αρχεία (HOMS v.1B)

Πλήρης τεχνικός οδηγός του HOMS

Γενικές πληροφορίες, περιγραφή συστήματος, στοιχεία υλικού, λογισμικό, λειτουργία συστήματος (84 σελίδες). Δείτε (PDF)

Σύντομος οδηγός χρήστη του HOMS

Εκτέλεση εντολών και προγραμμάτων View (PDF)

Arduino (.ino) files

Αριθμητική & Λογική μονάδα (ALU)/SR, Μονάδα ελέγχου (CU), Μνήμη και σύστημα Ε/Ε, καταχωρητές, έλεγχος RGB LED-Strip Κατέβασμα (ZIP)

Γραφική διεπαφή χρήστη (GUI)

Εφαρμογή Visual Basic Κατεβάστε το πλήρες project (ZIP)

Καλωδίωση & βασικά στοιχεία

Καταχωρητές και ειδικά μπλοκ
Δείτε όλα τα μπλοκ-full (PDF)

Στοιχεία
Δείτε τα βασικά στοιχεία (PDF)


Πειραματικό PCB (KiCAD)

PCB – αρχείο readme view PDF

PCB – αρχείο Project KiCAD zip file

Φυσικές διαστάσεις συστήματος

Στοιχεία/εξαρτήματα, υλικά, κυκλώματα, κλπ. Δείτε το HOMS v.1

Άδεια & Χρονοσήμανση

Αυτό είναι ένα open-source έργο υπό άδεια τύπου CC. Αυτό το έργο έχει επίσηςχρονοσημανθεί από τον HELLENIC COPYRIGHT ORGANIZATION (Ημέρα και ώρα: 13/08/2024 11:18:27, Αριθμός καταχώρησης 5749). Δείτε την άδεια σε αρχείο TXT ή δείτε την άδεια online

Δημοσίευση στο διεθνές συνέδριο IEEE EDUCON 2024

Η πρώτη έκδοση παρουσιάστηκε στο διεθνές συνέδριο IEEE EDUCON2024, τον Μάϊο του 2024.Δείτε το αρχείο (PDF) || Το EDUCON 2024 στο web

Επιλεγμένη δημοσίευση (προηγούμενη δουλειά)

P.M.Papazoglou, A Hybrid Simulation Platform for Learning Microprocessors, Computer Applications in Engineering Education, 10.1002/cae.21921, (pp 655-674) WILEY, 2018 online



Αν. Καθηγητής Δρ. Πάνος Παπάζογλου

Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών (ΕΚΠΑ)
Ερευνητικό Εργαστήριο Διαδραστικών Ψηφιακών Συστημάτων
Τμ. Ψηφιακών Τεχνών και Κινηματογράφου


Επικοινωνία: papaz [at] dcarts [dot] uoa [dot] gr

Copyright © Δρ. Παναγιώτης (Πάνος) Παπάζογλου