Android Web Browsing Performance Greatly Enhanced by Multi-Core and Multi-Threading Technologies

February 8th, 2012 by Eyal Barzilay

MIPS’ MT technology boosts performance 43 percent; combined MT & MC boosts performance 150 percent

By Eyal Barzilay, Applications and Benchmarking Manager

The use of multi-core technology to deliver more CPU horsepower is one of the increasingly common methods to providing higher system performance in hardware. This is true even for high volume consumer applications where cost and power can be very important. However, upgrading to a multi-core system doesn’t automatically guarantee performance improvements or an enhanced user experience. It’s not just a hardware problem – software must be written in a way that can make use of parallel hardware resources. But software is adapting – systems are getting much more complex, such that multiple processes and threads are running simultaneously in many cases, and applications are being written to take better advantage of multiprocessing hardware trends.

With that in mind, we recently used the BrowsingBench™ benchmark from EEMBC to evaluate the performance benefits of MIPS’ multi-core (MC) and multi-threading (MT) technologies. Our objective was to find out how these technologies enhance the user experience of a very popular and very real consumer application – web browsing on the Android™ software platform.

BrowsingBench is a credible and widely used tool that is trusted and cited by leading technology companies. It measures web page loading and rendering time for a large set of web pages with diverse content, and it does this in a reliable way which leads to repeatable and meaningful results. It will run on any connected device with a web browser. And rather than performing a synthetic test, BrowsingBench performs the same operations which a human would perform on the device. We’ve used several other benchmarks in the past that were suitable for evaluating MC/MT system performance; however none represented the real-world user experience on connected devices as well as BrowsingBench.

We ran BrowsingBench on a system based on the MIPS32® 1004K™ Coherent Processing System (CPS). In its maximum implementation, the 1004K CPS can support up to four cores and two hardware threads (also known as Virtual Processing Elements or VPEs) per core. To keep things simple for this test however, the configuration we used was dual core with two VPEs per core, for a total of 4 VPEs. VPEs are essentially logical CPUs that share one physical pipeline in each 1004K core, based on MIPS’ multi-threading technology.


The software platform running on our system was Android, and the web browser we used was the Android browser which comes with every Android-based system.

To evaluate the benefits of multiple cores and VPEs on web browser performance, we ran BrowsingBench using the 4 different configurations listed in the table below. In all cases, the tests were executed on the same dual-core 1004K system; however we used the operating system to enable and disable cores and VPEs.

The big question we wanted to answer was whether Android would be able to take advantage of these multiple processing resources to load and render web pages faster, thereby enhancing the user experience. To do that, Android would have to use parallel processes and threads while executing the browsing workload.
The results, which are shown in the table and chart below, leave no doubt: Android based web browsing performance is greatly enhanced by MC and MT technologies.

The main observation is that browsing performance improves more than 2.5x when comparing the full configuration to the basic configuration. With a great deal of parallel execution under Android, the browser can truly benefit from the combination of MT and MC. A closer look at what’s happening under the hood in the Android system indeed shows that a lot of processes are running in parallel. The two main processes in the system are the Android Browser itself and another process called “system server,” which manages many components of Android including the display system, and is kept very busy during the BrowsingBench run.

Even if we limit the system to a single core, the MIPS MT technology gives us a BrowsingBench performance boost of 43 percent. One of the primary attributes of MT is to improve performance efficiency of a core, which it does by increasing the pipeline utilization of that core when multiple processes and/or threads are running. So for systems where silicon real estate is at a premium, choosing a multithreaded core can be a great way to boost system performance.

When multi-core and multi-threading systems were first introduced into the marketplace, most existing software was not optimized to make good use of these technologies. Today this is changing. Android is a complex software platform, and a perfect example of a high volume consumer platform that is quickly evolving and being optimized for optimal user experience in a Web-connected world.

At MIPS we are very pleased with the benchmark results because they demonstrate that our MC and MT technologies deliver much higher performance than the standard hardware used only a few years ago, and make a significant impact to end users of many connected devices from smart phones and tablets to connected DTVs.

We love chips, but it’s fun to see the end products!

