公式(1)中,P为视频总像素数量,B为每个像素的色彩深度,R为刷新周期。由公式(1)可以得出1080p@60Hz的视频信号的总带宽为:
1,920x1,01 8x30bit=3.8Gbps
DDR166 SDRAM核心工作频率仅为166Mhz,但由于DDR采用2BIT预读取技术,每个时钟周期处理2bit数据,而传统的SDRAM每周期只处理1bit数据。因此DDRSDRAM比传统的SDRAM的速度快了将近一倍,其每个I/O数据吞吐速率可达300Mhz。
根据DDRSDRAM的工作原理,可以得到计算DDRSDRAM带宽的公式(2):
公式(2)中,B为DDRSDRAM的数据位宽,为核心工作频率,由公式(2)可计算求出主频率166Mhz位宽30bit的内存的总带宽为9.9Gbps。但由于动态内存存在刷新和指令操作,实际带宽不可能达到这个数值。
对于乒乓操作而言,输入总带宽和输出总带宽必须满足下列关系:
如果和不满足公式(3)的不等式关系,那么,在实时处理中将会丢失数据包,从而造成大屏幕抖动或不能正常显示。
在本设计中,由于接入2路HDMI输入,所以输入总带宽为一路的2倍,即7.6 Gbps,显然,7.6 Gbps的两倍要远大于9.9Gbps,因此DDRSDRAM必须扩展其位宽到60bit,从而增加其数据吞吐速率。
图4. 乒乓操作
系统输入端数据处理如图4所示,两路HDMI输入采用乒乓操作,共需要4块512x30bit的RAM。每块RAM对于DDR SDRAM为256x60bit。1次向DDR SDRAM中写入512个像素的数据,可以提高内存的使用效率。
HDMIPORT持续的向RAM中写入数据,每当写满一块RAM后,发送ACK信号给DDR CTRL模块,该模块根据接收到的ACK信号,自动将RAM中的数据分配给DDR SDRAM中的相应区域,如果两个端口都没写完,则将DDR SDRAM中的数据读出,分配给后端的HDMI发送口。从而实现实时视频处理的功能。
3.2 显示的层次结构
发送卡的系统模型如图5所示,采用FPGA作为系统的处理核心,配合SDRAM 166处理1024*768*60hz的视频信号,并加入千兆以太网模块,USB转SPI总线模块,在为大屏幕传输视频信号的同时,还可以接收上位PC机的矫正系数和控制信息,并将其发送给大屏幕,同时,全双工操作的千兆网模块,还可在发送视频信号的同时,接收来自大屏幕的反馈控制信息,方便用户进行实时控制。