Infineon AN75779: Implementing an Image Sensor Interface with EZ-USB FX3 in a UVC Framework
Guide for interfacing image sensors with Infineon EZ-USB FX3 controllers to stream uncompressed video via USB 3.0 using the USB Video Class (UVC) framework.
Overview
This application note provides comprehensive instructions for implementing a high-bandwidth camera application using Infineon's EZ-USB FX3 (CYUSB301x and CYUSB201x) USB 3.0 peripheral controllers. It focuses on the USB Video Class (UVC) framework, which allows camera devices to operate using standard operating system drivers. Key technical areas covered include configuring the General Programmable Interface (GPIF II) to maximize throughput, managing ping-pong DMA buffers for efficient data transfer, and implementing UVC-specific descriptors and control requests. The document also includes details on I2C configuration for image sensors like the ON Semiconductor MT9M114 and describes how to implement dual-sensor interfaces for 3D imaging and motion-tracking applications.
Use Cases
- High-speed USB 3.0 camera design
- Uncompressed video streaming to PC
- 3D imaging and motion-tracking systems
- Image sensor to USB peripheral interfacing
- Developing UVC-compliant devices
Topics
Referenced Parts
CYUSB201x
Infineon
Associated part family CYUSB301x, CYUSB201x
CYUSB301x
Infineon
Associated part family CYUSB301x, CYUSB201x
EZ-USB CX3
Infineon
USB 3.0 product selectors: EZ-USB™ FX3, EZ-USB™ FX3S, EZ-USB™ CX3, EZ-USB™ HX3, EZ-USB™ SX3
EZ-USB FX2G2
Infineon
The steps specified in this application note are applicable to EZ-USB™ FX2G2, the USB 2.0 part from the EZ-USB™ FX3 family, as well.
EZ-USB FX3
Infineon
This application note focuses on a popular USB 3.0 application: a camera (image sensor interfaced with EZ-USB™ FX3) streaming uncompressed data into a PC.
EZ-USB FX3S
Infineon
USB 3.0 product selectors: EZ-USB™ FX3, EZ-USB™ FX3S, EZ-USB™ CX3, EZ-USB™ HX3, EZ-USB™ SX3
EZ-USB HX3
Infineon
USB 3.0 product selectors: EZ-USB™ FX3, EZ-USB™ FX3S, EZ-USB™ CX3, EZ-USB™ HX3, EZ-USB™ SX3
EZ-USB SX3
Infineon
USB 3.0 product selectors: EZ-USB™ FX3, EZ-USB™ FX3S, EZ-USB™ CX3, EZ-USB™ HX3, EZ-USB™ SX3
FX3
Infineon
as Infineon FX3 USB bootloader device if it is power-cycled after programming.
| MT9M114 | Onsemi | 1. ON Semiconductor MT9M114 image sensor board (MT9M114EBLSTCH3- |
| CYUSB201x | Infineon | Associated part family CYUSB301x, CYUSB201x |
| CYUSB301x | Infineon | Associated part family CYUSB301x, CYUSB201x |
| EZ-USB CX3 | Infineon | USB 3.0 product selectors: EZ-USB™ FX3, EZ-USB™ FX3S, EZ-USB™ CX3, EZ-USB™ HX3, EZ-USB™ SX3 |
| EZ-USB FX2G2 | Infineon | The steps specified in this application note are applicable to EZ-USB™ FX2G2, the USB 2.0 part from the EZ-USB™ FX3 family, as well. |
| EZ-USB FX3 | Infineon | This application note focuses on a popular USB 3.0 application: a camera (image sensor interfaced with EZ-USB™ FX3) streaming uncompressed data into a PC. |
| EZ-USB FX3S | Infineon | USB 3.0 product selectors: EZ-USB™ FX3, EZ-USB™ FX3S, EZ-USB™ CX3, EZ-USB™ HX3, EZ-USB™ SX3 |
| EZ-USB HX3 | Infineon | USB 3.0 product selectors: EZ-USB™ FX3, EZ-USB™ FX3S, EZ-USB™ CX3, EZ-USB™ HX3, EZ-USB™ SX3 |
| EZ-USB SX3 | Infineon | USB 3.0 product selectors: EZ-USB™ FX3, EZ-USB™ FX3S, EZ-USB™ CX3, EZ-USB™ HX3, EZ-USB™ SX3 |
| FX3 | Infineon | as Infineon FX3 USB bootloader device if it is power-cycled after programming. |