What has been done
Alpha AMV platform based on the Texas Instruments SoCs designed by RT-RK, enables load balancing of the video processing between the three TDA2x SoCs on the platform. The goal of this project was to create development platform with board software package for rapid algorithm real-time prototyping, exploiting the full potential of three integrated TDA2x SOC, connected via PCIe/ethernet, with up to 10 automotive cameras.
Hardware platform overview
The reference board represents a platform for driver assistance system, exploiting the full potential of three integrated TDA2x SoCs of which each consists of 2x ARM Cortex A15, 2x ARM Cortex M4, 2x C66x Digital Signal Processor (DSP) and 4x Embedded vision Engine (EVE).
The system supports up to 10 automotive cameras compatible with TI DS90UB964 and DS90UB914A deserializers. Using PCIe for load balancing of video processing between the two TDA2x SoCs, the technical solution applied to system design serves any application request in real time. Each SoC supports HDMI out and is linked to the Head Unit. With 1Gb Ethernet out and support for AVB Ethernet, the system is upgradeable with a daughterboard for communication with other sensors, IP cameras, radars, ultrasonic sensors and similar, which can provide more driver assistance applications.
Targeting audience that can leverage the RT-RK’s domain knowledge of TI portfolio and system design on different levels, the solution is offered to car manufacturers (OEMs), automotive design houses (Tier 1/2/3) for rapid prototyping, TI advanced automotive customers, and algorithm developers for demo purposes.
Maturing the software platform
Project has been organized in multiple phases constantly improving the board software package with new features and performance optimizations.
System software platform is based on SDK coming from TI (Processor SDK Linux/RTOS). SDK porting to the target hardware and various adaptations and extensions have been performed to achieve real-time, easy-to-use software platform for rapid prototyping, enabling inter-SoC communication.
Software platform supports two flavours of the operating systems on each of the SoC:
- Linux on A15 cores and TI RTOS(SYS/BIOS) on other cores (M4, DSP, EVE),
- TI RTOS(SYS/BIOS) on all cores.
First development phase included porting of the operating systems and device driver development/configuration for each of the SoCs, which includes:
- Boot mode selections configuration, power sequencing and management,
- Memory configuration (1GB + 512MB 32bit DDR3 and 128MB ECC connected to EMIFs, Flash NOR via QSPI, EEPROM),
- Driver development/extensions/configuration for target hardware platform (I2C switch, camera PoC, imaging processor OV490, deserializes UB914 and UB964, serializers UB913 and UB925, PCIe, CAN, USB),
- SDK (build/deployment) extension and configuration with the new target device (amv-alpha).
Focus of second development phase was on enabling full power of the platform – load balancing of the resources and processing power, achieved with:
- Modular pipeline video data processing implementation with Links&Chains TI framework – processing video from 10 on-board cameras. TI framework is extended with additional modules for data acquisition from sensors and data exchange between SoCs (Ethernet, PCIe, video bus), and enabled configuration of the data routing between SoCs,
- High speed data exchange over PCIe (e.g. 4 cameras) between two SoCs for real-time performances,
- Daisy chained Ethernet – SoCs connected via Ethernet on the platform, and access to any of the SoCs enabled via single ethernet port from outside. Ethernet configuration and modification of TI network stack were performed to fully support platform Ethernet daisy chaining,
- Extension of the Code Composer Studio (CCS) IDE by creating platform GEL files in order to automate device initialization during start-up from CCS and to simplify usage (e.g. DDR3 initialization sequence, Cortex A15 start-up sequence, multicore reset),
- Updates of the platform software regularly followed the latest TI SDK updates.
Software platform performance has been verified and further optimization performed along with porting of multiple algorithms to the platform, utilizing different processing units like ARM Cortex A15 processor, Arm Cortex M4 processor, DSP (C66), Embedded Vision Engine (EVE) on one or more SoCs.