Supported Systems and Platforms

This section provides a series of tables that contain information about the development systems, FPGA simulators, embedded systems and platforms supported by OpenCPI. It is intended as a guide to the supported software and hardware configurations and their requirements and dependencies.

Below is a list of supported development system types, with the corresponding OpenCPI software platform and URLs for related information and download. All supported development platforms are in the ocpi.core project built in to OpenCPI. Other unsupported or not-yet-supported development system types can be in external projects. The default supported development platform is rocky9.

Table 1: Table of Supported Development Systems (Hosts)

Description

OpenCPI Software Platform

Limitations

Vendor Links

Rocky 8 Linux on x86-64 bit

rocky8

Rocky 8 general information link

Rocky 8 download link

Rocky 9 Linux on x86-64 bit

rocky9

Rocky 9 general information link

Rocky 9 download link

Ubuntu 20.04 Linux on x86-64 bit

ubuntu20_04

Ubuntu 20.04 LTS general information link

Ubuntu 20.04 LTS download link

Ubuntu 22.04 Linux on x86-64 bit

Ubuntu22_04

Ubuntu 22.04 LTS general information link

Ubuntu 22.04 LTS download link

Below is the list of supported FPGA simulators and the corresponding OpenCPI “hardware” (HDL) platforms. When the associated tools are installed on a development system, the development system then includes these platforms in addition to the software platform. These simulators enable FPGA development without actual FPGA hardware. The default and recommended FPGA simulator is xsim, which is part of the free (WebPACK) version of the Xilinx Vivado tools package.

Table 2: Table of Supported FPGA Simulators

Description

OpenCPI Platform

Vendor Links

Xilinx Vivado XSIM 2017.1-2024.1

xsim

Vivado® Simulator (XSIM) is part of all Vivado HL Editions, including the free WebPack edition.

Siemens/Mentor Modelsim 10.4c-10.6c

modelsim

Modelsim® is powerful, fast and expensive.
No download link available before purchase.

A table of supported embedded systems follows, which includes the platforms each system consists of. Embedded systems generally have a software processor (CPU) using the “primary” OpenCPI software platform, along with other, usually hardware/FPGA, platforms. A physical processor (CPU) or processing device (FPGA) may be supported by a variety of OpenCPI platforms (versions or OSes).

Table 3: Table of Supported Embedded Systems

Description

OSP Repository

Primary Software Platform(s)

Other Platforms in the system

Vendor Links

Avnet® ZedBoard

Part of OpenCPI

xilinx24_1_aarch32

Using Vivado:
zed

www.avnet.com/wps/portal/us/products/avnet-boards/avnet-board-families/zedboard/

Ettus E310 USRP™

gitlab.com/opencpi/osp/ocpi.osp.e3xx

xilinx19_2_aarch32

e31x

www.ettus.com/all-products/e310

Analog Devices™ ADALM-PLUTO

gitlab.com/opencpi/osp/ocpi.osp.pluto

adi_plutosdr0_38

plutosdr

wiki.analog.com/university/tools/pluto

Analog Devices ADRV9361-Z7035

gitlab.com/opencpi/osp/ocpi.osp.analog

xilinx19_2_aarch32

adrv9361

www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/adrv9361-z7035

Avnet MicroZed™

gitlab.com/opencpi/osp/ocpi.osp.avnet

xilinx19_2_aarch32

microzed_10_cc
microzed_20_cc

www.avnet.com/wps/portal/us/products/avnet-boards/avnet-board-families/microzed/microzed-board-family

Avnet PicoZed™

gitlab.com/opencpi/osp/ocpi.osp.avnet

xilinx19_2_aarch32

picozed_10_cc
picozed_15_cc
picozed_20_cc
picozed_30_cc

www.avnet.com/wps/portal/us/products/avnet-boards/avnet-board-families/picozed/picozed-board-family

Xilinx® Zynq UltraScale+™ ZCU102

gitlab.com/opencpi/osp/ocpi.osp.xilinx

xilinx24_1_aarch64

zcu102

www.xilinx.com/products/boards-and-kits/ek-u1-zcu102-g.html

Xilinx Zynq UltraScale+ ZCU111

gitlab.com/opencpi/osp/ocpi.osp.xilinx

xilinx24_1_aarch64

zcu111

www.amd.com/en/products/adaptive-socs-and-fpgas/evaluation-boards/zcu111.html

The following table lists all supported platforms (software and hardware) in the current release. Every system running OpenCPI contains one or more platforms that support different components of an application running on different platforms in the system. Some platforms may be optionally attached/inserted/plugged into a system, such as PCI-Express plug-in cards with FPGA or CPUs on them.

Each entry in the table specifies the platform name, the OpenCPI project that supports it, and any vendor tool installations that the platform requires. The chapter “Installing Third-party/Vendor Tools” in the OpenCPI Installation Guide provides download and installation information for most of these vendor tools.

