《895191540基于FPGA的声场测试仪的设计论文.doc》由会员分享,可在线阅读,更多相关《895191540基于FPGA的声场测试仪的设计论文.doc(117页珍藏版)》请在三一办公上搜索。
1、基于FPGA的声场测试仪设计摘要自FPGA诞生以来,伴随着硬件描述语言的发展及器件性能的提升,FPGA运用越来越广泛,在某些领域已经取代了单片机、DSP等嵌入式设备并运用到了各种产品中。本系统以SOPC技术为核心,辅以必要的数模转换电路,以及相关的外围模拟电路,构成了一个基于SOPC技术的声场测定系统。其主要功能模块有信号处理模块、信号采集模块、VGA控制模块、锁相环模块、数据读取模块、数据转换模块。整个系统使用Quartus II和SOPC Builder软件进行设计,包括Nios II处理器、Flash接口、SDRAM接口等。采用C语言编程实现数据在片外存储器之间的传输、VGA的显示以及信
2、号采集。设计最终下载到Altera公司的Cyclone II系列FPGA中,设计灵活,调试方便。关键词:声场测试 FPGA Nios II SOPC VGA接口 位图文件结构Design of the sound field detector based on FPGAAbstractFPGA, short for Field-Programmable Gate Array, accompany with the development of hardware description language, has been applied significantly broadly.It has
3、 taken the place of singlechip 、DSP in some aspects and has been applied to various kinds of products.The center part of the system is technology of SOPC.With necessary D/A circuit and analog circuit.It constructed a sound field detector based on SOPC.Its main function blocks are VGA control block,
4、PLL block, signal pickup block,signal processing block,data reading block and data transmission. The whole system is designed in Quartus II and SOPC Builder,which contains Nios II processor, Avalon Tristate Bridge, Flash interface and SDRAM interface etc. The system uses C language to compile progra
5、m realizing data transmission between Flash and SDRAM,VGA display and signal pickup.The design is downloaded into FPGA device which belongs to the Cyclone II family of Altera. The design is very agile, and easy to debug.Key Words: Sound Field Detector FPGA Nios II SOPC VGA Interface BMP File目录1、绪论11
6、.1选题的背景和意义11.2系统功能的实现方法21.3主要的问题32、技术背景及方案选择42.1核心器件解决方案:FPGA42.1.1发展历史42.1.2行业的发展方向52.1.3 Altera的低成本FPGA52.1.4 Nios II处理器62.1.5高效的企业级开发平台Altera Complete Design Suite72.1.6 VHDL语言介绍82.1.7 C语言介绍102.1.8 VHDL与C语言的区别112.1.9 FPGA设计流程112.2显示接口及显示设备的选择:带有VGA接口的液晶显示器122.2.1显示接口的发展与种类122.2.2数字接口与模拟接口的比较142.2
7、.3选择结论:VGA接口152.3图像格式及图像处理技术152.3.1 TIFF图像格式152.3.2 PCX图像格式162.3.3 GIF图像格式162.3.4 BMP图像格式172.3.5图像处理213、设计实现273.1模拟部分电路设计273.1.1 MIC放大模块设计273.1.2比较模块设计293.2 VGA显示模块设计313.2.1 VGA接口定义313.2.1 VGA接口及外围电路设计333.2.3 ADV7123应用343.2.4 VGA显示接口原理353.2.5 VGA时序信号的产生383.3 FPGA系统设计393.3.1锁相环模块413.3.2 VGA控制模块443.4
8、Nios软核设计533.4.1图像数据553.4.2主控制程序553.4.3声音处理554、总结574.1 语音放大模块功能描述574.2 显示功能模块描述574.3 控制模块功能描述584.4 经验总结59致谢61参考文献62附录:主要程序63外文资料翻译及原文891、绪论1.1 选题的背景和意义科技因生活而改变,就像人类自生所追求的更高、更快、更强一样,IT产业也在创造着一次又一次的飞跃。电子技术的演进是科技发展的源泉,随着半导体业数十年的发展,整机制造商和半导体供应商的需求和服务都在发生着变化。从整机制造商来看,其需求层次已由器件、参考设计上升到总体解决方案,包括硬件、软件,甚至外形等工
9、业设计,这对半导体厂商提出更高的要求;另一方面,半导体供应商面临更多的挑战,包括更高的集成度、更低的功耗、更低的成本。平台解决方案的重要性和业界的接受程度日益明显。领先的半导体公司纷纷推出了各具特色的平台产品,其优势体现在强大的功能、广泛的第三方软件和硬件支持、产品的可延续性和升级性等。可靠、高效、低功耗是电子产业的永久追求,从目前一些领先的硬件制造商来看,提高效率,降低成本仍然是主要目标。可编程技术器件将与平台半导体解决方案形成更激烈的竞争态势,并促进FPGA/CPLD器件密度的进一步提高,以及面向特定应用的新型器的研发。快速的产品更新周期和不断的升级造就了可编程器件的迅速发展,对于样品阶段
10、以及一些新兴电子产品来说,将一直保持其灵活、快速的优势,而当进入快速成长和成熟期的阶段,可编程器件公司的策略是低成本可编程器件或类似ASIC的掩膜器件来进一步延伸其产品的生命周期。而这对于制造商的利益在于可以无缝地移植代码,并顺利地进入批量生产。EDA工具和半导体IP成为半导体工业发展的重要支持力量。半导体工艺向90nm以及65nm、45nm直至32nm的进程大大增加了芯片复杂度,而其它需求,如采用CMOS工艺实现模拟和射频电路、DFM、DFT等,对EDA工具提出了更高的要求。SiP是半导体厂商可以考虑的一种重要模式。与此同时,半导体IP,尤其是一些被业界广泛认同的内核,正成为快速推出IC(单
11、IP内核或多IP内核)的一条捷径。模拟器件仍然无处不在。数字家庭中的无线连接、新潮便携数码产品中的音频电路、电源管理、信号通路使模拟器件的重要性日益突显,我们看到的趋势是在数字世界中创造了更多的模拟应用,放大器、ADC/DAC、接口都是明显的例子。未来,我们应该更关注的是模拟及数字器件将如何不断融合的发展进程。可以说本次设计的声音测定系统是一个典型的数模器件充分融合的产物。1.2 系统功能的实现方法本次设计中,声音采集以及信号放大是需要模拟电路来完成的这是因为音频信号很小,要实现这么小的信号的数字化并进行处理,需要精度很高的AD转换芯片。这样整个系统的成本不得不考虑。在数字器件部分,主要是用V
12、HDL语言来实现,在后续章节中会对这门语言做简要介绍,这里将从理论方面简单介绍VHDL语言的编程思想。VHDL语言面向的对象器件是FPGA。这种语言一样有着丰富的语法,丰富的关键字,丰富的控制语句等等,虽然这种语言的语法规范是十分的严格。但是,并不是所有你写出的程序都可以运行。这和C语言大不一样。C语言编写出现问题可能会造成死循环或者是系统资源浪费,而VHDL语言则是,如果你写的程序在时序上有问题,则根本不能再器件内运行起来。想要写出优秀的VHDL程序,不但需要你对语法十分的了解,更需要你对数字逻辑电路有着丰富的知识和一定的设计经验。这也是VHDL设计门槛比较高的原因。这个方案的核心部分在于其
13、使用了Nios软核。Nios嵌入式处理器是Altera公司于2004年6月推出的第二代用于可编程逻辑器件的可配置的软核处理器,在CycloneII器件下,性能最高可达56 DMIPS。Nios是基于哈弗结构的RISC通用嵌入式处理器软核,能与用户逻辑相结合,编程至Altera的FPGA 中。处理器具有32位指令集,32位数据通道和可配置的指令以及数据缓冲。他特别为可编程逻辑进行了优化设计,也为可编程单芯片系统(SOPC)设计了一套综合解决方案。Nios处理器系列包括3种内核:高性能的快速内核(Niosf);低成本经济型内核(Niose);性能成本折中的标准内核(Nioss)。在Nios中,又使
14、用到了C语言,类似C语言这样的计算机语言,多是转化为汇编语言之后又计算机逐条的执行其中的指令。这样的执行效率不是很高,但是随着数字IC的执行效能越来越高,这种问题也被淡化。1.3 主要的问题系统设计完成后,如何能够稳定高效地工作以及完成既定的功能。在设计过程中,图像显示是一个很关键的问题。从可编程器件方面看。门阵列固然有其速度上的优势,在控制上,其强大的灵活性以及可定制性已经能够完全替代传统数字电路。在信号处理上,其强大的处理能力已经超过大部分DSP。但是对于控制VGA显示来说,大量的图像数据量、相对复杂的VGA时序控制对硬件来说是个挑战。对于个人来说,若想在显示器上显示16位图像,利用VHD
15、L描述难度太大。最终选择了嵌入Nios内核做为解决方案。2、技术背景及方案选择2.1 核心器件解决方案:FPGA2.1.1发展历史FPGA(现场可编程门阵列)与 CPLD(复杂可编程逻辑器件)都是可编程逻辑器件,它们是在PAL,GAL等逻辑器件的基础之上发展起来的。同以往的PAL,GAL等相比较,FPGACPLD的规模比较大,它可以替代几十甚至几千块通用IC芯片。自1985年Xilinx公司推出第一片FPGA至今,FPGA已经历了十几年的发展历史。在这十几年的发展过程中,以FPGA为代表的数字系统现场集成技术取得了惊人的发展:现场可编程逻辑器件从最初的1200个可利用门,发展到90年代的25万
16、个可利用门,乃至现在国际上现场可编程逻辑器件的著名厂商Altera公司、Xilinx公司早就陆续推出了数百万门的单片FPGA芯片。现在现场可编程器件的集成度已经提高到一个新的水平。纵观现场可编程逻辑器件的发展历史,其之所以具有巨大的市场吸引力,根本在于:FPGA不仅可以解决电子系统小型化、低功耗、高可靠性等问题,而且其开发周期短、开发软件投入少、芯片价格不断降低,促使FPGA越来越多地取代了ASIC的市场,特别是对小批量、多品种的产品需求,使FPGA成为首选。尤其是最近几年,FPGA的主要厂商Altera、Xilinx等不断更新优化产品架构和生产工艺,不断降低FPGA的功耗和系统成本,推出了很
17、多高性能低价位的解决方案,将市场从传统的高端通信扩展到汽车和消费类电子产品。2.1.2行业的发展方向目前,FPGA的主要发展动向是:随着大规模现场可编程逻辑器件的发展,系统设计进入片上可编程系统(SOPC)的新纪元;芯片朝着高密度、低压、低功耗方向挺进;国际各大公司都在积极扩充其IP库,以优化的资源更好的满足用户的需求,扩大市场;特别是引人注目的所谓FPGA动态可重构技术的开拓,将推动数字系统设计观念的巨大转变。在生产工艺方面,这几年来FPGA市场的飞速增长和一代代新工艺新产品的不断推出,FPGA产品的逻辑单元越来越多,性能越来越高,而单位成本和功耗却越来越低,这是因为现在FPGA厂商相继采用
18、90nm的制造工艺生产新一代的FPGA产品。先进的90nm制造工艺在物理上达到了一个新的极限,但是,克服了这一极限的挑战后,产品成熟量产,将大大降低。在高端处理方面,FPGA将挑战DSP。从本质上来讲,FPGA更象一个应用平台,的新应用层出不穷,复杂性越来越大,客户对速度、功能、效率的要求越来越高,比如集成DSP模块,同样的价格下,Altera的FPGA能够处理的接收器通道比高端的DSP处理器高几十倍以上。但相对DSP来说,它的封装及总成本仍然昂贵,想要从高端市场走入低端应用尚需时日。2.1.3 Altera的低成本FPGAAltera的主流FPGA分为两大类,一种侧重低成本应用,容量中等,性
19、能可以满足一般的逻辑设计要求,如Cyclone;还有一种侧重于高性能应用,容量大,性能能满足各类高端应用,如Startix,StratixII等,用户可以根据自己实际应用要求进行选择。 在性能可以满足的情况下,优先选择低成本器件。例如本系统所选择的Cyclone II EP2C35F672。FPGA具有灵活性和及时面市的优势,Altera的Cyclone器件系列便是在低成本FPGA中占据领导地位的,它提供了低风险和低成本的解决方案,在Quarters开发软件的支持下,它无疑是中低规模设计中最具吸引力的替代方案。也是本次设计采用的设计器件。后文将详细介绍Cyclone的详细参数及技术细节。2.1
20、.4 Nios II处理器Altera推出了Nios II系列32位RSIC嵌入式处理器。Nios II系列软核处理器是Altera的第二代FPGA嵌入式处理器,其性能超过200DMIPS,在Altera FPGA中实现仅需35美分。Altera的Stratix 、Stratix GX、 Stratix II和 Cyclone系列FPGA全面支持Nios II处理器,以后推出的FPGA器件也将支持Nios II。Nios II系列支持使用专用指令。专用指令是用户增加的硬件模块,它增加了算术逻辑单元(ALU)。用户能为系统中使用的每个Nios II处理器创建多达256个专用指令,这使得设计者能够
21、细致地调整系统硬件以满足性能目标。专用指令逻辑和本身Nios II指令相同,能够从多达两个源寄存器取值,可选择将结果写回目标寄存器。同时,Nios II系列支持60多个外设选项,开发者能够选择合适的外设,获得最合适的处理器、外设和接口组合,而不必支付根本不使用的硅片功能。 Nios II系列能够满足任何应用32位嵌入式微处理器的需要,客户可以将第一代Nios处理器设计移植到某种Nios II处理器上,Altera将长期支持现有FPGA系列上的第一代Nios处理器。另外,Altera提供了一键式移植选项,可以升级至Nios II系列。Nios II处理器也能够在HardCopy器件中实现,Alt
22、era还为基于Nios II处理器的系统提供ASIC的移植方式。Nios II处理器具有完善的软件开发套件,包括编译器、集成开发环境(IDE)、JTAG调试器、实时操作系统(RTOS)和TCP/IP协议栈。设计者能够用Altera Quartus II开发软件中的SOPC Builder系统开发工具很容易地创建专用的处理器系统,并能够根据系统的需求添加Nios II处理器核的数量。 使用Nios II软件开发工具能够为Nios II系统构建软件,即一键式自动生成适用于系统硬件的专用C/C+运行环境。Nios II集成开发环境(IDE)提供了许多软件模板,简化了项目设置。此外,Nios II开发
23、套件包括两个第三方实时操作系统(RTOS)MicroC/OS-II(Micrium),Nucleus Plus(ATI/Mentor)以及供网络应用使用的TCP/IP协议栈。 长期以来,Altera一直推行嵌入式处理器战略的原因是,随着应用的ASIC开发日益受到成本的困扰,OEM日渐转向FPGA来构建自己的系统。这些系统中绝大多数需要一个处理器,而Altera正是为设计者提供了为FPGA优化的灵活的嵌入式处理器方案,可以满足16位和32位嵌入式处理器市场的需求。在FPGA中使用软核处理器比硬核的优势在于,硬核实现没有灵活性,通常无法使用最新的技术。随着系统日益先进,基于标准处理器的方案会被淘汰
24、,而基于Nios II处理器的方案是基于HDL源码构建的,能够修改以满足新的系统需求,避免了被淘汰的命运。将处理器实现为HDL的IP核,开发者能够完全定制CPU和外设,获得恰好满足需求的处理器。2.1.5高效的企业级开发平台Altera Complete Design SuiteAhera开发了整套工具(包括SOPC Builder,Nios集成设计环境和Quartus开发软件)帮助用户加速硬件和软件的开发,实现完整的基于可编程逻辑的SOPC解决方案Quartus II 8.0是目前进行Altera的CPLD、FPGA和结构化ASIC设计的最佳软件,具有强的的功能及良好的易用性。相比较传统的
25、Max+plusII 软件和早期版本的Quarters软件,它有更好的性能表现,更多的功能,能够对CPLD和FPGA器件的最新系列进行设计。 它能够支持全系列的MAX II CPLD以及Cyclone、Stratix 和 Stratix II FPGA 以及 HardCopy结构化Asic,支持 MAX、FLEX 和 ACEX 设计。SOPC Builder是在Altera FPGA中实施IP的关键工具。该系统级工具使用Altera的MegaWizard技术自动生成Avalon的交换架构,将设计中的不同功能模块连接在一起。SOPC Builder还会生成定制软件开发工具,根据需要为由Nios处
26、理器控制的功能模块提供合适的软件头文件。Nios IDE是Nlos软核处理器的主要开发工具。他为软件开发提供了一个集成的设计开发环境,包括一个具有工程管理、源代码开发、基于JTAG调试功能的图形用户界面(GUI),大大简化了大量复杂的Nios 处理器设计。2.1.6 VHDL语言介绍VHDL的英文全名是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言 。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各E
27、DA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。VHDL主要用于描述数字系统的
28、结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。应用VHDL进行工程设计的优点是多方面的。(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最
29、佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,
30、也不必管理最终设计实现的目标器件是什么,而进行独立的设计。2.1.7 C语言介绍C语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛。主要有以下特点:1、C语言在很多方面都可以用,不仅仅是在软件开发上,各类科研都是需要用到C语言的。具体应用比如我是学硬件的,单片机以及嵌入式系统都可以用C来开发。C 语言发展如此迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的功能。特别是加入一些汇编语言子程序后,更能显示C 语言的优势。归纳起来C 语言
31、具有下列特点: C是中级语言它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。2、C是结构式语言结构式语言的显著特点是代码及数据的分隔化, 即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。C 语言是以函数形式提供给用户的, 这些函数可方便的调用, 并具有多种循环、条件语句控制程序流向, 从而使程序完全结构化。3、C语言功能齐全C 语言具有各种各样的数据类型, 并引入了指针概念, 可使程序效率更高。另外C 语言也具有强大的图形功能, 支持多种显示器
32、和驱动器。而且计算功能、逻辑判断功能也比较强大, 可以实现决策目的编游戏,编3D游戏,做数据库,做联众世界,做聊天室,做PHOTOSHOP做FLASH,做3DMAX。4、C语言适用范围大C 语言还有一个突出的优点就是适合于多种操作系统, 如DOS、UNIX,也适用于多种机型。C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它解释型高级语言,有一些大型应用软件也是用C语言编写的。C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。2.1.8 VHDL与C语言的区别vhdl是一门硬件描述语言,采
33、用的是自顶向下的设计思想,即先描述一个电路的总体功能,然后给予具体地实现。就像搭建电路一样,先给出总体框图然后分块实现。一个电路当然就有级联的和并联电路就是所谓的用“并行语句和顺序语句”来描述。而c语言目前还没有一个编译器能把它翻译为硬件描述语言,尽管Verilog有点像c所谓象是他们的设计思路有点象,具体的语法规则还是有很大差异。c语言目前几乎都是在cpu中运行所以只能按指令的形式按顺序执行下来。2.1.9 FPGA设计流程在FPGA系统设计完成前,有2个不同的阶段:设计阶段、调试和检验阶段,如图2.1所示。设计阶段的主要任务是输入、仿真和实现;调试和检验阶段的主要任务是检验设计,校正发现的
34、错误。图2. 1 FPGA设计流程图2.2 显示接口及显示设备的选择:带有VGA接口的液晶显示器VGA数据线VGA(Video Graphics Array)是IBM于1987年提出的一个使用模拟信号的电脑显示标准,这个标准已对于现今的个人电脑市场已经十分过时。即使如此,VGA仍然是最多制造商所共同支援的一个低标准,个人电脑在加载自己的独特驱动程式之前,都必须支援VGA的标准。2.2.1显示接口的发展与种类VGA接口:VGA的英文全称是Video Graphic Array,即显示绘图阵列。VGA支持在640X480的较高分辨率下同时显示16种色彩或256种灰度,同时在320X240分辨率下可
35、以同时显示256种颜色,这在当时绝对是巨大的飞跃。我们的眼球对颜色的敏感远大于分辨率,所以即使分辨率较低图像依然生动鲜明。VGA由于良好的性能迅速开始流行,厂商们纷纷在VGA基础上加以扩充,如将显存提高至1M并使其支持更高分辨率如800X600或1024X768,这些扩充的模式就称之为VESA(Video Electronics Standards Association,视频电子标准协会)的Super VGA模式,简称SVGA,现在的显卡和显示器都支持SVGA模式。不管是VGA还是SVGA,使用的连线都是15针的梯形插头,传输模拟信号。AV接口:AV接口实现了音频和视频的分离传输,这就避免了
36、因为音/视频混合干扰而导致的图像质量下降,但由于AV 接口传输的仍然是一种亮度/色度(Y/C)混合的视频信号,仍然需要显示设备对其进行亮/ 色分离和色度解码才能成像,这种先混合再分离的过程必然会造成色彩信号的损失,色度信号和亮度信号也会有很大的机会相互干扰从而影响最终输出的图像质量。AV还具有一定生命力,但由于它本身Y/C混合这一不可克服的缺点因此无法在一些追求视觉极限的场合中使用。DVI接口:DVI接口的英文全称是Digital Visual Interface,其标准是1999年由Intel、Compaq、IBM、HP、NEC、Fujitsu等公司共同组成数字显示工作组DDWG(Digit
37、al Display Working Group)推出的数字显示接口。它的基础是Silicon Image公司的Panel Link接口技术,Panel Link接口技术采用的是最小化传输差分信号(Transition Minimized Differential Signaling,TMDS)作为基本电气连接。计算机中生成的图像信息传送到显示处理单元(显卡)中,经处理并编码成数据信号,数据信号中包含了一些像素信息、同步信息以及一些控制信息,信息通过3个通道输出。同时还有一个通道用来传送使发送和接收端同步的时钟信号。每一个通道中数据以差分信号方式传输,因此每一个通道需要2根传输线。由于采用差分
38、信号传输,数据发送和接收中识别的都是压差信号,因此传输线缆长度对信号影响较小,可以实现远距离的数据传输。在接收端对接收到的数据进行解码,并处理生成图像信息供数字显示设备显示。在DVI标准中对接口的物理方式、电气指标、时钟方式、编码方式、传输方式、数据格式等进行了严格的定义和规范。HDMI接口:HDMI,英文全称是High Definition Multimedia Interface,中文名称是高清晰多媒体接口的缩写。2002年4月,日立、松下、飞利浦、索尼、汤姆逊、东芝和Silicon Image七家公司联合组成HDMI组织。HDMI能高品质地传输未经压缩的高清视频和多声道音频数据,最高数据
39、传输速度为5Gbps。同时无需在信号传送前进行数/模或者模/数转换,可以保证最高质量的影音信号传送。HDMI不仅可以满足目前最高画质1080P的分辨率,还能支持DVD Audio等最先进的数字音频格式,支持八声道96kHz或立体声192kHz数码音频传送,而且只用一条HDMI线连接,免除数字音频接线。同时HDMI标准所具备的额外空间可以应用在日后升级的音视频格式中。足以应付一个1080p的视频和一个8声道的音频信号。而因为一个1080p的视频和一个8声道的音频信号需求少于4GB/s,因此HDMI还有很大余量。这允许它可以用一个电缆分别连接DVD播放器,接收器和PRR。此外HDMI支持EDID、
40、DDC2B,因此具有HDMI的设备具有“即插即用”的特点,信号源和显示设备之间会自动进行“协商”,自动选择最合适的视频/音频格式。2.2.2数字接口与模拟接口的比较DVI接口的传输信号采用全数字格式,与之对应的是采用模拟信号的VGA接口。VGA和DVI的区别,VGA模拟信号的传输首先是将电脑内的数字信号转换为模拟信号,将信号发送到LCD显示器,而显示器再将该模拟信号转换为数字信号,形成画面展示在大家面前,正因为如此,中间的信号丢失严重,虽然可以通过软件的方法修复部分画面,但是随着显示器的分辨率越高画面就会越模糊。一般模拟信号在超过12801024分辨率以上的情况下就会出现明显的误差,分辨率越高
41、越严重。而DVI数字接口可以直接将电脑信号传输给显示器,中间几乎没有信号损失,不过在800600这种分辨率下,和模拟信号的效果几乎没有差别,这也就是很多人觉得DVI接口没有用处的原因。2.2.3选择结论:VGA接口VGA和DVI做为目前最常见的接口,占领着市场的大部分份额。但是数字接口的优势是传统模拟接口无法代替的。VGA接口很长一段时间内将会存在于小尺寸面板及低端LCD显示器中。本系统是仅需工作在640*480分辨率下,本着就地取材的出发点,选择了带有VGA接口的15英寸LCD显示器。从开发平台方面来说本身已经内置了VGA接口,从新设计DVI接口已不必要。2.3 图像格式及图像处理技术计算机
42、图像格式的发展一直是相关领域内发展较快的一个部分。通过改进图像算法,单幅图像占用空间越来越小,还原能力越来越高,当然算法越来越复杂,这需要性能更高的硬件解码。但是来作为Windows下的标准文件格式,bmp文件一直具有十分基础和重要的地位。2.3.1 TIFF图像格式TIFF图像格式:扩展名是TIF,全名是Tagged Image File Format。它是一种非失真的压缩格式(最高也只能做到23倍的压缩比)能保持原有图像的颜色及层次,但占用空间却很大。例如一个200万像素的图像,差不多要占用6MB的存储容量,故TIFF常被应用于较专业的用途,如书籍出版、海报等,极少应用于互联网上。2.3.
43、2 PCX图像格式PCX这种图像文件的形成是有一个发展过程的。最先的PCX雏形是出现在ZSOFT公司推出的名叫PC PAINBRUSH的用于绘画的商业软件包中。以后, 微软公司将其移植到 Windows环境中,成为Windows系统中一个子功能。PCX是最早支持彩色图像的一种文件格式,现在最高可以支持256种彩色。PCX图像文件由文件头和实际图像数据构成。文件头由128字节组成,描述版本信息和图像显示设备的横向、纵向分辨率,以及调色板等信息:在实际图像数据中,表示图像数据类型和彩色类型。PCX图像文件中的数据都是用PCXREL技术压缩后的图像数据。由于这种文件格式出现较早,它不支持真彩色。PC
44、X文件采用RLE行程编码,文件体中存放的是压缩后的图像数据。因此,将采集到的图像数据写成PCX文件格式时,要对其进行RLE编码:而读取一个PCX文件时首先要对其进行 RLE解码,才能进一步显示和处理。2.3.3 GIF图像格式GIF(Graphics Interchange Format)的原义是图像互换格式,是CompuServe公司在 1987年开发的图像文件格式。GIF文件的数据,是一种基于LZW算法的连续色调的无损压缩格式。其压缩率一般在50左右,它不属于任何应用程序。目前几乎所有相关软件都支持它,公共领域有大量的软件在使用GIF图像文件。GIF图像文件的数据是经过压缩的,而且是采用了
45、可变长度等压缩算法。所以GIF的图像深度从lbit到8bit,也即GIF最多支持256种色彩的图像。GIF格式的另一个特点是其在一个GIF文件中可以存多幅彩色图像,如果把存于一个文件中的多幅图像数据逐幅读出并显示到屏幕上,就可构成一种最简单的动画。GIF解码较快,因为采用隔行存放的GIF图像,在边解码边显示的时候可分成四遍扫描。第一遍扫描虽然只显示了整个图像的八分之一,第二遍的扫描后也只显示了14,但这已经把整幅图像的概貌显示出来了。在显示GIF图像时,隔行存放的图像会给您感觉到它的显示速度似乎要比其他图像快一些,这是隔行存放的优点。2.3.4 BMP图像格式BMP是英文Bitmap(位图)的
46、简写,它是Windows操作系统中的标准图像文件格式,能够被多种Windows应用程序所支持。随着Windows操作系统的流行与丰富的Windows应用程序的开发,BMP位图格式理所当然地被广泛应用。这种格式的特点是包含的图像信息较丰富,几乎不进行压缩,但由此带来的问题是占用磁盘空间过大。BMP文件由4部分组成:位图文件头(bitmap-file header)、位图信息头(bitmap-information header)、颜色表(color table)、颜色点阵数据(bits data)。24位真彩色位图没有颜色表,所以只有1、2、4这三部分。用UltraEdit打开MyBmp.bmp
47、,可以看到这个文件的全部数据如下图所示:图2. 2 位图结构位图文件头结构定义如下:typedef struct tagBITMAPFILEHEADERWORDbfType; / 位图文件的类型,必须为BMDWORD bfSize; / 位图文件的大小,以字节为单位WORDbfReserved1; / 位图文件保留字,必须为0WORDbfReserved2; / 位图文件保留字,必须为0DWORD bfOffBits; / 位图数据的起始位置,以相对于位图文件头的偏移量表示,以字节为单位 BITMAPFILEHEADER;表2. 1 位图文件头结构占用空间内容实际数据bfType2字节标识,就
48、是“BM”二字BMbfSize4字节整个BMP文件的大小0x50(80)bfReserved1/24字节保留字,没用0bfOffBits4字节偏移数,即 位图文件头+位图信息头+调色板 的大小0x36(54)位图信息头结构定义如下:typedef struct tagBITMAPINFOHEADERDWORD biSize; / 本结构所占用字节数LONGbiWidth; / 位图的宽度,以像素为单位LONGbiHeight; / 位图的高度,以像素为单位WORD biPlanes; / 目标设备的级别,必须为1WORD biBitCount/ 每个像素所需的位数,必须是1(双色),4(16色),8(256色)或24(真彩色)之一DWORD biCompression; / 位图压缩类型,必须是 0(不压缩),1(BI_RLE8压缩类型)或2(