SuperH
読み:スーパーエイチ
外語:SuperH
かつて
日立製作所
の
半導体
部門(現ルネサス)の開発した、組み込み用の
RISC
プロセッサーのシリーズ名。SuperHのHは、開発した日立製作所の頭文字「H」である。
目次
ラインナップ
特徴
コンセプト
MMU
アドレッシング
条件ジャンプ
ブランチ型
条件判断の方法
その他の機能
ラインナップ
基本ロードマップ上のラインナップは次のとおり。
第1世代
SH-1
第2世代
SH-2
SH2-DSP
SH-2A
SH2A-FPU
第3世代
SH-3
SH3-DSP
第4世代
SH-4
SH-4A
SH4AL-DSP
第5世代(64ビット)
SH-5
第6世代
SH-6
(※計画倒れ)
第7世代
SH-7
(※計画倒れ)
他の特殊仕様製品(
ASSP
展開製品)は次のとおり。
SH-Ether
(Ethernetコントローラー搭載)
SH-Mobile
(携帯電話機向けアプリケーションプロセッサー)
特徴
コンセプト
命令セットは、原則として16ビット固定長にすることで効率を高めている。
また命令は
上位互換
が維持されていて、
SH-1
のプログラムが
SH-4
でも(原則として)そのまま動作することになっている。但しマイクロプロセッサーによって
I/Oポート
空間のアドレス等が違うので、本当に無修正で動作するわけではない。
MMU
SH1/SH2シリーズまでは
MMU
が搭載されていない。SH3/SH4シリーズにはMMUが搭載されている。
MMUを使うような近代的な
オペレーティングシステム
(OS)はSH3以上で動作させることが可能。
アドレッシング
命令長が16ビット固定なので、レジスターへの数値代入でも、16ビットや32ビットの値を
イミディエイト
として与えることはできない。
可能なのは符号付き8ビットまでで、それ以上はメモリー上に置かれた値を取り出すことになる。手間だが致し方のない所である。
その代わりにアドレッシングモードが豊富に用意されており、標準で11種類のアドレッシングモードがある。
レジスター直接
(Rn)
レジスター間接
(@Rn)
ポストインクリメントレジスター間接(
後置インクリメント
レジスター間接) (@Rn+)
プリデクリメントレジスター間接(
前置インクリメント
レジスター間接) (@-Rn)
ディスプレイスメント付きレジスター間接
(@disp:4,Rn)
インデックス付きレジスター間接
(@R0,Rn)
ディスプレイスメント付きGBR間接 (@disp:8,GBR)
インデックス付きGBR間接 (@R0,GBR)
ディスプレイスメント付きPC相対 (@disp:8,PC)
PC相対
(disp:8/disp:12/Rn)
イミディエイト
(#imm:8)
もちろん、全ての命令でこの全てのアドレッシングが使えるわけではないが、各命令で必要充分なアドレッシングが可能になっている。
条件ジャンプ
ブランチ型
条件ジャンプ
は、いわゆるブランチ型に属する。
但し、条件判断の方法が一般的なプロセッサーと異なり、条件判断をジャンプ時ではなく比較命令時に行なうのが特徴である。このためフラグは一つしかない。
条件ジャンプ処理は事前にTビットと呼ばれるフラグに比較結果を入れてから、Tビットの結果を見てジャンプする命令を呼び出す形になる。
条件判断の方法
一般的なCPUであれば、比較命令で
ゼロフラグ
や
キャリーフラグ
を立て、その後そのフラグに応じたジャンプをさせる。
SuperHは、丁度その逆である。
例えば、
CMP/GE R1,R0
とすると、R1≦R0の時にT=1、さもなくばT=0となる。
次いで、BT label命令(branch if true)を使えば、T=1の時(R1≦R0)にlabelにジャンプ、BF label命令(branch if false)を使えばT=0の時(R1>R0)にlabelにジャンプすることになる。
その他の機能
積和演算
(MAC)機能も搭載されており、様々な用途に利用できる。
再検索