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.

CCS V6 - DSK6713 Help

I have been using the C6713DSK.  We were using CCS V2.02 until Windows XP was discontinued. 

Now we have to switch to a later version of CCS because of an operating system upgrade.  I cannot get the
audio_minimal example or any previous operating code working in CCS V5.5 or V6.  Here is the information:

Setup:
- Windows 7 Enterprise, 64 bit, Service Pack 1
- Code Composer Studio Version: 5.5.0.00077
  (similar result for Code Composer Studio Version: 6.0.1.00040 but
   all notes below refer to Version 5.5)
- TMS320C6713 DSK, 16 MEG DRAM, REV C

I followed the instructions on the page http://processors.wiki.ti.com/index.php/C6713DSK_in_CCSv5 to try and
get the project http://processors.wiki.ti.com/index.php/File:C6713_audio_minimal.zip running.


Case 1: using the C:\C6xCSL/{include,lib_3x} libraries/includes for bios and C:\DSK6713\c6000 for dsk6713 gave no errors on compile.  I received this error when trying to run:

MCBSP_open(int, unsigned int)() at csl_mcbsp.c:138 0x00000D28  (MCBSP_open does not contain frame information)   

Case 2: using the C:\DSK6713\c6000 (bios and dsk6713) includes/libraries gave no errors on compile.  Apparently the executable autoloaded when doing a run/debug.  When I ran the audio loop, the debug perspective showed it running, but I did not get any pass through from the board, i.e., the program did not appear to be running correctly.

