位置:51电子网 » 技术资料 » 嵌入式系统

基于ARM的嵌入式系统中从串配置FPGA的实现

发布时间:2008/5/27 0:00:00 访问次数:528

arm(advanced risc machines)既可以认为是一个公司。也可以认为是对一类微处理器的统称,还可以认为是一项技术。基于arm技术的微处理器应用约占据了32位risc微处理器75%以上的市场份额,arm技术正在逐步渗入到人们生活的各个方面[1]。到目前为止,arm微处理器及技术已经广泛应用到各个领域,包括工业控制领域、网络应用、消费类电子产品、成像和安全产品等。

fpga(field programmable gate array)是一种高密度现场可编程逻辑器件,其逻辑功能是通过把设计生成的数据文件配置到器件内部的静态配置数据存储器(sram)来实现的。fpga具有可重复编程性,能灵活实现各种逻辑功能。

基于sram工艺的fpga具有易失性。系统掉电以后其内部配置数据容易丢失,因此需要外接rom保存其配置数据,系统上电后必须重新配置数据才能正常工作。目前有两种方案可以实现,一种是使用专用的prom,以xilinx公司fpga,xcfxx系列prom为例,能够提供fpga的配置时序,上电时自动加载prom中的配置数据到fpga的sram中;另一种是在含有微处理器的系统(如嵌入式系统)中采用其他非易失性存储器如e2prom、flash存储配置数据,微处理器模拟fpga的配置时序将rom中的数据置入fpga。与第一种方案相比,该方案节省成本、缩小系统体积。适用于对成本和体积苛刻要求的系统。

在便携式虚拟仪器设计中,使用嵌入式系统和fpga实现系统功能。嵌入式微处理器采用samsung公司的arm7tdmi系列处理器s3c44box:fpga采用xilinx公司的spartan-3e系列xc3s100e,采用s3c44box完成对xc3s100e的配置。取得了良好效果。

2 从串配置的原理

2.1从串配置原理

xilinx公司的spartan-3e系列fpga产品是采用90 nm工艺的2.5 v低电压fpga器
件,具有高性能、低功耗、可无限次编写的特点。xc3s100e是spartan-3e系列fpga中的一款,总门数达10万门,可采用从串、主串、从并、主并、jtag等模式对其进行配置[2]。xc3s100e与从串配置模式相关的主要引脚功能如下:

m[2:0]:配置模式选择。m2、m1、m0均接上拉电阻,即m[2:0]:111时为从串模式;

cclk:配置时钟,微处理器提供时钟源,且上升沿有效:

din:串行配置数据输入:

dout:串行数据输出,用于菊花链式配置:

prog_b:低电平异步复位fpga内部逻辑,内部可配置:memory完全复位后,该引脚指示高电平。

当此引脚为高时,才能配置fpga:

init_b:由低电平到高电平跳变时,采样配置模式,即m[2:0]的值确定配置方式;配置过程中若出现配置错误,init_b将呈现低电平;

done:复位时为低电平。若配置成功,则为高电平。

2.2微处理器从串配置:fpga的时序

fpga的配置过程如下:

系统上电后,将prog_b拉低以复位fpga内部逻辑重新配置fpga,充分复位内部逻辑后(约100μs),将prog_置高。

init_b为低电平,prog_b拉高保持300 ns后,fpga将init_b置高。在init_b由低向高跳变的瞬间,采样配置模式m[2:0]。此系统采用从串配置模式。

在fpga采样配置模式后,微处理器就可以向fpga配置时钟cclk和数据,在cclk的上升沿,传输数据至din,数据字节先发送低位,再发送高位。配置过程中若发生错误,则init_b为低电平。

所有的配置数据传送完成,crc校验无误。则done为高电平,否则为低电平。

done为高电平,fpga释放全局三态(gts),激活i/o引脚,释放全部置位复位(gsr)和全局写使能(gwe)有效,开始执行配置区的逻辑。

