DDS算法

2024-09-24

DDS算法(精选7篇)

DDS算法 篇1

摘要:针对基于查找表方法不能实现高速高精度DDS,提出了一种优化的基于CORDIC算法实现高速高精度DDS的方法。介绍了CORDIC算法实现DDS中相位到幅度转换的原理,对基于CORDIC算法的DDS实现进行了较详细的描述,并在FPGA上采用流水线优化方法实现了CORDIC算法,最后在FPGA上实现了一个高速高精度DDS,实验结果表明,设计实现的DDS能稳定高速的工作。

关键词:DDS,CORDIC算法,FPGA,查找表,流水线技术

0 引言

直接数字频率合成(DDS)是一种信号频率合成技术,它具有频率分辨率高、转换速度快、相位连续等许多优点,并朝着高频率、多功能、多通道、低功耗等方向发展。DDS系统主要由相位累加器、相位幅度转换电路和数模转换电路等部分组成。它通过相位累加器将相位按频率调节控制字指定的步长进行累加,再由相位-幅度转换电路将瞬时相位转换为其对应的正弦值或余弦值序列输出,最后经由数模转换电路和低通滤波,即可得到模拟正弦波或余弦波信号。

DDS传统采用查找表方法实现,但其存放相位到幅度转换的查找表ROM的大小和相位精度的位数成指数关系。当精度要求很高的时候需要大容量ROM,使系统的处理速度降低。因此,采用查表法方法无法设计高速、高精度的DDS。采用CORDIC算法来实现超函数时[1,2],则无需使用乘法器,它只需要一个最小的查找表(LUT),利用简单的移位和相加运算,即可产生高精度的正余弦波形,尤其适合于FPGA的实现。采用CORDIC算法能实现高速高精度的DDS。本文先介绍CORDIC算法原理,再详细讲述基于CORDIC算法的DDS实现。

1 CORDIC算法

CORDIC算法[4]是Volder于1959年在美国航空控制系统的设计中提出来的,它是一种用于计算运算函数的循环迭代算法。从广义上讲它是一个数值计算逼近的方法。这些固定的角度与计算基数有关,运算只有移位和加减。传统上计算三角函数和其他一些硬件不易实现的函数,一般使用查表法、多项式展开或近似的方法[3]。这些方法不能兼顾速度、精度、简单性等方面的要求。CORDIC算法正是为解决这种问题而产生的。它从算法本身入手,将复杂的算法分解成一些在硬件中容易实现的基本算法,如加法、移位等,从而使得这些算法在硬件上可以得到较好的实现。

如图1所示,假设直角坐标系内有一个向量a(Xa,Xa),逆时针旋转θ角度后得到另一个向量b(Xa,Xa)。

这个过程可以用矩阵形式表示如下:

把cosθ提出来,式(1)可以重新表示为:

如果向量a(Xa,Xa)经过n次旋转才到达向量b(Xa,Xa),如图2所示。其中第次旋转的角度为θt,那么第i次旋转的表达式为:

到此为止没有任何简化,为了便于硬件实现限制tanθi=±2-i,即θi=±arctan2-i,θ的值可以存放在一个小的查找表中。通过一系列连续的小角度旋转,可以得到任意小的旋转角度。旋转角度总和为当档si=-1;时表示向量是逆时针旋转,当时表示向量是顺时针旋转。这时式(3)变为:

式(4)中cosθi为:

随着旋转次数的增加,该式收敛为一个常数k:

式中k是一个常数增益,暂时不考虑这个增益因子,式(4)可以写成:

式(7)就是CORDIC的迭代式,它只需要通过移位和相加就可以完成矢量旋转。

设z0是a,b两向量的夹角,要使a旋转到b,则Si的符号由第i次旋转时的角度Zi决定,,它们的关系如下:zi<0时,Si=-1;zi≥0时,Si=+1(特殊情况下,z0<0时,Si=-1;zi≥0时,Si=+1)。

向量a向量b逼迫的精度由迭代的次数决定,迭代的次数越多,逼迫的精度就越高。迭代n次(n→∞)得到的最终结果为:

对于一组特殊的初始值:

得到的结果为:

从式(8)、(9)和(10)可以看出,给适当初值,通过本算法可以计算出cosine和sine,这就是CORDIC算法的旋转模式。

2 基于CORDIC算法的DDS实现

CORDIC旋转的移位相加流水结构,每一级流水线单元只需3个加减法器、2个移位寄存器和1个系数存储器,非常节省资源,如需提高精度,只需简单地增加流水单元即可,扩展性很好。这种流水线结构在正常工作时只需一个时钟周期就可输出一个数据,可实现高速实时处理,非常适合于在FPGA中实现。图3是DDS顶层电路设计图,频率控制字寄存器将频率控制字送入相位累加器,相位累加器对系统时钟进行计数,每到达输入频率控制字的值,即对相位进行累加,随后将累加值的高16位送入相位相加器,与相位控制字寄存器接收到的初始相位进行相加,得到当前的相位值。然后把当前相位值的最高位用作象限判定,并把低15位扩展1位符号位用于基于CORDIC的函数发生器。

针对迭代结构的缺点,我们设计中可以采用进位链和流水线技术相结合的方法,采用该方法实现的相位累加器既能保证具有较高的资源利用率,又能大幅提高系统的性能和速度。CORDIC算法采用流水线型设计。该设计有两个优点:第一,它的移位寄存器进行迭代法比可变移位寄存器简单的多。第二,它没有在角计算中存储常量的ROM,可以用硬件直接来实现。因此在实际设计中,采用流水线型设计的CORDIC运算单元正常工作时只需一个时钟周期就能输出一个数据,为数据实现高速实时处理提供了前提。

3 仿真和实现结果

在Quartus II开发环境中,使用基于查找表和基于CORDIC算法实现DDS的方法设计实现一个相同指标要求的DDS系统,并进行性能指标分析。本设计的DDS的相位累加器位数为30位,正弦值量化位数为8位。使用该两种方法实现的DDS,其正弦值输出精度很相近,基于CORDIC算法实现的DDS比基于查找表实现的DDS运行速度快4倍多,其最高工作时钟频率如表1所示。

当本设计的DDS系统使用系统时钟为100M,输出信号频率的频率分辨率为0.096Hz。输出频率时,M=20C4A8;输出频率时,M=106254。当频率控制字为20C4A8时,输出正弦波的周期为500ns,即正弦波的频率为2MHz;当频率控制字为106254时,输出正弦波的周期为1000ns,即正弦波的频率为1MHz,仿真正确。本设计的所有模块用HDL语言编写,在Quartus II下进行了功能仿真,仿真结果图如图4所示。

