毕业设计(论文)HOTLink数据发送模块设计.doc

上传人:仙人指路1688 文档编号:4027343 上传时间:2023-04-01 格式:DOC 页数:35 大小:1.30MB
返回 下载 相关 举报
毕业设计(论文)HOTLink数据发送模块设计.doc_第1页
第1页 / 共35页
毕业设计(论文)HOTLink数据发送模块设计.doc_第2页
第2页 / 共35页
毕业设计(论文)HOTLink数据发送模块设计.doc_第3页
第3页 / 共35页
毕业设计(论文)HOTLink数据发送模块设计.doc_第4页
第4页 / 共35页
毕业设计(论文)HOTLink数据发送模块设计.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《毕业设计(论文)HOTLink数据发送模块设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)HOTLink数据发送模块设计.doc(35页珍藏版)》请在三一办公上搜索。

1、HOTLink数据发送模块设计摘 要本文是基于对HOTLink数据发送模块的设计并最终完成模块电路传送数据的技术而进行的研究。该模块电路通过XCF02S下载程序输入口将采集到的数据信息下载接收并输入到XC3S400-1芯片中,然后再将经过处理后的信息从由CYPRESS公司设计研发的数据发送器CY7B923芯片模块电路中传输出去。该电路是通过CY68013单片机+FPGA的组合来实现HDLC协议的正常功能的。并且程序源代码的设计是采用VHDL来编写的。在本次设计工作中着重注意的问题和相应的解决办法都给出了解决办法。而且经过仿真调试过程所出现的结果表明:此HOTLink数据发送模块电路可以实现正常

2、的数据发送功能。关键词:FPGA,VHDL,HOTLink数据发送,XC3S400-1,CY68013HOTLink data transmission module designAbstractThis article is based on the HOTLink data transmission module design and ultimately complete the module circuit technology transfer data, the study conducted. The module circuit is input through the XCF

3、02S download the collected data to download to receive and enter into XC3S400-1 chip, and then processed the information from the design and development by the companys data CYPRESS transmitter chip module circuit transmission CY7B923 Out. The circuit through the CY68013 MCU + FPGA combination to ac

4、hieve the normal function of the HDLC protocol. The design and the source code written in VHDL is used. In this design work focused on the problems and corresponding solutions are given a solution. But emerged through the debugging process simulation results show that: This HOTLink data transmission

5、 module circuit can achieve a normal data transmission capabilities.Keywords: FPGA, VHDL, HOTLink data transmission, XC3S400-1, CY68013显示对应的拉丁字符的拼音目 录1 绪论11.1 课题研究背景11.2 课题研究目的及意义22 总体设计方案32.1 整体设计32.2 各模块设计简述33 硬件设计43.1 FPGA和VHDL以及FIFO的发展43.1.1 FPGA介绍43.1.2 VHDL介绍53.1.3 FIFO的的应用发展63.2 各硬件模块设计73.2.1

6、 CY7B933的原理应用及接收模块设计73.2.2 CY7B923的原理应用及发送模块设计103.2.3 CY7C68013的原理应用及模块设计133.2.4 XC3S400的原理应用及下载接口模块设计163.2.5 高速大容量FLASH的设计193.2.6 时钟源电路的设计193.2.7 配置电路203.2.8 电源供电模块设计204 系统调试235结论24附录A 系统硬件电路图25附录B 系统PCB版图26附录C HOTLink数据发送模块程序27参考文献29致谢311 绪论1.1 课题研究背景在当今社会、生活、科研、生产领域中有许多的大型数字监测、通信系统被广泛的用于这些实践性的生产生

