zoukankan      html  css  js  c++  java
  • 利用Xilinx的cordic ip做开方运算

    Xilinx的 CODRIC IP利用的coordic算法,可以求三角函数和开方运算。

      进行开方运算时,需要注意输入和输出位数的问题:

    1)输入为整数的情况:(如2321)

      INPUT :  24bit 整数

      OUTPUT :  24bit开方后,整数值占输入总位数的一半加1    等于 13bit,即[23:11] ; 小数值占 11bit,即 [10:0]。

      如: input  i_value = 97 ;

         output  o_sqrt_bvalue[10:0] 为小数部分,    o_sqrt_bvalue[23:11] 为整数部分。

    2)输入为整数+小数的情况:(如23.75  ----->  10111.11 )

      input :  24bit =  整数位数 +  小数位数

      output : 开方后,整数值占输入总位数的一半 加1  即 整数位数/2+ 1, 占输出的高位。小数占剩下的位置。

      如: 输入位为  23.75  ----->  10111.11   小数为占两位,  整数位为 (24-2)/2 + 1  = 12 bit

        即 输出:  o_sqrt_bvalue[11:0] 为小数部分,    o_sqrt_bvalue[23:12] 为整数部分。

          sqrt_int =  o_sqrt_bvalue[23:12]  = b 0100 ;

          sqrt_decmail =   o_sqrt_bvalue[11:0]  = b 110111111001

     

     

     

        通过和计算器求得结果比较,误差在0.0001之内,还是比较准确的。不过crodic算法会延迟10个cycle输出。

  • 相关阅读:
    树的一些操作
    线程池的概念
    线程池
    BLOB字段来保存fastreport的报表模板
    D7调用XE2 中间层注意事项
    xe2 datasnap中间层+d7客户端调用
    关于延迟时间的一点智慧

    插件
    phpstorm clone 码云项目到本地 Version Control 不显示
  • 原文地址:https://www.cnblogs.com/pangshian/p/14252938.html
Copyright © 2011-2022 走看看