首页 毕业设计(论文)--基于FPGA的DDS设计

毕业设计(论文)--基于FPGA的DDS设计

举报
开通vip

毕业设计(论文)--基于FPGA的DDS设计毕业设计(论文)--基于FPGA的DDS设计 毕业设计(论文)--基于FPGA的DDS设计 基于FPGA的DDS设计 摘 要直接数字频率合成 DDS 技术采用全数字的合成方法所产生的信号具 有频率分辨率高频率切换速度快频率切换时相位连续输出相位噪声低和可以产 生任意波形等诸多优点 本文在对现有DDS技术的大量文献调研的基础上提出了符合FPGA结构的 DDS设计方案并利用PLUS?软件在ACEX1K系列器件上进行了实现详细的介绍了 本次设计的具体实现过程和方法将现场可编程逻辑器件FPGA 和DDS 技术相结 ...

毕业设计(论文)--基于FPGA的DDS设计
毕业 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 论文 政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载 )--基于FPGA的DDS设计 毕业设计(论文)--基于FPGA的DDS设计 基于FPGA的DDS设计 摘 要直接数字频率合成 DDS 技术采用全数字的合成方法所产生的信号具 有频率分辨率高频率切换速度快频率切换时相位连续输出相位噪声低和可以产 生任意波形等诸多优点 本文在对现有DDS技术的大量文献调研的基础上提出了符合FPGA结构的 DDS 设计方案 关于薪酬设计方案通用技术作品设计方案停车场设计方案多媒体教室设计方案农贸市场设计方案 并利用PLUS?软件在ACEX1K系列器件上进行了实现详细的介绍了 本次设计的具体实现过程和方法将现场可编程逻辑器件FPGA 和DDS 技术相结 合具体的体现了基于VHDL语言的灵活设计和修改方式是对传统频率合成实现方 法的一次重要改进FPGA器件作为系统控制的核心其灵活的现场可更改性可再配 置能力对系统的各种改进非常方便在不更改硬件电路的基础上还可以进一步提 高系统的性能文章给出仿真结果经过验证本设计能够达到其预期性能指标 关键词直接数字频率合成器硬件描述语言Abstract The DDS Direct Digital Frequency Synthesis technique adopts full-digital synthesis methods The generated signals have advantages of high frequency resolutions fast frequency switching continuous phase while frequency switching low noise phase and being able to generate arbitrary waveforms In this paper after reviewing a lot of literatures published on DDS technology DDS scheme based on FPGA structure are proposed and then implemented in ACEX1K series FPGA using PLUS? toolthe paper introduced the concrete implementation process this way associates DDS with field programmable gate array FPGA technology the way based on VHDL is flexible in designing and modifying which is a important innovation to the tradition synthesize way FPGA device control core as system its flexible scene can altering can dispose ability again very convenient to various kinds of improvement of the system can also improve systematic performance further on the basis of altering hardware circuit at the end of paper the author displays simulation result after verification the design meets the demand of original definition Key words DDSFPGAVHDL 第1章 绪论 直接数字频率合成技术 Direct Digital Frequency SynthesisDDFS一般简称DDS 是从相位直接合成所需波形的一种新的频率合成技术近年来直接数字频率合成器 DDS 由于其具有频率分辨率高频率变换速度快相位可连续变化等特点在数字通信系统中已被广泛采用随着微电子技术的发展现场可编程门阵列 FPGA 器件得到了飞速发展由于该器件具有速度快集成度高和现场可编程的优点因而在数字处理中得到广泛应用越来越得到硬件电路设计工程师的青睐DDS 技术的发展将有力地推动这一目标的实现 从频率合成技术的发展过程看频率合成的方法主要有三种 1最早的合成方法称为直接频率合成它是使基准信号通过脉冲形成电路来产生丰富谐波脉冲随后通过混频分频倍频和带通滤波器完成频率的变换和组合以产生我们需要的大量离散频率从而实现频率合成其合成方法大致可以分为两种基本类型一种是所谓非相关合成方法另一类是所谓相关合成方法这两种合成方法的主要区别在于所使用的参考频率源的数目不同它的缺点在于制作具有相同频率稳定性和精度的多个晶体参考频率源既复杂又困难而且成本高 2锁相频率合成是应用模拟或数字锁相环路的间接频率合成它被称为第二代频率合成技术早期的合成器使用模拟锁相环后来又出现了全数字锁相环和数模混合的锁相环数字鉴相器分频器加模拟环路滤波压控振荡器的混合锁相环是目前最为普遍的PLL 组成方式锁相环频率合成技术提供了一种从单个参考频率获得大量稳定而准确的输出频率的方法并且频率输出范围宽电路结构简单成本低 3直接数字频率合成DDS为了取得更快的频率转换速度随着数字技术的发展 出现了直接数字频率合成器DDSDDS 技术是首先将相位以极小的间隔离散化计算出正弦信号对应于这些相位的幅度值形成一个幅度相位表并存储于DDS器件的ROM 中DDS 工作时利用数字方式累加相位得到信号在该时刻的相位值然后按一定的相位幅度转换算法在DDS 的ROM 中查表得到信号在该时刻的幅度值最后将信号通过DA 变换和低通滤波器形成模拟正弦波或存储波形的频率合成技术 12 DDS的优点与缺点 直接数字频率合成是一种比较新颖的频率合成方法DDS是一种全数字化的频率合成方法DDS频率合成器主要由频率寄存器相位累加器波形ROM DA转换器和低通滤波器组成在系统时钟一定的情况下输出频率决定于频率寄存器的中的频率字而相位累加器的字长决定了分辨率基于这样的结构DDS频率合成器具有以下优点 1 频率分辨率高输出频点多可达个频点〔假设DDS相位累加器的字长是N 2 频率切换速度快可达us量级 3 频率切换时相位连续 4 可以输出宽带正交信号 5 输出相位噪声低对参考频率源的相位噪声有改善作用 6 可以产生任意波形 7 全数字化实现便于集成体积小重量轻 虽然DDS 有很多优点但也有其固有的缺点 1杂散抑制差这是DDS的一个主要的缺点由于DDS一般采用了相位截断技术它的直接后果是给DDS的输出信号引入了杂散 2工作频带受限根据DDS 的结构和工作原理DDS 的工作频率要受到器件速度的限制和基准频率有直接的关系但随着目前微电子水平的不断提高DDS 工作频率也有很大的提高 3 相位噪声性能与其它频率合成器相比DDS 的全数字结构使得相位噪声不能获得很高的指标DDS的相位噪声主要由参考时钟信号的性质参考时钟的频率 与输出频率之间的关系以及器件本身的噪声基底决定 13 DDS的发展前景 近几年超高速数字电路的发展以及对DDS的深入研究DDS的最高工作频率以及噪声性能已接近并达到锁相频率合成器相当的水平随着这种频率合成技术的发展现已广泛应用于通讯导航雷达遥控遥测电子对抗以及现代化的仪器仪表工业等领域直接数字频率合成器的基本优点是在微处理器的控制下DDS具有频率和相位分辨率高频率切换速度快易于智能控制等突出特点 随着集成电路工艺的不断改善这些产品的功能也愈来愈强大现在不仅在一个芯片上能够集成DDS所需要的全部功能而且也具备了一些有用的调制能力除了在仪器中的应用外DDS在通信系统和雷达系统中也有很重要的用途通过DDS可以比较容易的产生一些通信中常用的调制信号如频移键控 FSK 二进制相移键控 BPSK 和正交相移键控 QPSK DDSDDS和PLL相结合可以产生毫米波线性调频信号DDS移相精度高频率捷变快和发射波形可捷变等优点在雷达系统中也可以得到很好的发挥 14 电子设计自动化EDA 20世纪90年代国际上电子和计算机技术较先进的国家一直在积极探索新的电子电路设计方法并在设计方法工具等方面进行了彻底的变革取得了巨大成功在电子技术设计领域可编程逻辑器件如CPLDFPGA的应用已得到广泛的普及这些器件为数字系统的设计带来了极大的灵活性这些器件可以通过软件编程而对其硬件结构和工作方式进行重构从而使得硬件的设计可以如同软件设计那样方便快捷这一切极大地改变了传统的数字系统设计方法设计过程和设计观念促进了EDA技术的迅速发展 EDA是电子设计自动化Electronic Design Automation的缩写在20世纪90年代初从计算机辅助设计CAD计算机辅助制造CAM计算机辅助测试CAT和计算机辅助工程CAE的概念发展而来的EDA技术就是以计算机为工具设计者在EDA软件平台上用硬件描述语言HDL完成设计文件然后由计算机自动地完成逻辑编译化简分割综合优化布局布线和仿真直至对于特定目标芯片的适配编译逻辑映射和编程下载等工作EDA技术的出现极大地提高了电路设计的效率和可性减轻了设计者的劳动强度 这些器件可以通过软件编程而对其硬件结构和工作方式进行重构从而使得硬件的设计可以如同软件设计那样方便快捷这一切极大地改变了传统的数字系统设计方法设计过程和设计观念促进了EDA技术的迅速发展FPGA是英文FieldProgrammableGateArray的缩写即现场可编程门阵列它是在PALGALEPLD等可编程器件的基础上进一步发展的产物FPGA是一种高密度的可编程逻辑器件由于FPGA器件集成度高方便易用开发和上市周期短在数字设计和电子生产中得到迅速普及和应用并一度在高密度的可编程逻辑器件领域中独占鳌头 FPGA的结构 FPGA和 CPLD都是高密度现场可编程逻辑芯片都能够将大量的逻辑功FPGA是由掩膜可编程门阵列MPGA和可编程逻辑器件FPGA既有门阵列的高逻FPGA通常由线I,O单元围绕FPGA的开发流程 FPGA设计人体分为设计输入综合功能仿真前仿真实现时序仿真后仿真配置下载等六个步骤设计流程如图所示下面分别介绍各个设计步骤 1 FPGA设计流程图 1设计输入 设计输入包括使用硬件描述语言HDL状态图与原理图输入三种方式 2 设计综合 综合就是针对给定的电路实现功能和实现此电路的约束条件如速度功耗成本及电路类型等通过计算机进行优化处理获得一个能满足上述要求的电路设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 3 仿真验证 从广义上讲设计验证包括功能与时序仿真和电路验证仿真是指使用设计软件包对已实现的设计进行完整测试模拟实际物理环境下的工作情况前仿真是指仅对逻辑功能进行测试模拟以了解其实现的功能否满足原设计的要求仿真过程没有加入时序信息不涉及具体器件的硬件特性如延时特性而在布局布线后提取有关的器件延迟连线延时等时序参数并在此基础上进行的仿真称为后仿真它是接近真实器件运行的仿真 4 设计实现 实现可理解为利用实现工具把逻辑映射到目标器件结构的资源中决定逻辑的最佳布局选择逻辑与输入输出功能连接的布线通道进行连线并产生相应文件如配置文件与相关报告通常可分为如下五个步骤5时序分析 在设计实现过程中在映射后需要对一个设计的实际功能块的延时和估计的布线延时进行时序分析而在布局布线后也要对实际布局布线的功能块延时和实际布线延时进行静态时序分析 在综合与时序仿真过程中交互使用PrimeTime进行时序分析满足设计要求后即可进行FPGA芯片投片前的最终物理验证 6配置下载 下载是在功能仿真与时序仿真正确的前提下将综合后形成的位流下载到具体的FPGA芯片中也叫芯片配置FPGA设计有两种配置形式直接由计算机经过专用下载电缆进行配置由外围配置芯片进行上电时自动配置 VHDL语言简介 EDA即硬件描述语言 HDL 描述方式所以采用硬件描述语言及相关的编辑综合和仿真等技术是当今领域发展的又一重要特征超高速集成电路硬件描述语言VHDL [VHSIC Very–High–Speed– Integrated–Circuit Hardware Discription Language]IEEE-1076 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 所规范的硬件描述语言得到了众多EDA公司和集成电路厂商的支持与认同已经成为现代电子设计领域的通用描述语言和主要设计手段主要用于描述数字系统的结构行为功能和接口尤其是其强大的行为描述能力和语言结构只需直接面对对象进行系统级的逻辑行为描述从而避开了具体的器件结构来进行系统设计另外VHDL的可移植能力和多层次设计描述能力使得VHDL的设计文件可以被不同EDA工具和各类CPLD器件所支持并创建为阶层式设计模块综合到CPLDFPGA器件中使之以最快的速度上ASIC设计 利用VHDL进行脱离具体目标器件的设计为大系统级混合系统级和单片系统级设计技术的发展奠定了良好的基础正因为VHDL这种与硬件电路和器件系列 CPLDFPGA 的极小相关性以及其简洁明确的语言结构和便于修改和共享等特点使得VHDL在电子设计和EDA领域具有更好的通用性和更宽广的适用面PLUS?简介 1特点 PLUS?的全称是Multipe Array Matrix and Programmable Logic User SystemFLEXClassic系统器件 PLUS?具有开放的界面可与其他工业标准的EDA设计输入综合及校验工具 相连接PLUS?提供丰富的逻辑功能库供设计人员调用 PLUS?软件支持各种HDL语言设计输入包括VHDLVerilog HDLAltera自己的硬件描述语言AHDL 2设计流程 图 12 PLUS?的设计流程 使用PLUS?的设计过程包括以下几步若任一步出错或未达到设计要求则应修改设计然后重复以后各步如图12所示 输入设计项目逻辑设计的输入方法有原理图形输入文本输入波形输入及第三方EDA工具生成的设计网表文件输入等输入方法不同生成设计文件的名称后缀就不同 编译设计项目首先根据设计项目要求设定编译参数和编译策略然后对设计项目进行网表提取逻辑综合器件适配并产生报告文件延时信息文件和器件编程文件供分析仿真和编程使用 3校验设计项目设计项目校验方法包括功能仿真模拟仿真和定时分析功能仿真是在不考虑器件延时的理想情况下仿真设计项目的一种项目验证方法称为前仿真模拟仿真是在考虑设计项目具体适配器件的各种延时的情况下仿真设计项目的一种项目验证方法称为后仿真定时分析用来分析器件引脚及内部节点之间的传输路径延时时序逻辑的性能以及器件内部各种寄存器的建立保持时间 4编程验证设计项目用PLUS?编程器通过Altera编程硬件或其它工业标准编程器将经过仿真确认后的编程目标文件便如所选定的Altera可编程逻辑器件中然后加入实际激励信号测试是否达到设计要求 第2章 总体设计 21 DDS的基本原理 直接数字频率合成技术Direct Digital Frequency SynthesisDDFS一般简称DDSDDS合成技术也得到了飞速的发展它在相对带宽频率转换时间相位连续性正交输出高分辨力以及集成化等一系列性能指标方面已远远超过了传统的频率合成技术所能达到的水平完成了频率合成技术的又一次飞跃是目前运用最广泛的频率合成技术 com DDS的基本原理和优化构想 DDS的主要思想是从相位的概念出发合成所需的波形其结构由相位累加器ROM查找表 DA转换器和低通滤波器组成它的基本原理框图如图所示 图21 DDS原理图 图1中 fc 为时钟频率 K为频率控制字 N 为相位累加器的字长 m 为ROM地址线位数 n为ROM的数据线宽度 一般也为DA转换器的位数 fo 为输出频率 输出频率fo 由fC 和K共同决定 fo fC×K2N又因为DDS遵循奈奎斯特 Nyquist 取样定律即最高的输出频率是时钟频率的一半即fo fC2实际中DDS的最高输出频率由允许输出的杂散水平决定一般取值为fo ?40 fC对DDS进行优化设计目的是在保持DDS原有优点的基础上尽量减少硬件复杂性降低芯片面积和功耗提高芯片速度等为了减小DDS的设计成本 对其结构进行优化优化后DDS的核心结构框图如下所示 图2 优化后的DDS核心框图其中的地址转换器是根据adri[14]的数值判断数值是增长 0,π2 或减少 π2,π 数据转换器是根据adri[15]的数值判断生成波形的前半个周期 0,π 或者后半个周期 π,2π com DDS的工作原理 图23所示是一个基本的DDS电路工作原理框图 图23 DDS输出原理框图 电路一般包括基准时钟频率累加器相位累加器幅度相位转换电路DA转换器和低通滤波器LPFN位加法器将频率控制数据X与累加寄存器输出的累加相位数据相加把相加后的结果Y送至累加寄存器的输入端累加寄存器一方面将在上一时钟周期作用后所产生的新的相位数据反馈到加法器的输入端以使加法器在下一时钟的作用下继续与频率控制数据X相加另一方面将这个值作为取样地址值送入幅度相位转换电路幅度相位转换电路根据这个地址值输出相应的波形数据最后经数模转换DA ConverterLow Pass Filter将波形数据转换成所需要的模拟波形相位累加器在基准时钟的作用下进行线性相位累加当相位累加器累加满量时就会产生一次溢出这样就完成了一个周期这个周期也就是DDS合成信号的一个频率周期 其中输出频率的变化是通过改变累加器中的PIR相位递增寄存器中的常数X便改变了每个周期中的点数而这些点数正是用来改变整个波形的频率当一个新的PIR常数被存进寄存器波形的输出频率便随着下一个时钟周期连续地改变改变相位相位累加器将依据PIR中存储的常数来改变RAM中的地址若PIR数值很小 即频率较低 累加器便一步一步地经过每一个RAM地址当PIR的值较大时相位累加器将跳跃某些Rcom DDS的输出频率及分辨率 DDS输出信号的频率由式21给定 21 式中为输出频率为系统同步的时钟频率N为累加器位数M为输入频率的数值可见理论上通过设定DDS相位累加器位数频率控制字N和基准时钟的值就可以产生任一频率的输出而DDS的频率分辨率定义 22 也即输出频率的步进制由于基准时钟一般固定因此相位累加器的位数就决定了频率分辨率事实上DA转换器的输出波形相当于是一个连续平滑波形的采样这样根据奈奎斯特采样定律采样率必需要大于信号频率的两倍也就是说DA转化器的输出如果要完全恢复的话输出波形的频率必须小于2一般来说位数越多分辨率越高那么M的最大取有一定的过渡带的所以输出频率还要有一定的余量一般来说在实际应用当中DDS的输出频率不能超过04N 32 43MHZ001HZ 第3章 VHDLDDS基本原理的分析DDS的基本原理是以数控振荡器的方式产生频率相位可控制的正弦波电路一般由相位累加器ROM波形存储器 正弦方波查找表 数模转换器 DAC 低通平滑滤波器 LPF 构成 本设计采用N 32 43MHZ1 相位累加器的设计 相位累加器是整个DDS的核心它的输入是相位增量B?θ又由于B?θ与输出频率FOUT是简单的线形关系 31 信号发生器的输出可以描述为 32 其中是指前一个周期的相位值同样得到 33 由上面的推导可以看出只要对相位的量化值进行简单的累加运算就可以得到正弦信号的当前的相位值而用累加的相位增量量化值决定了信号的输出频率并呈简单的线形关系相位累加器的输入又称为频率字输入事实上当系统基准时钟是2N时就等于相位累加器由N位加法器与N位相位寄存器级联成此环节是典 型的反馈电路每来一个时钟脉冲累加器将频率控制字M与相位寄存器输出的累加相位数据相加把相加后的结果送至相位寄存器的数据输入端相位寄存器将累加器上一个时钟作用后所产生的新相位数据反馈到累加器的输入端以使累加器在下一个时钟的作用下继续与频率控制数据相加这样相位累加器在参考时钟的作用下进行线性相位累加当累加器累加满量时就会产生一次溢出完成一个周期性的动作这个周期就是DDS合成信号的一个频率周期累加器的溢出频率就是DDS输出的信号频率本设计采用32位的累加器43M的晶振其频率分辨率可以达到001HZ累加采用原理输入法相位累加器实质就是由加法器和寄存器构成 com 32位加法器的设计 本设计需要32位的加法器设计采用串性与并行结合先构成一个8位加法器然后用4个八位的加法器构成累加器其32位的加法器如图31所示 图31 32位加法器模块图 仿真与分析 仿真波形如图32所示 图32 32位全加器仿真波形 ADDER32000能完成32位加法进位输出正常达到设计目标其ADDER32000底层原理图如图33所示 图3 32位加法器com 寄存器的设计 本设计多次用到寄存器D32D32CO32位的D触发器在一个上升沿到来时开始存储 用VHDL设计32位的触发器其模块如图34所示 图34 D32系列触发器 仿真与分析 D32系列触发器仿真波形如图356所示 图35 D32仿真波形 图 36 D322CO仿真波形 该模块比较简单它只包括一个进程CLK是该进程的敏感信号当CLK的上升沿到来时启动该进程寄存器就开始寄存数据防止了敏感信号丢失其仿真结果可以看到当上升沿到来时寄存输入的数据实现了数据的缓存 32 正弦波ROM 直接数字频率合成器选用基于查询表LUT的方法这类方法在ROM 中ROM 的地址信号此时相位累加器的位数N 决定了输出信号的频率分辨精度ROM地址L决定了相位分辨精度DDS查ROM所存储的数据是每一个相位所对应的二进制数字正弦幅值在每一个时钟周期内相位累加器输出序列的高N 位对其进行寻址最后输出为该相位对应的二进制正弦幅值序列可以看出ROM 的存储量为 D其中N 为相位累加器的输出位数D为ROM的输出位数为了取的高的分辨率L通常取的很大如24 32 48 这么高的位数如若L N 则ROM 必然要求很高的容量在一块儿芯片上集成这么大的ROM 会使成本提高功耗增大且可靠性下降输出精度受DA位L N而且提出了很多压缩ROM 容量的方法由于正弦函数具有对称性所以可以用02内的查表转换也可以理解成相位到幅度的转换它的输入是相位累加器的输出事实上就是ROM的地址值输出送往DA转化成模拟信号 用VHDL设计8位ROM其模块如图37所示 图 波形存储器 3 DDS控制电路的设计 这个部分主要是要解决DDS模块与键盘的接口问题相当DDS集成芯片中的控制寄存器和命令寄存器的作用在FPGA的实现中主要设计了两个模块一个是输入寄存器模块用于接收键盘写入的各个控制字另外一个是地址分配模块这样就可以通过不同的地址来选通FPGA各个模块工作输入寄存器模块主要是为了接收写入的频率控制字在设计中DDS的采用了32位的相位累加器这样对于一个频率控制字键盘要分次分别写入4个字节地位向高位移位基于这样的要求我们设计了输入寄存器模块 输入寄存器模块图如图39所示 图9 输入控制模块图CLR是低电平异步清零EN是高电平使能CLK是写入时钟ROUT[310]是寄存器输出的32位频率控制字该模块的Z作过程是这样的当使能为高异步清零也为高的时候KEY_VALID的上升沿时及按键按下时将数据线上的4bit数据锁存进该模块中当锁存完4个字节的数据后自动将这四个字节按照先写入的在高位的顺序合成 仿真与分析 图10 输入控制模块图 图11 输入控制模块图4 DDS的总体 其低层原理图见附录下面介绍DDS的总体 1模块图 图 DDS模块图13所示 10KHZ正弦波仿真波形如图314所示 图13 1200KHZ正弦波仿真波形1 DAC模块 我们要选用的芯片是八位DAC转换时间小于10μs DAC0832是双列直插式8 位DA转换器能完成数字量输入到模拟量 电流 输出的转换comDAC0832的引脚图和内部结构图其主要参数如下分辨率为8位转换时间为1μs满量程误差为?1LSB参考电压为 10,-10 V供电电源为 5,15 V逻辑电平输入与TTL兼容从图41中可见在DAC0832中有两级锁存器第一级锁存器称为输入寄存器它的允许锁存信号为ILE第二级锁存器称为DAC寄存器它的锁存信号也称为通道控制信号 XFERDAC0832能够达到要求 com DAC0832引脚及其功能 图41中当ILE为高电平片选信号 CS 和写信号 WR1为低电平时输入寄存器控制信号为1这种情况下输入寄存器的输出随输入而变化此后当 WR1由低电平变高时控制信号成为低电平此时数据被锁存到输入寄存器中这样输入寄存器的输出端不再随外部数据DB的变化而变化 对第二级锁存来说传送控制信号 XFER 和写信号 WR2同时为低电平时二级锁存控制信号为高电平8位的DAC寄存器的输出随输入而变化此后当 WR2由低电平变高时控制信号变为低电平于是将输入寄存器的信息锁存到DAC寄存器中 图41中其余各引脚的功能定义如下 1 DI7,DI0 8位的数据输入端DI7为最高位 2 IOUT1 模拟电流输出端1当DAC寄存器中数据全为1时输出电流最大当 DAC寄存器中数据全为0时输出电流为0 3 IOUT2 模拟电流输出端2 IOUT2与IOUT1的和为一个常数即IOUT1,IOUT2,常数 4 RFB 反馈电阻引出端DAC0832内部已经有反馈电阻所以 RFB端可以直接接到外部运算放大器的输出端这样相当于将一个反馈电阻接在运算放大器的输 出端和输入端之间 5 VREF 参考电压输入端此端可接一个正电压也可接一个负电压它决定0至255的数字量转化出来的模拟量电压值的幅度VREF范围为 10,-10 VVREF端与DA内部T形电阻网络相连 6 Vcc 芯片供电电压范围为 5 15 V 7 AGND 模拟量地即模拟电路接地端 8 DGND 数字量地 图2 DAC0832内部com DAC0832的工作方式 DAC0832可处于三种不同的工作方式 直通方式 当ILE接高电平和都接数字地时DAC处于直通方式8位数字量一旦到达DI7,DI0输入端就立即加到8位DA转换器被转换成模拟量 单缓冲方式 只要把两个寄存器中的任何一个接成直通方式而用另一个锁存器数据DAC就可处于单缓冲工作方式双缓冲方式 主要在以下两种情况下需要用双缓冲方式的DA转换 需在程序的控制下先把转换的数据输入输入缓存器然后在某个时刻再启动DA转换这样可先选中端口把数据写入输入寄存器再选中端口把输入寄存器内容写入DAC寄存器实现DA转换在需要同步进行DA转换的多路DAC系统中采用双缓冲方式可以在不同的时刻把要转换的数据打入各DAC的输入寄存器然后由一个转换命令同时启动多个DAC转换先用3条输出指令选择3个端口分别将数据写入各DAC的输入寄存器当数据准备就绪后再执行一次写操作使变低同时选通3个DA的DAC寄存器实现同步转换图3为FPGA和DAC0832直通方式输出连接图 图3 FPGA和DAC0832直通方式输出连接图 系统 可编程模拟器件ispPAC insystem Programmable Analog Circuit 具有在系统可编程技术的优势和特点设计者可通过开发软件在计算机上快速方便地进行模拟电路设计修改对电路的特性进行仿真然后用编程电缆将设计方案下载到芯片中同时还可以对已装配在印制板上的ispPAC进行校验修改或重新设计 ispPAC芯片包含有PAC块代替了传统的模拟器件他可以是仪器放大器求和放大器或其他功能单元主要承担模拟信号的处理任务PAC块的输入输出通过模拟布线区ARP Analog Routing Pool 互相连接模拟布线区ARP在器件管脚和PAC块的输入输出间提供了一个可编程的模拟线路网络无需外部连接就可将PAC块级联使用除此之外ispPAC中还包含有参考电压自校正电路以及isp接口等电路ispPAC10是Lattice公司在系统可编程模拟器件家族中的成员之一其内部结构框图如图4所示由4个可编程模拟宏单元 PAC块 组成每个相当于1个运算放大器电阻及电容的组合 图4 ISPPAC10内部结构框图 芯片无需外围元件就可以灵活实现诸如精密滤波器求和求差增益衰减和积分等基本模拟功能每个PAC块包括1个加法运算电路2个差动放大器和一系列反馈电容这些电容和一些有固定值的反馈元件组合可以产生120种可编程电路频率范围在10,100 kHz之间分辨率为5不同增益输入使用放大器使他可在?1,?10之间编程任何PAC模块通过接合别的电路可产生更为复杂的信号处理功能以完成不同的电路功能3键盘电路 这一模块是由FPGA单独实现的FPGA完成对键盘的扫描实现对频率控制字的读入及处理具体实现方法采用4×4编码键盘由FPGA对其行线赋初值 1000将其高电平1循环赋给行线并在扫描频率的控制下对键盘的列输出信号进行扫描当 有键按下则读入相应的数值进行相应的处理在频率控制字输入完毕后将数据调整其输出格式送显示器显示和相位累加器累加 键盘电路的电路如图由分频器电路键盘扫描计数器电路键盘COLUMN和ROW按键检测电路按键抖动消除电路按键编码电路组成 图 键盘电路总框图 31 分频器电路 如果外接一个频率为43M的信号作为CLOCK由于按键不需要那么高的频率所以在设计一个分频电路将频率降低为1KHZ因此要一个com 键盘扫描计数器模块 以1KHZ的分频器电路的输出为CLOCK按键 KEY_PRESS 为使能位当使用者尚未按键时KEY-PRESS 1此时由0-15反复计数并输出计数值作为按键检测电路输入扫描键直到使用者按下键盘时KEY-PRESSED 0计数器停止持续输出计数值KEY-PRESSED低电平有效当为低电平时持续输出计数值4所以扫描计数器能达com 按键检测电路 当尚未按下键盘时键盘输入到按键检测电路COLUMN的值均为1使键盘无论扫描哪个键时均使按键使能位 KEY_PRESS 为1检测尚未按下键盘当使用者按下键盘则键盘输入到按键检测电路的COLUMN的值为0直到键盘扫描到此键KEY_PRESSED 0检测到已按键0检测到按键 com 按键抖动消除电路 抖动消除电路实质就是一个倒数计数器主要目的是为了避免按键时键盘产生的抖动效应使KEY-PRESS产生不必要的抖动变化而造成重复统计按键次数的结果 当KEY-PRESSED有抖动时KEY-VAILD无抖动抖动基本消除 com 按键编码电路 在键盘上是0-15计数的方式扫描但是0-15只是键盘位置的代号并非键盘上真正的按键值所以要设计一个键盘编码电路而且在更换不同键盘时由于按键值的不同可以进行适当的改变 44 显示模块 显示模块采用8位LED显示可使系统实现简单化采用动态扫描显示的方法可以减少系统功率损耗 在键入数据时采用移位的方式逐个显示键入数值输入完毕后其数据和单位一并显示八位数码管前6位用来显示0,6位数据最后2位用以显示频率单位HZ利用程序控制当输入频率小于10HZ时显示000000HZ当输入频率大于00000HZ时显示888888HZ更好的实现人机交流 外围电路是设计的难点其设计需要精心与细心上述模块以基本达到设计要求近几年超高速数字电路的发展以及对DDS的深入研究DDS的最高工作频率以及噪声性能已接近并达到锁相频率合成器相当的水平随着这种频率合成技术的发展现已广泛应用于通讯导航雷达遥控遥测电子对抗以及现代化的仪器仪表工业等领域DDS具有频率和相位分辨率高频率切换速度快易于智能控制等突出特点近10多年来AD和Qualcomm等几家公司根据这些改进技术推出了一系列性能优良的DDS专用集成电路其工作频率可达IGHZI频率分辨率可到MHz排除DAC的限制杂散指标已可达一70dbc以下其应用领域也不再限于频率合成己有专门用于产生LFM信号的 本设计从可编程逻辑器件FPGA着手用VHDL语言结合ispPACDAC0832等芯片实现了数字直接频率合成技术DDS 首先通过对DDS输出信号理论分析总体上提出实现DDS方案然后通过相位累加器ROM的设计用FPGA实现了正弦波方波发生器完成了波形发生器的软件设计和调试设计键盘显示电路最终实现了分辨率为001HZ的正弦波其滤波电路用的是模拟可编程芯片ISPPAC10其低通滤波性能较好输出波形平滑 同时设计中还存在一些不足之处主要表现在以下几个方面第一外围电路的控制模块不够理想成为影响DDS的主要因素可以用单片机控制输入部分第二累加器没采用流水线结构累加器影响其频率可靠度第三波形ROM采用8位针对输出输出平坦度不够的问题可以通过软硬件修正的方法来解决可以扩充ROM的容量 随着集成电路工艺的不断改善DDS产品的功能也愈来愈强大现在不仅在一个芯片上能够集成DDS所需要的全部功能例如频率和相位累加器相位一幅度变换电路和数模转换器 DAC 等而且也具备了一些有用的调制能力例如相移键控 PSK 和正交幅度调制 QAM 等DDS在频率合成界将有辉煌的明天 参考文献 [1] 潘松黄继夜 EDA技术实用教程 科学出版社 200412-80 [2] 李国丽等EDA与数字系统设计 机械工业出版社200425-125 [3] 张厥盛曹丽娜(锁相与频率合成技术 成都电子科技大学出版社钟将为石卫华董德存(可编程正弦波发生器芯片ML2035的原理及应用(2003 3 高玉良李延辉俞志强(现代频率合成与控制技术(北京航空工业出版社2002Altera Corporation(Altera Digital Library 2002 DDS 及其性能分析[J](北京航空航天大学学报1998 25-60 [10]雷春奇赵之凡 基于DDS的AWG波形噪声分析及对称性设计电子测凳comNo31998pp28-31 [11]com一种有效的DDS低杂散设计方案通信学报No10 2000 12-50 [12]唐长文一种高速直接数字频率合成器及其FPGA实现微电子学No61001 12-16 [13]冯 程用直接数字频率合成器产生正弦波华中科技大学本科生论文20037-27 [14]周国富利用FPGA实现DDS专用集成电路电子com199818-20 [15]陈意军王迎旭 CPLD在频率测控系统中的应用 半导体技术 第26卷第12期 2001年 [16]HP 3312 Function GeneratorArbitrary Waveform Generator Service Guide Edition 199412-18 [17] BK Precision Model 4070A Users Manual 200225-15 致 谢 值此毕业论文完成之际首先衷心感谢导师贺xx老师 贺老师以其渊博的学识丰富的经验在本课题的开题研究过程及论文撰写各个阶段给予了我悉心的指导贺老师是不怕苦不怕累的人是对人热情关心他人的人是工作严禁踏实的人是我们终身学习的榜样 在这里还要特别感谢班主任刘老师大学四年刘老师给予我们关心教我们做人的道理与做事的方法他改变我的一生刘老师善良友好热情典型的一个普通而不平凡的人他的精神是我终身的动力 感谢各位同学给予毕业设计的关心和帮助以及在生活中给我的帮助 2009年5月 附录A DDS顶层模块图 附录B 系统总电路图 附录C VHDL程序清单 --DDS顶层设计 LIBRARY IEEE USE IEEESTD-LOGIC-1164ALL USE IEEESTD-LOGIC-UNSIGNEDALL ENTITY DDS-VHDL IS PORT CLK IN STD-LOGIC FWORD IN STD-LOGIC-VECTOR7 DOWNTO 0 PWORD IN STD-LOGIC-VECTOR7 DOWNTO 0 FOUT OUT STD-LOGIC-VECTOR9 DOWNTO 0 END ARCHITECTURE one OF DDS-VHDL IS COMPONENT REG32B PORT LOAD IN STD-LOGIC DIN IN STD-LOGIC-VECTOR31 DOWNTO 0 DOUT OUT STD-LOGIC-VECTOR31 DOWNTO 0 END COMPONENT COMPONENT REG10B PORT LOAD IN STD-LOGIC DIN IN STD-LOGIC-VECTOR9 DOWNTO 0 DOUT OUT STD-LOGIC-VECTOR9 DOWNTO 0 END COMPONENT COMPONENT ADDER32B PORT A IN STD-LOGIC-VECTOR31 DOWNTO 0 B IN STD-LOGIC-VECTOR31 DOWNTO 0 S OUT STD-LOGIC-VECTOR31 DOWNTO 0 END COMPONENT COMPONENT ADDER10B PORT A IN STD-LOGIC-VECTOR9 DOWNTO 0 B IN STD-LOGIC-VECTOR9 DOWNTO 0 S OUT STD-LOGIC-VECTOR9 DOWNTO 0 END COMPONENT COMPONENT SIN-ROM PORT address IN STD-LOGIC-VECTOR9 DOWNTO 0 Inclock IN STD-LOGIC q OUT STD-LOGIC-VECTOR9 DOWNTO 0 END COMPONENT SIGNAL F32BD32BDIN32B STD-LOGIC-VECTOR31 DOWNTO 0 SIGNAL P10BLIN10BSIN10B STD-LOGIC-VECTOR9 DOWNTO 0 BEGIN F32B27 DOWNTO 20 FWORD F32B 31 DOWNTO 28 0000 P10B 1 DOWNTO 0 00 F32B 19 DOWNTO 0 0000000000000000000P10B 9 DOWNTO 2 PWORD U1 ADDER32B PORT MAP A F32BB D32BS DIN32B U2 REG32B PORT MAP DOUT D32BDIN DIN32BLOAD CLK U3 SIN-ROM PORT MAP address SIN10Bq FOUTinclock CLK U4 ADDER10B PORT MAP A P10BB D32B 31 DOWNTO 22 S LIN10B U5 REG10B PORT MAP DOUT SIN10BDIN LIN10BLOAD CLK END --4位全加器模块 library ieee use ieeestd_logic_1164all USE IEEESTD-LOGIC-UNSIGNEDALL ENTITY ADDER4 IS PORT CIN IN STD-LOGIC A IN STD-LOGIC-VECTOR 3 DOWNTO 0 B IN STD-LOGIC-VECTOR 3 DOWNTO 0 S OUT STD-LOGIC-VECTOR 3 DOWNTO 0 CO OUT STD-LOGIC END ADDER4 ARCHITECTURE behave OF ADDER4 IS SIGNAL SINT STD-LOGIC-VECTOR 4 DOWNTO 0 SIGNAL AABB STD-LOGIC-VECTOR 4 DOWNTO 0 BEGIN AA 0A BB 0B SINT AABBCIN S SINT 3 DOWNTO 0 CO SINT 4 END behave --8位加法器模块 library ieee use ieeestd_logic_1164all USE IEEESTD-LOGIC-UNSIGNEDALL ENTITY ADDER8 IS PORT CIN IN STD-LOGIC A IN STD-LOGIC-VECTOR 7 DOWNTO 0 B IN STD-LOGIC-VECTOR 7 DOWNTO 0 S OUT STD-LOGIC-VECTOR 7 DOWNTO 0 CO OUT STD-LOGIC END ADDER8 ARCHITECTURE struc OF ADDER4 IS COMPONENT ADDER4 PORT CIN IN STD-LOGIC A IN STD-LOGIC-VECTOR 3 DOWNTO 0 B IN STD-LOGIC-VECTOR 3 DOWNTO 0 S OUT STD-LOGIC-VECTOR 3 DOWNTO 0 CO OUT STD-LOGIC END COMPONENT SIGNAL CARRY-OUT STD-LOGIC BEGIN U1 ADDER4 PORT MAP CIN CINA A 3 DOWNTO 0 B B 3 DOWNTO 0 S S 3 DOWNTO 0 CO CARRY-OUT U1 ADDER4 PORT MAP CIN CARRY-OUTA A 7 DOWNTO 4 B B 7 DOWNTO 4 S S 7 DOWNTO 4 CO CO END struc --32位加法器模块 library ieee use ieeestd_logic_1164all USE IEEESTD-LOGIC-UNSIGNEDALL ENTITY ADDER32B IS PORT AB IN STD-LOGIC-VECTOR 31 DOWNTO 0 S OUT STD-LOGIC-VECTOR 31 DOWNTO 0 END ADDER32B ARCHITECTURE behav OF ADDER32B IS BEGIN S AB END behave --寄存器D32模块 library ieee use ieeestd_logic_1164all entity D32 is port din std_logic_vector 31 downto 0 clkin std_logic qout std_logic_vector 31 downto 0 end entity D32 architecture art of D32 is begin process clk is begin if clkevent and clk 1 then q d end if end process end architecture art --寄存器D32CO library ieee use ieeestd_logic_1164all entity D32CO is port din std_logic_vector 31 downto 0 clkin std_logic COin std_logic CO1OUT std_logic qout std_logic_vector 31 downto 0 end entity D32CO architecture art of D32CO is begin process clk is begin if clkevent and clk 1 then q d CO1 CO end if end process end architecture art --ROM模块 library ieee USE IEEESTD_LOGIC_1164ALL ENTITY sin-rom IS PORT addressIN STD_LOGIC_VECTOR 9 DOWNTO 0 inclockIN STD_LOGIC q OUT STD-LOGIC-VECTOR 9 DOWNTO 0 END sin-rom ARCHITECTURE SYN OF sin-rom IS SIGNAL sub-wire0 STD-LOGIC-VECTOR 9 DOWNTO 0 COMPONENET 1pm-rom GENERIC 1pm-width NATURAL 1pm-widthad NATURAL 1pm-address-control STRING 1pm-outdata STRING 1pm-file STRING PORT address IN STD_LOGIC_VECTOR 9 DOWNTO 0 Inclock IN STD-LOGIC q OUT STD-LOGIC-VECTOR 9 DOWNTO 0 END COMPONENT BEGIN q sub-wire0 9 DOWNTO 0 1pm-rom-component 1pm-rom GENERIC MAP LPM-WIDTH 10 LPM-WIDTHAD 10 LPM-ADDRESS-CONTROL REGISTERED LPM-OUTDATA UNREGISTERED LPM-FILE datalLUT10X10mif PORT MAP address addressinclock inclockq sub-wire0 END SYN --输入控制模块 library ieee USE IEEESTD_LOGIC_1164ALL USE IEEESTD_LOGIC_UNSIGNEDALL ENTITY Input1 IS PORT DININ STD_LOGIC_VECTOR 3 DOWNTO 0 DOUTOUT STD_LOGIC_VECTOR 31 DOWNTO 0 CLRIN STD_LOGIC ENIN STD_LOGIC key_validIN STD_LOGIC END ENTITY input1 ARCHITECTURE ART OF INPUT1 IS SIGNAL TEMPSTD_LOGIC_VECTOR 27 DOWNTO 0 TYPE NATURE IS RANGE 0 TO 7 BEGIN PROCESS key_validEN VARIABLE STEPNATURE 0 BEGIN IF CLR 0 THEN DOUT "00000000000000000000000000000000" ELSE IF key_validEVENT AND key_valid 1 THEN IF EN 1 THEN CASE STEP IS WHEN 0 TEMP 3 DOWNTO 0 "0000" STEP STEP1 WHEN 1 TEMP 7 DOWNTO 4 DIN STEP STEP1 WHEN 2 TEMP 11 DOWNTO 8 DIN STEP STEP1 WHEN 3 TEMP 15 DOWNTO 12 DIN STEP STEP1 WHEN 4 TEMP 19 DOWNTO 16 DIN STEP STEP1 WHEN 5 TEMP 23 DOWNTO 20 DIN STEP STEP1 WHEN 6 TEMP 27 DOWNTO 24 DIN STEP STEP1 WHEN 7 DOUT "0000"TEMP STEP STEP1 END CASE ELSE STEP 0 END IF END IF END IF END PROCESS END ARCHITECTURE ART 图41 DAC0832引脚图 编码输出 Key pressed col Key valid 按键编码 分 频 器 计数器 CLOCK 6 8 ch 1 2 3 4 5 - 7 9 clr 0 en1 onw1 row row
本文档为【毕业设计(论文)--基于FPGA的DDS设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_196623
暂无简介~
格式:doc
大小:65KB
软件:Word
页数:30
分类:
上传时间:2017-09-18
浏览量:70