FPGA第六章.docx

上传人:b****8 文档编号:10999477 上传时间:2023-02-24 格式:DOCX 页数:45 大小:808.77KB
下载 相关 举报
FPGA第六章.docx_第1页
第1页 / 共45页
FPGA第六章.docx_第2页
第2页 / 共45页
FPGA第六章.docx_第3页
第3页 / 共45页
FPGA第六章.docx_第4页
第4页 / 共45页
FPGA第六章.docx_第5页
第5页 / 共45页
点击查看更多>>
下载资源
资源描述

FPGA第六章.docx

《FPGA第六章.docx》由会员分享,可在线阅读,更多相关《FPGA第六章.docx(45页珍藏版)》请在冰豆网上搜索。

FPGA第六章.docx

FPGA第六章

第六章

第6章FPGA的下载配置电路设计

内容提要

⏹本章介绍了Xilinx公司的FPGA下载配置模式,Virtex-Ⅱ系列器件下载配置流程、模式和电路设计,Altera公司的下载电缆的结构和下载模式,Altera公司的下载电缆的配置电路设计,Altera公司的配置芯片和配置芯片构成的配置电路设计。

知识要点:

⏹下载配置模式

⏹下载配置流程

⏹下载电缆

⏹配置芯片

⏹配置电路设计

教学建议:

⏹本章的重点是掌握Xilinx公司和Altera公司的FPGA器件的下载配置电路设计。

建议学时数为4学时。

注意区分Xilinx公司和Altera公司的FPGA器件的下载配置电路设计的不同点。

注意同一公司,不同下载模式的下载配置电路的设计也是不同的。

注意不同型号的配置芯片使用方法以及配置电路的设计,多个器件配置电路的连接方法。

本章给出了一些典型的设计例,学习中可以通过改变器件型号和配置模式,进行配置电路设计的练习,加深对问题的理解。

6.1Xilinx的FPGA下载配置电路设计

⏹6.1.1XilinxFPGA的下载配置模式

针对不同的器件类型和应用场合,Xilinx公司为其FPGA系列产品提供了多种下载配置模式,如下所示:

1.JTAG模式

⏹JTAG模式是基于IEEE1149.1和IEEE1532的下载配置模式,通过TDI(数据输入)、TDO(数据输出)、TMS(测试模式)和TCK(测试时钟)等四根信号线实现FPGA的下载与配置。

在JATG模式中需要其他可编程微控制器的支持。

2.Parallel模式

⏹Parallel模式仅支持Virtex系列和SpartanⅡ系列器件,通过8bit的并行数据下载,实现FPGA的高速配置。

Parallel模式的配置时钟CCLK由FPGA外部提供。

3.MasterSerial模式

⏹MasterSerial模式支持Xilinx公司的所有FPGA产品。

MasterSerial模式通过读取串行PROM的数据,实现FPGA的在线配置。

在MasterSerial模式中必须使用Xilinx公司专用的PROM。

MasterSerial模式的配置时钟CCLK源于FPGA内部。

4.SlaveSerial模式

⏹SlaveSerial模式支持Xilinx公司的所有FPGA产品。

SlaveSerial模式类似于MasterSerial模式,但其配置时钟CCLK由FPGA外部提供。

在SlaveSerial模式中需要其他可编程微控制器支持。

5.MasterSelectMAP模式

⏹MasterSerialMAP模式支持Virtex-Ⅱ等FPGA产品。

MasterSerialMAP模式通过读取串行PROM的数据,实现FPGA的在线配置。

在MasterSelectMAP模式中必须使用Xilinx公司专用的PROM。

MasterSerialMAP模式的配置时钟CCLK源于FPGA内部。

6.SlaveSelectMAP模式

⏹SlaveSelectMAP模式支持Virtex-Ⅱ等FPGA产品。

SlaveSelectMAP模式类似于MasterSerialMAP模式,但其配置时钟CCLK由FPGA外部提供。

在SlaveSelectMAP模式中需要其他可编程微控制器的支持。

6.1.1XilinxFPGA的下载配置模式

⏹Xilinx公司提供两种PROM对其FPGA系列产品进行在线配置。

其中,XC1800系列PROM可多次擦写,支持JTAG在线编程。

XC1700系列PROM为一次性编程器件,不支持JTAG在线编程。

使用第三方编程器对Xilinx公司的PROM系列产品进行下载配置时,需要对FPGA设计文件进行格式转换。

在同一个FPGA的下载配置电路中,为了满足不同应用要求,可以通过改变FPGA的M2、M1和M0管脚连接,实现FPGA下载配置模式的切换,即利用同一下载配置电路可以实现多种下载配置模式。

