Κυριακή 31 Μαΐου 2015

Υδροπνευματικός Αθροιστής 3-bit

Η ιδέα κατασκευής ενός δυαδικού αθροιστή που θα λειτουργούσε με νερό (υδροπνευματικός αθροιστής) γύριζε στο μυαλό μου κάμποσα χρόνια μέχρι που τελικά υλοποιήθηκε τα Χριστούγεννα του 2013. Σκοπός μου ήταν να αποδείξω στους μαθητές μου, όσο πιο παραστατικά μπορούσα, πως είναι δυνατό να δημιουργηθεί ένας ψηφιακός υπολογιστής χρησιμοποιώντας οποιοδήποτε υλικό/στοιχείο, αρκεί να υπάρχει η δυνατότητα κατασκευής των λογικών πυλών που θα υλοποιούν τις βασικές πράξεις της δυαδικής λογικής. Με άλλα λόγια, η περίπτωση του νερού, απαιτεί τη κατασκευή διακοπτών νερού που θα λειτουργούν με νερό. Στο σημείο αυτό πρέπει να αναφερθεί, ότι ο δυαδικός αθροιστής, δηλαδή μια συσκευή που έχει τη δυνατότητα πρόσθεσης δύο δυαδικών αριθμών, αποτελεί τον «εγκέφαλο» της μονάδας αριθμητικής και λογικής (Arithmetic and Logic Unit), των μικροεπεξεργαστών των σύγχρονων ηλεκτρονικών υπολογιστών και επομένως, θεωρητικά τουλάχιστο, από τη στιγμή που μπορεί να κατασκευαστεί ένας αθροιστής που λειτουργεί με νερό, θα μπορούσε να κατασκευαστεί και ένα σύστημα υπολογιστή που λειτουργεί εξ’ ολοκλήρου με νερό. Βέβαια, η κατασκευή ενός τέτοιου συστήματος θα είχε μόνο εκπαιδευτικό ενδιαφέρον.

Ημιαθροιστής
Δυαδικός ημιαθροιστής με πύλες XOR & AND
(Α,Β = Είσοδοι, S = Άθροισμα εισόδων,
C = Κρατούμενο αθροίσματος εισόδων)
Ως γνωστό, ένας δυαδικός αθροιστής πολλών bit, ουσιαστικά αποτελείται από ένα ημιαθροιστή (half adder) και μια σειρά/ακολουθία από πλήρες αθροιστές (full adders). Ο ημιαθροιστής είναι υπεύθυνος για την πρόσθεση των λιγότερων σημαντικών ψηφίων των δύο αριθμών, ενώ οι πλήρες αθροιστές υλοποιούν τη πρόσθεση των υπόλοιπων δυαδικών ψηφιών (bit) των δύο προσθετέων. Τόσο ο ημι-αθροιστής, όσο και ο πλήρης αθροιστής, δίνουν ως έξοδο το άθροισμα (S) και το κρατούμενο (C) της αντίστοιχης δυαδικής πρόσθεσης, ενώ έχουν ως είσοδο, ο μεν ημιαθροιστής τους δύο προσθετέους (Α και Β), ο δε πλήρης αθροιστής τους δύο προσθετέους και το κρατούμενο (Cin) από τη προηγούμενη πρόσθεση. Στη πράξη, ο ημιαθροιστής κατασκευάζεται από μία λογική πύλη XOR (που δίνει το άθροισμα S) και μία λογική πύλη AND (που δίνει το κρατούμενο C). Ο πλήρης αθροιστής κατασκευάζεται με το συνδυασμό δύο ημιαθροιστών (για τον υπολογισμό του αθροίσματος S) και μιας λογικής πύλης OR (για τον υπολογισμό του κρατούμενου Cout). Έτσι, αν μπορούν να κατασκευαστούν οι απαιτούμενες λογικές πύλες που θα λειτουργούν με νερό, είναι δυνατή η κατασκευή ενός υδροπνευματικού αθροιστή.
Πλήρης αθροιστής
Πλήρης αθροιστής από το συνδυασμό δύο ημιαθροιστών και μίας πύλης OR

Μετά από πολύμηνες αναζητήσεις και δοκιμές, την ιδέα για τον τελικό σχεδιασμό την έδωσε ο «Υδραυλικός Υπολογιστής» του Paulo Blinkstein (χρησιμοποιείται η ίδια αρχή λειτουργίας αλλά με διαφορετικό τρόπο κατασκευής). Ουσιαστικά, τα σήματα εισόδου και εξόδου δηλ. οι δυαδικοί αριθμοί που θα προστεθούν και το αποτέλεσμα της πρόθεσης του, αναπαρίστανται από νερό που ρέει (ή δε ρέει) μέσα σε σωληνώσεις και οι λογικές πύλες φτιάχνονται από μία ειδική διάταξη από δεξαμενές νερού, ενώ η ενέργεια που απαιτείται για τη ροή του νερού, παρέχεται από την ίδια τη βαρύτητα. Ειδικότερα, μία δεξαμενή νερού που βρίσκεται μέσα σε μια άλλη, υλοποιεί τη συμπεριφορά μιας πύλης AND και ταυτόχρονα μιας XOR δηλ. ενός ημιαθροιστή.
Υδροπνευματικές πύλες XOR και AND
Υδροπνευματικές πύλες XOR και AND σε μία μοναδική σύνθεση (οι σωληνώσεις υπερχείλισης δεν φαίνονται)

