Το Samsung Austin R&D Center αποκαλύπτει λεπτομέρειες για την ακυκλοφόρητη μικροαρχιτεκτονική CPU Exynos M6

Το Κέντρο Έρευνας & Ανάπτυξης της Samsung Austin (SARC) κυκλοφόρησε ένα έγγραφο που περιγράφει λεπτομερώς τη μικροαρχιτεκτονική του ακυρωμένου προσαρμοσμένου πυρήνα CPU Exynos M6.

Γνωρίζουμε ότι το προσαρμοσμένο έργο πυρήνα της CPU στο Κέντρο Έρευνας & Ανάπτυξης της Samsung (SARC) του Austin έφτασε στο τέλος τον Οκτώβριο του 2019. Για ένα έργο που προωθήθηκε με τόση φανφάρα με την κυκλοφορία του Exynos M1 με Exynos 8890 το 2016, ήταν ένα θλιβερό τέλος. Γιατί η SARC αναδίπλωσε το έργο; Ο προσαρμοσμένος πυρήνας Exynos M5, που εμφανίζεται στο Exynos 990 Το SoC, είναι ο τελευταίος πλήρως προσαρμοσμένος πυρήνας σχεδιασμένος από τη Samsung για το άμεσο μέλλον και εκ των υστέρων, είναι εύκολο να καταλάβουμε γιατί η Samsung εγκατέλειψε τους προσαρμοσμένους πυρήνες, καθώς απλώς δεν ήταν αρκετά ανταγωνιστικοί. Είναι πλέον γνωστό ότι ο πυρήνας Exynos M5 έχει 100% έλλειμμα απόδοσης ισχύος ενάντια στο Cortex-A77 της ARM, που λέει πολλά. Ωστόσο, δεν έπρεπε να γίνει έτσι. Τα σχέδια Exynos M1 και Exynos M2 έδειχναν κάποιες υποσχέσεις και το προσαρμοσμένο έργο του πυρήνα της CPU θεωρούνταν, εκείνη την εποχή, σημαντικό για χάρη του ανταγωνισμού στον χώρο της CPU για φορητές συσκευές. Το Exynos M3 ήταν μια μεγάλη ύφεση παρά τη σημαντική αύξηση του IPC και το

Exynos M4 και το Exynos M5 απέτυχε να συμβαδίσει με την απόθεμα IP της CPU της ARM. Ποιες ήταν οι μικροαρχιτεκτονικές αλλαγές στον επόμενο προσαρμοσμένο πυρήνα, το ακυρωμένο Exynos M6;

Μέχρι στιγμής, η απάντηση σε αυτή την ερώτηση ήταν άγνωστη. Τώρα, όμως, η ομάδα ανάπτυξης της CPU SARC παρουσίασε μια εργασία με τίτλο "Evolution of the Samsung Exynos CPU Architecture" (την οποία μάθαμε μέσω AnandTech) στο International Symposium for Computer Architecture (ISCA), το οποίο είναι ένα συνέδριο IEEE. Αποκαλύπτει πολλές λεπτομέρειες σχετικά με τις προηγούμενες CPU της σειράς Exynos M καθώς και την αρχιτεκτονική του ακυρωμένου Exynos M6.

Το έγγραφο που παρουσιάστηκε από την ομάδα ανάπτυξης CPU της SARC περιγράφει λεπτομερώς τις προσπάθειες της ομάδας κατά την οκταετή ύπαρξή της και επίσης αποκαλύπτει βασικές λεπτομέρειες των προσαρμοσμένων πυρήνων ARM που κυμαίνονται από τον Exynos M1 (Mongoose) στην τρέχουσα γενιά Exynos M5 (Lion), ακόμα και στην ακυκλοφόρητη Exynos M6 CPU, η οποία, πριν από την ακύρωση, αναμενόταν να εμφανιστεί στο Exynos 990's 2021 SoC διάδοχος.

