DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 220|回复: 0
打印 上一主题 下一主题

基于ADSP2106X的高速数据采集与处理系统

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-27 20:11:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  
         
    摘  要 介绍了一种基于数字信号处理器ADSP2106X的多通道、分布式、同步互联型高速数据采集与处理系统。该系统可以广泛应用于高频信号或其他动态信号的采集与处理,最高可以实现128路信号的同步高速数据采集、存储示波显示以及频谱分析等等。本文主要介绍了系统的软、硬件设计,以及系统设计中所采用的几个相关技术:高速数据缓存技术、数据通信技术和同步互联技术。在软件方面,主要介绍了系统的应用软件设计以及系统核心芯片ADSP2106X的监控软件设计。
  关键词:数据采集;数字信号处理器;高速缓存;ADSP2106X

  数据采集技术是一项基本的实用性技术,它被广泛应用于图像处理、振动测试、语音信号分析和瞬态信号分析等众多领域[1]。目前不同性能指标的通用或专用的数据采集系统,在各种领域中随处可见。但是,由于成本或技术开发等众多因素的影响,一般的数据采集系统其速度和通道数不能满足一些特殊领域的测试要求,或者满足这些要求的系统又由于成本相当高而使得向市场推广的难度加大。本文介绍了一种基于ADSP2106X的多通道、分布式、同步互联型高速数据采集与处理系统,它能完成最高128路宽频带信号的同步高速数据采集,其最高采样频率达20 MHz。该系统的研制为解决数据采集系统速度、通道数和成本之间的矛盾提供了一个新的思路,并对测控仪器之间的网络同步互联技术做了初步的研究。

1 系统的硬件设计
  该系统的硬件核心是4通道的高速数据采集和处理模块,图1为模块的原理方框图。
  整个高速数据采集和处理模块是由前端信号调理电路、高速A/D采集和数据缓存、DSP数据处理和模块控制、EPP接口电路以及485同步互联接口电路几部分组成的。在模块中,为了便于对4路宽频带信号进行同步数据采集并加快AD-SP2106X处理数据的能力,用了4片A/D转换器分别对4路信号进行数据采集。采集到的数据经高速数据缓存后再进入DSP中进行分析与处理。数模转换器DAC的作用是在DSP的控制下对系统进行调零和自标定,并可以进行模拟电平或者波形的输出。



  在结构上,整个高速数据采集与处理模块的硬件部分分成了模拟板和数字板两部分,其中数字板为底板,模拟板为背板,板间用插针相连,进行数据和控制信号的传输。这种结构设计难度适中,模拟信号和数字信号之间有一个整体的隔离,精度指标相对容易满足,并且模块的结构紧凑,灵活性强。
2 相关技术
2.1 系统核心芯片ADSP2106X
  数字信号处理器是整个硬件系统的核心,它不但控制着整个高速数据采集系统的工作流程,还负责与PC机以及外部系统之间的数据通信。本系统采用了AD公司1995年推出的32 bits并行浮点DSP-ADSP2106X。ADSP2106X包括了以AD-SP21060为基础发展起来的多个低成本品种,如ADSP21060,ADSP21062,ADSP21061等,它们的封装形式一致,引脚兼容,其区别主要体现在片内SRAM的大小以及有无链路口,在应用中可以根据实际需要进行选择。ADSP2106X的运行速度非常快,其指令周期为25ns,即每秒能处理四千万条指令,并且单周期内可以乘法、加法、减法三操作并行,计算一个1 024点的复数FFT只需0.46 ms,而计算浮点倒数的时间只需150 ns[2]。因此,AD-SP2106X能满足本系统对高频信号进行数据分析与处理的要求。
    在本系统中,ADSP2106X控制着整个系统的工作流程和运行状态。以单通道采集为例:当采集开始时,ADSP2106X首先接收用户通过PC机传送的采集参数,包括通道的设置、量程的选择、采样频率和采样长度的确定、触发电平的大小等等。根据这些参数,ADSP2106X控制信号进入采集通道进行数据采集,并随时监控信号采集的状态。如果监测到A/D转换器发出溢出信号,ADSP2106X相应调整前端信号调理电路放大倍数的大小,从而实现系统信号测量的自动量程转换。A/D转换器负责采集信号,并将转换后的数据存入到一级缓存器FIFO中。ADSP2106X根据采集参数,读取一定长度的采样数据,进行初步的数据分析和处理后,存入二级缓存器SRAM或DRAM中,等待计算机进一步处理。
