CY7C68013与FPGA接口的Verilog HDL实现

发布者:梅花居士最新更新时间:2012-01-17 关键字:CY7C68013  FPGA接口 手机看文章 扫描二维码
随时随地手机看文章
引 言

  USB(通用串行总线)是英特尔、微软、IBM、康柏等公司1994年联合制定的一种通用串行总线规范,它解决了与网络通信问题,而且端口扩展性能好、容易使用。最新的USB2.0支持3种速率:低速1.5 Mbit/s,全速12 Mbit/s,高速480 Mbit/s。这3种速率可以满足目前大部分外设接口的需要。

  本文介绍了目前使用较多的USB2.0控制器CY7C68013芯片与FPGA(现场可编程门阵列)芯片接口的Verilog HDL(硬件描述语言)实现。本系统可扩展,完全可用于其他高速数据采集系统中。

1 系统构成

  本系统主要是由FPGA和USB2.0控制器CY7C268013组成,系统框图及其信号连接关系如图1所示。可以根据实际系统的需要,用FPGA实现预定功能,如数据采集卡、控制硬盘读写等。

1.1 控制器CY7C68013

  Cypress公司的EZ-USB FX 2是第一个包含USB2.0的集成微控制器,它内部集成了1个增强型的8051、1个智能USB串行接口引擎、1个USB数据收发器、3个8位I/O口、16位地址线、8.5 kB RAM和4 kBFIFO等。增强性8051内核完全与标准8051兼容,而性能可达到标准8051的3倍以上。其框图如图2所示。

1.1.1 CY7C68013结构特点

  EZ-USB FX2提供了一种独持架构,使USB接口和应用环境直接共享FIFO,而微控制器可不参与数据传输,但允许以FIFO或RAM的方式访问这些共享FIFO,这种被称之为"量子FIFO"的处理架构,较好地解决了USB高速模式的带宽问题。

  FX2芯片在数据传输时主要利用了4 kB的FIFO,分为7个端点:EPOIN&OUT、EP1IN、EP1OUT、EP2、EP4、EP6和EP8。其中EPO、EPlIN和EP1OUT是3个64 B的缓存,只能被固件访问,EP0是一个默认的数据输入输出端口缓存;EP1IN和EP1OUT是单独的64 B缓存,呵以配置这些端点为块传输、中断传输或同步传输;端点2、4、6、8是大容量高带宽的数据传输端点,可以配置为各种带宽以满足实际需要,端点2、4是输出端点,端点6、8是输入端点。值得注意的是,端点4、8能配置为每帧512 B,而端点2、6却能配置为每帧512 B或1 024 B,并可配置为2、3、4级,这样EP2或EP6最大能配置为4 kB的缓存。

  其在内部的传输控制是通过full(满)和empty(空)两个控制信号来完成的,当full为真时不能再写数据,当empty为真时不能再对FIFO进行读,其内部数据传输示意图如图3所示。

  如图3所示,USB执行OUT传输,将EP2端点设成512 B四重FIFO。在USB端和外部接门端都并不知道有四重FIFO。USB端只要有1个FIFO为"半满",就可以继续发送数据。当操作的FIFO写"满"时,FX2自动将其转换到外部接口端,排队等候读取;并将USB接口队列中下一个为"空"的FIFO转移到USB接口上,供其继续写数据。外部接门端与此类似,只要有1个FIFO为"半满",就可以继续读取数据。当前操作的FIFO读"空"时,FX2自动将其转换到USB接口端,排队等候写入;并将外部接口队列中下一个为"满"的FIFO转移到外部接口上,供其继续读取。

1.1.2 Fx2接口方式

  FX2有Slave FIFO和GPIF两种接口方式。

  Slave FIFO是从机方式,即FX的CPU不直接参与USB数据处理,而是简单地把FX作为USB和外部数据处理逻辑(如ASIC、DSP和IDE(串行接口引擎)控制器)之间的通道,数据流并不经过CPU,而是通过FX的FIFO直接传输。FIFO通过外部主机控制,同时,FIFO提供所需的时序信号、握手信号(满、空等)和输出使能等。

  可编程接口GPIF是主机方式,GPIF作为内部主机控制端点FIFO,其core是一个可编程状态机,可以生成多达6个控制输出信号和9个地址输出信号,能外接6个外部Ready输入信号和2个内部Ready输入信号。通过用户自定义的波形描述符来控制状态机,使用软件编程读写控制波形,几乎可以对任何8/16 hit接口的控制器、存储器和总线进行数据的主动读写,非常灵活。

2 接口的Verilog HDL编程实现

  在本设计巾采用Slave FIFO从机方式实现FPGA对FX的控制,通过Verilog HDL编程实现。FPGA可以根据实际情况选定。我们在设计时选用Xilinx公司的Virtex-Ⅱ设备(XC2V10004FG456C)。

2.1 异步FIFO读数据

