(生物医学工程专业论文)基于usb接口的虚拟逻辑分析仪的实现.pdf_第1页
(生物医学工程专业论文)基于usb接口的虚拟逻辑分析仪的实现.pdf_第2页
(生物医学工程专业论文)基于usb接口的虚拟逻辑分析仪的实现.pdf_第3页
(生物医学工程专业论文)基于usb接口的虚拟逻辑分析仪的实现.pdf_第4页
(生物医学工程专业论文)基于usb接口的虚拟逻辑分析仪的实现.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(生物医学工程专业论文)基于usb接口的虚拟逻辑分析仪的实现.pdf.pdf 免费下载

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

文档简介

a b s t r a c t :r n l a li n s t n l m e n t ( v if o rs h o r t ) ,w h i c hi so fag o o dd e v e l o p e df o r e g r o u n da n d 1 s w i d e l vu s e di ne v e r yf i e l do fs c i e n c et e c h n o l o g y , i sa n e wk i n do fe l e c t r o n i c1 n s t m m e m 、i t l le 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 b e t o r e t h ea p p e a r a n c eo fu s bt e c h n o l o g y , m a n yv i r t u a li n s t r u m e n t s a r ed e s i g n e db yu s m g c o m p u t e rp c ii n t e r f a c eo re n h a n c e dp a r a l l e lp o r t t h ee m e r g e n c e o fu s b 2 0t e c h n o l o g y b r i n g ss t r o n gc o n v e n i e n c ea n de x p a n s i b i l i t yt oc o m p u t e r s i tp r o v i d e sp l u g a n dp l a y a b i l i t yw h i c ho t h e r i n t e r f a c e sd o n th a v e t h el o g i ca n a l y z e rd i s c u s s e di nt h i sp a p e rn o to n l yu s e su s b i n t e r f a c e ,b u ta l s o u s e sv i r t u a li n s t nl m e n tt e c h n o l o g yt h a ti sw i d e l yu s e dr e c e n t l y t h ec o m b i n a t l o no f c o m p t a t e r ,s o f t w a r ea n df p g at e c h n o l o g ym a k e st h el o g i ca n a l y z e rg e t t h ep l u ga n d p l a ya b i l i t yo fu s b i n t e r f a c e p a r t i c u l a r l y ,t h eh a r d w a r ed e s i g ni sd e s c r i b e dm t h l sp a p e l t h e nt h eu s i n gm e t h o da n ds e t t i n g so fu s b i n t e r f a c ec h i pi nt h i ss y s t e ma r ce x p l a l n e d , a n dm a l l yt i g e rt e c h n o l o g i e si nc p l d a r eg i v e n a tt h es a m et i m e ,t h et e c h n o l o g yo f 1 0 w e r s p e e d s t o r a g ea n dt i m i n gd e s i g ni nf p g a a r ed i s c u s s e d ,a l s o ,s o m et e c h n o l o g y d i f f i c u l t i e si nt h ed e s i g n ,s u c ha sa p p l i c a t i o n ,d r i v e ra n d f i r m w a r ea r ed i s c u s s e d 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 bl o g i ca n a l y z e r d r i v e r 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均已在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:盈:金壹 日期碑坐 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印或其它复制手段保存论文。( 保密的论文 在解密后遵守此规定) 本人签名: 导师签名: 日期2 竺z 乡:乡 日期 第一章绪论 第一章绪论 1 1 虚拟仪器技术及其发展趋势 在过去的2 0 年中,p c 机( 个人计算机) 应用的迅速普及促进了测试测量和 自动化仪器系统的革新,其中最显著的一点就是虚拟仪器概念的出现与发展,以 及虚拟仪器为工程师和科学家们提高生产率、测量精度及系统性能方面做出的贡 献。一套虚拟仪器系统就是一台工业标准计算机或工作站配上功能强大的应用软 件、低成本的硬件( 例如插入式板卡) 及驱动软件,他们在一起共同完成传统仪 器的功能。虚拟仪器代表着从传统硬件为主的测量系统到以软件为中心的测量系 统的根本性转变。以软件为主的测量系统充分利用了常用台式计算机和工作平台 的计算、显示和互联网等诸多用于提高工作效率的强大功能。虽然p c 机和集成电 路技术在过去的2 0 年里有显著的发展和提高,但是,软件才是在功能强大的硬件 基础上创建虚拟仪器系统的真正关键所在。新的以软件为中心的虚拟仪器系统为 用户提供了创新技术并大幅降低了生产成本。 1 1 1 虚拟仪器技术概述 1 ) 软件技术 虚拟仪器是充分利用计算机技术,并可由用户自己设计、自己定义的仪器。 它通常由计算机、仪器模块和软件三部分组成。仪器模块的功能主要靠软件实现, 通过编程在显示屏上构成逻辑分析仪、波形发生器、示波器或数字万用表等传统 仪器的软面板。而波形发生器发生的波形、频率、占空比、幅值、偏置等,或者 示波器的测量通道、标尺比例、时基、极性、触发信号( 沿宽、电平、类型) 等都可用鼠标或按键进行设置,如同常规仪器一样使用,不过,虚拟仪器具有更 强的分析处理能力。随着计算机技术和虚拟仪器技术的发展,用户只能使用制造 商提供的仪器功能的传统观念正在改变,而用户自己设计、定义的范围进一步扩 大,同一台虚拟仪器可在更多场合应用,比如既可在电量测量中应用,又可在振 动、运动和图像等非电量测量中应用,甚至在网络测控中应用。 虚拟仪器彻底打破了传统仪器只能由生产厂家定义,用户无法改变的局面, 从而使得任何一个用户都可以方便灵活地用鼠标或按键,在计算机显示屏幕上操 作虚拟仪器软面板的各种“旋钮”进行测试工作,并可以根据不同的测试要求, 基于u s b 接口的虚拟逻辑分析仪的实现 通过窗口切换不同的虚拟仪器,或通过修改软件来改变、增减虚拟仪器系统的功 能与规模。虚拟仪器具有的这种“可开发性”和“可扩展性 等优越特点使虚拟 仪器具有强大的生命力和竞争力。 软件技术是虚拟仪器的核心技术。常用的仪器开发软件有l a b v i e w 、 l a b w i n d o w s c v i 、v e e 等等。这些软件已相当完善,而且还在升级、提高。以 l a b v i e w 为例,这是基于图形化编程语言的开发环境,用于如g p i b 、v x i 、p x i 、 p c i 仪器及数据采集卡等硬件的系统构成,而且,具有很强的分析处理能力。 l a b v i e w 最新版本,将智能化测量与控制技术进一步扩展到了i n t e r n e t 。 2 ) 硬件技术 传统仪器主要由控制面板和内部处理电路组成,而卡式虚拟仪器自身不带仪 器面板,它必须借助计算机强大的图形环境,建立图形化的虚拟面板,完成对仪 器的控制、数据分析和显示。以数据采集卡为例,它通常具有a d 转换、d a 转 换、数字i o 和计数器定时器等功能,有些还具有数字滤波和数字信号处理的功 能。现在的多功能数据采集卡多采用了“虚拟硬件( v i r t u a lh a r d w a r e ,简称v h ) 的 技术,它的思想源于可编程器件,使用户通过程序能够方便地改变硬件的功能或 性能参数,从而依靠硬件设备的柔性来增强其适用性和灵活性。 由于卡式仪器与计算机结合紧密,能够充分利用已有的计算机资源,较之传 统仪器成本更低廉、使用更灵活、性能更强,因此它是一种极具潜力的仪器种类。 g p i b 总线( 即i e e e 4 8 8 总线) 是一种数字式并行总线,主要用于连接测试仪器 和计算机。该总线最多可以连接1 5 个设备( 包括作为主控器的主机) 。如果采用高 速h s 4 8 8 交互握手协议,传输速率可高到8 m b p s 。 v x i 总线( 即i e e e l l 5 5 总线) 是高速计算机v m e 总线在仪器领域的扩展。v x i 总线具有标准开放、结构紧凑、数据吞吐能力强,最高可达4 0 m b p s ,定时和同步 精确、模块可重复利用、众多仪器厂家支持的特点,因此得到了广泛的应用。不 过,由于价格较高,推广应用受到一定限制,主要集中在航空、航天等国防军工 领域。 p x i 总线是以c o m p a c t p c i 为基础的,由具有开放性的p c i 总线扩展而来( n i 公司于1 9 9 7 年提出) 。p x i 总线符合工业标准,在机械、电气和软件特性方面充分 发挥了p c i 总线的全部优点。p x i 构造类似于v x i 结构,但它的设备成本更低、 运行速度更快,体积更紧凑。目前基于p c i 总线的软硬件均可应用于p x i 系统中, 从而使p x i 系统具有良好的兼容性。p x i 还有高度的可扩展性,它有8 个扩展槽, 而台式p c i 系统只有3 - - 一4 个扩展槽。p x i 系统通过使用p c i p c i 桥接器,可扩展 到2 5 6 个扩展槽。p x i 总线的传输速率已经达到1 3 2 m b p s ( 最高为5 0 0 m b p s ) ,是目 前已经发布的最高传输速率。因此,基于p x i 总线的仪器硬件将会得到越来越广 泛的应用。 第一章绪论 另外,还有三种常用的计算机总线,i s a 总线、p c i 总线和u s b 总线。 i s a 总线是一种8 位或1 6 位非同步数据总线,工作频率为8 m h z ,最高数据 传输率在8 位时为2 4 m b p s ,1 6 位时为4 8 m b p s 。这种总线对于低速数据采样与处 理来说是有效的,但对于基于高性能p c 机的多任务操作系统和高速数据采集系统 来说,i s a 总线由于其带宽、位数等的限制,故不能满足系统工作的要求。新型主 板和高版本操作系统已不再支持i s a 总线。 p c i 总线是一种同步的独立于c p u 的3 2 位或6 4 位局部总线,时钟频率为 3 3 m h z ,数据传输率高达1 3 2 - 一2 6 4 m b p s ,p c i 总线技术的无限读写突发方式,可 在一瞬间发送大量数据。p c i 总线上的外围设备可与c p u 并发工作,从而提高了 整体性能。p c i 总线还有自动配置功能,从而使所有与p c i 兼容的设备实现真正的 “即插即用”( p l u g & p l a y ) 。p c i 总线由于上述优点而得到了广泛应用,已成为p c 工业的事实标准。 u s b 通用串行总线( u n i v e r s a ls e r i a lb u s ) s 1i e e e1 3 9 4 总线( 又叫f i r e w a r e 总线) 是被p c 机广泛采用的两种总线,它们已被集成到计算机主板上。 u s b 总线能以雏菊链方式连接1 2 7 个装置,需要一对信号线及电源线。u s b2 0 标准的数据传输率能达到4 8 0 m b p s 。该总线具有轻巧简便、价格便宜、连接方便 快捷的特点,现在己被广泛用于宽带数字摄像机、扫描仪、打印机及存储设备。 i e e e l 3 9 4 总线是由苹果公司于1 9 8 9 年设计的高性能串口总线,目前传输速率为 1 0 0 、2 0 0 、4 0 0 m b p s ,将来可达3 2 g b p s 。这种总线需要两对信号线和一对电源线, 可以用任意方式连接6 3 个装置,它是专为需要大数据量串行传送的数码相机、硬 盘等设计的。 u s b 及i e e e 一1 3 9 4 总线均具有“即插即用”的能力,与并行总线相比,更适 合于连接多外设的需要。 1 1 2 虚拟仪器的发展趋势 随着计算机技术、仪器技术和网络通信技术的不断完善,虚拟仪器将向以下 三个方向发展: ( 1 ) 外挂式虚拟仪器 p c d a q 式虚拟仪器是现在比较流行的虚拟仪器系统,但是,由于基于p c i 总线的虚拟仪器在插入d a q 时都需要打开机箱等,比较麻烦,而且,主机上的 p c i 插槽有限,再加上测试信号直接进入计算机,各种现场的被测信号对计算机的 安全造成很大的威胁,同时,计算机内部的强电磁干扰对被测信号也会造成很大 的影响,故以u s b 接口方式的外挂式虚拟仪器系统将成为今后廉价型虚拟仪器测 试系统的主流。 基y - u s b 接口的虚拟逻辑分析仪的实现 ( 2 ) p x i 型高精度集成虚拟仪器测试系统 p x i 系统高度的可扩展性和良好的兼容性,以及比v x i 系统更高的性价比, 将使它成为未来大型高精度集成测试系统的主流虚拟仪器平台。 ( 3 ) n 络化虚拟仪器 尽管i n t e m e t 技术最初并没有考虑如何将嵌入式智能仪器设备连接在一起,不 过n i 等公司已开发了通过w e b 浏览器观测这些嵌入式仪器设备的产品,使人们可 以通过i n t e m e t 操作仪器设备。根据虚拟仪器的特性,我们能够方便地将虚拟仪器 组成计算机网络。利用网络技术将分散在不同地理位置不同功能的测试设备联系 在一起,使昂贵的硬件设备、软件在网络上得以共享,减少了设备重复投资。现 在,有关m c n ( m e a s u r e m e n ta n dc o n t r o ln e t w o r k s ) 方面的标准正在积极进行,并取 得了一定进展。由此可见,网络化虚拟仪器将具有广泛的应用前景。 1 2 课题研究背景及意义 独立的传统仪器,例如逻辑分析仪,性能强大,但是价格昂贵,且被厂家限 定了功能,只能完成一件或几件具体的工作,因此,用户通常都不能够对其加以 扩展或自定义其功能。仪器的旋钮和开关、内置电路及用户所能使用的功能对这 台仪器来说都是固定的。另外,开发这些仪器还必须要用专门的技术和高成本的 元部件,从而使它们身价颇高且很不容易更新。 基于p c 机的虚拟仪器系统,诞生以来就充分利用了现成即用的p c 机所带 来的最新科技。这些科技和性能上的优势迅速缩短了独立的传统仪器和p c 机之 间的距离,包括功能强大的处理器( 如p e n t i u m4 ) 、操作系统及微软w i n d o w s x p 、n e t 技术和a p p l em a co sx 。除了融合诸多功能强大的特性,这些平台还 为用户提供了简单的联网工具。此外,传统仪器往往不便随身携带,而虚拟仪器 可以在笔记本计算机上运行,充分体现了其便携特性。 随着数字系统和计算技术的发展,逻辑分析仪在高速硬件逻辑测试和软件状 态分析中显得尤其重要【2 2 1 。在数字系统测试中,逻辑分析仪应用广泛,它拥有多 个输入通道,多种触发方式,具有延时,记忆和毛刺检测等功能,这些都是其它 仪器所不具备的。 本系统将u s b 技术和虚拟仪器技术有机地结合在了一起,充分发挥了u s b 即 插即用的优点,使该系统体积小、使用方便。电路中使用了降速存储技术,保证 高采样率的同时降低了系统的成本。采用目前使用广泛的虚拟仪器开发平台 l a b v i e w 编写程序的界面,不仅界面友好,而且程序功能完备易于扩展。该系统 可与便携式计算机结合,具有较高的性价比,可以满足一般的科研和教学要求。 第一章绪论 1 3 论文的主要工作 本系统将u s b 和虚拟仪器技术有机地结合在了一起,充分发挥了u s b 即插即 用的优点,使该系统体积小、使用方便。电路中使用了降速存储技术,保证高采 样率的同时降低了系统的成本。采用目前使用广泛的虚拟仪器开发平台l a b v i e w 编写程序的界面,不仅界面友好,而且程序功能完备易于扩展。该系统可与便携 式计算机结合,具有较高的性价比,可以满足一般的科研和教学要求。下面是论 文的主要工作。 第二章,系统设计概要:介绍了系统的总体设计框架,包括方案的选取和论 证,原理设计,芯片选择等设计工作,对虚拟逻辑分析仪的参数进行了拟定,对 系统的设计和开发环境进行了简单介绍。 第三章,从总体上讨论了虚拟逻辑分析仪的工作流程和设计方法,将系统硬 件、软件以及时序的工作和配合过程加以分析,并对应用程序的丌发和设计进行 了讨论,介绍了u s b 接口通信程序和用户服务程序的功能。 第四章,硬件设计:本章从u s b 接口电路、f p g a 数据采集电路、c p l d 控 制电路、逻辑时序设计、固件代码设计等方面,详细描述了虚拟逻辑分析仪的硬 件设计。 第五章,u s b 驱动程序设计:驱动程序是虚拟仪器的必要元素,u s b 有通用 的驱动程序,但为了提高驱动程序的效率,开发者一般需要编写专用高效的设备 驱动程序以及一些辅助功能的驱动程序。本章在介绍u s b 2 0 总线规范和w d m 驱 动模型的基础上,叙述了针对于c y 7 c 6 8 0 1 3 接口芯片的设备驱动程序的开发。 第六章,对论文的工作进行了总结,指出了系统设计中存在的问题和有等改 善的地方。 基于u s b 接1 3 的虚拟逻辑分析仪的实现 第二章虚拟逻辑分析仪系统的准备和开发过程 虚拟逻辑分析仪的开发是一个长期复杂的过程,需要一个合理的时间周期, 同时也需要准备足够的知识和技能,开发者需要熟悉l a b w i n d o w s c v i 应用程序开 发,u s b 驱动程序设计,k e i l c 5 1 固件代码设计,p r o t e l9 9 原理图设计和布线技术, u s b 接口芯片,f p g a 和c p l d 的硬件设计和时序程序设计等技术。所以,在开 发前一定要有一个总体的规划,不仅在时间上而且也要在开发流程上进行规划, 良好的规划是成功的一半。这一章将对仪器研发的基本过程进行分析、调研,包 括仪器设计方案的论证、应用前景、总体构架、开发流程等等,为以后各章讨论 的展开作一个准备。 2 1 方案设计与选取 方案论证并最终确定是整个系统开发前必不可少的工作,方案的优劣以及是 否适合实际课题的需要,对以后产品的性能有着决定作用。方案论证前首先应该 确定虚拟逻辑分析仪的参数,这是方案选取设计的基础,本节将对仪器参数拟定 和方案选取进行讨论。 2 1 1 虚拟逻辑分析仪的主要参数 本仪器是定位为中低档仪器,能满足一般教学和研究的需要,不需要很高的 实时性,根据项目的要求,拟定仪器的主要参数如下: 1 )u s b 2 0 接口; 2 ) 可同时采集3 2 路通道数据; 3 )全通道存储深度1 2 8 k b ; 4 ) 最高采样率在1 0 0 m h z : 5 ) 支持内、外触发; 6 ) 支持内、外两种采样时钟; 7 ) 门限电平在0 - 5 v 间连续可调; 8 ) 支持正、负延迟触发和字触发: 9 ) 应用程序合乎常规习惯,操作方便。 第二章虚拟逻辑分析仪系统的准备和开发过程 2 1 2 方案比较确定 方案一:方案一以系统快速和实时性为目标,将高速r a m 做成f i f o 来使用, 速度快,实时性强,但是成本较高,而且u s b 总线也将成为速度的瓶颈。方案的 构思框图如下图2 1 所示,数据采集完成后不是存储在r a m 里,而是直接将数据 通过u s b 接口芯片传送给上位机,以保证数据的流畅并且不会丢失被采样的数据, 可以将被采样信号的全部信息实时地传送给上位机。本系统的采样频率是 1 0 0 m h z ,如果采取这种设计方案,则需要r a m 的存取时间应该大于5 n s ,因为 r a m 要做成f i f o ,而r a m 不能在同一时间读写,只能把读写操作分开进行,另 一方面,u s b 总线的最高传输速度只有4 8 0 m b p s ,如果把3 2 路数据同时从r a m 中读出来时,至少需要3 2 0 0 m b p s 。在这样高速采样时钟的采样下,这种方案显然 是很难实现的。 图2 1 方案一结构框图 方案二:方案二以低成本,有重点地采样为目标。采用低速的r a m ,降速存 储的方法,在保证功能的同时降低了成本。方案二的构思框图如图2 2 所示,这种 方案是将采集到的数据存储在r a m 罩,直到存储完毕才将数据读取到计算机中, 而且采用降速存储的技术,这就大大降低了r a m 速度的要求,同时也降低了r a m 的成本,在读取数据阶段,并不需要太高的读取速度,也就是说u s b 总线的传输 速度也可以不用太高,这样以来也就降低了对用户计算机配置的要求,因为,u s b 总线标准所指的4 8 0 m b p s ,是在上位机c p u 独占的情况下的传输速率,而在实际 应用中,上位机还要运行其它软件,而且u s b 总线传输速率也和上位机的配置有 基y - u s b 接口的虚拟逻辑分析仪的实现 关系,作者所用的计算机是目前流行的配置,c p u 为i n t e l2 4 g ,内存5 1 2 m , 在正常运行的情况下,u s b 总线的传输速率也只是接近8 0 m b p s 。考虑到虚拟逻辑 分析仪要用到很多的场合,甚至在野外用笔记本计算机连接使用,系统方案降低 对计算机配置的要求将显得非常重要。 图2 2 方案二结构框图 在两个方案的设计中,主要的区别是r a m 的采用及使用方法,方案二采用了 降速存储技术,降低成本的同时保证了逻辑分析仪的功能,经过论证,得出两方 面结论:一方面,u s b 2 0 总线的速度已经达到4 8 0m b s ,即每秒钟可以传6 0 m b 。 最高采样率在1 0 0 m h z 时,如果直接把采集到的数据读到上位机,u s b 总线将不 能满足这个速度,因此必须采用降速存储的技术;另一方面,仪器的设计目标是 对中低速度信号进行采样,并不要求有很高的实时性,方案二采用快采慢存的方 法,将采集到的数据四倍降速,大大降低了存储时间,采样完成后,再通过u s b 总线将数据从r a m 中快速读出来,用户可以只对自己感兴趣的信号进行采集,这 并不影响仪器的使用。 因此,作者选用了第二种方案作为系统的设计方案,以后的设计开发工作都 将围绕这个方案展有计划地展开。 第二章虚拟逻辑分析仪系统的准备和开发过程 9 2 1 3 芯片选取确定 前面已经讨论了系统方案的选择与确定,紧接着就要根据方案的要求选择适 合的芯片了。系统硬件主要有u s b 接口芯片、r a m 储存器、数据采集器、时序 控制器、逻辑分析仪探头几部分组成,这几个部分都要选取具体的芯片来实现, 下面就对各部分的芯片选取与确定进行讨论。 1 ) 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 功能设备芯片。 基于价格、性能和封装等问题的分析,作者选择了较便于开发的u s b 接口芯 片c y 7 c 6 8 0 1 3 a - - 1 2 8 。c y p r e s ss e m i c o n d u c t o r 公司的e z - - u s bf x 2 是世界上第 一款集成u s b 2 0 的微处理器,它集成了u s b 2 0 收发器、s i e ( 串行接口引擎) 、 增强的8 0 5 1 微控制器和可编程的外围接口。f x 2 这种独创性结构可使数据传输率 达到5 6 m b y t e s s ,即u s b 2 0 允许的最大带宽。在f x 2 中,智能s i e 可以硬件处理 许多u s b l 1 和u s b 2 0 协议,从而减少了开发时间和确保了u s b 的兼容性。g p i f ( g e n e r a lp r o g r a m m a b l ei n t e r f a c e ) 和主从端点f i f o ( 8 位或1 6 位数据总线) 为 a t a 、u t o p i a 、e p p 、p c m c i a 和d s p 等提供了简单和无缝连接接口。 c y 7 c 6 8 0 1 3 有三个特性对虚拟逻辑分析仪的设计是非常有帮助的,第一、该 芯片集成了增强型8 0 5 1 处理器并引出了处理器的地址线和数据线,方便资源扩展 和应用接口,可以十分方便地向下发送状态字、采样频率、采样深度等信息;第 二、该芯片有四个很大的f i f o 数据缓冲区,对硬件传输数据非常有利,保证传输 可靠的同时也大大简化了硬件时序的编写;第三、该芯片的所有寄存器都可以在 上位机上进行任意读写。在以往,硬件固件代码设计完成后,用户就不能再对芯 片配置进行修改。而在本设计中,应用程序可以通过驱动程序对寄存器进行设置, 用户可以根据自己的需要来配置芯片,具有很高的灵活性。 2 ) r a m 存储器的选择 r a m 存储器是虚拟逻辑分析仪的数据仓库,它的速度和容量直接决定着仪器 的性能,容量越大就代表着仪器的采样深度越大,速度越快就代表仪器的采样能 力越强。由于本仪器是1 0 0 m h z 采样,4 倍降速,所以只要r a m 的存取时间大于 4 0 n s 就可以满足要求了,实际上,作者并没有选用4 0 n s 的r a m ,这是基于仪器 的扩展性进行考虑的,考虑到仪器以后功能的升级,作者选用了更快速度的r a m , 以保证即使采样速度达到2 0 0 m h z ,r a m 也可以j 下常工作。这里,选用的r a m 为 1 0 基t - u s b 接口的虚拟逻辑分析仪的实现 c y p r e s s 公司的c y 7 c 1 0 4 1 b ,其存取时间为1 5 n s 。c y 7 c 1 0 4 1 b 是一个高性能c m o s 静态存储器,工作电压为3 3 v ,有1 6 条数据线,1 8 条地址线,支持高8 位和低8 位选取,当芯片片选信号没有被选通时,其数据线输出高阻态。而且这种r a m 的 价格相对比较便宜,市场采购比较容易,封装尺寸适中,既可保证不占用仪器的 硬件板卡过大的空间,也可避免在使用多片r a m 进行扩展时造成的布线困难的问 题,该r a m 是本系统的最好选择。 3 ) 数据采集器的选择 仪器的数据采集器采用一个f p g a 来实现,由于数据采集器需要大量的硬件 连线,其中r a m 的数据线就有1 2 8 条,通道数据线3 2 条,还有和时序控制器之 间的数据和控制线等,所以必须采用一个i o 资源丰富但价格相对便宜的f p g a 来 实现。 作者选用了a l t e r a 公司的c y c l o n e 芯片,它的型号为e p m l c 6 q 2 4 0 1 7 。 该芯片共有2 4 0 个引脚,其中可用i o 资源1 7 9 个,基本上满足系统设计所需的1 0 资源。它可以正常地工作在2 0 0 m h z 的频率下,内置两个锁相环,可以将输入时钟 进行倍频,而且价格比较便宜,是迄今为止价格最为便宜的f p g a 系列产品。 4 ) 时序控制器的选择 时序控制器用一个c p l d 来实现,它不需要太多的i o 资源,也不需要太多的 逻辑单元,工作频率在1 0 0 m h z 就可以了。作者选用了a l t e r a 公司的 e p m l 2 7 0 t 1 4 4 ,它是a l t e r a 公司最新生产的一款m a x i i 芯片,这一系列芯片 技术已经比较成熟,工作相当稳定,非常适合作为逻辑控制使用。 5 ) 比较器的选择 在过去几十年中,数字设计人员一直把逻辑分析仪作为系统检验的主要工具。 近年来,随着时钟速率的加快,迫使设计人员不得不考虑系统所有部分的信号完 整性,包括测试能力。任何类型探头的目标都是尽可能对系统提供最小的电负荷。 如果探头对系统性能的影响太大,那么探头将不能帮助设计人员检验系统,因为 故障原因可能完全是由探头引起的。 本虚拟逻辑分析仪具有3 2 路通道,最高采样率在lo o m h z ,频率已经相对较 高,所以,每个通道探头的设计十分重要,探头应该尽量设计成具有很高输入阻 抗的电路,这罩我们选取一个高性能、高输入阻抗的比较器来完成。 每一个通道后面都会接一个比较器,对输入的数字信号进行电平转换,输入 的信号具有很高的频率,这样就要求比较器具有很高的工作频率和很高的可靠性。 比较器的选取对仪器探头的性能起着决定作用。 经过仔细筛选,作者选取了高性能,工作频率高的比较器s n 6 5 l v d s 3 4 8 6 。 该芯片具有很高的性能,是一款高档的比较器,其主要参数如下: 1 满足甚至超出a n s it i a e i a 6 4 4 标准的要求; 第二章虚拟逻辑分析仪系统的准备和开发过程 1 l 2 工作电压为3 3 v : 3 输入信号可高达4 0 0 m b p s ; 4 延迟时间为2 1 n s ; 5 输出低电压的t t l 逻辑电平; 6 有四个比较通道。 4 ) 其它芯片的选取 除了以上两个芯片外,系统还选取了d a 转换器和运算放大器。d a 在c p l d 的控制下主要输出模拟电流,然后经过运算放大器的作用输出线性可控的电压。 这里d a 转换器采用d a c 0 8 0 0 ,运算放大器采用u a 7 4 1 c p ,它们的具体功能不做 详细讨论,将会在后面提到。 2 2 系统开发的硬件和软件环境 简单介绍一下系统开发的硬件和软件环境,实际开发过程中可能要借助更多 的开发工具,这罩将只介绍主要的开发工具。 1 硬件环境 1 ) 个人计算机一台,工作正常,具有u s b 2 0 接口; 2 ) 设计开发中要用到的其它常用仪器,比如示波器、万用表、信号发生器等 仪器。 2 软件环境 1 ) w i n d o w s2 0 0 0 x ps p 4 操作系统,这是应用程序和所有开发软件的工作环 l 蠢 蜣; 2 ) 原理图和电路板设计软件p r o t e l9 9 ,虚拟逻辑分析仪板卡的原理图设计和 布线制板都使用这个软件来完成; 3 ) w i n d o w s2 0 0 0d d k 驱动程序开发工具包,这是u s b 驱动程序开发所必须 的工具; 4 ) k e i l 公司的k e i lc 5 1 集成开发环境,u s b 接口芯片的固件代码全部用它 来完成,可以在该集成丌发环境中进行c 5 1 和a 5 1 的编写; 5 ) m i c r o s o f tv i s u a lc + + 6 0 开发环境,编写u s b 驱动程序; 6 ) q u a r t u s6 0 时序设计程序,它是a l t e r a 公司一个时序开发环境,它支持 v h d l 、v e r i l o g 和a h d l 硬件描述语言,同时也可以进行逻辑框图设计,本系统 采用v h d l 和逻辑框图结合的方法设计c p l d 和f p g a 时序; 7 ) 选用专用的虚拟仪器开发环境l a b w i n d o w s c v i ,l a b w i n d o w s c v i 是n i ( 美国国家仪器公司) 推出的交互式c 语言开发平台。其将功能强大、使用灵活 的c 语言平台与用于数据采集分析和显示的测控专业工具有机结合起来。 基于u s b 接口的虚拟逻辑分析仪的实现 1 系统总体框架 2 3 系统逻辑框架及开发流程 图2 3 虚拟逻辑分析仪系统框图 虚拟逻辑分析仪由主机和物理板卡两部分组成,系统框图如图2 3 所示,在主 机中,主要由主机系统驱动程序、设备驱动程序以及应用程序三部分组成,在设 备中,主要由u s b 总线接口、信号采集模块以及功能控制模块三部分组成,这些 模块的详细功能将在后面章节进行阐述,这旱只进行总体的介绍。 上位机和外围电路两部分通过u s b 总线相连,它的工作原理如下:上位机通 过u s b 总线往下发送触发字、采样率、通道、存储深度等控制数据,设置外围电 路的工作状态,而外围电路把采集到的数据通过u s b 总线传送给上位机,上位机 对数据进行分析处理,然后以图形化的方式显示数据。框架的详细描述将在第三 章中讨论,这里只做简单的介绍,以便下面一节对系统设计流程的分析。 2 系统设计流程 如图2 4 所示,系统开发流程是一个有步骤和规划的过程,需要指出的是, 硬件软件的设计和调试,以及最终的设备调试和测试,需要不断的反复进行,这 不是一次就可以完成的工作,只有在丌发和使用过程中,根据实际情况和用户使 用过程中出现的问题不断做出修改,才能使设备逐步的走向完善。本文的所有章 节安排都是按照这个开发设计过程,对系统进行分析讨论的。 第二章虚拟逻辑分析仪系统的准备和开发过程 1 3 准备阶段 1 _ - - 开发阶段 图2 4 系统开发流程 在整个系统的开发设计当中,硬件设计调试、软件编写调试、软硬件集成、 设备测试和调试占了整个丌发过程的大部分时间,笔者后面将把这一部分中的重 点进行讨论。 基- j - u s b 接口的虚拟逻辑分析仪的实现 第三章系统工作流程及应用软件设计 本系统具备大部分逻辑分析仪的功能,是一个复杂的设计,涉及到大量的知 识和技术,限于篇幅,本文不可能面面俱到把所有问题阐述清楚,这一章将从总 体上讨论一下虚拟逻辑分析仪的工作流程,把系统硬件、软件以及时序的工作和 配合过程加以分析,在以后的章节中只对设计中的重点和难点进行论述。在这一 章的最后,会简单讨论应用程序的开发和设计。 3 1 逻辑分析仪的基本组成 逻辑分析仪是数据域测试中最典型、最重要的工具,它在计算机、微计算机 化产品和数字系统中的应用同益普遍。由于逻辑分析仪发展很快,新的功能层出 不穷,其应用方法和范围也不断增加。 目前逻辑分析仪的种类众多,不论是台式的还是虚拟的逻辑分析仪,它们都 有共同的几个组成部分,主要可以概括为以下几个部分: 1 ) 触发识别; 2 ) 数据获取; 3 ) 数据存贮; 4 ) 数据显示。 数字系统产生的数据流往往是很长的,但是用户并不是对所有的数据都感兴 趣,为了捕获和显示有用的数据,首先要有触发识别电路去寻找触发字或触发事 件。找到后,就产生触发信号去控制r a m 开始记录数据,触发分为外部触发和内 部触发两种。 逻辑分析仪都具有多路数据采集通道,各路输入信号与设定的门限电平进行 比较,判为0 、1 两种状态后存入寄存器。逻辑分析仪的数据采集是在时钟作用下 按节拍进行的,视用途不同,时钟信号可以由外部输入,也可由逻辑分析仪的内 部时钟发生器产生。 逻辑分析仪用r a m 存贮准备显示的数据,由于相对数据流来说存贮容量有 限,因此通常规定采样的存储深度,或者采用先进先出的高速r a m 。当r a m 存 满数据后,把数据读出显示。 逻辑分析仪的工作是存贮和显示交替进行的。在存贮阶段结束后,逻辑分析 仪把己存入存贮器的内容逐字取出。传统的台式仪器中,在显示发生器的控制和 第三章系统jr = 作流程及应朋软件设计 1 5 配合下,数据直接显示在逻辑分析仪的c r t 上,而在虚拟仪器中,数据通过计算 机总线被读到计算机中,然后显示在应用程序的显示界面上。 3 2 系统各部分的工作流程 本节首先从用户和系统工作的两个不同角度对工作流程进行描述,从总体上 了解虚拟逻辑分析仪的工作方法,如图3 1 所示为整个系统的结构框图,然后再对 其中一些数据的交换方法进行框架上的分析。从用户使用仪器的角度来看,主要 有这几个步骤: 1 ) 用户通过应用程序设置触发方式、存储深度、采样率、触发电平、状态字、 延时长度等信息; 2 ) 点击“开始采集 按钮,启动仪器开始采样; 3 ) 仪器采集数据完毕,在应用程序界面显示信息,提醒用户; 4 ) 用户点击“显示数据”按钮,开始对数据进行显示,用户可以进行波形分 析、反汇编、状态显示、波形打印等操作。 从仪器内部工作原理的角度来看,上面几个步骤对应以下这些操作: 1 ) 应用程序将用户设置的触发方式、存储深度、采样率、触发电平、状态字、 延时长度等信息,转换成系统板卡认识的数据发送给u s b 接口芯片,u s b 接口芯 片再将数据发送给c p l d 和f p g a ,经过这个步骤后仪器的采样参数设置完毕; 2 ) 应用程序给u s b 接口芯片发送启动信号,u s b 接口芯片把信号转发给 c p l d 和f p g a ,c p l d 和f p g a 开始进行采样,将采集的数据存到r a m 里; 争总线 饥。馨 旁。数据 存储器 嗍a 么 l 通道 比较器 图3 1 系统结构图 1 6 基于u s b 接口的虚拟逻辑分析仪的实现 3 ) c p l d 和f p g a 采样完毕,r a m 的地址计数器停止工作,给上位机发送采 样完成信号,并且读取r a m 的时序开始工作,将数据顺序存入u s b 接口芯片的 端点中; 4 ) 上位机从u s b 接口芯片读取数据,并存储到文件罩,直到读取完毕。应 用程序为用户进行波形分析、反汇编、状态显示、波形打印等操作,并根据不同 的操作对数据进行提取、加工和显示。 以上步骤在系统中都有不同的设计模块与之对应,下面将分成三个模块进行 框架上的分析。 3 2 1 主机与u s b 接口芯片的数据交换 应用程序和u s b 接口芯片之间的数据交换对应用程序来说是透明的,系统软 件只给应用程序提供接口,应用程序并不知道主机的系统软件做了什么。其实这 中间是一个复杂的过程,有u s b 设备驱动程序、主机系统驱动程序、u s b 总线驱 动程序等共同参与完成。其中u s b 设备驱动程序是由开发者根据功能的需要自己 编写的,开发者借助d d k 开发包,在v i s u a lc + + 6 0 中编写程序,并最终生成驱 动程序安装文件,成为本系统必不可少的一部分。 u s b 接口芯片内嵌一个增强型的8 0 5 1 ,它自动完成u s b 协议的处理工作,开 发者不需要对这部分内容进行修改,只需要编写固件代码就可以实现对接口芯片 的配置,也可以用固件代码控制它按照某种功能进行工作。固件代码实际上就是 一段运行在接口芯片内部的程序,它控制整个硬件系统的运行,并负责处理p c 机 发来的各种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 接口芯片内部有一个s i e ( 串行接口 引擎) ,它完成数据的串行化,也负责完成对串行化的数据进行转换。s i e 把处理 后的数据分发给内部的8 0 5 1 程序或者放在接口芯片的端点中,这就是一个简单的 上位机发送数据给u s b 接口芯片的过程,数据传递给上位机的过程是这个过程的 逆过程。 3 2 2u s b 接口芯片与c p l d 的数据交换 前面讨论了上位机和u s b 接口芯片的数据交换的过程,本节将对第二个重要 的数据交换过程进行讨论。系统板卡的中心是c p l d ,它起到c p u 的作用,板卡 第三章系统工作流程及应用软f 1 :设计 中其他芯片的大部分功能的实现都是在它的控制下完成的。c p l d 要工作,必须获 得上位机的大量的配置数据,而且上位机要获得采集到的数据也必须经过c p l d 。 前面提到过u s b 接口芯片将内部的8 0 5 1 地址线和数据线提供给了c p l d ,同 时u s b 接口芯片的端点数据线和读写信号也提供给了c p l d 。为了方便地发送数 据,作者选择了直接使用u s b 接口芯片的8 0 5 1 给c p l d 发送数据的方法。对u s b 接口芯片来说,把c p l d 当成一个存储器,事先约定一个地址,通过片选、读写 等信号往c p l d 里写数据;而对c p l d 来说,在内部做一个锁存器,只要事先约 定的地址有效,锁存器就开始锁存数据,这样数据就可靠地发送给c p l d 了。 c p l d 给接口芯片发送数据是通过端点实现的,c p l d 把采集到的数据顺序地 写入端点,端点是一个先进先出的存储器,c p l d 把数据写入端点一端的同时,上 位机软件不断地从端点

温馨提示

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

评论

0/150

提交评论