EDA设计基础实验课程论文Word格式.docx

上传人:b****7 文档编号:22197671 上传时间:2023-02-03 格式:DOCX 页数:29 大小:685.60KB
下载 相关 举报
EDA设计基础实验课程论文Word格式.docx_第1页
第1页 / 共29页
EDA设计基础实验课程论文Word格式.docx_第2页
第2页 / 共29页
EDA设计基础实验课程论文Word格式.docx_第3页
第3页 / 共29页
EDA设计基础实验课程论文Word格式.docx_第4页
第4页 / 共29页
EDA设计基础实验课程论文Word格式.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

EDA设计基础实验课程论文Word格式.docx

《EDA设计基础实验课程论文Word格式.docx》由会员分享,可在线阅读,更多相关《EDA设计基础实验课程论文Word格式.docx(29页珍藏版)》请在冰豆网上搜索。

EDA设计基础实验课程论文Word格式.docx

2.2硬件电路实现12

2.3软件实现13

2.4设计方案16

第三章VGA显示调试与显示17

3.1软件程序设计17

3.2程序在QuartusⅡ下的编译与仿真22

3.3总结25

第四章学习心得26

参考文献27

在电子电路领域中,设计自动化工具已经被广大电子工程师所接受,它必将取代人工设计方法并成为主要的设计手段。

目前,Verilog语言已经成为各家EDA工具和集成电路厂商认同和共同推广的标准化硬件描述语言,随着科学技术的迅猛发展,电子工业界经历了巨大的飞跃。

集成电路的设计正朝着速度快、性能高、容量大、体积小和微功耗的方向发展,这种发展必将导致集成电路的设计规模日益增大。

该实训的设计是用Verilog语言硬件描述语言设计出一个VGA图象显示控制器,用Verilog硬件描述语言进行编程,把Verilog语言描述的VGA图象显示控制器所需的程序在QuartusⅡ软件环境下进行模拟仿真,以此来验证所设计的结果是否满足设计的要求。

在结果符合要求的情况下把Verilog程序下载到FPGA器件上,利用FPGA器件内部存储器存储所需要的数据,再通过VGA接口输出到显示器上,从而达到设计的要求。

VGA显示器因为其输出信息量大,输出形式多样等特点已经成为现在大多数设计的常用输出设备,FPGA以其结构的优势可以使用很少的资源产生VGA的各种控制信号。

第一章VGA显示概述

CRT显示器作为一种通用型显示设备,如今已广泛应用于我们的工作和生活中。

与嵌入式系统中常用的显示器件相比,它具有显示面积大、色彩丰富、承载信息量大、接口简单等优点,如果将其应用到嵌入式系统中,可以显著提升产品的视觉效果。

如今随着液晶显示器的出现,越来越多的数字产品开始使用液晶作为显示终端。

但基于VGA标准的显示器仍是目前普及率最高的显示器[1]。

若驱动此类显示器,需要很高的扫面频率,以及极短的处理时间,正是由于这些特点,所以可以用FPGA来实现对VGA显示器的驱动。

本次专业课程设计即选用FPGA来实现VGA的显示[1-2]。

随着FPGA的不断发展及其价格的不断下降,FPGA的可编程逻辑设计的应用优势逐渐显现出来。

现在,越来越多的嵌入式系统选择了基于FPGA的设计方案。

在基于FPGA的大规模嵌入式系统设计中,为实现VGA显示功能,既可以使用专用的VGA接口芯片如SPX7111A等,也可以设计和使用基于FPGA的VGA接口软核。

虽然使用VGA专用芯片具有更稳定的VGA时序和更多的显示模式可供选择等优点,但设计和使用VGA接口软核更具有以下优势:

(1)使用芯片更少,节省板上资源,减小布线难度;

(2)当进行高速数据传输时,具有更小的高频噪声干扰;

(3)FPGA(现场可编程门阵列)设计VGA接口可以将要显示的数据直接送到显示器,节省了计算机的处理过程,加快了数据的处理速度,节约了硬件成本[3]。

1.1VGA显示的发展状况

显示绘图阵列(videographicarray,VGA)接口,他作为一种标准的显示接口得到了广泛的应用。

VGA接口大多应用在显示器与显卡之间;

同时还可以用用在擦二色等离子电视输入图像的模数转换上;

