CY7C68013A芯片与FPGA

这篇具有很好参考价值的文章主要介绍了CY7C68013A芯片与FPGA。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

环境

软件环境

KEIL:嵌入式软件的开发。
Vivadoquartus :FPGA(可编程门阵列)和SoC(系统片上集成电路)开发。

其它工具

CyConsole
Signaltap:抓取数据验证FPGA接受到数据的正确性。

USB基础

USB2.0设备组成

每一个USB设备由一个或多个配置来控制其行为(对操作系统的支持);一个配置是由**接口(Interface)组成;接口则是由管道(Pipe)组成;管道是和USB设备的端点(Endpoint)**对应,端点都是输入输出成对的。在固件编程中,USB设备、配置、接口和管道都来描述符来报告其属性。

管道的端点总是成对出现,即In Endpoint和Out Endpoint
In Endpoint:由device向Host发送数据的端点。
Out Endpoint:由Host向device发送数据的端点。

端点0默认为控制管道,其它端点可以配置成数据管道。一个具体的端点,只能工作在一种传输模式下。

USB设备模型

  1. 主机(host)控制端作为主机端,驱动的设备是USB Host Controller。
  2. 外设端被称为设备端,驱动的设备是USB Device Controller。

由于USB协议的主从定位思想,从设备只需要响应主机控制器的请求,不能主动发起请求,通常所说的USB驱动都是指主机端的驱动程序

但近年来随着嵌入式设备的广泛使用,运行Linux系统嵌入式设备也需要通过USB协议与主机端通信,因此从设备端的Linux也需要进行USB设备驱动程序开发,为了避免和主机端的USB设备驱动开发混淆,就将运行Linux的从设备驱动开发称为USB gadget driver

USB设备分层

USB设备被分为三层:
usb host controller:最底层,也是总线接口层,负责传输和接收数据包;
usb core:USB核心层,Linux系统已经根据USB协议规范实现的通用接口。作为中间层,主要完成总线与设备上端点的通信,端点是数据最终的生产者和消费者,一个设备可以有多个端点。因此,这一层其实就是总线和端点的路由。
usb function:USB功能层,调用下层的接口实现不同的功能,如USB鼠标、USB键盘、USB话筒。通常的USB驱动开发指的都是这层的工作。

USB设备驱动开发-USB协议相关(一)

USB Host Controller 主机控制器

USB 设备和主机的接口,一个主机可以支持多个host controller。控制所有的USB设备的通信。

CPU把要做的事情分配给主机控制器,主机控制器替他去完成剩下的事情,事情办完了再通知CPU。绝对不应该偷偷加工数据。

主机控制器控制总线上包的传输, 使用1ms或125us的帧。包在帧中被传输,或由Host到Device(out事务),或由Device到Host(in事务)。传输总是由Host发起(轮询传输)。回此每条USB总线只能有一个Host。

分类
  • UHCI: Universal Host Controller Interface (通用主机控制接口, USB1.0/1.1)。
  • OHCI: Open Host Controller Interface (开放主机控制接口,USB1.0/1.1)。负责处理全速/低速设备。
  • EHCI: Enhanced Host Controller Interface (用于USB2.0高速设备的“增强主机控制接口”)。主要针对高速的USB设备。

Warning:当端口被OHCI所拥有时,没办法插入个高速设备。只有EHCI控制器才能识别出设备是全速、高速还是低速。

USB主机控制器(Host Controller)–深入理解

USB Host

  • USB Host:该设备可以作为USB主机连接USB外围设备,如连接U盘、键盘、鼠标等。一般的PC机的USB接口都是USB Host Only的模式。
  • USB Device(target、Slave):该设备可以以U盘的身份连接USB主机。从设备,属于被控制设备,可输入输出数据。
  • USB OTG全称是USBOn-The-Go,属于直接控制和传输设备,既可以做USB HOST也可以做USB Slave,通过ID信号来控制主、从切换。

什么是USBHOST、USB Slave和USB OTG?它们之间有什么区别?

USB2.0 数据帧

USB2.0和USB1.1规范的最大不同就是数据帧。在USB1.1规范中,USB数据采用每毫秒一个数据帧的方式进行数据传输,在毫秒数据帧的开始,USB主机首先产生帧开始(SOF)数据包,并传输当前数据帧号,后面是传输数据。

对于USB2.0规范,为了支持480Mbps高速传输速度,USB2.0提出了微帧的概念,每毫秒数据帧又包含8个微帧。

