Le centre de R&D de Samsung Austin révèle les détails de sa microarchitecture de processeur Exynos M6 inédite

click fraud protection

Le centre de recherche et de développement Samsung Austin (SARC) a publié un article détaillant la microarchitecture du cœur de processeur personnalisé Exynos M6 annulé.

Nous savons que le projet de cœur de processeur personnalisé du centre de recherche et de développement d'Austin (SARC) de Samsung s'est terminé en octobre 2019. Pour un projet qui a été promu en grande pompe avec le lancement de l’Exynos M1 équipé de l’Exynos 8890 en 2016, ce fut une triste fin. Pourquoi le SARC a-t-il abandonné le projet? Le noyau personnalisé Exynos M5, présenté dans le Exynos 990 Le SoC est le dernier cœur entièrement personnalisé conçu par Samsung dans un avenir prévisible, et avec le recul, il est facile de comprendre pourquoi Samsung a abandonné les cœurs personnalisés, car ils n'étaient tout simplement pas assez compétitifs. On sait désormais que le noyau Exynos M5 a un déficit d'efficacité énergétique de 100 % contre le Cortex-A77 d'ARM, ce qui en dit long. Pourtant, il n’était pas nécessaire que cela se passe ainsi. Les conceptions Exynos M1 et Exynos M2 se sont montrées prometteuses et le projet de cœur de processeur personnalisé était, à cette époque, considéré comme important pour le bien de la concurrence dans l'espace des processeurs mobiles. L'Exynos M3 a connu un gros ralentissement malgré l'augmentation importante de l'IPC, et le

Exynos M4 et Exynos M5 n'a pas réussi à suivre l'IP du processeur d'origine d'ARM. Quels ont été les changements microarchitecturaux dans le prochain noyau personnalisé, l’Exynos M6 annulé ?

Jusqu’à présent, la réponse à cette question était inconnue. Cependant, l'équipe de développement du processeur SARC a présenté un article intitulé "Évolution de l'architecture du processeur Samsung Exynos" (que nous avons appris via AnandTech) au Symposium international sur l'architecture informatique (ISCA), qui est une conférence de l'IEEE. Il révèle de nombreux détails sur les processeurs précédents de la série Exynos M ainsi que sur l'architecture de l'Exynos M6 annulé.

Le document présenté par l'équipe de développement de processeurs de SARC détaille les efforts de l'équipe au cours de ses huit années d'existence et révèle également des détails clés sur les cœurs ARM personnalisés, allant de l'Exynos M1. (Mongoose) à l'Exynos M5 (Lion) de génération actuelle, et même au processeur Exynos M6 inédit, qui, avant son annulation, aurait dû figurer dans le SoC 2021 de l'Exynos 990. successeur.

L'équipe SARC CPU de Samsung a été créée en 2011 pour développer des cœurs de processeur personnalisés, qui ont ensuite été présentés dans Samsung Systems. Les SoC Exynos de LSI. Le premier SoC Exynos à utiliser un cœur personnalisé était l'Exynos 8890, présenté dans le Samsung Galaxy de 2016. S7. Les cœurs personnalisés sont restés une partie des SoC Exynos jusqu'à l'Exynos 990 avec les cœurs Exynos M5, qui figuraient dans les variantes du Samsung Galaxy S20 alimentées par Exynos. (Le prochain Exynos 992, susceptible de figurer dans le Galaxy Note 20, devrait comporter le processeur ARM Cortex-A78 et non l'Exynos M5.) Cependant, SARC avait terminé l'architecture Exynos M6 avant que l'équipe CPU n'ait a appris sa dissolution en octobre 2019, la dissolution étant effective en Décembre.

Le document ISCA présente un tableau récapitulatif des différences microarchitecturales entre les cœurs de processeur personnalisés de Samsung, de l'Exynos M1 à l'Exynos M6. Certaines des caractéristiques bien connues de la conception ont été divulguées par la société lors de sa première analyse approfondie de l'architecture du processeur M1 lors de l'événement HotChips 2016. Lors de HotChips 2018, Samsung a présenté en profondeur l'Exynos M3. L'architecture des cœurs Exynos M4 et Exynos M5 a également été détaillée, ainsi que celle du M6.

Source: SARC

AnandTech note que l'une des caractéristiques clés des conceptions de Samsung au fil des ans était qu'elles étaient basées sur le même modèle RTL que celui lancé avec le noyau Exynos M1 Mongoose. Samsung a continué à améliorer les blocs fonctionnels des cœurs au fil des années. L'Exynos M3 représentait un changement par rapport aux premières itérations car il élargissait considérablement le noyau à plusieurs égards, passant d'une conception à 4 largeurs à un noyau central à 6 largeurs. (Les Apple A11, A12 et A13, en revanche, ont une largeur de décodage de 7, tandis que les Cortex-A76, A77 et A78 ont une largeur de 4. Le Cortex-X1 augmente la largeur de décodage à 5.)

Le rapport fait également des révélations qui n'étaient pas publiques auparavant concernant les Exynos M5 et M6. Pour l'Exynos M5, Samsung a apporté des modifications plus importantes à la hiérarchie du cache des cœurs, en remplaçant les caches privés L2 par un nouveau. un cache partagé plus grand ainsi que la révélation d'un changement dans la structure L3 d'une conception à 3 banques à une conception à 2 banques avec moins latence.

Le cœur M6 annulé aurait représenté un saut plus important en termes de microarchitecture. SARC a apporté de grandes améliorations telles que le doublement des instructions L1 et des caches de données de 64 Ko à 128 Ko - AnandTech note qu'il s'agit d'un choix de conception qui n'a été mis en œuvre jusqu'à présent que par les cœurs de la série A d'Apple, à commencer par l'Apple A12.

Le L2 a vu ses capacités de bande passante doublées jusqu'à 64 Mo/cycle, tandis que le L3 aurait vu une augmentation de 3 Mo à 4 Mo. L'Exynos M6 aurait été un noyau de décodage de 8 largeurs. Comme l'a noté AnandTech, cela aurait été la microarchitecture commerciale la plus large actuellement connue en termes de décodage. Cependant, même si le noyau était beaucoup plus large, les unités d’exécution entières n’ont pas connu beaucoup de changement. Un pipeline complexe a ajouté une deuxième capacité de division entière, tandis que les pipelines de chargement/stockage sont restés les mêmes que ceux du M5 avec une unité de chargement, une unité de stockage et une unité de chargement/stockage. Les pipelines à virgule flottante/SIMD auraient vu une quatrième unité supplémentaire dotée de capacités FMAC. Le DTLB L1 est passé de 48 pages à 128 pages, et le TLB principal a été doublé, passant de 4 000 pages à 8 000 pages (couverture de 32 Mo).

L'Exynos M6 aurait représenté un autre changement important par rapport à ses prédécesseurs en augmentant la fenêtre de panne du cœur dès la première fois depuis le M3. Il y aurait eu des fichiers de registres physiques entiers et à virgule flottante plus grands, et le ROB (Reorder Buffer) serait passé de 228 à 256. AnandTech note qu'une faiblesse importante des cœurs Exynos personnalisés est toujours présente sur le M5 et aurait également été présente sur le M6. Ce seraient ses étapes de pipeline plus profondes qui entraîneraient une pénalité coûteuse d'erreur de prédiction de 16 cycles, ce qui était plus élevé que les cœurs de processeur d'ARM qui ont une pénalité d'erreur de prédiction de 11 cycles. L'article du SARC approfondit encore plus la conception du prédicteur de branche, en présentant la conception basée sur le Scaled Hashed Perceptron du cœur du processeur. Cette conception aurait été améliorée continuellement au fil des années et des mises en œuvre, améliorant ainsi la précision des branchements et réduisant continuellement les erreurs de prédiction par kilo-instructions (MPKI). SARC présente un tableau qui montre la quantité de structures de stockage occupée par le prédicteur de branche dans le front-end. Les technologies de prélecture du cœur ont également été détaillées dans l'article, couvrant l'introduction d'un cache µOP dans le M5, ainsi que les efforts de l'équipe pour renforcer le noyau contre les vulnérabilités de sécurité telles que Spectre.

Les efforts visant à améliorer la latence de la mémoire dans les cœurs Exynos personnalisés ont également été détaillés par SARC dans le document. Dans l'Exynos M4, l'équipe SARC a inclus un mécanisme de cascade de charge qui a réduit la latence effective du cycle L1 de quatre cycles à trois lors des charges suivantes. Le cœur M4 a également introduit un contournement de chemin avec une nouvelle interface allant des cœurs de processeur directement aux contrôleurs de mémoire, ce qui évite le trafic via l'interconnexion. Selon AnandTech, cela explique certaines des améliorations de latence les plus importantes que la publication a pu mesurer avec l'Exynos 9820. L'Exynos M5 a introduit un contournement spéculatif de recherche de cache, qui envoyait simultanément une requête à l'interconnexion et aux balises de cache. Cela permettrait éventuellement d'économiser de la latence en cas d'échec du cache lorsque la demande de mémoire est en cours. La latence de charge moyenne a également été continuellement améliorée au fil des générations, passant de 14,9 cycles sur le M1 à 8,3 cycles sur le M6.

Bien que les caractéristiques microarchitecturales ci-dessus soient assez techniques, les passionnés de processeurs seront familiers avec le terme Instructions Per Clock (IPC), qui signifie par MHz. performances du processeur monothread (c'est le principal facteur déterminant les performances du processeur monothread, l'autre facteur étant la vitesse d'horloge du processeur). cœur). L'IPC entier et l'IPC à virgule flottante sont tous deux déterminants de l'IPC. L'équipe SARC a réussi à obtenir en moyenne 20 % d'améliorations annuelles du M1 au M6. Le M3, en particulier, représentait un pourcentage d'amélioration important de l'IPC, bien qu'il ait été déçu par d'autres facteurs. L'Exynos M5 représentait une amélioration de 15 à 17 % de l'IPC, tandis que l'amélioration de l'IPC pour l'Exynos M6 inédit a été révélé avoir une moyenne de 2,71 contre 1,06 pour le M1, ce qui représente une amélioration de 20 % par rapport au M5.

Brian Grayson, le présentateur du journal, a répondu aux questions sur l'annulation du programme lors de la séance de questions-réponses. Il a déclaré que l'équipe avait toujours respecté ses objectifs et respecté son calendrier, avec des améliorations de performances et d'efficacité à chaque génération. (Est-ce que cela signifie que les objectifs n’étaient pas assez élevés au départ ?). En revanche, la plus grande difficulté de l'équipe a été d'être extrêmement prudente avec l'avenir. la conception a changé car l'équipe n'avait pas les ressources nécessaires pour repartir de zéro ou pour réécrire complètement un bloc. Avec le recul, l’équipe aurait fait des choix différents dans le passé avec certaines orientations de conception. À l’opposé, ARM dispose de plusieurs équipes de processeurs travaillant dans différents endroits et qui se font concurrence. Cela permet des « refontes de fond » telles que Cortex-A76. Le Cortex-A77 et le Cortex-A78 sont les successeurs directs de l'A76.

L’équipe SARC avait des idées d’amélioration pour les cœurs à venir tels que l’hypothétique Exynos M7. Cependant, c'est soi-disant une personne très haut placée chez Samsung qui a décidé d'annuler le programme de base personnalisé. Comme AnandTech Remarques, les cœurs personnalisés n'étaient pas compétitifs en termes d'efficacité énergétique, de performances et d'utilisation de la zone (PPA) par rapport aux processeurs ARM d'une génération particulière. Le mois dernier, ARM a annoncé le programme Cortex-X Custom comprenant le nouveau Cortex-X1, un noyau de nouvelle génération destiné aux appareils mobiles 2021. Il a pour philosophie de conception de briser l’enveloppe Cortex-A PPA et d’opter plutôt pour des performances absolues. L’Exynos M6 aurait donc eu du mal à rivaliser avec lui. Néanmoins, il semble que Samsung n'adaptera pas le Cortex-X1 et n'utilisera que le combo Cortex-A78 + Cortex-A55 dans l'Exynos 992 - il pourrait cependant être adopté dans le produit phare du Galaxy S de l'année prochaine.

L'équipe SARC conçoit encore actuellement des interconnexions personnalisées et des contrôleurs de mémoire pour Samsung Systems LSI. Il travaillait également sur des architectures GPU personnalisées, mais Samsung Systems LSI signé un accord avec AMD d'utiliser l'architecture GPU RDNA de nouvelle génération (architecture graphique Next) d'AMD dans les futurs GPU Exynos, à partir de 2021.

Dans l’ensemble, le projet de cœur de processeur personnalisé a été une leçon éclairante pour les fournisseurs de puces mobiles sur ce qui peut mal tourner. L'équipe SARC CPU avait de grandes ambitions de rivaliser avec Apple, qui est le leader incontesté dans le domaine des CPU mobiles. Malheureusement, il n’a pas réussi à rivaliser avec ARM, sans parler d’Apple. Les problèmes auraient pu être résolus, mais année après année, les efforts du SARC accusaient un retard ou deux, et cela s'est reflété négativement dans l'expédition de produits tels que les variantes Exynos 9810 du Samsung Galaxy S9. Désormais, tous les principaux fournisseurs de puces mobiles Android utiliseront l'IP du processeur d'origine ARM à partir de 2021, et cette liste inclut Qualcomm, Samsung, MediaTek et HiSilicon. Le combat sera mené par Apple avec des cœurs tels que le Cortex-X1, et non des cœurs ARM personnalisés conçus à partir de zéro.


Source: Evolution de l'architecture du processeur Samsung Exynos | Via: AnandTech