4 结论

本论文分析了CORDIC算法实现DDS中相位到幅度转换的原理,详细讲述了一种优化的基于CORDIC算法实现高速高精度DDS的方法。最后在FPGA上实现了一个产生正弦/余弦信号高速高精度DDS,该DDS非常适用于在软件无线电中进行高速高精度的数字调制解调。

参考文献

[1]李滔,韩月秋.基于流水线CORDIC算法的三角函数发生器[J].系统工程与电子技术,2000,2(4):85-87.

[2]周柱,张炜.基于CORDIC的优化的直接数字频率合成器[J].电子工程师,2005,31(10):34-37.

[3]Vankka J,Halonen K.Direct digital synthesizers:theory,des-ign and applications[M].Norwell:Kluwer Academic,2001:3372402.

[4]Volder J E.The CORDIC Trigonometric Computing Techn-ique[J].IRE Transactions on Electronics Computers,1959,8(3):330-333.

DDS倒闭风波 篇2

1月21日, DDS快递在广州、深圳两地贴出的一份公告宣告DDS倒闭既成事实。该公告称:“由于我司资金周转困难, 导致大量客户聚集……现经我司高层协调, 决定于2010年元月22日给予陆续返还2 0 0 9年1 2月2 5日之前的代收货款……2009年12月25日之后的款项将于2010年2月5日之前按照日期先后逐步返还……”

一石激起千层浪。在深广两地的DDS客户看到该公告后, 包括广州石牌东路, 深圳西乡大道、华强北在内的多处DDS区域总部处围聚起了数以百计的受害商户, 并爆发了数百名商户集体上门追债的群体性事件。

据了解, DDS的全称是“深圳东道物流有限公司”, 成立于1997年, 主营同城快递业务。事发前, DDS快递甚至拥有了深圳市10%的市场份额。然而, 就在DDS快递法定代表人、董事长郜伟于一夜之间神秘消失后, DDS快递和员工之间的矛盾、货主与DDS快递之间的矛盾在这一刻被同时点燃。

兵败如山

几乎是一夜之间, 原本人头攒动的DDS江浙分公司的营业场所变得人去楼空。

自2009年11月起, 因为经营不善的问题, DDS江浙分公司突然倒闭。随后, 这种连带效应蔓延到了华东区域的所有网点, 在不到一个月的时间内, DDS上海、浙江、江苏和安徽的所有网点全部停运, 而该区域的所有快递业务也被迫终止。

而在此时, 杭州、上海等地的媒体已经陆续接到了DDS代收货款客户的投诉, 纷纷指责DDS卷走了自己公司的货款。在上海某DDS网点关门后, 一位自称是DDS客户的李姓师傅对媒体称自己是“最大的受害者”, 并被卷走近两万的货款。

华东区域的连锁反应不仅让客户的应收货款失去了踪影, 同时也使该区域DDS员工的工资发放成了问题。据了解, 截至2009年12月中旬, DDS华东区域的员工工资尚有近千万元尚未发放, 而拖欠的各种费用也已达数百万元。

就在广深两地的聚集事件爆发后, 广东省电脑商会立即给出了一份统计数据, 据悉, 仅广州天河区的三大电脑城, DDS客户的直接损失就在2500万元以上;而深圳华强北近4000余商户的损失也高达5000万元以上。

一位在深圳华强北经商的某商户通过QQ告诉本刊记者, 虽然他只损失了9000多元, 但他身边有的商户被卷走的金额高达100万, 目前他们已向当地圆岭派出所报了案, “希望能顺利讨回血汗钱。”

1月22日, 事件有了新的进展。深圳宝安区“处置东道物流公司与供货商纠纷工作组”率先发表声明, 称“公安机关已对该公司法人及相关人员采取刑事强制措施, 并对该公司资产依法查封”。1月25日, 深圳警方也证实了DDS法人代表、董事长郜伟因涉嫌诈骗被立案刑拘的消息。

而在此时, DDS员工的欠薪问题率先出现了转机。1月26日, 深圳市社保部门称其将根据《深圳经济特区企业欠薪保障条例》规定, 先行垫付DDS的欠薪。而在北京, 尽管DDS北京分公司也已为员工发放了工资, 不过, 据本刊记者了解, 员工的工资都是按最低工资1000元/月来计算的。与此同时, 据有关部门统计, DDS目前所拖欠的客户货款、代收款以及员工工资已达亿元以上。

而对于那些被滞留的快件, 许多省市的邮政管理部门也已陆续接管了这些快件的派发。

自毁长城

那么, DDS究竟是一家怎样的企业?又是什么原因让一家规模不算小的民营快递企业在两个月的时间内轰然倒地呢?

据了解, 在经过1 2年的发展后, DDS已经构筑了自己的快递网络, 不仅拥有包括香港、广州、东莞、上海、北京等国内几十个分公司, 而且其加盟分公司也已近百家。除此之外, DDS还有800多个自建服务网点, 旗下员工数量12000多名, 配送车辆2400多部, 日均收件量20多万件。

事发后, 本刊记者联系到DDS快递前总经理孙明江, 据其介绍, 他在2009年7月与郜伟发生矛盾后, 几个月后便离开了公司, 如今他已北上, 在陈平创办的星辰急便公司担任行政总监。对于公司倒闭前的更多内幕, 孙明江表示“不便发表更多评论”, 不过他指出, “网上的一些报道还是有很多不实的成分。”

据记者了解, 当DDS利用低价策略在华南市场站稳脚跟后, 郜伟就迫不及待地要直闯上海滩, 并继续使出“价格杀手”这一杀手锏。然而, 令郜伟万万没想到的是, 他的低价策略在上海滩栽了跟头, 而且连栽三次。但向来有闯劲的他却不愿服输, 决定用更低的价格来再次冲击上海市场, 而这一次的价格更是“低于两元”的赔本价。如此看来, 在2009年夏天, 低价竞争的恶果业已种下。

其实, 就在华东区域投资不善导致资金链断裂后, 郜伟也曾想方设法寻求外力的帮助。据记者了解, DDS快递曾一度与一家公司就融资问题谈妥, 对方还先期投入了几百万用于1月份的工资发放。不过, 如今DDS的彻底倒闭将这一希望化为泡影。

