逻辑分析仪的设计 电子设计专业毕业设计 毕业论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
逻辑分析仪的设计电子设计专业毕业设计毕业论文
摘要
逻辑分析仪是一种分析数字化设备的测试仪器,主要用于分析数字系统的逻辑关系,有效地解决越来越复杂的数字系统的检测和故障诊断问题。
随着电子技术的迅猛发展,计算机的广泛应用,基于PC的虚拟仪器也将是测试仪器领域的一大发展趋势。
USB通用串行总线是一种主流的标准计算机接口。
USB接口具有即插即用与热插拔的特性,它可使用户迅速方便地连接PC主机的各种接口设备。
基于USB接口的逻辑分析仪充分利用计算机的强大功能,大大突破了传统仪器仪表在数据传送、处理、显示和存储等方面的限制,在性能方面得到了极大的提高。
因此研究基于USB接口的虚拟逻辑分析仪具有一定的经济效益和现实意义。
本文主要介绍了基于USB接口的虚拟逻辑分析仪的实现原理和过程。
采用现场可编程器件FPGA,设计基于USB的虚拟逻辑分析仪,首先进行了方案的论证与选取,而后进行软件和硬件设计。
硬件设计主要是外围电路设计,包括电源电路、复位电路、时钟电路、配置电路、USB接口电路等。
软件设计主要是利用Verilog HDL语言编程而后用QuartusⅡ软件进行波形仿真等。
关键词: 逻辑分析仪; USB; FPGA;
Abstract
Logic analyzer is a kind of test instrument to analyse the digital devices, is usually used to analyse the logic relationship of the digital system. It can solve the detection and fault diagnosis of the digital system effectively. With the rapid development of electronics, the widely used of the PC, the virtual instrument based on PC will be a major development trend in the test instrument. USB is a mainstream standard computer interface. The USB interface has many features, such as plug and play, hot swap. It allows users to quickly and easily connecting a variety of interface devices of PC. The logic analyzer based on USB makes full use of the computer to breakthrough the limitation of traditional instrumentation in transmission,processing, display and storage,has greatly improved in capability. Therefore,research the logic analyzer based on USB interface has great economic and practical significance.
This paper describes the principles and processes of the logic analyzer based on USB. With the help of the Field-programmable devices-FPGA to design the logic analyzer based on USB, greatly simplifies the peripheral hardware circuit. The first first selection, the demonstration and scheme of software and hardware design. Hardware design mainly is the peripheral circuit design, including power supply circuit, reset circuit, clocking circuit and configuration circuit, USB interface circuit , etc. Software design is the main Verilog HDL language programming and then use QuartusⅡsoftware waveform simulation, etc.
Key words: Logic analyzer; USB; FPGA
目录
摘要 (I)
Abstract ..................................................................................................................... I I
1绪论 (1)
1.1课题研究背景及意义 (1)
1.2 国内外研究现状及发展趋势 (2)
1.3本论文研究的主要内容 (3)
2 方案论证 (4)
2.1方案设计与选取 (4)
2.2系统逻辑框架 (6)
3 逻辑分析仪硬件设计 (7)
3.1现场可编程逻辑器件FPGA (7)
3.2 FPGA的选用依据 (7)
3.3 逻辑分析仪主芯片的选型 (7)
3.4 FPGA芯片配置 (9)
3.5 虚拟逻辑分析仪硬件总体方案设计 (13)
4 USB驱动设计 (18)
4.1 USB技术概述 (18)
4.2 USB芯片选择 (19)
4.3 芯片结构 (19)
4.4 CY7C68013管脚 (22)
4.5 USB和FPGA的驱动电路 (25)
5 逻辑分析仪的软件设计 (27)
5.1 FPGA设计流程 (27)
5.2 QuartusⅡ软件介绍 (28)
5.3 逻辑分析仪功能模块设计 (28)
6 结论 (38)
7 附录 (39)
致谢 (43)
[参考文献] (44)
1绪论
1.1课题研究背景及意义
20世纪70年代以来,伴随计算机技术、大规模集成电路、可编程逻辑器件、高速数据信号处理器的迅猛发展,各种数字系统的设计、开发、检测任务越来越多,也越来越复杂了。
数字电路系统所处理的信息都是用离散的二进制来表示,常用“1”来表示高电平,“0”表示低电平,多个二进制位的组合构成一个数据,我们称这一领域是数据域;该领域测试技术即被称为数据域测试技术,简称数据域测试。
在数据域测试的领域中,大多数情况下只在意数据信号之间的逻辑关系和时序关系,缺忽视了实际的具体波形。
对于设计人员来说,若想从大量的数据流中找出一些无规则、隐蔽、随机的错误无异于大海捞针,所以,必须采用一些全新的测试设备才能及时、准确的解决问题,比如逻辑分析仪、仿真器、数据图形产生器、嵌入式开发系统等等。
其中,逻辑分析仪(Logic Analyzer,简称LA)是最基本、最具有代表性的数据域测试仪器。
逻辑分析仪的主要功能是在时钟作用下对被检测的系统的数字信号进行采集并将其显示出来,来判断时序正确与否。
和示波器不同,逻辑分析仪没有具体的电压值显示,并且通常只显示两个电压--即逻辑“1”和“0”,因此设定一个电压作为参考是必需的,被测信号通过比较器与参考电压进行比较,比参考电压高的为高电平(即为逻辑“1”),同理,比参考电压低的即为低电平(逻辑“0”),在高电压与低电平之间形成数字波形。
例如:利用100MHz采样频率的逻辑分析仪对一个待测信号进行检测时,我们设定参考电压为2V,逻辑分析仪平均每10ns就对被测信号采取一个点,高于2V的为逻辑“1”,低于或等于2V 的为逻辑“0”,之后“1”和“0”就可以连成一个简单且连续的波形。
在此波形中,设计人员能很方便的找出异常的地方。
总之,逻辑分析仪是一种分析数字化设备软件和硬件的测试仪器,主要用于分析数字系统的逻辑关系,解决了复杂类型的数字系统的检测和故障诊断问题。
随着计算机技术的迅速发展及其广泛应用,计算机上传统的并行和串行接口已经无法满足PC与外部设备之间不断提高的速度和稳定性、易用性的要求,而且给计算机系统的设计带来诸多麻烦,给用户也带来很多不便,限制了计算
机的发展。
USB通用串行总线是一种逐流的计算机标准接口,通过它实现了即插即用与热插拔的特性。
USB接口让用户迅速方便地连接计算机主机的设备接口,很好的满足了用户的需要。
因此基于USB接口的虚拟逻辑分析仪设计具有一定的经济效益和现实意义[1]。
1.2 国内外研究现状及发展趋势
1.2.1国内外研究现状分析
自1973年美国HP公司和BIOMATION公司研制出逻辑分析仪以来,加上计算机、信号处理、软件工程等技术的快速发展,逻辑分析仪已经历了四代:第一代仅具有简单的触发功能和显示方式,速度慢且功能单一,定时分析仪和状态分析仪分别属于两种仪器;第二代的标志是微机化,很大程度上改进了触发和显示方面,定时分析仪和状态分析仪被结合到一起使用,便于对微机的软硬件进行分析;第三代具有速度高、通道数多、存储容量大等特点,而且具有了以系统性能分析为重点的分析能力;第四代产品则是性能相当完善的逻辑分析仪或逻辑分析系统。
随着数字设备检测仪器在生活中的广泛应用,逻辑分析仪有着很好的市场和广阔前景。
国内逻辑分析仪的应用不断增强,但国内该领域的制造方面发展不是很快,这主要是因为一方面逻辑分析仪应用复杂,价格也较高。
另一方面,该仪器的市场主导地位主要由国外产品占领,国内厂商的市场份额较小,影响了国内的普及。
国外逻辑分析仪的产品主要厂家是美国的Aglient 公司和Tektronix公司,他们掌握着逻辑分析仪的核心技术和很大部分的市场份额。
国内南京电讯仪器厂、上海无线电二十一厂、红华仪器厂和电子科技大学均制造了台式逻辑分析仪[2],但不部分都是功能单一、性能指标低、操作繁琐,很难投入实际使用。
国内真正形成市场份额的是生产与微机配合工作的逻辑分析仪插卡或外接模块,它们利用微机资源,补充逻辑分析仪的重要部分,共同完成LA 功能。
该产品价格不高,便于LA在国内的普及。
1.2.2逻辑分析仪的发展趋势
逻辑分析仪未来的发展趋势主要有以下几个方面:
第一,它与网络的结合,这便于远程操作和控制,而且所测数据能再网上
共享,便于专家在异地指导操作人员利用仪器对数字设备进行高难度维护、检修;
第二,与其他仪器的结合,例如Agilent公司的16500、16600和16700系列和Tektronix公司的9200系列都是模块化的综合逻辑分析系统,包括了高性能的逻辑分析仪、数字信号发生器和数字示波器等多种仪器;
第三,支持多种总线结构,新一代逻辑分析仪应能支持PC主机采用的新型I/O总线,以满足开发人员调试和分析PC主机或任何高性能计算机系统的需要;
第四,能对多微处理器结构同时进行检测、调试和验证。
例如泰克公司的TLA700系列逻辑分析仪,具有2176个逻辑通道以及每个通道高达16M的存储深度;
第五,支持人性化操作。
对较复杂的触发设置以及与被测系统的连接、显示方面等都应支持人性化操作,让用户感到熟悉、方面。
整个逻辑分析仪应向标准化、便携化发展,因此研究基于USB接口的虚拟逻辑分析仪是符合这一发展趋势的。
1.3本论文研究的主要内容
本文的虚拟逻辑分析仪是基于USB接口并且采用现场可编程器件FPGA而设计的,通过USB接口,实现了计算机和外设备之间通信速度、稳定性和易用性,同时即插即用的特性让其使用非常方便。
本课题研究内容包括以下几个方面:
1.研究了本论文的设计方案及其论证,包括逻辑分析仪的原理设计,方案比较,芯片选择等工作,并且拟定了虚拟逻辑分析仪的参数;
2.介绍了USB接口的工作原理;
3.进行逻辑分析仪的硬件设计,包括确定硬件设计的总框图,然后进行逻辑分析仪的外围电路设计;
4.进行逻辑分析仪的软件设计,包括基本思想,Verilog语言和QuartusⅡ软件介绍,进行各个模块的设计和仿真,完成FPGA芯片和外围芯片的接口设计。
2 方案论证
2.1方案设计与选取
2.1.1逻辑分析仪的设计指标
根据本课题的研制周期、经济性等要求,拟定了本课题的设计指标:
1.采用USB
2.0接口;
2.通道数:32路;
3.全通道存储深度:128KB;
4.采样频率:100MHz;
5.FIFO存储容量:8192bit×32(路);
6.支持条件触发和立即触发;
7.支持内、外两种采样时钟;
8.门限电平设置在0-5V连续可调
2.1.2 方案比较
方案一:
采用高速RAM(随机存取存储器,断电时将丢失其存储内容)将其用作FIFO来使用,这样系统运行速度快,实时性强,但其成本较高,USB总线的传输速度也将限制了该种逻辑分析仪。
该方案的结构框图如图2-1所示,数据捕获完后将数据通过USB接口直接传送至上位机而不是存储在RAM中,这样的好处是保证了采样数据的流畅和采样数据的完整性(不会丢失)。
由于本系统拟定的采样频率是100MHz,若采用这种方案的话,其一RAM 要做成FIFO,但RAM不能同时完成读和写,只能读写分开进行,所以需要RAM 的存取时间应该大于5ns。
其二,由于USB总线的传输速度最高只有480Mbps,若将32路数据同时从RAM中读出,最少需要3200Mbps的速度。
由于这两方面的原因,这种方案显然很难实现。
图2-1 方案一结构图
方案二:采用低速RAM 和降速存储方法,既保证了功能的实现同时又降低了成本。
该方案的系统框图如图2-2所示,采集到的数据存在RAM 中,直到所
有数据存储完毕才将数据读取到计算机中。
由于采用了降速存储方法,故对RAM 速度的要求降低了很多,当在数据读取时,并不需要很高的读取速度,这样就使得USB 传输总线的速度要求也降低很多。
外触发触发字
图2-2 方案二结构图
这两个设计方案的主要区别是高速RAM与低速RAM的使用,相比之下,方案二采用了低速RAM和降速存储并且在保证功能的同时降低了成本。
下面论述下为什么需要降速存储:由于USB2.0传输总线的速度最大为480Mbps(1B=8b 即1字节等于8位,故480Mbps/8=60MBps/s),即每秒可传输60MB,本设计拟定的采样率是100MHz,若将采集到的数据直接读至PC,USB2.0总线的60MB 速度远不能达到这个程度,因此必须要降速存储。
另一方面由于本设计主要是对中低速信号进行采样,不需要太高的实时性。
再加上方案二采用的是“快速采集,慢速存储”的方法,被采集到的数据经过4倍降速,使得系统对RAM存储时间的要求大大降低了[3]。
当采样过程结束后,数据通过USB接口总线快速的从RAM中读出来。
综上所述,本设计采用方案二作为设计方案,以后的设计工作都将以这个方案为中心展开。
2.2系统逻辑框架
虚
拟
逻
辑
分
析
仪
PC
部
分
图2-3 系统逻辑框图
虚拟逻辑分析仪由主机和板卡两大部分组成,系统逻辑框图如2-3所示,主机主要是由系统芯片、设备驱动程序和应用程序三部分组成,USB设备主要由USB总线接口、信号采集和功能模块组成,这些内容将在后面章节中作详细讲解。
USB总线将上位机和外围电路相连,具体的工作原理是:上位机通过USB
接口总线向下发送触发信号、采样率、存储深度等控制数据,然后设置外围电路的工作状态。
外围电路将采集到的数据通过USB总线再传给上位机,然后对数据进行分析处理,以图形化方式显示数据,详细内容在以后的章节中作阐述。
3 逻辑分析仪硬件设计
3.1现场可编程逻辑器件FPGA
可编程逻辑器件(PLD)随着微电子制造工艺的发展取得了长足的进步。
早期简单的PLD包括可编程只读存储器(PROM)、紫外线可擦除只读存储器(EPROM)和电可擦除只读存储器(E2PROM),它们只能完成简单的逻辑编程,而且只能存储少量数据,中期出现了可编程阵列逻辑(PAL)和通用阵列逻辑(GAL),它们能完成中大规模的数字逻辑功能,基本结构一般由与阵列、或阵列、输入和输出电路组成。
如今PLD已经发展成为可以完成超大规模的复杂组合逻辑与时序逻辑的复杂可编程逻辑器件(CPLD)和现场可编程逻辑器件(FPGA)[4]。
3.2 FPGA的选用依据
由于本设计中需要完成大量触发器的时序逻辑结构的设计,FPGA是最好的选择,因为FPGA具有丰富的I/O端口和触发器,可以达到比CPLD更高的集成度,相比之下,CPLD适合用在组合逻辑的设计中;FPGA是在逻辑门下、基于静态存储器(SRAM)的编程,通过改变内部连线而布线,能反复编程,无次数限制。
CLPD是逻辑块下、基于E2PROM或FLASH(闪速存储器)的编程,通过修改度固定内连电路实现逻辑功能,编程次数有限制,最多达上万次。
而且一般情况下,FPGA的功耗比CPLD要小,因此FPGA比CPLD在编程上具有更大的灵活性和优点,加上本设计的各个方面特别是逻辑规模上,本论文最终选择了FPGA设计逻辑分析仪的硬件电路。
3.3 逻辑分析仪主芯片的选型
本设计中硬件主芯片采用的是Altera公司的主流低成本FPGA--Cyclone,型号是EP1C3T144C8,芯片管脚图见附录2。
3.3.1 芯片选择依据
1.成本低,且能满足设计的要求。
Cyclone FPGA系列是中等规模的FPGA,Altera公司于2003年推出[5],针对其应用,Altera公司从设计初期就定位它为一款低成本的FPGA。
cyclone系列FPGA采用了全铜工艺的1.5V SRAM工艺,在最低成本下优化为最大逻辑容量,是市场主流的FPGA产品。
2.应用范围非常广泛。
Cyclone主要应用于消费类电子、计算机、工业和汽车等行业。
3.开发设计周期短。
Cyclone完全支持NiosⅡ嵌入式处理器,它的IP资源可用于cyclone系列FPGA的开发。
设计人员只需下载QuartusⅡ软件就可以马上进行Cyclone系列FPGA的设计和开发。
3.3.2 芯片的特性分析
Cyclone器件的特性见表3-1所示
表3-1 Cyclone系列FPGA的特性
Cyclone系列器件IOE支持单端口差分I/O标准;与PCI总线兼容;支持JTAG;支持可控驱动电流强度、可控漏极开路输出的功能;含有三态缓冲器和总线保持电路;当需要对其上拉电阻以及输入/输出时延进行编程,可切换成用户模式。
3.4 FPGA芯片配置
FPGA器件是基于SRAM结构的,由于SRAM具有易失性,每次加电时,配置数据都必须重新构造。
Altera的FPGA器件主要由两类配置方式:主动配置方式和被动配置方式。
根据配置数据线的宽度,将配置分为串行配置和并行配置。
Altera的FPGA配置方式其实有很多,如表3-3所示,这些配置模式通过FPGA器件上的两个模式选择引脚MSEL1和MSEL0上设定不同的电平组合来决定。
表3-3 Altera的FPGA器件配置方式
置方式(AS)和被动配置方式(PS)以及最常用的JTAG配置方式。
AS方式由FPGA器件引导配置过程,它控制着外部存储器和初始化过程;PS方式由外部计算机或控制器控制配置过程;JTAG是一种测试接口。
Cyclone配置方式如表3-4所示[6]。
表3-4 cyclone器件的配置方式
3.4.1 AS配置模式
将cyclone系列的FPGA的MSEL0和MSEL1引脚接地时,即选择了AS 配置模式。
在AS模式中,必须使用一个串行Flash来存储FPGA配置数据,以作为串行配置器件。
带有编程接口的Cyclone器件的AS模式配置电路如图3-1所示,通过一个10针接头对EPCS器件进行编程[7]。
具体的工作过程如下:每当系统上电时,FPGA和串行配置器件都进入上电复位周期,此时FPGA就将nSTATUS信号和CONF_DONE信号驱动为低电平,表示此时FPGA没有完成配置。
上电复位周期大约为100ms,然后FPGA释放nSTATUS信号并进入配置模式,这时FPGA将nCSO信号驱动为低电平以使能串行配置器件[8]。
FPGA内置的振荡器产生串行时钟DCLK,ASDO引脚发送控制信号,DATA0引脚串行传输配置数据。
串行配置器件在DCLK的上升沿锁存输入的信号,在DCLK下降沿驱动配置数据;FPGA在DCLK的上升沿锁存配置数据,在DCLK下降沿驱动控制信号。
当配置完成后,FPGA释放CONF_DONE信号,外部电路将其拉为高电平,FPGA开始初始化。
图3-1 AS配置模式电路图
3.4.2 PS配置模式
将cyclone系列的FPGA的MSEL0接电源,MSEL1引脚接地时,即选择了PS模式。
PS模式是由EPC配置器件或者外部计算机控制配置过程。
在PS 配置期间,配置数据从外部储存(串行配置)器件,通过DATA0引脚串行输入到cyclone器件中,配置数据在DCLK时钟信号的每个上升沿锁存,1个时钟周期传送1位数据。
3.4.3 JTAG配置模式
JTAG接口是一个业界标准,主要用于芯片测试等功能,使用IEEEStd1149.1联合边界扫描接口引脚,支持JAM STAPL标准,可以使用Altera下载电缆或主控器来完成[9]。
JTAG配置模式具有其他配置模式更高的优先级,在EP1C3T144C8芯片的非JTAG配置过程中,一旦发出JTAG配置命令,则非JTAG配置被终止,进入JTAG配置模式。
Cyclone器件有四个专用的JTAG引脚:TDI、TDO、TMS和TCK。
TDI 引脚用于配置数据串行输入,数据在TCK上升沿移入FPGA;TDO用于配置数据串行输出,数据在TCK的下降沿移出FPGA;TMS提供控制信号,用于
测试访问TAP端口控制器的状态机转移;TCK提供时钟信号。
FPGA配置完成后,QuartusⅡ软件将对其进行验证,其方式是检测CONF_DONE信号,如果CONF_DONE是高电平,则表示配置成功,否则配置失败。
图3-2 JTAG配置模式电路图EP1C3T144C8在正常工作时,其配置数据是存在SRAM中的,加电时需要重新下载。
本设计逻辑分析仪用到了两种配置方式:JTAG和AS配置方式。
JTAG 方式用于系统调试,系统调试好后通过AS方式将逻辑分析仪功能程序下载到外部配置芯片EPCS1内部,每次上电以后FPGA芯片将会自动读取配置芯片内的程序运行。
3.5 虚拟逻辑分析仪硬件总体方案设计
虚拟逻辑分析仪整体硬件设计的结构图如3-3所示。
逻辑分析仪由核心部件FPGA(EPIC3T144C8)、配置电路、电源电路、复位电路、时钟电路、JTAG接口电路、AS接口电路、信号输入、USB芯片接口电路组成[7],逻辑分析仪的原理图见附录一所示,电路主要芯片是FPGA芯片EPIC3T144CS和USB芯片CY7C68013(此内容在后面章节中会详细阐述),外围均是围绕EPIC3T144CS设计的外围电路和CY7C68013接口电路。
逻辑分析仪的硬件电路总图(见附录1)。
图3-3 逻辑分析仪硬件设计总框图
3.5.1逻辑分析仪外围电路设计
3.5.1.1电源电路的设计
FPGA的芯片EP1C3T144C8提供的I/O口采用的是3.3.V电源,内核采用的是1.5V的电源,该模块的设计是将通用5V电压通过LM1117-3.3V电源转换芯片转换成3.3V,然后再通过LM1117-1.5V电源转换芯片将3.3V电压再转换成1.5V电压,电源转换电路如图3-4所示。
图3-4 电源电路设计图
3.5.1.2 时钟电路设计
本论文设计的逻辑分析仪牵涉到两个时钟电路的设计。
FPGA的系统时钟源采用外部有源晶振提供,利用FPGA内部PLL进行倍
频(PLL 模块具体工作在后面会提到),可以获得我们想要的时钟频率。
USB 芯片(CY7C68013)时钟采用的是外接24MHz ,时钟电路如图3-5所示
F
Y 24C 24
C
图3-5 时钟电路设计图
3.5.1.3 复位电路设计
硬件设计时有两个复位按键,一个叫做硬件复位,按下此键,所有FPGA 的代码重新从EPCSI 里面读到FPGA ,程序重新开始运行,该引脚接到FPGA 的nCONFIG 引脚,该引脚为低电平时,代码重新开始配置。
另外一个复位按键叫做软件复位,连接到FPGA 的另外一个全局时钟脚上,用来表示在设计的过程中的SRESET 引脚。
复位电路如图3-6所示。
图3-6 复位电路设计图
3.5.1.4 JTAG 接口电路设计
JTAG 是联合测试行动组于1986年制定的IEEE1149.1边界扫描测试技术规范。
边界扫描测试允许用户在器件正常工作时捕获所需的测试数据,而且不需要使用物理设备[10]。
相比较于主动串行和被动串行方式而言,JTAG 配置方式拥有更高的优先级,它使用一个4线接口:TDI 、TDO 、TMS 、TCK ,在使用JTAG 下载时,测试数据通过TDI 输入到FPGA ,当测试数据传送完毕后,FPGA 释放CONF_DONE 信号,其外部电路将其拉为高电平,FPGA 进入初始化[8]。
在
初始化阶段,TCK 的时钟信号被作为系统时钟,各个引脚的说明如表3-5所示.
表3-5 JTAG 接口引脚说明
不像ROM (断电后信息不丢失)型可编程器件CPLD 那样,通过JTAG 就可以直接把代码固化到芯片里。
当FPGA 通过JTAG 下载代码到芯片中运行时,代码存放在RAM
(断电丢失内容)中,断电后代码就消失了。
3.
图3-7 JTAG 电路设计图
3.5.1.5 AS 接口设计
AS 接口主要是用来对EPCS 芯片进行编程的,同时也具有调试功能。
具体过程是先对EPCS 进行编程,再通过EPCS 配置FPGA ,运行程序。
需要指出的是EPCS 编程的次数是有限的,虽比EPC 系列要多,但是频繁的擦除和写入对芯片还是有一定影响的,这是AS 接口设计的缺陷所在。
AS 接口电路如图3-8
所示。
20
0K
I
3.3V
图3-8 AS接口电路设计图
EPCS系列器件属于Altera的串行配置器件系列,是一种基于flash存储器访问接口的专用串行配置器件,其具有串行接口而且具有四个引脚,它的优点是能够存储StratixⅡ系列、Cyclone系列的FPGA的配置信息,实现了大容量存储闪存访问,并在系统上电或者需要重新配置FPGA时,向FPGA发送配置信息。
本设计的FPGA配置芯片选用的是EPCS系列中的EPCS1芯片,1M字节,能够反复擦写十万多次,轻松实现了掉电保护。
EPCS1的管脚介绍如表3-6所示。
4 USB驱动设计
4.1 USB技术概述
4.1.1 USB分类
根据USB设备的功能不同,将其分为两大类:功能设备和集线器。
功能设备(如USB键盘)是为主机提供附加功能的,集线器是为USB系统提供附加连接点的。
根据目前USB产品规范,将其分为:低速、全速和高速三种类型,其中低速传输速率最高为 1.5Mbps,全速传输速率最高为12Mbps,高速传输速率为480Mbps[11]。
4.1.2 USB接口的电气特性
USB线缆包括4根导线:VBUS(Vcc)、GND、D+、D-。
其中,Vcc是+5V电源线,GND为接地线,D+和D—是差分数据传输的信号线。
需要说明的是USB的特点之一的热插拔,PC主机会不间断的检测USB设备的插入和拔出。
当主机检测到信号电平上升到一定电平时,即判断出有设备已连接;当主机检
测到信号电平下降到一定电平后,即判断出油设备移除。
D+和D-是用“1”和“0”来表示总线的差分状态,采用差分方式能够减少传输干扰,提高总线传输速度。
4.2 USB芯片选择
对于一般设计而言,选择USB功能设备芯片时,一般考虑以下几个方面:1)传输速率。
分别为1.5Mb/S的低速传输、12Mb/s的全速传输和480Mb/s 的高速传输。
2)传输类型。
分别为批量传输、同步传输、中断传输和控制传输。
3)功耗。
功耗是在设计中非常重要,如果USB设备功耗小,可以采用总线供电方式,而省去不方便的外置电源。
4)硬件资源。
硬件资源包括片内存储器的容量、I/O口类型和数量等,不同的芯片提供不同的硬件资源,有的甚至提供如看门狗、定时器等特殊模块。
5)价格。
应选择性价比最高的芯片。
6)其他方面。
包括USB芯片的性能、货源、封装形式、生命周期等等方面。
基于以上考虑方面加上设计本身的要求,作者选择了Cypress公司的EZ-USB FX2系列芯片CY7C68013A,EZ-USB FX2系列芯片集成了USB2.0 收发器、SIE(串行接口引擎)、增强的8051 微控制器和可编程的外围接口。
它支持全速传输和高速传输,兼容USB1.1[12]。
4.3 芯片结构
EZ-USB FX2芯片结构主要由USB2.0收发器、串行接口引擎(SIE)、增强型8501、16KB的RAM、4KB的FIFO存储器、I/O口、数据总线、地址总线和通用可编程接口(GPIF)组成,CY7C68013内部结构图如4-1所示。