关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 基于PCI总线的高速噪声检测系统(图)

基于PCI总线的高速噪声检测系统(图)

——
作者:西安电子科技大学 潘瑜 孙友伟 陈健 傅丰林时间:2007-02-06来源:收藏
摘要:文章介绍了一种基于pci总线的高速噪声检测系统,介绍了采用pci 9052作为pci总线接口芯片的数据采集部分的设计原理,并说明了数据采集卡的高速采样和速率可变的实现原理,给出了底层硬件同上层软件的连接实现。
关键字:噪声检测;pci总线;pci 9052;wdm

前言
  噪声检测系统用于对环境噪声进行样本采集和频谱分析,确定噪声中的频率分量是否对人体造成伤害。该系统分为高速数据采集卡和频谱分析两部分。数据采集卡将采样采集到的数据送入计算机内,由应用程序完成快速频谱分析功能。由于环境噪声是实时变化的,因此需要采集电路的高速采样和数据的高速传输。鉴于传统总线无法满足高速传输的要求,采用了pci总线作为噪声检测系统的底层平台。

  pci总线是intel公司推出的一种微机扩展槽接口标准,时钟频率为0~33mhz,其最大数据传输速率为132~264mbps,有效克服了传统总线进行高速数据传输时的瓶颈现象,使数据的实时高速采集和传输成为可能。

数据采集卡结构说明
  数据采集卡具有高速和速率可调节的特点。其前端采用声波传感器采集模拟噪声信号,采集到的模拟信号经过a/d变换器转换为数字信号,数字信号再经pci总线传输到计算机内。该数据采集卡主要包括数据采集电路、pci接口电路和逻辑控制电路三部分,采集卡结构如图1所示。下面分别介绍各个部分的功能。

  1. 数据采集电路
  数据采集电路是由声波传感器和a/d变换器组成的,传感器将采集到的噪声信号送入a/d变换器,转换成数字信号输出。a/d变换器采用的是maxim公司的max 1446。max 1446有一路模拟信号输入,10位数字信号输出,工作频率可达60mhz。实际的数据转换时间为:转换时间+各种延迟=5+0.5=5.5个时钟周期,由此可知max 1446的转换时间最低可达0.1μs,即采样速率可达到100mbps,为高速数据采集提供了最基本的硬件条件。

  2. pci接口电路
  考虑到pci总线规范的复杂性,本设计采用了plx公司的pci 9052作为pci总线接口芯片,以简化硬件设计。pci 9052是作为pci总线和局部总线一端的设备的桥梁,保证了局部总线一端的设备在符合pci总线的规范后连接到pci总线上。pci 9052提供了多个内部寄存器,以尽量提高总线接口设计的灵活性和传输速率。所有的寄存器可分为pci总线配置寄存器和局部总线配置寄存器两类。pci总线配置寄存器是为符合pci规范所设置的,局部总线配置寄存器用于设定局部总线的工作方式。

  对于pci 9052,需要一个eeprom存储配置信息,当主机启动时,eeprom完成对pci 9052内部的pci总线配置寄存器和局部总线配置寄存器的初始化。在设计中采用microchip公司93lc46作为eeprom存储配置信息。

  3. 逻辑控制电路
  逻辑控制电路的作用是用于产生目标设备准备好信号lrdyi#。在max 1446完成一个a/d转换后,使目标设备准备好信号lrdyi#有效,表明数据已经在数据线上,通知主设备可以从数据线上读取数据了。

  由于max 1446的数据转换时间需要5.5个时钟周期,因此采用一个模6计数器作为控制电路,以保证在数据转换完成后,才产生lrdyi#。


数据采集卡原理图
  数据采集卡原理图如图2所示。
  对原理图有以下几点说明。

  (1)设计中采用9052的非复用模式,因此将mode接地,所以9052的lad[31..0]上只有数据信息,而其地址信息在la[27..0]上,又由于max1446的转换位数为10bit,因此将该10位输出数据d[9..0]连接到pci 9052的lad[9..0],而lad[31..10]接地。

  (2)a/d变换器max 1446的时钟频率可高达60mhz。在设计中将pci总线时钟(33mhz)作为a/d的时钟信号,从而简化了a/d的时钟电路。为了保证lrdyi#信号的产生同max 1446的转换同步,模6计数器的时钟信号也采用pci总线的时钟信号。

  (3)数据采集的速率的控制是通过上层的软件完成的。在设计中,将pci 9052的局部总线端的输出信号cs0#作为a/d的使能信号,驱动a/d的转换功能。cs0#是pci 9052局部总线端的一个通用片选信号,它是在配置寄存器编程指定的。通过上层软件对cs0#低电平产生的时间间隔的控制,即可实现实现对a/d采样速率的控制。由于a/d转换需要5.5个时钟周期,在a/d转换期间,使能信号oe#应当始终保持有效,但是cs0#的低电平信号保持时间小于a/d转换时间,因此,使cs0#经过一脉冲展宽电路后再连接到oe#端,以保证a/d的有效转换。

  (4)系统采用的时钟频率为33mhz,由于lrdyi#信号的产生是6个时钟周期,所以数据采集速率可高达55mbps,可实现对噪声信号的高速实时采样。


结束语
  以上仅针对硬件电路的设计思路和原理作了详细的说明。在win2000、win nt操作系统下,应用程序不能对i/o端口直接进行操作,因此将a/d转换的数据读进内存中就要由驱动程序来完成。驱动程序作为下层硬件和上层应用程序的纽带,实现应用程序对底层硬件的访问。在windows平台上,wdm将代替vxd成为主流的驱动模式,因此选择driverworks作为驱动程序的开发工具,开发wdm。

  数据采集卡、驱动程序和频谱分析程序三部分的数据流程如图3所示。

参考文献
1.刘晖译,pci系统结构(第四版),电子工业出版社,2000.
2.plx pci9052 data book,2000.
3.chris cant著,孙义等译,windows wdm设备驱动程序开发指南,
机械工业出版社,2000.


关键词:

评论


相关推荐

技术专区

关闭