Power Modeling of Complex Designs
Master thesis
Permanent lenke
https://hdl.handle.net/11250/2778143Utgivelsesdato
2020Metadata
Vis full innførselSamlinger
Sammendrag
I dette prosjektet implementeres et verktøy for å lage effektmodeller av RTL design. Den genererte effektmodellen er ment å brukes sammen med et effektestimeringsverktøy for å gi et tidlig, raskt og nøyaktig effektestimat. Nordic Semiconductor ASA utsteder dette masterprosjektet med motivasjonen å gjøre RTL simuleringer effektbevisste. Å oppdage power bugs tidlig i implementeringen av en design kan spare iterasjoner i ASIC designflyten, og dermed redusere tiden som kreves for å få et produkt på markedet.Metoden for å estimere effekt på RTL kalt top-down metoden ble valgt for implementerin- gen. Blant andre ønskede kvaliteter krever det ikke en syntetisert nettliste-representasjon av designet for å produsere et effektestimat. Dette gjør at effektestimering kan gjøres samtidig med simuleringer for funksjonell verifisering av RTL, før syntesen av designet.Effektmodelleringen er delt inn i tre deler:1. Hente ut strukturell informasjon fra en prosessert SystemVerilog representasjon av designet.2. Hente ut informasjon om tilgjengelige celler og deres effektforbruk fra cellebiblioteket.3. Kombinere den strukturelle representasjonen med celle- og effektinformasjonen, oglage en effektmodell.I implementasjonen er strukturen til et design representert av et nodetre, mens et cellebib- liotekobjekt er laget for å representere tilgjengelige celler fra cellebiblioteket og effektfor- bruket deres. For å produsere en effektmodell tar implementasjonen sekvenser av gener- iske celler fra strukturtreet og erstatter dem med celler hentet fra cellebiblioteket. Effekt- modellen består av flere effektbevisste nodetrær. Den effekt-bevisste representasjonen har mange likheter med den syntetiserte nettlisten. Dog, mer arbeid er nødvendig for å lage en god sammenligning mellom representasjonene.Implementasjonen er lovende for nøyaktig og rask høy-nivås estimering av effektforbruk. Flere abstraksjoner blir gjort i prosessen slik at estimasjonen er rask. Hvordan abstrak- sjonene påvirker effektestimatet er evaluert sammen med andre alternativer. Når et effekt- bevisst nodetre lages, grupperes generiske celler til mer komplekse celler fra cellebiblioteket.vDenne grupperingen gjør at antall celler i representasjonen reduseres, noe som bringer mod- ellen nærmere den syntetiserte nettlisten.Noe arbeid gjenstår for å gjøre effektmodellen komplett; flere komplekse generiske cel- lene fra den prosesserte SystemVerilog-filen må settes sammen av tilgjengelige celler fra cellebiblioteket. Komplekse generiske celler som ennå ikke har noen ekvivalent effektbevisst representasjon er de som representerer aritmetiske operasjoner, skiftere og komparatorer. Når disse generiske cellene har en representasjon i effektmodellen, kan signaler propageres gjennom strukturtrærne, og et effektestimat lages for hvert nodetre. Jobben til effektes- timeringsverktøyet som skal bruke effektmodellen er å kombinere aktivitetsdata fra en RTL- simulering med effektverdiene fra hvert nodetre i et vilkårlig design, og gi et effektestimat for designet. In this project, a tool for making power models of designs at the Register Transfer Level(RTL) is implemented. The generated power model is intended to be used with a powerestimation tool, to give an early, fast and accurate power estimate. Nordic SemiconductorASA issues this masters project with the motivation of making RTL simulations poweraware. Discovering power bugs early in the implementation of a design may save iterationsin the Application Specific Integrated Circuit (ASIC) design flow, and thus reduce time tomarket for a product.The method for estimating power at the RTL called the top-down method was chosen forthe implementation. Among other desired qualities, it does not require a gate-level representation of the design to produce a power estimate. This allows for power estimation tobe done concurrently to simulations for functional verification of the RTL, before synthesisof the design.The power modeling problem is divided into three tasks:1. Extracting structural information from an elaborated SystemVerilog representationof the design.2. Extracting information about available cells and their power consumption characteristics from the cell library.3. Combining the structural representation with the cell- and power information retrieved, in order to create a power model.In the implementation, the structure of the design is represented by a node tree, while a celllibrary object was created to represent available cells from the cell library and their powerdata. In order to produce a power model, the implementation takes sequences of genericcells from the structure tree and replace them with cells obtained from the cell library. Thepower model consists of several power-aware node trees. The power model representationis more similar to the gate-level netlist than the elaborated SystemVerilog representation.However, more work is needed to obtain a proper comparison between them.The implementation shows promise for accurate and fast power estimation. Several abiiistractions are done in the process so that fast estimations can be made, and their effecton the power consumption have been evaluated together with other alternatives. Whencreating the power-aware node tree, cells from the generic cell library are grouped to morecomplex cells from the cell library. This grouping ensures a reduction in the number ofcells, which brings the model closer to the gate-level representation.Some work remains to complete the power model; the most complex generic cells fromthe elaborated SystemVerilog file need to be constructed from several cells from the celllibrary. Complex cells with no equivalent yet are those representing arithmetic operations,shifters and comparators. When these cells have a representation, switching activity canbe propagated through the structure trees in order to get a power consumption estimatefor each of them. The final job of the power estimation tool is to solely use the activitydata from the RTL simulation, together with the power values from each structure tree toyield the power estimate.