通过USB配置FPGA.pdf
文本预览下载声明
技术文章
通过USB 配置FPGA
作者:GopalakrishnanVijayakumar,赛普拉斯半导体公司
本文主要介绍如何通过USB 配置FPGA 系统,以实现现场升级的灵活性,并取代
JTAG 配置接口,而且无需使用单独的板上JTAG 控制器。
过去几十年来,工程师一直在努力缩减电子系统的尺寸,并提高系统灵活性。随着可重
编程FPGA 的出现,系统成本得以降低,而且可实现即时升级。本文将介绍如何通过USB
配置FPGA 系统,以实现现场升级的灵活性。此外,这种方法也可用来取代常见的JTAG
配置接口,且无需使用单独的板上JTAG 连接器,从而可显著减少成本和板卡空间。
FPGA
FPGA (现场可编程门阵列)是简单的可编程逻辑块,而且在逻辑块之间具有大规模电子
可编程的互联架构。FPGA 可帮助用户配置逻辑块和逻辑块之间的互联。起初,FPGA 可
用来在单个芯片上实现整个系统的功能,并提供可重编程的灵活性。如今,FPGA 覆盖了
汽车、工业、医疗、消费类电子网络、安全、高性能计算、视频和成像、数字信号处理
等丰富的应用市场领域。在以下章节中我们来看看各种不同类型的FPGA 配置。
FPGA 配置
FPGA 有两种工作模式:配置模式和用户模式。加电时,FPGA 进入配置模式进行编程。
配置FPGA 意味着通过特殊引脚将由“0”和“1”组成的比特流发送到器件中。一旦FPGA
配置完成,就切换到用户模式执行编程后的逻辑功能。
大多数FPGA 使用SRAM 存储配置数据。由于SRAM 是一种易失性配置,因此配置数据在
加电时需要下载到SRAM 上。此外,这些配置还可自动从非易失性存储器(如PROM、SPI
闪存等)或外部处理器芯片上加载。微处理器、微控制器和数字信号处理器也能将配置
数据下载到FPGA 的SRAM 中。除了上述方法之外,配置数据还能通过最常见的JTAG 接
口、USB 接口等进行下载。
FPGA 配置的类型
我们可让FPGA 进入主模式或从模式来完成FPGA 的配置。在主模式下,FPGA 生成配置时
钟并控制配置数据。在这种模式中,FPGA 通常从非易失性存储器(如SPI、闪存和PROM
等)下载配置比特流。当使用SPI 闪存时,FPGA 作为SPI 主设备,而配置数据从SPI
闪存下载,如图1A 所示。在图1B 和图1C 中,FPGA 从PROM 下载配置数据。虽然非易失
性存储器(如PROM)可以是内置或外置的,但是通常都采用FPGA 外置的形式。
1 / 6
技术文章
图1:主模式下的FPGA 配置
在从模式下,FPGA 可用外部智能器件(如微控制器、微处理器、数字信号处理器等)或
使用JTAG、USB 接口进行配置。
微控制器、微处理器和DSP 等智能器件用来加载配置数据的三种最常见方法分别是同步
串行、SPI 从模式和并行模式。
同步串行接口
图2:从模式下的FPGA 配置——同步串行
在这种方法中,我们通常用数据和时钟这两条线下载配置数据。在配置时钟的上升沿上,
配置数据位传输到FPGA 中。
SPI 从模式
2 / 6
技术文章
图3:从模式下的FPGA 配置——SPI
这里,FPGA 作为SPI 从设备,而外部微处理器、微控制器或DSP 作为SPI 主设备。处理
器或控制器通过SPI 线路从片外存储器源加载配置比特流数据。
并行模式(8 位、16 位或32 位)
大多数FPGA 在配置数据以并行方式传输时都能提供8/16/32 位选择,该方法是加载配
置数据速度最快的一种模式。
图4:从模式下的FPGA 配置——并行模式
使用JTAG 接口进行配置:
JTAG 接口是一种四引脚或五引脚的串行接口。五引脚的分别为TDI (测试数据输入)、
TDO (测试
显示全部