Section discontinuity issues (ADS or Tasking software)

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager

#TC39XB Description of the problem:

The section I set is a const type,

1. Set up a section, then add objects to this section,

#define XXX_INFO __attribute__ (used, protect)) __attribute__ (section (" info_table "))) const struct_info

Changes in the link script:

# if LCF_DEFAULT_HOST == LCF_CPU0

group (ordered, run_addr=mem:pfls0)

# endif

{

select " .text.fast.pfls.cpu0 ";

select " .text.slow.pfls.cpu0 ";

select " .text.5ms.pfls.cp0 ";

select " .text.10ms.pfls.cp0 ";

select " .text.callout.pfls.cpu0 ";

select " (.text|.text.*) ";

select " info_table ";

}

There are multiple object instances in the program, then _lc_ub_driver_table and _lc_ue_driver_table are used to obtain addresses;

As a result, these two quantities can only frame the range of the first member object;

2. If you modify the linked file, put the section in a separate group

# if LCF_DEFAULT_HOST == LCF_CPU0

group (ordered, run_addr=mem:pfls0)

# endif

{

select " driver_table ";

}

There are multiple object instances in the program, then _lc_gb_driver_table and _lc_ge_driver_table are used to obtain addresses; the range is normal at this point;

However, when there are multiple sections in my program, all stored according to this method, the contents of the sections will be interlaced, and the addresses may not be continuous, and they may be mixed with other parts of the code;

Questions:

1. Why isn't the section organized according to standard grammar? What about inconsistent performance in different situations?

2. Does it have anything to do with my storage in Flash?

3. Is there an introduction to the syntax of lsl link files?

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/TRAVEO-T2G/section%E4%B8%8D%E8%BF%9E%E7%BB%AD%E9%97%AE%E9%A2%98-ADS%E6%88%96%E8%80%85tasking%E8%BD%AF%E4%BB%B6/td-p/680108

0 Likes
5 Replies
Translation_Bot
Community Manager
Community Manager
Community Manager

I just ran into a similar problem. I hope the gods can help answer it!

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/TRAVEO-T2G/section%E4%B8%8D%E8%BF%9E%E7%BB%AD%E9%97%AE%E9%A2%98-ADS%E6%88%96%E8%80%85tasking%E8%BD%AF%E4%BB%B6/m-p/680399

0 Likes
Translation_Bot
Community Manager
Community Manager
Community Manager

Have you solved the problem, can you tell me The solution to this problem

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/TRAVEO-T2G/section%E4%B8%8D%E8%BF%9E%E7%BB%AD%E9%97%AE%E9%A2%98-ADS%E6%88%96%E8%80%85tasking%E8%BD%AF%E4%BB%B6/m-p/680409

0 Likes
Translation_Bot
Community Manager
Community Manager
Community Manager

Hi @yuanyong_sc,

1) To be honest, I don't really understand your problem. Can you explain your requirements based on any iLLD project as an example.

2) For the syntax of Linker files, you can refer to this document.

BR,

Jeremy

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/TRAVEO-T2G/section%E4%B8%8D%E8%BF%9E%E7%BB%AD%E9%97%AE%E9%A2%98-ADS%E6%88%96%E8%80%85tasking%E8%BD%AF%E4%BB%B6/m-p/680630

0 Likes
lock attach
Attachments are accessible only for community members.
Translation_Bot
Community Manager
Community Manager
Community Manager

Hello, it's actually the C language annotation section syntax. In fact, I assigned multiple section sections, and as a result, not all of the section contents were continuous; since I used the const type, some sections were interlaced with parts of the firmware program functions.

I'll take another look at your lsl file explanation for this question;

 

Also, is there any method for debugging the TC39xB using Tasking+MiniWinger. Now that my environment is installed, clicking Debugging will prompt Loading Failed: Flash Programming Failed because resetting the target failed.

How do I choose a tool to download and debug? There is no detailed explanation in this section of the documentation; the attachment is a simple demo project with configuration;

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/TRAVEO-T2G/section%E4%B8%8D%E8%BF%9E%E7%BB%AD%E9%97%AE%E9%A2%98-ADS%E6%88%96%E8%80%85tasking%E8%BD%AF%E4%BB%B6/m-p/680670

0 Likes
Translation_Bot
Community Manager
Community Manager
Community Manager

The DAS server should not have been opened before, but after scanning the device using DAS Device Scanner, TriCore-Family, an error occurred during debugging:

Error creating session The debug instrument IO could not be initialized. The GDI debug instrument provided the following error message. Could not start server!

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/TRAVEO-T2G/section%E4%B8%8D%E8%BF%9E%E7%BB%AD%E9%97%AE%E9%A2%98-ADS%E6%88%96%E8%80%85tasking%E8%BD%AF%E4%BB%B6/m-p/681112

0 Likes