Abstract
Transmeta’s Crusoe microprocessor is a full, system-level implementation of the x86 architecture, comprising a native VLIW microprocessor with an embedded software layer, the Code Morphing Software (CMS). CMS combines an interpreter, dynamic binary translator, optimizer, and run-time system. By moving infrequently-used or complex functionality to CMS, Crusoe achieves a much simpler hardware implementation than would otherwise be possible, while improving flexibility. This makes it attractive for such applications as low-power laptops and notebooks or embedded systems such as printers, while still allowing the use of widely available standard software and development tools.
In its general structure, CMS resembles other binary translation systems described in the literature, but it is unique in several respects. It must robustly handle the full range of x86 workloads, with the performance of a hardware-only implementation as well as full system-level x86 compatibility. This exposes issues that have received little or no attention in the binary translation literature, such as exceptions and interrupts, I/O, DMA, and self-modifying code.
This talk will begin with an overview of the Crusoe system and some observations concerning its unique characteristics. We will then discuss several challenges raised by the issues above, and present some of the techniques developed in Crusoe and CMS to meet those challenges, especially the Crusoe paradigm of aggressive speculation, recovery to a consistent x86 state using unique hardware commit-and-rollback support, and adaptive retranslation when exceptions occur too often to be handled efficiently by interpretation. Finally, we will discuss novel techniques used to test and debug the software embedded in this unusual microprocessor.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dehnert, J.C. (2003). The Transmeta Crusoe: VLIW Embedded in CISC. In: Krall, A. (eds) Software and Compilers for Embedded Systems. SCOPES 2003. Lecture Notes in Computer Science, vol 2826. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39920-9_1
Download citation
DOI: https://doi.org/10.1007/978-3-540-39920-9_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-20145-8
Online ISBN: 978-3-540-39920-9
eBook Packages: Springer Book Archive