第6章Altera公司FPGA的配置.ppt

上传人:本田雅阁 文档编号:2974654 上传时间:2019-06-16 格式:PPT 页数:78 大小:5.52MB
返回 下载 相关 举报
第6章Altera公司FPGA的配置.ppt_第1页
第1页 / 共78页
第6章Altera公司FPGA的配置.ppt_第2页
第2页 / 共78页
第6章Altera公司FPGA的配置.ppt_第3页
第3页 / 共78页
第6章Altera公司FPGA的配置.ppt_第4页
第4页 / 共78页
第6章Altera公司FPGA的配置.ppt_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《第6章Altera公司FPGA的配置.ppt》由会员分享,可在线阅读,更多相关《第6章Altera公司FPGA的配置.ppt(78页珍藏版)》请在三一文库上搜索。

1、6.1 Altera公司的下载电缆,针对FPGA器件不同的内部结构,Altera公司提供了不同的器件配置方式。Altera FPGA的配置可通过编程器、JATG接口在线编程及Altera在线配置等方式进行。 Altera器件编程下载电缆的有:ByteBlaster并行下载电缆,ByteBlasterMV并行下载电缆,MasterBlaster串行USB通信电缆,BitBlaster串口下载电缆。,1、ByteBlaster并行下载电缆,ByteBlaster并行下载电缆是一种连接到PC机25针标准口(LPT口)的硬件接口产品。ByteBlaster并行下载电缆可以对FLEX10K、FLEX80

2、00和 FLEX6000进行配置,也可以对 MAX9000(包括MAX9000A)、MAX7000S和MAX7000A进行编程。ByteBlaster为FPGA提供了一种快速而廉价的配置方法,设计人员的设计可以直接通过ByteBlaster下载电缆下载到芯片中去。,(1)下载模式,ByteBlaster并行下载电缆提供两种下载模式: Passive serial mode(PS,被动串行模式) 用于配置FLEX10K、FLEX8000和FLEX600O系列器件。 JTAG模式 采用工业标准的JTAG边界扫描测试电路(符合IEEE 1149.1-1990标准)用于配置FLEX10K、MAX900

3、0、MAX7000S和 MAX7000A系列器件进行编程。,(2)电缆插头与插座,ByteBlaster与PC机并口相连的是25针插头,与FPGA应用电路PCB电路板相连的是10针插座。编程数据从PC机并口通过ByteBlaster电缆下载到电路板。连接示意图如图6.1所示。 注意:利用 ByteBlaster下载电缆配置编程3.3V器件(如FLEX10KA、MAX7000A器件)时,要将电缆的VCC脚连到5.0V电源,而器件的VCC脚连到3.3V电源。FLEX10KA和 MAX7000A器件能够耐压到 5.0V,因此,ByteBlaster电缆的5.0 V输出不会对 3.3 V器件造成损害,

4、但5.0V电源中应连接上拉电阻。 ByteBlaster与PC机并口相连的是25针插头,在PS模式下和在JTAG模式下的引脚信号名称是不同的,如表6.1所示。,图6.1 ByteBlaster与PC并口连接示意图,ByteBlaster与FPGA应用电路PCB电路板相连的是10针插座,在PS模式下和在JTAG模式下的引脚信号名称如表6.2所示。注意:PCB板必须给下载电缆提供电源VCC和信号地GND。,(3)电缆线,ByteBlaster的电缆线一般使用扁平电缆,长度不超过30cm,否则带来干扰、反射及信号过冲问题,引起数据传输错误,导致下载失败。如果PC机并行口与PCB电路板距离较远,需要加

5、长电缆,则可在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机用户从MAXPLUS或 Quartus开发软件中下载数据,通过PC机标准并行口在线编程 MAX

6、9000、MAX7000S、MAX7000A、MAX7000B和MAX3000A系列器件;可配置 APEX、APEX20K(包括APEX20K、APEX20KE和APEX20KC)、ACEX1K、Mercury、FLEX10K(包括 FLEX10KA 和FLEX10KE)、FLEX8000 和FLEX6000系列器件及Excalibur嵌入式微处理器。,工作电压VCC支持3.3 V或5.0V。使用与ByteBlaster并行口和BitBlaster串口下载电缆相同10针电路板连接器与FPGA应用电路板(PCB)连接。,(1)下载模式,ByteBlasterMV下载电缆提供两种下载模式: 被动串

