FPGA和USB3.0通信

1、USB3.0介绍
在这里插入图片描述

USB3.0协议:协议就是传输数据的规则,定义接口设备、器件及信号、总线及通道之间需要满足的关系。
USB3.0接口:接口是一种连接标准,又常常被称之为物理接口。
USB3.0总线:总线是一组传输通道,是各种逻辑器件构成的传输数据的通道,一般由由数据线、地址线、控制线等构成。
在这里插入图片描述

组成部分:
通用可编程接口 (GPIF II)
GPIFI是一种可编程的状态机,它所启用的灵活接口使用自己的高速时钟,完全独立于ARM9。在工业标准或专用接口中,GPIFII能够作为一个主设备或从设备运行。GPIFll可支持并行和串行接口。
GPIF II的主要特性包括:
·可作为主设备或从设备使用。
·提供256种可编程状态。
·支持8位、16位、24位和32位的并行数据总线。支持频率高达100 MHz的接口。
·使用32位数据总线时,支持14个可配置的I/O 引脚输出或双向引脚使用。
·使用16/8位数据总线时,支持16个控制V/O引脚。控制引脚可作为输入、输出或双向引脚使用。

32 位 CPU
·FX3拥有一个片上32位200 MHz ARM926EJ-S内核CPU。该内核能直接访问16KB的指令紧密连接内存(TCM)和8KB的数据紧密连接内存。ARM926EJ-S内核还提供了用于固件调试的JTAG接口。
·FX3集成了512KB 或,256KB的嵌入式SRAM(取决于所选择的设备型号),并支持四种启动代码的方法(USB、GPIF II、I2C或者 SPI)。
· FX3能在多种外设(如USB、 GPIFII、12S、SPI 以及UART)间实现高效灵活的DMA 连接。
·FX3固件配置外设间的数据访问后,DMA结构将管理传输,而不需要 ARM9内核参与。安装EZ-US:FX3SDK后可以使用FX3示例固件。
③JTAG接口
JTAG协议制定了一种边界扫描的规范。边界扫描架构提供了有效的测试布局紧凑PCB板上元件的能力。边界扫描可以在不使用物理测试探针的情况下测试引脚连接,并在器件正常工作的过程中捕获运行数据。
FX3的JTAG接口包含一个标准的5引脚接口,用于连接JTAG 调试器,以便通过CPU 内核的片上调试电路来调试固件。ARM926EJ-S 内核的业界标准调试工具可用于FX3应用开发。如Jlink。
外设

  1. I2C 主控制器:FX3的I2C接口作为I2C主设备使用,同I2C从设备进行通信。例如,可从连接至I2C接口的 EEPROM启动。FX3的I2C主控制器支持多主控制财能和I2C时钟延展。I2C控制器所支持的总线频率有100 kHz、400Hz和1MHz。
  2. UART:FX3的UART 接口支持全双工通信,包括TX、RX、CTS以及 RTS信号。UART支持各种波特率,从 300 bps 到4608 Kbps,可通过 FX3件进行选择。(一般用于调试串口使用)
  3. SPI 主控制器:FX3支持作为SPI主设备接口,其最大工作频率为33MHz。SPI控制器支持四种 SPI通信模式,传输数据大小为4位到32位。
  4. I2S 主控(仅发射器):FX3拥有一个12S发送器,用于支持外部音频编解码器和其它12S接收器。I2S接口支持的采样频率有32 kHZ、44.1 kHz和48 kHz。

FX3应用:
1.(主要)作为协处理器
请添加图片描述
利用USB PHY的特点,通过GPIF接口向内部写入数据,通过USB接口输出。
2.作为主处理器
请添加图片描述
利用ARM内核功能+USB,功能类似STM32F103,但是USB功能升级了。

①FX3芯片应用——与FPGA进行连接
通过高速并行 GPIF II接口,某些应用可以将 FPGA或ASIC连接到 FX3。作为数据的源或库的其它设备则被连接到FPGA或 ASIC。这样的应用包括数据采集设备、打印机、扫描仪和成像设备等等。
在上述应用中,FX3作为与USB主机进行数据发送和接收的快速数据管道。对于这些应用,FX3到FPGA/ASIC的接口通常是同步从设备FIFO接口。
在这里插入图片描述
②FX3芯片应用——与图像传感器(摄像头)进行连接
在图像应用中,图像传感器通过并行GPIF II接口直接与FX3相连,视频流通过 FX3从传感器发送给USB主机。通过使用合适的固件对 FX3进行编程,可使该系统同USB视频类别(UVC)相兼容。
在这里插入图片描述
FX3芯片电路设计
FX3芯片电路设计主要包括以下内容:
-电源电路
-USB接口电路
-时钟配置电路
-启动配置电路
-lIC电路
-SPI电路
-lIS电路
-GPIF II接口

硬件设计
1、时钟
FX3有19.2、26、38.4 和 52 MH,有晶体输入和有源晶振输入两种,通过配置FSLC[0…2]让内部PLL(锁相环)知道是哪种时钟输入:
请添加图片描述

2、 复位
通过激活 EZ-USB FX3 上的 Reset# 引脚来初始化硬复位。复位序列和时序的具体要求详见下图。请添加图片描述
常规的使用就是RC复位即可,想控制FX3,把Reset# 引脚拉到FPGA即可(注意电平匹配)。

3、 引导选向
FX3 为了灵活使用,加载程序时可从多个源加载引导二进制文件(编译出来的),可通过 PMODE 引脚配置来选择。EZ-USB FX3 有下列引导选项:

从 USB 引导
从 I2C 引导
从 SPI (支持的 SPI 器件为 M25P16 (16 Mbit)、M25P80 (8 Mbit) 和 M25P40 (4 Mbit))或同类器件引导
从 GPIF II 异步 ADMUX 模式引导
从 GPIF II 同步 ADMUX 模式引导
从 GPIF II 异步 SRAM 模式引导

请添加图片描述
(F代表的是悬空)
常用的:
F11(USB引导):用来调试和下载固件;
I2C引导:用来从EEPROM启动;
SPI引导,用来从SPI FLASH启动。

  • 17
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值