如何使实时数据采集处理系统保持数据的高速传输

出处:电子发烧友 发布于:2023-07-17 17:16:08

当前,越来越多的设计应用领域要求具有高的A/D转换和实时处理功能。在实时数据采集处理系统设计中,一般需要考虑数据采集以及对采集数据的处理。而对于大数据量的实时数据采集处理系统来说,保持数据高速传输也是该系统性能的关键因素。

采用TMS320VC5402和转换器ADuC841构成双CPU处理器平台,充分利用TMS320VC5402的对大容量数据和复杂算法的处理能力,ADuC841接口的控制能力以及各自拥有的DMA控制器构建实时数据采集处理系统。双CPU通过DMA方式实现数据交换,将数据传输和系统控制分开,提高了数据传输速度,降低了处理器负担,提高系统运行效率。采用此解决方案。大大提高了系统的信号采集和处理能力。

2系统硬件设计

2.1 ADuC841简介

ADuC841是ADI公司ADuC84X系列中性能完善的一款微转换器,它具有单周期指令,20 MI/s的8052内核;内置一个8通道、高速420 Ks/s、高自校正、12位逐次逼近的ADC,具有DMA控制:2通道12位DAC;2通道PWM方式∑-△型DAC;片上15 ppm/℃高稳定电压基准;片上温度传感器;62 KB片内Flash/EE程序存储器;4 KB的片内Flash/EE数据存储器。还包括看门狗定时器和电源.、ADC与数据存储器之间的DMA方式、存储保护功能、通用异步串行收发器(UART)、SPII2C总线接口等功能模块。

ADuC841片内的ADC的转换速率为2.38μs/次(420 kHz的采样率)。当A/D转换时,ADuC841必须在2μs内读取A/D转换结果并将其传输且存储到外部存储器中以便后续处理,否则将导致下一个转换结果出现后丢失前一个转换结果。由于中断服务子程序中存储转换结果和微转换器跳转到ADC的中断服务子程序都需要时间,因此很多应用无法响应高的中断速率。采用ADC的DMA方式传输数据能够解决上述问题,通过设置特殊功能寄存器ADCCON2中的中断响应位即可使能ADC的DMA方式。这种方式下,无需CPU的软件中断响应干预,可通过硬件直接检测相应控制位就能将ADC的转换结果直接输出并存储到片外的静态RAM中,并提供了一个高速数据传输通道,从而保证了ADC能以速率(420 kHz)完成数据采样和转换,并进行高速信号传输。

2.2数字信号处理器TMS320VC5402简介

TMS320VC5402 是 TI 公 司 的TMS320C5000系列之一,它采用改进的哈佛结构,具有分离的程序总线和数据总线,采用4级流水线作业,其运行速度可达100 MI/S,具有高速运行的特点。同时提供丰富的指令集,增强的模块化结构设计,具有通用性,拓展了应用领域。TMS320VC5402可寻址3个独立的存储空间,包括1 MB×16的程序空间,64 KB×16的数据空间以及64 KB×16位的I/O端口空间。片内提供16 KB×16的双存取RAM和4 KB×16的ROM,并具有直接存储器访问(DMA)功能,通过HOLD允许对外部程序、数据以及I/O空间进行直接存储器访问。TMS320VC5402存储器直接存储控制DMA可在不占用CPU资源的情况下,实现DSP存储器间数据的自由传输。TMS320VC5402有6个可独立编程的DMA通道,每个DMA通道由各自的寄存器控制。

2.3系统的硬件结构

设计DMA共享存储器实现双机通讯需要考虑以下几点:(1)设计ADuC841和TMS320VC5402之间数据总线和地址总线的隔离电路。隔离电路在双CPU不通信时隔离地址总线和数据总线,而在DMA通信时则选通。(2)设计ADuC841和TMS320VC5402都能对存储器读写的选通信号和读写信号。(3)设计控制TMS320VC5402信号及其响应信号。

考虑上述问题,采用ADuC841与TMS320VC5402的双CPU系统结构如图1所示。存储器HM62256既是TMS320VC5402的全局数据存储器,又是ADuC841的外部存储器。A15为片选信号,地址范围为8000H~FFFFH。两个CPU分别通过总线和数据存储器HM62256相连,实现存储器共享。

如何使实时数据采集处理系统保持数据的高速传输

隔离电路采用4片74LVC245双向缓冲器实现,由于ADuC841的P0口是分时复用的地址/数据总线,所以需采用一片74LVC373地址锁存器将P0端口的地址信号从地址/数据总线中分离出来。而ADuC841的16位数据总线需要双向缓冲,由于ADuC841要对HM62256进行读写操作,所以缓冲器的方向由ADuC841的读信号RD控制,当ADuC841读数据时,RD为低电平,使数据缓冲方向为HM62256至ADuC841;写数据时,RD为高电平,数据缓冲方向为ADuC841至HM62256。缓冲器的使能线由A15反向信号控制,当A15为高电平时,选通缓冲器,否则缓冲器为高阻态。A15还是HM62256的片选信号,若要ADuC841和TMS320VC5402都能选通HM62256,需将A15和PS的与非信号作为HM62256的片选信号。ADuC841选通时,PS为高电平,ADuC841的A15有效。TMS320VC5402选通时,当A15为低电平时,PS有效。

ADuC841通过P3.5、P3.2(INT0)分别与TMS320VC5402的HOLD、XF引脚相连,P3.5向TMS320VC5402申请总线控制,TMS320 VC5402响应ADuC841的请求后,HOLDA信号变低,TMS320VC5402的CPU挂起,并出让外部总线。ADuC841通过A15打开总线驱动器,并经与非门后选中HM62256,获得HM62256的控制权,实现对HM62256的读写操作。而TMS320VC5402可通过XF向ADuC841请求中断,ADuC841在响应中断INT0后,通过P3.5将HOLD信号转换为高电平,此时总线控制权重新交给TMS320VC5402。

3系统软件设计

系统上电时,ADuC841由P3.5向DSP申请总线控制HM62256,设置DMA方式,通过配置3个特殊功能寄存器ADCCON1~ADCCON3,ADuC841的ADC工作在不同模式下。其中在DMA模式下,ADC可连续转换,并将采样值直接输出并存储到片外的HM62256中而无需来自CPU的任何软件干预,从而保证ADC能以速度(420 kHz)完成采样和转换并进行高速信号传输。A/D转换后,ADuC841通过ADC中断,P3.5发送高电平至TMS320VC5402的HOLD引脚,向TMS320VC5402申请放弃总线控制,HM62256的总线控制权重新交换给TMS320VC5402,由TMS320VC5402进行数据处理。当TMS320VC5402处理完数据后,首先将运算结果放回HM62256,然后通过XF信号线通知ADuC841,ADuC841响应后,向DSP申请总线控制接管HM62256,读出运算结果,然后进行下一步处理。以下是ADuC841的部分DMA接口程序代码:

如何使实时数据采集处理系统保持数据的高速传输

如何使实时数据采集处理系统保持数据的高速传输

4 结束语

对于实时数据采集处理系统,选取合理有效的算法是至关重要的,然而,选择数据传输方法也是相当重要,在一些实际情况下,数据传输时间可能超过数据处理的时间。通过合理使用DMA高速数据传输是提高数据传输效率的一种途径,有助于产品的开发。

关键词:数据

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

相关技术资料
广告
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!