NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

BIOS MCSDK 2.0 Getting Started Guide

From Texas Instruments Wiki
Jump to: navigation, search

Important Note:

The software found on this site is available for download, but is no longer being actively developed or maintained. C665x and C667x devices are now actively maintained on the Processor-SDK release stream. For Migration guide refer MCSDK_to_Processor_SDK_Migration



TIBanner.png


BIOS Multicore Software Development Kit

Version 2.x

Getting Started Guide

Last updated: 05/08/2016


NOTE

C665x and C667x devices are now actively maintained on the Processor-SDK release stream. See http://www.ti.com/lsds/ti/tools-software/processor_sw.page for more information.


Introduction[edit]

c66x-multicore.jpg

The BIOS Multicore Software Development Kit (MCSDK) provides the core foundational building blocks that facilitate application software development on TI's high performance and multicore DSPs. The foundational components include:

  • SYS/BIOS which is a light-weight real-time embedded operating system for TI devices
  • Chip support libraries, drivers, and basic platform utilities
  • Interprocessor communication for communication across cores and devices
  • Basic networking stack and protocols
  • Optimized application-specific and application non-specific algorithm libraries
  • Debug and instrumentation
  • Bootloaders and boot utilities
  • Demonstrations and examples


Specifically, this Getting Started Guide provides information on installing the BIOS Multicore Software Development Kit, loading the EVM out-of-box demonstration application via JTAG, and running the out-of-box demonstration application. It is expected the user has gone through the EVM Quick Start Guide provided with their EVM and have booted the out-of-box demonstration application flashed on the device.

By the end of this Getting Started Guide the user should have:

  • Installed CCS
  • Installed latest Emulation Package
  • Installed the BIOS-MCSDK Software
  • Connected to the EVM via CCS/JTAG
  • Loaded the out-of-box demonstration application onto the device via JTAG
  • Executed the out-of-box demonstration application


Helpful tips image.jpg

Useful Tip

After completing the material in this Getting Started Guide, it is recommended the user continue on to the BIOS MCSDK User’s Guide for additional information on the MCSDK software elements and to get started with development using the BIOS-MCSDK.


Acronyms and Definitions[edit]

The following acronyms are used throughout this document.

Acronym Meaning
AMC Advanced Mezzanine Card
CCS Texas Instruments Code Composer Studio
CSL Texas Instruments Chip Support Library
DDR Double Data Rate
DHCP Dynamic Host Configuration Protocol
DSP Digital Signal Processor
DVT Texas Instruments Data Analysis and Visualization Technology
EDMA Enhanced Direct Memory Access
EEPROM Electrically Erasable Programmable Read-Only Memory
EVM Evaluation Module, hardware platform containing the Texas Instruments DSP
HUA High Performance Digital Signal Processor Utility Application
HTTP HyperText Transfer Protocol
IP Internet Protocol
IPC Texas Instruments Inter-Processor Communication Development Kit
JTAG Joint Test Action Group
MCSA Texas Instruments Multi-Core System Analyzer
MCSDK Texas Instruments Multi-Core Software Development Kit
NDK Texas Instruments Network Development Kit (IP Stack)
NIMU Texas Instruments Network Interface Management Unit
PDK Texas Instruments Programmers Development Kit
RAM Random Access Memory
RTSC Eclipse Real-Time Software Components
SRIO Serial Rapid IO
TCP Transmission Control Protocol
TI Texas Instruments
UART Universal Asynchronous Receiver/Transmitter
UDP User Datagram Protocol
UIA Texas Instruments Unified Instrumentation Architecture
USB Universal Serial Bus

NoteNote: We use the abbreviation TMS when referring to a specific TI device (processor) and the abbreviation TMD when referring to a specific platform that the processor is on. For example, TMS320C6678 refers to the C6678 DSP processor and TMDSEVM6678L refers to the actual hardware EVM that the processor is on.


Supported Devices/Platforms[edit]

This release supports the following Texas Instrument devices/platforms:

Platform Development Kit Supported Devices Supported EVM
C6657 TMS320C6657 TMDXEVM6657L, TMDXEVM6657LE
C6670 TMS320C6670, TMS320TCI6618 TMDSEVM6670L, TMDSEVM6670LE,TMDSEVM6670LXE, TMDSEVM6618LXE
C6678 TMS320C6678, TMS320TCI6608 TMDSEVM6678L, TMDSEVM6678LE, TMDSEVM6678LXE