⏹在实际应用中,使用嵌入式下载配置方式,可以节约成本和简化PCB板设计。

嵌入式下载配置利用微处理器或其他可编程控制器件,对FPGA产品进行下载配置。

在嵌入式下载配置过程中,M2、M1、M0引脚端应设置为JTAG、SlaveSerial或SlaveSelectMAP模式,下载配置的数据可以存放在Xilinx公司专用PROM或其他存储器件中。

当M2、M1、M0设置为SlaveSerial模式时,通过控制PROG_B引脚端,可以实现FPGA的重新配置。

当M2、M1、M0设置为SlaveSelectMAP模式时,通过控制PROG_B、RDWR_B和CS_B引脚端,可以实现FPGA的重新配置和部分配置。

6.1.2Virtex-Ⅱ系列器件下载配置电路设计

⏹Xilinx公司不同类型的FPGA器件下载配置模式不完全相同,下面以Virtex-Ⅱ系列器件为例说明Xilinx公司的FPGA的下载配置设计过程。

Virtex-Ⅱ系列器件的下载配置流程

⏹Virtex-Ⅱ系列器件的下载配置流程如图6.1.1所示,主要包括:

(1)PowerUp(加电)

PowerUp是Virtex-Ⅱ系列器件的加电过程。

其中,内核电压VCCINT=1.5V,I/OBank4的VCCO和VCCAUX的供电电压应大于1.5V。

(2)ClearConfigurationMemory(清配置存储器)

清配置存储器的触发条件是将PROG_B引脚端置低,并保持低电平大于300ns。

FPGA的所有与配置无关的引脚端将保持3态,INIT-B和DONE引脚端为低电平。

⏹(3)初始化

将INIT-B引脚端置为高电平,采样模式控制引脚端(SampleModePins),并读入M2、M1和M0。

如果在初始化过程中保持INIT-B为低电平,可以延迟配置数据的下载过程。

MasterSerial/MasterSelectMAPCCLKBegins(MasterSerial/MasterSelectMAP模式CCLK启动)。

⏹(4)LoadConfigurationDataFrames(下载配置数据)

在配置数据的下载过程中,将对配置数据进行CRC校验(CRCCorrect)。

如果CRC出现错误,INIT-B引脚端将被重新置为低电平,并终止器件的启动过程。

⏹(5)器件启动(Start-Up)

Virtex-Ⅱ系列器件的器件启动顺序可以在软件中改动,其默认的启动顺序是:

①释放DONE引脚端;②将GTS置低,激活所有1/O引脚端;③将GWE置位,释放所有的RAM和逻辑单元;④将EOS置位。

图6.1.1Virtex-Ⅱ系列器件的下载配置流程

Virtex-Ⅱ系列器件下载配置模式设置

⏹Virtex-Ⅱ系列器件支持“MasterSerialProgrammingMode”、“MasterSelectMAPProgrammingMode”“SlaveSerialProgrammingMode”“SlaveSelectMAPProgrammingMode”“JTAG/BoundaryScanProgrammingMode”。

设置Virtex-Ⅱ系列器件的M2、M1、M0引脚端状态,可以确定下载配置模式,如表6.1.1所示。

表6.1.2Virtex-Ⅱ系列器件与下载配置电路有关的引脚端

3.Virtex-Ⅱ系列器件的下载配置电路设计

(1)Virtex-Ⅱ下载配置端

在Virtex-Ⅱ系列器件中与下载配置电路有关的引脚端如表6.1.2所示。

应注意的是:

Virtex-Ⅱ系列器件中与下载配置有关的引脚端,有一部分是专用引脚端,另一部分是可以作为用户1/O的复用引脚端。

考虑到设计的稳定性,建议不使用这部分复用引脚端。

(2)Virtex-Ⅱ加电要求

⏹为保证Virtex-Ⅱ系列器件的正常加电,Xilinx公司在Virtex-Ⅱ数据手册中规定:

⏹①VCCINT、VCCAUX和Vcco的加电过程既不应快于1ms,也不应慢于50ms。

⏹②Virtex-Ⅱ加电过程中的最小电流要求不同型号是不同的,设计时需要根据具体的型号设计下载配置电路。

⏹③VCCINT、VCCAUX和Vcco的加电顺序没有具体要求。

一般,在保证VCCINT和Vcco的电气参数情况下,采用先VCCINT后Vcco的加电顺序,将提高FPGA系统的使用稳定性。

⏹(3)Virtex-Ⅱ下载配置电路设计

