RX72N Envision Kit が到着

RX72N Envision Kit

RX65N Envision Kit は、かなり良く出来ていたけど、不満な部分もあった。

RX72N Envision Kit は、その「不満」の大部分が解消されて、かなり完成度が高い仕上がりとなっている。
※現状では、設計データや、インストールプログラムについての情報などがアップロードされていないのが残念ではあるが、時間が解決するものと思う。
※チップ・ワン・ストップで、4620円だった。
ソースコードは github に公開された。
※プロジェクトは、ルネサスの統合環境、CC-RX

内容を考えると、かなりコストパフォーマンスが高い製品となっている。

開発環境の問題等もあるが、M5Stack に比べて人気が低いのは残念と思う。
何か自作アプリを作るのなら、より良い物が創れると思う。
※独自にコンパイルした、gcc-6.4.0 ベースの環境で、問題なく開発が可能。

  • WiFi/Bluetooth モジュール(ESP32)
  • マイクロ SD ソケット
  • Ethernet (10/100)機能、RJ45 コネクタを含む
  • DSP 内臓のオーディオインターフェース、クロックジェネレータ
  • USB Serial インターフェース(PC とのシリアル通信機能)
  • 480x272 の静電容量タッチ付き液晶
  • 多目的に使える 32M の EEPROM
  • ステレオマイク
  • USB ホスト機能(クライアント機能も可能と思える)
  • E2 Lite 相当のエミュレーター機能(Fine)

※ オーディオインターフェース、D2-41051(インターシル/ルネサス)
※クロックジェネレータ 5X35023(IDT/ルネサス)

RX マイコンのフラッグシップモデル RX72N(R5F572NNHDFB) の特徴
※ 4MB プログラムフラッシュ、暗号機能アリ、144ピンLFQFP

  • コアは最大 240MHz 動作
  • 高機能な液晶コントローラと、グラフィックスの描画をブーストする DRW2D エンジン
  • 512K + 512K バイトの内蔵 RAM と、4MB の内蔵フラッシュメモリ
  • 豊富なチャネルを持ち、高速で高精度な A/D 変換ユニット(最大 2MBPS/12bits)
  • 倍精度浮動小数点命令を実行可能な RXv3 コア
  • 三角関数演算ユニット
  • 72 ビットのアキュムレータを持つ積和演算器、DSP 命令
  • I2S インターフェース内蔵(デジタルオーディオ入出力)

細かい事だけど、非常に便利なテストポイント

ルネサス(インターシル)D2-41051

Renesas/D2-41051 Intelligent Digital Amplifier PWM Controller and Audio Processor

新規にオーディオ用として投入されたこのデバイスは、このボードにピッタシの選択なのかもしれない。

かなり多くの品種を展開する「インターシル」は「ルネサス」の傘下になり、今回のプロジェクトにピッタリなICを持っていた。

このプロセッサは、非常にユニークで、I2Sからのデジタル信号をフルデジタルで出力してスピーカーを直接駆動する事が出来る。
※最終はPWM出力なので効率が良く、構造上、一般的なオーディオ用D/A、フィルター、プリアンプが必要無い。
※ボリューム調整もフルデジタルで行える。
※単価を調べると、1個購入時でも500円程度なので、他の用途にも使いたいと思える。(マウサー調べ)

ただ、I2Cで通信して、レジスターの意味を理解して、適切なパラメータをセットする手順は複雑そうだー
※サンプルがあるかもしれないけど、まだあまり調べていない・・
※TI にも同じようなデバイスがあるが、TI よりこちらの方が機能的に優れておりコストも安い。

Wifi/Bluetooth

今回はイーサーネットが「Ready」状態なのだが、無線も最初から用意されている。

ESP32 が乗っている、速度はあまり期待出来ないが、WiFi や Bluetooth が使えると、アプリの自由度が格段に上がる。
※ソフトの構成が複雑になるので、アプリに組み込んで利用するには、相応のスキルは必要だが、FreeRTOS 下で 240MHz 動作となると、まぁ何とでもなると思える。

USB Serial

ルネサス社の仮想シリアルが載っており、PC と接続して、ターミナルソフトなどでデバッグ情報などやりとりが行える。
もちろん特定のアプリで、PC と通信する事も出来る、シリアル通信はシンプルで簡単なので、小回りが利いて便利だ。
※ルネサス社のシリアルドライバをインストールする必要があるが、FlashProgrammer V3 をインストールする時に入るようだ。

それとは別に E2 Emulator Lite の USB 接続も出来る、こちらは、ルネサス純正の統合環境なら、より洗練されたデバッグ環境を使えると思われる。

アプリ

電源を入れ、初期インストールアプリで一通り遊んでから、早速、自前のプログラムを動かしてみた。

~~まだ、回路図などが公開されていないので(ソースを調べて、どのポートがアサインされているのか調べれば良いのだが・・)、とりあえず
LED 点滅だけやってみた。~~

※ユーザー LED はパターンを見ると「P40」に接続しているようだ。

また、メインクロックは 16MHz となっている。
※これは、RX72x で新たに追加された PLL 回路を使い、Ethernet PHY 向け 25MHz を生成するのに適した周波数となる。
※ 16MHz を 1/2 にして PLL で 25 倍すると 200MHz が得られる、これを 1/8 すると 25MHz が得られる。
※自前のフレームワークでは、テンプレートで、メインクロック周波数を指定すれば、内部のクロック設定は自動で行われる。


#elif defined(SIG_RX72N)
    typedef device::system_io<16'000'000> SYSTEM_IO;
    typedef device::PORT<device::PORT4, device::bitpos::B0> LED;
#elif defined(SIG_RX64M)

恒例のレイトレースによるベンチマーク

※とりあえず、RXマイコン最速をマーク!(RX71Mも240MHzだけど、ポートバスでの描画の評価しかしていない)
※倍精度浮動小数点演算命令をサポートしていない状態(本格的にコンパイラをテコ入れする必要がある)

とりあえず、今日はここまで。

4月7日追記

SDHIの動作検証も行い、問題無くSDカードがアクセスできる事を確認している。

現在動作可能なサンプル

  • First_sample/RX72N
  • SCI_sample/RX72N
  • RAYTRACER_sample/RX72N
  • SDCARD_sample/RX72N

Renesas RX72N Envision Kitのページに、各種ドキュメントがアップされました。
それにより判明した事:

  • デジタルオーディオは、初期設定で、48KHz の I2S を受け付けるように IPL ROM が載っている。
  • 3.5mm のオーディオジャックは、インピーダンスの関係か、イヤホンのようなインピーダンスが高い物は「不可」となっているようだ。
  • 「8オームのスピーカーは接続出来る」とある。

※少し残念なのは、44.1KHz 等に対応しておらず、44.1KHz の音源は 48KHz に変換して出さないといけない点・・・