【VC++开源代码栏目提醒】:本文主要为网学会员提供“基于FPGA的视频图像分析 - 硕士论文”,希望对需要基于FPGA的视频图像分析 - 硕士论文网友有所帮助,学习一下!
西南交通大学 硕士学位
论文基于FPGA的视频图像分析 级别:硕士 专业:物理电子学 指导教师:王泽勇 20081201 西南交通大学硕士研究生学位
论文 第l I页 Abstract The detection of catenary—pantograph malfunction is extremely significant incurrent train inspecting.The immense data of the original malfunctioned videoimage makes simultaneous storaging and transmissioning quite difficult.Becauseof immensity video images data,it needs advanced video coding and decodingprotocol to process.So it can inspect malfunction place simultaneously. As the tenth part of MPEG·4,H.264/AVC has superhigh compress efficiencyand excellent internet affinity,it is researched and applied widely.H.264/AVChas advanced algorithm.It has integer transform,quarter—pixel interpolation,multi—mode inter prediction,deblocking filter,entropy coding and SO on. This paper uses Verilog HDL to design.With the hardware platform of theRed Cyclone II,it completed the design and the simulative confirmation of thesoft core with the hardware descriptive language Verilog in the environment ofthe exploited tool QUARTUS2 6.0 and MODELSIM—SE6.1B.Based onEP2C35F484FC8 of Altera company’S Cyclone II chip FPGA,video capturing,display、some algorithm of H.264|心C and transmission can be realized. With the outstanding characteristic of flexibility,high speed in design and alarge quantity of line resource,FPGA becomes the top choice in various actualapplications gradually,combining verilog and VHDL language,it makes greatinnovation tO the design of electric system and make the process fasteL In this paper,characteristic of FPGA,flow of design,verilog language wereanalysed firstly,then static images and video’S coding and decoding was analysedin detail,such as transform,quantization,entropy coding and SO on;lots ofexperiments have been done by using H.264/AVC’S algorithm based on JM 1 0.2for different resolution,quantiser parameter,video,and the results of experimentwere analysed in detail.Then video images were captured,storaged and displaiedbased on Red Cyclone II,however,the SAA7113 chip’S initializes,the analog todigitial transform of CCD’S signal,inter IC line were analysed.After that,ITU—RBT.601,video synchronization signal’S capture were finished.Then videoimages storage and the control design of VGA display have been done.Finally,some of H.264/AVC’S algorithm were achieved using VerilogH DL,after that 西南交通大学硕士研究生学位
论文 第J|I页function imitate has been done and got the result which were predicted before. In this paper,the whole flow of video signal’S capture,storage and displayhave been finished.Parts of H.264./AVC’S algorithm has been finished by usingVerilogHDL.To some extent,this paper will be beneficial for the video codingand decoding of chip design.Key words:FPGA;H.264/AVC;Video;Verilog;code and decode 西南交通大学 曲南父逋大罕 学位
论文版权使用授权书 本学位
论文作者完全了解学校有关保留、使用学位
论文的规定,同意学校保留并向国家有关部门或机构送交
论文的复印件和电子版,允许
论文被查阅和借阅。
本人授权西南交通大学可以将本
论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复印手段保存和汇编本学位
论文。
本学位
论文属于1.保密口,在 年解密后适用本授权书;2.不保密√使用本授权书。
(请在以上方框内打“√”)学位
论文作者签名币哗指制币虢辫多 。
9·,≥<。
F1期:1 9r 同期:≥叼子.,▲.名。
西南交通大学学位
论文创新性声明 本人郑重声明:所呈交的学位
论文,是在导师指导下独立进行研究工作所得的成果。
除文中已经注明引用的内容外,本
论文不包含任何其他个人或集体已经发表或撰写过的研究成果。
对本文的研究做出贡献的个人和集体,均已在文中作了明确的说明。
本人完全意识到本声明的法律结果由本人承担。
本学位
论文的主要创新点如下:1.在机车顶部安装摄像机,实时监控弓网的健康状况,提出用视频监控系统, 来实时的检测故障,传输回故障图像并分析其原因,给出报警;2.提出了基于FPGA实现H.264的编解码方法,并在此基础上作了大量的工 作,并用硬件实现部分算法,为下一步设计视频编解码IP核奠定了基础。
以。
|支<吨 和1‖\计o ’ 。
’ I 西南交通大学硕士研究生学位
论文 第1页 第1章绪论1.1课题的研究背景及意义 在我国铁路的健康检测系统中,弓网故障检测是一项重要工作。
如线俞处时常发生由于拉出值超限和接触导线硬点引起故障。
这些故障是在机车运行中发生的,在动态情况下发生的故障有一定的随机性,与机车运行速度、风速、气候等条件有关。
不论故障原因发生在接触网还是受电弓,拉出值超限和硬点打、碰弓是弓网故障的前兆。
在机车项部安装摄像机,当机车运行时,实时采集受电弓滑板与接触导线的工作状态,通过视频可以分析是否产生故障如拉出值超限等,确定故障存在并将该故障视频图像进行压缩、存储,通过网络传输至故障检修终端还能实时地通知检修人员对故障进行检修,有效地为弓网故障的检测与维护提供有力的参考。
由于传输故障视频图像,数据量实在太大。
这些原始的视频图像,没有经过压缩,会对存储器、信道带宽提出很高的要求。
例如:一秒的PAL制视频有25帧,以4:2:2抽样量化后的视频数据量为25 X 720×576×2×8比特,约为158.2Mbit,数据量实在太大。
单纯靠增加存储器容量,提高信道带宽以及计算机的处理速度等方法来解决这个问题都是不现实的,必须对视频图像进行压缩,去掉视频图像信息中的冗余,减少网络传输的信息量。
针对弓网故障检测的特点,迫切需要一种高压缩率、低损失的压缩方法…-。
H.264/AVC(MPEG一4的Partl0)发布于2003年,它是由ITU-T和IS0共同制定的新一代图像压缩标准,能提供比MPEG-4和FI.263更高的
压缩性能,使图像的数据量减少50%,有利于有限的空l-日J存储更多的图像数据;对
网络传输具有更好的支持,引入面向数据包编码,有利于将数掘打包在网络中传输,支持流媒体服务应用;具有较强的抗误码特性,以适应在噪声干扰大、丢包率高的无线信道中传输:对不同应用的时延要求具有灵活的适应性:编码和解码复杂度具有可扩展性,支持编码和解码复杂度的不等分配和扩展。
H.264/AVC中引入了一些新的压缩方法,以提高压缩效率,它具有如下特点:增强的运动补偿性能,采用更小块进行变换编码,采用块l’日J滤波器提高性能,高性能的熵编码,采用SP和S川喷支持视频流l’日J切换等。
H.264/AVC作为新一代的视频压缩标准,是l扫1TU-T的VCE(,(视频编码专 西南交通大学硕士研究生学位
论文 第2页家组)和ISO/IEC的MPEG(运动图像编码专家组)成立的联合视频小组(JVT:joint v Jdeo team)共同丌发的。
H 264/AVC仍然是采用运动补偿加变换编码的混合编码模型。
但它采用许多新技术,使编码效率和图像质量都比以前的标准有很大的提高,在相同图像质量的情况下,H.264/AVC的编码效率是MPEG一2的两倍。
在现代的数字信号处理中.需要很高的数据吞吐率和巨大的计算量。
目前,在数字信号处理系统中,比如数字图像处理领域,高性能数字图像处理算法的实时实现是非常关键的技术。
为了满足系统实时性要求,一般都广泛采用高速器件和并行处理方式柬提高速度,同时要求器件灵活性强,具有可重复编程配置能力。
FPGA(FIeldProgrammableGateArray)是现场可编程逻辑阵列。
它是在CPLD的基础上发展起来的新型高性能可编程逻辑器件,它一般采用SRAM工艺,也有一些专用器件采用flash工艺或反熔丝(anti—fuse)工艺等。
FPGA的集成度很高,其器件密度从数万系统门到数千万系统门不等,可以完成极其复杂的时序与组合逻辑电路功能,适用于高速、高密度的高端数字逻辑电路设计领域。
FPGA的基本组成部分有可编程输入/输出单元、基本可编程逻辑单元、嵌入式块RAW、丰富的却线资源、底层嵌入功能单元、内嵌专用硬核等。
FPGA的主要供应商有xillfix、a1%era、latt Jce、actel和atmel等“‘。
1.2课题的开发环境 本文吼装有WINDOWS XP系统的
计算机为软件丌发平台,使用的软件开发 圈1—1 RED CycI oneII型fl”J Fr(:^Jl’发扳 西南交通大学硕士研究生学位
论文 第3页工具为QUARTUS2 6.o、MODELSIM~SE 6.1f和VC 6.0。
硬件部分基于一套REDCycloneII型的FPGA开发板,其核心芯片为90万门ALTERA公司的CyclonelIEP2C35F484C芯片。
板内其它资源包括两片SDRAM并联,形成32位带宽,最高166MHz读写速度:采用EPM570T100C5,产生配置时序在上电时对FPGA进行配置;具有视频A/D接口, SAA7113视频解码芯片;16位VGA输出接口;一片512K×8Bit的SRAM,独立的字节使能信号。
开发板及其扩展板的俯视图如图I-i所示。
1.3本文的主要内容和安排1.3.1
论文研究主要内容 1.详细分析静态图像压缩、视频编解码的原理。
查阅相关资料和verilog语言的
学习;详细学习了A1tera公司的核心芯片EP2C35F484C8,红色飓风II丌发板,并做了大量实验,为后面的
论文工作奠定了基础。
2.详细分析了JM〕0.2的
开源代码,并在VC平台进行大量的实验,对akiyo、contain、mother—daughter、si 1ent序列进行编解码实验,并改变量化步长QP,对编解码结果作比较,得到很多重要数据与结论。
3.详细分析了CRT显示模式,SDRAM的控制、SAA7113芯片的配置等。
详细分析与设计了基于FPGA的视频图像的采集、存储、显示等。
在QUARTUS2、MODELSIM软件和硬件语言veri 1 og的基础上,设计了视频信号的采集系统。
最后将视频信号得到显示。
4.利用verilog语言编程实现H.264/AVC中的变换、量化、熵编码等,并利用modelSim进行功能仿真,得到预期的效果。
1.3.2
论文总体框架
论文共分六章,其章节安排如下: 第一章绪论,主要介绍课题研究的背景、内容、意义、课题的丌发环境等。
然后介绍了整个
论文的框架结构和本人在
毕业设计期l’HJ所做的主要工作。
第二章FPGA概述及系统方案设计,本章主要分析了FPGA的特点,可编程器件的分类;FPGA的设计方法…一自上而下的设计方法等。
然后介绍了verilog HDL语言以及系统的设计
方案、算法设计、器件的选型等等。
第三章H.264/AVC算法研究,本章首先分析了静态图像和动态视频的压缩标准及编解码原理等。
然后详细分析了H.264/AVC的各种运用档次及其应 西南交通大学硕士研究生学位
论文 第4页用;以及编码数据的格式、帧l’白J帧内预测、变换、量化、熵编码等基本原理。
第四章JM平台的分析,分析了H.264/AVC的三大开源码之一的JMl0.2平台、编码特点等等。
在该平台的基础上对数据流进行编解码分析,并得出大量的有用数据,为进一步深入理解H.264/AVC奠定了基础。
第五章FPGA实现H.264/AVC的部分算法的研究,在本章中,首先详细分析了视频图像的采集流程,给出VGA的显示原理,并成功配置SAA7113芯片、SDRAM的控制等,最后将采集到的图像得以显示。
并运用verilog语言编程实现H.264中的部分算法,并利用modelsim加以功能仿真。
最后总结和展望,对本文
工作进行了总结,以及需要进一步研究的方向。
总结了本
论文的工作和不足之处,并希望未来在该领域有长足的发展。
西南交通大学硕士研究生学位
论文 第5页 第2章FPGA概述及系统方案设计2.1 FPGA简介 当今社会是数字化的社会,是数字集成电路广泛应用的社会。
数字集成电路本身在不断地进行更新换代。
随着微电子设计与工艺的发展,数字集成电路从电子管、晶体管、中小规模集成电路、超大规模集成电路发展到专用集成电路。
专用集成电路的出现降低了成本,提高了系统的可靠性,缩小了设计的物理尺寸,推动了社会的数字化进程。
但是专用集成电路(ASIC)因其设计周期长,投资大,灵活性差等制约着它的应用范围。
系统设计师们更愿意自己设计专用集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室罩就能设计出合适的ASIC芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件。
2.1.1可编程逻辑器件的分类1.PAL/GAL PAL是programmable array logic的缩写,即可编程阵列逻辑;GAL是generic array logic的缩写,即通用可编程阵列逻辑。
PAL/GAL是早期可编程逻辑器件的发展形式,其特点是大多基于EECMOS工艺,结构较为简单,可编程逻辑单元多为与、或阵列,可编程单元密度较低,仅能适用于某些简单的数字逻辑电路。
虽然PAL/7GAL密度较低,但是以低功耗、低成本、高可靠性、软件可编程、可重复更改等特点而著称。
2.CPLD CPLD是complex programmable logic device的缩写,即复杂的可编程逻辑器件。
CPLD是在PAL、GAL的基础上发展起来的,一般也采用EECMOS工艺,也有少数厂商采用FLASH工艺,其基本结构山可编程I/O单元、基本逻辑单元、布线池和其他辅助功能模块构成。
CPLD可实现的逻辑功能比PAL、GAL有了大幅度的提升,一般可以完成设计中较复杂的、较高速的逻辑功能。
3.FPGA FPGA(Fieid Programmable Gate Array)是-在PAL、GAL等可编程器件的基础上进一步发展的产物。
作为专用集成电路(ASlC)领域中的~种半定制电路,它既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
西南交通大学硕士研究生学位
论文 第6页FPGA芯片既继承了ASIC的大规模、高集成度、高可靠性的优点,又克服了普通ASIC设计周期长、投资大、灵活性差的缺点,逐步成为复杂数字硬件电路设计的理想首选h,。
2.1.2 FPGA的特点当代FPGA具有以下特点:1.规模越来越大。
随着VLSI工艺的不断提高,单一芯片内部已可以容纳上百万个晶体管,这使得FPGA芯片的规模也越来越大。
单片逻辑门数己逾千力.,规模的扩大也使得功能越来越强,同时也更适合于实现片上系统集成。
2.开发过程投资小。
FPGA芯片在出厂之前都做过百分之百的测试,而且设计灵活,不需要设计人员承担投片风险和费用,设计人员只需在自己的实验室旱通过相关的软硬件环境来完成芯片的最终功能设计,所以FPGA的资金投入小,节省了许多潜在的花费。
3.FPGA一般可以反复的编程、擦除。
用户可以反复地编程、擦除、使用或者在不动外围电路的情况下用不同
软件即可实现不同的功能。
4.FPGA丌发工具智能化程度高,功能强大。
FPGA软件包中有各种输入工具、仿真工具、版图设计工具和编程器等全线产品,电路设计人员在很短的时间内就可完成电路的设计、编译、优化、仿真,直至最后芯片的制作。
5.电路设计人员在使用FPGA进行电路设计时,不需要具备专门的IC(Integrated Circuit)深层次知识,FPGA软件易学易用。
现场可编程门阵列FPGA的出现弥补了ASIC设计的不足。
利用FPGA的在线可重构性和可配置计算能力,设计者能够在不进行流片的情况下就完成对设计原型的验证和修改。
由于FPGA是由掩膜门阵列和可编程器件演化而束,最终完成的设计在二者上的表现相差不大。
因此对于ASIC设计来说,使用FPGA在实现了小型化、集成化和高可靠性的同时,减少了/xt,l碱,降低了成本,缩短了设计周期,使第一块硅片就实现币确的设计成为可能,避免了昂贵的重新设计过程。
FPGA由6部分组成,分别为可编程输入/输出单元、牡本可编程逻辑单元、嵌入式块RAM、丰富的稚线资源、底层嵌入功能单元和内嵌专用硬核等。
其结构框图如下图2—1¨1: 西南交通大学硕士研究生学位
论文 第7页 《“醪《gi瓣8 g§ ^散#l”自目睁 嘲* 。
羹罄蘩囊壤蒸糍 鬟器糍群罄蠹蘩 1耕鬟嚣辇罄蠢簿 熊蕃≤g to。
§蓦l 弧f_;;}lIl :II I;I I I 〕I鼍l 一囊^式辣聃* 燃一甜臻::: I tJ .;I l I P嗣 捌 《溪 图2-i FPGA结构框图2.2 FPGA的设计方法和流程2.2 1自上而下的设计方法 Top—down设计,即自顶向下的设计。
这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。
在功能缴进行仿真、纠错,并用硬件描述语占对高层次的系统行为进行描述,然后用综合工具将设计转化为具体门电路网表,其对应的物理实现可以是PLD器件或专用集成电路(ASIC)。
由于设计的主要仿真和调试过程是在高层次上完成,这不仅有利于早期发现结构设计上的错误,避免设计工作的浪费,而且也减少丁逻辑功能仿真的工作量,提高了设计的一次成功率。
在Top—down
设计中,将设计分成系统绂、功能级、门级、丌关级等几个不同层次,按照自上向下的顺序,在不同层次上,对系统进行设计与仿真。
图2-2是这种设计方法的示意图。
如图所示,在Top—down设计过程中,需要有EDA工具的支持,有些步骤EDA工具可以自动完成,比如综合等,有些步骤EDA工具为用户提供了操作平台。
西南交通大学硕士研究生学位
论文 第8页 图2-2 Top—down设计方式示意图 Top-down设计须经过“设计——验证——修改设计——再验证”的过程,不断反复,直到得到的结果能够完全实现所要求的逻辑功能,并且在速度、功耗、价格和可靠性方面实现较为合理的平衡为止。
不过,这种设计也并非是绝对的,在设计过程中,有时也需要用到自下而上的方法,就是在系统划分和分解的基础上,先进行底层单元设计,然后再逐步向上进行功能块、子系统的设计,直至构成整个的系统””。
2.2.2自下而上的设计方法 Bottom—up设计,即自底向上的设计,这是一种传统的设计思路。
这种设计方式一般是设计者选择标准的集成电路,或者将各种基本单元,如各种门电路以及像加法器、计数器等模块做成基本单元库,调用这些基本单元,逐级向上组合,直到设计出满足自己需要的系统为止。
这样的设汁方法就如同一砖一瓦建造金字塔,不仅效率低、成本高,而且容易出错。
目6订,Top—down设计更为人们所接受,也为更多的EDA工具所支持,这是由于这种设计思想更符合人们逻辑思维的习惯,也容易使设计者对复杂的系统进行合理的划分与不断的优化。
而Bottom-up设计往往使设计者关注了 西南交通大学硕士研究生学位
论文 第9页细节,却对整个的系统缺乏规划,当设计出现
问题时,如果要修改的话,就会很麻烦,甚至前功尽弃,不得不从头再来。
因此,作为设计者,应该培养Top—down的设计习惯。
2.2.3 FPGA的设计流程 一般来说,完整的FPGA设计流程包括电路设计与输入、功能仿真、综合、综合后仿真、实现、布线后仿真与验证、板级仿真验证与调试等主要步骤,如图2.3所示。
(芝竺兰::竺竺竺竺) 电件破‘1’i输入 (III)l,化码、麒巾【 R.I,被瞄,状卷机)l 27……,譬◇I .些£:.二“………≮麓岁夕 、r 箸 万 ~> 磊肇 ~\妻\ 巨习 图2—3完整的FP(;A设计流程1.电路设计与输入 电路设计与输入是指通过某些规范的拙述方式,将工程师电路构思输入给EDA工具。
常用的设计输入方法有硬件描述语言(HDL)和原理图设计输入方法等。
2.功能仿真 电路设计完成后,要用专用的仿真工具对设计进行功能仿真,验证电路 西南交通大学硕士研究生学位
论文 第10页功能是否符合设计要求。
功能仿真有时也被称为前仿真。
通过仿真能及时发现设计中的错误,加快设计进度,提高设计的可靠性。
3.综合优化 综合优化(Synthesize)是指将HDL语言‘、原理图等设计输入翻译成由与、或、非门、RAM、触发器等基本逻辑单元组成的逻辑连接(网表),并根据目标与要求优化所生成的逻辑连接,输出edf和edn等标准格式的网表
文档,供FPGA厂家的布局布线器进行实现。
另外,FPGA厂商的集成开发环境也自带综合工具。
4.综合后仿真 综合完成后需要检查综合结果是否与原设计一致,做综合后仿真。
在仿真时,把综合生成的标准延时
文档反标注到综合仿真模型中去,可估计门延时带来的影响。
综合后仿真虽然比功能仿真精确一些,但是只能估计门延时,不能估计线延时,仿真结果与布线后的实际情况还有一定的差距,并不十分准确。
这种仿真的主要目的在于检查综合器的综合结果是否与设计输入一致。
5.实现与御局布线 使用FPGA厂商提供的软件工具,根据所选芯片的型号,将综合输出的逻辑网表适配到具体FPGA器件上,这个过程叫实现过程。
因为只有器件丌发商最了解器件的内部结构,所以实现步骤必须选用器件开发商提供的工具。
在实现过程中最主要的过程是布局布线(PAR,Place And Route):所谓布局 (Place)是指将逻辑网表中的硬件原语或者底层单元合理地适配到FPGA内部的固有硬件结构上,布局的优劣对设计的最终实现结果(在速度和面积两方面)影响很大;所谓布线(Rout)是指根据布局的拓扑结构,利用FPGA内部的各种连线资源,合理正确连接各个组件的过程。
6.时序仿真与验证 将自j局斫偿皂的时延信扈、反标注到设计网表中,所进行的仿真就n L{时序仿真或厕i局析i线后仿真,简称后仿真。
析j局斫i线之后生成的仿真时延文件包含的时延信息最全,不仅包含门延时,还包括实际布线延时,所以佰线后仿真最准确,能较好地反映芯片的实际工作情况。
一般来说,布线后仿真步骤必须进行,通过佰局布线后仿真能检查设计时序与FPGA实际运行情况是否一致,确保设计的可靠性和稳定性。
布局和线后仿真的主要目的在于发现时序违规(Timing ViolatiOn),即不满足时序约束条件或者器件固有时序规则(建立时I训、保持时I’日J等)的情况。
在功能仿真中介绍的仿真工具一一般都支持布 西南交通大学硕士研究生学位
论文 第1 1页局稚线.