设计过程中,首先应该熟悉下载配置引脚端和Virtex-Ⅱ加电要求,然后依据选定的下载配置模式进行下载配置电路设计。

Xilinx公司针对不同类型的FPGA器件提供了相应的下载配置电路,XIlinx公司提供的Virtex-Ⅱ系列器件下载配置电路如图6.1.2~图6.1.9所示。

图6.1.2为使用SystemACE™(SystemAdvancedConfigurationEnvironment)配置Virtex-Ⅱ的下载配置电路,电路利用ACEController(ACE微控制器)和ACECompactFlash完成Virtex-Ⅱ的下载配置。

图6.1.3为使用CPLD和PROM配置Virtex-Ⅱ的下载配置电路图6.1.4为使用EPROM配置Virtex-Ⅱ的下载配置电路。

图6.1.5为MasterSerialMode配置电路。

图6.1.6为Master/SlaveSerialMode配置电路。

图6.1.7为MasterSelectMAPProgrammingMode配置电路。

图6.1.8为SlaveSelectMAPMode配置电路。

图6.1.9为JTAGMode配置电路。

图6.1.2使用SystemACE™配置Virtex-Ⅱ的下载配置电路

图6.1.3使用CPLD和PROM配置Virtex-Ⅱ的下载配置电路

图6.1.4使用EPROM配置Virtex-Ⅱ的下载配置电路

图6.1.5MasterSerialMode配置电路

图6.1.6Master/SlaveSerialMode配置电路

图6.1.7MasterSelectMAPMode配置电路

图6.1.8SlaveSelectMAPMode配置电路

图6.1.9JTAGMode配置电路

6.2Altera的FPGA下载配置设计

6.2.1Altera公司的下载电缆

⏹针对FPGA器件不同的内部结构,Altera公司提供了不同的器件配置方式。

AlteraFPGA的配置可通过编程器、JATG接口在线编程及Altera在线配置等方式进行。

⏹Altera器件编程下载电缆的有:

ByteBlaster并行下载电缆,ByteBlasterMV并行下载电缆,MasterBlaster串行/USB通信电缆,BitBlaster串口下载电缆。

1.ByteBlaster并行下载电缆

⏹ByteBlaster并行下载电缆是一种连接到PC机25针标准口(LPT口)的硬件接口产品。

ByteBlaster并行下载电缆可以对FLEX10K、FLEX8000和FLEX6000进行配置,也可以对MAX9000(包括MAX9000A)、MAX7000S和MAX7000A进行编程。

ByteBlaster为FPGA提供了一种快速而廉价的配置方法,设计人员的设计可以直接通过ByteBlaster下载电缆下载到芯片中去。

(1)下载模式

ByteBlaster并行下载电缆提供两种下载模式:

⏹①Passiveserialmode(PS,被动串行模式)

用于配置FLEX10K、FLEX8000和FLEX600O系列器件。

⏹②JTAG模式

采用工业标准的JTAG边界扫描测试电路(符合IEEE1149.1-1990标准)用于配置FLEX10K、MAX9000、MAX7000S和MAX7000A系列器件进行编程。

(2)电缆插头与插座

⏹ByteBlaster与PC机并口相连的是25针插头,与FPGA应用电路PCB电路板相连的是10针插座。

编程数据从PC机并口通过ByteBlaster电缆下载到电路板。

⏹注意:

利用ByteBlaster下载电缆配置/编程3.3V器件(如FLEX10KA、MAX7000A器件)时,要将电缆的VCC脚连到5.0V电源,而器件的VCC脚连到3.3V电源。

FLEX10KA和MAX7000A器件能够耐压到5.0V,因此,ByteBlaster电缆的5.0V输出不会对3.3V器件造成损害,但5.0V电源中应连接上拉电阻。

⏹ByteBlaster与PC机并口相连的是25针插头,在PS模式下和在JTAG模式下的引脚信号名称是不同的,如表6.2.1所示。

1.ByteBlaster并行下载电缆

⏹ByteBlaster与FPGA应用电路PCB电路板相连的是10针插座,在PS模式下和在JTAG模式下的引脚信号名称如表6.2.2所示。

注意:

PCB板必须给下载电缆提供电源VCC和信号地GND。

(3)电缆线

⏹ByteBlaster的电缆线一般使用扁平电缆,长度不超过30cm,否则带来干扰、反射及信号过冲问题,引起数据传输错误,导致下载失败。

如果PC机并行口与PCB电路板距离较远,

⏹需要加长电缆,则可在PC机并行口和ByteBlaster电缆之间加入一根并行口连接电缆。

