i m working with tms320c6713 dsk and ccsv2 emulator (available with dsk).
during building process error has been generated
"D:\temp\TI1392_4", ERROR! at line 1267: [E0800] Offset too large || LDBU .D2T2 *+B14(_rake_test_DWork+8),B0 ; |142|
error in source : assembler aborted
so, how to solve this?
plz help me
CCS 2.x is very old. With the on-board emulator of the DSK 6713, you can use CCSv5 for free, no license fee. Just wanted you to know, in case you would like to upgrade to something that is supported and that has more than a handful of people who have used it.
Break down the error message. It says an offset is too large. Look up the LDBU instruction in the CPU & Instruction Reference Guide and find out what the limitations are on offsets for that instruction. Then look at your code and see how the symbol rake_test_DWork could be related to a large offset, and even whether adding 8 would make it worse.
If you need more help, please reply back. If this answers the question, please click Verify Answer , below.
Search for answers, Ask a question, click Resolved when complete, Help others, Learn more.
In reply to RandyP:
thnks for reply
i have studied LDBU from Reference Guide. it has 15-bit offset.
one of line of my code is like follow
#pragma DATA_ALIGN (rake_test_DWork , 8)
with align 8 bytes.
i changed to minimum
#pragma DATA_ALIGN (rake_test_DWork , 1)
1 bytes instead of 8.
problem is: error: offset too large
LDBU .D2T2*+B14(_rake_test_DWork+8),B0; I142I
here 1byte(8 bit)+ 8 =16 bit happen and offset is 15- bit only
so, how to solve this problem
In reply to nikhil patel:
Why did you change the alignment to 1?
Which value in the LDBU instruction line do you think is the offset value that is being reported as too large? What is that value in hexidecimal?
i refer this "ucst15" which has 15 bits
That was not my question. My question was in reference to the LDBU instruction line that you referenced with the error message:
nikhil patelLDBU .D2T2*+B14(_rake_test_DWork+8),B0; I142I
What is the hexadecimal value of rake_test_DWork? This is what I was asking, but I wanted you to understand first what part of the instruction above was the offset part.
What is the size of the .bss section of memory?
What is the difference between rake_test_DWork and the start of the .bss section?
nikhil patel#pragma DATA_ALIGN (rake_test_DWork , 8)
Put this back to 8-byte alignment, if that is what your application requires. This has no relationship to the assembler error message.
nikhil patelhere 1byte(8 bit)+ 8 =16 bit happen
This equation has no meaning. The three different numbers are in different units. You are adding an addressing alignment value to a physical constant and equating that to the width of an addressing offset.
If you can answer my questions above, then you may find your solution. Please post your answers to my three questions and any new thoughts you may have on a solution.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.