>
首页 » 业界动态 » 基于CPLD/FPGA的A/D转换控制器的设计

基于CPLD/FPGA的A/D转换控制器的设计

作者:江小平,刘文杰  时间:2006-12-03 13:37  来源:edi
摘要:介绍了用CPLD/FPGA芯片代替单片机来控制A/D器件采样工作的设计方法。整个设计用VHDL语言描述,在MAX+PLUSⅡ下进行软件编程实现正确的A/D器件的工作时序,并将采样数据从二进制转化成BCD码,用LED显示出转化结果。

关键词:CPLD;A/D转换;VHDL语言;MAX+PLUSⅡ

0 引言

对A/D器件进行采样控制,传统的方法多数是用单片机或CPU来完成的。虽然编程简单,控制灵活,但缺点是控制周期长,速度慢。而CPLD(Complex Programmable Logic Device)/FPGA(Field Programmable Gate Array)最明显的特点是高集成度、高速度和高可靠性。因此用CPLD/FPGA来对A/D器件进行控制则不存在上述问题。

1 系统设计原理

本设计用CPLD芯片EPM7128SLC84-15来对ADC0809进行采样控制,并对数据进行处理,将结果用LED显示出来。图1是基于CPLD的A/D转换控制器设计原理图。

图中CPLD芯片EPM7128SLC84-15作为ADC0809的控制器,产生ADC0809的工作时序信号,包括:START转换启动信号,ALE模拟选择地址的锁存信号。EPM7128SLC84-15在ADC0809工作过程中不断读入转换结束信号EOC来判断ADC0809是否转换结束。当EOC产生一个负脉冲,表示一次转换结束,在EOC的上升沿EPM7128SLC84-15将OE置成低电平,则ADC0809打开三态缓冲器将转换好的8位二进制数输入到EPM7128SLC84-15。

EPM7128SLC84-15接受到8位二进制数后,将其转化成三组BCD码分别送到三个BCD-7段码译码器CD4511,最终由三个LED显示转换结果。

图1 控制原理图

2 CPLD软件设计部分

本设计使用MAX+PLUSⅡ软件平台,用VHDL硬件描述语言进行软件编程。程序共分三个部分:ADC0809工作状态模块,二进制到BCD码转换模块,时钟信号分频模块。

ADC0809工作状态模块:采用双进程有限状态机的方法来实现。其状态图如图2所示。设计ST0~ST7八个工作状态。ST0:初始化。ST1:产生ALE的上升沿将模拟通道IN1的地址锁存。ST2:产生START信号上升沿,开始A/D转换。ST3:START信号延时一个脉冲。ST4:A/D转换中,等待。ST5:转换结束,开启输出允许信号OE。ST6:OE延时一个脉冲。ST7:开启数据锁存信号LOCK,输出数据。

图2 双进程有限状态图

二进制数到BCD码转换模块:本设计模拟量输入范围为0~+5V,用8位二进制数表示其精度为0.019。由二进制数转化到十进制数的计算方法为
(B727+B626+B525+B424+B323+B222+B12+B0)*0.019
=(B727+B626+B525+B424)*0.019+(B323+B222+B12+B0)*0.019

因此可将8位二进制数分成高4位和低4位,分别算出电压值并写出对应的三位BCD码列成表格,再通过查表来进行三位BCD码的相加,最终得到三组BCD码分别对应高、中、低三位输出显示,见表1。

表1


时钟分频模块:本设计时钟采用10MHz有源晶振输入到EPM7128SLC84-15,经过编程分频成500KHz提供给ADC0809。将10MHZ分频成500KHz,比例为20∶1,即10MHz有源晶振产生20个脉冲输出一个脉冲。

3 系统仿真及验证

本设计在MAX+PLUSⅡ软件下编译后进行时序仿真,其结果如图3所示。当转换数据为07H时输出三组BCD码分别为0000,0001,0100即显示0.14。最后将程序下载到硬件电路板上验证通过。

图3 时序纺真图

4 结束语

由于CPLD的高速度和高可靠性,本设计可用于超高速应用领域和实时监控方面,而且不会存在复位不可靠和程序跑飞等问题。

相关推荐

多元化整合:PCB抄板搭上尧顺科技顺风车

PCB  CPLD  2013-03-12

Altium与Altera发布全新在线元件资源和软件支持

Altium  FPGA  CPLD  2012-02-15

嵌入式系统的实时数据接口扩展

嵌入式系统  CPLD  2011-09-02

基于CPLD的USB总线的隔离接口实现

CPLD  USB总线  2011-08-17

基于MAX6675多路温度采集系统设计与实现

温度采集  MAX6675  CPLD  2011-07-07

基于CPLD和嵌入式系统的高速数据采集系统

数据采集  CPLD  嵌入式系统  2011-02-17
在线研讨会
焦点