Multicore, Multithreaded Goes Embedded

June 12, 2008
MIPS Technologies combines multithreaded and multicore support into its latest embedded SMP platform. As with most multithreaded designs, the MIPS32 1004K’s multithreaded support provides an incremental performance boost that is less than addi

MIPS Technologies combines multithreaded and multicore support into its latest embedded SMP platform. As with most multithreaded designs, the MIPS32 1004K’s multithreaded support provides an incremental performance boost that is less than adding another full core. Still, multithreaded support can take advantage of a core’s idle time that would otherwise waste power— a critical item in most embedded designs.

Each core can include one or two MIPS32-compliant Virtual Processing Elements (VPEs). The multithreaded support can deliver an additional 30% to 50% of a core’s base performance. This provides a nice upgrade increment for designers that start with a single-core solution, move up to a single-core, multithreaded solution, and progress all the way up to a four-core, multithreaded platform (see the figure).

Designers often are able to create a system that consumes less power by running multiple cores at a slower speed. MIPS multithreading support gives designers more flexibility. The architecture itself gets part of its performance boost from the multithreaded nine-stage pipeline. Designers can also mix and match floatingpoint support.

CACHE SIMPLIFIES SMP Each core contains a dual-port cache tag memory, allowing simultaneous access by the VPEs (only one can access the cache at a time) and the system’s coherence manager. This lets the coherence manager operate in the background.

In addition, MIPS provides a number of configuration options for the cache subsystem, such as the inclusion and size of translation look-aside buffers (TLBs). Tuning the system can be critical because cache miss percentages can have a major impact on system performance. For example, the performance difference between a 0.8% and 4% cache miss ratio can be a factor of 3. Of course, the application has a major effect on this result. But determining what tradeoffs to apply is just one of a designer’s jobs.

The coherence manager handles the interaction with the optional L2 cache accessed via the 256-bit memory bus. MIPS also lets designers move I/O coherence management into hardware. This often is done in software on other architectures, reducing the performance that can be applied to the application code. The cache system supports L1 cache-to-cache transfers.

The global interrupt controller supports system and interprocessor interrupts. System interrupts can be routed to a specific core. The MIPS32 1004K will be available in the second quarter. It has a maximum speed of 800 MHz. A typical two-core/ four-VPE system with 32-kbyte L1 caches uses about 3.8 mm2.

MIPS TECHNOLOGIESwww.mips.com

Sponsored Recommendations

What are the Important Considerations when Assessing Cobot Safety?

April 16, 2024
A review of the requirements of ISO/TS 15066 and how they fit in with ISO 10218-1 and 10218-2 a consideration the complexities of collaboration.

Wire & Cable Cutting Digi-Spool® Service

April 16, 2024
Explore DigiKey’s Digi-Spool® professional cutting service for efficient and precise wire and cable management. Custom-cut to your exact specifications for a variety of cable ...

DigiKey Factory Tomorrow Season 3: Sustainable Manufacturing

April 16, 2024
Industry 4.0 is helping manufacturers develop and integrate technologies such as AI, edge computing and connectivity for the factories of tomorrow. Learn more at DigiKey today...

Connectivity – The Backbone of Sustainable Automation

April 16, 2024
Advanced interfaces for signals, data, and electrical power are essential. They help save resources and costs when networking production equipment.

Comments

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