
《Altera编程与配置》PPT课件.ppt
51页第六章 Altera 编程与配置主要内容配置配置又称编程或下载,是指经过用户设计输入并经过 开发系统编译后产生的配置数据文件,将其装入FPGA芯片内部的可配置存储器的过程,简称FPGA的下载只有经过逻辑配置后,FPGA才能实现用户需要的逻辑功能配置altera FPGA配置文件单板设计及调试注意事项 FPGA配置配置JTAG配置端口FPGAPS配置端口PC机配置适配电路配置器件或配置电路AS配置端口专用FLASH配置器件PC机FPGA应用电路系统应用电路系统CPU/CPLDCPU/CPLD 大容量大容量ROM/EPROM/ROM/EPROM/FLASHFLASH芯片芯片FPGA应用电路系统应用电路系统CPU/CPLDCPU/CPLD RAM RAM方案1方案21 1、通用编程器、通用编程器2 2、通用仿真器、通用仿真器3 3、虚拟仪表、虚拟仪表 … …主系统通用10针标准配置/下载接口目标板10针标准配置接口PIN1OTP配置器件配置器件插座插座6.1配置altera FPGA配置方式下载电缆配置过程6.1.1 配置方式根据FPGA在配置电路中的角色,其数据可以用以下3种方式下载到目标芯片中:主动配置方式被动配置方式最常用的(JTAG)配置方式 主动配置方式 由FPGA来主动输出控制和同步信号(包括配置时钟)给FPGA的串行配置芯片(EPCS系列),配置芯片收到命令后,把配置数据发给FPGA,完成配置过程。
Altera FPGA所支持的主动方式,只能与Altera公司提供的主动串行芯片(EPCS系列)配合使用,因此又称主动串行(AS)模式目前只支持stratix和 Cyclone系列 AS专用器件配置方式AS多片配置方式AS配置器件的编程FPGA被动方式 被动模式下,由系统的其他设备发起并控制配置过程,这些设备可以是配置芯片(EPC系列),或者单板的微处理器、CPLD等FPGA在配置过程中完全处于被动地位,只是输出一些状态信号来配合配置过程 被动配置方式可细分为PS(被动串行)、 FPP(快速被动并行)、PPS(被动并行同步)、PPA(被动并行异步)以及PSA(被动串行异步) PS(被动串行) 所有的Altera FPGA都支持这种模式由Altera的下载电缆、增强型配置器件(EPC4、EPC8和EPC16)和配置器件(EPC1441、EPC8和EPC2),或智能主机(如微处理器和CPLD)来配置在做PS配置时,FPGA配置数据从存储器读出,写入到FPGA的DATA0接口上数据在DCLK时钟管脚的上升沿打入FPGA,每一个DCLK时钟周期输入1比特数据PS:单片机软件方式配置单片机产生配置时序、读取EPROM中的配置数据EPROM中放置多个不同功能的配置文件对FPGA进行配置PS:使用下载电缆配置 注意:1、不要忘了将多片配 置 控制信号nCE 引 脚接地!2、作为PS配置模式, 不要忘了将配置模式 控制信号脚MSEL1和 MSEL0都接地!FLEX、、ACEX、、APEX系列系列FPGA 配置电路配置电路对FPGA配置10针标准配置/下载接口通过配置电路后与PC机的并行接口相接主系统通用10针标准配置/下载接口目标板10针标准配置接口PIN1OTP配置器件配置器件插座插座PS:使用专用配置芯片配置PS:ASIC/CPLD硬件高速配置方案缺点缺点::1 1、电路面积比较大、电路面积比较大快速被动并行(FPP) 只有Stratix系列和APEX‖中支持。
可由Altera的增强型配置器件(EPC4、EPC8和EPC16)或智能主机(如微处理器和CPLD)来配置在做FPP配置时,FPGA配置数据从存储器中读出,写入到FPGA的DATA[7:0]输入接口上数据在DCLK时钟管脚的上升沿打入FPGA,每一个DCLK时钟周期输入1字节数据FPP:使用增强型配置器件被动并行同步( PPS) 只有较老的器件支持这种模式,如APEX20K、Mercury、ACEX1K和FLEX10K可由智能主机(如微处理器和CPLD)来配置在做PPS配置时, FPGA配置数据从存储器中读出,写入到FPGA的DATA[7:0]输入接口上在第一个DCLK时钟信号的上升沿处,将一个字节的数据锁存到FPGA中,然后由随后的8个DCLK时钟的下降沿将该字节数据一位一位移到FPGA中被动并行异步(PPA) 只有Stratix 系列、APEX‖、APEX20K、Mercury、ACEX1K和FLEX10K支持可由智能主机(如微处理器和CPLD)来配置在做PPA配置时, FPGA被配置控制器当作一个异步存储器在作PPA配置时, FPGA配置数据从存储器中读出,写入到FPGA的DATA[7:0]输入接口上。
在配置过程由一些异步控制信号来控制PPA配置方式被动串行异步( PSA )只有FLEX6000支持可由智能主机(如微处理器和CPLD)来配置在做PSA配置时,FPGA配置数据从存储器中读出,写入到FPGA的DATA0输入接口上在配置过程由一些异步控制信号来控制JTAP配置方式 使用JTAG进行配置可以使用Altera的下载电缆,或者通过智能主机模拟JTAG的时序来进行配置;JTAG接口由四个必须的信号TDI、TDO、TMS和TCK,以及一个可选的TRST构成 TDI:用于测试数据的输入TDO:用于测试数据的输出TMS:模式控制管脚,决定了JTAG电路内部的TAP状态机的跳转TCK:测试时钟,其它信号都必须与之同步TRST:可选信号,如果JTAG电路不用,可以将其连到GND用JTAG接口配置FPGA多片级联方式模式选择 FPGA在正常工作时,它的配置数据存储在SRAM中,加电时须重新下载在实验系统中,通常用计算机或控制器进行调试,因此可以使用PS在实用系统中,多数情况下必须由FPGA主动引导配置操作过程,这时FPGA将主动从外围专用存储芯片中获得配置数据,而此芯片中fpga配置信息是用普通编程器将设计所得的pof格式的文件烧录进去。
FPGA的配置过程 在FPGA的配置之前,首先要借助于FPGA开发系统,按某种文件格式要求描述设计系统,编译仿真通过后,将描述文件转换成FPGA芯片的配置数据文件选择一种FPGA的配置模式,将配置数据装载到FPGA芯片内部的可配置存储器( SRAM单元),FPGA芯片才会成为满足要求的芯片系统 FPGA的配置流程包括复位、芯片配置芯片初始化、等几个过程 同步配置波形图配置数据压缩 Stratix‖和Cyclone器件支持配置数据的压缩,这样可以支持配置存储器的空间和配置时间一般,配置数据经过压缩,可以减小到35%-55%启动压缩功能(方法一)选择assignment/device启动压缩功能(方法二)1 执行File/convert programming files命令2 选择编程文件类型,如POF、HEXOUT、RBF或TTF;3 为POF输出文件选择一个配置器件;4 在【input files to convert】栏选中SOF文件5 单击add file 按钮,增加一个SOF文件6 选中加入的SOF文件,单击properties按钮7 选中compress对话框,8 回到主窗口,单击ok按钮远程升级Stratix系列FPGA还可以通过一个内嵌的NIOS处理器,对FPGA进行远程升级。
6.1.2 Altera公司的下载电缆 针对FPGA器件不同的内部结构,Altera公司提供了不同的器件配置方式Altera FPGA的配置可通过编程器、JATG接口编程及Altera配置等方式进行Altera器件编程下载电缆的有:ByteBlasterII并行下载电缆ByteBlasterMV并行下载电缆MasterBlaster串行/USB通信电缆BitBlaster串口下载电缆1. ByteBlasterII并行下载电缆并行下载电缆ByteBlaster并行下载电缆是一种连接到 PC机 25针标准口(LPT口)的硬件接口产品ByteBlaster并行下载电缆可以对FLEX10K、FLEX8000和 FLEX6000进行配置,也可以对 MAX9000(包括MAX9000A)、MAX7000S和MAX7000A进行编程ByteBlaster为FPGA提供了一种快速而廉价的配置方法,设计人员的设计可以直接通过ByteBlaster下载电缆下载到芯片中去若使用ByteBlasterII下载电缆,支持的配置方式有以下3种:AS方式:对AS配置芯片(ECPS系列)进行编程;PS方式:可以对FPGA进行配置;JTAG方式:可以对FPGA、CPLD以及Altera配置芯片(EPC系列)编程。
2 MasterBlaster串行/USB通信电缆特点 (1) 在QuartusⅡ软件中支持SignalTap嵌入式逻辑分析器 (2) MasterBlaster串行/USB通信电缆允许PC机和UNIX用户完成下列功能: · 可配置APEXⅡ、 APEX20K、 FLEX10K、 FLEX3000A、 FLEX8000和FLEX6000系列器件及Excalibur嵌入式微处理器解决方案可编程MAX9000、 MAX7000S、 MAX7000B、 MAX7000A和EPC2器件 (3) 工作电压VCC支持5.0 V、 3.3 V或2.5 V (4) 为编程提供快速廉价的方法 (5) 可 从 QuartusⅡ开 发 软 件 和MAX+PLUSⅡ9.3及以上版本中下载数据 (6) 具有RS-232串行接口或USB接口 (7) 使 用 10针 电 路 板 连 接 器 ( 与ByteBlasterMV并口下载电缆兼容)。
MasterBlaster串行/USB通信电缆示意图MasterBlaster电缆提供两种下载模式: · 被动串行模式(PS)——用于配置APEXⅡ、 APEX20K和FLEX系列器件; · JTAG模式——具有IEEE 1149.1工业标准的JTAG接口, 用于编程具有JTAG能力的MAX系列器件和串行配置器件(如EPC2)或配置APEXⅡ、 APEX20K和FLEX系列器件 连接 MasterBlaster电缆通过一个串行接口或USB接口与计算机相连, 与电路板相连的是标准10针插座 数据从串口或USB口通过MasterBlaster电缆下载到电路板配置芯片增强型配置器件: EPC16、、EPC8、、EPC4 支持:对大容量FPGA的单片配置,由JTAG接口进行在系统编程,FPP快速配置方式AS串行配置器件:EPCS64、、EPCS16、、EPCS4、、 EPCS1 低成本配置芯片,支持芯片:StratixⅡ、cycloneⅡ和cyclone器件,可由下载电缆或其它设备进行重复编程普通配置器件:EPC2、、EPC1和和EPC1441 容量相对较小,只有EPC2可重复编程。
支持大容量FPGA配置,需多片级联使用配置文件及软件支持一 配置模式及配置器件选择选择assignment/device,选择settings-files选项,单击device&pin options按钮,在对话框中选择configuration选项卡,可以选择配置方案,配置器件,及配置模式二 复用管脚处理 用作普通的IO用作三态输入用作输出到地用作输出到未指明的信号配置文件说明FPGA开发软件可以生成多种不同类型的配置文件,用户可以根据不同的应用环境选用这些配置文件 .sof: 选择配置模式为JTAG或PS方式,使用ALTERA的下载电缆对FPGA进行配置,需要使用pof:对各种Altera配置芯片进行编程的文件,需要在开发工具中设置器件类型rbf:二进制配置文件,只包含配置数据的内容通常被用在外部的职能配置设备上rpd:用外部编程设备对AS串行配置芯片进行在系统编程的文件hex:是一个ASCLL码格式文件,以INTEL的十六进制格式存放了FPGA的编程内容,可以用在外部的配置设置上ttf:与rbf内容一样的ASCLL码格式文件,在每个配置数据之间用逗号隔开sbf:用BitBlaster来通过PS方式配置的FLEX10K和FLEX6000系列器件将使用该文件.jam:是一种以jam编程语言描述的ASCLL码格式文件。
配置的可靠性1 配置过程的CRC校验2 掉电重配置保护3 Configration RAM数据的CRC校验单板设计要点1 DCLK处理方式: 当作告诉信号处理2 多片配置信号处理:在有多片FPGA的配置链中,一般建议将多片FPGA器件的DCLK、DATAO(DATA[7:0])、nCONFIG、nSTATUS和CONF_DONE信号连在一起3 驱动高扇出信号:在多器件的配置链中,配置信号往往需要被重新驱动来保持良好的信号完整性和防止时钟偏斜等问题4 配置器件的延时:要保证nCS和CONF_DONE之间的走线不要太长,PCB走线负载不能太大,防止CONF_DONE上升时间超时,导致芯片配置不正常调试建议一 对于所有配置模式1 配置文件和器件的一致性2 电平兼容3 配置管脚连接遵循手册4 不同配置方式,管脚的连接要合理5 需干净的DLCK信号6 检测INIT_DONE信号7 配置完成后CONF_DONE信号要被拉高二 多器件配置链 1 合成配置文件 2 sof配置文件与单板上的器件顺序一致三 使用外部配置设备 1 使用.rbf配置文件,注意先送出最低位 2 DATA和DCLK或nWS信号满足建立保持时间关系 3 不同的配置方式,注意nRS信号的电平四 使用Altera配置芯片1 确保配置芯片已被正常编程2 使用配置芯片时,要注意FPGA上电在配置器件上电之前3 注意FPGA的nSTATUS信号和配置芯片的OE信号的电平4 正常处理所有的管脚五 用JTAG配置方式 1 JTAG管脚按手册连接 2 正确处理所有的配置芯片 3 前级芯片输出的TDO的电平可以满足下级芯片TDI的域值要求 4 把TCK信号当作一个高速信号 5 保证一个干净的TCK信号。












