
用verilog编写fpga的vga显示
10页用verilog编写fpga的vga显示(z)VGA工业标准是640x480x60Hz,主要有5个信号,即三个颜色信号R/G/B、行同步信号HS和场同步信号VS它是从左上角开始一行接一行的扫描,扫描完一屏后又回到左上角扫描标准要求是场频59.94Hz,行频31469Hz,时钟频率25.175MHz这是Altera的DE2开发板上自带的演示程序可以先搜一下VGA工业标准的时序图,再看这个代码就会很简单,就不注释了弄清楚行同步、场同步、前肩、后肩,一切都easymodule VGA_Controller( // Host Side iRed, iGreen, iBlue, oRequest, // VGA Side oVGA_R, oVGA_G, oVGA_B, oVGA_H_SYNC, oVGA_V_SYNC, oVGA_SYNC, oVGA_BLANK, oVGA_CLOCK, // Control Signal iCLK, iRST_N );`include "VGA_Param.h"// Host Sideinput [9:0] iRed;input [9:0] iGreen;input [9:0] iBlue;output reg oRequest;// VGA Sideoutput [9:0] oVGA_R;output [9:0] oVGA_G;output [9:0] oVGA_B;output reg oVGA_H_SYNC;output reg oVGA_V_SYNC;output oVGA_SYNC;output oVGA_BLANK;output oVGA_CLOCK;// Control Signalinput iCLK;input iRST_N;// Internal Registers and Wiresreg [9:0] H_Cont;reg [9:0] V_Cont;reg [9:0] Cur_Color_R;reg [9:0] Cur_Color_G;reg [9:0] Cur_Color_B;wire mCursor_EN;wire mRed_EN;wire mGreen_EN;wire mBlue_EN;assign oVGA_BLANK = oVGA_H_SYNC & oVGA_V_SYNC;assign oVGA_SYNC = 1'b0;assign oVGA_CLOCK = iCLK;assign oVGA_R = ( H_Cont>=X_START && H_Cont 在 FPGA 的设计中可以使用很少的资源,就产生 VGA 各种控制信号这个示例在 RHicSP2200B FPGA 开发板/学习板上使用 VGA 接口在显示器上显示了文字以及简单的图形,可以作为VGA 显示设计的参考.显示器术语像素与分辨率 显示器的显示方式有两种 : 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 早期的显示器频率固定现在流行的多 屏显示器采用自动跟踪技术,使显示器的扫描频率自动与显示卡的输出同步,达到较宽 的适用范围显示卡术语 一个像素点可有多种颜色,由表示该像素的二进位数(又称像素的位宽)决定像 素位宽为 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去处理,降低了显示速度现在多数显示卡上都。