ImageVerifierCode 换一换
格式:DOCX , 页数:36 ,大小:392.53KB ,
资源ID:6658162      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-6658162.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于fpga的数字电压表的设计与实现大学论文.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于fpga的数字电压表的设计与实现大学论文.docx

1、基于fpga的数字电压表的设计与实现大学论文基于FPGA的数字电压表的设计与实现DESIGN AND IMPLEMENTATION OFDIGITAL VOLTAGE METER BASED ON FPGA专 业:电子信息工程姓 名: 指 导 教 师:申请学位级别: 学 士论文提交日期: 学位授予单位: 摘 要数字电压表简称DVM,是一种通过采用数字化测量技术,把连续的模拟量(直流输入电压)转换成离散的、不连续的数字形式,并将转化结果加以显示的仪表。本设计研究的电压表主要的设计核心是Xilinx 公司的Vritex-4 FPGA器件,主要分为下面几部分:数据处理模块实现TVL571数字量对应B

2、CD码的变换和处理;显示控制模块实现LED段码的产生。显示部分要求在三个七段数码管上显示电压值,要求保留小数点后两位数字。软件要求用ISE10.1环境,用VHDL语言编写数字电压表各模块的功能并进行调试与下载到FPGA板上进行验证。关键词:VHDL;数字电压表;FPGA;A/D;Xilinx;ISE10.1ABSTRACTDigital voltmeter is a voltage measuring instruments that is referred to as DVM and it is most common in intelligent instruments.DVM use d

3、igital measurement technology and make the continuous analog (DC input voltage) into discontinuous, discrete digital form and display on LED or LCD. The design of this voltmeter main core is the Xilinxs Vritex-4FPGA devices.The voltmeter mainly divided into the following sections: data processing mo

4、dule is mainly depend on the TLV571 and based on this AD realizing the transforming BCD between digital measurement;dispay module realiazed the producing of the part code. The voltmeter requires the ability to display the measured voltage value in three seven-segment digital tube, retaining two sign

5、ificant figures after the decimal point. The software of the design is Xilinx companys EDA development environment ISE10.1 and using the VHDL language to write the function of the voltmeters each module and debug.Downloading the program to the the FPGA board to verify the result.Key words:VHDL;volme

6、ter;FPGA;A/D;Xilinx;ISE10.1 (目录页空着,我统一调整)1 绪 论1.1 数字电压表的研究背景在20世纪50年代数字电压表开始出现在生活和研究的各个方面,它在60年代得到了发展和完善。数字电压表简称DVM,其在智能仪器的使用中是极其常见的,它将测量技术、指标数据化,把连续的输入转化为离散的数据量并加以显示。此种电子仪表能够得以发展主要由以下两方面原因,一是因为电子计算机的普及,电子化技术已经从研究领域逐渐过渡到应用领域,在生产生活的各项研究中实现数据化、理论化,即为了实现数据控制的实时性和数据处理的可靠性;另一方面,也是电子计算机的发展,带动了脉冲数字电路技术的进步,

7、为数字化仪表的出现提供了条件1。所以,电子计算机的发展为数字化测量仪器的出现与发展提供了前提条件;同时,在如今低能耗、高效率的发展要求之下,完善陈旧的结构成为了测量仪器的发展趋势,这也进一步的推进了数字测量仪器的发展,同时,它也是机械化仪表向智能化仪表发展的必经之路2。当下,传统的指针式电压表的市场已经被数字电压表所取代,由于传统的模拟指针式电压表具有功能单一,精度低,读数不便利以及易出错等缺点7。采用现场可编程门阵列即 FPGA(Field Programmable Gate Array)为设计的系统核心,是在当智能电子产品市场背景下所要求的必然趋势。系统最大限度地将所有器件集成在 FPGA

