-
- HITACH H16 (16bit CPU)
- Address bus 24bit, Data bus 16bit.
- PLCC84P/PGA135P、Clock 8,10,12.5MHz.
- C-MOS トランジスタ数 不明.
- 1987年?発表.
日立製作所がオリジナル16bitシリーズの初期に発表したのがこのH16です。
H16は高機能な組み込み用のCPUとして開発され、周辺LSIをワンチップに搭載していました。
H16の特徴を簡単に述べると。
- 32bit長の汎用レジスタを16本持つ。
- 1024バイトの内蔵RAMを持ち、それを汎用レジスタに割り当て可能(最大16バンク)。
- ユーザモードとスーパーバイザーモードを持つ。
- Address Busの下位16bitとData Busはマルチプレックスされている。
- メモリーへのアクセスは基本的に16bit単位で行なう。
- 98種類の命令と13種類のアドレッシングモードを持つ。
- ベクタ方式の割り込みをサポート。
H16の32bit長汎用レジスタは16本あり、これをまとめてグローバルバンクと呼びます。
H16で特徴的なのはこのグローバルバンクを最大で16個、内蔵のRAMに割り当てられる点です。
割り込みやマルチタスク処理などを行なう場合は、ユーザレジスタをいったんOSが管理する領域に
保存してタスクを切り替えます。この処理には結構時間がかかります。
H16の場合、グローバルバンクを切り替えることで容易かつ高速にユーザレジスタを
切り替えることができます。このような考え方は、TMS9900などにもみられました。
H16は動作モードとしてユーザモードとスーパーバイザーモードの2種類の動作モードを持ちます。
通常のプログラムはユーザモードで動作し、システムの動作に影響を与える命令が実行できません。
一方のスーパーバイザーモードはすべての命令が実行でき、OSやシステムプログラムが
このモードで動作します。
H16は動作モードや、命令体系などMotorola社のMC68000系の影響を強く受けているようです。
H16は次に示す周辺回路を内蔵していました。
- メモリ間転送も可能なDMAコントローラを4ch内蔵。
- 16bit長の汎用タイマーを2ch内蔵。
- 同期/非同期に対応したシリアルI/O(SIO)を2ch内蔵。
- SIOの通信速度は最大で4Mbps(10MHzクロック時)。
- SIOには各ch毎にボーレートジェネレータを用意。
- D-RAM制御用のリフレッシュ回路を内蔵(リフレッシュアドレス幅11bit)。
H16はなかなか面白いCPUで、私も一時期使用を検討したことがあります。
しかしながら開発ツールや供給の面で不安があったため、結局使用しませんでした。
日立製作所はH16と同時期にH8やH32を発表しました。
H32はTORN仕様のCPUでしたが、ほとんど使用されませんでした。
一方のH8は、製品バリエーションを増やし、現在でも使用されているヒット商品になりました。