January 18th, 2012 by MIPS Technologies
While we love chips, it is always exciting and fun to attend International CES and see how engineers and the development community implement MIPS‘ processor core technology into amazing consumer products. As is the case every year, usage of MIPS-Based processors was found throughout the show – in DTVs, set-top boxes (STBs), Blu-ray players, digital still cameras and video cameras, routers, gateways, modems, smartphones, tablets, e-readers and many other products.

Dish Networks

DISH’s Hopper and Joey Set-Top Boxes were among the highest profile products at the show – and were promoted across the show floor in numerous fun displays. Sling Media and Broadcom also drew crowds for Sling’s new software development kit (SDK) being integrated into Broadcom’s STB platforms.
MIPS licensee Entropic Communications displayed a great diversity of MIPS-Based products in one booth – more than 40 different devices from more than 25 manufacturers, including Motorola, NETGEAR, Pace, Cisco, Wi3, Samsung, DIRECTV, Actiontec, Technetix, Humax, EchoStar, Channel Master, D-Link, Changhong, Zinwell and ZTE!
In the MIPS suite, dozens of MIPS-Based mobile and portable devices were on display including smartphones, tablets, e-readers, PMPs and digital cameras.
Several software solutions were demonstrated on MIPS-Based DTVs, over-the-top media players and set-top boxes, including products from Vizio, Western Digital and Sony. We also showed numerous networking devices including routers, USB dongles and femtocells.
To sum up, many top consumer brands use MIPS. Many were on display at CES (in addition to those already mentioned) including those from LG, Vivitar, DUNE HD, Haier, Toshiba, Nikon, Casio, TiVo, D-Link, Buffalo, Kodak, Belkin, Verizon, Coby.
If it’s a digital home product, a home networking product, or increasingly a mobile product, it’s quite likely that it’s MIPS!
Check out our Facebook page for lots more photos from CES.

MIPS Moves Quickly with Android 4.0.3 and LLVM

December 22nd, 2011 by Robert Bismuth

MIPS Moves Quickly with Android 4.0.3 and LLVM

Android 4.0.3 came out from Google on Friday December 16th and who could resist the challenge? So, MIPS engineers picked up the release from the Google source tree and ported it to MIPS within 24 hours. In fact, they decided to push through the weekend and bring 4.0.3 up on the Ingenic/Ainol tablet. Thus we were able to give Ainol a head start towards an over the air (OTA) upgrade for tablets sold to-date plus schedule a switch over to 4.0.3 for new tablets.

But there is more here than just our dedication to supporting MIPS’ licensees and the Android community …

Android 4.0 expands on Google’s use of LLVM, and MIPS completely supports this initiative – in fact, when Google adopted LLVM 3.0 as the basis of Renderscript in Android 4.0.3, MIPS support was already available. So, what is LLVM, and why is it important for the Android community?

LLVM – Low Level Virtual Machine – is an umbrella for modular compiler technologies. It includes a C/C++ compiler front-end, a portable code generator supporting a wide variety of architectures, an aggressive optimizer, and an efficient just-in-time (JIT) compiler on the back-end. Renderscript, the first technology in Android to use LLVM, first became popular in HoneyComb (Android 3.0)–as a set of low-level APIs targeting 3D rendering and compute operations. In fact Renderscript is an example of using the  high-performance APIs provided by LLVM to achieve the same level of system performance that developers could expect were they instead to  use native code on the underlying device. But unlike the existing Android native development kit (NDK), this solution is cross-platform – meaning that applications built using this technology can run on several architectures supported by LLVM.

The inclusion of MIPS optimizations for LLVM in Google’s Android 4.0.3 release takes a great step in making LLVM available for more general use by app developers seeking to exploit native processor performance and capabilities while retaining complete portability in the Android universe.

So what’s behind this LLVM push for Android?

MIPS actually became involved in the industry’s LLVM initiative over a year ago – before it became generally available in Android. This was when MIPS’ compiler group realized that LLVM was going to be a major basis for applications in the future. LLVM had already been the basis of Apple’s application environment for the iPhone and iPad. Our engineers felt that it was only a matter of time before it became the basis of application development environments in the wider market.

