原创 FPGA工艺分类和下载配置

2015-1-16 13:51 895 18 18 分类: FPGA/CPLD

FPGA的工艺整理FPGA多种下载方式。

20150116135130293.jpeg 

ROM

EEPROMEPROM以及FLASH都是非易失性存储器,可对器件多次编程。

1、 EEPROMEPROM

EEPROM电擦除,可在线编程

EPROM擦除方式复杂,需用紫外线擦除,或者专门的擦除器,只能离线写入程序。

2、 EEPROM Flash

l  EEPROM可以按“位”擦写,FLASH按“块”擦写

l  EEPROM容量不大,FLASH容量大

l  EEPROM写入速度慢,FLASH写入速度快

 

SRAM

SRAM是易失性存储器,掉电后数据丢失,读写速度快,可以按字节改写

 

FPGA的工艺

FGPA按工艺分主要有SRAM工艺和Flash(类似EEPROM)工艺两类。

1、 SRAM工艺的FPGA

FPGA最大的特点是掉电数据会丢失,无法保存,所以它们的系统除了一个FPGA以外,外部还需要增加一个配置芯片用于保存编程数据,比如EPCS4EPCS16,每次上电的时候都需要从这个配置芯片将配置数据流加载到FPGA,然后才能正常的运行;

2、 Flash工艺的CPLD

掉电不会丢失数据,无需配置芯片EPCS4,上电即可运行

 

FPGA的下载配置

FPGA器件有三类配置下载方式:主动配置方式(AS)和被动配置方式(PS)和JTAG配置方式。CPLD只有JTAG配置方式。

1、  AS模式

下载pof文件,配置EPCSx,掉电不丢失

将配置数据烧到FPGA配置芯片(EPCS)中保存,FPGA器件每次上电时把EPCS的数据读入FPGA中,实现对FPGA的编程配置。数据通过DATA0引脚送入 FPGA,配置数据被同步在DCLK输入。

专用配置器件:EPC型号的存储器,EPCS系列只适用于cyclone系列。

2、 PS模式

由外部计算机或控制器控制配置过程。通过加强型配置器件(EPC16EPC8EPC4)等配置器件来完成,EPCS作为控制器件,把FPGA当作存储器,把数据写人到FPGA中,实现对FPGA的编程。该模式可以实现对FPGA在线可编程。

在实验系统中,通常用计算机或控制器进行调试,因此可以使用PS

调试时必须隔离缆线与配置芯片的信号。调试完成以后,才把程序烧在配置芯片中。

3、 JTAG

下载sof文件,掉电丢失;可以将sof转换为jic文件,用EPCSx配置,掉电不丢失。

JTAG是直接烧到FPGA里面中的RAM里。 由于是SRAM  故断电后要重烧。

关于JTAG的原理,可以参考OPEN-JTAG 开发小组写的《ARM JTAG 调试原理》。JTAG实际上是将仿真功能嵌入到芯片内部,接上比较简单的调试工具就可以进行开发了,省掉了高价的仿真器。

JTAG 调试用到了 TCKTMSTDITDO  TRST这几个脚。

4、 一般调试方法AS+JTAG

这样可以用JTAG方式调试,而最后程序已经调试无误了后,再用 AS模式把程序烧到配置芯片里去,而且这样有一个明显的优点,就是在AS模式不能下载的时候,可以利用Quartus II自带的工具生成JTAG模式下可以利用的.jic文件来验证配置芯片是否已经损坏

转换过程如下:

l  使用汇编器产生一个包含FPGA配置数据的SRAM目标文件(.sof)

l  选择转换编程文件(File->Convert Programming Files)

Output programming file.jic

Configuration device选择目标EPCS配置器件。

File name:output_file.jicoutput_file换成你想要的名字

指定 .sof文件,在Input files to convert下面选择SOF Data,点击Add File...

指定FPGA目标器件,选择Flash Loader项,点击Add Device

generate

l  Programmer 选择JTAG模式,添加新生成的JIC文件到编程列,START

5、 下载电缆

Altera下的下载电缆分为ByteBlasterByteBlasterMV,以及ByteBlaster II,现在还推出了基于USB-blaster.由于BB基本已经很少有人使用,USB-Blaster现在又过于昂贵,这里就说一下BBII BBMV的区别.

l  BBII

支持多电压供电5.5v,3.3v,2.5v,1.8v;

BBII支持三种下载模式: AS,可对AlteraAs串行配置芯片(EPCS系列)进行编程;PS可对FPGA进行配置 JTAG,可对FPGACPLD,即Altera配置芯片(EPC系列)编程;

l  BBMV

只支持PSJTAG

 

文章评论0条评论)

登录后参与讨论
我要评论
0
18
关闭 站长推荐上一条 /2 下一条