2 DCLK TCK
3 NCONFIG TMS
8 DATA0 TDI
11 CONF_DONE TD0
13 NSTATUS NC
15 GND GND
18-25 GND GND
PS和JTAG的配置方式连接图
也有一种不太常用的配置方式,也是通过微型计算机对FPGA直接配置,但不同的是把连接FPGA和微型计算机的介质去掉,即不需要电缆,直接配置。简称为主控器配置。它在对FPGA进行配置过程中,和并口电缆配置方式不同的是,在FPGA功能配置期间,可跳过电缆传送,可以直接运转,这样就能够实现在对整体系统进行修改完善的同时,可以进行配置。
但它的缺点也是显而易见,当FPGA系统配置已经完成时,遇到突发状况或断电后,还要通过PC机重新传输配置,这样操作起来就显得非常麻烦而且耽误时间。
2.2 专用配置芯片配置FPGA的方案
本节采用了Altera研发的FLEX系列的FPGA芯片,其配置方式适用于专用芯片的配置方式。基于专用配置芯片的配置方法是通过可编程逻辑器件进行操控的,此配置方式有两种状态:初始状态和用户状态。
EPC芯片配置FPGA接线图
与微型计算机配置FPGA的方式不同,配置FPGA的模式是主动串行配置方式,FPGA芯片控制着整个过程,不会被外加芯片所影响,如图2-2所示,FPGA控制专用芯片EPC,把EPC中的数据通过引脚DATA0送入到FPGA的DCLK引脚中,由nCONFIG控制时间周期,经过一定的频率输出后,数据再从FPGA芯片中通过引脚DATA0送入EPC的DCLK引脚,进行保存备用。这种主从形式在操作时会显得极其方便,所以目前普遍利用该方法进行配置。但它的缺点是成本太高,用来储存配置数据的存储器和芯片价格昂贵、容量小,但是FPGA的配置数据的容量又比较大,进而需要的存储器和芯片数量大,所以实际操作起来,代价太高,耗资巨大,小成本的配置不建议采用该方法。
专用储存器和芯片都属于串行PROM器件,并行接口是通过大容量的PROM器件进行联结。由于每此配置过程中编程次数不同,在选择专用芯片时也会不同。
2.3 采用单片机程序配置FPGA
在设计单片机对FPGA进行配置时,由于设计需求,Altera公司研究的FLEX系列的FPGA芯片的输入输出信号电压相同,该芯片内部元件在常用的各种电压下都能够运行,并且制作精细,不易损坏,满足单片机配置条件,所以在设计方案时,应用FLEX系列FPGA芯片。由图2-3所示,FPGA芯片的MSEL0和MSEL1引脚全部接地,都呈低电平,即同步置0,所以该图的配置方式是被动串行方式。
U3是储存芯片,通过其内部的SCL(串行时钟)来控制数据传输的周期,使其同步地传输数据。在上升沿时,存储器U3接受外部微型计算机发出的数据。下降沿时,存储器U3发出数据给单片机U2。而SDL的任务是把U3保存的数据进行异步排序,避免乱码传输。单片机U2在接收到存储器U3发出的数据,并保存以备用。FPGA芯片U1的nCONFIG为复位端,低电平有效。CONFDONE与单片机P0.3/AD1相连接,并接入电源VCC和上拉电阻,VCC通电后,CONFDONE自动呈低电平,单片机随即进行数据发送,当数据发送完毕后,会自动变为高电平,如果它没有变为高电平,就表明数据发送失败,需要重新开始。当配置成功结束后,FPGA通过DCLK给单片机发出信号,使单片机恢复原始状态。