FX读数据也就是数据从FX传到FPGA的过程,其过程如下:

  a)反复检测控制线状态,当读事件发生时,即控制线cON_out_z=0和RD_disk=10时,转到 b;

  b)分配FIFOADR[1:0]=00,这时FIFO指针会指向输出端点,表明使用端点EP2;

  c)检查FIFO是否空,当empy=1时表示FIFO不空,转到状态d,否则保持在状态C;

  d)赋值SLOE=0,使双向数据线FD在输出状态,采样FD数据线上的数据,并在SLRD的上升沿使FIFO指针门动加1,跳转到e;

  e)假如有更多的数据需要读,转到状态b,否则转到状态a。

  对读数据编程如下:



  用Mentor软件Modelsim进行仿真验证,其仿真波形如图4所示。在此过程中,SLRD信号特别重要,在SLRD的下降沿把FlFO中的数据放到FD数据线上;在SLRD的上升沿把FIFO指针加1,并指向下一个单元。

2.2 异步FIFO写数据

  向FIFO写数据是读数据的逆过程,也就是把FP-GA数据写入FX的FIFO,其编程过程如下:

  a)查询控制信号线con_out_z和WR_disk,看是否有读事件发生,如果有,就转移到状态b,否则保持在状态a;

  b)分配FIFOAFR[1:0]=10,FIFO指针指向输入端点,转向状态c;

  c)检查FIFO的满标志是否为1,假如fuIl=1,表示FIFO不满,转到状态d,否则保持在状态c;

  d)把外部数据indata放在FD上,同时把SLWR拉高,以使得FIFO指针自动加1,然后转到状态e;

  e)假如有更多的数据要传输,转到状态b,否则转到状态a。

  其程序与写FIFO数据时一样,只是在生成SLWR信号时,需要注意控制信号之间的保持延时时间约束,这可以通过仿真结果进行适当修改。



  读数据信号仿真波形如图5所示。但必须注意的是,在SLWR的下降沿把indata数据线上的数据放到FD数据线上;在SLWR的上降沿把FD数据线上的数据放人FIFO,并同时使FIFO指针加1,指向下一个缓存单元。

3 结束语

  现在USB2.O控制器CY7C68013已经应用到许多数据传输领域,由于此芯片灵活的接口和可编程特性简化了外部硬件的设计,提高了系统可靠性,也利于PCB(印制电路板)的制作与调试。本设计可扩展性好,因此可用于需要处理大容量的数据采集系统中。本设计已经用于对IDE硬盘的读写控制中,实现了对IDE硬盘的快速读写。

关键字:CY7C68013  FPGA接口 引用地址:CY7C68013与FPGA接口的Verilog HDL实现

上一篇:利用Xilinx FPGA和存储器接口生成器简化存储器接口
下一篇:程控交换机中光接口的设计

推荐阅读最新更新时间:2024-05-02 21:51

