Abstract-Efficiency a n d flexibilitet är kritiska, men ofta motstridiga, deaign mål i inbyggda systemdesign. Den förbittrade emerg8en av extensible processorer lovar en gynnsam kompromiss mellan emciney och flexibilitet, medan b p i n g design vända tiden kort. Nuvarande extensible p r o e s s~r deaign R o w s automate -vera1 tråkiga uppgifter, men vanligtvis kräver designers att manuellt välja t h e delar av t h e program t h a t är att han genomfört - Custom instruktioner. I detta arbete beskriver vi en automatisk metodik t o eelact anpassade instruktioner t o augment en extensible PTOC~SIIOI, för att maximera ita efflcieney för ett givet program. W e dsmonstrat t h a t t h e antal anpassade instruktionskandidater växer snabbt med program ~i s e, vilket leder t o e stor design mace, och t h a t t h e kvalitet (hastighetsupp) av anpassade instruktioner varierar avsevärt över detta utrymme, motiverande t h e behov av t h e föreslaget flöde. Vår metodik funktioner kostnad funotioner t o puide t h e anpassade inatrustion urvalsprocessen, * weii M statiska och dynamiska beskärning tekniker t o eliminera sämre delar av t h e design apace från hänsyn. Vidare använder vi en tvåstegsprocess, där i ett begränsat antal lovande undervisningskandidater först väljs ut, och sedan utvärderas mer i detalj genom cykelaccurate instruktion möttes mål a t i o n och synthesb o f t h h e motsvarande hårdvara, t o identifiera t h e anpassade instruktionskombinationer t h a t resuit in t h e högsta program speed up eller maximera speedup under en given område begränsning. W e har utvärderat t h e föreslagna tekniker med hjälp av a t a t e o f - t h e konst extensible processor plattform, In t h e sammanhang av L. kommersiell design flöde. Experiment med flera referensprogram indikerar t h a t anpassade processorer syntetiserade med hjälp av automatisk anpassad. Instruction eiection kan resultera i stora förbättringar i p e r f o r manee (upp till 5.4X, genomsnitt av S.4X), energi (upp till 4.5X, genomsnitt av S.ZX) och energidämpande produkt (upp till 24.ZX, genomsnitt av lZ.eX), medan påskyndar t h e designprocessen eignifleantiy. Effektivitet och flexibilitet är två av de viktigaste drivkrafterna i den inbyggda systemkonstruktionen. Effektiva implementeringar krävs för att uppfylla de snäva kostnads-, tids- och effektbegränsningar som finns i inbäddade system. Flexibilitet, även om den är svår att kvantifiera, är lika viktig - den gör det möjligt att enkelt modifiera eller förbättra systemkonstruktioner som svar på fel, utveckling av standarder, marknadsskiften eller användarkrav, under konstruktionscykeln och även efter produktionen. Olika implementationsalternativ för en viss funktion, allt från skräddarsydd hårdvara t o programvara som körs på inbyggda processorer, ger en systemdesigner med olika grad av effektivitet och flexibilitet. Tyvärr är det ofta så att dessa är motstridiga designmål. Medan effektivitet uppnås genom anpassade hårdtrådade implementationer, är flexibilitet bäst tillhandahålls genom programmerbara implementationer. Hardware partitioning -separering av ett systems funktionalitet till inbäddad programvara (löper på programmerbara processorer), och anpassad hårdvara (implementeras som cc-processorer eller perifera enheter) -är en metod för att uppnå en bra balans mellan flexibilitet och effektivitet 111. Men den ökande omfattningen och komplexiteten hos inbyggda system-on-Chips (SOC), tillsammans erkända-ems: Detta arbete w~ stöds io del av DARPA under contr-t no. DAABO7-OO-C-LSIB sndd delvis av NJCST Center på Embedded Systemon-*-Chip Daaizn. med minskande marknadscykler, ge en konstant pusbtowards "öka inbäddad programvara innehåll. Även om det är känt att program-speciflc instruktionsset processorer (ASIPs) ger en bra avvägning mellan effektivitet aa flexibilitet, har deras relativt stora design vändningstider ( pared t o programvara som genomförs på pre-designed och prRve, inbyggda processorer) delvis förhindrat deras wid&&' + SOCs. Den senaste tillgängligheten av konfigurerbara och extensible pi$.$$:-Jag cessorer " lovar en gynnsam kompromiss mellan effektivitet och flex-*: ". , ibility, samtidigt som design vänder gånger kort. Den emir-., gence och framgång av företag som erbjuder konfigurerbara och extensible inbäddade mikroprocessor och DSP kärnor som en primär produkt. , etc.).......................................................................................................................... vittnar till förmånerna en f t 1s approarb. " Flealhiug potentialen av extensible processorer kräver,d+. Utveckling av stödjande verktyg och metoder som möjliggör &?.-tem designers t o uppnå design vändningstider som är +min liknelse t o all-software lösningar. Toppmodernt extensibelt pi*!" cessor design flöden automatisera flera tråkiga uppgifter och hjälpa designprocessen genom att tillhandahålla en hög nivå gränssnitt för att utföra processor kundhatian, automatisk generering av register överföringsnivå (RTL) maskinvarubeskrivningar, en remålerbar programvara verktygskedja för den anpassade processor (inklusive kompilatorer, monteringsföretag, avlusare och binära verktyg), och design automation skript t o supportverifiering, logik syntes och fysisk design. Men de kräver designers att manuellt välja delar av pmgmm och utforma de anpassade instruktioner som genomför dem. Som. shorn in thG paper, dessa är skrämmande uppgifter f o r stora pm, och är ytterligare komplicerade när prestandaförbättringar måste uppnås med andra överväganden. såsom constmints på hadware är0 overheads och klocka period. Vårt arbete tar upp ovanstående behov genom att tillhandahålla en systematisk metod- och automationsalgoritm för applikationsspecifik anpassning av extensible processorer. Vi spårar kortfattat relaterat forskningsarbete i linje med ASIP arkitekturer och övergripande designmetoder, tillämpningsspecifika instruktionsuppsättning val, kompilering tekniker för ASIPs, och. lågeffektiv ASlP-konstruktion. En bra översikt över fördelarna och utmaningarna med ASIP-design finns i [SI]. Tidiga verk om arkitektonisk syntes för ASIP finns i [9], [lo]. I 1111 beskrivs ett designsystem för syntetisering av enkla piped ASIPs. Arbetet i 1121 handlar om valet av immateriella rättigheter (IP) kring en ASIP kärna t o påskynda program. En metod för att konstruera parallella och skalbara ASIP-arkitekturer, lämpliga för reaktiva system, presenteras i 1131. I 1141, en tidig design utrymme prospektering metod ges för kluster mycket lång instruktion ord (VLIW) data banor i samband med specifika mål appli-'Follauing terminologin "seged in 121, en konfigurerbar proseaor of far. Daaibncr po~sibility till c u s t a m i~ de bas procenror architestura. medan m exten#ibis proseor gör det möjligt för designern att förlänga den bariska instruktionen set throush
I REF består konstruktionsflödet av att generera instruktioner automatiskt, infoga instruktioner, och utföra en heuristisk design utrymme prospektering.
Synthesis of custom processors based on extensible platforms
{'venue': 'IEEE/ACM International Conference on Computer Aided Design, 2002. ICCAD 2002.', 'journal': 'IEEE/ACM International Conference on Computer Aided Design, 2002. ICCAD 2002.', 'mag_field_of_study': ['Computer Science']}