Table 4: Table of Supported Platforms

OpenCPI

Platform Name

Description

OpenCPI

Project/Repo

Dependencies required before

building/installing the platform

Development Host Platforms

rocky8

Rocky 8 on x86_64

CPUs

ocpi.core

built-in

A Rocky 8 installation

rocky9

Rocky 9 on x86_64

CPUs

ocpi.core

built-in

A Rocky 9 installation

ubuntu20_04

Ubuntu 20.04 on

x86_64 CPUs

ocpi.core

built-in

An Ubuntu 20.04 installation

Ubuntu22_04

Ubuntu 22.04 on

x86_64 CPUs

ocpi.core

built-in

An Ubuntu 22.04 installation

Embedded Software Platforms

xilinx19_2_ aarch32

Xilinx Linux from

2019Q2 (2019.2)

For Zynq-7000

ocpi.core

built-in

Xilinx Vitis™ SDK 2019.2

Xilinx Binary Zynq

Release 2019.2

Xilinx Linux git clone

Xilinx Linux tag:

xilinx_v2019.2

xilinx19_2_ aarch64

Xilinx Linux from

2019Q2 (2019.2)

For Zynq-Ultra

ocpi.core

built-in

Xilinx Vitis SDK 2019.2

Xilinx Binary Release 2019.2

Xilinx Linux git clone

Xilinx Linux tag:

xilinx_v2019.2

xilinx24_1_ aarch32

Xilinx Linux from

2024Q2 (2024.1)

For Zynq-7000

ocpi.core

built-in

Xilinx Vitis SDK 2024.1

Xilinx Binary Release 2024.1

Xilinx Zynq Headers 2024.1

aarch32

xilinx24_1_ aarch64

Xilinx Linux from

2024Q2 (2024.1)

For Zynq-Ultra

ocpi.core

built-in

Xilinx Vitis SDK 2024.1

Xilinx Binary Release 2024.1

Xilinx Zynq Headers 2024.1

aarch64

adi_plutosdr0 _38

Analog Devices

Pluto Linux 0.38

ocpi.osp.plutosdr

Xilinx Vitis SDK 2024.1

FPGA/HDL Platforms

zed

ZedBoard Zynq

FPGA w/Vivado

ocpi.platform

built-in

Vivado WebPACK

zed_ether

ZedBoard Zynq

FPGA/PL w/dual 1

GbE

ocpi.platform

built-in

Vivado WebPACK

e31x

Ettus E31x Zynq

FPGA/PL

ocpi.osp.e3xx

Vivado WebPACK

plutosdr

Analog Devices

ADALM-PLUTO

ocpi.osp.plutosdr

Vivado WebPACK

zcu104

Xilinx Zynq-

UltraScale+ Dev Bd

ocpi.platform

built-in

Vivado WebPACK

zcu106

Xilinx Zynq-

UltraScale+ Dev Bd

ocpi.platform

built-in

Vivado WebPACK

picoevb

RHS Research

PicoEVB

ocpi.platform

built-in

Vivado WebPACK

adrv9361

Analog ADRV9361

Zynq FPGA/PL

ocpi.osp.analog

Vivado licensed

microzed_10_cc

microzed_20_cc

Avnet MicroZed

Zynq FPGA/PL

ocpi.osp.avnet

Vivado WebPACK

picozed_10_cc

picozed_15_cc

picozed_20_cc

picozed_30_cc

Avnet PicoZed Zynq

FPGA/PL

ocpi.osp.avnet

Vivado WebPACK

zcu102

Xilinx Zynq

UltraScale+ MPSoC

ocpi.osp.xilinx

Vivado licensed

zcu111

Xilinx Zynq

UltraScale+ RFSoC

ocpi.osp.xilinx

Vivado licensed

x310

Ettus X310

Xilinx Kintex-7

FPGA w/dual 1/10

GbE

ocpi.osp.ettus

Vivado licensed

Some of the platforms listed in the table above require system-specific setup procedures to be performed in addition to the general procedures described in the OpenCPI Installation Guide.

The following table lists these systems and provides links to the corresponding setup documents for these systems.

Table 5: Table of Platforms with System-Specific Setup Requirements

OpenCPI Platform Name

OpenCPI System-Specific Setup Guide

adrv9361

Analog Devices ADRV9361-Z7035 Getting Started Guide

e31x

Ettus E31x Getting Started Guide

microzed_10_cc
microzed_20_cc

picoevb

RHS Research PicoEVB Getting Started Guide

picozed_10_cc
picozed_15_cc
picozed_20_cc
picozed_30_cc

plutosdr

PlutoSDR Getting Started Guide

x310

Ettus X310 Getting Started Guide

zcu102

Xilinx ZCU102 Getting Started Guide

zcu111

Xilinx ZCU111 Getting Started Guide

zed

ZedBoard Getting Started Guide

zed_ether

ZedBoard Ethernet Getting Started Guide