(电路与系统专业论文)虚拟仪器系统的通用接口模块的研究与设计.pdf_第1页
(电路与系统专业论文)虚拟仪器系统的通用接口模块的研究与设计.pdf_第2页
(电路与系统专业论文)虚拟仪器系统的通用接口模块的研究与设计.pdf_第3页
(电路与系统专业论文)虚拟仪器系统的通用接口模块的研究与设计.pdf_第4页
(电路与系统专业论文)虚拟仪器系统的通用接口模块的研究与设计.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(电路与系统专业论文)虚拟仪器系统的通用接口模块的研究与设计.pdf.pdf 免费下载

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

文档简介

摘要 摘要 虚拟仪器( 简称v i ) 是电子测量技术与计算机技术深层次结合的、具有良好 发展前景的新一类电子仪器,目前已经在科学技术的各个领域得到广泛应用。 u s b 接口是一种总线接口标准,具有数据传输速度快、即插即用、兼容性强 等优点,己经广泛地应用于数据传输、图像采集等领域。 针对本实验室,i :发的虚拟仪器系统与计算机的数掘交换问题,本文提出并设 计了u s b 2 0 数据传输接口的方案。通过对目前虚拟仪器系统常见的各种接口进 行对比分析,最后选定以c y p i 砸s s 公司生产的u s b 2 0 总线控制器e z u s bf x 2 ( c y 7 c 6 8 0 1 3 ) 为核心,设计了一个通用型数据传输模块,工作于从属f i f o 模 式。课题主要完成了u s b 芯片上的固件代码、w i n d o w sx p 下的w d m 驱动程序 的编写和调试、主机上用户应用程序的设计、接口模块的硬件电路设计以及外部 控制器f p g a 上的时序逻辑控制程序的编写等工作,实现了计算机与虚拟仪器之 间的数据传输。 经试验应用表明,该接口符合u s b 2 0 协议规范,并有良好的数据传输能力, 可以满足虚拟仪器系统与计算机之间的数据传输要求。并且,u s b 接口技术使计 算机与虚拟仪器之问的连接简单易行,便于携带;虚拟仪器技术使仪器具有好的 可扩展性,并可以实现更多的用户自定义功能。因此,本文综合两种技术优势所 丌发的基于虚拟仪器系统的u s b 接口模块具有使用灵活、功能强大等特点,具有 良好的实用价值和应用前景。 关键词:虚拟仪器 u s b 2 0 通用接口模块 c y 7 c 6 8 0 1 3 a b s t r a c t a b s t r a c t v i r t u a li n s t r u m e n t ( v if o rs h o r t li san e wk i n do fe l e c t r o n i ci n s t r u m e n tw i t h e l e c t r o n i cm e a s u r et e c h n o l o g yd e e p l yc o m b i n e dw i t hc o m p u t e rt e c h n o l o g y ,h a sg o o d p r o s p e c t sf o rd e v e l o p m e n t ,a n d i s w i d e l yu s e d i nv a r i o u sf i e l d so fs c i e n c ea n d t e c h n o l o g y u s bi n t e r f a c ei sab u si n t e r f a c es t a n d a r d i th a sv e r yh i g ht r a n s f e rr a t e ,p n pa n d c o m p a t i b i l i t yv i r t u e ,a n dh a sb e e nw i d e l ya p p l i e di nd a t at r a n s m i s s i o na n di m a g e a c q u i s i t i o n f o rt h ed a t ae x c h a n g ei s s u eb e t w e e nt h ev i r t u a li n s t r u m e n ts y s t e md e v e l o p e di n t h el a b o r a t o r ya n dc o m p u t e r , t h ep a p e rp r o p o s e sa n dd e s i g n st h eu sb 2 0d a t at r a n s f e r i n t e r f a c ep r o g r a m t h r o u g ht h ec o m p a r i s o na n da n a l y s i so fs e v e r a lc o m m o ni n t e r f a c e s o fv i f i n a l l y , g e n e r a ld a t at r a n s f e rm o d u l ei s d e v e l o p e db a s e do nu s b 2 0b u s c o n t r o l l e re z - u s bf x 2 ( c y 7 c 6 8 0 13 ) ,w h i c hi s p r o d u c e db yc y p r e s s ,i ns l a v e f i f om o d e t h i sp a p e rp r e s e n t si nd e t a i lf i r m w a r e ,d r i v e ra n da p p l i c a t i o nd e s i g n ,t h e h a r d w a r ed e s i g no ft h em o d u l ea n dt i m i n gl o g i cc o n t r o lc o d eo ff p g a ,t h ed a t a t r a n s f e rb e t w e e nc o m p u t e ra n dv r i t u a li n s t r u m e n ts y s t e mi sr e a l i z e d t h et e s ta p p l i c a t i o ns h o w st h a tt h ei n t e r f a c ec o m p l i e sw i t ht h eu s b 2 0p r o t o c o l s p e c i f i c a t i o n i th a sg o o dd a t at r a n s f e ra b i l i t ya n dc a nm e e tt h er e q u i r e m e n t so fd a t a t r a n s i m i s s i o nb e t w e e nv ia n dc o m p u t e r i na d d i t i o n ,u s bi n t e r f a c et e c h n o l o g ym a k e s t h ec o n n e c t i o n so ft h ec o m p u t e ra n di n s t r u m e n te a s y , p o r t a b l e ;v it e c h n o l o g ym a k e i n s t r u m e n th a v e g o o de x p a n s i b i l i t y a n dc a nr e a l i z em o r eu s e r s e l f - d e f i n i n g f u n c t i o n t h eu n i v e r s a li n t e r f a c em o d u l ed e v e l o p e df o rv i r t u a li n s t r u m e n ts y s t e m c o m b i n e dt h e s et w oe x c e l l e n c e si sf l e x i b l ei nu s e ,p o w e r f u la n ds oo n s oi th a sg o o d p r a c t i c a lv a l u ea n d u s ep r o s p e c t k e y w o r d s :v i r t u a li n s t r u m e n t u s b 2 0u n i v e r s a li n t e r f a c ec y 7 c 6 8 0 1 3 西安电子科技大学 学位论文创新性声明 秉承学校严谨的学分和优良的科学道德,本人声明所呈交的论文是我个人在 导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标 注和致谢中所罗j , - 0 的内容以外,论文中不包含其他人已经发表或撰写过的研究成 果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的 材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说 明并表示了谢意。 申请学位论文与资料若有不实之处, 本人躲鲨墼 本人承担一切的法律责任。 西安电子科技大学 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期问论文工作的知识产权单位属西安电子科技大学。学校有权保 留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内 容,可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后 结合学位论文研究课题再攥写的文章一律署名单位为西安电子科技大学。 ( 保密的论文在解密后遵守此规定) 本学位论文属于保密,在一年解密后适用本授权书。 本人签名: 导师签名:么遍碰k 卜 同期二超巫l 三l 第一章绪论 第一章绪论弟一早珀t 匕 1 1 课题背景、目的和意义 u s b ( 通用串行总线) 是应用在p c 领域的一种接口技术。u s b 技术其目的 在于解决f 益增加的计算机外设和有限的p c 插槽和端口之l 、h j 的矛盾,使所有的 p c 外设都可以连接在统一的标准接口上。u s b 具有即插即用( p n p ) 的特性,支 持带电动态插拔,安装配置设备不需要打开机箱。u s b 集线器提供5 v 的电源, 最小1 0 0 m a ,最大5 0 0 m a 电流,用户可以直接使用。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 ,且拥有更高带宽,主要适用于高保真的图像视频传输,大容量的数据 采集系统等。u s b 协议从u s b l 0 、u s b l 1 发展到u s b 2 0 和u s bo t g 版本, 这些协议都具有向下兼容性。如今,由英特尔、惠普( h p ) 、n e c 、n x p 半导体 以及德州仪器( t e x a si n s t r u m e n t s ) 等公司共同丌发的u s b 3 0 已经币式完成并公 开发布,提供了更高的每秒4 8 g b 传输速度。 虚拟仪器是在计算机基础上通过增加相关硬件和软件构建而成的具有可视化 界面的仪器。它彻底打破了传统仪器由生产厂家定义功能而用户无法改变的局面, 使得用户可以方便灵活地操作虚拟仪器而板上的控件来进行测试工作,并且用户 还可以通过修改软件来改变、增减虚拟仪器的功能与规模。虚拟仪器这种“可丌 发性”与“可扩展性”使其具有强大的生命力和竞争力。 本文围绕基于虚拟仪器系统的数据传输接口的研究,提出了将u s b 接口技术 作为各种虚拟仪器的通用接口,从而可以使虚拟仪器具备体积小、接口灵活、可 携带、易于功能扩展、价格低廉、界面友好等特点,且具有通用性,可应用于各 种虚拟仪器中。u s b 的应用可以取代p c 现有的各种外围接口,使外围设备的连 接单一化、支持即插即用,符合虚拟仪器、测量仪器总线与驱动程序的标准化, 在虚拟仪器系统中有着广泛的应用前景。 1 2 1 虚拟仪器的产生和分类 1 2 虚拟仪器概述 二十世纪七十年代以来,在数字信号处理理论、微电子技术、计算机技术迅 速发展的支撑下,微机化测试分析仪器得到了长足的发展。其基本状况是:各类 2 虚拟仪器系统的通,f 接口模块的研究与设计 专用微机化测试分析仪器的功能和性能越来越强,在工程测试中得到了广泛的应 用。但由于仪器的功能基本上由厂家规定,用户难以扩充,且仪器的研制开发周 期长,寿命短,价格昂贵i i i 。 以p c 机为核心的个人仪器( 系统) ,硬件性能有极大提高且r 趋标准化。研 究单位研制的专业测试分析软件包,可用p c 机做许多专业性的分析处理,但软 件功能仍由研制者确定,用户较难扩充。且众多的测试工作者并不十分熟悉计算 机编程,面对这些硬件、软件,仍然处于被动使用的局面。 九十年代中期,个人计算机c p u 时钟频率己达1 0 0 m h z 以上,以6 4 位二进 制进行运算,运算速度和精度有了极大提高,价格亦大幅降低,硬件接口进一步 趋于标准化,厂商在出售可程控仪器的同时也提供其驱动软件。特别是面向仪器 的软件丌发平台,如l a b v i e w ,h p v e e 的成熟和商业化,使用者在配有专用或 通用插卡式硬件、可程控仪器和软件开发平台的个人计算机上,可按自己的需要, 快捷方便地设计和组建各种测试分析仪器和系统。个人仪器发展到了使用者也能 设计、开发的新阶段。 鉴于主要由使用者自己编制,调用软件来丌发仪器功能,完成原来由硬件及 固化软件完成的工作,软件成了仪器的关键。这与虚拟现实技术,虚拟制造技术 有着相拟的特点。故人们也称这类个人仪器为虚拟仪器( v i r t u a li n s t r u m e n t ) ,称 这种主要由使用者自己设计、制造仪器的技术为虚拟仪器技术( v i r t u a l i n s t r u m e n t a t i o nt e c h n o l o g y ) 。 “软件即是仪器”是美国国家仪器n i 公司提出的虚拟仪器理念的核心思想, 最本质地刻画出虚拟仪器的特征。虚拟仪器中“虚拟”的含义表现在两个方面: 一是指虚拟仪器面板,虚拟仪器面板上的各种“控件 和传统仪器面板上的各种 “控件”所完成的功能是相同的,传统仪器面板上的控件都是实物,并且是通过 手动和触摸进行操作的;而虚拟仪器面板上的控件时外形与实物相像的图标,其 操作对应着相应的软件程序,使用鼠标或键盘操作虚拟仪器面板上的控件,就如 使用一台实际的仪器。二是指虚拟仪器的测控功能是通过软件编程来实现的;而 传统仪器是通过硬件来实现的。 虚拟仪器的硬件结构如图1 1 所示i z j 。硬件时虚拟仪器工作的基础,主要完 成被测信号的采集、传输、存储处理和输入输出等工作,由计算机和i o 接口设 备组成。计算机一般分为一台p c 或工作站,是硬件平台的核心,用来提供实时 高效的数据处理工作。 第一章绪论 - 4 信。调理 h d a q - f - - 4g p i b 总线仪器h g p i b 接l i # f - 计 算 测 机 摔 一v x i p x i l x i 总线仪器模块卜一广- 软 对 件 象 一 串u 总线仪器p l c 卜一 系 统 一现场总线仪器模块卜一 一其他计算机硬件板卡卜一 图1 1 虚拟仪器的硬什结构 当虚拟仪器的硬件平台建立起来之后,设计、开发、研究虚拟仪器的主要任 务就是编制应用程序。软件是虚拟仪器的关键,通过运行在计算机上的软件,一 方面实现虚拟仪器图形化仪器界面,给用户提供一个检验仪器通信、设置仪器参 数、修改仪器操作和实现仪器功能的人机接口;另一方面使计算机直接参与测试 信号的产生和测量特征的分析,完成数据的输入、存储、综合分析和输出等功能。 虚拟仪器的三层软件结构如图l 。2 所示。 仪器面板控制软件、 数据分析处理软件 仪器驱动程序 输入输出接u 软件 图1 2 虚拟仪器软件结构 同传统仪器相比,虚拟仪器技术具有以下几大优势: 1 、融合计算机强大的硬件资源,突破了传统仪器在数据处理、显示、存储等 方面的限制,大大增强了传统仪器的功能。高性能处理器、高分辨率显示器、大 容量硬盘等已成为虚拟仪器的标准配置。 2 、利用了计算机丰富的软件资源,实现了部分仪器硬件的软件化,节省了物 质资源,增加了系统灵活性;通过软件技术和相应数值算法,实时、直接地对测 试数掘进行各种分析与处理;通过图形用户界面( g u i ) 技术,真正做到界面友好、 人机交互。 3 、基于计算机总线利模块化仪器总线,仪器硬件实现了模块化、系列化,大 4 虚拟仪器系统的通川接口模块的研究与设计 大缩小系统尺寸,可方便地构建模块化仪器( i n s t r u m e n to nac a r d ) 。 4 、基于计算机网络技术和接口技术,v i 系统具有方便、灵活的互联 ( c o n n e c t i v i t y ) ,广泛支持诸如c a n 、f i e l d b u s 、p r o f i b u s 等各种工业总线标准。 因此,利用v i 技术可方便地构建自动测试系统( a t s ,a u t o m a t i ct e s ts y s t e m ) , 实现测量、控制过程的网络化。 5 、基于计算机的开放式标准体系结构。虚拟仪器的硬、软件都具有丌放性、 模块化、可重复使用及互换性等特点。因此,用户可根据自己的需要,选用不同 厂家的产品,使仪器系统的丌发更为灵活、效率更高,缩短了系统组建时间。 虚拟仪器的发展随着微机的发展和采用总线方式的不同,可分为以下五种类 型: 1 、插卡型虚拟仪器:i s a 总线、p c i 总线 这种方式借助于插入计算机内的数据采集卡与专用的软件相结合。它充分利 用计算机的总线、机箱、电源及软件的便利,但是受p c 机的机箱和总线限制, 且有电源功率不足、机箱内部的噪声电平较高、插槽数目有限、插槽尺寸比较小、 机箱内无屏蔽等缺点。另外,i s a 总线的虚拟仪器已经淘汰,p c i 总线的虚拟仪 器币在广泛使用,已经成为p c 的事实标准。 插卡型虚拟仪器价格便宜,用途广泛,特别适合于教学部门和各种实验室使 用,目前仍有一定的生命力。 2 、并行e l 串行口式虚拟仪器:r s 2 3 2 串口总线、u s b 总线、i e e e l 3 9 4 总线、 并行总线 由于基于p c i 总线的虚拟仪器在安装数掘采集卡时需要打开机箱,操作不便。 而且主机内的p c i 插槽数量有限,再加上测试信号直接进入计算机,各种现场的 被测信号对计算机的安全造成很大的威胁。同时,计算机内部的强电磁干扰对被 测信号也会造成很大的影响。 最新发展的利用p c 机的各种并口总线和串行总线组建虚拟仪器系统时,它 们把仪器硬件集成在一个采集盒内。仪器软件装在计算机上,通常可以完成各种 测量测试仪器的功能,可以组成数字存储示波器、频谱分析仪、逻缉分析仪、任 意波形发生器、频率计、数字万用表、功率计、程控稳压电源、数据记录仪、数 据采集器。这样就可以减少频繁打开机箱的麻烦和机箱内电磁信号对被测试信号 的影响。美国l i n k 公司的d s o 2 x x x 系列虚拟仪器,它们的最大好处是可以与 笔记本计算机相连,方便野外作业,又可与台式p c 机相连,实现台式和便携式 两用,非常方便。 3 、g p i b 总线方式的虚拟仪器 g p i b ( g e n e r a lp u r p o s ei n t e r f a c eb u s ) 通用接口总线技术,是i e e e 4 8 8 标准 的虚拟仪器早期的发展阶段。它的出现使电子测量独立的单台手工操作向大规模 第一章绪论 自动测试系统发展,典型的g p i b 系统由一台p c 机、块g p i b 接口卡和若干台 g p i b 形式的仪器通过g p i b 电缆连接而成。在标准情况下,一块g p i b 接口可带 多达1 4 台仪器,电缆长度可达4 0 米。g p i b 技术呵用计算机实现对仪器的操作 和控制,替代传统的人工操作方式,可以很方便地把多台仪器组合起来,形成自 动测量系统。g p i b 测量系统的结构和命令简单,主要应用于台式仪器,适合于 精确度要求高、但不要求对计算机高速传输时应用。 4 、v x i 总线方式虚拟仪器 v x i ( v m e b u se x t e n s i o nf o ri n s t r u m e n t a t i o n ) 总线是一种高速计算机总线 v m e 总线在v i 领域的扩展,它具有稳定的电源、强有力的冷却能力和严格的 r f i e m i 屏蔽。由于它的标准丌放、结构紧凑、数据吞吐能力强、定时和同步精 确、模块可重复利用、众多仪器厂家支持的优点,很快得到广泛的应用。经过多 年的发展,v x i 系统的组建和使用越来越方便,尤其是组建大、中规模自动测量 系统以及对速度、精度要求高的场合。有其他仪器无法比拟的优势。然而,组建 v x i 总线要求有机箱、零槽管理器及嵌入式控制器,造价比较高。 5 、p x i 总线方式虚拟仪器 p x i ( p c ie x t e n s i o nf o ri n s t r u m e n t a t i o n ) 是p c i 在仪器领域的扩展,是n i 公 司于1 9 9 7 年发布的一种新的开放性、模块化仪器总线规范。其核心是c o m p a c t p c i 结构和m i c r o s o f tw i n d o w s 软件。p x i 是在p c i 内核技术上增加了成熟的技术规范 和要求形成的。p x i 增加了用于多板同步的触发总线和参考时钟、用于精确定时 的星形触发总线、以及用于相邻模块间高速通信的局部总线等,来满足试验和测 量j j 户的要求。p x i 兼容c o m p a c t p c i 机械规范,并增加了主动冷却、环境测试 ( 温度、湿度、振动和冲击试验) 等要求。这样,可保证多厂商产品的互操作性 和系统的易集成性。 p x i 具有高度可扩展性。p x i 具有8 个扩展槽,而台式p c i 系统只有3 4 个 扩展槽,通过使用p c i p c i 桥接器,可扩展到2 5 6 个扩展槽,台式p c 的性价比 和p c i 总线面向仪器领域的扩展优势结合起来,将形成未来的虚拟仪器平台。 6 、网络化虚拟仪器:现场总线、工业以太网、i n t e r n e t 为了共享测试系统资源,越来越多的用户j 下在转向网络。通过工业现场总线、 以太网、i n t e m e t 将分散在不同地理位置不同功能的测试设备连接在一起,使昂贵 的硬件设备、软件在网络上得以共享,减少了设备重复投资。因此,网络化虚拟 仪器具有广泛的应用前景。 综上所述,基于不同的通讯总线和联网总线的虚拟仪器可满足面向高、中、 低端不同的应用。目前,全球有成千上万台测控设备讵在使用虚拟仪器,虚拟仪 器已经深入到各行各业,影响着人类的生产、教学、科学实验、国防等,甚至还 进入了家庭自动化管理。由于其可以充分利用p c 、网络和通讯的相犬技术,虚拟 6 虚拟仪器系统的通川接口模块的研究与设计 仪器有望取代传统测量技术领域的各类仪器。 1 2 2 虚拟仪器的发展趋势 随着计算机、通信和微电子技术的不断提高,虚拟仪器有以下几个发展方向: 1 、虚拟仪器将逐步取代传统仪器,成为测试、测量、分析、处理仪器的主流, 因为传统仪器在很多性能上远远落后于虚拟仪器,同时传统仪器也不利于标准化。 2 、u s b 接口将成为虚拟仪器接口的主流,因为u s b 接口的便利性和通用性 是任何总线接口都无法阻挡的,在u s b 接口速度满足系统要求的情况下,u s b 接口将是虚拟仪器设计的首选。 3 、网络化,资源共享是当今社会发展的方向,也是任何力量都无法阻挡的趋 势,尽管当前虚拟仪器在网络化上还没明确概念的提出,但随着网络时代的到来, 网络化虚拟仪器将是虚拟仪器发展的重要方向。 1 3 论文的主要工作 本文主要研究基于虚拟仪器系统的通用接口模块的设计与实现,经过广泛调 研,对国内外各种虚拟仪器的功能和结构进行了分析和研究,通过对各种常用接 口的对比分析,结合本课题的特点和实际要求,最后选定u s b 2 0 总线作为虚拟 仪器的通用接口。所作的工作主要分为软硬两个部分,具体各章节内容安排如下: 第一章:绪论。主要介绍了课题研究的背景、目的和意义,国内外虚拟仪器 的产生及分类,以及目前虚拟仪器发展的概况和趋势,最后对论文各章节的安排 作了说明。 第二章:u s b 基本结构与特性。这一章是作为下面几章内容的知识铺挚,首 先对u s b 2 0 协议的各部分内容作了大概的介绍:u s b 2 0 总线的拓扑结构,u s b 的编码方式和传输类型,u s b 的接口通信协议,以及u s b 在虚拟仪器系统中的 应用等。最后,对系统的整体框架和设计流程作了简要介绍。 第三章:接口模块的硬件设计,这章是论文的重点章节。首先,介绍了接 口模块的硬件总体设计方案以及接口芯片的选择。其次,对接口芯片c y 7 c 6 8 0 1 3 作了简要介绍。接下来的内容包含u s b 2 0 接口模块中各部分硬件电路的设计和 在q u a r t u si i 集成环境下对外部控制器f p g a 上的时序逻辑控制程序的编写,以 及在电路设计当中需要注意的一些问题。 第四章:接口模块的软件设计,这部分是本文的一个重点及难点。首先,对 系统的软件结构作了简要介绍。其次,详细介绍了u s b 硬件驱动程序的丌发方法 和具体实现过程,在介绍w d m 驱动模型的基础上,描述了针对c y 7 c 6 8 0 1 3 接 第一章绪沦 7 口芯片的设备驱动程序和下载驱动程序的丌发流程。紧接着,详细给出了固件程 序的开发过程午u x , , l - 固件进行初步的仿真调试过程。最后,介绍了在虚拟仪器开发 环境l a b w i n d o w s c v i 下应用程序的丌发和实现过程,说明了应用程序读取 硬件时的数据传输过程。在开发的应用界面中,验证了u s b 设备驱动和固件程序 的正确性和可行性。 第五章:结束语。本章对全文的工作内容作了简要的总结,指出了工作中的 优点与不足,最后给出了本文今后继续研究的方向和参考意见。 第二章u s b 基本结构与特性 9 第二章u s b 基本结构与特性 2 1 1u s b 的拓扑结构 2 1u s b 2 0 总线规范 u s b 即u n i v e r s a ls e r i a lb u s 通用串行总线。u s b 2 0 版本在u s b l 1 版本 定义的1 2 m b s 全速速率和1 5 m b p s 低速速率的基础上增加了4 8 0 m b p s 的高速传 输速率,它是一种快速、双向、同步、低成本、动态可连接的串行接口。u s b 接 口广泛应用到于生活之中,例如我们熟悉的u 盘、u s b 键盘鼠标、u s b 读卡器、 u s bm o d e m 、u s b 摄像头以及很多的网络设备等。 u s b 采用了层叠星型拓扑结丰勾i3 。,如图2 1 所示。在u s b 协议中,通过级联 的方式,最多可在主机上连入1 2 7 个设备。u s b 串口总线连接设备时必须使用集 线器( h u b ) ,类似于在局域网中的连接。u s b 总线接口包括u s b 主控制器和根 集线器,其中u s b 主控制器负责处理主机与设备之i h j 的电气和协议层的互联,根 集线器提供u s b 设备的连接点。 主机 根集线器 主机( 根层) 一 层。 功能设备 ( 集线器2 卜 功能设符 层2 ,户 ,、l 功能设备 ( 集线器3 ) 集线器4 ) 功能设备 g r 、 图2 5n r z i 编码逻辑电路 这样的编码方式会遇到一个很严重的问题:若重复相同的“1 ”信号一直进入 时,就会造成数据长时间无法转换,逐渐地累积而导致“塞车”的状况,使得读 取的时序就会发生严重的错误。因此,在n r z i 编码之问,还需执行所谓的位填 塞( b i t s t u f t i n g ) 的工作。如图2 6 ( a ) 所示,若原始的串行数据中含有连续6 第二章u s b 基本坌占构j 特性 个“l ”位,就须执行位填塞的工作。此工作如图2 6 ( b ) 所示,在其后填塞一个 “0 ”位。但相对地在n r z i 编码的过程中,对这连续的6 个“1 ”执行,如图2 6 ( c ) 所示。 1 l 1lll1110l0 原数据捌! ! ! ! ! ! ! 厂 r ( a 卜卜一同步序列( s y n c ) 十卜 数据序列一 位填充 ( b ) 卜卜一同步序列( s y n c ) + 卜 数据序列一 0101011111 1 n r z ,i 编码、f 厂 厂 厂 ! ! ! ! ! ! ! 厂 ! ! 厂 【c j 卜卜一同步序列( s y n c ) 十i _ 数据序列叫 图2 6n r z i 编码中的位填充 因此在发送端进行数据传输之前,须先执行位填塞和n r z i 编码的工作。相 对应的,在接收端进行数据接收之前,就必须先执行n r z i 译码,然后再做位反 填塞( u n b i t t u f t i n g ) 的工作。这一部分的电路会通过u s b 芯片中的s i e ( 串行接 口引擎) 来实现。 u s b 定义了4 种传输类型。控制传输:突发式、非周期性的,由主机软件发 起的请求或响应的通信,通常用于命令事务和状态事务。批量传输:又称块传输, 非周期性的、大量的突发性传送,典型地应用于传送那些可以利用任何带宽的数 据,而且当没有可用带宽时,可以延时传输。中断传输:低频率、固定延迟的通 信。等时传输:在主机与设备之间周期性的、连续的通信,一般用于传输与时间 相关的信息。这种类型保留了将时间概念包含于数据中的能力,但这并不意味着, 传送这样数掘的时l 、日j 总是很重要的,即传送并不一定很紧急。 每种传输类型都有不同的用途,以及不同的通信流特性。下面,将从u s b 通 信流的角度来介绍u s b 的4 种数据传输方式。 l 、控制传输 控制传输用于支持在客户软件和设备功能之f u j 的关于配置、命令和状态类型 的通信流。在设备列举过程中,主机通过控制传输向设备功能发出标准u s b 请求 来获取设备和配置等描述符,从而了解设备信息,建立起客户软件和设备功能之 | 日j 的正常通信。 在阴种传输类型中,控制传输是最复杂的,同样也是规范定义的唯一带有函 1 4 虚拟仪器系统的通川接 1 模块的研究与设汁 数的传输类型。它是u s b 设备f 常工作的前提,设备接入总线后的列举过程都是 要使用控制传输的。 控制传输属于双向传输,并且包含有三种控制传输类型:控制读取、控制写 入以及无数据控制。其中,又可再分为三个阶段:设置阶段( s e t u ps t a g e ) ,一个 可选择的数据阶段( d a t as t a g e ) 和状态阶段( s t a t u ss t a g e ) 。每一个阶段都是由一 个或多个事务组成的,而事务又包括一个令牌段( t o k e np h a s e ) ,一个数据段( d a t a p h a s e ) ,以及一个握手段( h a n d s h a k ep h a s e ) 。控制传输可以有选择性地在设置阶 段和状态阶段之问插入数据阶段。 每一个u s b 设备需要将端点0 作为控制传输的端点。每当设备第一次连接到 主机时,控制传输就可用来交换信息,设定设备的地址或是读取设备的描述符和 要求。由于控制传输非要重要,所以u s b 必须确保传输的过程没有发生任何的错 误。这个过程可以使用c r c 错误检查方式。如果这个错误无法恢复的话,那么重 新传送一次。 2 、批量传输 批量传输可以在不确定的时间内,传送相对大量的数据而不会使总线阻塞, 因为它会让其他传输类型首先执行,等到有可利用的总线带宽时再进行传输,也 就是说批量传输只发生在有可用总线带宽时。对于一个有大量数据和空闲带宽的 u s b 设备,批量传输的速度是相当快的。然而在只有很少可用带宽的情况下,批 量传输却会等待较长的一段时间。 批量传输是流式管道,因此,对于一个给定的批量管道,它的传输总是单方 向的。所有的事务要么全是i n 事务,要么全是o u t 事务。如果有设备要求双向 的批量通信流,那么必须有两个批量管道,分别进行不同方向的批量传输。当所 要求的数据量已经传输完,或者当数据包的大小小于所规定的最大值时,批量传 输就算结束了。 一个全速的批量传输端点,允许的最大数据有效载荷可以是8 、1 6 、3 2 和6 4 个字节。高速的批量传输端点,最大的数据有效载荷必须是5 1 2 个字节。低速设 备不支持批量传输。在配置过程中,系统软件读取每一个批量传输端点的最大数 据包的大小,并且确保所传输的所有数据载荷都不大于这个值。一个传输的数据 量可以小于、等于或者大于最大数据包的大小。如果一个批量传输包含的数据量 无法在一个数据包中,那么主机会使用多个事务来进行传输,并且除了最后一个 事务外,所有事务的数据包都必须按所支持的最大数据包的大小来传输。 主机不像对控制传输那样为批量传输保留任何的总线带宽。控制传输比批量 传输有更高的优先级。批量传输只有在有空闲总线带宽时爿能进行,当总线忙时, 批量传输只能等待。当总线闲置时,批量传输可以利用任何形式的大部分带宽, 而且批量传输的包头很小,所以是最快的传输方式。 第- 二章u s b 基本结构f j 特性 3 、中断传输 中断传输适用于那些请求传输的频率不高,但是必须在指定的时间内完成传 输的数据。一般的应用包括u s b 的键盘、鼠标、游戏杆和集线器的状态报告。中 断传输需要快速地向主机报告当前的状态,这是由设备的属性和使用的场合所决 定的。因为用户不希望在按键或移动鼠标时,在屏幕上看到有明显的动作延迟。 低速设备只支持控制传输和中断传输。 中断传输的名字可能会给人以误解,认为设备的动作会主动触发一个中断。 其实,中断传输只发生在主机轮询设备的时候,并不是由设备触发的硬件中断。 4 、等时传输 等时传输适用于以固定速率或在固定时问内的传输。对于由于错误而导致的 传输失败,主机不会进行重新传输。因此,可以容忍偶尔的错误。在全速情况下, 等时传输中每个帧传输的数据要比中断传输多。等时传输的应用包括实时的语音 和声音码流。这些数据尽管要使用固定的速率传输,但是不一定非要等时传输。 例如:主机也可以使用批量传输,传送一个音乐文件设备。设备在接收到该文件 之后,再以一个固定的速率播出。 等时传输是保证大量数据可以迅速通过繁忙总线的一个很好的方式。数据不 一定需要以固定的速率传输。与批量传输不同,一旦等时传输开始之后,主机会 确保在预期的时间内完成。因此,等时传输是可以预测的。 2 1 3u s b 的接口通信协议 u s b 接口是以令牌包为主( t o k e n b a s e d ) 的总线协议,而p c 主机掌握了这 个总线的主控权。换言之,一切的沟通皆由p c 主机来负责启动。此外,由于u s b 不占用任何p c 的中断向量或足输入输出的资源,因此u s b 必须通过严谨的协议 才能与外围设备达成通信,以执行各项命令。 要了解所有的通信协议就需要从数据域谈起,通过由下而上的顺序,可以从 最基本的通信协议单位组合出各种复杂的通信协议。 1 、数据域位的格式 u s b 的串行传输时先送出最低位l s b ,然后再依序送出,直到最高位m s b 为止。这与一般串行传输的顺序是一样的。以下是几种常用的数据域格式: 1 ) 同步顺序( s y n c h r o n i z a t i o ns e q u e n c e ,s y n c ) 数据域 s y n c 字段是由8 位组成的,作为每一个数据封包的前导。顾名思义,是用 来产生同步的作用,所以它的数值足固定的,为0 0 0 0 0 0 0 1 。 2 ) 包标识符( p a c k e ti d e n t i f i e r ,p i d ) 数据域 p i d 字段是紧随在s y c n 字段之后,用来表示数据封包的类型。p i d 字段是 1 6 虚拟仪器系统的通川接口模块的研究与设计 由一个4 位的辨别符栏( p i d 3 p i d 0 ) 以及一个互为补码的检查栏( p i d 7 p i d 4 ) 所组成的。因此一个p i d 字段传递位的顺序是:0123 ,。封包分为四种类型( 由 p i d l p i d 0 定义) :令牌( 0 1 ) 、数掘( 1 1 ) 、握手( 1 0 ) 或特殊( 0 0 ) 。 3 ) 地址( a d d r e s s ,a d d r ) 数据域 a d d r 数据域是由7 位组成,用来寻址最多1 2 7 个外围设备。当然每一个设 备必须对应一个唯一的地址,每当新的外围设备刚刚连接至u s b 接口时,就会拥 有默认的地址o ,其后再赋予新的地址。 4 ) 端点( e n d p o i n t ,e n d p ) 数据域 e n d p 数据域是由4 位组成的,通过这4 位最多可寻址出3 2 个端点。这个 e n d p 数据域仅用在i n 、o u t 与s e t u p 令牌包中。 5 ) 循环冗余校验( c y c l er e d u n d a n c yc h e c k s ,c r c ) 数据域 根据不同的封包类型,c r c 数据域由不同数目的位组成。其中,数据封包采 用c r c l 6 的数据域,而其余的封包类型则采用c r c 5 的数据域。 6 ) d a t a 数据域 仅存于d a t a 封包内,根据不同的传输类型,拥有不同的字节大小,从o 1 0 2 3 字节。 7 ) 帧号( f r a m en u m b e r ) 数据域 仅存于s o f 封包内,帧号码是由1 1 位所组成。 2 、封包格式 上述介绍的各种封包数据域可以组成各种封包类型,进而执行一个完整的 u s b 通信协议。以下介绍各种封包类型。 1 ) 令牌包( t o k e n ) 令牌包由p i d 域、地址域、端点域和5 位的c r c 循环冗余校验域组成。其 中地址域和端点域唯一确定了某个设备上的某一个端点。只有主机才可以发出令 牌包。令牌包的p i d 数据域中包含了o u t 、i n 、s e t u p 三种p i d 类型名称。 2 ) 数据包( d a t a ) 数据包由p i d 域、0 1 0 2 3 字节长度的数据域和1 6 位的c r c 检查域组成。有 两种类型的数据包,根据不同的p i d :d a t a 0 和d a t a l 来识别。两种数据包p i d 是为了支持数据切换同步而定义的。数据必须以整数的字节数发出。数据c r c 仅通过对包中的数据字段计算而得到,而不包括p i d ,它有自己的校验字段。 3 ) 握手信号包( h a n d s h a k e ) 握手包用来表示一个事务的完成状态。它的格式最简单,只有一个8 位的p i d 域。握手包用来报告数据事务的状态,还能表示数据成功接收,命令的接收或拒 绝,流控制和停止条件。有三种类型的握手包:a c k 表示数据包没有位填充或数 据字段上没有c r c 错,并且数据p i d 被正确收到;n a k 表示设备不会从主机接 第一:章u s b 基本结构j 特性 收数据,或者设备没有传输数据剑主机;s t a l l 表示设备不能传输或者接收数据, 或者不支持一个控制管道请求。在任何条件下都不允许主机返回s t a l l 。 4 ) 特殊前导包( s p e c i a lp r e a m b l e ) 特殊前导封包拥有独立的p i d 类型名称p r e ,仅用于主机想要从高速传输变 成低速传输时,主机在准备送出低速的封包与低速设备通信之前,先送出的p r e 包。 5 ) s o f 包 s o f 包虽是令牌包的一种,但却具有独立的p i d 类型名称s o f 。通常目标设 备都利用s o f 包来辨别帧的起点,这个包常用于等时传输。 2 2u s b 在虚拟仪器系统中的应用 u s b 接口应用于虚拟仪器系统中,使虚拟仪器不仅能够完成传统的仪器所具 备的测量分析功能,同时具有传统仪器所无法比拟的优点,主要表现在以下几方 面: 1 、虚拟仪器通过u s b 总线与计算机相连,可以充分利用计算机强大的数据 分析处理及存储功能,使仪器的功能大大扩展,同时利用计算机显示器作为仪器 的虚拟界面,使操作简单,便于在线帮助。 2 、u s b 总线是计算机的外置式总线,且支持即插即用,因此仪器的插拔不 需要打开计算机机箱,方便了安装。 3 、u s b 总线的高传输速率,使得陔类仪器性能远远优于普通的串行口和并 行口仪器,可同时挂接1 2 7 个独立u s b 设备的特性,使得其扩展性是p c i 总线、 i s a 总线以及串行口和并行口所无法比拟的。 4 、未来u s b 3 0 总线接口的普及,将使得该类仪器将来的市场需求量还有很 大潜力。 随着计算机技术和微电子技术的飞速发展,以u s b 接口方式为基础丌发的虚 拟仪器产品的发展也将具有更高的水平及价格优势。 2 3 系统的整体框架和设计流程 本系统的整体框架如图2 7 所示。外界的模拟信号输入到采集板中,首先进 行模拟数字转换,在f p g a ( e p l k l 0 t c l 4 4 ) 逻辑控制电路的控制下,转换后得 到的数据通过u s b 2 0 总线接口传输到主控芯片c y 7 c 6 8 0 1 3 内部的大端点f i f o 中,并且在固件程序中设置为a u t oi n 的方式,直接上传到p c 机上,在 l a b w i n d o w s c v i 平台上丌发的用户应用界面中可以对所传输的数据进行分析和 1 8 虚拟仪器系统的通刚接fj 模块的研究与设计 处理【6 1 。 f 一一1 l a b w 虚in 拟d o 仪w s 器c vi l 一一j f 。1 u s b 2 0 ; 接几电路 i

温馨提示

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

评论

0/150

提交评论