《Altera 编程与配置幻灯片》由会员分享,可在线阅读,更多相关《Altera 编程与配置幻灯片(51页珍藏版)》请在金锄头文库上搜索。
1、第六章 Altera 编程与配置,主要内容,配置又称编程或下载,是指经过用户设计输入并经过 开发系统编译后产生的配置数据文件,将其装入FPGA芯片内部的可配置存储器的过程,简称FPGA的下载。只有经过逻辑配置后,FPGA才能实现用户需要的逻辑功能。配置altera FPGA配置文件单板设计及调试注意事项,FPGA配置,JTAG配置端口,FPGA,PS配置端口,PC机,配置适配电路,配置器件或配置电路,AS配置端口,专用FLASH配置器件,PC机,FPGA,应用电路系统,CPU/CPLD,大容量ROM/EPROM/FLASH芯片,FPGA,应用电路系统,CPU/CPLD,RAM,方案1,方案2,
2、1、通用编程器2、通用仿真器3、虚拟仪表 ,主系统通用10针标准配置/下载接口,目标板10针标准配置接口,PIN1,OTP配置器件插座,6.1配置altera FPGA,配置方式下载电缆配置过程,6.1.1 配置方式,根据FPGA在配置电路中的角色,其数据可以用以下3种方式下载到目标芯片中:主动配置方式被动配置方式最常用的(JTAG)配置方式,主动配置方式,由FPGA来主动输出控制和同步信号(包括配置时钟)给FPGA的串行配置芯片(EPCS系列),配置芯片收到命令后,把配置数据发给FPGA,完成配置过程。 Altera FPGA所支持的主动方式,只能与Altera公司提供的主动串行芯片(EPC
3、S系列)配合使用,因此又称主动串行(AS)模式。目前只支持stratix和 Cyclone系列。,AS专用器件配置方式,AS多片配置方式,AS配置器件的在线编程,FPGA被动方式,被动模式下,由系统的其他设备发起并控制配置过程,这些设备可以是配置芯片(EPC系列),或者单板的微处理器、CPLD等。FPGA在配置过程中完全处于被动地位,只是输出一些状态信号来配合配置过程。 被动配置方式可细分为PS(被动串行)、 FPP(快速被动并行)、PPS(被动并行同步)、PPA(被动并行异步)以及PSA(被动串行异步),PS(被动串行),所有的Altera FPGA都支持这种模式。由Altera的下载电缆、
4、增强型配置器件(EPC4、EPC8和EPC16)和配置器件(EPC1441、EPC8和EPC2),或智能主机(如微处理器和CPLD)来配置。在做PS配置时,FPGA配置数据从存储器读出,写入到FPGA的DATA0接口上。数据在DCLK时钟管脚的上升沿打入FPGA,每一个DCLK时钟周期输入1比特数据,PS:单片机软件方式配置,单片机产生配置时序、读取EPROM中的配置数据,EPROM中放置多个不同功能的配置文件,对FPGA进行配置,PS:使用下载电缆配置,FLEX、ACEX、APEX系列FPGA 配置电路,对FPGA配置,10针标准配置/下载接口,通过配置电路后与PC机的并行接口相接,主系统通
5、用10针标准配置/下载接口,目标板10针标准配置接口,PIN1,OTP配置器件插座,PS:使用专用配置芯片配置,PS:ASIC/CPLD硬件高速配置方案,缺点:1、电路面积比较大,快速被动并行(FPP),只有Stratix系列和APEX中支持。可由Altera的增强型配置器件(EPC4、EPC8和EPC16)或智能主机(如微处理器和CPLD)来配置。在做FPP配置时,FPGA配置数据从存储器中读出,写入到FPGA的DATA7:0输入接口上。数据在DCLK时钟管脚的上升沿打入FPGA,每一个DCLK时钟周期输入1字节数据,FPP:使用增强型配置器件,被动并行同步( PPS),只有较老的器件支持这
6、种模式,如APEX20K、Mercury、ACEX1K和FLEX10K。可由智能主机(如微处理器和CPLD)来配置。在做PPS配置时, FPGA配置数据从存储器中读出,写入到FPGA的DATA7:0输入接口上。在第一个DCLK时钟信号的上升沿处,将一个字节的数据锁存到FPGA中,然后由随后的8个DCLK时钟的下降沿将该字节数据一位一位移到FPGA中。,被动并行异步(PPA),只有Stratix 系列、APEX、APEX20K、Mercury、ACEX1K和FLEX10K支持。可由智能主机(如微处理器和CPLD)来配置。在做PPA配置时, FPGA被配置控制器当作一个异步存储器。在作PPA配置时
7、, FPGA配置数据从存储器中读出,写入到FPGA的DATA7:0输入接口上。在配置过程由一些异步控制信号来控制。,PPA配置方式,被动串行异步( PSA ),只有FLEX6000支持。可由智能主机(如微处理器和CPLD)来配置。在做PSA配置时,FPGA配置数据从存储器中读出,写入到FPGA的DATA0输入接口上。在配置过程由一些异步控制信号来控制。,JTAP配置方式,使用JTAG进行配置可以使用Altera的下载电缆,或者通过智能主机模拟JTAG的时序来进行配置;JTAG接口由四个必须的信号TDI、TDO、TMS和TCK,以及一个可选的TRST构成。 TDI:用于测试数据的输入TDO:用于
8、测试数据的输出TMS:模式控制管脚,决定了JTAG电路内部的TAP状态机的跳转。TCK:测试时钟,其它信号都必须与之同步TRST:可选信号,如果JTAG电路不用,可以将其连到GND,用JTAG接口配置FPGA,多片级联方式,模式选择,FPGA在正常工作时,它的配置数据存储在SRAM中,加电时须重新下载。在实验系统中,通常用计算机或控制器进行调试,因此可以使用PS。在实用系统中,多数情况下必须由FPGA主动引导配置操作过程,这时FPGA将主动从外围专用存储芯片中获得配置数据,而此芯片中fpga配置信息是用普通编程器将设计所得的pof格式的文件烧录进去。,FPGA的配置过程,在FPGA的配置之前,
9、首先要借助于FPGA开发系统,按某种文件格式要求描述设计系统,编译仿真通过后,将描述文件转换成FPGA芯片的配置数据文件。选择一种FPGA的配置模式,将配置数据装载到FPGA芯片内部的可配置存储器( SRAM单元),FPGA芯片才会成为满足要求的芯片系统。 FPGA的配置流程包括复位、芯片配置芯片初始化、等几个过程。,同步配置波形图,配置数据压缩,Stratix和Cyclone器件支持配置数据的压缩,这样可以支持配置存储器的空间和配置时间。一般,配置数据经过压缩,可以减小到35%-55%,启动压缩功能(方法一),选择assignment/device,启动压缩功能(方法二),1 执行File/
10、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公司提供了不同的器件配置方式
11、。Altera FPGA的配置可通过编程器、JATG接口在线编程及Altera在线配置等方式进行。Altera器件编程下载电缆的有:ByteBlasterII并行下载电缆ByteBlasterMV并行下载电缆MasterBlaster串行USB通信电缆BitBlaster串口下载电缆,1. ByteBlasterII并行下载电缆,ByteBlaster并行下载电缆是一种连接到 PC机 25针标准口(LPT口)的硬件接口产品。ByteBlaster并行下载电缆可以对FLEX10K、FLEX8000和 FLEX6000进行配置,也可以对 MAX9000(包括MAX9000A)、MAX7000S和M
12、AX7000A进行编程。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机和UNI
13、X用户完成下列功能: 可配置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+PLUS9.3及以上版本中下载数据。 (6) 具有RS-232串行接口或USB接口。 (7) 使用10针电路板连接器(与ByteBlasterMV并口下载电缆兼容)
14、。,MasterBlaster串行/USB通信电缆示意图,MasterBlaster电缆提供两种下载模式: 被动串行模式(PS)用于配置APEX、 APEX20K和FLEX系列器件; JTAG模式具有IEEE 1149.1工业标准的JTAG接口, 用于编程具有JTAG能力的MAX系列器件和在线串行配置器件(如EPC2)或配置APEX、 APEX20K和FLEX系列器件。 连接 MasterBlaster电缆通过一个串行接口或USB接口与计算机相连, 与电路板相连的是标准10针插座。 数据从串口或USB口通过MasterBlaster电缆下载到电路板。,配置芯片,增强型配置器件: EPC16、E
15、PC8、EPC4 支持:对大容量FPGA的单片配置,由JTAG接口进行在系统编程,FPP快速配置方式AS串行配置器件:EPCS64、EPCS16、EPCS4、 EPCS1 低成本配置芯片,支持芯片:Stratix、cyclone和cyclone器件,可由下载电缆或其它设备进行重复编程普通配置器件:EPC2、EPC1和EPC1441 容量相对较小,只有EPC2可重复编程。支持大容量FPGA配置,需多片级联使用。,配置文件及软件支持,一 配置模式及配置器件选择选择assignment/device,选择settings-files选项,单击device&pin options按钮,在对话框中选择c
16、onfiguration选项卡,可以选择配置方案,配置器件,及配置模式二 复用管脚处理 用作普通的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码格式文件。,