Tms320c6a8168, Tms320c6a8167 C6000 Dsp+Arm

Total Page:16

File Type:pdf, Size:1020Kb

Tms320c6a8168, Tms320c6a8167 C6000 Dsp+Arm TMS320C6A8168 TMS320C6A8167 www.ti.com SPRS680C –OCTOBER 2010–REVISED MARCH 2012 TMS320C6A816x C6000 DSP+ARM Processors Check for Samples: TMS320C6A8168, TMS320C6A8167 1 Device Summary 1.1 Features 1234567891011 • High-Performance C6000™ DSP+ARM® Multiply Supported up to: Processors – 2 SP x SP → SP Per Clock – ARM® Cortex™-A8 RISC Processor – 2 SP x SP → DP Every Two Clocks • Up to 1.5 GHz – 2 SP x DP → DP Every Three Clocks – C674x VLIW DSP – 2 DP x DP → DP Every Four Clocks • Up to 1.25 GHz • Fixed-Point Multiply Supports Two 32 x • Up to 12000/9000 C674x MIPS/MFLOPS 32 Multiplies, Four 16 x 16-bit Multiplies • Fully Software-Compatible with C67x+™ including Complex Multiplies, or Eight 8 x and C64x+™ 8-Bit Multiplies per Clock Cycle • ARM® Cortex™-A8 Core • C674x Two-Level Memory Architecture – ARMv7 Architecture – 32K-Byte L1P and L1D RAM/Cache • In-Order, Dual-Issue, Superscalar – 256K-Byte L2 Unified Mapped RAM/Caches Processor Core • DSP/EDMA Memory Management Unit • NEON™ Multimedia Architecture (DEMMU) – Supports Integer and Floating Point (VFPv3- – Maps C674x DSP and EMDA TCB Memory IEEE754 compliant) Accesses to System Addresses • Jazelle® RCT Execution Environment • 512K-Bytes On-Chip Memory Controller (OCMC) RAM • ARM® Cortex™-A8 Memory Architecture • SGX530 3D Graphics Engine (available only on – 32K-Byte Instruction and Data Caches the C6A8168 device) – 256K-Byte L2 Cache – Delivers up to 30 MTriangles/s – 64K-Byte RAM, 48K-Byte Boot ROM – Universal Scalable Shader Engine • TMS320C674x Floating-Point VLIW DSP – Direct3D® Mobile, OpenGL® ES 1.1 and 2.0, – 64 General-Purpose Registers (32-Bit) OpenVG™ 1.1, OpenMax™ API Support – Six ALU (32-/40-Bit) Functional Units – Advanced Geometry DMA Driven Operation • Supports 32-Bit Integer, SP (IEEE Single – Programmable HQ Image Anti-Aliasing Precision/32-Bit) and DP (IEEE Double • Endianness Precision/64-Bit) Floating Point – ARM/DSP Instructions/Data – Little Endian • Supports up to Four SP Adds Per Clock and Four DP Adds Every Two Clocks • HD Video Processing Subsystem (HDVPSS) • Supports up to Two Floating-Point (SP or – Two 165 MHz HD Video Capture Channels DP) Approximate Reciprocal or Square • One 16/24-bit and One 16-bit Channel Root Operations Per Cycle • Each Channel Splittable Into Dual 8-bit – Two Multiply Functional Units Capture Channels • Mixed-Precision IEEE Floating-Point – Two 165 MHz HD Video Display Channels 1 Please be aware that an important notice concerning availability, standard warranty, and use in critical applications of Texas Instruments semiconductor products and disclaimers thereto appears at the end of this data sheet. 2C6000, C64x+, SmartReflex, TMS320C6000, Code Composer Studio, DSP/BIOS, XDS are trademarks of Texas Instruments. 3Cortex, NEON are trademarks of ARM Ltd or its subsidiaries. 4ARM, Jazelle, Thumb are registered trademarks of ARM Ltd or its subsidiaries. 5USSE, POWERVR are trademarks of Imagination Technologies Limited. 6OpenVG, OpenMax are trademarks of Khronos Group Inc. 7Direct3D, Microsoft, Windows are registered trademarks of Microsoft Corporation in the United States and/or other countries. 2 8I C BUS is a registered trademark of NXP B.V. Corporation Netherlands. 9PCI Express, PCIe are registered trademarks of PCI-SIG. 10OpenGL is a registered trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. 11All other trademarks are the property of their respective owners. PRODUCTION DATA information is current as of publication date. Products conform to Copyright © 2010–2012, Texas Instruments Incorporated specifications per the terms of the Texas Instruments standard warranty. Production processing does not necessarily include testing of all parameters. TMS320C6A8168 TMS320C6A8167 SPRS680C –OCTOBER 2010–REVISED MARCH 2012 www.ti.com • One 16/24/30-Bit and One 16-bit Channel GPMC to Provide Up to 16-Bit/512-Bytes – Simultaneous SD and HD Analog Output Hardware ECC for NAND – Digital HDMI 1.3 transmitter with PHY with – Flexible Asynchronous Protocol Control for HDCP up to 165-MHz pixel clock Interface to FPGA, CPLD, ASICs, etc. – Advanced Video Processing Features Such • Enhanced Direct-Memory-Access (EDMA) as Scan/Format/Rate Conversion Controller – Three Graphics Layers and Compositors – Four Transfer Controllers • Dual 32-bit DDR2/3 SDRAM Interfaces – 64/8 Independent DMA/QDMA Channels – Supports up to DDR2-800 and DDR3-1600 • Seven 32-bit General-Purpose Timers – Up to Eight x8 Devices Total • One System Watchdog Timer – 2 GB Total Address Space • Three Configurable UART/IrDA/CIR Modules – Dynamic Memory Manager (DMM) – UART0 With Modem Control Signals • Programmable Multi-Zone Memory – Supports up to 3.6864 Mbps UART Mapping and Interleaving – SIR, MIR, FIR (4.0 MBAUD), and CIR • Enables Efficient 2D Block Accesses • One 40-MHz Serial Peripheral Interface (SPI) • Supports Tiled Objects in 0°, 90°, 180°, or With Four Chip-Selects 270 Orientation and Mirroring • SD/SDIO serial interface (1-/4-Bit) • Optimizes Interlaced Accesses • Dual Inter-Integrated Circuit ( I2C BUS®) Ports • One PCI Express® (PCIe®) 2.0 Port With • Three Multichannel Audio Serial Ports Integrated PHY – One Six-Serializer Transmit/Receive Port – Single Port With 1 or 2 Lanes at 5.0 GT/s – Two Dual-Serializer Transmit/Receive Ports – Configurable as Root Complex or Endpoint – DIT-Capable For S/PDIF (All Ports) • Serial ATA (SATA) 3.0 Gbps Controller With • Multichannel Buffered Serial Port (McBSP) Integrated PHYs – Transmit/Receive Clocks up to 48 MHz – Direct Interface for Two Hard Disk Drives – Two Clock Zones and Two Serial Data Pins – Hardware-Assisted Native Command – Supports TDM, I2S, and Similar Formats Queuing (NCQ) from up to 32 Entries • Real-Time Clock (RTC) – Supports Port Multiplier and Command- – One-Time or Periodic Interrupt Generation Based Switching • Up to 64 General-Purpose I/O (GPIO) Pins • Two 10/100/1000 Mbps Ethernet MACs (EMAC) • On-Chip ARM® ROM Bootloader (RBL) – IEEE 802.3 Compliant (3.3V I/O Only) • Power, Reset, and Clock Management – MII and GMII Media Independent I/Fs – SmartReflex™ Technology (Level 2) – Management Data I/O (MDIO) Module – Seven Independent Core Power Domains • Dual USB 2.0 Ports With Integrated PHYs – Clock Enable/Disable Control For – USB 2.0 High-/Full-Speed Client Subsystems and Peripherals – USB 2.0 High-/Full-/Low-Speed Host • IEEE-1149.1 (JTAG) and IEEE-1149.7 (cJTAG) – Supports End Points 0-15 Compatible • General Purpose Memory Controller (GPMC) • 1031-Pin Pb-Free BGA Package (CYG Suffix), – 8-/16-bit Multiplexed Address/Data Bus 0.65-mm Ball Pitch – Up to 6 Chip Selects With up to 256M-Byte • Via Channel™ Technology Enables use of 0.8- Address Space per Chip Select Pin mm Design Rules – Glueless Interface to NOR Flash, NAND • 40-nm CMOS Technology Flash (With BCH and Hamming Error Code • 3.3-V Single-Ended LVCMOS I/Os (except for Detection), SRAM and Pseudo-SRAM DDR3 at 1.5 V, DDR2 at 1.8 V, and DEV_CLKIN – Error Locator Module (ELM) Outside of at 1.8 V) 2 Device Summary Copyright © 2010–2012, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): TMS320C6A8168 TMS320C6A8167 TMS320C6A8168 TMS320C6A8167 www.ti.com SPRS680C –OCTOBER 2010–REVISED MARCH 2012 1.2 Applications • Machine/ Industrial Vision System • High-End Test and Measurement • Tracking and Control • Medical/Biological Imaging 1.3 Description The C6A816x C6000™ DSP+ARM® Processors are a highly-integrated, programmable platform that leverages TI's C6000 technology to meet the processing needs of the following applications: Medical/Industrial Vision Systems, High-End Test and Measurement, Tracking and Control, and Medical/Biological Imaging. The device enables OEMs and ODMs to quickly bring to market devices featuring robust operating systems support, rich user interfaces, and high processing performance through the maximum flexibility of a fully integrated mixed processor solution. The device combines programmable digital signal processing with an ARM® processor and a highly-integrated peripheral set. The C674x DSP core is the high-performance floating-point DSP generation in the TMS320C6000™ DSP platform. The C674x floating-point DSP processor uses 32KB of L1 program memory and 32KB of L1 data memory. Up to 32KB of L1P can be configured as program cache. The remaining is non-cacheable no- wait-state program memory. Up to 32KB of L1D can be configured as data cache. The remaining is non- cacheable no-wait-state data memory. The DSP has 128KB of L2 RAM, which can be defined as SRAM, L2 cache, or a combination of both. All C674x L3 and off-chip memory accesses are routed through an MMU. Programmability is provided by an ARM® Cortex™-A8 RISC CPU with NEON™ extension and TI C674x VLIW floating-point DSP core. The ARM® allows developers to keep control functions separate from A/V algorithms programmed on the DSP, thus reducing the complexity of the system software. The ARM® Cortex™-A8 32-bit RISC processor with NEON™ floating-point extension includes: 32K bytes (KB) of instruction cache; 32KB of data cache; 256KB of L2 cache; and 64KB of RAM. The rich peripheral set provides the ability to control external peripheral devices and communicate with external processors. For details on each of the peripherals, see the related sections in this document and the associated peripheral reference guides. The peripheral set includes: HD Video Processing Subsystem (HDVPSS), which provides output of simultaneous HD and SD analog video and dual HD video inputs;
Recommended publications
  • GLSL 4.50 Spec
    The OpenGL® Shading Language Language Version: 4.50 Document Revision: 7 09-May-2017 Editor: John Kessenich, Google Version 1.1 Authors: John Kessenich, Dave Baldwin, Randi Rost Copyright (c) 2008-2017 The Khronos Group Inc. All Rights Reserved. This specification is protected by copyright laws and contains material proprietary to the Khronos Group, Inc. It or any components may not be reproduced, republished, distributed, transmitted, displayed, broadcast, or otherwise exploited in any manner without the express prior written permission of Khronos Group. You may use this specification for implementing the functionality therein, without altering or removing any trademark, copyright or other notice from the specification, but the receipt or possession of this specification does not convey any rights to reproduce, disclose, or distribute its contents, or to manufacture, use, or sell anything that it may describe, in whole or in part. Khronos Group grants express permission to any current Promoter, Contributor or Adopter member of Khronos to copy and redistribute UNMODIFIED versions of this specification in any fashion, provided that NO CHARGE is made for the specification and the latest available update of the specification for any version of the API is used whenever possible. Such distributed specification may be reformatted AS LONG AS the contents of the specification are not changed in any way. The specification may be incorporated into a product that is sold as long as such product includes significant independent work developed by the seller. A link to the current version of this specification on the Khronos Group website should be included whenever possible with specification distributions.
    [Show full text]
  • Report of Contributions
    X.Org Developers Conference 2020 Report of Contributions https://xdc2020.x.org/e/XDC2020 X.Org Developer … / Report of Contributions State of text input on Wayland Contribution ID: 1 Type: not specified State of text input on Wayland Wednesday, 16 September 2020 20:15 (5 minutes) Between the last impromptu talk at GUADEC 2018, text input on Wayland has become more organized and more widely adopted. As before, the three-pronged approach of text_input, in- put_method, and virtual keyboard still causes confusion, but increased interest in implementing it helps find problems and come closer to something that really works for many usecases. The talk will mention how a broken assumption causes a broken protocol, and why we’re notdone with Wayland input methods yet. It’s recommended to people who want to know more about the current state of input methods on Wayland. Recommended background: aforementioned GUADEC talk, wayland-protocols reposi- tory, my blog: https://dcz_self.gitlab.io/ Code of Conduct Yes GSoC, EVoC or Outreachy No Primary author: DCZ, Dorota Session Classification: Demos / Lightning talks I Track Classification: Lightning Talk September 30, 2021 Page 1 X.Org Developer … / Report of Contributions IGT GPU Tools 2020 Update Contribution ID: 2 Type: not specified IGT GPU Tools 2020 Update Wednesday, 16 September 2020 20:00 (5 minutes) Short update on IGT - what has changed in the last year, where are we right now and what we have planned for the near future. IGT GPU Tools is a collection of tools and tests aiding development of DRM drivers. It’s widely used by Intel in its public CI system.
    [Show full text]
  • Blackberry QNX Multimedia Suite
    PRODUCT BRIEF QNX Multimedia Suite The QNX Multimedia Suite is a comprehensive collection of media technology that has evolved over the years to keep pace with the latest media requirements of current-day embedded systems. Proven in tens of millions of automotive infotainment head units, the suite enables media-rich, high-quality playback, encoding and streaming of audio and video content. The multimedia suite comprises a modular, highly-scalable architecture that enables building high value, customized solutions that range from simple media players to networked systems in the car. The suite is optimized to leverage system-on-chip (SoC) video acceleration, in addition to supporting OpenMAX AL, an industry open standard API for application-level access to a device’s audio, video and imaging capabilities. Overview Consumer’s demand for multimedia has fueled an anywhere- o QNX SDK for Smartphone Connectivity (with support for Apple anytime paradigm, making multimedia ubiquitous in embedded CarPlay and Android Auto) systems. More and more embedded applications have require- o Qt distributions for QNX SDP 7 ments for audio, video and communication processing capabilities. For example, an infotainment system’s media player enables o QNX CAR Platform for Infotainment playback of content, stored either on-board or accessed from an • Support for a variety of external media stores external drive, mobile device or streamed over IP via a browser. Increasingly, these systems also have streaming requirements for Features at a Glance distributing content across a network, for instance from a head Multimedia Playback unit to the digital instrument cluster or rear seat entertainment units. Multimedia is also becoming pervasive in other markets, • Software-based audio CODECs such as medical, industrial, and whitegoods where user interfaces • Hardware accelerated video CODECs are increasingly providing users with a rich media experience.
    [Show full text]
  • Opengl ES / Openvg / Opencl / Webgl / Etc
    KNU-3DC : Education and Training Plan 24 July 2013 Hwanyong LEE, Ph.D. Principal Engineer & Industry Cooperation Prof., KNU 3DC [email protected] KNU-3DC Introduction • Kyungpook National Univ. 3D Convergence Technology Center . Korea Government Funded Org. 23 staffs (10 Ph.D) . Research / Supporting Industry . Training and Education • Training and Education . Dassault Training Center . KIKS(Korea Institute of Khronos Study) • Constructing New Center Building . HUGE ! 7 Floors ! (2014E) 2 KNU-3DC KIKS • KIKS(Korea Institute of Khronos Study) . Leading Role in Korea for Training and Education of Khronos Standard – Collaboration with Khronos Group . Open Lecture + Develop Coursework for • OpenGL / OpenGL ES / OpenVG / OpenCL / WebGL / etc. • Opening / Sponsoring Workshop and Forum . Participating Khronos Activities • Contributor Member (Plan, now Processing) • Active participation of Khronos WG . Other Standard Activities • Make Khronos Standard into Korea National Standard. (WebGL) • W3C, ISO/IEC JTC1, IEEE 3333.X . Research and Consulting for Industry and Academy 3 KIKS Course • KIKS Course will be categorized into . Basic / Advanced / Packaged . Special Course - For instance Overview / Optimization / Consulting • Developing Courseware (for Khronos API) . OpenGL ES Basic & Advanced . OpenGL Basic & Advanced . OpenVG . OpenCL Basic & Advanced . WebGL . Etc. – new standards (Red - Started / Orange – Start at 4Q2013 / Dark Blue – Start at 2014) 4 Different View of Courses University Computer Game Image Parallel View Graphics Develop Processing … Processing JavaScript Khronos Canvas View … iPhone Android Company Web-App Parallel App App Application Develop View Develop Develop … Develop Course Development – Packaging Example • Android Application with OpenGL ES . General Android API’s – JNI, Java etc. OpenGL ES • iPhone App. Development with OpenGL ES . General iPhone APP API – cocoa, Objective-C, etc.
    [Show full text]
  • Implementing FPGA Design with the Opencl Standard
    Implementing FPGA Design with the OpenCL Standard WP-01173-3.0 White Paper Utilizing the Khronos Group’s OpenCL™ standard on an FPGA may offer significantly higher performance and at much lower power than is available today from hardware architectures such as CPUs, graphics processing units (GPUs), and digital signal processing (DSP) units. In addition, an FPGA-based heterogeneous system (CPU + FPGA) using the OpenCL standard has a significant time-to-market advantage compared to traditional FPGA development using lower level hardware description languages (HDLs) such as Verilog or VHDL. 1 OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos. Introduction The initial era of programmable technologies contained two different extremes of programmability. As illustrated in Figure 1, one extreme was represented by single core CPU and digital signal processing (DSP) units. These devices were programmable using software consisting of a list of instructions to be executed. These instructions were created in a manner that was conceptually sequential to the programmer, although an advanced processor could reorder instructions to extract instruction-level parallelism from these sequential programs at run time. In contrast, the other extreme of programmable technology was represented by the FPGA. These devices are programmed by creating configurable hardware circuits, which execute completely in parallel. A designer using an FPGA is essentially creating a massively- fine-grained parallel application. For many years, these extremes coexisted with each type of programmability being applied to different application domains. However, recent trends in technology scaling have favored technologies that are both programmable and parallel. Figure 1.
    [Show full text]
  • The Opencl Specification
    The OpenCL Specification Version: 2.0 Document Revision: 22 Khronos OpenCL Working Group Editor: Aaftab Munshi Last Revision Date: 3/18/14 Page 1 1. INTRODUCTION ............................................................................................................... 10 2. GLOSSARY ......................................................................................................................... 12 3. THE OPENCL ARCHITECTURE .................................................................................... 23 3.1 Platform Model ................................................................................................................................ 23 3.2 Execution Model .............................................................................................................................. 25 3.2.1 Execution Model: Mapping work-items onto an NDRange ........................................................................28 3.2.2 Execution Model: Execution of kernel-instances ........................................................................................30 3.2.3 Execution Model: Device-side enqueue ......................................................................................................31 3.2.4 Execution Model: Synchronization .............................................................................................................32 3.2.5 Execution Model: Categories of Kernels ....................................................................................................33 3.3 Memory
    [Show full text]
  • Openvg 1.1 API Quick Reference Card - Page 1
    OpenVG 1.1 API Quick Reference Card - Page 1 OpenVG® is an API for hardware-accelerated two-dimensional Errors [4.1] vector and raster graphics. It provides a device-independent Error codes and their numerical values are defined by the VGErrorCode enumeration and can be and vendor-neutral interface for sophisticated 2D graphical obtained with the function: VGErrorCode vgGetError(void). The possible values are as follows: applications, while allowing device manufacturers to provide VG_NO_ERROR 0 VG_UNSUPPORTED_IMAGE_FORMAT_ERROR 0x1004 hardware acceleration where appropriate. VG_BAD_HANDLE_ERROR 0x1000 VG_UNSUPPORTED_PATH_FORMAT_ERROR 0x1005 • [n.n.n] refers to sections and tables in the OpenVG 1.1 API VG_ILLEGAL_ARGUMENT_ERROR 0x1001 VG_IMAGE_IN_USE_ERROR 0x1006 specification available at www.khronos.org/openvg/ VG_OUT_OF_MEMORY_ERROR 0x1002 VG_NO_CONTEXT_ERROR 0x1007 • Default values are shown in blue. VG_PATH_CAPABILITY_ERROR 0x1003 Data Types & Number Representations Colors [3.4] The sRGB color space defines values R’sRGB, G’sRGB, B’sRGB in terms of the linear lRGB primaries. Primitive Data Types [3.2] Colors in OpenVG other than those stored in image pixels are represented as non-premultiplied sRGBA color values. openvg.h khronos_type.h range Convert from lRGB to sRGB Convert from sRGB to lRGB Image pixel color and alpha values lie in the range [0,1] (gamma mapping) (1) (inverse gamma mapping) (2) VGbyte khronos_int8_t [-128, 127] unless otherwise noted. -1 VGubyte khronos_uint8_t [0, 255] R’sRGB = γ(R) R = γ (R’sRGB) Color Space Definitions -1 The linear lRGB color space is defined in terms of the G’sRGB = γ(G) G = γ (G’sRGB) VGshort khronos_int16_t [-32768, 32767] -1 standard CIE XYZ color space, following ITU Rec.
    [Show full text]
  • Hardware Implementation of a Tessellation Accelerator for the Openvg Standard
    IEICE Electronics Express, Vol.7, No.6, 440–446 Hardware implementation of a tessellation accelerator for the OpenVG standard Seung Hun Kim, Yunho Oh, Karam Park, and Won Woo Roa) School of Electrical and Electronic Engineering, Yonsei University, 134 Shinchon-Dong, Seodaemun-Gu, SEOUL, 120–749, KOREA a) [email protected] Abstract: The OpenVG standard has been introduced as an efficient vector graphics API for embedded systems. There have been several OpenVG implementations that are based on the software rendering of image. However, the software rendering needs more execution time and power consumption than hardware accelerated rendering. For the effi- cient hardware implementation, we merge eight pipeline stages in the original specification to four pipeline stages. The first hardware accel- eration stage is the tessellation part which is one of the pipeline stages that calculates the edge of vector graphics. In this paper, we provide an efficient hardware design for the tessellation stage and claim this would eventually reduce the execution time and hardware complexity. Keywords: OpenVG, vector graphics, tessellation, hardware acceler- ator Classification: Electron devices, circuits, and systems References [1] K. Pulli, “New APIs for mobile graphics,” Proc. SPIE - The International Society for Optical Engineering, vol. 6074, pp. 1–13, 2006. [2] Khronos Group Inc., “OpenVG specification Version 1.0.1” [Online] http://www.khronos.org/openvg/ [3] S.-Y. Lee, S. Kim, J. Chung, and B.-U. Choi, “Salable Vector Graphics (OpenVG) for Creating Animation Image in Embedded Systems,” Lecture Notes in Computer Science, vol. 4693, pp. 99–108, 2007. [4] G. He, B. Bai, Z. Pan, and X.
    [Show full text]
  • Openbricks Embedded Linux Framework - User Manual I
    OpenBricks Embedded Linux Framework - User Manual i OpenBricks Embedded Linux Framework - User Manual OpenBricks Embedded Linux Framework - User Manual ii Contents 1 OpenBricks Introduction 1 1.1 What is it ?......................................................1 1.2 Who is it for ?.....................................................1 1.3 Which hardware is supported ?............................................1 1.4 What does the software offer ?............................................1 1.5 Who’s using it ?....................................................1 2 List of supported features 2 2.1 Key Features.....................................................2 2.2 Applicative Toolkits..................................................2 2.3 Graphic Extensions..................................................2 2.4 Video Extensions...................................................3 2.5 Audio Extensions...................................................3 2.6 Media Players.....................................................3 2.7 Key Audio/Video Profiles...............................................3 2.8 Networking Features.................................................3 2.9 Supported Filesystems................................................4 2.10 Toolchain Features..................................................4 3 OpenBricks Supported Platforms 5 3.1 Supported Hardware Architectures..........................................5 3.2 Available Platforms..................................................5 3.3 Certified Platforms..................................................7
    [Show full text]
  • Khronos Template 2015
    Ecosystem Overview Neil Trevett | Khronos President NVIDIA Vice President Developer Ecosystem [email protected] | @neilt3d © Copyright Khronos Group 2016 - Page 1 Khronos Mission Software Silicon Khronos is an Industry Consortium of over 100 companies creating royalty-free, open standard APIs to enable software to access hardware acceleration for graphics, parallel compute and vision © Copyright Khronos Group 2016 - Page 2 http://accelerateyourworld.org/ © Copyright Khronos Group 2016 - Page 3 Vision Pipeline Challenges and Opportunities Growing Camera Diversity Diverse Vision Processors Sensor Proliferation 22 Flexible sensor and camera Use efficient acceleration to Combine vision output control to GENERATE PROCESS with other sensor data an image stream the image stream on device © Copyright Khronos Group 2016 - Page 4 OpenVX – Low Power Vision Acceleration • Higher level abstraction API - Targeted at real-time mobile and embedded platforms • Performance portability across diverse architectures - Multi-core CPUs, GPUs, DSPs and DSP arrays, ISPs, Dedicated hardware… • Extends portable vision acceleration to very low power domains - Doesn’t require high-power CPU/GPU Complex - Lower precision requirements than OpenCL - Low-power host can setup and manage frame-rate graph Vision Engine Middleware Application X100 Dedicated Vision Processing Hardware Efficiency Vision DSPs X10 GPU Compute Accelerator Multi-core Accelerator Power Efficiency Power X1 CPU Accelerator Computation Flexibility © Copyright Khronos Group 2016 - Page 5 OpenVX Graphs
    [Show full text]
  • Real-Time Computer Vision with Opencv Khanh Vo Duc, Mobile Vision Team, NVIDIA
    Real-time Computer Vision with OpenCV Khanh Vo Duc, Mobile Vision Team, NVIDIA Outline . What is OpenCV? . OpenCV Example – CPU vs. GPU with CUDA . OpenCV CUDA functions . Future of OpenCV . Summary OpenCV Introduction . Open source library for computer vision, image processing and machine learning . Permissible BSD license . Freely available (www.opencv.org) Portability . Real-time computer vision (x86 MMX/SSE, ARM NEON, CUDA) . C (11 years), now C++ (3 years since v2.0), Python and Java . Windows, OS X, Linux, Android and iOS 3 Functionality Desktop . x86 single-core (Intel started, now Itseez.com) - v2.4.5 >2500 functions (multiple algorithm options, data types) . CUDA GPU (Nvidia) - 250 functions (5x – 100x speed-up) http://docs.opencv.org/modules/gpu/doc/gpu.html . OpenCL GPU (3rd parties) - 100 functions (launch times ~7x slower than CUDA*) Mobile (Nvidia): . Android (not optimized) . Tegra – 50 functions NEON, GLSL, multi-core (1.6–32x speed-up) 4 Functionality Image/video I/O, processing, display (core, imgproc, highgui) Object/feature detection (objdetect, features2d, nonfree) Geometry-based monocular or stereo computer vision (calib3d, stitching, videostab) Computational photography (photo, video, superres) Machine learning & clustering (ml, flann) CUDA and OpenCL GPU acceleration (gpu, ocl) 5 Outline . What is OpenCV? . OpenCV Example – CPU vs. GPU with CUDA . OpenCV CUDA functions . Future of OpenCV . Summary OpenCV CPU example #include <opencv2/opencv.hpp> OpenCV header files using namespace cv; OpenCV C++ namespace int
    [Show full text]
  • Khronos Native Platform Graphics Interface (EGL Version 1.4 - April 6, 2011)
    Khronos Native Platform Graphics Interface (EGL Version 1.4 - April 6, 2011) Editor: Jon Leech 2 Copyright (c) 2002-2011 The Khronos Group Inc. All Rights Reserved. This specification is protected by copyright laws and contains material proprietary to the Khronos Group, Inc. It or any components may not be reproduced, repub- lished, distributed, transmitted, displayed, broadcast or otherwise exploited in any manner without the express prior written permission of Khronos Group. You may use this specification for implementing the functionality therein, without altering or removing any trademark, copyright or other notice from the specification, but the receipt or possession of this specification does not convey any rights to reproduce, disclose, or distribute its contents, or to manufacture, use, or sell anything that it may describe, in whole or in part. Khronos Group grants express permission to any current Promoter, Contributor or Adopter member of Khronos to copy and redistribute UNMODIFIED versions of this specification in any fashion, provided that NO CHARGE is made for the specification and the latest available update of the specification for any version of the API is used whenever possible. Such distributed specification may be re- formatted AS LONG AS the contents of the specification are not changed in any way. The specification may be incorporated into a product that is sold as long as such product includes significant independent work developed by the seller. A link to the current version of this specification on the Khronos Group web-site should be included whenever possible with specification distributions. Khronos Group makes no, and expressly disclaims any, representations or war- ranties, express or implied, regarding this specification, including, without limita- tion, any implied warranties of merchantability or fitness for a particular purpose or non-infringement of any intellectual property.
    [Show full text]