电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > EDA/PLD > 详细信息
EDA/PLD:基于DSP和CPLD技术的多路ADC系统的设计
来源:   时间: 2007-9-21 15:50:04    

引言

   随着现代电子技术的应用和发展,数字信号处理的内容日益复杂,而ADC是实现从模拟到数字转换的一个必然过程。针对这种情况,利用数字信号处理器和可编程逻辑器件提出了多路ADC系统的设计方法,实现了对动态多路模拟输入信号的采样传输以及处理,简化了电路设计,可编程逻辑器件使得系统的通用性和可移植性得到良好的扩展。系统框图如图1所示。

系统硬件设计
    
   本设计所采用的ADC器件是MAXIM公司的生产的低功耗16位模数转换器(ADC)MAX1162。MAX1162采用逐次逼近型ADC结构,具有自动关断、1.1μs快速唤醒和兼容于SPI/QSPI/MICROWIRE的高速接口,采用+5V单模拟电源,并且具有独立的数字电源引脚,允许芯片直接和+2.7~+5.25V的数字逻辑接口。REF引脚接外部参考电压,用于设定模拟输入电压范围,与模拟地之间连接一个4.7μF的电解电容;AVDD引脚是+5V电源供应输入端,与模拟地之间接一个0.1μF的电容;AGND是模拟地;CS是片选输入,低有效。当为高时,系统处于断电模式,由高变低时,激活系统到正常运行模式,同时初始化一次转换。本系统选择作为AD的使能信号;SCLK是串行时钟输入,驱动模数转换进程;DOUT是串行数据输出,数据状态在SCLK的下降沿改变;DGND是数字地;DVDD是数字电压供应,与数字地之间接一个0.1μF的电容;AIN是模拟信号输入端。

      该ADC系统的中央控制单元采用TI(德州仪器)公司的浮点数字信号处理器TMS320VC33-150,TMS320VC33的地址总线为24位,程序寻址范围可达16M,数据总线为32位,内部具有34K×32bit的SRAM,可根据需要映射在程序或数据空间,拥有一路串行口,可以构成传输8、16、24、32位的数据,其传输模式可以设置为突发模式或者是连续模式。两个32位的通用定时器,能够用来按照规定的时间间隔与芯片内部通信或者是和外部通信。



      本系统考虑到主要应用在ADC中,所以就直接采用TMS320VC33的数据总线和地址总线,没有再附加额外的电路,使得ADC的采样速度和转换精度得到良好的保证。同时还利用了INT2和XF0引脚,作为DSP接收数据的中断信号和ADC的使能信号。INT2是外部中断引脚,由外部的数据输入触发中断;XF0即外部标志输出引脚,受软件控制,可以用来向外部器件发送信号,该引脚的状态由I/O标志寄存器决定,IOF=0X22,即置XF0为通用目的输出引脚,同时该引脚输出0;若IOF=0X26,则置XF0为通用目的输出引脚,同时该引脚输出为1。本系统利用软件指令对XF0进行置高置低,控制ADC的启动转换和停止。

     EMP7512AE基于EEPROM技术,采用多电压I/O接口技术,系统内核供应电压为3.3V,而I/0引脚与2.5V、3.3V、5.0V逻辑电平相互兼容。EPM7512AE有10 000个可用门、512个宏单元、32个逻辑阵列块和212个用户可用I/0引脚。CPLD在系统中的主要功能是:给ADC转换提供时钟信号,控制ADC转换的使能和复位,由于采用的ADC芯片是串行输出的,CPLD还实现对串行数据的输入转为并行数据的输出,然后直接和TMS320VC33的数据总线相连接。同时CPLD产生脉冲信号,在ADC转换完成后,数据暂存在CPLD中,该脉冲向CPU申请中断,提示有数据需要接收。另外,CPLD的一个关键作用就是,实现路数的动态选择,目前设计的该系统最多路数为8路。CPLD和DSP及AD芯片的具体硬件连接图如图2所示。



系统软件设计

      在软件设计中,通过CPLD程序对ADC转换进行动态控制,选通模拟信号输入端,对ADC进行使能,按照图3所示的转换时序图完成对MAX1162的数据采样及传输。

下面给出VHDL语言的主要程序部分。



BEGIN

ADCS <= SYNTHESIZED_WIRE_12;

ADA <= SYNTHESIZED_WIRE_2;

GDFX_TEMP_SIGNAL_1 <= (L & L & H & H & H & L);