在郜伟向外求助的同时, 他也将求助之手伸向了公司员工。2009年11月20日, 郜伟在向全体员工发出的求助信中这样写道:“十二年的奋斗历程, 眼看就要化为灰烬。淘宝即将上线、跟联邦快递、TNT等的战略合作即将达成、风险投资团队即将入驻……当这一切曙光开始展现的时候, 我们却陷入了万丈深渊。由于今年公司华东战役的开展规模过大, 加上缺乏对华东市场的认识, 没有找到一条正确的路径, 致使事与愿违, 公司制度的各种优惠员工的政策被业务员利用, 改单、不交款成风, 使公司财务状况急剧恶化。日前, 十月份华东的工资尚有700万未发, 拖欠的各种费用有300万之巨, 总数已超千万, 使公司已经无力支撑。但是如果我们把华东撤走了, 华南华北也将不保, 全国都会关门大吉。十二年奋斗的东道大业就会毁于一旦。何去何从已经到了万分危急的时刻了。此时, 能够拯救东道大业的只能是我们自己……”

郜伟在信中还坚信“一万多名东道员工只要一人添一根柴, 东道的火焰依然可以熊熊燃烧”。他同时号召员工捐出部分工资, 并允诺在公司实现盈利后定当厚报。据悉, 为了拯救已处水深火热的DDS, 郜伟已经将家里的房子变卖掉了, 并动用了自己的毕生积蓄。

然而, 随着时间的推移, 郜伟的自救行动宣告失败。

规范与自律

DDS快递正是民营快递困局的真实写照。目前, 不少民营快递企业通过向员工收取押金和代收货款来缓解企业资金压力。而1月21日DDS快递给广东省邮政管理局的书面解释也证明, DDS快递确实存在大规模挪用代收货款的问题。

据《快递业务经营许可管理办法》中关于代收货款问题的规定, “开办代收货款业务的, 应当以自营方式提供代收货款服务, 具备完善的风险控制措施和资金结算系统, 并明确与委托方和收件人之间的权利、义务”。DDS快递虽然具有上述经营资质, 但它不具备完善的风险控制措施。

从代收货款到交付货主, 资金会在快递公司账上停留一段时间。如果监管不到位, 快递公司就可能挪用客户的资金, 用于其他用途。危机正是潜伏于此。据中国快递咨询网首席顾问徐勇介绍, 目前, 很多从事代收货款业务的特许加盟快递企业, 根本就不具备代收货款的资质, 资金管控风险巨大, 企业危机暗存, 一旦企业资金链断裂, 问题将非常严重。

业内专家为此建议, 国家相关部门除了制定具体的代收货款监管措施外, 还应借鉴“再保险制度”, 为代收货款的企业提供商业保险。此外, 国家邮政局及相关部门应尽快论证出台《快递服务质量保证金制度》, 加大违规的成本。

与此同时, DDS快递的倒闭, 也暴露出了民营快递行业存在的“门槛低—快速发展—低价竞争—低成本扩张—资金缺乏监管”的缺陷和困局。

以DDS快递为例, 为了占领华东市场, DD S快递把价格压到最低。DDS快递在进入上海的短短5个月时间里, 日接单金额暴增至15万元, 靠的是“同城5元, 省内6元, 跨省8至10元, 量高8折”的超低价策略。

业内人士表示, 燃油价格和人工成本等不断上涨, 大大增加了快递服务运营成本。而且, 在快件数量剧增、操作运行和派送服务难度增大的情况下, 如果仍然采取低价竞争策略, 就意味着快递公司接的单越多, 亏损就越大。

而在资金管理上, 民营快递也存在问题。

从行业情况看, 民营快递在成立之初, 限于资金问题, 在发展网点时一般采取加盟策略, 即和当地公司合作, 成立分公司。但这种管理方式极不规范, 企业也很难树立品牌。等到企业发展到一定阶段后, 这些民营快递才会考虑用盈利的资金来建立新的公司。但是, 用盈利资金建立新的分公司也意味着大量消耗企业现金流, 一旦扩张步伐过快, 企业资金链就存在断裂的风险。

2009年, DDS快递在全国着手开设分公司, 结束了与同行合作的挂靠关系。这意味着大量的投资让刚建立的分公司在短期内无法盈利, 导致DDS快递投递成本增加, 资金缺口逐渐增大。

DDS仿真模型的建立 篇3

DDS(direct digital synthesize)是一种从相位概念出发直接合成所需波形的频率合成技术。与传统的频率合成技术相比,DDS技术的频率分辨率高,输出频带更宽,频率变换速度快,频率变换时相位连续,频率的合成全部在数字域完成,便于进行相位、幅度和频率的数字调制,更加符合数字化信号处理时代的要求。

但是,DDS技术也有自身的弊端,其输出的信号中含有大量的谐波和杂散。通过对DDS的频谱进行仿真,可以找到DDS的杂散分布规律,寻求有效的杂散抑制技术,这无论是在理论上,还是在实际中都有极其重要的意义。本文用Matlab软件建立DDS的理想和杂散仿真模型,并利用DDS仿真模型对其杂散幅度大小和分布进行了分析,为DDS新结构和新算法的构建建立了良好的平台。

1 DDS数学模型

对于正弦波信号,信号频率由相位变化速率唯一确定:

DDS正是基于这一原理进行频率合成的。将2π弧度作N位量化,相位增量dφ(t)对应的量化后的值定义为频率控制字K,参考时钟Fc=1/dt,故有:

在时钟控制下,每个周期对相位控制字累加,对所得到的相位编码作函数转换,便可得到该相位对应的幅值输出。可用下式表示DDS的输出序列:

在工程中,DDS包含相位累加器、波形ROM、DAC、LPF、参考时钟等五个部分。要得到理想的单一频率输出,DDS各部分的性能必须是理想的,即:累加器的位数N无穷大,且所有输出位均用于寻址波形存储器;波形ROM位数N无穷大,并且每个单元波形采样数据位数D无穷大;DAC数据位数D趋于无穷大,且具有理想的数模转换特性;LPF具有理想的低通特性[1,2,3]。

实际中,理想DDS是不可能实现的。各元件的非理想特性会给DDS输出信号带来杂散,实际DDS原理图见图1。

2 系统仿真模型的建立

2.1 理想模型的建立

对理想化的DDS而言,设Fc为DDS的参考时钟,K为频率控制字,N为相位累加器的位数,f0为DDS的输出频率,它们之间的关系可以表示为:。

