A Samsung Austin R&D Center bemutatja a kiadatlan Exynos M6 CPU mikroarchitektúrájának részleteit

A Samsung Austin Research & Development Center (SARC) közzétett egy dokumentumot, amely részletezi a törölt Exynos M6 egyedi CPU mag mikroarchitektúráját.

Tudjuk, hogy a Samsung Austini Kutatási és Fejlesztési Központjának (SARC) egyedi CPU-magprojektje véget ért 2019 októberében. Egy olyan projektnek, amelyet az Exynos M1-et tartalmazó Exynos 8890 2016-os piacra dobásával népszerűsítettek, szomorú véget ért. Miért hajtotta félbe a SARC a projektet? Az Exynos M5 egyedi mag, amely a Exynos 990 A SoC az utolsó Samsung által tervezett, teljesen egyedi mag a belátható jövőben, és utólag könnyen belátható, hogy a Samsung miért mondott le az egyedi magokról, mivel egyszerűen nem voltak elég versenyképesek. Ma már ismert, hogy az Exynos M5 mag 100%-os energiahatékonysági hiánya van Az ARM Cortex-A77-ével szemben, ami sokat mond. Ennek azonban nem kellett így alakulnia. Az Exynos M1 és Exynos M2 tervek ígéretesnek bizonyultak, és az egyedi CPU magprojektet akkoriban fontosnak tartották a mobil CPU-térben folyó verseny érdekében. Az Exynos M3 nagy visszaesést okozott a jelentős IPC-növekedés ellenére, és a

Exynos M4 és az Exynos M5 nem tudott lépést tartani az ARM törzs CPU IP-jével. Mik voltak a mikroarchitektúra változásai a következő egyedi magban, a törölt Exynos M6-ban?

Erre a kérdésre mindeddig ismeretlen volt a válasz. Most azonban a SARC CPU fejlesztőcsapata bemutatott egy tanulmányt "A Samsung Exynos CPU architektúrájának fejlődése" címmel (amit a AnandTech) az International Symposium for Computer Architecture (ISCA) rendezvényen, amely egy IEEE konferencia. Sok részletet elárul a korábbi Exynos M sorozatú CPU-król, valamint a törölt Exynos M6 architektúrájáról.

A SARC CPU-fejlesztő csapata által bemutatott cikk részletezi a csapat erőfeszítéseit nyolcéves fennállása során, és feltárja az egyedi ARM magok legfontosabb részleteit is, az Exynos M1-től kezdve. (Mongoose) a jelenlegi generációs Exynos M5 (Lion) és még a kiadatlan Exynos M6 CPU-ra is, amely a törlés előtt várhatóan szerepelni fog az Exynos 990 2021-es SoC-jében. utód.

A Samsung SARC CPU csapatát 2011-ben hozták létre, hogy egyedi CPU magokat fejlesszenek, amelyeket aztán a Samsung Systems tartalmaz. Az LSI Exynos SoC-jai. Az első egyedi magot használó Exynos SoC az Exynos 8890 volt, amely a 2016-os Samsung Galaxy-ban szerepelt. S7. Az egyedi magok az Exynos SoC-k részei maradtak egészen az Exynos 990-ig az Exynos M5 magokkal, amelyek az Exynos-hajtású Samsung Galaxy S20 változatokban szerepeltek. (A közelgő Exynos 992, amely valószínűleg szerepelni fog a Galaxy Note 20-ban, várhatóan az ARM-eket fogja tartalmazni Cortex-A78 és nem az Exynos M5.) A SARC azonban befejezte az Exynos M6 architektúrát, mielőtt a CPU-csapat 2019 októberében értesült arról, hogy feloszlatták, és a feloszlatás hatályba lép December.

Az ISCA-papír áttekintő táblázatot tartalmaz a Samsung egyedi CPU-magjai közötti mikroarchitektúra különbségekről az Exynos M1-től az Exynos M6-ig. A tervezés néhány jól ismert jellemzőjét a cég felfedte a HotChips 2016 rendezvényen az M1 CPU architektúra kezdeti mélyrepülése során. A 2018-as HotChips kiállításon a Samsung mélyrepülést adott az Exynos M3-nak. Az Exynos M4 és az Exynos M5 magok architektúráját is részletezték, valamint az M6-ét.

Forrás: SARC

AnandTech megjegyzi, hogy a Samsung tervezéseinek egyik legfontosabb jellemzője az évek során az volt, hogy ugyanazon az RTL-tervezeten alapult, amelyet az Exynos M1 Mongoose maggal indítottak el. A Samsung az évek során folytatta a magok funkcionális blokkjainak fejlesztését. Az Exynos M3 változást jelentett az első iterációkhoz képest, mivel több szempontból jelentősen kiszélesítette a magot, a 4 széles kialakításról a 6 széles középmagosra vált. (Az Apple A11, A12 és A13 dekódolási szélessége viszont 7, míg a Cortex-A76, A77 és A78 4 szélességű. A Cortex-X1 5 szélesre növeli a dekódolás szélességét.)