8、 芯片上,体积大大减小、集成度高,可靠性高。且逻辑单元控制灵活度高、范围大、集成度高,可以尽可能的使大规模电路和超大规模电路高精度的集成在芯片上,实现芯片的高效率、低功耗。因为其硬件系统的功能是基于软件编程实现的,所以其灵活度高可在不改变原有电路的基础上实现系统的升级14。基于FPGA的数字电压表由于测量精度高,速度快,读数时也非常方便,抗干扰能力强,可扩展性强等优点已被广泛应用于电子和电工测量,工业自动化仪表,自动测量系统等领域,显示出强大的生命力。现在数字电压表已经慢慢的发展成为便携式数字测量仪表中最具有代表性的测量仪器之一3。1.2 数字电压表的的研究意义随着现代化电子技术数据化进程的不

9、断推进,数字电压表的功能越来越强,种类越来越多,其使用范围也在不断的拓进。智能化的数字仪器的普及也是未来发展的必然方向,它们将不仅能将测量准确度提高,而且能完善电测量技术的自动化程序,以此为基础可以对各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表(如:温度计、湿度计、酸度计、重量、厚度仪等),几乎覆盖了电子电工测量、工业测量、自动化仪表等各个领域18。采用单片机作为系统的控制核心。输入信号经AD转换后送到单片机进行数据处理,根据电压信号的不同计算出相应的数值,并将结果显示出来。这种基于单片机的设计的优点是单片机技术成熟度高、设计成本也较低、编程灵活度高、运算功能性较强,能较准确地测量输

10、入电压。由于在单片机系统中必须使用许多独立元件连接成整体的外围电路,这就使得整个系统变得复杂度高,抗干扰能力差,可靠性较低,而且功耗高。目前,由于FPGA技术具有快速的数据处理能力所以其被广泛应用于信号的处理和控制等相关领域。最近成功研制了一种高速数据采集系统,这种系统将FPGA 与AD转换器相结合,AD转换器的型号为ADC083000RB,具有8位双LVDS分辨率3GS/s,采样频率为3GHz带宽,用于对超高速瞬态信号进行计数。用VHDL语言编程。这个系统可以对脉宽为1-10和3GHz的瞬态信号进行测量和计数。在这项工程中PD信号由模拟发生器充当,所有的计数由FPGA实现无需使用示波器。由于

11、其计数频率显示在LCD屏上,FPGA可以成为一种高度移动的便携检测仪20。基于FPGA的数字电压表的设计其硬件功能完全由软件编程实现,修改调试方便,在不改变原有电路的基础上便可实现系统升级,克服了用单片机设计系统的缺点17。1.3 国内外研究概况及应用前景科学技术的快速发展为测量仪表、仪器的出现提供了可能性,并且为此提供了新的原理和新的技术支持,新型的元、器体也应运而生,与此同时对测量仪表的要求有了更高更新的要求。数字电压表(也称之为 DVM)是以计算机技术、电子技术、精密测量技术和自动化技术为基础逐渐产生和发展起来的8。 数字式仪表是一种可以把连续的被测量自动地变成不连续的、用数字编码方式表

12、示的、并以十进制数字的形式自动显示测量结果的测量仪表。这是一种新式的测量工具,这种工具通过将计算机技术、电子技术以及自动化技术的研究成果与精密电测量技术密切的结合在一起而成为仪表、仪器领域中独树一帜的一个分支16。 1952 年,美国的NLS公司第一个发明了四位的数字电压表,从以前到现在的的几十年中一直在进行不断的革新与改进使其功能日趋完善。电压表是以电位差计的自动化考虑为基础研发成功的,从以前只能显示四五六位而逐渐发展到现在能在数码管上显示七八位的结果;开始是一、二种简单的工作原理渐渐发展到现在几十种复杂的原理,从最初使用电子管和继电器发展到现在用全晶体管化、集成电路化、微处理器化的器件;由

