- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于FPGA的LED大屏幕控制系统的设计与实现
2 SDRAM乒乓式缓存的优化
传统的基于SDRAM的乒乓式缓存方案[1,2]都存在着数据读写操作复杂或者数据结构调整局限性大的缺点。结合现有方案的优点,本文提出了图2所示的SDRAM数据缓存方案。
本系统的发送卡设计目标是最大支持1 280×1 024分辨率、60 Hz刷新率的全彩数据发送,此时的像素频率为:
即本方案满足系统数据吞吐量的要求。由于两个SDRAM中存储相同数据,具有相同格式,所以SDRAM读写模块可以同时向两个SDRAM中写入或读出显示数据,这样两块SDRAM可以共用地址线,从而节省数十个FPGA IO端口,这是本方案的一大优点。同时每块SDRAM中划分了两个区,用以存放连续的两帧图像,可以根据LED显示屏的具体要求,从SDRAM中读出显示数据,满足系统灵活性的要求。
3 反γ校正与灰度级调节
特定条件下创建的图像在不同环境下工作时,往往会出现图像看起来显得太亮或者太暗的现象,所以LED大屏幕显示系统需要进行灵活的反γ值调节。当前反γ校正多采用基于FPGA内部ROM的查找表技术[3]。式(1)为反γ校正公式,式中默认输入图像灰度级为256,输出灰度级为G,x为输入灰度值,y为输出灰度值,γ为校正系数。要在FPGA中实现指数运算需要消耗大量逻辑单元,对于低成本要求来说是不现实的。本文提出了如图3所示的基于FPGA片内RAM、片外EEPROM和PC机软件的反γ校正技术。
在FPGA中的具体实现为:首先使用Altera自带的IP核,将3个数据宽度为16 bit、数据深度为256的双端口RAM实例化作为查找表。系统起动时,初始化模块首先从外部EEPROM中读出256个配置数据,初始化RAM查找表。初始化完成后,灰度变换模块将24 bit RGB数据分离成3个8 bit数据作为RAM地址,读出数据作为转换后的灰度值。当需要修改γ值时,通过PC机软件生成新的γ校正表,然后通过串口发送到发送卡,发送卡将数据发送至接收卡,在灰度变换模块的控制下将数据写入RAM。如果需要保存校正数据,初始化模块从RAM中读出数据写入EEPROM中。3个RAM中存放的是相同的校正数据,所以初始化模块可以同时对3个RAM进行初始化,从RAM中读出配置数据时也只需要其中一个RAM中的值。本方法结合PC机软件可以实现1~5的γ值连续调节和1~16的灰度级连续调节。
作者:文华武 汪 涛 来源:电子技术应用
上一篇:数据中心综合布线产品选型攻略介绍
下一篇:铜包铝电缆的特性及应用浅析