What's in this Kit?[edit]

The kit contains:

  • EVM Board: This board contains a Multicore System-on-Chip.
  • Universal Power Supply: Both U.S. and European power specifications are supported.
  • Cables: USB, Serial, and Ethernet cables are included to allow for host development.
  • Software DVD: Software installers, documentation, factory images.
  • EVM Quick Start Guide: Single page guide to get started run demos pre-flashed on board.


The Multicore EVM kit Software DVD includes:

  • BIOS Multicore Software Development Kit installer
  • Linux Multicore Software Development Kit tarball
  • Code Composer Studio installer
  • Factory image restoration process


The C66x EVMs will have the following content loaded in flash/EEPROM: EVM-Flash-Contents_Production.png

NoteNote: The C6657 EVM has a 4 MB sized NOR.

Getting Started[edit]

This section will walk you through installing and using the BIOS Multicore Software Development Kit, including how to flash and run the out-of-box demonstration application, HUA. It is expected that you have gone through the EVM Quick Start Guide for your EVM and have booted the demonstration application flashed on the device.

The overall steps are:

  1. Make sure your EVM hardware is set up
  2. Install Code Composer Studio v5
  3. Install latest emulation package
  4. Install the BIOS-MCSDK 2.0
  5. Use JTAG to load the application
  6. Run the application



Hardware Setup[edit]

Follow instructions in one of the links below that correspond to the EVM that you are using




Installing Code Composer Studio[edit]

The BIOS-MCSDK 2.0 uses CCS v5. To install CCS please refer to the instructions provided in the CCSv5 Getting Started Guide.

When installing Code Composer Studio you can choose to control what is installed. For example, you may not want support for particular devices and ISA's. If you choose to do a custom installation, the following components must be installed to support the MCSDK:

  • SYS/BIOS 6
  • IPC
  • XDC
  • All C6* DSP

NoteNote: In Windows 7, install and run CCS/BIOS MCSDK in administrator mode, this will rule out issues with CCS start-up and RTSC component recognition

Sample Custom Installation snap shot:

CCS-setup-01.JPG


Select C6000 DSPs during Choose ISA option

CCS-setup-02.JPG


Installing Latest Emulation Package[edit]

The Emulation Package provides GEL files and XML files that are used to manually configure the EVM. It is needed if you are planning to use CCS to load an application. Ultimately, this configuration should come from the application itself.

NoteNote: The latest Keystone1 Emupack release 1.0.9.1 can be downloaded from Keysttoen1 Emupack 1.0.9.1

  • C6657 and C6671 Gel files have been changed in this release

The way to move to the latest version of the emulation package depends on the version of CCS that you are using:

  • CCS 5.0.3 users:
    • Download the emupack zip file from the BIOS-MCSDK download page
    • Unzip to a temp directory (say c:\temp for windows OR ~/temp for Linux)
    • Please follow the instructions as per README.txt provided in the zip file.
    • C6657 and C6671 Gel files in Keystone1 Emupack 1.0.9.1 need to be copied to ccs_base\emulation\boards\<platform>\gel directory

NoteNote: Please note that for CCS 5.0.3, there are no updates for the XML files needed.

  • CCS 5.1 users:
    • Please install the emupack installer following the sequences as requested by the installer. This would update the necessary GEL files and the XML files needed to configure the EVM.


Installing the BIOS Multicore Software Development Kit[edit]

  • After installing CCS, the next step is to install the BIOS-MCSDK. Please make sure CCS is closed before the installation of BIOS MCSDK. Some of the components installed by CCS may be updated by the BIOS-MCSDK installer; see the Release Notes for full details of components included in the installer. The development environment can be either Windows or Linux. The MCSDK installer allows you to choose the installation directory. The MCSDK install may include several sub-components as indicated in the Release Notes; all of the components will be installed in the same location.

Each software component comes as an eclipse plug-in. After installing BIOS-MCSDK, CCSv5 should recognize each of the plug-ins when it starts up. In CCSv5 window, Help->Help Contents will list all the available docs and user can browse the docs from the help window.

Helpful tips image.jpg

Useful Tip