7、活中,给我们的生活生产带来了许多的便利,使我们的研究层次越来越深入、生产越来越进步。但是由于所测的信息源往往具有分散、信息量大等许多特点,使得分布式高速数据传输技术成为系统设计中的重要研究方向和关键技术之一。尤其是经常会遇到的许多受限制于温度、空间、环境等因素的场合,使得对于整个数据传输系统的拓扑结构、传输介质以及器件选择都提出了越来越为严格的要求。而HOTLink(High Speed Optical Tranceiver Link)本身具有强大灵活的物理层功能,可以将各数据收发模块串行级联到一起,从而实现数据有效可靠传输的功能1。现场可编程门阵列(FPGA,Field Programmab

8、le Gate Array)的出现是超大规模集成电路(VLSI)技术和计算机辅助设计(CAD)技术发展的结果,是当代电子设计领域中最具活力和发展前途的一项技术,它的硬件描述语言的可修改性、高集成性、高速低功耗、开发周期短、硬件与软件并行性决定了它的崛起是必然的趋势。现场可编程门阵列FPGA器件是Xilinx公司1985年首家推出的,它是一种新型的高密度PLD,采用CMOS-SRAM工艺制作,其内部由许多独立的可编程逻辑模块(CLB)组成,逻辑块之间可以灵活的相互连接。CLB的功能很强,不仅能够实现逻辑函数,还可配置成RAM等复杂的形式。配置数据存放在片内的SRAM或者熔丝图上,基于SRAM的F

9、PGA器件工作前需要从芯片外部加载配置数据。配置数据可以存储在片外的EPROM或者计算机上,设计人员可以控制加载过程,在现场修改器件的逻辑功能,即所谓现场可编程。综上所说可知道HOTLink是建立在综合考虑多种影响因素后建立和开发的一种具有实际应用价值的点对点串行通信协议。在当今的科研领域以及现实应用中具有举足轻重的作用。1.2 课题研究目的及意义HOTLink是Cypress公司的高速长距离点对点串行通信产品系列。符合DVB-ASI、ATM、SMPTE-259M、ESCON等标准,用于构建符合这些标准的通讯产品的物理层,最高传输率可以达到400Mbps,支持多种传输接口,如双绞线(最大距离可

10、实现40m)、光纤(多模光纤可实现550m)2。是当前通信领域中使用较为广泛的一种通信协议。串行通信可以实现远距离的高速数据传输,并且缆线少、成本低、安装简单、使用方便,在计算机通讯中得到了广泛应用。HOTLink是由CYPRESS公司提出的高速串行传输的协议。协议中定义了物理层的内容,用户可以根据具体需要和情况自己定义数据链路层和应用层的协议,方便灵活。同时CYPRESS公司提供了实现HOTLink协议的成熟硬件,使用户可以集中精力进行数据传输的上层开发。HOTLink可以广泛应用于工作站、服务器、海量存储、图像和视频传输等方面1。对于想利用高速的点对点的串行通讯取代并行通讯接口以简化电路、

11、降低成本的场合,HOTLink协议是一个理想的选择3。具体工作原理是:在发送端将八位输入数据串行输出,接收端重新组合。发送端无有效数据时自动发送空数据,接收端根据码流自动恢复时钟。外部逻辑可以监视恢复时钟是否失同步,一旦失同步即可控制接收端重新同步时钟,而且HOTLink产品的一大特点是可以实现数据流与指令流的分离。 HOTLink的理论误码率为零,实际误码来自于内部时钟失同步以及外部环境电磁干扰4。HOTLink第二代产品可以支持1500Mbps 的传输速率,支持8位、16位、32位数据接口,性能大大提高。当然基于HOTLink设计通讯产品难度相对要大一些,应用HOTLink传输系统需要比较

12、复杂的外部状态机的控制来保证接收端时钟正确恢复。而且由于系统时钟频率较高,PCB版图设计需要比较讲究,要求设计者仔细考虑各种电磁干扰影响5。HOTLink高速串行接口由HOTLink物理层收/发芯片、数据缓存和控制逻辑组成。作为一种传输系统,需要有效的编码,以提高系统数据传输性能,HOTLink物理层芯片采用8B/10B编码模式,即8位数据或专用字编码为10位传输码再逐位发送。编码后可使传输中0和l的数目均衡,接收时易于恢复发送时钟,增强检错能力,提高可靠性。收/发芯片能够自动校验接收到的串行数据,有效数据串/并转换为8-bit并行数据5。为了处理突发高速数据,一般采用FIFO作为物理层芯片与