13、一台数字电压表只能局限的测量一、两种参数到如今能大范围的测十几种参数的多用型;显示器件也从辉光数码显示发展 到等离子体、发光二极管、液晶显示等。电压表的体积和功耗变得越来越小,重量也在不断地减轻,价格也在渐渐地下降,可靠性也越来越高,量程范围越来越大19。总结一下电压表的发展历程,大概可以分为以下三个阶段: 数字化阶段。从50到60 年代的中期,电压表通过运用各种原理来实现模拟量与数字量之间的变换,就是通过将模拟量转化成数字量来实现测量仪表的数字化。 高准确度阶段。随着精密电测量准确度要求的越来越高,电压表的测量精度也在不断的提高,测量位数的范围也在不断的拓展,因此出现了一种以此为基础的复合型

14、原理的新型仪表。智能化阶段。在60 年代的末期,电子技术和工艺结构的发展都有了标志性的成就,此时计算机技术与大规模的集成电路(LSI)相结合的产物微处理器也应运而生。1972年,美国的英特尔公司首第一个发明微处理器不久就研发出微处理器式数字电压表,从而实现了电压表的数据自动化处理与可编程序的功能。由于带有存储器并使用相关的软件,因此可以对信息进行处理,也可以通过标准接口组成自动测试系统(也称之为 ATS)。这些仪表除了实现了原有的电压表的各种功能外,还能够自动检测鱼校验,保证了自动测量度的准确性,实现了仪表和仪器所说的“智能化”。如今,智能化仪表发展的非常迅猛,在智能仪表中尤其以微处理式电压表

15、所占的百分比最多4。各种物理量的动态测量的希望由于智能化电压表的出现也越来越明朗。2 系统的软件开发环境2.1 Xilinx公司的ISE工具软件XILINX 公司是全世界领先的能都同可编程逻辑完整解决方案的厂家,同时也研发、制造并销售应用范围十分广泛的软件设计工具、高级集成电路还有定义系统级功能的 IP(Intellectual Property)核,从前到现在,一直为FPGA技术的发展做出了巨大的贡献。同时XILINX的开发工具也一直在不断地升级,由前期研发的Foundation系列也逐渐地发展到现在的ISE9.1i系列,融合了FPGA所需要的所有功能,其主要特点主要包括下面几部分:包含了X

16、ILINX新型 Smart Compile 技术,同时可以将实现的时间缩减到原来的2.5倍,并且可以在最短的时间内提供最高的性能,提供了一个功能十分强大的设计收敛环境; 全面支持 Virtex-5 系列器件(业界第一款 65nmFPGA);集成式的时序收敛环境对轻松地快速地识别 FPGA 设计的瓶颈有了很明显的帮助;能节省一个或多个速度等级的成本,并且能在逻辑设计中把总成本降到最低。Foundation Series ISE 界面清晰、简单且易操作,再加上XILINX 的 FPGA 芯片在市场上占有很大的市场,因此成为市场上最通用的FPGA工具软件也理所当然。ISE 作为高效的 EDA 设计工

17、具集合,与第三方软件结合可以扬长补短,其软件功能也越来越强大,也因此为用户提供了更加丰富的XILINX平台。2.1.1 软件界面图2-1 软件界面图2-1sources窗口中可以查看所用的芯片型号类型,顶层文件,还可以通过点击右键来创建新的文件类型如仿真波形或是IP核等,sources的类型有三种分别为Implementation、behavioral simulation、post-route simulation;process窗口可以实现综合、编辑管教约束文件、下载bit文件、下载等功能。2.1.2 设计流程设计中常用的四个操作:综合、实现、生成bit文件、下载。ISE 的功能主要分为设

18、计输入、综合、仿真、实现和下载几个部分,涵盖了 FPGA 开发的全过程,从功能上讲,其工作流程不需借助任何的第三方 EDA 软件。图2-2 设计流程设计输入:ISE 提供的设计输入工具包括用于 HDL 代码输入和查看报告的 ISE 文本编辑器(The ISE Text Editor),用于原理图编辑的工具 ECS(The Engineering Capture System),用于生成 IP Core 的Core Generator,用于状态机设计的 State CAD 以及用于约束文件编辑的 Constraint Editor 等。综合:ISE的综合工具不仅包含了XILINX自身提供的综合工

19、具XST,与此同时还内嵌了Mentor Graphics公司的 Leonardo Spectrum 和 Synplicity 公司的 Synplify,实现无缝链接。仿真:ISE 工具本身自带了一个具有图形化波形编辑功能的仿真工具 HDL Bencher,同时又提供了使用Model Tech 公司的 Modelsim 进行仿真的接口。实现:这个功能包括了翻译、映射、布局布线等几部分,还具备了时序分析、管脚指定以及增量设计等高级功能。下载:下载功能包括了 BitGen,可以将布局布线后的设计文件变换为位流文件,还包括了 ImPACT,其功能是将设备进行配置与通信,控制将程序烧写到 FPGA 芯片

20、中去。使用 ISE 进行 FPGA 设计的各个过程可能涉及到的设计工具如表 2-1 所示。表2-1 ISE设计工具表设计输入综合仿真实现下载HDL文本编辑器ECS原理图编辑器STATE状态机编辑器XSTFPGA Express(Synplify Lenardspectrum)HDL Bencher(Model Sim)TranslateMAPPlace and RouteXpowerBitGenIMPACT2.1.3 波形仿真流程 图2-3 新建一个波形文件图2-4 实现行为仿真如图2-3所示,在sources窗口中按右键创建一个波形文件,选择所需要仿真的VHDL文件,创建完成后即为图2-4中

21、的第一张图,在souces窗口切换到行为仿真,选择刚才创建的波形文件进行行为仿真,在process窗口中点击simulation behavioral model右键选择属性将仿真时间与建立波形的时间的设成一样的。 2.2 硬件描述语言VHDL2.2.1 VHDL语言简介VHSIC(VeryHighSpeedIntegratedCircuit)HardwareDescription Language,是由美国的国防部提出的一种新型的HDL,产生于1981年,其目标是一个使电路文本使他人理解的一种标准,其主要功能是为了让他人所理解采用文本描述的设计,同时作为模型语言,可以采用软件来进行模拟操作。

22、1986年,IEEE(The Institute of Electrical and Electronics Engineers)全力进行予以VHDL标准化的工作,经过了多次的修改和扩充,在1987年底VHDL语言被IEEE和美国国防部宣布成为为标准硬件描述语言。1988年,Milstd454规定所有为美国国防部设计的ASIC产品一定要采用VHDL来进行描述。1993年,IEEE又对VHDL进行了再次的修订。从更高的抽象层次和系统描述能力上扩展VHDL的内容,加入了支持模拟描述及数模混合描述的语言功能,使其成为了一种标准的混合型的硬件描述语言,公布了新版本的VHDL即IEEE标准的107619

23、93版本。1996年,IEEEl076.3成为VHDL综合标准。如今,作为硬件描述语言之一的VHDL语言成为EDA工具开发商和集成电路制造商所一致认可和推广的标准硬件描述语言。2.2.2 VHDL语言的特点优势VHDL语言可以成为标准并且得到广泛的应用,肯定有它自身一定的主要优势,或者说是与众不同的特点。具有强大的功能和灵活性特点:VHDL语言语言结构功能十分强大,复杂的逻辑控制可以用最简单明确的语言来描述。独立于任何器件的设计:设计人员使用VHDL语言进行硬件电路的设计时,可以脱离此项设计的逻辑器件来进行设计。这样,设计人员就能花费大量的时间与精力来进行设计的构思。可进行程序的移植:VHDL

24、语言的移植能力是允许设计人员对需要综合设计描述来进行模拟,在综合前对一个数千门的设计描述进行模拟能省下很多的时间。因为VHDL语言是一种标准化的硬件描述语言,因而同一个设计的VHDL语言描述能被不同的EDA工具所支持,从而使得VHDL语言程序的移植成为可能。性能评估能力:不依靠器件的设计和可以进行程序移植的特点允许设计人员可以使用不同的器件结构和综合工具来对自己的设计进行综合评估。易于ASIC移植:VHDL语言高效率的重要表现之一就是假如设计人员的设计是被综合到一个CPLD器件或FPGA器件,那么就可以使设计的产品以最快的的速度上市。当产品的数量达到很大的规模时,采用VHDL语言可以很容易地帮

