メインコンテンツに移動

Arm® とRISC-V CPU間のアプリケーション移行が容易

画像
Chiaki Seiji
Chiaki Seiji
Principal Application Specialist
掲載: 2022年9月16日

Arm® CPUのデバイスで製品開発(ボード及びS/W)したアプリケーションをRISC-V CPUデバイスに、簡単に速くポーティングできるかという課題があります。

では、この異なるCPU間でのアプリケーション開発にはどのような課題があるのでしょうか。
そもそも、組み込みシステム開発では、ターゲットシステム専用にアプリケーションを開発するケースが多く、この開発の課題として、以下があります。

  • ハードウェアとアプリケーションが密結合になりやすい
  • システムごとにペリフェラルが異なる場合があり、そのペリフェラルに合わせてアプリケーションの修正が必要
  • ミドルウェア等の汎用プログラムのバージョンの互換性がない可能性がある

RZ/FiveではArm CPUのRZ/G2ULと合わせて、以下2つのポイントでこの課題を解決できます。

Pin to Pin互換とSMARC準拠モジュールボードの提供

RZ/FiveとRZ/G2ULではPin to Pin互換のデバイスであること、評価ボードキットがモジュールボード(SOM : System On Module)+ キャリアボードで構成されており、ハードウェア、ペリフェラルの差分は最小限の環境をご提供しております。

画像
RZ/G2UL & RZ/Five Pin-to-Pin Compatibility
図1:RZ/G2ULとRZ/FiveのPin-to-Pin互換性
画像
SMARC Compliant Evaluation Board Kit
図2:評価ボードキット

Board Support Packageの提供

画像
RZ/G2UL & RZ/Five Pin-to-Pin Compatibility and Software Configuration Diagram
図3:RZ/G2ULとRZ/FiveのPin-to-Pin互換性とソフトウエア構成図

このBSPは、上記SMARC準拠モジュールボードで動作する、Linux Kernel(CIP Kernel) + Driver類(Driver+Loader) + 基本ソフトウェア(Libraries)で構成されており、CPUの違いは、基本的に図2の赤字部分KernelとDriver類に含まれます。そのため、Applicationはほぼソースコードの変更なしで、toolchainを使用してApplicationをビルドしなおすだけで活用できます。このように、ApplicationをRISC-V CPUのRZ/FiveとArm CPUのRZ/G2ULどちらかで開発いただければ、簡単にもう一方への移植ができます。

ルネサスが開発した「IoT Edge Demo with Multiple Sensors and LEDデモ」は、ウイニングコンビネーション「シングルコアRISC-V MPU向けSMARCシステム」に基づいており、RZ/Five と RZ/G2UL の両方に SMARC 準拠のモジュールボードと BSP を使用しています。このデモでは、複数のセンサデータの情報を取得してPCに送りPC上でリアルタイムに表示します。

画像
IoT Edge Demo with Multiple Sensors and LED Demo
図4:IoT Edge Demo with Multiple Sensors and LEDデモ

このデモの開発はRZ/G2ULに移植後、RZ/Fiveへ移植しましたが、そこでかかった工数はBSP環境の構築を含めて、3人日でした。しかし、RZ/Five と RZ/G2UL の両方を使用することで、相互移行ポーティングをより短時間で完了することができ、必要なリソースの数を減らすことができます。

詳しくは、www.renesas.com/rzfive-evk をご覧ください。

この記事をシェアする