Υδροπνευματική πύλη OR
Υδροπνευματική πύλη OR (η σωλήνωση υπερχείλισης δεν φαίνεται)
Η λογική πύλη OR υλοποιείται από μία μόνο δεξαμενή που έχει δύο ανεξάρτητες εισερχόμενες ροές νερού και μία εξερχόμενη. Οι δεξαμενές διαθέτουν επίσης σωληνώσεις υπερχείλισης που δεν φαίνονται στα παραπάνω σχηματικά διαγράμματα.

Σύμφωνα με τα παραπάνω, για την κατασκευή ενός κλασσικού αθροιστή 3-bit, απαιτούνται συνολικά 5 ημιαθροιστές και δύο πύλες OR.
Αθροιστής 3-bit
Αθροιστής 3-bit με χρήση κλασσικών λογικών πυλών
Τα υλικά που χρησιμοποιήθηκαν για την κατασκευή
του υδροπνευματικού αθροιστή
Τα εργαλεία που χρησιμοποιήθηκαν για την κατασκευή
του υδροπνευματικού αθροιστή
Έτσι, για την κατασκευή του υδροπνευματικού αθροιστή 3-bit, χρειάζονται 5 αντίστοιχες διπλές δεξαμενές και 2 μονές, μαζί με τις αντίστοιχες σωληνώσεις τους. Θέλοντας να κρατήσω τον όλο σχεδιασμό χαμηλό σε κόστος, σκέφτηκα να χρησιμοποιήσω απλά υλικά της καθημερινότητας, ώστε ο καθένας (και κατ’ επέκταση οι μαθητές μου) να έχει τη δυνατότητα υλοποίησης της. Έτσι, για τις δεξαμενές χρησιμοποιήθηκαν πλαστικά μπουκάλια νερού μισού λίτρου και συσκευασίες από φιλμ φωτογραφικών μηχανών. Ενώ για τις σωληνώσεις χρησιμοποιήθηκαν πλαστικά καλαμάκια. Για τις δεξαμενές θα μπορούσαν να χρησιμοποιηθούν πλαστικά μπουκάλια νερού 1,5 και 0,5 λίτρου αλλά η όλη κατασκευή θα γινόταν ογκώδη και το απέφυγα. Όλες οι απαιτούμενες κολλήσεις έγιναν με ζεστή σιλικόνη, ενώ χρησιμοποιήθηκαν και ξύλινα καλαμάκια (για σουβλάκια) για τη στερέωση των σημαντικών/κρίσιμων σωληνώσεων εισόδου (οι υπόλοιπες στερεώσεις έγιναν με blu-tack).


Υδροπνευματικός αθροιστής 3-bit
Υδροπνευματικός αθροιστής 3-bit
Η όλη κατασκευή τοποθετήθηκε σε ένα πλαίσιο από πλέξιγκλας και για να υπάρχει συνεχή ροή χρησιμοποιήθηκε μία αντλία νερού, που φέρνει το χρησιμοποιημένο νερό από το κάτω μέρος της συσκευής σε μία δεξαμενή στη κορυφή της για επαναχρησιμοποίηση. Οι σειρά από διπλές δεξαμενές στο πάνω μέρος της κατασκευής χρησιμοποιούνται ως διακόπτες επιλογής των δυαδικών προσθετέων. Στο κάτω μέρος βρίσκονται οι σωληνώσεις που δηλώνουν το αποτέλεσμα της άθροισης, ενώ στο πίσω μέρος, όλες οι σωληνώσεις υπερχείλισης κάθε πύλης καταλήγουνσε ένα κεντρικό σωλήνας υπερχείλισης που οδηγεί το περίσσιο νερό κατευθείαν στο χώρο της αντλίας.


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

Το παρακάτω βίντεο είναι η παρουσίαση του υδροπνευματικού αθροιστή στο 4ο Φεστιβάλ Ψηφιακής Δημιουργίας από τους μαθητές μου στα πλαίσια του μαθήματος «Βασικές Αρχές Πληροφορικής και Ψηφιακής Τεχνολογίας» για το σχολικό έτος 2013-2014.


Κλείνοντας, πρέπει να σημειωθεί ότι πολύ λίγες παρόμοιες προσπάθειες έχουν στεφθεί με επιτυχία στο παρελθόν σε διεθνές επίπεδο. Βέβαια, ο συγκεκριμένος τρόπος άθροισης αριθμών έχει μόνο εκπαιδευτικό χαρακτήρα και σε καμία περίπτωση δεν μπορεί να συγκριθεί με τις δυνατότητες ενός Η/Υ (ακόμη και αυτών των δεκαετιών του 1930).

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου