基于ARM的嵌入式系统中从串配置FPGA的实现
在FPGA采样配置模式后,微处理器就可以向FPGA配置时钟CCLK和数据,在CCLK的上升沿,传输数据至DIN,数据字节先发送低位,再发送高位。配置过程中若发生错误,则INIT_B为低电平。
所有的配置数据传送完成,CRC校验无误。则DONE为高电平,否则为低电平。
DONE为高电平,FPGA释放全局三态(GTS),激活I/O引脚,释放全部置位复位(GSR)和全局写使能(GWE)有效,开始执行配置区的逻辑。
微处理器从串配置FPGA的时序如图1所示。

利用Xilinx公司提供的开发工具ISE8.1,经过综合、映射、布局布线后可产生编程文件,编程文件含有.bit、.bin、.mcs、.tek、.hex等格式。其中,.bit格式用于JTAG下载,其他几种格式用于专用PROM编程。首先按照产生专用PROM编程文件的方法来产生.bin文件.然后将该.bin文件转换成ASCⅡ码文件的存储形式,并且各个字节之间用逗号分隔。再将该配置数据存放在系统程序的一个头文件的数组config_data_array[]中,作为系统程序源代码的一部分,并和其他程序一起编译。
3 硬件设计
嵌入式微处理器S3C44BOX内置ARM7TDMI核,集成了丰富的外围功能模块,内部8 kB Cache大大提高了性能。S3C44BOX可访问256MB的地址空间,最高工作频率达66 MHz 。采用4 MB Flash作为程序存储器,可用于存放系统运行的代码。XC3S100E从串配置程序和配置文件都固化于其中保存,该Flash支持低电压(1.65 V~3.3 V)写操作。8 MB的SDRAM是程序的运行空间,直接运行Flash中的代码,但速度非常慢。通常是将Flash中的代码移至SDRAM中。S3C44BOX与XC3S100E主要通过PROG_B、INIT_B、DONE、CCLK、DIN 5根信号线连接,如图2所示。其中VCC33表示3.3 V,VCC25表示2.5 V。
4 软件设计
软件设计流程如图3所示。配置软件的编程要确保ARM完全按照配置信号的时序工作,关键问题

文章出处:嵌入式技术网应用论文
