R8C/Tinyシリーズ
ルネサス エレクトロニクス(旧ルネサス テクノロジ)が生み出したR8C/Tinyシリーズは、同社のM16Cファミリに属する
マイクロプロセッサ群です。名称の「R8C」は、ルネサス(Renesas)の「R」と、命令セットアーキテクチャが
CISC(Complex Instruction Set Computer)であること示す「C」を組み合わせたものです。
特徴
R8CシリーズのCPUコアは、上位ファミリであるM16Cと共通の設計に基づいています。しかし、このシリーズは外部バスを持たない「Tiny」と呼ばれる製品群に特化するため、周辺バスを
8ビットに限定するなど、機能の集約化・最適化が図られています。これにより、小型の
組み込みシステムへの適用を容易にしています。
メモリ空間は1MBが割り当てられています。
内蔵機能
全製品にプログラム格納用の
フラッシュメモリが内蔵されています。さらに、多くのグループでは、ユーザーデータの一時保存に適したデータフラッシュ(書き込み・消去回数に優れた
フラッシュメモリ)を搭載したモデルと、それを搭載しないモデルがペアで用意されており、柔軟なラインナップとなっています。例えば、R8C/15は、R8C/14にデータフラッシュを追加したバージョンとして位置づけられています。
その他にも、
電源投入時リセット回路(POR)
電圧低下検出回路
高速および低速のオンチップオシレータ
といった周辺機能を内蔵しており、外部に必要な部品点数を削減し、
回路設計の簡略化に貢献します。チップ内部にはデバッグ用のインターフェースも組み込まれています。
デバッグ環境
専用エミュレータであるE8を用いたデバッグが可能です。特にR8C/14、R8C/15以降の世代では、デバッグ通信用に専用端子が1本用意され、他の機能ピンを犠牲にすることなくデバッグ作業が行えるようになりました。これに対し、初期のR8C/10~R8C/13ではシリアルポートをデバッグに利用していました。
他ファミリとの関連性
ルネサス エレクトロニクスは、旧
日立製作所由来の
H8ファミリや
SuperHファミリも提供していますが、R8C/Tinyシリーズは旧
三菱電機由来のM16Cファミリの流れを汲むため、これらとは
バイナリレベルでの直接的な互換性はありません。
H8ファミリと比較すると、R8Cはデータ格納順序がリトルエンディアンであるのに対し、
H8はビッグエンディアンです。また、純正C
コンパイラ使用時の
ビットフィールドの並び順も、
H8がMSBファーストであるのに対しR8CはLSBファーストとなるなど、コードを移植する際には多くの相違点に注意が必要です。
一方で、開発環境の面では統合が進んでいます。
H8や
SuperH向けだった
統合開発環境HEWがR8Cの開発にも利用できるようになり、逆にR8C専用だったエミュレータE8が
H8/Tinyシリーズのデバッグにも対応するなど、プロセッサの選択肢に合わせて開発環境をより柔軟に活用できる体制が整いつつあります。
パッケージ展開
R8C/Tinyシリーズは当初、
H8/Tinyシリーズでは手薄だった32ピン以下の小規模パッケージが主な特徴でした。しかし、その後52ピン以上のラインナップも拡充され、将来的には80ピンを超える製品も計画されています。
主なグループ
R8C/Tinyシリーズには、以下のような様々なグループが存在します。
R8C/1xシリーズ(R8C/10~R8C/1B)
R8C/2xシリーズ(R8C/20~R8C/2L)
R8C/Mxシリーズ
R8C/3xシリーズ
R8C/5xシリーズ
R8C/Lxシリーズ
関連項目
M16C
*
H8