Kintex 7 MIPI DSI 6.9” LCD Driver IC “GC9702P”
If this project is constructive, welcome to donate a drink to PayPal.
or
paypal.me/briansune
More MIPI DSI LCD examples
Please visit FPGA-LCD-MIPI-or-DPI or FPGA-TFT-MIPI-or-DPI
Background
In the past, many Xilinx FPGA developers and users wanted to utilize the “MIPI DSI TX Controller Subsystem” IP.
Unfortunately, due to the absence of LPDT, users were unable to initialize the LCD/TFT display. Hence, the usefulness of this built-in Vivado IP was highly limited.
In this project, a novel, ultra-low-resource, Verilog-based HDL design has been developed to address this niche need.
This design requires neither a softcore nor a hardcore (using only pure FSM + LUT), significantly reducing complexity.
Additionally, the design is independent of Vivado IP (excluding inherent FPGA building blocks) and does not require a DPHY IP either.
Known Issue
Issue: According to datasheet GC9702P it is said to be supported 16-bit RGB 0Eh.
After implementation, LCD is not correctly display missing color and area is wrong.
ToDo: Investigate with LCD vendor - 🟢 DONE
No matter it is from this DUT LCD vendor nor same model and other vendors.
All “GC9702P” are claimed as not test on 16bit color space.
Many vendors are not even understanding MIPI-DSI 1.0 or above standard.
Not fix is currently applied as this LCD driver is inherently questionable on DT=0x0E.
Demonstration
Remarks: This LCD color profile is not as good as other LCD.
Test Patterns
BPP,FPS,FPGA,Lanes,I/F | Video |
---|---|
24, 60,K7,4,R-Net | ![]() |
How to obtain the design?
Please contact via EMAIL: briansune@gmail.com
How to Use?
1) Modify the Python script and convert the initialization LPDT ROM (read-only-memory) 2) Make sure the hardware is MIPI DSI supported. Xilinx FPGA please check HERE or Altera FPGA please check HERE 3) Make sure the MMCM and parameters are converged 4) Ensure the MIPI Mbps is lower than 900, which is tested on the 5.5 inch 1080p TFT 60 FPS.
Hardware
Description | EVM |
---|---|
FPGA K7-R-Net | |
6.9” LCD |
Project Resource
BPP,FPS,FPGA,Lanes | Resources |
---|---|
24,60,K7,4 | ![]() |
Project Heirachy
Remarks 1: Ultrascale+ devices and 7 series have different serialization building blocks.
Remarks 2: Ultrascale+ devices have MIPI physical interface, which no extra resistor-network or front-end ICs are needed.
Remarks 3: The only Verilog design that are changed to cope with Ultrascale+ device are the serialization and MMCM blocks.
|-mipi_init_script
| |-main.py
| |-mipi_setup_rom.mem
| |-one_lane_lcd.txt
|-mipi_phys
| |-mipi_crc.v
| |-mipi_ecc.v
| |-mipi_hs_clk_phy.v
| |-mipi_hs_phy.v
| |-mipi_lps_phy.v
|-mipi_refclks
| |-mipi_refclks.v
|-mipi_setup
| |-mipi_lpdt_setup.v
| |-mipi_reset.v
| |-mipi_setup_rom.mem
|-mipi_sim
| |-tb_mipi_setup.v
| |-tb_mipi_top.v
| |-tb_mipi_video.v
|-mipi_top.v
|-top.xdc
|-video_src
| |-mipi_long_vid_pack.v
| |-mipi_remap.v
| |-mipi_short_vid_hdr.v
| |-mipi_video_stream.v
| |-test_pattern_gen.v
| |-video_timing_ctrl.v