13、数据处理部分(本系统中为FPGA芯片)之间的数据缓存,选择合适大小的FIFO芯片与HOTLink收/发芯片组成无缝接口7。2 总体设计方案2.1 整体设计本课题的主要目的就是:设计一个HOTLINK数据发送模块电路使之实现HOTLINK数据的发送,电路由CY68013单片机+FPGA的组合来实现。其中HOTLINK通讯速率的接口时钟为20M,且协议通过VHDL和FPGA来实现。使之最终可以实现HDLC协议正常发送数据的功能。整个系统由下载程序输入模块、数据信息接收模块、数据信息处理模块、数据信息发送模块、以及电源管理模块组成。从外界采集到的信息都是通过下载程序输入模块输入到信息接收模块中的,故

14、而下载程序输入模块是完成电路正常功能所必需的。数据信息接收模块是接收经由下载端口输入的信息数据源,然后传递到数据处理芯片模块中,主要完成数据的接收和传送功能。数据信息处理模块是核心控制器件,通过该电路模块来完成信息的收集处理和传输工作。数据信息发送模块是整个电路的输出终端,直接影响到信息传输工作的完成以及模块电路的可靠性,也是比较重要的一个部位。电源管理模块是整个模块电路中的关键,由电压模块来产生各个模块正常工作所需要的各种电压。2.2 各模块设计简述(1)下载程序输入模块:下载程序输入模块是由XCF02S芯片来完成的,通过XCF02S芯片及其外挂的下载接口使得外部的信息数据正常无损的导入到信

15、息数据接收端口。(2)数据信息接收模块:数据信息接收模块主要是为了接收由数据下载端口传送的数据信息,并完成将数据信息完整的传输到处理模块芯片中的功能。主要是通过CY7C68013芯片和CY7B933芯片来实现数据信息的接收和传送功能的。是整个HOTLINK数据传送模块中较为重要部分。(3)数据信息处理模块:数据信息处理模块主要是由芯片XC3S400来处理和完成的,数据经由接收模块接收信息以后传送到数据处理模块中,经由该模块处理以后将信息量再传递出去。该模块是整个HOTLINK数据传送模块中的核心模块,主要通过FPGA和硬件描述语言VHDL来实现的。(4)数据信息发送模块:数据信息发送模块是整个

16、HOTLINK数据传送模块中较为关键的部分,主要是接收处理模块中的信息量并最终保证完成数据完整性、准确性的发送和传输功能。主要是通过CY7B923芯片以及MAX490ESA芯片来完成数据的传输和发送功能的。(5)电源管理模块:电压管理模块提供电路中各个小模块正常工作所需要的数种电压,例如有给MX490供电的、有给FPGA提供的3.3V、1.2V、2.5V电源电压的、有给XC3S400芯片提供2.5V、3.3V的电压的等等。这就需要一个有效的电源管理模块来管理电压,从而使得电路各个模块可以正常的工作。维护模块电路整体的运行稳定性。3 硬件设计3.1 FPGA和VHDL以及FIFO的发展 3.1.

17、1 FPGA介绍FPGA是英文FieldProgrammable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路的方式而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点8。FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消

18、失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活9。FPGA技术之所以具有巨大的市场吸引力,其根本原因在于:FPGA不仅可以解决电子系统小型化、低功耗、高可靠性等问题,而且其开发周期短、投入少,芯片价格不断下降10。FPGA正在越来越多地取代传统上ASIC,特别是在小批量、个性化的产品市场方面。正因为FPGA所具有的这么多优势,所以本次设计工作选择将具有可编程性的XC3S400芯片用于本

19、次模块设计开发工作中,不仅可以实现电路模块的功能,还可以在成本上节约费用以及确保电路模块整体系统运行的稳定性。是一个很好的很具有实用性和开发性的器件。动态可重构FPGA是指在一定条件下芯片不仅具有在系统重新配置电路功能的特性,而且还具有在系统动态重构电路逻辑的能力。对于数字时序逻辑系统,动态可重构FPGA的意义在于其时序逻辑的发生不是通过调用芯片内不同区域、不同逻辑资源来组合而成,而是通过对FPGA进行局部的或全局的芯片逻辑的动态重构而实现的。动态可重构FPGA在器件编程结构上具有专门的特征,其内部逻辑块和内部连线的改变,可以通过读取不同的SRAM中的数据来直接实现这样的逻辑重构,时间往往在纳

