chili-chips-ba / openeye-CamSI

A truly opensource camera serial interface. No frills. No backdoors that compromise security. Outstanding signal integrity. Hi-rez video pipeline with remote connectivity. For Sony, Series7 & open FPGA makers on limited budget. Augments openXC7 CI/CD, challenging its timing-savvy. Promotes the lesser-known EU boards.
https://nlnet.nl/project/TISG
BSD 3-Clause "New" or "Revised" License
25 stars 5 forks source link

Pinout inconsistencies and Debayer module #4

Closed Juninho99 closed 2 weeks ago

Juninho99 commented 6 months ago

Overview: While working with the TEB0707-02 FPGA Carrier Card and integrating the debayer module for raw to BGR conversion, our team encountered pinout inconsistencies across CRUVI sites and different board versions. These inconsistencies necessitate creating different builds for each board version and incorporating RTL inverters to accommodate the variations in P and N assignments for differential pins. This issue aims to address the pinout inconsistencies, understand the implications of board version differences, and adapt the debayer module accordingly.

Background: The debayer module is responsible for converting raw image data captured by the camera into BGR (Blue-Green-Red) format (Debayer), following the primary color filter arrangement of the image sensor (page 89 IMX219). The module utilizes line buffering to process raw lines and generate BGR pixels, which are then sent to the FIFO buffer for further processing and transmission.

Pinout Inconsistencies: The CRUVI FPGA Carrier Card exhibits pinout inconsistencies across CRUVI sites and different board versions, posing challenges for hardware integration and RTL design. Despite efforts to manage these inconsistencies through RTL inverters, the variations in P and N assignments for differential pins necessitate creating separate builds for each board version.

Manufacturer Response: The manufacturer acknowledges the pinout inconsistencies and explains that variations in P and N assignments for differential pins are inherent to the design of the 4x5 System on Modules (SoMs) and are mirrored in the baseboard. The flexibility in P/N mapping aims to optimize routing and accommodate different board configurations.

Debayer Module Adaptation: In light of the pinout inconsistencies and board version differences, the debayer module requires adaptation to ensure compatibility across different CRUVI FPGA Carrier Card versions. Additionally, considerations for converting BGR format to other color spaces (e.g., RGB, HSV, XYZ) may be explored to enhance flexibility and compatibility with diverse applications.

Next Steps:

chili-chips-ba commented 5 months ago

Validate whether this issue in Trenz hardware is sufficiently addresses by DINVERT parameter in top_pkg.sv. Consider closing if so.

Juninho99 commented 5 months ago

After we validate on the hardware that everything is fine, then we will close this issue.

chili-chips-ba commented 2 months ago

@Juninho99 given that this bug was fixed long time ago, please consider closing the ticket.

Juninho99 commented 2 weeks ago

Everything was tested on 2-lane and 4-lane camera sensor, and DINVERT did its job successfully. Issue can be closed.