TriMedia (Mediaprocessor)

Mediaprocessor

De TriMedia was een programmeerbare VLIW mediaprocessor-familie van NXP Semiconductors, vroeger Philips Semiconductors, deel van Philips. De TriMedia vond toepassing in diverse innovatieve multimedia-apparaten. De eerste versie, de TM1000, kwam op de markt in 1997. In 2010 hief NXP de TriMedia-groep op.

Toepassingen bewerken

Philips bracht de TriMedia-processor op de markt als een programmeerbare oplossing voor het implementeren van multimedia-toepassingen, met de initiële bedoeling om enerzijds DVD-decodering te kunnen doen en anderzijds open te staan voor de implementatie van nieuwe toepassingen. Zo kon men er bijvoorbeeld een TCP/IP-stack op laten werken, een browser en dit laten werken naast de multimedia-bewerkingen. De TriMedia werd eerst op de markt gebracht als een aparte processorchip. Later paste men de processorkern ook toe op complexere System on Chip (SoC)-configuraties. Zo kende de PNX5100 drie TM3271-processorkernen.

De TriMedia werd initieel onder andere gebruikt in de TriCoder-kaart, een uitbreidingskaart voor de PC om DVD-decodering en videobewerking uit te voeren. Hij vond verder toepassing in de Streamium-lijn van geconnecteerde multimediaproducten, op chips voor settopboxen, in mobiele toepassingen en in multimedia-apparatuur voor gebruik in auto's.

Technische kenmerken bewerken

De processor kende diverse voorzieningen voor de efficiënte verwerking van audio- en videosignalen. Een uitgangspunt voor het ontwerp was dat de processor in de hogere programmeertalen C en C++ geprogrammeerd moest kunnen worden in plaats van in assembleertaal. Deze programmeerbaarheid in een hogere programmeertaal werd mogelijk gemaakt door de orthogonale instructieset en de uniforme registerset van 128 registers, waardoor RISC-type bewerkingen grotendeels onafhankelijk van elkaar uitgevoerd konden worden.

De TriMedia-processoren hadden geavanceerde caches die niet-gealigneerde geheugentoegang zonder verlies van prestaties toelieten, alsmede technieken voor prefetch van gegevens.

Functionaliteiten bewerken

  • 5 tot 8 issue slots om tot 45 functionele eenheden aan te sturen
  • 128 32-bit algemene registers
  • SIMD- en DSP-bewerkingen
  • 32-bit vlottende-kommabewerkingen volgens standaard IEEE 754
  • 8/16/32/64 KB instructiecache, 8/16/32/64/128 KB gegevenscache
  • gescheiden businterfaces voor geheugen en randapparatuur
  • tot acht ingebouwde timers
  • tot 64 ingebouwde vector-interrupts
  • ontwikkelomgeving voor programmering in hogere programmeertalen C en C++

Geschiedenis bewerken

Philips Semiconductors realiseerde intern de eerste TriMedia in 1987, onder de naam LIFE-1. In 1996 resulteerde dit in het eerste product, de TM1000-mediaprocessor. Er volgden diverse verbeterde versies als zelfstandige mediaprocessor, terwijl in 2002 de TM3260-CPU verscheen als onderdeel van de PNX1500-SoC, later opgevolgd door de PNX1700.

In 2005 kwam de TM3270 op de markt als CPU met laag energieverbruik en met functies om H.264-video te verwerken. Hij was onderdeel van de PNX4103 SoC.

In 2006 verzelfstandigde Philips zijn halfgeleiderdivisie als NXP Semiconductors, dat de TriMedia-lijn verder ontwikkelde. In 2009 bracht men de PNX1005 uit met de TM3282 CPU-kern. Deze kon tot acht instructies tegelijkertijd starten en voorzag ook in meer instructies voor H264-bewerkingen, video-optimalisaties en enkele andere verbeteringen.

In 2010, hief NXP Semiconductors de TriMediagroep op.

Versies bewerken

Philips en NXP Semiconductors brachten de volgende versies van de TriMedia op de markt:

Kern Introductie ISA Functies Cache (I/D) KB Frequentie (minimum) Technologie
TM1000 1997 TMA0 32/16 100 MHz 500 nm
TM1100 1998 TMA1 32/16 133 MHz 350 nm
TM1300 1999 TMA1 32/16 166 MHz 250 nm
TM3260 2002 TMA2 binair compatibel met de TM1300 64/16 250 MHz 130 nm
TM5250 2004 TMA3 128 KB L2 gegevenscache,

alloceer bij schrijffout, hardware prefetch, super-pipelined (hoge snelheid)

64/16 450 MHz 130 nm
TM2270 2006 TMA3 96 GPRs (lage oppervlakte) 32/16 290 MHz 90 nm
TM3270/1 2006 TMA4 + ASE laag energieverbruik 64/128

64/32 32/16

350 MHz 90 nm
TM3282 2009 TMA4 + ASE2 8 instructiestarts, voor-allocatie, bitstroom-coprocessor, real-time tracering 64/128 400 MHz 90 nm
TM? 2009 TMA4 + ASE2? 8 instructiestarts? ?/? 500 MHz 45 nm

Ontwikkeling bewerken

In België was het in Hasselt gevestigde SPECS actief als ontwikkelgroep voor ingebedde software voor de TriMedia-processor. Gedurende de jaren 1996-2002 ontwikkelde men er een raamwerk voor streaming en droeg men bij aan de ontwikkeling van diverse toepassingen voor multimedia-apparaten van Philips.