20、秒级,有助于实现FPGA系统逻辑功能的动态重构。3.1.2 VHDL介绍超高速集成电路硬件描述语言VHDL(Very-High-Speed Integrated Circuit HardwareDescription Language)是一种用于电路设计的高级语言,主要是应用在数字电路的设计中。该语言初步诞生于80年代,是由美国国防部首先开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言 11。 VHDL主要用于描述数字系统的结构,行为,功能和接口12。VHDL含有许多具有硬件特征的语句以及语言形式、描述风格等等的语法是十分类似于一般的计算机高级语言。VHDL的程序结

21、构特点是将一项工程设计,是将设计实体分成外部和内部,涉及实体的内部功能和算法完成部分13。在对一个设计实体定义了外部界面后,一旦其内部开发完成,那么其它的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。综合其它的许多硬件语言以及相互之间的优势比较而言,我们得知VHDL更具有功能强大、设计灵活、支持广泛、易于修改、强大的系统硬件描述能力、独立于器件的设计、很强的移植能力、易于共享和复用等特点14。所以在当今许多的设计工作中都用VHDL语言来实现可编程逻辑器件的编辑和扩展开发应用,而本次设计中是采用了VHDL语言来编写FPGA芯片XC3S400的,从而实现H

22、OTLink数据发送功能模块数据发送软件上的支持。3.1.3 FIFO的的应用发展FIFO的宽度:它指的是FIFO一次读写操作的数据位,就像MCU有8位和16位,ARM 32位等等,FIFO的宽度在单片成品IC中是固定的,也有可选择的,如果用FPGA自己实现一个FIFO,其数据位,也就是宽度是可以自己定义的。FIFO的深度:它指的是FIFO可以存储多少个N位的数据(如果宽度为N)。如一个8位的FIFO,若深度为8,它可以存储8个8位的数据,深度为12 ,就可以存储12个8位的数据,FIFO的深度可大可小,个人认为FIFO深度的计算并无一个固定的公式。在FIFO实际工作中,其数据的满/空标志可以

23、控制数据的继续写入或读出。在一个具体的应用中也不可能由一些参数算数精确的所需FIFO深度为多少,这在写速度大于读速度的理想状态下是可行的,但在实际中用到的FIFO深度往往要大于计算值。一般来说根据电路的具体情况,在兼顾系统性能和FIFO成本的情况下估算一个大概的宽度和深度就可以了。而对于写速度慢于读速度的应用,FIFO的深度要根据读出的数据结构和读出数据的由那些具体的要求来确定。满标志:FIFO已满或将要满时由FIFO的状态电路送出的一个信号,以阻止FIFO的写操作继续向FIFO中写数据而造成溢出。空标志:FIFO已空或将要空时由FIFO的状态电路送出的一个信号,以阻止FIFO的读操作继续从F

24、IFO中读出数据而造成无效数据的读出。读时钟:读操作所遵循的时钟,在每个时钟沿来临时读数据。写时钟:写操作所遵循的时钟,在每个时钟沿来临时写数据。读指针:指向下一个读出地址,读完后自动加1。写指针:指向下一个要写入的地址的,写完自动加1。读写指针其实就是读写的地址,只不过这个地址不能任意选择,而是连续的。3.2 各硬件模块设计 3.2.1 CY7B933的原理应用及接收模块设计在本次的设计工作中我们考虑到HOTLink数据发送模块需要能够准确稳定的完成数据的接收工作,所以选择CYPRESS半导体公司制造的专门用于点对点之间高速串行数据通信的接收芯片CY7B933芯片来完成信号接收工作。CY7B

25、933接收芯片的内部电路主要包括两对PECL串行输入接口、PECL-TTL电平转换器、时钟同步器、成帧器、移位器、译码寄存器、译码器、输出寄存器和测试逻辑等几部分15。CY7B933的引脚排列如图3.1所示,图3.2是其内部结构框图,具体管脚图如表3.1所示: CY7B933接收器的工作原理:是通过接收来自差分串行输入端的串行位流,使该芯片内置的集成锁相环(PLL)同步时钟产生器恢复用于数据重构所需的位同步时钟。成帧器在寻找到串行位流的字节边界后即可产生帧同步时钟。然后输入位流数据即可在移位器中实现串4并转换,同时再送到译码器中译码并检查传送错误。最后将译码后的字节数据在帧同步时钟控制下送到输

