在RFSOC的控制模块中,设计线性调频模块时,需要设置调频系数:
带宽是外部设置输入的,因此需要用到除法,
写好除法公式后,能生成bit流文件,但是生成后的Implementation部分有Total Negative Slack (TNS) 为负数,查了一下是时序违规,
打开Timing Report,时序报告中显示从pulse_width_reg[0][4]到step_LMF_reg[0],注意这里一定要找到这个起点和终点对应的路径,这样才能找到对应的有问题的代码,这个对应的代码是:
step_LMF< = (83886)/(pulse_width[0]);
phase_offaet[0] <= phase_offaet[0] - step_LMF;
把除法修改成其他的符号才没有了报错,还是老实使用PL端进行计算吧
除法(尤其是整数除法)在硬件设计中通常非常耗时,因为它涉及多个时钟周期才能完成。相比于加法和移位等操作,除法逻辑更加复杂,可能会导致较大的逻辑延迟和路径时序问题。一般都不使用除法