Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add vga module to atlys_video target #278

Closed
wants to merge 3 commits into from

Conversation

rohitk-singh
Copy link
Member

Modify atlys_video target to include VGAIn module.

Also, we now inherit BaseSoC explicitly instead of MiniSoC
Warning: might affect hdmi2eth & hdmi2usb targets which inherit CustomVideoMixerSoC class from this file(?) They seem to build fine though

Files:
    new file:   gateware/vga/__init__.py
    new file:   gateware/vga/analysis.py
    new file:   gateware/vga/datacapture.py

__init__.py:
    Implements VGAIn module which instantiates submodules
    Datacapture, FrameExtrantion and DMA, and connects them

analysis.py:
    Implements FrameExtraction module, which is reponsible
    for sof(start of frame) detection, color space conversion,
    framing(packing) and also uses async fifo to move data
    from VGA pixel clock domain to sys_clk domain

datacapture.py:
    Implements DataCapture module which is responsible for
    capturing pixel data at proper time, depending on HSYNC
    and VSYNC signals

Currently only supports 1024x768@60Hz resolution capture
Ideally should have used _connectors interface?
VGAIn modules gives VGA capture functionality to atlys. Also, we
are now inheriting BaseSoC class directly instead of MinoSoC class
because VGA signals' 3.3V logic-level conflicts with ethernet's
2.5V logic-level. MiniSoC instantiates ethernet modules so we are
bypassing it and inheriting BaseSoC class.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants