5.3. Release notes - 08_04_03 (Snapshot drop)

5.3.1. Features

Note

New features vs previous release are marked in bold

Important

This is a snapshop drop intended to give intra-release snapshot update. As such, only sanity testing was done and not all components have gotten updates from 8.2.2 release. Full testing will only come as part of 8.5.0 release.

Note

Major updates in this snapshot release are as follows:

  1. Several bug fixes across components (especially tiovx, vision_apps and pdk), please refer to individual SDK Components release notes.

  2. Bug fix for apps which use multi-channel camera (4 or more cameras) along with LDC

  3. MCAL component updates

5.3.1.1. Hardware support

  1. J784S4 E1 EVM support

  2. J784S4 ES1.0 support

  3. Fusion1 RevC daughter card with UB960 FPDLink deserializer

  4. IMX390 2MP CSI2 image sensor + UB953 FPDLink serializer

  5. Quad Port Ethernet daughter card (for CPSW9G support)

5.3.1.2. Software features

Important

Below is a summary of key features. Refer individual SDK Components release notes for more details

5.3.1.2.1. Vision Apps (ADAS, Vision, DL demos)

  • OpenVX based demos for ADAS, Vision, deep learning applications

    • FreeRTOS on C7x, R5F and Linux/QNX on A72

    • Integrates all major PSDK RTOS and PSDK LINUX SW components like TIDL, MMALIB, PDK, OpenVX, ETHFW, OpenGL, C7x algorithms, imaging/sensors, IPC, Linux, FreeRTOS, SPL/uboot.

    • Integrates all major HW components like CSI2 camera, eDP display, UART, I2C, ethernet, SD card

  • Deep Learning demos

    • Image Classification demo

      • File based

      • Camera based

    • Standalone Semantic Segmentation application

      • File based

      • Camera based

    • Standalone Object Detection application

      • File based

      • Camera based

    • Auto valet parking (AVP) demo

      • semantic segmentation, Parking spot detect and Vehicle detect algorithms

      • 1 channel, 3 algo mode (AVP1 demo)

      • 3 channel, 3 algo mode - combined network for parking spot and vehicle detect (AVP2 demo)

      • 3 channel, 5 algo mode - combined network for parking spot and vehicle detect + Three task network for Semantic Segmentation, Motion Segmentation and Depth Estimation (AVP3 demo)

    • DKAZE-based Visual Localization application

    • Debug support for the ability to debug intermediate layer information from TIDL node

  • Surround view demos

    • 3D surround view using GPU on 4x 2MP 30fps live camera input

    • 3D surround view calibration application

  • ADAS/Vision demos

    • Dense optical flow (DOF) demo

    • Stereo disparity engine demo

    • Single and multi camera to display (CSI2RX + VISS + LDC + MSC + Display) demo

  • OpenVX target nodes

    • image pre-processing (YUV 2 RGB) nodes for DL demos

    • image post-processing and visualization nodes for deep learning, DOF, Stereo demos

    • OpenGL nodes for surround view

  • Profiling, logging and other utility APIs

  • All included MCU tasks are split between MCU2_0 (ETHFW, VPAC0 HWA), MCU2_1 (DMPAC HWA), and MCU4_0 (VPAC1), leaving MCU3_0, MCU3_1, and MCU4_1 free on main domain

5.3.1.2.2. Platform Development Kit (PDK)

  • RTOS device drivers running on R5F, C7x

  • Supported drivers and modules

    • ENET CPSW (2G & 9G in Main domain, 2G in MCU domain), RGMII, lwIP

    • CSL-FL (Chip support library)

    • GPIO

    • I2C

    • IPC (inter processor communication)

    • MMCSD with FATFS

    • OSAL

    • SBL secondary bootloader

    • SCI Client (DMSC interface)

    • SPI driver (SPI, OSPI, NAND)

    • UART

    • UDMA and DRU

    • DSS display (eDP)

    • 2xCSI2-RX camera (4 cameras per instance)

    • 2xCSI2-TX

    • 2xVPAC and DMAC (VHWA)

    • FreeRTOS Support on R5, DSPs

Refer to PDK release notes LINK for more details.

5.3.1.2.3. MCU Software (MCUSW)

  • AutoSAR 4.3.1 MCAL driver and MCU1_0 example applications running on R5F (TI Arm Clang Compiler).

  • AutoSAR MCAL driver for Adc, Can, Dio, Eth, Pwm & Wdg

