1 引言
生物电信号是由生物体发出的不稳定的微弱电信号,主要包括心电、肌电、脑电信号,其特点表现为信号弱、干扰强、精度高。因此,在生物体的多参数测量中,高精度尤为重要,这对信号采集速率、实时性和准确性等提出更高要求。
根据生物电信号特点,介绍一种基于Ez-USB FX2接口的生物电信号数据采集系统,它将传统医学仪器的优点与计算机强大的数据存储能力以及良好的人机界面相结合,符合医学仪器数字化、模块化、小型化的发展趋势,具有很好的应用前景。
2 EZ-USB FX2接口简介
高速设备通常具有支持高速传输的USB控制器以实现高速传输,选用内置增强型微处理器8051、可动态加载固件的USB2.0控制器EZ-USB FX2(CY7C68013),该器件相对于其他USB控制器,功能强大,开发难度较小且性价比较高。
2.1 基本特性
EZ-USB FX2功能强大,既负责USB事务处理,也兼具微处理器的控制功能,可用作USB外设主控器件。该器件集USB2.0收发器、串行接口引擎、增强型 8051、I2C总线以及通用可编程接口于一体,体积小巧,性价比高,广泛应用于存储器、打印机、扫描仪等各种USB外设。
2.2 端点缓存
USB规范定义端点作为发送数据的起始点或接收数据的目的地址。EZ-USB FX2包含3个64 B的端点缓冲区和4 KB的可配置端点缓冲区。其中3个64 B的缓冲区分别用于EP0,EPlIN和EP1OUT,而4 KB的可配置缓冲区用于EP2,EP4,EP6和EP8。端点0默认为控制端点,支持OUT和IN双向传输;端点1支持批量、中断和同步传输;而端点2、 4、6和8则是高带宽的数据传输端点,可配置成不同方式以适应不同带宽要求。
2.3 GPIF接口
EZ-USB FX2系列器件提供3种可用接口模式:端口模式、从属FIFO模式和GPIF主控制模式。端口模式下,所有I/O引脚都可作为8051的通用I/O接口;从属FIFO模式下,外部逻辑或外部处理器直接与EZ-USB FX2的端点FIFO相连,外部设备作为控制器,像普通FIFO一样对EZ-USB FX2中的端点数据缓冲区进行读写;而GPIF模式是一种内部主机控制模式,使用内部集成的高效控制逻辑取代外部微控制器来控制Ez-USB FX2端点FIFO。在EZ-USB FX2内部,GPIF内核就是一个可编程的状态机。
EZ-USB FX2使用4个用户定义的波形描述符控制状态机.从而实现FIFO以及单字节数据的读写操作。每个GPIF波形描述符都由7段组成:S0~S6。执行完 S0~S6的动作后,进入idle状态(S7)即空闲状态,以准备启动下一次GPIF动作。每个state可定义为无判断不转移态(NDP)或判断转移态 (DP)。当某个state定义为NDP时,这个state动作的执行只是简单延时,用于确定产生指定电平的延续时间;当定义为DP时,它将根据 RDY0~RDY5上的输入信号状态,以及内部FIFO的可编程标志和内部自定义的Ready标志,将这些信号进行逻辑“与”、“或”、“异或”运算,并根据得到的逻辑结果在S0~S6中选择一个即将执行的state。执行每个state时,都可指定CTL0~CTL5输出用户指定的状态。通过RDYx和 CTLx以及内部一些标志位的组合,即能完成各种复杂时序电路的控制。由于GPIF接口的配置灵活,使得FX2可方便地和其他逻辑微处理器(例如单片机、 DSP、CPLD和FPGA等)进行数据的主动读写,这样便大大扩展GPIF模式的使用范围。GPIF模式下,8051可不参与数据传输,以突破高速、全速下的传输模式进一步接近EZ-USB FX2的传输带宽480 Mb/s。同时根据生物电信号的频率特征,将每个通道最大采样频率设为100 kHz,在GPIF接口模式下完全能够满足系统要求。
3 系统结构
系统结构框架如图1所示。通过导联由人体采集到的心电、脑电、肌电等信号调理电路后,由FPGA内部逻辑控制A/D转换对其采样。将经采样并通过A/D转换后的数据暂时缓存到EZ-USB FX2的内部FIFO中,供PC机读取。整个系统涉及A/D转换及其通道选择、信号放大、FPGA控制和EZ-USBFX2接口设计,这里主要介绍EZ- USB FX2接口设计,以及相应固件程序的开发与GPIF波形设计。
4 器件资源分配
4.1 EZ-USB FX2与FPGA的硬件连接
EZ-USB FX2采用GPIF接口和FPGA相连,其硬件连接电路如图2所示。EZ-USB FX2与FPGA连接的引脚分配如下:FD0~FD15为GPIF双向数据线,负责读写数据:CTL0、CTL1分别为读(REN#)、写(WEN#)使能信号;RDY0为FPGA发出的数据准备好信号;PA2与FPGA的H4引脚连接,用于数据采集开始时点亮LED。