We were clearly not alone in our thinking, and so LLVM first appeared in Android.

By supplying our LLVM technology for the MIPS architecture to Google, we have enabled all MIPS licensees, their OEMs and application developers targeting their platforms to have access to the best possible execution environment on MIPS-based platforms, starting with Android 4.0.3. Of course, as Android moves forward, MIPS will make further refinements to LLVM on the MIPS architecture available to Google. We will also make available other optimizations and software related to improving Android’s “out of the box” support for the MIPS architecture.

Android has become an enormous force in the consumer electronics market – a market in which MIPS’ legendary performance, power efficiency and cost effectiveness have been well recognized. The MIPS architecture has already been adopted widely on just about every type of consumer device … cell phones, tablets, set-top boxes, and digital TVs to name a few.

The inclusion of support for the MIPS architecture directly in this latest key facility of Android provides an even more attractive future for all of our licensees and their customers – and ultimately for the end users who continually seek out the best price/performance products available in the market and rely on those products in their day to day lives.

MIPS is moving forward with Android – as always, we are focused on going beyond simply what the market is demanding. We know that providing an enriched apps development environment benefits all end users. More apps, anywhere and any time, running on Android, running on MIPS!

Convergence with a Caveat: Will the TV, tablet, smartphone and computer converge into one master device?

December 14th, 2011 by Kevin Kitagawa

The evolution of the iPhone and Android smartphones have allowed consumers to be entertained, to easily access information on-the-go and to communicate with anyone from anywhere. Need directions to the nearest gas station? Look it up on Google Maps. Need restaurant recommendations? Launch your Yelp app. Need to waste 10 minutes while waiting for someone? How about a few levels of Angry Birds? Want to listen to music or watch a movie away from home? You can do that. Talk, text or facetime your friends? No problem.

As we all enjoy the features and functions enabled by today’s “smarter” mobile and portable devices, TVs have become smarter too. Today’s TVs are adding internet connectivity, streaming video and TV programming such as Netflix and Hulu, voice/video conferencing capabilities such as Skype, and much more. In addition, Smart TVs can access movies, pictures, and music on any DLNA capable device such as a Windows 7 machine or tablets.

As these devices become more powerful and feature-rich, some people think that we will ultimately see all of the capabilities of TV, mobile phone, tablet and PC converge into one master device. But is that really a possibility?

The short answer is, I don’t think so.

Battery Life

Consider first the matter of battery life. Gone are the days of going a week without needing to charge our phones. Most of us constantly charge our phones at home, work and even in the car just to power a single day. Even with this constant battery charging, many of us swap in other devices to further conserve power. For example, I will use my iPod Touch to watch a movie during an hour at the gym, to be sure I have enough smartphone power for a conference call later in the day. Just imagine the incredible amount of battery life a device would need to provide in order to meet our daily usage appetite for all online/media consumption/phone activities. Today’s devices just can’t supply that.

Size Matters

Secondly, what size would a master device be? Watching video content on my smartphone/tablet is a bit of a compromise. While this is something I would do on a plane or while stuck waiting for hours on end somewhere, while I am at home, I much prefer to watch movies/TV shows in front of my TV.

Some people have proposed that the smartphone can become a set-top box by “docking” it with the TV. This capability will definitely be possible in the near future, but I don’t see this ever replacing a dedicated set-top box that stays in the living room. There are too many questions to sort out: Whose smartphone should be used as the main set-top box? What happens if that person receives a private phone call in the middle of a live football game? What happens if that person is not at home — how would the family watch a program that was recorded on that person’s phone?

At least in my family, this simply wouldn’t work. Even in the future when all data will be stored remotely in the “cloud space,” and each device becomes more or less a screen with all content available on-demand, there will be a need for each device to retain its primary purpose.

Primary Functions

While a smartphone could operate as a master device, it’s very clear that smartphones, tablets, personal computers, set-top boxes, and TVs each have primary functions at which they excel. The smartphone is primarily a phone and mobile internet device. A tablet brings casual email and a better mobile internet experience with its larger screen. The TV is still a one-to-many entertainment device. And the PC is still the best machine for writing reports, developing Powerpoint presentations, and other work-related tasks. In the case of set-top boxes, that primary purpose is delivering premium content in a way that is secure, acceptable to content owners (e.g. HBO and Showtime) and seamless to viewers.

