(Development Notes)
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
With the USB 3.0 plugin module any computer with USB 3.0 connectivity can be used as an AXIOM Recorder. This will allow us to define format/container/metadata/etc. of uncompressed raw 4k footage for the first time.  
+
[[File:00-SUSB-001- AXIOM Beta 1 x USB 3.0 Plugin Module V0.2 R1.0 Top Populated Show sm.jpg | 1150px |]]
 +
 
 +
[https://wiki.apertus.org/images/3/3e/00-SUSB-001-_AXIOM_Beta_1_x_USB_3.0_Plugin_Module_V0.2_R1.0_Top_Populated_Show.png Full size image]
 +
 
 +
 
 +
 
 +
 
 +
With the USB 3.0 plugin module, any computer with USB 3.0 connectivity can be used as an AXIOM Recorder to store and define the format/container/metadata/etc. of uncompressed raw 4k footage. A single module provides users with around 400MB/S bandwidth (3.2Gbit/s) - enough to record uncompressed 4096x2160 raw 12 bit video at 25 FPS. In theory, this can be doubled by utilising two of the AXIOM Beta Main Board's module slots. Software is in development and tests have showed the data exchange between camera and a connected PC over USB 3.0 is working well.
 +
 
 +
The USB3 Plugin Module incorporates an FTDI FT601 IC which acts as a multi channel 32-bit FIFO interface. With the FTDI FT602 general I/O and UVC playback is possible.
 +
 
 +
 
 +
 
 +
[[File:ABCS-SUSB3-02a AXIOM Beta 1 x USB 3.0 Plugin Module V0.2 R1.0 Top Populated sm.jpg | 1150px |]]
 +
 
 +
[https://wiki.apertus.org/images/b/b2/ABCS-SUSB3-02a_AXIOM_Beta_1_x_USB_3.0_Plugin_Module_V0.2_R1.0_Top_Populated.jpg Full size image]
 +
 
 +
 
 +
 
 +
 
 +
[[File:ABCS-SUSB3-02b AXIOM Beta 1 x USB 3.0 Plugin Module V0.2 R1.0 Bottom Populated sm.jpg | 1150px |]]
 +
 
 +
[https://wiki.apertus.org/images/7/7c/ABCS-SUSB3-02b_AXIOM_Beta_1_x_USB_3.0_Plugin_Module_V0.2_R1.0_Bottom_Populated.jpg Full size image]
  
[[File:1x_USB3_module_on_e1e1e1.png| 1150px | USB3.0 PCB Top populated]]
 
  
One AXIOM Beta USB 3.0 plugin module provides users with around 400MB/S bandwidth (3.2Gbit/s) and, in theory, this can be doubled by utilising two of the Beta's module slots. If everything works as intended this will allow for the recording of uncompressed 4K raw data, plus metadata, directly from the Beta in any frame-rate that available bandwidth can handle.
 
  
  
Line 10: Line 30:
 
'''Development Status:''' PCB has been populated. Software in development.
 
'''Development Status:''' PCB has been populated. Software in development.
  
The USB3 interface chip is an FTDI FT601 (https://www.ftdichip.com/Products/ICs/FT600.html) and acts as a multi channel 32-bit FIFO interface.
+
The USB3 interface chip is an FTDI FT601 (https://www.ftdichip.com/Products/ICs/FT600.html) and acts as a multi channel 32-bit FIFO interface. It should also be possible to use the FTDI FT602 (https://www.ftdichip.com/Products/ICs/FT602.html) which will allow for viewing captured imaging data via standard UVC enabled hardware and commonly used media player platforms e.g. VLC Player etc.
  
 
FTDI works out of the box and can be programmed/configured via USB if necessary.
 
FTDI works out of the box and can be programmed/configured via USB if necessary.
  
The Lattice FPGA needs to be programmed through the Beta.
+
The Lattice MachXO FPGA needs to be programmed through the Beta - the JTAG interface (as well as control signals) of the Lattice MachXO FPGA on the USB3 plugin are connected to the IO pins of the plugin module slot. A little trick is required for utilizing this:
  
==Revisions==
+
# A special MachXO2 bitstream is loaded which basically passes through a bunch of signals between the Plugin IO pins and the PIC microcontroller
 +
# A special PIC firmware is used which does basically the same as the original one, but with slightly different pins (i.e. those connected to MachXO GPIOs not the JTAG interface). This way the normal scripts (pic_jtag_* scripts) which usually program the MachXO2 on the camera's [https://wiki.apertus.org/index.php/Beta_Main_Board Main Board], now generate signals which get relayed to the plugin IOs.
  
[[File:1xusb30-plugin-module.png | thumb | 400px | PCB Top unpopulated]]
+
==Current Revision==
 +
 
 +
https://wiki.apertus.org/index.php/AXIOM_Beta_Plugin_Module_1x_USB3_v0.2r1.1
 +
 
 +
 
 +
==Revision Archive==
  
'''Current:'''
 
  
https://wiki.apertus.org/index.php/AXIOM_Beta_Plugin_Module_1x_USB3_v0.2r1.1
+
[[File:1xusb30-plugin-module.png | thumb | 400px | PCB Top unpopulated]]

Latest revision as of 03:50, 18 January 2020

00-SUSB-001- AXIOM Beta 1 x USB 3.0 Plugin Module V0.2 R1.0 Top Populated Show sm.jpg

Full size image



With the USB 3.0 plugin module, any computer with USB 3.0 connectivity can be used as an AXIOM Recorder to store and define the format/container/metadata/etc. of uncompressed raw 4k footage. A single module provides users with around 400MB/S bandwidth (3.2Gbit/s) - enough to record uncompressed 4096x2160 raw 12 bit video at 25 FPS. In theory, this can be doubled by utilising two of the AXIOM Beta Main Board's module slots. Software is in development and tests have showed the data exchange between camera and a connected PC over USB 3.0 is working well.

The USB3 Plugin Module incorporates an FTDI FT601 IC which acts as a multi channel 32-bit FIFO interface. With the FTDI FT602 general I/O and UVC playback is possible.


ABCS-SUSB3-02a AXIOM Beta 1 x USB 3.0 Plugin Module V0.2 R1.0 Top Populated sm.jpg

Full size image



ABCS-SUSB3-02b AXIOM Beta 1 x USB 3.0 Plugin Module V0.2 R1.0 Bottom Populated sm.jpg

Full size image



1 Development Notes

Development Status: PCB has been populated. Software in development.

The USB3 interface chip is an FTDI FT601 (https://www.ftdichip.com/Products/ICs/FT600.html) and acts as a multi channel 32-bit FIFO interface. It should also be possible to use the FTDI FT602 (https://www.ftdichip.com/Products/ICs/FT602.html) which will allow for viewing captured imaging data via standard UVC enabled hardware and commonly used media player platforms e.g. VLC Player etc.

FTDI works out of the box and can be programmed/configured via USB if necessary.

The Lattice MachXO FPGA needs to be programmed through the Beta - the JTAG interface (as well as control signals) of the Lattice MachXO FPGA on the USB3 plugin are connected to the IO pins of the plugin module slot. A little trick is required for utilizing this:

  1. A special MachXO2 bitstream is loaded which basically passes through a bunch of signals between the Plugin IO pins and the PIC microcontroller
  2. A special PIC firmware is used which does basically the same as the original one, but with slightly different pins (i.e. those connected to MachXO GPIOs not the JTAG interface). This way the normal scripts (pic_jtag_* scripts) which usually program the MachXO2 on the camera's Main Board, now generate signals which get relayed to the plugin IOs.

2 Current Revision

https://wiki.apertus.org/index.php/AXIOM_Beta_Plugin_Module_1x_USB3_v0.2r1.1


3 Revision Archive

PCB Top unpopulated