公式内容
公式分为两部分:
帧率公式: Frame Rate[frame/s]=(IVTPXCK frequency[Hz]×Number of IVTPX channel[channel])Total number of clock cycles[cycle/frame]\text{Frame Rate}_{\text{[frame/s]}} = \frac{(\text{IVTPXCK frequency}_{\text{[Hz]}} \times \text{Number of IVTPX channel}_{\text{[channel]}})}{\text{Total number of clock cycles}_{\text{[cycle/frame]}}}Frame Rate[frame/s]=Total number of clock cycles[cycle/frame](IVTPXCK frequency[Hz]×Number of IVTPX channel[channel])每帧时钟周期总数公式: Total number of clock cycles[cycle/frame]=FRM_LENGTH[lines]×LINE_LENGTH[cycle/line]\text{Total number of clock cycles}_{\text{[cycle/frame]}} = \text{FRM\_LENGTH}_{\text{[lines]}} \times \text{LINE\_LENGTH}_{\text{[cycle/line]}}Total number of clock cycles[cycle/frame]=FRM_LENGTH[lines]×LINE_LENGTH[cycle/line]
逐步拆解
1. 帧率公式
帧率(Frame Rate)的单位是帧每秒(frame/s),表示每秒显示的帧数。公式中的分子和分母分别代表了以下内容:
分子:
IVTPXCK frequency[Hz]×Number of IVTPX channel[channel]\text{IVTPXCK frequency}_{\text{[Hz]}} \times \text{Number of IVTPX channel}_{\text{[channel]}}IVTPXCK frequency[Hz]×Number of IVTPX channel[channel]
IVTPXCK frequency(单位:Hz):这是像素时钟频率(pixel clock frequency),表示每秒处理的像素时钟周期数。像素时钟是数字视频系统中用于同步像素数据传输的时钟信号。例如,对于1080p分辨率在60Hz刷新率下,像素时钟频率通常在148.5 MHz左右。Number of IVTPX channel(单位:channel):这是像素时钟通道的数量。某些系统中,为了提高带宽,可能使用多个并行通道来传输像素数据。比如在一些高速接口(如HDMI或DisplayPort)中,可能有多个数据通道。
分子整体表示每秒可以处理的总像素时钟周期数。
分母:
Total number of clock cycles[cycle/frame]\text{Total number of clock cycles}_{\text{[cycle/frame]}}Total number of clock cycles[cycle/frame]
这是每帧所需的总时钟周期数。换句话说,它表示一帧画面需要多少个像素时钟周期来完成传输或显示。
帧率的计算:
帧率是通过总的时钟周期频率(每秒的周期数)除以每帧需要的周期数来计算的。
Frame Rate=每秒的总时钟周期数每帧的时钟周期数\text{Frame Rate} = \frac{\text{每秒的总时钟周期数}}{\text{每帧的时钟周期数}}Frame Rate=每帧的时钟周期数每秒的总时钟周期数
2. 每帧时钟周期总数公式
分母部分进一步展开为:
Total number of clock cycles[cycle/frame]=FRM_LENGTH[lines]×LINE_LENGTH[cycle/line]\text{Total number of clock cycles}_{\text{[cycle/frame]}} = \text{FRM\_LENGTH}_{\text{[lines]}} \times \text{LINE\_LENGTH}_{\text{[cycle/line]}}Total number of clock cycles[cycle/frame]=FRM_LENGTH[lines]×LINE_LENGTH[cycle/line]
FRM_LENGTH(单位:lines):
表示一帧的总行数(frame length)。这不仅包括可见的像素行数(比如1080p的1080行),还包括不可见的垂直同步信号区域(vertical blanking interval),如垂直前肩(front porch)、垂直同步宽度(sync width)和垂直后肩(back porch)。
例如,对于1080p分辨率,实际的FRM_LENGTH可能是1125行(1080可见行 + 45行空白区域)。LINE_LENGTH(单位:cycle/line):
表示一行所需的时钟周期数(line length)。这不仅包括可见像素的宽度(比如1920像素),还包括水平同步信号区域(horizontal blanking interval),如水平前肩、水平同步宽度和水平后肩。
例如,对于1080p分辨率,LINE_LENGTH可能是2200周期(1920可见像素 + 280周期空白区域)。每帧时钟周期总数:
通过将每帧的总行数(FRM_LENGTH)乘以每行的周期数(LINE_LENGTH),得出每帧需要的总时钟周期数。
3. 综合理解
将两部分结合起来,完整的帧率公式可以展开为:
Frame Rate=(IVTPXCK frequency×Number of IVTPX channel)(FRM_LENGTH×LINE_LENGTH)\text{Frame Rate} = \frac{(\text{IVTPXCK frequency} \times \text{Number of IVTPX channel})}{(\text{FRM\_LENGTH} \times \text{LINE\_LENGTH})}Frame Rate=(FRM_LENGTH×LINE_LENGTH)(IVTPXCK frequency×Number of IVTPX channel)
意义:这个公式计算了系统在给定像素时钟频率和通道数的情况下,能够以多快的速度刷新帧(即帧率)。单位:
分子:Hz × channel = cycle/s(每秒的时钟周期数)。分母:lines × cycle/line = cycle/frame(每帧的时钟周期数)。结果:(cycle/s) ÷ (cycle/frame) = frame/s(每秒帧数)。
实际应用示例
假设我们有一个1080p60的显示系统(分辨率1920x1080,刷新率60Hz),以下是典型参数:
IVTPXCK frequency = 148.5 MHz = 148,500,000 Hz(像素时钟频率)。Number of IVTPX channel = 1(单通道传输)。FRM_LENGTH = 1125 lines(1080可见行 + 45空白行)。LINE_LENGTH = 2200 cycle/line(1920可见像素 + 280空白周期)。
计算步骤:
每帧时钟周期总数: Total number of clock cycles=1125×2200=2,475,000 cycle/frame\text{Total number of clock cycles} = 1125 \times 2200 = 2,475,000 \text{ cycle/frame}Total number of clock cycles=1125×2200=2,475,000 cycle/frame帧率: Frame Rate=148,500,000×12,475,000=60 frame/s\text{Frame Rate} = \frac{148,500,000 \times 1}{2,475,000} = 60 \text{ frame/s}Frame Rate=2,475,000148,500,000×1=60 frame/s 结果是60帧每秒,符合1080p60的标准。
适用场景
这个公式通常用于以下领域:
视频信号处理:如在显示器、电视或投影仪中计算帧率。硬件设计:在设计GPU、显示控制器或视频接口(如HDMI、DisplayPort)时,确保时钟频率和帧率匹配。协议标准:如VESA标准中定义的视频时序参数。
注意事项
空白区域的影响:FRM_LENGTH 和 LINE_LENGTH 包含了空白区域(blanking intervals),这是视频信号中不可见的同步部分,必须考虑在内。多通道传输:如果有多个IVTPX通道(如在高速接口中),需要乘以通道数以反映总带宽。时钟频率限制:像素时钟频率(IVTPXCK frequency)通常受硬件限制,过高的频率可能导致信号不稳定。