使用 FPGA 控制 VGA 显示

发布者:王大雷最新更新时间:2009-05-26 来源: 瑞芯科技关键字:FPGA  VGA 手机看文章 扫描二维码
随时随地手机看文章

      显示器因为其输出信息量大,输出形式多样等特点已经成为现在大多数设计的常用输出设备。在  FPGA  的设计中可以使用很少的资源,就产生  VGA 各种控制信号。这个示例在 RHicSP2200B  FPGA  开发板/学习板上使用  VGA  接口在显示器上显示了文字以及简单的图形,可以作为VGA 显示设计的参考,如果在使用这个例子的过程中有任何问题都可以通过 邮件  calvin_richic@yahoo.com.cn 联系作者。

      显示器术语

像素与分辨率

        显示器的显示方式有两种 : A/N(Alphabet/Number:字符/数字)显示方式 和 APA(All Point Addressable:全点寻址) 显示方式,即文本显示方式和图形显示方 式。A/N 方式已淘汰不用,目前微机都采用 APA 图形方式。

        显示器上输出的一切信息,包括数值、 文字、表格、图象、动画等等,都是由光点(即像素)构成的。组成屏幕显示画面的最小单位是像素,像素之间的最小距离为点距(Pitch)。点距越小像素密度越大,画面越 清晰。显示器的点距有 0.31mm、0.28mm、0.24mm、0.22mm 等多种。

        分辨率指整屏显示的像素的多少,是衡量显示器的一个常用指标。这同屏幕尺寸及点距密切相关,可用屏幕实际显示的尺寸与 点距相除来近似求得。点距为 0.28mm 的 15 英寸显示器,分辨率最高为 1024×768。

显示器尺寸

       显示器屏幕尺寸以对角线来度量,常用的显示器有  14、15、17、19、21  英寸等。 显示器水平方向长度与垂直方向高度之比 一般为 4:3。

扫描频率

        显示器采用光栅扫描方式,即轰击荧光屏的电子束在  CRT  屏幕上从左到右(受水 平同步信号  HSYNC  控制)、从上到下(受 垂直同步信号 VSYNC 控制)做有规律的移动。光栅扫描又分逐行扫描和隔行扫描。电子束采用光栅扫描方式,从屏幕左上角一点 开始,向右逐点进行扫描,形成一条水平线;到达最右端后,又回到下一条水平线的左 端,重复上面的过程;当电子束完成右下角一点的扫描后,形成一帧。此后,电子束又回到左上方起点,开始下一帧的扫描。这种 方法也就是常说的逐行扫描显示。

        而隔行扫描指电子束在扫描时每隔一 行扫一线,完成一屏后再返回来扫描剩下的 线,这与电视机的原理一样。隔行扫描的显示器比逐行扫描闪烁得更厉害,也会让使用者的眼睛更疲劳。目前微机所用显示器几乎都是逐行扫描。

       完成一行扫描所需时间称为水平扫描时间,其倒数称为行频率;完成一帧(整屏) 扫描所需的时间称为垂直扫描时间,其倒数为垂直扫描频率,又称刷新频率,即刷新一屏的频率。常见的有 60Hz、75Hz 等,标准 VGA 显示的场频60Hz,行频为31.5kHz。