Η ομάδα SARC CPU της Samsung ιδρύθηκε το 2011 για την ανάπτυξη προσαρμοσμένων πυρήνων CPU, οι οποίοι στη συνέχεια εμφανίστηκαν στα συστήματα Samsung Τα Exynos SoC της LSI. Το πρώτο Exynos SoC που χρησιμοποίησε προσαρμοσμένο πυρήνα ήταν το Exynos 8890, το οποίο παρουσιάστηκε στο Samsung Galaxy του 2016 S7. Οι προσαρμοσμένοι πυρήνες παρέμειναν μέρος των Exynos SoC μέχρι το Exynos 990 με τους πυρήνες Exynos M5, οι οποίοι εμφανίζονταν στις παραλλαγές Samsung Galaxy S20 που τροφοδοτούνται από Exynos. (Το επερχόμενο Exynos 992, που πιθανόν να εμφανίζεται στο Galaxy Note 20, αναμένεται να διαθέτει ARM Cortex-A78 και όχι το Exynos M5.) Ωστόσο, η SARC είχε ολοκληρώσει την αρχιτεκτονική Exynos M6 πριν η ομάδα της CPU μάθαμε ότι διαλύθηκε τον Οκτώβριο του 2019, με τη διάλυση να τίθεται σε ισχύ το Δεκέμβριος.

Το έγγραφο ISCA περιλαμβάνει έναν πίνακα επισκόπησης των μικροαρχιτεκτονικών διαφορών μεταξύ των προσαρμοσμένων πυρήνων CPU της Samsung από το Exynos M1 έως το Exynos M6. Μερικά από τα γνωστά χαρακτηριστικά του σχεδιασμού είχαν αποκαλυφθεί από την εταιρεία στην αρχική της αρχιτεκτονική M1 CPU στην εκδήλωση HotChips 2016. Στο HotChips 2018, η Samsung έκανε μια βαθιά βουτιά στο Exynos M3. Η αρχιτεκτονική των πυρήνων Exynos M4 και Exynos M5 έχει επίσης λεπτομερώς αναφερθεί, καθώς και αυτή του M6.

Πηγή: SARC

AnandTech σημειώνει ότι το ένα βασικό χαρακτηριστικό των σχεδίων της Samsung όλα αυτά τα χρόνια ήταν ότι βασίστηκε στο ίδιο σχέδιο RTL που ξεκίνησε με τον πυρήνα Exynos M1 Mongoose. Η Samsung συνέχισε να κάνει βελτιώσεις στα λειτουργικά μπλοκ των πυρήνων με τα χρόνια. Το Exynos M3 αντιπροσώπευε μια αλλαγή από τις πρώτες επαναλήψεις, καθώς διεύρυνε σημαντικά τον πυρήνα από πολλές απόψεις, μεταβαίνοντας από σχεδιασμό 4 πλάτους σε μεσαίο πυρήνα 6 πλάτους. (Τα Apple A11, A12 και A13, από την άλλη πλευρά, έχουν πλάτος αποκωδικοποίησης 7 πλάτους, ενώ τα Cortex-A76, A77 και A78 έχουν πλάτος 4 πλάτους. Το Cortex-X1 αυξάνει το πλάτος αποκωδικοποίησης σε πλάτος 5.)

Η έκθεση κάνει επίσης ορισμένες αποκαλύψεις που δεν ήταν δημόσιες πριν σχετικά με τα Exynos M5 και M6. Για το Exynos M5, η Samsung έκανε μεγαλύτερες αλλαγές στην ιεραρχία της κρυφής μνήμης των πυρήνων, αντικαθιστώντας τις ιδιωτικές κρυφές μνήμες L2 με μια νέα μεγαλύτερη κοινόχρηστη κρυφή μνήμη καθώς και αποκάλυψη μιας αλλαγής στη δομή L3 από σχέδιο 3 τραπεζών σε σχέδιο 2 τραπεζών με λιγότερα αφάνεια.

Ο ακυρωμένος πυρήνας M6 θα ήταν μεγαλύτερο άλμα όσον αφορά τη μικροαρχιτεκτονική. Το SARC είχε κάνει μεγάλες βελτιώσεις, όπως ο διπλασιασμός της εντολής L1 και της κρυφής μνήμης δεδομένων από 64 KB σε 128 KB - AnandTech σημειώνει ότι πρόκειται για μια σχεδιαστική επιλογή που έχει εφαρμοστεί μόνο από τους πυρήνες της σειράς A της Apple μέχρι στιγμής, ξεκινώντας από το Apple A12.

