(信号与信息处理专业论文)基于usb总线的实时视频采集系统设计与实现.pdf_第1页
(信号与信息处理专业论文)基于usb总线的实时视频采集系统设计与实现.pdf_第2页
(信号与信息处理专业论文)基于usb总线的实时视频采集系统设计与实现.pdf_第3页
(信号与信息处理专业论文)基于usb总线的实时视频采集系统设计与实现.pdf_第4页
(信号与信息处理专业论文)基于usb总线的实时视频采集系统设计与实现.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 摘要 通用串行总线( u s b ) 作为一种新兴的计算机外设总线标准,从标准的出现 到大规模的应用,仅用了短短几年的时间,这一切都得益于它易用、真正的热插 拔、高性能和系统造价低廉等优点。同时多媒体技术及多媒体d s p 芯片的发展 也日新月异,人们对简单、高效的视频采集系统的需求正日益提升。 u s b 技术和d s p 技术的结合提供了一种良好的视频采集系统的解决方案。 u s b 使系统具有简单的接口界面、优秀的可扩展性。而d s p 技术提供了处理复 杂视频编码运算的能力,使系统高效运行。 本论文以基于u s b 接口的实时视频采集系统的设计开发为主要内容,阐述 了利用n a t i o n a ls e m i c o n d u c t o r 公司的u s b n 9 6 0 4 与p h i l i p s 公司的t m l 3 0 0 等组 成的一套采集系统的分析设计、开发过程及测试分析。 论文首先介绍了u s b 总线协议,然后分析了实时视频采集系统的软硬件组 成,给出了整个系统的框图,主要包括u s b 设备端和u s b 主机端。并且具体阐 述系统各部分的实现,重点是设备端的u s b 接1 3 模块和主机端的驱动程序的设 计与实现。通过详细的实验对系统进行了测试,对系统所达到的性能进行了分析。 测试结果表明,该设计系统工作稳定,所达到的u s b 最高传输速率为7 2 m b p s ; 在进行实时视频数据采集时,在量化步长为8 、4 、2 ,采集速率为4 8 0 k b p s 、9 3 0 k b p s 、 1 4 m b p s 时,均获得连续、稳定的采集图像,达到了预期的目标。最后对本文内 容进行了总结,并对存在的问题提出了进一步改进的思路。 关键词:u s b 总线、t m l 3 0 0 、视频采集系统、u s b 接口模块、设备驱动程序 南京邮电学院倾士学位论文基于u s b 总线的实时视频采集系统设计与实现 a b s t r a c t u n i v e r s a ls e r i a lb u sf u s b ) i so n eo ft h em o s ti m p o r t a n td e v e l o p m e n t si np c p e r i p h e r a li n t e r c o n n e c tt e c h n o l o g y t h eb e n e f i t so fu s b ,s u c ha se a s eo fu s e ,t r u e p l u ga n dp l a y , h i g hp e r f o r m a n c e ,a n dr e d u c e d o v e r a l ls y s t e mc o s t ,a r ej u s taf e wo f t h er e a s o n st h a tt h i st e c h n o l o g yh a sg o n ef r o ms p e c i f i c a t i o nt op r o d u c td e v e l o p m e n t i np a s taf e wy e a r s ,a tt h es a m et i m e ,t h ed e v e l o p m e n to fm u l t i m e d i at e c h n o l o g ya n d d i g i t a ls i g n a lp r o c e s s i n gc h i pi sf a s t t h en e e df o re a s ya n dh i g h p e r f o r m a n c e dv a c ( v i d e oa c q u i s i t i o nc a r d ) i sr i s i n g m a k i n gu s ba n dd s pt o g e t h e rc a np r o v i d eag o o dv a c s o l u t i o n u s bg i v et h e s y s t e m av e r ys i m p l ei n t e r f a c e ,g o o de x t e n s i o n ;d s ph a v e t h e c a p a b i l i t yo f c o m p l i c a t e dv i d e op r o c e s s i n ga n dc o d i n g t h ep a p e ri sm a i n l yc o n c e r n e dw i t ht h ed e s i g np r o c e s so fv i d e oa c q u i s i t i o n s y s t e mt h a ti sb a s e do nh i g hp e r f o r m a n c em u l t i m e d i ad s pa n d u s bb u s t h ed e s i g n s c h e m e ,d e v e l o p i n gm e t h o da n dp e r f o r m a n c ea n a l y s i so fas u i t o fv i d e oa c q u i s i t i o n s v s t e mu s e dw i t hn a t i o n a l su s b n 9 6 0 4a n dp h i l i p s st m l 3 0 0a r ed e s c r i b e d i n d e t a i l s a tf i r s t ,t h ep a p e ri n t r o d u c e st h ep r o t o c o lo f u s bb u si nb r i e f , a n dt h e nd i s c u s s e s t h ed e s i g ns c h e m eo fv i d e oa c q u i s i t i o ns y s t e m ,w h i c hi n c l u d e st w os e g m e n t :u s b d e v i c ea n du s bh o s t t h i r d l y , i td e s c r i b e st h es y s t e mr e a l i z a t i o ni n d e t a i la n d e m p h a s i z e su s bi n t e r f a c em o d u l ea n dd e v i c e sd r i v e rp r o g r a m t h er e a lt i m et e s t r e s u l t sa n dt h ep e r f o r m a n c ea n a l y s i sa r eg i v e n t h er e s u l t ss h o wt h a t t h es y s t e m w o r k sr e l i a b l y , i t st o pu s bt r a n s m i s s i o nr a t ec a nr e a c h7 2m b p s ;u n d e rr e a lt i m e v i d e oa c q u i s i t i o n ,w h e nq u a n t i z i t i o ns t e p sa r ee i g h t ,f o u ra n dt w o ,t h ed a t ar a t e sa r e 4 8 0 k b p s ,9 3 0 k b p sa n d1 4 m b p st h ea c q u i r e dv i d e o sa r ec o n t i n u o u sa n ds t a b l e ,w h i c h s a t i s f i e st h ed e s i g ng o a l i nt h el a s t ,t h et h e s i sm a k e sb r i e fc o n c l u s i o n ,a n dp r e s e n t s p o s s i b l ew a y sf o rf u r t h e ri m p r o v e m e n t k e y w o r d s :u s bb u s ,t m l 3 0 0 ,v i d e oa c q u i s i t i o ns y s t e m ,u s bi n t e r f a c em o d u l e ,u s bd e v i c e d r i v e r 南京邮电学院学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得南京邮电学院或其它教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了 明确的说明并表示了谢意。 研究生签名:互叁蟑日期:堡盎2 :习 南京邮电学院学位论文使用授权声明 南京邮电学院、中国科学技术信息研究所、国家图书馆有权保留 本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其 他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一 致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布 ( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权 南京邮电学院研究生部办理。 研究生签名:亳趋叁翊p 导师签名:黼日期:w 。,9 :, 南京邮电学院硕上学位论文 基于u s b 总线的实时视频采集系统设计与实现 0 1 视频技术的发展 绪论 随着现代通信技术的飞速发展和通信业务的不断拓展,多媒体通信已经成为 通信业务发展的必然趋势。图像信息传输己经成为现代通信系统所应提供的基本 服务,但图像通信与通信网容量的矛盾日益突出,特别是具有庞大数据的数字图 像通信更难以传输与存储,极大的制约了图像通信的发展,成为图像通信的“瓶 颈”问题。 在过去的二十年中,多媒体数字图像处理技术取得了很大的进步。上个世纪 8 0 年代以来,i s o i e c 制定的m p e g x 和i t u t 制定的h 2 6 x 两大系列视频编 码国际标准的推出,开创了视频通信和存储应用的新纪元。从h 2 6 1 视频编码建 议,到h 2 6 3 、m p e g 1 2 4 等都有一个共同的不断追求的目标,即在尽可能低 的码率下获得尽可能好的图像质量。而且,随着市场对图像传输需求的增加,如 何适应不同信道传输特性的问题也日益显现出来,这又推进了i e o i e c 和r r u t 两大国际标准化组织联手制定出视频编码新标准h 2 6 4 。另一方面,多媒体芯片 技术的发展也是日新月异,t i 、a d s p 、p h i l i p s 等公司纷纷推出各种高性能的多 媒体d s p 芯片。d s p 的典型特征是具有每个处理周期能够处理多条乘加操作、 具有实时运算能力、具有很强的通用性、很高的可靠性,并且造价低廉。在当今 数字化时代的背景下,d s p f 成为通信、计算机、消费类电子产品等领域的基础 器件。 o 2 视频采集卡 视频采集卡作为个p c 的内部硬件设备,以i i l j l 缘了专业人员外,使t f j 视步奂 采集卜的人也是橱指可数。但现在况频会议的大力发展,对视频会汉的图像质鞋 f j 了高要求,为其功能较摄像头的多样性,现在越来越多的企、用户也川始使 门_ jm 频采集卡。大多数视频卡都具备硬件压缩的功能,在采集视频信号时首先在 卡上对视频信号进行压缩,然后再通过p c i 接口把压缩的视频数据传送到主机 上。所以,视频采集卡就是接收来自模拟摄像头的模拟视频信号,并对其实施 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 a d 转换,然后经过压缩编码生成压缩码流,最后通过数据接口,如p c i 等把码 流传入p c ,成为可编辑处理的视频数据文件。 视频采集卡按照其用途可分为广播级视频采集卡,专业级视频采集卡,民用 级视频采集卡,它们档次的高低主要是采集图像的质量不同。专业级视频采集 卡的档次比广播级的性能稍微低一些,分辨率两者是相同的,但压缩比稍微大一 些,其最小的压缩比一般在6 :1 以内,输入输出接口为a v 复合端子与s 端子。 民用级视频采集卡的动态分辨率一般较低,绝大多数不具有视频输出功能。 o 3 基于u s l 3 总线的视频采集系统 随着视频技术的发展,个人计算机也进入了丰富多彩的多媒体时代,尤其是 近年来,随着微机的广泛普及和不断升级,其已经成为科学研究的主要工具之一, 而很多传统仪器也已经演变成了p c 机的外设,各种复杂的处理和控制都由p c 机来完成。但是p c 机的外设扩展仍然受到一些系统i o 资源( 如i r q 、d m a 和 i o 地址等) 的影响,p c 机内有限的插槽也不能满足要求。为解决此问题,通用 串行总线( u s b ,u n i v e r s a ls e r i a lb u s ) 技术诞生了。它使用一个4 针插头作为标 准插头,通过这个标准插头,采用菊花链形式可以把所有的外设连接起来,并且 不会损失带宽。u s b 概念的提出是在1 9 9 4 年,1 9 9 6 年u s b l 0 协议公布,1 9 9 8 年后随着微软在w i n d o w s 9 8 中内置了对u s b 接口的支持模块,加上u s b 设备 的同渐增多,u s b 逐步走进了实用阶段。现在p c 机都配备有u s b 接口,流行 的操作系统也都支持u s b ,很多厂商提供u s b 芯片、外设,随着u s b 2 0 协议 的发布,u s b 进入它发展的黄金时代。 与传统接口总线相比,u s b 主要的优点有两个:第一,连接简单灵活:在 u s b 方式下,所有的外设都在机箱外连接,连接外设不必再打开机箱,允许外 设热插拔,不必关闭主机电源,不必用户参与设备安装过程。另外,u s b 接口 支持多个不同设备的串列连接,u s b 采用“级联”方式,即每个u s b 设备用一 个u s b 插头连接到一个外设的u s b 插座上,而其本身又提供一个u s b 插座供 下一个u s b 外设连接使用。通过这种类似菊花链式的连接,一个u s b 控制器可 以连接多达1 2 7 个外设,而每个外设间距离( 线缆长度) 可达5 米。从用户的角 度来看,u s b 能智能识别u s b 链上外围设备的插入或拆卸,u s b 为p c 的外设 2 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 扩充提供了一个很好的解决方案。第二,快速:u s b l 1 协议规定了两种速度: 低速1 5 m b p s 、全速1 2 m b p s ,现有的u s b 2 0 传输速度已经高达4 8 0 m b p s ,折合 约6 0 m b s 的峰值传输速率,从目前来看,这个速度已经足够应付绝大多数应用。 另外,u s b 设备一般都比同类功能的设备成本低。同时,p h i l i p s 的t r i m e d i a 系 列d s p 以其强大的视频处理能力,成为视频压缩编码任务的首选。将u s b 与 d s p 结合起来,对视频采集系统而言,是具有相当吸引力的解决方案。 基于以上讨论,本论文考虑采用u s b 接口的视频采集系统方案设计和实现, 这种方法将克服传统采集卡( 一般多是p c i 卡或i s a 卡) 的以下缺点:安装麻 烦,价格昂贵,受计算机插槽数量、地址、中断资源限制,可扩展性差,在一些 电磁干扰性强的测试现场,无法专门对其做电磁屏蔽,导致采集的数据失真。 本论文首先对u s b 协议进行了分析,接着在此基础上描述了实现u s b 接口 的视频采集系统的软硬件方案,主要包括u s b 设备端和u s b 主机端。然后具体 阐述系统各部分的实现,重点是设备端的u s b 接口模块和主机端的驱动程序的 设计与实现,最后通过详细的实验对系统进行了测试,对系统所达到的性能进行 了分析。 ! 堕堕皇兰堕堕生兰笪堡塞 ! 苎兰竺! ! 璺垡塑壅堕望塑墨壅墨篓垦塑皇塞里! 第一章通用串行总线u s b 1 1 u s b 技术出现的背景及其发展状况 随着电脑应用的拓展,p c 机的外设越来越多,在机箱的外部出现了各种各 样的外设接口:并行口、串行口、键盘口、鼠标口、音频输入输出口、视频输出 口、网络接口等等。由于各种外部设备不断增加,计算机所提供的用于连接外设 的资源日渐捉肘,时常因为不能提供更多的接口,而导致各种i 0 的冲突,加之 各种中低速外设缺少一个双向、低价、即插即用的统一的总线,限制了外部设备 的开发。 在这个背景下,m i c r o s o f t 公司予1 9 9 4 年提出了即插即用( p l u ga n d p l a y , p n p ) 技术方案。这种技术解决了用户为外设手工设置资源参数的困难,改由系统自动 进行设置。但新外设的安装仍然显得相对麻烦,而且扩充外设数量的问题也没有 解决。因此,在1 9 9 6 年召开的面向p c 机硬件技术工作者会议上,提出了设备 插架( d e v i c eb a y ) 的概念。基于这样的概念,c o m p a q 、i n t e l 、m i c r o s o f t 、i b m 、 n e c 等大厂商,开发出了适合中低速的外部设备使用的u s b 总线接口,它是一 种典型的设备插架结构的总线。此后,u s b 总线规范的推广日益深入,至今, 各种基于u s b 总线接口的外设已达千余种之多。u s b 逐渐被几乎所有p c 制造 商所接受,目前绝大多数的p c 都配置有1 4 个标准u s b 总线接口,而且通过 u s b 集线器( h u b ) 的扩充,可以支持多达1 2 7 个外设同时连接。 u s b 的对象最初瞄准的是诸如调制解调器、扫描仪、键盘、鼠标、操纵杆 等这样的低速设备。通过不断的发展,u s b 已能胜任更高速的数据传输,因此 适用的范围也逐步扩大到了如外置大容量存储器、数码相机、视频系统等这样需 要大量传输数据的外部设备当中去。目前,最新的u s b 2 0 甚至到了可以支持实 时的高分辨率视频传输的水平。 2 0 0 0 年4 月公布的2 0 版本将以往版本的数据吞吐量提高了4 0 倍,达到了 4 8 0 m b i t s 。2 0 版本对原u s b l 1 规范的性能有所扩展,但又向下兼容,由于可 以使用与以往相同的电缆、连接器和软件接1 2 1 ,故用户看不出同以往有什么不同, 可它却能用于更多的、较高性能的外设。所有支持u s b l 1 总线接口的设备都可 4 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 以直接在u s b 2 0 总线接口上使用而不必担心兼容性的问题,但是反之,除非厂 商在设计之初就将其设计为u s b l 1 和2 0 通用的,否则u s b 2 0 的设备不可能 在u s b l ,1 上正常工作。虽然u s b 2 0 的这种架构对设备更为敏感,但占用的c p u 时间少,并降低了软件的复杂性。 u s b 2 0 总线规范特别定义的微帧( m i c r o f r a m e ) 结构,使得u s b 2 0 总线接 口设备在小缓存的情况下依然能够以高速率传送数据。不过,如果外设并不支持 如此高的速度的话,系统将还还原到较早的1 2 m b s ( 全速) 或1 5 m b s ( 低速) 速度上来。 当前p c 上的应用软件大部分还是为操作u s b l 1 总线接口外设而设计的, 这一点尚未得到及时的改变。虽然现在的u s b 设备中大都使用全速模式和低速 模式,但随着u s b 传输数据速度的提高,传输实时性的增强,可以预见在不久 的将来,在所有高、中、低速外设中,u s b 总线接口将成为极其重要的标准接 口。 1 2 u s b l 1 规范概述 由于当前大部分p c 机以及u s b 芯片还不支持u s b 2 0 ,所以我们的设计主 要面向u s b l 1 协议。本节将概要介绍与实际制作密切相关的u s b i 1 规范的核 心内容和重点概念,快速进入到实际设计的流程中。 1 2 1u s b 总线体系结构 u s b 总线是一种串行总线,支持在主机与各式各样即插即用的外设之间进 行数据传输。它出主机预定传输数掘的标准协议,在总线上的各种外设上分享 u s b 总线带宽。一个完整的u s b 总线体系可以分为三部分:u s b 总线的主机、 u s b 总线的设备以及它们之问的互连。在任何u s b 总线体系中,只能有一个主 机。u s b 总线主机通过主机控制器( h c d ) 与u s b 总线设备进行交互。 整个u s b 体系又可以分三层:功能层、u s b 设备层和u s b 总线接口层。如 图1 1 所示。主机端和设备端的功能层之间进行逻辑上的数据传输,即建立起一 系列管道,在管道中传输的数据完全是任意的格式和类型,仅仅根据设备所实现 的功能不同而不同。比如打印机软件要向u s b 打印机发送数据,在功能层上, 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 数据的格式和用传统打印机是相同的。然而,实际上的数据流是从功能层向下传 输到了u s b 设备层。 图1 1u s b 总线体系结构 u s b 设备层的主要作用是转换功能层传递下来的数据格式为u s b 格式,然 后再向下一层( u s b 总线接口层) 传递。u s b 设备层之间也进行逻辑上的数据 传输,不过这些数据传输只能为传递设备的基本信息服务,这个数掘传输就定义 为缺省管道0 。在此管道上传输的数据具有u s b 的数据格式,它们必须遵守u s b 的规范。 主机端和物理设备端的u s b 总线接1 2 1 层之间进行实际的物理数据传输。在 主机端向物理设备端发送数据时,主机端的u s b 总线接口层接受u s b 设备层下 传的数据,然后将数据打包,传送给物理设备端的u s b 总线接口层,物理设备 端的u s b 总线接e 1 层收到数据后,进行拆包操作,然后把数据发往它的u s b 设 备层。 无论在软件还是硬件层次上,u s b 主机都处于u s b 总线体系的核心。主机 南京邮电学院硕七学位论文 基于u s b 总线的实时视频采集系统设计与实现 系统不仅包含了用于和u s b 设备进行通信的u s b 主机控制器及用于连接的u s b 接口( s i e ) ,更重要的是主机系统是u s b 系统软件和u s b 客户软件的载体。 1 2 2u s b 功能层中的数据传输逻辑 功能层中的数据传输逻辑指主机端和u s b 设备端在功能层上进行数据传输 的逻辑方式。下面是功能层中的数据传输逻辑的一些关键概念。 ( 1 ) 端点:每个设备内有一个或多个逻辑连接点,称为端点。 ( 2 ) 接口:一个设备对主机表现为一组合适的端点,一组相关的端点称为一 个接口。有多个接口的设备称为复合设备。 ( 3 ) 配置:设备可以有多组接口,每一组称为一个配置,一次只能有一个配 置是有效的。但是,当前配置中的所有接口( 和它们的端点) 可以同时是有效的。 大多数设备只有一个配置和一个接口。 f 4 ) 管道:在u s b 中,传输是在设备的某一个端点和主机软件之间进行的, 这个相关的结构就称为管道,即设备的一个端点与主机之间的数据传输的模型。 管道有两种:流管道和消息管道。其中消息管道的数据结构是u s b 定义好的, 而流管道没有固定的结构。另外,数据传输带宽、传输类型、端点的特。陛都影响 着它的管道特性。大多数的管道在u s b 设备配爱好之后就产生了。其中有一个 最重要的消息管道是“缺省控制管道”,这个管道在设备一加电的时候就存在了, 它提供设备的配置和状态等信息的控制。 管道可以是单向的也可以是双向的。一个u s b 设备可以有很多个管道,管 道之削是相互独立的,比如设备的一个管道可以从主机接收数据而另一个管道可 以发送数据。在一个设备配置中每一个管道即每一个端点只能支持一种数据传输 类型。 u s b 功能层中端点、接口、配置之间的关系如图1 2 所示。 量堕业堕堡主兰垒堡苎 ! 苎王望! ! :i 些塑塞壁塑塑墨茎至竺堡生皇塞翌! u s b 设备 l 配置1 = = 王 接口o i l 接口1 端点o | 1 端点1 ( 管道0 ) 1 | ( 管道i ) 接r 7 0 | | 接口i 昱0 昱0 虽i 星li 呈li 墨ij 呈ll 呈 图1 2 功能层中的端点、接口、配置关系 1 2 3u s b 总线传输的一些协议规范 下面是在u s b 总线传输过程用到的重要概念。 ( 1 ) 包:总线上传输的最小数据单位。共有五类包:令牌包、帧开始包、数 据包、握手包、特殊包。 令牌包:图1 3 显示了令牌包的格式。由p i d ( p a c k e ti d e n t i f i e r ) 字段、 a d d r ( a d d r e s s ) 字段、e n d p ( e n d p o i n t ) 字段和c r c ( 循环冗余校验) 字段 构成。其中,p i d 指定了包是输入、输出还是建立类型。只有主机能发出令牌包。 8 b i t s7 b i t s4 b i t s5 b i t s 图1 3令牌包的格式 帧开始( s t a r to ff r a m e ,s o f ) 包:主机以每1 o o o 0 0 0 5 m s 一次的额定 速率发出帧开始包。如图1 4 所示,s o f 包是由p i d 、其后的l l 位的帧号字段 和c r c 字段构成。s o f 包中包括有两个时间信息。当外设检测到s o f 的p i d 时, 就知道发生了帧开始。对帧时间间隔敏感但不需要记录帧数的外设,只需对p i d 译码;如果外设同时对帧数敏感,则必须同时对p i d 和时间戳进行译码。如果全 速设备对总线时间没有特别要求的话,可以忽略s o f 包中的内容。 黑一接 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 图1 4 帧开始包格式 数据包:如图1 5 所示,数据包由p i d 、大于或等于0 个字节数据的数据 区和c r c 构成。有两种类型的数据包,其分别为d a t a 0 和d a t a l 。在数据传 送时,这两种数据包将交替出现。数据必须以整数的字节数发出。 8 b i t s0 1 0 2 3 b i t s1 6 b i t s 图1 5 数据包格式 握手包:握手包仅由8 b i t s 的p i d 构成。握手包用来报告数据事务的状态、 能表示数据成功接收、命令的接收或拒绝、流控制和中止条件。握手包有三种类 型:a c k 表示数据包没有位填充错和数据字段上的c r c 错,并且正确接收到数 据p i d ;n a k 表示外设不会从主机接收数据( 对于输出事务) ,或者夕 设不能传 输数据到主机( 对于输入事务) ,n a k 并不是说外设出错,而是暂时无法传输数 据,如果出错,那么任何应答信号都不发;s t a l l ( 挂起) 表示外设不能传输或 者接收数据,或者不支持一个控制管道请求。在任何情况下都不允许主机返回 s 1 a l l ,只能由外设返回。 表1 1 显示了外设对输入令牌可能做的回答。如果由于停止或流控制条件的 原因造成外设不能发送数据,它将发出s t a l l 或n a k 握手包。如果外设能发 出数据,则执行发送数据操作。如果收到的标记是损坏的,则外设不作任何应答。 9 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 表1 1 外设对输入事务的回答 收到的标志损坏外设的发送端点外设能否发送数采取的动作 的挂起特征据 是不管不管不回应 否置了位不管发送s w 儿l 握手 否没置位否发送n a k 握手 否没置位能发送数据包 表1 2 显示了主机对输入事务的回答。主机只能返回一种类型的握手:a c k 。 如果主机不能从外设接收数据,则认为该事务是错误的,主机将不作应答。如果 主机能接收数据,并且接收到的数据包是完整无错的,则主机接收数据并发出 a c k 握手。 表1 2 主机对输入事务的回答 数据包损坏 主机能接受数据主机返回的握手 是 n j a丢弃数据,不回应 否 否丢弃数据,不回应 否能接收数据,发送a c k 外设对输出事务的握手回答由表1 3 表示。当标记译码成功,外设收到数据 包后,根据接收情况的不同,返回三种握手类型中的一种。如果数据包被损坏, 外设不返回握手;如果完整无错地接收到数据包,而外设的接收端点被停止,则 外设返回s t a l l ;如果事务正维持着时序位同步而探测到失配,那么外设返回 a c k 并丢弃数据:如果外设处于能接收数据的状态并完整无错地收到数据,它 返回a c k :如果由于流控制的原因,外设不能接收数据包,它返回n a k 。 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 表i ,3 外设对输出事务的回答 数据包损坏接收器挂起特时序位匹配 外设可接收数外设返回握手 征 据 是 n an &n a 无 否置了位n an as t a l l 否没置位否 n aa c k 否 没置位 是可 a c k 否没置位是 否n a k 特殊包:主要是前同步( p r e ) 包,用于主机想从全速变为低速传输时, 比较少用。 按照协议,每次传输开始时,主机控制器发送一个描述传输运作的种类、方 向以及u s b 总线设备地址和终端号的令牌包( t o k e np a c k e t ) 。数据传输只有两 个方向,从主机到设备或是从设备到主机。为了保证u s b 数据传输的正确性, 在数据和控制信息上加了循环冗余校验码( c r c ) 。每次发送端发送了数据包后, 接收端要相应地发送一个握手的数据包,表明是否传输成功。 ( 2 ) 事务:在u s b 中完成某一个功能的信息传输叫做一个总线事务。每个事 务都是由包组成的,在一个事务中的包的种类不超过3 个。 主机总是使用一个标志类型的p i d 开始一个事务,数据包可以沿任何一个方 向发送。最后,沿数据传输的相反方向发送回一个握手信号。 ( 3 ) 传输类型:u s b 体系定义了4 种传输类型。 控制传输类型支持设备与主机之间的控制、状态、配置等信息的传输, 为设备与主机之间提供一个控制通道。任何设备都支持控制传输类型,这样主机 与设备之间就可以传送配置和命令,状态信息。 同步传输类型支持有周期性、有限的时延和带宽且数据传输速率不变的 设备与主机之间的数据传输。该类型无差错校验,故不能保证正确的数据传输。 中断传输类型支持游戏手柄、鼠标和键盘等设备,这些设备与主机间数 据传输量小,无周期性,但对响应时间敏感,要求马上响应。 批传输类型支持打印机、扫描仪、数码相机等设备,这些设备与主机间 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 传输的数据量大,u s b 在满足带宽的情况下才进行该类型的数据传输。 ( 4 ) 描述表 u s b 总线设备通过描述表来反映其属性,同时主机也通过描述表来了解设 备的信息。描述表是具有特定格式的数据结构,每一个描述表的首字节表明本描 述表的长度,紧跟其后的一个字节是描述表类信息。u s b 设备一般需要有设备 描述表、配置描述表、接口描述表、端点描述表、字符串描述表。所有的描述表 都需符合u s b 规范中的定义。 1 2 4u s b 总线设备的p n p 支持 所有的u s b 设备都接在一类特殊的u s b 设备_ h u b 上。h u b 有一个状态 指示器专门保存它的端e l 上的各个设备的连接状态( 连接状态和断开状态) 。主 机通过查询这些指示器来得到设备的连接状态。 当主机得到一个连接状态的时候,它会使能这个端口然后通过设备的缺省控 制端口来为设备设置一个地址。当主机为设备设置好唯一的设各地址后,开始判 断新设备是一个h u b 还是一个“功能”,如果是一个h u b 主机将继续检测它的端 口看还有没有下一个设备,如果是一个功能,适当的主机软件将接管处理这个连 接标志信息。 当一个u s b 设备从h u b 上断开的时候,h u b 会使那个端口不可用,并为主 机提供一个断开连接的指示信息。u s b 系统软件将会处理u s b 设备断开事件。 如果断开的是一个h u b ,u s b 系统软件还必须处理好所有连接在那个h u b 上的 设备的断开事件。 u s b 设备在连接上和被枚举之后就可以通过一个u s b 地址来访问了。每个 u s b 设备都必须支持一个以上的主机能够访问的管道。所有的u s b 设备都必须 支持一个特定的端点地址为0 的管道,这个管道是缺省控制管道,用于配置基本 设备信息。下面的内容都通过这个缺省控制管道进行访问。 标准信息:它所定义的内容所有的u s b 设备都需要提供。包括厂商鉴定信 息、设备类型、电源管理、设备的设置、界面和端点的描述信息等等。 类:根据在标准信息中的设备类型的不同而有不同的定义。 厂商自定信息:设备提供商自定义的一些信息。 2 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 1 2 5 u s b 总线设备的枚举 当u s b 总线设备接上或移开时,主机启动一个被称作总线枚举( b u s e n u m e r a t i o n ) 的进程,来标识并管理设备状态的改变。当u s b 总线设备接上一 个加电端口时,系统当采取以下操作: ( 1 ) u s b 总线设备所连的集线器通过状态改变管道向主机汇报本u s b 总线设 备已连接上。此时u s b 总线设备处于加电状态,它所连接的端口暂时是无效的。 f 2 1 主机通过询问集线器了解此次状态改变的确切含义。 f 3 1 主机一旦得知新设备已连上以后,它至少等待l o o m s ,使插入操作完成并 使设备电源稳定工作,然后主机给端口发出使能和复位命令。 f 4 1 集线器将发向端口的复位信号持续1 0 m s 。当复位信号撤消后,端口已经 有效了。这时u s b 总线设备处于缺省状态,并且可从v b u s 汲取小于1 0 0 m a 的 电能,所有设备寄存器及状态已被复位,设备可对缺省地址产生响应。 f 5 ) 主机给设备分配一个唯一的地址,设备转向地址状态。 ( 6 ) 在u s b 总线设备接受设备新地址之前,它的缺省控制管道在缺省地址处 是可寻址的,主机通过读取设备描述表,判别设备缺省管道的实际净数据负载。 ( 7 ) 主机从设备读取设置信息,要从设置0 读到设置n 一1 ,其中n 为设置个 数。此操作花费几个毫秒的时间。 ( 8 ) 基于从设备取来的设置信息及客户使用设备的方式,主机给设备确定一 个设置值。此时设备就处于设置完成状态。与此设置有关的所有端点都按照设置 各就各位,u s b 总线设备此时就可以从v b u s 得到描述中所要求的电量了。从设 备的角度来讲,它已经就绪了。 当u s b 总线设备被断丌时,集线器同样会通知主机。断丌一个设备连接会 使得设备所连接的端口无效。 1 2 6u s b 总线的电源管理 u s b 总线电源在设备枚举完成之前只能提供不超过1 0 0 m a 的电流,枚举完 成后,最大给设备提供5 0 0 m a 的电流,基本上可以满足小型外设的电源需求。 如果设备电源的需求量超过u s b 总线所能提供的电量,主机软件将不选择此设 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 备。u s b 主机可以对电源进行分配,即u s b 的设备可通过u s b 总线获得大小不 同的电流。u s b 总线通过电缆只能提供有限的能源,每个u s b 总线设备都可能 有自己的电源。那些完全依靠电缆提供能源的设备称作“总线供电”设备。相反, 那些可选择电源来源的设备称作“自供电”设备。设备是“总线供电”还是“自 供电”需要在描述表中定义。我们根据设备集线器也可由与之相连的u s b 总线 提供电源。 u s b 总线主机与u s b 总线系统有相互独立的电源管理系统。u s b 总线的系 统软件可以与主机的电源管理系统共同处理各种电源事件,如挂起、唤醒。所有 的设备都必须支持挂起状态,并可从任意电平状态进入挂起状态。当设备发现它 们的上行总线上的空闲状态持续时间超过3 0 m s 时,它们便进入挂起状态。处在 挂起状态的设备,当它的上行端口接收到任一个非空闲信号时,将唤醒它的操作。 远程唤醒能力允许一个被挂起的u s b 总线设备发送信号给处于挂起状态的主 机。这个信号会唤醒主机,处理触发事件。u s b 总线设备通过描述表中关于远 程唤醒的定义来向主机汇报其远程唤醒的能力。u s b 总线设备的远程唤醒能力 可以被屏蔽。 1 4 旦堕苎! 皇兰堕墅圭堂垡笙壅 ! 茎主旦! ! 璺垡塑壅盟塑鉴墨叁墨堑堡生量窒塑! 第二章基于u s b 总线的视频采集系统设计 本文将设计一种u s b 总线的视频采集系统,结合具体芯片给出u s b 设备的 开发过程。本采集系统的目标如下:用户通过主机端的应用软件向采集设备发出 读写命令;采集设备收到命令后,将经d s p 编码的视频数据由u s b 传输至计算 机;计算机收到数据后对数据进行存储,需要时通过主机上的解码软件来观看视 频。 整个系统是通过u s b 接口构成的主从式的p c d s p 系统,p c 的任务主 要是提供良好的人机交互环境:由它发出命令控制采集系统的开始、停止、数据 传输,并完成接收数据的磁盘保存。d s p 作为从控制器,主要任务是快速执行编 码任务,并通过u s b 接口完成与p c 机的交互。 在本设计中,选用n a t i o n a ls e m i c o n d u c t o r 的u s b n 9 6 0 4 作为u s b 接口芯片, 选用p h i l i p s 公司的t m l 3 0 0 作为视频编码芯片。其中,为了配合t m l 3 0 0 的编 码任务,还需要a d 、d a 芯片,启动芯片e e p r o m ,固化应用程序的f l a s h m e m o r y 等外围芯片。这些外围芯片的选片及使用均采用实验室已有成果 2 0 】,故不做介 绍。 2 1t m l 3 0 0 本论文所采用的视频编码d s p 处理芯片是p h i l i p s 公司生产的t m l 3 0 0 。 t m l 3 0 0 是一款可编程的视频、音频和图像处理器,它集成了一个能高效处理多 媒体信号的d s p c p u 和多个d m a 方式工作的视、音频信号接口。用t m l 3 0 0 可以灵活地构造各种多媒体应用系统,它在可视电话、视频监控、视频采集等领 域都有着广泛的应用。 t m l 3 0 0 作为专用多媒体处理芯片的优势主要体现在: i t 1 1 3 0 0 除了可运行所有传统微处理器的指令外,它还拥有一些多媒体专 用指令,这可以大大加快视、音频信号算法的运行速度。 2 使用v l d 单元硬件解码m p e g 视频流。 3 使用图像协处理器减轻c p u 负担( 主要用于有p c 参与的系统) 。 t m l 3 0 0 的内部结构如图2 1 。在t m l 3 0 0 各单元中,关系到我们的采集系 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 统正常工作的主要有v l i w c p u 、v i d e oi n 、v i d e oo u t 以及各种总线接口等 接下来我们将结合采集系统对这些单元做具体的分析。 2 1 1v l i w c p u 图2 1t m l 3 0 0 的内部结构图 采用v l l w ( 超长指令字) 指令集的3 2 位d s p c p u 是t m l 3 0 0 的核心。 t m l 3 0 0 的一条v l l w 指令( i n s t r u c t i o n ) 可以包含5 个并行的操作( o p e r a t i o n ) ,每 个操作又相当于数个r i s c 的操作( r i s co p e r a t i o n ) 。t m l 3 0 0 提供的些针对多 媒体信号处理的操作( o p e r a t i o n ) 最多可以包含1 1 个r i s c 操作。t m l 3 0 0 的指令 结构如图22 所示。t m l 3 0 0s d e ( s o f t w a r ed e v e l o p m e n te n v i r o n m e n t ) 提供了一个 功能强大的编译器,它能智能地找出可以并行处理的操作来组成v l i w 指令,使 得d s p c p u 的并行处理的能力得到充分发挥。我们复杂的视频编码处理能够高 效运行,主要归功于t m l 3 0 0 的v l i w 指令集。 南京邮电学院硕士学位论文 基于u s b 总线的实时视频采集系统设计与实现 r i s cr i s c r i s c 0 p e r a t i o n10 p e r a t i o n2o p e r a t i o nn 一一一一7

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论