版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、题(中、英文)目 基于FPGA 的USB 图像采集控制器设计与实现The Design and Implementation of USB Image 作者姓名 王宇鑫 学校指导教师姓名职称 沈沛意 教授 工程领域 软件工程 企业指导教师姓名职称 刘晓林 高级工程师 提交论文日期 二一二年四月代号 分类号学号 密级10701 10092007 U D 编号西安电子科技大学学位论文创新性声明秉承学校严谨的学分和优良的科学道德,本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成果
2、;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说明并表示了谢意。申请学位论文与资料若有不实之处,本人承担一切的法律责任。本人签名: 日期西安电子科技大学关于论文使用授权的说明本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后结合学位论文研究课题再撰写的文章一律署名单位为西安电子科技大
3、学。 (保密的论文在解密后遵守此规定)本学位论文属于保密,在 年解密后适用本授权书。本人签名: 日期导师签名: 日期摘要摘要终端消费品研发过程中需要对屏幕图片信息进行检测以保证产品质量。由于目前各种类型终端产品开发的芯片平台不统一,存在没有图像数据传输接口或图像数据接口传输时间过长等问题,实际测试工作效果欠佳。同时,随着产品研发对获取屏幕显示图像的自动化需求增多,原本传统通过人工获取屏幕数据信息的方式有被自动化方式所取代的趋势,对LCD 屏幕图像数据采集系统的设计实现已成必然的需求。本文目的旨在研究基于“FPGA+USB控制器”架构的图像数据采集系统设计与实现方法。针对实习公司对屏幕图像数据采
4、集系统的功能需求特点,采用嵌入式设计的思想,通过对大量测试数据分析和需求澄清描述,建立系统工作原理设计方案,实现了设计的图像采集系统,并对系统的性能、软件体系进行测试以保证满足设计需求,最后基于设计部署一个自动化测试应用方案。本项目的应用,不仅保证实习公司测试工作的准确性、优化测试流程,也使测试自动化率得到显著提升。实验结果及应用效果表明,该系统的可行性和有效性达到设计要求,有着重要的现实意义和生产应用价值。关键词:图像采集系统 FPGA USB控制器 自动化测试基于FPGA 的USB 图像采集控制器设计与实现AbstractAbstractThe development process of
5、 terminal consumer need to testing screen picture information in order to ensure product quality. Because of the variety of terminal product development microarray platforms are not unified, there is no image data transmission interface or image data interface transmission time too much, or any othe
6、r issues, the actual test is effecting of poor. At the same time, along with the product development to obtain screen display image automated demand increasing, the traditional manual access to the screen through the data information in a manner has been replaced by automation trend, on the LCD scre
7、en image data acquisition system design has become an inevitable demand.The paper aims to research a design and technique of the image processing data acquisition system based on the architecture of “FPGA+USB controller”. According to the practice of screen image data acquisition system function dem
8、and characteristics, use of embedded design, based on a large amount of test data analysis and demand clarify describe, establish the working principle of the system design, implementation of the image acquisition system. Testing for the system performance and software system to ensure meet the desi
9、gn demand, at last based on the final design deployment of a test automation applications. The project application not only to ensure the practice company test the accuracy of the work, optimize the test flow, but also make the test automation rate significantly improved. Experimental results and ap
10、plication show that, the system is feasible and effective to meet the design requirements, which has important practical significance and application value.Key words: Image Acquisition System, FPGA, USB controller, Automatic Testing基于FPGA 的USB 图像采集控制器设计与实现目录目录第一章 绪论 . . 11.1 选题的背景 . . 11.2 课题的研究意义 .
11、 . 11.3 课题的研究现状 . . 21.4 论文的研究内容 . . 61.5 论文的章节安排 . . 6第二章 相关理论与技术 . . 92.1 FPGA开发设计流程 . 92.2 Cyclone III FPGA基本结构 . 102.3 USB通信开发软件体系 . 152.4 USB控制器EZ-USB FX2软件架构 . . 202.5 本章小结 . . 22第三章 系统需求与总体设计. 233.1 系统需求 . . 233.2 传统图像数据采集系统架构方案分析 . . 233.3 本项目系统设计方案及优缺点分析 . . 253.4 系统总体设计方案工作流程 . . 273.5 本章小
12、结 . . 29第四章 系统硬件设计与实现. 314.1 系统单板主要模块接口电路设计 . . 31基于FPGA 的USB 图像采集控制器设计与实现4.2 FPGA模块的硬件电路设计 . 344.3 USB控制器模块的硬件电路设计 . . 404.4 本章小结 . . 45第五章 系统软件设计与实现 . 475.1 FPGA的加载配置方式 . 475.2 FPGA模块逻辑软件设计及实现 . 495.3 USB控制器模块软件设计及实现 . . 555.4 PC端主机应用程序设计及实现 . . 585.5 本章小结 . . 70第六章 系统测试与应用 . 716.1 图像数据采集系统测试验证 .
13、. 716.2 图像数据采集系统典型应用 . . 766.3 本章小结 . . 78目录第七章 总结与展望 . . 797.1 工作总结 . . 797.2 展望 . . 80致谢 . . 81参考文献 . . 83第一章 绪论 1第一章 绪论1.1 选题的背景随着信息通讯和电子科技的进步,嵌入式设计技术也随之得到飞速发展和应用,要求嵌入式设计系统不仅要处理内部的数据,也要接收和处理来自外部硬件的信息,例如图像、音频采集卡以及外部存储设备的数据。由于这些设备的数据量往往都比较大,这对嵌入式设计与外设之间的传输系统提出了更高的要求:系统不仅需要具有较高的传输速度,而且与接口必须简单易用,同时能实
14、现对数据的实时处理。传统的外设通讯接口如PCI 总线或RS-232总线很难再满足嵌入式系统高速传输及多扩展的要求:PCI 总线虽然传输率可达到133MHz ,但扩展槽有限且插拔不方便;RS-232总线虽然连接方便,可是带宽非常有限,最高传输速率只有128Kbps ,而且一条RS-232串口通信电缆只能连接1个物理设备。而USB 技术正是顺应这一要求提出应用的:其具有较高的传输速度,实现了真正意义上的“即插即用(Plug & Play )”,并且最多可以连接127个外设,十分适用于高速数据传输系统的设计1。现场可编程门阵列(FPGA )是近二十几年出现的一种新型可编程逻辑器件。FPGA 既集成了
15、门阵列逻辑器件密度高和通用性强的优点,又具备可编程逻辑器件的可编程特性。从1985年美国Xilinx 公司首家推出后,FPGA 就倍受青睐,并得到迅速发展,现已广泛应用于通信、计算机、图像处理等诸多领域。FPGA 最大的特点是结构灵活,有较强的通用性,适于模块化设计,提高算法效率,同时其开发周期较短,系统易于维护,适合于实时数据处理,广泛应用于一些包含大运算量的算法处理中2。因此结合USB 和FPGA 技术来实现数据采集、传输与处理系统是一种很好的嵌入式实时图像采集处理方案。1.2 课题的研究意义图像数据采集是获取信息来源的重要途径之一,是现代信息技术发展的重要基础和研究热点,高速、快捷的采集
16、传输数据则是图像处理问题中的经典技术难题之一。目前学术界已有的算法大多通过软件实现,如何将这些算法用硬件电路实现,并实现数据实时处理与高速传输是未来发展的一个方向。因此,设计一个可用于图像原始数据采集、具有实时数据传输和处理功能电路系统具有很重要的作用;另一方面,如果能在实现数据采集、高速传输的系统上进行功能扩展应用,例如本文讨论的自动化测试场景,其将具有更实际、更广阔的应用领域与社会经济价值意义。基于FPGA 的USB 图像采集控制器设计与实现 2 基于所在实习公司的实际工作需求,对图像数据采集系统进行软硬件设计实现,考虑到后期图像数据采集系统可用于公司自动化测试体系方面的发展需要,本设计结
17、合USB 和FPGA 技术,同时充分利用USB 控制器提供的高速总线特性解决传输速率低和FPGA 可编程的设计灵活性解决应用场景接口的兼容性问题。由于系统实现中使用的CYPRESS 公司EZ-USB FX2(CY7C68013)型号USB 控制器全面支持USB2.0协议,使得基于该USB 控制器的从属FIFO 通道FPGA 接口可以在高速(480Mb/s)方式下,把需要的图像数据信息从FPGA 端传输给上位机,其通信方式与传统串口输出调试原理相同,但克服了传输速度慢、信息获取有误的瓶颈问题,满足公司应用场景的指标需求,具有数据高速传输、可进行采集数据扩展应用的实际优势,最后通过上位机PC 端的
18、后台封装命令,调用相关接口来实现数据采集系统在自动化测试场景的应用。1.3 课题的研究现状目前基于计算机的图像采集系统有两种实现形式:一种是采用插板卡的形式与计算机接口通信,采集信息传输到板卡进行处理,数字化后传入PC 机。典型应用就是PCI 接口的图像/视频采集卡,通过PCI 系统总线与PC 机相连(或者制成板卡直接插在PC 机主板插槽上)这种总线传输方式速度比较快,但可占用的PC 接口资源有限而且需要对接口卡的硬件资源(地址、内存、中断、DMA 等)进行合理配置,因此不易进行扩展3;另外,采用插卡式的传输板在安装的时候都必须先停机然后拆卸机箱,安装和配置过程人工手动处理繁琐,当扩展卡多时经
19、常出现无法正常配置而影响系统的运行。另一种基于计算机的图像采集系统实现形式是采用与计算机相对独立的图像采集设备完成图像的数字化,数字图像数据经过各种接口传输到计算机中进行单独处理。由于后者更适合构建灵活方便的图像采集系统,很快得到迅速发展,可以找到采用各式接口的基于计算机的图像采集系统应用方案。例如目前广泛应用在监控领域的网络摄像机一般采用CMOS 图像传感器和嵌入式系统相结合的构造,图像传感器采集的图像数据经过嵌入式微处理器的处理后,经过网络接口进行传输4。此外,一些高端的数码相机采用1394接口将数字图像数据传入计算机。在一些特殊应用场合如图像监控5、军事应用等方面,图像数据是经过无线传输
20、的。而国内最常见消费类电子产品摄像头也是采取相对独立设备的低端图像采集系统,此类产品多通过USB1.1接口与计算机相连,数据传输速率最大12Mbps 。由于所使用的芯片集成度高,其结构非常简单,一般只有两部分组成:镜头和CMOS 图像传第一章 绪论 3感器组件;集成有USB1.1接口的专用多媒体芯片6。由于USB 采用差分信号传输,具有良好的可靠性,设备控制、管理和数据交换由PC 机按USB 协议进行,几乎不占用资源,对系统运行影响很小。应用USB 总线还可以清除PC 上过多的I/O端口,以一个串行通道取代,使PC 与外设之间的连接更容易7。因此采用USB 与PC 机连接是数据传输的一个必然趋
21、势。随着电子技术的发展,电子系统的设计方法正从传统的分立元件设计方法逐步发展成基于集成芯片的EDA 技术设计,系统一体化已成为电子系统设计的主流。FPGA 是当今流行的可编程专用集成电路(ASIC )之一,FPGA 具有静态可重复编程和动态系统重构的特性,使得它的功能像软件一样通过编程实现。另外FPGA 很好的实现数字信号的并行处理,在一些复杂控制领域和数字算法处理上具有很大的优势,因此在选择数据采集及处理系统芯片时FPGA 就成为首选。总之,在数据采集传输处理系统中结合USB 和FPGA 的各自优势技术,通过设计硬件电路来实现数据采集传输和处理将会使系统的应用更加广泛方便,具有更高的效率。基
22、于FPGA 的USB 图像采集控制器设计与实现 4 年11月新一代的USB 3.0标准已经正式完成并公开发布,新规范提供十倍于USB 2.0的传输速度和更高的节能效率,最大传输带宽高达5.0Gbps ,也就是640MB/s,同时在使用A 型的接口时向下兼容,可广泛用于PC 外围设备和消费电子产品。USB 协议规定设备通过一个4针的标准插头,采用菊花链形式把所有的外设连接起来。USB 的传输速度要比标准的串行口快得多,使连接到计算机上的设备共同分享USB 的带宽。USB 的分时处理机制真正在硬件意义上实现了计算机设备的即插即用,最多能同时连入127个USB 设备。虽然通信功能强大,但USB 数据
23、传输只有四条线,两条是电源线(VCC 与GND ),两条是差分数据信号线(D+与D-)9。随着USB 设备种类的迅速增加,设备与设备之间的直接数据传输变得越来越迫切,USB 2.0 OTG(On-The-Go )技术应运而生,它于2001年12月底制定,赋予了设备双重身份,也就是说它既可以作为主机,又可以作为设备,其实质是在设备中增加了一个嵌入式计算机来执行主机任务。USB 2.0 OTG的标准,可以使USB 标准突破原先USB 必需主机控制端的限制,从而可以把两台USB 设备任意互连。由于USB 2.0 OTG标准和现行的USB 2.0/USB 1.1标准互通,使得一般信息、家电产品所采用的
24、芯片只要支持USB 2.0 OTG标准,便可与同样支持USB 2.0 OTG标准的便携式设备通过线缆互连,在理论上达到每秒480 Mb/s的传输效能(由于可能会有内部损耗,故实际传输值会略差别于理论值)10。正是由于通用串行总线(USB )具有快速、双向、大批量传输、廉价以及可实现热插拔等诸多优点,大量基于USB2.0标准的芯片、产品涌入市场。Cypress 公司FX2架构系列芯片之一的CY7C68013就是最早符合USB2.0标准的微控制器,它集成了符合USB2.0标准的收发器、串行接口引擎(SIE )、增强型8051内核以及可编程的外围接口11。实现基于USB2.0的接口数据通信,CY7C
25、68013可根据应用场景特性配置成3种不同的接口模式:Ports (端口模式)、GPIF Master (可编程接口模式)和Slave FIFO(主从模式),其中,后两种模式利用其内部集成的可独立于微处理器而自动处理USB 事务的硬件(USB 核),数据的传输通过执行USB 本身的协议来完成,微处理器可不参与数据传输,从而使数据的传输速率大大提高,同时简化了固件代码的开发,由于克服了微处理器这个“带宽瓶颈”,因而广泛应用于大批量的数据传输,如图像、视频等信号采集领域。FPGA (Field Programmable Gate Array)即现场可编程门阵列,是一种可编程逻辑器件。FPGA 在上
26、世纪90年代得到快速的发展,并且到目前为止己经成为实现嵌入式数字系统的主流硬件平台之一。作为ASIC 领域中的一种半定制电路,FPGA 的出现既解决了定制电路的不足,又克服了原有可编程器件(如PLD 、CPLD 等)门第一章 绪论 5电路较少的缺点,因此在嵌入式领域得到了广泛应用。FPGA 是通过逻辑组合来实现各种功能的器件,几乎可以进行任何类型的处理;对于常用的数字信号处理,有些FPGA 专门还提供DSP 模块来实现加速;FPGA 的并行处理架构非常适合图像处理、数字信号处理等运算密集的应用;用某款芯片无法满足要求时,还可以通过使用同样封装且容量更大的FPGA 芯片来提供更高的处理能力,既可
27、以保持管脚的兼容性,又无须对PCB 板进行修改;FPGA 的可编程性使设计工程师可以随时对设计进行修改,即使在产品部署后也能对设计错误进行更正;FPGA 不但可以完成MCU 和DSP 的各种功能,还可以根据需要生成新的功能,或者调配各项功能之间的资源配比,使同一个硬件电路设计可以满足不同的应用需求;FPGA 还可以利用现成的处理器内核,直接生成软处理器,并在其上运行操作系统。用户可以通过硬件设计语言来对FPGA 进行编程和配置,以实现某些特定功能,并且FPGA 可以被反复擦写。在修改和升级数字系统时,不需要再改变PCB 电路板和芯片,这样既缩短了系统设计的周期,提高了实现的灵活性,又降低了成本
28、。由于FPGA 需要被反复配置,所以它实现电路逻辑的基本结构不能像ASIC 那样通过与非门来完成,而是采用一种易于反复配置的被称作查找表的结构。目前,主流的FPGA 芯片都采用了基于SRAM 工艺的查找表结构,当然也有一些芯片采用基于Flash 或者熔丝与反熔丝工艺的查找表结构12。目前,在FPGA 市场占有率最高的两大公司是Xilinx 和Altera 。它们生产的FPGA 都是基于SRAM 工艺的,掉电时程序会丢失,在使用时需要一个片外非易失性存储器来保存程序。FPGA 是由存放在片内的RAM 来设置其功能的,工作时需要先对片内RAM 进行编程。FPGA 主要有以下几种配置模式:并行模式、
29、主从模式、串行模式、外设模式,用户可根据不同的配置模式,采用不同的编程方式。每次上电时,FPGA 将片外存储器中的配置比特流读入片内RAM ,完成配置后进入工作状态;掉电后,FPGA 内部逻辑配置将消失。这使得FPGA 不仅能反复使用,还无需专门的FPGA 编程器,只需EPROM 、PROM 编程器13。由于FPGA 通过逻辑组合实现功能,其功耗和成本一般高于MCU 和DSP 。随着FPGA 的制造工艺向65nm 、45nm 和更先进的工艺发展,FPGA 的器件成本越来越低。在几年前,FPGA 给人的印象一直是价格高高在上,除了通信、航天、军工、工业等少数行业,FPGA 更多地是在扮演原型验证
30、开发的角色,在消费类电子等更广大的市场中迟迟未打开局面。随着Xilinx 和Altera 等公司竞相采用新的制造工艺,价格在很多应用中已不再是障碍,特别是在一些需要特定功能的应用中,用FPGA 成为一个非常实际的选择。Cyclone 系列FPGA 是Altera 公司设计生产的产品,具有多款芯片,门数在10万到160万之间, 本设计将以Cyclone III系列的EP3C120F780芯片作为主控芯片来实现硬件电路的设计。基于FPGA 的USB 图像采集控制器设计与实现 6 1.4 论文的研究内容本项目主要是所在实习公司根据市场、产品需求而进行的研发应用工程,目前业界基于类似应用场景的相关工具
31、并不存在,缺乏可借鉴改进的经验,从产品成果来讲属于自主创新型工程开发。本项目设计目的在于:解决无平台差异的LCD 屏幕图像获取需求,通过外设单板完成带屏类产品的屏幕数据获取,在PC 端完成数据处理并输出指定格式屏幕数据图片,为自动化测试执行收集有效的判断信息,实现自动化测试应用。结合上述实际需求,在查阅大量类似数据采集系统设计方案后,本文提出基于“FPGA+USB控制器”架构的图像数据采集传输系统方案;同时在系统工具应用时基于面向对象开发思想,设计封装相应的用户接口类,便于自动化测试系统的建立调用。本文在整个系统硬件单板和软件体系设计实现过程中主要完成以下研究工作:1、图像数据采集系统设计方案
32、的研究。具体的研究内容包括:业界成熟的图像数据采集系统设计架构方案及应用现状,阅读并分析了大量有关图像数据采集系统的资料及学术论文,结合已有理论及项目需求特点进行详细的业务、功能分析,完成本文提出的图像数据采集系统整体设计以及系统应用实现。2、设计并实现系统硬件外设单板。具体的研究内容包括设计单板PCB 整体布局、接口电路、FPGA 采集模块和USB 控制器模块的板级布局。3、设计并实现系统硬件外设单板初始化及功能加载。具体的研究内容包括FPGA 配置加载、USB 控制器固件初始化、对硬件外设单板进行初始化调试,完成系统设备的枚举加载。4、设计并实现系统软件体系结构。具体研究内容包括FPGA
33、模块的逻辑实现、基于USB 控制器开发框架的PC 端主机应用程序设计实现、封装自动化用户接口命令。5、根据用户需求完成对系统功能的测试验证工作,同时部署一个图像采集系统自动化测试应用方案,验证本系统应用场景的有效性及实用性。1.5 论文的章节安排本论文共分七章,各章节主要内容组织如下:第一章:绪论。给出课题的研究背景、意义及其研究现状,提出本论文的主要研究内容;第二章:相关理论与技术。简要描述了本论文研究过程中涉及到的关键理论、技术。主要包括:第一部分,FPGA 开发设计流程;介绍FPGA 开发的基本流程、编第一章 绪论 7译工作及相关概念等。第二部分,Cyclone III FPGA基本结构
34、;简要介绍Cyclone III 系列FPGA 芯片特点及其在本设计中的应用。第三部分,USB 通信开发软件体系;介绍关于USB 设备通信的软件体系分层结构及各层的作用。第四部分,USB 控制器EZ-USB FX2软件架构,主要讲解USB 控制器模块主芯片开发的软件相关技术;第三章:系统需求和总体设计。首先对项目具体功能需求进行详细分析,提出了系统总体架构方案及功能结构图;第四章:系统硬件设计与实现。重点介绍系统外设单板工具PCB 布局及硬件系统设计实现;第五章:系统软件设计与实现。这部分是本论文的重点,对系统软件体系及各主要功能模块详细设计实现进行论述,特别是给用户封装的自动化命令实现部分;
35、第六章:系统测试与应用。给出系统的运行环境,同时针对第三章中系统需求指标重点进行测试。随后给出本文设计系统的一个具体自动化应用部署方案,并且给出应用评测结果;第七章:总结与展望。对本论文所完成的工作成果进行总结,对存在的问题提出建议,并对下一步改进工作提出展望。基于FPGA 的USB 图像采集控制器设计与实现 8第二章 相关理论与技术 9第二章 相关理论与技术2.1 FPGA开发设计流程完整的FPGA 设计流程包括电路设计输入、综合优化、布局布线、时序分析仿真、板级仿真验证、调试加载配置等主要步骤,一系列设计活动和编译工作主要借助于专门的开发工具进行。Quartus II是Altera 公司推
36、出的新一代PGGA 综合开发工具,它集成了Altera 的FPGA 开发流程中涉及的所有工具和第三方软件接口,提供完整的多平台设计环境,通过此综合开发工具可以轻易的满足特殊设计要求,设计者可以很方便的创建、组织和管理自己的设计。下面结合Quartus II软件的使用来说明FPGA 开发设计和编译等相关工作。1. 设计输入电路设计输入是指通过某些规范的描述方法将电路构思输入给EDA 工具的过程。Quartus II设计软件支持多种格式的输入方法,其中包括原理图式图形输入、硬件描述语言(AHDL 、VHDL 、Verilog HDL等)、Core 输入方式等,同时使用分配编辑器(Assignmen
37、t Editor)设定初始设计约束条件。2. 综合优化综合优化是将HDL 语言、原理图等设计输入翻译成由与、或、非门、RAM 、触发器等基本逻辑单元总称的逻辑连接,并根据目标与要求(约束条件)优化所生成的逻辑连接。Quartus II综合优化输出.edf 或.vqm 等标准格式网表文件,供布局布线器实现,除了可以用Quartus II软件的Analysis&Synthesis命令综合外,还可以使用第三方综合工具生成与Quartus II配合使用的.edf 或.vqm 格式的网表文件。3. 布局布线布局(Place )是指将网表中的硬件原语或低层单元合理的适配到FPGA 内部的固有硬件结构上,布
38、局的优劣对设计的最终实现结果(度和面积)方面影响较大。布线(Route )是指根据布局的拓扑结构,利用FPGA 内部各种连线资源,合理正确连接各个元件的过程。4. 时序分析仿真一般来说布线后仿真能较好的反应芯片的实际工作情况,通过检查设计时序与FPGA 的实际运行情况是否一致,以确保设计的可靠性与稳定性。在Quartus II编译过程的最后阶段会自动运行时序分析器,编译结束后会自动报告时序分析结果。通过时序分析器可以分析整个设计的性能,并且对关键路径进行跟踪定位。Quartus II支持多种仿真方法,波形方式输入是Quartus II主要的仿真输入方式,可以提供直观、简洁的仿真向量。Quart
39、us II中最主要的波基于FPGA 的USB 图像采集控制器设计与实现 10 形文件是.vwf 格式,也兼容.vec 和.tbl 格式的输入文件。Quartus II 还支持TCL/TK脚本文件的输入和通过第三方仿真工具支持Verilog HDL或VHDL 文本的测试向量,Quartus II支持的第三方仿真工具有Modelsim 、VERILG-XL 、VCS 、VSS 等14。5. 板级仿真、验证有些高速电路设计时,需要使用第三方的板级验证工具进行仿真与验证,如Mentor Tau、Forte Design-Timeing Designer等,这样做的目的在于较好的分析高速设备的信号完整性
40、、电磁干扰等电路特性,提高FPGA 运行性能。6. 调试、加载配置通过时序分析和仿真,证实设计满足要求和功能,就可以使用Quartus II工具完成设计的最后阶段在线调试或者将生成的配置文件写入芯片中进行测试。示波器和逻辑分析仪是逻辑设计的主要调试工具,对于相对简单的设计,使用Quartus II内置的SignalTap II对设计进行在线逻辑分析。SignalTa II是一种FPGA 在线片内信号分析工具,它的主要功能是通过JTAG 口在线实时的读出FPGA 的内部信号。编译完成后Quartus II除了生成用于仿真和延时分析的文件外,还生成Altera 器件的配置文件,通过下载该文件完成器
41、件的配置加载。2.2 Cyclone III FPGA基本结构随着相关电子科学技术的不断发展,可编程逻辑器件FPGA 的资源和功能越来越丰富,设计日趋方便,很多FPGA 器件中可嵌入多种处理器核和复杂的逻辑模块,从而灵活高效地实现更多功能和接口,并在复杂的数字系统设计中发挥越来越重要的作用15。FPAG 具有的可重复编程能力、灵活的体系结构、丰富的触发器及布线资源等一系列的特点,使得它可以满足电子产品设计的诸多特殊需求,本项目方案中图像采集功能就是借助Altera 公司的低成本Cyclone III系列FPGA 设计实现的。Altera 公司采用65-nm 低功耗(LP )工艺技术生产的Cyc
42、lone III 系列FPGA 器件结构如图2.1所示,主要由以行列形式排列的逻辑阵列块(Logic Array Block,简称LAB )、嵌入式存储器块(Memory Blocks)、嵌入式乘法器(Embedded Multipliers )、输入输出单元(Input/Output Elements,IOE )及全功能锁相环(Phase-Locked Loops)等模块组成。其中,LAB 模块用于完成FPGA 的逻辑功能,IOE 模块用于提供外部引脚与内部逻辑输入输出单元间的接口,存储器块M9K RAM主要完成FPGA 内部数据的随机存取,DLL 保证FPGA 内部的时钟控制和管理,所有体
43、系结构都含有高效的互联和低偏移时钟网络,为时钟和数据信号结构提供链接,各模块之间也可实现各种速度的信号互连。第二章 相关理论与技术11 图2.1 Cyclone III FPGA结构图1. 逻辑阵列块(Logic Array Block,LAB )Cyclone III系列FPGA 中,逻辑单元(Logic Element,LE )是LAB 的基本结构组件,也是可以实现用户逻辑定制的最基本资源单位。一个LE 主要包括了四输入查找表(Look-Up-Table ,LUT )、可编程寄存器(D 触发器)、进位链连接和寄存器链连接。LE 结构如图2.2所示。 图2.2 LE结构示意图FPGA 设计中
44、最常用的结构就是查找表(Look-Up-Table )结构,Cyclone III FPGA 的LE 中使用的LUT 主要实现任意四输入组合逻辑,其本质上可视为是RAM 。每一个LUT 相当于一个有4位地址线的16x1的RAM ,当用户程序描述一个逻辑电路后,FPGA 开发工具会自动计算逻辑电路的所有可能的结果,并把结果事先写入RAM ,每基于FPGA 的USB 图像采集控制器设计与实现 12 输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。可编程寄存器通过程序可配置为异步或者同步触发器。进位链连接能够驱动本块、行、列等结构部分互连,而寄存器链连接支持寄存
45、器打包和反馈。LE 有两种工作模式:一是普通工作模式,适用于一般的逻辑处理;二是算术工作模式,适用于实现加法器、累加器、计数器和比较器等复杂运算。通常衡量FPGA 的资源大小,就是看设计使用芯片的LE 数目。Cyclone III系列芯片里面16个LE 组成一个LAB ,LAB 以行列形式在FPGA 器件中排列,LAB 结构示意如图2.3所示。每个LAB 都有LAB 控制信号,按照顺序排列在FPGA 内部,负责清除、时钟使能、复位等功能。LAB 内部之间的LE 数据通信通过寄存器进位链(Register chain)传输连在一起;各个LAB 之间通过行或者列互联信号通信驱动。 图2.3 LAB
46、结构示意图2. 输入输出单元(Input/Output Elements,IOE )Cyclone III系列FPGA 的IOE 配置在逻辑阵列块的行和列的末端,可以提供各种类型的单端或差分逻辑输入输出。IOE 内部特性包含:4/8个IO Bank,每个Bank 可独立配置IO 标准,I/O管脚均被安置在LAB 行-列结构的边缘;提供九种封装标准,使I/O管脚支持多种标准的单源信号和差分信号,例如66MHz 或33MHz ,64bit 或32bit 的PCI ;每个IOE 都包含一个双向I/O缓冲器和一个三态寄存器以便寄存输入/输出使能信号,更详细的IOE 结构特点如图2.4所示。第二章 相关
47、理论与技术13 图2.4 IOE结构特点示意图Cyclone III FPGA的I/O接口资源相当丰富,可以根据REF 电平接收或输出不同的电平标准的信号,如3.3V LVTTL、2.5V LVDS、LVPECL 或者SSTL-2等,并且可以通过程序设置驱动电流强弱、片内OTC 、差分匹配、DDR 输出等,还支持片内上拉电阻、输入输出延时等特性。3. 嵌入式存储器模块(Memory Blocks)Cyclone III系列FPGA 的嵌入式存储器由排列为列型结构的M9K RAM(Memory 9Kbits RAM)构成,即每一块存储器有9K 数据(其实只有8192位,加上校验位为9216位)。
48、这个模块可实现多种类型的存储模式,包括带或不带实现奇偶校验功能,如时钟使能的真双端口、简单双端口或者单端口存储器RAM 、ROM 或FIFO (First In First Out先入先出)缓冲。支持每端口独立的读写时能、可变的端口位宽、写字节使能及可自主配置形式等特性。4. 嵌入式乘法器(Embedded Multipliers)Cyclone III 系列FPGA 有嵌入式硬件乘法器模块,可以用来实现FFT 、DCT 、FIR 等数字信号处理,高效地用于音频、视频信号处理等场景。每个嵌入式乘法器可以配制成“两个99”或“一个1818”两种模式乘法器,当数据宽度大于18时,采用多个乘法器合并实现。VHDL 或者Verilog HDL硬件程序设计语言里面的乘号,在FPGA 软件综合时会自动采用乘法器替代。5. 全功能锁相环(Phase-Locked Loops)Cyclone III 系列FPGA 含有4个增强PLL 提供高级时钟管理功能,可以实现FPGA 片内的时钟倍频、分频或者移相,也可实现高速差
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度山地承包与森林资源评估合同4篇
- 2025年度房地产企业内部控制制度建立与执行合同4篇
- 纵火行为的预防与打击
- 2025年度模特与时尚品牌合作限量版合同4篇
- 2025年度民房买卖交易保障服务合同4篇
- 2025年度摩托车配件定制加工合同模板2篇
- 2025年度城市轨道交通农民工劳动合同样本2篇
- 二零二五年度内衣销售代理区域保护合同规范
- 2025年度美容院健康体检与会员服务合同2篇
- 2025年度新能源车辆运输合同
- TB 10012-2019 铁路工程地质勘察规范
- 新苏教版三年级下册科学全册知识点(背诵用)
- 乡镇风控维稳应急预案演练
- 脑梗死合并癫痫病人的护理查房
- 苏教版四年级上册脱式计算300题及答案
- 犯罪现场保护培训课件
- 扣款通知单 采购部
- 电除颤操作流程图
- 湖北教育出版社三年级下册信息技术教案
- 设计基础全套教学课件
- IATF16949包装方案评审表
评论
0/150
提交评论