VGA接口同样也是LCD液晶显示设备的标准接口。

可编程逻辑器件随着微电子制造工艺的发展取得了长足的进步。

早期的器件只能存储少量的数据,完成简单的逻辑功能;

发展到现在,可以完成复杂的逻辑功能,速度更块,规模更大,功耗更低。

目前可编程逻辑器件主要有两大类:

复杂可编程逻辑器件(complexprogrammablelogicdevice,CPLD)和现场可编程逻辑器件(filedprogrammablegatearray,FPGA)。

VGA(VideoGraphaelicsArray)是IBM在1987年随PS/2机一起推出的一种视频传输标准,具有分辨率高、显示速度快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用。

FPGA的运行速度块,管脚资源丰富,容易实现大规模的系统设计,有大量的软核可用,便于进行二次开发。

另外,由于FPGA具有可重构能力、抗看绍兴强等特点,因此,FPGA在工业控制等领域越来越受到重视[4]。

利用FPGA完成VGA显示控制,可以使图像的显示脱离PC机的控制,形成体积小、功耗低的格式嵌入式系统(便携式设备或手持设备),应用于地面勘测、性能检测等方面,具有重要的现实意义。

显示器因为其输出信息量大,输出形式多样等特点已经成为现在大多数设计的常用输出设备。

在FPGA的设计中可以使用很少的资源,就产生VGA各种信号。

为了通过VGA端口连接显示器显示前端采集到的图像数据,本课题在21EDA—AlteraFPGA开发板上使用VGA接口在显示器上显示彩条及简单的图形,可以作为整个采集系统显示设计的参考,具有一定的实用价值[5]。

1.2VGA显示接口

VGA接口负责向显示器输出相应的显示信号。

VGA接口是一种D型接口,上面共有15个针孔,非对称地分成3排,每排5个,其排列及接口定义如图1.1所示。

图1.1VGA接口图

在基于FPGA的VGA控制中,只需要考虑行同步信号(Hs)、场同步信号(Vs)、蓝基色(R)、绿基色(G)、红基色(B)这5个信号。

如果能从FPGA发出这5个信号到VGA接口,就可以实现对VGA的控制[6]。

1.3VGA显示的原理

VGA显示图像原理:

常见的彩色显示器,一般由CRT(阴极射线管)构成。

彩色是有R,G.B(红:

RED,绿:

GREEN,蓝:

BLUE)三基色组成。

显示是用逐行扫描的方式解决,阴极射线枪发出电子束打在涂有银光粉的荧光屏幕上,产生R,G,B三基色,合成一个彩色像素[7-8]。

扫描从屏幕的左上方开始,从左到右,从上到下,进行扫描,每扫完一行,电子束回到屏幕的左边下一行的起始位置,在这期间,CRT对电子束进行消隐,每行结束时,用行同步信号进行同步,扫描完所有行,用场同步信号进行场同步,并使扫描回到屏幕的左上方,同时进行场消隐,预备下一场的扫描。

它的行场扫描时序示意图1.2所示。

现以正极性为例,说明CRT的工作过程:

R、G、B为正极性信号,即高电平有效。

当VS=0,HS=0时,CRT显示的内容为亮的过程,即正向扫描过程约为26us。

当一行扫描完毕,行同步HS=1,约需6us,期间,CRT扫描产生消隐,电子束回到CRT的左边下一行的起始位置(X=0,Y=1);

当扫描完480行后,CRT的场同步VS=1,产生场同步是扫描线回到CRT的第一行第一列(C=0,Y=0处,约为两个行周期)。

HS和VS的时序图。

T1为行同步消隐(约为6us);

T2为行显示时间(约为26us),T3为场同步消隐(两行周期);

T4为场显示时间(480行周期)。

图1.2行场扫描示示意图

1.4VGA标准

1.4.1VGA文字模式

标准的VGA文字模式使用80×

25或40×

25个字母或数字组成的平面。

每个字符的块状区域可以选择16种前景色和8种背景色;

8种背景色来自bit容量较低的集合(以今天的标准来说,例如ffffff或者是000000)。

而字符本身也可设定是否闪烁,而字符的闪烁动作都是同时的。

画面的闪烁功能和选择背景颜色的功能是可交换的,换句话说两者只能择一。

以上这些选项和IBM先前生产的CGA转换器是相同的。

