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.

Out-of-the-Box OpenMP Hello Wold Example crashes on EVM6678

Hi,

I just installed the latest CCS Version and MCSDK and tried the OMP "Hello World" example, just out of the box with Project->New-CCS->OMP Examples->C6678->Hello Word Example.

When I run the example on my EVM6678 Board, it crashes just after running all cores.

Previous versions version where fine at this point.

I use CCS Version 5.3.0.00090.
mcsdk_2_01_02_05
cgt 7.4.1
opm runtime 1.1.3.02

Any ideas ?

best regards

Alois

==========================================================================

Console Message

[C66xx_0] A0=0x0 A1=0x30ffff5f
A2=0x0 A3=0x1a
A4=0x1a818c60 A5=0x900000b8
A6=0xc0389b4 A7=0x0
A8=0x0 A9=0x4
A10=0x2 A11=0xa0194a84
A12=0x3632e24 A13=0xc038994
A14=0x900000b8 A15=0x0
A16=0x900000b8 A17=0x0
A18=0x90000078 A19=0x40
A20=0x100 A21=0xac300120
A22=0x451a204c A23=0x11002080
A24=0xc0020100 A25=0xac4001c8
A26=0x8800090 A27=0x884400
A28=0x200400 A29=0xc0374b0
A30=0x2 A31=0xa019205c
B0=0x1 B1=0x1
B2=0x0 B3=0xc028a50
B4=0x900000b8 B5=0xc038994
B6=0x0 B7=0x1
B8=0x0 B9=0x0
B10=0x90000020 B11=0x0
B12=0x1 B13=0xc02a924
B14=0xa0194878 B15=0x828eb8
B16=0x0 B17=0x829018
B18=0xff B19=0x20
B20=0x20 B21=0x748f20
B22=0x8616191 B23=0x9830
B24=0x98302059 B25=0xc930c0
B26=0x1294421 B27=0x70010840
B28=0x48a92082 B29=0x0
B30=0x21 B31=0x0
NTSR=0x1800f
ITSR=0xf
IRP=0xc02dd68
SSR=0x0
AMR=0x0
RILC=0x0
ILC=0x0
Exception at 0xc0389cc
EFR=0x2 NRP=0xc0389cc
Internal exception: IERR=0x10
Resource conflict exception
ti.sysbios.family.c64p.Exception: line 248: E_exceptionMin: pc = 0x0c0389cc, sp = 0x00828eb8.
To see more exception detail, use ROV or set 'ti.sysbios.family.c64p.Exception.enablePrint = true;'
xdc.runtime.Error.raise: terminating execution

The number of OMP cores in the.cfg file ist set to 8. So I have connect all 8 cores.

var OpenMP = xdc.useModule('ti.omp.utils.OpenMP');
OpenMP.setNumProcessors(8);

  • Alois,

    Are you connecting to all 8 cores within CCS? Newer versions of the OpenMP runtime support an auto download feature - you only need to connect to core 0 and load/run - the OMP runtime will start up the other cores. You can disable auto download by setting OpenMP.autoDnldCore = false; in your configuration file.

    You may find this wiki page useful - http://processors.wiki.ti.com/index.php/OpenMP_on_C6000

    Ajay

  • Hi Ajay,

    thank you for the hint regarding OpenMP.autoDnldCore and wiki page. This is very usefull information.

    Unfortunately in my case OpenMP.autoDnldCore = false did not change anything.

    I still receive the 'Internal Resource Exception' on Core 0. It happens immediately after all other cores have been started. Same for 4 Core or 8 Core configuration.

    Any ideas ? Post

    The same image runs fine with the C6678 functional simulator.

    [TMS320C66x_0] Hello World from thread = 0
    [TMS320C66x_1] Hello World from thread = 1
    [TMS320C66x_2] Hello World from thread = 2
    [TMS320C66x_3] Hello World from thread = 3
    [TMS320C66x_0] Number of threads = 4


    regards

    Alois

  • Hi Ajay,

    in the meantime I found the solution.

    Actually there is a known issue with CGT version 7.4.1 and higher for OpenMP. The answers had been given by Yogesh Siraswar, see

    http://e2e.ti.com/support/embedded/bios/f/355/p/219843/800989.aspx#800989

    I verified that OpenMP examples need Code Generation Tools Version 7.4.0 to run successfully.

    best regards

    Alois