显示带宽

       带宽则指显示器可以处理的频率范围。如果 60Hz 刷新频率的 VGA 方式,其带宽达  640×480×60=18.4MHz;70Hz  刷新频率1024×768 分辨率的 SVGA 方式,其带宽达1024×768×70=55.1MHz。

      早期的显示器频率固定。现在流行的多 屏显示器采用自动跟踪技术,使显示器的扫描频率自动与显示卡的输出同步,达到较宽 的适用范围。[page]

      显示卡术语

        一个像素点可有多种颜色,由表示该像素的二进位数(又称像素的位宽)决定。像 素位宽为  8bit,则每个像素有  28=256  种颜 色;位宽为16bit 则有 216=65536 种颜色, 位宽为  24bit  则有  224  即一千七百多万种颜色。显示卡内的D/A(数/模)转换电路将每 个像素的位宽(二进位整数)转换成对应亮度的  R、G、B(红、绿、蓝)模拟信号,控制屏幕上相应的三色荧光点发光,产生所要求的颜色。

       随着 PC 机的不断更新换代,显示控制卡(即显示适配器)的标准也不断发展。从最初的 MDA(单色显示适配器)→CGA(彩色图形显示适配器)→EGA(增强型图形适配器)→VGA(视频图形阵列适配器)。VGA 一改以前显示卡采用的数字视频信号输出,而用模拟视频信号输出,VGA  卡内的  D/A 转换器将数字信号转换为控制 R、G、B 三 原色的模拟信号,使像素色彩变化非常平滑,更适合人的视觉感受。

性能高于VGA 并与之兼容的显示适配 卡有 TVGA 和 SVGA。随着 Windows 的普及和对快速度、多色彩、高分辨率的需要, 一些厂家在  SVGA  芯片中增加更多的硬件 来支持  Windows  的加速,这类显示适配器一般被称作 AVGA(Accelerated VGA:加速VGA)。目前大多数微机上的显示卡都属于 AVGA 类型。

      显示卡主要由图形处理芯片、视频存储器及 BIOS 芯片等组成。一般 AVGA 类型显示卡的控制器由单块 AVGA 芯片充当,其中包含的图形加速控制器对提升图形功能至关重要。

      显示卡的性能主要取决于卡上使用的图形芯片。早期的图形芯片没有帧缓冲器,有关帧的操作都要由  CPU去处理,降低了显示速度。现在多数显示卡上都设置具有图形处理功能的加速芯片,可处理像 Windows类型的图形任务而减少  CPU  参与。更高级的显示卡上有协处理器,可大大减免  CPU 的处理和参与。

      利用视频存储器 VRAM 储存显示数据,可减少甚至免去访问系统主存,加快显示速度。 640×480-16色VGA显示一屏需640×480×Log216/8=154KB   显示存储器,1024×768 真彩显示一屏则需1024×768×24÷8≈2.3MB。 显示卡插在系统板的扩展槽内,通过电缆连接到机箱背面的15 针D 型插座连接器上。某些高档的主板内置了显示卡的功能。 CRT  显示器背面有一个与显示器连接好的视频电缆,电缆的末端是  15针插入式连接器,使用时将它直接插入主机机箱背面的 15孔D 型插座上即可。[page]

      VGA 时序设计

       在 VGA 中,水平同步脉冲在光栅扫描 线需要回到水平开始位置也就是屏幕的左边的时候插入,垂直同步脉冲在光栅扫描线需要回到垂直开始位置也就是屏幕的上方的时候插入。复合同步脉冲是水平同步脉冲与垂直同步信号的组合。RGB 为像素数据,在没有图像投射到屏幕时插入消隐信号,当消隐有效时,RGB 信号无效。

水平时序

        在水平时序中,包括以下几个时序参数:水平同步脉冲宽度;水平同步脉冲结束到水平门的开始之间的宽度;一个视频行可视区域的宽度;一个完整的视频行的宽度,从水平同步脉冲的开始到下一个水平同步脉冲的开始。

垂直时序

        在垂直时序与水平时序类似,包括以下几个不同的时序参数:垂直同步脉冲宽度; 垂直同步结束到垂直门的开始之间的宽度; 一个视频帧可是区域的宽度;一个完整视频帧的宽度,从垂直同步脉冲到下一个垂直同步脉冲的开始。

组合视频帧时序

        视频帧由 vlen 个视频行组成,每一行由 hlen 个像素,水平门与垂直门的“与”函数 即为可是区域,图像的其他区域为消隐区。 目前存在很多种不同VGA 模式,以下就常见的各种模式种参数进行说明,给出  VGA 模式中各种时序参数可以参考。

表 1  水平时序


 
说明:有效时间包括  6  列过扫描边界列,有些时序表将这几列加在后沿和前沿中[page]

