《数字电压表设计论文》.docVIP

  • 4
  • 0
  • 约 10页
  • 2015-12-20 发布于河南
  • 举报
《数字电压表设计论文》.doc

《电子设计EDA》 题目:基于FPGA 数字电压表设计 学院:电子与信息工程学院 班级: 09电信本一班 姓名:曾仁球 学号指导老师:肖开选老师 日期:2011年12月 引 言随着计算机与微电子技术的发展,电子设计自动化EDA领域已成为电子技术发展的主体,数字系统的设计正朝着速度快、容量大、体积小、重量轻的方向发展。推动该潮流发展的引擎,就是日趋进步和完善的设计技术。而电子设计自动化,是近几年迅速发展起来的将计算机软件、硬件、微电子技术交叉运用的现代电子设计学科,其中EDA设计语言中的VHDL语言是一种快速的电路设计工具,功能涵盖了电路描述、电路合成、电路仿真等三大电路设计工作。该数字电压表的电路设计,正是用VHDL语言完成的。此次设计主要应用美国Alter公司自行设计的一种CAE软件工具,即软件。 数字电压表的构成及工作原理 ??? 数字电压表是诸多数字化仪表的核心与基础。以数字电压表为核心扩展成的各种数字化仪表,几乎覆盖了电子电工测量、工业测量、自动化系统等各个领域。 1.1 数字电压表 ??? 数字电子系统通常由ASIC芯片和外围硬件设备组成,具有灵活性不强等缺陷。如图1所示的数字电压表,A/D转换器在控制ASIC所提供的时序信号作用下,对输入模拟信号进行转换,控制核心再对转换结果进行运算和处理,最后驱动输出装置显示数字电压信号。由于系统功能由ASID硬件结构决定,其功能难以更新和扩展。如果用EDA方法设计,即以可编程逻辑器件代替ASIC芯片,用硬件描述语言决定系统功能,就可在硬件不变的情况下修改程序以更新和扩展功能,使其灵活性显著提高。基于此考虑,用EDA方法设计了一个简易数字电压表控制电路,旨在研究提高数字电子系统灵活性的设计方法。 ? 1.2 数字电压表的工作原理 ??? 数字电压表的改进结构如图2所示,它的硬件包括三个部分,其中转换器ADC0804的作用是将模拟电压信号转换成数字电压值,并送到以待运算和处理;七段数码显示器的作用是接收转换后的BCD数据并显示;兼有处理和协调作用,包括控制A/D转换动作、接收A/D转换结果及编码、驱动显示等作用。因此,可分为三个功能模块,即控制模块、计算模块和显示驱动模块。 ?设计 ??? 由以上分析,数字电压表的设计,适合于顶层电路与三个底层模块相结合的设计方法,其中显示驱动模块有标准的七段显示VHDL子程序可供调用。下面仅论述其余两模块的设计。 1 控制模块的设计 ??? 该模块的任务是,控制ADC0804的工作时序,可分为S0~S3四个连续的步骤或状态。任务分别是:使ADC0804准备转换(状态S0)、转换(状态S1)、准备读取转换结果(状态S2)、读取转换结果(状态S3)。各状态由输出脚CS、WR、RD、的不同电平组合确定,要的VHDL语句为: library ieee;use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity ad0804 is port( cs,wr,rd:out std_logic; clk,intr:in std_logic; din:in std_logic_vector(7 downto 0); dout:out std_logic_vector(7 downto 0) ); end entity; architecture bhv of ad0804 is type states is (st0,st1,st2,st3); signal c_s,n_s:states; signal latch:std_logic; begin reg:process(clk) begin if (clk=1 and clkevent) then c_s=n_s; end if; end process; com:process(c_s,intr) begin case c_s is when st0=cs=0;wr=0;rd=1; latch=0;n_s=st1; when st1=cs=1;wr=1;rd=1; latch=0; if intr=1 then n_s=st1; else n_s=st2; end if; when st2=cs=0;wr=1;rd=0; latch=0;n_s=st3; when st3=cs=0;wr=1;rd=0; latch=1;n_s=st0; when others =n_s=st0; end case; end process; la:process(latch)

文档评论(0)

1亿VIP精品文档

相关文档