I can share the entire project file in the attachment for Case 2 above. (despite the name testsine, it really is audio_minimal), but I don't see an option to attach files to this forum.

  • Iván,

    If you can attach the original and the migrated project to the thread that would be helpful to further investigate what may be happening. When replying, select the Rich Text editor and then click on one of the toolbar buttons named Insert/Edit media - yeah, I have no idea why there are two...

    Despite this, it is possible that we at the CCS forum may not be able to fully discover what is wrong. This is due to the fact that other software components such as DSP/BIOS may not be fully compatible with the original components used in the older CCS release. Another factor is due to changes in the generated binary, caused not only by an updated DSP/BIOS but also by the C6000 compiler - this can potentially change some factors such as timings to initialize a peripheral, wait for a sample, etc.

    With all this considered, another possible source of information for this may be the C67x single core device forum, since they have much more experience in the device peripherals.

    Regards,

    Rafael

  • Rafael,

    Thank you for your reply!  Here's the project under question.  Let us know if this gives any other hints/clues from the CCS side before moving over to the device itself.  Note that the device was running ok with the previous version of CCS...which could lead us to a component version issue, as you mentioned...testsine2015.zip

    Thanks!

  • I made some progress on this issue (with a suggestion from a tech at Spectrum Digital)
     
    I found on the internet how to create a target that has no project.  From that target
    I was able to connect to the C6713DSK and load an out file  
    (view/target, right click -> launch selected configuration).  I ran the pip_audio.out,  
    swi_audio.out, tsk_audio.out (from DSK6713 Demos) and all ran perfectly.  I then ran the out files from the  
    minimal_audio application that were created in V5.5 and V6 of CCS.  They both ran perfectly.
    So CCS is compiling correctly to a .out file, but the autoloading of the .out file when going
    to debug view is not working.  Here is the behavior (for V6 and V5):
     
    CCS V6:
    - Run Project/Build All and compiles with no errors
    - Select Run/Debug F11
    - On the first two tries the debug showed no 6713 board connected, then I noticed
      the LEDs on the board doing a POST.
    - going out of debug and back into it gave a c_int00 "The entry point was reached"
    - pressing the resume button didn't do anything, i.e., failure.  This is the behavior
      I have seen for the past week.
     
    However, at this point I could view my target, launch selected configuration, connect to board,
    and then load program, and then run.  The program ran perfectly.
     
    Conclusion, my auto loading of my program appears to be messed up.  I can get programs to run, but it is a longer process than it should be (the auto loading needs to be fixed)
     
    -------------------------------------------------------------------------------------------------
     
    CCS v5.5:
    - Run Project/Build All and compiles with no errors
    - Hit Run/Debug F11
    - Debug perspective comes up and debug window shows:
        c_int00() at boot.c:87 0x000014F8  (the entry point was reached)    
     
    - I hit resume and get:
    TMS320C6713: Error:   Memory Map Error: READ access by CPU to address 0x1b7c100, which is RESERVED in Hardware.   
     
    - I power cycled the board.
    - Hit Run/Debug F11
    - Debug window shows:
    c_int00() at boot.c:87 0x000014F8  (the entry point was reached)    
    - I hit resume and get same error
    TMS320C6713: Error:   Memory Map Error: READ access by CPU to address 0x1b7c100, which is RESERVED in Hardware.
    (Before I was getting no error, it just wouldn't run)
     
    I tried to launch .out through a target and was not successful this time (it worked with no problem before).  I am not sure what changed on this attempt to cause it to fail.

  • Was this issue ever resolved? I would like to see the answer to this ... in fact I would like to see more detail on c_int00() ...
  • We were able to compile, load, and run programs under CCS V6. I wrote 2 labs describing all of the steps and have included them below. Note that this year some students needed to alter the library/include paths to get this working, but I haven't investigated to verify this.

    Laboratory 0
    © 2016 by Bryan Usevitch (usevitch@utep.edu)
    In this lab you will become familiar with the C6713DSK, Code Composer Studio, and some of the lab equipment. As part of this lab you will compile an existing project and download and run it on the DSK.
    Board Check
    In order to have any hope of getting a project to run, the C6713DSK must be operating correctly. When power is provided to the board it performs a power on self check. This takes about 15 seconds, and at the end LEDs D0 – D3 will all blink and remain in an on state. Spectrum Digital, the manufacturers of the C6713DSK, provide a number of utilities and support software for their board. These resources are stored in the directory DSK6713 which has been placed in the location C:\ti on the computers in the lab. One useful utility is the program 6713DSKDiag.exe which check to see if all of the hardware on the C6713DSK is operating correctly. The program is located at C:\ti\DSK6713\drivers. This program is an old program and must be run in Windows XP mode. Right click on the icon and select Properties\Compatibility, and check the “Run this program in compatibility mode for Windows XP (Service Pack 3)”. Then click Apply (so it will use this mode when you run the diagnostic again) and then click Okay. Run the program as administrator (Right click and select Run as administrator). A “PASS” indicates that your C6713DSK hardware is in good working order. Caution 1: Code Composer Studio must not be running, or the diagnostic will show that the board fails (since it won’t be able to connect to it at the same time that CCS does). Caution 2: Once this diagnostic finishes, it locks the USB connection in a state where CCS cannot access the board. To get out of this state, pull the power cord, reapply it, and wait for the POST (power on self test). If you get an error in CCS “Cannot Initialize EVM” it may be because the USB was locked up by the self check.
    Run an Existing Binary File (.out)
    In order to give you hope that your program will run, we will download and run an already compiled, working program. In order to do this, CCS needs to know what type of target board you are connected to and how to communicate with it. Thus you will need to create a target in CCS. But first we need to start CCS.
    Double click on the CCS icon on your desktop. When CCS starts it will as you for a workspace. Create a new folder on your Z: drive (this will allow you to access it from any computer in the lab). You could call the folder “ee4356work” for example.
    After CCS starts up, select File\New\New Target Configuration. In the dialog box, select “testtarget.ccxml” as the file name, select the “Used shared location box”, and click Finish. If a new products dialog comes up, deselect all and select continue. The target will come up in the Eclipse editor. Under Basic\General Setup\Connection select “Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator”. Under “Board or Device” select DSK6713. Finally push the “Save” button to save the configuration.
    From the main menu select “View\Target Configurations”. A separate Target Configurations window will appear to the right of your workspace. Right click User Defined\testtarget.ccxml and select Launch Selected Configuration. This will put you into the Debug perspective of Eclipse. You can see this in the upper right corner of the Eclipse where the “CCS Debug” is now highlighted. Also note in the upper right Debug window that the DSK board is Disconnected (you may have to enlarge the window to see this). Now select Run\Connect Target. The Debug window now will show Suspended. Now select Run\Load\Load Program. On the dialog that opens, select Browse and go to C:\DSK6713\examples\dsk6713\bios\audio\Debug. Select the tsk_audio.out file. Finally, select Run\Resume (which is the same as F8, or the green button on the task bar).
    The tsk_audio.out is a simple pass through audio program. In order to know if it is working, you need to put a signal from the HP function generator into the Line In of the DSK. Use a bnc coax cable with a (mono) 0.125” plug to connect to the Line In. Then you need to take the Line Out from the DSK, connect it to the stereo cable (stereo 0.125” plug on one end, red and white RCA connectors on the other end). Add female RCA to female bnc plugs onto the red and white connectors and hook those to the Agilent oscilloscope. While the program is running, verify that you get a signal from the function generator onto the oscilloscope. Vary the amplitude and frequency of the sinusoid, and verify that oscilloscope output also changes.
    Some comments on the previous procedure. Executable files have a .out extension. While you are developing, CCS places your executable files in a Debug directory.
    Compiling Your Own Audio Pass Through Application
    Finally, we are now going to compile and run an existing project. The project is a simple pass through application. Locate the file C6713_audio_minimal.zip on the Z: drive (type \\eceserv2\Real Time Class into the start menu in order to access it). Right click on zip file and select Extract All. Extract it to your workspace folder z:\ ee4356work. Now inside of CCS, select Project\Import CCS Projects. Browse to z:\ee4356work\c6713_audio and select it and click Okay. It will take a few seconds to load the project. After CCS is finished, you will see the project c6713_audio in the Project Explorer Window on the top left of CCS.
    Usually at this point you need to go to Project\Options and properly set up all the options so that the code will compile correctly. However, this project already has these options set, and the lab computers have all of the library/include files in the correct directories so that compilation will be successful. Run Project\Build All. The project should build with no errors. At this point we would normally select Run\Debug. This would automatically load the c6713_audio.out from the Debug directory and allow us to run the program. Currently the auto loader is not working (we need to figure out the correct settings). So to run the program we will use the User Defined testtarget.ccxml from the previous section to run the C6713_audio.out. If you can’t see the Target Configurations window, select View\Target Configurations from the CCS menu. In the Target Configuration window, right click on testtarget.ccxml, and select Launch Selected Configuration. Do a Run\Connect Target, then a Run\Load\Load Program. Navigate to and select Z:\ee4356work\c6713_audio\Debug\c6713_audio.out. Click the Resume Button (F8) and the application should run.
    Congratulations
    Congratulations if you have successfully made it to this point. You have mastered most of the tedious steps required to get a project working. I will work on trying to get the Run\Debug (with autoloading of the *.out file) running so that it will be easier to run and test programs. There is one final thing that you need to do to run your own programs. You need to set up all of the compiler options. We will show how to do that in the next lab.

    Laboratory 0.5
    © 2016 by Bryan Usevitch (usevitch@utep.edu)
    In this lab we will extend what we did in Lab 0 to build an entire project from scratch. The main addition to what we did in Lab 0 is to set up all of the correct compiler options for the C6713DSK. When you start a new project you will go through all of the following steps to get the project settings set up correctly. Alternatively, if you have a working project, what you can do is just copy the project folder. Then you can replace the main and other C source files. When you copy the folder you also copy the CCS project file. This will keep the same settings as the previous project.
    Creating a New Project
    Double click on the CCS icon on your desktop. When CCS starts it will as you for a workspace. Select the Z:\ee4356work workspace (or whatever workspace you created) from Lab 0. When CCS loads, select Project\New Project. In the CCS Project window, select
    Target: DSK6713
    Connection: “Spectrum Digital DSK-EVM-eZdsp onboard USB Emulator”
    Check “Use default location” (Z:\ee4356work)
    Project Name: firstproject
    Keep other default settings
    Then click Finish.
    Now go out of CCS to Windows Explorer, and copy the two files “main.c” and “C6713.cmd” from Lab 0 (Z:\ee4356work\c6713_audio), and place them into the directory Z:\ee4356work\firstproject. Alternatively you can use Project\Addfiles to add these files to your project. The projects in CCS are folder based, so this will place these two files into the project “firstproject”.
    We will now set up the compiler and linker options. Since you can have multiple projects inside of CCS, make sure that the project “firstproject” is highlighted (and says “Active”) before you proceed to the next step. Go to Project\Options. When the Properties window opens, you should be in the General tab. Check to make sure that you have the correct Variant and Connection.
    Go to Build\C6000 Compiler\Processor Options and input 6700 for the Target processor version.
    Go to Build\C6000 Compiler\Optimization and select Optimization level 1.
    Go to Build\C6000 Compiler\Include Options and add the following directories to the #include search path
    "C:\TI\DSK6713\c6000\dsk6713\include"
    "C:\TI\C6xCSL\include"
    You do this by selecting the file with a green plus icon, and select the File System button, and then browse to the correct directory. You could also just type the directory path in so long as you have no errors (this is not a recommended method). Note that the two directories you just added contain .h files. These are needed so that the compiler knows how to compile the project. The actual executable code or precompiled libraries corresponding to these headers is added to the final executable at linking time.
    Go to Build\C6000 Compiler\Advanced\Predefined Symbols and add “CHIP_6713” to the Pre-define NAME (do not include the quotes).
    Go to Build\C6000 Compiler\Advanced\Runtime Model Options and set Data Access Model to Far (I am not sure but far aggregate should work as well).
    Now we must add the precompiled libraries so that the linker can build the final executable.
    Go to Build\C6000 Linker\File Search Path and add the following files to the Include library file:
    C:\ti\C6xCSL\lib_3x
    C:\ti\DSK6713\c6000\dsk6713\lib\dsk6713bsl.lib\
    Now select Project\Build all. The project should compile without errors. At this point we need to run the program. You can a target from Lab to load the file Z:\ee4356work\firstproject\Debug\firstproject.out and run it. What I found is that I could just select Run\Debug to switch to the debug screen. Then I just pushed the Resume button (Green right arrow/F8) and the program ran perfectly. I think the problem is that the audio pass through example was built with an earlier version of CCS. As a result the options screen comes up a little differently, and apparently the debug program loader also doesn’t work correctly. After you start the program put in a sinusoid to the DSK and view it on the oscilloscope to verify that the program is running correctly. Note that a mono input 0.125 input plug into the stereo line in will input the signal on both the left and right channels.
    Congratulations if you were able to get everything working. The next step is to run your own code instead of the simple audio pass through example. In the first labs we will start slowly by generating a sinusoid using 3 separate methods: polling, interrupts, and DMA (direct memory access).
  • Bryan,

    Thanks ... I appreciate your response. We can get stuff built and running but now we are trying to dig into replacement of some c files with an equivalent asm file. We then plan to profile it, but the definition / resolution of c_int00() is unclear ... BTW, say hello to Prof Cabrera for me.