The idea of any one of these devices becoming a “master device” spells compromise for the primary functions of those other devices.

Smart devices will complement each other

What these devices WILL do is complement each other by allowing intelligent interaction between devices. Today, we already see smartphones and tablets being used as remote controls for TVs. Very soon, we will be able to engage in even more advanced integrated tasks.

For example, there have been many times while watching a TV show or movie that I wanted to find out more information about something in real time – perhaps the name of an actor/actress or the location of the scene I’m watching. With a tablet next to me on the couch, I can instantly research the relevant information. Even so, I need to type in my search terms on the tablet to get my information. And while today’s smart TVs allow us to access the internet in order to search directly from the TV, this interaction disrupts the show for everyone else. In the future, smart TVs and set-top boxes will have the ability to deliver relevant keywords to a connected tablet / smartphone by hitting a button on the TV remote allowing a user to search.

In addition, game shows could allow multiple users at home to play along with contestants, vote for participants, or comment in real time. Using a tablet together with a TV during live sports events could enable a user to control different camera views, have user controlled instant replay, or bring up live individual or team statistics, all without disrupting what is being displayed on the TV.

Convergence with a caveat

I believe that convergence will indeed occur among devices, but it will be a kind of functional, not device convergence. We will continue to have separate devices, but they will speak and interact with each other much more seamlessly. Each device will have a lot of similar functionality, but will retain the primary functions at which they excel. Until we have the technology to deliver weeks of battery life on a device that will fit in my pocket and deliver a 60” HDTV experience when I’m home, I see each of these devices being part of our lives. It’s a convergence of functionality, but with a caveat.

It’s an Android Ice Cream Sandwich Tablet, and it’s MIPS!

December 9th, 2011 by Robert Bismuth

Something has changed in the Android world. The first example of a platform/form factor available with the latest release of Android is not an ARM-based platform. It’s MIPS-Based, and it really is the world’s first available Android 4.0 tablet, with full Ice Cream Sandwich functionality and great performance/features –all for less than $100. If you haven’t seen it yet, check out the video on YouTube.

How did this happen?

Of course, it really didn’t happen overnight. It is also only the first of a series of upcoming advantages that MIPS-Based solutions will give Android users. Legendary performance, great power management and affordable licensing terms combine to yield an extremely desirable, affordable solution for end users.

This of course fits perfectly with Google’s intentions for Android.

From the very first, Google created Android for portability across hardware architectures. Initially some people began to think that Android was a single architecture platform simply because of application processor choices made by mobile handset OEMs that were based on their existing designs. Andy Rubin reminded the world of Android’s neutrality when he blogged about his Gene Amdahl moment back in April 2011.

MIPS Technologies has worked with the Android sources since the operating systems’ early days, and has made reference ports available of all the major, applicable Android releases. We recognized early on the potential for Android to move beyond mobile phones and into all corners of consumer electronics – including DTVs and set-top boxes, areas where MIPS is already the leading architecture. Across these areas and others, many MIPS licensees have adopted Android to provide a definitive advantage for their customers.

And now comes Android 4.0 – Ice Cream Sandwich – available on the MIPS architecture.

Android 4.0 is significant for both users and new adopters of Android. With this release, Google has improved the user interface based on feedback from Android users. New features have been added to the platform and existing features have become more polished and efficient. However, the single biggest step forward for MIPS’ licensees comes in terms of the basic requirements for Google’s definition of an Android Compatible Device.

No longer do devices need to have all the attributes of a mobile device, phone or tablet. In other words, you don’t need a touch screen to be Android Compatible. All you need are a display and an input device that provides the relevant service inside the Android system.

This is very important for Google as it expands the Android universe of device types. Many of MIPS licensees are well positioned to take advantage of this step forward since they already build SoCs for DTVs, set-top boxes and other digital home products. Now their OEMs will be able to more quickly achieve Android Compatible Device status by starting with Android 4.0 running on MIPS.