26、出寄存器并由并行输出脚输出。 图3.1 CY7B933引脚排列由于CY7B933接收芯片具有8B/10B的编码方式、旁通方式、内置自测试方式和测试方式等多种接收操作方式16。所以我们在设计应用中应当具体考虑采用何种接收方式来最终有效的完成数据信息接收功能。CYB933构成的接收电路模块设计如图3.3所示,我们选择将CYB933芯片中的Qa-Qj 管脚与FPGA芯片XC3S400连接在一起,选择将三个GND端进行接地连接,VCCN、VCCQ端与VCC供电电压端口连接,然后通过INA+端和INA-端外接电阻以及HOTLink数据输入端口来完成模块接收电路的初步设计工作。 图3.2 CY7B933内

27、部结构框图 图3.3 CYB933构成的接收电路表3.1 CY7B933芯片引脚功能表名称输入/输出引脚功能Q0Q7TTL电平输出并行数据输出。表示刚接收到的数据,数据是随CKR变化而变化SC/TTL电平输出特殊字符/数据指示。高电平接收特殊字符低电平接收数据字符RVS(QJ)TTL电平输出接收违例字符指示。高电平表示接收到违例字符,低电平检测到错误码TTL电平输出输出数据准备好。上的负脉冲表示接收到新数据准备传送。接收到空字符时候不出现负脉冲CKRTTL输出读数据时钟。是读字节的数据时钟信号,其频率和相位与输入的串行数据流保持一致A/PECL电平输入串行数据输入端选择。是PECL100k类型

28、的输入端,用于输入端选择,高电平时连到INA端表示数据有效并译码,反之连到INB端INA+差分输入串行数据输入端INB (INB+)PECL电平输入(差分输入)串行数据输入B端。这个脚可以作为单端方式的PECL接收端(INB)也可以作为差分对的正半端(INB+)S1PECL电平输入(差分输入)状态输入。可以作为单端PECL状态监控输入(SI),也可以作为INB差分的负半端(INB-)S0TLL输出状态输出。将S1转换为TTL信号的输出端RFTLL输入帧同步允许REFCLKTLL输入参考时钟MODE3电平输入译码方式选择。该脚接地采用8B/10B译码方式;接VCC采用旁通方式;悬空时内部上接电阻

29、将该脚拉成VCC/2端为工厂测试方式TLL输入内置自测试允许。若要ISTEN置为低电平则设置为内置测试方式VCCN输出驱动电路供电电源VCCQ内部驱动电路供电电源GND接地3.2.2 CY7B923的原理应用及发送模块设计在设计数据发送工作电路模块的时候考虑到信号发送中可能会受到的许多因素以及环境等的影响,所以我们考虑选择使用同样由CYPRESS公司设计的数据发送器CY7B923芯片,该芯片使用起来方便、可靠性好,而且可广泛用于长距离高速点对点串行通信中,另外芯片自身还可发送违规信号以检测报错系统是否正常等等17。这些优点使得当信号发生故障的时候及时进行诊断和改进电路等方便了许多。且这种优点比

30、较适合于HOTLink这样的串行通信数据信息发送中,故而选择将该芯片用于本次设计的数据发送模块之中。CY7B923的管脚结构图如图3.4所示,内部框图原理如图3.5所示,具体管脚图如表3.2所示:CY7B923芯片的工作原理如下:首先将8bit并行TTL输入数据(D0-D7)转换为PECL串行差分位流输出。然后输入的数据由编码器编码为便于串行链路传输的8B/10B传输码,由SC/(专用字/数据)端电平控制,将D0-D7输入编成数据码或专用字码。最后通过移位寄存器将数据变成串行位流, 分三路同时输出FOTO,自检逻辑产生通信系统自检用发送信号18。 图3.4 CY7B923芯片管脚图 图3.5

