CYUSB3014延续了CY7C68013A最吸引人的地方,那就是实现高速数据传输的Slave FIFO接口,应用这种模式,据说数据传输率可以达到320MB/s.

  同USB2.0的芯片CY7C68013集成了一个通用可编程接口GPIF一样,USB3.0的芯片CYUSB3014也含有通用可编程接口GPIF,并且升级到GPIF II。通用可编程接口GPIF就是一个可编程的状态机,可以与外部的Processor, ASIC, 或者FPGA无胶粘逻辑相连,实现高速数据传输。CYUSB3014的通用可编程接口GPIF II 特点如下:

1、芯片CYUSB3014本身既可做主机,也可做从机;

2、最多提供256个可编程的状态(State);

3、支持8位、16位、32位的数据总线宽度;

4、最高工作频率可以至100MHHz;

5、最多提供16个输入输出的状态引脚,用来实现握手信号。

  通用可编程接口GPIF II可以实现同步(synchronous)和异步(asynchronous)Slave FIFO接口,从编程的角度来说,是用描述符来实现的。安装完SDK后,可以打开相应的关于描述符的文件看一下,具体的目录如下:C:\Program Files\Cypress\FX3 SDK\firmware\slavefifo\slfifoasync\cyfxslfifogpifdscr.c;另一个目录是C:\Program Files\Cypress\FX3 SDK\firmware\slavefifo\slfifosync\ cyfxslfifogpifdscr.c。用记事本打开后,可以发现主要是定义了一个数组,const uint32_t CyFxSlFifoAsyncGpifConfData[][2] ={...},不像CY7C68013A是用分散的寄存器来定义的(原理上都一样,都是寄存器)。

要实现FIFO接口,硬件上要用到的引脚较多,可以自己查阅Datasheet,这里主要对异步传输,用一个引脚连接图和时序图来说明数据是怎样实现高速传输的。

  下图是一个说明异步传输的引脚连接图,

  从引脚连接上,可以说FX3与FX2并没有什么区别,用的还是那些引脚,名字也完全一样。外部的处理器充当主机,控制FX3进行数据传输。下图是一个异步传输的读时序,

  下面对时序图进行一下分析:

1、外部主机发出片选信号,选中FX3芯片(上图中最上面的SLCS信号出高变低,低电平有效)。

2、外部主机发出FIFO ADDR选择信号,此信号与FX2中的FIFO ADDR信号相同,但概念上略有区别,以后会有说明(上图中上面的第二个信号FIFO ADDR)。

3、外部主机发出读SLRD信号,低电平有效(上图中的上面第三个信号SLRD,低电平有效)。

4、同时,外部主机发出SLOE信号,允许FX3将数据送到数据总线上;在读过程中,此信号可以一直保持为有效,低电平有效,或者些信号可以与SLRD连接在一起(上图中上面数第四个信号,低电平有效)。

5、外部主机发出SLRD信号后,FX3开始准备数据,之后将数据放在数据总线上(延迟时间为图中的tRDO)。第一个数据读取完后,FX3内部的数据指针自加1或减1,将第二个数据放在总线上(SLRD信号有效后),直到标志位FLAGA或FLAGB有效后(没有数据可读),结束此读的过程。