尽管在计算机上数据精度的范围有限,但鉴于DDS系统中数据的精度通常远小于计算机,因此仍可用计算机上高精度的浮点数来模拟理想状态。

·参考时钟

在DDS系统中,各部分的时序由参考时钟来驱动,因此各部分的输出均可看作离散时间序列函数,在Matlab中可以用序列n={1,2,3,…}来模拟。

·相位累加器

相位累加器实质上是一个以模数2为基准、受频率控制字K而改变的计数器,它累加了每一个参考时钟周期Fc内合成信号的相位变化,这些相位值的高位对ROM寻址。因此在相位累加器的输出端得到的波形序列是:n·Kmod2N,相位累加器可以用add_y=mod(n*K,2^N)来模拟。

·ROM查询表

在理想状态下,DDS的输出值应具有无限长的精度,所以ROM输出端可以得到理想输出的波形样本序列为:

在仿真中,无限精度的正弦输出值可用浮点数来近似,因此ROM表可以采用语句rom_x=cos(add_y*(2*pi/2^N))来模拟。

·DAC转换

由于在理想状态下,具有理想的数模转换特性,因此这部分不影响波形。

2.2 DDS杂散的主要来源

实际DDS的输出频谱的杂散的主要来源有以下三方面[4,5]:

(1)相位截断误差

因存储器的容量与成本的限制,使得ROM查询表的容量有限,因此常采用的方法是将相位的低B位舍去只留下高A位去寻址ROM,这样就会引起相位信息的损失并引入误差,这就是相位截断误差。

(2)幅度量化误差

实际DDS考虑到ROM的存储量、功耗以及DAC分辨率等因素,ROM中只存储了无限字长二进制码字的最高S位作为ROM输出,也就引入了幅度量化误差。

(3)DAC非线性误差

实际的DAC只有有限输入位,通常为8,10,12位等。另外DAC存在着比较严重的非线性(积分、微分非线性、DAC尖峰电流以及转换速度有限等),所有这些都将导致DDS的输出新增大量杂散。

2.3 杂散模型的建立

假定DAC具有理想性能,且不考虑幅度量化误差,仅对相位截断给DDS频谱带来的杂散进行研究。设用N位累加器输出高M位对ROM寻址,舍位B=N-M,频率控制字为K,时钟频率为Fc。截取高M位后输出的相位序Φp(n)列为:Φp(n)=Φ(n)-(Φ(n)mod 2B)=n Kmod 2N-n K mon2B.

令add_y,error分别表示理想波形和相位误差序列,则在Matlab中理想波形和相位误差序列可分别表示为:

add_y=mod(n*K,2^N)

error=mod(n*K,2^(N-M))

令rom_y表示ROM表中查询的相位序列,则根据式(4)该序列可表示为:rom_y=cos(2*pi*(add_y-error)/(2^N))。

波形ROM中幅度值是量化后固化进去的,因而存在量化误差。采用舍入量化方式,量化阶为q=2-D(D为量化位数,即ROM字长)。因正弦函数值介于-1到+1之间,根据舍入量化原理,可以在-1+1/(2^(D+1))和1-1/(2^(D+1))之间,每隔1/(2^(D+1))取一个区间,取每个区间的中值作为对应的量化码本值,在区间(-∞,-1+2^(D+1))和(-1-2^(D+1),∞),则分别取-1和1作为量化码本值。

综上所述,我们可以编写以下Matlab程序,实现DDS波形频谱分析。

N=21;%累加器的位数;

K=1 800;%频率控制字;

M=11;%截取累加器的高10位;

D=8;%8bit DAC

n=1:pe;

pp=pe+1;

add_y=mod(n*K,2^N);%累加器的输出表达式;

error=mod(n*K,2^(N-M));

rom_x=cos(2*pi*add_y/(2^N));

rom_y=cos(2*pi*(add_y-error)/(2^N));%相位到幅度映射的输出;

pat=-1+1/(2^(D+1)):1/(2^(D+1)):1-1/(2^(D+1));%量化区间

codebook=-1+1/(2^(D+2)):1/(2^(D+1)):1-1/(2^(D+2));%量化码本值

[Pxx,wx]=pwelch(rom_x,[],0,pp);

figure;%figure1理想DDS输出

psdplot(Pxx/max(Pxx),wx);

[Pyy,wy]=pwelch(rom_y,[],0,pp);

figure;

%figure2只有相位截断,没有量化

psdplot(Pyy/max(Pyy),wy);%归一化显示出图;

[index,quants2]=quantiz(rom_x,pat,codebook);

[Pzz,wz]=pwelch(quants2,[],0,pp);

figure;%figure3只有量化误差

psdplot(Pzz/max(Pzz),wz);

[index,quants1]=quantiz(rom_y,pat,codebook);%量化

[Pxx,wx]=pwelch(quants1,[],0,pp);%频谱分析;

figure;%figure4相位截断加量化

psdplot(Pxx/max(Pxx),wx);

3 模型仿真结果分析

在不考虑DAC非线性情况下取累加器位数N=21的仿真结果如下。

图2是在仿真中理想状态下DDS输出波形的频谱图,其横纵坐标均进行了归一化处理。从图中可以看出理想状态下DDS输出波形的频谱纯度很高,杂散分量很小。从图2与图3、4、5的对比中不难看出随着各种误差的引入DDS的输出频谱逐渐变得杂散。对不同的N、M、D进行仿真对比实验可以看出,随着N、D的增大和M的减小DDS输出频谱的杂散越来越小。

4 结束语

本文根据DDS的基本结构和工作原理,建立了DDS的仿真模型,并利用所建立的模型分析了DDS的杂散幅度大小和分布,找出DDS的杂散分布规律。本文的工作为DDS新结构和算法的研究搭建了较好的平台。随着工艺的日新月异,高性能的DDS器件不断涌现,DDS的应用领域也越来越广。因此,研究提高DDS信号质量的方法,对拓宽DDS应用领域、更好地发挥DDS技术优势有重要意义。

摘要:首先介绍了直接数字合成(DDS)技术的基本原理,并分析了工程实际中DDS的误差信号来源。在此基础上着重论述了利用软件建立DDS的理想和杂散仿真模型的方法。通过建立仿真模型,可以更方便有效地对DDS杂散分布特点进行分析。

关键词:DDS,MATLAB仿真,相位截断,幅度量化

参考文献

