cancel
Showing results for 
Search instead for 
Did you mean: 

DSI + LTDC frequency ratio.

af.bulychev9
Associate II

I have display with controller ILI9881C, which controlled via mipi-dsi.

I want to use 800x800x24bit mode. How to understand what's the point to use dsi txclkex and dsi line byte frequency? and how it is correlate with ltdc frequency? in display controller dataheet i have the next description for frame rate

0690X00000ApTYiQAN.png

how can i calculate pixel timings for Horizontal Back Porch and Horizontal Front Porch? is it must be based on ltdc frequency?

13 REPLIES 13

DSI clock will be a function of pixel clock, colour depth and lanes.

LTDC clock will depend on refresh rate, and horizontal and vertical totals.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

i am sorry, but still cannot find out.

i got example from 429i-disco and datasheet for OTM8009A

0690X00000Apkf7QAB.pngand i see HBP = 34, HFP=34 in example, it is not equals to datasheet.

0690X00000ApkiQQAR.png

but i cannot understand why? LcdClk = 27429 kHz in example , i checked it in cubemx settings.  laneByteClk_kHz = 62500; /* 500 MHz / 8 = 62.5 MHz = 62500 kHz */

The datasheet gives a range of acceptable values. You need to hit the 24-30.72 MHz number at the bottom for the display to be happy.

ie 832 x 522 x 60 = 26058240

The STM32 has other constraining factors, related to your PLL clock, and the integer multipliers/dividers, etc which limit what specific numbers you can hit.

Often if you work the math backward you'll get nominally 60 Hz refresh +/- a small error.

62.5 MHz is the delivery rate for 8-bit bytes to hit the 500 Mbps lane speed limit of the DSI (250 MHz clock on the wire, with DDR, such that data clocks on both clock edges). You have to get the data off the chip at least as fast as you're generating it, up to the limit of the bus. You aren't required to max it out, which is why the 435 Mbps was quoted in your top post.

Why not start with the 800 x 800 display you're actually targeting? The 2 lane DSI giving 1 Gbps is going to constrain your refresh rate, and why the part data sheet quotes 720p @ 30Hz

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
af.bulychev9
Associate II

@Community member​ 

Why a 720p @ 30Hz in example i do not know. Controller have 800 width 0690X00000AqQUpQAN.png

I am experimenting with the next values

FrameRate = 30

PixelFormat = 24

LineN = 2

VACT = 800

VSA = 40

VBP = 100

VFP = 100

HACT = 800

HSA = 40

HFP = 247

HBP = 248

BRbps = 500000000

And calculated

UI = 2e-09

FPS = 30.010563718428887

tHFPCalc=5.928000000000001 us

tHSA + tHBP =6.912000000000001 us