• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Digital Signal Processors (DSP) » C6000 Single Core DSP » C67x Single Core DSP Forum » [C6726] genAISfile problem
Share
C6000 Single Core DSP
  • Forums
  • Announcements
Options
  • Subscribe via RSS

Forums

[C6726] genAISfile problem

This question is not answered
dan kantorski
Posted by dan kantorski
on Jun 08 2009 17:52 PM
Intellectual835 points

I have several functions now coded in my source file and I have started generating an error in the genAISfile application.  The error is:

"Not Enough memory on current page for pin config, retrying (in cleanup) can't call method destroy on an undefined value at ccs....CoffFile.pm on line 289 during global destruction."

My command line is:

genAis.pl -i DSP.out -o DSPAIS.asm -bootmode tisecboot -pgsize 0x4000 -otype asm -pf 16 -cfg bootdan.cfg

Any idea of the my error?

Thanks in advance.

Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • tlee
    Posted by tlee
    on May 07 2010 15:36 PM
    Mastermind22740 points

    Dan,

    I just noticed that this is a fairly old topic with no replies.  Are you still experiencing problems?

    -Tommy

    ----------------------------------------------------------------------------------------------------------
    Please click the Verify Answer button on this post if it answers your question.
    ----------------------------------------------------------------------------------------------------------

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • dan kantorski
    Posted by dan kantorski
    on May 07 2010 16:38 PM
    Intellectual835 points

    Tommy,

    Thank you for the reply, I must say, I am not experiencing this problem at the moment, but it is something I still see every once in a while.  To resolve, I basically need to look at the code and rewrite it a little differently.  I have not figured out exactly what causes it, but I can recover.  Do you have any suggestions regarding this?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • tlee
    Posted by tlee
    on May 07 2010 16:43 PM
    Mastermind22740 points

    Dan,

    Which device is this for?

    -Tommy

    ----------------------------------------------------------------------------------------------------------
    Please click the Verify Answer button on this post if it answers your question.
    ----------------------------------------------------------------------------------------------------------

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • dan kantorski
    Posted by dan kantorski
    on May 10 2010 08:58 AM
    Intellectual835 points

    C6726 processor.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • dan kantorski
    Posted by dan kantorski
    on Oct 20 2010 12:01 PM
    Intellectual835 points

    I have seen this problem again, I cannot explain what is going on, but I do know how to fix it now.  It seems that in the GenAis process that if a section of code is split at a gpio pin boundry this error may pop up.  I basically added some dummy code to increase the overall code size and then the error will go away.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • dan kantorski
    Posted by dan kantorski
    on Mar 09 2012 17:14 PM
    Intellectual835 points

    Well, this problem has occurred again.  It has taken a long time to figure it out, but I have discovered more information on the issue.

    This is the GenAIS.ASM output when the error occurs:

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;; Requesting CRC
    ;;;   Current CRC For This Section: 0xACFA328F
    ;;;   Number bytes to copy: 0x00002124
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
        .word 0x58535902        ;Flash Address 0x90003FC0
        .word 0xACFA328F        ;Flash Address 0x90003FC4
        .word 0xFFFFDEC4        ;Flash Address 0x90003FC8
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;   Loading Section: .data
    ;;;   Current FLASH Address: 0x90003FCC
    ;;;   Section Size in Bytes: 0x000002A8
    ;;;   Section Type: 0x00000040
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;   PAGE 1, Current Page 0
    ;;;   Byte Count : 0x0000428C
    ;;;   Section Size in Bytes: 0x000002A8
    ;;;   Pin Cfg Size in bytes: 0x0000002C
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;   PAGE 1, Current Page 0
    ;;;   Byte Count : 0x00003FE4
    ;;;   Section Size in Bytes: 0x000002A8
    ;;;   Total Pin Cfg Size Needed: 0x0000002C
    ;;;   Pin Cfg Size For Next Page: 0x0000002C
    ;;;   Remainder on this page: 0x0000001C
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    So there is an error in the scripting system that it cannot recover from. 

    So it is a sectioning problem, when the script generator chooses a chunk of code where the length pushes it near the limit, there is not enough space at the end of the page to issue the commands to switch to the next GPIO pin.  The scripting cannot recover from this issue.  The script should be more aware of the required space.  I have not programed in perl yet else I would take care of it myself.   So my previous answer is a work around but not a fix.  I was not able to get around it this time.

    I do have another work around, this time I eliminated the CRC generation using the -crc 0 switch.  I do not know if this is a sure fix for all instances, but it did allow me to generate the needed code.  I did try the -crc 2, which generates a single crc at the end of the file, but this was incompatible with the modes I selected??

    This now leaves me with some questions based on this workaround.  What exactly is the CRC function doing?  I am sure it is verifying that the eeprom to core transfer is loaded correctly?  If it was enabled and failed, does it attempt to reload the section or the page?  Do I have to worry about program load stability now that I am not using the function?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

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.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use