Philips TriMedia VLIW

TriMedia
Philips © 1990s

Philips TriMedia are a range of 32-bit VLIW processors for media processing released during the 1990s. TM-1000, originally TM-1, was the first Philips TriMedia processor, released in 1996, followed by TM-1100 in 1998 and TM-1300 (PNX1300) in 1999.

TriMedia was based on original VLIW work at Philips research in the 1980s for general computing. Actual production TriMedia VLIW processors in the 90s were more specialized for media computations. They could issue five instructions per clock for any of their 27 functional units at clock speeds between 100 and 166 MHz.

They were mostly used in audio, video and photo devices as media co-processors. VLIWs work extremely well for signal processing and 3-D tasks, and quite good for general purpose programming, was Philips view on the early TM-1000.

CPU details

Philips TriMedia are based on Philips LIFE VLIW architecture, developed in the late 1980s, and us a VLIW processor core (DSPCPU) with media extensions. TM-1000 was the first product implementation followed by TriMedia TM-1100, TM-1300 and PNX1300 with the same core architecture and higher clock.

Processor Clock Cache Width Units
TM-1000 100 MHz 32/16 KB 5-way 27
TM-1100 133 MHz 32/16 KB 5-way 27
TM-1300 166 MHz 32/16 KB 5-way 27
PNX1300 200 MHz 32/16 KB 5-way 27

Instruction set

TriMedia is a 32-bit VLIW architecture with an instruction set of RISC operations, load/store operations and special multimedia and DSP operations, coupled with IEEE floating point. Philips also implemented 32 special SIMD operations in TriMedia CPUs.

The very long instruction width of TriMedia processors is 220-bit, data width is 32-bit. TriMedia can issue five instructions per clock, integrated into a single VLIW, for their large set of functional units.

One of the main reasons for VLIW processors are the simplified CPU cores with large execution and data computation capacity: VLIWs are datapath intensive, very low control area/complexity.

Functional units

Philips TriMedia processors have a very large number of functional units: 27.

TriMedia VLIW processors have 128 registers with 32-bit.

Cache and memory

TM-1000, TM-1100 and TM-1300 have 16 KB data and 32 KB instruction caches, 8-way set associative (LRU). The instruction cache contains compressed VLIW instructions. Caches are on-chip, attached via two 32-bit (data) and one 220-bit (instruction) bus to the CPU.

Memory is supported up to 64 MB physical and 4 GB virtual, implemented in SDRAM up to processor clock, attached via 32-bit data highway to the CPU. Up to four chips are supported for 400/532/572 MB/s data rate.

Integration and peripherals

Processor and cache are attached via 32-bit bus (data highway) to PCI and integrated many I/O and co-processing functions onto the chip.

TriMedia
TM-1 © 1996 Philips

Physical

TM-1000 has a clock speed of 100 MHz, with 3.3V core voltage. Die is manufactured in 0.35µ 4-layer metal CMOS process, packaged in 240-pin MQUAD, power 4W.

TM-1100 has up to 133 MHz clock speed, with 3.3V core voltage. Die is manufactured in 0.35µ 5-layer metal C75 CMOS process, packaged in 240-pin MQUAD, power 6W.

TM-1300 has a clock speed of 143 or 166 MHz, with 2.5V core voltage. Die (58mm²) is manufactured in 0.25µ 6-layer metal CMOS process, packaged in 292-pin BGA, power 3.2W.

PNX1300 has a clock speed of 200 MHz, with 2.2V core voltage. Die is manufactured in 0.25µ 4-layer metal CMOS process, packaged in 292-pin HBGA, power 2.5W.

Used in

TriMedia VLIW processors were used in a large range of multimedia systems:

TriMedia used pSOS+ real-time operating system, and had high-performance Java support. Development was conducted on TriMedia Software Development Environment with Metrowerks CodeWarrior for TriMedia and TriMedia Application Libraries.

Benchmarks

The original TM-1000 was slightly too slow for full-speed DVD decoding due to limited memory bandwidth, mitigated by the later TM-1100 and TM-1300 with higher clock. They still needed a host microprocessor for general memory and I/O.

TM-1300 were advertised as peak performances required by DVD playback: 180-MHz CPU with 143 MHz SDRAM. For multimedia operations, TriMedia VLIWs were very fast co-processors.

* - in BOPS, billion operations per second = GOPS (Giga operations).
Processor Speed Platform MIPS/FLOPS SPEC92 int/fp
Philips TM-1000 100 MHz 4,000*
Philips TM-1100 133 MHz 5,000*
Philips TM-1300 166 MHz 7,200*
Comparisons
Sun MAJC-5200 500 MHz 12,000
6,000

Documentation

↑ up