• xilinx 除法ip核(divider) 不同模式结果和资源对比(VHDL&ISE)


    1.Radix-2模式:基数-2使用整数操作数的非恢复整数除法,允许生成分数或整数余数。对于小于16位的操作数宽度或需要高吞吐量的应用程序,建议使用。基数-2非恢复算法使用加减法求解每个周期的一点商。该设计是完全流水线的,可以实现每个时钟周期一分的吞吐量。如果所需的吞吐量较小,则每个时钟参数的分法允许降低吞吐量和资源使用。该算法自然会生成一个余数,对于需要整数余数或模数结果的应用程序的选择也是如此。

    Radix-2模式下:可以选择是余数还是分数;也可以选择是有符号位还是无符号位;几个时钟读一次数也可以选择;但是当选择余数类型时,不可以更改其位宽;如果是分数类型,可以改位宽(不可以是0);计算的时延也不可以更改。

     下面是该除法器ip核的资源占比情况:

     

    High Radix模式下:只能是分数类型,可以选择位宽(可以是0);只能是有符号类型(因此被除数和除数的位宽最好扩展一位);时延可以改为手动,就可以更改时延了,会根据设置计算位宽不同,有一个时延的范围(我一般设为最小的那个时延,但不知道有什么影响);会比Radix-2模式多出两个信号,ND(新数据输入使能),RFD(计算完成标志位)(在级联计算的时候,就可以很好的控制数据)。

     下面是该除法器ip核的资源占比情况:(可以看出当使用High Radix模式时,使用的dsp资源

    如果把分数部分位宽改为0,那么又会减少很多资源

     

     所以就是当要使用多个运算ip核,进行级联运算时,可以使用nd核rdy配合,就可以使用High Radix模式。

    还有就是分数的含义,他不是单纯的商的小数部分,计算公式如下:

    被除数=商X除数 + 余数(整数余数模式)

    分数部分 = (余数X(2的F次方))/ 除数  (无符号整数分数模式,F是分数的位宽)

    分数部分 = (余数X(2的F-1次方))/ 除数  (有符号整数分数模式,F是分数的位宽)

     

  • 相关阅读:
    [思考进阶]01 如何克服自己的无知?
    Android automotive车载开发(5)-----系统架构
    MWC 2024 | 广和通携手意法半导体发布智慧家居解决方案
    Java容器家族整理+源码分析图!
    vscode在docker镜像环境编程
    【Python爬虫】解析xpath——尚硅谷
    (一)Vue概述
    docker修改挂载目录
    apple pencil性价比高吗?高性价比的ipad手写笔推荐
    基于JavaWeb的校园故障报修系统(源码+数据脚本+论文+技术文档)
  • 原文地址:https://blog.csdn.net/qq_43811597/article/details/126747614