基于fpga的高速数据采集技术毕设论文内容摘要:

计方案 , 给出了系统 总体 框图,并且结合框图说明了系统的工作过程。 然后 对系统 的实现方法做了相应的比较,选定了 数据缓存 模块的设计方案,接着对各模块中所使用的关键芯片进行了选择与介绍。 本科毕业设计说明书(论文) 第 9 页 共 39 页 3 硬件电路设计 硬件电路设计工具介绍 Protel 是 Altium 公司在 80 年代末推出的 EDA 软件 ,在电子行业的 CAD 软件中,排在众多 EDA 软件的前面,是电子设计者的首选软件,较早就在国内开始使用,在国内的普及率 最高。 早期的 Protel 主要作为印制板自动布线 工具使用 ,运行在 DOS 环境,对硬件的要求很低,在无硬盘 286 机的 1M 内存下就能运行,但 功能也较少,只有电路原理图绘制与印制板设计功能,其印制板自动布线的布通率也低,而现今的 Protel 已发展到DXP 2020,完全安装有 200 多 兆 , 工作在 WINDOWS95 环境下 ,具有 完整的板级全方位电子设计系统, 包含了电路原理图绘制、 模拟电路与数字电路 混合信号仿真、多层 印制电路板 设计(包含印制电路板自动布线)、 可编程逻辑器件 设计、图表生成、电子表格 生成、支持宏操作等功能,并具有 Client/Server(客户 /服务器)体系结构,同时还兼容一些其它设计软件的 文件格式 ,如 ORCAD, PSPICE, EXCEL 等,其多层印制线路板的自动布线可实现高密度 PCB 的 100%布通率。 硬件 详细设计 硬件整体方案设计 图 为硬件设计总体方案框图 ,硬件设计 主要包括电源电路、 下载配置电路、外部时钟电路 、 接口电路 及 AD9288 与 AD7278 的外围电路。 图 硬件设计总体 结构 本科毕业设计说明书(论文) 第 10 页 共 39 页 详细 电路 设计 1) 电源 电路 本系统外部电源采用 5V输出开关电源。 系统中, FPGA 的 IO 的电源电压是 ,内核的电压是 , AD9288 及 AD7278 的供电电压均可设为。 利用 SMV1117 电源芯片 分别 将 5V 转到 , 将 转到 , 再利用 电容与电 感 电路由 产生 FPGA 内部 PLL 所需电压, 加上一些旁路 电容,即可满足电压需求。 具体电路如图 所示: 图 电源 及滤波 电路 2) 下载配置 电路 FPGA 通过 JTAG 下载代码到片子里 运行 ,代码 存放在 RAM 里,断电后代码即消失。 因此 , FPGA 需要非易失性存储器用来存放代码,每次上 电 后把代码从配置芯片读 至 FPGA 然后运行。 选用 ALTERA 公司配套的 AS 模式的配置存储器 EPCS1,成本比较低,并且很容易配置,具体电路如图 所示: 本科毕业设计说明书(论文) 第 11 页 共 39 页 图 下载配置 电路 3) 外部时钟 电路 FPGA 内部模块工作时需要一个时钟基准,因此需要一个外部晶振,频率为100MHz, 具体电路如图 所示: 图 外部时钟 电路 4) 接口电路 为了将 FPGA 内部缓存的数据读出,并能够读出 FPGA 内部 FIFO 的空满状态,需要设计接口电路将这些信号输出 ,同时为了给 AD9288 和 AD7278 接入模拟输入信号,需要用接口将信号引入。 具体电路如图 所示: 图 接口 电路 本科毕业设计说明书(论文) 第 12 页 共 39 页 5) AD9288 外围电路 AD9288 供电电压范围为 ~ , 本设计用 FPGA 外围电路产生的 电压供电, 模拟电源 VD 和数字电源 VDD, 分开 供电。 为了保证电源质量,在各自的电源引脚与地之间加入了 去耦 电容。 AD9288 提供了两种信号输入方式, 分别是单端输入与差分输入 , 其中 差分输入方式可以 减少信号噪声以及电磁的干扰, 单端输入模式 的性能会有所下降, 但考虑到本设计属于 低成本的应用, 单端输入 可 保证 较好的性能 ,因此选择单端输入 方式,为了保护输入信号,通过 50Ω 的电阻接地,并串联 的电容。 引脚 S S2 可以用来选择多 种操作模式, 在使用中, 常 令 S1=1, S2=0,两个通道采集相互独 立。 AD9288 内部有一个稳定精确的 1. 25V 电压参考 ,通过将 REFINA 和 REFINB 接REFOUT 实现内部电压参考。 本设计 因为是单通道采集系统,所以只用通道 A 采 样数据 ,输入电压信号范围为0. 5V~ +0. 5V。 图 AD9288 的 外围电路 本科毕业设计说明书(论文) 第 13 页 共 39 页 6) AD7278 外围电路 AD7278 供电电压范围为 ~ ,本设计用 FPGA 外围电路产生的 电压供电。 为了保证电源质量,在电源引脚与地之间并联了 和 680nF 的去耦电容。 AD7278 只有 单端模拟输入 方式,信号通过 VIN 从外部接口输入 , 输入电压范围为 0~VDD(即 )。 SCLK 为 通道时钟输入引脚,设为 50MHz, 由 FPGA 内部逻辑提供。 SDATA 与数据采集控制模块的输入相连接,由 FPGA 控制其 进行串并转换之后并 写入 FIFO。 图 AD7278 外围电路 7) 硬件电路整体图 图 为硬件电路整体框图, 将 以上各部分 电路 综合布局,置于一张电路图中,合理布局之后,生成硬件电路。 本科毕业设计说明书(论文) 第 14 页 共 39 页 图 硬件电路 本章小结 本章主要介绍了本次设计的硬件设计,首先介绍了硬件电路 设计工具 Protel,然后给出硬件电路设计总体方案 , 详细 设计 FPGA 及 AD 的外围电路,最后给出硬件整体电路图。 本科毕业设计说明书(论文) 第 15 页 共 39 页 4 程序 的设计与实现 在上一章设计 的 硬件电路的基础上,本章将进行 FPGA 内部程序的具体设计。 在本系统中, FPGA 是控制整个系统工作的核心,首先在其内部实现各模块的设计与仿真,然后设计出顶层电路原理图。 其中 数据采集 控制 模块负责对 A/D 转换 进行时序控制,实现 AD 转换的正常工作。 FPGA 利用时钟管理模块 产生 时钟用以作为采样时钟,采样数据被送至 FIFO 进行缓存处理。 FPGA 设计与仿真工具 FPGA 结构 FPGA 具有可编程性,可以对其反复烧写,因此采取的是一种支持反复配置的结构而不可能像传统的 ASIC 一样通过与非门来完成。 当前的主流 FPGA 采用了基于SRAM 的查找表结构,还有一些军用与宇航领域的 FPGA 使用 Flash或者 熔丝 与反熔丝工艺的查找表结构口。 FPGA 通过对文 件 烧写 来 配置查找表的内容,使得在同样的电路下实现不同的逻辑功能。 图 FPGA 的结构原理 图 FPGA的基本结构组成。 在 FPGA内部最重要的组成部分是可编程输入输出单元、可编程逻辑单元和嵌入式块 RAM。 输入输出单元分布在 FPGA四周,是芯片与外界电路的接口 , 可以配置不同电气特性的接口标准如 SSTL、 HSTL、 LVDS和 PCI等 ; 可编程逻辑单元 通常都是由查找表 (LUT)和寄存器 (Register)构成。 FPGA含有数量巨大的基 本可编程逻辑单元。 它们是可编程逻辑的主体,通过其内部配置的改变可以本科毕业设计说明书(论文) 第 16 页 共 39 页 实现多种不同的逻辑功能 ; 嵌入式块 RAM即 通过 FPG内部嵌入可编程 Block RAM,极大的扩展了 FPGA的应用范围。 一 般说来,不同器件厂商或者不同器件族的内嵌 Block RAM结构有所不同,但基本都可以灵活配置成各种常用存储结构比如单口 RAM、双口 RAM、伪双口 RAM、 CAM以及 FIFO等。 除了 以上 模块, FPGA还可能包括了如 DSP、高速串行收发器等其它模块口。 具体选择时要综合考虑设计需求、成本与规模、速度、封装还有所需要的专用功能模块等因素 [11]。 FPGA 设计流程 FPGA 产品发展到现在,已经有完整的开发系统与设计流程。 通常说来,比较完整的 FPGA 设计流程主要包括设计输入、功能仿真、综合、功能仿真 (综合后仿真 )、布局布线、时序仿真 (后仿真 )和调试几个部分。 流程图如 图 所示 : 图 FPGA 的 设计流程 FPGA的 设计输入主要有硬件描述语言 HDL、状态图和原理图三种输入方式。 原理图设计输入法在早期比较常见,但在现在的大型设计中它的可维护性较差。 由于硬件描述在可移植性和规范性上面的优势,现在的大多数设计采用了 HDL开发平台,其中应 用最广泛的语言是 VHDL和 Verilog HDL[12]。 Quartus II 介绍 Quartus II 是 Altera 公司推出的目前应用非常广泛的一款 EDA 开发系统。 它是一本科毕业设计说明书(论文) 第 17 页 共 39 页 个完整的多平台设计环境。 它可以轻松满足特定设计的需要,并且提供可编程片上系统( SOPC)设计的综合开发平台,是 SOPC 设计的基础。 Quartus II 将设计、综合、布局、仿真验证、和编程下载以及第三方 EDA 工具集成在一个无缝的环境中,可以进行系统级设计、嵌入式系统级设计和可编程逻辑器件设计。 Quartus II 开发工具提供了完全集成,且与电路结构无关的数字逻辑设计环境,以及 SOPC 设计的嵌入式系统开发平台。 主要特点如下: 1) 可利用原理图、结构图、 VerilogHDL、 VHDL、 AHDL 等硬件描述语言完成逻辑电路的描述和编辑,以及芯片(电路)平面布局连线的编辑。 2) 功能强大的逻辑综合工具,并提供 RTL 级查看器(原理图视图和层次结构列表)。 3) 完备的电路功能描述和时序逻辑仿真工具。 4) 自动定位编译错误,提供高效的器件编程与验证工具。 5) RTLtoGate 形式验证。 此外, Quartus II 还 默认安装 SOPC Builder,自动添加参数 和连接 IP 核,包括嵌入式处理器、协处理器。 外设和用户自定义逻辑,从而为嵌入式的开发提供方便 [13]。 硬件描述语言 VHDL 简介 VHDL 语言的英文全名是 VHSIC Hardware Description Language, VHSIC 则是Very High Speed Integrated Circuit 的缩写。 它是一种支持系统级设计并被多数 EDA 软件支持的通用标准硬件描述语言。 所谓硬件描述语言,就是可以描述硬件电路的功能,信号连接关系及定时关系的语言。 它能比原理图更加有效地表示硬件电路的特 性。 随着 VHDL 语言的发展,从基于原理图的硬件设计方法向基于 HDL语言的硬件设计方法的转变己经成为可编程 ASIC 设计者最为关心的问题。 VHDL 是一种全方位的硬件描述语言,包括系统行为级、寄存器传输级和逻辑门级多个设计层次,支持结构、数据流和行为三种描述形式的混合描述,因此 VHDL 几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用 VHDL 来完成。 VHDL 还具有以下优点: 1) 宽范围 的 描述能力。 2) 简洁明 确的代码描述 进行复杂控制逻辑的设计,灵活且方便。 3) 不依赖于特定的器件,方便 工艺的 转换。 4) 可 移植性好。 5) 描述数字系统的结构、行为、功能和接口, 适用于可编程逻辑芯片的应用设计 [14]。 本科毕业设计说明书(论文) 第 18 页 共 39 页 时钟管理模块的设计与 实现 在本设计中,模拟部分与数字部分的所有时钟经 FPGA 统一产生,以方便对整个系统的控制与调试。 时钟控制模块使用 100MHz 的有源晶振产生系统基准时钟 , FPGA内含有 PLL,可以进行时钟的分频与倍频,但由于其最小频率为 20MHz,满足不了本设计的需求,因此单独编写了一个时钟分频模块,通过将 100MHz 进行 4 次分频,产生所需的时钟频率。 包括数据采集模块所需的 50/10MHZ 时钟、数据缓冲模 块 ( FIFO)所需的 5/1MHz 读 时钟。 时钟 管理 模块的示意图如图 所示: 图 时钟管理模块 其内部主要程序为(以 5MHz 为例): architecture behave of clk_b is signal clk: std_logic。 signal temp: integer range 0 to 19。 //对 100MHz 进行 20 分频 beg。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。