基于Max+PlusⅡ与VHDL的数字电压表设计

随着计算机与微电子技术的发展,电子设计自动化eda领域已成为电子技术发展的主体,数字系统的设计正朝着速度快、容量大、体积小、重量轻的方向发展。推动该潮流发展的引擎,就是日趋进步和完善的cpld(complex programmable logic device,复杂可编程逻辑器件)设计技术。而电子设计自动化,是将计算机软件、硬件、微电子技术交叉运用的现代电子设计学科,其中eda设计语言中的vhdl语言是一种快速的电路设计工具,功能涵盖了电路描述、电路合成、电路仿真等三大电路设计工作。该数字电压表的电路设计,正是用vhdl语言完成的。此次设计主要应用美国altera公司自行设计的一种cae软件工具,即max+plusⅱ软件。
1 数字电压表的构成及工作原理
数字电压表是诸多数字化仪表的核心与基础。以数字电压表为核心扩展成的各种数字化仪表,几乎覆盖了电子电工测量、工业测量、自动化系统等各个领域。
1.1 数字电压表
数字电子系统通常由asic芯片和外围硬件设备组成,具有灵活性不强等缺陷。如图1所示的数字电压表,a/d转换器在控制asic所提供的时序信号作用下,对输入模拟信号进行转换,控制核心再对转换结果进行运算和处理,最后驱动输出装置显示数字电压信号。由于系统功能由asid硬件结构决定,其功能难以更新和扩展。如果用eda方法设计,即以可编程逻辑器件cpld代替asic芯片,用硬件描述语言决定系统功能,就可在硬件不变的情况下修改程序以更新和扩展功能,使其灵活性显著提高。基于此考虑,用eda方法设计了一个简易数字电压表控制电路,旨在研究提高数字电子系统灵活性的设计方法。
1.2 数字电压表的工作原理
数字电压表的改进结构如图2所示,它的硬件包括三个部分,其中转换器adc0804的作用是将模拟电压信号转换成数字电压值,并送到cpld以待运算和处理;七段数码显示器的作用是接收cpld转换后的bcd数据并显示;cpld兼有处理和协调作用,包括控制a/d转换动作、接收a/d转换结果及编码、驱动显示等作用。因此,cpld可分为三个功能模块,即控制模块、计算模块和显示驱动模块。
2 cpld设计
由以上分析,数字电压表的cpld设计,适合于顶层电路与三个底层模块相结合的设计方法,其中显示驱动模块有标准的七段显示vhdl子程序可供调用。下面仅论述其余两模块的设计。
2.1 控制模块的设计
该模块的任务是,控制adc0804的工作时序,可分为s0~s3四个连续的步骤或状态。任务分别是:使adc0804准备转换(状态s0)、转换(状态s1)、cpld准备读取转换结果(状态s2)、读取转换结果(状态s3)。各状态由cpld输出脚cs、wr、rd的不同电平组合确定,主要的vhdl语句为:
2.2计算模块
该模块将a/d转换结果分为高低4位,查表依次得到其bcd码后再进行计算,计算结果与a/d转换器的位宽和参考电压vref均有关。本文选用8位转换器adc0804,参考电压为5.12v,故能输出从0~5.12v按照0.02v步进变化的256(28)个离散值。如表1所示。
电压离散值可用8位二进制(或2位十六进制数)表示,表1中列出了输出数字电压高4位及低4位可能出现的16个值。如果cpld从adc20804接收到信号01101000b(即68h),对照表1高4位0110b是1.92v,而低4位1000b是0.16v,则最后的电压输出结果是1.92+0.16=2.08v。
本文要求精确到两位小数0.01v,故将输出电压表示成12位的bcd码形式。如上述的1.92v是(000110010010)bcd,0.16v是(000000010110)bcd,相加结果2.08v是(001000001000)bcd。同理,若cpld转换数据01110000b(即70h),则计算结果2.24 v是(001000100100)bcd。因此计算模块的设计主要包括一个12位的加法器及与之对应的存储器。
主要vhdl语句如下:
3 仿真结果
cpld设计完成后,用max+plus ii软件编译和仿真,波形如图3所示。由图3可知,cpld工作时,先启动控制模块,它对模数转换的一次控制由四个状态组成。在状态s0,选定adc0804,为模数转换做准备;在状态s1,使adc0804进行转换,当cpld的intr信号端由高电平转为低电平时,模数转换结束进入下一状态s2,为读取转换结果做准备;在状态s3,cpld读取模数转换结果。接着,cpld的计算模块工作,求出二进制模数转换数据的12位bcd码。最后启动显示驱动模块,用数码管显示有两位小数的数字电压值。例如,模数转换结果即cpld的输入信号din[7..0]若为68h,则输出电压dout[11..0]是2.08v,din[7..0]为70h时,输出电压dout[11..0]是2.24v,符合设计要求。
4 结 语
本文数字电压表的功能由vhdl程序决定,用max+plusⅱ软件编译、仿真和逻辑综合后,下载到cpld芯片epf10k10lc84-4。cpld工作主频为100 mhz,逻辑综合占用了174个逻辑单元,资源利用率为30%。本文所设计的数字电压表电路板已通过硬件测试,能测量和显示0~5v的弱电压信号,准确度为0.02v,并已在我校eda工程实训中心测试成功。保持cpld芯片不变,将输入信号改为温度信号、湿度等信号分别测试时,均能显示相应的数字值,因此,基于这种设计方法的数字电子系统具有很强的灵活性。

共模电感设计方案,零欧电阻、磁珠、电感有何区别
汽车线束生产线到底有哪些防错装置
电视扫描技术原理
电源ic芯片在选型替代过程当中,如何保证产品效率?
半导体芯片散热面临的挑战
基于Max+PlusⅡ与VHDL的数字电压表设计
iphone8什么时候上市?iphone8最新消息:iphone8即将上市,iPhone 8“亮屏”照:屏占比惊艳,售价不低啊!
带隙电压基准
Reno5系列首发为何搭载FDF全维人像视频技术系统?
综合管廊人员定位方案,助力综合管廊安全防范系统建设!
老用户福利!查看消费报告,领百万礼包! 更有华为P30pro等你赢!
如何让MCU I/O线路免受ESD影响
ART虚拟机method tracing技术解析
【能源管理在线能耗监测分析系统】
新iPhone 11定价曝光!欲通过优惠价格重夺中国市场
维安达斯入侵报警设备在某地下综合管廊工程中的应用案例
英国监狱应用人脸识别技术 有望助力监狱启动智能识别系统
超高性价比国美Fenmmy Note,带生物识别功能,千元以下首选机
父亲为女儿设计LED万圣节米奇服
XR演播室-XR虚拟制作,当数字内容遇上“XR技术”