Medan maskinvaruinstruktionscache är närvarande i praktiskt taget alla allmänna ändamål och högpresterande mikroprocessorer idag, många inbäddade processorer använder SRAM eller reptåliga minnen istället. Dessa är enkla matrisminne strukturer som är direkt adresserade och explicit hanteras av programvara. Jämfört med maskinvarucache med samma datakapacitet är de mindre, har kortare åtkomsttider och förbrukar mindre energi per tillgång. Tillgångstider är också lättare att förutsäga med enkla minnen eftersom det inte finns någon möjlighet till en "miss". Å andra sidan är de svårare för programmeraren att använda eftersom de inte hanteras automatiskt. I det här dokumentet presenterar vi ett programvarusystem som gör det möjligt att automatiskt hantera hela eller delar av ett SRAM- eller scratchpad-minne som en cache. Detta system ger programmeringskomforten av en cache för processorer som saknar dedikerad cachehårdvara. Det har implementerats för en verklig processor och körs på riktig hårdvara. Våra resultat visar att en programvarubaserad instruktionscache kan byggas som ger prestanda inom 10% av en traditionell maskinvarucache på många riktmärken samtidigt som du använder ett billigare, enklare SRAM-minne. På samma riktmärken är energiförbrukningen upp till 3 % lägre än med hjälp av en maskinvarucache.
Det mest relaterade arbetet tar upp programvaruhanterade instruktionscacher REF för processorer som saknar en instruktionscache.
Software-based instruction caching for embedded processors
{'venue': 'ASPLOS XII', 'journal': None, 'mag_field_of_study': ['Computer Science']}