H8

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
H8/323 HD6473238F10

H8シリーズは日立製作所(現在はルネサス エレクトロニクスとして分離)が開発したマイクロコントローラである。ターゲットは組み込み市場であり、様々な機能を内蔵した多岐な製品をシリーズ展開していた。形態としてはマスクROM版・ROMレス版のほかに、EPROMを内蔵したZTAT版のほか、フラッシュメモリを内蔵したF-ZTAT版がある。

当初は8ビットCPUで、「H8」の名前のまま、16ビット32ビットの後継シリーズが開発された。内部レジスタ幅は16ビットまたは32ビットで、データバスの幅によってビット数を分類している。

2013年現在、H8シリーズの生産・供給は続けられているものの、ルネサス エレクトロニクスの会社統合による製品ラインナップの整理により、今後の新製品の開発予定は無いとされる[1]

概要[編集]

いわゆるCISCアーキテクチャで、R0~R7の16ビット汎用レジスタが8本あり、これらはR0H、R0Lなど8ビットレジスタ16本としても使用できる。なお、R7はスタックレジスタである。上位のシリーズではさらに各レジスタを32ビット幅に拡張してER0~ER7としている。

アドレッシングモードが豊富で直交性の高い命令体系を持つ。MC68000にも似ていて、同様に奇数アドレスをワードアクセスすることはできないが、エラーは発生しない。I/O空間はメモリマップドI/Oロード命令ではソースを先にデスティネーションを後に書き、ビッグエンディアンである。

製品としてはCPUコアにROM、RAM割り込みコントローラ、タイマ入出力ポートシリアルコントローラ(SCI)、A/DコンバータD/AコンバータDMAなどが統合されたパッケージで販売される。I2Cバススマートカードインターフェースや液晶コントローラなどを持つシリーズもある。また、ピン配置に互換性のない複数のシリーズに細かく分けられている。パッケージはQFPPLCCなどの表面実装型が多く、シュリンクDIPなどの挿入型の品種も存在する。

開発環境としては純正のC/C++/アセンブラパッケージおよび統合開発環境HEW(High-performance Embedded Workshop/「Hitachi~」から改称)があるほか、各社からCコンパイラなどが発売されている。GCCでも対応している。

背景[編集]

H8は1980年代後半に日立が開発した独自命令セットの8ビットプロセッサで、当時の同社の類似した命名方式のプロセッサには、32ビットのTRONCHIPのH32(GMICROシリーズの日立側名称)、16ビットのH16(HD641016。68000に強く影響されているが独自の石。MC68000のセカンドソースであるHD68000とは別)があった。H32はスーパー301条適用がほのめかされた圧力によるTRONプロジェクトの失速の影響で少数の生産に止まった。H16は「日立対モトローラ事件」(H8とH16に対しモトローラが特許を侵害しているとして訴訟。日立は68000が日立の特許を侵害しているとして対抗。クロスライセンスで決着(事実上の日立勝利)。[2])の影響もあり消滅し、H8のみが残った。日立はそれまでモトローラの、MC6800のセカンドソースHD6300シリーズ(HD6301・HD6303等)(及びMC6809を拡張したHD6309(en:Hitachi 6309))、MC68000のセカンドソースHD68000、ザイログZ80上位互換のHD64180を製造して販売しており、その経験からか、H8はこれらの長所を取り入れたアーキテクチャとなっている。

後に同社が開発したSuperHシリーズ(特にSH1とSH2)は、H8とは別の用途、視点から開発され、当初はよりCISC的な仕様を取り入れることも検討されたが、動作クロックやパフォーマンスを考慮しRISC的なマイクロコントローラとしてデザインしたものである。このためHD64180やSuperHシリーズなどとのバイナリ互換性はない[3]。またルネサス移行後に発売されたR8C/Tinyシリーズは元三菱電機M16C系統のCPUであり、やはり互換性はない。

組み込み向けのマイクロプロセッサとしては世界的に大きなシェアを有する。電子工作用や教材用としてもそれまでのZ80などに代わって、中規模のマイコンとして広く使われていて、シリーズによっては秋葉原などでも容易に入手することができる。また日立が支援していた「マイコンカーラリー」には古くから使われているほか、レゴMINDSTORMSにも使われている。

近年はTinyシリーズのようにオンチップ・デバッキングインターフェースを内蔵して、廉価なオンチップ・エミュレータを使用できるシリーズに移行しつつある。また純正開発環境の無償評価版(一定期間経過後、64KBの限定版となる)の配布もWeb雑誌などで積極的に行われている。

主なシリーズ[編集]

  • 8ビット版
    • H8/300 : メモリ空間最大64KB。ページ切り替えはない。H8/500下位互換
    • H8/300L : H8/300の低電力版。
  • 16ビット版
    • H8/500 : メモリ空間最大16MB(マキシマムモード)、レジスタは16ビット幅(R0~R7)。64KB以上のアドレス空間をページレジスタでページ切り替えする。(いわゆるセグメント
    • H8/300H : メモリ空間を最大16MB(アドバンストモード)に、レジスタを32ビット幅に拡張(ER0~ER7/16・8ビット幅としても使用可)。命令を高速化。外部データバスは8/16ビット切り替え可能。F-ZTAT版もある。H8/300上位互換
    • H8S/2000 : 基本命令を1クロックに高速化。H8/300H上位互換。
    • H8/300H Tiny : H8/300Hを16ビットコアのままで小ピン化。ノーマルモード(メモリ空間64Kバイト)で動作するシリーズとアドバンストモード(メモリ空間16Mバイト)で動作するシリーズがあり、動作モードは固定。外部バスはない。基本的にF-ZTAT対応。
  • 32ビット版
    • H8SX : H8S上位互換。

脚注[編集]

[ヘルプ]
  1. ^ H8はどうなるの ルネサスユーザコミュニティ「かふぇルネ」におけるメーカー担当者の回答より
  2. ^ http://www.ryuka.com/home/publications/patent/unofficially_jp/newsjapan_strategy
  3. ^ SuperH 開発ストーリ

関連項目[編集]