2.2 高速数据缓存技术
  在一般的高速数据采集系统中,系统核心芯片数字信号处理器DSP的运行速度与前端A/D转换器的运行速度往往是不同步的。在单通道情况下,DSP处理数据的能力往往超过了A/D转换器采集数据的能力,而多通道同时采集的情况下,又会出现相反的状况。为了协调、控制它们之间的工作,需要在两者之间加入数据缓存器。
  本系统采用了高速先入先出(First input firstoutput)存储器UPD42280作为一级缓存器来缓存A/D转换器采到的数据。UPD42280是一种256 K×8 bit的双口FIFO型缓存器,其数据是按照一定的时钟节拍顺序写入或读出的,它的访问时钟速率可以达到30MHz。在本系统中,UPD42280的写时钟与A/D转换器的工作时钟使用同一信号源,保证了FIFO的写操作与A/D转换操作的同步,不致于出现数据漏接或混接的现象。而UPD42280的读时钟与写时钟不一致,即设计为异步FIFO。这是因为在一般情况下,DSP的工作速率远远高于A/D转换器的转换速率,如果FIFO的读写操作用同一时钟,则会降低DSP的工作效率,使得DSP只有在数据接收完毕后,才能进行其它操作,否则会出现数据漏接的现象。设计为异步FIFO,并对UPD42280进行帧中断管理,可以使DSP接收完一帧数据后去进行其它操作,直到FIFO存完一帧数据,向DSP发出中断请求为止[3]。所谓帧中断管理,即是将UPD42280的内部存储单元分成n个单元一帧,A/D转换器每写入一帧数据就等于向FIFO写入n个数据。DSP响应此帧中断信号,再去读取FIFO新缓存的一帧数据。这样,FIFO的读指针始终保持在写指针之后,一步一趋地跟随,而DSP的工作效率也得到了提高。
2.3 EPP接口技术
  为了保证系统与PC机之间的高速数据传输,我们设计了EPP接口来与PC机进行数据传输。传统PC机的并行口是单向的数据传输口,如果想进行双向的数据传输则需要借助它的5根状态线,这就使得系统与PC机之间的数据传输速率大大降低。而由IntelXicom和Zenith公司发起制定的EPP(Enhanced parallel port)协议和以后的IEEE1284标准,使得PC机的并行口成为一种双向数据传输口,并达到了接近标准PC机内部ISA总线传输数据的能力。
  在实际应用中要注意的是:DSP的工作速率比较高,每秒可以对外部数据进行几十兆的读/写操作,而PC的读/写速度相对比较慢,EPP最快只能达到500 K~2 M字节/s,因此,EPP与DSP之间应该设计缓存器和数据传输时的读写握手信号[4],这样PC与DSP之间的读/写过程就可以完全由速度比较慢的PC控制。当PC读数据时,DSP响应读中断申请,将数送入缓存器中,等待PC读取。当PC写数据时,DSP响应写中断申请,知道PC已经往缓存器内写了一个数,DSP读取此数并做相应的处理。这两个握手信号的设计,可以保证PC与DSP之间通信正确,不会漏接或错接任何数据。并且,由于DSP工作速率高,在响应完一个中断而另一个中断未产生之前,DSP还可以进行其它操作,从而提高整个系统的工作效率。
