基于USB的便携式数据采集系统设计论文

上传人:be****l 文档编号:76508520 上传时间:2022-04-18 格式:DOC 页数:73 大小:2.56MB
返回 下载 相关 举报
基于USB的便携式数据采集系统设计论文_第1页
第1页 / 共73页
基于USB的便携式数据采集系统设计论文_第2页
第2页 / 共73页
基于USB的便携式数据采集系统设计论文_第3页
第3页 / 共73页
点击查看更多>>
资源描述
硕士学位论文基于 USB的便携式数据采集系统设计 65 / 73论文题目:基于USB的便携式数据采集系统设计学科名称:与系统摘 要传统的数据采集卡普遍采用PCI、ISA等标准接口,基于这些标准接口的采集卡有不便于携带、安装复杂、可扩展性差等问题,它已不能满足科研和生产的实际需要。通用串行接口USB作为一种新型的串口通信标准,具有传输速率高、可扩展性好、即插即用、使用灵活等特性,很好的弥补了传统采集卡接口的缺陷。本文结合USB的传输优势和FPGA 的高效性能,设计了一种基于USB的便携式数据采集系统。文中首先简单的对USB总线的特点以其相应的体系结构进行了介绍,然后对硬件电路、软件程序以与系统测试几个方面进行了深入论述。在硬件设计方面:选用的系统硬件主要由模数转换模块、FPGA主控制器模块、USB接口模块以与电源模块构成;根据系统要实现的功能以与芯片的工作方式完成了电路的连接,同时完成了系统的原理图设计和PCB图的绘制。在软件设计方面:根据系统的设计要求,重点研究了三部分容:FPGA控制程序、USB固件程序以与客户端应用程序。同时详细介绍了各部分软件的具体设计思想,并给出了相应的程序流程图与调试结果。最后,结合硬件和软件对整个系统进行了最终测试,并给出了测试结果和分析。结果表明:该数据采集系统的功能符合设计要求,能够满足一般工业现场对数据采集系统便携性、低功耗以与对数据传输速度要求较高的任务需求。关键词:数据采集;USB2.0;FPGA;固件程序;应用程序Title:PORTABLE DATA ACQUISITION SYSTEM DESIGN BASED ON USBMajor:Circuits and systems Name: WenHua He Signature:Supervisor:Prof. ShuiYu WANG Signature:AbstractTraditional data acquisition card is commonly used standard interfaces such as PCI 、ISA,but the acquisition card is not easy to carry, install and expand. So it can not meet the actual needs of the research and production.The Universal Serial interfaces USB as a new standard of serial communication, it has a high transmission rate, good scalability .At the same time,it is easy to plug and play, variety in use. So it is compensated for the defects of traditional capture card interface.In this paper, along with the efficient performance of the transmission advantage of the USB and FPGA, a portable data acquisition system based on USB2.0 have designed and implemented .The paper first briefly describes the architecture and features of the USB bus, then conducted in-depth discussion on aspects of the hardware circuit, software programs, and system testing.In the Hardware:We mainly completed AD converter circuit design, FPGA host controller peripheral circuit design,the USB interface circuit design and the power module design. The connection between each part of the chip operating modes and systems to achieve the function. Complete system schematic design and PCB diagram of the hardware circuit system,In the software:According to the design requirements, we focus on the three sections: the FPGA control-program design, USB firmware design and client applicationprogram design.At the time,describeing in detail the various parts of the software design ideas.We also give the corresponding program flowchart and debugging results.At last ,combination of hardware and software , testing the entire systemis was tested and the test results and analysis were gived. The results showed that the data acquisition system can meet the design requirements which the general industrial field data acquisition system portability, low power consumption and higher data transfer speeds .Key words: Data acquisition; USB2.0; Firmware; Application目录 1绪论11.1研究背景与意义11.2 国外研究现状与趋势11.3 本文研究的主要容22 USB简介32.1 USB总线的特点32.2 USB总线结构32.3 USB设备的开发流程53 系统总体设计73.1 系统的性能指标73.2 系统方案的确定73.3 硬件构成83.4 软件构成94 系统硬件电路的设计与实现114.1 FPGA114.1.1 FPGA简介114.1.2 FPGA芯片的选择124.2 AD转换器的选择134.3 USB接口芯片的选择154.3.1 CY7C68013A芯片结构154.3.2 CY7C68013A的端点缓冲区164.3.3 CY7C68013A的接口模式174.4 AD电路设计184.4.1接口的电平转换184.4.2 TLC5510外围电路设计194.5 USB电路设计194.5.1 USB与FPGA的接口电路204.5.2 USB的外围电路214.6 FPGA外围电路设计224.6.1时钟电路与复位电路224.6.2FPGA下载配置与调试接口电路设计234.7 电源电路的设计244.8 抗干扰和PCB设计265 系统软件设计275.1 FPGA逻辑设计275.1.1 ADC控制模块设计285.1.2 FIFO在FPGA中的应用305.1.3 时钟与分频模块设计325.1.4 USB控制模块335.1.5 FPGA总体控制逻辑设计355.2 驱动程序365.2.1 驱动程序简介365.2.2 驱动程序的安装375.3 固件程序385.3.1 固件功能385.3.2 固件基础395.3.3 固件程序的设计415.3.4 固件程序的实现475.4 用户程序的编写495.4.1 应用程序和USB设备的通信495.4.2 用户界面程序506 测试536.1 FPGA与USB的通信测试536.2 USB设备速率测试546.3系统功能测试556.3.1 USB设备的识别556.3.2 数据的采集567 主要研究工作总结与展望597.1 总结597.2 展望59致61参考文献62攻读硕士学位期间取得的研究成果64符录电路原理图651绪论1.1研究背景与意义数据采集系统是指对各种传感器输出的模拟信号进行采集,通过AD转换器将模拟信号转换成数字信号,然后把数字信号送入计算机进行处理,并按需要的形式输出处理结果的系统。伴随着科学技术飞速的发展,数据采集系统作为获取信息的重要途径以与探索科学奥秘的重要手段已广泛应用于各个领域。目前常用的数据采集方式主要是将基于ISA或PCI的数据采集板卡安装在工业控制机或者PC机。但是这种数据采集方式有很多的缺陷:(1)插拔困难、安装复杂、价格比较贵,并且计算机的插槽数量、地址、中断资源也限制了采集卡的扩展性;(2)数据采集卡被安装在工业控制机或者PC机部,不便于携带,因此无法进行野外现场的数据采集1。通用串行总线(Universal Serial Bus) USB作为目前最重要的计算机外设互联接口,它具有即插即用、传输速率高、且易于扩展的优点。并且,在一般情况下USB主机上可以提供稳定的5V电压,这样USB外部设备可以通过相应电缆获得主机提供的电压。具有USB接口的数据采集卡就可以通过USB电缆获得稳定可靠的工作电源。USB作为新型的接口更容易满足复杂、灵活的设计和电路的微型化的要求。因此,USB总线代替传统的ISA或PCI总线用于数据采集系统,可以满足人们对数据采集系统的便捷性、高速性、扩展性和通用性的要求。1.2 国外研究现状与趋势计算机具有良好的扩展性,依赖于其具备的多种通信接口。RS232、并行接口、PCI等老式计算机接口存在规不统一、体积庞大、可扩展性差、不支持热插拔等缺陷。随着技术的发展和计算机应用的需要,老式接口的缺陷越来越制约计算机的使用。因此,USB作为一种新的计算机接口应运而生。IBM、Microsoft等7家公司在1994年11月时就共同提出了USB规。但在随后的几年时间里,USB2.0规迟迟没有问世,直到2000年底才尘埃落定。这时候的USB2.0同时支持三种传输速度,其最高传输速率可以达到480Mbps2。直到2008年11月26日,USB促进委员会才正式宣布新一代USB3.0接口规已经制定完全,USB3.0接口最高传输速度将高达5.0Gbps,相比较USB2.0的传输速度,可谓是向前迈了一大步。如今随着集成电路的飞速发展和USB设备开发的进步,各种集成有USB控制器的芯片相继问世。这些产品都集成了功能强大的处理器,显然提高了数据传输的稳定性和传输速度,同时在一定程度上降低了开发难度。到目前为止,基于USB接口的产品种类繁多,从低运行速度的鼠标、键盘到全速的MP3、移动硬盘、数码相机以与高速的数据采集卡等。我们注意到USB接口因其即插即用、可兼容性以与可扩展性等优点得到了极其广泛的应用,它己经成功的应用到了信息产业、家电产业和网络产业等,特别是在数据采集方面的应用尤为突出。当下,许多能够适应不同传输速率,不同深广度要求的USB数据采集系列产品已经琳琅满目。NI公司研制的一系列USB数据采集卡可以说是其中的代表,但是NI公司的USB数据采集卡产品的价格普遍偏高,因此对于国的大多数用户来说显然无法承受这样昂贵的价格。相比于国外,国对USB数据采集产品的研发相对落后,但总体来看,现在国的一些厂家对USB接口的数据采集产品的开发和研制已经取得了一定的成果,其研究产品的种类也越来越繁多,但是围和研发的深度存在着不小的差距,主要表现在下面的几个方面:采用USB1.1协议的产品较多,而采用USB2.0较少;采集系统功能过于简单,同时在采集速率、精度以与分辨率上和国外还存在相当大的差距。现阶段随着USB协议的不断完善,对比其他采集系统,USB数据采集系统接口的性能会有其他产品无法媲美的优势,它会得到越来越广泛的应用。所以说对USB数据采集系统做更为深入的开发也显得尤为重要。1.3 本文研究的主要容本文在分析USB总线的体系结构和特点基础上,确定了一种基于USB的便携式数据采集系统的方案。在该方案中,系统选用FPGA作为硬件电路的主控制器。对于输入的模拟信号,经模数转换后,在FPGA的控制下传输给USB,然后再通过USB控制接口将数字信号传输到上位机。用户可以通过上位机界面程序实现数据的读取、存储以与采集控制等功能。本文研究的主要容有:分析了USB总线特点、系统的组成结构以与开发流程等;设计了数据采集系统的硬件电路,同时完成了模数转换器和FPGA的连接,FPGA与USB的连接,以与FPGA外围电路的设计;在要求各个元器件对电源电压的相适应的条件下,设计提供了相匹配的电源系统;完成了系统原理图设计和PCB图的绘制;利用硬件描述语言VerilogHDL,编写了基于FPGA部逻辑控制模块,完成了对AD采样的控制,以与对USB数据传输的控制;分析了USB接口电路的固件程序开发步骤,并用C51语言开发了USB接口设备的固件程序,实现了USB在Slave FIFO模式下进行数据传输的功能;编写了上位机的应用程序,完成了数据的读取与显示;最后结合硬件和软件对整个系统进行了最终测试,并给出了测试大量有益结果与分析。2 USB简介2.1 USB总线的特点USB是英文Universal Serial BUS(通用串行总线)的缩写,用来统一电脑与外部设备的连接和通讯,是一种新的计算机接口技术。USB总线接口与传统的计算机接口相比,具有以下明显的优点:接口体积小巧,具有很相当大的体积优势,在目前计算机和集成化的趋势中,得到了广泛的应用;能够适应低速、全速和高速的传输速率操作;为适应不同外部设备对于不同功能的需要,它提供了4种不同类型的传输;即插即用是它基本功能之一,对于USB设备来说,只要安装了与之适应的驱动程序,它就可以工作;USB接口具有外部供电能力,计算机上的USB接口最大可以输出500mA的电流,5V的电压,满足大多数微处理系统对电源的要求;具有良好的兼容性,随着技术的发展,USB规包括USB1.0、USB1.1、USB2.0,以与无线USB和USBOTG等多个版本,并且USB规都具有良好的向下兼容性;性价比高,目前,随着技术的发展和USB设备的普与,USB的芯片以与USB电缆的价格都已十分低廉,USB接口的性价比日益提高。2.2 USB总线结构USB主机、USB设备和USB电缆组成一个简单的USB应用系统,如图2-1所示。USB系统中最重要的就是USB主机和USB设备。总体来说,用户的特定功能是由USB设备完成而USB协议的处理则是由USB主机负责的。对于USB主机与其设备之间的通信,包含上行通信和下行通信。前者主要用于USB设备向USB主机传输数据,后者则主要用于USB主机向USB设备传输数据。图2-1 简单的USB系统Figure2-1 Simple USB system(1)USB主机广义上讲,具有USB端口的计算机以与其他具有USB主控芯片的设备都可以称为USB主机。USB主机在整个数据通信过程中有着相当重要的地位,它控制着数据的启动和命令的传输,而USB设备只有被动的响应USB主机请求。USB系统中不能有多个USB主机同时存在,如果有多个主机就会引起系统混乱。鉴于此种情况USB协议明确规定:USB系统中只能有一个USB主机存在。(2)USB设备伴随着USB接口的飞速发展,USB设备种类越来越丰富,主要包括USB功能设备和USB集线器两种类型。USB功能设备一般是一个独立的外部设备,例如有用于扩展USB主机功能的USB鼠标,以与用来进行数据传输的移动硬盘或者USB数据采集系统等。USB功能设备连接到USB主机后,主机需对其进行配置设置,这样USB功能设备才可以使用。USB集线器的功能主要是提供额外的连接点给USB主机系统,从而扩展USB主机的端口,那样的话使一个USB端口可以扩展连接多个设备。USB设备与其主机的连接主要包括USB主机与集线器的上行端口连接以与USB设备与集线器的下行端口连接。同时我们必须注意到USB集线器的级联是有限制的,它最多可以级联5级。(3)USB的连接USB连接器有两种:A型和B型,A型插座与A型插头匹配,B型插座与B型插头匹配。A型插座主要用在USB主机或者USB集线器下行端口,而对B型插座来讲,它则主要用在USB设备或集线器的上行端口。当然无论A型还是B型的USB接头,它们均有4根引线:VCC、GND、D+ 、D-,分别对应USB电缆的4根导线。USB主机通过VCC和GND这两个引线向USB设备供电;通过D+ 、D- 差分数据线向USB设备传输数据。典型USB接头如图2-2所示。图2-2 USB接头Figure2-2 USB connectorUSB电缆将USB主机、USB集线器以与USB设备连接起来,形成一个完整的USB系统。但是,对于USB的不同传输模式会用到不同特性的电缆。2.3 USB设备的开发流程USB设备的开发流程简单介绍如下:(1)分析功能。主要分析USB设备需要实现的所有功能,以与每个功能采用的实现方式、数据传输类型和速率、所需要的硬件资源等。(2)选择USB接口芯片。在明确了USB设备的功能要求后,我们就要选择一款合适的USB接口芯片。需要强调的是选择芯片需要考虑很多因素,比如芯片部资源、芯片管脚数目、芯片封装形式、兼容性,同时价格也是必须考虑的。(3)USB软硬件开发。在选择了合适的芯片后,我们就可以进行软硬件开发了。软件开发则主要包括设计USB芯片固件程序、驱动程序和用户界面程序等;而硬件开发主要包括设备功能组件、硬件接口、资源分配等。(4)设备综合调试。当USB设备的主要功能设计完成了,但为了完整和完善设备的整体功能,还需要对整个软硬件系统进行综合调试。3系统总体设计3.1 系统的性能指标输入通道:单通道;测量对象:工业现场各类传感器的输出电压;电压围:0.6V2.6V;频率围:1Hz400KHz;采样分辨力:8位;最大采样速率:2MSPS;数据传输接口:USB2.0接口;FPGA缓存深度:1024,位宽8bits;系统电源:模拟电压+5V、3.3V、1.5V和5V数字电压;用户程序:要能读取USB的配置描述符,采集的控制以与数据的显示、存储等功能;供电方式:USB接口供电或外接电源可选,供电电压为+5.0V;“便携式”应是本系统的最大特色,特别是在数据采集系统的硬件设计时应充分考虑集成度、体积、功耗等问题。3.2系统方案的确定基于USB接口的数据采集系统典型框架如图3-1所示。图3-1 USB数据采集系统典型框架Figure3-1 typical framework of the USB data acquisition system现有的数据采集卡常用单片机或DSP作为控制器。单片机的时钟频率比较低,需要软件支持来实现其功能,然而软件的运行时间比较长,就会成为采样速率的一个阻碍。相比而言采用DSP作为控制器的采集卡其运算速度较快而且擅长处理密集的乘加运算,但是它很难完成对外围复杂硬件进行逻辑控制。既然采用单片机或DSP作为控制器的数据采集卡有很大的缺陷,那么就应该寻找速度更快,能更好的对外围硬件进行逻辑控制的控制器。FPGA作为新一代的控制器就能很好的弥补传统控制器的缺陷。FPGA不仅可以使电子系统小型化、低功耗、高稳定性,还能让开发周期缩短、电路板面积缩小、开发软件投入少、成本不断降低等4-5。正是因为FPGA具有很多优点,所以促使FPGA越来越多的取代其他专用集成电路市场。因此本文中选用FPGA作为数据采集系统的控制器,它可以代替许多传统的逻辑电路,也可使系统设计简单化、产品小型化。因此本文中采用USB和FPGA技术相结合的方案设计的数据采集系统,它小巧且便于携带,可以大大提高系统的稳定性与可靠性。整体设计思路为:用户首先登入界面程序并发出相应的采集命令;然后命令通过USB传输到下位机也就是采集卡,紧接着采集卡的主控制器FPGA根据命令控制AD进行模数变换的操作,直到计算机终端收到经由USB传输过来转换后的数字信号,最后用户在程序中可以轻松实现数据现的接收、存储和显示等相关功能。本数据采集系统包括两部分:系统的硬件设计和软件设计。系统总体框图如图3-2所示。3-2 系统总体框图Figure3-2 System framework3.3 硬件构成硬件要实现二大主要功能:一是接收PC主机传送过来的命令,同时并控制其它电路的相关执行命令,二是控制输入信号的模数转化,最后把转化后的数据直接传输到PC主机里。根据硬件要实现的功能,本数据采集系统的硬件主要设计了以下几部分:AD转换电路,FPGA控制器与外围电路,USB接口电路以与电源电路。AD转换芯片主要功能是将输入的模拟信号转换为数字信号;而FPGA作为系统主控器,它是整个系统的核心,主要实现对AD芯片的时序控制和数据的缓存,还要完成对USB接口电路的控制;USB接口电路主要完成FPGA和上位机(PC)的数据传输和信息交换;在电源电路中,系统中采用USB总线供电,并通过电压转换芯片来满足AD芯片、FPGA芯片的供电要求。3.4 软件构成用户要想使上位机能够发送命令给硬件,并接收下层硬件产生的数据,没有相应的软件程序来协助是不可能完成这些功能的。本系统的软件设计主要包括两个部分:一部分主要用于控制AD的模数转换、数据的缓存以与控制USB进行数据传输的FPGA逻辑控制程序;另一部分是开发USB设备涉与到的程序,主要涉与到USB固件程序、USB设备驱动程序以与客户应用程序。其中,固件程序的主要功能是用来设置USB的工作模式,并对用户发来的各种请求做相关的处理,以保证传输数据的高效;驱动程序好比就是硬件电路和上位机客户应用程序的桥梁;而客户应用程序主要为用户提供可视化的操作界面,用户只要轻松的设置界面上相关参数或者点击相关功能按钮就可以实现对硬件电路的控制。4 系统硬件电路的设计与实现本章主要介绍基于USB的便携式数据采集系统的硬件电路设计。首先简单介绍硬件电路的整体构架,然后介绍芯片的选择,最后介绍各个模块的具体实现方式。硬件电路框架如图4-1所示。图4-1 硬件电路框架Figure4-1 Hardware circuit framework4.1 FPGA4.1.1 FPGA简介FPGA是Field Programmable Gate Array的缩写,即现场可编程门阵列,是一种能够用编程的方法设计部硬件电路结构的集成电子器件。随着社会的发展,FPGA应用的领域越来越广,包括通信、移动设备、航空航天、自动控制等领域,并有向计算密集型应用发展的趋势。FPGA可以完成许多数字器件的功能,无论是高性能的CPU还是简单的74系列电路,这些都可以由FPGA控制实现。数据采集系统使用FPGA作为主控制器可以大大缩短设计时间,减少PCB面积,提高系统的可靠性、扩展性、便携性等。FPGA主要有两种编程方法,它们是相互竞争的。第一种是SRAM编程,这涉与到用SRAM的比特位作为编程单元。基于SRAM的FPGA具有可以被重复编程的优点,这种FPGA被安装到系统以后再被重新编程,使得“在线升级”变得非常容易。编程者只要修改一下软件,就可以替换一个通信协议;为FPGA的设计增加一种特性,它允许在设计中设置一些小规模的存储器,像FIFO(先进先出存储器),但是一个FPGA中一般不设置大规模的存储器,因为那样是不经济的。另外,基于SRAM的FPGA还可以被用于“可重新配置”计算。计算机中含有FPGA,算法可以在计算机中汇编,并在这些FPGA中运行。另一种编程方法牵涉到反熔丝。反熔丝技术的特点主要有以下几个方面:它的单元较小,占用芯片面积小,而工作频率相当高,反拷贝能力强,并且还不需外接PROM或EPROM,。这种FPGA主要适合航天、军事、工业等各领域。理论上,反熔丝型FPGA比SRAM型FPGA在速度上要快很多。这是因为反熔丝型FPGA对于经纬路径来说,其部导体之间的连接是实质性的,当然这是相当于SRAM型FPGA部所用的逻辑门或晶体管而言的。然而在实践中,我们发现反熔丝型FPGA的速度并不比SRAM型FPGA的速度快的很多。这与理论上还是存在一定的差距。同时我们不能忽视的是反熔丝型FPGA的缺点也是明显的,它只能一次编程,并且需要专门的编程器,这些都会在一定程度上影响系统的开发成本。4.1.2 FPGA芯片的选择a.芯片选择目前生产FPGA器件的两个主要厂商是Altera公司和Xilinx公司,其生产的PLD产品被广泛的应用到各个领域。两个厂商生产的各个系列产品各有优劣,提供的宏功能模和开发平台也各不一样。在考虑了芯片部资源、器件的执行速度、可用I/O管脚数目、器件功耗等因素后,本文设计中采用了Altera公司生产的性价比较高的Cyclone系列型号为EPlC6Q240的芯片。该芯片具有强大的硬件逻辑功能,总逻辑单元达5 980个,包含20个12836位的RAM块,总的部存储单元达到92160位,嵌2个锁相环,芯片工作电压为1.5V,有180个I/O引脚,支持多种不同的I/O标准;应用广泛,性价比较高6。b.FPGA管脚FPGA的管脚主要包括:用户I/O、配置管脚、电源、时钟与特殊应用管脚等,其中有些管脚可有多种用途。这就要求在设计FPGA相关电路之前,设计人员需要认真的阅读相应FPGA的芯片手册。本文设计选用的是Altera公司的EPlC6Q240的芯片,该芯片的主要管脚介绍如下7-8。1) 用户I/O一般作为输入或输出接口,也有些是双向口的,同时可用为LVDS差分对的负端。通常情况下对多余的I/O口引脚会进行一些处理,比如通过扩展的插针形式将不用的引脚引出来,作为后期系统升级扩展以与系统的调试工作之用。2) 配置管脚MSEL1:0:用于选择配置模式。FPGA由多种配置模式,可以通过此管脚进行选择;DATA0:FPGA串行数据的输入管脚;DCLK:FPGA时钟管脚;nCSO:FPGA片选信号管脚;ASDO:FPGA串行数据管脚;nCEO:下载链器件的使能输出管脚;nCONFIG:用户模式配置;nSTATUS:状态信号配置;CONF_DONE:结束信号配置;nCE:下载链器件使能输入;3) 电源管脚VCCINT:FPGA的核电压;VCCIO:FPGA的端口电压;VREF:参考电压;GND:信号地。4) 时钟管脚VCC_PLL:FPGA的锁相环管脚电压;VCCA_PLL:FPGA锁相环的模拟电压;GNDA_PLL:FPGA锁相环的模拟地;GNDD_PLL:FPGA锁相环的数字地;CLknum:FPGA锁相环时钟的输入;PLLnum_OUT:FPGA锁相环时钟的输出;另外,有一些管脚是全局时钟,使用这些管脚作为关键时钟或信号的布线可获得最佳的性能。4.2 AD转换器的选择模拟信号进入FPGA之前,必须用AD转换器将其转换为数字信号以便系统的识别。因此AD转换器是整个数据采集系统设计的一个重点,必须慎重考虑。AD芯片的选用关系到数据采集系统的技术指标、系统结构、功耗、安装、环境要求等。一般情况下AD的选取可以遵循以下几点原则:AD分辨率:相应芯片的分辨率主要根据输入信号的幅度确定;转换速度:主要根据被测信号的频带宽度围,确定AD转换器的传输速度。通常情况下转换器的转换速率要高于系统要求的采样频率;A/D的环境参数:采集的环境条件决定了符合其环境参数要求的芯片。这里的环境参数主要包括信号输入围、工作温度围、供电要求以与抗干扰性能等四个方面;数据接口要求:A/D转换器的输出形式选择,是选用外部时钟还是部时钟;是否存在转换结束状态提示信号等。在考虑了上面的几点要求后,我们还要考虑到器件成本、供货渠道、技术支持等因素。综合以上因素,本系统设计采用美国仪器(TI)公司的AD转换芯片TLC5510。TLC5510特点如下:8bit分辨率;最大转换速率是20MSPS;供电电压是5V;100mW的低功耗;置采样、保持功能模块。另外,TLC5510由于采用半闪速结构和CMOS工艺,减少了功率损耗和晶片尺寸。 TLC5510采用24引脚的贴片封装,各引脚功能描述如表4-19。表4-1 TLC5510引脚Table4-1 TLC5510 pin引脚名输入/输出描述AGND模拟地ANALOG IN输入模拟信号输入端CLK输入时钟DGND数字地D1-D8输出8位数据输出端OE输入输出使能端,低电平有效REFB输入AD转换器参考输入电压REFBS当部分压器输出额定2V 基准电压时,该端短路至REFB;REFT输入参考输入电压REFTS当部分压器产生2 V 的额定基准电压时,该端短路至REFT。VDDD数字电源VDDA模拟电源在本系统中,待测信号的模拟输入围为0.6 V2.6 V,所以需要利用TLC5510部分压电路产生2V电压量程,使得TLC5510的输入围为0.6 V2.6 V。TLC5510部分压电路连接模式如图4-1所示:图4-1 产生2V电压量程的连接图Figure4-1 connection diagram of the 2V span其中模拟电源VDDA引脚接入+5.0V模拟电压,模拟地AGND引脚接模拟地,REFTS和REFT短接,REFBS和REB短接。部电阻的标准值分别为:R1=320,Rref=270,R2=80。由图4-1中的连接便可计算出电压量程围。计算如下所示:REFB= VDDAR2/(R1+Rref+R2)=580/(320+270+80)=0.6(V)REFT= VDDA(Rref+R2)/(R1+Rref+R2)=5(80+270)/(320+270+80)=2.6(V)所以TLC5510的信号输入围为0.6V2.6V,当模拟输入为0.6V时,转换输出的数字量为00000000,2.6V对应的数字输出为11111111。4.3 USB接口芯片的选择对于目前市场上如此多的USB接口器件,芯片选择时应该考虑的因素就很多了。本设计要求数据采集系统是便携式的,所以必须考虑电路复杂程度、体积大小、系统功耗、程序/数据存储器容量大小、电源需求、数据传输速率要求等多方面互相耦合因素的影响10。其中Cypress公司的EZ-USB FX2LP系列芯片是首选。它是集成了USB2.0协议(向下兼容 USB1.1)的微控制器,同时可以进行全速传输(12Mb/s)以与高速传输(480Mb/s),并且包括4种不同的USB传输方式:控制传输、中断传输、块传输和同步传输。值得一提的是EZ-USB FX2LP系列芯片部集成了USB外围接口设备所需的全部功能,我们可以利用这种芯片的优点便利地开发许多功能迥异的产品。本设计选用的就是EZ-USB FX2LP系列中拥有56引脚的CY7C68013A芯片,它是该系列芯片中引脚最少、体积也较小的一款,符合系统便携的要求,同时也会降低设计成本。4.3.1 CY7C68013A芯片结构CY7C68013A芯片部结构如图4-2所示。图4-2 CY7C68013A芯片部结构图Figure4-2 CY7C68013A chip internal structure该芯片部主要包含以下几部分:高速8051单片机、FIFO存储器以与GPIF (通用可编程接口)、串行接口引擎和USB2.0收发器。数据线有8位和16位可供选择,很容易与不同的控制器接口对接11-12。单片集成USB2.0收发器、SIE和增强型8051CPU;为适应USB2.0的480MBit/s的速率,FIFO端点可配置成2,3,4个缓冲区;嵌增强型8051微处理器,它该功能比标准8051强、速度比它快,硬件资源也比较多;RAM是16KB的,程序代码和数据都可以简单地存储在芯片部的RAM里;接口模式丰富,主要有通用的I/O模式、SlaveFIFO模式、GPIF模式;部有多达4个的FIFO缓冲区,主要任务是提供主机或从机操作;它与FPGA或其它控制器芯片接口是相当容易的。CY7C68013A芯片主要管脚的功能如表4-2所示。表4-2 CY7C68013A的主要功能管脚Table4-2 The main function of the CY7C68013A pin15,16DPLUS,DMINUSI/O/ZUSB D和D-数据线49RESET#I复位信号线,低电平有效11,12XTALIN,XTALOUTI,O晶振输入、输出管脚5CLKOUTO/Z时钟信号的输出端, 默认为12MHZ4047PA0-PA7I/O/ZI/O 口PA,具有第二复用功能2532PB0-PB7(FD0-FD7)I/O/ZI/O 口PB(双FIFO/GPIF 的低8 位数据总线)5256,13PD0-PD7(FD8-FD15)I/O/ZI/O 口PD(双FIFO/GPIF 的高8 位数据总线)8RDY0/SLRDIGPIF 的输入信号端/ 从属FIFO 的读选送端9RDY1/SLWRIGPIF 的输入信号端/ 从属FIFO 的写选送端3638CTL0-CTL2/FLAGA-FLAGCOGPIF 的控制输出端/从属FIFO 的输出状态标志信号20IFCLKI/O/Z从属FIFO 的同步时钟信号21ReservedI保留,接地51WAKEUPIUSB的唤醒信号输入端22,23SCL,SDAODI 2C 总线的时钟信号线和数据信号线4.3.2 CY7C68013A的端点缓冲区端点(Endpoint)是USB规中很重要的一个概念,从CY7C68013A的观点来看,端点是一个通过USB总线来传送与接收字节的数据缓冲区。CY7C68013A在数据传输的时候主要用到了4KB的FIFO和7个端点。CY7C68013A的7个端点如表4-3所示。表4-3 CY7C68013A的7个端点Table4-3 the seven endpoints of the CY7C68013A端点大小备注EP064B控制传输EP1IN64B输入EP1OUT64B输出EP24KB输入/输出EP44KB输入/输出EP64KB输入/输出EP84KB输入/输出USB协议中将端点做了如下定义:它是窗口,是数据的接受器和发送器。EP0是一个默认的双向控制端点,它即可写数据也可读数据。当传输控制命令有需求时,CY7C68013A中的固件程序就可以读写EP0。EP1IN和EP1OUT使用独立的64字节缓存区,可以配置为同步、中断和块传输方式,这2个端点也只能被固件访问。EP2、EP4、EP6、EP8这几个端点缓存区主要用来进行高带宽数据传输,不需要固件程序的参与。这四个端点可以设为IN或者OUT,自动模式或者手动模式。另外为了解决带宽的问题以与读写双方互相等待的时间过长等问题,可以将这4个端点配置成双重、三重和四重缓冲,这样就可以很好解决这些问题了。这些端点在部的传输控制是通过满和空两个控制信号来完成的,部写满了就不能再写数据,读空了就不再对FIFO进行读。4.3.3 CY7C68013A的接口模式CY7C68013A芯片提供了Slave FIFO(从属FIFO)和GPIF(通用可编程接口)两种不同类型的接口模式。其中可以通过设置寄存器IFCFG来选择相对应的接口模式。GPIF代表主机模式,对于这种模式,主控制器是CY7C68013A芯片,可以通过软件编程自动读写控制波形。对于8/16位接口的控制器、存储器可以进行数据的主动读写,没有必要外加控制器。Slave FIFO模式顾名思义即从机模式,在本模式下,系统中的逻辑控制器FPGA就犹如普通FIFO一样,可以轻松完成对CY7C68013A中端点数据缓冲区的读写工作。对应的芯片的工作时钟有部产生和外部输入两种不同方式可供选择;相关电平的设置由芯片的控制信号控制;工作方式同时也对应有二种模式即异步模式或者同步模式,所谓异步就是读写数据的时候只与读写使能信号有关,与时钟IFCLK无关;所谓同步就是同时受时钟信号以与读写信号的控制。同步与异步的时序如图4-3所示。图 4-3 异步和同步模式下的时序图Figure4-3 Asynchronous and synchronous mode timing diagramCY7C68013A的固件程序代码和数据,先存储在PC机上,然后再通过USB接口从PC机直接下载到CY7C68013A芯片部的16KBRAM里面,这样可以缩短产品的开发周期,同时还可以方便对固件进行更新,以与完成对产品进行升级工作等。本设计中选择FPGA作为控制器,那么对应CY7C68013A就选择工作在Slave FIFO模式(从机模式)。4.4 AD电路设计4.4.1接口的电平转换TLC5510的工作额定电压一般是5.0V,而对应的FPGA的I/O口工作电压通常状况下是3.3V。TLC5510的时钟信号ClK和输出使能信号OE能够被FPGA输出的电平驱动,所以TLC5510的时钟信号CLK和使能信号OE与FPGA的I/O口能直接相连,但TLC5510的数据输出端D1-D8与FPGA的I/O口之间不能直接相连的。为了不损坏器件以与完成正常的数据通信,那就必须在TLC5510与FPGA之间进行电平转换。设计中选用74LVC4245A 电平转换芯片,该芯片的特点是双向、8路、电平可控,同时具有3.3V和5V两种供电电源。其各个引脚功能各个参数如下:VCCA电源电压(5V0.5V);VCCB电源电压(3.3V0.3V);GND 地;A1-A7数据输入/输出;B1-B7数据输入/输出;DIR方向控制器;#OE输入输出使能(低电平有效)。电路中74LVC4245A的VCC接+5.0V电源,VBB接3.3V电源13。A1-A8与TLC5510输出的8位数字信号连接,#OE、B1-B8与FPGA的I/O口连接,DIR为方向控制器,通过一个选择开关P1可以控制数据的传输方向。当选则开关连接到3.3V高电平时,允许数据从A端(TLC5510)传到B端(FPGA);当选择连接到低电平时允许数据从B端(FPGA)传到A端(TLC5510)。TLC5510与FPGA的接口连接示意如图4-4所示。图4-4 TLC5510与FPGA的连接示意图Figure4-4 The connection diagram of the TLC5510 and FPGA4.4.2 TLC5510外围电路设计设计中采用TLC55l0部+2V参考电压,因此将REFTS和RETF短接,REFB和REFBS短接,使REFT=2.6V,REFB=0.6V,并通过旁路电容接地。VDDA和VDDD应就近与AGND和DGND连接一个0.1F的高频磁滤波电容。其中FB2FB4代表高频磁珠,主要是模拟电源AVDD经过FB2FB4为TLC5510提供模拟工作电流。加上FB2FB4高频磁珠,主要目的是为了获得更好的高频去耦效果。TLC5510的时钟CLK不用单独设置,由FPGA提供。数据的转换控制可通过FPGA按照AD转换的时序直接控制OE的电平状态。模拟输入信号从AIN引脚输入,在经过转换的8位数字信号从D1-D8输出。TLC5510的外围电路如图4-5所示。图 4-5 TLC5510外围电路连接Figure4-5 The connectionof the the TLC5510 peripheral circuit 4.5 USB电路设计以CY7C68013A为核心的数据传输电路,主要完成FPGA与PC机的数据传输以与命令的传输。4.5.1 USB与FPGA的接口电路本系统设计中由FPGA作为控制器,只是简单地利用CY7C68013A作为一个数据通道来实现数据采集卡与上位机应用程序二者之间的高速数据传输。那样的话本系统就应该采用Slave FIFO连接模式,其中Slave FIFO模式传输示意图如图4-6所示。图4-6 Slave FIFO传输示意图Figure4-6 transmission schematic of the Slave FIFO在该方式下,CY7C68013A嵌的固件功能就只是配置Slave FIFO相关寄存器以与控制CY7C68013A什么时候工作在Slave FIFO模式下。当固件将相关的寄存器和工作模式配置完毕,FPGA就可按照Slave FIFO传输时序,高速与PC机进行通信然而固件却不参与通信。如果我们将CY7C68013A的端点配置成自动输入或输出的话,端点的数据就会自动打包,接着传给FPGA或者计算机。本数据采集系统设计时采用的是异步方式,数据总线是8位,控制端点为端点0,其主要作用是传输系统控制命令,而端点6则用来传输我们采集的数据。在异步Slave FIFO方式下,CY7C68013A接口芯片的I/O管脚直接连接到相应的FPGA管脚。FPGA与CY7C68013A的Slave FIFO连接示意图如图4-7所示14-15。图4-7 FPGA与CY7C68013A的连接示意图Figure 4-7 The connection diagram of the FPGA and CY7C68013ACY7C68013A为FPGA提供部端点6的空(Empty)满(Full)标志信号和上位机发来的控制信号,FLAGB表示EP6的空状态,FLAGC表示EP6的满状态,PD7:0传输上位机发出的各种命令如:开始采集、停止采集以与采样频率。主控制器FPGA对CY7C68013A数据通道的控制则主要通过如下控制信号来实现:FIFOadr1:0 (端点选择信号)、SLWR(写使能信号)、SLCS(片选信号),FD(8位数据线)。4.5.2 USB的外围电路FD0:7为Slave FIFO的8位数据接口,直接与FPGA的I/O口相连。PD0:7传输上位机发出的各种命令,直接与FPGA的IO口相连。FLAGB、FLAGC分别为CY7C68013A端点6的空状态和满状态标志信号管脚。FIFOADR0和FIFOADR1为CY7C68013A端点FIFO的选择信号管脚,可通过PFGA选择4个FIFO(EP2、EP4、EP6、EP8)中的一个与数据总线FD相连。Slave FIFO接口模式的使能有SLWR(写使能)、SLRD(读使能)、SLOE(输出使能)和SLCS(片选信号管脚)。XTALIN和XTALOUT则代表外接晶振管脚,它们是需要外接24MHz的晶振的。CY7C68013A部的锁相环PLL可以将24MHz振荡器倍频到48MHz,部的计数器可将其分频用作8051时钟,默认的8051时钟频率为12MHz。CY7C68013A的I2C引脚SCL和SDA必须有2.2K外部的上拉电阻,即使没有EEPROM也要接。DPLUS和DMINU即是USB总线中的D+和D-的全称。CY7C68013A可以通过IFCLK向外提供时钟或者由引入外部的时钟源16-18。本文中由FPGA部PLL锁相环产生的时钟通过IFCLK引脚接入CY7C68013A芯片中去的。这里必需提出的是AGND(模拟地)和DGND(数字地)是不能直接连在一起,使用应该用0欧姆电阻把它们隔开,以减少二者的相互干扰。其中USB的外围连接电路如图4-8所示。图 4-8 USB的外围连接Figure4-8 peripheral connection of the usb4.6 FPGA外围电路设计FPGA的外围电路设计包括晶振电路、复位电路、下载配置电路与调试电路。4.6.1时钟电路与复位电路FPGA系统的全局时钟输入采用了有源晶振。FPGA芯片的I/O口电平为3.3V,所以选用3.3V,24MHz晶振。AD芯片所需要的时钟通过FPGA部锁相环产生,而FX2CLK提供给CY7C68013A芯片作为该芯片的外部时钟源。设计中0.1F电容的作用是很明显的,它可以滤除电源噪声对晶振输出时钟信号的影响,而时钟输出端的电阻的作用也不容小视,因为它对电路起到限流、防止过冲的作用。当我们把硬件系统电源连接好后,因为FPGA部锁相环电路稳定是需要一定时间的,所以这时候在复位管脚上配置了一个RC电路,以提供有效的复位信号。复位电路同时可以保证系统电路稳定可靠工作,是电路中不空缺少的一部分。本系统时钟与复位电路如图4-9所示。图4-9 时钟与复位电路图Figure4-9 Clock and reset circuit diagram4.6.2FPGA下载配置与调试接口电路设计本系统选择的FPGA芯片是SRAM型结构的,它本身的缺陷即不能将程序永久存储在FPGA里边,一断电的话程序就没有了。这时候FPGA就需要一片Flash(非易失性)结构的配置芯片以弥补上述缺陷,而它的主要作用就是来储存逻辑配置信息。EPCSx系列配置芯片是串行的,而EPCx系列配置芯片是并行的。利用它们可以对Altera公司生产的FPGA进行配置。EPCSx系列芯片有旧款的EPCx系列芯片无法媲美的优势即它的体积小,价格低,因此它更适合本系统。本文中FPGA的配置芯片选用EPCS4,该芯片是Cyclon系列专用配置器件,即专门用于配置Cyclone器件的EEPROM,可以用Byteblasterll在线改写,电压为3.3V19。FPGA比较常见的两个接口是JTAG调试接口和AS模式下载接口。对于AS模式:它表示我们每次上电的时候,FPGA器件作为控制器就发出读取数据的控制信号指令
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!