GDFX_TEMP_SIGNAL_0 <= (H & L & H & H & L);

U1 : lpm_bustri_0----三态总线缓冲器,允许采样的数据输出到DSP的数据总线上

PORT MAP(enabledt => DRD,

data => ADO,

tridata => D);

U2 : lpm_counter_1----计数器,把数据总线宽度改为3位

PORT MAP(sload => SYNTHESIZED_WIRE_0,

clock => SYNTHESIZED_WIRE_1,

aload => XFA0,

data => CMD(2 downto 0),

q => SYNTHESIZED_WIRE_2);

U3 : lpm_dff_1---D触发器,数据总线宽度为8位,接收来自于DSP的数据

PORT MAP(clock => CMDCK,

data => D(7 downto 0),

q => CMD);

U4 : lpm_compare_1---比较器,比较CMD(5..3)和CMD(2..0)的值,即轮询采样通道

PORT MAP(dataa => CMD(5 downto 3),

datab => SYNTHESIZED_WIRE_2,

aeb => SYNTHESIZED_WIRE_0);

SYNTHESIZED_WIRE_1 <= NOT(AQ(4));

NRW<= NOT RW;

CMDCK<= NOT( NOT PAGE3 AND(NOT RW)AND A6 AND A5 AND A4 AND (NOT A3));

----通道控制地址编码

DRD <= NOT PAGE3 AND RW AND A6 AND A5 AND A4 AND A3;----采样地址编码

CLKA <= NOT(CLK);

U5 : lpm_counter_2---产生计数脉冲

PORT MAP(sload => SYNTHESIZED_WIRE_3,

clock => HFP(5),

data => GDFX_TEMP_SIGNAL_0,

eq => SQ,

q => AQ);

U5 : lpm_dff_5---缓冲器

PORT MAP(clock => SYNTHESIZED_WIRE_12,

data => SYNTHESIZED_WIRE_5,

q => ADO);

SYNTHESIZED_WIRE_12 <= SQ(12) OR 0 OR XFA0;

SYNTHESIZED_WIRE_3 <= XFA0 OR SQ(14);

ADEN <= NOT(XFA0);

SYNTHESIZED_WIRE_10 <= HFP(5) AND HFP(4) AND HFP(0) AND

SYNTHESIZED_WIRE_6 AND YNTHESIZED_WIRE_7 AND

SYNTHESIZED_WIRE_8;

SYNTHESIZED_WIRE_7 <= NOT(HFP(2));

SYNTHESIZED_WIRE_6 <= NOT(HFP(3));

INTA2 <= XFA0 OR SYNTHESIZED_WIRE_9;

U6 : lpm_shiftreg_1----串行数据输入转为并行数据输出

PORT MAP(shiftin => ADOUT,

clock => HFP(5),

q => SYNTHESIZED_WIRE_5);

U7 : lpm_counter_3---产生时钟信号

PORT MAP(sload => SYNTHESIZED_WIRE_10,

clock => H1CK,

data => GDFX_TEMP_SIGNAL_1,

q => HFP);

SYNTHESIZED_WIRE_8 <= NOT(HFP(1));

ADSCK <= NOT(HFP(5));

SYNTHESIZED_WIRE_9 <= NOT(SYNTHESIZED_WIRE_12);

H <= 1;

L <= 0;

END;

  把该VHDL程序写入到EPM7512AE芯片中的,对数据进行采样编程就简单了许多。在.CMD文件的MEMORY段中加入ADPORT :org=0x00c00070,len=9。然后通过自定义数据段把数组adport[8]映射到段ADPORT中。下面给出用C编写的采样主要程序。

Main()

{

……

IOF = 0x26;/*置MAX1162数据输出端为高阻态*/

adport[0] = 0x28;

/*采样通道选择:0通道~5通道,总共6路;若设adport[0]=0x38,则通道为:0通道~7通道,总共8路。同理可进行其他设置*/

IE = 4;/*中断使能*/

IOF = 0x22;/*启动ADC*/

/* adport[0]对应地址为0x00c00070,配置寄存器有6位,0、1、2位对应起始通道,3、4、5位对应结束通道。adport[8]对应地址为0x00c00078,是控制寄存器*/

……

}

在中断服务子程序接收采样的数据,程序如下。

C_INT02()

{

ad[adi++] = adport[8];/*把采集的数据十六进制数据存入数组ad中*/

If(adi>0x7ff) /*存入的数据大小为2K×16bit,根据内存大小动态改变*/

adi &= ox7ff;

}