7、行模式(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电缆下载到电路板中。 注意

8、:为了利用 ByteBlasterMV下载电缆配置1.5V APEX、1.8V APEX20KE、2.5V APEX20K、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引脚端则必须连接

9、3.3V电源。器件的VCCIO引脚端既可连到2.5V,也可连到3.3V电源上。,(3)电缆插头与插座,ByteBlasterMV的25针插头,与ByteBlaster下载电缆的区别仅是第15脚不同,ByteBlaster连到GND,而ByteBlasterMV连到VCC。 ByteBlasterMV的10针插座与ByteBlaster电缆的10针插座完全相同。 PCB电路板上的10针连接插头与采用ByteBlaster下载电缆的方式完全相同。,(4)软件编程和配置步骤,使用 ByteBlasterMV电缆和 Quartus编程器,对一个或多个器件进行编程或配置的步骤如下: 对项目进行编译 Qu

10、artus编译器对 APEX 、APEX20K、Mercury和 Excalibur系列器件的配置自动产生 .sof文件,为了对EPC配置芯片进行编程,就要用到 .pof文件或JAM STAPL格式文件。,连接 ByteBlasterMV电缆到 PC机的并行口,将10针插座插到包含目标器件的电路板中,电路板必须为 ByteBlasterMV电缆提供电源。对于Windows NT操作系统,在使用ByteBlasterMV电缆前必须安装驱动器。 打开 Quartus编程器,在Processions菜单中选择Open Programmer,然后点击Setup命令,在编程器硬件部分指定ByteBlas

11、terMV电缆和相应的LPT端口。,根据用户电路板上的器件连接方式,在模式项中选择 Passive Serial或JTAG模式,然后点击Add File或Add Device按钮,增加将要编程或配置的文件或器件,并建立一个器件链(chain)描述文件(.cdf)。 编程器具有两种编程模式:被动串行(PS)与JTAG模式。在被动串行模式下,在器件链中选择 .sof文件。在JTAG模式下,在器件链中应增加特定的器件和配置器件,除了 .sof和 .pof文件外,在器件链中对每个配置器件都有几个可编程选项,包括对照编程文件的数据校验一个EPC配置器件的内容,检测器件是否空,检查已编程器件并将其中的数据

12、保存到文件中,或者使用其数据编程或校验其它的配置器件。,在Quartus软件的编程器中选择 Start按钮开始编程或配置器件。ByteBlasterMV电缆从 .sof 、 .pof文件中下载数据到目标器件。,主系统通用 10针标准 配置/下载接口,目标板10针标准 配置接口,PIN1,OTP配置器件插座,6.2使用ByteBlasterMV的两种配置模式,Altera器件编程下载电缆与FPGA应用电路PCB电路板相连的是10针插座,在PS模式下和在JTAG模式下,完成对器件的配置。不同型号的下载电缆和器件,与下载电缆连接的电路不同。下面以MasterBlaster串行USB通信下载电缆和By

13、teBlasterMV下载电缆为例,介绍下载电缆配置电路设计。,1. PS(被动串行)模式,在PS(被动串行)模式下,MasterBlaster下载电缆和ByteBlasterMV下载电缆可以对单个与多个APEX、APEX20K、Mercury、ACEX1K、FLEX10K或 FLEX6000系列器件进行配置。在PS模式,配置数据从数据源通过MasterBlaster下载电缆和ByteBlasterMV下载电缆串行地传送到器件,配置数据由数据源提供的时钟同步。,(1)PS模式单个器件的配置电路设计,PS模式可以完成对单个APEX、APEX20K、Mercury、ACEX1K、FLEX10K或

14、FLEX6000系列器件的配置,配置电路如图6.2所示。 图中:除 APEX20KE、APEX20KC系列器件外,上拉电阻应该连接到 MasterBlaster(VIO脚)或ByteBlasterMV的电源。对于APEX20KE、APEX20KC器件使用10 k电阻上拉nCONFIG到 VCCINT。MasterBlaster和 ByteBlasterMV电缆的电源电压VCC为3.3V或5.0V。插座上的引脚端6为MasterBlaster电缆提供的VIO基准电压,VIO应与器件的VCCIO匹配。ByteBlasterMV电缆插座上的引脚端6不连接。,图6.2 PS模式单个器件的配置电路,在图

15、6.3电路中,在器件链中将每个器件的nCEO引脚端连接到下一个器件的nCE引脚端,所有其它配置引脚端应分别连接在一起,器件链中的第一个器件的nCE引脚端连接到地,最后一个器件的nCEO引脚端悬空。在PS模式中,由于所有的CONF-DONE引脚端连接在一起,器件链中的所有器件初始化时同时进入用户模式。另外,由于所有的nSTATUS引脚端连接在一起,如果任何一个器件检测到错误,则整个器件链中断配置。,图6.3 PS模式多个器件的配置电路,2. JTAG摸式,在JTAG模式下,MasterBlaster通信电缆和 ByteBlasterMV下载电缆可以完成单个和多个APEX、APEX20K、Merc

16、ury、ACEX1K、FLEX10K或 FLEX6000系列器件的编程或配置。,(1)JTAG模式单个器件的配置电路设计,JTAG模式可以完成对单个APEX、APEX20K、Mercury、ACEX1K、FLEX10K或 FLEX6000系列器件的配置,配置电路如图6.4所示。,图6.4 JTAG模式单个器件的配置电路,(1)JTAG模式单个器件的配置电路设计,图6.4中,器件的配置是通过JTAG引脚端TCK、TMS、TDI和TDO完成的。上拉电阻应该连接到电缆的电源,APEX20KE、APEX20KC系列器件所有的上拉电阻均为10k。采用144引脚TQFP封装的FLEX10K器件没有TRST

17、信号脚,此时TRST信号可以忽略。nCONFIG、MSELO、MSEL1引脚端应采用支持非JTAG配置模式的方式连接,如果仅仅使用JTAG配置模式,则nCONFIG引脚端应连接到VCC,MSELO和MSELI引脚端应连接到地。MasterBlaster电缆驱动器的参考电压VIO应与器件的VCCIO匹配。,APEX、APEX20K、Mercury、ACEX1K、FLEX10K系列器件都有专用的JTAG引脚端,具有JTAG引脚端的一般功能,在配置前后都可进行JTAG测试,并不仅仅限于配置过程中。器件的芯片复位及输出使能引脚端,不影响JTAG边界扫描测试或编程操作。触发这些引脚端也不会影响JTAG操

18、作。设计JTAG配置电路板时,常规的配置引脚端应充分考虑并连接好。在 JTAG配置时需要连接的引脚端如表6.3所示。,表6.3 在 JTAG配置时需要连接的引脚,(2)JTAG模式多个器件的配置电路设计,JTAG模式可以完成对多个APEX、APEX20K、Mercury、ACEX1K、FLEX10K或 FLEX6000系列器件的配置,配置电路如图6.5所示。,(2)JTAG模式多个器件的配置电路设计,图6.5 JTAG模式多个器件的配置电路,当电路板包含多个器件时,或者电路板使用JTAG边界扫描测试(BST)时,采用JTAG器件链进行编程最为理想。在JTAG模式对多个器件(JTAG模式的器件链

19、)进行编程时,一个JTAG模式的插座需要与多个器件相连接, JTAG器件链中器件的数目仅受电缆的驱动能力的限制。当器件数目超过5个时,Altera建议对TCK、TDI和TMS引脚端在电路板上加缓冲驱动。,在图6.5中: APEX、APEX20K、Mercury、ACEX1K、FLEX10K和 MAX系列器件能放在同一JTAG器件链中,进行编程或配置。 所有的上拉下拉电阻是1k。而APEX20KE、APEX20KC系列器件的nSTATUS与CONF-DONE引脚端的上拉电阻为10k。 nCONFIG、MSELO、MSELI引脚端应采用支持非JTAG配置模式的方式连接,如果仅仅使用JTAG配置模式

20、,则nCONFIG引脚端应连接到VCC,MSELO和MSELI引脚端应连接到地。,MasterBlaster电缆驱动器的参考电压VIO应与器件的VCCIO匹配。 TRST引脚端仅对APEX、APEX20K、Mercury、ACEX1K系列器件和除 144引脚 TQFP封装外的所有FLEX10K系列器件有效。 在JTAG模式,对多个器件中的一个器件进行编程时,编程软件将多个器件中的其它器件处于Bypass(旁路)模式。在Bypass模式下,器件通过旁路(Bypass)寄存器,将编程数据从TDI引脚端传送到TDO引脚端。编程软件仅对目标器件进行编程与校验。,Quartus或MAXPLUS软件在JT

21、AG配置结束时自动对成功的JTAG配置进行校验。在JTAG配置结束时,通过JTAG接口软件检查CONF-DONE的状态。如果CONF-DONE的状态不正确,Quartus或 MAX PLUS软件指示配置失败;如果CONF-DONE的状态正确,Quartus或MAXPLUS软件软件指示配置成功。当使用JTAG引脚配置时,如果 VCCIO被连到3.3V,则I/O引脚和JTAG TDO接口将在3.3V驱动。,JTAG配置模式和非JTAG配置模式不能同时进行。当利用JTAG模式进行配置时,允许首先完成任何非 JTAG模式配置,例如先利用一个微处理器对 APEX、APEX20K、Mercury、ACEX

22、1K和FLEX10K系列器件进行非JTAG配置,然后再进行JTAG配置。,6.3 Altera芯片配置电路设计,1. Altera的配置芯片,Altera公司为APEX、APEX20K、Mercury、ACEX1K、FLEX10K和FLEX6000系列器件提供的一些专用配置芯片如表6.4所示,使用这些专用配置芯片可以完成Altera公司的FPGA芯片配置。EPC16、EPC8、EPC2配置芯片属于Flash Memory(闪存)器件,EPC1、EPC1441、EPC1213、EPC1064和EPC1064V配置芯片基于EPROM结构。设计中需要根据FPGA器件的容量,决定配置芯片的数目。适用A

23、CEX, APEX, FLEX & Mercury器件的专用配置芯片选择方案如表6.5所示。例如:配置一个EP20K600E器件,需要4个EPC2芯片。同理,配置一个EP1M350器件需要1个EPC16或者3个EPC2芯片。EPC1、EPC1441、EPC1213、EPC1064、EPC1064V PDIP-8封装形式如图6.6所示。EPC2 PLCC-20封装形式如图6.7所示。,1. Altera的配置芯片,图6.6 EPC1、EPC1441、EPC1213、EPC1064、EPC1064V PDIP-8封装形式,图6.7 EPC2 PLCC-20封装形式,2. 对单个FPGA器件的配置,

24、单个APEX、APEX20K、APEX20KC、Mercury、ACEX1K、FLEX10K和APEX20KE及 FLEX6000器件的配置电路如图6.8所示。PS模式配置与芯片配置组合的配置电路如图6.9所示。,图6.8 单个FPGA器件的配置电路,在图6.8中: (1)上拉电阻应该连接到配置器件的电源端。 (2)除APEX20KE、APEX20KC系列器件的上拉电阻为10k,其它系列器件的上拉电阻为1k。EPC16、EPC8和 EPC2芯片的OE和nCS引脚端具有内部用户可配置上拉电阻,如果使用了这些引脚端的内部上拉电阻,则可以不使用外部上拉电阻。 (3)nINIT-CONF引脚端仅对EP

25、C16、EPC8和 EPC2芯片有效。如果nINIT-CONF无效或未使用, nCONFIG必须直接或通过电阻连接到VCC。,(4)在EPC16、EPC8和EPC2芯片中,nINIT-CONF引脚的内部上拉电阻总是有效的,因此,在nINIT-CONF引脚端不需要外部上拉电阻。 (5)nCEO引脚端悬空。 (6)为了保证APEX20KE和其它配置器件在加电时成功配置,nCONFIG上拉到VCCINT。 (7)在EPC16、EPC8和EPC2芯片中,nINIT-CONF引脚的内部上拉电阻总是有效的,nCONFIG则必须通过10k电阻连接到VCCINT。,(8)配置APEX20KE器件时,为了隔离1

26、.8V和3.3V电源,在APEX20KE器件的nCONFIG引脚端与配置芯片的nINIT-CONF引脚端之间加一个二极管。二极管门限电压应小于等于0.7V,二极管使nINIT-CONF引脚成为开漏引脚状态,仅能驱动低电平及三态。 (9)EPC16、EPC8和EPC2芯片不能用来配置FLEX6000系列器件。,图6.9 PS模式配置与芯片配置组合电路,多个APEX、APEX20K、APEX20KC、Mercury、ACEX1K、FLEX10K和APEX20KE及 FLEX6000器件的配置电路如图6.10所示。,图6.10 多个FPGA器件的配置电路,在图6.10中: (1)在进行多器件主动配置

27、时,设计人员必须从每个设计项目的SRAM目标文件(.sof)中产生配置芯片的编程目标文件(.pof),即在MAXPLUS软件的 File菜单中打开Combine Programming Files对话框,在该对话框中组合多个.sof文件以形成一个.pof文件。对 APEX20K系列器件,Quartus软件提供类似的选项,即在 Quartus软件的 Processing菜单中选择Compiler Settings,并在Compiler Settings对话框中点击ChipsDevices条,然后在DevicePin Option对话框中组合多个.sof文件以形成一个.pof文件。,(2)上拉电阻

28、应该连接到配置器件的电源上。 (3)除APEX20KE、APEX20KC系列器件的上拉电阻为10k,其它系列器件的上拉电阻为1k。EPC16、EPC8和 EPC2芯片的OE和nCS引脚端具有内部用户可配置上拉电阻,如果使用了这些引脚的内部上拉电阻,则可以不使用外部上拉电阻。 (4)EPC16和EPC8配置芯片不能级联。 (5)器件链中最后一个器件的nCEO引脚端悬空。,(6)nINIT-CONF引脚端仅对EPC16、EPC8和 EPC2芯片有效。如果nINIT-CONF无效或未使用, nCONFIG必须直接或通过电阻连接到VCC。 (7)EPC16、EPC8和EPC2芯片不能用来配置 FLEX

29、 6000器件。 (8)为了保证APEX20KE和其它配置器件在加电时成功配置,nCONFIG引脚端上拉到VCCINT。,(9)配置APEX20KE器件时,为了隔离1.8V和3.3V电源,在APEX20KE器件的nCONFIG引脚端与配置芯片的nINIT-CONF引脚端之间加一个二极管。二极管门限电压应小于等于0.7V,二极管使nINIT-CONF引脚端成为开漏引脚状态,仅能驱动低电平及三态。 (10)在EPC16、EPC8和EPC2芯片中,nINIT-CONF引脚端的内部上拉电阻总是有效的,因此,在nINIT-CONF引脚端不需要外部上拉电阻。,选择Global Project Device

30、项,编译前选择配置器件,注意,被编译文件的工程名为“DAC”, 因此,其配置文件名应该为“ DAC . POF ”,对于低芯核电压FPGA (如EP1K30),需选择此 项,电路中的配置芯片 应该接3.3V工作电压。,选择配置芯片的型号为EPC1PC8,选择PS模式,编 译!,选择配置器件生产商,打开通用编程器编程窗,选择器件类型,选择器件型号,器件接插方式,进入工程文件夹, 选择编程文件,选择编程文件,双击编程文件后,进入“File type” 窗,选择文件类型为“POF”: Programming Output File,编程缓冲器中的 DAC.POF文件码,注意文件芯片 型号是否对!,打

31、开编程窗口,编程窗,开始编程,将编程完毕的配置 器件插在相应的 电路系统上,DCLK nCS nINIT_CONF OE DATA,PC机,FPGA,EPC2配置芯片,配置电路 和JTAG编 程端口,DCLK CONF_DONE nCONFIG nSTATUS DATA0,TCK TMS TDO TDI,TCK TMS TDO TDI,配置,编程,利用FLASH结构的EPC2为FPGA作配置,如果没有使用 外部上拉电阻, 则必须选择此项,选择配置器件 型号:EPC2LC20,编 译!,编程前,首先 打开编程器窗口,然后用鼠标 双击此文件名,于是弹出编程 文件选择窗,双击此编程 文件名:DAC .POF,这是对FPGA 的配置文件,对EPC2编程文件名,编程器件名,开始编程,EPC2器件,EPC2的编程口,3. 使用微处理器配置FPGA,MCU用PPS模式配置FPGA电路,用89C52进行PS配置,单片机产生配置时序、读 取EPROM中的配置数据,EPROM中 放置多个不 同功能的配 置文件,对FPGA进行配置,

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1