XILINX FPGA数字信号处理——4、CORDIC算法原理及实现

坐标旋转数字计算机(Coordinate rotation Digital Computer,CORTDIC)

20世纪70年代许多计算器使用一个内部CORDIC单元来计算所用的三角函数,80年代,随着带有高速乘法器与带有大容量存储器的通用处理器的出现,CORDIC算法变得无果紧要

对于FPGA来说,CORDIC一定是在数字信号处理应用中(如多输入多输出(MIMO)、波束形成以及其他自适应系统)计算三角函数的备选技术。


写成矩阵形式:

提取公共因子cosθ

去除项cosθ,得到伪旋转方程式

伪旋转,角度正确,幅度发生了变化,最后根据迭代的次数将前面去除cos项执行伪旋转引发的幅度变化,与伸缩因子相乘得到真值。

CORDIC算法的核心是伪旋转角度,其中tanθ=2-i


其中di=±1,判决算子,决定旋转方向。

伸缩因子是伪旋转的副产物,党建华算法允许伪旋转时,忽略cosθ项。这样,将输出x(n),y(n)伸缩Kn倍,其中:

当n趋于无穷大时,

CORDIC方法有两种操作模式,即旋转模式和向量模式。在旋转模式下,将输入向量旋转到一个期望的角度;在向量模式下将输入向量旋转到x轴。
CORDIC算法的向量模式可以得到输入向量的幅度。


CORDIC计算结果的精度取决于两个因素
(1)在数据路径中小数位位数b;
(2)迭代次数n.

XILINX FPGA数字信号处理——4、CORDIC算法原理及实现相关推荐

  1. 2021-03-18新书《Xilinx FPGA数字信号处理设计——基础版》已上市

    特别说明:杜勇老师的新书<Xilinx FPGA数字信号处理设计--基础版>已上市,亲们可在各售书网站选购.新书的配套板载程序均可直接在CXD301平台上验证.凡购买CXD301开发板的亲 ...

  2. XILINX FPGA数字信号处理——16、自适应信号处理原理及实现

    最小二乘法(Least Squares,LS) 最小均方法(Least mean squares,LMS ) 由于有限冲击响应类型算法稳定和易于实现数学处理,因此大多的自适应滤波器使用有限冲击响应类型 ...

  3. XILINX FPGA数字信号处理——13、信号同步原理实现

  4. XILINX FPGA数字信号处理——15、动态视频拼接原理及实现

  5. 新书预告:Xilix FPGA数字信号处理设计——基础版

    掌握FPGA数字信号处理设计需满足三个条件:熟悉FPGA设计方法.理解数字信号处理理论.掌握理论的工程实现方法.对初学者来讲,每个条件看似都难以逾越.杜勇老师完美融合课程教学与工程设计的需求特点,以独 ...

  6. MATLAB与FPGA数字信号处理(数字滤波器设计)、数字IC、无线通信、图像处理、信道编码系列

    FPCA.数字IC笔试题系列 不容错过的FPGA/数字IC秋招笔试面试汇总帖(2022届) 1. FPGA.数字IC系列(1)--乐鑫科技2021数字IC提前批笔试 2. FPGA.数字IC系列(2) ...

  7. FPGA数字信号处理(二)并行FIR滤波器Verilog设计

    该篇是FPGA数字信号处理的第二篇,选题为DSP系统中极其常用的FIR滤波器.本文将简单介绍FIR滤波器的原理,详细介绍使用Verilog HDL设计并行FIR滤波器的流程和方法.接下来几篇会介绍串行 ...

  8. FPGA数字信号处理(一)数字混频(NCO与DDS的使用)

    这是数字信号处理系列的第一篇,以简单的数字混频为例,介绍在FPGA程序设计中很重要的二进制原码.补码:有符号数.无符号数的问题.本文不是像课本那样介绍这些基础概念,而是介绍很实际的设计方法. 借助于数 ...

  9. FPGA数字信号处理之乘法器

    FPGA数字信号处理之乘法器 软.硬件配置 system generator仿真 rom存储器实现正弦输入 乘法器模块 其他模块 乘法器IP核 3 \sqrt{3} 3 ​ / 2 用定点小数如何表示 ...

  10. FPGADesigner《FPGA数字信号处理系列》目录与传送门

    FPGA数字信号处理(1)数字混频(NCO与DDS的使用): https://blog.csdn.net/fpgadesigner/article/details/80512067 FPGA数字信号处 ...

最新文章

  1. 数组去重,ES6数组去重 new Set()
  2. 死磕Java并发:J.U.C之阻塞队列:ArrayBlockingQueue
  3. leetcode算法题--LRU缓存机制
  4. tableau实战系列(四十七)-Tableau快速生成可视化视图
  5. Spring boot使用Bootstrap
  6. mac os 升级为Mountain Lion后,eclipse找不到JRE的问题
  7. rocketmq-console集群监控平台搭建
  8. 2021HDU多校9 - 7073 Integers Have Friends 2.0(随机数)
  9. 为什么不能同时用const和static修饰成员函数?
  10. mats检测工具 400版_川崎新款忍者400新配色发布
  11. git detached head
  12. 第十周Java学习总结
  13. Java性能优化权威指南-读书笔记(一)-操作系统性能监控工具
  14. QT+PCL 点云学习
  15. Matlab:实现高斯光束产生
  16. 〖Python WEB 自动化测试实战篇③〗- python-selenium环境配置搭建
  17. android 通知 广告,解决三星/小米等Android手机通知栏推送广告的问题
  18. 笔试 | 数字IC设计之1bit的半加器、全加器实现
  19. NVIDIA Jetson Xavier NX 刷机方法(sdk manager)
  20. Oracle——武汉空间数据库系统设计

热门文章

  1. 我的世界服务器权限组权限修改器,我的世界op权限组指令是什么 op权限组指令汇总...
  2. python 打印unicode字符串
  3. c语言mfc步骤,C语言工程MFC
  4. 数据库SQL Server 2019下载安装详细教程
  5. docker安装oracle11g史上最全步骤(带图文)
  6. 《SQL 入门经典》读书笔记(1)
  7. SQL 格式化输出 千分位 ¥货币格式
  8. 自动登录SAP系统(流星程序集之十八)
  9. Keli Linux与网络安全(1)——在VMWare中安装Keli系统
  10. 记录—java获取服务器的信息