(电路与系统专业论文)基于fpga和usb数据采集系统设计.pdf_第1页
(电路与系统专业论文)基于fpga和usb数据采集系统设计.pdf_第2页
(电路与系统专业论文)基于fpga和usb数据采集系统设计.pdf_第3页
(电路与系统专业论文)基于fpga和usb数据采集系统设计.pdf_第4页
(电路与系统专业论文)基于fpga和usb数据采集系统设计.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

型生_ | l i i i 11 1 1i 111 1 111 1u i - - _ _ l - _ _ - - _ - - - _ _ i - l _ - i _ l _ _ 。- - _ - _ - - - _ - _ l _ l l - l _ _ _ l _ _ - - - _ _ - - _ _ _ _ _ _ - _ _ _ - _ _ _ _ _ _ - - - l _ _ l _ _ _ _ l - _ _ l l i - - _ i | 论文题目:基于f p g a 和u s b 数毒采集系统设计 y 2 118 0 5 3 学科名称:电路与系统 研究生:陈璐签名: :魅:巡 指导老师:王水鱼副教授 签名:勰 摘要 计算机技术的高速发展为人们利用现代数字信号处理技术来高速、大量地处理信 息提供了有效的手段,其中,数据采集技术起着非常关键性的作用。数据采集系统性 能的好与坏,主要取决于它的精度及其速度。论文针对现有的数据采集系统存在的如精 度低、难以维护、扩展困难、不易携带等一些缺点,设计了一种基于通用串行总线( u s b ) 接口和现场可编程门阵列( f p g a ) 技术的多通道同步数据采集系统。 首先,概述了u s b 协议规范和f p g a 技术特点,并且介绍了系统总体设计方案,完成 了对系统的硬件设计和软件设计。硬件部分包括a d 采集模块、存储模块( f l a s h 存储) 、 u s b 通信接口模块及基于f p g a 的几个逻辑功能模块,详细论述了各模块的设计方法和控制 流程,给出了核心模块的状态流程图与时序仿真波形。软件设计部分包括u s b 固件程序的 设计、驱动程序的设计以及应用程序的设计等。 经过对基于f p g a 的几个逻辑功能模块的模拟仿真和在t 2 c 2 0 - v 4 开发板上的实验, 证明了设计方案的可行性,实现了数据采集的功能。 关键词:数据采集;f p g a :u s b ;v i s u a lc + + 西安理工大学硕士学位论文 一一 a b s t r a c t t i t l e :d e s i g no fm u l - t i c h a n n e ls y n c h r o n o u sd a t a a c q u i s i t i o ns y s t e mb a s e do nf p g a m a j o r :c i r c u i t sa n ds y s t e m s n a m e :c h e nl u s i g n a t u 陀:乙么纫厶 s u p e r v i s o r :a s s o c i a t ep r o f s h u i y uw a n gs i g n a t u r e : a b s t r a c t t h eh i g l ld e v e l o p i n g s p e e do fc o m p u t e rt e c h n o l o g yp r o v i d ee f f i c i e n tm c a s u l f o rt h e d i s p o s a lo fi n f o r m a t i o ni nh i g hs p e e dw i t hm o d e r nd i g i t a ls i g n a l sd i s p o s a lt e c h n o l o g y , w h i l et h e t e c h n o l o g yo fd a t aa c q u i s i t i o nh a sp l a y e dap i v o t a lr o l e i ni t t h ep e r f o r m a n c eo fd a t a a c q u i s i t i o ns y s t e mi sd u et oi t sp r e c i s i o na n ds p e e d i nv i e wo ff a c tt h a tt h ee x i s t i n gd a t a a c q u i s i t i o ns y s t e mi sl o wp r e c i s i o no ft e s td a t a , d i f f i c u l tt om a i n t a i na n de n l a r g e ,u n e a s yt ot a k e a n ds oo n ,ak i n do fs i g n a la c q u i s i t i o na n dp r o c e s s i n gs y s t e mb a s e do nu n i v e r s a ls e r i a lb u s ( u s b ) a n df i e l dp r o g r a m m a b l eg a t ea r r a y ( f p g a ) i sp r e s e n t e d f i r s t ,t h eu s bs p e c i f i c a t i o na n df p g at e c h n o l o g ya r ei n t r o d u c e d t h e nt h eh a r d w a r ea n d s o f t w a r ed e s i g no ft h es y s t e ma r ec o m p l e t e db a s e do nt h eo v e r a l ls c h e m ed e s i g n t h eh a r d w a r e s y s t e mi n c l u d e sd a t aa c q u i s i t i o n ,s t o r a g e ,u s bc o n n e c t i o na n ds oo n , u s i n gt h em o d u l a rd e s i g n , t h ea r t i c l ee l a b o r a t e sv a r i o u sm o d u l ed e s i g nm e t h o da n dt h ec o n t r o lf l o wi nd e t a i l t h e s i m u l a t i o na n dt h ea c t u a le l e c t r i cc i r c u i th a v eb e e nc o n f i r m e d t h es o f t w a r es y s t e mi n c l u d e st h e s o f t w a r ea r c h i t e c t u r e ,t h eu s bf i r m w a r ea n dt h ed r i v e r , t h eu s e ri n t e r f a c ea n ds oo n a f t e rs e v e r a ll o g i cf u n c t i o nm o d u l e so ft h es i m u l a t i o nb a s e do nf p g aa n dt h ee x p e r i m e n t i nt 2 c 2 0 - v 4 d e v e l o p m e n tb o a r d ,p r o o ft h a tt h ed e s i g ns c h e m ei sf e a s i b l e ,i tc a nr e a l i z et h e f u n c t i o no fd a t aa c q u i s i t i o n k e yw o r d s :d a t aa c q u i s i t i o n ;f p g a ;u s b ;v i s u a lc 抖 绪论 1 绪论 1 1 课题研究的背景和意义 数据采集在图像处理、信号测量、音频信号处理等一些测量中,都需要进行高速、高 精度数据采集。这样就对数据采集系统的设计提出了两方面的基本要求:首先,要求其接 口简单灵活且有较高的数据传输速率;其次,由于数据量通常都比较大,要求主机能够对 数据做出快速的响应,并及时进行分析与处理。本课题设计的基于f p g a 和u s b 的高精度 数据采集系统就是为适应这些要求而提出的。 传统的数据采集系统采用了单片机作为控制核心模块,来控制a d 、存储器以及外围电 路。随着数据采集系统对速度和精度的要求越来越高,传统的采集系统的弊端越来越明显。 单片机的时钟频率比较低而且用软件实现数据采集,使得采集速度和精度及其效率降低, 软件运行时间在整个采样时间中占了很大的比例。f p g a 具有单片机无法比拟的优势,f p g a 的集成度高,将原来的电路板及产品集成为芯片级产品,从而降低了功耗,提高了可靠性、 抗干扰性增强、体积小、功耗低、时钟频率高、内部延时、开发周期短。f p g a 最大的优 点是具有可在线编程的能力,可以方便地进行远程功能的扩展,适应不同应用场合的需要 l i l 目前,数据采集系统朝着高速及其高精度的方向发展。随着f p g a ( 现场可编程门阵 列) 的运行速度和集成度的提高,可以满足高速高精度数据采集系统的需求。单个芯片上 集成的逻辑门数目越来越多是f p g a 技术的发展表现之一,它能越来越复杂的任务,f p g a 内部的存储单元的资源十分地丰富,可以实现如f i f o 、双口r a m 等一些存储器。而且由 于器件具有用户可编程地特性,可以大大地缩短了系统的设计周期,同时,还可以将设计 的费用和设计的风险降到最小。 然后就是系统内部硬件的功能了,因为,系统有其在线可编程的功能,我们就是利用 了系统地这种功能,使得系统的内部硬件可以像软件一样被编程,并且被配置,这样以来, 我们便可以非常灵活地、并且可以实时地改变系统地功能。f p g a ( 现场可编程门阵列) 有 自己特有的一些优势,例如:它的抗干扰能力非常强,并且处理速度极其地快,编程速度 也非常快,编程很容易,正是因为这些优势,所以,我们将f p g a 技术引入到数据采集系 统设计中,无疑会使其体积更小巧,性能更优越。 常见的通讯接口一般包括:u s b 总线、p c i 总线、i s 总线及其r s 一2 3 2 串行总线。下 面对几种总线的优缺点进行对比,选择一种适合课题的总线传输方式来,p c i 总线的优点 在于:有比较高的传输速度、支持“即插即用 功能,但它也有不足之处,例如:需要把 计算机机箱打开以后才能插拔,相当麻烦,而且扩展有限:i s a 总线这里就不描述它的的 优缺点了,因为它几乎已经被淘汰,也是因为存在着同样的问题;r s - 2 3 2 串行总线的优 点就是:连接简单,缺点在于:传输速度比较慢,只有5 6 k b p s ,这样的话就很难适应高 西安理工大学硕士学位论文 速数据传输的需要,同时还存在着主机的串口数目有限的缺点。近几年来,由于u s b 接口 技术和i e e e l 3 9 4 接口技术慢慢地变的完善,这样就改善了串口速度慢的状态,这样就孕 育出了一种新型的串行接口,它的的传输速度高、成本低,这就是新型的串行总线的优势, 也是当前接口技术的一个热点。i e e e l 3 9 4 主要使用在高速的影像或连接设备没有p c 机的 场合,但是由于i e e e l 3 9 4 的外围电路比较复杂而且昂贵,很多计算机都没有配置i e e e l 3 9 4 接口,使得其应用受到一定的限制。 由于i o 模式存在一些缺点,u s b 接口是在传统的i o 模式的基础上发展而来的,它 开辟了一条外设与计算机连接的新型的通信方式。由于u s b 它自身的优点,我们就结合这 些优点,课题采用u s b 总线,这样,可以实现数据采集系统与p c 机的实时、高速、快捷 地通讯。特别地,由于u s b 接口技术的快速发展,在u s b 2 0 总线产生以后,u s b 传输的 速度能够达到4 8 0 m b p s 。下面是u s b 2 0 的设备存在的几点优点: 1 、u s b 既有热插拔和即插即用的特性,u s b 总线的驱动程序可以自动加载上去,最多 的时候,可以有加载1 2 7 个设备,多个设备同时进行操作的时候都是支持的,它不必像 p c i 总线设备一样,安装的时候还必须打开p c 机箱才能进行安装,而且安装在p c 机箱内 以后非常容易受到其他信号的干扰。除此之外,假如在野外的时候,一般地笔记本电脑不 容易安装p c i 卡的插槽,这样就导致很多问题出现,这就是u s b 的优点之一。 2 、u s b 的传输速度很快;u s b 2 0 总线可以达到4 8 0 m b p s 。现在计算机常用的接口还 包括p c i 口、串口和并口等。串口的数据传输速率一般是1 1 5 k b p s 一2 3 0 k b p s 。其中r s 一2 3 2 串口的最大传输率只有2 0 k b p s ,而r s - 4 8 5 串口的最大能够传输是l o m b p s ( 1 5 米以内) 。 并i = i 可以细分为e c p ,e p p ,s p p 三类,其中,e p p ,e c p 是高速模式,但是无论哪种模式, 其数据传输率都比较低。标准并口的数据传输率为i m b p s ,而e c p 最大可传输速率是 1 2 m b p s ,p c i 接口理论上的最高传输速率是1 3 2 m b y t e s ,但连接十分不方便。 3 、有很高的容错性能。因为在协议的高精度、通道数据一致性的要求,系统需要具 有较高的容错性能,而u s b 可以对于有缺陷的设备进行认定,对错误的数据进行报告和恢 复。 4 、与p c 机的产业的发展相一致,具有简单而且完整的协议。同时具有比较高的性价 比。 综上所述,将f p g a 技术和u s b 规范技术应用于数据采集系统,为提高测量精度,组 建灵活测试系统提供了技术支持,推动数字技术和现代工业的发展,更好的为科研和装备 提高而服务。同时,该数据采集电路模块还可以用在很多测试系统,对于民用及工业等方 面很有实际意义。 2 绪论 1 2 课题的主要工作与特点 1 2 1 课题的主要工作 本文是基于f p g a 和u s b 的数据采集系统的研究和设计,主要工作包括系统硬件设 计和软件设计两部分。 。 本设计采用f p g a 作为控制核心,和计算机的连接构成数据采集系统,采用计算机的 u s b 接口作为数据传输接口。 在硬件设计中,讲述了如何实现系统设计中有关电路硬件的部分。f p g a 逻辑模块的 设计工作虽然看起来象软件的工作,但它的设计思路完全是硬件设计的思路乜1 ,因此f p g a 的设计应归结为硬件设计。在这一部分把f p g a 的设计作为重点来介绍,完成了信号调理 模块、a d 采集模块、f p g a 控制模块、通信接口模块、以及系统电源、时钟、复位等电路 的设计。设计工具采用p r o t e ld x p 2 0 0 4 。 在软件设计中,采用模块化的设计方法,完成了f p g a 内部逻辑结构的设计,并在 q u a r t u si i 集成环境下,用v h d l 语言实现了f p g a 内部各功能模块;软件的设计还包括 固件程序、驱动程序和应用程序。实现了u s b 接口的i o 传输和d m a 传输模式,p c 机在i o 模式下设置数据采集系统的各参数,d m a 模式下进行采集数据的批量传输。在v c + + 6 0 集 成环境下完成数据的人机交互界面设计,主要完成上下位机之间的通信。 最后,对电路进行了环境试验。 1 2 2 课题的特点 l 、本系统是一种通用、便携、数据采集速度较高、多通道同步采样、使用简单方便 的一直设备。 2 、本系统的功耗非常低,并且是一直多通道同步数据采集系统。系统采用u s b 2 0 接口技术和p c 机连接进行通信,利用现在可编程器件来实现对整个系统地控制和数据流 的存储。它可以能和p c 机直接连接进行数据流直通式的传输,同时,在f p g a 的外部外接 了一个n a n df l a s h 存储器,这样,就在a d 停止采样的时候,也能从n a n df l a s h 存储器 中采集数据。整个系统其a d 的采样频率最高是2 5 0 k h z ,通道数为6 ,采样精度为1 6 位。 3 、本系统将u s b 接口技术和现场可编程器件f p g a 技术相结合,应用于该数据采 集系统,具有一定的先进性、实用性和可靠性。 3 4 f p g a 技术概述和u s b 协议 2f p g a 技术和u s b 协议概述 2 1 大规模f p g a 介绍和芯片选择 2 1 1 基本结构和原理 f p g a ,也就是现场可编程门阵列,它的英文全称是:f i e l dp r o g r a m m a b l eg a t ea r r a y , 它是在g a l ( g e n e r i ca r r a yl o g i c ,通用阵列逻辑) 、p a l ( p r o g r a m m a b l ea r r a yl o g i c , 可编程逻辑阵列) 、e p l d ( e r a s a b l ep r o g r a m m a b l el o g i cd e v i c e ,可擦除可编辑逻辑 器件) 等这些可编程逻辑器件的基础上产生的,是它们进一步发展的产物。f p g a ( 现场可 编程门阵列) 有其自身的特征,它的基本特点有以下几个方面:它采用了其可以设计a s i c 电路,客户就不需要片产,就能得到可用芯片,减少成本;可以用作为半定制、全定制 a s i c 电路和其它一些电路的样片;f :n 3 a 的内部还具有资源丰富的触发器以及可编程逻辑 资源和输入输出引脚;设计中周期最短、开发成本最低并且风险最小的器件之一就是a s i c 电路;a s i c 电路采用c h m o s 工艺技术,功耗很低,输入输出引脚的电平不像其它电平, 而他可以和c m o s 、t t l 电平兼容;目前为止,f p g a 的种类非常多,有a l t e r a 公司的c y c l o n e 、 c y c l o n el i 等系列。 正是由于现场可编程门阵列的出现,使得超大规模集成电路( v l s i ) 技术和计算机辅 助设计( c a d ) 技术得到了快速的发展。现场可编程逻辑器件,其英文简写也就是f p g a , 就是一种新型的高密度的可编程器件,他的制作一般采用c m o s s r a m 工艺,还有一些工艺, 例如:反熔丝( a n t i f u s e ) 工艺或f l a s h 工艺也被一些专用器件采用。一般地,用于存 放编程数据的s r a m 及其三种可编程电路就可以组成现场可编程逻辑器件,这三种可编程 逻辑电路分别是:可编程逻辑模块、可编程输入输出接口模块及其可编程内部连线,下面, 我们就来简要介绍一下f p g a 的主要资源模块3 1 。 l 、c l b ,也就是可编程逻辑模块: c l b ( 可编程逻辑模块) :它呢,也就是f p g a 的主要组成部分,逻辑功能的基本单元 也由它来是实现,用户可以根据设计需要,十分灵活方便地改变其内部连线的连接方式与 配置方式,来实现不同功能的逻辑功能模块。现在,绝大多数的f p g a 器件都采用了基于 s r a m 的查找表结构。c l b 几乎都是由寄存器( r e g i s t e r ) 及查找表( l u t ,l o o ku pt a b l e ) 组成的。 f p g a 内部寄存器结构非常灵活,可以配置成为带置位、同步异步复位或时钟使能的 触发器其英文简写是f f ,也就是f 1 i pf l o p ,也可已配置成为锁存器单元,其英文简写是: l a t c h ,许多不同规格的数据选择器也存在于c l b 中,可以实现各种不同的功能,一般的, 他们分别用来选择触发器有效边沿的时钟、激励输入信号、时钟使能信号和输出信号。其 中,数据选择器的地址控制信号,编程信息都可以为其提供地,这样,我们就可以很容易、 5 西安理工大学硕士学位论文 很方便地实现用户所需要的电路原理结构。f p g a 要完成同步时序逻辑设计任务,一般都 是通过寄存器来完成地。 2 、x l o 可编程输入输出接口: i o ( n - - i 编程输入输出单元) ,它是芯片和外部接口电路的重要桥梁,如果我们把不 同的电气特性配置上,这样以来,我们如果要实现对i o 口信号( 输入输出信号) 的匹 配和驱动的需求,便可以很容易的满足并且实现了。除此之外,f p g a ( 可编程逻辑器件) 具有非常灵活和广泛的应用。 3 、互连资源,这些资源也是可编程地 4 、嵌入式块r a m 一般地,有双端口r a m ( d o u b l ep o r t sr a m ) 、伪双端口r a m ( p s e u d od p r a m ) 、单端 口r a m ( s p r a m ,s i n g l ep o r tr a m ) 等。 2 1 2 芯片e p l0 12 的介绍 a 1 t e r a 公司的可编程逻辑产品有多种,大体可以分为以下三大类:结构化a s i c ( a p p l i c a t i o ns p e c i f i ci n t e r g r a t e dc i r c u i t s ,专用集成电路) 、f p o a ( f i e l dp r o g r a m m a b l e g a t ea r r a y ,现场可编程门阵列) 、c p l d ( c o m p l e xp r o g r a m m a b l el o g i cd e v i c e ,复杂可 编程逻辑器件) 三大类。m a x 系列和m a xi i 系列两大系列被c p l d 包括;h a r d c o p yl i 系 列和h a r d c o p ys t r a t i x 系列两大系列被结构化a s i c 包括。 其中,a l t e r a 公司的c y c l o n e i i 系列的f p g a 芯片内部嵌入了很丰富的内部r a m ,数量 多、速度也比较快、容量很大、具有数字信号处理器的硬件乘法器,成本比较、功耗也相 当低,如果应用的话,他就是最优地选择。所以,本课题选择 c y c l o n ei i 系列的e p i c l 2 芯片,它昵,需要1 2 5 v 的内核供电,拥有1 0 0 8 6 个逻辑单元( le ) 、r a m 存储器的总量 1 6 5 8 8 8 b i t s 、含有3 6 个m 4 k r a m 块、包括1 8 个嵌入式乘法器及其2 0 8 个p i n s 管脚。其t l o 输入 输出端口可自由的进行定义、编程十分的灵活、电路设计也十分容易方便、不易受到外部 干扰。a l t e r a 公司的软件开发平台是o u a r t u si i ,它支持的器件种类很多,支持在线仿真 和在线下载等,具有丰富的逻辑功能模块资源和丰富的i p 核,顶层设计为图形化方式,容 易实现模块化。f p g a 芯片实物图如图2 1 所示。 6 图2 - 1f l e a 芯片实物图 f i g 2 2t h cf p g ac h i pr e a lf i g u r e f p g a 技术概述和u s b 协议 e p l c l 2 采用了二维行列结构来实现定制逻辑。不同速度的行与列连接线将嵌入式存 储块和逻辑阵列块连接在一起,c y c l o n ei i 系列的e p l c l 2 器件包含了两个p l l 锁相环和 全局时钟网络。 图2 2 是c y c l o n e 器件e p l c l 2 的内部结构框图。 d f e dl i n k i n l o c c o n r * c tf b “ 3 d 3 c e n th l o d d l r e c li a u k i n 协r c o m e c ft c a d i a c e n lh o d , i f - - 图2 - 2e p l c l 2 内部结构图 f i g 2 - 2e p 1c12i n t e r n a ls t r u c t u r e 2 2f p g a 的设计流程及其常用开发工具 2 2 1f p g a 系统设计流程 _ _ 一宝i e d 嚣b n 嚣kp d m lh 咄 f _ 1 - + 州n l l e i x r c e n o n l n b i e c 。l t o 首先,要对系统功能进行确定,之后,再进行系统设计,f p g a 系统的设计流程如图 2 - 3 所示。 设计输入 0 原理圈 口肌代码 波形圈 综合优化 实现与布局布线 设计实现 功能仿真 d 确认功能可行 综合后仿真 0 检查综合结果 时序仿真与验证 口发现时序违规 系统除错 图2 - 3f p g a 各模块完整的设计流程图 f i g 2 - 3t h ef p g am o d u l ec o m p l e t ed e s i g nf l o wc h a r t 7 西安理工大学硕士学位论文 2 2 2 常用e d a 开发工具 a l t e r a 可编程逻辑器件开发软件主要有q u a r t u si i 和m a x + p l u si i 两种,其中, q u a r t u sl i 是a l t e r a 公司地新一代的p l d ( 可编程逻辑器件) 开发软件,大规模地f p g a 的开发就使用的此软件,并且q u a r t u si i 兼容了m a x + p l u si i 的功能。易于使用、全面 的且具有独立解决方案能力是q u a r t u si i 软件的最新的特点和优势之处睁。 目前,有2 类e d a 开发工具:a 、是其他e d a 厂商提供的软件工具,b 、是a l t e r a 自己提供的软件工具,a 类被统称为第三方工具。常用的a l t e r a 自带开发工具如表2 - 1 所示。 表2 - 1a l t e r a 自带开发工具 t a b l e2 - 1a l t e r ao w nd e v e l o p m e n tt o o l t e x te d i t o r 文本编辑器 t i m i n ga n a l y z e r时序分析器 s c h e m a t i ce d i t o r 原理图编辑器 a s s c m b l e r 逻辑文件生成工具 m e m o r ye d i t o r内存编辑器 p r o g r a m m e r下载配置工具 m e g aw i z a r di p 核生成器c h i pe d i t o r 底层编辑器 r t lv i c w c r 寄存器传输级视图观察器 d e s i g ns p a c ee x p l o r e r 设计空间管理器 a s s i g n m e n te d i t o r 约束编辑器 d e s i g na s s i s t a n t检查设计可靠性 l o g i cl o c k逻辑锁定工具 d s pb u i l d e r 内嵌d s p 设计环境 f l o o rp l a ne d i t o r 布局规划器s o f t w a r eb u i l d e r软件开发环境 p o w e rf i tf i t t e r 布局布线器 p o w e rg a u g e 功耗仿真器 s i g n a lt a p1 1 在线逻辑分析仪 s o p cb u i l d e r 可编程片上系统设计环境 2 3u s b 2 0 芯片的选择和协议概述 2 3 1u s b 结构 这种结构大概可以分成三个逻辑层:u s b 设备层( u s bd e v i c el a y e r ) 、功能层 ( f u n c t i o nl a y e r ) 、u s b 总线接口层( u s bb u si n t e r f a c el a y e r ) ,u s b 系统的分层 如图2 - 4 所示: 3 f p g a 技术概述和u s b 协议 圭兰! 普訇 :l 功能单元 i i 一一t 功能层 工 iu s b 软什系统i :!爿u s b 逻辑设备l u s b 设备屈 t t j u s b 总线菪 1u s s a a 接h i _ a - iu s b 总线接r 】i 口层 _ 实际通信漉g = = = 逻辑通信流 图2 4u s b 系统的分层 f i g 2 - 4u s bl a y e r e ds y s t e m 2 3 2 数据传输模式 具有设备指定格式的数据也可以在u s b 定义的消息数据有效载荷区中进行数据的 传输。所有在通道上传输的数据首先要进行数据打包,打包以后才可以在u s b 通道上 传输的数据,最后,客户软件和使用通道的设备功能完成以下后面的任务,简单地说, 在一个总线传输事务地过程中,有效数据载荷的格式化地工作必须完成,除此之外, 还有对其解释的任务。一般地,我们还需要尽可能地满足各种需求,例如:客户软件 的服务要求、设备功能的服务要求等。各种各样地数据传输地类型都是由u s b 来提供 地,一个i o 输入输出请求包,英文简写也即是i r p ,是需要由总线处理事务来完成地, 这种总线事物的数量可以是一个,也可以是多个。由于传输类型地不同,通信流特征 也会随之不一样,具体地表现在于:u s b 规定了信息流传输地方向、数据顺序要求、延 时的限制和出错处理等的这些,除此之外,还有数据格式、包的大小限制、总线访问 的限制等等,这样以来,通信流特征上就会有所不同。 u s b 设备上的每个端点的功能都是由开发者做决定的。 2 3 3u s b 设备的枚举过程 枚举过程介绍如下: 第一个状态:就是连接地状态:此状态的表现为,外部设备已经连接到了u s b , 但是暂时还没有上电,等待上电; 第二个状态:就是加电地状态:此状态的表现为,外部设备已经连接到了u s b , 并且已经进行了上电动作,但是暂时还没有进行复位,等待复位的动作; 第三个状态:就是默认地状态:此状态的表现为:外部设备已经连接到了u s b , 并且已经进行了上电动作,而且也已经完成了复位动作,但是暂时还没有被分配到一 个唯一确定的地址,这时的话,就会使用缺省的地址: 第四个状态:就是地址地状态:此状态的表现为:外部设备已经连接到了u s b , 并且已经进行了上电的动作,而且复位和地址分配等的动作都已经完成,但是暂时还 o 西安理工大学硕士学位论文 没有被配置,等待配置; 第五个状态:就是设置地状态; 第六个状态:就是挂起地状态9 1 。 具体地,u s b 设备如果被连入了个端口地时候,还会有下面几个步骤要进行, 在此,我们对其进行介绍: 第一步:此步骤如下,主机所发生了地所有地事件,我们需要了解它,由于外部 设备连入的集线器的存在,这样,我们就可以通过改变它地状态,然后,从而来进行 通知管道的任务,此时此刻,u s b 外部设备地状态是:上电状态,相应的端口是:屏蔽 状态。 第二步:此步骤是:仍然是因为集线器的存在,我们便可以询问集线器,此时, 所有需要改变的状态都是由主机来决定地。 第三步:此步骤是插入过程。 第四步:此步骤是:由集线器执行相应端口所需要的重启过程 第五步:分配地址完成以后,这样的话,就为使外部设备装入地址状态做好了准 备。 第六步:在此步骤时:仍然是通过默认的地址访问其默认控制管道,首先,主机 要读取设备描述符,完成以后,然后,再来决定读u s b 外部设备的最大地有效数据载 荷,其中,这些u s b 外部设备都是默认管道所能使用的。 第七步:在此步骤时,首先,是配置信息被主机来读取,在进行这样地过程的时 候,也许,需要设备同主机提交多条配置信息,所以,这样的一个过程就要比较长地 时间来完成。 第八步:此步骤如下,是基于u s b 外部设备和配置信息的使用方式和方法。 经过以上八个步骤,配置地过程就算完成了。 1 0 系统硬件设计 3 系统硬件设计 3 1 系统总体设计 3 1 1 系统总体需求 f p g a 优点表现在:它具有逻辑单元和体系结构简单灵活,集成度非常高,应用范围 比较广泛等。它还有以下几方面的优势:设计和制造的成本相当地低、设计和开发地周期 相当的短、开发时所有的工具相当的先进、标准产品不需要进行测试、它的质量也是十分 地稳定、与此同时,还可以实时在线检验等。 按照设计的要求,本系统必须具有如下的指标和特点: 1 输入通道:6 通道单端输入; 2 输入范围:- 2 5 - 2 5 v 3 采样分辨力:1 6 位 4 最大采样速率:2 5 0 k s p s 5 总缓存深度( 包括f p g a 内缓存和c y 6 8 0 1 3 片内缓存) :2 0 4 8 + 5 1 2 ,缓存宽度1 6 b i t s 6 u s b l 0 和u s b 2 0 兼容驱动程序,支持w i n d o w s 9 8 m e 2 0 0 0 x p ,即插即用。 7 提供基于m a t l a b s i m u l i n k s 函数的应用程序,方便采集数据的分析、处理。 8 采用f p g a 、计算机协同处理,具有灵活的软件式配置结构,可以通过改写软件实 现灵活的功能。 课题的设计是根据系统的技术指标的需要,系统的总的时钟为2 0 加a z ,a d 的采样时钟 为5 m h z ,a d 是1 6 位的6 通道同步采样的模数转换器,这样的话,进行数据缓存的时候就 需要增加先进先出,也就是f i f o 存储器,从而就会使接口地时序变地十分复杂,不容易 设计,系统在保证其可靠性方面也存在一定的难度,但是,f p g a 提供了十分丰富的r a m 存储器,适应性和灵活性很符合系统地要求。 为了实现数据采集系统和p c 机的通信,还必须是实时、快捷、高速的进行通讯,u s b 串行接口总线基于它本身固有的优点,就解决了以上问题。 3 1 2 系统设计方案 系统采用了基于f p g a 与u s b 的设计方案。该采集系统以f p g a 为中心,主要包括以下 部分:( 1 ) 信号调理模块:包括对实际中的测试信号进行线性衰减,限幅和滤波:( 2 ) f p g a 模块:系统的控制核心,包括分频模块、a d 转换控制模块、乒乓操作存储模块、f l a s h 存储模块、数据控制模块及u s b 接口控制模块:( 3 ) 人机交互界面设计:完成上下位机之 间的通信,实时观测采集到的数据。系统设计总体框图如图3 - i 所示。 西安理工大学硕士擘位论文 图3 - 1系统硬件结构框图 f i g 3 1 t h es y s t e mh a r d w a r eb l o c kd i a g r a m s 整个系统由一片f p g a ( c y c l o n ei i 系列的e p i c l 2 芯片,一片) 来实现时序控制和数 据处理及其存储的功能,在f p g a 的内部 1 l l p 定义了各个操作寄存器和各个数据缓存的功 能模块,在数据传输方面,f p g a 将读入仰采样数据;数据的存储包括3 种形式的缓存, 一种是f p g a 可以根据指令将数据直接送往u s b 接口传给上位机;另外一种是通过f l a s h 控制器送往外接f l a s n 存储器:最后一种是在向u s b 接口传输数据的过程中首先判断上位 机是否空闲,根据p c 机的空闲情况将数据暂时缓存,或者直接将数据进行传输。 在由现场可编程逻辑模块向通用串行接口传输数据的时侯需要把数据进行打包。打包 以后才能进行传输,这种数据包的格式包括以下几方面:首先是6 字节包头( 其前3 字节 是数据包的包编号,数据量为2 0 4 0 字节,还包括2 字节地校验( 要对2 0 4 0 字节数据进行 求和) 。 3 2a d 转换模块设计 3 2 1a d 转换芯片的选择 本设计是采用的是a d s 8 3 6 4 芯片,它是美国t i 公司的a d 转换芯片,它具有下表 3 1 所示的几方面的特点: 1 2 表3 - 1a d s 8 3 6 4 功能特点 t 曲i e3 - la d $ 8 3 6 4f u n c t i o nc h a r a c t e r i s t i c s 精度高,1 6 位 功耗低 通道数6 通道 工作电压 + 5 v 共模抑制比 8 0 d b 系统硬件设计 除此之外,它还包括6 个模数转换器,它是4 u s 并且是连续近似的,还有差分采 样放大器,也是6 个。 在引脚电压方面,主要引脚功能如表3 - 2 所示。a d s 8 3 6 4 芯片它的模拟输入端口有 6 个,我们可以把他们分成a 、b 、c 三组,每个输入端口都包含有一个a d c 保持寄存器, 用于信号的保持d 2 1 。 表3 2a d s 8 3 6 4 主要引脚功能 t a b l e3 - 2a d s 8 3 6 4m a i np i nf u n c t i o n 引脚 说明引脚说明 c 眦0 + a 0 通道同桐输入 c s 片选信号 c i 仉0 一 a o 通道反相输入 限 写控制信号 b y t e 设定总线宽度的信号 c l k 时钟信号 h o l d a ,h o l d b h o l d ( : 模拟采样通道控制信号 r d 读控制信号 a 0 。a l 。a 2 数据输出模式以及通道选择信号 e o c 转换结束信号 i 匝s e t 复位信号 d 0 :1 5 1 6 位数据并行输出 a d s 8 3 6 4 芯片对采样过程的控制,还有时序的转换过程,都采用的是5 m h z 的时钟, 这5 m h z 的时钟是来自于夕卜部的,它的采样的最高的速率是2 5 0 k h z ,与此同时,对应了 的最大吞吐率是4 l js 的,如果在这样的情况下,就共需要花费2 0 个时钟周期来进行 数据采样及其数据转换,除此之夕卜,为了使得输出数据率能够达到最大,读取数据就 可以放在下一个数据转换期间来进行。图3 - 2 为a d s 8 3 6 4 芯片原理图。 们 l v d oe o l d c 冀n u l w 棚 g h de o l d b 卯h u l l 惜 6 i 鼙hulua e 肿盯0 l d 酆au c h a f l - * no c j d i , l l n u 翻5 3 c h o 2 c l l i d d 搬订 量 cirret vdd暑ydo 卯 国db 翻d百 厂 s g 1 r h +。 1 c l 田o d l 7 + c b d 口 v d d ” i 口 g - r dd 4 卅 + l l j 口md 5 ” 1 2 cmid 2 t , c 髓l d ,昔 l t、h 睁h 了一 o , 。 1 6 c e c d d1 1 7 c e m d 2 一 i ,s : 1 9 c l ,c j -d, c l l c l d4 , 1 加 1 i 一d 晡d 卫 d t d da丐广 c g + 可一 tre霄 w 十 1 匿一 t d dl i f t 蕾 u :- j 广 m 簋ulk ”euo 巾诚 图3 2a d s 8 3 6 4 的引脚原理图 f i g 3 - 2a d s 8 3 6 4o fp i n sp r i n c i p l ed i a g r a m 1 3 西安理工大学硕士学位论文 3 2 2a d s 8 3 6 4 电路设计 1 、信号调理电路设计 在实际中,般测试地实际的信号的电压范围一般在一i o v 到+ 1 0 v 、一5 v 到+ 5 v 还有 - 2 5 v 至i j 十2 5 v 这样的几个范围,所以,在a d s 8 3 6 4 芯片的前端,信号就需要经过线性 衰减,限制幅度及其信号滤波等几个过程。我们就把这样的一个过程称为信号调理, 其电路原理图如图3 3 所示。 a d 前端信号调理电路中包含了运算放大器两个o p a 2 2 2 7 芯片,它也是由美国t i 公司生产的,我们用2 个0 p 、2 2 2 7 组成了一个电压放大器,然后,再对实际输入的电 压进行调理,把实际的电压转换到a d s 8 3 6 4 芯片所要求的范围即可。根据电路和a d 芯 片的要求,电压放大器电路中的电阻的阻止是可以改变的,我们通过对其阻止的改变, 就- - - - t 以把输入电压的范围进行改变,如表3 - 3 所示为电压电阻参数表。 表3 - 3 电压电阻参数表 t a b l e3 - 3 v o l t a g er e s i s t a n c ep a r n r n e ! t e rt a b l e 1 4 输入电压 r 7 ,r 8r 3 ,r 4 2 5 v 一2 5 v4 kq2 0 kq 5 v5 v 4 kq4 kq - 1 0 r - 1 0 v 4 kq4 kq 图3 - 3 信号调理电路原理图 f 唔3 - 3s i g n a lc o

温馨提示

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

评论

0/150

提交评论