Giter Club home page Giter Club logo

core_dvi_framebuffer's Introduction

Minimal DVI / HDMI Framebuffer

Github: https://github.com/ultraembedded/core_dvi_framebuffer

This component allows the addition of a DVI/HDMI output to your FPGA project.
The IP fetches pixel data from an external AXI-4 memory target and converts to a TMDS suitable for driving DVI or HDMI (DVI mode) outputs from a FPGA.

Block Diagram

Based around Mike Field's TMDS encoder code.

Features

  • HDMI / DVI TMDS output.
  • RGB565 input format.
  • AXI-4 bus master with burst support.
  • 4KB pixel data prefetch FIFO (which map to BlockRAMs in Xilinx FPGAs).
  • AXI-4 Lite register interface with programmable framebuffer fetch address, enable, interrupt control.
  • Start of frame interrupt output.
  • Configurable display resolution (640x480, 800x600, 1280x720, 1920x1080).
  • Works with the Linux 'simple-framebuffer' driver.

Interfaces

Name Description
clk_i Clock input - must be suitable for the configured res/refresh rate.
clk_x5_i Clock input x 5.
rst_i Async reset, active-high.
cfg_* AXI-4 Lite configuration port (optional if VIDEO_ENABLE=1).
outport_* AXI4 master interface for pixel fetch data.
intr_o Active high interrupt output (single cycle strobe).

Params

Name Default Description
VIDEO_WIDTH 800 Display resolution (H).
VIDEO_HEIGHT 600 Display resolution (V).
VIDEO_REFRESH 72 Display refresh rate.
VIDEO_ENABLE 1 Pixel fetch enable after reset (changeable via AXI-4L regif).
VIDEO_FB_RAM 32'h3000000 Framebuffer base address (changeable via AXI-4L regif).

Linux Framebuffer

Example Linux DTS configuration with the framebuffer located @ 0x300_0000 and 800x600 display resolution;

    framebuffer {
      compatible = "simple-framebuffer";
      reg = <0x3000000 (800 * 600 * 2)>;
      width = <800>;
      height = <600>;
      stride = <(800 * 2)>;
      format = "r5g6b5";
    }; 

Testing

Tested on a Xilinx Artix 7 (Digilent Arty A7) with Dell U2515 monitor and a LG LCD TV with various resolutions. Used with the Linux Kernel 'simple-framebuffer' driver.

References

core_dvi_framebuffer's People

Contributors

ultraembedded avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.