Texas Instruments TDA2x and Vision SDK

Slides:



Advertisements
Similar presentations
Emerging of Software Technologies Reporter: Jeremie Lucero.
Advertisements

Accelerators for HPC: Programming Models Accelerators for HPC: StreamIt on GPU High Performance Applications on Heterogeneous Windows Clusters
Yaron Doweck Yael Einziger Supervisor: Mike Sumszyk Spring 2011 Semester Project.
Portable and Predictable Performance on Heterogeneous Embedded Manycores (ARTEMIS ) ARTEMIS 2 nd Project Review October 2014 WP2 “Application use.
DEPARTMENT OF COMPUTER ENGINEERING
Background S.A.U.V.I.M. Semi - Autonomous Underwater Vehicle for
Chapter 13 Embedded Systems
Mobile Application Development
Detailed Technical Feature Presentation Background Information The Importance of Software Software Roadblocks Development Environment DSP Development Cycle.
Anne Mascarin DSP Marketing The MathWorks
GallagherP188/MAPLD20041 Accelerating DSP Algorithms Using FPGAs Sean Gallagher DSP Specialist Xilinx Inc.
Unit VI. Keil µVision3/4 IDE for 8051 Tool for embedded firmware development Steps for using keil.
OpenMP in a Heterogeneous World Ayodunni Aribuki Advisor: Dr. Barbara Chapman HPCTools Group University of Houston.
© 2002 The MathWorks, Inc. September 2002 Advanced Embedded Tool capabilities for Texas Instruments DSPs © 2002 The MathWorks, Inc. David Hilf Third Party.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
A DSP-Based Platform for Wireless Video Compression Patrick Murphy, Vinay Bharadwaj, Erik Welsh & J. Patrick Frantz Rice University November 18, 2002.
1 LabVIEW DSP Test Integration Toolkit. 2 Agenda LabVIEW Fundamentals Integrating LabVIEW and Code Composer Studio TM (CCS) Example Use Case Additional.
ANDROID 응용 프로그래밍 과정 – 목차 - 안드로이드란 - 안드로이드가 만들어지게 된배경 - 안드로이드의 철학 - 안드로이드 환경설정 ( SDK download, eclipse plug-in 설정, 간단한 프로그램 실행 ) - 안드로이드 동작원리 - 안드로이드 핵심.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
Accelerating image recognition on mobile devices using GPGPU
MAPLD Reconfigurable Computing Birds-of-a-Feather Programming Tools Jeffrey S. Vetter M. C. Smith, P. C. Roth O. O. Storaasli, S. R. Alam
GPU Architecture and Programming
1 Latest Generations of Multi Core Processors
MAPLD 2005/254C. Papachristou 1 Reconfigurable and Evolvable Hardware Fabric Chris Papachristou, Frank Wolff Robert Ewing Electrical Engineering & Computer.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Novel, Emerging Computing System Technologies Smart Technologies for Effective Reconfiguration: The FASTER approach.
eXpressDSP Modular Application Software Solutions for TMS320 DSPs
OpenCL Programming James Perry EPCC The University of Edinburgh.
CDVS on mobile GPUs MPEG 112 Warsaw, July Our Challenge CDVS on mobile GPUs  Compute CDVS descriptor from a stream video continuously  Make.
TI Information – Selective Disclosure Implementation of Linear Algebra Libraries for Embedded Architectures Using BLIS September 28, 2015 Devangi Parikh.
December 13, G raphical A symmetric P rocessing Prototype Presentation December 13, 2004.
Virtualization Neependra Khare
Fast iteration and prototyping in high-performance computing medical applications: a case study with Mentor Vista 8th INFIERI WORKSHOP 10/21/2016.
Sridhar Rajagopal Bryan A. Jones and Joseph R. Cavallaro
Software and Communication Driver, for Multimedia analyzing tools on the CEVA-X Platform. June 2007 Arik Caspi Eyal Gabay.
Computer Engg, IIT(BHU)
The Post Windows Operating System
Instructor Materials Chapter 7: Network Evolution
Android Mobile Application Development
NFV Compute Acceleration APIs and Evaluation
Introduction to ChibiOS/RT A free embedded RTOS
Current Generation Hypervisor Type 1 Type 2.
Microarchitecture.
Mobile App Development
OpenCL 소개 류관희 충북대학교 소프트웨어학과.
Enabling machine learning in embedded systems
Andes Technology Innovate SOC ProcessorsTM
Grid Computing.
Parallel Algorithm Design
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
Antonio R. Miele Marco D. Santambrogio Politecnico di Milano
Microcomputer Systems 1
Highly Efficient and Flexible Video Encoder on CPU+FPGA Platform
2PAD’s Beamforming Software
Digital Processing Platform
CoCentirc System Studio (CCSS) by
Chapter 4: Threads.
Data Path through host/ANP.
Analysis models and design models
AI Stick Easy to learn and use, accelerate the industrialization of artificial intelligence, and let the public become an expert in AI.
Multithreaded Programming
Optimizing stencil code for FPGA
Subject Name: Operating System Concepts Subject Number:
Introduction to Heterogeneous Parallel Computing
OS Simulator Develop and test embedded applications on Windows or Linux host environments Eliminates the need for the original OS and expensive.
System View Inc..
Embedded Development Tools
Hypervisor A hypervisor or virtual machine monitor (VMM) is computer software, firmware or hardware that creates and runs virtual machines. A computer.
Presentation transcript:

Texas Instruments TDA2x and Vision SDK

Board Characteristics Texas Instruments TDA2x EVM CPU Board

Board Characteristics Texas Instruments TDA2x EVM CPU Board

TDA2X System on Chip ARM Cortex-A15 MP Core Processor ARM dual-Cortex-M4 Processor 2 TI DSP Cores 4 TI EVE Cores GPU

Vision SDK Vision SDK is a multi-processor multi-channel software development package for TI’s family of ADAS SoCs. The C library framework allows users to create different ADAS application dataflow involving video and Radar capture, processing, analytics algorithms and display.

TDA2x Debugging Capability Vision SDK includes a fully fledged Software Emulator which can be used as the first phase of debugging Real time debug support using hardware emulators like Black Hawk & Spectrum Digital XDS560V2 STM.

OpenVX OpenVX is a new standard from Khronos, offering a set of optimized primitives for low-level image processing and computer vision primitives. The OpenVX specification provides a way to write code that is portable across multiple vendors and platforms, as well as multiple hardware types. The OpenVX enable hardware vendors to optimize implementation with a strong focus on a particular platform. Developers using OpenVX don’t need to understand all of the details required to optimize code for specific hardware. The graph-based programming interface is intended for creating vision algorithms using graph concepts. One of the major advantages of the graph interface is the ability of the underlying implementation to aggressively optimize full vision pipelines instead of specific functions.

OpenVX vs OpenCV OpenCV OpenVX Implementation Community driven open source library Open standard API designed to be implemented by hardware vendors Conformance Extensive OpenCV Test Suite but no formal Adopters program Implementations must pass defined conformance test suite to use trademark Scope Very wide 1000s of imaging and vision functions Multiple camera APIs/interfaces Tight focus on core hardware accelerated functions for mobile vision Efficiency Memory-based architecture Each operation reads and writes to memory Graph-based execution Optimizable computation and data transfer Typical Use Case Rapid experimentation and prototyping - especially on desktop Production development & deployment on mobile and embedded devices Embedded Deployment Re-usable code Callable library

OpenVX vs OpenCV

OpenVX Example in Vision SDK

Current Research Focus Even though TDA2x has a highly parallel architecture, currently Vision SDK is not utilizing the parallelism at all. Also Vision SDK doesn’t optimize across nodes in the graph before processing it. Vision SDK doesn’t support an OpenMP runtime.

Current Research Focus Host (ARM) Target (DSP) Node Queue Kernel Instance Table Static Kernel Table Pass descriptors Read queue Lookup Execute Create