26
基基 Cypress 基基 USB 基基基基 基基 基基基基基 基 : 基 基 基基基基 : 基 基基基基基基基基基基基基基基 基基基基基基基基基基基基基基 基基基基基基基基基基基基基基 2008 基 6 基 16 基

基于 Cypress 公司 USB 控制器的 图像传输技术研究

  • Upload
    terena

  • View
    174

  • Download
    13

Embed Size (px)

DESCRIPTION

北京理工大学学士学位论文答辩. 基于 Cypress 公司 USB 控制器的 图像传输技术研究. 答 辨 人 : 刘 登 宇 指导老师 : 徐 超. 北京理工大学信息科学技术学院 2008 年 6 月 16 日. 课题背景. CMOS 图像传感器 电路集成 成本低廉 功耗低 USB2.0 总线接口技术 高速传输 吞吐量大 应用灵活 支持热插拔. 国内外发展现状. 美国 MuTech Phoenix 系列. 华旗数码技术实验室. USB 视频传输系统构成. USB 视频传输系统器件选择. - PowerPoint PPT Presentation

Citation preview

Page 1: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

基于 Cypress公司 USB控制器的图像传输技术研究 答 辨 人 : 刘 登 宇

指导老师 : 徐 超

北京理工大学学士学位论文答辩北京理工大学学士学位论文答辩

北京理工大学信息科学技术学院2008 年 6 月 16 日

Page 2: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

课题背景

CMOS 图像传感器- 电路集成- 成本低廉- 功耗低

USB2.0 总线接口技术- 高速传输- 吞吐量大- 应用灵活- 支持热插拔

Page 3: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

国内外发展现状

美国 MuTech Phoenix 系列 华旗数码技术实验室

Page 4: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

USB 视频传输系统构成

Page 5: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

USB 视频传输系统器件选择

CMOS 图像传感器: Micron MT9M001 CMOS 图像传感器- 图像分辨率 :1280X1024 SXGA

- 30 帧 / 秒逐行扫描- 电子卷帘快门- 可编程控制增益、帧 速率、帧窗口大小

USB 控制器: Cypress EZ-USB FX2 CY7C68013 USB 控制器- 集成 USB2.0 收发器、 SIE( 串行接口引擎 ) 、增强型 8051 微控制器- 通用可编程接口 (GPIF) , 8 位 /16 位数据总线- 四个可编程端点 ( 批量、同步、中断 )

Page 6: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

EZ-USB FX2 68013 USB 控制器

• USB 接收器接收外部差分信号后,由智能串行接口引擎处理 USB 协议中的数据传输格式,而微控制器 8051 则专注于应用功能。

• 通用可编程接口 GPIF 和主 / 从端点 FIFO(8 位或 16 位数据总线 ) 为ATA 、 UTOPIA 、 EPP 、 PCMCIA 和 DSP 等通用接口提供了简单的无缝连接。

Page 7: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

独特数据传输架构

数据传输通常需要 CPU 通过固件访问芯片中的端点 FIFO ,也需要 CPU 通过固件访问外围设备的接口电路。然而,这种工作方式会因 CPU 固件程序执行效率低而限制数据传输速率,在高速传输时显得格外突出。

FX2 采用了一种特殊的数据传输模式。在此模式下,无需 CPU 执行内部8051 固件程序便可直接实现端点 FIFO 与外部的数据交换。从而很好地解决了因微处理器转发方式造成的带宽瓶颈,实现了数据的高速传输。

Page 8: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

端点 FIFO

FX2 使用数量较少的大端点缓冲区代替数量较多的小端点缓冲区 FX2 为其大端点 (EP2 、 4 、 6 、 8) 提供了双倍、三倍和四倍缓冲方式

Page 9: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

USB

接口域

量子 FIFO

什么是量子 FIFO ?- 数据以包的形式传输- 接口域与 USB 域共享数据存储空间- 多级缓冲机制保证数据平稳传输

Page 10: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

系统硬件设计

Page 11: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

系统软件设计

Page 12: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

固件程序源文件列表

名称 描述

Fw.c 框架源程序

camera.c 摄像头固件主程序

GPIF.c GPIF 接口程序

fx2.h

fx2reg.h

fx2sdly.h

intrins.h

FX2 头文件、通用寄存器、延时等宏定义文件

ezusb.lib 目标库链接文件

dscr.a51 描述符源文件

Page 13: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

固件程序设计

固件程序负责完成两项任务:- 响应主机的枚举请求,配置

