Magyar English

130nm-től 5nm-ig

Hogyan skálázódik a CFPU 600-tól 18 000 magig
2026. április 18. · Hocza József Szabolcs
Seal Core — a CFPU chip biztonsági magja a chip közepén

Egy RTL, minden chipre

A legtöbb processzor-architektúra egy konkrét gyártási node-ra és chipméretre van tervezve. Ha változik a node, újratervezik a chipet. A CFPU másképp működik: egyetlen paraméterezhető RTL, amelyből a chipméret és a gyártási technológia határozza meg a core számot.

A core szám a chiphez igazodik, nem fordítva.

Ez azért lehetséges, mert a CFPU 4-szintű hierarchikus architektúrája paraméterezhető: a cluster méret fix (4×4 = 16 core, fizikai optimum), de a cluster-ek, tile-ok és régiók száma állítható. Ugyanaz a Verilog kód, más paraméterekkel.

module cfpu_chip #(
    parameter CORES_PER_CLUSTER  = 16,    // fix: 4×4 mesh
    parameter CLUSTERS_PER_TILE  = 12,    // node-függő: 4-12
    parameter TILES_PER_REGION   = 12,    // node-függő: 4-12
    parameter REGIONS            = 24,    // chipméret-függő: 4-24
    parameter SRAM_KB_PER_CORE   = 1024   // node-függő: 16-1024
);

// 7nm, 800 mm²:  16 × 8 × 8 × 8  =  8 192 core, 256 KB/core
// 5nm, 800 mm²:  16 × 8 × 8 × 10 = 10 240 core, 256 KB/core

Miért skálázódik?

A kulcs: a SRAM dominálja a core területét (55-75%), nem a logika. Az SRAM rosszabbul skálázódik, mint a logika — ezért a tényleges core-sűrűség növekedés lassabb, mint a logika-sűrűség sugarlná. De kompenzálásként: minden node-lépésnél az SRAM-ot is növeljük.

NodeLogika sűrűségSRAM cellaSkálázási faktor
130nm (Sky130)~2.5 MTr/mm²~1.0 μm²
28nm~20 MTr/mm²~0.12 μm²~8×
7nm~91 MTr/mm²~0.027 μm²~37×
5nm~171 MTr/mm²~0.021 μm²~48×

Core méret csomópontonként

A) Növekvő SRAM — gazdagabb aktor, kevesebb core

Ha a technológia fejlődésével az SRAM-ot is növeljük, minden core több aktort, nagyobb working set-et, gazdagabb programokat futtathat:

NodeCore logikaSRAM/coreSRAM területCore összesen
130nm0.80 mm²16 KB0.13 mm²~1.06 mm²
28nm0.10 mm²64 KB0.06 mm²~0.18 mm²
7nm0.022 mm²256 KB0.057 mm²~0.083 mm²
5nm0.012 mm²512 KB0.088 mm²~0.103 mm²

B) Fix 256 KB SRAM — maximális core szám

Ha az SRAM-ot 256 KB-on tartjuk minden node-on, a felszabaduló terület több core-t jelent — nagyobb párhuzamosság, több egyidejű aktor:

NodeCore logikaSRAM/coreSRAM területCore összesen
130nm0.80 mm²256 KB2.10 mm²~2.93 mm²
28nm0.10 mm²256 KB0.25 mm²~0.37 mm²
7nm0.022 mm²256 KB0.057 mm²~0.083 mm²
5nm0.012 mm²256 KB0.044 mm²~0.059 mm²

A két stratégia között a workload dönt: ha maximális párhuzamosság kell (SNN, sok kis aktor), a fix 256 KB és több core a jobb választás. Ha gazdagabb aktorok kellenek (ML inference, nagy objektumgráfok), a növekvő SRAM éri meg. A paraméterezhető RTL mindkettőt támogatja — a SRAM_KB_PER_CORE paraméter a gyártáskor állítható.

Hány core fér a chipre?

Kihasználható terület = chipméret × 0.78 (levonva: I/O pad, Seal Core, crossbar-ok, routing csatornák, perifériák).

A) Növekvő SRAM (16 KB → 512 KB)