What could be better than that?

We chose to launch Android 4.0 on MIPS in the mobile space not just because we could, but because it illustrates the flexible nature of the MIPS architecture. The MIPS architecture powers not only a wide variety of low power products such as mobile handsets, tablets, portable media devices and ebooks, but it also scales to extremely high performance, powering some of the fastest network infrastructure processors – the devices that in aggregate compose the very backbone of the world’s network infrastructure. We have cores in our current offering and future roadmap that address a broad range of application spaces. And we have the ecosystem and technologies to support those applications, including support for symmetric multiprocessing, multithreading and 64 bit capabilities.

Android on MIPS is a natural fit. It leverages our substantial legacy as a leading RISC architecture – the architecture that is taught around the world as the fundamental RISC architecture. It provides our licensees’ OEMs with a competitive software environment that end users are choosing as their preferred system environment. On top of that, like Android, MIPS is the economical choice with it comes to price/performance.

We broke new ground this month by enabling Ingenic and its OEM Ainol to become the first to market with an Android 4.0 tablet. We will continue to break new ground. We always have. That’s what we do.

Bottom line: it’s MIPS. Andy Rubin of Google said it best in our press release:

“I’m thrilled to see the entrance of MIPS-Based Android 4.0 tablets into the market. Low cost, high performance tablets are a big win for mobile consumers and a strong illustration of how Android’s openness drives innovation and competition for the benefit of consumers around the world.”

Ice Cream Sandwich – Google’s Next Android Delicacy – Coming Soon to MIPS!

November 9th, 2011 by Robert Bismuth

Android has really fired up everyone’s appetite in the consumer electronics market: Cupcake, Donut, Éclair, Froyo, Gingerbread, Honeycomb, and now, Ice Cream Sandwich – the latest delight from the Patisserie Chez Google.

Starting with the earliest Android releases on up through the Honeycomb release this past spring, all versions of Android have shipped on MIPS-based consumer electronics platforms. The latest version about to be released by Google is Ice Cream Sandwich (ICS). Once Google releases the sources, MIPS and our licensees will quickly have ports ready for OEM platforms.

The whole industry is anxiously awaiting the open source release of Ice Cream Sandwich.

When Google announced the ICS lead device back in October, some people mistakenly thought that ICS had been released. It had not been released at that time, and still has not been released by Google.

This situation is no different than the announcement/release process for all prior Android releases. Google has always followed the same process when releasing Android:

  1. Each major version of Android is developed in the context of a lead platform for that version.
  2. The lead platform device is announced and demonstrated at some date in advance of the official release of the new version of Android.
  3. At some point following the announcement of the lead platform, the new version of Android is released and sources become available for porting.

For ICS, steps 1 and 2 have now been completed.  Step 3 has not yet been completed and until it happens, no OEM, silicon vendor or processor architecture company has access to the ICS sources. Even when step 3 occurs, only the lead platform device is ready to be shipped at that moment in time, since a port of Android for that specific device alone was done by Google during its development process.

MIPS and the rest of the market will only get access to ICS when step 3 happens – whenever Google sets the date.

When it does happen, MIPS’ software engineers will immediately dig into the ICS sources and quickly produce a MIPS reference port and tool chain for use by our licensees, their OEM customers and app developers. Given our extensive experience porting previous versions of Android, we do not anticipate this will take our engineers very long. Of course, we will post updates here and on our developer website, http://developer.mips.com.

ICS is an evolutionary development of Android and clearly builds on the strengths of Honeycomb. We ported Honeycomb to the MIPS architecture early on and have continually refined that port over the course of this year. That experience will clearly accelerate the port of ICS to the MIPS architecture.

MIPS is ready and waiting to bring Ice Cream Sandwich onto our architecture and into the hands of our licensees, their OEM customers and application developers!

As Intel Exits the Digital Home Market…

October 17th, 2011 by Kevin Kitagawa

Last week, news came out about Intel’s decision to close its Digital Home business, basically abandoning its “smart TV” initiative.

So with Intel out of the smart TV picture, what does this mean for the industry? Who is the processor winner? According to a recent article on VentureBeat, “A potential winner here is Mips, which has been designing chips for Android-based smart TVs.”

