嵌入式系统中FPGA的被动串行配置方式

时间:2020-10-09 12:20:27 理工毕业论文 我要投稿

嵌入式系统中FPGA的被动串行配置方式

摘要:介绍一种在嵌放式系统中使用微处理器被动串行配置方式实现对FPGA配置的方案,将系统程序及配置文件存在系统Flash中,利用微处理器的I/O口产生配置时序,省去配置器件;讨论FPGA的各种配置方式及各种配置文件的使用;详述被动串行配置的时序及在嵌入式系统中实现的软硬件设计;说明本方案的优越性及应用前景。

随着信息时代的到来,嵌入式系统成为继IT网络技术之后又一个新的技术发展方向。嵌入式系统以其功能强、体积小、功耗低、可靠性高以及面向行业应用的突出特征,广泛应用于各个领域。

现场可编程门阵列FPGA(Field Programmable Gate Array)是一种高密度可编程逻辑器件,其逻辑功能的实现是通过把设计生成的数据文件配置进芯片内部的静态配置数据存储器(SRAM)来完成的,具有可重复编程性,可以灵活实现各种逻辑功能。FPGA的这种特性使其在现代电子系统设计中得到了广泛应用。基于SRAM工艺的FPGA是易失性的,系统掉电以后其内部配置数据将丢失,因此需要外接ROM保存其配置数据。FPGA的配置是有时序要求的,如果FPGA本身不能控制配置时序,就需要有外部配置器件来进行时序控制。以Altera公司的'系列FPGA为例,其本身不能控制配置时序,就有专用的EPC系列配置器件供其使用。在含有微处理器(MPU或MCU)的系统中(如嵌入式系统),可以使用微处理器产生配置时序,将保存在系统RO风吹草动的配置数据置入FPGA。与前面一种方案相比,该方案不仅节省了成本,更缩小了系统体积。在对成本和体积敏感的系统中,该方案非常适用。

在某手持式通信设备的设计中,使用了嵌入式系统和FPGA完成了系统功能。嵌入式微处理器采用Samsung公司的ARM7TDMI系列处理器S3C44B0X;FPGA采用Alrera公司的APEX 20K系列EP20K200E,使用S3C44B0X完成了对EP20K200E的配置,取得了良好效果。本文对其实现方法予以介绍。

1 ARM嵌入式处理器S3C4480X简介

S3C44B0X是Samsung公司专为手持设备和一般应用而设计的高性价比和高性能的嵌入式处理器。其突出特点它的CPU核采用ARM公司的16/32位ARM7TDMI RISC内核,0.25μm CMOS工艺制造,主频最高可达66MHz,存储器寻址空间达256MB。由于其成本和功耗低,特别适合对成本敏感和功能敏感的应用场合,如PDA、GPS、LCD Game、E-Book等。

2 APEX 20K系列FPGA配置方式及配置文件

2.1 配置方式介绍

Altera公司的APEX 20K系列FPGA可以使用以下方式进行配;

①使用专用配置器件,如EPC16、EPC8、EPC2、EPC1、EPC1441;

②被动串行方式(PS),使用微处理器的串行步接口或ByteBlaster下载电缆;

③被动并行同步方式(PPS),使用微处理器的并行同步接口;

④被动并行异步方式(PPA),使用微处理器的并行异步接口;

⑤边界扫描方式(JTAG),使用JTAG下载电缆。

使用方式①时,需要首先使用下载电缆将计算机生成的FPGA配置文件烧入EPC配置器件中,然后由EPC配置器件控制配置时序对FPGA进行配置,一次烧写即可重复使用。使用方式②、③、④时,配置文件事先以二进制形式保存在系统ROM中,可以脱离开计算机重复使用。若使用方②、③、④时,配置文件事先以二进制形式保存在系统ROM中,可以脱离开计算机重复使用。若使用方式②,微处理器将配置数据以串行(比特流)方式送给FPGA,在配置时钟驱动下完成配置。若使用方式③,微处理器将配置数据以并行(字节)方式送给FPGA,由FPGA在其内部将并行数据转换成串行数据,该串行化的过程需要外部配置时钟的驱动。在配置时钟速率相同的情况下,方式②、③所用的配置时间几乎相同,但方式②的接口要比方式③简单,若使用方式④,微处理器仍将配置数据以并行方式送给FPGA,在FPGA内部完成数据串行化;与方式③不同的是,该过程不需要外部配置时钟的驱动,但其接口更复杂,并且需要进行地址译码,增加了系统的复杂程度,一般很少采用。使用方式⑤时需要计算机的配合,无法在最终的实际系统中脱机使用,此处不予讨论。