USB芯片CY7C68013使用

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

CY7C68013芯片使用图一CY7C68013内部构造CY7C68013特点:支持USB2.0,内部包括USB2.0收发器、串行接口引擎(SIE)以及增强型51内核;灵活配置,可“软配置”RAM,取代了传统51的RAM和ROM,程序可以通过以下方式下载:通过USB口下载;通过外部E2PROM装载;外界存储设备(仅128引脚支持)模式灵活,可设置为主从模式,主模式下可对外部FIFO、存储器、ATAn接口设备进行高速读写操作,从模式下外部主控器(例如DSP、MCU)可把GPIF端口当作FIFO进行高速读写操作。支持与外设通过并行8位或者16位总线传输硬件连接方式在SlaveFIFO方式下,外部逻辑与FX2的连接信号图如下:图一从模式下的硬件连接IFCLK:FX2输出的时钟,可做为通讯的同步时钟;FLAGA,FLAGB,FLAGC,FLAGD:FX2输出的FIFO状态信息,如满,空等;SLCS:FIFO的片选信号,外部逻辑控制,当SLCS输出高时,不可进行数据传输;SLOE:FIFO输出使能,外部逻辑控制,当SLOE无效时,数据线不输出有效数据;SLRD:FIFO读信号,外部逻辑控制,同步读时,FIFO指针在SLRD有效时的每个IFCLK的上升沿递增,异步读时,FIFO读指针在SLRD的每个有效—无效的跳变沿时递增;SLWR:FIFO写信号,外部逻辑控制,同步写时,在SLWR有效时的每个IFCLK的上升沿时数据被写入,FIFO指针递增,异步写时,在SLWR的每个有效—无效的跳变沿时数据被写入,FIFO写指针递增;PKTEND:包结束信号,外部逻辑控制,在正常情况下,外部逻辑向FX2的FIFO中写数,当写入FIFO端点的字节数等于FX2固件设定的包大小时,数据将自动被打成一包进行传输,但有时外部逻辑可能需要传输一个字节数小于FX2固件设定的包大小的包,这时,它只需在写入一定数目的字节后,声明此信号,此时FX2硬件不管外部逻辑写入了多少字节,都自动将之打成一包进行传输;FD[15:0]:数据线;FIFOADR[1:0]:选择四个FIFO端点的地址线,外部逻辑控制。相应的读写时序:同步SlaveFIFO写同步SlaveFIFO写的标准连接图如下:同步SlaveFIFO写的标准时序如下:IDLE:当写事件发生时,进状态1;状态1:使FIFOADR[1:0]指向INFIFO,进状态2;状态2:如FIFO满,在本状态等待,否则进状态3;状态3:驱动数据到数据线上,使SLWR有效,持续一个IFCLK周期,进状态4;状态4:如需传输更多的数,进状态2,否则进状态IDLE。状态跳转示意图如下:几种情况的时序图示意如下(FULL,EMPTY,SLWR,PKTEND均假定低有效):图示FIFO中本来没有数据,外部逻辑写入第一个数据时的情况。图示假定FX2设定包大小为512字节,外部逻辑向FIFO端点中写入的数据达512字节时的情况。此时FX2硬件自动将已写入的512字节打成一包准备进行传输,这个动作就和在普通传输中,FX2固件向FIFO端点中写入512字节后,把512这个数写入EPxBC中一样,只不过这个过程是由硬件自动完成的。在这里可以看出“FX2固件不参与数据传输过程”的含义了。外部逻辑只须按上面的时序图所示的时序向FIFO端点中一个一个字节(或字)地写数,写到一定数量,FX2硬件自动将数据打包传输,这一切均不需固件的参与,由此实现高速数据传输。图示的是FIFO端点被写满时的情况。下图是同步SlaveFIFO写入时序:同步SlaveFIFO写入时序逻辑时序设计中,数据应该在IFCLK上升沿写入。同时注意SLWR、DATA之间的时序关系。同步SlaveFIFO读:同步SlaveFIFO读的标准连接图如下:同步SlaveFIFO读的标准时序如下:IDLE:当读事件发生时,进状态1;状态1:使FIFOADR[1:0]指向OUTFIFO,进状态2;状态2:使SLOE有效,如FIFO空,在本状态等待,否则进状态3;状态3:从数据线上读数,使SLRD有效,持续一个IFCLK周期,以递增FIFO读指针,进状态4;状态4:如需传输更多的数,进状态2,否则进状态IDLE。状态跳转示意图如下:单个和突发读取时序:SLAVEFIFO同步读取序列和时序图SlaveFIFO同步事件序列图从上图所示,FPGA应该在IFCLK上升沿处采集数据。异步SlaveFIFO写:异步SlaveFIFO写的标准连接图如下:异步SlaveFIFO写的标准时序如下:IDLE:当写事件发生时,进状态1;状态1:使FIFOADR[1:0]指向INFIFO,进状态2;状态2:如FIFO满,在本状态等待,否则进状态3;状态3:驱动数据到数据线上,使SLWR有效,再无效,以使FIFO写指针递增,进状态4;状态4:如需传输更多的数,进状态2,否则进状态IDLE。状态跳转示意图如下:几种情况的时序图示意如下(FULL,EMPTY,SLWR,PKTEND均假定低有效):图示FIFO中本来没有数据,外部逻辑写入第一个数据时的情况。SlaveFIFO异步写时序数据必须在SLWR解除沿前Tsfd出现在总线上,当SLWR上升沿时,数据将被写进FIFO中,同时更新FIFO的指针。异步SlaveFIFO读:异步SlaveFIFO读的标准连接图如下:异步SlaveFIFO读的标准时序如下:IDLE:当读事件发生时,进状态1;状态1:使FIFOADR[1:0]指向OUTFIFO,进状态2;状态2:如FIFO空,在本状态等待,否则进状态3;状态3:使SLOE有效,使SLRD有效,从数据线上读数,再使SLRD无效,,以递增FIFO读指针,再使SLOE无效,进状态4;状态4:如需传输更多的数,进状态2,否则进状态IDLE。状态跳转示意图如下:几种情况的时序图示意如下(FULL,EMPTY,SLRD,SLOE均假定低有效):图示正常情况时的时序。SlaveFIFO异步读时序Data总线在SLRD下降沿时被触发更新,有一定时间的延迟,所以采用异步读取的方式,应该在SLRD上升沿处采集数据。同步与异步读写的引脚差异:同步读异步读同步写异步写IFCLKIFCLKFIFOADR[1:0]FIFOADR[1:0]FIFOADR[1:0]FIFOADR[1:0]EMPTYEMPTYFULLFULLSLOESLOESLWRSLWRSLRDSLRDFD[15:0]FD[15:0]FD[15:0]FD[15:0]PKTENDPKTENDSLCSSLCSSLCSSLCS

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功