Image

Multicore MIPS Smaller Than Atom

Sept. 30, 2010
The MIPS32 1074K multicore architecture is a compact, high performance embedded platform.

MIPS32 1074K multicore architecture

MIPS32 1074K individual core architecture

MIPS has announced its latest multicore architecture, the MIPS32 1074K. Three of the cores take up about the same amount of chip real estate as one Intel Atom. The MIPS approach delivers more than double the performance while consuming less power. Still, the Atom is a 64-bit processor while the MIPS32 is a 32-bit architecture so the 1074K is actually more comparable to Arm's latest offering, the Corex-A15 (see Arm Delivers More Multicore Multimedia). All three architectures support virtualization and SMP processing.

The 1074K archtecture is designed to handle a 1.5GHz clock and the latest 40nm technology. It uses a 15-stage pipeline, superscalar, out-of-order high-performance design. A quad core system delivers more than 15000 CoreMarks and 12000 DMIPS. It is binary compatible with the MIPS32 24K and 74K series of processor architectures. The 1074K is expected to be used in a wide range of applications from WiFi routers to multiroom set top boxes (STB).

Major components include the Coherence Management (CM) unit, the I/O Coherence Unit (IOCU), the Cluster Power Controller (CPC) and the Global Interrupt Controller (GIC). The CM provides a high throughput coherence fabric with 256-bit wide buses for key datapaths and for external read and write data interfaces to L2 cache. It also handles L1 cache-to-cache transfers, speculative reads to external memory, and globalized cache operations. The IOCU delivers hardware acceleration for I/O coherence. The CPC handles multicore power gating, clock gating, and reset management. Each core is its own separate power domain. Power and clock gating can significantly reduce power consumption. The GIC can route interrupts to a specific core or virtual processing element (VPE). It can handle up to 256 interrupts.

Each core has its own IEEE 754-compliant Floating Point Unit (FPU) that is compliant with MIPS' 64-bit FPU architecture. It supports single- and double-precision data types. The FPU core uses a separate in-order, dual-issue pipeline decoupled from integer pipeline in each core.

The new architecture incorporates a number of improvements including indirect jump caching. This came out of profiling work done using other MIPS platforms. The caching provides a 20%-30% performance improvement.

The 1074K includes PDtrace(see MIPS On-Chip Debug Hardware) and performance trace support. EJTAG support is also included. The hardware also provides inter-processor cross-triggering debug support. There are independent hardware triggers per core. The "trace funnel" can aggregate tagged trace data from each core to the on-chip trace buffer or an external trace probe. A system can provide self-debug support and remote debug over a network connection.

The 1074K comes with a wide range of third party support. The system can handle popular platforms like SMP Android. The Eclipse-based MIPS Navigator ICS is only one of the development tools available to developers.

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!