图5.2.3 配置流程图
19
图5.2.4 上电时序图
5.2.4 各种模式的配置方式
1. 串行模式
串行配置模式共分为两种:在主机串行模式中,FPGA通过驱动CCLK作为输出控制配置进程。在从机串行模式中,FPGA从控制配置进程的外部媒体(例如微处理器、CPLD或处于主机模式的另一个FPGA)被动地将CCLK作为输入进行接收。在这两种模式中,FPGA在每个CCLK周期载入一个位进行配置。每个配置数据的MSB都会首先被写到DIN管道。 如图5.2.5所示是向Spartan-ⅡFPGA串行地载入数据的流程图。
图5.2.5 载入串行模式的配置数据
20
2. 从机串行模式
在从机串行模式中,FPGA的CCLK管脚由外部的时钟源驱动,允许从其他逻辑器件(例如微处理器或在菊花链结构中)配置FPGA。如图5.2.6所示显示了主机串行FPGA从PROM配置一个从机串行FPGA的连接。置模式管脚(M0、M1、M2)位<11x>可以选择从机串行模式。 如图5.2.7所示是从机串行配置的时序图。串行位流必须在外部产生的CCLK上升沿前的短时间内在DIN管脚上建立。处于从机串行模式的多个FPGA可以连接成菊花链由一个信源进行配置。FPGA完成配置后,下一个器件的数据被发送到DOUT管脚。DOUT管脚的数据在CCLK的上升沿变化。菊花链上所有FPGA的INIT管脚都是高电平时,必须延迟配置。
图5.2.6 主机/从机串行配置电路图
21
图5.2.7 从机串行模式的时序
3. 主机串行模式
在主机串行模式中,FPGA的CCLK输出驱动一个Xilinx PROM,向FPGA的DIN输入反馈一个配置数据的串行流。如图5.2.6所示是主机串行FPGA从PROM配置从机串行FPGA的示意图。处于主机串行模式的Spartan-Ⅱ器件应如图5.2.6中最左边的器件一样进行连接。置模式管脚(M0、M1、M2)位<00x>可以选择主机串行模式。PROM的RESET管脚由INIT驱动,CE输入由DONE驱动。接口对于从机串行模式是一样的,除了用于产生配置时钟(CCLK)的FPGA内部振荡器。从4~60MHz的频率都可以在Xilinx开发软件中用ConfigRate选项配置。默认的ConfigRate是4MHz。内部振荡器产生的CCLK信号周期与指定的值有+45%和-30%的差别。
如图5.2.8所示给出了主机串行配置的时序。FPGA在每个CCLK的上升沿接收一位配置数据。在配置完成当前的FPGA后,菊花链中下一个器件的数据在CCLK的上升沿后出现在DOUT管脚上。
图5.2.8 主机串行模式时序
4. 从机并行模式
从机并行模式是最快速的配置选项。它向FPGA写入的是字节的数据。在时钟频率FCNNH大约是50MHz时,还提供了一个BUSY标志控制数据流。如图5.2.9所示是两个使用从机并行模式的SpartanⅡ器件的连接。置模式管脚(M0、M1、M2)为<011>可以选择从机并行模式。处理器、微控制器或者CPLD都可以控制从机并行接口。控制媒体提供了一字节的配置数据、CCLK、片选信号(CS)和写信号(WRITE)。如果FPGA将BUSY置为高电平,数据必
22
须保持直到BUSY变成低电平。配置后,从机并行口的管脚(D0~D7)可以作为额外的用户I/O。另外,端口可被保持以允许高速的8位回读。当WRITE是高电平时可以读数据。
图5.2.9 从机并行配置电路图
利用XC18V01VQ44C对FPGA进行配置,其配置电路如图5.2.10所示。
图5.2.10 XC18V01VQ44C进行FPGA配置的电路图
23