31、CY7B923内部结构框图由CYB923构成的发送电路模块设计如图3.6所示,CYB923芯片的D0-D7引脚以及MODE、SVS、SC/、CKW引脚与FPGA芯片XC3S400的I/O口相接,OUTB+、OUTB-、OUTC+、OUTC-、VCCN、VCCQ分别都接VCC供电电压信号,而OUTA+、OUTA-引脚则外接电阻以及HOTLink数据输出端口,如此设计就可以实现初步的数据发送功能了。图3.6 CYB923构成的发送电路表3.2 CY7B923芯片引脚功能表名称引脚功能D0D7并行数据输入。当为低电平时,数据在CKW的上升沿被送到输入寄存器(当为低电平时,数据在下一个CKW的上升沿被

32、送到输入寄存器)如果和同时为高,发送空闲位。当MODE为高电平时,D0D7变为Db-DhSC/数据码控制码选择。在CKW的上升沿,如果它为高电平,则发送器把数据编码成控制码,否则编码为数据码。当MODE为高电平时,这一位为输入数据位SVS发送违规标志。如果并行输入的数据被忽略,那么在CKW的上升沿,如果SVS为高电平,则发送违规标志码;如果是低电平,那么D0D7和SC/决定发送的代码。当MODE是高电平时,该管脚为输入脚并行输入使能端。在CKW的上升沿,如果它为低电平,则数据被接受,编码,并发送。如果和都是高电平,则输入的数据被忽略,同时发送空闲序列。可以保持为低电平或者高电平,也可以在每次输

33、入数据时给他一个脉冲。当为低电平时,ENN通常保持为高电平,但可以用于测试控制功能同。当每一次操作都在下一个时钟沿执行CKW写时钟。发送时钟也由它产生FOTO控制发送端。如果它为低电平,数据连续不断地出现在三个端口,如果为高电平,OUTA和OUTB不能输出OUTA/B/C差分输出。不用的管脚可以连接到VCCMODE编码方式选择。低电平时选择8B/10B编码方式,高电平时,发送已经编码的数据。一般不悬空内置自测试允许。当它为低电平并且和为高电平时,发送器发送1和0 交替的数据。当它为低电平且和中有一个为低电平时,开始重复测试。通常这个管脚被置为高电平。它是一个异步发生器,不需要初始化。如果需要的

34、话,可以通过控制SVS(当为低电平时)来实现初始化读数脉冲。它的频率和CKW相同(为低电平时)。脉冲宽度由内部结构控制。在测试模式下,它保持为高电平直到最后一个字节测试时VCCN为输出驱动器提供电压VCCQ为内部电路提供电源GND接地3.2.3 CY7C68013的原理应用及模块设计CY7C68013是Cypress公司的EZ-USB FX2系列芯片。EZ-USB FX2是一款集成USB2.0收发器的微控制器,管脚图如图3.7所示,内部结构如图3.8所示。该系列芯片集成了USB2.0收发器、串行接口引擎(SIE)、带8.5KB片上RAM的增强型高速8051单片机、4KB FIFO存储器以及通用

35、可编程接口等模块。提供了全面集成的USB解决方案,无需外加芯片即可实现高速USB传输19。FX2系列芯片最主要的特点是可以通过USB2.0的通用可编程接口为特定的应用接口编程。另外,CY7C68013的GPIF引擎具有自动传输数据结构的特性,这种特性使得以主/从端点FIFO(B/16位数据总线)为ATA、UTOPIA、EPP、PCMCIA、DSP等的外围设备,可以与主机通过CY7C68013无缝、高速地传输数据。另外,CY7C68013内部集成的USB2.0的SIF能完成大部分USB2.0协议的处理工作,从而减少了用户对繁杂的USB协议的处理20。在本系统中CY7C68013与FPGA连接用到

36、的I,0包括八位GPIF数据接口,两根控制线USBCTRl/2,一根状态线USBSO。一根读信号线USBRD,实现上位机对n鹄h的无效块检测和读取操作。上位机通过USB发出无效块检测命令,CY7C68013接收到此命令后通过USBC,IRl,2通知FPGA,FPGA接收到该命令后开始进行操作。同样上位机发出数据读出命令,CY7C68013接收到此命令后。通过USBCTRl/2通知FPGA进行操作。采用FPGA作为主控制器对FLASH进行操作,系统与主机之间采用USB2.0接口芯片CY7C68013实现通信。要求选择存储容量大、数据可靠性高的存储器件。Flash由于其具有非易失性、电可擦除性、可

