FPGA最小系统配置

发布时间 : 星期日 文章FPGA最小系统配置更新完毕开始阅读

5.2 FPGA最小系统配置电路的设计

利用FPGA的在系统下载或重新配置功能,可以在电路设计和调试时改变整个电路的硬

件逻辑关系,而不需要改变印制电路板的结构。

5.2.1 使用PC并行口配置FPGA

对于基于SRAM LUT结构的FPGA器件,由于是易失性器件,没有ISP的概念,代之以ICR即In-Circuit Reconfigurability即在线可重配置方式。FPGA特殊的结构使之需要在上电后必须进行一次配置。电路可重配置是指允许在器件已经配置好的情况下进行重新配置,以改变电路逻辑结构和功能。利用FPGA的ICR特性,可以通过连接PC机的下载电缆快速地下载设计文件至FPGA进行硬件验证。

在Altera公司的SRAM LUT结构的FPGA器件中,FPGA可使用6种配置模式,这些模式通过FPGA上的两个模式选择引脚MSEL1和MSEL0上设定的电平来决定:

(1) 配置器件,如用EPC器件进行配置。

(2) PS(Passive Serial被动串行)模式:MSEL1=0、MSEL0=0。

(3) PPS(Passive Parallel Synchronous被动并行同步)模式:MSEL1=1、MSEL0=0。 (4) PPA(Passive Parallel Asynchronous被动并行异步)模式:MSEL1=1、MSEL0=1。 (5) PSA(Passive Serial Asynchronous被动串行异步)模式:MSEL1=1、MSEL0=0。 (6) JTAG模式:MSEL1=0、MSEL0=0。

在这6种配置模式中,PS模式可利用PC机通过ByteBlaster下载电缆对Altera公司底FPGA器件进行配置。这是在FPGA的设计调试时是经常使用的模式。

5.2.2 使用单片机配置FPGA

在FPGA实际应用中,设计的保密和设计的可升级是十分重要的。用单片机来配置FPGA可以很好的解决上述问题。

对于单片机配置FPGA器件,Altera公司的基于SRAMLUT的FPGA提供了多种配置模式。除以上多次提及的PS模式可以用单片机配置外,PPS被动并行同步模式、PSA被动串行异步模式、PPA被动并行异步模式和JTAG模式都能适用于单片机配置。

用单片机配置FPGA器件时,关键在于产生合适的时序。图3.4.1是单片机用PPS模式配置FPGA器件的电路。

14

图5.2.1 单片机用PPS模式配置FPGA电路

图5.2.1中单片机可选用常用的如MCS51系列、MCS96系列、AVR系列等均可。图5.2.1中的ROM可以用EPROM或者Flash ROM,配置的数据就放置在EPROM或者Flash ROM器件内,单片机在这里只起产生配置时序的作用。

出于设计保密、减少芯片的使用数,对于配置的数据容量不太大的情况下,可以把配置

数据也置于单片机的程序存储区。图5.2.2是一个典型的应用示例。

图中的单片机采用常见的89C52,FLEX10K的配置模式选用PS模式。由于89C52的程序存储器是内建于芯片的Flash ROM,设计的保密性较好。

如果把图5.2.2中的“其他功能模块”换成无线接收模块,可以实现系统的无线升级。

图5.2.2 用89C52进行FPGA配置

15

采用“多任务电路结构重配置”技术,可以在图5.2.2中的单片机ROM内按不同地址放置多个针对不同功能要求设计好的FPGA的配置文件,然后由单片机接受不同的命令,以选择不同的地址控制,从而使所需的配置文件下载到FPGA中。这种设计方式可以极大地提高电路系统的硬件功能灵活性。同一电路系统没有发生任何外在结构上的改变,但通过来自外部不同的命令信号,系统内部对应的配置信息加载于系统中的FPGA,电路系统的结构和功能将在瞬间发生改变,从而使单一电路系统具备许多不同电路结构的功能。

5.2.3 Spartan-Ⅱ器件的配置

Spartan-Ⅱ器件支持使用主从串行模式和JTAG模式的串行配置,以及从并行模式的配置。配置是将设计产生的位流载入到FPGA内部配置存储器的过程。

1. 配置文件

Spartan-Ⅱ器件通过不断载入已经连接到配置文件的数据帧进行配置。如表5.2.1所示显示了Spartan-Ⅱ器件需要的非易失性存储空间。值得注意的是,虽然配置数据在载入FPGA之前通常用PROM来保存,但在这并不需要它。

表5.2.1 Spartan-Ⅱ配置文件的大小

2. 模式

Spartan-Ⅱ器件支持四种配置模式:串行模式、主串行模式、从并行模式和边界扫描模式。配置模式管脚(M2、M1、M0)通过在配置前将这些IOB管脚上拉或悬空选择这些配置模式,下载模式的选择与管脚M2~M0的对应关系如表5.2.2所示。通过边界扫描端口的配置是一直可用的,无需考虑模式的选择。选择边界扫描模式会把其他模式关闭。其他三种模式的管脚都有内部上拉电阻,如果不连接,管脚默认地呈现逻辑高电平。

16

表5.2.2 配置模式

3. 信号

用于配置Spartan-Ⅱ器件的共有两类管脚:①执行特定配置功能的专用管脚:②在启动用户操作后可作为通用的I/O的其他管脚。专用管脚包括模式管脚(M2、M1、M0)、配置时钟管脚(CCLK)、PROGRAM管脚、DONE管脚和边界扫描管脚(TDI、TDO、TMS、TCK)。根据选择的配置模式,CCLK可以是由FPGA产生的输出,也可以在外部产生,提供FPGA的一个输入。

4. 配置过程

配置Spartan-Ⅱ器件的步骤如图5.2.3所示,整个流程可分为以下3个阶段。 (1) 初始化配置

初始化配置过程可以采用向器件上电或向PROGRAM输入低电平实现。上电时,配置自动发生,除非用户将它延迟。上电时,配置的波形图如图5.2.4所示。配置开始前, Vcc必须大于1.0V。此外,所有Vccint电源管脚必须连接到2.5V的电源。当用户在操作时将PROGRAM管脚拉成低电平可以重新配置器件。器件在向DONE驱动低电平时就确认了配置过程开始,然后进入清除存储器阶段。

(2)清除配置存储器

向INIT驱动低电平表示器件正在清除配置存储器。此时,用户可以保持PROGRAM或INIT管脚的低电平使器件仍处于存储器清除阶段延迟配置。注意,双向的INIT线在清除存储器器件驱动逻辑低电平。因此,使用了一个开漏驱动器使INIT维持低电平以避免竞争。不再强制延迟后,器件向INIT驱动高电平表示器件完成存储器清除。FPGA在这个低电平到高电平的跳变中采样它的模式管脚。

(3)载入数据帧

17

联系合同范文客服:xxxxx#qq.com(#替换为@)