A jelentés néhány olyan közzétételt is tartalmaz, amelyek korábban nem voltak nyilvánosak az Exynos M5-tel és az M6-tal kapcsolatban. Az Exynos M5 esetében a Samsung nagyobb változtatásokat hajtott végre a magok gyorsítótár-hierarchiáján, és a privát L2 gyorsítótárakat újjal cserélte le. nagyobb megosztott gyorsítótár, valamint az L3 struktúra változásának nyilvánosságra hozatala a 3 bankos kialakításról a 2 bankos kialakításra, amely kevesebb késleltetés.

A törölt M6 mag nagyobb ugrás lett volna a mikroarchitektúra szempontjából. A SARC jelentős fejlesztéseket hajtott végre, például megduplázta az L1 utasításokat és az adatgyorsítótárakat 64 KB-ról 128 KB-ra. AnandTech megjegyzi, hogy ez egy olyan tervezési választás, amelyet eddig csak az Apple A-sorozatú magjai valósítottak meg, kezdve az Apple A12-vel.

Az L2 sávszélessége megduplázódott 64 MB/ciklusra, míg az L3 3 MB-ról 4 MB-ra nőtt volna. Az Exynos M6 egy 8 széles dekódoló mag lett volna. Amint azt megjegyezte AnandTech, ez lett volna a dekódolás szempontjából jelenleg ismert legszélesebb kereskedelmi mikroarchitektúra. Azonban annak ellenére, hogy a mag sokkal szélesebb volt, az egész végrehajtási egységek nem sokat változtak. Egy összetett csővezeték hozzáadott egy második egész osztási képességet, míg a betöltés/tárolás csővezetékek ugyanazok maradtak, mint az M5-nél, egy rakományegységgel, egy raktáregységgel és egy rakomány/tároló egységgel. A lebegőpontos/SIMD-csővezetékek egy további negyedik egységet is láttak volna FMAC-képességekkel. Az L1 DTLB 48 oldalról 128 oldalra nőtt, a fő TLB pedig megduplázódott 4K oldalról 8K oldalra (32 MB lefedettség).

Az Exynos M6 újabb jelentős változást jelentett volna elődeihez képest, ha az M3 óta először megnövelte a mag rendellenes ablakát. Nagyobb egészszámú és lebegőpontos fizikai regiszterfájlok lettek volna, és a ROB (Reorder Buffer) 228-ról 256-ra nőtt volna. AnandTech megjegyzi, hogy az egyedi Exynos magok egyik fontos gyengesége még mindig jelen van az M5-ön, és az M6-on is jelen lett volna. A mélyebb csővezeték szakaszai egy drága, 16-ciklusos téves előrejelzési büntetést eredményeznének, ami magasabb volt, mint az ARM CPU-magjai, amelyek 11-ciklusos hibás előrejelzést tartalmaznak. A SARC-papír még mélyebbre nyúlik az elágazás előrejelző tervezésében, bemutatva a CPU mag Scaled Hashed Perceptron alapú kialakítását. Ez a kialakítás az évek és a megvalósítások során folyamatosan javult volna, javítva az elágazás pontosságát és folyamatosan csökkentve a hibás előrejelzéseket a kilo-utasítások (MPKI) számában. A SARC egy táblázatot mutat be, amely megmutatja, hogy az elágazás-előrejelző mennyi tárolási struktúrát foglal el az előtérben. A mag előzetes letöltési technológiáit is részletezi a cikk, amely a µOP gyorsítótár bevezetéséről szól. az M5-ben, valamint a csapat azon erőfeszítései, hogy megerősítsék a magot az olyan biztonsági résekkel szemben, mint pl. Kísértet.

Az egyedi Exynos magokban a memória késleltetésének javítására tett erőfeszítéseket a SARC is részletezte a cikkben. Az Exynos M4-ben a SARC csapata beépített egy terhelés-terhelés kaszkád mechanizmust, amely az L1 ciklus tényleges késleltetését négyről háromra csökkentette a következő terheléseknél. Az M4 mag egy útvonal-bypass-t is bevezetett egy új interfésszel a CPU magoktól közvetlenül a memóriavezérlőkig, ami elkerülte az összeköttetésen keresztüli forgalmat. Alapján AnandTech, ez magyarázatot ad néhány nagyobb késleltetési javulásra, amelyet a kiadvány mérni tudott az Exynos 9820-al. Az Exynos M5 bevezetett egy spekulatív cache lookup bypass-t, amely egyszerre kérte az összekapcsolást és a cache címkéket. Ez esetleg megspórolná a késleltetést a gyorsítótár hiánya esetén, mivel a memóriakérelem folyamatban van. Az átlagos terhelési késleltetés is folyamatosan javult a generációk során, az M1-es 14,9 ciklusról az M6-os 8,3-as ciklusára.

