feature article
Subscribe Now

MIPS Rolls Out Its Own IDE

IDEs are so popular even hardware companies are selling them. As we mentioned a few weeks ago [Embedded Tech Journal, September 2, “The March of IDEs”], integrated development environments (IDEs) are all-in-one editors, compilers, linkers, and debuggers that allow a programmer to sit down and write, edit, download, and debug all his code from one place with a single user interface. The individual tools within the IDE might change, but overall they behave like one mega-development tool.
Now MIPS Technologies, makers of the eponymous 32-bit RISC processor, have gotten into the act. Their Navigation ICS (hereinafter “NavICS”) is an IDE tailored specifically for – you guessed it – MIPS processors.

MIPS calls its IDE an ICS, or integrated component suite, for no immediately obvious reason. For all intents and purposes it’s an Eclipse-based IDE like most other IDEs. It’s got plug-ins and widgets for compiling, linking, and debugging just as most IDEs do. Obviously, all the software is MIPS-specific, which means it understands MIPS registers, stacks, state, flags, and other MIPS-related arcana.

NavICS is also Linux-specific, which means it also understands Linux tasks, threads, and processes. With NavICS, programmers writing code for a MIPS/Linux system can debug the operating system and drivers as well as their own code, all without resorting to special “debuggable” versions of the Linux kernel. Oftentimes, debugging the OS requires recompiling it with special instrumentation hooks that provide visibility into the workings of the kernel, but that also affect the performance of the operating system. In true Heisenberg style, the kernel never behaves the same way when it’s instrumented. You’re left with the decision to run either a normal production kernel with no debug visibility or a debuggable kernel that’s not the same as the production code. The NavICS debugger aims to fix that.

There’s also an optional Linux Event Analyzer (LEA) plug-in that acts like a code profiler, charting out where your code is spending its time when you’re not looking. Too much time spent in wait loops, interrupt-service routines, or math libraries? The LEA reveals all, and not just in user code. Because the whole NavICS suite is both MIPS- and Linux-aware, it accurately identifies kernel calls, drivers, and other deeply buried subroutines so programmers don’t have to try correlating address maps with source listings.

The price for all this IDE goodness starts at about $2000 for a one-year license. Some of the optional plug-in functions cost extra. If you’re developing with a MIPS processor running Linux, NavICS seems like a no-brainer. If you’re not using a MIPS processor or not running Linux, it may be somewhat less compelling.

Hardware Goes Soft

So why would a microprocessor company start peddling development software? To sell more chips, naturally. The easier it is to develop good-quality code for MIPS processors, the more MIPS stands to gain. Happy programmers make repeat customers, and repeat customers are good business. And as we’ve seen before, software in general – and development tools in particular – are an important factor when it comes to choosing a microprocessor. A good IDE can sway the decision toward MIPS and away from (for instance) ARM or PowerPC.

 In that light, it’s not so unusual that MIPS would start supplying development software. Indeed, you could argue that MIPS has always been a software company. After all, it doesn’t really make chips. It licenses its chip designs to semiconductor manufacturers or ASIC designers who then, in turn, have the chips fabricated. Those design licenses often take the form of Verilog or VHDL hardware descriptions, which are really just software-defined hardware.
There’s a saying among scientists to the effect that “in the end, it’s all physics.” With licensed “soft” processors running open-source operating systems and vendor-provided development tools, it appears that, in the end, it’s really all just software.

Leave a Reply

featured blogs
Nov 25, 2020
It constantly amazes me how there are always multiple ways of doing things. The problem is that sometimes it'€™s hard to decide which option is best....
Nov 25, 2020
[From the last episode: We looked at what it takes to generate data that can be used to train machine-learning .] We take a break from learning how IoT technology works for one of our occasional posts on how IoT technology is used. In this case, we look at trucking fleet mana...
Nov 25, 2020
It might seem simple, but database units and accuracy directly relate to the artwork generated, and it is possible to misunderstand the artwork format as it relates to the board setup. Thirty years... [[ Click on the title to access the full blog on the Cadence Community sit...
Nov 23, 2020
Readers of the Samtec blog know we are always talking about next-gen speed. Current channels rates are running at 56 Gbps PAM4. However, system designers are starting to look at 112 Gbps PAM4 data rates. Intuition would say that bleeding edge data rates like 112 Gbps PAM4 onl...

featured video

Product Update: Broad Portfolio of DesignWare IP for Mobile SoCs

Sponsored by Synopsys

Get the latest update on DesignWare IP® for mobile SoCs, including MIPI C-PHY/D-PHY, USB 3.1, and UFS, which provide the necessary throughput, bandwidth, and efficiency for today’s advanced mobile SoCs.

Click here for more information about DesignWare IP for 5G Mobile

featured paper

Top 9 design questions about digital isolators

Sponsored by Texas Instruments

Looking for more information about digital isolators? We’re here to help. Based on TI E2E™ support forum feedback, we compiled a list of the most frequently asked questions about digital isolator design challenges. This article covers questions such as, “What is the logic state of a digital isolator with no input signal?”, and “Can you leave unused channel pins on a digital isolator floating?”

Click here to download the whitepaper

Featured Chalk Talk

ROHM BD71847AMWV PMIC for the NXP i.MM 8M Mini

Sponsored by Mouser Electronics and ROHM Semiconductor

Designing-in a power supply for today’s remarkable applications processors can be a hurdle for many embedded design teams. Creating a solutions that’s small, efficient, and inexpensive demands considerable engineering time and expertise. In this episode of Chalk Talk, Amelia Dalton chats with Kristopher Bahar of ROHM about some new power management ICs that are small, efficient, and inexpensive.

Click here for more information about ROHM Semiconductor BD71847AMWV Programmable Power Management IC