毕业设计(论文)-基于FPGA的ADC采集系统的设计.doc_第1页
毕业设计(论文)-基于FPGA的ADC采集系统的设计.doc_第2页
毕业设计(论文)-基于FPGA的ADC采集系统的设计.doc_第3页
毕业设计(论文)-基于FPGA的ADC采集系统的设计.doc_第4页
毕业设计(论文)-基于FPGA的ADC采集系统的设计.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北华航天工业学院毕业论文 I 摘 要 基于 FPGA 在高速数据采集方面有单片机和 DSP 无法比拟的优势,FPGA 具有时钟 频率高,内部延时小,全部控制逻辑由硬件完成,速度快,效率高,组成形式灵活等特 点。因此,本文研究并开发了一个基于 FPGA 的数据采集系统。FPGA 的 IO 口可以自由 定义,没有固定总线限制更加灵活变通。本文中所提出的数据采集系统设计方案,就是 利用 FPGA 作为整个数据采集系统的核心来对系统时序和各逻辑模块进行控制。依靠 FPGA 强大的功能基础,以 FPGA 作为桥梁合理的连接了 ADC、显示器件以及其他外围 电路,最终实现了课题的要求,达到了数据采集的目的。 关键词 FPGA A/D 转换 北华航天工业学院毕业论文 II Abstract FPGA is better than microcontroller and DSP in high speed data acquisition, FPGA has higher internal clock frequency, smaller delay than DSP,and all the control logic of FPGA is completed by hardware, FPGA has fast speed, high efficiency, and so on. Therefore, this paper introduces and develops a data acquisition system which is based on FPGA.The I/O pin of FPGA can be defined yourself without fixed limit,its very flexible. This design of data acquisition system use FPGA as the data acquisition system core to control the timing and the logic control module. Relying on the powerful function of FPGA, FPGA can connect ADC, display devices and other peripheral circuits, finally we can achieve the requirements of the subject, and the purpose of the data collection。 Key words FPGA A/D 北华航天工业学院毕业论文 III 目 录 第 1 章 绪论 .1 1.1 课题背景及国内外研究概况.1 1.2 现场可编程门阵列 FPGA .2 1.3 课题的建立以及本文完成的主要工作.3 第 2 章 Altium Designer 及 Quartus II 简介 .4 2.1 Altium Designer 简介 .4 2.2 quartus II 简介 .5 2.3 小结.6 第 3 章 系统硬件概况 .7 3.1 系统概况.7 3.2 功能模块.8 3.2.1 FPGA 模块 .8 3.2.2 液晶显示器模块 .10 3.2.3 电源模块 .13 3.2.4 AD 模数转换器模块 .13 3.2.5 存储模块 SRAM .16 3.2.6 晶振 .18 3.2.7 REF 参考电源 .19 3.2.8 EPCS .19 3.2.9 JTAG .19 3.3 小结.21 第 4 章 程序仿真 .22 4.1 Verilog HDL 程序 .22 4.2 采集波形.23 4.3 小结.24 第 5 章 课题特点 .26 5.1 FPGA 应用 .26 5.2 FIFO 缓存设计 .26 北华航天工业学院毕业论文 IV 第 6 章 结论 .27 附 录 .30 北华航天工业学院毕业论文 1 基于 FPGA 的 ADC 采集系统的设计 第 1 章 绪论 1.1 课题背景及国内外研究概况 传统的数据采集系统,通常采用单片机或 DSP 作为主要控制模块,控制 ADC,存 储器和其他外围电路的工作。随着数据采集对速度性能的要求越来越高,传统采集系统 的弊端就越来越明显。单片机的时钟频率较低且需用软件实现数据采集,这使得采集速 度和效率降低,此外软件运行时间在整个采样时间中也占很大比例,而 FPGA 有单片机 无法比拟的优势。FPGA 时钟频率高内部时延小,全部控制逻辑由硬件完成,速度快, 效率高1。数字信号处理是以数字形式对信号进行采集,变换,滤波估值,增强,压缩, 识别等处理,从而得到符合需要的信号形式。而信号的处理目前有两种方式:使用信号 处理器 DSP 通过软件编程实现;应用 FPGA 实现。利用软件编程虽然有很大的灵活性, 但 DSP 所有指令的执行时间均为单周期,而且受到串行指令流的限制每个时钟周期所有 的操作数有限难以实现高速大规模运算。现在大容量,高速度的 FPGA 采用硬件描述语 言 VHDL 实现整个系统,允许设计人员利用并行处理技术实现高速信号处理算法并只需 单个处理器就能通过模块化设计实现所期望的性能,很好的解决了上述矛盾。趋势:随 着便携式设备需求的增长,对 FPGA 的低压,低功耗的要求日益迫切,芯片向大规模系 统芯片靠近,力求在大规模应用中取代 ASIC,位增强市场竞争力,各大厂商都在积极 推广其知识产权和核心库,动态课重构技术的发展将带来系统设计方法的转变2。 A/D 转换器是用来通过一定的电路将模拟量转变为数字量。 模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非 电信号。但在A/D 转换前,输入到 A/D 转换器的输入信号必须经各种传感器把各种物理量转换成 电压信号。 A/D 转换器的工作原理:逐次逼近法,双积分法,电压频率转换法。 A/D 转换四步骤:采样、保持、量化、编码。 1.2 现场可编程门阵列 FPGA FPGA(FieldProgrammable Gate Array) ,即现场可编程门阵列,它是在 PAL、GAL、CPLD 等可编程器件的基础上进一步发展的产物。它是作为专用集成电路 (ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有 可编程器件门电路数有限的缺点。 北华航天工业学院毕业论文 2 以硬件描述语言(Verilog 或 VHDL)所完成的电路设计,可以经过简单的综合与布 局,快速的烧录至 FPGA 上进行测试,是现代 IC 设计验证的技术主流。这些可编辑元 件可以被用来实现一些基本的逻辑门电路(比如 AND、OR、XOR、NOT)或者更复杂 一些的组合功能比如解码器或数学方程式。在大多数的 FPGA 里面,这些可编辑的元件 里也包含记忆元件例如触发器(Flipflop)或者其他更加完整的记忆块。 系统设计师可以根据需要通过可编辑的连接把 FPGA 内部的逻辑块连接起来,就好 像一个电路试验板被放在了一个芯片里。一个出厂后的成品 FPGA 的逻辑块和连接可以 按照设计者而改变,所以 FPGA 可以完成所需要的逻辑功能。 FPGA 采用了逻辑单元阵列 LCA(Logic Cell Array)这样一个概念,内部包括可配 置逻辑模块 CLB(Configurable Logic Block) 、输出输入模块 IOB(Input Output Block) 和内部连线(Interconnect)三个部分。 现场可编程门阵列(FPGA)是可编程器件,与 传统逻辑电路和门阵列(如 PAL,GAL 及 CPLD 器件)相比,FPGA 具有不同的结构。 FPGA 利用小型查找表(161RAM)来实现组合逻辑,每个查找表连接到一个 D 触发 器的输入端,触发器再来驱动其他逻辑电路或驱动 I/O,由此构成了既可实现组合逻辑 功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或 连接到 I/O 模块。FPGA 的逻辑是通过向内部静态存储单元加载编程数据来实现的,存 储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与 I/O 间的联 接方式,并最终决定了 FPGA 所能实现的功能,FPGA 允许无限次的编程。 FPGA 有如下特点: 1采用 FPGA 设计 ASIC 电路,用户不需要投片生产,就能得到合用的芯片。 2FPGA 可做其它全定制或半定制 ASIC 电路的中试样片。 3FPGA 内部有丰富的触发器和 I/O 引脚。 4FPGA 是 ASIC 电路中设计周期最短、开发费用最低、风险最小的器件之一。 5FPGA 采用高速 CMOS 工艺,功耗低,可以与 CMOS、TTL 电平兼容。 加电时,FPGA 芯片将 EPROM 中数据读入片内编程 RAM 中,配置完成后,FPGA 进入工作状态。掉电后,FPGA 恢复成白片,内部逻辑关系消失,因此,FPGA 能够反 复使用。FPGA 的编程无须专用的 FPGA 编程器,只须用通用的 EPROM、PROM 编程 器即可。当需要修改 FPGA 功能时,只需换一片 EPROM 即可。这样,同一片 FPGA, 不同的编程数据,可以产生不同的电路功能。因此,FPGA 的使用非常灵活,非常适用于 数据采集方向的应用。 1.3 课题的建立以及本文完成的主要工作 本文主要包括以下内容: 1 完成 ADC 采集系统的硬件搭建和仿真工作; 北华航天工业学院毕业论文 3 2使用 Verilog 语言编写硬件电路接口驱动,完成 Verilog HDL 程序的仿真工作; 3完成项目的性能指标的设计。 北华航天工业学院毕业论文 4 第 2 章 Altium Designer 及 Quartus II 简介 2.1 Altium Designer 简介 Altium Designer 是原 Protel 软件开发商 Altium 公司推出的一体化的电子产品开发系 统,主要运行在 Windows XP 操作系统。这套软件通过把原理图设计、电路仿真、PCB 绘制编辑、拓扑逻辑自动布线、信号完整性分析和设计输出等技术的完美融合,为设计 者提供了全新的设计解决方案,使设计者可以轻松进行设计,熟练使用这一软件必将使 电路设计的质量和效率大大提高。 电路设计自动化 EDA(Electronic Design Automation)指的就是将电路设计中各种 工作交由计算机来协助完成。如电路原理图(Schematic)的绘制、印刷电路板(PCB) 文件的制作、执行电路仿真(Simulation)等设计工作。随着电子科技的蓬勃发展,新型 元器件层出不穷,电子线路变得越来越复杂,电路的设计工作已经无法单纯依靠手工来 完成,电子线路计算机辅助设计已经成为必然趋势,越来越多的设计人员使用快捷、高 效的 CAD 设计软件来进行辅助电路原理图、印制电路板图的设计,打印各种报表。 Altium Designer 是原 Protel 软件开发商 Altium 公司推出的一体化的电子产品开发系 统,主要运行在 Windows XP 操作系统。这套软件通过把原理图设计、电路仿真、PCB 绘制编辑、拓扑逻辑自动布线、信号完整性分析和设计输出等技术的完美融合,为设计 者提供了全新的设计解决方案,使设计者可以轻松进行设计,熟练使用这一软件必将使 电路设计的质量和效率大大提高。 Altium Designer 除了全面继承包括 Protel 99SE、Protel DXP 在内的先前一系列版本 的功能和优点外,还增加了许多改进和很多高端功能。该平台拓宽了板级设计的传统界 面,全面集成了 FPGA 设计功能和 SOPC 设计实现功能,从而允许工程设计人员能将系 统设计中的 FPGA 与 PCB 设计及嵌入式设计集成在一起。 由于 Altium Designer 在继承 先前 Protel 软件功能的基础上,综合了 FPGA 设计和嵌入式系统软件设计功能,Altium Designer 对计算机的系统需求比先前的版本要高一些。 北华航天工业学院毕业论文 5 图 2-1Altium Designer 主要功能: 1原理图设计 2印刷电路板设计 3FPGA 的开发 4嵌入式开发等等 在本设计中主要用到了 Altium Designer 的原理图设计及 PCB 板设计的功能 2.2 quartus II 简介 先打开 Altium Designer,先新建一个工程文件:点击文件菜单,依次点击新建-工程 Quartus II 支持原理图、VHDL、VerilogHDL 以及 AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成 从设计输入到硬件配置的完整 PLD 设计流程。可以在 XP、Linux 以及 Unix 上使用,除 了可以使用 Tcl 脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行 速度快,界面统一,功能集中,易学易用等特点。 Quartus II 支持 Altera 的 IP 核,包含了 LPM/MegaFunction 宏功能模块库,使用户可 以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方 EDA 工具 的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方 EDA 工具。 此外,Quartus II 通过和 DSP Builder 工具与 Matlab/Simulink 相结合,可以方便地实 现各种 DSP 应用系统;支持 Altera 的片上可编程系统(SOPC)开发,集系统级设计、 嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。 Maxplus II 作为 Altera 的上一代 PLD 设计软件,由于其出色的易用性而得到了广泛 北华航天工业学院毕业论文 6 的应用。目前 Altera 已经停止了对 Maxplus II 的更新支持,Quartus II 与之相比不仅仅 是支持器件类型的丰富和图形界面的改变。Altera 在 Quartus II 中包含了许多诸如 SignalTap II、Chip Editor 和 RTL Viewer 的设计辅助工具,集成了 SOPC 和 HardCopy 设 计流程,并且继承了 Maxplus II 友好的图形界面及简便的使用方法。 Quartus II 提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全 部特性,包括: 可利用原理图、结构框图、VerilogHDL、AHDL 和 VHDL 完成电路描述,并将其保 存为设计实体文件; 芯片(电路)平面布局连线编辑; LogicLock 增量设计方法,用户可建立并优化系统,然后添加对原始系统的性能影 响较小或无影响的后续模块; 1功能强大的逻辑综合工具; 2完备的电路功能仿真与时序逻辑仿真工具; 3定时/时序分析与关键路径延时分析; 4可使用 SignalTap II 逻辑分析工具进行嵌入式的逻辑分析; 5支持软件源文件的添加和创建,并将它们链接起来生成编程文件; 6使用组合编译方式可一次完成整体设计流程; 7自动定位编译错误; 8高效的期间编程与验证工具; 9可读入标准的 EDIF 网表文件、VHDL 网表文件和 Verilog 网表文件; 10能生成第三方 EDA 软件使用的 VHDL 网表文件和 Verilog 网表文件。 设计中主要用到了 Verilog HDL 程序的编写模块,以及生成相应模块之后的仿真工 作。 2.3 小结 本章主要介绍了设计中用到的两款软件 Altium Designer 和 Quartus II。 北华航天工业学院毕业论文 7 第 3 章 系统硬件概况 3.1 系统概况 总体设计方案见如图 3-1 所示。 图 3-1 系统设计方案图 第 1 部分是放大器电路。程控放大器的作用是将传感器产生微弱的模拟信号进行放 大处理。放大器把信号放大到与 A/D 转换器满量程电压相应的电平值,以便充分利用 A/D 转换器的分辨率,放大器的放大倍数可以通过设计放大电路来进行实时控制。放大 器的频率特性包括两个方面:幅度频率特性和相位频率特性。 第 2 部分是 A/D 模数转换电路。其功能是将放大后的模拟信号转换为计算机能够识 别的数字信号。A/D 转换器是采样通道的核心,所以 A/D 转换器是影响数据采集系统采 样速率和精度的主要因素之一。 第 3 部分是数据缓存电路。受限于显示电路的响应速度,A/D 转换后的数据信息一 般不能直接传送到显示电路中,所以在送入显示电路或其他处理设备之前应该增加数据 缓存模块,而 FPGA 内部有 FIFO 可以作为缓存来存储数据,这样能有利于将数据送入 显示电路显示。 第 4 部分是时钟控制电路,为系统和各个子功能模块提供时钟。 第 5 部分是液晶显示器。数据缓存区的数据传输至液晶显示器。最终在液晶显示器 上显示出结果。 第 6 部分 FPGA 部分它可以通过在 FPGA 里面编程来控制程控放大器、A/D 模数转 换器、数据缓存等单元,并实现与显示电路的通信。 北华航天工业学院毕业论文 8 3.2 功能模块 程序选择的模块如表 3-1 所示。 表 3-1 采集系统配置清单表 序号部件名称型号数量(套) 1 FPGA EP2C8 1 2 液晶显示器33XY-LCD1 3电源AMS11171 4电源AMS1117-ADJ1 5AD 模数转换器ADS79451 6Sram IS61LV512161 7 晶振5*7 50MHZ1 8 Ref 参考电源REF50101 9 EPCS EPCS4*21 10 JTAG JTAG1 3.2.1 FPGA 模块 EP2C8 是 ALTERA 的 cyclone2 系列中的一款芯片。在 Altium Designer 中画的原理图如 下图 3-2 所示 Pcb 封装如下图 3-3 所示 图 3-2 原理图 图 3-3 封装 EP2C8 的 I/O 口如下图 3-4 所示 FPGA 的 IO 口可以自由定义,是本设计采用 FPGA 的一个理由。EP2C8 有共 8 个 bank,在本设计中主要使用了 3.3V 的 CMOS IO 口。 北华航天工业学院毕业论文 9 图 3-4IO 口 EP2C8 的电压如下图 3-5 所示,其中内核电压为 1.2V,外围 IO 电压为 3.3V。 图 3-5 电压 CLK 控制 BLK 锁相环电路如下图 3-6 所示。 北华航天工业学院毕业论文 10 图 3-6CLK 控制 BLK 3.2.2 液晶显示器模块 液晶显示模块采用采用了 4.3 寸 XY-LCD 彩色显示器。其封装如下图 3-7 所示 各引脚定义如下 北华航天工业学院毕业论文 11 图 3-7 显示器接口定义 彩色液晶显示采用的是 RGB 模式,RGB 色彩模式是工业界的一种颜色标准,是通 过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样 的颜色的,RGB 即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所 能感知的所有颜色,是目前运用最广的颜色系统之一。 RGB 是从颜色发光的原理来设计定的,通俗点说它的颜色混合方式就好像有红、绿、蓝三盏灯, 当它们的光相互叠合的时候,色彩相混,而亮度却等于两者亮度之总和,越混合亮度越高,即加法混 合。有色光可被无色光冲淡并变亮。如蓝色光与白光相遇,结果是产生更加明亮的浅蓝色光。知道它 的混合原理后,在软件中设定颜色就容易理解了。 红、绿、蓝三盏灯的叠加情况,中心三色最亮的叠加区为白色,加法混合的特点: 越叠加越明亮。 红、绿、蓝三个颜色通道每种色各分为 255 阶亮度,在 0 时“灯”最弱是关掉 的,而在 255 时“灯”最亮。当三色数值相同时为无色彩的灰度色,而三色都为 255 时 为最亮的白色,都为 0 时为黑色。 RGB 颜色称为加成色,因为您通过将 R、G 和 B 添加在一起(即所有光线反射回 眼睛)可产生白色。加成色用于照明光、电视和计算机显示器。例如,显示器通过红色、 绿色和蓝色荧光粉发射光线产生颜色。绝大多数可视光谱都可表示为红、绿、蓝 (RGB) 三色光在不同比例和强度上的混合。这些颜色若发生重叠,则产生青、洋红和黄。 液晶的时序图如下图 3-8 所示 北华航天工业学院毕业论文 12 图 3-8 液晶时序图 因为是液晶大部分不用焊接到板子上,只要有引脚就行所以用 Atium Designer 画出 的原理图如下图 3-9 所示 图 3-9 液晶原理图及 pcb 北华航天工业学院毕业论文 13 3.2.3 电源模块 FPGA 需要两种电源,3.3V 和 1.2V 其中 3.3V 产生原理图如图 3-10 所示 图 1-10 3.3V 电源 1.2V 产生模块如下图 3-11 所示 图 3-11 1.2V 电源 AMS1117 系列稳压器有可调版与多种固定电压版,设计用于提供 1A 输出电流且工 作压差可低至 1V。在最大输出电流时,AMS1117 器件的压差保证最大不超过 1.3V,并 随负载电流的减小而逐渐降低。 AMS1117 的片上微调把基准电压调整到 1.5%的误差以内,而且电流限制也得到了 调整,以尽量减少因稳压器和电源电路超载而造成的压力。所以采用 AMS1117 来获得 3.3V 和 1.2V 电源。 3.2.4 AD 模数转换器模块 ADS7945 是 14 位,取样率位 2MSPS,双通道,差分单端的超低功耗模数转换器 ADS7945 引脚配置如下图 3-12 所示。 北华航天工业学院毕业论文 14 图 3-12 ADS7945 原理图 其中 C12 是参考电压的去耦电容 C13 是 3.3V 电源的去耦电容,R10、C16 和 R13、C17 分别组成了模拟信号输入端的端接电阻和去耦电容。R14 和 R16 分别是 SDO 和 SCLK 的端接电阻,可以防止控制器带来的数字信号因阻抗不匹配对 AD 产生影响。 AD 的引脚定义: PINPIN 名功能描述 1GND数/模 2AVDD模拟ADC 电源 3REF模拟 4REFGND模拟 5AIN0模拟输入积极模拟输入,接口 0 6AIN0GND模拟输入接地模拟输入,接口 0 7AIN1GND模拟输入接地模拟输入,接口 1 8AIN1模拟输入积极模拟输入,接口 1 9NC-没有内部连接,建议外部接口接地 10NC-没有内部连接,建议外部接口接地 11CH SEL数字输入这个引脚设置模拟输入的接口 低=接口 0,高=接口 1,CS 处于下降沿半个时钟后它会在一个时钟周期内 改变接口,这保证在采样开始前设置好多路复用器 12PDEN数字输入如果它是高电平且 CS 处于上升沿,则断电 13CS数字输入芯片选择信号,低电平有效 14SCLK数字输入串行 SPI 时钟 北华航天工业学院毕业论文 15 15SDO数字输入串行数据输出 16DVDD数字数字 I/O 口 ADS7945 的直流特性 电气特性:微分 参数实验条件 MIN TYP MAX单位 数字输入/输出 逻辑系列CMOS VIH0.7DVDDV VIL0.3DVDDV VOHSDO load 20 pF0.8DVDDV 逻辑电平 VOLSDO load 20 pF 0.2DVDDV 输入漏电流 IIH, IIL 0 VIN DVDD20Na 外部引用 2.5 AVDDV 所需供电电压 AVDD 2.7 3.3 5.25V DVDD 1.65 3.3 AVDDV AVDD = 3.3 V, fSAMPLE = 2 MSPS3.5 4mAIDYNAMIC AVDD = 5 V, fSAMPLE = 2 MSPS4 5mA AVDD = 3.3 V, SCLK off2.3mA AVDD供电 电流 ISTATIC AVDD = 5 V, SCLK off2.5 3mA DVDD供电电流 DVDD = 3.3 V, fSAMPLE = 2 MSPS, 750 A SDO load 20 pF 750 A 电源状态 PD-DYNAMICSCLK = 40 MHz550 A 供电电流 IPD-STATICSCLK off2.5 A 通电时间从掉电状态使用pden口 1 s 温度范围 保证性能40 +125C 时序图:ADS7945 时序图 3-13 图 3-13 AD 时序 ADC 的时间参数 参数实验条件 Min typ max 单位 tCONV 转换时间 16 SCLK 北华航天工业学院毕业论文 16 Tacq 收集时间 80 ns FSAMPLE 抽样频率SCLK=40MHz, 16-clock frame 2 MSPS DVDD = 1.8 V 25 ns DVDD = 3 V 14.5 ns Td1 延时第一个数据输出时 cs 低电平 DVDD = 5 V 8.5 ns DVDD = 1.8 V 3.5 ns DVDD = 3 V 3.5 ns Tsu1 SCLK 的第一个上升沿时 cs 低电平 DVDD = 5 V 3.5 ns DVDD = 1.8 V 11 ns DVDD = 3 V 9 ns Td2 CLK 趋向 SDO DVDD = 5 V 7.1 ns DVDD = 1.8 V 4 ns DVDD = 3 V 3 ns Th1 保持时间,数据有效信号下降 DVDD = 5 V 2 ns DVDD = 1.8 V 15 ns DVDD = 3 V 12.5 ns Td3 延时,cs 升高到 sdo 3-date DVDD = 5 V 8.5 ns Td4 延时,转换结束时 cs 在上升沿 10 ns Twh 脉冲持续,SCLK 高电平 8 ns Twl 脉冲持续,SCLK 低电平 8 ns 信号频率 40 ns Tpdsu 开始,cs 上升沿时 PDEN 高电平 2 MHz Tpdh 保持时间 cs 上升沿时 pden 下降 沿 10 ns ns 3.2.5 存储模块 SRAM SRAM 是英文 Static RAM 的缩写,即静态随机存储器。它是一种具有静止存取功能 的内存,不需要刷新电路即能保存它内部存储的数据。 SRAM 不需要刷新电路即能保存它内部存储的数据。而 DRAM(Dynamic Random Access Memory)每隔一段时间,要刷新充电一次,否则内部的数据即会消失,因此 SRAM 具有较高的性能,但是 SRAM 也有它的缺点,即它的集成度较低,相同容量的 DRAM 内存可以设计为较小的体积,但是 SRAM 却需要很大的体积,且功耗较大。所 以在主板上 SRAM 存储器要占用一部分面积。 SRAM 有如下特点:优点,速度快,不必配合内存刷新电路,可提高整体的工作效 率。缺点,集成度低,掉电不能保存数据,功耗较大,相同的容量体积较大,而且价格 较高,少量用于关键性系统以提高效率。 北华航天工业学院毕业论文 17 SRAM 工作原理:假设准备往图 2 的 6T 存储单元写入“1” ,先将某一组地址值输入 到行、列译码器中,选中特定的单元,然后使写使能信号 WE 有效,将要写入的数据 “1”通过写入电路变成“1”和“0”后分别加到选中单元的两条位线 BL,BLB 上,此时 选中单元的 WL=1,晶体管 N0,N5 打开,把 BL,BLB 上的信号分别送到 Q,QB 点,从而 使 Q=1,QB=0,这样数据“1”就被锁存在晶体管 P2,P3,N3,N4 构成的锁存器中。写入 数据“0”的过程类似。 SRAM 的读过程以读“1”为例,通过译码器选中某列位线对 BL,BLB 进行预充电到 电源电压 VDD,预充电结束后,再通过行译码器选中某行,则某一存储单元被选中,由 于其中存放的是“1” ,则 WL=1、Q=1、QB=0。晶体管 N4、N5 导通,有电流经 N4、N5 到地,从而使 BLB 电位下降,BL、BLB 间电位产生电压差,当电压差达到一 定值后打开灵敏度放大器,对电压进行放大,再送到输出电路,读出数据。 SRAM 功能图如下图 3-14 所示 图 3-14 SRAM 功能图 SRAM 读的时序图 3-15 所示 北华航天工业学院毕业论文 18 图 3-15 AD 读时序 用 Atium Designer 画出的原理图如下图 3-16 所示 图 3-16 SRAM 原理图及封装 3.2.6 晶振 石英晶体振荡器是利用石英晶体(二氧化硅的结晶体)的压电效应制成的一种谐振 器件,它的基本构成大致是:从一块石英晶体上按一定方位角切下薄片(简称为晶片, 它可以是正方形、矩形或圆形等) ,在它的两个对应面上涂敷银层作为电极,在每个电极 上各焊一根引线接到管脚 上,再加上封装外壳就构成了石英晶体谐振器,简称为石英晶 体或晶体、晶振1;而在封装内部添加 IC 组成振荡电路的晶体元件称为晶体振荡器。 其产品一般用金属外壳封装,也有用玻璃壳、陶瓷或塑料封装的。这里采用 50MHZ5*7 的晶振。电路如图 3-17 所示 北华航天工业学院毕业论文 19 图 3-17 晶振 3.2.7 REF 参考电源 图 3-18 REF 参考电源 REF5010 是低噪声,低偏移高精度的参考电源。上图 3-18 是参考电源的电路图。 3.2.8 EPCS EPCS(Erasable programmable configurable serial)是串行存贮器,FPGA 不能直接从 EPCS 中执行程序,它实际上是执行 EPCS 控制器的片内 ROM 中的代码(即 Bootloader) , 实际工作中 FPGA 把 EPCS 中的程序搬到 RAM 中执行。 FPGA 配置数据和程序都存放在 EPCS 器件中。FPGA 配置数据放在最前面,程序放 在后面,程序可能有多个段,每个段前面都插有一个“程序记录” 。一个“程序记录” 由 2 个 32 位的数据构成,一个是 32 位的整数,另一个是 32 位的地址,分别用于表示程 序段本身的长度和程序段的运行时地址。这个“程序记录”用于帮助 Bootloader 把各个 程序段搬到程序执行时真正的位置。 北华航天工业学院毕业论文 20 3.2.9 JTAG 其接口功能:TDI(测试数据输入) TDO(测试数据输出) TCK(测试时钟) TMS(测试模式选择) TRST(测试复位)可选 图 3-19 JTAG 及 EPCS 功能图 总原理图及 pcb 图如下图 3-20 3-21 所示 北华航天工业学院毕业论文 21 图 3-20 总原理图 图 3-21 总 pcb 图 北华航天工业学院毕业论文 22 3.3 小结 系统硬件是设计的基础,在设计软件程序之前,要对系统的结构有个深入的了解, 本章详细介绍了整个系统的硬件结构和各模块的选型,介绍了系统的概况,使读者对总 体的设计有个大致了解。 北华航天工业学院毕业论文 23 第 4 章 程序仿真 4.1 Verilog HDL 程序 生成 stat 信号部分 clkdiv 程序如下: module clkdiv (/ ALTERA_ARGS_BEGIN DO NOT REMOVE THIS LINE! clkin, clkout / ALTERA_ARGS_END DO NOT REMOVE THIS LINE! );/ Port Declaration / ALTERA_IO_BEGIN DO NOT REMOVE THIS LINE! input clkin; output clkout; / ALTERA_IO_END DO NOT REMOVE THIS LINE! wire clkout; reg a; reg 31:0cnt; assign clkout=a; always (posedge clkin) begin if(cnt=268435456)/2.68 秒 begin a=0; cnt=cnt+1; end else begin a=1; cnt=300000000; /cnt=cnt+1; end end endmodule 程序生成的顶层模块如下图 4-3 所示 北华航天工业学院毕业论文 24 图 4-3 clkdiv 部分 分频模块 Clkctr 程序见附录 1 程序生成的顶层模块如下图 4-4 所示 图 4-4 clkctr 部分 Ad 模块程序见附录 2,生成的顶层模块如下图 4-5 所示 图 4-5 ad 部分 4.2 采集波形 实际整体电路连接图如下图 4-6 所示 北华航天工业学院毕业论文 25 图 4-7 整体电路连接图 输入 10Khz 的正弦波输出波形如下图 4-7 所示。 图 4-7 10Khz 正弦信号输出波形 CS 与 CHSEL 的时序图如下图 4-8 所示 北华航天工业学院毕业论文 26 图 4-8 CS 与 CHSEL 的时序图 4.3 小结 本章主要介绍了 quartus II 软件的使用方法和 AD 的编程,使用 Verilog HDL 语言编 写程序写出 AD 模块和 Clkctr 及 Clkdiv 模块再将模块与 FPGA 相连最终将输入模拟信号 转换为数字信号实现课题要求。 北华航天工业学院毕业论文 27 第 5 章 课题特点 5.1 FPGA 应用 FPGA 在高速数据采集方面有 DSP 和单片机无可比拟的优势,FPGA 具有时钟频率 高内部时延小,全部空盒子逻辑由硬件完成,速度快,效率高,组成形式灵活等特点。 因此,本文研究并开发了一个基于 FPGA 的数据采集系统。FPGA 的 IO 口可以自由定义, 没有固定总线限制更加灵活变通。本文中所提出的数据采集系统设计方案,就是利用 FPGA 作为整个数据采集系统的核心来对系统时序和各逻辑模块进行控制。依靠 FPGA 强大的功能基础,以 FPGA 作为桥梁合理的连接了 ADC、显示器件以及其他外围电路, 最终实现了课题的要求,达到了数据采集的目的。 5.2 FIFO 缓存设计 由于 A/D 转换器、FPGA 以及显示器之间处理数据的速度不同,为了消除不必要的 数据丢失或者重复读取和数据丢失,可以将处理后的数据暂时存入 FIFO 中。FIFO 是一 个先入先出的堆栈,利用 FPGA 内部强大的寄存器功能,设计了一个 FIFO 的数据缓冲 器。 A/D 转换器将转换好的数据存入 FIFO 缓存中,FPGA 检测液晶显示器有无读信号, 如果有读信号,则 FIFO 输出信号给显示器;如果没有,则数据继续存储在 FIFO 中,等 待被取走。这样便不会有数据丢失,系统更安全完整。 北华航天工业学院毕业论文 28 第 6 章 结论 FPGA 是采集系统的主体,连接了 SRAM,液晶显示器,ADS7945 等等。综合控制 每个单元,最终实现采集功能。论文详细介绍了以下内容: 1 Altium Designer 在做本设计的时候的详细使用。 2系统中 FPGA,SRAM,ADS7945,液晶显示器,等各个模块的详细电气信息和功 能。 3用 Verilog HDL 语言编程来控制 FPGA 以达到数据采集的目的。 4使用 quartus2 软件仿真。 5最后对整个设计的特点及优势进行了总结。 北华航天工业学院毕业论文 29 附附 录录 附录 1 程序部分 Clkctr 程序部分 module clkctr ( / ALTERA_ARGS_BEGIN DO NOT REMOVE THIS LINE! start, clk, ctr, clken / ALTERA_ARGS_END DO NOT REMOVE THIS LINE! ); / Port Declaration / ALTERA_IO_BEGIN DO NOT REMOVE THIS LINE! input start; input clk; input 2:0 ctr; output clken; / ALTERA_IO_END DO NOT REMOVE THIS LINE! reg samp1; reg samp2; reg samp3; reg samp4; wire clken; /reg 1:0ctr; reg flag1; reg flag2; reg flag3; reg flag4; reg 1:0 count1; reg 2:0 count2; /assign clken=flag1?clk:(flag2?samp2:(flag3?samp3:(flag4?samp4:0); assign clken=flag1?samp1:(flag2?samp2:(flag3?samp3:(flag4?samp4:0); /不分频模块/ always (posedge clk) begin if(!start) begin samp1=1; end else begin samp1=1; end end /二分频模块/ always(posedge clk) begin if(!start samp2=0; else samp2=samp2; end /四分频模块/ always(posedge clk ) begin if(!start) begin count1= 0; samp3= 1b0; end else begin if ( count1 3) begin count1 = count1 + 1b1; samp3= 1b0; end else begin count1 = count1 + 1b1; samp3= 1b1;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论