Component Category

XploR component category

Xplor component category has 4 types: Software, IP, Executive Platform, and Component. Each type has its own characteristics and usage.

Software

A component of type Software is a software package that can be installed on a host machine or target machine. It can be a toolchain, a library, an application, or a plugin. A software component can be installed on the host machine and used by XploR Studio IDE.

The hierarchy of a software component is as follows:

  • Host: A software component that can be installed on the host machine.

    • IDE: A component related to the IDE.
      • XploR Studio: A component related to the XploR Studio IDE.
        • Plugin: A plugin for XploR Studio IDE. With this type of component, users can extend the functionality of XploR Studio IDE.
        • Example Project: An example project for XploR Studio IDE. With this type of component, users can create a new project with a pre-configured project structure.
    • Debug: A component related to the debug process.
    • Libraries: A component related to libraries.
    • Cross Toolchain: A component related to cross toolchain.
  • Target: A software component that can be installed on the target machine.

    • OS: A component related to the operating system.
    • RootFS: A component related to the root file system. That can be booted on QEMU or flashed to the target machine.
      • Native Toolchain: A component related to the native toolchain on the target machine.
      • Libraries: A component related to libraries on the target machine.

IP

A component of type IP is a design IP that can be used in a hardware design. It can be a peripheral, a bus, or a processor. An IP component can be used in a hardware design and synthesized to a bitfile.

The hierarchy of an IP component is as follows:

  • Core: A component related to the core.
    • 32-bit: A component related to the 32-bit core.
      • RISC-V: A component related to the RISC-V core.
      • ARM: A component related to the ARM core.
    • 64-bit: A component related to the 64-bit core.
  • Peripheral: A component related to the peripheral.
    • UART: A component related to the UART peripheral.
    • SPI: A component related to the SPI peripheral.
    • I2C: A component related to the I2C peripheral.
    • Ethernet: A component related to the Ethernet peripheral.
    • USB: A component related to the USB peripheral.
    • SDIO: A component related to the SDIO peripheral.
    • PCIe: A component related to the PCIe peripheral.
    • I2S: A component related to the I2S peripheral.
    • DMA: A component related to the DMA peripheral.
  • Accelerator: A component related to the accelerator.
    • DSP: A component related to the DSP accelerator.
    • Vector: A component related to the Vector accelerator.
    • Neural Network: A component related to the Neural Network accelerator.
    • FPU: A component related to the FPU accelerator.

Executive Platform

A component of type Executive Platform is a platform that can be used to run an application. It can be a board, a emulator, or a simulator.

The hierarchy of an Executive Platform component is as follows:

  • Simulator: A component related to the simulator.
  • ISA Simulator: A component related to the ISA simulator.
    • QEMU: A component related to the QEMU ISA simulator.
    • Spike: A component related to the Spike ISA simulator.
  • RTL Simulator: A component related to the RTL simulator.
    • Verilator: A component related to the Verilator RTL simulator.
    • VCS: A component related to the VCS RTL simulator.
    • Questasim: A component related to the Questasim RTL simulator.
    • Modelsim: A component related to the Modelsim RTL simulator.
  • Emulator: A component related to the emulator.
    • Veloce: A component related to the Veloce emulator.
  • Prototying Hardware: A component related to the prototyping hardware.
    • FPGA: A component related to the FPGA prototyping hardware.
    • Pro FPGA: A component related to the professional FPGA prototyping hardware.
    • Primo: A component related to the ASIC prototyping hardware.

Component

A Component can be a project, a platform, or a toolchain. A component can be used for running end-to-end a lab/experiment.

The hierarchy of a Component is as follows:

  • Profile: A component related to the profile.
    • Baremetal: A component related to the baremetal profile.
    • Linux: A component related to the Linux profile.
    • Embedded: A component related to the embedded profile.
  • Reference Design: A component related to the reference design.
    • System: A component related to the system reference design.
    • Connected System: A component related to the connected system reference design.