ONNCx NVDLA Release 1.2.0


  • Version: r1.2.0
  • Release Date: 2019/6/10


ONNC on NVDLA AI starter kits provides software development kit (SDK) and board support package (BSP) for IC design houses who plan to develop its own deep learning accelerator (DLA) based on NVDLA.

It’s a comprehensive set of FPGA-based prototyping tools including AI-related hardware and software components:

  • compiler (ONNC)
  • drivers (KMD/UMD)
  • Linux kernel
  • virtual platform(GreenSocs)
  • FPGA netlist
  • NVDLA verilog RTL code

AI Starter Kits optimize your design process and ensures that your software runs and exploits the full power of the underlying AI chips. Skymizer aims at providing a unique solution tailored to your needs to help you build a strong hardware/software co-design team and efficiently save your time ahead of AI chip fabrication.

Highlights


RISC-V support

Skymizer's GreenSocs virtual platform starts supporting RISC-V from r1.2.0. For supporting RISC-V processor, we create a RISC-V QBox component from scratch and upgrade QEMU to 2.12. In consideration of minimize the change to kernel mode driver, NVDLA's memory map is set to the same memory space as ARM processor's setting.

  • Kernel mode driver has upgraded to support different version of DRM interface. Now, we can support Linux from 4.13, 4.14 - 4.19, 5.0 and later.
  • BSP supports Busybear for RISC-V virtual platform.
  • Linux kernel version is downgraded to 4.19.29 for correct DRM interface.
  • SDK supports cross compilation of RISC-V programs with GCC 8.3.0.

What's New in ONNC toolchain

In r1.2.0 version, we create two useful utility tools for you to examine ONNX models.

onnx.reader

ONNX reader displays information about ONNX files. It shows you IR version, opset_import, layer attributes, type of tensors, topology, and many useful information that encapsulated in the ONNX files. ONNX reader supports JSON and ASM output formats. For interoperation with other tools, you can use JSON format to help you convert the information to the other format (e.g. web) quickly. If you want to understand the details of the ONNX model, ASM format is easier to read.

onnx.checker

ONNX checker checks the ONNX information and verifies the correctness of graph and topology. For example, it can show you topology errors, like an input tensor has no initializer, or a tensor type can not be unknown. It helps you to check the health level of your ONNX models.

Resolved Issues

  • In r1.1.0, ONNC caused segmentation fault when it reads an illegal ONNX model. In r1.2.0, we avoid cause of segmentation fault. ONNC prints fatal error message if the input model is illegal.
  • In r1.1.0, ONNC display internal compilation messages. In r1.2.0, we clean up compilation messages. Now it displays the assembly code of ONNX instead.

Known Issues

None in r1.2.0 version

Back to Top