基于CORDIC算法的高速高精度NCO的FPGA设计

合集下载

基于CORDIC改进算法的NCO设计

基于CORDIC改进算法的NCO设计
Mi cr oe l e c t r o ni c Te c h n ol og y
基于 C O R D I C改进算 法的 NC O设计
王 申卓 , 胡春 林 , 胡广 垠 , 徐 大 诚
( 苏 州 大学 电子 信 息 学 院 , 江苏 苏州 2 1 5 0 0 0 )

要 :数 控 振 荡 器( N C O) 已经被 广 泛应 用于数 字信 号处理 、 软 件 无 线 电 系统 等 诸 多 领 域 中 。针 对 基 于 传 统 C O RD I C
中 文 引 用 格 式 :王 申 卓 , 胡春林 , 胡广垠 , 等 .基 于 C O R D I C改进 算 法 的 N C O设 计 【 J ] . 电 子技 术 应 用 , 2 0 1 7, 4 3 ( 3 ) : 4 3 — 4 7 .
英 文 引 用 格 式 :Wa n g S h e n z h u o , H u C h u n l i n, H u G u a n g y i n, e t a 1 . D e s i g n o f N C O b a s e d o n i m p r o v e d C O R D I C a l g o i r t h m[ J ] . A p p l i c a t i o n o f E l e c t r o n i c T e c h n i q u e , 2 0 1 7, 4 3 ( 3 ) : 4 3 - 4 7 .
s o f t wa r e d e i f n e d r a d i o .N CO b a s e d o n t h e c o n v e n t i o n a l CORDI C h a s d i s a d v a n t a g e s o f l o w o p e r a t i o n  ̄ e q u e n c y ,l o w p r e c i s i o n ,a n d h i g h c o n s u mp t i o n o f r e s o u r c e s .T o s o l v e t h e s e p r o b l e ms ,a d e s i g n o f NCO i s p r e s e n t e d i n t h i s p a p e r b y i mp r o v i n g t h e c o n v e n t i o n a l C ORDI C,t h e p h a s e a n d a mp l i t u d e o f a o n e -t o- o n e c o r e s p o n d e n c e i s r e a l i z e d,e x t e n d s t h e c o n v e r g e n c e r a n g e t o t h e e n t i r e c i r c u m— f e r e n c e ,a n d t h e s i n e a n d c o s i n e wa v e f o m s r a r e c o mp l e t e l y o r t h o g o n a 1 .T h e s i mu l a t i o n r e s u l t s s h o w e d t h a t t h e d e s i g n h a s a d v a n t a g e s o f h i g h s p e e d,l o w r e s o u r c e u s a g e a n d s i mp l e s t r u c t u r e ,t h e ma x i mu m c l o c k  ̄e q u e n e y i s 1 1 4. 3% h i g h e r t h a n t h e N CO w h i c h i s b a s e d o n t h e t r a d i t i o n a l C ORDI C a l g o r i t h m .a n d t h e a c c u r a c y i s i mp r o v e d t o 1 0 一一1 0 一.

基于CORDIC算法通用数字调制器的FPGA设计

基于CORDIC算法通用数字调制器的FPGA设计

De i n o e r ld g t lm o ul t r b s d o sg fg ne a i ia d a o a e n CORDI a g rt m nd FPGA C l o ih a
L INe g fn E n - g a
( e ate tfP yi n l t nc n i ei , i nTah r U i ri , i t74 0 , hn ) D pr n hs s dEe r iE gn r g Wen eces n esy Wen l 100 C ia m o ca co e n a v t o
雷 能 芳
( 南 师 范 学院 物理 与 电子 工程 系 ,陕 西 渭 南 7 4 0 ) 渭 100
摘 要 :通 信 系统 的振 幅键 控 ( K) 移 频键 控 ( S 和移 相 键 控 ( S 是 数 字 调 制 的 3种 基 本 信 号 形 式 。 而数 字 调 制 AS 、 F K) P K)
器载 波 的 产 生 通 常 都 是 基 于查 找 表 的方 法 , 了达 到 高 精 度 要 求 , 为 需要 耗 费 大 量 的 R M 资 源去 建 立 庞 大 的查 找 表 。 O 文 中提 出 了一 种 基 于 流 水 线 C R I O D C算 法 通 用 数 字 调 制 器 的 F G 实现 方 案 , 以有 效地 节省 F G 的硬 件 资 源 . PA 可 PA 提 高运 算 的速 度 。文 章 最后 给 出了该 方 案 的 硬 件 测 试 结 果 , 证 了设 计 的 正 确性 。而且 整 个 系统 便 于编 程 、 改 以及 验 修
升级改进。
关 键 词 : 用调 制 器 ; O D C 算 法 :流 水 线 ; P A 通 C R I FG 中 图 分 类 号 : N 1 T 9l 文献 标 识 码 : A 文 章编 号 :1 7 — 2 6 2 1 ) 7 0 6 — 3 6 4 6 3 (0 10 — 0 8 0

《基于CORDIC算法的正切余切函数的设计及FPGA实现》范文

《基于CORDIC算法的正切余切函数的设计及FPGA实现》范文

《基于CORDIC算法的正切余切函数的设计及FPGA实现》篇一一、引言随着数字信号处理技术的快速发展,FPGA(现场可编程门阵列)在各种应用中得到了广泛的应用。

正切和余切函数作为数学计算中的基本函数,在信号处理、图像处理、控制系统等领域中具有重要的作用。

本文将介绍基于CORDIC算法的正切余切函数的设计,并详细阐述其在FPGA上的实现。

二、CORDIC算法概述CORDIC(COordinate Rotation DIgital Computer)算法是一种通过一系列简单的角度旋转来计算三角函数、双曲函数等基本数学函数的方法。

其基本思想是利用一组预先计算的常量(通常是正弦或余弦函数的值),通过一系列的旋转和加减运算,实现对任意角度的三角函数值的计算。

CORDIC算法具有计算精度高、速度快、易于硬件实现等优点,因此在数字信号处理领域得到了广泛的应用。

三、正切余切函数的设计基于CORDIC算法,我们可以设计出正切和余切函数的计算方法。

首先,我们需要根据CORDIC算法的基本原理,推导出正切和余切函数的计算公式。

然后,根据FPGA的硬件特性和计算需求,对公式进行优化和简化,以提高计算速度和降低硬件资源消耗。

在正切函数的设计中,我们采用迭代的方式逐步逼近目标值。

具体地,我们可以利用一系列的角度旋转和加减运算,逐步逼近正切函数的值。

在每个迭代步骤中,我们可以利用预先计算的常量(如正弦或余弦函数的值)和当前的迭代值来计算下一个迭代值。

通过多次迭代,我们可以得到较高的计算精度。

对于余切函数的设计,我们可以利用正切函数的值来计算余切函数的值。

由于余切函数和正切函数之间存在一定的关系(即cot(x) = 1/tan(x)),因此我们可以通过对正切函数值的倒数来得到余切函数的值。

四、FPGA实现在FPGA上实现基于CORDIC算法的正切余切函数,需要考虑到FPGA的硬件特性和计算需求。

首先,我们需要根据FPGA 的硬件资源(如查找表、乘法器、加法器等)来设计电路结构,以实现高效的计算。

基于CORDIC算法的NCO设计

基于CORDIC算法的NCO设计

基于CORDIC 算法的NCO 设计王中将,王 华,张 垦(北京理工大学电子工程系 北京 100081)摘 要:NCO 有着广泛的应用。

本文从基本的坐标变换公式出发,严谨地推导了CO RDI C 的原理,简明扼要地阐明了“微旋转”和“模畸变预矫正”。

采用流水线CO RD IC 单元实现了N CO 中的F G 部分。

并对在具体的FP GA 上布局布线之后的数据进行了频谱分析,验证了理论的正确性。

关键词:N CO;F G;CO RDIC;微旋转;模畸变预矫正;流水线;频谱分析中图分类号:T N 74 文献标识码:B 文章编号:1004373X (2005)0211702NC O Design Based on CORDIC AlgorithmWA N G Zhongjiang ,WA N G Hua ,ZHA NG K en(Depa rt ment of Electronic Eng i neeri ng ,Bei jing Inst i t ut e o f T echno log y,Beiji ng ,100081,Chi na)Abstract :NCO is widely used in many fields .Based on t he basic coo rdinate co nver sion ,this paper der iv es the pr inciple of CO RDI C algo rithm pr ecisely ;"M icro R otat ion "and "Scale Pr e compensating "are descr ibed concisely .A kind o f pipeline CO RDI C unit is used to implement the F G o f N CO .Spectr um analy sis of the data w hich is the simulatio n result s on a specific FP GA chip pro ves that t he theor y is valid .Keywords :N CO ;F G ;CO RDIC ;micr o r ot atio n ;scale pr e co mpensating ;pipeline ;spectr um analy sis收稿日期:200408221 引 言频率合成技术已经发展到第3代DDFS,DDFS 的核心是N CO 。

一种基于CORDIC算法的高速高精度数字鉴相器

一种基于CORDIC算法的高速高精度数字鉴相器

文章编号:1001-893X (2008)04-0076-04一种基于CO R D I C 算法的高速高精度数字鉴相器3严 平,汪学刚,钱 璐(电子科技大学电子工程学院,成都610054)摘 要:提出了一种基于CORD I C 算法的高速、高精度数字鉴相器。

该数字鉴相器根据正交解调原理测相,采用高速全流水线结构在FPG A 上实现,利用CORD I C 算法实现了数字下变频(DDC )和相角的计算。

本方法不需要正交本振信号与参考信号严格同步,并且允许输入信号的频率与DDC 的NCO 频率存在一定频偏,便于工程实现。

经时序仿真验证,系统工作时钟可达100MHz,在30dB 的信噪比条件下,测相误差小于0.004rad,样本标准差小于0.03rad 。

关键词:正交解调;数字鉴相器;CORD I C 算法;频偏;流水线结构;FPG A 中图分类号:T N763.3;T N953 文献标识码:AA Hi gh -speed and Hi gh -accuracy D i git al Phase De modul atorBased on COR D I C Algor ith mYAN Ping,WAN G Xue -gang,Q I AN Lu(School of Electr onic Engineering,University of Electr onic Science and Technol ogyof China,Chengdu 610054,China )Abstract:An i m p r oved structure of digital phase de modulat or based on CORD I C algorithm is p resented .Phase -shift is measured according t o the p rinci p le of quadrature de modulati on .D igital down converti on (DDC )and calculati on of angle are realized by CORD I C algorith m.The l ocal oscillati on need not be syn 2chr onous with the reference signal,and the frequency of input signal is all owed t o deviate fr om the frequen 2cy of NCO t o a certain extent .Si m ulati on with FPG A shows that phase -shift measure ment is at high -s peed and high -accuracy:it can work at 100MHz syste m cl ock,the err or of phase de modulati on is less than 0.004rad,and the sa mp le standard deviati on is less than 0.03rad when S NR is 30dB.Key words:quadrature de modulati on;digital phase de modulat or;CORD I C algorithm;frequency deviati on;p i p line structure;FPG A1 引 言数字式鉴相器在雷达、通信系统中广泛应用,如雷达系统中的数字式干涉仪测向、高精度高速相位测距等,通信系统中的BPSK 、QPSK 等。

cordic算法及其FPGA硬件实现 毕业论文

cordic算法及其FPGA硬件实现 毕业论文
Key words:cordic algorithm; FPGA; Coordinate rotation algorithm; Binary search method; pipeline architecture
第一
1.1 CORDIC
1.1.1 CORDIC
CORDIC(Coordinate Rotational Digital Computer-坐标旋转数字计算机)算法最早由J.Volder等人于1959年在美国航空控制系统的设计中提出,他的基本思想是:通过坐标轴旋转得出一个二维的函数关系式,对初始角度进行数值线性逼近,把初始角度的旋转转化成一系列基本角度逐次旋转完成,然后运用递推原理,得出一组递推公式,把每次递推得到的角度加进去,转换成一组三维的函数关系式,进一步推导,最终用圆周模型、线性模型、双曲线模型实现了加减乘除、三角函数、双曲线三角函数、平方根,指数、对数等函数的运算。20年后,随着VLSI的产生和迅速发展,CORDIC算法开始被重视,并得到了广泛的应用。原始算法描述的是二维的旋转,它被应用于数字信号处理(如:傅里叶变换、数字滤波器)、计算机图像处理和机器人技术等领域。
由于CORDIC算法本身具有众多的优点,目前,已经应用于很多领域,例如:8087数学协处理器、HP-35计算器、天气预报、雷达信号处理、三维图像处理、嵌入式系统以及移动通信、数控振荡器、数字下变频器及数字鉴别器等;此外,它还应用于许多数字信号处理问题,如:快速傅里叶变换、离散余弦变换、小波变换、数字滤波器、离散Hartley以及求解线性系统。Altera公司和Xilinx公司13还推出了CORDIC算法实现的IP核,可以按照实际需求直接调用。
在数字信号处理中,高速高精度的三角函数发生器有着广泛的应用,在通常情况下,计算三角函数、反三角函数、双曲线函数和其它超越函数有效的方法有:ROM查找表法、多项式近似法(主要是利用泰勒级数近似)、CORDIC法。

基于CORDIC算法的NCO在FPGA中的实现

基于CORDIC算法的NCO在FPGA中的实现

劁一co蛾p。埘吲引㈣
其中m代表操作模式:m一1为圆周变换,m=0为 线性变换,m一一1为双曲线变换,cosO.一COS (arctg(21))。
随着迭代次数的增加cos&的乘积将收敛于 常数K,当然对于固定的字长竹,此项也是一个常 数,即
K一儿cos(arctg(21))≈o.60725
(6)
为了完成上述旋转过程还需一个变量Z用于
(11)
对于上式取初值(X。,y0,Yo)一(X,y,0)则上
式(X化N,为:YN,ZN)=(P以丽,0,arctg(Yo/Xo))
这样可以得到幅值与相角。
(12)
4基于CORDIC算法的NCO设计[1]
本文设计的NCO总体结构框图如图2所示, 其基于上述CORDIC算法原理中式(7)。采用了 16级流水线结构实现CORDIC算法。采用流水线 技术是为了在每个加减器后插入寄存器,以避免在 FPGA中实现时产生较大的组合逻辑电路而增加 延时,从而提高系统工作速度。CORDIC算法的流 水线结构流程图如图3所示,对应图2中CORDIC 模块。图2中移位寄存器是为了记录每级流水线
记录每次迭代后的角度,即
乙+1=乙+S。0。
如果上述迭代过程工作于使Z旋转到0的旋
7) ”7 ‘,l
经过竹次迭代后结果为:
(XN,yⅣ,ZN)一(P(Xocos(Zo)一Yosin(Zo)),
P(Yocos(Zo)+Xosin(Zo)),O)
图4 DSPbuilder中NCO的模块框图 应用Quartus 119.0
软件中集成的仿真工
具,对程序进行布局布
线后的时序仿真部分时
序图如图6所示,其中
图5 DNSC(P)bu的il仿der真d9图

一种基于CORDIC算法的高速高精度数字鉴相器

一种基于CORDIC算法的高速高精度数字鉴相器

一种基于CORDIC算法的高速高精度数字鉴相器
严平;汪学刚;钱璐
【期刊名称】《电讯技术》
【年(卷),期】2008(48)4
【摘要】提出了一种基于CORDIC算法的高速、高精度数字鉴相器.该数字鉴相器根据正交解调原理测相,采用高速全流水线结构在FPGA上实现,利用CORDIC算法实现了数字下变频(DDC)和相角的计算.本方法不需要正交本振信号与参考信号严格同步,并且允许输入信号的频率与DDC的NCO频率存在一定频偏,便于工程实现.经时序仿真验证,系统工作时钟可达100 MHz,在30 dB的信噪比条件下,测相误差小于0.004 rad,样本标准差小于0.03 rad.
【总页数】4页(P76-79)
【作者】严平;汪学刚;钱璐
【作者单位】电子科技大学,电子工程学院,成都,610054;电子科技大学,电子工程学院,成都,610054;电子科技大学,电子工程学院,成都,610054
【正文语种】中文
【中图分类】TN763.3;TN953
【相关文献】
1.一种基于多过零鉴相器的数字锁相环 [J], 戴永辉;洪巧文;蔡逢煌;王武
2.一种基于FPGA的高精度数字鉴相器 [J], 贺为婷;裴广利
3.一种基于Bang-Bang鉴相器的全数字锁相环的设计 [J], 王佳瑞; 赵建中; 周玉

4.基于CORDIC算法的数字鉴相器的FPGA实现 [J], 王珂南;杜建平
5.一种基于bang-bang鉴频鉴相器的全数字锁相环设计 [J], 陈原聪;赵野;王彤因版权原因,仅展示原文概要,查看原文内容请购买。

基于CORDIC算法的快速NCO设计

基于CORDIC算法的快速NCO设计
存放相 位到 幅 度 转换 的查 找 表 R0 的大 小 和相 M 位精 度 的位 数成 指 数关 系 。当精 度要 求 很 高 的 时
C mp tr算 法 慢 。而 C R C算 法 在 硬 件 实 现 o ue) O DI 上 只需 要 移 位 和加 / 法 即可 完 成 复杂 的计 算 功 减
该 设 计 的 正确 性 及 可 行 性 。 关 键词 C R I 法 ; P A; O 0 D C算 F G NC 中 图分 类 号 T 1 N9 1
A p d NCO sg s d 0 Ra i De i n Ba e n CORD I Al o ihm C g rt
Lo g Xin n a g
( o t i a Ag iu t r lUn v r i ,Gu n z o 5 0 4 ) S u h Ch n rc l a i e st u y agh u 1 6 2
Ab t a t NCO a d a g f p l a in n s fwa ed f e a i d g t l i n l r c s ig s rc h sawi er n eo p i t so o t r - e i d r d o, i i g a o e sn .F n t n g n r t r a c o n as p u ci e eao o i e a to s a k y p r fNCO.Th l o i m fC e ag r h o OR C i a h e e y F GA i ei e n t c n a tr a i e t e ta i o a t DI s c iv d b P p p l ,a d i a le n tv h r d t n l n i ROM
置, 它在 当今通 信 系统 中有 广 泛 的应 用 , 软件 无 是 线 电[ 、 直接 数字频 率合成 [ ( D , rc dgtl 2 D S Di t ii ] e a sn h s e) 快 速 傅 立 叶 变 换[ F T, atF u y tei r 、 z 引( F F s o — r r a som) 的重要组 成 部分 , i n fr 等 e Tr 同时也是 决 定 其性 能 的主要部件 之一 。 传统 的实现方 法采用查 找表 , 简单 、 确 , 准 但其

基于CORDIC算法的改进NCO实现技术及其性能分析

基于CORDIC算法的改进NCO实现技术及其性能分析
M a O1 v2 0
Hale Waihona Puke 基于 C ORD C算 法 的 改进 N O I C
实 现 技 术 及 其 性 能 分 析
陈万 培 ,黄 鹦 ,邵 宁 ,汪 琼
( 州 大 学 信 息 工 程 学 院 ,江 苏 扬 州 2 5 0 ) 扬 2 0 9
摘 要 : 绍 一 种 基 于 协调 旋 转 数 字 计 算 机 (o r iaer tt n d i l o u e ,C D C)算 法 的 改 进 介 c o d t oai i t mp tr OR I n o g ac 数 字 控 制 振 荡 器 ( u r a c n r l do c ltr N O) 实 现 方 法 .应 用 C RD C算 法 替 代 传 统 正 弦 函 数 n mei l o t l si ao , C 的 c oe l O I R 0M 查 找 表 ,可 以显 著 减 少 存 储 量 , 有效 提 高 资源 利 用 率 . 析 了 改 进 NC 方 法 的具 体 设 计 参 数 对 误 差 分 0 性 能 的影 响 ,并进 行 MA AB仿 真 、 场 可 编 程 门 阵 列 ( i d p o rmma l g t a ry P TL 现 f l rg a e be ae r ,F GA) 现 , a 实 得
数值 表 ( 找表 ) 其 中存 储 了各个 相位对 应 的正 弦值 , 查 , 由时钟 驱动输 出对应 的正弦/ 弦值 . 余
C DI OR C算法 最早 由 V0L E D R提 出 ,9 4 WAL 17 年 THE R对 其进行 了改进 , 到一 种 能计 算 出 得
多种超 越 函数 的统一算 法. 算法 有 圆周 、 性 、 曲等 几种 模 式 , 该 线 双 分别 用 于 产生 不 同 的信 号. 工作 当

CORDIC算法数字瞬时测频的FPGA设计与实现

CORDIC算法数字瞬时测频的FPGA设计与实现

CORDIC算法数字瞬时测频的FPGA设计与实现摘要数字瞬时测频(DIFM)技术是现代电子战中的关键技术之一,要求在极短的时间内完成对输入信号频率的测量。

瞬时测频的基本思路是将频率信息转化为相位信息,再把相位信息转化为幅度信息,通过对幅度信息量化编码,从而完成对频率的测量。

本文提出了基于数字下变频、CORDIC算法相位测量以及相位推算法的数字瞬时测频方法以及在FPGA中的实现,对单频信号该方法具有测频精度高、瞬时性好的优点,特别适合现代电子战接收机数字瞬时测频的需求。

关键词数字下变频;CORDIC算法;数字瞬时测频;FPGA0 引言现代电子战环境下,雷达、通信信号非常密集,在同一个时间内会有多个信号出现,且频率覆盖范围广,为实现对这些同时信号的全概率覆盖,侦察接收机一般采用模拟和数字信道化技术,将一组固定通带滤波器输出的数字信号进行快速、宽频带、全概率的粗测频,然后再对各通道中被检测出的信号进行相对窄带、高精度的精测频[1]。

信号经过信道化处理后,如果子信道的带宽取得比较窄,则每个信道输出一个信号的概率比较大,此时可以采用一些时域测频算法进行测频,如相位推算法、瞬时自相关法、曲线拟合法和过零检测法等方法。

其中相位推算法具有运算量小、速度快、精度高、利用很少采样点就可以实现频率的估计,特别适合实时处理的场合,因此是DIFM精测频的比较好的方法。

本文提出了基于数字下变频的数字正交化、CORDIC算法的相位测量的相位推算法数字瞬时测频方及其在FPGA中的工程实现,该方法适用于信道化后的单频信号的高精度、快速频率测量,在窄脉冲的情况下也可以获得比较好的测量精度,同时该方法也适用于线性调频信号的调频参数测量。

1 CORDIC算法数字瞬时测频基本原理CORDIC算法数字瞬时测频实现的功能框图如图1所示,该模块包括一下几个主要组成部分:射频前端、ADC采样、数字下变频、CORDIC算法相位测量、相位推算法频率测量以及脉冲描述字产生等几个组成部分。

基于CORDIC算法的数控振荡器的FPGA设计

基于CORDIC算法的数控振荡器的FPGA设计

基于CORDIC算法的数控振荡器的FPGA设计数控振荡器在数字信号处理中有着广泛的应用。

本文研究并实现了基于CORDIC 算法的流水线型数控振荡器。

仿真和验证结果表明,该方法较之查找表法精度高,且结构简单、耗费资源少,非常易于FPGA实现。

引言由于具有频率精度高、转换时间短、频谱纯度高以及频率相位易编程等特点,数控振荡器(NCO)被广泛应用于软件无线电数字上、下变频以及各种频率和相位数字调制解调系统中。

NCO传统的实现方法主要有查表法、多项式展开法或近似法,但这些方法在速度、精度、资源方面难以兼顾。

而采用CORDIC算法来实现超函数时,则无需使用乘法器,它只需要一个最小的查找表(LUT),利用简单的移位和相加运算,即可产生高精度的正余弦波形,尤其适合于FPGA的实现。

数控振荡器原理NCO的目标是产生频率可变的正、余弦波样本,(n=0,1,2...)。

式中,fLO 为本地振荡频率, fS为输入信号的采样频率。

如图1 所示,NCO主要包括3个模块:1. 相位累加器对输入频率控制字M不断累加,得到以该频率字为步进的数字相位。

2. 相位相加器将相位寄存器中的数字相位与相位控制字相加,得到偏移后的当前相位。

设系统的时钟频率为fc,频率控制字为M,相位寄存器位数为N,则数控振荡器输出信号频率为。

根据Nyquist抽样定理,fs最大值为1/2fc,而在实际设计中,一般不应大于时钟频率的1/4。

其频率分辨率为,根据此式,在系统时钟频率不变的情况下,相位寄存器位数N越大,产生信号的频率分辨率越高。

图1 数字控制振荡器结构图3. 函数发生模块,对当前相位进行对应幅度转换后,可以输出任意函数的波形。

函数发生模块最直接的实现方法是只读存储器查找表(ROM LUT)法,将正、余弦波形的抽样存放在ROM中,并通过一个DAC周期地进行输出,从而产生输出波形。

如输出信号幅度位数为a,相位地址位数n所需查找表的大小为a×2n。

数字下变频中基于CORDIC算法的NCO设计

数字下变频中基于CORDIC算法的NCO设计

数字下变频中基于CORDIC算法的NCO设计刘刚;蒋伟进;董胡;钟新跃【摘要】在数字下变频中传统数字控制振荡器(Numerically Controlled Oscillator,NCO)模块都是基于查找表结构的,该结构在FPGA内部实现需要占用大量ROM资源,针对这一问题,提出采用坐标旋转数字计算(Coordinate Rotation DigitalComputer,CORDIC)算法进行NCO设计,相比传统的NCO设计,该方法具有输出信号频谱纯度高、能够直接混频而不需要乘法器等优点.设计中采用变象限映射方法解决CORDIC算法无法全周期覆盖的问题,采用流水线技术解决串行迭代带来难以实时输出的问题.经过Modelsim仿真分析,实际输出值与理论值之间的相对误差在10-4~ 10-5数量级范围内,满足数字下变频中NCO的性能需要.【期刊名称】《无线电工程》【年(卷),期】2017(047)012【总页数】4页(P71-74)【关键词】数字下变频;坐标旋转数字计算方法;流水线;数字控制振荡器;现场可编程门阵列【作者】刘刚;蒋伟进;董胡;钟新跃【作者单位】长沙师范学院信息与工程系,湖南长沙410100;湖南商学院计算机与信息工程学院,湖南长沙410205;长沙师范学院信息与工程系,湖南长沙410100;长沙师范学院信息与工程系,湖南长沙410100【正文语种】中文【中图分类】TN911在软件无线电接收机中,数字下变频器是把ADC数字化后的高速数字中频信号变为低速的基带信号,便于后续的相关处理。

数字下变频器在这里起到前端ADC和后端通用DSP器件之间的桥梁作用,其性能的优劣会对整个软件无线电系统的性能产生直接的影响[1]。

因此,数字下变频技术成为软件无线电接收机的关键技术之一,成为制约软件无线电性能的重要器件之一[1]。

文献[2-3]中采用基于多相滤波结构来设计实现数字下变频器,虽然在一定程度上能够节省FPGA内部资源和实现高速数据流下数字下变频,但在性能上还有较大的提升空间,因为只有改进和优化数字下变频中NCO这一核心模块才能大幅度提高数字下变频的性能。

基于FPGA的Cordic算法实现的设计与验证

基于FPGA的Cordic算法实现的设计与验证

基于FPGA的Cordic算法实现的设计与验证CORDIC(Coordinate RotationDigita1Computer)算法即坐标旋转数字计算方法,是J?KVO1/r1于1959年首次提出,主要用Q⅝函数、双曲线、指数、对数的计算。

该算法通过基本的加和移位运算代替乘法运算,使得矢量的旋转和定向的计算不再需要三角函数、乘法、开方、反三角、指数等函数。

本文是基于FPGA实现Cordic算法的设计与验证,使用Veri1og HD1设计,初步可实现正弦、余弦、反正切函数的实现。

将复杂的运算转化成FPGA擅长的加减法和乘法,而乘法运算可以用移位运算代替。

CordiC算法有两种模式,旋转模式和向量模式。

可以在圆坐标系、线性坐标系、双曲线坐标系使用。

本文线初步实现在圆坐标系下的两种模式的算法实现。

Cordic算法简化旋转模式,迭代位移算法。

假设有一点PO(xθ,yθ),经过逆时针旋转角度θ,到达点Pm(xm,ym),我们根据数学运算可以得到公式如下:xm=xOcosθ-yθsinθ=cosθ(xθ-yθtanθ)ym二yOcosθ+xθsinθ=cosθ(yθ-xθtanθ)如果不考虑旋转后的向量模值,只考虑旋转角度,即去掉cos。

,得到如下方程式。

这里旋转的角度的正确的,但X和y的值增加。

cosθ值是小于等于1的,值大于等于1所以模值应该增大。

我们不能通过适当的数学计算去掉COSθ,但是去掉COSO项可以方便我们后面的坐标平面旋转的计算。

这里称为伪旋转。

xθ-yθtanθxmym-yθ-xθtanθCordic的方法核心就是伪旋转,将旋转角θ细化成若干个大小固定的角度θi,规定满足tanBi=2^-i,通过一系列的迭代旋转,每次旋转θi,i为迭代次数,规定ΣBi的范围即旋转角度θ的范围为[-99.7,99.7]。

如果θ的大于这个范围则可通过三角运算操作转化到该范围的角度。

我们通过事先将所有每次旋转的角度计算出来,由于每次旋转的角度是固定的,所以经过i次旋转的EOi可能会超过O,所以就必须设置一个方向值di,如果旋转角度之和己经小于θ,则di为1下次旋转继续为顺时针旋转,如果旋转角度之和大于。

基于FPGA和改进CORDIC算法的NCO设计与实现

基于FPGA和改进CORDIC算法的NCO设计与实现
i mp l e me nt t he NCO b a s e d o n FPGA a nd t h e i mp r o v e d CORDI C a l g o r i t hm. I t pr o v e s t he f e a s i b i l i t y o f t h e s c h e me wi t h t h e pr ec i s i o n
Te c h ni qu e an d Me t h od
基于 F P G A和 改进 C O R D I C算 法 的 NC O设 计 与 实现
彭 奇, 习友 宝 ( 电子 科技 大 学 ,四川 成 都 6 1 1 7 3 1 )
摘 要 : 将 C O RD I C算 法 传 统 实现 中 的 象 限 转 换 从 输 出 转 移 到 输 入 进 行 处 理 , 简化 了 电路 逻 辑 。 针对 C O R D I C 算 法 的 流 水 线 结 构 做 出增 大 映 射 分 区 的 改 进 , 省 去 了流 水 线 的 第 一级 。 减 少 了 流 水 线 结 构 内旋 转 角 的一 位 数 据 宽度 。 在 F P G A 中仿 真 并 实现 了基 于该 改进 C O R D I C 算 法 的 NC O。 仿 真 结 果 有
f X 2 = X I C O S O — y j s i n O = c o s O ( l — y  ̄ t a n 0 ) , 。 、 [ y 2 = x 1 s i n 0 + y I e o s O = c o s O( y l l t a n 0 )
接数 字 频 率 合成 ( DD S) 和 各 种 数 字 信 号 发 生 器 的 核 心
De s i g n a n d i mp l e me n t a t i o n o f NCO ba s e d o n FPGA

CORDIC算法在FPGA上的实现

CORDIC算法在FPGA上的实现

CORDIC算法在FPGA上的实现CORDIC算法在FPGA上的实现CORDIC(Coordinate Rotation Digital Computer)算法是一种用于计算旋转坐标的迭代算法。

它可以被用于许多数学运算,如旋转、反正弦、反余弦等。

在FPGA上实现CORDIC算法可以提供高性能、低功耗的数字信号处理能力。

以下是在FPGA上实现CORDIC算法的步骤:1. 确定要实现的功能:首先确定需要使用CORDIC算法实现的功能,如旋转、反正弦或反余弦等。

这将决定算法的输入和输出。

2. 定义输入和输出格式:根据功能需求,定义输入和输出的数据格式。

例如,如果需要计算旋转角度,可以选择使用固定小数点表示法来表示输入和输出。

3. 初始化:根据所需的精度和迭代次数,选择一个初始化的角度值。

这个初始角度将用作迭代过程中的参考值。

4. 迭代计算:使用CORDIC算法的核心迭代步骤,通过迭代计算逼近所需的功能。

具体的迭代步骤包括:a. 计算旋转角度:通过迭代计算,将输入角度逼近为零,得到旋转角度。

b. 计算正弦或余弦:根据旋转角度,计算对应的正弦或余弦值。

5. 输出结果:根据所需的输出格式,将计算得到的结果输出。

6. 优化:根据实际需求,对实现的CORDIC算法进行优化。

这可以包括减少计算迭代次数、使用查找表等。

7. 硬件实现:将优化后的CORDIC算法转换为硬件描述语言(如VHDL或Verilog),并进行FPGA的综合、布局和编程。

8. 验证和调试:通过在FPGA上加载并运行实现的算法,验证算法的正确性和性能。

如果有错误或性能不佳,进行调试和优化。

9. 集成和应用:将CORDIC算法集成到目标系统中,并应用于实际应用中。

这可能需要与其他模块进行接口和数据交换。

通过以上步骤,可以在FPGA上成功实现CORDIC算法。

这将提供高性能、低功耗的数字信号处理能力,适用于许多应用领域,如通信、图像处理和信号处理等。

基于FPGA的CORDIC算法优化

基于FPGA的CORDIC算法优化

基于FPGA的CORDIC算法优化基于FPGA的CORDIC算法优化步骤1:理解CORDIC算法的原理和应用CORDIC(Coordinate Rotation Digital Computer)算法是一种用于计算三角函数和超越函数的算法。

它通过迭代的方式不断逼近最终结果,具有较低的计算复杂度和较高的计算精度。

CORDIC算法在许多领域中广泛应用,如通信系统中的相位调制解调、图像处理中的旋转和平移、信号处理中的频率合成等。

步骤2:了解FPGA的基本原理和优势FPGA(Field Programmable Gate Array)是一种可编程逻辑芯片,具有高度的并行计算能力和灵活的结构。

它可以通过编程实现各种逻辑电路,适用于需要高性能并行计算的应用。

FPGA在数字信号处理、图像处理、通信系统等领域有广泛的应用。

步骤3:进行CORDIC算法的FPGA优化3.1 优化CORDIC算法的迭代过程CORDIC算法的核心是迭代过程,通过迭代逼近目标值。

在FPGA中,可以通过并行计算的方式提高计算速度。

通过合理划分迭代过程,并利用FPGA的并行计算能力,可以实现更高效的算法。

3.2 利用FPGA的资源优化CORDIC算法FPGA具有丰富的资源,包括逻辑单元、存储单元和DSP块等。

可以利用这些资源对CORDIC算法进行优化。

例如,可以使用DSP块来实现乘法和加法操作,提高计算速度和精度;可以使用存储单元来存储迭代过程中的中间结果,减少计算量。

3.3 考虑算法的延迟和吞吐量在FPGA优化过程中,需要考虑算法的延迟和吞吐量。

延迟是指从输入到输出的时间延迟,吞吐量是指单位时间内完成的计算量。

通过合理设计算法和硬件结构,可以在延迟和吞吐量之间进行平衡,达到最优的性能。

步骤4:进行算法仿真和验证在优化完成后,需要进行算法的仿真和验证。

通过使用FPGA开发工具进行仿真和验证,可以验证算法在FPGA上的实际性能。

在仿真和验证过程中,可以对算法的性能进行评估,并进一步优化。

基于CORDIC算法的NCO实现

基于CORDIC算法的NCO实现

ChinalntegratedCircult1.引言数字控制振荡器(NCO,numericalcontrolledos-cillator)是软件无线电、直接数据频率合成器(DDS,Directdigitalsynthesizer)、快速傅立叶变换(FFT,FastFourierTransform)等的重要组成部分,同时也是决定其性能的主要因素之一,随着芯片集成度的提高,在信号处理、数字通信领域、调制解调、变频调速、制导控制、电力电子等方面得到越来越广泛的应用。

图1为NCO的基本图示。

在系统时钟的控制下,相位寄存器以频率控制字(步长)累加,相位寄存器的输出与相位控制字相加,然后输入到函数发生器,产生期望的函数样值。

实现NCO的关键部分是相位-幅度变换电路,即图1中的函数发生器。

传统的实现方法是使用查找表,其优点是简单,准确,但是缺点也是显而易见的,存放相位-幅度的查找表ROM的大小和相位精度的位数成指数关系。

当精度要求很高的时候需要使用外部的ROM来扩展,这样将会降低系统的处理速度。

虽然也有人提出一些改进的查找表方式,来压缩ROM空间[1][2],但是,随着微电子技术的发展,使用实时计算来替代查找表的方式是一大趋势,其能有效的提高系统的处理速度。

在实时算法中,相比较泰勒级数法和反函数求值法两种方法,泰勒级数法的实西安电子科技大学电路设计研究所田力冯琦基于CORDIC算法的NCO实现摘要:NCO在信号处理方面有着广泛的应用。

而函数发生器是NCO中的关键部分,本文基于FPGA用状态机和流水线方法实现了CORDIC算法,并取代了传统的ROM查找表法。

最后通过QuartusII软件给出仿真结果,验证了理论的正确性。

关键字:数字控制振荡器CORDIC现场可编程门阵列TheimplementationofNCObasedonCORDICalgorithmLITian,QIFeng(InstituteofElectronicCAD,XidianUniversity)ABSTRACT:FunctiongeneratoristhemainpartofNCOwhichiswidelyusedinsignalprocessing.AnewCORDICalgorithmimplementedbythestatemachineandpipelinebasedonFPGAisproposedtoreplacethetraditionallook-uptableROMmethodinthispaper.ThesimulatedresultofQuartusIIshowsthatthegiventheoryisefficient.KEYWORDS:NCOCORDICFPGA图1数字控制振荡器结构图现需要乘法器,在硬件的复杂性和速度上受到一些限制;反函数求值法在速度上要比坐标旋转数字计算机(CORDIC,COordinateRotationsDIgitalComput-er)算法慢。

基于 Parallel -CORDIC 的高精度高速度直接数字频率合成器的 FPGA 实现

基于 Parallel -CORDIC 的高精度高速度直接数字频率合成器的 FPGA 实现

基于 Parallel -CORDIC 的高精度高速度直接数字频率合成器的 FPGA 实现佚名【期刊名称】《电子学报》【年(卷),期】2014(42)7【摘要】本文提出了一种直接数字频率合成器(DDFS)的设计,以Parallel_CORDIC(COrdinate Rotation Digital Com-puter)算法模块替代传统的查找表方式,实现了相位与幅度的一一对应,输出相位完全正交的正余弦波形;同时应用旋转角度预测及4:2的进位保存加法器(CSA)技术,将速度比传统CORDIC 算法提高41.7%,精度提高到10-4.最后以Xilinx 的 FPGA 硬件实现整个设计.%The design of a direct digital frequency synthesizer (DDFS) is proposed in this paper .Parallel - CORDIC (Cordi-nate Rotation Digital Computer) algorithm module is used to replace the traditional look-up table method ,the phase and amplitude of a one-to-one correspondence is realized ,and outputs are sine and cosine waveforms that completely orthogonal in phase .The angle prediction and 4 :2 Carry Save Adder (CSA) technologies are also applied in the design ,the calculation speed is 41 .7% faster than the traditional CORDIC algorithm and the accuracy is improved to 10 - 4 .Finally ,the whole design is implemented based on Xilinx FPGA development board .【总页数】6页(P1392-1397)【正文语种】中文【中图分类】TN911.23【相关文献】1.基于CORDIC算法的直接数字频率合成器实现方法 [J], 张炜;杨虎2.基于FPGA的高精度直接数字频率合成器设计 [J], 张静;张流强;李跃文;刘青峰;李金超3.基于CORDIC算法的高精度浮点超越函数的FPGA实现 [J], 李全;李晓欢;陈石平4.基于CORDIC算法的高精度浮点对称矩阵特征值分解的FPGA实现 [J], 陈刚;陈旭;徐元;边昳;鲁华祥5.基于改进CORDIC算法实现高速直接数字频率合成器 [J], 万书芹;陈宛峰;黄嵩人;季惠才;于宗光因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

相 比较 传 统 NC 采 用的查 找表 算 法, 明查找 表 算 法运 算 速 度 已不 适 用 于 高速 宽 带数 字接 收机 O 证
以及扩 频通 信 的应 用 , 了实现 高速 正 交数 字 混频 器 中的数 控振 荡 器 ( O) 采 用 C DI 为 NC , 0R C算 法 产生正 余 弦信 号 的 实现过 程 , 出采 用 AL R 的 srt 给 TE A t i a x系列 F GA 中设 计 数控振 荡器 的项层 P 设 计结 构 以及 仿 真 结果 , 证明基 于此 算法 采 用 F G 的可行 性设 计 。 P A 关键词: 控振 荡器( O) C D C算 法 ; P 数 NC ; OR I F GA
S nJa W a g Ya y n u in n n a
( i a 1 e to i g n e i g Re e r h I s iu e X ’ 1 El c r n c En i e r n s a c n tt t ,Xi a 1 1 0 ’ n7 0 0 )
( NCO) ti r v d t a o o e a i g s e d o o k u a l l o ih c n n tme tr q ie n fh g _ ,i sp o e h tl w p r tn p e fl o — p t b e a g rt m a o e e u r me t i h o s e d wi e b n i i l r c i e n p e d s e t u c m mu i a i n I r e o a c i e NC0 s d i p e d — a d d g t e e v r a d s r a — p c r m o a n c to . n o d r t r h v u e n
维普资讯
20 0 7年 1 2月
文 章编 号 : 0 8 8 5 ( 0 7 0 —0 8 0 10— 6220)4 6— 5
火 控 雷 达 技 术
第 3 卷 6
基 于 C D C算 法 的高 速 高 精度 OR I NC 的 F GA 设 计 O P
h g - p e a a u e di t l mi r,ge r to p oc s o i a d o i e i na s i h s e d qu dr t r gia xe ne a i n r e s f sne n c s n sg l by s n f CORDI u i g o C a g ih i r s nt d;a d t p l y r cr u t s r t e d sg d wih St a i e i s o i l og a l ort m s p e e e n o —a e ic i t uc ur e i ne t r tx s re f fe d pr r mma e bl
g t r a s ( GAs a e a r y FP )m a u a t r d b n f c u e y ALTERA o a y i g v n c mp n s i e .S mu a i n r s ls s o f a i i t f i l t e u t h w e sb l y o o i t e d sg y wa ft e C h e i n b y o h ORDI a g rt m n PGA s C l o ih a d F . Ke wo d : u e i c n r l d o cl t r ( y r s n m rc o t o l s i a o e l NCO ) c o d n to o a i n d g t l c m p t r ( ; o r i a i n r t to i i o u e a CORDI C) a g rt m  ̄f l r g a ma l g t r a ( P lo i h i d p o rm e b e a e a r y F GA )
v d d Co a i g wih l k up t b e a g rt m s d g ne a l y t a ii n lnu e i o t ole cla o ie . mp r n t oo - a l l o ih u e e r ly b r d to a m rc c n r l d os ilt r
Ab t a t A o r i a i n r t to i i lc m p t r( s r c : c o d n to o a i n d g t o a u e CORDI C) a g rt m sn e t r r t to s p o l o ih u i g v c o o a i n i r —
中图分类号 : TN9 8 5 文献标识码 : A
De i n o d Hi h Ac u a y NCO Ba e n CORDI Al o ih s do C g r t m
孙 健 汪彦 彦
( 西安 电子 工 程 研 究 所 西 安 7 00 ) 1 1 0
【 摘要】 介 绍一 种 利用 矢量旋 转 的 C RD C C o dn t nRoainDli l o ue ) 法 , O I ( o r iai tt gt mp tr 算 o o aC
相关文档
最新文档