文档库 最新最全的文档下载
当前位置:文档库 › FPGA视频处理系统设计

FPGA视频处理系统设计

摘要

视频图像处理作为一种重要的现代技术,已经在通信、航天航空、遥感遥测、生物医学、军事、信息安全等领域得到广泛的应用。视频图像处理特别是高分辨率图像实时处理的实现技术对相关领域的发展具有深远的意义。

随着科学技术的进步,视频图像的采集和处理的应用需求也日益增加。传统的采集和处理主要依赖于PC机,以及其它的专用的集成电路板卡来实现的,由于功能比较单一,体积较大,且受到处理速度的限制,已经逐渐不能满足实际的要求。由于FPGA的技术发展很快,运算能力不断增强,运算速度越来越快,成本也在不断降低。目前FPGA的技术已经广泛地应用在各个领域中,从军事到民用,从航空航天到生产生活,都越来越多地使用FPGA。

因此,本设计的视频采集与处理系统采用了双处理系统:专用芯片和可编程逻辑器件FPGA,来完成图像的采集和图像的压缩。选取了适合实际需要的当前业界内运算速度较快的算法——DCT算法。FPGA上VHDL程序功能的模块化和可复用性,可以提高设计效率,从而得到可靠而优化的设计。

关键词:视频图像,FPGA, DCT, 图像处理;

FPGA Video Processing System Design

Abstract

As a kind of important modern technology, Video-image processing has been widely used in following fields such as communication, spaceflight aviation, remote sensing telemetering, measurement, biomedicine, military, information safety, etc. The implementation technique of video-image processing especially high-resolution real-time image processing has far-reaching meanings to the development of relevant fields.

With the advancement of science and technology, the need of Video and Image acquisition and processing is increasing. The traditional measures accomplish this work depending on the personal computer and special IC card. Because of single function and hugeness, the system will not be satisfied with the fact. Recently, the development of FPGA technology is fast, the counter ability becomes better, the counter speed becomes faster, and cost is lower. Now, the FPGA technology have already been applied to these fields, such as Military, aviation, spaceflight, life and so on.

Therefore, the design of the video capture and processing system using dual-processing structure: dedicated chip and programmable logic device FPGA, to complete the image acquisition and image compression. Selecting the actual needs of the industry's faster algorithm ——DCT algorithm at the present. The FPGA of VHDL program function?s modular and reusable can improve design efficiency to be reliable and optimized design.

Key Words: Video and Image, FPGA, DCT, Image Processing;

目录

摘要............................................................................................................................................................. I Abstract........................................................................................................................................................ I I 第一章绪论1

1.1课题研究的意义和背景 (1)

1.2 FPGA在视频处理系统的应用 (1)

第二章视频处理系统的硬件分析 (3)

2.1 FPGA的开发与应用 (3)

2.1.1 FPGA系统结构 (3)

2.1.2 FPGA的结构特点 (5)

2.1.3 FPGA的编程工艺 (6)

2.2 FPGA的开发环境 (6)

第三章硬件描述语言 (8)

3.1 VHDL语言的历史 (8)

3.2 VHDL语言的设计特点 (9)

3.3 VHDL系统优势 (10)

第四章系统硬件电路设计 (11)

4.1双处理系统 (11)

4.1.1双处理系统结构及应用 (11)

4.1.2 FPGA平台系统应用芯片 (12)

4.2 视频采集模块 (13)

4.2.1 MB86S02的功能框图及功能特性 (13)

4.2.2 系统硬件电路结构图 (16)

第五章系统软件设计 (18)

5.1视频数据采集VHDL编程 (18)

5.2视频数据压缩处理 (19)

5.3时序仿真 (22)

第六章系统调试 (24)

第七章总结 (26)

致谢 (27)

参考文献 (28)

附录 (29)

第一章绪论

1.1课题研究的意义和背景

随着信息技术的飞速发展,信息采集不再停留在文字类型上,实时的、高品质的图像和视频信息是许多决策者和科技人员获得动感和感性认识的源泉。视频采集在这方面发挥了很大的作用,越来越受到人们的重视。

