CMP EMBEDDED.COM

Login | Register     Welcome Guest  
HOME DESIGN PRODUCTS COLUMNS E-LEARNING CONFERENCES CODE FORUMS/BLOGS NEWSLETTERS CONTACT FEATURES RSS RSS

PRODUCT HOW-TO: The care and feeding of embedded Linux running on MIPS CPUs



Embedded.com
Kernel Optimization " Power Management
Another example of the importance of Linux kernel optimizations is in power management. In today's green computing environment, power management is ever-increasing in importance not only important for portable devices requiring maximum battery life, but also to minimize wasted energy and heat in A.C.-powered systems.

A typical modern cell phone must manage in excess of 20 different power planes, not including the power islands within the application processor SoC and the core itself.

Current Linux kernel power management support concentrates mainly on standard PC through the ACPI (Advanced Configuration and Power Interface). The ACPI interface is however not suitable for advanced multi-core SoCs, which must extend a coherent power management scheme across cores, internal SoC peripherals and finally external system peripherals such as RF power amplifiers.

At MIPS, we implemented an advanced power management IP block called the Cluster Power Controller, or CPC (Figure 2 below), which allows for individual control of every core within a specific 1004K implementation, allowing cores to be brought into and out of coherent operation and powered completely down if required.

This power management model can be further extended to bring core voltage and frequency modulation under control of the operating system itself. The functionality of this CPC block must also be extended into the Linux kernel.

We are currently architecting the foundation of this power management structure to implement a comprehensive API to both the Linux kernel itself and to applications running under the standard Linux application space.

Figure 2. The Cluster Power Controller allows for individual control of every core within a specific multi-core implementation.

Development Tools for Linux
When looking at processor support for an OS, development tools are critical. The latest generation of Linux development tools take advantage of On-Chip Instrumentation to "hardware assist" the debugger.

These tools are architecture-specific, and not all processors support this unique approach to debugging. For example, there are Linux tools available that can profile the Linux kernel and loadable modules.

These tools rely on the processor being able to transparently sample the PC register at extremely high rates of speed and pass this information to the debugger.

Coupled with symbolic information from loadable modules (the typical form of a Linux device driver), a developer can quickly profile the Linux kernel and determine what demands the device drivers may be placing on the kernel. Optimizing the performance of the Linux kernel can have a huge impact on system performance.

Complimenting kernel profiling tools are Linux event analyzers that are able to profile the entire system. Typically these tools capture user-selected Linux events occurring on the target, and then graphically display the events over time. Captures can sometimes collect up to 20 seconds of Linux system activity.

Regardless of the application, developers should make sure that the processor architecture they choose includes a seamless development environment that includes compilers, debuggers and performance and profiling tools.

Tools of this nature are mandatory to meet time to market requirements and to extract maximum performance from an embedded system design. Investing in fully integrated and tested vendor-provided tools and environments—including complete documentation, support forums, call centers, undocumented insight, integration, standards, and a connection to an entire ecosystem—can reduce time to market for current and future designs.

All for One and One for All: The Linux Community
The Linux kernel has evolved over the years to become one of the most scalable and reliable operating systems, powering embedded appliances from low-end, single-core to high-end, multi-core.

The availability of a stable, highly portable Linux kernel, hundreds of supporting royalty-free middleware components, thousands of Linux developers, and a growing number of commercial Linux software and service providers means that Linux is an effective operating system, both in terms of time to market and cost of development.

We encourage all developers to consider Linux for their next RTOS, and to look for a processor vendor that provides the dedicated Linux support, vast ecosystem, and debug/development tools that are needed to bring quality products to market quickly.

And when developers choose to leverage Linux, we encourage them—whether they are using a "free" or commercial distribution, to give back to the community. It is only through continued maintenance, care and feeding of the kernel that Linux will continue to grow and evolve as the RTOS of choice for the next generation of embedded applications.

Rick Leatherman is a Vice President for Development Tools at MIPS Technologies. He was the founder of First Silicon Solutions (FS2) which was acquired by MIPS in 2005. He has over 20 years' experience in development tools at Intel, Microtek and Microcosm.

Yakov Levy is a Strategic Marketing Manager for MIPS Technologies. He has 25 years of experience in the semiconductor and silicon intellectual property (SIP) industries. Prior to joining MIPS in August 2006, Mr. Levy held various positions with Adimos Inc., Transmeta Corporation and National Semiconductor.

Bob Martin is an Applications Engineer for MIPS Technologies, having joined the company in 2007. He was previously Principal Systems Engineer at Portal Player for two years. Mr. Martin has also held engineering positions for companies including National Semiconductor and Scientific Instrumentation Ltd.

1 | 2 | 3 | 4

Rate this article: Low High
Current rating
  • .
Embedded.com Career Center
Looking for a new job?
SEARCH JOBS

Browse all jobs

SPONSOR
RECENT JOB POSTINGS



TECH PAPER
WEBINAR
WEBINAR
WEBINAR




 :