5.3.1.2.4. TI Deep learning Product (TIDL) and MMALIB

  • TIDL deep learning inference engine library running on C7x/MMA

  • MMALIB for accelerating convolution, deconvolution layers on MMA (used by TIDL internally)

  • Supports Caffe, ONXX, TFlite network exchange formats

  • Supported layers: Convolution, deconvolution, pooling, ReLU, Elt-wise, Inner product, Soft-max, and many more, refer TIDL user guide (LINK)

  • Support for Additional layers - Sigmoid layer, Standalone Pad layer, Color conversion (YUV420SP to RGB) Layer, Depth to Space (Pixel Shuffle) Layer

  • Custom / User defined layer Call-back to plugin user specific layers

  • TIDL network import tool and graph visualizer tool

  • Post Training Quantization options for 8-bit, 16-bit and mixed precision inference

  • Support of batch processing

  • Support for auto C7x code generation with TVM

5.3.1.2.5. FFT Library for C7x/MMA (FFTLIB)

  • C7x-only kernels

  • C7x+MMA kernels

  • Note: This is packaged as a stand-alone library component, and is not integrated into any SDK level demos

5.3.1.2.6. TI OpenVX (TIOVX)

  • OpenVX v1.1 compliant implementation with graph pipelining and user data object extension support

  • OpenVX API on A72 running Linux/QNX

  • OpenVX target kernels on C7x, R5F, A72

  • OpenVX v1.1 C6x optimized kernels recompiled for C7x

  • OpenVX nodes for

    • TIDL (C7x-MMA)

    • VISS (R5F)

    • LDC (R5F)

    • MSC (multi-scalar) (R5F)

    • Pyramid (using MSC) (R5F)

    • Dense Optical Flow (R5F)

    • Stereo Disparity Engine (R5F)

    • BLNF (bilateral noise filter) (R5F)

    • CSI2-RX camera (R5F)

    • CSI2-TX (R5F)

    • Display (eDP) (R5F)

  • OpenVX tutorials for getting started

  • PyTIOVX tools for target kernel code generation

  • Performance Analyzer tool for run time logging of OpenVX graphs

  • VISS node supports heterogeneous camera support

5.3.1.2.7. Imaging

  • IMX390 2MP sensor driver (30/60fps) with IQ tuning

  • TI Auto-exposure and auto white-balance algorithms

  • Support for UB960 broadcast mode

  • Sensor framework supports heterogeneous camera support

5.3.1.2.8. Ethernet Switch Firmware (ETHFW)

  • Ethernet firmware interface API

  • Ethernet switch firmware running on R5F for CPSW9G

  • Layer 2 switching

  • FreeRTOS for Main R5F Core 0

  • lwIP TCP/IP stack integration

  • Remote switch configuration server

  • GUI switch configuration tool

  • Inter-VLAN routing

  • IP next header filtering

  • CPSW Proxy/Server layer for remote core integration

  • Integration with AUTOSAR Eth Virtual MAC driver

  • PTP support

  • MAC-only mode support

  • Shared memory based virtual Ethernet adapter

  • Multi-core broadcast/multicast traffic using software fan-out

5.3.1.2.9. TI Autonomous Driving Algorithms (TIADALG)

  • Image pre-processing APIs for color plane conversion and separation YUV to RGB for DL applications (C6x optimized. recompiled for C7x)

  • Camera Pose estimation API using solve pnp technique (C6x optimized. recompiled for C7x)

  • Visual localization algorithm (C6x optimized. recompiled for C7x)

  • Structure from Motion algorithm

5.3.1.2.10. FreeRTOS

  • FreeRTOS for R5F and C7x

  • lwIP TCP/IP stack integration for R5F

5.3.1.2.11. Code Gen Tools (CGT)

  • TI Compiler, assembler, linker for R5F, C7x

  • TI LLVM (CLANG) Compiler, assembler, linker for R5F

  • GCC compiler for A72 (needs to be downloaded separately)

5.3.2. Device Support and Validation Information

SoC

Build Host (OS)

Run Target (OS)

Test Plaform

J784S4

x86_64 (Linux Ubuntu 18.04)

R5F, C7x running FreeRTOS

A72 running Linux or QNX

J784S4 EVM with daughter cards

PC emulation mode (1)

x86_64 (Linux Ubuntu 18.04)

x86_64 (Linux Ubuntu 18.04)

x86_64 (Linux Ubuntu 18.04)

(1) Requires download of addon package from mySecure Software

5.3.3. Upgrade and Compatibility

In this section, we only highlight a few significant changes in this SDK. For full list of upgrade and compatibility topics, please refer to individual components release notes SDK Components.

5.3.4. Known Issues

Record ID

Summary

Workaround

Impact

ADASVISION-5064

OCMC RAM init failure on MCU2-0

Init is disabled and memory previously mapped here is instead mapped to DDR

Reduced performance of memory previously accessed from this region. In SDK this was only used by heterogeneous camera context save/restore

Refer to individual SDK Components release notes for known issues in each component

5.3.5. Change Requests

None

5.3.5.1. Errata workarounds

None

5.3.6. Additional Reports

Test reports, traceability matrix not available in this snapshot drop.