[1]李国勇,谢克明.控制系统数字仿真与CAD[M].北京:电子工业出版社,2003.

[2]张玉兴,彭清泉.相位舍位对DDS谱分析的影响[J].西安电子科技大学学报,1997(2):26-31.

[3]万天才,频率合成器技术发展动态[J].微电子学,2004,34(4):366-370.

[4]戎强.基于DDS/FPGA的多波形信号源的研究[D].哈尔滨:哈尔滨工程大学,2008.

基于USB的DDS控制 篇4

USB(通用串行总线)接口以其速度快、功耗低、支持即插即用、使用安装方便等优点而得到了广泛的应用。目前USB2.0标准的传输速度已达480 Mbit/s,这使得USB可以推广到硬盘、信息家电网络产品和其他快速外设。Cypress公司生产的USB2.0控制器CY7C68013 提供了一种独特的接口方式,即GPIF(通用可编程接口)方式。它与传统接口方式的主要区别有2个:一是在数据传输过程中不需要CPU干涉,使得传输速率明显提高,从而可以充分利用USB2.0的传输带宽;二是由软件设置读/写控制,其控制方式类似于状态机,提高了传输稳定性。因此,本文介绍的基于USB2.0控制器CY7C68013的对DDS控制的设计,就是充分利用了该芯片这一独特的数据传输接口方式,有效地解决了在传统接口方式下USB2.0设备数据传输速度的局限性,大大提高了数据的传输速率。

1 USB控制芯片

EZ-USB FX2系列芯片是Crpress公司推出的针对USB2.0规范的高速外设控制器,提供了对USB2.0的完整解决方案。该芯片包括带8 kB片内RAM的高速CPU、16位并行地址总线8位数据总线、I2C总线、4 kBFIFO存储器以及GPIF、SIE(串行接口引擎)和USB2.0收发器。在代码的编写上,它与8051系列单片机兼容,且速度是标准8051的3倍~5倍。其中,GPIF是最引人注目的一个特点,正是通过这种机制,它才能够实现外设与主机的高速(480 bit/s)数据传输。

EZ-USB FX2系列有3种型号:CY7C68013-56PVC、CY7C68013-100AC、CY7C68013-128AC。

其中,CY7C68013-128AC是128脚,TPQF封装,功能非常完善,与另外2种相比,主要是增加了16位地址总线和8位数据总线以及更多的IO口,因此,CY7C68013-128AC的可扩展性最好。图1是该芯片的内部结构图。

1.1 通用可编程接口GPIF

GPIF是Cypress公司在其EZ-USB FX以及FX2系列单片机中设计的一个可由用户编程的接口,具有快速、灵活等特点,可使用多种协议完成与外围器件的无缝连接。对其可以根据需要进行编程,且运行中不需要CPU的干预,仅通过一些CPU标志和中断与增强型8051内核通信。CY7C68013 的GPIF方式如图2所示。

1.2 GPIF主要信号线

GPIF主要信号线描述如下:

a) IFCLK:是所有GPIF操作的参考时钟。设置为内部时钟时,主频为48 MHz或32 MHz。设置为外部时钟时,范围为5~48 MHz。

b) GPIFADR[8∶0]:GPIF使用GPIFADR[8∶0]来提供外设所需的地址线。

c) FD[15∶0]:是GPIF的数据线,是GPIF与外设之间传输数据的通道。在16位模式中,FD[7∶0]代表FIFO的第1个字节,FD[15∶8]代表FIFO的第2个字节。

d) CTL[5∶0]:这几根控制输出线可提供外围设备所需的信号,如读/写信号、选通信号等。

e) RDY[5∶0]:这几根控制输入线可用于检测外设的状态,如FIFO状态标志、数据能否获取标志等。

f) GSTATE[2∶0]:是当前GPIF状态数,用于判断GPIF的状态,一般用于调试。

2 DDS基本原理和芯片AD9858

2.1 DDS基本原理

DDS(直接数字频率合成器)是一种用来产生输出波形(正弦波、方波或三角波)或从一个固定频率的时钟源产生时钟信号的最常用的数字技术。DDS 的原理框图如图3所示。

相位累加器在A位FCW(频率控制字)的控制下,以参考时钟频率fc为采样率产生待合成信号相位的数字线性序列,然后将其高P位作为地址码,通过查询正弦表ROM产生S位对应信号波形的数字序列S(n),再由DAC(数模转换器)转换为阶梯模拟电压波形,最后由LPF(低通滤波器)平滑为正弦波输出。FCW和fc共同决定了DDS的输出信号频率f0。

2.2 AD9858的介绍

AD9858是一款高性能的DDS器件,可方便快速地产生线性调频、单频脉冲及编码调制信号。它具有1 GHz的DDS、10位DAC、快速频率跳跃和精细调谐分辨率功能的单片解决方案。另外,AD9858 内部集成了DAC、相位/频率检测器和电荷泵,能满足设计者的低相位噪声、低虚假能量、快速频率转换和宽带宽线性扫描的要求。

AD9858有3种工作模式:单音频、频率扫描和全睡眠模式。单音频模式下,AD9858产生由内部寄存器FRW(频率调谐字)控制的单频输出信号。频率扫描模式可以自动完成频率扫描工作,产生线性调频或实现其他频率扫描应用,而且不受I/O口对多寄存器操作时的速度限制睡眠模式关闭各个功能模块,降低功率损耗。AD9858有并行和串行2种编程模式,有4个相互独立的工作组(profile0~3),每个工作组由32位的FTW(频率调制字)和4个14位的POW(相位补偿字)组成4个工作组之间由外部引脚PS0和PS1进行切换,其对应关系如表1所示。每个表能预先写入频率调整字和相位偏移校正字,只需要改变外部引脚PS0和PS1的电平,输出信号的频率和相位就可以快速地变为表中预置的频率和相位。

3 系统框架和软件设计

整个系统的框架如图4所示。

将AD9858的WR和RD引脚分别连接到单片机CY7C68013的CTL2和CTL1,AD9858的8位数据线D7~D0 和CY7C68013的FD[7∶0]相连,6位地址线AD2DR5~ADDR0连到CY7C68013的GPIFADR[5∶0],用户( Profile) 的外部选择引脚PS0和PS1连到CY7C68013的FD9和FD8。FD10和FD11分别接AD9858 的频率更新信号FUD和复位信号RESET。

