Hi Guys,
Greetings. I have several questions about EVE, which are basics.
- When I use FFT processing, I see, that WBUF is switched to System, than to EVE and than back to ARP32. But when I malloc this buffer on ARP32, first step isn't necessary?! Then I want to ask, when I pass the FFT-function an input and output pointer on WBUF, why I need these switching?
VCOP_BUF_SWITCH_SET(WBUF_SYST, IBUFHB_SYST, IBUFLB_SYST,
IBUFHA_SYST, IBUFLA_SYST);
vcop_fft_512_32inter_stage_1_init(pInput, pScratchWBUF, pScratchWBUF16_lo, pScratchWBUF16_hi, pScratchH, pScratchH16_lo, pScratchH16_hi, pOutput, pTwiddleFactor, pitch, scale, numOfLines, __pblock_vcop_fft_512_32inter_stage_1);VCOP_BUF_SWITCH_SET(WBUF_VCOP, IBUFHB_VCOP, IBUFLB_VCOP,
IBUFHA_VCOP, IBUFLA_VCOP);
vcop_fft_512_32inter_stage_1_vloops(__pblock_vcop_fft_512_32inter_stage_1);_vcop_vloop_done();
VCOP_BUF_SWITCH_SET(WBUF_SYST, IBUFHB_SYST, IBUFLB_SYST,
IBUFHA_SYST, IBUFLA_SYST); - Will be allocate this Working buffer in main memory, which is used by ARP32 and VCOP?
- On FFT function with 16 bit input and 16 bit output is the opportunity to pass a scale factor. When I look in .vcop_fft_512_16ix16o_32inter_kernel.k, I see that scaling is executed by rounding with this scaling factor. I don't understand, how you realize a scaling with rounding?
- FFT functions on EVE have always 16-bit input. Is it possible to pass an 32-bit input? Input and output work on WBUF. Since 32-bit output is on WBUF possible, should 16-bit input also possible?
Thank you in advance for the support.
Regards,
Lukas