- När det bara var Arc och Tensilica framstod det som underlig och utflippad teknik. Men när Mips hakar på hamnar konfigurabilitet i huvudfåran, säger analytikern Jim Turley till tidningen Electronic News.
Något så tillbakablickande som cachelösa processorkärnor lanseras i detta sammanhang som en innovation. Chipsyta sparas på både cacheminne och de komplicerade styrkretsarna.
Att ta bort grindar ger dessutom mindre energiförbrukning. Även kretsar som inte används drar läckströmmar.
Bara skinn och ben
Den nya kärnan Arm 1026E-JS kan konfigureras med och utan cache. Mips nya kärna, M4k, saknar helt cache. Cache behövs ofta inte i nätverksprocessorer, som är en av de viktigare tillämpningarna för multiprocessorer. Nätprocessorer i routrar, växlar och muliplexrar låter en mängd likadana kärnor bearbeta paket i serie eller parallellt i var sin kanal. Datapaketen skickas igenom kärnan efter enkel bearbetning som inte kräver cache.
Mips M4k är konfigurerbar. Den kan kläs av till skinn och ben, gränssnitt till coprocessor och JTAG-prob kan plockas bort. Antalet registergrupper kan dras ner från fyra till en. Multipliceraren kan väljas snabb eller liten. Data och instruktioner kan få gemensamt eller separat gränssnitt. Och så vidare.
0,3 kvadratmillimeter tar M4k upp som mest strippad. Då är det inte mycket beräkningskraft kvar. För att kompensera kan konstruktören definiera egna instruktioner som är kompatibla med de existerande programverktygen för kärnan - de implementeras som så kallade intrinsic-instruktioner som kompilatorn inte rör.
Skräddarsydda instruktioner ger konstruktören ytterligare en parameter att optimera med. En ny instruktion kan vara ett alternativ till att inkludera extra beräkningsenheter eller DSP på chipset.
- Det är enklare att göra "divide-and-conquer" när man bygger systemet och löser problem med dedicerade kärnor säger Hans Kalldin, ingenjör på Tensilica.
- Du kan anpassa hårdvaran till behoven i algoritmen, du får exakt den typ av beräkningselement du behöver.
100 gånger snabbare
En ny instruktion krymper också programmet som ska köras i kärnan eftersom extrainstruktionen i praktiken ersätter en sekvens standardinstruktioner. Därmed krymper minneskraven.
Extrainstruktioner till Tensilicas Xtensaprocessor definieras i TIE (ett Verilog-liknande språk) och översätts automatiskt tillsammans med konfigureringsbeskrivningen till en fungerande processorkärna.
Det betyder att extrainstruktionen kan implementeras i parallella beräkningsvägar och därmed få dramatiskt ökade prestanda. Tensilica redovisar en 50-faldig prestandadökning för kryptering och en 100-faldig för videokomprimering.
Samtidigt med Xtensa-kärnan skapas automatiskt en anpassad specialversion av GCC-kompilator, debugger och andra programverktyg.
Jan Tångring