基于FPGA的高速图像采集系统设计
时间:03-30
来源:互联网
点击:
4 EZ—USB传输控制器
CY7C68013是Cypress公司的EZ—USB FX2系列芯片,引脚连接图如图5所示。该系列芯片集成了USB2.O收发器、串行接口引擎(SIE)、带8.5 KB片上RAM的增强型8501、16 KB的RAM、4 KB的FIFO存储器、I/O口、数据总线、地址总线和通用可编程接口(GPIF);共有3种接口模式——端口模式、从属FIFO接口模式和GPIF接口模式。在端口模式下,所有I/O引脚都可作为805l的通用I/O口,作为最基本的数据传输模式,其数据传输主要由固件程序完成,需要CPU的参与,因此数据传输速率比较低。在从属FIFO接口模式下,外部逻辑或外部处理器可以直接与FX2端点FIFO相连。GPIF接口模式使用PORTB和PORTD构成通向4个FX2端点FIF0(EP2、EP4、EP6和EP8)的16位数据接口。GPIF作为内部的主控制器与FIFO直接相连,并产生用户可编程的控制信号与外部接口进行通信。后两种模式数据的传输通过执行USB本身的协议来完成,微处理器不参与数据传输,从而使数据的传输速率大大地提高。
本方案采用从FIFO方式,由FPGA提供读写时钟,EZ—USB的CPU不参与数据传输。其中端点FIFO相当于FPGA的外部RAM,数据的读写分别由读写控制器完成。如果数据从EZ_USB读入到FPGA中,首先要检测CON控制线的状态,若有数据要读,分配FIFOADR=00,使FIFO指针指向输出端点,使能SLOE使之数据输出,然后采样数据线上的数据,读得的数据送入命令解析模块解析;如果是数据从FPGA写入到EZ_USB中,则设置 FIFOADR使之指向输入端点,拉低SLWR,将内部数据总线接到外部数据总线上,这样就完成了一次数据的写入。
除上述设计外还需要对EZ_USB模块本身进行设置,这部分属于固件开发部分。Cypress公司为固件开发提供了一个固件库和固件框架,都是在集成开发环境下开发的,固件库提供了一些常量、数据结构和函数来简化用户对芯片的使用。将代码在Keil C51环境中进行编译;编译通过后,将固件代码下载到单片机中。这部分主要完成相关寄存器的设置和波形文件的编写。
结语
通过以上设计很好地解决了高速数据在采样、传输过程中的瓶颈,并以很短的时延真正实现了高速图像数据的采集。由于其低成本、易安装的特性,拥有广阔的市场前景,可以应用于电话会议、远程医疗和远程教学等需要高清图像传输的领域。本设计的创新点在于,它适应了不同的图像数据的应用需求,实现了多种速率的读写模式,可以是实时的突发长度读写和高速的全页读写。
参考文献
1. CY7C68013 EZ-USB FX2 USB Microcontroller High-speed USB Peripheral Controller 2008
2. OV7620 SINGLE-CHIP CMOS VGA COLOR DIGITAL CAMERA 2008
3. Hynix HY57V561620F(L)T(P)-xI Synchronous DRAM Manual 2008
4. 韦存刚.金星 基于 FPGA的多路数据采集和控制模块设计 [期刊论文] -微计算机信息2008(17)
5. 夏雨闻 Verilog 数字系统设计教程 2003
作者:重庆邮电大学 王海滨 杨晓非
来源:单片机与嵌入式系统应用 2009 (3)
CY7C68013是Cypress公司的EZ—USB FX2系列芯片,引脚连接图如图5所示。该系列芯片集成了USB2.O收发器、串行接口引擎(SIE)、带8.5 KB片上RAM的增强型8501、16 KB的RAM、4 KB的FIFO存储器、I/O口、数据总线、地址总线和通用可编程接口(GPIF);共有3种接口模式——端口模式、从属FIFO接口模式和GPIF接口模式。在端口模式下,所有I/O引脚都可作为805l的通用I/O口,作为最基本的数据传输模式,其数据传输主要由固件程序完成,需要CPU的参与,因此数据传输速率比较低。在从属FIFO接口模式下,外部逻辑或外部处理器可以直接与FX2端点FIFO相连。GPIF接口模式使用PORTB和PORTD构成通向4个FX2端点FIF0(EP2、EP4、EP6和EP8)的16位数据接口。GPIF作为内部的主控制器与FIFO直接相连,并产生用户可编程的控制信号与外部接口进行通信。后两种模式数据的传输通过执行USB本身的协议来完成,微处理器不参与数据传输,从而使数据的传输速率大大地提高。
本方案采用从FIFO方式,由FPGA提供读写时钟,EZ—USB的CPU不参与数据传输。其中端点FIFO相当于FPGA的外部RAM,数据的读写分别由读写控制器完成。如果数据从EZ_USB读入到FPGA中,首先要检测CON控制线的状态,若有数据要读,分配FIFOADR=00,使FIFO指针指向输出端点,使能SLOE使之数据输出,然后采样数据线上的数据,读得的数据送入命令解析模块解析;如果是数据从FPGA写入到EZ_USB中,则设置 FIFOADR使之指向输入端点,拉低SLWR,将内部数据总线接到外部数据总线上,这样就完成了一次数据的写入。
除上述设计外还需要对EZ_USB模块本身进行设置,这部分属于固件开发部分。Cypress公司为固件开发提供了一个固件库和固件框架,都是在集成开发环境下开发的,固件库提供了一些常量、数据结构和函数来简化用户对芯片的使用。将代码在Keil C51环境中进行编译;编译通过后,将固件代码下载到单片机中。这部分主要完成相关寄存器的设置和波形文件的编写。
结语
通过以上设计很好地解决了高速数据在采样、传输过程中的瓶颈,并以很短的时延真正实现了高速图像数据的采集。由于其低成本、易安装的特性,拥有广阔的市场前景,可以应用于电话会议、远程医疗和远程教学等需要高清图像传输的领域。本设计的创新点在于,它适应了不同的图像数据的应用需求,实现了多种速率的读写模式,可以是实时的突发长度读写和高速的全页读写。
参考文献
1. CY7C68013 EZ-USB FX2 USB Microcontroller High-speed USB Peripheral Controller 2008
2. OV7620 SINGLE-CHIP CMOS VGA COLOR DIGITAL CAMERA 2008
3. Hynix HY57V561620F(L)T(P)-xI Synchronous DRAM Manual 2008
4. 韦存刚.金星 基于 FPGA的多路数据采集和控制模块设计 [期刊论文] -微计算机信息2008(17)
5. 夏雨闻 Verilog 数字系统设计教程 2003
作者:重庆邮电大学 王海滨 杨晓非
来源:单片机与嵌入式系统应用 2009 (3)
单片机 DSP FPGA USB CMOS 传感器 总线 Cypress 收发器 Keil Verilog 嵌入式 相关文章:
- 采用EEPROM对大容量FPGA芯片数据实现串行加载(03-18)
- 周立功:如何兼顾学习ARM与FPGA(05-23)
- 初学者如何学习FPGA(08-06)
- 为何、如何学习FPGA(05-23)
- FPGA作为协处理器在实时系统中的应用(04-08)
- 我的FPGA学习历程(05-23)