For CCS to discover the BIOS-MCSDK installation, install the BIOS-MCSDK package into one of the folders that CCS will be search by default. If any other directory outside these paths are selected for the installation, manually add that path into the tool discovery path in CCS, by using Window->Preferences menu in CCS. By default, CCS RTSC tool discovery paths are:

  • C:/Program Files/Texas Instruments
  • C:/[CCSv5_install_dir] (e.g.; c:/TI, if CCS is installed under c:/TI directory)

Getting the BIOS MCSDK[edit]

Please refer to Technical_Support_and_Product_Updates link for getting the BIOS MCSDK software.

NoteNote: Make sure CCS is closed before invoking the BIOS-MCSDK installer.

Run the Installer & Provide the installation path[edit]

On Windows OS

To install BIOS-MCSDK on your Windows PC run the MCSDK installer (bios_mcsdk_<version>_setupwin32.exe). It is recommended to keep the default installation paths for CCS and the other components (e.g., "C:\Program Files\Texas Instruments" and "C:\Program Files\Texas Instruments\ccsv5") or make sure that CCS and the other components are installed along the same path. This allows CCS to auto discover the components and generally makes things simpler.

On Linux OS

The instalation is tested on Ubuntu Linux distribution, but it expected to work on other Linux distributions as well. After downloading the Linux installer, (bios_mcsdk_<version>_setuplinux.bin), please change the attribute of the installer to executable and run the installer as shown below. <syntaxhighlight lang="bash"> chmod +x bios_mcsdk_<version>_setuplinux.bin ./bios_mcsdk_<version>_setuplinux.bin </syntaxhighlight>

NoteNote: If you are installing on a Windows 7 machine, modify the default path to "C:\Program Files\Texas Instruments". Otherwise, some of the CCS projects in the release may not build properly.

NoteNote: MCSA (Multicore System Analyzer) which includes UIA + DVT will be installed under ccsv5 directory (for non CCSv5.1+ users only).

NoteNote: The BIOS MCSDK installer might default to C:\Program Files(x86)\Texas Instruments for 64 bit machines. There are some projects in the BIOS MCSDK which assumes the default MCSDK installation directory to be C:\Program Files\Texas Instruments. The workaround would be to install BIOS MCSDK in C:\Program Files\Texas Instruments folder, then all the projects will re-compile without any change. If it is installed in C:\Program Files(x86)\Texas Instruments then minor tweaks might be required for few projects to re-compile.



The installer setup window would pop.

A sample setup window screen shot is shown as below.

BIOS-MCSDK SETUP

Please note that there are two paths that are asked to be entered:

  1. CCSv5 installation path: This is Not Applicable for those who are using CCSv5.1+
  2. BIOS-MCSDK Destination folder: This is the root directory where BIOS-MCSDK software will be installed. Please provide the install path to the PARENT ccsv5 directory to avoid manual RTSC discovery tool setup in CCSv5. If this cannot be done, see notes below to manually configure CCS to search for components in other directories.

Check/Uncheck MCSA depending on the CCS Version[edit]

Due to a compatibility issue with CCS 5.1, the MCSA component is not selected by default in the installer. If using CCS 5.0.3, please select this component to install it; starting from CCS 5.1, MCSA is included in the CCS installer.

MCSA Uncheck

Completing the Installation[edit]

After the installation of BIOS MCSDK, please invoke the CCSv5 and notice the new components that are installed by BIOS MCSDK are discovered by CCSv5. Please check all the new discovered products and restart CCSv5.

A sample screen shot in CCSv5 discovering new products is shown as below.

Sample MCSDK Discovered Products

Please note that if you have installed MCSDK or/and the compiler in a path other than the default installation path, then you will need to tell CCS where to find these components.

The following instructions explain this process.

Instructions to Add Compiler Path to CCS[edit]

In CCS go to ‘Window --> Preferences.” This should bring up a window as shown in the snapshot below. Here go to ‘Code Composer Studio --> Build --> Compilers’ and add the path to where you installed the compiler. In this example, v7.3.4 was provided with CCS and v7.4.1 was subsequently installed. Once you add the path, CCS should show “TI v7.4.1” in the “Discovered tools” section.

Compiler Tool Discovery Path.JPG

Instructions to Add RTSC Products to CCS[edit]

In CCS go to ‘Window --> Preferences.” This should bring up a window as shown in the snapshot below. Here go to ‘Code Composer Studio --> RTSC --> Products’ and add the path to the parent folder where you installed MCSDK. Once you add the path, CCS should show the newly installed MCSDK software components in the “Discovered tools” sub-window.

