Sign in

username:

password:



Not a member?

Search c6x



Search tips

Subscribe to c6x



c6x by Keywords

AD535 | BIOS | Booting | Bootloader | C621 | C6211 | C6415 | C671 | C6711 | C6711DSK | C6713 | CCS | Chassaing | COFF | DAT | DM64 | DM642 | DMA | DSK671 | DSK6711 | EDM | EDMA | EMIF | Emulator | EVM | EVM620 | FFT | FIR | GPIO | Halting | HPI | HWI | IDK | JTAG | LDB | LDH | LDW | Linker | LMS | LOG_printf | Matlab | McBSP | MEM_alloc | MIPS | PCI | PCM3003 | Pipeline | Profiling | QDM | Reset | ROM | RTDX | Sampling | SDRAM | Stack | TEB | THS1206 | TMS320C621 | TMS320C6416 | TMS320C6711 | TMS320C6713 | UART | Vector Table | XBUS | XDS560

Ads

Discussion Groups

See Also

Embedded SystemsFPGAElectronics

Discussion Groups | TMS320C6x | 6711 DSK FFT with RF3 HELP!!

Technical discussions about the TI C6000 DSPs (including the c62x, c64x and c67x DSPs).

  

Post a new Thread

6711 DSK FFT with RF3 HELP!! - joiedsp - Nov 13 15:20:00 2002

Hi all

We need to do some real-time processing trials using the DSK 6711. I
have got the RF3 reference, and the benchmark FFT. I am having major
problems getting the FFT working under the RF3 application.

It is probably because I do not yet know much about this sytem please
can anyone help with any questions below:

1- how do you specify a the constant section eg twiddle factors - and
also fix them in memory with the correct boundry?

2- Does anyone know of a real-time (256 or 512) FFT, filter, IFFT
implementation for the DSK - or something simmilar?

3- Even a reference use of EDMA with 256 sample buffer with straight
through that works would be helpful - we also have the doughterboard
stereo ADC/DAC - but I can't get the edma to work properly with this.

Thank you




______________________________
New Code Sharing Section now Live on DSPRelated.com. Learn about the Reward Program for Contributors here.



(You need to be a member of c6x -- send a blank email to c6x-subscribe@yahoogroups.com )

Re: 6711 DSK FFT with RF3 HELP!! - Vincent W - Nov 22 20:37:00 2002

Code attached

--- Vincent W <> wrote:
> Date: Fri, 22 Nov 2002 12:32:39 -0800 (PST)
> From: Vincent W <>
> Subject: Re: 6711 DSK FFT with RF3 HELP!!
> To:
>
> Hi joiedsp,
>
> Here are some pointers to assist you in your
> trials:
>
> 1- You can specify a constant section for twiddle
> factors by doing the following:
>
> In a .c file, use these pragmas to throw the array
> into a data memory section and align it on say,
> 32-bit
> boundary :
>
> #pragma DATA_SECTION(w, ".twiddle");
> #pragma DATA_ALIGN(w, 4); //align on 32-bit
> boundary
>
> ...
>
> #define FFTSIZE 4 //Length of FFT
> short w[FFTSIZE] = {0.1 0.2 0.3 0.4} ; // array of
> twiddle factors > The data section can then be assigned to any
> DSP/BIOS
> defined memory section in the link.cmd file.
>
> 2- If you haven't already done so, download the
> latest
> dsplib for c62x/c67x from TI's website (http://focus.ti.com/docs/tool/toolfolder.jhtml?PartNumber=SPRC091)
> along with its new documentation. Dsplib has
> functions
> that allow you to easily do common signal
> processing
> tasks (e.g. FFTs, autocorrelation, FIR, IIR, etc.).
> To
> show usage of dsplib functions in RF3, I have
> attached
> a zip file containing an thrAudioproc.c file from
> RF3
> which has been modified to do the following:
>
> input audio frame ----> | FFT | -> | IFFT | -> |
> some
> other time domain processing from the existing RF3
> |
> ----> output audio frame
>
> You may insert any frequency domain processing
> between
> the FFT and the IFFT operations.
>
> To make RF3 take an FFT of the whole audio frame,
> the
> FRAMELEN variable in appResources.h has been
> incremented to 128 instead of 80 so that the radix
> 2
> FFT can work properly. To this effect, you also
> need
> to change the PIP frame sizes in the app.cdb file
> to
> 64 words long. The files bitrev_index.c and
> tw_radix2.c (both taken from the dsplib) need to be
> included into the CCS project for RF3 for this
> example
> to work, as it tries to generate at run-time the
> twiddle factors and the indices for the bit
> reversal
> operation. To reduce code size later on you might
> want
> to obtain these values in advance and store them in
> static arrays.
>
> The 32-bit aligned twiddle factor arrays and the
> work
> buffer have been put into separate data sections at
> the top of the thrAudioproc.c file, using the
> pragmas
> DATA_SECTION and DATA_ALIGN. The file link.cmd has
> been updated to place these two sections into
> internal
> IRAM. Alternatively, you can also define your own
> memory sections using DSP/BIOS and place the
> .twiddle
> and/or .temp_buffer sections into those instead.
>
> You can find all modified RF3 files and added files
> in
> the attached zip file. Simply replace the
> corresponding files in the rf3 directories, and
> deposit the new files in
> \referenceframeworks\apps\rf3\dsk6x11
>
> 3- For an example of how the mcbsp (Multichannel
> bidirectional serial port) is used to drive the
> EDMA,
> take a look at \referenceframeworks\src\c6x1x_edma_mcbsp\c6x1x_edma_mcbsp.c.
> It is somewhat detailed but shows everything from
> submitting transfers to the edma ISR. It relies on
> the
> linking mechanism available on the EDMA device to
> queue up transfers.
>
> For help with stereo, take a look at \referenceframeworks\src\teb6416pcm3002\teb6416_edma_pcm3002.c
> which configures a stereo codec on the teb6416 to
> run
> with the mcbsp. It also uses the
> c6x1x_edma_mcbsp.l62
> library to set up the edma.
>
> Hope this helps!
>
> Best regards,
> Vincent > > --- In c6x@y..., "joiedsp" <joiedsp@y...> wrote:
> > > Hi all
> > >
> > > We need to do some real-time processing trials
> > using
> > the DSK 6711. I
> > > have got the RF3 reference, and the benchmark
> FFT.
> >
> > I am having major
> > > problems getting the FFT working under the RF3
> > application.
> > >
> > > It is probably because I do not yet know much
> > about
> > this sytem please
> > > can anyone help with any questions below:
> > >
> > > 1- how do you specify a the constant section eg
> > twiddle factors - and
> > > also fix them in memory with the correct
> boundry?
> > >
> > > 2- Does anyone know of a real-time (256 or 512)
> > FFT,
> > filter, IFFT
> > > implementation for the DSK - or something
> > simmilar?
> > >
> > > 3- Even a reference use of EDMA with 256 sample
> > buffer with straight
> > > through that works would be helpful - we also
> have
> > the doughterboard
> > > stereo ADC/DAC - but I can't get the edma to
> work
> > properly with this.
> > >
> > > Thank you
> >
> >
> >
> > __________________________________________________
> >
>
> > ATTACHMENT part 2 application/x-zip-compressed
> name=example.zip >


Attachment (not stored)
example.zip
Type: application/x-zip-compressed

______________________________
New Code Sharing Section now Live on DSPRelated.com. Learn about the Reward Program for Contributors here.



(You need to be a member of c6x -- send a blank email to c6x-subscribe@yahoogroups.com )