This is an old revision of this page, as edited by Sanxiyn (talk | contribs) at 07:37, 12 May 2010 (Debian port). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Revision as of 07:37, 12 May 2010 by Sanxiyn (talk | contribs) (Debian port)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)Designer | Hitachi Ltd. |
---|---|
Bits | 32 |
Introduced | 1990s |
Design | RISC |
Encoding | Fixed |
Endianness | Bi |
SuperH (or SH) is a 32-bit reduced instruction set computer (RISC) instruction set architecture (ISA) developed by Hitachi. It is implemented by microcontrollers and microprocessors for embedded systems.
History
The SuperH processor core family was first developed by Hitachi in the early 1990s. Hitachi has developed a complete group of upward compatible instruction set CPU cores. The SH-1 and the SH-2 were used in the Sega Saturn and Sega 32X. These cores have 16-bit instructions for better code density than 32-bit instructions, a benefit at the time as memory was very expensive.
A few years later the SH-3 core was added to the SH CPU family; new features included another interrupt concept, a memory management unit (MMU) and a modified cache concept. The SH-3 core also got a DSP extension, then called SH-3-DSP. With extended data paths for efficient DSP processing, special accumulators and a dedicated MAC-type DSP engine, this core was unifying the DSP and the RISC processor world. A derivative was also used with the original SH-2 core.
For the Dreamcast, Hitachi developed the SH-4 architecture. Superscalar (2-way) instruction execution and a vector floating point unit were the highlights of this architecture. SH-4 based standard chips were introduced around 1998.
In early 2001, Hitachi and ST Microelectronics formed the IP company SuperH, Inc., which was going to license the SH-4 core to other companies and was developing the SH-5 architecture, the first move of SuperH into the 64-bit area. SuperH, Inc. sold the IP of these CPU cores to Renesas Technology in 2004.
The SH-5 design supported two modes of operation. SHcompact mode is equivalent to the user-mode instructions of the SH-4 instruction set. SHmedia mode is very different, using 32-bit instructions with sixty-four 64-bit integer registers and SIMD instructions. In SHmedia mode the destination of a branch (jump) is loaded into a branch register separately from the actual branch instruction. This allows the processor to prefetch instructions for a branch without having to snoop the instruction stream. The combination of a compact 16-bit instruction encoding with a more powerful 32-bit instruction encoding is not unique to SH-5; recent ARM processors have a 16-bit Thumb mode, and MIPS processors have a MIPS-16 mode. However, SH-5 differs because its backward compatibility mode is the 16-bit encoding rather than the 32-bit encoding.
The evolution of the SuperH architecture still continues. The latest evolutionary step happened around 2003 where the cores from SH-2 up to SH-4 were getting unified into a superscalar SH-X core which forms a kind of instruction set superset of the previous architectures.
Today, the SuperH CPU cores, architecture and products are with Renesas Technology, a merger of the Hitachi and Mitsubishi semiconductor groups and the architecture is consolidated around the SH-2, SH-2A, SH-3, SH4 and SH-4A platforms giving a scalable family.
Models
The family of SuperH CPU cores include:
- SH-1 - used in microcontrollers for deeply embedded applications (CD-ROM drives, major appliances, etc)
- SH-2 - used in microcontrollers with higher performance requirements, also used in automotive such as engine control units or in networking applications, and also in video game consoles, like the Sega Saturn. The SH-2 has also found home in many motor control applications.
- SH-2A - The SH-2A core is an extension of the SH-2 core including a few extra instructions but most importantly moving to a superscalar architecture (it is capable of executing more than one instruction in a single cycle) and two five-stage pipelines. It also incorporates 15 register banks to facilitate an interrupt latency of 6 clock cycles. It is also strong in motor control application but also in multimedia, car audio, powertrain, automotive body control and office + building automation
- SH-DSP - initially developed for the mobile phone market, used later in many consumer applications requiring DSP performance for JPEG compression etc
- SH-3 - used for mobile and handheld applications such as the Jornada, strong in Windows CE applications and market for many years in the car navigation market
- SH-3-DSP - used mainly in multimedia terminals and networking applications, also in printers and fax machines
- SH-4 - used whenever high performance is required such as car multimedia terminals, video game consoles, or set-top boxes
- SH-5 - used in high-end multimedia applications
- SH-X - mainstream core used in various flavours (with/without DSP or FPU unit) in engine control unit, car multimedia equipment, set-top boxes or mobile phones
- SH-Mobile - SuperH Mobile Application Processor; designed to offload application processing from the baseband LSI
SH-2
The SH-2 is a 32-bit RISC architecture, it has 16 general purpose registers, which makes it well suited for programs written in C.
It has a 16-bit fixed length instructions for high code density, features a hardware Multiply-Accumulate (MAC) block for DSP algorithms and has a five-stage pipeline.
The SH-2 has a cache on all ROM-less devices.
It also provides a vector-base-register, global-base-register and a procedure register.
Today the SH-2 family stretches from 32k of on board flash up to ROM-less devices. It is used in a variety of different devices with differing peripherals such as CAN, Ethernet, motor-control timer unit, fast ADC and others.
SH-2A
The SH-2A is an upgrade to the SH-2 core. It was announced in early 2006.
At launch in 2007 the SH-2A based SH7211 was the world's fastest embedded flash microcontroller running at 160 MHz. It has later been superseded by several newer SuperH devices running at up to 200 MHz.
New features on the SH-2A core include:
- Superscalar architecture: execution of 2 instructions simultaneously.
- Harvard architecture
- Two 5-stage pipelines.
- 15 register banks for interrupt response in 6 cycles.
- Optional FPU
The SH-2A family today spans a wide memory field from 16kB up to and includes many ROM-less variations. The devices feature standard peripherals such as CAN, Ethernet, USB and more as well as more application specific peripherals such as motor control timers, TFT controllers and peripherals dedicated to automotive powertrain applications.
External links
- Renesas SuperH - Products, Tools, Manuals, App.Notes, Information
- http://www.RenesasInteractive.com - Online training for Renesas products.
- http://RenesasRulz.com - A community support forum.
Linux for SuperH
- http://www.kpitgnutools.com, Official free download of GNUSH-ELF and SH-Linux Toolchains with free Technical Support
- http://linux-sh.org/ Wiki of linux-sh port
- http://sh-linux.org/ gcc toolchain
- http://shlinux.com/ MPC Data SHLinux support
- http://spinics.net/lists/linux-sh/ Linux SuperH Kernel Development mailing list archive
- http://www.littlebluelinux.com/ Little Blue Linux - for SH2A
- http://www.codesourcery.com/sgpp/lite/superh GNU Toolchain for SuperH
Linux distributions for SuperH
- Jlime (Jornada Linux Mobility Edition) has working distribution for HP Jornada 620LX/660LX/680/690 handhelds; JLime is probably the largest SuperH distribution.
- Gentoo Linux
- Debian port is in progress .
- OpenEmbedded
- T2 System Development Environment
NetBSD on SuperH
OpenBSD on SuperH
Reduced instruction set computer (RISC) architectures | |
---|---|
Origins | |
In active development | |
Development discontinued |
|