Sign in

username or email:

password:



Not a member?
Forgot your password?

Search compdsp



Search tips

Ads

Discussion Groups

Free Online Books

See Also

Embedded SystemsFPGA

Discussion Groups | Comp.DSP | Problem with DAT_copy()

There are 2 messages in this thread.

You are currently looking at messages 1 to .


Is this discussion worth a thumbs up?

0

Problem with DAT_copy() - 2007-01-12 02:43:00

Hi all
       i am using TMS320C6413(500MHz).  The program have to transfer 24
lines pixels from SRAM(100MHz) each time, but the interval between the
lines is not fixed. so I need to call DAT_copy 24 times before
DAT_wait(). But there is a limit of DAT(someone name it block).  The
max number of channels DAT_copy can use is 4(Some told me). what do i
have to do?

______________________________
New DSP Code Snippets Section now Live.   Learn more about the reward program for contributors here.

Re: Problem with DAT_copy() - Brad Griffis - 2007-01-13 12:11:00



j...@mails.tsinghua.edu.cn wrote:
> Hi all
>        i am using TMS320C6413(500MHz).  The program have to transfer 24
> lines pixels from SRAM(100MHz) each time, but the interval between the
> lines is not fixed. so I need to call DAT_copy 24 times before
> DAT_wait(). But there is a limit of DAT(someone name it block).  The
> max number of channels DAT_copy can use is 4(Some told me). what do i
> have to do?
> 

When you use DAT_copy a QDMA event is being generated.  This gets queued
up in the transfer controller.  The FIFO in the transfer controller is
16 entries deep and there are registers that control how many events a
given requestor can submit.  Since the FIFO is only 16 deep there is no
way you could submit 24 entries.  That is, you'd stall after the 16th.
Plus I would not recommend configuring the device such that the QDMA can
submit that many events anyway because other events will get stalled
which might screw up the real-time behavior of your system.

A different (probably better) option would be to use EDMA to do these
transfers.  The EDMA has 64 channels.  Assuming you have 24 unused
channels you could set up these channels to do the transfers by
appropriately programming them in the Parameter RAM (PaRAM).  To kick
off the transfer you would simply have to write to the corresonding bits
of the Event Set Register (ESR) and your transfers would run.
______________________________
New DSP Code Snippets Section now Live.   Learn more about the reward program for contributors here.