USB传输

虽然USB定义了数据在总线上传输的基本单位是包,但是我们还不能随意地使用包来传输数据,必须按照一定的关系把这些不同的包组织成事务才能传输数据。

事务

通常由两个或者三个包组成:令牌包,数据包和握手包。

  • 令牌包用来启动一个事务,总是由主机发送。
  • 数据包传送数据,可以从主机到设备,也可以从设备到主机,方向由令牌包来制定。
  • 握手包的发送者通常为数据接收者,当数据接收正确后,发送握手包。设备也可以使用NAK握手包来表示数据还未准备好。

传输类型

  1. 批量传输。通常用于数据量大,对数据的实时性要求不高的场合。
  2. 等时传输(同步传输)
  3. 中断传输
  4. 控制传输

其中,批量传输、等时传输、中断传输每传输一次数据都是一个事务控制传输包括三个过程,建立过程和状态过程分别是一个事务,数据过程则可能包含多个事务。

芯片 cypress CY7C68013

cy7c68013a与fpga通讯,fpga开发
可以通过两个不同的模式将 FX2LP 连接至 FPGA。这两个模式分别为通用可编程接口( GPIF)模式和从设备 FIFO模式。
cy7c68013a与fpga通讯,fpga开发

USB通讯基FPGA的CY7C68013A实现(2)

开发包安装

官方开发包地址:
CY3684工具包

05: CY3684 68013开发套件安装指南

FX3

EZ-USB™ FX3 Software Development Kit

固件程序设计

步骤

  1. 双击打开C:\Cypress\USB\CY3684_EZ-USB_FX2LP_DVK\1.1\Firmware\Bulkloop\bulkloop.Uv2,将用keil编译器打开。
  2. 打开Project->Components,Environmem,Bookx…,修改安装路径
  3. Keil编译成功后的是HEX格式的,又经过了Cypress的hex2bix程序转换成了iic文件。

EZ-USB FX2LP,CY7C68013A学习笔记[1]
CY7C68013A之keil编译代码

驱动程序设计

计算机上层应用软件

USB2.0 FPGA

USB基础

图解USB设备的枚举 过程

资料

