Zephyrnet-logotyp

EDA gör ett frenetiskt tryck på maskininlärning

Datum:

Maskininlärning håller på att bli en konkurrensförutsättning för EDA-branschen. Stora chiptillverkare stöder och kräver det, och de flesta EDA-företag använder det för ett eller flera steg i designflödet, med planer på att lägga till mycket mer över tiden.

Under de senaste veckorna har de tre största EDA-leverantörerna gjort svepande tillkännagivanden om att införliva ML i sina verktyg vid sina respektive användarevenemang, och hela chipbranschen är på väg i en liknande riktning. Maskininlärning är en naturlig passform för chipdesign. Den lär en maskin hur man utför en specifik uppgift baserat på mönsterigenkänning, och resultaten är vanligtvis mycket exakta.

Detta står i kontrast till den bredare AI, som trots utbredd förvirring eftersom dessa termer ofta används omväxlande, tillåter en maskin att fungera mer självständigt. Fullständig AI kräver mycket mer data för träning, och resultat levereras i allmänhet som sannolikheter. Ju mer data – och ju mer relevant data – desto bättre noggrannhet, vilket är anledningen till att mycket av utbildningen för AI i smarta telefoner och bilar görs i hyperskala datacenter.

Mängden data som används i chipdesign är jämförelsevis liten, och problemen är extremt komplexa och ofta designspecifika. Så medan EDA-leverantörer fortsätter att experimentera med AI för en mängd olika användningsområden, kretsar den initiala implementeringen kring en delmängd som kallas förstärkningsinlärning. Det, tillsammans med övervakad och oövervakad inlärning, är de tre primära metoderna för maskininlärning. Förstärkningsinlärning belönar i huvudsak beteende på en glidande skala, med den högsta belöningen för optimalt beteende, och den justerar det beteendet dynamiskt baserat på kontinuerlig feedback.

"Tänk på ett chips fysiska design och testerna du gör på det", säger Joseph Sawicki, executive vice president för IC EDA vid Siemens Digital Industries-programvara. "Det finns bokstavligen miljarder och miljarder mönster, och du kan korrelera dessa mönster till var de ligger på vissa nätsegment och så. Sedan får du testdata som säger att "den här designen misslyckades." Jag kör några extra vektorer och får en massa olika felloggar, som alla berättar att jag har ett fel i vissa logiska koner. Så nu har jag en massiv kretsdesign och dessa logiska koner, och jag kan ta en titt på ett neuralt nätverk som kan tränas för att visa att, givet den här fysiska designen, det ser ut som att den logiska konen är dålig och min misslyckanden kommer sannolikt att finnas inom detta område. Då kan jag göra korrelation av det med de fysiska mönstren, och få ett misslyckande. I ett fall sa vi till en kund: 'Din Via 5 volframavsättning som sker i den här fabriken på den här raden är det som är dåligt. Och visst var det utanför spec."

Detta möjliggör också mycket bredare experiment på kortare tid. "Så som det har gjorts tidigare är att användare vanligtvis kör olika kombinationer och de kommer till en viss PPA", säger Sassine Ghazi, VD och operativ chef på Synopsys. "Nu tittar systemet på allt det där utrymmet för optimering och det lanserar flera jobb på ett intelligent sätt. Ibland startar det jobbet, och vid 10 % dödar det det eftersom det vet att det inte kommer att leda någonstans bättre. Sedan säkerhetskopierar den och startar en annan filial, och den säger: 'Detta är det bästa resultatet jag kan ge'.”


Fig. 1: Förstärkningsinlärningsmodell. Källa: Synopsys

I perspektiv överstiger komplexiteten i design vida den mänskliga hjärnans förmåga att sortera igenom alla möjliga kombinationer och interaktioner inom en rimlig tid.

"Vi använder AI/ML för en del av vår enhetsmodellering och karaktärisering", säger Niels Faché, vicepresident och general manager för PathWave Software Solutions på Nyckelsikt. "Varje gång du tittar på att optimera design och kör många simuleringar kan det göra det till en mycket mer effektiv process. Tänk på till exempel ett 6G-system där du måste konfigurera olika kanaler. Standardmetoden är att simulera många olika förhållanden, och det kan ta lång tid att hitta det optimala resultatet. Vi kan påskynda den processen avsevärt. Så med 6G kommer det att finnas ett mycket stort spel för det, och det är något vi jobbar på.”

