Stadier i designen av nya processorer och grafikprocessorer från Intel, AMD och NVIDIA

0 Shares

Stadier i designen av nya processorer och grafikprocessorer från Intel, AMD och NVIDIA

Allt här i livet följer en metodik, speciellt med tanke på att utveckla nya produkter. Som består av en serie protokoll med syfte att nå ett tydligt resultat på kortast exakt tid. Utformningen av CPU: er är inte främmande för detta och det är därför vi kommer att beskriva de olika stegen som följs när man designar en CPU.

Om vi ​​tar en CPU från några år sedan och köper den med en ny vid första anblicken kommer de att se likadana ut, men det är inte fallet, den större komplexiteten i de nyare designerna kräver mycket längre arbetstid och med det en mer kvalificerad personal. belopp. Det är sant att varje ny tillverkningsnod gör det möjligt att placera fler transistorer, men detta innebär också mer arbete och med tanke på att utvecklingstider är oförlåtliga är det nödvändigt att designen av de nya designerna följer en serie ordnade steg.

Allt börjar med att välja tillverkningsnod

Obleas Intel

Det första steget görs inte av ingenjörerna, utan utförs av cheferna, som förhandlar om mångmiljonkontrakt med de olika gjuterierna och gör olika förutsägelser om produktionsnivå och kostnader.

Specifikationerna och kostnaderna för tillverkningsnoden kommer att avgöra för arkitekterna vilken yta de kommer att ha för att skapa chipet, budgeten för antalet transistorer och utvecklingstiderna de har för att skapa de nya CPU-designerna.

Följande är förverkligandet av en disposition

Planlösning

Golvplanering är inget annat än ett schema där vi anger de allmänna grundelementen som utgör en CPU för att beställa dem i ett utrymme. Med allmänna element pratar vi inte om att placera en CPU-kärna här, cachen här, GPU:n där, etc.

Men med detta hänvisar vi till mycket mer grundläggande element såsom kombinationskretsar såsom en multiplexer, logiska grindar av olika typer, ALU, minnesbuffertar etc. Detta görs på grund av att hårdvarubeskrivningsspråk kräver att sammankopplingen mellan de olika element specificeras och det är därför viktigt att ta en penna och papper, ett stort pappersark för att koppla samman de olika elementen i ett schema.

Det första diagrammet som skapas är inte det sista, men det används för att organisera de olika modulerna i en CPU i två typer av block:

  • De förra kallas fasta block, de inkluderar de element som inte kommer att genomgå designvariationer och kommer att förbli statiska när det gäller deras område, på grund av det faktum att deras natur tillåter det.
  • Å andra sidan är de mångsidiga blocken de delar som kommer att ändras, speciellt för att interaktionen med andra delar av chippet kräver det eller helt enkelt för att de ännu inte vet vilken design som kommer att implementeras i den slutliga versionen.

Om det finns tillräckligt med utrymme i Golvplaneringsdesignen av processorn för att förbättra vissa element, försöker den integrera mer avancerade lösningar för de delar som är under utveckling parallellt och som vi kommer att se i nästa avsnitt.

3:e designstadierna för en CPU: definition av ISA

Etapas diseño processador ISA

Nästa steg är definitionen av uppsättningen register och instruktioner som ska användas, i fallet med CPU:er där dessa ärvs från generation till generation kan implementeringen tyckas lätt, men tillägget av nya instruktioner och register för med sig omorganisationen av något som i sig är tillräckligt komplext.

I GPU:er är det annorlunda, de kör inga program och varje ny generation innebär att man kan ändra karaktären på ISA för sina shader-enheter på ett mer mångsidigt sätt. Så om det är nödvändigt att ta bort instruktioner kan det göras, men i en CPU är det inte, att ta bort en instruktion eller ett register är att bryta kompatibiliteten med programvaran.

Det är de delar som ansvarar för att bearbeta data som vanligtvis är av varierande storlek i utformningen av alla typer av processorer och de som till slut går igenom detta designstadium. Fasta funktionselement tar däremot inte emot dessa ändringar.

Fjärde av designstegen för en CPU: testning i FPGA

FPGA-3

Nej, vi har inte nått slutstadiet, men det är nödvändigt att bevisa att designen är funktionell, för detta ändamål är FPGA-kort vanligtvis anslutna till varandra i en enorm matris. Var och en av FPGA:erna har programmerats eller snarare konfigurerats för att fungera som en del av den övergripande designen av CPU eller GPU som vi designar.

Tanken här är inte att få full fart, utan att i slow motion kontrollera att designen är funktionell. Så vi kommer att ha mycket högre latenser och mycket lägre hastigheter än slutprocessorn, men det vi är intresserade av är att alla element fungerar.

Femte av designstegen för en CPU: I/O, effekt och klocka

Diseño CPU enrutado

Det fjärde steget består redan av skapandet av chipet är att skapa det slutliga chippet, men vi befinner oss med ingångsproblemet att vi måste designa energifördelningen i kretsen å ena sidan och å andra sidan klocksignalerna. , varav några kommer att härledas från en masterklocka som kommer att delas upp och andra kommer att ha sin egen klocka.

Det du gör är att ta planritningen som vi har sett i föregående avsnitt och omge den i en kvadrat eller rektangel uppdelad i kvadranter. På utsidan av kvadranterna är den tilldelad en specifik energi- eller I/O-funktion. Det är här som omkretsen av ett chip utformas och placeringen av de olika kommunikationsgränssnitten med kringutrustning och minne markeras.

Det är i detta skede som all dokumentation kring distributionen av elektrisk energi också kontrolleras om utformningen av de olika elementen gör det möjligt att nå de klockhastigheter som förväntades uppnås.

Processorverifiering

stepping processador test

Efter designen kommer verifieringen av densamma. Där den färdiga designen valideras av ett helt annat team, som letar efter designfel på den fysiska nivå som den kan ha. Kunskapen hos valideringsteamet skiljer sig helt från designen.

Anledningen till detta är att de berör väldigt olika grenar och valideringsteamet är mer fokuserade på att upptäcka och korrigera fel som uppstår i den fysiska implementeringen av en CPU och inte i dess arkitektur, som inte ändrar ursprung. En motsvarighet till byggvärlden skulle vara en grupp arbetare och entreprenörer som prototyper av ett hus eller en byggnad och upptäcker fel som påverkar prestandan för den slutliga designen och som inte är synliga i simuleringen.

0 Shares