各種RXマイコンによるレイトレーシング
- RX65N Envision kit を標準的にして、他のデバイスも評価しています。
- RX65N, RX72N 以外は、LCD への描画は、ポートバスによるソフトウェアー書き込みになっています。
※RX65N, RX72N はフレームバッファ方式で、ピクセルはメモリに書き込むだけで、描画に関係するオーバーヘッドは最小となっています。
RX65N 以外のマイコンでは、水平ライン描画毎に、計算時間を描画していましたが、ポート経由のソフトウェアーだと、フォント描画がボトルネックになっている事実などがあり、描画終了時(レンダリング時間に影響しない)に表示するようにしています。
※今回、RX64M も加えました。
※最近発売された「RX72N Envision Kit」のベンチマークも追加しました。
ベンチマーク結果
型番 | core | fsqrt命令 | 動作周波数 [MHz] | ROM | RAM | 実時間 [ミリ秒] | 価格 [円] |
---|---|---|---|---|---|---|---|
R5F562N8BDFP RX62N | RXv1 | ✖ | 96 | 512K | 96K | 1860 | 800 (参考) |
R5F524TAADFP RX24T | RXv2 | 〇 | 80 | 256K | 16K | 1224 | 974 (572/10) |
R5F565NEDDFB RX65N | RXv2 | 〇 | 120 | 2M | 640K | 784 | 1910 (1320/10) |
R5F564MFCDFC RX64M | RXv2 | 〇 | 120 | 2M | 512K | 751 | 2120 (1570/10) |
R5F566TEBDFP RX66T | RXv3 | 〇 | 160 | 512K | 64K | 602 | 900 (700/10) |
R5F571MFDDFC RX71M | RXv2 | 〇 | 240 | 2M | 512K | 439 | 2600 (1940/10) |
R5F572NNHDFB RX72N | RXv3 | 〇 | 240 | 4M | 1024K | 361 | 2200 (1650/10) |
STM32F756BGT6 | Cortex-M7 | 〇 | 216 | 1M | 320K | 620 (参考) | 1820 (1250/10) |
※価格は「Chip One Stop」調べの参考価格となっています。
備考
- RX72N Envision Kit が発売されたので、追加しました。
- RX66T は最新のコア(RXv3)を採用したマイコンで、家電用のゾーン(モーター制御など)に特化したものですが、高速で価格が安い為、その他の用途にも十分利用出来ると思います。
- RX24T、RX66T は8ビットのポートバスでLCDと接続している。
- RX64M、RX71M は16ビットのポートバスでLCDと接続している。
- RX マイコンは全般的に浮動小数点の演算が強力で、同価格帯のマイコンに比べて優位と思います。
※通常の命令でも十分高速 - A/D 変換が高速で、ノイズが少なく変換誤差が少ない、変換スケジュールも非常に細かい設定が出来る。
- RXv3 コアで利用出来る、倍精度浮動小数点演算命令には対応していません。
- RX62N(RX621)を追加しました。
ソースコード
コンパイル、起動方法
- 各プラットホームディレクトリに移動して「make」する。
- raytracer_sample.mot が出来る。
- マイコンに書き込む。