Thanks for the nod, Dean Takahashi! We agree.

I read in a news article that Intel claims it “…led the creation and launch of the smart TV category and its first products.” This is quite a stretch! With its Atom-based CE4100 and CE4200 SoCs targeted at the digital home, Intel’s few major design wins, including the unsuccessful first generation of Google TV, were not for DTV per se. They were in reality over-the-top (OTT) IP set-top boxes—not connected DTV platforms. Even the Sony TV that was at the heart of the Google TV effort used a MIPS-Based SoC for the DTV functionality, with an Intel-based Google TV board connected to it.

Why? Ultimately, Intel is limited by the size and power consumption of its architecture.

Across the DTV category, MIPS Technologies provides the number one processor architecture. This includes DTVs, set-top boxes, Blu-ray players and more. If we look at DTV in particular, MIPS licensees are shipping more units than any of our competitors into this market, with MIPS processors shipping inside of DTVs from LG, Samsung, Sharp, Sony, Toshiba, Vizio and other major brands.

Shipments of DTVs in the overall market are experiencing a relatively weak period right now, but the potential for the future is huge as home entertainment technologies proliferate into geographies where they were never before possible, and as smart TVs begin to gain a toehold.

According to a recent report from IHS iSuppli, “During the next four years, DTV broadcast switchovers will occur in emerging regions such as Latin America, China and Asia-Pacific.” IHS iSuppli forecasts that the worldwide DTV market will expand at a compound annual growth rate of 15 percent from 2010 to 2015, with annual shipments expected to reach 245.9 million units in 2015.

The firm goes on to point out that “In the wake of the TV market transition to digital comes the age of the ‘smart’ TV, with all major TV original equipment manufacturers offering new features and functionality via Internet connectivity to TV sets. IHS expects a transition to occur from digital to smart in order to offer similar opportunities to the TV semiconductor supply chain, just as digital has in the recent past.”

And while ‘smart’ DTV today represents only the ultra high-end of the DTV market, as the digital home processor leader, MIPS has been laying the groundwork for MIPS-Based smart connected entertainment for several years. Through our ‘Android on MIPS’ initiative, MIPS and our licensees announced the world’s first Android set-top boxes, and there are MIPS-Based Android TVs already shipping in the market.

MIPS is also positioned very well to support Google TV if future generations of this platform experience success. According to Google, Google TV will be based on Android 3.1 (also known as “Honeycomb”). MIPS already has Android Honeycomb running on several SoC devices and we will soon announce the shipment of end products. With that in mind, our licensees can easily support Google TV if they feel that the demand is there.

So clearly MIPS is in a strong position regardless of Intel’s decision to remain in this market or leave it. But as most of you know, MIPS and Intel are not the only processor games in town. How will MIPS win against other processor vendors targeting the digital home market, and DTV in particular?

As the incumbent in the digital home, we are starting from a position of strength. And as we have pointed out before, the MIPS architecture is more performance-efficient than the competition. This is particularly important in the DTV market where shrinking margins demand the highest possible performance at the lowest possible cost. With MIPS, our licensees get the best combination of performance, price and power. In addition, with the growing applications ecosystem around MIPS for mobile and smart digital home, we are well positioned to provide the solutions our customers need when smart TV moves from the ultra high-end into the mainstream.

Protect your Software Investment: Migrate to MIPS now!

August 1st, 2011 by Rao Gattupalli

Important factors to consider when choosing an embedded processor for a new project or for a follow-on/upgrade to an existing project include:

  • The highest performing processor for a given die size and power profile
  • Robust roadmap from the vendor and the choice of architectures in the processor family that facilitate optimal programming paradigms for a given application
  • Software tools, applications and SoC partner ecosystem for the processor family
  • Scalability of application performance for software investment protection
  • Ease of adoption on a new project or ease of migration for an upgrade to an existing project

