BIOS MCSDK 2.0 Getting Started Guide
From Texas Instruments Wiki
BIOS Multicore Software Development Kit
Getting Started Guide
Last updated: 12/04/2012
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
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
The following acronyms are used throughout this document.
|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|
|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|
|UART||Universal Asynchronous Receiver/Transmitter|
|UDP||User Datagram Protocol|
|UIA||Texas Instruments Unified Instrumentation Architecture|
|USB||Universal Serial Bus|
Note: 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.
This release supports the following Texas Instrument devices/platforms:
|Platform Development Kit||Supported Devices||Supported EVM|
|C6670||TMS320C6670, TMS320TCI6618||TMDSEVM6670L, TMDSEVM6670LE,TMDSEVM6670LXE, TMDSEVM6618LXE|
|C6678||TMS320C6678, TMS320TCI6608||TMDSEVM6678L, TMDSEVM6678LE, TMDSEVM6678LXE|
What's in this Kit?
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
Note: The C6657 EVM has a 4 MB sized NOR.
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:
- Make sure your EVM hardware is set up
- Install Code Composer Studio v5
- Install latest emulation package
- Install the BIOS-MCSDK 2.0
- Use JTAG to load the application
- Run the application
Follow instructions in one of the links below that correspond to the EVM that you are using
- TMDXEVM6657L EVM Hardware Setup (use this link if you have a LE model)
- TMDSEVM6670L EVM Hardware Setup (use this link if you have a LE or LXE model)
- TMDSEVM6678L EVM Hardware Setup (use this link if you have a LE or LXE model)
Installing Code Composer Studio
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
- All C6* DSP
Note: 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:
Select C6000 DSPs during Choose ISA option
Installing Latest Emulation Package
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.
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.
Note: 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
- 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.
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:
Getting the BIOS MCSDK
Please refer to Technical_Support_and_Product_Updates link for getting the BIOS MCSDK software.
Run the Installer & Provide the installation path
- 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
chmod +x bios_mcsdk_<version>_setuplinux.bin ./bios_mcsdk_<version>_setuplinux.bin
Note: 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.
Note: MCSA (Multicore System Analyzer) which includes UIA + DVT will be installed under ccsv5 directory (for non CCSv5.1+ users only).
Note: 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.
Please note that there are two paths that are asked to be entered:
- CCSv5 installation path: This is Not Applicable for those who are using CCSv5.1+
- 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
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.
Completing the Installation
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.
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
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.
Instructions to Add RTSC Products to CCS
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.
If MCSDK components are still not recognized by CCS
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
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
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.
- 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.
- First time CCSv5 users should follow the steps described in CCSv5_Running_for_the_first_time page.
- The above procedure will open up the CCSv5 GUI.
- Create a New Target Configuration by selecting the tab File->New and clicking Target Configuration File.
- Enter a configuration file name (e.g. "evmc6678l_xds100v1.ccxml") in the File Name field.
- Click the Finish button.
- 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
- Enter device number in the Board or Device search field or select the EVM device as specified in the Target Config figure
- Save the file by clicking Save button.
- Click View->Target Configurations to list the available target configurations. The configuration file (evmc6678l_xds100v1.ccxml) created above will be under "User Defined" section
- Right click on the configuration file and select Launch Selected Configuration. This will launch the configuration and open the debug view.
- 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.
- 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
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.
- 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
- Right-click on the first row of the empty list to get a Load GEL command
- Execute the Load GEL command.
- Browse & Open the GEL file. The evmc66xxl.gel GEL file is located under <CCS Installation Directory>\ccs_base_5.#.#.####\emulation\boards\evmc66xxl\gel directory.
- Run Global_Default_Setup from the Scripts Menu.
Running the Demonstration Application
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
- 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.
- Click on Run->Resume to run the demo on the target. In CCS 5.0, click on Target->Run.
- From a Linux PC
- 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.
- Click on Run->Resume to run the demo on the target. In CCS 5.0, click on Target->Run.
Note: 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.
Note: 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
|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.
For more information on HUA, see the HUA Demonstration Guide.
Technical Support and Product Updates
For technical discussions and issues, please visit
- C66x Multicore forum: http://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639.aspx
- BIOS Embedded Software forum: http://e2e.ti.com/support/embedded/f/355.aspx
- Code Composer Studio forum: http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/3131.aspx
- TI C/C++ Compiler forum: http://e2e.ti.com/support/development_tools/compiler/f/343/t/34317.aspx
- Embedded Processors wiki: http://processors.wiki.ti.com
For local support in China, please visit
- China Support forum: http://www.deyisupport.com
Note: 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,
- Visit Multicore Software Development Kits: http://focus.ti.com/docs/toolsw/folders/print/bioslinuxmcsdk.html
- Use the CCS/Eclipse Update Manager (see the User's Guide for more information)
Note: 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.
Comments on BIOS MCSDK 2.0 Getting Started Guide