(4)PCB电路板上的10针连接插头

⏹PCB板上的10针插头连接到FPGA器件的编程或配置引脚上,ByteBlaster下载电缆的10针插座连接到PCB板上的10针插头,ByteBlaster电缆通过10针插头获得电源并下载数据到FPGA器件上。

2.ByteBlasterMV并行下载电缆

⏹ByteBlasterMV并行下载电缆具有与PC机25针标准并行口相连的接口,工作电压VCC支持3.3V或5.0V,允许PC机用户从MAX+PLUS或QuartusⅡ开发软件中下载数据,通过PC机标准并行口在线编程MAX9000、MAX7000S、MAX7000A、MAX7000B和MAX3000A系列器件;可配置APEXⅡ、APEX20K(包括APEX20K、APEX20KE和APEX20KC)、ACEX1K、Mercury、FLEX10K(包括FLEX10KA和FLEX10KE)、FLEX8000和FLEX6000系列器件及Excalibur嵌入式微处理器。

⏹工作电压VCC支持3.3V或5.0V。

使用与ByteBlaster并行口和BitBlaster串口下载电缆相同10针电路板连接器与FPGA应用电路板(PCB)连接。

(1)下载模式

ByteBlasterMV下载电缆提供两种下载模式:

⏹被动串行模式(PS)

用于配置APEXⅡ、APEX20K、ACEXIK、Mercury、Excalibur、FLEX10K、FLEX8000和FLEX6000系列器件;

⏹JTAG模式

具有标准的JTAG接口,用于编程或配置APEXⅡ、APEX20K、Mercury、ACEX1K、Excalibur、FLEX10K、MAX9000、MAX7000S、MAX7000A、MAX7000B和MAX3000A系列器件。

(2)连接

⏹ByteBlasterMV下载电缆与PC机并行口相连的是25针插头,与PCB电路板相连的是10针插座。

数据从PC机并行口通过ByteBlasterMV电缆下载到电路板中。

⏹注意:

为了利用ByteBlasterMV下载电缆配置1.5VAPEXⅡ、1.8VAPEX20KE、2.5VAPEX20K、Excalibur、Mercury、ACEXIK和FLEX10KE器件,3.3V电源中应该连接上拉电阻,电缆的VCC脚连到3.3V电源,而器件的VCCINT引脚端连到相应的2.5V、1.8V或1.5V电源。

对于PS配置,器件的VCCIO引脚端必须连到2.5V或3.3V电源。

对于APEXⅡ、Mercury、ACEX1K、APEX20K和FLEX10KE系列器件的JTAG在线配置,或MAX7000A和MAX3000A系列器件的JTAG在线编程,电缆的VCC引脚端则必须连接3.3V电源。

器件的VCCIO引脚端既可连到2.5V,也可连到3.3V电源上。

(3)电缆插头与插座

⏹ByteBlasterMV的25针插头,与ByteBlaster下载电缆的区别仅是第15脚不同,ByteBlaster连到GND,而ByteBlasterMV连到VCC。

⏹ByteBlasterMV的10针插座与ByteBlaster电缆的10针插座完全相同。

⏹PCB电路板上的10针连接插头与采用ByteBlaster下载电缆的方式完全相同。

表6.2.3MasterBlaster下载电缆与电路板相连的10针插座引脚端信号

(4)LED显示状态

⏹MasterBlaster下载电缆上的LED显示MasterBlaster电缆的工作状态,如表6.2.4所示。

表6.2.4MasterBlaster电缆的LED显示状态

(5)软件编程和配置步骤

⏹使用ByteBlasterMV电缆和QuartusⅡ编程器,对一个或多个器件进行编程或配置的步骤如下:

1.对项目进行编译

QuartusⅡ编译器对APEXⅡ、APEX20K、Mercury和Excalibur系列器件的配置自动产生.sof文件,为了对EPC配置芯片进行编程,就要用到.pof文件或JAMSTAPL格式文件。

⏹②连接ByteBlasterMV电缆到PC机的并行口,将10针插座插到包含目标器件的电路板中,电路板必须为ByteBlasterMV电缆提供电源。

对于WindowsNT操作系统,在使用ByteBlasterMV电缆前必须安装驱动器。

⏹③打开QuartusⅡ编程器,在Processins菜单中选择OpenProgrammer,然后点击Setup命令,在编程器硬件部分指定ByteBlasterMV电缆和相应的LPT端口。

⏹④根据用户电路板上的器件连接方式,在模式项中选择PassiveSerial或JTAG模式,然后点击AddFile或AddDevice按钮,增加将要编程或配置的文件或器件,并建立一个器件链(chain)描述文件(.cdf)。