一天一个设计实例-FPGA和USB(二)
CY7C68013A教程
CY68013 FPGA通信联调总结
基于CY7C68013A芯片的USB2.0设计
Cypress固件架构彻底解析及USB枚举
基于CY7C68013A的FPGA配置和通信接口设计
Window XP驱动开发(十三) 芯片功能驱动端 (代码实现,针对USB2.0 芯片CY7C68013A)
window xp 驱动(USB
FPGA USB FX2 图片发送试验 驱动CY7C68013A实现 提供2套工程源码和技术支持

CY7C68013A driver for MAC OS

官方文档

EZ-USB™ FX2LP FX2G2 USB 2.0 Peripheral Controller

其它工具

基于EZ-USB FX2 CY7C68013A模块的应用(一)——FX2 芯片片上回环测试

电路设计

USB通讯基FPGA的CY7C68013A实现(2)
Cy7c68013A驱动电路设计注意事项文章来源地址https://www.toymoban.com/news/detail-801795.html

到了这里,关于CY7C68013A芯片与FPGA的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Sulfo Cy2 Biotin,水溶性 Cy2 生物素,能够与各种氨基基团特异性结合

    您好,欢迎来到新研之家 文章:Sulfo Cyanine2 Biotin,Sulfo Cy2 Biotin,水溶性 Cy2 生物素,Sulfo-Cy2-Biotin,水溶性-Cy2-生物素 一、基本信息 产品简介:Sulfo Cyanine2 Biotin, also known as water-soluble Cy2 biotin, is a widely used fluorescent labeling reagent in scientific research. Cy2 is a dye with excellent o

    2024年01月25日
    浏览(35)
  • 红色荧光Sulfo CY5 alkyne应用组织成像1617572-09-4星戈瑞

    红色荧光Sulfo CY5 alkyne是一种荧光染料,适用于生物标记和组织成像实验。由于其荧光发射波长位于近红外光谱区域,通常在650-750 nm范围内,具有较好的光学性能和组织穿透性,使得它在组织成像方面应用。 以下是红色荧光Sulfo CY5 alkyne在组织成像中的应用: 1. 深层组织成像

    2024年02月10日
    浏览(28)
  • 【星戈瑞】Sulfo-Cyanine5 mal红色荧光Cy5-maleimide

    Sulfo-Cyanine5 mal是一种具有强荧光信号的染料,主要应用于生物荧光成像领域。它的化学式为C38H43KN4O9S2,分子量为803.00。这种染料具有良好的水溶性,可在水溶液中稳定存在。它的光学特性包括吸收峰位于646 nm和发射峰位于662 nm,适合于在红色光谱范围内进行成像。 产品名称

    2024年02月05日
    浏览(60)
  • 亲水性Sulfo-Cyanine3 NHS ester水溶性CY3标记活性脂

    Sulfo-Cy3是一种荧光染料,可用于生物成像和细胞标记等应用。Sulfo-Cy3是一种含有硫酸基的Cy3染料,具有高度的水溶性和稳定性。Sulfo-Cy3可以与NHS(N-羟基琥珀酰亚胺)结合,形成Sulfo-Cy3 NHS,这种结合物可以与生物分子如蛋白质、抗体等结合,使它们在荧光显微镜下可见。 中文

    2024年02月05日
    浏览(30)
  • lenovo联想Yoga 13s 2021 AMD平台ACN版(82CY)原厂预装Win11系统镜像原装OEM恢复出厂状态

    LENOVO联想笔记本电脑Yoga 13s 2021款 锐龙Ryzen5 ACN版(82CY)原装出厂Win11和Win10系统,恢复预装专用系统包 链接:https://pan.baidu.com/s/1jvzbm1wHNEiLelHzObCe2A?pwd=pxe0  提取码:pxe0  系统自带所有驱动、出厂主题壁纸、系统属性联机支持标志、Office办公软件、联想电脑管家等预装程序 所需要

    2024年02月11日
    浏览(47)
  • 【FPGA 芯片设计】FPGA 简介 ( FPGA 芯片架构 | FPGA 芯片相对于传统芯片的优点 )

    摩尔定律 : 价格不变 , 在集成电路上 电子元器件的数量 , 18 ~ 24 个月增加一倍 , 同时芯片性能也增加一倍 ; 同样花 5000 元 , 每隔 18 ~ 24 个月 , 买到的电脑性能可以翻一番 , 买电脑不要买最好的 , 第二年就淘汰 ; FPGA 英文全称 Field Programmable Gate Array , 中文名称为 \\\" 现场可编程门

    2024年02月03日
    浏览(71)
  • 常用芯片学习——HC245芯片

    使用说明 这些八路总线收发器专为数据总线之间的异步双向通信而设计。控制功能实现可更大限度地减少外部时序要求。根据方向控制 (DIR) 输入上的逻辑电平,此类器件将数据从 A 总线发送至 B 总线,或者将数据从 B 总线发送至 A 总线。输出使能 (OE) 输入可用于禁用器件,

    2024年01月23日
    浏览(27)
  • 220V转5V芯片三脚芯片-AH8652

    220V转5V芯片三脚芯片是一种非常常见的电源管理芯片,它通常被用于将高压交流输入转为稳定的直流5V输出。芯片型号AH8652是一款支持交流40V-265V输入范围的芯片,采用了SOT23-3三脚封装。该芯片内部集成了650V高压MOS管,能够稳定地将输入电压转换为固定的5V输出电压。此外,

    2024年02月11日
    浏览(28)
  • 智能安全芯片ACH512芯片描述及功能

         ACH512 芯片是一款基于安全算法的高性能 SOC 芯片, 主要应用于 eMMC/SD/Nandflash 大容量存储设备、加密 U 盘、指纹识别等市场。 芯片采用 32 位内核,片内集成多种安全密码模块,包括SM1、 SM2、 SM3、 SM4、 SSF33 算法以及RSA/ECC、 ECDSA、 DES/3DES、AES128/192/256、SHA1/256/384/512 等安

    2024年01月16日
    浏览(39)
  • 【音频解码芯片】VS1503音频解码芯片的应用

    😃 因为学习播放 mp3 用到了 VS1503,故对其命令、寄存器以及编程代码进行分析。 那种杂七杂八的就不介绍了,又没啥用,介绍一堆以后连看都不看! 我真的累了啊 ~ 为了学音乐播放器居然要看这么老多东西!!!!! 啊啊啊啊啊!都搞懂了吗????? 支持的音频解码:

    2023年04月17日
    浏览(73)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包