【关注图像采集视频传输】之 Cy3014 usb3.0 FIFO接口的更多相关文章

  1. 关注图像采集视频传输之USB3.0 应用

    参考文献 百度文库 http://baike.baidu.com/link?url=82OyhoL1AsNaT35CvscmeZqHjlggtFw-Cez2qYwjLHNXGhXfv38pUlsIJB ...

  2. 【关注图像采集视频传输】之CYUSB3014 EZ-USB FX3 Software Development Kit

    网址:http://www.cypress.com.与之前的High Speed FX2相比,新的产品叫Super Speed  FX3,沿用了之前的命名习惯.FX2芯片内嵌一个8051核,FX3则内 ...

  3. USB3.0 和usb 2.0的区别

    USB3.0拥有10倍于USB2.0的速度,可惜DIY“江湖”险恶,如果咱们不掌握如何识别USB3.0的方法,很容易被JS忽悠.何况,USB3.0主板不等于USB3.0机箱,很多朋友在选购时都忽略了一 ...

  4. USB3.0之高速视频传输测试 双目相机(mt9p031、mt9m001)带宽高达300M测试 配合isensor测试 500万像素15fps

    最近完善了下USB3.0的视频开发测试,主要优化了FPGA程序和固件,及其同步方式.对带宽和图像效果进行了仔细的测试 开发板架构(2CMOS+FPGA+2DDR2+USB3.0) 评估板底板配合2个M ...

  5. USB3.0 图像视频传输 开发 CYUSB3014开发基础(导入官方例程) 转

    CYPREE提供的FX3_SDK开发包里面有很多基础的内容,除了前面提到的几个pdf文件外,还有三个文件夹,是官方提供的基础例程.学习CYUSB3014应该就从这里开始,从这几个例程开始.例程共有三个 ...

  6. CC1605&CC1604 usb3.0+FPGA 高速视频采集 双目相机测评

    CC1605&CC1604 usb3.0+FPGA 高速视频采集 双目相机测评 摄像头配置:ov5640.OV5642.mt9p031.mt9m001c12stm OV5640 xclk:24 ...

  7. 速度竟差9倍!6款32GB USB3.0优盘横评

    速度竟差9倍!6款32GB USB3.0优盘横评 2014-08-22 05:04:00  [  中关村在线 原创  ]   作者: 蒋丽 |  责编:孙玉亮 收藏文章 分页阅读 分享到 评论(90) ...

  8. 第二十六篇:USB3.0高带宽ISO(48KBytes/125us)实战

    USB3.1技术已经推出, 10Gbps的速率足以满足数据, HD视频传输的要求. 要步入USB3.1的研发, 还得将USB3.0的基础打扎实. 微软提供的SUPER MUTT仅仅包括一个接口0, 其 ...

  9. 硕盟SM-A44|USB3.0转RJ45千兆网口转换器(TYPE A USB3.0 TO RJ45)

    硕盟SM-A44是一款USB3.0转RJ45千兆网口转换器.,转换USB端口到以太网端口.它让你投入低成本就可以轻松拥有千兆以太网.可将网络连接到台式机,笔记本电脑等等设备.硕盟 USB千兆网卡采用嵌 ...

随机推荐

  1. spring源码1

    1.beans核心类 1.DefaultListableBeanFactory xmlBeanFactory xmlBeanFactory继承自DefaultListableBeanFactory,D ...

  2. Python input函数使用

    本文链接:https://www.cnblogs.com/zyuanlbj/p/11905475.html 函数定义 def input(*args, **kwargs): # real signat ...

  3. Python开发面试集锦

    我正在编写一套python面试开发集锦,可以帮忙star一下,谢谢! 地址:GitHub专栏

  4. scrapy的CrawlSpider类

    了解CrawlSpider 踏实爬取一般网站的常用spider,其中定义了一些规则(rule)来提供跟进link的方便机制,也许该spider不适合你的目标网站,但是对于大多数情况是可以使用的.因此, ...

  5. Ansible Playbooks 介绍 和 使用 二

    目录 handlers playbook 案例 2 handlers vars 变量 setup facts 变量使用 案例 inventory 中定义变量 案例 条件测试 when 语句 案例 迭代 ...

  6. Django4模型(操作数据库)

    模型入门同步数据库的两个指令创建模型注意事项1.外键ForeignKey 模型入门 同步数据库的两个指令 python manage.py makemigrations python manage.p ...

  7. 监控io性能、free、ps命令、查看网络状态、Linux下抓包 使用介绍

    第7周第2次课(5月8日) 课程内容: 10.6 监控io性能 10.7 free命令10.8 ps命令10.9 查看网络状态10.10 linux下抓包扩展tcp三次握手四次挥手 http://ww ...

  8. Nginx+MySQL+PHP+Redis多机部署(测试发布discuz论坛)

    链接:LNMP+Redis单机部署 1.实战多机部署环境 nginx服务器: 192.168.1.3 php服务器:    192.168.1.4 mysql服务器: 192.168.1.10 red ...

  9. 【项目管理】Mybatis-Generator之最完美配置详解

    今天看到了一篇总结特别详细的关于Mybatis-Generator配置文件的文章,特转载进行记录学习使用. 先附上原文地址链接:张思全----全哥文章 <?xml version="1 ...

  10. Java8 格式化时间

    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss");LocalDateTime. ...