新闻中心

EEPW首页>嵌入式系统>设计应用> 基于CPCI总线的FPGA加载设计

基于CPCI总线的FPGA加载设计

作者: 时间:2013-07-31 来源:网络 收藏

  PCI9656 的局部总线有M、C、J 三种接口模式,为了简化数据传输控制逻辑,设计中采用了C 模式,该接口模式为适合大多数处理器的通用模式。在数据传输中,PCI9656 传输数据有两种模式:突发模式和直接内存存取(DMA,Direct Memory Access)模式。其中突发模式一般用于传递少量不连续数据的场合,DMA模式则用于传递大量连续数据的场合。

在设计中,所有的参数上传、下载都是通过突发模式传输的,而三片V5 芯片的加载,连续处理数据的上传则是通过DMA 模式完成的。

  3 FPGA 加载概述

  FPGA 的加载有多种模式,主要有主串模式(Master Serial),从串模式(Slave Serial),边界扫描模式(Boundary Scan),SPI 模式和SelectMap 模式等。设计中采用了Slave Serial 模式,该模式由外部处理器或控制器提供时钟,总共用到了CCLK,PROG_B,DONE,INIT_B,DIN 5 个管脚,其中CCLK 管脚为加载提供时钟,当PROG_B 信号置低300ns后检查INIT_B信号为高电平即可通过DIN管脚送入数据进行加载,当数据加载完成后检查DONE管脚为高电平表示配置完成。Slave Serial 模式的时序图如图2 所示。

  FPGA 的配置文件有多种不同的格式,例如BIT,BRT,BIN,MCS,EXO,TEK,HEX 等。由于ISE 软件调用Bit Gen 程序直接生成的文件格式为BIT,故系统如能直接用BIT 文件作为配置文件将省去文件转换的麻烦,通过分析发现BIT 文件与BIN(直接二进制配置文件)文件相比仅仅多了文件头,又由于FPGA 配置过程中会进行同步、器件ID 检查等操作,因此多出的文件头部分会自动忽略,故而通过Slave Serial 方式直接下载BIT 文件配置FPGA 是可行的。

  4 硬件模块设计

  Spartan-3E中的程序设计包含PCI9656配置模块,负责对PCI9656 芯片进行初始化;PCI9656 接口模块,负责与PCI9656 进行数据交互;参数模块,负责将接收的参数重新分配给三个芯片或者将一些状态信息上传到工控机;FPGA 配置模块负责将接收到的FPGA 的BIT 文件流通过FIFO 将不连续数据缓冲为连续数据,并触发配置逻辑,对FPGA 进行配置。

  系统的模块划分如图3所示。

  4.1 PCI9656 配置模块

  PCI9656 一般都有对应的EEPROM,用于上电时初始化芯片工作的相关参数。根据实际需求,由于需要初始化的参数较少,PCB 设计中没有放置EEPROM,需要Spartan-3 E 通过本地总线对其进行初始化。对于PCI9656,初始化其PCI Subsystem ID、PCI Subsystem、Vendor ID 后,在工控机就可以进行其他配置,配置这两个参数只需要通过本地总线往地址0X2C写入相应数据即可。



评论


相关推荐

技术专区

关闭