表 2  垂直时序


说明:有效时间包括  4  行过扫描边界行,有些时序表中将这几行加在后沿和前沿中。

*当有效时间增加时,它超过了 vsync 信号的上升沿,因此前沿为-1


        在实际设计中如何通过不同的系统频率确定适当的显示模式 ? 例如在 RhicSP2200  开发板中FPGA  的系统时钟频率为  50MHz。这个时钟频率可以用来设计 显示  800X600  模式,为了显示器显示效果好,采用场频(刷新频率)75Hz,那么帧长可以确定为  666,而行总长设计为  1000  像素。

       根据以上所述,我们可以设计如Examples1类似HDL代码,使用这段代码在Valid 有效期间对RGB 中 Blue 两位赋值1,得到一个蓝色屏幕显示边界如图1 所示。

[page]

      色彩原理

        RGB  色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色 通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB  即是代表红、 绿、蓝三个通道的颜色,通过三种基本颜色亮度值从 0~255 不同产生出其他各种颜色,这种模式叫加色模式。为什么叫加色模式呢,举个例子,通常使用的电视屏幕和电脑 屏幕上的显示就是这样的模式,在没有图象时,屏幕是黑的,若R,G,B 三色亮度都为255  时混合叠加打在屏幕上时则显示成白色。就是加起来是白色的意思,叫加色模式。这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之 一。

        而与我们电脑相关的地方,就是目前的显示器大都是采用了 RGB 颜色标准,这就是为什么它对我们来说这么重要了。

       在显示器上,是通过电子枪打在屏幕的红、绿、蓝三色发光极上来产生色彩的,目前的电脑一般都能显示  32  位颜色,约有一百万种以上的颜色。如果说它所显示的颜色 还不能完全吻合自然界中的某种色彩的话,那已经几乎是我们肉眼所不能分辩出来的了。

       而  RhicSP2200  开发板系统中每一个色 彩都是使 用   2bit   来 表示的,因 此可见 RhicSP2200  系统可以出现64  种不同的颜 色。其他色彩的使用请在实际工作中更多的加以体会。

      显示

        通过以上的讲述,已经可以在计算机显示器上显示一个有颜色的区域了,在这个小节中我们再举一个简单的例子,在显示器中显示两个镶嵌的正方形,字符等显示与其类似,可以参考瑞芯科技其他设计示例。 例如我们可以在 xpos 与 ypos 的某一区间给 RGB 信号赋不同的值将得到如图2 所示的显示效果。

[page]

例子  1:使用  50MHz  时钟频率产生的 VGA 同步脉冲以及视频有效信号

module sync_gen_50m(
    rst_n,// synthesis attribute clock_buffer of rst_n is ibufg;
    clk,
    
    hsync,
    vsync,
    valid,
    x_cnt,
    y_cnt
    );
input           rst_n   ;
input           clk     ;
 
output          hsync   ;
output          vsync   ;
output          valid   ;
output  [9:0]   x_cnt   ;
output  [9:0]   y_cnt   ;
 
reg             hsync   ;
reg             vsync   ;
reg             valid   ;
reg     [9:0]   x_cnt   ;
reg     [9:0]   y_cnt   ;
 
