Vision_SDK_UserGuide Vision SDK User Guide TDA2Ex
User Manual:
Open the PDF directly: View PDF
.
Page Count: 33
| Download | |
| Open PDF In Browser | View PDF |
Vision SDK TDA2Ex (v03.03.00) User Guide Copyright © 2016 Texas Instruments Incorporated. All rights reserved. Information in this document is subject to change without notice. Texas Instruments may have pending patent applications, trademarks, copyrights, or other intellectual property rights covering matter in this document. The furnishing of this documents is given for usage with Texas Instruments products only and does not give you any license to the intellectual property that might be contained within this document. Texas Instruments makes no implied or expressed warranties in this document and is not responsible for the products based from this document. Page 1 of 33 IMPORTANT NOTICE Texas Instruments and its subsidiaries (TI) reserve the right to make changes to their products or to discontinue any product or service without notice, and advise customers to obtain the latest version of relevant information to verify, before placing orders, that information being relied on is current and complete. All products are sold subject to the terms and conditions of sale supplied at the time of order acknowledgment, including those pertaining to warranty, patent infringement, and limitation of liability. TI warrants performance of its products to the specifications applicable at the time of sale in accordance with TI’s standard warranty. Testing and other quality control techniques are utilized to the extent TI deems necessary to support this warranty. Specific testing of all parameters of each device is not necessarily performed, except those mandated by government requirements. Customers are responsible for their applications using TI components. In order to minimize risks associated with the customer’s applications, adequate design and operating safeguards ought to be provided by the customer so as to minimize inherent or procedural hazards. TI assumes no liability for applications assistance or customer product design. TI does not warrant or represent that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other intellectual property right of TI covering or relating to any combination, machine, or process in which such products or services might be or are used. TI’s publication of information regarding any third party’s products or services does not constitute TI’s approval, license, warranty or endorsement thereof. Reproduction of information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations and notices. Representation or reproduction of this information with alteration voids all warranties provided for an associated TI product or service, is an unfair and deceptive business practice, and TI is neither responsible nor liable for any such use. Resale of TI’s products or services with statements different from or beyond the parameters stated by TI for that product or service voids all express and any implied warranties for the associated TI product or service, is an unfair and deceptive business practice, and TI is not responsible nor liable for any such use. Also see: Standard Terms and Conditions of Sale for Semiconductor Products. www.ti.com/sc/docs/stdterms.htm Mailing Address: Texas Instruments Post Office Box 655303 Dallas, Texas 75265 Copyright © 2016, Texas Instruments Incorporated Page 2 of 33 TABLE OF CONTENTS 1 1.1 Introduction ................................................................................................. 4 References ...................................................................................................... 4 2 2.1 2.2 2.3 2.4 System Requirements .................................................................................. 5 Windows Installation......................................................................................... 5 Linux Installation ............................................................................................. 5 Hardware Requirements .................................................................................... 7 Software Installation ...................................................................................... 12 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 Build and Run ............................................................................................. 13 Overview of application in release .................................................................... 13 Building the application ................................................................................... 13 UART settings ................................................................................................ 16 Boot Modes ................................................................................................... 16 Load using SD card ........................................................................................ 16 Load using QSPI............................................................................................. 18 Load using NOR ............................................................................................. 20 Load using CCS .............................................................................................. 22 Run the demo ................................................................................................ 27 4 TDA2Ex_17x17 ........................................................................................... 28 5 5.1 5.2 5.3 TDA2Ex Ethernet Surround View Starter Kit ............................................... 28 Hardware Setup ............................................................................................. 28 Building VSDK for ETH SRV board .................................................................... 30 Run the demo ................................................................................................ 30 6 Revision History ......................................................................................... 33 Page 3 of 33 1 Introduction Vision Software Development Kit (Vision SDK) is a multi-processor software development package for TI’s family of ADAS SoCs. The software framework allows users to create different ADAS application data flows involving video capture, video pre-processing, video analytics algorithms, and video display. The framework has sample ADAS data flows which exercises different CPUs and HW accelerators in the ADAS SoC and shows customer how to effectively use different sub-systems in the SoC. Frame work is generic enough to plug in application specific algorithms in the system. Vision SDK is currently targeted for the TDA2xx and TDA3xx family of SoCs This document explains the HW/SW VisionSDK_UserGuide_TDA2xx.pdf and respective EVM related Hw/SW setup 1.1 setup for TDA2Ex EVM. Refer to VisionSDK_UserGuide_TDA3xx.pdf for References Refer the below additional documents for more information about Vision SDK Document Description VisionSDK_ReleaseNotes.pdf Release specific information VisionSDK_UserGuide_TDA2Ex.pdf This document. Contains install, build, execution information VisionSDK_ApiGuide.CHM User API interface details VisionSDK_SW_Architecture.pdf Overview of software architecture VisionSDK_DevelopmentGuide.pdf Details how to create data flow (s) & add new functionality VisionSDK_SurroundView_DemoSetUpGuide.pdf Document contains the steps for hardware setup for calibrated surround view demo VisionSDK_FAQs.pdf Document contains FAQ Page 4 of 33 2 System Requirements This chapter provides a brief description on the system requirements (hardware and software) and instructions for installing Vision SDK. 2.1 Windows Installation 2.1.1 PC Requirements Installation of this release needs a windows machine with about 8GB of free disk space. Building of the SDK is supported on windows environment. 2.1.2 Software Requirements All software packages required to build and run the Vision SDK are included as part of the SDK release package except for the ones mentioned below. 2.1.2.1 A15 Compiler, Linker The windows installer for the GCC ARM tools should be downloaded from below link https://launchpad.net/gcc-arm-embedded/+milestone/4.9-2015-q3-update The tools need to be installed under “/ti_components/cg_tools/windows/”. IMPORTANT NOTE: A15 Compiler and linker MUST be installed before proceeding else compile will fail. Also make sure the compiler is installed at the exact path mentioned above 2.1.3 Code Composer Studio CCS is needed to load, run and debug the software. CCS can be downloaded from the below link. CCS version 6.0.1.00040 or higher should be installed. http://processors.wiki.ti.com/index.php/Download_CCS 2.2 Linux Installation 2.2.1 PC Requirements Installation of this release needs a Linux Ubuntu 14.04 machine. IMPORTANT NOTE: If you are installing Ubuntu on a virtual machine, ensure it’s a 64 bit Ubuntu. 2.2.2 Software Requirements All software packages required to build and run the Vision SDK are included as part of the SDK release package except for the ones mentioned below. 2.2.2.1 A15 Compiler, Linker The Linux installer for the GCC ARM tools should be downloaded from below link https://launchpad.net/gcc-arm-embedded/+milestone/4.9-2015-q3-update The tools need to be installed under “ /ti_components/cg_tools/linux/”. IMPORTANT NOTE: A15 Compiler and linker MUST be installed before initiating the build else compilation will fail. Also make sure the compiler is installed at the exact path mentioned above after installation of vision sdk. Use following steps to install the toolchain $> cd $INSTALL_DIR/ti_components/cg_tools/linux $> tar -xvf gcc-arm-none-eabi-4_9-2015q3-20150921-linux.tar.tar Page 5 of 33 IMPORTANT NOTE: Ensure the toolchain is for 32 / 64 bit machine as per configuration of installation machine If your machine is 64 bit and you have downloaded toolchain from link above Execute following step on installation machine $>sudo apt-get install ia32-libs lib32stdc++6 lib32z1-dev lib32z1 lib32ncurses5 lib32bz2-1.0 2.2.3 Other software packages for build depending upon OS baseline Ensure these packages/tools are installed on the installation machine uname, sed, mkimage, dos2unix, dtrx, mono-complete, git, lib32z1 lib32ncurses5 lib32bz2-1.0 libc6:i386 libc6-i386 libstdc++6:i386 libncurses5:i386 libz1:i386 libc6-dev-i386 device-tree-compiler monocomplete To install $>sudo apt-get install Page 6 of 33 2.3 Hardware Requirements Hardware setup for Single Camera View (SCV) and LVDS Multi Camera View (LVDS MCV) use-case is described in this section 2.3.1 SRV Use-cases / Multi Channel Use-cases SRV use-case needs the below hardware 1. TDA2Ex EVM (Rev D) 2. TDA2xx Vision Application Board (Rev C) 3. OV10635 Sensor (for SCV only) 4. WVGA LCD DC from Spectrum Digital (part #703663) OR 5. HDMI 1080p60 capable Display Monitor Setup is shown below (Physical components placement might have changed in different board versions) 2.3.2 With multides-surround-view-kit LVDS MCV Use-case Hardware Setup 1. TDA2Ex EVM (Rev B) 2. TDA2xx Vision Application Board (Rev C) 3. 6 channel FPD-Link III FMC SV600964 Daughter Board (Rev E1) 4. 4 x DS90UB913A EVMs (Rev A) 5. 4 x OV10635 Sensor (additional 5th DS90UB913A EVM, OV10635 sensor and cable would be required in order to run the Surround view demo). 6. 4 x Rosenberger HSD connectors and cables 7. WVGA LCD DC from Spectrum Digital (part #703663) OR 8. HDMI 1080p60 capable Display Monitor The LVDS MCV use case setup is shown in the snapshots below: Page 7 of 33 2.3.2.1 DeSerializer board IMPORTANT NOTE: Camera 1, Camera 2, Camera 3 and Camera 4 are used for 4 channel LVDS use-case and MUST be connected as shown in above figure. IMPORTANT NOTE: There is a board modification required for LVDS capture on TDA2EX boards. Refer to BSP user guide under section “Changes needed for 4 Channel Multi-deserializer on TDA2EX EVM” for more information. 2.3.2.2 2.3.2.3 Complete LVDS Setup With UB964 EVM (CSI2 based capture only) Multi-channel usecases and surround view based on CAL / CSI2 would require 1. TDA2Ex EVM 2. UB964 EVM (http://www.ti.com/tool/ds90ub964-q1evm) 3. 4 X OV10635 sensor modules 4. 4 X DS90UB913A serializer (SAT0088) (http://support.spectrumdigital.com/boards/sat0088_0089/) 5. 4 X FAKRA Cables 6. TV (1080P60 Capable) Connected to HDMI out of TDA2Ex EVM 2.3.2.4 UB964 EVM Configurations 1. Separate power to UB964 EVM a. UB960 EVM require separate power, please power TDA2Ex EVM & UB964 EVM separately 2. Power over FPD Link III Page 8 of 33 a. Depending on Camera module (OV10635 & SAT0088) you would require to source appropriate voltage b. The UB964 EVM user guide documents the option to choose different voltages, please refer http://www.ti.com/lit/pdf/snlu177 c. The picture of UB964 below, highlights the connector J14 / J16 with an arrow. This could be used to select different voltage, it’s recommended to refer the UB964 EVM guide for up-to-date/accurate configs 3. Mode Selection a. UB964 Require to operate in “RAW10 (DS90UB913A compatible)” b. This can be achieved with DIP switches on UB964 EVM, please refer the EVM user guide (link above) c. The picture below highlights the switch with a circle for RAW10 mode 4. Connecting UB964 to TDA2Ex EVM a. There are two CSI2 connectors on top of EVM b. Highlighted with white rectangular boxes c. Recommended not to use these (would require an additional CSI2 / differential cable to connect to TDA2Ex EVM) d. Use the male CSI2 connector (back of EVM) to connect to TDA2Ex EVM 2.3.2.5 TDA2Ex CSI2 receiver port The CSI2 receiver is highlighted with a red circle, please connect UB964/CSI 2 source to this. Page 9 of 33 2.3.2.6 Complete setup WARNING: CSI2 Clock: The maximum CSI2 clock could be 750 MHz, please refer the device data manuals for details. Some of the VisionSDK use cases (UB964 based), overclocks by 50 MHz (i.e. 800 MHz) and it works as expected. This over clocking is due the crystal (25 MHz) used in UB964 EVM, by choosing 24 MHz crystal UB964 CSI2 clock can be operated with-in specified limits. 2.3.3 Capture Pin Settings Video Config pins needs to set for different capture inputs VIDEO CONFIG switch settings (SW3 on TDA2xx Vision Application Board (set for Ov10635 in Original version of CPLD)) Capture Type Hardware controlled pin settings Software controlled pin settings Vision Application Board (Rev C CPLD) New Version Of CPLD flashed (default cpld image) (cpld_1_cam3_shift.pof) 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 OV10635 OFF ON OFF ON OFF ON OFF ON OFF OFF OFF OFF OFF OFF OFF OFF LVDS OFF OFF ON OFF OFF ON OFF ON OFF OFF OFF OFF OFF OFF OFF OFF HDMI OFF OFF ON ON OFF ON OFF ON OFF OFF OFF OFF OFF OFF OFF OFF CPLD image is required for VIP input Muxing, With the cpld_1_cam3_shift.pof and later the software control will work, On default Rev C board the captured image won’t be proper. Either program the Cpld with new image or use hardware controlled pin settings. Page 10 of 33 2.3.4 EDID Programming for HDMI Capture EDID information needs to be programmed on the EEPROM present on Vision Application Board. This is required for the HDMI capture source to recognize the format and resolution in which to send data to the TDA2Ex SoC. If this step is not done or if this step fails, then TDA2Ex SoC will not be able to receive data via HDMI capture source IMPORTANT NOTE: It’s recommended to program the HDMI receivers EDID. The default EDID is programmed to receive 1080P60 video streams only. If stream of different resolution is required (or EDID is corrupted), the EDID would require an update. Refer the EDID programming points in the section Running VPS Application on (TDAXXX EVM) documented in VPS User Guide in PDK. 2.3.5 1Gig Ethernet link does not come up on some EVMs On few of TDA2xx EVMs, we have seen stability issues with 1Gbps Ethernet link. The issue symptoms are 1. Link not detected when connected to 1Gbps switch/router 2. Stability issues with 1Gbps link - multiple connect/disconnect 3. Data transfer not happening due to CRC errors on Ethernet Rx These are known timing issues due to PHY “wire” side connection and not with the TDAx processor. Spectrum Digital screens all the EVMS and places a sticker labelled 100Mbps if any of EVM fails such test. The EVM boards having TI DP83867 PHY do not have this issue. Note: Not all failing EVMs have 100Mbps sticker, in order to identify if 1Gbps link is supported run VSDK network application. 100Mbps sticker 2.3.6 TDA2ex Board Rev Ethernet care-about In order for correct operation of the TDA2ex Ethernet use-cases kindly ensure the physical connection of the Ethernet cable is as per the table below: Sr. No. 1. 2. 3. TDA2ex EVM revision Use-case Rev A/Rev B Rev C Rev C Any LVDS HDMI Capture Recommended Ethernet port connection RGMII0 (Port0) RGMII1 (Port1) RGMII0 (Port0) Page 11 of 33 2.4 Software Installation PROCESSOR_SDK_VISION_03_xx_xx_xx_setupwin.exe is the SDK package installer. Copy the installer to the path of your choice. Double click the installer to begin the installation. Follow the self-guided installer for installation. IMPORTANT NOTE: On some computers running as administrator is needed. Right click on the installer and select option of “Run as administrator”. If this is not done then you may see a message like “This program might not have installed correctly” On completion of installation a folder by name PROCESSOR_SDK_VISION_03_xx_xx_xx would have got created in the installation path. 2.4.1 Uninstall Procedure To uninstall, double click on uninstall.exe created during installation in the folder PROCESSOR_SDK_VISION_03_xx_xx_xx. At the end of uninstall, PROCESSOR_SDK_VISION_03_xx_xx_xx folder still remains. It is just an empty folder. It can be deleted manually. Page 12 of 33 3 Build and Run This chapter provides a brief overview of the sample application or use case present in the SDK and procedure to build and run it. 3.1 Overview of application in release The Vision SDK supports the following use-cases as examples Single channel capture use-cases o Multi-channel LVDS capture use-cases o All Dual display usecase. ISS Use cases o All AVB usecase. Dual Display Use cases o All LVDS camera usecase. AVB RX Use-cases, o All single camera usecase. All ISS capture usecase Network RX/TX Use cases o All Network test usecase Refer to VisionSDK_DataSheet.pdf for detailed description of use-case. The demos support following devices as capture source OV10635 sensor (default) HDMI source The demos support following devices as display devices LCD 800x480 HDMI 1080p60 (default) Use option "s" on the main menu in UART to select different capture and display devices. 3.2 Building the application 1. On windows command prompt, go inside the directory PROCESSOR_SDK_VISION_03_xx_xx_xx\vision_sdk\build. 2. Open file \vision_sdk\build\Rules.make and set required config MAKECONFIG=tda2ex_evm_bios_all 3. Open file \vision_sdk\$(MAKEAPPNAME)\configs\tda2xx_evm_bios_all\cfg.mk a. For Building AVB application NDK_PROC_TO_USE is to be set for ipu1_1 4. Build is done by executing gmake. “gmake” is present inside XDC package. For “gmake” to be available in windows command prompt, the XDC path must be set in the windows system path. IMPORTANT NOTE: xdc path is needed to be set in environment variables. If not, then set it using the set PATH = /ti_components/os_tools/windows/xdctools_x_xx_xx_xx;%PATH % in command prompt Ensure that gmake is picked from vision sdk xdc path only. Use which gmake or where gmake depending upon the git bash or win cmd Page 13 of 33 IMPORTANT NOTE: A15 Compiler and linker MUST be installed before proceeding else compile will fail. Also make sure the compiler is installed at the exact path as mentioned in /vision_sdk/build/tools_path.mk. IMPORTANT NOTE: If the installation folder depth is high then windows cmd prompt fails with error that it cannot find a file, even in file is present in mentioned path, this is because Windows has a limitation of 8191 characters for the commands that can execute. In such a situation as a workaround either restrict the folder depth to d:/ or if it cannot be restricted use git bash to build. Refer https://support.microsoft.com/en-in/kb/830473 for more details. Git version used for testing is 2.13 (Always point to xdc path gmake only) 5. Under vision_sdk directory a. When building first time run the below sequence of commands > gmake -s -j depend > gmake -s -j b. When building after the first time or incremental build, run the below command > gmake -s -j Executing “gmake -s -j depend” will build all the necessary components (PDK drivers, EDMA drivers and sdk dependent files) and “gmake -s -j” will build the Vision SDK framework and examples. IMPORTANT NOTE: For incremental build, make sure to do "gmake -s -j depend" before "gmake -s -j" when below variables specified in \vision_sdk\$(MAKEAPPNAME)\configs\$(MAKECONFIG)\*cfg.mk are changed when PROC_$(CPU)_INCLUDE is changed when DDR_MEM is changed when PROFILE is changed when ALG plugin or usecase is enabled or disabled in \vision_sdk\$(MAKEAPPNAME)\configs\$(MAKECONFIG) \*_cfg.mk when any .h or .c file in TI component is installed in ti_components is changed when any new TI component is installed in ti_components If "gmake -s -j depend" not done in these cases then build and/or execution may fail IMPORTANT NOTE: When options (other than those specified above) are changed in \vision_sdk\$(MAKEAPPNAME)\configs\$(MAKECONFIG)\cfg.mk a clean build is recommended for the updated settings to take effect. 6. On a successful build completion, following executables will be generated in the below path \vision_sdk\binaries\$(MAKEAPPNAME)\$(MAKECONFIG)\vision_sdk\bin\tda2ex-evm vision_sdk_a15_0_release.xa15fg vision_sdk_c66xdsp_1_release.xe66 vision_sdk_ipu1_0_release.xem4 vision_sdk_ipu1_1_release.xem4 7. To speed up the incremental builds the following can be done as required. The number of processors included in the build can be changed by modifying below values in \vision_sdk\$(MAKEAPPNAME)\configs\$(MAKECONFIG)\cfg.mk. A value of Page 14 of 33 "no" means CPU not included in build, value of "yes" means CPU included in build. Make sure to do “gmake -s -j depend” before “gmake -s- j” when number of CPUs included is changed PROC_DSP1_INCLUDE=yes PROC_A15_0_INCLUDE=yes PROC_IPU1_0_INCLUDE=yes PROC_IPU1_1_INCLUDE=yes 8. The build config that is selected in config file can be confirmed by doing below > gmake -s showconfig Cleaning the build can be done by following command > gmake -s clean Built binaries need to deleted by > rm -rf ../binaries/$(MAKEAPPNAME)/$(MAKECONFIG) Page 15 of 33 3.3 UART settings Connect a serial cable to the UART port of the EVM and the other end to the serial port of the PC (configure the HyperTerminal at 115200 baud rate) to obtain logs and select demo. 3.4 Boot Modes Supported boot modes on TDA2Ex ES1.0 device: Boot Mode EVM Switch Setting SYSBOOT(SW2)[1:16] QSPI_1 01101100 10000001 QSPI_4 11101100 10000001 NOR 10101100 10000101 SD 00001100 10000001 Debug 00000000 10000001 3.5 EVM Switch Setting SW5[1:10] 0001100000 0001100000 0100100000 0001100000 XXXXXXXX Load using SD card NOTE: The application can be run using SD card and SD card boot or using CCS. This section shows how to run using SD card boot. Application image is run on the SoC via Secondary Boot Loader (SBL) present in SD card. 3.5.1 Option 1: Steps to prepare a bootable SD card Ensure Empty SD card (at least 256MB, preferably 4GB SDHC) is available. Ensure SD memory card reader is available. Page 16 of 33 3.5.2 Create a primary FAT partition on MMC/SD card (FAT32 format with sector size 512) and mark it as Active. A partition manager utility has to be used for the same. Format SD card from DOS command line as below. “format /A:512 /FS:FAT32” Make SD card partition as active using below tool http://www.pcdisk.com/download.html IMPORTANT NOTE: Create a primary FAT partition on MMC/SD card (FAT32 format) with sector size 512 bytes mark the partition as active. Option 2: Steps to prepare a bootable SD card using DISKPART Open windows 7 Command prompt and Run as Administrator mode Enter command "diskpart.exe" C:\Windows\system32>diskpart.exe will take you DISKPART prompt Warning: Enter below command carefully w.r.t your computer/laptop SD card disk number. Choosing wrong disk number may delete data present in other drive To list all disk drive present on computer DISKPART> list disk Select the SD card disk number, in my case it is disk 1 DISKPART> select disk 1 Now all next command applicable only to disk 1(SD card) Delete entire partition DISKPART> clean To create Primary partition DISKPART> create partition primary To list partition DISKPART> list partition Select partition DISKPART> select partition 1 To list volume DISKPART> list volume Select volume associated with SD card, In my case its 3 DISKPART> select volume 3 Format SD card, please wait this may take few seconds DISKPART>format quick fs=fat32 unit=512 label=SD_BOOT Make disk active DISKPART> active To exit utility DISKPART> exit Page 17 of 33 3.5.3 Steps to generate MLO NOTE: SBL MLO image is built from PDK package. To build MLO Run the command gmake -s sbl from vision_sdk\build dir This generates an MLO under vision_sdk\binaries\$(MAKEAPPNAME)\$(MAKECONFIG)\sbl\sd\$(OPP)\$(PLATFORM) To build the mlo for different memory map, select required configuration in Makefile under vision_sdk (follow comments from Makefile under SBL build Targets). 3.5.4 Steps to generate appImage Following steps need to be followed to generate the application image 1. Make sure the executables are built as shown in Building the application 2. To generate the application image run below command from “vision_sdk” folder > gmake -s appimage IMPORTANT NOTE: The config options, like CPUs to use, debug or release profile etc, used to make the application image will be the values specified in \vision_sdk\$(MAKEAPPNAME)\configs\$(MAKECONFIG)\cfg.mk file 3.5.5 SD Card setup Once the AppImage and MLO are generated, Copy the MLO and AppImage at root folder of formatted SD Card 3.5.6 Hardware Pin settings for SD Boot Make sure the Boot Mode Select Switch is set for the SD boot mode on TDA2Ex Base EVM. This is done by setting the pins SYSBOOT (SW2+SW3) [0:15] to the below shown position Please refer Boot Modes 3.6 Load using QSPI 3.6.1 Steps to generate qspi writer tools NOTE: SBL qspi image is built from PDK package. To build qspi Run the command gmake -s sbl from vision_sdk\build dir This generates all required tools under vision_sdk\binaries\$(MAKEAPPNAME)\$(MAKECONFIG)\sbl\qspi\$(OPP)\$(PLATFORM) vision_sdk\binaries\$(MAKEAPPNAME)\$(MAKECONFIG)\sbl\qspi_flash_writer\$(PLATF ORM) 1. sbl_qspi_$(OPP_MODE)_a15_0_release.tiimage 2. qspi_flash_writer_ipu1_0_release.xem4 To build the qspi for different memory map, select required configuration in Makefile under vision_sdk (follow comments from Makefile under SBL build Targets). IMPORTANT NOTE: Refer section “Board Modification” under SBL_userguide for hardware modifications if required. 3.6.2 Steps to generate appImage Following steps need to be followed to generate the application image Make sure the executables are built as shown in Building the application To generate the application image run below command “vision_sdk\build” folder from > gmake -s appimage Page 18 of 33 IMPORTANT NOTE: The config options, like CPUs to use, debug or release profile etc, used to make the application image will be the values specified in \vision_sdk\$(MAKEAPPNAME)\configs\$(MAKECONFIG)\cfg.mk file 3.6.3 The Surround View LUT and Perspective Matrix are flashed at an offset of 20 MB in the QSPI hence make sure the generated appImage doesn’t exceed 20 MB in case Surround View use cases are intended to be run. Flashing steps Flashing pin settings: Please refer Boot Modes For loading binaries using CCS refer Load using CCS till step 8. 1. Connect A15. Do CPU reset Select CortexA15_0, navigate to Scripts->TDA2Ex MULTICORE Initialization TDA2Ex_MULTICORE_EnableALLCores 2. Connect M4 (IPU) Halt A15 core, and Load image on M4 vision_sdk\binaries\$(MAKEAPPNAME)\$(MAKECONFIG)\sbl\qspi_flash_writer \$(SOC)\qspi_flash_writer_ipu1_0_release.xem4 3. Run the core. You would see below console logs [Cortex_M4_IPU1_C0] QSPI Flash writer application Enter Device type to use 1 - 1 bit read from flash 2 - 4 bit (Quad) read from flash Erase Options: Select appropriate Device Type, for TDA2ex EVM, press ‘2’. Enter Erase Option: --------------0 -> Erase Only Required Region 1 -> Erase Whole Flash 2 -> Skip Erase 1 MID - 1 DID - 18 Load Options: Enter 0 for Erase-Only (without flashing any image) ------------- Note : File size should be less than 33554432 Bytes. 0 -> fread using code (RTS Library) Enter the file path to flash: \sbl_qspi_$(OPP_MODE)_a15_0_release.tiimage 1 -> load raw using CCS (Scripting console) Enter Load Option: 0 Enter the Offset in bytes (HEX) 0x00 Read xxxxxx bytes from [100%] file...Done. QSPI whole chip erase in progress QSPI file write started **********QSPI flash completed sucessfully************** 4. Reset the board and Repeat step 1, 2 and 3. 5. Reset the board and Repeat step 1 and 2 [Cortex_M4_IPU1_C0] QSPI Flash writer application Enter Device type to use 1 - 1 bit read from flash 2 - 4 bit (Quad) read from flash Select appropriate Device Type, for TDA2ex EVM, press ‘2’. Load Options: ------------0 -> fread using code (RTS Library) 1 -> load raw using CCS (Scripting console) Enter Load Option: 1 MID - 1 Page 19 of 33 DID - 18 Enter the File Name C:\vision_sdk\binaries\$(MAKEAPP NAME)\$(MAKECONFIG)\vision_sdk \bin\$(SOC)\sbl_boot\AppImage_B E Enter the Offset in bytes (HEX): 0x80000 Erase Options: --------------- Open Scripting console window by clicking “Menu -> View -> Scripting console” and enter below command on scripting console as shown 3.5.3.1 loadRaw(0x80500000, 0, "C:/ vision_sdk/binaries/$(MAKEAPPNAME)/$( MAKECONFIG)/vision_sdk/bin/$(SOC)/sbl _boot/AppImage_BE ", 32, false); IMPORTANT NOTE: The load address in loadRaw command could be different based on the board/SBL size etc. SBL figures out the address and prints it on CCS console. Use this address in loadRaw command for copying AppImage_BE. 0 -> Erase Only Required Region 1 -> Erase Whole Flash 2 -> Skip Erase Enter Erase Option: 0 In CCS console Enter any alpha-numeric key once loadraw is complete... as shown in below image QSPI file write started ****QSPI flash completed successfully******* CCS console and scripting console 6. On completion change the pin setting as shown in Boot Modes table. 3.7 3.7.1 Load using NOR Steps to generate nor writer tools NOTE: SBL nor image is built from PDK package. To build nor Run the command gmake -s sbl from vision_sdk\build dir This generates all required tools under vision_sdk\binaries\$(MAKEAPPNAME)\$(MAKECONFIG)\sbl\nor\$(OPP)\$(PLATFORM) vision_sdk\binaries\$(MAKEAPPNAME)\$(MAKECONFIG)\sbl\nor_flash_writer\$(PLATF ORM) 1. sbl_nor_$(OPP_MODE)_a15_0_release.bin 2. nor_flash_writer_ipu1_0_release.xem4 To build the nor for different memory map, select required configuration in Makefile under vision_sdk (follow comments from Makefile under SBL build Targets). IMPORTANT NOTE: Refer section “Board Modification” under SBL_userguide for hardware modifications if required. 3.7.2 Steps to generate appImage Following steps need to be followed to generate the application image Page 20 of 33 Make sure the executables are built as shown in Building the application To generate the application “vision_sdk\build” folder image run below command from > gmake -s appimage IMPORTANT NOTE: The config options, like CPUs to use, debug or release profile etc, used to make the application image will be the values specified in \vision_sdk\$(MAKEAPPNAME)\configs\$(MAKECONFIG)\cfg.mk file 3.7.3 Flashing steps Flashing pin settings: Please refer Boot Modes For loading binaries using CCS refer Load using CCS till step 8. 1. Connect A15. Do CPU reset Load image vision_sdk\binaries\$(MAKEAPPNAME)\$(MAKECONFIG)\sbl\nor_flash_writer\$(S OC)\ nor_flash_writer_ipu1_0_release.xem4 2. Run the core. [CortexA15_0] Starting NOR Flash Writer. Load Options: CFI Query...passed. ------------0 -> fread using code (RTS Library) NOR Initialization: Command Set: Spansion Manufacturer: SPANSION Size: 0x40 MB 1 -> load raw using CCS (Scripting console) Enter Load Option: 0 Reading 71896 bytes from file... Read 16384 bytes [22%] from file... Enter the File Name Read 32768 bytes [45%] from file... \sbl_nor_ $(OPP_MODE)_a15_0_release.bin Enter the Offset in bytes (HEX) 0x00 Read 65536 bytes [91%] from file... Read 71896 bytes [100%] from file. Done!! Erase Options: --------------0 -> Erase Only Required Region 1 -> Erase Whole Flash 2 -> Skip Erase Enter Erase Option: Read 49152 bytes [68%] from file... 1 Writing 0x118D8bytes to NOR... NOR Write OK through 0x8008000. NOR Write OK through 0x8010000. NOR Write OK through 0x80118D8. Done. Erasing the NOR Flash !!! Successfully Flashed!!! Erased through 0x8020000 NOR boot preparation was successful! . . Erased through 0x9000000 3. Reset the board and Repeat step 1 & 2 4. Reset the board and Repeat step 1 Page 21 of 33 [CortexA15_0] Starting NOR Flash Writer. Load Options: CFI Query...passed. ------------0 -> fread using code (RTS Library) NOR Initialization: Command Set: Spansion Manufacturer: SPANSION Size: 0x40 MB 1 -> load raw using CCS (Scripting console) Enter Load Option: 1 Use below command in CCS scripting console... loadRaw(0x90000050,0," /AppImage_LE", 32, false); Enter the File Name Kindly use '/' (forward slash) in the file path \sbl_nor_ $(OPP_MODE)_a15_0_release.bin Enter any alpha-numeric key once loadraw is complete... Enter the Offset in bytes (HEX) 0x80000 s1 Erase Options: Writing 0x1175F10bytes to NOR... --------------- NOR Write OK through 0x8088000. 0 -> Erase Only Required Region 1 -> Erase Whole Flash 2 -> Skip Erase Enter Erase Option: 2 . . NOR Write OK through 0x91F5F10. Done. !!! Successfully Flashed!!! NOR boot preparation was successful! CCS console and scripting console 5. On completion change the pin setting as shown in Boot Modes table. 3.8 Load using CCS After installing CCS, follow below steps to complete the platform setup, 1. GELs are available in \ti_components\ccs_csp \auto_device_support_x.x.x.zip NOTE: 1. GELs are also be available at http://processors.wiki.ti.com/index.php/Device_support_files Under Automotive pick Automotive vX.X.X 2. To install the new GEL versions, you need to extract the zip to /ccsv6/ccs_base Change the following GEL files for vision SD as below, TDA2Ex_multicore_reset.gel Set VISION_SDK_CONFIG to 1 always Set VISION_SDK_CONFIG_OLD to 0 Page 22 of 33 For older versions of VisionSDK (2.08 and older) this should be set to 1 2. CCS Target Configuration creation: a. Open “Target Configurations” tab, by navigating through the menu “View ->Target Configurations”. b. Create a new Target Configuration (TDA2Ex Target Configuration) by navigating through the menu “File->New->Target Configuration File”. c. Specify Connections as “Spectrum Digital XDS560V2 STM USB Emulator”. Specify Board or Device as “TDA2Ex”. Page 23 of 33 d. ByPass unused cores. Click on the core which needs to be bypassed and check ByPass under Bypass Properties. The settings is under advance setup tab. 3. Connect JTAG to the board. IMPORTANT NOTE: There are two JTAG connectors on the board. The one shown below MUST be used for CCS debug. Page 24 of 33 Reset EVM through the blue button (SW4, out of two, the one away from the JTAG). 4. Now launch the previously created TDA2Ex Target Configuration. Page 25 of 33 5. Once the target configuration is launched successfully, the following log should be observed on the CCS console: CortexA15_0: GEL Output: --->>> TDA2Ex Cortex A15 Startup Sequence DONE! <<<-6. Connect to core CortexA15_0. 7. On successful connect, the following log appears on CCS console: CortexA15_0: GEL Output: --->>> TDA2Ex Target Connect Sequence DONE !!!!! <<<--- 8. Select CortexA15_0, navigate to Scripts->TDA2Ex MULTICORE Initialization TDA2Ex_MULTICORE_EnableALLCores 9. On successful script execution, the following log appears on CCS console: Page 26 of 33 CortexA15_0: GEL Output: --->>> PRUSS 1 and 2 Initialization is in complete ... <<<--- 10. Now connect the core shown below, C66xx_DSP1,Cortex_M4_IPU1_C0, Cortex_M4_IPU1_C1. 11. Once the cores are connected, do CPU Reset for all the cores. 12. On the cores load the binaries as mentioned below On C66xx_DSP1, load the binary, “vision_sdk_c66xdsp_1_release.xe66”. On Cortex_M4_IPU1_C0, load the binary, “vision_sdk_ipu1_0_release.xem4”. On Cortex_M4_IPU1_C1, load the binary, “vision_sdk_ipu1_1_release.xem4”. On CortexA15_0, load the binary, "vision_sdk_a15_0_debug.xa15fg” IMPORTANT NOTE: Binary for Cortex_M4_IPU1_C0 MUST be loaded before Cortex_M4_IPU1_C1 since IPU1-0 does MMU config for the complete IPU1 system. Other binaries can be loaded in any order. 3.9 Run the demo 1. Power-on the Board after loading binaries by (SD, QSPI, NOR or CCS) and follow Uart settings to setup the console for logs and selecting demo. 2. Select demo required from the menu by keying in corresponding option from uart menu. IMPORTANT NOTE: Make sure you select SCV (1Ch VIP capture) use-case or LVDS (4Ch VIP capture) use-case depending on the camera that is connected Page 27 of 33 NOTE 1: For AVB MCV Demo Ethernet port must be connected as shown in SCV/AVB Use-case Hardware Setup NOTE 2: Data is streamed from Linux talker (Ref: AVB Used guide for building talker binaries) VMware can also be used but the throughput of talker is not as desired and depends on PC configurations. NOTE 3: For AVB use-cases with AVBTX, run PC listener on Ubuntu PC. Also install ffplay for using listener as AVBTP Listener launches ffplay internally. Please close ffplay window before stopping listener from terminal. Check orphan ffplay tasks via “ps –al” and kill all of them explicitly. sudo bash ./avbtp_listener.sh 4 TDA2Ex_17x17 TDA2Ex has two variants 23x23 referred as TDA2Ex and 17x17 referred as TDA2Ex_17x17. The steps and procedure defined in this document is applicable to both the devices. Please refer the device specific data manual for detailed feature set. When VisionSDK is used on TDA2Ex_17x17 device, please ensure to build for TDA2Ex. The software (VisionSDK and its components) would determine the package type and act accordingly. Determining SoC type: Please use API Bsp_platformGetSocId(), in case of TDA2Ex, BSP_PLATFORM_SOC_ID_TDA2EX is returned. Determining TDA2Ex_17x17: Below code could be used to identify if (BSP_PLATFORM_SOC_ID_TDA2EX == Bsp_platformGetSocId()) { if (BSP_PLATFORM_PACKAGE_TYPE_17x17 == Bsp_platformGetPackageType()) { /* any TDA2Ex_17x17 specific operations */ } } 5 TDA2Ex Ethernet Surround View Starter Kit This document explains the HW/SW setup for TDA2Ex Ethernet SRV starter kit. The TDA2EX Ethernet SRV Starter Kit developed by D3 Engineering is one of the evaluation platforms for Vision SDK, used for evaluating the Ethernet Surround View use-case along with other networking use-cases. The starter kit supports the following Vision SDK data flows: Ethernet Surround View (SRV) Auto Calibration Ethernet SRV 2D Network Tx/Rx Multi-channel DMA Mosaic. The steps to install and run the use-cases on TDA2Ex Eth SRV board are same as of TDA2Ex EVM. Please refer to respective section in this document above for this information. This document details only additional set up and build requirements. 5.1 Hardware Setup 1. Power supply (12V, 5 - AMP) 2. Four camera modules and JST-to-Mini50 cables to connect to the 100BASE-T1 input ports of the TDA2Ex Ethernet Surround View Board. Page 28 of 33 Note: For VSDK testing on starter kit, AVB camera modules from TrulyTM are used. The camera configuration as below i. 1MP (1280x720) H264 all I frames @30fps ii. Camera module configured in master mode (this is needed as switch on the starter kit is in slave mode) iii. Firmware images on Camera flashed with below stream id’s (which are used in the VSDK use-cases) {0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xE0} {0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xE1} {0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xE2} {0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xE3} 3. Display – Display can be via HDMI or Ethernet (AVB listener) 4. USB micro-B cable for user inputs. Page 29 of 33 5.2 Building VSDK for ETH SRV board To enable build for TDA2Ex Ethernet surround view starter kit, enable below macro in the # # Enable below macro to run ETH SRV on TDA2EX ETH SRV Board # TDA2EX_ETHSRV_BOARD=yes Note 1: The TDA2Ex Eth SRV starter kit supports only below use-cases; please disable other use-cases form use-case config file. UC_avbrx_dec_display_avbtx UC_avbrx_sv_display_avbtx UC_srv_calibration UC_network_rx_tx UC_saveDisFrame 5.3 Run the demo Steps to run any use-case on TDA2Ex Eth starter kit is same as of TDA2Ex EVM. Please refer to 5.3.1 Streaming data via talker or AVB Camera On TDA2Ex, AVB use-cases can be run either with TrulyTM camera modules or AVBTP PC talker application. Also if sufficient camera modules are not available, combination of talker and camera can be used to make 4-channels. This needs modification in stream id’s of talker to make sure those are not conflicting. By default, PC talker uses stream id 01_23_45_67_89_AB_CD_Ex (x - channel number). So if you start 2 streams it would use stream id E0 and E1. This should not clash with camera stream id. Page 30 of 33 TM Figure Truly 5.3.1.1 camera module Streaming with Camera modules a. For using camera make sure camera modules are started and data is being streamed. Note: When using PC talker make sure camera modules are not powered on disable capture start and capture stop from the use-case main file). The stream from the camera module can interfere with the AVB talker and causes decode errors. b. Pin connections for TrulyTM camera and TDA2Ex Eth SRV board i. ii. TrulyTM Camera 4-Cam BR Baseboard Page 31 of 33 5.3.1.2 Streaming with PC talker a. Refer to AVB Used guide for building talker binaries. b. VMware can also be used but the throughput of talker is not as desired and depends on PC configurations. NOTE: AVB Talker code present at ti_components\networking\avbtp_0_10_00_00\utils\avbtp_talker 5.3.2 Display – HDMI or AVB listener Display can be via HDMI or Ethernet (AVB listener) 1. HDMI 1080p60 capable Display Monitor and Type C HDMI cable. 2. Display via AVB listener – needs below a. PC (preferably Ubuntu) for running AVB listener – current AVB Tx usecases uses spoofed MAC address for constructing the AVB packets to be sent out to AVB listener, address used is ab:cd:ef:ab:cd:ef. Run AVB listener with this MAC address as source. b. Ethernet Media converter – BroadReach to 100BaseTx/1000BaseT converter to connect to PC (media conveter from TechnicaTM is used for testing) Page 32 of 33 6 Revision History Version Date Revision History 1.0 22th August 2014 1.1 14 November 2014 1.2 31 December 2014 1.3 4 July 2015 1.4 16 Oct 2015 1.5 18 March 2016 1.6 4 July 2016 1.7 2 Nov 2016 Updated for 2.11 release 1.8 8 Feb 2017 1.9 19 June 2017 Updated for 2.12 release TDA2Ex 17x17 package details added Updated linux installer 2.0 27th June Updated for release 3.0 2.1 10 Oct 2017 2.2 20 Dec 2017 2.3 3 April 2018 th st th th th th nd th th th th rd Initial Version Added QSPI+SD boot, GCC and CCSversion Some minor changes Updated for 2.7 release Updated for 2.8 release Updated for 2.9 release Updated for 2.10 release Updated for release 3.1 TDA2Ex Ethernet SRV Starter kit details added and release 3.1 Updated for release 3.2 Updated for release 3.3 ««« § »»» Page 33 of 33
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.5 Linearized : No Page Count : 33 Language : en-US Tagged PDF : Yes Title : Vision_SDK_UserGuide Author : Jithin Suresh Creator : Microsoft® Word 2010 Create Date : 2018:04:03 16:59:21+05:30 Modify Date : 2018:04:03 16:59:21+05:30 Producer : Microsoft® Word 2010EXIF Metadata provided by EXIF.tools