37、重复编程以及高密度、低功耗等特点,而被广泛应用于数据采集系统中。USB2.0接口模块为FPGA与上位机通信模块,完成上位机控制命令与Flash存储数据的传送。FPGA采用Xilinx公司Spartan2系列XC2S100,作为一个对Flash操作的主控设备。完成Flash模块的读/写/擦操作和无效块检测功能。CY7C68013有3种接口工作模式。根据系统构成和实际要求,我们选用GPIF模式的数据传输方案,只要输出信号和就绪信号作相应的组合,就可以实现多种复杂的控制时序。本次设计中的可编程接口GPIF是我们采用的主机方式,GPIF作为内部主机控制端点FIFO,其core是一个可编程状态机,可以生

38、成多达6个控制输出信号和9个地址输出信号,能外接6个外部Ready输入信号和2个内部Ready输入信号。通过用户自定义的波形描述符来控制状态机,使用软件编程读写控制波形,几乎可以对任何8/16bit接口的控制器、存储器和总线进行数据的主动读写,非常灵活21。如图3.9所示为其GPIF接口方式。GPIF与传统接口方式的主要区别如下所示:(1)在数据传输过程中不需要CPU干涉,使得传输速率明显提高,从而可以充分利用USB2.0的传输带宽;(2)由软件设置读/写控制,其控制方式类似于状态机,提高了传输稳定性。因此,本文介绍的基于USB2.0控制器CY7C68013的GPIF接口设计,就是充分利用了该

39、芯片这一独特的数据传输接口方式,有效地解决了在传统接口方式下USB2.0设备数据传输速度的局限性,大大提高了数据的传输速率。 图3.7 CY7C68013管脚图 图3.8 CY7C68013内部结构如图CY7C68013有3种接口工作模式。根据系统构成和实际要求,我们选用GPIF模式的数据传输方案,只要输出信号和就绪信号作相应的组合,就可以实现多种复杂的控制时序。在本系统中CY7C68013与FPGA连接用到的I,0包括八位GPIF数据接口,两根控制线USBCTRl2,一根状态线USBSO。一根读信号线USBRD,实现上位机对n鹄h的无效块检测和读取操作。上位机通过USB发出无效块检测命令,C

40、Y7C68013接收到此命令后通过USBC,IRl,2通知FPGA,FPGA接收到该命令后图3.9所示为其GPIF接口方式开始进行操作。同样上位机发出数据读出命令,CY7C68013接收到此命令后。通过USBCTRl2通知FPGA进行操作。采用FPGA作为主控制器对FLASH进行操作,系统与主机之间采用USB20接口芯片CY7C68013实现通信。要求选择存储容量大、数据可靠性高的存储器件。Flash由于其具有非易失性、电可擦除性、可重复编程以及高密度、低功耗等特点,而被广泛应用于数据采集系统中。USB2.0接口模块为FPGA与上位机通信模块,完成上位机控制命令与Flash存储数据的传送。FP

41、GA采用Xilinx公司Spartan2系列XC2S100,作为一个对Flash操作的主控设备。完成Flash模块的读写擦操作和无效块检测功能。由CY7C68013构成的下载接收电路模块设计如图 3.10所示:图3.10 CY7C68013下载接收电路3.2.4 XC3S400的原理应用及下载接口模块设计XC3S400芯片是IDS1系列开发板中的一种,其原理主要是基于XILINX SPARTAN3系列FPGA设计开发的入门级开发板。该系列开发板主要是面向FPGA的初、中级用户,或者多FPGA开发感兴趣的爱好者。此系列开发板具有着简单使用,扩展性好的特点,特别是针对个人用户设计开发的,也可以作为

42、产品开发的原型验证板或者IC前端设计验证板。此系列开发板也可以作为SOC(System On Chip)平台,可以实现嵌入式的软CPU,如microblaze等,为嵌入式电子设计产品设计提供了一种选择。故而将其用到HOTLINK发送模块的设计中是比较合理的22。IDS1-XC3S400平台的示意图如图3.11所示:其中3.3V和5V设备,可以用来验证PS/2协议,可以组成系统的输入功能;USB2.0高速数据接口采用应用广泛的、性能稳定的Cypress公司的CY68013芯片实现USB2.0接口扩展,实现系统和其他设备的理论值达到480MB的高速数据传递;功能扩展接口扩展接口为用户提供了灵活的扩