2.4 网络同步互联技术
  目前的网络技术已经非常成熟,以太网、国际互联网等都是已经被广泛应用的网络技术,但是这些网络协议基本上都是异步的。然而在某些大型的多点测试场合中,各测试点的数据通常都是紧密相关的,最后分析时往往也要求能分析出各数据之间的相关关系。因此为了获取正确的测试结果,就必须保证各点的测试设备之间是同步工作的,也就是说整个测试网络内的测试设备必须在统一的测试时钟下进行工作。目前,市场上还没有这样的同步技术可以被直接使用。为此本系统利用AD-SP2106X的高速同步串口设计了同步数据传输接口,并对具有同样接口的不同设备之间的同步工作问题进行了一些探索[5]。
    如图2所示:通过每个模块的同步接口以及ADSP2106X串口的时分复用技术(tdM),本系统可以将32个高速数据采集与处理模块连接在一起,其中任何一个模块都可以设置为主控制模块。一旦主控制模块设定,其他31个模块就都为从模块,各模块的测试时钟由主模块统一提供,这样32个模块、128路通道便可以进行同步的高速数据采集和处理。各个模块采到的数据经本模块的DSP作初步的分析和处理后,统一传给主DSP,再由主模块传给PC机做进一步的处理。



  这种分布式模块之间同步互联的方案可以有效地解决速度、通道数与成本之间的矛盾,用户可以根据实际需要选择合适的模块数即通道数。另外由于ADSP2106X高速同步串口的驱动能力和数据传输距离有限,在硬件设计中还采用了RS-485芯片来增强网络同步互联接口的驱动能力。该同步数据传输接口的传输速率最高可以达到16 Mbps,其最大分布距离为1 000 m。
3 系统的软件设计
  本系统共设计了两套软件:数据采集系统的应用软件和ADSP2106X的监控软件。
  系统的应用软件与其它数据采集系统一样,设计了系统复位、上电自检、系统自标定、各通道调零、模拟电平输出、单通道采集、多通道同步采集等功能。另外,应用软件还提供了一些基于纯软件的数据处理与显示功能,例如频谱分析、加窗处理、存储示波显示、波形实时显示等。
  为了方便用户对该系统进行透明式地调试和监控,我们还开发了ADSP2106X的监控软件。通过此监控软件,用户可以在PC机上看到AD-SP2106X内部控制寄存器和程序区的值,并可读取、修改和保存数据区的内容,从而判断测试系统的运行结果是否正确。通过此监控软件,用户还可以装载、运行ADSP2106X一些独立的应用程序,如:FFT、数字滤波、功率谱分析等等。这些应用程序都装在计算机内,使用时只需从计算机上下载,装入ADSP2106X的程序区内即可,这样做不但避免了将所有的应用程序烧入EPROM的麻烦,还节省了ADSP2106X程序存储区的空间。用户也可以根据实际需要,编写自己所需的应用程序,用ADSP2106X提供的汇编工具生成可执行文件,就可以直接装入执行,这一点使得本系统的应用更加灵活和方便。
4 结  论
    该系统的主要性能指标如下:
  (1)单模块有4个独立的高速数据采集通道,最大可扩展至128个通道;
  (2)采样频率可以编程设定,最高采样频率为20 MHz;
    (3)实时FFT(1 024点)所用时间小于1 ms;
  (4)8个高速DAC通道,最高采样速率为8MHz;
  (5)同步数据传输接口最高传输速率为16Mbps,最大分布距离为1 000 m;
    (6)支持电平触发、事件触发等多种触发方式;
  (7)系统具有复位功能、自检功能、自标定功能和DSP边界扫描功能。
  该系统应用范围广泛,可以应用在各种图像处理、炮口冲击波测试、瞬态信号分析等对速度要求较高并且通道数也要求较多的地方。


  参考文献
1 沈兰荪.高速数据采集系统原理与应用[M].北京:人民邮电出版社,1995.1~10
2 苏 涛,吴顺君,廖晓群.高性能数字信号处理器与高速实时信号处理[M].西安:电子科技大学出版社,1999.30~34
3 苏绍.高速缓存体FIFO的帧中断管理方法[J].数据采集与处理,1999,14(3):338~342
4 陈晓露,王跃科.增强型并行口EPP在PC与DSP通信中的应用[J].电子技术,2001,6:16~195 陈晓露.基于高速数据采集模块的网络互联型虚拟仪器的研究[D]:[学位论文].长沙:国防科技大学,2001
         
          [/td]
        [/tr]
      
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-9-28 13:21 , 耗时 0.085345 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表