NodeSRAM/coreCore méret100 mm²400 mm²800 mm²1 400 mm²
130nm16 KB1.06 mm²742945881 030
28nm64 KB0.18 mm²4331 7333 4676 067
7nm256 KB0.083 mm²9403 7597 51813 157
5nm512 KB0.103 mm²7573 0296 05810 602

B) Fix 256 KB SRAM — maximális párhuzamosság

NodeSRAM/coreCore méret100 mm²400 mm²800 mm²1 400 mm²
130nm256 KB2.93 mm²27107213373
28nm256 KB0.37 mm²2118431 6862 951
7nm256 KB0.083 mm²9403 7597 51813 157
5nm256 KB0.059 mm²1 3225 28810 57618 508

Core szám (800 mm² die, fix 256 KB):

130nm
213
28nm
1 686
7nm
7 518
5nm
10 576
5nm-en a 256 KB változat ~75%-kal több core-t ad, mint az 512 KB (10 576 vs 6 058). A döntés a workload-tól függ: maximális párhuzamosság (SNN, sok kis aktor) → 256 KB. Gazdagabb aktorok (ML, nagy objektumok) → 512 KB. Az RTL paraméterezhető.

A hierarchia alkalmazkodik

A 4-szintű architektúra nem merev — a szintek száma a core számból következik:

Core számSzintekKonfiguráció
< 2562 (mesh + 1 crossbar)IoT, Secure Element
256 – 2 0003 (mesh + 2 crossbar)Edge, mikrokontroller
2 000 – 20 0004 (mesh + 3 crossbar)Számítási cél
20 000+4-5Wafer-scale

Négy core típus + MAC Slice

A CFPU nem egyféle core-t gyárt — négy programozható core típus létezik, az ML inference-t pedig nem programozható MAC Slice-ok végzik:

CoreISAFPUGC + Obj.SRAMSzerep
NanoCIL-T0 (48 opkód)NincsNincs4-64 KBSpike, szenzor, egyszerű aktor
ActorTeljes CILNincsVan64-256 KBAktor-natív: objektumok, GC, kivételek
RichTeljes CIL + FPUVanVan128-512 KBFP-igényes, tudományos, teljes .NET
SealAuthCode, hashCrypto HW~32 KBKód hitelesítés — 1+ / chip
MAC SliceFSM (nincs CIL)4-256 KBML inference — 8×8 INT8 MAC, nem programozható

Core szám összehasonlítás (5nm, 800 mm²)

Core + SRAMNode méretCore szám
Nano + 4 KB0,017 mm²~47 000
Actor + 64 KB0,032 mm²~25 000
Rich + 256 KB0,071 mm²~11 300

A node méretek tartalmazzák az ajánlott L0 router területet és az L1–L3 infrastruktúra per-core részét (~0,007 mm²). A CFPU-ML chip MAC Slice-okat használ (nem programozható core-okat), chiplet architektúrában — lásd CFPU-ML-Max.

CFPU termékcsalád

VariánsSealCore-okCélpiac
CFPU-N1 SealNano onlyIoT, masszív SNN
CFPU-A1 SealActor onlyActor cluster, stream
CFPU-R1 SealRich onlyML inference, FP
CFPU-ML1 SealMAC Slice + ActorML/SNN inference (chiplet)
CFPU-H1 SealActor + NanoHeterogén supervisor+worker
CFPU-X1 SealVegyes (bármely kombináció)Alkalmazás-specifikus

Ugyanaz az RTL, a CORE_TYPE paraméter határozza meg a gyártott core típust. Heterogén chipen egy chipen belül is több típus lehet.

CFPU-ML-Max (5nm, chiplet, 18 tine): ~94 752 MAC Slice (8×8 INT8, M SKU) + ~150 Actor Core (FP16, IOD-n) = ~6 066 csúcs TOPS INT8 @ 500 MHz, 740 MB on-chip SRAM*. Részletek: Core típusok blog, CFPU-ML-Max blog.

* Aritmetikai projekciók +25% design marginnal. Chiplet: 85 mm² tine die (5nm), 2×9 elrendezés (18 tine + IOD, SoIC+CoWoS). RTL szimuláció vagy szilícium mérés még nem áll rendelkezésre.

