找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[嵌入式/ARM] 复杂数字视频信号处理器IP核设计

[复制链接]
admin 发表于 2013-3-27 11:08:54 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
摘 要: 关键词:数字视频处理  场序制彩色FSC  FPGA  IP核
   
       进入21世纪,硅基液晶LCoS(Liquid Crystal on Silicon)显示技术取得了长足的发展,也促进了显示器的微型化。LCoS微型显示器是一种新型的单色反射式液晶显示器件,是半导体VLSI技术和液晶技术巧妙结合的高新技术。由于其自身所具有的体积小、低功耗等独特优点,该显示器在军事和民用领域得到了广泛的应用,如蜂窝可视移动电话、袖珍式电子字典、掌上型投影仪、GPS观测器、虚拟现实、可穿戴计算机、视频游戏等,具有良好的发展前景。MD800G6是比较典型的产品,但它需要设计专门的驱动电路,而其驱动电路中必然存在复杂的视频处理电路。
     由于复杂的数字视频处理电路不但需要处理极大的数据量,处理过程复杂,而且系统工作频率高,涉及到复杂严格的时序逻辑关系,如果使用普通的集成电路或芯片,则所耗用资源非常惊人,并且有可能造成时序混乱。而EDA技术在其驱动控制设计上具有很大的优越性和灵活性[1,2,3]。为了减少系统的体积,提高系统的抗干扰能力,本文按照场序制彩色FSC(Field Sequential Color)原理和VESA标准,采用现代EDA设计方法和Verilog HDL及模块化的设计方法,设计了一个适于FPGA实现的、应用于MD800G6驱动控制器中的复杂数字视频信号处理器IP核。
   
原理分析
   
场序制彩色FSC原理

   
     FSC是一种利用灰度级显示器产生彩色图像的视频技术[4,5]。所谓场序制彩色,就是将每一帧视频数据划分为红(R)、绿(G)、蓝(B)三个并行分量,每一个分量称为一场。显示器分时按场显示,即首先显示红场,其次是绿场,最后显示蓝场。每一场显示时用相应的LED光源(分别为红光、绿光、蓝光)照射一段时间,这段时间的长短决定了彩色图像的色度。由于场刷新频率(帧频为60Hz时场频为180Hz)远高于人眼的分辨频率,从而形成了高质量的没有闪烁的彩色图像。因此场序制彩色显示技术又称为时间混色法,它在显示原理上不同于通常的空间混色法显示技术[6]。FSC技术允许的像素可以比空间混色法技术更大更亮而不影响显示效果,但对于空间三原色形成的彩色图像,如果像素太大就会影响图像质量。
     利用FSC技术可以把并行的VGA RGB信号转化为串行的序列RGB信号。其时序关系如图1所示。需要注意,利用FSC技术必须要求VGA格式同时提供每个像素的三个颜色分量。为了将VGA RGB信号转换到序列RGB信号,驱动控制电路必须能够缓存每场数据,例如显示红场数据时,绿场和蓝场数据必须暂存起来,等红场数据结束时,再把绿场数据从存储器中取出显示,依次进行。因此,必须使用大容量的RAM来暂存一帧VGA RGB信号,这个RAM不仅要求容量大,而且速度要求也很高。
   
    20121107045030170653232.gif
   
VESA视频信号标准
   
     在设计驱动控制方案之前,必须先了解来自PC主机VGA接口的VESA视频信号的时序标准。PC主机VGA接口输出的视频信号标准为VESA Version1.0,其分辨率为800×600,刷新频率为60Hz,行频37.879kHz,帧频60.317Hz,像素时钟40.000MHz,逐行扫描。标准时序如图2所示。
   
    20121107045030201903233.gif
   
     标准VGA接口(标准VESA格式)共有15个信号(DB15连接器),这里只用到RED、GREEN、BLUE三个0.7Vp-p并行模拟视频输出信号和Hsync、Vsync两个同步信号,由于这五个信号不符合MD800G6的要求,所以必须将其进行各种变换处理,转化为符合MD800G6的信号格式后,才能送入MD800G6中。因此驱动控制器的主要任务就是将来自计算机VGA口的RGB模拟视频信号数据转换成符合MD800G6要求的视频信号,将同步信号Hsync和Vsync转换成MD800G6的时序标准,换句话说,就是将标准VESA信号经过一系列变化,最终转换为MD800G6要求的视频数据格式和控制信号时序,从而使该显示器能正常工作。
     由于VESA标准的像素总数为480 000,每个像素为8位数据,采用场序制时每帧划分为三场,所以每帧的数据量为:480 000×3×8位;为了节省存储器空间,选用32位字长的SRAM,SRAM的存储深度至少为:480 000×3×8/32=360 000字,约为360 000/1 024=352K字;VESA标准的像素时钟频率是40MHz,所以系统工作频率应最小为40MHz,从而存储器的存取时间不能高于25ns。选择两片相同的SRAM,每一片存储相邻的一帧数据。将每片存储器的空间分为三个部分,分别用来存放红场、绿场和蓝场数据;存储器内的数据每隔一帧更新一次。
   