如今,网络技术已经发展得非常成熟,通过网络实现远程监控是视频采集技术的一个发展趋势。使用FPGA嵌入式系统实现视频图像采集,然后通过网络传输图像数据更是其中的热点。系统将设备采集到的数据通过网络传送到视频服务器或视频监控中心的数据库中,从而实现嵌入式系统利用Internet技术实现低成本网络互联、信息沟通。

1.2 FPGA在视频处理系统的应用

数字化视频采集与处理系统是嵌入式系统的典型应用,涉及嵌入式系统技术和视频图像信息的编码技术。特别是在视频图像信息的编码技术方面,为了提高系统的视频图像质量与通用性,国际通信联盟(ITU)为视频图像信息的压缩编码制定了很多标准,新的编码技术被迅速应用到图像与视频压缩上。

表1-1是常用的用于图像与视频压缩的标准。其中,JEPG是目前最常用的图像压缩格式之一,广泛应用于图像信息的传递与存储领域;H.263和H.264是目前常用的视频压缩标准,可以在窄带信道上传递流畅的视频影像。可以就应用JPEG格式进行图像压缩,如果想要进一步提高系统性能,可以考虑使用H.263进行视频压缩。

表1-1 常用的图像与视频压缩标准

在视频采集预处理系统中,FPGA最大的特点是结构灵活,有较强的通信性,适于模块话的设计,从而能够提高算法效率。同时,其开发周期较短,系统易于维护和扩展,适合于实时信号处理。这是因为,实时信号处理中,底层的信号预处理算法处理的数据量大,对处理速度的要求高,但运算结构相对比较简单,适用于FPGA进行硬件实现,这样能同时兼顾速度及灵活性。

而高层视频压缩处理算法的特点是所处理的数据量底层算法少,但算法的控制结构复杂,适于运算度高、寻址方式灵活、通信机制强大的专用视频芯片来实现。FPGA 芯片与专用芯片相比,由于其结构上的优势,更适合完成并进行处理、重复性强、速度要求高的数字信号处理运算,而专用芯片更适合完成串行顺序处理。

设计中的专用芯片主要用于运算部分,FPGA主要完成逻辑控制。利用FPGA中预先设置好的训练序列,329个LE就可以实现150个并行相关器,而用DSP来实现相同的功能,其速度要求至少150Mbps。

因此,这个设计的视频采集与处理系统采用了双处理器结构,关键的DCT运算的算法选取了适合实际需要的当前业界内运算速度较快的算法。FPGA上VHDL程序功能的模块化和可复用性,可以提高设计效率,从而得到可靠而优化的设计。

第二章 视频处理系统的硬件分析

2.1 FPGA 的开发与应用

随着FPGA 设计越来越复杂,目前最主要的硬件描述语言是VHDL 和Verilog HDL 。从EDA 技术的发展趋势看,直接采用C 语言设计FPGA 将是一个发展方向,现在已出现用于FPGA 设计的C 语言编译软件,在5~10年内,C 语言很可能将逐渐成为继VHDL 和Verilog 之后设计大规模FPGA 的又一种手段。

通信是FPGA 的传统领域。随着微细化的进步,芯片面积缩小,价格迅速下降,市场发展加快,同时由于FPGA 灵活方便,不仅性能、速度、连接具有优势,而且可以缩短上市时间,因此应用领域不断扩展。现在,许多用户都开始在一些批量生产的消费类电子产品上采用FPGA ,如DVD 、TV 、游戏设备、空调、PDA 、数字视频移动网络、无线局域网等。

2.1.1 FPGA 系统结构

FPGA 即现场可编程门阵列的通用结构,它由逻辑功能块排列成阵列,并由可编程的互连资源连接这些逻辑功能块来实现不同的设计。

