Cypress Perform

Home > Design Support > Cypress Developer CommunityTM > Cypress Forums > PSoC® Software > Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

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



Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?
Moderator:
JFMD

Post Reply
Follow this topic



Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

porcine_aviator posted on 04 Aug 2012 6:23 PM PST
Top Contributor
58 Forum Posts

Hi again folks. In my novice naivete I've led myself to believe that a looping/cyclic chain DMA will issue a "done" flag once it hits the end of the last burst of the last TD. But, this doesn't ever seem to happen...it seems my DMA loops without ever issuing a "done" flag. Is this the correct behavior, or am I missing something? I'd really like to be able to keep tabs on the status of the DMA this way. Thanks all.




Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

Bob Marlowe posted on 05 Aug 2012 04:46 AM PST
Top Contributor
1768 Forum Posts

I'm afraid that your question already defines the answere: where is the end of a circle?
Since there is no defined end for your td-chain, you might think about to count the DMA-requests to generate a stop-condition.

 

Bob



Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

porcine_aviator posted on 05 Aug 2012 01:51 PM PST
Top Contributor
58 Forum Posts

Bob: thanks for the answer. I was afraid that would be the case. I thought maybe the transition from the last Td back to TD0 would count as a valid waypoint but I guess not.

The trouble with counting is I can only do that if I use the CPU to manually call the DMA, and I'd really rather not do that. I've been looking for ways around the fanout = 1 and only one on the ADC EOC line in PSoC5 silicon. This is a frustrating limitation...but fortunately, I'm told Cypress is working on new PSoC5 silicon to be released late this year that doesn't suffer this limitation.



Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

danaaknight posted on 05 Aug 2012 02:12 PM PST
Top Contributor
1773 Forum Posts


Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

Bob Marlowe posted on 05 Aug 2012 02:15 PM PST
Top Contributor
1768 Forum Posts

You can start two DMAs, your DMA and one dummy started with every EOC transfering a byyte from mem to mem or so. This dummy DMA you can count (with a counter or LUT) and when terminal count is reached an interrupt can be generated. I'd try and it worked.

 

Bob



Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

danaaknight posted on 05 Aug 2012 02:16 PM PST
Top Contributor
1773 Forum Posts

One of these days I will learn you cannot post a word based clipboard. Notepad rules

on this site.

 

If you were dma-ing an address range, source and destination, clearly the last address

constitutes end of chain. That could be detected by flag-on-read of that address,

Verliog solution ?

 


@PA, I am curious, EOC fanout limitation, would not a simple buffer element fix that ?

Or is this an object description problem in the tool ?

 

Regards, Dana.



Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

Bob Marlowe posted on 05 Aug 2012 02:20 PM PST
Top Contributor
1768 Forum Posts

It is not really a fan-out restriction, but the EOC-signal in PSoC 5 may be connected only to DMA or ISR.

Bob



Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

porcine_aviator posted on 07 Aug 2012 04:16 PM PST
Top Contributor
58 Forum Posts

Bob:

Tell me how you would do this with the dummy DMA if I can't connect 2 DMA's on the EOC terminal. I do not want to use an interrupt to call the DMA either. If I chain 2 DMAs end to end, I'm not sure how it would work either: a cyclic first DMA would not trigger the "done" terminal, and a once-through DMA requires the CPU to re-up after every cycle. Again, my goal is to keep the CPU out of this if at all possible.

Dana: How does one check this flag you mentioned without invoking the CPU?



Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

danaaknight posted on 07 Aug 2012 05:01 PM PST
Top Contributor
1773 Forum Posts

What I am suggesting is that a verilog solution could detect a write or a read

at a specific memory location. Thats an address comparator qualified by a read

strobe. Already the address registers and R/W control logic exist, use Verilog to

buss the data for detection in another piece of HW.

 

Regards, Dana.

 

 



Re: Another dumb question...does a cyclic DMA chain ever generate a flag at the DNR output?

porcine_aviator posted on 09 Aug 2012 04:35 PM PST
Top Contributor
58 Forum Posts

Dana: that sounds like a really good approach. Where can I find the information on the address bus control logic (specifically bus S)? I know there's a TRM for the PSoC 5 registers, but I'm not sure where to look for the other stuff. Thanks for the reply.






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.

Spec No: None; Sunset Owner: GRAA; Secondary Owner: RAIK; Sunset Date: 01/01/20