This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6670中循环前缀寄存器参数问题?



在C6670中,FFTC_QUEUE_X_CYCLIC_PREFIX_REGISTER寄存器中的CYCLIC_PREFIX_ADDIYION和CYCLIC_PREFIX_REMOVE_OFFSET参数分别是什么意思?为什么这两个参数最大值之间是8倍关系?假入我做256点的FFT/IFFT,加CP数为32,是否CYCLIC_PREFIX_ADDIYION和CYCLIC_PREFIX_REMOVE_OFFSET都应设置为32?

  • 您好,

    1. CYCLIC_PREFIX_ADDIYION是控制添加循环前缀的参数,如果为0,则不加,否则添加相应点数的前缀;

    2. CYCLIC_PREFIX_REMOVE_OFFSET及参数CYCLIC_PREFIX_REMOVE_EN是用来控制如何删除循环前缀,具体可以参考如下图关于去除循环前缀时的参数定义。

    3. 按照你的应用例子,只需将参数CYCLIC_PREFIX_ADDIYION配置为32.

    具体参数含义请结合FFTC的寄存器描述及第二章FFTC功能描述进行学习。

  • 您好,

    在C6670FFTC加速器中,我会如何添加CP,但是不能去cp成功,对你说的那部分文档我反复看了很多次,感觉文档阐述还是很模糊,删除CP的 CYCLIC_PREFIX_REMOVE_OFFSET和CYCLIC_PREFIX_REMOVE_EN参数分别配为32和1,在多个block输出时(假如是3个block送入引擎),为什么进入FFT的中断服务程序后,在Fftc_rxResult()函数中,其resultlen这个参数的值始终为1个block的长度,而不是多个(3个)blocdk的值,这会导致后面出错。FFT结果也不正确。是否FFTC只能去一个block的CP?此外,对于去CP参数的设置是否完全,请帮忙检查一下并排除以上错误?谢谢!block

  • 您好,

    CYCLIC_PREFIX_REMOVE_OFFSET和CYCLIC_PREFIX_REMOVE_EN的配置参考上述答复的图,感觉根据你的测试其中CYCLIC_PREFIX_REMOVE_OFFSET应该配成0;关于你提到的block问题,在使能remove cyclic shift时确实只能支持1个block,参考文档关于Cyclic prefix removal一节最后的Note。