MCSDK Tool Discovery Path.JPG


If MCSDK components are still not recognized by CCS
[edit]

If you are using Windows 7, and after doing the above steps CCS still does not recognize all MCSDK components, we'd recommend installing MCSDK from within CCS as follows:

a. Go to CCS, and select Help->Install New Software
b. Add the MCSDK repository (http://software-dl.ti.com/sdoemb/sdoemb_public_sw/bios_mcsdk/eclipse/mcsdk2x)
c. Choose SYS/BIOS MCSDK Features, and click Next.
d. Follow any instructions.
e. In the future to update components you can go to Help->Check for Updates, to automatically check this repository for new revisions

Sample Directory Structure after the installation[edit]

The BIOS-MCSDK install includes several sub-components, all of which (except for MCSA) will be installed in the same location. This location can be choosen using "Destination Folder". The BIOS-MCSDK installer also requires the location of an already installed CCSv5.0. This location is specified in "Code Composer Studio v5.0 Installation Directory" (this is the location to the "ccsv5" folder).

Once the installation is complete all the BIOS-MCSDK components will be installed in the specified installation directory. Each of the directories will be of the format <component_name>_<component version>. Please refer to individual components release notes for detailed information on the components or package.

A sample directory structure after a typical BIOS MCSDK default installation is shown below

+---bios_6_32_04_49
+---ccsv5
+---cg_xml
+---edma3_lld_02_11_02_04
+---imglib_c66x_3_0_1_0
+---ipc_1_23_01_26
+---mathlib_c66x_3_0_0_0
+---mcsdk_2_00_02_14
+---ndk_2_20_04_26
+---pdk_C6657_1_0_0_01
+---pdk_C6670_1_0_0_14
+---pdk_C6678_1_0_0_14
\---xdctools_3_22_01_21

Use JTAG to Load the Application
[edit]

The following steps will guide you through connecting the JTAG to the EVM. These instructions are for the on-board XDS100 emulator on the TMDSEVMxxxxL EVM. For LE or LXE models, the procedure is similar except as noted. For more information on the emulators, see the respective page for XDS100 or XDS560. A Target Configuration File tells CCS how to connect to the EVM (they reference device specific files which have been supplied and contain information about the EVM, SoC and interface being used). Without one, you will not be able to load or debug applications over JTAG using CCS.

  1. Set the EVM Boot Mode to "No Boot" and power on the EVM. See the respective EVM Hardware Setup page listed above for the Boot Mode table.
  2. First time CCSv5 users should follow the steps described in CCSv5_Running_for_the_first_time page.
  3. The above procedure will open up the CCSv5 GUI.
  4. Create a New Target Configuration by selecting the tab File->New and clicking Target Configuration File.
  5. Enter a configuration file name (e.g. "evmc6678l_xds100v1.ccxml") in the File Name field.
  6. Click the Finish button.
  7. Select the connection type as "Texas Instruments XDS100v1 USB Emulator" for XDS100 or "Blackhawk XDS560v2-USB Mezzanine Emulator" for XDS560 in the drop down list
  8. Enter device number in the Board or Device search field or select the EVM device as specified in the Target Config figure
  9. Save the file by clicking Save button.
    Target config evmC6678l.png
  10. Click View->Target Configurations to list the available target configurations. The configuration file (evmc6678l_xds100v1.ccxml) created above will be under "User Defined" section
  11. Right click on the configuration file and select Launch Selected Configuration. This will launch the configuration and open the debug view.
  12. Right click on core0 and select Connect Target to connect to the target CPU. This step will require the board is powered up and the PC is connected to the board using USB.
  13. Most of the development and debugging will require CCSv5. For more information on CCSv5 see the CCSv5 Getting Started Guide page.

Loading and Setting up the EVM with the Gel file

NoteNote: The same target GEL file is used for all different EVM models of the same processor (L, LE, LXE).

After the target configuration is launched, the GEL file can be set for each core. Before executing any application it is recommended to execute the GEL script Global_Default_Setup for the evmc66##l. The example below shows how to load and execute the GEL script from the GEL file for TMDSEVM6678xxx EVM.

  1. Click on the core on which the GEL file needs to be loaded and select Tools->GEL Files from the Tools Menu. This is captured in the GEL Menu under CCSv5
    CCSV5GelMenuSelect.JPG
  2. Right-click on the first row of the empty list to get a Load GEL command
    Emptygelwindow.jpg
    .
  3. Execute the Load GEL command.
  4. Browse & Open the GEL file. The evmc66xxl.gel GEL file is located under <CCS Installation Directory>\ccs_base_5.#.#.####\emulation\boards\evmc66xxl\gel directory.
    Loadgelc6678l.jpg
  5. Run Global_Default_Setup from the Scripts Menu.
    Loadgelc6678l-success-exec-scripts.jpg



Running the Demonstration Application[edit]

Demonstrations are pre-loaded on the EVM flash as indicated above. The "out of box" demonstration is the High Performance DSP Utility Application (HUA). The following instructions use CCS to load the application via JTAG.

From a Windows PC
  1. Enter the CCS debug view, select Run->Load->Load Program. The Program File field browse to C:\Program Files\Texas Instruments\mcsdk_2_##_##_##\demos\hua\evmc66##l\Debug and select hua_evmc66##l.out (this is the default location). It will load the program in the selected core.
  2. Click on Run->Resume to run the demo on the target. In CCS 5.0, click on Target->Run.
From a Linux PC
  1. Enter the CCS debug view, select Run->Load->Load Program. The Program File field browse to $HOME/ti/mcsdk_2_##_##_##/demos/hua/evmc66##l/Debug and select hua_evmc66##l.out (this is the default location). It will load the program in the selected core.
  2. Click on Run->Resume to run the demo on the target. In CCS 5.0, click on Target->Run.

NoteNote: The HUA demo runs in Static IP or DHCP mode depending on the User Switch 2. Please see the Hardware Setup section for information on switch settings and HUA Demonstration Guide for information on static IP configuration.

NoteNote: The application will write messages simultaneously to the CCS console and the UART. Therefore you can use either the CCS Console or a serial port program to see them. When using DHCP this is the only way to get the IP address that was assigned to the unit (it will be displayed as Network Added: If-1 someip).

Settings for the serial port are

Baud Rate 115200
Data Bits 8
Stop Bits 1
Parity None
Hardware Flow Control None

After the application starts up you should see text similar to the following in the CCSv5 console and/or UART program window:

[C66xx_0] Start BIOS 6
[C66xx_0] HPDSPUA version 2.00.00.11
[C66xx_0] Configuring DHCP client
[C66xx_0] QMSS successfully initialized
[C66xx_0] CPPI successfully initialized
[C66xx_0] PASS successfully initialized
[C66xx_0] Ethernet subsystem successfully initialized
[C66xx_0] eventId : 48 and vectId : 7
[C66xx_0] Registration of the EMAC Successful, waiting for link up ..
[C66xx_0] Service Status: DHCPC    : Enabled  :          : 000
[C66xx_0] Service Status: THTTP    : Enabled  :          : 000
[C66xx_0] Service Status: DHCPC    : Enabled  : Running  : 000
[C66xx_0] Network Added: If-1:10.218.112.167
[C66xx_0] Service Status: DHCPC: Enabled: Running: 017 

The IP address received through DHCP in this case is 10.218.112.167. You can now open a web browser and in the address bar enter the IP address obtained. It will open up the HUA demo page.

Figure 2: Demo Application Welcome Page

For more information on HUA, see the HUA Demonstration Guide.


Technical Support and Product Updates[edit]

For technical discussions and issues, please visit

For local support in China, please visit

NoteNote: When asking for help in the forum you should tag your posts in the Subject with “MCSDK”, the part number (e.g. “C6678”) and additionally the component (e.g. “NDK”).


For product updates,

NoteNote: The EVM comes with disks containing the MCSDK software and CCS. You can start with these or go to the MCSDK software download site listed above to check for the latest updates and version. The BIOS-MCSDK release download will also have pointers to applicable CCS and compiler release versions as well. Please review the release notes and software manifest before downloading and/or installing the software.



E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article BIOS MCSDK 2.0 Getting Started Guide here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article BIOS MCSDK 2.0 Getting Started Guide here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article BIOS MCSDK 2.0 Getting Started Guide here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article BIOS MCSDK 2.0 Getting Started Guide here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article BIOS MCSDK 2.0 Getting Started Guide here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article BIOS MCSDK 2.0 Getting Started Guide here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article BIOS MCSDK 2.0 Getting Started Guide here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article BIOS MCSDK 2.0 Getting Started Guide here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article BIOS MCSDK 2.0 Getting Started Guide here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity