This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How do I access the Memory Section Manager in CCS V5.2

I imported a CCS V3.1 project in CCS V5.2 using the "Import Legacy CCSv3.3 Project" option in CCS V5.2.

My project shows the CDB file from the CCS V3.1 project.

I converted the CDB file to a TCF file using cdb2tcf.exe.

A TCF file was created in the same directory as the old CDB file and the CDB file was renamed.

How do I get the TCF file into and connected to the project and do I get rid of the CDB file (a simple add files, delete files)?

Once in the project, how do I access the TCF file to allow me to add SECTIONS and change the properties?

  • Hi Donna,

    donna famularo said:
    How do I get the TCF file into and connected to the project and do I get rid of the CDB file (a simple add files, delete files)?

    First, please make sure you have your original files backed up.

    To remove the *.cdb file from the project, you can simply right click on it in the project view and select delete.

    To add the *.tcf file, you can drag it into the project view from a Windows explorer window.

    donna famularo said:
    Once in the project, how do I access the TCF file to allow me to add SECTIONS and change the properties?

    I think you want to open the *.tcf file graphically, using the GCONF tool, right? (note that the *.tcf file is a text file written in JavaScript, and can be modified in text mode, too).

    You should be able to double click on the *.tcf file within CCS.  However, I just tried that and it did not open the *tcf file in GCONF for me, so you may run into the same issue.

    But, I was able to open it like this:

    1. Open Windows explorer and navigate to your DSP/BIOS installation.
      1. E.g. on my computer it was here: C:\ti\bios_5_42_01_09\packages\ti\bios\config\gconf\bin
    2. Double click on the gconf.exe program
    3. A pop up window will appear asking you to enter the location of your XDC tools installation.  I gave it the path to the XDC tools that's in my DSP/BIOS installation
      1. E.g. on my computer it was here: C:\ti\bios_5_42_01_09\xdctools
    4. This allowed the GUI tool to open
    5. Finally, to open the *.tcf file I was interested in, I just dragged and dropped the file into the GCONF tool.

    Steve

  • See attached.

    1) CDB to TCF conversion batch file

    2) CDB to TCF output file

    3) tcfopts.dat file

    4) Some of the errors I am getting.

    Please advise.  Thanks. 

    4721.GCONF Issues.pdf

  • Can you try opening one of the existing example *.tcf files that comes with your BIOS installation?

    For example, I did this to open the "clk.tcf" file of the 6437 clock example (please tailor the steps as needed for path differences on your PC):

    1. navigate to C:\ti\bios_5_42_01_09\packages\ti\bios\examples\evmDM6437

    2. double click on clk.tcf

    3. entered "C:\ti\bios_5_42_01_09\xdctools" when prompted for XDC tools

    4. entered "C:\ti\bios_5_42_01_09\packages" when prompted for TCI path

    This allowed the configuration to open properly in GCONF.

    Steve

  • Steve,

    I tried as you asked and all was good - the Configuration tool opened up without any errors.

    BUT ...

    I still have problems with my TCF file.

    I have attached for your review the following (a zipped file):

    1) Original CDB file

    2) Converted CDB file

    3) Created TCF file

    4) Error output window from my TCF file attempt.

    Let me know if you need anything else.

    Please advise.  Thanks.

    0334.sdtestbsp.zip

  • Donna,

    Hmmm ... I was able to open your file sdtestbsp.tcf.

    I double clicked the file to start the process.

    I want to make sure that you are specifying the path to XDC tools that comes with your BIOS 5.x installation. E.g. for me it was here:

    C:\ti\bios_5_42_01_09\xdctools

    I think for your install it should be:

    C:\ti\bios_5_41_13_42\xdctools

    Steve
  • I don't have the path C:\ti\bios_5_41_13_42\xdctools.

    I have the path c:\ti\xdctools_3_23_03_53 and that is what I specified when asked.

    The tci path I used is c:\ti\bios_5_41_13_42\packages (gotten from tcfopts.dat file)

    I tried again with the same results - I even tried logged in as an administrator - no good.

    Any idea what it means by "js: Can't modify read-only field"

    I also noticed every time I try this a TEMPtcfxxxx.tcf file gets created - what is the significance of this if any.

  • Hi Donna,

    This morning I have been trying to reproduce the issue you are seeing. I installed the same versions of BIOS and XDC tools that you are using (bios_5_41_13_42 and xdctools_3_23_03_53).

    The bad news is that I was not able to reproduce the issue - I open the sdtestbsp.tcf file without errors in GCONF.

    Perhaps we should focus on the errors you are seeing about fields being read only.  This may be the key, although I'm not sure why I wouldn't be seeing those errors when opening the same tcf file and using the same versions of BIOS and XDC tools.

    In any case, those read only errors are an artifact of the conversion tool.  In the tcf script, some variable's read or write property depends on another "global settting's" value.  For example, you cannot configure heaps in MEM segments unless heaps have been enabled in the configuration.  You can certainly write the script code in the tcf file to do that, but if the code to enable heaps isn't there, you will see the "Can't modify read-only field" errors, as you are getting (you can find some more details on this issue here).

    Looking at the tcf script, I see a few conflicting settings that may be causing this. 

    Lines 12 - 18 are enabling various settings:

    /* enabling DSP/BIOS components */
    bios.GBL.ENABLEINST = true;
    bios.MEM.NOMEMORYHEAPS = false;
    bios.RTDX.ENABLERTDX = true;
    bios.HST.HOSTLINKTYPE = "RTDX";
    bios.TSK.ENABLETSK = true;
    bios.GBL.ENABLEALLTRC = true;

    However, later in the script I see that these same things are being disabled:

    bios.GBL.ENABLEALLTRC = 0;

    bios.GBL.ENABLEINST = 0;

    bios.HST.HOSTLINKTYPE = "NONE";

    bios.TSK.ENABLETSK = 0;

    bios.RTDX.ENABLERTDX = 0;

    Can you try removing the above code that's disabling the settings?

    Steve

  • I commented out the 5 lines (using /* */). Same errors.
  • Hi Donna,

    Let's try a different approach. Some of the settings in that file are causing those errors. Can you try first excluding a large block of the tcf code and seeing if they go away? I'll attach an updated tcf file to show you what I mean. Basically, I'm using an "if (false)" block to exclude code settings (sdtestbsp - A.tcf)

    If this succeeds, great. Then we know the culprit settings are within that excluded block. So, let's shrink the excluded code by moving the if block further down, maybe 1/2 down the file in a binary search fashion. Try again. Are the errors there? Then we know they are somewhere in the code that was just revealed by moving the if statement down. (sdtestbsp - B.tcf)

    You can continue trying this until the problematic statements are found.

    Steve
  • I tried both files (A and B) and get the same error messages.

  • 3022.Top Chunk Of Code Out.pdf

    I tried commenting out all different lines and still get error messages.

    I attached the errors I get when commenting out the Top Chunk of Code - different errors.

  • 2476.Other TCF File.pdf

    I'm a bit confused.  I have been playing with the sdtestbsp.tcf file within the "maint" directory of my project.

    BUT I have found there is another TCF file within the "maint/sdtestbsp" directory.

    When I "Rebuild project" it uses the "maint/sdtestbsp? TCF file and I get different error messages - see attached.

    Which TCF file should it be using?

  • Hi Donna,

    I apologize - I realize there was a mistake in both files A and B that I sent you.  There is a curly brace instead of an open paren in the if statement:

    This:

    if {false) {

    should be this:

    if (false) {

    Can you please repeat the experiment?

    I've attached a zip that has this fix for your convenience.

    I've also attached two more files to try (C and D).

    Please let me know.

    Steve

  • 8510.A-B-C-D File Errors.pdf

    I tried all 4 files you sent -- still get errors.

    I have attached the error windows for all 4 files.

  • Donna,

    Which hardware platform are you using? Is it the DSK 6711? Or the DSK 6713? (I'm trying to guess based what I saw in your *tcf file, but I'm not postive).

    Steve
  • Steven,
    I appreciate all of your help and patience.
    Is it possible to have a FAE (Field Application Engineering) in my area stop by and help me.
    My area is Farmingdale, Eastern Suffolk County, Long Island, New York.
    I have a fast approaching a deadline and I am getting worried we might not be able to fix this via e-mail.
    Again, your help so far is greatly appreciated.
    --Donna
  • I am using the 6713. What does DSK mean?
    (Spectrum Digital XDS560v2 STM TRAVELER Emulator)
    (CCS General Family C6000, Variant C671x Floating-point DSP, TMS320C6713)
  • We ordered Code Composer Studio IDE 0 Floating 3 User Pack (F03), TMDSCCS-ALLF03-v6.
    This license was used to install CCS V5.2.0.00069 (we downloaded it).
  • Donna,

    I can certainly contact the FAE you are working with to see if this is possible, as he has also made a post for you on this issue.

    Having said that, at this point I think your best option is to manually transfer your settings over to a *.tcf file that you were able to open successfully.

    Here's the idea ...

    I think previously, you were able to open the clk.tcf file for one of the examples, correct? If you open that file in GCONF (ideally you can open one that's for the platform you are using), then you can apply all of the settings of your orginal CDB file to it. This is a brute force way to do it, but it should work if you are still able to open the other *.tcf file.

    The way to go about this would be to use the (converted/problematic) cfg file's code to know which settings to apply to the new *tcf (which you can successfully open in GCONF).  In addition, these settings are described in the BIOS API Guide (should be at "C:\Program Files\Texas Instruments\bios_5_41_13_42\docs\spru403r.pdf").

    For example, if you open clk.cdb again in GCONF.  You will need to apply the settings of your file "sdtestbsp.tcf" to this file graphically.

    Let's take the first setting in the file (that comes after the platform settings):

    bios.GBL.ENABLEINST = true;

    Looking at the BIOS API Guide, if I search for "GBL.ENABLEINST" I see that this property is in the GBL module:

    ...

    From the above, I can see that the "translation" of the code in the tcf - "ENABLEINST" - is "Enable Real Time Analysis"

    Looking at GCONF, the GBL module corresponds to "Global Settings":

    If I right click on GBL and select properties, I can see "Enable Real Time Analysis."  I would then check that box to set it to true (if not already checked):

    You would need to follow a similar process for the other settings in the sdtestbsp.tcf file.

    Steve

  • Steven,
    I can't find a supplied example TCF file for the 6713 platform. Do you have one or know where I can get one?

    QUESTION: Who is the FAE for the area I am located (NY, Long Island, Eastern Suffolk County, East Farmingdale)?

    QUESTION: I read online that it is a possibility that the "Can't modify read-only field" might be a firewall issue.
    Any thoughts on this? I am using an air-gapped, non-internet facing Network with the firewall "enabled".
    Are there any issues with the firewall being "enabled". Let me know and I will pass the info along to my IT department.
    --Donna
  • Hi Donna,

    I just checked my bios_5_41_13_42 installation and I also do not see the dsk6713 platform (DSK stands for "DSP Starter Kit" or some such).  In fact, a number of platforms seem to be gone from that version of BIOS.  I'm not sure why these would be missing.

    However, I do see the dsk6713 platform in my newer bios_5_42_01_09 installation.

    Can you try installing bios_5_42_01_09?  This may resolve your *tcf issues.

    donna famularo said:
    QUESTION: Who is the FAE for the area I am located (NY, Long Island, Eastern Suffolk County, East Farmingdale)?

    I'll ask the FAE assigned to your account get in contact with you.

    donna famularo said:
    QUESTION: I read online that it is a possibility that the "Can't modify read-only field" might be a firewall issue.
    Any thoughts on this? I am using an air-gapped, non-internet facing Network with the firewall "enabled".
    Are there any issues with the firewall being "enabled". Let me know and I will pass the info along to my IT department.

    Where did you see that?  Please point me to this info.

    AFAIK, the BIOS configuration step is not doing any kind of network operations, so I don't think this would be related to a firewall.  But, I still would like to have a look at where you saw this.

    Steve

  • Regarding the previous post I made, which involved manually applying the settings of your *tcf to a new one using the GUI ...

    An alternative approach would be to copy/paste the settings of your sdtestbsp.tcf file, one line at a time, into the *tcf file which you are able to successfully open in the GUI.

    The basic process would be:

    1. verify you can open the working *.tcf file in GCONF

    2. close that file in GCONF

    3. reopen the working *.tcf in a text editor

    4. copy a line/setting from sdtestbsp.tcf file and paste into the working *.tcf file (paste code *before* the call to prog.gen)

    5. save the working *.tcf file

    6. go to step 1.

    Repeating for all settings of the sdtestbsp.tcf file.

    This may be easier than the graphical method from the above post, but I would still recommend that you try the newer version of BIOS first, as this may resolve your issue.

    Steve

  • Steve,

    Look here for the firewall stuff.

    e2e.ti.com/.../637316

    --Donna

  • I downloaded bios_5_42_01_09 from the TI website and had the following error when trying to install:
    "Fatal Error" window : bad end of central directory record"
    The download gave me the file bios_setupwin32_5_42_01_09.exe.
    What now?
  • NEVER MIND. The download was corrupt. Tried again. Installation is good.
  • Ok, glad you got past that issue fairly easily.

    Also, I took a look at the firewall issue. Very interesting. I noticed that it seemed to be an issue with CCS creating a temp file. Now, since GCONF seems to create temp files, too, perhaps this is possible.

    But, given that you are able to successfully open other *.tcf files (i.e. the clk.tcf file we discussed in earlier posts), I would think that you would have had the same issue there, if the the firewall were the cause of this.

    Let's see what happens with the newer BIOS version.

    Steve
  • 0181.PIC_Konica15020415140.pdf

    WOO HOO - The upgrade to BIOS 5.42.01.09 was the trick - I can now open my TCF file -- BUT

    I get errors during linking - See attached.

    Pages 1-6: Console window

    Page 7: Problems window

    Page 8: Memory Section Manager inputs from the CCS V3.1 build of the project.

    PS: I never had a C6713.cmd file in my project before, now I do - where did it come from -- looks like I have to change it?

  • I'm wondering if that C6713.cmd file was autogenerated.

    Do you have another cmd file under the "Debug" or "Release" folder of your project?

    I think you should try deleting the C6713.cmd file, then cleaning and rebuilding your project.

    Also, it's strange that the linker errors you see are complaining about some memory segments that are not existent in your sdtestbsp.tcf file.

    Steve
  • 4774.PIC_Konica15020511240.pdf

    I deleted the C6713.cmd file from the project.  I cleaned and rebuilt the project.  The errors associated with the C6713.cmd file went away.  I now get errors associated with the sdtestbspcfg.cmd file.  This file is located in the "Debug" folder.

    I have attached the Console Window with the linking errors and the sdtestbspcfg.cmd file.

  • Donna,

    Can you please attach the actual cmd file? (i.e. not in pdf format)

    It's hard to see where those line numbers are in the *.cmd file as it's not in text format.

    Steve
  • See attached.

    I had to rename it (.cmd extension not allowed).

    8015.sdtestbspcfg.txt

  • Hi Donna,

    You can ignore that remark about ".printf".  Details on that can be found here.

    For the "no valid memory range(NULL) available for placement of .TSK_idle$stk":

    It seems like there may be a placement for TSK or IDL into "MEM_NULL".  I think you need to find this and select a valid memory segment.  If you right click on TSK or IDL and select "properties", do you see a placement into MEM_NULL?  If not, you might need to check properties of other modules until you find it.  I Googled around a bit and found this - please see this FAQ and this screen shot to help understand what I mean.  In fact, that FAQ page may provide some useful info for you as it's specifically about migrating from BIOS 4.x to BIOS 5.x (I would have pointed you to this before had I known about it).

    Steve

  • I modified sdtestbsp.tcf line 75 from "bios.TSK_idle.stackMemSeg = prog.get("MEM_NULL"); to "bios.TSK_idle.stackMemSeg = prog.get("IRAM");

    Now all I have left is Warning 10247-D and Info 10191-D

    See Attached.0003.PIC_Konica15020915340.pdf

  • Hi Donna,

    Can you try creating a brand new linker command file?  E.g. create a new file called "mylinkercmd.cmd"

    Then, edit the file, and add a SECTIONS specification to it:

    -l "sdtestbspcfg.cmd" // include the BIOS generated linker command file

    SECTIONS  {

        .preBoot:    {} > PREBOOT

    }

    For more info, please refer to this thread.

    Regarding the remark 10191-d for .printf, please refer to my previous post where I mentioned that.

    Steve

  • 1) In the thread, steps 1 and 2 are the files the same - because they have different names "myproj.cmd" and"myprojcfg.cmd" ?

    2) In what directory do I put this new file "mylinkercmd.cmd"?  With the sdtestbsp.cmd file or with the sdtestbspcfg.cmd file.

    3) So the new file would just have 4 lines in it as shown above?

  • donna famularo said:
    1) In the thread, steps 1 and 2 are the files the same - because they have different names "myproj.cmd" and"myprojcfg.cmd" ?

    You can name the new linker command file anything you like.  E.g. instead of "myproj.cmd" you can call it "abc.cmd".

    The "myprojcfg.cmd" file is generated based on the settings of your BIOS configuration file (i.e. in this case, your *.tcf file).  You can tell that it's generated by opening the file and looking at the comment/warning at the top.  It should say that it's a generated file and it shouldn't be modified.

    donna famularo said:
    2) In what directory do I put this new file "mylinkercmd.cmd"?  With the sdtestbsp.cmd file or with the sdtestbspcfg.cmd file.

    You should put it into the same directory as your project.  An easy way to do this is to drag and drop the new cmd file into your project (from Windows explorer).

    donna famularo said:
    3) So the new file would just have 4 lines in it as shown above?

    Yes.  The first line includes the generated cmd file, so you get all of the settings from that file, and then these additional settings that are specified below it

    Steve