Míg a fenti mikroarchitektúra jellemzői meglehetősen technikai jellegűek, a CPU-rajongók ismerni fogják az Instructions Per Clock (IPC) kifejezést, amely MHz-enkénti értéket jelent. teljesítmény az egyszálú CPU teljesítményében (ez az elsődleges fő tényező, amely meghatározza az egyszálú CPU teljesítményét, a másik tényező pedig az órajel mag). Az egészszámú IPC és a lebegőpontos IPC egyaránt meghatározói az IPC-nek. A SARC csapatának átlagosan évi 20%-os fejlesztést sikerült elérnie az M1-ről az M6-osra. Különösen az M3 mutatott nagy százalékos javulást az IPC-ben, bár más tényezők cserbenhagyták. Az Exynos M5 15-17%-os javulást jelentett az IPC-ben, míg az IPC javulást a kiadatlan Exynos M6-nál az M1 átlaga 2,71 az 1,06-hoz képest, ami 20%-os javulást jelent az M1-hez képest. M5.

Brian Grayson, a lap előadója válaszolt a program törlésével kapcsolatos kérdésekre a Q&A szekció során. Elmondta, hogy a csapat mindig is a cél és az ütemterv szerint haladt a teljesítmény és a hatékonyság javulásával minden generációval. (Ez azt jelenti, hogy a célok eleve nem voltak elég magasak?). A csapat legnagyobb nehézsége viszont az volt, hogy rendkívül óvatosan bánjon a jövővel tervezési változások, mivel a csapatnak nem volt elegendő erőforrása ahhoz, hogy a nulláról kezdje, vagy teljesen átírja a Blokk. Utólag belegondolva, a csapat a múltban más döntéseket hozott volna a tervezési irányok közül. Éles ellentétben az ARM-ben több CPU-csapat dolgozik különböző helyeken, amelyek ténylegesen versenyeznek egymással. Ez lehetővé teszi az "alapról felépített újratervezést", mint például a Cortex-A76. A Cortex-A77 és a Cortex-A78 az A76 közvetlen utódai.

A SARC csapatának voltak fejlesztési ötletei a következő magokhoz, például a feltételezett Exynos M7-hez. A Samsungnál azonban állítólag egy nagyon magas rangú ember döntött úgy, hogy lemond az egyedi alapprogramról. Mint AnandTech megjegyzi, hogy az egyedi magok nem voltak versenyképesek az energiahatékonyság, a teljesítmény és a területhasználat (PPA) tekintetében az ARM egyetlen generációs CPU-ihoz képest. A múlt hónapban az ARM bejelentette az új Cortex-X Custom programot Cortex-X1, egy következő generációs mag, amelyet 2021-es mobileszközökhöz terveztek. Az a tervezési filozófiája, hogy áttöri a Cortex-A PPA-borítékot, és helyette az abszolút teljesítményre törekszik. Az Exynos M6-nak tehát nehéz dolga lett volna vele versenyezni. Ennek ellenére úgy tűnik, hogy a Samsung nem fogja adaptálni a Cortex-X1-et, és csak a Cortex-A78 + Cortex-A55 kombóval fog működni az Exynos 992-ben – a jövő évi Galaxy S zászlóshajójában azonban elfogadhatják.

A SARC csapata jelenleg is egyedi összeköttetéseket és memóriavezérlőket tervez a Samsung Systems LSI számára. Egyedi GPU-architektúrákon is dolgozott, de a Samsung Systems LSI-n szerződést írt alá az AMD-vel az AMD következő generációs (Next grafikus architektúra) RDNA GPU architektúráját használni a jövőbeli Exynos GPU-kban, 2021-től.

Összességében az egyedi CPU-magprojekt egy megvilágosító lecke volt a mobilchip-gyártók számára arról, hogy mi hibázhat. A SARC CPU csapatának nagy ambíciói voltak, hogy felvegyék a versenyt az Apple-lel, amely vitathatatlanul vezető szerepet tölt be a mobil processzorok terén. Sajnos nem tudta felvenni a versenyt az ARM-mel, nem számít az Apple. A problémákat meg lehetett volna oldani, de évről évre a SARC erőfeszítései egy-két lépéssel elmaradtak, ill ez hátrányosan tükröződött a szállítási termékekben, például a Samsung Galaxy S9 Exynos 9810 változataiban. Mostantól 2021-től az összes nagyobb Android mobilchip-gyártó az ARM törzs CPU IP-jét fogja használni, és ezen a listán szerepel a Qualcomm, a Samsung, a MediaTek és a HiSilicon. A harcot az Apple olyan magokkal viszi majd, mint a Cortex-X1, nem pedig egyedi ARM magokat, amelyeket a semmiből terveztek.


Forrás: A Samsung Exynos CPU architektúrájának fejlődése | Keresztül: AnandTech