设备信息- 控制外部设备数据传输

TD_Init()- 初始化用户的全局状态变量- 配置端点及 I/O

TD_Poll()- 循环调用,执行 GPIF波形- 读取外部 CMOS 图像数据

DR_VendorCmnd()- 主机发送自定义命令控制字

Page 14: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

通用可编程接口 GPIF

什么是 GPIF ?- 通用可编程接口 GPIF 实质上是一个对端点 FIFO 的内部主控制器,同时也对外部

设备的工作时序(包括读、写操作)进行控制。如果没有 GPIF ,在 FX2 与外部设备之前还必须有其它的产生工作时序的接口电路,如 CPLD 。

GPIF 的强大性能- GPIF 可用于在 FX2 与外部 ASIC 或微处理器之间建立握手连接,它具有足够强的能力来直接实现诸如 ATAPI(PIO 和 UDMA) 、 EPP并行接口和 Utopia 等接口协议。例如, FX2 能够单片实现 USB 与 IDE硬盘驱动器或 CF卡之间的接口。

如何进行 GPIF波形设计?- GPIF波形可由 Cypress公司提供的 GPIF Designer 工具进行直观的设计,设计好后

的波形可导出为 c 文件供固件程序调用

Page 15: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

GPIF 结构框图

内部或外部提供的时钟 IFCLK

6 个可编程控制输出 CTL[5:0]

9条地址输出线 GPIFADR[8:0]

6 个外设输入状态信号 RDY[5:0]

双向 8 位或 16 位数据总线FD[15:0]

Page 16: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

GPIF 波形设计

Page 17: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

GPIF 波形设计

Page 18: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

Flow State

为了高效地处理来自外部设备的突发数据, GPIF 在 FIFO 模式传输中采用了一种叫做 Flow State 的特性。 Flow State 是这样一种机制,它通过使用一套区别于决定态 RDY逻辑的独立的 RDY逻辑 ( 称之为流逻辑 )来实现 GPIF对数据传输开关的有效控制

由于它可实现在每个 IFCLK 的上升沿和下降沿触发数据传输,因此,一个运行于 48MHz系统的 16 总线接口可通过 GPIF 引擎实现高达 96MB/s 的突发数据传输

IFCLK

数据总线

Page 19: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

Flow State

GPIF 采用 SLAVE 模式 采用 CMOS 的行有效信号 L_Valid

作为 Flow State触发信号 数据传输在上升沿时触发

Page 20: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

驱动程序及应用程序设计

FX2驱动程序 ezusb.sys 是 CYPRESS公司提供的通用驱动程序。用户只需稍加修改或不需任何修改即可使用该驱动程序,本文根据实际系统需要,对其稍作修改后编译生成 usbcam.sys 。

主机应用程序是图像采集传输系统的控制中心,它由 VC++6.0 MFC 编程实现其主要功能有:- 检测 USB 设备- 查看设备描述符及配置描述符- 开启及中止图像数据采集- 图像的实时呈现

应用程序在与一个设备通信之前,首先通过调用 Win32函数 CreateFile()来取得访问设备驱动程序的句柄。然后用户程序使用 Win32函数 DeviceIoControl()来提交 I/O 控制码 (IOCTL) ,以此实现对外部设备的控制。

Page 21: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

应用程序界面

MFC

多线程技术 GDI绘图

图像呈现区域

用户控制区域

Page 22: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

系统整体图

系统板

主机应用程序

Page 23: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

系统测试——速度测试

图 4-2 接收固定大小数据传输速度测试

图 4-3 连续数据采集传输速度测试

Page 24: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

系统测试——图像测试

Page 25: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

总结

深入了解了 USB2.0 技术,并将其与本专业实际需要要结合设计了一个基于USB 控制器的图像传输系统。

完成了 USB2.0 控制芯片 CY7C68013 及 CMOS 图像传感器的应用电路设计。熟练掌握电路原理图设计、 PCB板的制作、焊接以及电路调试的整个过程。

编写了 CY7C68013 的固件程序。采用图形化设计工具 GPIF Designer ,直观地设计出了系统所需的 GPIF FIFO读写波形,实现了对 CMOS 图像传感器工作时序的控制以及图像数据的高速传输。

利用 Microsoft Visual C++6.0 编写了简单的客户端应用程序,实现了 CMOS图像数据的呈现。

Page 26: 基于 Cypress 公司 USB 控制器的 图像传输技术研究

谢谢各位评审老师!Thanks For Your Attention !