always @ ( posedge clk or negedge rst_n )
    if ( !rst_n )
        x_cnt <= 10\'d0;
        else if ( x_cnt == 10\'d1000 )
        x_cnt <= 10\'d0;
    else
        x_cnt <= x_cnt + 1\'b1;
        
always @ ( posedge clk or negedge rst_n )
    if ( !rst_n )
        y_cnt <= 10\'d0;
        else if ( y_cnt == 10\'d665 )
        y_cnt <= 10\'d0;    
        else if ( x_cnt == 10\'d1000 )
        y_cnt <= y_cnt + 1\'b1;    
        
always @ ( posedge clk or negedge rst_n )
    if ( !rst_n )
        begin
            hsync <= 1\'b0;
            vsync <= 1\'b0;
        end
    else
        begin
            hsync <= x_cnt <= 10\'d50;
            vsync <= y_cnt <= 10\'d6;
        end    
 
always @ ( posedge clk or negedge rst_n )                     
    if ( !rst_n )
        valid <= 1\'b0;
    else
        valid <=    ( ( x_cnt > 10\'d180 ) && ( x_cnt < 10\'d980) &&
                      ( y_cnt > 10\'d35)   && ( y_cnt < 10\'d635) ); 
                    
endmodule

关键字:FPGA  VGA 引用地址:使用 FPGA 控制 VGA 显示

上一篇:ADI诠释DSP技术针对热点应用的五大竞争法宝
下一篇:用低成本FPGA解决高速存储器接口挑战

推荐阅读最新更新时间:2024-05-02 20:49

利用FPGA协处理器优化汽车信息娱乐和信息通讯系统设计
        集成了数据通信、本地服务和视频娱乐功能的高端汽车信息娱乐系统需要高性能的可编程处理技术支持,将FPGA协处理器整合进主流汽车信息通讯系统架构是最理想的解决方案。本文提出了汽车娱乐系统的要求,讨论了主流系统架构,并介绍如何将FPGA协处理器整合进硬件和软件架构以满足高性能处理要求、灵活性要求及降低成本的目标。          娱乐电子正成为豪华汽车之间差异化的主要方面,因而推动了其性能和功能的快速发展。如何折衷考虑性能、成本和灵活性要求是设计工程师面临的挑战。高端应用包括卫星收音机、后座娱乐、导航、各种类型的音频回放、语音合成和识别,以及其它新的应用。          汽车娱乐系统用的核心技术与传统的汽车应用有本质
[嵌入式]
FPGA+DSP架构的视频处理系统设计详解
  本系统采用基于FPGA与DSP协同工作进行视频处理的方案,实现视频采集、处理到传输的整个过程。   实时视频图像处理中,低层的预处理算法处理的数据量大,对处理速度要求高,但算法相对比较简单,适合于用FPGA进行硬件实现,这样能兼顾速度及灵活性。高层的处理算法结构复杂,适用于运算速度高、寻址方式灵活、通信机制强的DSP芯片宋实现。   DSP+FPGA架构的最大特点是结构灵活、有较强的通用性、适合于模块化设计,从而能够提高算法效率,同时其开发周期短、系统易于维护和升级,适合于实时视频图像处理。   系统采用模块化的设计方法,将整个系统划分为三部分:视频采集单元、视频处理单元和视频传输单元。   整个系统以FPGA作为核心控制单元
[嵌入式]
<font color='red'>FPGA</font>+DSP架构的视频处理系统设计详解
使用FPGA和IP Core实现定制缓冲管理
在通信网络系统中,流量管理的核心是缓存管理、队列管理和调度程序。本文结合使用FPGA及IP Core阐述缓存管理的结构、工作原理及设计方法。 目前硬件高速转发技术的趋势是将整个转发分成两个部分:PE(Protocol Engine,协议引擎)和TM(Traffic Management,流量管理)。其中PE完成协议处理,TM负责完成队列调度、缓存管理、流量整形、QOS等功能,TM与转发协议无关。 随着通信协议的发展及多样化,协议处理部分PE在硬件转发实现方面,普遍采用现有的商用芯片NP(Network Processor,网络处理器)来完成,流量管理部分需要根据系统的需要进行定制或采用商用芯片来完成。在很多情况下NP芯片
[应用]
认知无线电的频谱检测的FPGA实现
项目背景 项目名称:认知无线电的频谱检测 项目背景:随着无线通信需求的不断增长,可用的频谱资源越来越少,呈现日趋紧张的状况;另一方面,人们发现全球授权频段尤其是信号传播特性较好的低频段的频谱利用率极低。认知无线电技术为解决频谱利用率低的问题提供了行之有效的方法。由于认知无线电在使用空闲频段进行通信的同时不断地检测授权用户的出现,一旦检测到授权用户要使用该频段,认知无线电用户便自动退出并转移到其他空闲频段继续通信,确保在不干扰授权用户的情况下,与他们进行频谱共享。这样一来,在没有增加新频段的情况下提升了用户量,且保证授权用户和认知用户通信的可靠性,大大提高了频谱的使用效率。 项目内容:本次课题主要研究认知无线电频谱检测的FPGA实
[测试测量]
认知无线电的频谱检测的<font color='red'>FPGA</font>实现
Abaco推出VP831板卡,采用Zynq Ultrascale+
Abaco Systems日前推出下一代FPGA板卡VP831,这是3U VPX FPGA板卡,具有100G以太网,其设计符合传感器开放系统架构(SOSA)技术标准。以更低的功率和尺寸提供了更大的带宽和增强的处理能力,可以在最恶劣的环境中执行。 通过对包括Zynq Ultrascale+片上系统中的嵌入式Arm内核在内的基础技术的升级,可降低功耗,尺寸和成本,并实现先进的安全性。VP831专为在最恶劣的环境中运行而设计。它带有功能齐全的开放式支持包,可为客户提供高级参考设计示例,以简化专用IP集成并降低集成的风险。通过遵守行业标准,用户可以升级他们的系统,而无需重新设计完整的系统,包括市场上尚未提供的未来技术。 作为VP
[嵌入式]
Abaco推出VP831板卡,采用Zynq Ultrascale+
ST推出DisplayPort到VGA的单片转接器芯片
中国, 2009年1月8日 —— 数字视频芯片世界领先厂商、DisplayPort规范的主要参与者意法半导体(纽约证券交易所代码:STM)推出业内首款单片DisplayPort转VGA芯片,有助于推动DisplayPort快速成为下一代显示器的接口标准。 STDP3100可使带有DisplayPort接口的台式电脑、工作站和笔记本电脑连接到传统的模拟VGA显示器和投影机。设备厂商和终端用户将因此得到更高的使用灵活性,有助于DisplayPort作为高性能数字显示器接口的推广应用。STDP3100在单一芯片内整合DisplayPort输入端口、VGA输出和支持功能,可替代现有的多片DisplayPort转VGA解决
[家用电子]
ST推出DisplayPort到<font color='red'>VGA</font>的单片转接器芯片
新思科技助力Achronnix新一代FPGA提前数月上市
首次即成功!新思科技助力Achronnix新一代FPGA提前数月上市 新思科技近日宣布,Achronix半导体公司通过使用新思科技的设计、验证和DesignWare IP解决方案,其新一代Speedster7t FPGA成功通过首次硅验证,产品提前数月上市。Speedster7t FPGA是Achronix面向人工智能、机器学习和高带宽数据加速应用推出的创新性产品。 “Achronix的新一代7纳米Speedster7t FPGA可满足高性能应用所需的超大数据量处理需求。新思科技广泛的解决方案可帮我们将设计风险降至最低,满足了我们对于严格产品设计和精准上市时间的需求。新思科技的验证和金牌签核技术让我们的团队实现了更好的整体
[半导体设计/制造]
FPGA技术实现模拟雷达信号
前言 FPGA(现场可编程门阵列)是由掩膜可编程门阵列和PLD(可编程逻辑器件)演变而来的,并将二者的特性结合在一起,使FPGA既有掩膜可编程门阵列的高逻辑密度和通用性,又有PLD的可编程特性。FPAG技术的发展使得单个芯片上集成的逻辑门数越来越多,能实现的功能越来越复杂。它以编程方便、集成度高、速度快等特点受到电子设计人员的青睐。人们可以通过硬件编程的方法设计和开发ASIC(专用集成电路)芯片,极大地提高芯片的研制效率、降低开发费用。 通过应用FPGA技术,较好地为“某型雷达告警设备”的配套检测仪器实现了模拟雷达信号发生器ASIC芯片的设计,该芯片能够提供“某型雷达告警设备”测试过程中所需的多种典型的重频脉冲及制导信号等
[应用]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved