Part Number:DS90UB941AS-Q1
<941 bring up guide.pdf>给出的 DSI 时钟频率与视频 PCLK 之间的转换按如下公式:
f_PCLK = (f_DSI*N_Lanes)/12
但是SOC在配置DSI CLK时一般为了一些blanking会对计算出的clk*1.2, 如下例所示:
timing: h_active=1920, hbp=32, hfp=48, hsw=48, v_hactive=720, vbp=4, vfp=4, vsw=8
pixel clk=(1920+32+48+48)*(720+4+4+8)*60=91Mhz
soc配置dsi clk(4LANE)时=pixel clk*3*1.2=328Mhz
这个时候soc这边dsi clk=328Mhz, 然后按<941 bring up guide.pdf>中的公式计算941那边的f_PCLK=(328*4)/12=109Mhz与91Mhz相差很多
这种以哪个为准?
Kailyn Chen:
您好,首先 f_PCLK = (f_DSI*N_Lanes)/12中的12是M/N =1/3,所以公式其实为:
fPCLK = (fDSI*NLanes*M)/(4*N)
这个公式是PCLK和DSI cloc'k的关系,是根据PCLK来确定DSI频率大小,从而保证Soc输出相应的时钟频率作为DSI clock。
也就是说您上面提到的328Mhz应该是根据f_DSI=f_PCLK*12/lanes来计算。
Peifeng Shi 说:
timing: h_active=1920, hbp=32, hfp=48, hsw=48, v_hactive=720, vbp=4, vfp=4, vsw=8
pixel clk=(1920+32+48+48)*(720+4+4+8)*60=91Mhz
根据这个时序计算出PCLK为91MHz。这个是没有加blanking time的,通常blanking time 10%~25%范围。
如果按15% blanking time计算,91*1.15=105Mhz左右。
所以如果328Mhz是DSI clock的话,根据 f_PCLK = (f_DSI*N_Lanes)/12计算出来109Mhz和105MHz相差也不是很多。
,
Peifeng Shi:
但是屏幕实际所需的是91MHz的pixel clk, 941那边解析成105Mh的话,其他时序又是如何解析的呢?这种不是会导致实际所需的timing与941那边解析到的有区别?
,
Kailyn Chen:
这个屏幕timing: h_active=1920, hbp=32, hfp=48, hsw=48, v_hactive=720, vbp=4, vfp=4, vsw=8
实际需要的也是105Mhz(算上15%blanking time)的像素时钟。91Mhz是不加blanking time的结果。
然后再根据PCLK计算DSI clock。
如有问题,再讨论。