Το L2 διπλασιάστηκε στις δυνατότητές του εύρους ζώνης έως και 64B/κύκλο, ενώ το L3 θα είχε αύξηση από 3MB σε 4MB. Το Exynos M6 θα ήταν ένας πυρήνας αποκωδικοποίησης 8 πλάτους. Όπως σημειώνεται από AnandTech, αυτή θα ήταν η ευρύτερη εμπορική μικροαρχιτεκτονική που είναι γνωστή αυτή τη στιγμή όσον αφορά την αποκωδικοποίηση. Ωστόσο, παρόλο που ο πυρήνας ήταν πολύ ευρύτερος, οι μονάδες εκτέλεσης ακέραιων αριθμών δεν είδαν πολλές αλλαγές. Ένας σύνθετος αγωγός πρόσθεσε μια δεύτερη δυνατότητα διαίρεσης ακέραιου αριθμού, ενώ οι αγωγοί φόρτωσης/αποθήκευσης παρέμειναν οι ίδιοι με τον Μ5 με μία μονάδα φόρτωσης, μία μονάδα αποθήκευσης και μία μονάδα φόρτωσης/αποθήκευσης. Οι αγωγοί κινητής υποδιαστολής/SIMD θα είχαν μια επιπλέον τέταρτη μονάδα με δυνατότητες FMAC. Το L1 DTLB αυξήθηκε από 48 σελίδες σε 128 σελίδες και το κύριο TLB διπλασιάστηκε από σελίδες 4Κ σε σελίδες 8Κ (κάλυψη 32 MB).

Το Exynos M6 θα αντιπροσώπευε μια άλλη σημαντική αλλαγή από τους προκατόχους του αυξάνοντας το παράθυρο εκτός σειράς του πυρήνα από την πρώτη φορά μετά το M3. Θα υπήρχαν μεγαλύτερα αρχεία φυσικών καταχωρητών ακεραίων και κινητής υποδιαστολής και το ROB (Reorder Buffer) θα είχε αυξηθεί από 228 σε 256. AnandTech σημειώνει ότι μια σημαντική αδυναμία των προσαρμοσμένων πυρήνων Exynos εξακολουθεί να υπάρχει στο M5 και θα υπήρχε και στο M6. Θα ήταν τα βαθύτερα στάδια του αγωγού που θα οδηγούσαν σε μια ακριβή ποινή λανθασμένης πρόβλεψης 16 κύκλων, η οποία ήταν υψηλότερη από τους πυρήνες CPU της ARM που έχουν ποινή εσφαλμένης πρόβλεψης 11 κύκλων. Το χαρτί SARC εμβαθύνει ακόμη περισσότερο στον σχεδιασμό πρόβλεψης διακλαδώσεων, παρουσιάζοντας τη σχεδίαση Scaled Hashed Perceptron του πυρήνα της CPU. Αυτός ο σχεδιασμός θα βελτιωνόταν συνεχώς με τα χρόνια και τις υλοποιήσεις, βελτιώνοντας την ακρίβεια διακλάδωσης και μειώνοντας συνεχώς τις εσφαλμένες προβλέψεις ανά κιλό οδηγίες (MPKI). Το SARC παρουσιάζει έναν πίνακα που δείχνει τον αριθμό των δομών αποθήκευσης που καταλαμβάνει το πρόγραμμα πρόβλεψης διακλάδωσης εντός της διεπαφής. Οι τεχνολογίες προανάκτησης του πυρήνα αναφέρθηκαν επίσης λεπτομερώς στο έγγραφο, καλύπτοντας την εισαγωγή μιας κρυφής μνήμης μOP στο M5, καθώς και τις προσπάθειες της ομάδας να σκληρύνει τον πυρήνα ενάντια σε τρωτά σημεία ασφαλείας, όπως Φάντασμα.

Οι προσπάθειες για τη βελτίωση του λανθάνοντος χρόνου μνήμης στους προσαρμοσμένους πυρήνες Exynos αναφέρθηκαν επίσης από τη SARC στην εργασία. Στο Exynos M4, η ομάδα SARC συμπεριέλαβε έναν μηχανισμό καταρράκτη φορτίου που μείωσε την πραγματική καθυστέρηση του κύκλου L1 από τέσσερις κύκλους σε τρεις σε επόμενα φορτία. Ο πυρήνας M4 εισήγαγε επίσης μια παράκαμψη διαδρομής με μια νέα διεπαφή από τους πυρήνες της CPU απευθείας στους ελεγκτές μνήμης, η οποία απέφευγε την κυκλοφορία μέσω της διασύνδεσης. Σύμφωνα με AnandTech, αυτό εξηγούσε μερικές από τις μεγαλύτερες βελτιώσεις λανθάνοντος χρόνου που η δημοσίευση μπόρεσε να μετρήσει με τον Exynos 9820. Το Exynos M5 εισήγαγε μια κερδοσκοπική παράκαμψη αναζήτησης κρυφής μνήμης, η οποία εξέδωσε ένα αίτημα τόσο για τη διασύνδεση όσο και για τις ετικέτες κρυφής μνήμης ταυτόχρονα. Αυτό θα εξοικονομούσε πιθανώς τον λανθάνοντα χρόνο σε περίπτωση απώλειας της προσωρινής μνήμης καθώς το αίτημα για τη μνήμη βρίσκεται σε εξέλιξη. Η μέση καθυστέρηση φορτίου επίσης βελτιωνόταν συνεχώς κατά τη διάρκεια των γενεών από 14,9 κύκλους στο M1 σε 8,3 κύκλους στο M6.

Ενώ τα παραπάνω μικροαρχιτεκτονικά χαρακτηριστικά είναι αρκετά τεχνικά, οι λάτρεις της CPU θα είναι εξοικειωμένοι με τον όρο Instructions Per Clock (IPC), που σημαίνει ανά MHz απόδοση στην απόδοση της CPU ενός νήματος (είναι ο κύριος σημαντικός παράγοντας που καθορίζει την απόδοση της CPU ενός νήματος, με τον άλλο παράγοντα να είναι η ταχύτητα ρολογιού του πυρήνας). Ο ακέραιος IPC και ο IPC κινητής υποδιαστολής είναι και οι δύο καθοριστικοί παράγοντες του IPC. Η ομάδα SARC κατάφερε να πετύχει κατά μέσο όρο 20% ετήσιες βελτιώσεις από το M1 στο M6. Ο Μ3, ειδικότερα, αντιπροσώπευε μεγάλη ποσοστιαία βελτίωση στο IPC, αν και απογοητεύτηκε από άλλους παράγοντες. Το Exynos M5 αντιπροσώπευε μια βελτίωση 15-17% στο IPC, ενώ η βελτίωση IPC για το Exynos M6 που δεν κυκλοφόρησε έχει αποκαλυφθεί ότι έχει μέσο όρο 2,71 έναντι 1,06 για το M1, που αντιπροσωπεύει βελτίωση 20% σε σχέση με το Μ5.

Ο Brian Grayson, ο παρουσιαστής της εφημερίδας, απάντησε σε ερωτήσεις σχετικά με την ακύρωση του προγράμματος κατά τη διάρκεια της συνεδρίας Q&A. Είπε ότι η ομάδα ήταν πάντα στο στόχο και στο χρονοδιάγραμμα με βελτιώσεις απόδοσης και αποδοτικότητας σε κάθε γενιά. (Αυτό σημαίνει ότι οι στόχοι δεν ήταν αρκετά υψηλοί στην αρχή;). Η μεγαλύτερη δυσκολία της ομάδας, από την άλλη, ήταν να είναι εξαιρετικά προσεκτική με το μέλλον αλλάζει ο σχεδιασμός καθώς η ομάδα δεν είχε τους πόρους για να ξεκινήσει από το μηδέν ή να ξαναγράψει εντελώς το α ΟΙΚΟΔΟΜΙΚΟ ΤΕΤΡΑΓΩΝΟ. Με εκ των υστέρων, η ομάδα θα είχε κάνει διαφορετικές επιλογές στο παρελθόν με ορισμένες από τις κατευθύνσεις σχεδιασμού. Σε πλήρη αντίθεση, η ARM έχει πολλές ομάδες CPU που εργάζονται σε διαφορετικές τοποθεσίες που πραγματικά ανταγωνίζονται μεταξύ τους. Αυτό επιτρέπει "επανασχεδιασμούς στο έδαφος" όπως το Cortex-A76. ο Cortex-A77 και το Cortex-A78 είναι οι άμεσοι διάδοχοι του A76.

