En helt ny instruktionsuppsättning kallad Nanomips ska ge 20 procent mindre kod än amerikanska Mips tidigare kodkompaktaste kärna. Samtidigt släpper företaget världens första Nanomips-cpu – Mips I7200.
Utöver detta släpps även nödvändigt kringstöd, som en GCC-kompilator som levererar Nanomipskod.
Mips har hunnit lansera en hel del arkitekturer sedan 1985. Nanomips är ett drastiskt grepp. Den börjar från noll med en helt ny instruktionsuppsättning.
Det är Mips Shanghaikontor som utvecklat Nanomips. Målet var att sänka koddensiteten så mycket som möjligt, det vill säga att se till att program för Nanomips använder lite minne för att lagra instruktioner.
Det viktigaste medlet var att använda variabel längd på instruktionerna. De vanligaste instruktionerna ryms i sexton bitar. Övriga använder 32 eller 48 bitar.
Resultatet blir 20 procent mindre kod i snitt, enligt Mips, jämfört med den tidigare Micromips R6. Och mellan 8 och 11 procent färre instruktioner att exekvera för samma program.
Den första Nanomipskärnan |
• Tillverkad i TSMC 28HPM använder I7200 minst 0,27 mm2. • I TSMC 16FF+ kan den klockas till 2,1 GHz, som typiskt värde och 1,7 GHz i värsta fall. • I 16FF+ och 1,7 GHz behöver den 0,27 mm2, drar 150 mW dynamiskt och har en Coremark på över 40 000. • Mer information finns här (länk). |
Den första Nanomipskärnan heter I7200. Den har SMT (simultan multitrådning) och trådprioritering, och byter kontext på noll klockcykler.
Den har en rörledning på nio steg.
Vill du köra Linux kan du konfigurera I7200 med en komplett minneshanteringsenhet (MMU). För enklare realtidssystem kan du nöja dig med en minnesskyddsenhet (MPU) med 32 skyddade minnesregioner.
Du kan bjuda kärnan på upp till 1 megabyte tättkopplat, deterministiskt Scratchpad-RAM.
Mips pekar på datakommunikation i realtid som en bra tillämpning för I7200, exempelvis för databehandling i nätverkskort för LTE och 5G. Taiwanesiska Mediatek gör tummen upp för den användningen. Gissningsvis har företaget just en sådan I7200 i röret.
Imperas kunder utvecklar redan mjukvara för I7200 på Imperas simulatorer.
Express Logic lovar att dess realtidsoperativsystem Thread X ska kunna köras på I7200-processorer och Mentor implicerar att dess Nuclues kommer att göra detsamma.
Ultrasoc lovar att dess analysverktyg kommer att stödja I7200 och Lauterbachs avlusningsverktyg stöder den redan.