Difference between revisions of "USB 3.0 Plugin Module Gearwork"

From apertus wiki
Jump to: navigation, search
 
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
PAGE UNDER CONSTRUCTION
== Project Summary ==
== Project Summary ==


The AXIOM Beta currently features PCIe x1 connectors on the main board which are capable of transferring data at a rate of 6Gbit/s or more. Several high speed plugin modules like HDMI, DP or SDI can be plugged into these thereby providing additional functionalities.Currently, the AXIOM Beta lacks a USB 3.0 interface for direct transmission of RAW video data to a connected PC for recording/streaming purposes. This project is about implementing a USB 3.0 gearwork using the LVDS connection exposed by the PCIe connectors for streaming 4K 12-bit video at 25 FPS. There is no aftermarket solutions for high speed LVDS to USB 3.0 conversion. Only 16/24/32-bit parallel data to USB 3.0 bridges are available. Hence, a USB 3.0 plugin module has been designed by apertus° featuring a MachXO2 Lattice FPGA and FT601Q/FT602 FTDI IC for this purpose.
The AXIOM Beta currently features PCIe x1 connectors on the mainboard which are capable of transferring data at a rate of 6Gbit/s or more. Several high-speed plugin modules like HDMI, DP, or SDI can be plugged into these, thereby providing additional functionalities. The AXIOM Beta lacked an USB 3.0 interface for direct transmission of RAW video data to a connected PC for recording/streaming purposes. In this project, I wrote all the HDL code for gearwork of the USB 3.0 plugin module (designed by apertus°) so that it can transfer live 4K video data at 20+ FPS from the LVDS lanes exposed by the PCIe connectors on AXIOM Beta main board to the connected PC by use of an USB 3.0 port.


'''Google Summer of Code 2019 project.'''
'''Google Summer of Code 2019 project.'''


'''Mentored by: Bertl.'''
''Mentored by:'' '''Bertl'''


'''Implemented by: Apurva Nandan'''
''Implemented by:'' '''Apurva Nandan'''


----
----
== Important Links ==


== Important URLs ==
* [https://github.com/apurvanandan1997/usb_plug_mod_ber GSoC'19 Source Code]
 
- [https://github.com/apurvanandan1997/usb_plug_mod_ber Code]


- [https://github.com/apurvanandan1997/SerDes_T871_A/blob/master/Proposal/Apertus_USB_3.0_GearWork_Project_Proposal.pdf Proposal]
[https://github.com/apurvanandan1997/usb_plug_mod_ber/blob/master/GSoC19_Report.pdf GSoC'19 Project Report]


- [https://github.com/apurvanandan1997/usb_plug_mod_ber/Report.pdf Report]
* [https://github.com/apurvanandan1997/SerDes_T871_A/blob/master/Proposal/Apertus_USB_3.0_GearWork_Project_Proposal.pdf GSoC'19 Project Proposal]


- [https://summerofcode.withgoogle.com/projects/#4870344697970688 Project Page at GSoC'19 ]
* [https://summerofcode.withgoogle.com/projects/#4870344697970688 GSoC'19 Project Page]


- [https://lab.apertus.org/T885 Lab Task ]
* [https://lab.apertus.org/T885 Apertus° Lab Task T885 ]


----
----
Line 29: Line 26:
== References ==
== References ==


- [https://wiki.apertus.org/index.php/1x_USB_3.0_Plugin_Module USB 3.0 Plugin Module Wiki ]
* [https://wiki.apertus.org/index.php/1x_USB_3.0_Plugin_Module USB 3.0 Plugin Module Hardware Wiki ]


- [https://www.latticesemi.com/Products/FPGAandCPLD/MachXO2 Lattice MachXO2 FPGA]
* [https://www.latticesemi.com/Products/FPGAandCPLD/MachXO2 Lattice MachXO2 FPGA]


- [https://www.latticesemi.com/view_document?document_id=39084 Implementing High-Speed Interfaces with MachXO2 Devices - TN1203]
* [https://www.latticesemi.com/view_document?document_id=39084 Implementing High-Speed Interfaces with MachXO2 Devices - TN1203]


- [https://www.ftdichip.com/Products/ICs/FT600.html FTDI FT601Q chip]
* [https://www.ftdichip.com/Products/ICs/FT600.html FTDI FT601Q chip]

Latest revision as of 16:06, 25 August 2019

1 Project Summary

The AXIOM Beta currently features PCIe x1 connectors on the mainboard which are capable of transferring data at a rate of 6Gbit/s or more. Several high-speed plugin modules like HDMI, DP, or SDI can be plugged into these, thereby providing additional functionalities. The AXIOM Beta lacked an USB 3.0 interface for direct transmission of RAW video data to a connected PC for recording/streaming purposes. In this project, I wrote all the HDL code for gearwork of the USB 3.0 plugin module (designed by apertus°) so that it can transfer live 4K video data at 20+ FPS from the LVDS lanes exposed by the PCIe connectors on AXIOM Beta main board to the connected PC by use of an USB 3.0 port.

Google Summer of Code 2019 project.

Mentored by: Bertl

Implemented by: Apurva Nandan


2 Important Links


3 References