Software investment is the biggest ticket item in any project. Hence it is important to choose an instruction set architecture (ISA) that offers a truly scalable solution for future development. To address various embedded market segments, our distinct, binary-compatible families of processor cores span applications from 32-bit microcontrollers all the way to 64-bit multi-threaded, superscalar many-core processors for networking infrastructure, and numerous digital consumer markets in between. Since one can seamlessly scale the performance range between a wide array of processors, the MIPS architecture offers an ideal path for protecting software investment on a new design or a follow-on/upgrade to an existing project.

MIPS Technologies provides the most performance efficient cores for embedded designs, with the highest performance for a given die size and power profile. MIPS’ superscalar cores are ideal for a single-threaded programming model and our multi-threaded cores facilitate both coarse grain parallelism, with virtual processing elements (VPEs) and multiple cores, to fine grain parallelism with thread contexts (TCs). A multi-threaded architecture is the most efficient way to implement applications or functions that are highly parallelizable. The MIPS64 architecture enables applications to take advantage of larger virtual address space that is greater than 4GB. An important factor to note is that MIPS32 and MIPS64 ISAs are binary compatible.

The bulk of the effort in the migration to any new ISA is in the low-level initialization software. Our new ARM architecture to MIPS and Power architecture to MIPS Migration Guides illustrate the ease of migration and highlight the areas that users need to focus on. The application code itself is typically coded in a high-level language that can be recompiled to the MIPS ISA. MIPS Technologies provides a rich portfolio of software tools that span from SoC bring-up to performance analysis tools for all popular operating systems. These robust software tools enable the user to optimize their application with very little effort. Several third party software tool vendors offer a variety of development kits with popular operating systems and a rich suite of tools that make migration straightforward.

The breadth and the rich features of MIPS Technologies’ product portfolio, coupled with a flexible business model, enable MIPS licensees to create MIPS-Based products that range from 32-bit microcontrollers and energy efficient mobile devices to ‘green’ supercomputers and high-end networking infrastructure products.

Faster Clock Speed or More Parallelization? That is the Question!

July 14th, 2011 by Manuel Uhm

Baseband processors for mobile devices typically run at as slow a clock speed as possible in order to minimize power consumption, generally in the order of 250-500MHz. However, the latest air interface standards are dramatically increasing throughputs, which is putting pressure on baseband processors to increase their performance, while simultaneously reducing latency.

It doesn’t take a rocket scientist to figure out why. LTE, or Long Term Evolution, is the latest air interface standard and is currently available from operators like Verizon, NTT DoCoMo and Telia Sonera. LTE represents a greater than 50x increase in maximum user data from its 3G predecessor, W-CDMA, in its maximum configuration (of course, we all know that theoretical maximum data rates are never achieved, nevertheless, the point is still valid). Due to the real time nature of baseband data, this huge increase in data must still be processed in real time. So the only way for a baseband system to compensate for the increased throughput is to significantly decrease latency. For this reason, the Time Transmission Interval (TTI) for LTE is a mere 1ms, compared to 10ms for W-CDMA. TTI is essentially the length of time to transmit a block of data. Bottom line, the need to process and transmit more than an order-of-magnitude increase in data is creating significant performance demands on cellular baseband processors. This is also true of the next generation WiFi standard, 802.11ac, which promises 1Gbps of data.

Typically, performance increases in both the user and control plane come from increasing the clock frequency of the processor. Of course, this is counter-productive to power consumption, which is why this is generally not favored in the first place. Hence, another alternative is to go multi-core, which is a common means of distributing the processing load to achieve higher performance without having to greatly increase the clock frequency. While this does increase static power consumption due to the increase in transistor count, it is less significant than the increased dynamic power consumption associated with doubling the clock frequency. Multi-core also has the downside of the potential additional licensing and royalties of the 2nd core, as well as the increased manufacturing cost from the greater die size.

Fortunately, these are not the only possibilities. Another possibility is to use hardware multi-threading, which can made a processor core look like two cores, each of which could run an independent OS or RTOS. In this case, the processing load is distributed across what appears to the RTOS to be two cores. In the MIPS32® 34K® core, these are known as VPEs, or Virtual Processing Elements. With a multi-threaded core, the increase in die size is relatively small and there is no need to pay a license fee or royalties for a second core. Furthermore, latency can be significantly decreased since threads can be parked and revived with a zero overhead context switch, hence achieving the two main technical requirements. One of our baseband customers simulated its multi-mode modem and found that with MIPS multi-threading, processor stalls were reduced by over 20%! All of this leads to an improved mobile device user experience, as responsiveness is greatly increased.