25、助设计人员实现转成ASIC的设计。VHDL语言具有标准、规范,易于共享和复用的特点:VHDL语言的语法标准、规范且可读性非常强。因为VHDL语言是一种IEEE的工业标准硬件描述语言,具有严格的语法规范和统一的标准的特点,所以它可以使设计人员之间进行交流和共享14。2.2.3 设计中用到的语言结构1.调用库LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;2.实体ENTITY 实体名 IS PORT ( 端口表 );END ENTITY

26、实体名;以本设计中的程序为例如entity volmeter is port ( clk : in STD_lOGIC; int : in STD_lOGIC; dati : in STD_lOGIC_VECTOR (7 downto 0); wr,rd,cs : out STD_lOGIC; reset : in STD_lOGIC; scan : out STD_lOGIC_VECTOR (2 downto 0); dato : out STD_lOGIC_VECTOR (7 downto 0);end volmeter;3.结构体ARCHITECTURE 结构体名 OF 实体名 IS 说

27、明语句BEGIN 功能描述语句END ARCHITECTURE 结构体名; 4.端口声明PORT ( 端口名 : 端口模式 数据类型 ; 端口名 : 端口模式 数据类型 ) ; 以本设计中的程序为例如port ( clk : in STD_lOGIC; int : in STD_lOGIC; dati : in STD_lOGIC_VECTOR (7 downto 0); wr,rd,cs : out STD_lOGIC; reset : in STD_lOGIC; scan : out STD_lOGIC_VECTOR (2 downto 0); dato : out STD_lOGIC_V

28、ECTOR (7 downto 0);5.自定义数据类型如type state is (s0,s1,s2,s3); signal sta,led_sta :state;6.简单的赋值语句赋值目标 = 表达式 如scan 连接端口名,.) ;如u0: lpm_rom0 port map ( address=address_l,clock=qclk,q=data_l(15 downto 8)8.元件声明COMPONENT 元件名 ISPORT (端口名表);END COMPONENT 元件名;如component lpm_rom0 port ( address :in std_logic_vect

29、or(5 downto 0); clock :in std_logic; q :out std_logic_vector(7 downto 0) );end component;9.process进程语句结构进程标号: PROCESS ( 敏感信号参数表 ) IS 进程说明部分 BEGIN 顺序描述语句 END PROCESS 进程标号;如process(clk,clkcount) begin if clkevent and clk=1 then clkcount=clkcount+1; end if; qclk=clkcount(3);end process;进程说明部分可以包含数据类型、常

30、数、变量、属性、子程序15。在一个结构体中可以包含任意个进程语句结构,所有的进程语句都是并行语句,而由任一进程PROCESS引导的语句(包含在其中的语句)结构属于顺序语句。 进程的特点PROCESS为一无限循环语句 ;PROCESS中的顺序语句具有明显的顺序/并行运行双重性 ;进程必须由敏感信号的变化来启动 ;进程语句本身是并行语句;信号是多个进程间的通信线 ;一个进程中只允许描述对应于一个时钟信号的同步时序逻辑;10.case语句CASE ISWHEN = ; . ; ;WHEN = ; . ; ;.WHEN OTHERS = ;END CASE ; 原则 : 1、完全性:表达式所有可能的值

31、都必须说明,可以用 others 2、唯一性:相同表达式的值只能说明一次如case led_sta is when s0=scan=001;hexd=0&voltage(3 downto 0);led_stascan=010;hexd=0&voltage(7 downto 4);led_stascan=100;hexd=0&voltage(11 downto 8);led_stascan=000;hexd=00000;led_sta=s0; end case;11.if语句有四种形式1) IF 条件句 THEN 顺序语句 END IF ;2) IF 条件句 THEN 顺序语句 ELSE 顺序语句 END IF ; 3) IF 条件句 THEN 顺序语

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2