CY7C68013的USB端点2、4、6、8 的FIFO与GPIF的FIFO是同一个地址区域,因此可以将通过USB传输的数据不经过CPU的干预直接输出到GPIF,从而节省大量数据内部拷贝的时间。

GPIF通过端点2向DDS芯片AD9858输出数据。如图5所示。

本方案采用GPIF主控接口模式,并使用PORTB和PORTD双向FIFO数据线来构成通向4个FX2端点FIFO(EP2、EP4、EP6、EP8)的数据接口,以用来连接数据线FD[15∶0]并进行数据的传送。GPIF作为内部主控器与FIFO相连,并通过产生用户可编程的控制主控器与FIFO相连,并通过产生用户可编程的控制信号CTL2、CTL1与AD9858进行通信。

FX2用4个波形描述符来控制各个状态。4个波形分别为“FIFO写”、“FIFO读”、“单字节(或字)写”和“单字节(或字)读”。这些波形描述符可动态地配置给任何一个端点FIFO。配置后,GPIF将依据波形描述符产生相应的控制逻辑CTL及握手信号RDY来与AD9858相接口,以满足向FIFO读写数据的需要。开始执行GPIF FIFO的传输波形非常简单。对GPIF TRIG寄存器的R/W位写入合适的值设置数据传输的方向。如果对R/W写1,则FIFO读波形被触发开始执行;如果写0,则写波形被触发。每个波形描述符包含了S0~S6共7个有效状态和1个空闲状态。在每个有效状态对应的时间段中,经过预先设置,GPIF可以做以下几件事情:驱动(使为高或低)或悬浮6个输出控制端;采样或驱动FIFO的数据总线;增加GPIF地址总线的值;增加指向当前FIFO指针的值;启动GPFIWF (波形描述符)中断。

Cypress公司提供的一个基于Windows界面的开发工具GPIF Designer,用它进行GPIF的设计可以使得GPIF初始化设计和波形描述符设计十分简便。本例中给端点2配置为“FIFO写”波形,GPIF的写波形设计如图6所示。

固件程序中,TD_Init()函数的主要作用是初始化设备,包括端点配置、I/O 配置和端点FIFO传输类型。为了尽可能利用USB2.0传输带宽,将端点2配置成4缓冲模式,每个缓冲512 字节。TD_Poll()函数主要完成GPIF的启动。GPIF通过端点2,把数据传输给DDS芯片AD9858来产生各种波形。

程序如下:

4 结束语

此设计提出了控制DDS的新的方法,利用USB接口速度快、功耗低、支持即插即用、使用安装方便等优点以及GPIF可编程接口的快速灵活的特点,很好地实现了GPIF与DDS的连接接口,通过USB口有效地控制DDS,达到了很高的数据传输速率。

摘要:采用符合USB2.0协议的FX2系列芯片中的CY7C68013,通过对其可编程接口控制逻辑的合理设计和芯片内部FIFO的有效运用,提出通过USB(通用串行总线)接口控制高性能的DDS(直接数字频率合成器)芯片AD9858的方法。USB接口具有速度快、功耗低、支持即插即用、使用安装方便等优点。GPIF(通用可编程接口)具有快速、灵活等特点,可以根据需要进行编程,且运行中不需要CPU的干预,仅通过一些CPU标志和中断与增强型8051内核通信。AD9858是一款高性能的DDS器件,可方便快速地产生线性调频、单频脉冲及编码调制信号。因而此方法具有速度快、性能高、占用CPU资源少等特点。

关键词:USB,DDS,GPIF,AD9858

参考文献

[1]王奕,王凯.基于USB2.0的数据采集系统的设计与实现[J].电子工程师,2002,28(12):15-17,29.

[2]蒋金涛,杨鸣.USB2.0控制器EZ_USB_FX2的性能特点及其数据传输实现[J].计算机工程与应用,2005,41(11):94-104.

[3]李亭,李华.GPIF与FIFO接口设计[J].电测与仪表,2006,43(6):56-58.

[4]王尽秋,张玉兴.基于AD9858的射频信号发生单元的设计[J].国外电子测量技术,2005,24(10):41-44.

[5]徐媛媛,吴援明.基于AD9858的宽带正交信号产生技术的研究[J].现代电子技术,1997,30(7):12-14.

[6]刘磊,刘书明,唐艾宾,等.用DDS器件AD9858实现复杂雷达信号源[J].今日电子,2004(10):58-59.

基于DDS的宽带信号发生器 篇5

DDS的主要原理是在参考频率的控制下,通过相位累加器对频率控制字进行线性累加,得到的相位码对波形存储器进行寻址,输出的幅度码经过数模转换得到相应的阶梯波,最后通过低通滤波器得到较为光滑的一定频率的波形。

相位累加器是DDS构建体系中的一个重要部分,若考察一个带有32位相位累加器的DDS,如ADI公司的AD9858。但是在实际中,如果直接将32位的取样相位信息在正弦查表ROM内转换成为对应的幅度信息,就需要查表ROM内包含着232个存储单元(232*8bit)。从芯片设计角度,要完成这么庞大的ROM是不切实际的,而且随着角度-幅度转换器容量的增大,需要的管芯面积也会响应的迅速增加,同时还会导致功耗的增大,即使这无关紧要,那么目前也很难找到32位的高速DAC。所以,只能有选择地取样相位字中的一部分送往正弦查表ROM。对于AD9858只能最多有15位送至相位幅度转换器,而其余的低17位将被忽略掉,这样就产生了相位截断误差,表现在输出频谱上就是杂散分量,杂散是DDS谱质研究的重要内容。

2. 相位截断杂散的分析

DDS输出频率f0=Kfc/2N,其中,K为频率控制字,fc为参考频率,N为相位累加器的位数。通过计算可以得到由于相位截断引起的相位误差序列εp(n)为

其中B为截断的位数。同时εp(n)的周期为μ'=,b=Kmod2B。

由上式可知,当K=m2B时(m为正整数),εp(n)=0,此时输出频率f0为

A为相位累加器输出的位数。因此,当输出频率为fc/2A的整数倍时,相位截断并不引入误差。

由图1可知,K=235(奇数),主频为f0=235fc/1024=0.229fc,由相位截断引起的杂散谱线“成对”出现,“成对”谱线之间的频率间隔为fc/2B=fc/64。由图2可知,K与2B有公约数且K为2B的整数倍,因此没有相位截断误差。

3. 整体设计及测试