43、展功能,用户可以在扩展口上实现总线操作也可以使用独立的IO实现用户自定义的数据命令传输功能,通过相应的扩展板,用户除了可以自行设计扩展接口板实现自定义的功能外,也可以购买我们提供的配套扩展板,帮助您非常方便的实现Video、Audio和Wireless等的功能22。图3.11 IDS1-XC3S400平台的示意图USB2.0接口及芯片的设计:IDS系列开发板提供一个USB2.0接口。用户可以基于开发板进行USB2.0进行开发,也可作为系统与上位机(电脑等终端)进行通讯。开发板采用Cypress公司CY68013芯片并提供配套的EEPROM配置芯片。其在内部的传输控制是通过full(满)和emp

44、ty(空)两个控制信号来完成的,当full为真时不能再写数据,当empty为真时不能再对FIFO进行读,其内部数据传输示意图如图3.5.3所示。USB执行OUT传输,将EP2端点设成512B四重FIFO。在USB端和外部接门端都并不知道有四重FIFO。USB端只要有1个FIFO为“半满”,就可以继续发送数据。当操作的FIFO写“满”时,FX2自动将其转换到外部接口端,排队等候读取;并将USB接口队列中下一个为“空”的FIFO转移到USB接口上,供其继续写数据。外部接门端与此类似,只要有1个FIFO为“半满”,就可以继续读取数据。当前操作的FIFO读“空”时,FX2自动将其转换到USB接口端,排

45、队等候写入;并将外部接口队列中下一个为“满”的FIFO转移到外部接口上,供其继续读取。Fx2接口方式: (1)Slave FIFO是从机方式,即FX的CPU不直接参与USB数据处理,而是简单地把FX作为USB和外部数据处理逻辑(如ASIC、DSP和IDE(串行接口引擎)控制器)之间的通道,数据流并不经过CPU,而是通过FX的FIFO直接传输。FIFO通过外部主机控制,同时FIFO提供所需的时序信号、握手信号(满、空等)和输出使能等。3.12 CY7C68013内部数据传输 (2)可编程接口GPIF是主机方式,GPIF作为内部主机控制端点FIFO,其core是一个可编程状态机,可以生成多达6个控

46、制输出信号和9个地址输出信号,能外接6个外部Ready输入信号和2个内部Ready输入信号。通过用户自定义的波形描述符来控制状态机,使用软件编程读写控制波形,几乎可以对任何8/16bit接口的控制器、存储器和总线进行数据的主动读写,非常灵活。如图3.12所示为其GPIF接口方式。GPIF与传统接口方式的主要区别:(1)在数据传输过程中不需要CPU干涉,使得传输速率明显提高,从而可以充分利用USB2.0的传输带宽;(2)由软件设置读/写控制,其控制方式类似于状态机,提高了传输稳定性。因此,本文介绍的基于USB2.0控制器CY7C68013的GPIF接口设计,就是充分利用了该芯片这一独特的数据传输

47、接口方式,有效地解决了在传统接口方式下USB2.0设备数据传输速度的局限性,大大提高了数据的传输速率。3.2.5 高速大容量FLASH的设计本设计中通过FPGA把串行数据转化为并行数据存储到高速大容量的FLASH的存储系统中,FPGA(现场可编程门阵列)为存储阵列的核心。针对外部高速数据的输入, 在数据存储部分引入新的方法, 能够更加快速的实现FLASH 存储器对高速实时数据的可靠存储。在保证了HOTLink数据发送模块系统工作性能的稳定的情况下简化了系统设计,具体的设计和方案如下图3.12所示:图3.12 高速大容量FLASH的设计3.2.6 时钟源电路的设计当FPGA作为主芯片时,必须给其配置一个时钟驱动。以使得整个系统电路可以稳定有效的工作。在该设计中采用的是系统可编程配置PROM,XC3S400芯片时钟源的设计及原理图如图3.13所示:图3.13 时钟源的设计图3.2.7 配置电路当XC3S400作为主芯

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号