结论
    
  经过实际验证,本ADC系统在低成本的情况下的采样精度达到了13位,这在16位的ADC芯片中达到很好的水平,并被应用到高精度的工业控制中。利用TMS320VC33和EPM7512AE,灵活方便地实现了对高精度模数转换器MAX1162的控制和动态多通道采样,简化了系统设计的复杂性,同时使得DSP的编程处理变得非常高效简洁。若应用在要求更加严格的场面,本系统有待做进一步的改进,把ADC芯片更换为并行输出,同时把CPLD芯片更换为CycloneII FPGA,DSP芯片用TMS320C6713,同时加入噪声抑制设计,这样整个系统性能将会显著提高。在一定的条件下,和ADC模块相类似,本系统可以经过扩充,实现更多路的信号采集。

  信息来源:www.eccn.com

相关信息
发表评论
打印本页 关闭本页
基于TMS320VC33的速度控制系统硬件平台设计
    摘要:以磁悬浮列车速度控制系统为课题背景,介绍了以TMS320VC33为核为处理器的硬件平台的组织结构及设计过程   关键词:速度控制 DSP 硬件设计   长沙国防科大磁悬浮中心的磁悬浮铁路试验线是我国首条通过中试评审的磁悬浮线路,拥有自主的知识产权。列车的驾驶系统由S7_300系列PLC组网而成,主控PLC处理来自驾驶台的控制命令,将处理后的控制信息通过FDL网传给底层控制PLC...
>>详细内容
基于TMS320VC33速度控制系统硬件平台设计
  摘要:以磁悬浮列车速度控制系统为课题背景,介绍了以TMS320VC33为核为处理器的硬件平台的组织结构及设计过程 关键词:速度控制 DSP 硬件设计 长沙国防科大磁悬浮中心的磁悬浮铁路试验线是我国首条通过中试评审的磁悬浮线路,拥有自主的知识产权。列车的驾驶系统由S7_300系列PLC组网而成,主控PLC处理来自驾驶台的控制命令,将处理后的控制信息通过FDL网传给底层控制PLC,底层控制PLC...
>>详细内容
基于DSP和CPLD技术的多路ADC系统的设计与实现(图)
  摘 要:介绍了基于DSP和CPLD技术,高精度多通道的ADC系统的设计与实现方案,利用简单的硬件电路和软件编程,采用DSP和CPLD相结合的方法,动态地设置采样通道,控制模数转换器MAX1162的数据采样及传输。关键词:DSP;CPLD;模数转换 引言---随着现代电子技术的应用和发展,数字信号处理的内容日益复杂,而ADC是实现从模拟到数字转换的一个必然过程。针对这种情况,利用数字信...
>>详细内容
高性能浮点DSP芯片TMS320VC33
    摘要:TMS320VC33是美国TI公司新推出的TMS320C3X系列新一代浮点式数字信号处理器。它以高速、低功耗、低成本、易于开发为显著特点。是通信、手机、MODEM、DVD、便携式仪器仪表中需要进行俘点运算应用中的一种理想 的DSP器件。文中介绍了TMS320VC33的硬件结构、性能特点、指令系统、仿真工具和开发环境,最后给出了由TMS320VC33组成的最小应用系统。   关键词:数字信号处理器 TMS32...
>>详细内容
μC/OS-Il在TMS320VC33上的可靠应用
  目前,μC/0S-II已经被成功移植到多种微处理器 上,其中也包括TMS320VC33。在μC/0S-II的网站上可以免费下载相关处理器的移植代码,这些代码可以作为 μC/OS-II应用中一个非常好的起点。笔者在应用这些 移植代码时遇到了一些问题,因此如何使移植更加可靠、 高效,仍然是一个值得深入探讨的话题。网上 TMS320VC33的移植代码已经完成了基本的移植工作, 本文不对移植的详细过程进行赘...
>>详细内容
基于DSP和CPLD技术的多路ADC系统的设计与实现
  引言  随着现代电子技术的应用和发展,数字信号处理的内容日益复杂,而adc是实现从模拟到数字转换的一个必然过程。针对这种情况,利用数字信号处理器和可编程逻辑器件提出了多路adc系统的设计方法,实现了对动态多路模拟输入信号的采样传输以及处理,简化了电路设计,可编程逻辑器件使得系统的通用性和可移植性得到良好的扩展。系统框图如图1所示。系统硬件设计  本设计所采用的adc器...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com