Cypress Perform

Home > Design Support > Cypress Developer CommunityTM > Cypress Forums > USB Controllers > Dealing with transitory Synchronous Slave FIFO Overruns

Bookmark and Share
Cypress Developer CommunityTM
Forums | Videos | Blogs | Training | Rewards Program | Community Components



Dealing with transitory Synchronous Slave FIFO Overruns
Moderator:
RSKV

Post Reply
Follow this topic



Dealing with transitory Synchronous Slave FIFO Overruns

Mpls_Bob posted on 13 Mar 2012 6:21 AM PST
Member
5 Forum Posts

 

What would be a reasonable way to detect transitory buffer overruns without using external hardware configured as a synchronous slave FIFO connected directly to an external imager?.
 
I would like to interface an external imager to the FX3 without any external hardware. The general timings of the imager satisfies the interface requirements of the synchronous slave FIFO configuration.   
 
I can configure the size of the ram buffers to be evenly divisible the imager line size ensuring the transition between buffers only occurs during line idle time.  However, I need to handle the error case where all of the buffers are full when the imager begins to write the next line into the buffer. The occurrence of FIFO FULL, WRN, and CLK may be transitory. The worst case for detection would be a one CLK overlap between the FIFO FULL flag and WRN.
 
I can add external hardware to detect this case if necessary. However, it would seem reasonable that the FX3 would have the ability to detect this occurrence or deal with the situation w/o requiring external hardware. Is there a way to detect this error occurrence using only the facilities of the FX3?
 
Thanks,
Bob



Re: Dealing with transitory Synchronous Slave FIFO Overruns

aasi posted on 15 Mar 2012 04:44 AM PST
Cypress Employee
1073 Forum Posts

You should be able to use DMA_RDY_CT i.e. this signal says whether the DMA is ready to receive or send data. If a transfer is tried when it is not true i.e. the DMA is not ready you can use that to find out the overflow, underflow condition.

Regards,

Anand



Re: Dealing with transitory Synchronous Slave FIFO Overruns

Mpls_Bob posted on 22 Mar 2012 01:10 PM PST
Member
5 Forum Posts

I cannot find the symbol DMA_RDY_CT. I searched all the .c and .h files within the directory where I installed the Cypress SDK and didn't find it.

The condition of the FIFO FULL and my attempting to write into the buffer may only occur very briefly on the interface. Will this flag latch that occurrance? IE: will it remain TRUE after the physical occurrence has gone away?

Can I use this occurrance to generate an interrupt?

Bob

 

 



Re: Dealing with transitory Synchronous Slave FIFO Overruns

Mpls_Bob posted on 27 Mar 2012 05:49 AM PST
Member
5 Forum Posts

This answer was verified unintentionally. I have opened a tech support case to elevate this issue.

 






ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". CYPRESS SEMICONDUCTOR AND ITS RESPECTIVE SUPPLIERS 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. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY CYPRESS SEMICONDUCTOR. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM CYPRESS SEMICONDUCTOR.

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 and Conditions of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms and Conditions of this site. Cypress Semiconductor and its suppliers 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.