CPU別ソリューション AMD Xilinx社製
Zynq UltraScale+ MPSoC

Zynq UltraScale+ MPSoCシリーズは、2個または4個のArm Cortex-A53コアと2個のArm Cortex-R5コアを組み合わせたヘテロジニアス・アーキテクチャのプロセッサ部を持つFPGAです。一般的には、Arm Cortex-A53コアはLinux、Arm Cortex-R5コアはRTOSまたはOSなし(ベアメタル)で使用します。

Zynq UltraScale+ MPSoCに対応した「TOPPERS-Pro/FMP3」「TOPPERS-Pro SafeG」「TOPPERS-Pro MDCOM」を使用することで、LinuxとRTOSを組み合わせた柔軟なシステム構成を取ることができます。

TOPPERS-Pro/FMP3は、マルチコア対応のRTOSで、2個または4個のArm Cortex-A53コアと2個のArm Cortex-R5コアのどちらもサポートします。RTOSでありながらマルチコアをSMP構成で動作させます。

TOPPERS-Pro SafeGは、Zynq UltraScale+ MPSoC のArm Cortex-A53コア上で動作する簡易ハイパーバイザーです。Arm TrustZone技術を使用しており、RTOSはセキュアワールドで、Linuxはノーマルワールドで動作させるため、『RTOS、リアルタイムアプリケーション』と『Linux』を安全に分離することが可能です。またSafeGを使ったシステムでは、セキュアワールドで動作するRTOSがノーマルワールドで動作するLinuxの生存確認(死活監視)をし、万が一Linuxが動作不良を起こした場合などにRTOS側からLinuxのみ再起動をかけたりすることができます。
組込みLinuxの生存確認(死活監視):https://www.ubiquitous-ai.com/use/linux.html

複数のArm Cortex-A53コアを使用して、LinuxとRTOSをAMP構成で動作させる場合にもSafeGが有用です。各コア/各OSの起動フロー、メモリやI/Oの競合、割込みの調停などをSafeGに任せることで、システム設計・構築やメモリマップや使用する割込みの変更などに要する工数を削減できます。

TOPPERS-Pro MDCOMは、次のような同期・通信手段として使用できます。

  • Arm Cortex-A53コアで動作するLinuxとArm Cortex-R5コアで動作するRTOS間
  • SafeGを使ったシステムでのセキュアワールドで動作するRTOSとノーマルワールドで動作するLinux間

また、Arm Cortex-A53側に接続されているEthernetなどのデバイスをArm Cortex-R5側から使う、といったデバイス共有も可能です。
マルチコア/マルチOS環境でのデバイス共有/コア間・OS間通信:https://www.ubiquitous-ai.com/use/tcpip.html

Zynq UltraScale+ MPSoCでのシステム構成例

構成例 1

Zynq UltraScale+ MPSoC(Arm Cortex-A53×2 or 4+Arm Cortex-R5×2)

Linux + RTOS構成

Arm Cortex-A53コア(デュアルコアまたはクアッドコア)でLinuxが、Arm Cortex-R5コア(デュアルコア)でTOPPERS OSがそれぞれSMP動作します。コア間・OS間の通信にはMDCOMが使用できます。

構成例 2

Zynq UltraScale+ MPSoC(Arm Cortex-A53×2 or 4+Arm Cortex-R5×2)

RTOS + RTOS構成

Arm Cortex-A53コア(デュアルコアまたはクアッドコア)でTOPPERS OSが、Arm Cortex-R5コア(デュアルコア)でTOPPERS OSがそれぞれSMP動作します。コア間・OS間の通信にはMDCOMが使用できます。

構成例 3

Zynq UltraScale+ MPSoC(Arm Cortex-A53×2 or 4+Arm Cortex-R5×2)

RTOS + Other OS構成

Arm Cortex-A53コア(デュアルコアまたはクアッドコア)でTOPPERS OSがSMP動作、Arm Cortex-R5コア(デュアルコア)は他のOSやOSなしで使用します。コア間・OS間の通信にはMDCOMが使用できます。

構成例 4

Zynq UltraScale+ MPSoC(Arm Cortex-A53×2 or 4+Arm Cortex-R5×2)

Linux + RTOS(AMP) + RTOS 構成

1つまたは3つのArm Cortex-A53コアでLinux、1つのArm Cortex-A53コアでTOPPERS OSがAMP動作します。Arm Cortex-R5コアのTOPPERS OSはオプションです。コア間・OS間の通信にはMDCOMが使用できます。
図の構成の他に1つのコアでLinux、3つのコアでTOPPERS OSという構成や、2つのコアでLinux、2つのコアでTOPPERS OSといった構成も可能です。

構成例 5

Zynq UltraScale+ MPSoC(Arm Cortex-A53×2 or 4+Arm Cortex-R5×2)

SafeGを使ったLinux + RTOS(AMP) + RTOS 構成

1つまたは3つのArm Cortex-A53コアでLinux、1つのArm Cortex-A53コアでTOPPERS OSがAMP動作します。それぞれのOSは割り当てられたコア/ワールドで動作し、ワールドの切り替えは発生しません。Arm Cortex-R5コアのTOPPERS OSはオプションです。コア間・OS間の通信にはMDCOMが使用できます。1つ上の図の構成と同様ですが、SafeGを使用することにより、メモリ/割込み/デバイスの分離/調停が容易に設定できます。Arm Cortex-A53コアで動作しているTOPPERS OSからLinuxの生存確認(死活監視)・再起動などを行うことができます。
図の構成の他に1つのコアでLinux、3つのコアでTOPPERS OSという構成や、2つのコアでLinux、2つのコアでTOPPERS OSといった構成も可能です。

構成例 6

Zynq UltraScale+ MPSoC(Arm Cortex-A53×2 or 4+Arm Cortex-R5×2)

SafeGを使ったLinux&RTOS(SMP) + RTOS構成

Arm Cortex-A53コアのノーマルワールドでLinux、セキュアワールドでTOPPERS OSがそれぞれSMP動作します(各コアでTOPPERS OSが動作していない間、Linuxが動作します)。Arm Cortex-R5コアのTOPPERS OSはオプションです。コア間・OS間の通信にはMDCOMが使用できます。TOPPERS OSが動作していない間はそのコアをLinuxが使う事ができるため、コアを有効活用できます。Arm Cortex-A53コアで動作しているTOPPERS OSからLinuxの生存確認(死活監視)・再起動などを行う事ができます。

主な特長

  • Zynq UltraScale+ MPSoCに対応済み
    AMD Xilinx社製評価ボードで動作確認済みのため、すぐに利用可能
  • 柔軟なシステム構築が可能
    用途に合わせてTOPPERS-Pro/FMP3、SafeG、MDCOMを組み合わせて使用することにより、柔軟なシステム構築が可能
  • μITRON仕様準拠
    国内でもっとも普及しているμITRON仕様に準拠し、既存システムからの移行が容易

TOPPERS-Pro/FMP3 製品ページ

TOPPERS-Pro MDCOM製品ページ

TOPPERS-Pro SafeGシリーズ製品ページ

TOPPERS-Proシリーズ 製品ラインナップ

TOPPERS-Proシリーズ CPU別対応表

技術情報:組込みLinuxの生存確認(死活監視):https://www.ubiquitous-ai.com/use/linux.html

技術情報:マルチコア/マルチOS 環境でのデバイス共有/コア間・OS 間通信:https://www.ubiquitous-ai.com/use/tcpip.html