På samma sätt använder Ansys det för applikationer som att skapa elnät. "Det har gjorts väldigt tidigt i planeringsstadiet", säger Marc Swinnen, chef för produktmarknadsföring på Ansys. "Det finns några grundläggande frågor, som hur många remmar kommer det att finnas, vilken typ av tonhöjd och hur breda kommer dessa remmar att vara? Hur många vias sätter jag på hörnen? Hur många ringar? Detta är grundläggande arkitektoniska frågor, och det finns många, många möjliga kombinationer. Vilka lager ska vi använda? Vi har en applikation där du kan karakterisera detta över ett halvdussin parametrar och räkna ut den optimala tonhöjden och optimal via densitet för att ge dig den bästa kraften. Thermal kommer också in tidigare än vi först förväntade oss. När vi började arbeta med elektrotermisk tittade vi på sign-off, men det blev väldigt snabbt uppenbart att människor var mest oroliga initialt i prototypstadiet. De ville ha snabba uppskattningar av hur de kunde sätta ihop dessa multi-die-system, eller till och med planläggning av bloggar, för om du planplanerar det fel i början och du bara karakteriserar termisk i slutet och du placerar två mycket heta saker nära tillsammans är det en katastrof. Det är väldigt svårt att återhämta sig från det, så det måste ske tidigare i flödet.”

Varmstart vs kallstart
Särskilt förstärkningsinlärning kan avsevärt hjälpa designteam att uppnå bättre resultat snabbare, både för en ny design och för derivator av den designen.

"En av de viktigaste fördelarna med den här typen av ny förstärkningsinlärning är att tillämpa automatisering som EDA-industrin inte har tillämpat tidigare", säger Anirudh Devgan, VD och koncernchef för Kadens. "En av våra stora kunder sa till mig att de tror att plats-och-rutt är den mest sofistikerade kommersiella programvaran som någonsin skrivits. Och det finns många komplikationer i många av dessa program, oavsett om det är verifiering eller plats-och-rutt eller analog. Men vad EDA aldrig gjorde optimerade flera körningar. Så du kör en gång, du får input, du får output. Och när du går till nästa körning sker ingen kunskapsöverföring.”

Kunskapsöverföring är en av de stora fördelarna med förstärkt lärande. Den samlar i princip in data och lagrar den i ett arkiv.

"Vetskapen om att något har fungerat tidigare finns i flera människors huvuden", säger Thomas Andersen, vice vd för AI och maskininlärning på Synopsys. "Vad händer när dessa människor flyttar till ett annat företag? Eller vad händer när de är på olika platser och de inte ens pratar med varandra? Du kanske hittar någon vid vattenkylaren som säger: 'Hej, du borde prova det här eftersom det ger dig bättre kraft. Det fina med detta system är att det lär sig designernas beteende och skapar statistiska modeller. Så nästa gång jag gör en utveckling av designen – som kan vara annorlunda, men också mycket återanvändning – kan jag börja med all denna kunskap.”

Detta är vad som kallas en "varm start", och med allt mer komplexa konstruktioner och krympande marknadsfönster kan det förbättra tiden till marknaden utan att behöva designa om allt.

"Med en kall start lär du dig från början," sa Cadences Devgan. ”En varm start kan göras inom ett företag, och det fungerar för några vanliga block. Det är nästa modell för återanvändning. För vanlig IP kan du arbeta med gjuteriet på en förutbildad modell. All data finns där i företaget. Du minar din egen data."

Tillvägagångssättet bygger på data som kan samlas in genom många designstarter. "EDA är det perfekta målet för att använda mönstermatchande maskininlärning", säger Steve Roddy, CMO på Quadric. "Du har min-cut algoritmer på steroider. Du har miljarder saker att placera, och du måste försöka minimera ledningar som korsar gränser. Det har förekommit successiva iterationer av algoritmer som driver olika EDA-verktyg, och de använder alla en del komplex heuristik för att ta reda på: 'Om jag ska placera alla dessa saker, ge mig den kortaste genomsnittliga trådlängden, det minsta antalet trådar och korsningar.' Det var lätt när vi hade två eller tre lager metall. Nu finns det 14 lager av metall och 82 masker vid 3nm. Men du har en historia av tusentals plats-och-rutt-jobb som har körts genom din verktygskedja. Vilken bättre träningsdatabas för mönstermatchning och att bygga någon form av maskininlärning? Så för nästa uppsättning av RTL som du äter kan du säga: "Jag känner igen det." Och det är allt maskininlärning egentligen är.”

Mer data, mer kapacitet
Full AI är längre ut, och mycket svårare att få rätt. EDA-leverantörer börjar använda det där det finns tillräckligt med data och där processen är så tidskrävande att den motiverar ansträngningen, men än så länge är användningen begränsad.