VGA虽然支援黑白和彩色的文字模式,但黑白模式很少使用。

大多的VGA在显示黑白模式时使用彩色模式,即是将灰色字画在黑色背景上。

而使用VGA的单色显示器也能很好的支援这样的彩色模式。

现代显示器和显卡若连接不当,偶尔会导致显卡的VGA部份侦测显示器为单色的,而这将使BIOS开机显示为黑白模式。

通常在加载操作系统和适当的驱动程式以后,显卡的设定被覆盖,显示器就会变回彩色。

在彩色的文字模式中,每个字符其实由两个byte代表。

较低的一个byte用来显示字符,而较高的byte就用来代表彩色、闪烁等等属性。

这种成对的byte模式是从CGA就一直传续下来的。

1.4.2VGA色版

VGA的色彩系统可以向前相容于EGA和CGA转换器,而它在其上又新增了一种设定。

CGA可以显示16种色彩,EGA则将其扩充成从64种颜色色版选出的16色模式(即红绿蓝各2bits)。

VGA则更将其扩充成256种颜色色版,但为了向前相容,一次只能选择256种之中的64种(例如第一个64种颜色集合、第二个…)。

所以一个。

它们也不相容于较老旧的显示器,将造成诸如overscan、闪烁、垂直滚动、缺乏水平同步等等缺点。

因为如此,多数的商业软件使用的VGA调适都限制在显示器的“安全界线”之下,例如320×

400(双倍分辨率,2videopages)、320×

240(方形像素,3videopages)和360x480(最高的相容分辨率,1videopage)。

1.4.3VGA显示标准

VGA(VideoGraphicsArray)是IBM于1987年提出的一个使用模拟信号的电脑显示标准,这个标准已对于现今的个人电脑市场已经十分过时。

即使如此,VGA仍然是最多制造商所共同支持的一个低标准,个人电脑在加载自己的独特驱动程式之前,都必须支持VGA的标准。

例如,微软Windows系列产品的开机画面仍然使用VGA显示模式,这也说明其分辨率和载色数的不足。

VGA这个术语常常不论其图形装置,而直接用于指称640×

480的分辨率。

VGA装置可以同时储存4个完整的EGA色版,并且它们之间可以快速转换,在画面上看起来就像是即时的变色。

除了扩充为256色的EGA式色版,这256种色彩其实可以透过VGADAC(Digital-to-analogconverter),任意的指定为任何一种颜色。

这就程度上改变了原本EGA的色版规则,因为原本在EGA上,这只是一个让程式可以在每个频道(即红绿蓝)在2bit以下选择最多种颜色的方式。

但在VGA下它只是简单的64种颜色一组的表格,每一种都可以单独改变——例如EGA颜色的首两个bit代表红色的数量,在VGA中就不一定如此了。

VGA在指定色版颜色时,一个颜色频道有6个bit,红、绿、蓝各有64种不同的变化,因此总共有262,144种颜色。

在这其中的任何256种颜色可以被选为色版颜色(而这256种的任何16种可以用来显示CGA模式的色彩)。

这个方法最终仍然使了VGA模式在显示EGA和CGA模式时,能够使用前所未有的色彩,因为VGA是使用模拟的方式来绘出EGA和CGA画面。

提供一个色版转换的例子:

要把文字模式的字符颜色设定为暗红色,暗红色就必须是CGA16色集合中的一种颜色(譬如说,取代CGA默认的7号灰色),这个7号位置将被指定为EGA色版中的42号,然后VGADAC将EGA#42指定为暗红色。

则画面上的原本的CGA七号灰色,都会变成暗红色。

这个技巧在256色的VGADOS游戏中,常常被用来表示加载游戏的淡入淡出画面。

总结来说,CGA和EGA同时只能显示16种色彩,而VGA因为使用了Mode13h而可以一次显示256色版中的所有色彩,而这256种颜色又是从262,144种颜色中挑出的。

VGA显示模式

VGA最早指的是显示器640X480这种显示模式,VGA的英文全称是VideoGraphicArray,也叫显示绘图阵列。

VGA支持在640X480的较高分辨率下同时显示16种色彩或256种灰度,同时在320X240分辨率下可以同时显示256种颜色。

