数字电压表设计论

数字电压表设计论

ID:23475389

大小:2.78 MB

页数:10页

时间:2018-11-08

数字电压表设计论_第1页
数字电压表设计论_第2页
数字电压表设计论_第3页
数字电压表设计论_第4页
数字电压表设计论_第5页
资源描述:

《数字电压表设计论》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、《电子设计EDA》题目:基于FPGA数字电压表设计学院:电子与信息工程学院班级:09电信本一班姓名:曾仁球学号:90514008指导老师:肖开选老师日期:2011年12月10引言随着计算机与微电子技术的发展,电子设计自动化EDA领域已成为电子技术发展的主体,数字系统的设计正朝着速度快、容量大、体积小、重量轻的方向发展。推动该潮流发展的引擎,就是日趋进步和完善的FPGA设计技术。而电子设计自动化,是近几年迅速发展起来的将计算机软件、硬件、微电子技术交叉运用的现代电子设计学科,其中EDA设计语言中的VHDL语言是一种快速的电路设计工具,功能涵盖了电路描述、电路合成、电路仿真等三大电路

2、设计工作。该数字电压表的电路设计,正是用VHDL语言完成的。此次设计主要应用美国Altera公司自行设计的一种CAE软件工具,即quartuesII软件。一、数字电压表的构成及工作原理   数字电压表是诸多数字化仪表的核心与基础。以数字电压表为核心扩展成的各种数字化仪表,几乎覆盖了电子电工测量、工业测量、自动化系统等各个领域。1.1数字电压表   数字电子系统通常由ASIC芯片和外围硬件设备组成,具有灵活性不强等缺陷。如图1所示的数字电压表,A/D转换器在控制ASIC所提供的时序信号作用下,对输入模拟信号进行转换,控制核心再对转换结果进行运算和处理,最后驱动输出装置显示数字电压信

3、号。由于系统功能由ASID硬件结构决定,其功能难以更新和扩展。如果用EDA方法设计,即以可编程逻辑器件FPGA代替ASIC芯片,用硬件描述语言决定系统功能,就可在硬件不变的情况下修改程序以更新和扩展功能,使其灵活性显著提高。基于此考虑,用EDA方法设计了一个简易数字电压表控制电路,旨在研究提高数字电子系统灵活性的设计方法。10 1.2数字电压表的工作原理   数字电压表的改进结构如图2所示,它的硬件包括三个部分,其中转换器ADC0804的作用是将模拟电压信号转换成数字电压值,并送到FPGA以待运算和处理;七段数码显示器的作用是接收FPGA转换后的BCD数据并显示;FPGA兼有处理

4、和协调作用,包括控制A/D转换动作、接收A/D转换结果及编码、驱动显示等作用。因此,FPGA可分为三个功能模块,即控制模块、计算模块和显示驱动模块。 图2数字电压表的改进结构二、FPGA设计   由以上分析,数字电压表的FPGA设计,适合于顶层电路与三个底层模块相结合的设计方法,其中显示驱动模块有标准的七段显示VHDL子程序可供调用。下面仅论述其余两模块的设计。102.1控制模块的设计   该模块的任务是,控制ADC0804的工作时序,可分为ST0~ST3四个连续的步骤或状态。任务分别是:使ADC0804准备转换(状态ST0)、转换(状态ST1)、FPGA准备读取转换结果(状态S

5、T2)、读取转换结果(状态ST3)。各状态由FPGA输出脚CS、WR、RD、INTR的不同电平组合确定,主要的VHDL语句为:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityad0804isport(cs,wr,rd:outstd_logic;clk,intr:instd_logic;din:instd_logic_vector(7downto0);dout:outstd_logic_vector(7downto0));endentity;architecturebhvofad

6、0804istypestatesis(st0,st1,st2,st3);signalc_s,n_s:states;signallatch:std_logic;beginreg:process(clk)beginif(clk='1'andclk'event)thenc_s<=n_s;endif;endprocess;com:process(c_s,intr)begincasec_siswhenst0=>cs<='0';wr<='0';rd<='1';latch<='0';n_s<=st1;whenst1=>cs<='1';wr<='1';rd<='1';latch<='0';ifi

7、ntr='1'thenn_s<=st1;elsen_s<=st2;endif;whenst2=>cs<='0';wr<='1';rd<='0';latch<='0';n_s<=st3;10whenst3=>cs<='0';wr<='1';rd<='0';latch<='1';n_s<=st0;whenothers=>n_s<=st0;endcase;endprocess;la:process(latch)beginiflatch='1'thendout<=din;--dout<=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。