1、 1 湖南文理学院 课程设计报告 课程名称: 嵌入式系统课程设计 专业班级: 建智 11101 班 学号( 38 位) 学生姓名: 张彤 指导教师: 王丽娟 完成时间: 2014 年 06 月 01 日 报告成绩: 湖南文理学院制 评阅意见: 评阅教师 日期 2 目 录 1 设计要求 . 3 1.1 课题研究工作的背景 . 3 1.2 课题研究工作的现状与发展前景 . 3 2 设计的作用与目的 . 4 3 系统方案设计 . 4 3.1 系统的解决方案 . 4 3.2 视频采集 . 5 3.3 视频压缩 . 6 3.4 基于 ARM 的嵌入式系统开发平台 . 6 3.5 系统总体设计结构图 .
2、7 4 系统硬件设计 . 9 4.1 系统硬件结构 . 9 4.2 系统硬件各模块设计 . 9 4.3 PCB 设计 .13 5.3.1 PCB 布局 .14 5.3.2 PCB 布线 .14 5 系统软件设计 .15 5.1 系统初始化程序设计 .15 5.1.1 ARM 初始化过程 .15 5.1.2 SAA7113 初始化配置 .17 5.2 应用程序设计 .20 6 系统的仿真与调试 .21 6.1 系统调试 .21 6.1.1 传输与控制模块调试 .22 6.1.2 采集模块调试 .22 6.1.3 压缩模块调试 .22 6.1.4 整体调试 .22 6.2 实验结果及结果分析 .2
3、2 7 嵌入式学习心得 .27 参考文献 .30 3 基于 ARM的视频采集系统设计 1 设计要求 1.1 课题研究工作的背景 近年来,随着通信技术、微电子技术和计算机技术的飞速发展,网络带宽和存储容量得以大幅度的提高,而电子、通信、广播之间愈来愈紧密的相互交叉联系,世界进入了全数字化网络时代。与此同时,数字多媒体技术也得到了迅速发展,已逐渐渗透至人们生活、工作和学习的各个方面,改 变着人们传统的生活方式。人们对视频会议、可视电话、数字电视广播等多媒体技术的需求越来越广泛。然而,在多媒体技术中,尤其是数字视频领域,其信息数据量庞大,对处理能力和存储容量的要求极高,如不进行有效的压缩编码则会给通
4、信和传输带来极大的困难,从而无法满足人们的需求。 1.2 课题研究工作的现状与发展前景 根据图像处理技术发展的不同阶段,视频采集系统大致可分为三个阶段: 模拟视频采集系统 模拟视频采集系统一般由图像摄像部分、系统控制部分(视频矩阵切换、云台和镜头控制等)和显示记录部分组成,模拟视频采 集系统一般采用模拟方式传输,传输距离较短,主要应用于小范围内的视频图像采集。 数字化本地视频采集系统 20 世纪 80 年代,随着数字化技术的发展,图像采集的方式出现了由模拟处理方式向数字处理方式的转变。人们开始使用 PC 机来处理图像信号,借助计算机强大的数据处理能力与显示器的高清晰显示度,通过视频采集卡将视频
5、信号采集到计算机中,并显示在显示器上,从而大大提高了图像的画质。 基于 PC 的采集系统一般在采集现场有若干个摄像机、各种检测、报警探头与数据设备,通过各自的传输线路,汇接到多媒体终端上,多媒 体终端可以是一台 PC 机,也可以是专用的工业机箱组成的多媒体终端,除了处理各种信息和完成本地所需要的各种功能外,系统利用视频压缩卡和通信接口卡,通过通信网络,将这些信息传到一个或多个监控中心。基于 PC 的多媒体采集系统功能较强,但功耗高,需要有专人值守。 嵌入式网络视频采集系统 嵌入式网络视频采集系统以网络为依托,集中了多媒体技术、数字图像处理及远程网4 络传输等最新技术,受到了学术界和使用部门的高
6、度重视。嵌入式系统以其本身体积小,实时性高,稳定性好,支持以太网等优点,成为工控领域的新热点。基于嵌入 式技术的网络化视频监控系统有效地将嵌入式技术和视频技术结合在一起,可以很好地解决基于 PC 的视频监控系统中存在的问题。 目前,视频采集与压缩系统正朝着前端一体化、视频数字化、网络化和系统集成化的方向发展,而数字化是网络化的前提,网络化又是系统集成化的基础,所以,视频采集与压缩发展的最大两个特点就是数字化和网络化。 然而,国内视频采集与压缩系统的研究仍停留在基于 PC 的基础上,大多数系统利用国外芯片开发视频采集压缩卡,或在现有的视频采集压缩卡上开发采集软件系统,然后组成采集系统,即数字化本
7、地视频采集系统 。虽然基于 PC 的视频采集系统终端功能较强,便于现场操作,但价格高昂,功耗较大, PC 机端也需专人管理,对于特殊环境或空间狭小、功耗要求严格的地点,这种方式难以满足要求。 2 设计的作用与目的 本课题研究对象为数字视频采集与压缩系统。作为一种伴随着计算机技术、数字多媒体技术和网络技术飞速发展应运而生的实用处理手段,越来越受到人们的重视。本文在详细分析国内外视频采集与压缩系统发展现状的基础上,针对基于 PC 平台的系统难于满足日益复杂和广泛的图像处理应用需求的现实,提出了一种基于 ARM 的嵌入式平台的视频处理解决方案。该方案充分利用了嵌入式平台集成度高、功耗小、支持多任务操
8、作系统等优点,并利用当前最先进的 JPEG2000 编码压缩算法,通过适当的软硬件设计,力图实现一种体积小、功耗低、一体化的视频图像采集和压缩系统,以满足我们对视频采集和压缩的需求。 本系统的研究对于促进视频采集与压缩系统的仪器化,推动相关产业的发展,具有重要的参考价值和指导意义。 3 系统方案设计 3.1 系统的解决方案 目前,嵌入式视频采集与压缩系统的解决方案,主要有以下三种: 视频采集芯片 +DSP 处理器。该方案中由视频 采集芯片完成图像的预处理,由 DSP完成图像的存储、基于 MPEG-4、 H.263 或 MJPEG 标准的图像压缩、网络传输。该方案是采用软件压缩,其灵活性高,可以
9、根据需要修改压缩算法,有利于方案的升级,但缺点是控5 制不够灵活。且 DSP 通常没有强大的操作系统,功能单一,不适合做系统控制。 ARM 嵌入式处理器 +DSP 处理器。该方案同样采用软件压缩,具有软件压缩的优点,同时由于采用了 ARM 处理器,控制比较灵活,可以用做操作系统,做系统控制。但其缺点是:要使用 ARM 芯片对 DSP 的寄存器进行操作,设计 、调试,使用较困难。而且开发周期较长,开发难度大。 视频采集芯片 +图像压缩芯片 +ARM 嵌入式处理器。该方案与前两个方案最大的区别是用图像压缩芯片来代替 DSP 处理器,采用硬件压缩方法。该方案弥补了方案一和方案二的不足,既采用 ARM
10、 处理器做系统控制,又可以缩短开发周期,降低开发难度。而且硬件压缩所需编程量小,压缩速度快,压缩芯片同时提供标准视频信号接口,外围电路设计简单。 根据课题需要和综合以上三个方案的优缺点,本课题采用第三个方案,即视频采集芯片 +图像压缩芯片 +ARM 嵌入式处理器。 3.2 视频采 集 模拟视频摄像头采集的信号是模拟信号,视频信号中不仅包含图像信号,还包括了行同步信号、行消隐信号、场同步信号、场消隐信号等。因此,视频采集中的视频输入处理就显得非常重要。传统的视频输入处理模块采用分离元件,电路非常复杂,而且可靠性差,不易调试。现今,许多著名的半导体生产厂家将这些复杂的视频 A/D 转换电路集成在一
11、块芯片内,生产出视频采集芯片,为后继的图像处理提供了极大的方便。现在市面的视频采集芯片有 PHILIPS 公司的 SAA711X 系统产品、台湾禾瑞亚( EMPIA)公司的 EM2820、美国 TECHWELL 公司的 TW6802 等。通过调研,发现 PHILIPS 公司的产品综合性能最佳,性价比最高,故选择其视频采集芯片 SAA7113H 设计视频采集部分。 SAA7113H 是飞利浦公司视频解码系列芯片的一种,非常具有代表性,在很多视频产品如电视卡、 MPEG2、 MPEG4 中都有应用,该芯片采用 CMOS 工艺,通过 I2C 总线与 PC 机或有 I2C 总线接口的控制芯片相连构成应
12、用系统。其内部包含两路模拟处理通道,能实现视频信号源选择、抗混叠滤波、模数转换( A/D)、自动钳位、自动增益控制( AGC)、时钟发生( CGC)、多制式解码、亮度 /对比度 /饱和度控制( BCS)和多标准 VBI 数据解码。 SAA7113H 的主要作用是把输入的模拟视频信号解码成标准的“ VPO”数字信号,相当于一种“ A/D”器件。 7113 兼容全球各种视频标准,在我国应用时必须根据我国的视频标准来配置内部的寄存器,即初始化,否则 7113 就不能按要求输出。 6 3.3 视频压缩 通常情况下,压缩可描述为通过消除存在于视频信号里的冗余成分,来减少图像或图像组的内容信息。概括地说,
13、压缩技术就是试图识别冗余内容,再从比特流中除去 大量的此类成分。视频压缩的目标是在尽可能保证视觉效果的前提下减少视频数据率。视频压缩比一般指压缩后的数据量与压缩前的数据量之比,由于视频是连续的静态图像 ,因此其压缩编码算法与静态图像的压缩编码算法有某些共同之处,但是运动的视频还有其自身的特性,因此在压缩时还应考虑其运动特性才能达到高压缩的目标。 3.4 基于 ARM 的嵌入式系统开发平台 要建立一个嵌入式系统开发平台,首先要根据系统的设计目标和性能指标来选择芯片,而选择芯片主要考虑其性能,功耗,专业化水平以及其成本。综合各方面的因素,本系统选择了基于 ARM7TDMI 核的嵌入式微处理器。 A
14、RM7TDMI 是 ARM7 处理系列成员之一,是目前应用比较广泛的 32 位高性能嵌入式 RISC 处理器之一。主要性能或特性有以下四个方面: 指令流水线。 ARM7TDMI 使用流水线以提高处理器指令的流动速度。流水线允许几个操作同时进行,以及处理和存储系统连续操作。 ARM7TDMI 使用 3 级流水线,因此,指令的执行分为 3 个阶段:取指、译码和执行。当正常操作时,在执行一条指令期间,其后续的一个指令进行译码、且第 3 条指令从存储器中取指令。 存 储器访问。 ARM7TDMI 核是冯诺依曼体系结构,使用单一 32 位数据总线指令和数据。只有加载、存储和交换指令可以访问存储器中的数据
15、。数据可以是: 8 位、 16 位和 32 位。字必须是 4 字节边界对准,半字必须是 2 字节边界对准。 嵌入式 ICE RT 逻辑。嵌入式 ICE RT 逻辑为 ARM7TDMI 核提供了集成的在片调试支持。可以使用嵌入式 ICE RT 逻辑来编写断点或观察断点出现的条件。它包含调试通信通道( DCC, Debug Conmmunication Channel), Dcc 用于在目标和宿主调试器之间传送信息,嵌入式 ICE RT 逻辑通过 JTAG( Joint Test Action Group)测试访问口进行控制。 指令集。 ARM7TDMI 有 2 个指令集: 32 位 ARM 指令
16、集和 16 位 THUMB 指令集。 ARM7TDMI 核以其自身的独特设计,如基于 RISC 结构、没有 MMU 等,使其在成本上具有先天性的成本优势,比较适合作消费类产品,且功耗很低,是手机、 PDA 和网络控制器的首选芯片。 ARM7TDMI 系列微处理器的典型处理速度是 0.9MIPS/MHz,常见的 ARM7TDMI 芯7 片系统主时钟为 20MHz 133MHz,在性能上也能保证应用的稳定运行。而在众多的 ARM7TDMI 核心的嵌入式微处理器中。 本文选择了 SAMSUNG 的 S3C44B0X,此款芯片能稳定工作在 70MHz 的系统频率上。选择此款芯片的主要原因是该芯片集成了
17、许多外围设备,这对于快速开发是很有帮助的。当然 SAMSUNG 的 IC 设计水平和芯片生产能力和市场推广能力以及它的知名度也是考虑的一个重要方面。 3.5 系统总体设计结构图 图 3.5 视频采集与压缩系统总体设计结构 8 嵌入式视频采集与压缩系统,主要由视频采集与压缩模块及控制与传输模块组成。采用 ARM 处理器 S3C44B0X 作为控制与传输模块的核心芯片,实现对系统数据的控制、外围模块的控制和管理以及数据的传输。 视频采集部分主要是接收模拟视频摄像头输入的模拟信号,并将它转换成符合一定标准的数字信号,输送到后端。这里采用飞利浦公司生产的单片、可编程视频输入采样芯片 SAA7113H,
18、完成模拟电视信号亮度、色度信号的分离,并将模拟电视信号转换成 CCIR656 标准 的 8 位 YUV4: 2: 2 数字信号。 S3C44B0X 通过 I2C 总线完成对 SAA7113H 的控制,控制方便,接线简单。 视频压缩部分采用 ADI 公司的单片 JPEG2000 编解码芯片 ADV202,编解码芯片接收 8 位 YUV 数字信号,并完成数字信号的 JPEG2000 压缩编码,压缩后的码流在 S3C44B0X 控制下缓存在 SDRAM 中。 视频传输部分则是通过系统中的 USB 设备与上位机相连,完成将 SDRAM 中的数据实时地传送到上位机进行保存,其接发送过程由 S3C44B0
19、X 芯片控制完成。 4 系统硬件设计 4.1 系统硬件结构 根据一般视频系统的功能结构的划分,视频采集与压缩系统的硬件可以分为以下五个模块: 1、采集模块; 2、压缩模块; 3、控制模块; 4、传输模块; 5、其它模块。 视频采集模块采用视频解码芯片 SAA7113H,在视频采集主控制器 S3C44B0X 和 ADV202 的控制下,将外部 CCD 采集到的模拟信号转换为数字信号。视频压缩模块采用 ADV202 进行视频编码和处理,对采集的图像进行图像数据格式转换和压缩等处理。采用 S3C44B0X 芯片与 ADV202 进行通信,同时控制 SAA7113H 工作。 USB 接口与上位机连接,
20、将图像数据送往上位机,进行下一步的处理分析。系统框图,如图 4.1 所示。 9 图 4.1 系统框图 4.2 系统硬件各模块设计 视频采集模块设计需要考虑的因素 设计视频采集模块,首先需要考虑的是信号的 A/D 转换,因为采用了集成处理芯片 SAA7113H,通过设置芯片的内部寄存器,可以很方便的实现视频信号的 A/D 转换。 SAA7113H 在上电后,芯片不是立即采集模拟视频信号进行 A/D 转换处理和输出数字信号的,它必须 由主控制器通过 I2C 串行总线对其内部寄存部进行初始化设置后,才能正常工作。 1) I2C 串行总线。由于主控制器 S3C44B0X 提供 I2C 总线接口,所以
21、SAA7113H 可以通过 SCL、 SDA 信号线直接与 S3C44B0X 的相应管脚相连。 2) 输出数据格式。 SAA7113H 的 VPO 总线宽度为 8 位,输出格式为标准 ITU-R BT 656 YUV4: 2: 2 的视频数据。 SAA7113H 每个有效扫描行有 720 个像素,在每个 LLC 的上升沿输出一个 Byte 的解码数据,每 个像素需要两个 LLC 周期,每个像素都有自己的亮度数据 Y,但是输出的数据中每两个相邻的像素共用一组色差数据 CB、 CR,在存储图10 像数据时我们可以认为每一个像素的数据由两个连续的 Byte 表示,但是当需要转换为 RGB 格式或进行
22、其他处理时,是第 2n 个和第 2n+1 个像素共用一组色差数据 CB2n、 CR2n( n=0,1,2 ),相应地进行正确的处理。 视频采集模块的硬件电路设计 在使用 SAA7113H 进行图像采集模块设计时,只需对 SAA7113H 的内部结构做大致了解,重点在于如何通过 I2C 总线对芯片内部的寄存器进行初始化控制,使其输出所需的数字视频信号,同时还要掌握芯片的相关信号输出时序。 芯片输出的信号除了 8 位 VPO(总线数字视频输出)外,还包括 VS(场同步)、 VREF(场消隐)、 HS(行同步)、 HREF(行消隐)、 ODD(奇偶场指示)。这些信号通过 I2C 总线控制 SAA7113H 内部子地址为 12H 寄存器的值,在芯片 RTS0 和 RTS1 两个引脚选择输出。图 4.2 和图 4.3 分别为行时序图和场时序图。在图中, HREF 的上升沿表示新的有效行采样的开始,在场消隐 期间该信号同样存在, HREF 为低电平时指示行消隐期。 VREF 是消隐信号,采用 VRLN 0 的工作方式,其低电平表示消隐期,场消陷期间对数据不做任何处理。 ODD 是奇偶指示信号,高电平表示为奇场,低电平表示为偶场。 图 4.2 行时序图