利用FPGA实现MMC2107与SDRAM接口设计
摘要:介绍基于现场可编程门阵列(FPGA),利用VHDL语言设计实现MMC2107与SDRAM接口电路。文中包括MMC2107组成结构、SDRAM存储接口结构和SDRAM控制状态机的设计。 关键词:现场可编程门阵列 SDRAM EBI VHDL 状态机 K4S560832A 引言 在嵌入式系统中,微控制器中通常有一定容量的存储器,用来存放程序和数据,但由于片内存储器受器件规模和生产成本的制约,其容量通常不能满足用户实际需求,还需要使用半导体存储器件来扩展存储空间。如果采用SDRAM进行存储扩展,可以大幅度地降低系统设计成本;但SDRAM控制时序比较复杂,给系统设计带来很大困难。为了方便使用SDRAM,实现嵌入式系统中存储的
[缓冲存储]
音频编解码芯片接口FPGA应用
介绍了音频编解码芯片WM8731基于FPGA的 接口电路 的设计,包括芯片配置模块与音频数据接口模块等,使得控制器只通过寄存器就可以方便地对其进行操作。整个设计以VHDL和Verilog HDL语言在Max+Plus Ⅱ里实现,并进行了验证。   1 概 述   WM873l是一款功能强大的低功耗立体声24位音频编解码芯片,其高性能耳机驱动器、低功耗设计、可控采样频率、可选择的滤波器使得WM8731芯片广泛使用于便携式MP3,CD,PDA的场合。其结构框图如图1所示。      WM8731包含2个线路输入和1路麦克风输入并可以进行音量调节;内置片上ADC(模拟数字转换器)及可选择的高通数字滤波器;采用高品质
[嵌入式]
音频编解码芯片<font color='red'>接口</font>的<font color='red'>FPGA</font>应用
LED显示屏高速数据通讯接口设计
1 引言 LED显示屏具有亮度高,故障低、能耗少、使用寿命长、显示内容多样、显示方式丰富等优点,可广泛用于公路、金融、证券、车站、码头、体育场馆等公共场合,其显示数据通常来自上位PC机,这就要求有一个高速通道来传输大量的显示数据,USB2.0接口无疑是一个很好的解决方案。 USB由总线提供电源,传输时具有CRC检错、纠错能力,能实现真正的实时热插拔,并支持多个外设连接到同一个连接器上,从而缓解PC系统资源冲突,这些突出的优点使得USB1.x在PC机外部设备上得到了广泛的应用, USB2.0传输速度高达480Mb/s,是USB1.x的40倍,并向下兼容USB1.x。这样就使得快速大量的数据传输得以实现。 在此强调一下两个
[嵌入式]
FPGA实现1553B总线接口中的曼码编解码器
引言 曼彻斯特码编码、解码器是1553B总线接口中不可缺少的重要组成部分。曼彻斯特码编解码器设计的好坏直接影响总线接口的性能。本文介绍的是MIL-STD-1553B接口中最曼彻斯特码的编码和解码器的设计实现。 在电子设计领域,可编程器件的广泛应用为数字系统的设计带来极大的灵活性,1片FPGA/CPLD芯片可替代上百个IC电路。同时,Altera公司开发的MAX+PLUS II和QUARTUS II软件,是完全集成化的可编程逻辑设计环境;Synplicity公司的Synplify是专门用于FPGA和CPLD的一种优秀逻辑综合工具;VHDL更是一种功能强大的硬件设计语言,可用简洁的代码描述来进行复杂控制逻辑的设计。所这些使得硬
[嵌入式]
基于FPGA的电台接口转换模块
摘要: 目前市场上电台接口转换模块大多都采用模拟电路,其带来稳定性差,工艺复杂等缺陷。通过采用数字信号处理技术来处理信号通信,提高信号的传输速率和降低传输的误码率,并提高系统的稳定性,节省信道资源。这里采用FPGA作为核心芯片来设计和开发,利用DSP Builder来仿真FFT实验,用OuartusⅡ软件开发设计此接口转换模块,最终获得的模块电路系统稳定,PTT信号更纯净。 一般来说,无线电台通信采用半双工通信方式,一方在发送话音信号的同时,不能接收另一方的话音信号。因此电台的通信接口分为两部分,一部分为话音信号接口,用于发送接收话音,另一部分为PTT控制信号接口,用于控制电台的发送接收状态。然而,目前有许多通信设备,
[嵌入式]
基于<font color='red'>FPGA</font>的电台<font color='red'>接口</font>转换模块
利用FPGA处理TMS320C54x与SDRAM的接口问题
在DSP应用系统中,需要大量外扩存储器的情况经常遇到。例如,在数码相机和摄像机中,为了将现场拍摄的诸多图片或图像暂存下来,需要将DSP处理后的数据转移到外存中以备后用。从目前的存储器市场看,SDRAM由于其性能价格比的优势,而被DSP开发者所青睐。DSP与SDRAM直接接口是不可能的。 FPGA(现场可编程门阵列)由于其具有使用灵活、执行速度快、开发工具丰富的特点而越来越多地出现在现场电路设计中。本文用FPGA作为接口芯片,提供控制信号和定时信号,来实现DSP到SDRAM的数据存取。 1 SDRAM介绍 本文采用的SDRAM为TMS626812A,图1为其功能框图。它内部分为两条,每条1M字节,数据宽度为8位,故存储总容量为2
[嵌入式]
基于FPGA的RS485接口误码测试仪的设计和实现
在数字通信中,误码率BER(Bit Error Rate)是衡量通信系统质量的一项重要指标。无论是设备故障、传播衰落、码间干扰、临近信道干扰等因素都可能造成系统性能恶化甚至造成通信中断,其结果都可通过误码的形式表现出来 。因此,误码测试仪是现代通信系统的主要测试仪器之一。 目前,通常使用的传统误码测试仪虽然具有测试内容丰富、测试结果直观等优点,但是由于通信系统复杂程度的不断增加,接口形式变化多样以及一些非标准码率的应用,使得传统误码测试仪的使用受到了一定的限制。另一方面,近年来FPGA技术得到了迅速发展,使用FPGA设计电路具有很大的灵活性,可以大大提高集成度和设计速度,还可以简化接口和控制,有利于提高系统的整体性能和工作可
[测试测量]
基于<font color='red'>FPGA</font>的RS485<font color='red'>接口</font>误码测试仪的设计和实现
基于FPGA和USB接口的验光仪控制系统设计方案
1.引言 近些年来,近视已经严重影响了人们的健康。为了准确的了解近视患者眼睛的近视程度,为近视者配出更加合适的眼镜,验光仪器成为了眼镜零售行业必不可少的设备。目前市场上主流电脑验光仪并不能完全实现验光过程的自动化,问题主要表现在以下三个方面: ①定位速度慢;②定位精度差;③自动化水平低. 为了解决以上问题,本设计对原有的电脑验光仪进行了改进,采用运行速率快,稳定性高的FPGA控制步进电机驱动芯片,实现了验光仪的三轴联动;运用行程开关实现了极点间的自动往返。为了保护电路安全,设计了板间的光电隔离电路;并且采用先进的USB技术使电脑和设备进行通信,增加了数据的传输率,提高了设备的可控性. 2.系统硬件整体设计 控制
[电源管理]
基于<font color='red'>FPGA</font>和USB<font color='red'>接口</font>的验光仪控制系统设计方案
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved