在哪里可以获得使用硬件加速器中复数乘法块的参考/测试代码?
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.
在哪里可以获得使用硬件加速器中复数乘法块的参考/测试代码?
您好、Atharva、
您是否参考了本指南: https://www.ti.com/solution/hardware-accelerator 。 您使用的是什么处理器?
谢谢、
~Leonard
尊敬的 Atharva:
使用 HWA 可以执行复数乘法。 详情如下:
HWA 用户指南分为 两部分:雷达硬件加速器-第1部分 和 雷达硬件加速器-第2部分。 第2部分1.1.2复数乘法详细说明了如何实现这一点。
一个向量应加载到 HWA 存储器组中的一个、M0、...、M3、另一个向量必须加载到 HWA RAM 存储器中。 然后、您可以在 FFT 模式下执行 HWA 参数集、但在预处理块中禁用 FFT 并启用复数乘法。
例如,如果要将向量 x[i]与向量 y[i]相乘,则将 x[i]加载到 M0内存库中,向量 y[i]加载到内部 RAM 中,并直接输出到内存 M1以获取产品 z[i]=x[i]*y[i]*1/2^21。 您还可以在输出统计数据块中进行求和以获取点积。 。
选择矢量乘法模式、CMULT_MODE=6或7
矢量乘法模式1:如果寄存器值为 CMULT_MODE = 110b、则复数乘法器在矢量乘法模式1中起作用。 此模式的目的是启用两个复数向量的按元素乘法、以及点积功能(使用统计数据块将按元素乘法输出相加)。 输入格式器块的样本构成两个向量中的一个、而另一个向量是从内核计算单元内预加载的内部 RAM 中获取的。 (该内部 RAM 是 FFT 块在执行1024点 FFT 计算时通常使用的 RAM)。 这个内部 RAM 可存储512个复数样本、因此矢量乘法最多可支持512个乘法元素。 向量乘法不是一个高度并行化的操作、从这个意义上讲、每200MHz 时钟周期只执行一个复数乘法。
矢量乘法模式2:如果寄存器值为 CMULT_MODE = 111b、则复数乘法器在矢量乘法模式2下运行、这与之前的模式略有不同。 在这种情况下、唯一的区别是每次迭代结束时、内部 RAM 的寻址不会复位、因此对于下一次迭代、 从内部 RAM 中提取的样本具有一个地址、该地址从上次迭代结束时它离开的位置继续。 当一组给定的输入样本需要按元件乘以多个向量时、可使用此模式。 在这种情况下、可以将输入格式器块配置为重复同一组样本进行多次迭代、并且可以使用所有向量加载内部 RAM、以便在连续迭代中将输入样本与连续向量相乘。
数据需要采用 Q20格式、最大幅值为1
此致、
Sudharshan K N