The Transmeta-Embedded Connection

Transmeta began as the most private company in the whole Linux space. Now it's the most public. Or at least the most recently public.

As I write this, Transmeta has been
public for a week. It debuted to a 115% gain in what had been, to
say the least, a downbeat market. We're a long way from the heady
days of one year ago when we were hammocked in history between the
spectacular IPOs of Red Hat and VA Linux.

Transmeta, who famously employs Linux creator Linus Torvalds,
could claim to be the leading chip and board supplier to the
embedded Linux market--or at least the x86-compatible supplier with
the highest degree of association with Linux.

Of course, a primary virtue of Linux is its hermit crab
nature: it'll fit in all kinds of spaces and not just on x86
systems. But x86 is Linux' most native instruction set, and that's
what Transmeta's Crusoe chips run.

Crusoe's primary virtue is low-power consumption, which
derives partly from the ``code morphing'' of x86 instructions into
the VLIW (Very Long Instruction Word) code Crusoe's innards
understand. It also derives from LongRun, the technology by which
the CMS (code morphing software) monitors workload and dynamically
adjusts both voltage and clock speed. (Long Run is superficially
similar to Intel's SpeedStep but offers advantages when the system
is disconnected from wall power and running in battery mode.)
Linus' fingerprints are reportedly on the CMS code, along with
Transmeta's own Mobile Linux software. Dave Taylor, of Transmeta's
technical staff, says this about CMS:

Imagine that CMS is a weird new way of building a
package from a tarball instead of an x86 emulator. Instead of
having to type make to build the executable, it
just starts interpreting the C to learn about its dynamic behavior
and also to get started faster. After interpreting a piece of code
for perhaps a few milliseconds, it has a much better idea how the
code behaves and builds a more intelligent compilation that runs at
native speed. Indeed, even after running this faster compiled
version for a while, it may see even more performance opportunities
and may recompile itself again.

By driving down power consumption and managing it
dynamically, Transmeta invites the creation of a new mobile device
class. And clearly, while the company was famously working in
silence and secrecy, it was also working deeply with various OEMs
on this new class of systems. Some of these are now manifesting in
the world.

One is the Gateway Connected Touch Pad, which is the product
of an alliance between Transmeta, AOL, Gateway and Broadcom. The
stated intention is to proliferate a new class of home Internet
appliances that feature a touch screen (as well as a keyboard) and
instant-on access to AOL features. (Think of an AOL version of
WebTV but with a small solid-state screen instead of a TV.) The
device received a ``Best Consumer Product'' award from ZDNet and
CNet judges at Fall Comdex 2000. Its OS is Mobile Linux.

Right after Transmeta's IPO, ViA announced plans for a
``wearable PC'' based on the Crusoe chip. Early versions were
reportedly being tested by the US Army Military Police in Fort
Polk, Louisiana.

Transmeta's Crusoe chips are also featured in Sony's new VAIO
C1 PictureBook Notebook Computer, plus a pile of other
systems:

Wireless Web slates from Acer, FIC, Hitachi and
Sewoo

Ulta-portable notebooks from Casio, Fujitsu,
Hitachi and NEC

Rebel's new Netwinder 3100 server appliance

So far the FIC, Gateway, Hitachi and Rebel machines run
Mobile Linux (others run Windows), and we understand that the Acer
may be running Mobile Linux as well. In any case, there's nothing
to stop the Linux hermit crab from hacking its way into any of
them. Dan Quinlan, a software engineer at Transmeta and Chairman of
the Linux Standard Base
(http://www.linuxbase.org/),
says ``Linux should run on these just like it does on any other
laptop or x86 system.''

At this point, the Transmeta family includes three chips: the
TM3200, TM5400 and TM5600, each designed for a somewhat different
class of device. The TM3200 comes with Mobile Linux, which
Transmeta recommends for web slates and other handheld and tiny
devices that don't use a hard drive. Mobile Linux is optimized for
power management and reduction of memory footprint. LongRun
technology is implemented on the TM5400 and TM5600.

Perhaps the most critical issue in the leanest systems is
code size. Transmeta's Dave Taylor says, ``You may be interested to
know that Linux, its most important libraries (C, math, threads,
etc.) and a lean configuration of the busybox utilities all fit in
2MB of compact flash using Mobile Linux. Even if you add X and the
X libraries, it still fits in about 6MB of flash. It's a really
attractive package for incredibly tight OEMs who are literally
counting pennies on their bill-of-materials.'' He adds,

You may also be interested to know that as CMS
developers, we find Linux one of our more pleasant operating
systems to test because it's very well behaved in x86-space. All
the segments are big and friendly. There's no monkey business with
self-modifying code. There's much less of that bloated code that
finds itself in the i-cache, oh, say, once, and then never executes
agthat but happens to be part of some critical benchmark.

As a final testament to Linux' innate utility, he adds,
``Although CMS bears literally no relationship to Linux, we also
used Linux as a cross-compiling, remote debugging and simulation
platform for CMS.''

Needless to say, the fact that Linus Torvalds works at
Transmeta gives the company a key role in the development of Linux
itself. ``Everything we do with Linux we give back to the
community'', says Dan Quinlan. That includes some significant hacks
by Linus himself, along with the rest of the Mobile Linux team at
Transmeta.

What we found when we started was that there were
a few critical technologies missing from Linux. That's why Linus
and some of the other developers here at Transmeta came up with
cramfs, a compressed file system for ROMs and flash memory that
allows you to stuff as much data as possible into media used by
systems that lack a hard drive. He also wrote ramfs, which is a
dynamically resizable RAM file system that you can use in just
about any system. It's ideal for storing temporary data and, don't
have a hard drive to write it to and don't want to write it to ROM
or flash. It differs from RAM disks by using only as much space as
the data requires, and by re-using a bunch of stuff from the
kernel. Both cramfs and ramfs are now part of the Linux
kernel.

So the open question at this point is: who, besides the Usual
Suspects (large PC OEMs, and Asian systems houses that have
specialized in compact and mobile systems for years) is ready to
create embedded systems that take advantage of Linux virtues (such
as native operation on the Net) and run on just 1.5 volts?