"Om du går och tränar på 3 miljarder bilder kan du lära dig hur en get ser ut och hur ett hus ser ut", säger Jeff Dyck, senior director of engineering på Siemens Digital Industries Software. "Du behöver massor av data för att göra det. Det vi gör här är annorlunda. Anledningen till att vi kör simulering på något är för att vi faktiskt inte vet svaret på det. Vi vet inte hur det ser ut. Vi har aldrig sett det förut. Det är en ny design, eller kanske en utvecklad design på en ny processversion eller något liknande. Och så sättet som vi hanterar det är att vi bara börjar om. Vi tar inte gamla designdata och hoppas att nästa sak beter sig på samma sätt, för i den verkliga världen av chipdesign gör den det inte. Så att träna på stora datamängder för det vi gör hjälpte inte så mycket. Vi använder vissa historiska data, och det finns fickor där det är vettigt, som om du gör en ny iteration på samma design. Men om du tränar på en hel massa grejer och hoppas att nästa sak som aldrig har sett förut kommer att se ut så, är det inte så användbart.”

Det handlar inte bara om mer data. Det handlar också om bra data. "Mina projekt, i slutet, insåg att de fick för mycket data, och ibland fick de fel data," sa Monica Farkash, chefsmedlem i den tekniska personalen på AMD, under en paneldiskussion nyligen. "För det mesta skulle vi bara hämta data, göra analysen och inse att den är överflödig. Det var värdelös data. Det är oväsen, det finns så många andra saker som bara dumpas där urskillningslöst. Det slutade med att vi ibland använde 20 % av datan, ibland till och med mindre än så, och inte exakt den form och form som krävdes.”

Detta är en del av anledningen till att full AI-användning är mycket mer begränsad idag än maskininlärning. Leverantörer har varit mycket selektiva när det gäller var de tillämpar AI, vilket om det fungerar skulle representera en massiv förändring i chipdesign.

"Det verkliga värdet av AI ligger i optimering", säger Cadences Devgan. "Mönstermatchning, som var AIs tidiga dagar, är användbart, och vi gör geometribearbetning och mönstermatchning. Men det verkliga värdet är optimering av beslutsfattande. Vilket är det bästa ramverket? Vi har haft alla typer av optimeringsmetoder, som var gradientbaserade. Men vad AI tillåter är en icke-gradientbaserad optimering, vilket förstärkningsinlärning tillåter, så att vi kan tillämpa optimering på saker som vi aldrig har tillämpat det på."

Oavsett om full AI eller maskininlärning finns det potential för en mycket mer grundläggande förändring i branschen. Tidigare kom den mest värdefulla informationen om vad som fungerar i en design och vad som inte kommer från fabriken. Därifrån sipprade det tillbaka till designteam och EDA-företag, som rutinmässigt klagade på att de aldrig fick tillräckligt med data. Den situationen har förbättrats under åren, men den är fortfarande skev. Med AI/ML behöver data flöda i två riktningar, och det kan potentiellt kombineras på sätt som tidigare ansågs opraktiska.

"Inom fysisk design involverar en av de saker vi arbetar med defektinformation som du får från det fina golvet," sa Sawicki. "Och nu vill jag knyta tillbaka det för att förstå hur mina bildmönster hänger ihop med det för att lära mig mer om vilka andra mönster som kan bli dåliga. Det görs på samma verktygsinfrastruktur som andra delar av Calibre, till exempel, som används för att göra maskininlärning, OPC och liknande. Så du kan skapa en gemensam infrastruktur kring ett antal olika applikationer. Det betyder inte nödvändigtvis att du har den här ena AI-motorn som fungerar för Caliber och funktionsverifiering. Det är väldigt olika problem. Men det finns mycket interaktion mellan var människor kommer att lära sig.”

Slutsats
Det är viktigt att skilja mellan maskininlärning, som är en delmängd av AI, och den större AI, som är mycket svårare att tillämpa i EDA. Termerna används ofta omväxlande, även i namnen på verktyg. Men riktig AI tillämpas bara långsamt på halvledardesign eftersom det tar tid att ta reda på om resultaten är tillräckligt exakta, konsekventa och skalbara.

Halvledardesign blir mycket mer komplex, och när den går över till avancerad förpackning blir den också mycket mer domänspecifik och heterogen. Att hitta mönster som sträcker sig över flera delar av en design, och sedan bestämma vilka som är tillämpliga på andra mönster eller till och med derivat, är en enorm utmaning för EDA-företag. Men det krävs också mer kompetens än vad chipindustrin har idag för att inse potentialen.

"För att kunna tillämpa artificiell intelligens på inlärningslösningar behöver du folk som vet vad de gör", säger AMD:s Farkash. "Vi måste utbilda dem, vänta tills de kommer ut från skolan och hjälpa oss där vi behöver gå. Men å andra sidan måste vi frukta människor som tror att de vet vad de gör. Så det här blir den största utmaningen. Möjlighet är lätt. Jag har arbetat med två dussin olika ämnen där jag tillämpat processer för maskininlärning, och var jag än tittar ser jag en möjlighet - mest för designutforskning, verifiering och simulering. Det finns överallt."

plats_img

Senaste intelligens

plats_img