Node-specifikus konfigurációk

130nm (Sky130) — az első szilícium

L0: 16 core, 4×4 mesh, 16 KB SRAM/core
L1: 6 cluster, 6×6 crossbar
L2: 6 tile, 6×6 crossbar + Seal Core

16 × 6 × 6 = 576 Rich Core
Össz SRAM: 9 MB

Ez a „kis CFPU” — az első valódi szilícium, ahol a teljes hierarchia és a Seal Core már jelen van, csak kisebb skálán. Az RTL ugyanaz, mint a későbbi chipeken.

28nm — kereskedelmi célú

L0: 16 core, 4×4 mesh, 64 KB SRAM/core
L1: 6 cluster, 6×6 crossbar
L2: 6 tile, 6×6 crossbar
L3: 6 régió, 6×6 crossbar + Seal Core

16 × 6 × 6 × 6 = 3 456 Rich Core
Össz SRAM: 216 MB

7nm — nagy teljesítmény

L0: 16 core, 4×4 mesh, 256 KB SRAM/core
L1: 8 cluster, 8×8 crossbar
L2: 8 tile, 8×8 crossbar
L3: 8 régió, 8×8 crossbar + Seal Core

16 × 8 × 8 × 8 = 8 192 Rich Core
Össz SRAM: 2 GB

5nm — cél konfiguráció (800 mm², 256 KB SRAM)

L0: 16 core, 4×4 mesh, 256 KB SRAM/core
L1: 8 cluster, 8×8 crossbar
L2: 8 tile, 8×8 crossbar
L3: 10 régió, 10×10 crossbar + Seal Core

16 × 8 × 8 × 10 = 10 240 Rich Core
Össz SRAM: 2.5 GB

(1 400 mm²-es die-on: 18 régió, 18 432 core, 4.5/9.2 GB SRAM)

A latencia állandó marad

A worst-case latencia ~85–171 ciklus tartományban mozog a node-tól, a hierarchia mélységétől és a payload mérettől függően. 5nm-en a cross-régió worst-case ~171 ciklus (~342 ns @ 500 MHz, 128B payload); tipikus kis üzenetek (~48B) ~93 ciklus (~186 ns) alatt érkeznek. A kontextus: ez versenyképes a szoftveres aktor üzenetküldéssel (Erlang/BEAM: ~0,5–2 µs).

NodeCore szám (800 mm²)SRAM/coreSzintekL0 cluster méretWorst-case latencia (128B)Tipikus (48B)
130nm57616 KB2~5.3 mm~85 cyc~38 cyc
28nm3 45664 KB3~2.7 mm~120 cyc~68 cyc
7nm8 192256 KB4~1.4 mm~171 cyc~93 cyc
5nm10 240256 KB4~1.1 mm~171 cyc~93 cyc
Ugyanaz az RTL, 130nm-től 5nm-ig. A 130nm-es 576 core-os első szilícium pontosan ugyanazt a kódot futtatja, mint az 5nm-es 10 000+ core-os — csak a paraméterek mások. Az F3-on validált router design F7-ig változatlan marad. A worst-case cross-régió latencia ~171 ciklus (~342 ns @ 500 MHz, 128B payload, v3.2), ami versenyképes a szoftveres aktor keretrendszerekkel.

A Seal Core mindig a középen

Függetlenül a node-tól és a core számtól, a Seal Core mindig a chip geometriai közepén van — az L3 crossbar-ral egybeépítve. Ez kommunikációs topológiai döntés: a csillag középpontja minimalizálja a maximális vezetékhosszt bármelyik régióhoz, és minden cross-régió forgalom természetesen áthalad rajta — biztonsági ellenőrzés extra routing nélkül.

Minden chipváltozatban, 576 core-tól 18 432-ig, ugyanaz a hálózati architektúra: a Seal Core design-ból lát minden cross-régió forgalmat.

Nyílt forráskód

Az egész tervezési folyamat, a skálázási modell és a paraméterezhető RTL publikusan elérhető.

A CFPU nem egy chip — hanem egy chipcsalád. Egy RTL, amely a technológiával együtt növekszik, a 130nm-es első szilíciumtól az 5nm-es 18 000+ magos célkonfigurációig.