EZ-USB FX2的数据采集和传输系统设计
时间:02-26
来源:互联网
点击:
引言
随着社会的发展和技术的进步,各种计算机的外围接口不断的推陈出新。USB接口已渐渐成为现今个人计算机上最重要的接口之一,并以其传输速度快、使用方便和价格低廉等特点成为现今一般消费性电子产品和工业控制设备上不可缺少的接口。Cypress公司的EZ-USBFX2是一个USB2.0集成外围控制器,它具有通用串行总线(USB)的3种传输模式:1.5 Mb/s的低速模式,12 Mb/s的全速模式,480 Mb/s的高速模式。因此,本设计选用USB2.0芯片CY7C68012、Altera公司的FPGA和TLC5510组成一个通用的数据采集和传输系统。该系统结构简单,采集和数据传输可靠,能够满足现今高速设备的要求。
1 系统硬件设计
本系统主要分为两个部分,一部分是由2片TLC5510和FPGA构成的数据采集模块,另一部分是由FPGA和EZ—USB FX2构成的数据传输模块。系统的框图如图1所示。
(1)数据采集模块
经过调理后的信号进入模数转换电路,选用的高速AD芯片是TI公司的TLC5510。TLC5510是CMOS、 8位、20 Msps的模数转换电路。它采用半闪速结构,单电源5 V工作时,功耗只有100 mW,内含采样和保持电路,具有高阻抗方式的并行接口和内部基准电阻。与闪速转换器相比,半闪速结构减少了功率损耗和晶片尺寸。通过在两步过程中实现转换,可以大量地减少比较器的数目,转换数据的等待时间为2.5个时钟周期,且高速转换的同时能够保持较低的功耗。TLC5510与FPGA的接口电路如图 2所示。
FPGA提供TLC5510 20 MHz的工作时钟和使能输出信号OE,低电平有效,同时接受TLC5510的采样数据。由于系统需要同步的两路采样,所以由FPGA输出的时钟和使能输出信号OE同时控制2个TLC5510。这样FPGA就可以同时收到两路同时采样的信号数据,将其存入两个独立的异步FIFO中。
值的注意的是,实验中将FPGA产生的工作时钟和使能输出信号先输入74HCT573,然后由74HCT573的输出去控制两路的TLC5510。这主要是完成将FPGA的CMOS电平转换成TTL电平的工作。在实验的初期,未经过电平转换的信号在控制TLC5510时,得不到稳定数据。后来经过改善后,TLC5510能够稳定、准确地完成采样和数据输出。
(2)数据传输模块
在数据传输模块中,为了保证较高的传输速度,使用不经过CPU的SLAVEFIFO控制工作模式。模块的基本工作过程为:当A/D采样数据存储满 FPGA中的FIFO后,FPGA根据SLAVEFIFO的控制时序产生相应的控制信号,将在FIFO中的数据传输给EZ-IJSB FX2的内部端点FIFO,而当内部端点存储满后,FX2自动将数据传输到上位机。外部控制器FPGA对FX2的控制进程如下:
①IDLE,当写事件发生时,转向状态1。
②状态1,指向EZ-LJSB FX2的内部端点IN FIFO,激活FIFOADR[1:0],转向状态2。
③状态2,如果内部端点FIF0满标志为“假”(FIFO不满),则转向状态3;否则停留在状态2。
④状态3,传送总线驱动数据。产生一个SLWR跳变,转向状态4。
⑤状态4,如果有更多的数据要写,则转向状态2;否则,转向IDLE。
EZ-JSB FX2内部端点FIFO异步写的时序如图3所示。
2 FPGA的模块设计
在系统中,FPGA构成了数据采集系统和数据传输系统的“桥梁”,完成对TLC25510的控制和数据的存储,同时也完成对EZ-USB FX2单片机的控制。利用FPGA强大的功能,使电路的结构得到了简化,不需要利用分立器件来完成对数据的存储。因此,在FPGA中需要构成4个模块:2片FIFO数据存储模块、数据通道选择模块、控制模块和输出20 MHz时钟的PLL模块。
(1)2片FIFO数据存储模块
FIFO数据存储模块主要完成对A/D转换数据的存储。由于需要两路同时采集数据,所以要有2个FIFO模块,这样易于对数据的存储和传输控制。每个FIFO存储模块的存储容量定为2 048 B,可通过MegaWizard工具来调用。
(2)数据通道选择模块
数据通道选择模块主要是针对两路的数据读取和传输而设计的。当A/D转换器采集到对应的数据后,存入两个异步FIFO存储模块中。在两个异步 FIFO存储模块存储满后,对FIFO存储模块数据的读取是关键。数据通道选择模块的基本原理是在控制模块对读取数据进行计数,当把其中的一个FIFO存储模块读取完后,由控制模块发出通道切换信号,由数据通道选择模块切换数据通道,再读取另一个FIFO存储模块的数据。
(3)控制模块
控制模块要完成对TLC5510、FIFO存储模块、数据选择模块和EZ—USB FX2的控制,这是整个系统的关键。根据系统实现的功能和各个模块的控制时序,控制模块将产生相应的控制信号,实现系统的采集和存储的功能。
(4)20 MHz时钟的PLL模块
系统提供的FPGA外部时钟频率为50 MHz,而TLC5510的最大采样工作频率为20 MHz。所以通过对前置分频参数N=5、倍频器参数M=2的设置,将50 MHz钟频率分频成20 MHz的时钟作为采样时钟和系统的工作时钟。
随着社会的发展和技术的进步,各种计算机的外围接口不断的推陈出新。USB接口已渐渐成为现今个人计算机上最重要的接口之一,并以其传输速度快、使用方便和价格低廉等特点成为现今一般消费性电子产品和工业控制设备上不可缺少的接口。Cypress公司的EZ-USBFX2是一个USB2.0集成外围控制器,它具有通用串行总线(USB)的3种传输模式:1.5 Mb/s的低速模式,12 Mb/s的全速模式,480 Mb/s的高速模式。因此,本设计选用USB2.0芯片CY7C68012、Altera公司的FPGA和TLC5510组成一个通用的数据采集和传输系统。该系统结构简单,采集和数据传输可靠,能够满足现今高速设备的要求。
1 系统硬件设计
本系统主要分为两个部分,一部分是由2片TLC5510和FPGA构成的数据采集模块,另一部分是由FPGA和EZ—USB FX2构成的数据传输模块。系统的框图如图1所示。
(1)数据采集模块
经过调理后的信号进入模数转换电路,选用的高速AD芯片是TI公司的TLC5510。TLC5510是CMOS、 8位、20 Msps的模数转换电路。它采用半闪速结构,单电源5 V工作时,功耗只有100 mW,内含采样和保持电路,具有高阻抗方式的并行接口和内部基准电阻。与闪速转换器相比,半闪速结构减少了功率损耗和晶片尺寸。通过在两步过程中实现转换,可以大量地减少比较器的数目,转换数据的等待时间为2.5个时钟周期,且高速转换的同时能够保持较低的功耗。TLC5510与FPGA的接口电路如图 2所示。
FPGA提供TLC5510 20 MHz的工作时钟和使能输出信号OE,低电平有效,同时接受TLC5510的采样数据。由于系统需要同步的两路采样,所以由FPGA输出的时钟和使能输出信号OE同时控制2个TLC5510。这样FPGA就可以同时收到两路同时采样的信号数据,将其存入两个独立的异步FIFO中。
值的注意的是,实验中将FPGA产生的工作时钟和使能输出信号先输入74HCT573,然后由74HCT573的输出去控制两路的TLC5510。这主要是完成将FPGA的CMOS电平转换成TTL电平的工作。在实验的初期,未经过电平转换的信号在控制TLC5510时,得不到稳定数据。后来经过改善后,TLC5510能够稳定、准确地完成采样和数据输出。
(2)数据传输模块
在数据传输模块中,为了保证较高的传输速度,使用不经过CPU的SLAVEFIFO控制工作模式。模块的基本工作过程为:当A/D采样数据存储满 FPGA中的FIFO后,FPGA根据SLAVEFIFO的控制时序产生相应的控制信号,将在FIFO中的数据传输给EZ-IJSB FX2的内部端点FIFO,而当内部端点存储满后,FX2自动将数据传输到上位机。外部控制器FPGA对FX2的控制进程如下:
①IDLE,当写事件发生时,转向状态1。
②状态1,指向EZ-LJSB FX2的内部端点IN FIFO,激活FIFOADR[1:0],转向状态2。
③状态2,如果内部端点FIF0满标志为“假”(FIFO不满),则转向状态3;否则停留在状态2。
④状态3,传送总线驱动数据。产生一个SLWR跳变,转向状态4。
⑤状态4,如果有更多的数据要写,则转向状态2;否则,转向IDLE。
EZ-JSB FX2内部端点FIFO异步写的时序如图3所示。
2 FPGA的模块设计
在系统中,FPGA构成了数据采集系统和数据传输系统的“桥梁”,完成对TLC25510的控制和数据的存储,同时也完成对EZ-USB FX2单片机的控制。利用FPGA强大的功能,使电路的结构得到了简化,不需要利用分立器件来完成对数据的存储。因此,在FPGA中需要构成4个模块:2片FIFO数据存储模块、数据通道选择模块、控制模块和输出20 MHz时钟的PLL模块。
(1)2片FIFO数据存储模块
FIFO数据存储模块主要完成对A/D转换数据的存储。由于需要两路同时采集数据,所以要有2个FIFO模块,这样易于对数据的存储和传输控制。每个FIFO存储模块的存储容量定为2 048 B,可通过MegaWizard工具来调用。
(2)数据通道选择模块
数据通道选择模块主要是针对两路的数据读取和传输而设计的。当A/D转换器采集到对应的数据后,存入两个异步FIFO存储模块中。在两个异步 FIFO存储模块存储满后,对FIFO存储模块数据的读取是关键。数据通道选择模块的基本原理是在控制模块对读取数据进行计数,当把其中的一个FIFO存储模块读取完后,由控制模块发出通道切换信号,由数据通道选择模块切换数据通道,再读取另一个FIFO存储模块的数据。
(3)控制模块
控制模块要完成对TLC5510、FIFO存储模块、数据选择模块和EZ—USB FX2的控制,这是整个系统的关键。根据系统实现的功能和各个模块的控制时序,控制模块将产生相应的控制信号,实现系统的采集和存储的功能。
(4)20 MHz时钟的PLL模块
系统提供的FPGA外部时钟频率为50 MHz,而TLC5510的最大采样工作频率为20 MHz。所以通过对前置分频参数N=5、倍频器参数M=2的设置,将50 MHz钟频率分频成20 MHz的时钟作为采样时钟和系统的工作时钟。
USB 电子 Cypress 总线 Altera FPGA 电路 CMOS 电阻 比较器 单片机 Keil 电源管理 嵌入式 相关文章:
- 用电子技术最大化太阳能电池板输出功率(05-18)
- 2009视频监控:网络化及其推动的几大趋势(06-03)
- 与MSP430 USI端口配合使用ADS8361(06-18)
- 辰汉电子推出低成本快速量产视频监控方案+4路输入方案(06-24)
- 用于风力发电设备的连接器的简易安装与维护(06-21)
- 解读USB-IF电池充电规范(10-27)