编程器具有两种编程模式:

被动串行(PS)与JTAG模式。

在被动串行模式下,在器件链中选择.sof文件。

在JTAG模式下,在器件链中应增加特定的器件和配置器件,除了.sof和.pof文件外,在器件链中对每个配置器件都有几个可编程选项,包括对照编程文件的数据校验一个EPC配置器件的内容,检测器件是否空,检查已编程器件并将其中的数据保存到文件中,或者使用其数据编程或校验其它的配置器件。

⏹⑤在QuartusⅡ软件的编程器中选择Start按钮开始编程或配置器件。

ByteBlasterMV电缆从.sof、.pof文件中下载数据到目标器件。

3.MasterBlaster串行/USB通信电缆

⏹MasterBlaster通信电缆具有标准的PC机串行接口或USB硬件接口。

MasterBlaster电缆允许PC机和UNIX用户,配置数据到APEXⅡ、APEX20K(包括APEX20KE和APEX20KC)、FLEX10K(包括FLEX10KA和FLEX10KE)、FLEX8000和FLEX6000系列器件,以及Excalibur嵌入式微处理器,也可编程MAX9000、MAX7000S和MAX7000A(包括MAX7000AE)系列器件。

设计项目可以直接下载到器件。

在APEX和APEX20K系列器件中,MasterBlaster电缆还可通过SignalTap嵌入式逻辑分析器进行在线调试。

工作电压VCC支持5.0V、3.3V或2.5V。

(1)下载模式

⏹MasterBlaster电缆提供两种下载模式:

⏹①被动串行模式(PS):

用于配置APEXⅡ、APEX20K和FLEX系列器件;

⏹②JTAG模式:

具有IEEE1149.11业标准的JTAG接口,用于编程具有JTAG能力的MAX系列器件和在线串行配置器件(如EPC2)或配置APEXⅡ、APEX20K和FLEX系列器件。

(2)SignalTap逻辑分析

⏹SignalTap宏功能是一种嵌入式逻辑分析器,能够在器件特定的触发点捕获数据,并保存数据到APEXⅡ和APEX20K的嵌入式系统块(ESB)中。

然后,这些数据被送到APEXⅡ或APEX20K的IEEE1149.11标准JTAG接口,通过MasterBlaster通信电缆上传到QuartusⅡ波形编辑器中进行显示。

(3)连接插头与插座

⏹MasterBlaster电缆通过一个串行接口或USB接口与计算机相连,具有标准串行电缆的9针D型插头连接器连接到RS-232端口,USB连接器则能在任何标准的USB电缆中使用。

数据从串口或USB口,通过MasterBlaster电缆下载到电路板。

与电路板相连的是标准10针插座,尺寸与Blaster及ByteBlasterMV下载电缆的10针插座完全一样,插座引脚端信号如表6.2.3所示。

(4)LED显示状态

⏹MasterBlaster下载电缆上的LED显示MasterBlaster电缆的工作状态,如表6.2.4所示。

(5)MasterBlaster下载电缆的供电

⏹MasterBlaster下载电缆的供电方式有:

①由电路板提供的5.0V或3.3V电源;②直流电源供电;③从USB电缆来的5.0V电源。

当电路板上的5.0V或3.3V电源无效时,MasterBlaster下载电缆能够由直流电源或USB电缆供电。

4.BitBlaster串行下载电缆

⏹BitBlaster串行下载电缆具有标准的RS-232串行接口(PC机的“COM”端口,UNIX工作站的“ttya”或“ttyb”端口)。

允许PC机和UNIX用户从PC机和UNIX工作站的MAX+PLUSE开发软件中下载数据。

BitBlaster电缆可配置数据到FLEX10K、FLEX8000和FLEX6000系列器件,也可编程MAX9000(包括MAX9000A)、MAX7000S、MAX7000A和MAX3000A系列器件。

⏹BitBlaster串行下载电提供PS模式和JTAG模式两种数据下载模式。

可编程配置一个器件或多个器件链。

数字传输速率支持9600至230400波特率。

数据从PC机RS-232串口通过BitBlaster电缆下载到电路板,与PC机RS-232串口相连的是25针插座,与PCB电路板相连的是10针插座。

BitBlaster下载电缆上的状态指示灯指示器件编程或配置的状态。

⏹注意:

利用BitBlaster下载电缆配置/编程3.3V器件(如FLEX10KA、FLEX10KB、FLEX10KE、MAX7000A和MAX300

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 节日庆典

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1