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.

TMS320C6474L Build Configuration

From Texas Instruments Wiki
Jump to: navigation, search

Configuring the Stairstep Example Project to use Ethernet on the TMS320C6474L[edit]

Using the packages provided by MCSDK 1.X[edit]

This assumes you are starting from the project you built for Tutorial 3A (How to build Tutorial 3A)

1. Install the MCSDK for your target device, and add the NDK and PDK RTSC packages to the project

  • right click on the project in the CCS Project view, select Properties / General / RTSC and check the NDK and PDK packages you wish to use.
  • In the "Platform:" field, select a platform file for your target device (e.g. ti.sdo.ipc.examples.platforms.evm6474.core0 if you are using a 6474L evm)

2. Add any required build variables

  • right click on the project in the CCS Project view, select Properties / Build / Build Variables
  • check the "Show System Variables" checkbox
  • verify that the following variables are defined and contain valid paths to the install folders for the various products
  • TI_MCSDK_INSTALL_DIR
  • TI_PDK_INSTALL_DIR
  • NDK_INSTALL_DIR
  • BIOS_CG_ROOT
  • IPC_CG_ROOT
  • COM_TI_UIA_INSTALL_DIR
  • If required, edit any incorrect paths or add any missing variables. Use forward slashes for separators. e.g.

AddVariableDialog.gif

3. Next, we'll modify the project build settings to satisfy references to include files and to link in the appropriate libraries.

  • TIP: did you know that you can enter filter text in the Build Settings box to make it easier to locate a particular group of setting options?
  • BuildSettingsFilterText.gif

The following screen shots show how the mcsdk_1_00_00_08\demos\evmc6474l\hpdspua is configured. If you are using a C6474l device, please apply these same settings to the project you built in Tutorial 3A. For other devices, please alter as required to reference the files and libraries for your particular device.

C6474l mcsdk1 includepaths.gif
C6474l mcsdk1 linkerfilepaths.gif
C6474l mcsdk1 predefinedsymbols.gif

4. Finally, we will need to make some changes to the .cfg file you were using in Tutorial 3A in order to change from logging events using a LoggerStopMode logger and having the CCS Debug Server upload events from the simulator to System Analyzer, to logging events using a LoggerCircBuf logger and having the ServiceMgr module on the target upload the events to System Analyzer via the NDK:

4a) Change the LoggingSetup.eventUploadMode from UploadMode_SIMULATOR to UploadMode_NONJTAGTRANSPORT:

  • LoggingSetup.eventUploadMode = LoggingSetup.UploadMode_NONJTAGTRANSPORT

4b) Add the ti.uia.runtime.ServiceMgr module, which will take care of bringing in the ti.uia.services.Rta module in and periodically calling it so that it can process commands from System Analyzer and upload events to System Analyzer

  • var ServiceMgr = xdc.useModule('ti.uia.runtime.ServiceMgr');

4c) Specify that the ServiceMgr is to use Ethernet as a transport

  • ServiceMgr.transportType = ServiceMgr.TransportType_ETHERNET;

4d) Configure the NDK for use:

  • /* ================ NDK configuration ================ */
  • var NdkConfig = xdc.loadPackage('ti.ndk.config');
  • var Global = xdc.useModule('ti.ndk.config.Global');
  • var Ip = xdc.useModule('ti.ndk.config.Ip');
  • var Udp = xdc.useModule('ti.ndk.config.Udp');

4e) Configure the NDK for DHCP to dynamically get an IP address

  • Ip.dhcpClientMode = Ip.CIS_FLG_IFIDXVALID;

If you can't use DHCP, you can replace the above line with the following to configure the NDK to use a fixed IP address: e.g.

  • Ip.address = "123.456.7.8";

4f) Ensure that there is enough memory to link properly. You can relocate the NDK_PACKETMEM by adding e.g. the following line to your .cfg file:

  • Program.sectMap[".far:NDK_PACKETMEM"] = {loadSegment: "DDR2", loadAlign: 128};

You can also relocate where program code and EMAC comm memory is located - e.g. if you have a C6472 EVM, the platform file for that device defines a memory section named 'SL2RAM' (shared L2 RAM) which can be used:

  • Program.sectMap[".text"] = "SL2RAM";
  • Program.sectMap["emacComm"] = "SL2RAM";


At this point, you should be able to clean and build the project without errors.

Note: If you later wish to switch to using JTAG to upload events from the target, you will need to set LoggingSetup.eventUploadMode = LoggingSetup.UploadMode_JTAGRUNMODE AND remove all lines associated with the ServiceMgr module from your .cfg file.

Back to Tutorial 3B

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 TMS320C6474L Build Configuration 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 TMS320C6474L Build Configuration here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article TMS320C6474L Build Configuration here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article TMS320C6474L Build Configuration here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article TMS320C6474L Build Configuration here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article TMS320C6474L Build Configuration here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article TMS320C6474L Build Configuration here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article TMS320C6474L Build Configuration here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article TMS320C6474L Build Configuration 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