采用FPGA控制AD9858产生不同频率的波形。频率控制字决定着输出频率的大小。利用LabWindows/CVI获取AD9858中寄存器所需的数据。LabWindows/CVI获取数据的方法是通过对I/O借口设备的驱动来完成的。通过数据采集卡获取数据是虚拟仪器获取数据的渠道之一,也是构成虚拟仪器的最基本方式。

工作频率为1GHz,频率控制字K为4000 0000H,理论上输出频率应为250MHz。恰好是之前分析的情况,K为2B(B=17)的整数倍,此时无相位截断误差。从测试结果来看,此时的杂散也优于-60dBc,如图3所示。

当然K不可能只是2B的整数倍,而得到如图2中那么纯净的频谱。在实际应用中,K可以根据需求取不同的值。因此设法使GCD(K,2B)=1,即两个数互质,则可使杂散得到4dB的改善[3]。在N=10,B=6的条件下,图4的频率控制字为K=333,图3-13(2)的频率控制字为K=336。从仿真效果来看,图4比图5略有改善,但不到4dB,这是因为相位截断时的输出频谱公式是近似的,并非完全的理想公式,但改善还是存在的。

由Nyquist定理,DDS最大输出频率为参考频率的40%,即频率输出范围为<=400MHz。AD9858参考频率为1GHz,最大输出频率为400MHz。测试结果如图6所示。理论上输入的K=66666666H,在实际输入时,可以进行调整,输入与其接近的奇数,基本不会影响其输出结果,又可以适当抑制杂散。该频点的窄带表现可以看出测试结果符合预期要求,即使在整个频谱图上可以找到在126MHz处有一处明显的杂散(约为-45dBc),它对400MHz的影响是极小的。

4. 结束语

综上所述,DDS技术虽然有相位截断的缺点,但是将其运用于宽带雷达信号的产生无疑是最好的方法,即使在较高的频率也能控制杂散对主频的影响。若将硬件设计中的LPF换为BPF(带通滤波器),并修改LabWindows/CVI中写入的数据,则可产生线性调频信号,这也是DDS技术可以产生多种波形信号的优点。

参考文献

[1]费元春,苏广川,米红.宽带雷达信号产生技术[M].北京:国防工业出版社,2002.

[2]王建明.基于DDS技术的多波形信号源设计[D].南京:南京理工大学,2005.

[3]郭立浩.基于FPGA的直接数字频率合成器的研究与应用[D].西安:西北工业大学,2006.

DDS算法 篇6

频率合成技术是近代电子系统和装备的重要组成部分,在通信、雷达、导航、电子对抗以及测试等设备中均得到了广泛应用。它大致经历了三个发展阶段:直接模拟式频率合成技术、间接模拟式频率合成和直接数字频率合成[1]。1971年,美国学者J.Tierney等人就提出了直接数字频率合成(DDS)的概念[2],这是一种基于波形存储的频率合成技术,采用全数字化实现,它具有无可替代的优势,主要有:频率分辨率高,切换时间短,相位变化连续,易于产生各种调制信号[3]。

不同的应用领域,对DDS的性能有不同的要求。当把DDS用作频综系统的本振信号源时,对杂波信号的抑制要求就比较高,在60 d B甚至70 d B以上;当把DDS用于雷达目标模拟源的基带信号产生时,除了对杂波抑制有一定的要求外,对基带信号的带宽也有很高的要求。

现某雷达目标模拟源要求基带信号频率在400~700 MHz范围内,杂波抑制不小于50 d Bc,频率分辨力小于0.5 Hz,相噪指标不大于-110 d Bc/Hz@10 k Hz。

1 并行DDS原理

传统的单路DDS的原理框图如图1所示,在系统时钟的作用下,相位累加器对频率控制字进行线性累加,取其高W位做相幅转换,得到D位数字序列输出,再通过数/模转换器和低通滤波器后得到平滑的正弦波,这就是DDS的原理[4,5,6]。

传统DDS的局限性在于输出频率有限。由奈奎斯特采样定理可知,DDS的最高输出频率应该是系统时钟频率的一半[7],考虑到后续滤波器的设计压力,工程上一般认为最高输出频率为系统时钟[8]的40%。而系统时钟由于受DDS算法和芯片工艺水平限制,很难大幅提升,目前市场上主流的DDS芯片系统时钟频率在1 GHz左右。

2010年,刘科等提出并行存储和多DAC伪插值的概念,解决存储器、累加器和数/模转换器的速度限制[9]。随着微电子工艺水平的发展以及集成化程度的不断提高,数/模转换器的工作速度越来越快,加快了高速数字信号处理的发展,而存储器和累加器依然的速度依然限制着DDS的应用。

并行多路DDS是在传统的单路DDS和并行存储、多DAC伪插值的基础上做了进一步的改进,即将多路DDS的相幅转换输出做并/串转换后再送往高速数/模转换器,经低通滤波后即可。

以四路并行DDS为例,其相位累加和相幅转换如图2所示。其中P表示某时刻的初始相位,K为频率控制字。

m路并行DDS原理框图如图3所示,其中相位累加器、N位加法器和相幅转换器的工作时钟均为系统频率的m分频,只有并/串转换和数/模转换是工作在系统时钟频率,这样就减轻了相位累加器和相幅转换的工作压力。

设多路DDS输入时钟为fs,输入的频率控制字为K,则可得输出频率fo:

式中:K=m,2m,3m,4m,⋯。

单路DDS的输出频率:

即系统时钟频率为fs、累加器位数为N的单路DDS等效于系统频率为fsm、累加器位数为N的m路DDS,它们的输出频率相同,改变的只是等效时钟频率和频率控制字。

2 方案设计及结果分析

目前各大芯片制造厂商相继推出采用先进CMOS工艺生产的高性能和多功能的DDS芯片。以AD9912为例[10],由于采用48位相位累加器,其频率分辨力达到4μHz,同时相位分辨力和幅值分辨力分别为19和14位,具有很好的杂波抑制水平,在频踪系统中被广泛采用。由于AD9912的系统时钟为1 GHz,其最大输出频率只有400 MHz,不满足本课题要求。

随着微电子技术的不断进步,可编程逻辑器件的功能越来越强大。本课题采用FPGA+DAC的方式产生宽带信号。系统框图如图4所示。

从射频接口输入的2 GHz时钟信号首先进入高速DAC芯片,四分频后输出给FPGA芯片,再经过二分频即得到250 MHz的时钟,即为FPGA的主时钟。在FPGA内部,8路DDS信号做并/串转换,然后再与源同步时钟一起进入高速DAC,经过低通滤波后输出所需的400~700 MHz的信号。