The biggest downside to usage of hardware multi-threading is some increase of software complexity, and porting of legacy software. Software which runs single-threaded must be re-architected in order to fully exploit the benefits of multi-threading. While this is not a complete re-write, it can be substantial. Of course, the same is also true of multi-core, so software which supports multi-threading is an inevitability. So regardless, this needs to be done. The exact level of effort depends largely on how well the code is structured (the more modular, the better), written, and documented. For a multi-mode modem, the code can be partitioned in a few different ways to exploit multi-threading while minimizing the porting cost. Stay tuned for my next post to learn more!

So the answer to the question above is, of course, it depends. It depends on the application requirements, particularly the power threshold. But for mobile baseband processors, clearly multi-threading provides a solution that increases performance significantly in a much more power friendly manner than doubling the clock speed or going multi-core.

For additional information on multi-threading, please go to: http://www.mips.com/mtp/.

Nice Try, No Cigar

June 16th, 2011 by Ian Anderton

Yesterday Freescale announced that its Kinetis microcontroller achieves the highest CoreMark/MHz score of any Cortex-M class device.

Whilst this announcement is an opportunity to bring out the bunting and set off a few fireworks in Austin, this news was met in Sunnyvale with a ‘Nice try, no cigar’.

2.119 CoreMark/MHz may be a credible result for a Cortex-M class microcontroller, but it falls well short of what an equivalent MIPS processor core can achieve.

The MIPS32 M14K and M4K families of processor cores target similar market applications as Cortex-M. As I have detailed in the ‘Beyond the Hype’ white paper and a previous blog post, the M14K and M4K cores, based on the standard MIPS architecture, have a higher operating performance than the Cortex-M series, in addition to having superior features, smaller area and lower power.

So, how much better performance? Let’s take a look at some numbers.

The M14K core operating in microMIPS mode (the 32-/16-bit code compression-enabled ISA) achieves a 2.56 CoreMark/MHz score—20% higher performance than Kinetis.

The PIC32 MCU family from Microchip (based on the M4K core) achieves a 2.51 CoreMark/MHz score, an 18% increase in performance relative to Kinetis operating at the same clock frequency.

Why do MIPS processors outperform their equivalent ARM counterparts across the complete product range?

Well, Watson, it all comes down to MIPS having a better, more efficient architecture – something it is well known for. Comparing MIPS and ARM architectures highlights some interesting facts on how MIPS is able to achieve better performance and higher frequencies.

MIPS has:
• 32 general purpose registers (ARM only has 16)
• Mostly single-operation instructions (with ARM, many operations require multiple instructions to complete)
• Less predicated execution than ARM
• Simpler memory addressing modes, and fewer executing modes than ARM
• Shadow register sets (ARM does not have these)

….and so on. For more information about these attributes, check out the whitepaper here.

Other MIPS cores also make use of a unique multi-threading capability, which further increases efficiency compared to ARM cores.

In addition, the M14K and M4K processor cores are designed with a 5-stage pipeline execution unit; Cortex-M cores implement only a 3-stage pipeline architecture. This is another key feature which contributes to MIPS’ high performance. Running the Dhrystone benchmark results in M14K (in microMIPS mode) producing 1.48 DMIPS/MHz, while Cortex-M3 (and the M4 implemented in the Freescale Kinetis device) only achieves a max 1.25 DMIPS/MHz.

Now, back to EEMBC CoreMark, where we started this discussion…

CoreMark is an interesting and useful benchmark because it is aimed at benchmarking the performance of the processor core specifically. CoreMark analyzes and scores the processor pipeline structure and efficiency, performing three main tasks that test its execution of commonly used operations. Importantly, the CoreMark test is written such that it isolates the processor from memory influences.

CoreMark is quickly becoming an industry standard benchmark for measuring and comparing processor performance. The higher the CoreMark number, the higher the performance.

Pass me the box of cigars please.