数字硬件电路总体设计方案
   
     根据原理分析,整个电路由数据处理模块和时序控制模块两大部分组成,而这两大模块又分别由三个子模块和两个子模块组成,如图3所示。
   
    20121107045030248773234.gif
   
     (1)数据打包模块:该模块的功能是在前端有效视频期间,将来自ADC的三路并行8位数字视频数据进行组合,并按R、G、B的顺序依次存入72位字长SRAM的三个区域中。因此,打包器把每9个8位单色像素数据打包成一个72位的字。为了优化存储器性能,这些72位的字首先经过一个存储深度为240个72位字的先进先出存储器(FIFO)缓存一下,然后用促发方式(burst out)送给SRAM(这240个字包括红绿蓝分量各80个字)。该模块主要由一个打包计数器和一些组合电路构成的。
     (2)数据解包模块:该模块的功能是在后端有效视频期间,将从SRAM取出的72位数据进行分解并重新组合,形成四路8位并行视频输出,如图4所示。图中的粗黑线表示不同的72位字的边界。从图中可以看出,每9个解包时钟周期就有4个72位字被解包,每个解包时钟周期有四组8位数据并行输出,这四组信号被送到场反相器。由于每个时钟周期送出的四组数据不一定是从同一个72位字中解包而来的,所以中间需要缓冲器来寄存前一个72位字的部分数据。解包器的数据不是直接来自SRAM,而是先经过一个桶形寄存器(BUCKET)缓存4个72位字,每9个时钟周期更新一次。该模块主要由一个解包计数器和一些组合电路构成。
   
    20121107045030264403235.gif
   
     (3)前端时序变换模块:该模块的主要功能是把VESA标准的两个同步信号Hsync(行同步)和Vsync(帧同步)进行处理,译码为前端有效视频控制信号及其他控制信号,并和打包器同步工作。它主要由水平像素计数器、垂直行计数器、偏移量计数器、钳位计数器及一些组合电路构成。水平像素计数器在像素时钟的上升沿加1,在行同步信号的上升沿被复位;垂直行计数器在行同步信号的上升沿加1,在帧同步信号的上升沿被复位。偏移量计数器用来确定所显示图像的位置;钳位计数器产生ADC的钳位信号。
     (4)后端时序变换模块:该模块的基本功能是根据前端时序变换器送来的帧同步控制信号,生成后端有效视频控制信号及符合微显示器时序的各个控制信号。它主要由水平像素计数器、垂直行计数器、场计数器及一些组合电路构成,这些计数器分别跟踪水平像素位置、垂直行位置和当前场的位置,并与解包器同步工作,以使视频数据与各控制信号有正确的时序关系。水平像素计数器在每一个像素时钟的上升沿加1,在每一行结束时被复位;垂直行计数器在每一行结束时加1,在每一场结束时被复位;场计数器在每一场结束时加1,在每一帧结束时被复位。
     (5)SRAM控制模块:该模块的主要功能是对打包器写SRAM请求和解包器读SRAM请求进行仲裁,并生成相应的地址信号。它包括两个部分,即存储器写控制和存储器读控制。解包器的读请求优先于打包器的写请求,因此当有存储器的读请求时,数据的猝发写SRAM应当暂停,直到读请求信号消失;这期间为了避免丢失信息,需要保存猝发数据。除了上述功能外,控制器还应该在没有读写请求时让SRAM处于休眠状态,以节省能量。
     由于每个场包括600行,每行需要92个72位字(每个字包含了9个像素点数据),所以每一场需要的存储空间为:92×600=55 200字。故SRAM的地址分配如下:
     红场区域:0~55 199;
     绿场区域:55 200~110 399;
     蓝场区域:110 400~165 599。
     ①存储器写控制:由FIFO控制、场计数器、行计数器、地址计数器、加法器及一些组合电路构成。
     ②存储器读控制:主要由地址计数器及一些组合电路构成。
仿真结果
     整个系统的工作过程必须依靠严格的逻辑时序关系来协调,否则显示器不能正常工作。本设计经过功能和时序仿真分析,完全符合要求。限于篇幅和系统的复杂性,本文只给出数据处理模块的简化时序仿真波形,如图5所示。仿真波形显示了设计的正确性和可行性。
   
    20121107045030295643236.gif
   
     本文提出了适合在FPGA上实现的复杂数字视频信号处理器IP核,给出了各模块较详细的设计,并给出了数据处理模块的仿真结果。
     本设计克服了使用普通集成电路耗用资源量大和可靠性差的缺点,大大减小了体积并提高了性能,而且修改方便,升级容易,可扩展性强,稍作修改就可以应用于不同的系统。本设计已经成功应用于可穿戴式计算机的微型显示驱动控制电路中。
参考文献
[1] 耿卫东,代永平,任立儒等.LCos序彩色显示控制器的设计[J].液晶与显示,2003,18(3):188-192.
[2] 代永平,龚卫东,孙钟林.硅基液晶显示器(LCoS)核心-显示系统芯片的设计分析[J].光电子技术,2001,21(2):79-88.
[3] DAI Y,GEN W,SUN Zhonglin,et al.Optimizing the design for microdisplay on silicon,creating IP modules
      for a new type of SOC[J].Proceedings 4th International Conference on ASIC,2001:785-788.
[4] CHUNG Y,LEE J,CHAE G.ASIC design of color sequential driver for LCOS(liquid crystal on silicon)  microdisplay devices[C].ICCE,International Conference on Consumer Electronics,2001:6-7.
[5] 代永平,孙钟林.LCoS微型显示器的时序彩色化设计[J].现代显示,2001,(3):18-23.
[6] 王明臣.彩色电视接收机原理[M].北京:人民邮电出版社,1983:10-100.
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-30 04:10 , Processed in 0.061930 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表