FPGA内部实现的相位累加器32位,则频率分辨力为2G/232≈0.47Hz,寻址相位和DAC分辨力分别为18和14位,同时二次谐波以及镜像均在带外,可保证在400~700 MHz范围内杂波抑制优于50 d Bc。

图5和图6给出了两张测试频谱图,杂波抑制均满足设计要求。

3 结语

输出频带窄和杂散抑制差一直是限制DDS发展的主要因素。本文提出了多路并行DDS原理,可大大拓展输出频率范围。设计的FPGA+DAC电路可实现输出频率在400~700 MHz范围,杂波抑制优于50 d Bc,频率分辨力小于0.5 Hz。该DDS电路同时具有接口简单、使用灵活等优点,可用于在雷达、电子战领域的宽带细分辨力信号产生。

摘要:输出频带过窄是限制直接数字频率合成(DDS)发展的瓶颈之一。提出了多路并行DDS原理并且给出了具体案例,设计实现了输出频率在400700 MHz范围内杂波抑制优于50 dBc,频率分辨力小于0.5 Hz,且便于后续实现各种调制。该DDS电路同时具有接口简单,使用灵活等优点,可用于在雷达、电子战领域的宽带细分辨力信号产生。

关键词:并行直接数字频率合成,宽带,杂波抑制,分辨力

参考文献

[1]温国谊.频率合成源的分析与实现技术的研究[D].西安:西安电子科技大学,2008.

[2]TIERNEY J,RADER C,GOLD B.A digital frequency synthe sizer[J].IEEE Transactions on Audio and Electroacoustics,1971,19(1):48-57.

[3]喻峰.基于FPGA的低相噪DDS的设计与实现[D].哈尔滨:哈尔滨工业大学,2007.

[4]李明斌.直接数字频率合成的原理及频谱特征分析[J].电讯技术,1995,8(4):16-22.

[5]王晨.基于DDS的信号产生技术研究[D].西安:西安电子科技大学,2010.

[6]殷雷,金海军,李映雪,等.基于DDS的高精度函数信号发生器的研制[J].现代电子技术,2009,32(1):68-69.

[7]汪诗洋.一种扩展DDS输出带宽的新方法[J].舰船电子对抗,1999(2):26-27.

[8]吕捷.S波段低杂散高速跳频频综的设计[D].成都:电子科技大学,2007.

[9]刘科.高速任意波形合成关键技术研究[D].成都:电子科技大学,2010.

[10]Analog Devices.AD9912:1 GPRS direct digital synthesizerwith 14-bit DAC[EB/OL].[2010-06].http://www.analog.com/en/rfif-components/direct-digital-synthesis-dds/ad9912/prod ucts/product.html.

[11]牛耕,陈思宇,于继翔.基于DDS技术的正弦交流信号源的设计[J].现代电子技术,2012,35(3):52-56.

基于DDS的高频信号发生器设计 篇7

1DDS原理

DDS主要由相位累加器、波形存储ROM、数模转换器DAC和低通滤波器LPF构成。他们之间关系满足f0=FTW*fc/2N。其中FTW为频率控制字,fc为时钟频率,N为相位累加器的字长。

2系统方案设计

系统由低功耗STM32、CP2102桥接电路、AD9854模块、 7阶椭圆型低通滤波器、放大电路等组成。

3硬件电路设计

3.1 DDS外围引脚设计

DAC输出幅值由AD9854的56管脚RSET电阻值决定,计算公式:RSET=39.93/Iout,式中Iout单位为A,RSET单位为 Ω。由于DAC电流输出满幅值为20m A,为了确保无失真的动态范围SFDR性能,使输出10m A,选取RSET阻值为3.9 kΩ。

3.2波形滤波设计

对D/A转换输出 阶梯波的 频谱分析, 除了主频f0还有fc±f0,2fc±f0……处的非谐波分量,为了提取主频f0,必须在D/ A输出后滤波。Nyquist采样定理 :DDS输出频率理论上可以达到fc/2,由于非理想过度特性和高频谱的限制,一般将DDS的输出频率限制在0-40%fc。取过渡带下降速度快且陡峭的7阶椭圆型低通滤波器。

3.3放大电路设计

AD9854输出0.1-100MHz差分正弦波,电阻转换成电压信号,再经过7阶低通滤波器输出。为了使输出幅值满足宽范围需求,设计信号调理AD620仪表放大电路,通过改变电阻Rg来调节电压幅值。

4软件设计

4.1上位机设计

用VB编写上位机配置软件,AD9854上位机如图1所示。AD9854配置包含时钟倍频、工作模式、输出频率、返回状态。系统采用外接晶振30MHz,时钟倍频 *10,工作模式Single,频率输出10MHz,当参数设置正确时,返回状态栏会显示OK。

4.2系统软件设计

程序是一个无线循环,系统初始化,使能串口中断,中断来时配置AD9854参数,系统总流程框图,如图2所示。等待串口接收中断后,经解析后,向AD9854内部寄存器并行写入控制字。向地址0x1EH,设置倍频为10;向地址0x1FH,选择模式0 (Single模式);向频率地址0x04H-0x09H写入48位的6个字节的频率控制字。

5实验测试

通过上位机软件控制频率变化,以正弦波形频率变化测量为例,分析DDS产生的0.1MHz-100MHz频率相对误差与绝对误差, 测试随机读取5次数据,取平均值为最终的测试数据。测试数据如表1所示。

6结论

在对DDS基本原理分析基础上,提出高频信号发生器的实现方案,搭建了DDS软硬件平台,对信号源产生以正弦波为主进行了频率验证。实验证明: 通过上位机软件改变信号参数,输出频率范围内,绝对误差小于0.1%、相对误差小于0.02%。

摘要:在直接数字频率合成(DDS)原理进行分析的基础上,提出了一种基于DDS技术的高频信号源实现方法。用VB编写上位机调试软件,对正弦信号频率进行测试分析,绝对误差小于0.1%、相对误差小于0.02%。

【DDS算法】推荐阅读:

扩展算法07-16

蝶形算法07-18

区间算法07-18

搜索算法07-19

矩阵算法05-13

回归算法05-15

光流算法05-16

边缘算法05-16

查询算法05-17

映射算法05-26

上一篇:体育经济市场下一篇:明星名人