• 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) » OMAP™ Processors » OMAP35x Processors Forum » (Dsplink) DSP CMEM buffer processing
Share
OMAP™ Processors
  • Forums
  • Announcements
Options
  • Subscribe via RSS
Resources
  • OMAP-L1x DSP+ARM9™-based Processors Product Folder
  • OMAP3525/30 DSP+ARM Cortex™-A8-based SOCs Product Folder

  • Top OMAPL Wiki Links
  • OMAPL3x Schematic Review Checklist
  • OMAPL13x Boot resources

  • OMAPL Document Resources
  • OMAPL137 Technical reference manual
  • OMAPL138 Technical reference manual
  • OMAPL Boot loader App Notes
  • (Dsplink) DSP CMEM buffer processing

    (Dsplink) DSP CMEM buffer processing

    This question is answered
    inanc dogru
    Posted by inanc dogru
    on Jul 19 2012 13:22 PM
    Intellectual260 points

    Hello everyone,

    I already posted at http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/99/t/5771.aspx#98164 which is a bit outdated. Here I wanted to start a thread about the same problem.

    I am using dsplink_1_65_01_05_eng on DM3730, and trying to run an algorithm on DSP using data of buffers allocated with CMEM on ARM. Problem is: DSP algorithm turns out to be extremely slow when run on DSP, even performing buffer copy operation is very slow.

    What I did:

    - On the ARM side, I allocated my buffers using CMEM with either type POOL or HEAP, with flag CACHED and with alignment 4096 0r 128.

    - I configured the DSP side **.tci file for the CMEM region of my physical DDR. I also set the MAR register for the whole DDR (DSP cache enable).

    - I configured the ARM side **.c configuration file by adding a CMEM entry in the LINKCFG_memTable_00 array.

    - When my ARM code runs, it passes pointers of input and output CMEM buffers to DSP code. Then DSP code processes the input buffers and writes the result into the output buffers. When it is done ARM code reads the output buffers.

    - Both codes run successfully except the DSP code being very slow.

    What could be the reason of DSP code running very inefficient?

    Thank you for any suggestions!

    DSP ARM dsplink contiguous cache CMEM
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    All Replies
    • inanc dogru
      Posted by inanc dogru
      on Jul 20 2012 05:00 AM
      Verified Answer
      Verified by inanc dogru
      Intellectual260 points

      I've finally found the reason, there is nothing wrong about what I wrote above.

      The problem was the way I was generating the DSP executable. Anyway, it is fixed now.

      Sorry for bothering you.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Alex Gebala
      Posted by Alex Gebala
      on Aug 02 2012 22:16 PM
      Prodigy10 points

      I am experiencing the same problem.  What ended up being the problem with how you were generating the DSP executable?

      Thanks.

      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