在VGA基础上加以扩充,使其支持更高分辨率如800X600或1024X768,这些扩充的模式就称之为VESA(VideoElectronicsStandardsAssociation,视频电子标准协会)的SuperVGA模式,简称SVGA,现在的显卡和显示器都支持SVGA模式VGA接口就是显卡上输出模拟信号的接口,也叫D-Sub接口,传输红、绿、蓝模拟信号以及同步信号(水平和垂直信号)。

1.5FPGA简介

FPGA采用了逻辑单元阵列LCA(LogicCellArray)这样一个概念,内部包括可配置逻辑模块CLB(ConfigurableLogicBlock)、输出输入模块IOB(InputOutputBlock)和内部连线(Interconnect)三个部分[9]。

FPGA的基本特点主要有:

  1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。

  2)FPGA可做其它全定制或半定制ASIC电路的中试样片。

  3)FPGA内部有丰富的触发器和I/O引脚。

  4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。

  5)FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。

可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。

FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程[10]。

用户可以根据不同的配置模式,采用不同的编程方式。

加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。

掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。

FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。

当需要修改FPGA功能时,只需换一片EPROM即可。

这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。

因此,FPGA的使用非常灵活。

FPGA(FiledProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。

它是作为专用集成电路(ASIC)领域中的一种半订制电路而出现的,既解决了订制电路的不足,又克服了原有可编程器件门电路数有限的缺点[11]。

FPGA的工作机理基于查找(Look-Up-Table,LUT),LUT其实就是一个RAM。

目前很多FPGA中多使用4输入的LUT,所以每一个LUT可以看成一个有4位地址线、大小位16×

1的RAM、当用户通过HDL语言描述了一个逻辑电路以后,FPGA的开发软件会自动计算逻辑电路所有可能的结果,并事先把计算好的结果记入RAM中[12-14]。

这样,每当有信号输入需要进行逻辑运算时,不必再用门去搭电路了,只要把输入作为一个地址进行查表,找出对应地址所存储的内容,然后输出即可。

图1.3所示位一个4输入与门的LUT实现。

这个例子很简单,只需要一个LUT就可以完成。

对于一个LUT无法完成的电路,则需要通过进行逻辑信号将多个单元相连,这样FPGA就可以实现复杂的逻辑了。

图1.3LUT原理图

FPGA采用了逻辑单元阵列LCA(LogicCellArray)这样一个新概念,内部包括可配置逻辑模块CLB(ConfigurableLogicBlock)、输入输出模块IOB(InputOutputBlock)和内部连线(Interconnect)三个部分[13]。

图1.4和图1.5是一般FPGA的结构图和结构示意图。

图1.4FPGA结构

图1.5FPGA结构示意图

因为LUT主要适合于SRAM工艺生产,所以目前大部分FPGA都是基于SRAM工艺的,而SRAM工艺的芯片在掉电后信息就会丢失,必须外加一片专用配置芯片,可以是EPROM芯片。

在加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。

FPGA的编程无须专用的FPGA编程器,只需通用的EPROM、PROM编程器即可。

由于配置时间很短,因而不会影响系统正常工作。

当然也有少数FPGA采用反熔丝或FLASH工艺,对这种FPGA就不需要外加专用的配置芯片了。

这样,同一片PFGA,不同的编程数据可以产生不同的电路功能。

因此,FPGA的使用非常灵活[14]。

随着的不断发展以及用户需求的不断提出,FPGA的技术也在不断地发展。

随着工艺和数字电路技术的不断进步,FPGA芯片的集成度会更高,功能会更强,速度会更快,功耗会更低。

1.6Quartus

软件概述

QuartusII软件是Altera公司最新版本的EDA开发软件,支持APEX系列、Cyclone系列、Stratix系列和Excalibur系列等新型系列器件的开发。

QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(AlteraHardwareDescriptionLanguage)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。

含有工作组计算、集成逻辑分析仪、EDA工具集成、多过程支持、增强重编译和IP集成等特性。

支持百万门级的设计,支持高速I/O设计,具有更强的设计能力和更快的编译速度。

QuartusII开发软件为可编程片上系统(SOPC)设计提供了一个完整的设计环境。

无论是使用个人电脑、NUIX或Linux工作站,QuartusII都提供了方便设计、快速编译处理以及编程功能[15-16]。

QuartusII输入的设计过程可分为创建工程、输入文件、项目编译、项目校验和编程下载等几个步骤。

QuartusII可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。

具有运行速度快,界面统一,功能集中,易学易用等特点。

QuartusII支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。

对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。

此外,QuartusII通过和DSPBuilder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;

支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。

MaxplusII作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。

目前Altera已经停止了对MaxplusII的更新支持,QuartusII与之相比不仅仅是支持器件类型的丰富和图形界面的改变。

Altera在QuartusII中包含了许多诸如SignalTapII、ChipEditor和RTLViewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承了MaxplusII友好的图形界面及简便的使用方法。

AlteraQuartusII作为一种可编程逻辑的设计环境,由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。

图1.6是QUARTUSII的界面。

图1.6是QUARTUSII的界面

第二章显示控制实现技术

2.1研究的基本内容

此设计要实现某一分辨率下(如640*480@60Hz)的VGA显示驱动,能简单显示彩条、图像等。

此程序使用Verilog语言进行描述,VerilogHDL是目前应用最为广泛的硬件描述语言.VerilogHDL可以用来进行各种层次的逻辑设计,也可以进行数字系统的逻辑综合,仿真验证和时序分析等。

VerilogHDL适合算法级,寄存器级,逻辑级,门级和版图级等各个层次的设计和描述.VerilogHDL进行设计最大的优点是其工艺无关性.这使得工程师在功能设计,逻辑验证阶段可以不必过多考虑门级及工艺实现的具体细节,只需根据系统设计的要求施加不同的约束条件,即可设计出实际电路.VerilogHDL是一种硬件描述语言(hardwaredescriptionlanguage),为了制作数字电路而用来描述FPGA的设计之用[17]。

1.熟悉VGA工作原理及VGA接口协议、工作时序。

2.计算出合适的时序,并对原始时钟进行分频处理以获取符合时序要求的各频率。

3.须要显示的图像等可存储于外部存储器,运行时,从外部存储器读取显示数据。

显示控制器是一个较大的数字系统,采用模块化设计原则、借鉴自顶向下的程序设计思想,进行功能分离并按层次设计。

利用Verilog硬件描述语言对每个功能模块进行描述,并逐一对每个功能模块进行编译仿真,使顶层VGA显示控制器的模块实体仿真综合得以顺利通过[18]。

VGA显示控制器主要由以下模块组成:

分频模块、VGA时序控制器模块、彩条图形生成模块、VGA显示模块、存储模块等,如下图2.1所示。

图2.1基于FPGA的VGA显示控制系统

2.2硬件电路实现

VGA的图形模式分为3类:

CGA、EGA兼容的图形模式;

标准的VGA图形模式;

VGA扩展图形模式。

后两种图形模式统称为VGA图形模式[19-20]。

本研究基于标准VGA模式来实现。

常见的彩色显示器一般都是由CRT(阴极射线管)构成,每一个像素的色彩由红、绿、蓝三基色构成。

显示时采用的是逐行扫描的方式。

VGA显示模块产生的由水平同步信号和垂直同步信号控制阴极射线管中的电子枪产生电子束,轰击涂有荧光粉的屏幕,产生红、绿、蓝三基色,于显示屏上合成一个彩色像素点。

图2.2表示的是VGA显示模块与CRT显示器的控制框图。

图2.2VGA显示模块与CRT显示器的控制框图

电子束扫描一幅屏幕图像上的各个点的过程称为屏幕扫描。

现在显示器都是通过光栅扫描方式来进行屏幕扫描。

在光栅扫描方式下,电子束按照固定的路径扫过整个屏幕,在扫描过程中通过电子束的通断强弱来控制电子束所经过的每个点是否显示或显示的颜色[21]。

电子枪在VGA显示模块产生的行同步、场同步等控制信号的作用下进行包括水平扫描、水平回扫、垂直扫描、垂直回扫等过程。

光栅扫描的路径通常为:

从上到下扫过每一行,在每一行中从左到右地进行扫描。

其过程如下:

电子束从屏幕左上角开始向右扫,当到达屏幕的右边缘时,电子束关闭(水平消隐),并快速返回屏幕左边缘(水平回扫),然后在下一条扫描线上开始新的一次水平扫描。

一旦所有的水平扫描均告完成,电子束在屏幕的右下角结束并关闭(垂直消隐),然后迅速返回到屏幕的左上角(垂直

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 金融投资

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1