FPGA 一般由三种可编程电路和一个用于存放编程数据的静态存储器SRAM 组成。这三种可编程电路是:可编程逻辑块(CLB, Configurable Logic Block )、输入∕输出模块(IOB, I/O BLOCK)和互连资源(IR, Interconnect Resource)。可编程逻辑块CLB 是实现逻辑功能的基本单元,它们通常规则地排成一个列阵,散布于整个芯片;可编程输入∕输出模块(IOB )主要完成芯片上的逻辑与外部封装脚的接口,它通常排列在芯片的四周;可编程互连资源包括各种长度的连线线段和一些可编程连接开关,它们将各个CLB 之间活CLB 、IOB 之间,以及IOB 之间连接起来,构成特定功能的电路。

(1) 可编程逻辑块CLB

CLB 是FPGA 的主要组成部分。它主要由逻辑函数发生器、触发器、数据选择器等电路组成。CLB 中三个逻辑函数发生器分别是G 、F 和H ,相应的输出是G`、F`和H`。G 有四个输入变量1G 、2G 、3G 和4G ;F 也有四个输入变量1F 、2F 、3F 和

4F 。这两个逻辑函数发生器是完全独立的,均可以实现四个输入变量的任意组合逻辑函数。逻辑函数发生器H 有三个输入信号:前两个函数发生器的输出G`和F`,而另一个输入信号是来自信号变换电路的输出1H 。这个函数发生器能实现3个输入变量的各种组合函数。这三个函数发生器结合起来,可实现多达9个变量的逻辑函数。

CLB中有许多不同规格的数据选择器(4选1、2选1等),通过对CLB内部的数据选择器编程,逻辑函数发生器G、F和H的输出可以连接到CLB内部触发器,或直接连接到CLB输出端X或Y,并用来选择触发器激励输入信号、时钟有效边沿、时钟使能信号,以及输出信号。这些数据选择器的地址控制信号均由编程信息提供,从而实现所需要的电路结构。

CLB中的逻辑函数发生器F和G均为查找表结构,其工作原理类似于ROM。F 和G的输入等效于ROM的地址码,通过查找ROM中的地址表可以得到相应的组合逻辑函数输出。另一方面,逻辑函数发生器F和G还可以作为器件内高速RAM或小的可读写存储器使用,它由信号变换电路控制。

(2)输入∕输出模块(IOB)

IOB提供了器件引脚和内部逻辑阵列之间的连接。它主要由输入触发器、输入缓冲器和输出触发∕锁存器、输出缓冲器组成。

每个IOB控制一个引脚,它们可被配置为输入、输出或双向I/O功能。当IOB 控制的引脚被定义为输入时,通过该引脚的输入信号先送入输入缓冲器。缓冲器的输出分成两路:一路可以直接送到MUX,另一路径延时几ns(或者不延时)送到输入通路D触发器,再送到数据选择器。通过编程给数据选择器不同的控制信息,确定送至CLB阵列的I1和I2是来自输入缓冲器,还是来自触发器。

IOB输出端配有两个MOS管,它们的栅极均可编程,使MOS管导通或截止,分别经上拉电阻或下拉电阻接通VCC、地线或者不接通,用以改善输出波形和负载能力。

(3)可编程互联资源IR

可编程互联资源IR可以将FPGA内部的CLB和CLB之间、CLB和IOB之间连接起来,构成具有各种复杂功能的系统。IR主要由许多金属线段构成,这些金属线段带有可编程开关,通过自动布线实现各种电路连接。

片内连线按相对长度分单长度线、双长度线和长线三种。

单长度线连接结构,CLB输入和输出分别接至相邻的单长度线,进而可与开关矩阵相连。通过编程,可控制开关矩阵将某个CLB与其他CLB或IOB连在一起。

双长度线连接结构,双长度线金属线段的长度是单位长度线金属线段的两倍,要穿过两个CLB之后,这些金属线段才与可编程的开关矩阵相连接。因此,通过双长度线可使两个相隔(非相邻)的CLB连接起来。

长线连接结构,由长线网构成的金属网络,布满了阵列的全部长和宽,每条长线中间有可编程分离开关,使长线分成两条独立的连线通络,每条连线只有阵列宽度或高度的一半。CLB的输入可以由邻近的任一长线驱动,输出可以通过三态缓冲器驱动长线。

单长度线盒双长度线提供了相邻CLB之间的快速互连和复杂互连的灵活性,但

传输信号没通过一个可编程开关矩阵,就增加一次延时。因此FPGA内部延时与器件结构和逻辑布线等有关,它的信号传输延时不可确定。长线不经过可编程开关矩阵,

播。

信号延迟时间小,长线用于高扇出、关键信号的传]10[

2.1.2 FPGA的结构特点

FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一,其特点主要有:

(1) 采用FPGA设计ASIC,不需要投片生产,设计周期短、开发费用低、风险小;

(2) FPGA可做其他全定制或半定制ASIC电路的中试样片;

(3)FPGA内部有丰富的触发器I∕O引脚;

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

下面以Altera公司的FLEX∕ACEX系列FPGA与Xilinx公司的FPGA结构做比较,有以下区别:

(1)结构不同。

Altera FPGA: 嵌入式阵列块EAB、逻辑阵列块LAB、FastTrack、I∕O单元;

Xilinx FPGA: CLB(Configurable Logic Block)、IOB、布线资源(ICR)。

(2)RAM的使用不同。

Altera FPGA: EAB可用做大型RAM,LE中查找表也可以构成RAM;

Xilinx FPGA: 没有专门的RAM,需要时可由CLB中的LUT构成。

(3)基本单元不同。

Altera FPGA: LE(8个LE组成一个LAB,一个LE带一个触发器);

Xilinx FPGA: CLB(一个CLB带两个触发器)。

(4)布线不同

Altera FPGA: FastTrack,局部互连,进位链和级联链;

Xilinx FPGA: 单长线、双长线、长线。

(5)时钟的同步方式不同。

Altera FPGA: 使用时钟锁定和时钟自举方法;

Xilinx FPGA: 有一个时钟网用于时钟同步,在Virtex器件中使用DLL (Delay-locked-loop)技术,缩短了信号输出时间,提高了I∕O速度。

(6)另外,Xilinx FPGA中有专门的乘法器。

2.1.3 FPGA的编程工艺

FPGA的功能由逻辑结构的配置数决定。工作时,这些配置数据存放在片内的SRAM或熔丝图上。基于SRAM的FPGA器件,在工作前需要从芯片外部加载配置数据,配置数据可以存储在片外的EPROM或其他存储体上。用户可以控制加载过程,在现场修改器件的逻辑功能,即所谓的现场编程。

用户可以根据不同的配置模式,采用不同的编码方式。加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无需专用的FPGA编程器,只需用通用的EPROM、PROM编程即可。当需要修改FPGA功能时,只需要换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。

FPGA有多种配置模式:并行主题模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,有微处理器对其进行编译。

2.2 FPGA的开发环境

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

Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。

Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA 工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。

此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。

Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。目前Altera已经停止了对Maxplus II 的更新支持,Quartus II 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。Altera在Quartus II 中包含了许多

诸如SignalTap II、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承了Maxplus II 友好的图形界面及简便的使用方法。

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

Altera的Quartus II可编程逻辑软件属于第四代PLD开发平台。该平台支持一个工作组环境下的设计要求,其中包括支持基于Internet的协作设计。Quartus平台与Cadence、ExemplarLogic、MentorGraphics、Synopsys和Synplicity等EDA供应商的开发工具相兼容。改进了软件的LogicLock模块设计功能,增添了FastFit编译选项,推进了网络编辑性能,而且提升了调试能力。支持MAX7000/MAX3000等乘积项器

台。

件。如下图2-1为Quartus II的操作平]8[

图2-1 Quartus II的操作平台

第三章硬件描述语言

3.1 VHDL语言的历史

VHDL的英文全名是Very-High-Speed Integrated Circuit HardwareDescripti on Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的应用,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHD L,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHD L与Verilog语言将承担起大部分的数字系统设计任务。

VHDL语言是一种用于电路设计的高级语言。它在80年代的后期出现。最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。

VHDL的英文全写是:VHSIC(Very High Speed Integrated Circuit)Hard Ware Description Language.翻译成中文就是超高速集成电路硬件描述语言。因此它的应用主要是应用在数字电路的设计中。目前,它在中国的应用多数是用在FPGA/CPLD/EPLD的设计中。当然在一些实力较为雄厚的单位,它也被用来设计ASIC。

VHDL主要用于描述数字系统的结构行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),即涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。

3.2 VHDL语言的设计特点

与其他硬件描述语言相比,VHDL具有以下特点]7[:

(1)功能强大、设计灵活

VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。VHDL 支持同步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的。VHDL还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计。

(2)支持广泛、易于修改

由于VHDL已经成为IEEE标准所规范的硬件描述语言,目前大多数EDA工具几乎都支持VHDL,这为VHDL的进一步推广和广泛应用奠定了基础。在硬件电路设计过程中,主要的设计文件是用VHDL编写的源代码,因为VHDL易读和结构化,所以易于修改设计。

(3)强大的系统硬件描述能力

VHDL具有多层次的设计描述功能,既可以描述系统级电路,又可以描述门级电路。而描述既可以采用行为描述、寄存器传输描述或结构描述,也可以采用三者混合的混合级描述。另外,VHDL支持惯性延迟和传输延迟,还可以准确地建立硬件电路模型。VHDL支持预定义的和自定义的数据类型,给硬件描述带来较大的自由度,使设计人员能够方便地创建高层次的系统模型。

(4)独立于器件的设计、与工艺无关

设计人员用VHDL进行设计时,不需要首先考虑选择完成设计的器件,就可以集中精力进行设计的优化。当设计描述完成后,可以用多种不同的器件结构来实现其功能。

(5)很强的移植能力

VHDL是一种标准化的硬件描述语言,同一个设计描述可以被不同的工具所支持,使得设计描述的移植成为可能。

(6)易于共享和复用

VHDL采用基于库(Library)的设计方法,可以建立各种可再次利用的模块。这

些模块可以预先设计或使用以前设计中的存档模块,将这些模块存放到库中,就可以在以后的设计中进行复用,可以使设计成果在设计人员之间进行交流和共享,减少硬件电路设计。

3.3 VHDL系统优势

(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。

(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。

(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。

(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。

(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。

第四章系统硬件电路设计

4.1双处理系统

4.1.1双处理系统结构及应用

双核心处理系统如图4-1所示,它以专用视频芯片和可编程逻辑器件FPGA为核心,以视频采集芯片、存储器等为外围的嵌入式系统上,实现图像的采集、压缩,并将压缩后的数据通过调制解调器经由PSTN网络发送到接收端(监控中心),在接收端(监控中心)能够使用在PC上编写的上位机程序将图像解压缩并显示出来。

在系统中,FPGA平台主要负责进行高速数字图像采集,并存储到SRAM当中,以备后续使用专用芯片进行压缩和传输。如果要提高系统运行速度,可以考虑把图像压缩的部分也用FPGA来完成,系统性能应该会有很大的提高。

图4-1 双处理系统应用及结构示意图

4.1.2 FPGA平台系统应用芯片

FPGA平台系统所采用的芯片列表如表4-1所示。

表4-1 FPGA平台所用芯片列表

FPGA平台所具有的功能描述如下:

(1)视频图像采集,采集标准CIF图像,格式为YCbCr422(8bit)的数字信号并存储;

(2)VGA显示器驱动,可以显示320×240×12bits,即4096色彩色;

(3)数字音频播放;

(4)连接调试板,调试板包括6个LED和5个按键,可用于调试软硬件;

(5)支持系统扩展,系统扩展槽可用于系统扩展和互联;

FPGA平台结构如下图4-1所示.

图4-1 FPGA平台结构

4.2 视频采集模块

4.2.1 MB86S02的功能框图及功能特性

MB86S02是Fujitsu(富士通)公司生产的一款375x293(10万)像素(CIF格式)的CMOS图像传感器,它的片内集成了色彩信号处理器。这种CMOS图像传感器与色彩信号处理器集成到一个芯片内部的技术降低了功耗,而且减小了体积。MB86S02非常适合应用于移动电话和掌上电脑。

(1)MB86S02的功能框图。

视频源信号来自一个高度集成的COMS数字图像传感器模块MB96S02,它是富士通的产品。它不但集成了CMOS图像传感器阵列、自动增益信号放大器、模块转换器,还包括彩色信号处理和微型镜头,包含了图像的所有前端处理,可以直接输出数字信号。

模块的系统框图如图4-2所示。

图4-2 MB86S02的功能框图

MB86S02基于CMOS工艺,使用有源像素传感器,与传统CCD传感器相比有很多不同点。CMOS技术的最大优点是每一个像素单元可以集成一个或多个晶体管,这样就具有了低功耗和小型化的优点,非常适用于手持设备应用,可以降低系统功耗、体积,提高电池效率。它的高度集成性大大简化了图像应用的系统设计。如图4-3所示是MB86S02的实物图。

图4-3 MB86S02的实物图

(2)MB86S02的功能特性。

MB86S02能够直接输出YCbCr422/YUV422格式的数字图像的特性,大大方便了用户的使用。传统的图像采集系统都是使用模拟图像采集器,然后经过复杂的模数

转换,不仅造价高,而且也大大增加了产品的体积。使用MB86S02可以直接得到图像的数字信号,简化了开发的工作,又提高了系统的性能。

MB86S02的主要特性如下:

1)l/7英寸图像传感器,有效像素为352×288共11万像素;

2)超低功耗30mW@15fps;

3)输出8位CMOS电平并行数字信号,YCbCr422或YUV422格式;

4)色彩信号处理包括:自动增益、自动曝光、自动白平衡、Gamma校正等;5)寄存器设置通过标准2I C串行接口;

6)支持CIF(352×288)QCIF(176×144)格式;

7)CCIR656标准头输出;

8)抗闪烁功能;

9)低功耗模式;

10)掉电模式功耗3μw;

MB86S02不仅体积小,功耗低,而且接口也很简单,连接线的形状可以根据用户的需要来定制,使用起来十分方便,它有21个管脚定义,如表4-2所示。

表4-2 MB86S02 的引脚定义

由于MB86S02采集的数字信号格式为YCbCr或YUV,而VGA显示器需要的是

RGB 分量信号,所以如果想把MB86S02采集的图像直接显示在VGA 显示器上需要进行YCbCr 或YUV 到RGB 的颜色空间转换。

YCbCr 和YUV 是基于亮度与色差的颜色空间,RGB 则是基于红绿蓝三基色的颜色空间。它们之间转换的理论公式为公式(4-1):

V Y R ?+=371.1

V U Y G ?-?-=336.0698.0

U Y B ?+=372.1 (4-1)

当实现8位字长的YUV 到RGB 转换,为了实现高速转换和宽度扩展简化了理论公式,简化后的公式为(4-2):

90

5.0194.0128128

+?--='-+='-+='V U Y G U Y B V Y R (4-2)

其中的0.194倍的U 分量用查表的方法得到,0.5倍V 则直接用右移一位实现,经过这样的简化后,整个转换可以在两个时钟完成,经过测试转换效果比较理想。

4.2.2 系统硬件电路结构图

如图4-4所示是MB86S02的硬件接口模块图,左边端口是与MB86S02的接口;右边是内部信号。该模块的功能是把MB86S02输出的一帧图像信号整理为连续同步数据流简化之后进行的存储操作。

图4-4 MB86S02的硬件接口模块图

FPGA通过与MB86S02 CMOS图像模块的连接,读取图像数据后通过同步SRAM 接口存储在外部高速SRAM中,然后还可以有UART模块,或RTL8019模块把已经存储的图像数据发送到PC机,最后PC机上的接收程序将显示接收图像。通过调试板上的按键可以选择采集图像、地址复位、串口发送、网口发送这几种功能。

相关文档