Η ομάδα SARC είχε ιδέες για βελτιώσεις για επερχόμενους πυρήνες όπως ο υποθετικός Exynos M7. Ωστόσο, υποτίθεται ότι ήταν ένα πολύ υψηλό άτομο στη Samsung που αποφάσισε να ακυρώσει το προσαρμοσμένο βασικό πρόγραμμα. Οπως και AnandTech Σημειώνεται ότι οι προσαρμοσμένοι πυρήνες δεν ήταν ανταγωνιστικοί όσον αφορά την απόδοση ισχύος, την απόδοση και τη χρήση περιοχής (PPA) σε σύγκριση με τους CPU της ARM οποιασδήποτε συγκεκριμένης γενιάς. Τον περασμένο μήνα, η ARM ανακοίνωσε το πρόγραμμα Cortex-X Custom που περιλαμβάνει το νέο Cortex-X1, ένας πυρήνας επόμενης γενιάς που προορίζεται για κινητές συσκευές του 2021. Έχει μια σχεδιαστική φιλοσοφία να σπάσει το φάκελο Cortex-A PPA και να προχωρήσει σε απόλυτη απόδοση. Το Exynos M6, επομένως, θα περνούσε δύσκολα ανταγωνιστικά μαζί του. Παρόλα αυτά, φαίνεται ότι η Samsung δεν θα προσαρμόσει το Cortex-X1 και θα πάει μόνο με τον συνδυασμό Cortex-A78 + Cortex-A55 στο Exynos 992 - ωστόσο, μπορεί να υιοθετηθεί στο ναυαρχίδα του Galaxy S του επόμενου έτους.

Η ομάδα SARC σχεδιάζει ακόμη επί του παρόντος προσαρμοσμένες διασυνδέσεις και ελεγκτές μνήμης για το Samsung Systems LSI. Δούλευε επίσης σε προσαρμοσμένες αρχιτεκτονικές GPU, αλλά το Samsung Systems LSI υπέγραψε συμφωνία με την AMD για χρήση της αρχιτεκτονικής GPU RDNA επόμενης γενιάς (επόμενη αρχιτεκτονική γραφικών) της AMD σε μελλοντικές επεξεργαστές Exynos, ξεκινώντας από το 2021.

Συνολικά, το προσαρμοσμένο έργο πυρήνα της CPU ήταν ένα διαφωτιστικό μάθημα για τους προμηθευτές τσιπ κινητών για το τι μπορεί να πάει στραβά. Η ομάδα του SARC CPU είχε υψηλές φιλοδοξίες να ανταγωνιστεί την Apple, η οποία είναι ο αδιαμφισβήτητος ηγέτης στον χώρο της CPU για κινητά. Δυστυχώς, δεν κατάφερε να ανταγωνιστεί την ARM, δεν πειράζει την Apple. Τα ζητήματα θα μπορούσαν να είχαν λυθεί, αλλά χρόνο με το χρόνο, οι προσπάθειες της SARC ήταν ένα ή δύο βήματα πίσω και αντανακλάται αρνητικά στη αποστολή προϊόντων όπως οι παραλλαγές Exynos 9810 του Samsung Galaxy S9. Τώρα, όλοι οι μεγάλοι προμηθευτές τσιπ κινητών Android θα χρησιμοποιούν το stock IP CPU της ARM από το 2021 και αυτή η λίστα περιλαμβάνει τις Qualcomm, Samsung, MediaTek και HiSilicon. Ο αγώνας θα μεταφερθεί στην Apple με πυρήνες όπως ο Cortex-X1, όχι με προσαρμοσμένους πυρήνες ARM σχεδιασμένους από την αρχή.


Πηγή: Εξέλιξη της αρχιτεκτονικής CPU Samsung Exynos | Μέσω: AnandTech