You are in:  Components | Micros & DSP


Read The Magazine

Issue: 16 - 22 Dec, 2009
Get Electronics Weekly

MIPS introduces two cores and 16bit instruction set

Monday 02 November 2009 02:02

MIPS Technologies has introduced two cores and a 16bit instruction set.

The M14K and M14Kc have the same 1.5DMips/MHz performance as the firm's existing 4K series, with which they share a five-stage pipeline, but with code density improved by 35% compared with the 4K.

"We have gone to the MicroMIPS instruction set which is a re-encoding of MIPS32 and MIPS64 instructions," MIPS director of product marketing Mark Throndson told Electronics Weekly.

He estimates that Linux code running on a 14Kc will be over 30% smaller than Linux prepared for a 4K.

The 14K is aimed at automation and control in offices, cars and industry, whereas the Linux-capable Kc is destined to run more complex operating systems in home entertainment boxes, consumer networking modems and routers, and portable entertainment devices.

MicroMIPS is not purely 16bit and includes 15 new 32bit instructions alongside 39 new 16bit instructions. There are also 64 bit instructions, which are not implemented in the M14 cores.

Both the M14K and M14Kc have dual instruction decoders so that they can run both MicroMIPS code and legacy MIPS32 code.

There are several significant changes compared with 4K cores.

For example: interrupts are now hardware based and twice as fast, taking 21 cycles, and interrupt chaining is executed by a new IRET instruction.

Debug and trace features have been added.

"We looked at the most useful features in the 24K [high-end] cores," said Throndson, "and added two performance counters to the M14K, and support for programme counter and data address sampling."

There is also a trace for function calls with an exceptions option and delta cycle tracing.

The debug channel is bi-directional JTAG, is interrupt driven, and includes FIFOs.

Another change is the addition of an instruction pre-fetch buffer has accelerated execution out of flash by up to four times (4x with a 100% hit rate at 100MHz).

The Linux-enhanced M14Kc is superset of the earlier MIPS32 4KEc core.

As well as the M14K features, it also has a cache controller, translation look-aside buffer (TLB), and AHB Lite bus interface - although this last feature can also be included in a M14K implementation.

Like other MIPS cores, licensees can add their own instructions.

On TSMC's 90G Svt process, a speed-optimised M14K is projected to run at 295MHz (442Dmips), occupy 0.51mm2 and dissipate 120µW/MHz.

The same core area optimised will, said MIPS, achieve 193MHz (290DMips), 0.21mm2 and 60µW/MHz.

On TSMC's 90 SVt process, the speed optimised M14Kc figures are: 322MHz (483DMips), 0.82mm2 and 150µW/MHz, or 194MHz (291DMips), 0.37mm2 and 80µW/MHz when area optimised.

For SoC development, an FPGA-based board called SEAD-3 is available which has multiple FPGA sockets to support the MIPS core separately from customer intellectual property.

Two simulators exist: cycle accurate CASim and instruction accurate IASim.

The M14K and M14Kc

The M14K

The M14Kc

The M14Kc

Recommend this article

Sign-up for the ElectronicsWeekly.com newsletters:
Electronics Weekly newsletters

Resources

Most Viewed

Blog roll