微处理器从串配置fpga的时序如图1所示。

2.3 配置文件的产生方法

利用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所示。

arm(advanced risc machines)既可以认为是一个公司。也可以认为是对一类微处理器的统称,还可以认为是一项技术。基于arm技术的微处理器应用约占据了32位risc微处理器75%以上的市场份额,arm技术正在逐步渗入到人们生活的各个方面[1]。到目前为止,arm微处理器及技术已经广泛应用到各个领域,包括工业控制领域、网络应用、消费类电子产品、成像和安全产品等。

fpga(field programmable gate array)是一种高密度现场可编程逻辑器件,其逻辑功能是通过把设计生成的数据文件配置到器件内部的静态配置数据存储器(sram)来实现的。fpga具有可重复编程性,能灵活实现各种逻辑功能。

基于sram工艺的fpga具有易失性。系统掉电以后其内部配置数据容易丢失,因此需要外接rom保存其配置数据,系统上电后必须重新配置数据才能正常工作。目前有两种方案可以实现,一种是使用专用的prom,以xilinx公司fpga,xcfxx系列prom为例,能够提供fpga的配置时序,上电时自动加载prom中的配置数据到fpga的sram中;另一种是在含有微处理器的系统(如嵌入式系统)中采用其他非易失性存储器如e2prom、flash存储配置数据,微处理器模拟fpga的配置时序将rom中的数据置入fpga。与第一种方案相比,该方案节省成本、缩小系统体积。适用于对成本和体积苛刻要求的系统。

在便携式虚拟仪器设计中,使用嵌入式系统和fpga实现系统功能。嵌入式微处理器采用samsung公司的arm7tdmi系列处理器s3c44box:fpga采用xilinx公司的spartan-3e系列xc3s100e,采用s3c44box完成对xc3s100e的配置。取得了良好效果。

2 从串配置的原理

2.1从串配置原理

xilinx公司的spartan-3e系列fpga产品是采用90 nm工艺的2.5 v低电压fpga器
件,具有高性能、低功耗、可无限次编写的特点。xc3s100e是spartan-3e系列fpga中的一款,总门数达10万门,可采用从串、主串、从并、主并、jtag等模式对其进行配置[2]。xc3s100e与从串配置模式相关的主要引脚功能如下:

m[2:0]:配置模式选择。m2、m1、m0均接上拉电阻,即m[2:0]:111时为从串模式;

cclk:配置时钟,微处理器提供时钟源,且上升沿有效:

din:串行配置数据输入:

dout:串行数据输出,用于菊花链式配置:

prog_b:低电平异步复位fpga内部逻辑,内部可配置:memory完全复位后,该引脚指示高电平。

当此引脚为高时,才能配置fpga:

init_b:由低电平到高电平跳变时,采样配置模式,即m[2:0]的值确定配置方式;配置过程中若出现配置错误,init_b将呈现低电平;

done:复位时为低电平。若配置成功,则为高电平。

2.2微处理器从串配置:fpga的时序

fpga的配置过程如下:

系统上电后,将prog_b拉低以复位fpga内部逻辑重新配置fpga,充分复位内部逻辑后(约100μs),将prog_置高。

init_b为低电平,prog_b拉高保持300 ns后,fpga将init_b置高。在init_b由低向高跳变的瞬间,采样配置模式m[2:0]。此系统采用从串配置模式。

在fpga采样配置模式后,微处理器就可以向fpga配置时钟cclk和数据,在cclk的上升沿,传输数据至din,数据字节先发送低位,再发送高位。配置过程中若发生错误,则init_b为低电平。

所有的配置数据传送完成,crc校验无误。则done为高电平,否则为低电平。

done为高电平,fpga释放全局三态(gts),激活i/o引脚,释放全部置位复位(gsr)和全局写使能(gwe)有效,开始执行配置区的逻辑。

微处理器从串配置fpga的时序如图1所示。

2.3 配置文件的产生方法

利用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所示。

相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!